防止站点数据被採集——成佩涛黑客「建议收藏」

防止站点数据被採集——成佩涛黑客

大家好,又见面了,我是全栈君。

                                本文主要应对与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.net/115648.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JLINK V9项目启动【jlink接口定义】【开启VCOM(虚拟串口)功能】「建议收藏」

    JLINK V9项目启动【jlink接口定义】【开启VCOM(虚拟串口)功能】「建议收藏」jlink接口定义摘录于:https://blog.csdn.net/u014124220/article/details/50829713仿真器端口 连接目标板 备注 1.VCC MCU电源VCC VCC 2.VCC MCU电源VCC VCC 3.TRST TRST Tes…

    2022年5月28日
    252
  • 电磁场与电磁波实验三 熟悉Mathematica软件在电磁场领域的应用

    电磁场与电磁波实验三 熟悉Mathematica软件在电磁场领域的应用假设一个铜环(或其他导电环)放在电磁铁的一极上。当电流接通时(如图中红色的电路颜色所示),环会飞离磁铁。随时间变化的磁场会在环内产生循环电流。这将不会发生,如果一个径向狭缝是通过环,从而防止任何电流循环。为了可视化,这个动作是用慢动作来显示的,圆盘在落回地面之前是停在半空中的。此demo展示了电偶极子或赫兹偶极子的电磁场、电场和磁场,相关的能量密度和坡印廷矢量分布。此demo可以改变直流或静态偶极场的偶极矩、频率和时间。该模型显示了极化正弦波的垂直电、磁分量。五、赫兹偶极子的电磁场。微信公众号创享日记。..

    2022年10月28日
    0
  • Sql学习笔记-declare用法

    Sql学习笔记-declare用法栗子一:IF 1=1BEGIN    DECLARE @test VARCHAR    SET @test=’1′       PRINT ‘in if:’+@testEND运行看结果输出inif:1这是可以预想的结果。那我们在if外面使用变量@test试试。栗子二:IF 1=1BEGIN   DECLARE @test VARCHAR   SET @test=’…

    2022年8月20日
    20
  • SQL中row_number() over(partition by)详解「建议收藏」

    SQL中row_number() over(partition by)详解「建议收藏」row_number语法ROW_NUMBER()函数将针对SELECT语句返回的每一行,从1开始编号,赋予其连续的编号。在查询时应用了一个排序标准后,只有通过编号才能够保证其顺序是一致的,当使用ROW_NUMBER函数时,也需要专门一列用于预先排序以便于进行编号partitionby关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反…

    2022年6月14日
    26
  • InvocationHandle的invoke方法[通俗易懂]

    InvocationHandle的invoke方法[通俗易懂]在学习代理模式中接触到了动态代理的相关内容,这是AOP的核心内容。先用一个例子说明动态代理的使用//接口(动态代理只能代理接口)publicinterfaceSubject{publicvoidrequest();}//接口实现:实现了Subject的request()方法publicclassRealSubjecti

    2022年5月30日
    35
  • es6模板字符串_js循环字符串

    es6模板字符串_js循环字符串相比ES5的拼接字符串,ES6毫无疑问是简单明了,又清晰可维护。原始的字符串拼接真的是把整个人都拼傻,并且在处理的过程中会出现很多小坑,小问题。$(‘#ulList’).html(`<ul><li>浙江</li><li>杭州</li></ul>`);上面就是用es6的…

    2022年8月21日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号