大家好,又见面了,我是全栈君。
本文主要应对与web端数据的防採集(接口数据加密方面)
一般採集器(採集程序)在对web数据进行採集时。无非是通过解析特定链接请求后返回的内容,然后获取实用的内容。那么我们该怎样去防止这样的现象呢?
网上已经有一些经常使用的方法了,比方说:
1、通过限制IP地址单位时间的訪问次数来进行拦截(不可持续性解决方式)
2、屏蔽ip(个人认为这种方法基本没什么有用性)
3、利用js加密网页内容(这样的方法,加密效果还是不错的,可是不利于(SEO)搜索引擎优化)
4、站点随机採用不同模版以及html採用随机标签等(这类方法主要是通过混乱页面内容的有规则性来防止採集器的抓取)
PS:事实上以上的方法都有各自的优点,可是详细操作还是得依据实际情况而定。
大家都知道移动互联网如今非常红火,那么在这个移动当头的年代。移动安全也是一个非常大的问题。
当中就包括移动端接口的数据安全问题。本文在开头也注明:本文主要介
绍接口数据加密方面的问题。适合传输数据採用json/xml形式的接口。
方法一:
假如是web端的话:
1、后台代码生成随机密匙存入session并返回到web前端(该随机数是密匙来的)
2、每次查询前数据前,须要将web前端的这个随机密匙经过js特定加密算法加密之后,将其作为參数传递到后台接口去(这部分js代码须要混淆加密,防止别人破译加密算
法)
3、每次查询时,后台须要匹配传递过来的參数,仅仅有密匙同样时,才进行数据查询
PS:(1)、可能有人会认为这样会影响性能,事实上不然,採用的加密算法不用多么高级,採用简单的加密算法(保留好密匙就可以)(2)、採用移动端的话。原理和web
端一样
方法二:
假如是移动端的话:
1、你随便定义一个特定的密匙(比方:成佩涛黑客),移动端这边採用加密算法加密该字符串并作为參数传递到后台接口去
2、后台採取相同的算法进行解密或加密之后进行匹配字符串,如果匹配成功则进行查询
PS:事实上以上的方法仅仅是參考方案:原理主要是通过密匙传递,是否能被破解,归根究竟是你的密匙是否OK啦!只是以上方法更适合移动端与web端接口数据加密
临时到这里啦,有更好解法的欢迎交流。
顺便提供一个简单的js加密解密算法(能够自己定义password因子)
地址:点击打开链接
本文关键词:
成佩涛黑客 成佩涛 黑客 成佩涛 cpthack 佩涛黑客 成佩涛编程之路
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115648.html原文链接:https://javaforall.cn