资讯专栏INFORMATION COLUMN

论验证码安全性

SolomonXie / 1120人阅读

摘要:验证码的作用就是为了强制人机交互,但是几乎所有的图片验证码都存在安全性问题,可以被机器轻易破解。现在主流的验证码识别技术就是图像识别,如果说我做一个无图验证码是不是就能很大程度上防止机器破解呢没错,就是验证码。

验证码的作用就是为了强制人机交互,但是几乎所有的图片验证码都存在安全性问题,可以被机器轻易破解。
现在主流的验证码识别技术就是图像识别,如果说我做一个无图验证码是不是就能很大程度上防止机器破解呢?没错,就是canvas验证码。
其实现原理如下:
1、后端把生成的图片验证码转成base64,然后通过人工混淆加密,例如把base64里面的字符A替换成 一 ,然后在把g替换成A,加密和替换规则自己定。
2、前端通过ajax请求得到该加密后的base64,然后通过前后端约定的规则进行解密,此规则是前后端私下定好的,不用网络传输。
3、将解密后的base64放到canvas里面,这样用户就可以看到验证码了
4、将所有处理验证码的js自定义混淆加密
5、canvas原型里面的生成图片的方法删掉防止别人利用控制台将canvas转成图片
6、交给大家自由发挥

这种验证码的好处是:
1、无图机器无法识别
2、就算你得到那段加密后base64,也很难破解,因为你很难从加密后的js中找到base64的加密规则
3、加密混淆规则是自己定的没有规律可寻
4、此验证码灵活多变,就算被破,也能很快找到问题原因进行安全修复

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/79261.html

相关文章

  • 用户体验测试:牛逼的功能千篇一律,好的用户体验万里挑一

    摘要:众所周知,测试过程会花费部分成本,比如产品的需求变更,开发的修复,用户体验测试也不例外用户体验环境从时间耗时和资源上都能体现。 此文已由作者吴艳秋授权网易云社区发布。 欢迎访问网易云社区,了解更多网易技术产品运营经验。 一、什么是用户体验 用户体验,英文叫做user experience。一个较常见的定义是指用户访问一个网站或者使用一个产品时的全部体验。他们的印象和感觉,是否成功,是否...

    Winer 评论0 收藏0
  • Layer 1 和 Layer 2 的价值捕获

    摘要:的价值捕获的代币的存在是为了让这条底层公链能够抵抗攻击。分别存在论证可以支撑的通胀率,但几乎没有用户会选择一个全球的无国界的但是每年通胀大于的货币。 著名区块链投资机构 Multicoin Capital 近期推出《On Value Capture at Layers 1 and 2》一文,解释了 Layer 1 和 Layer 2 的协议究竟如何捕获价值: Layer 1 Token...

    Donne 评论0 收藏0
  • 互联网项目的驱动力

    摘要:在这个过程中,带动整体项目和产品前进的驱动力也是不同的。这条主线对整体项目推进产生的影响称之为驱动力。在互联网的项目中,项目的人员配比基本一个萝卜一个坑,专人负责特定的事项和模块。 本文由作者周巧芬授权网易云社区发布。 互联网产品从整体上来讲可以划分很多类型,TO B或者TO C,业务型产品(考拉、严选)或者技术型产品(网易云系列),以及用户型产品(网易云音乐等)。作为互联网产品的项目...

    mist14 评论0 收藏0
  • 如何把后台管理系统写出花

    摘要:知识在于分享,也是希望和大家交流下,如何把后台管理系统写得能更具工程化,模块化,更有效率。后台管理系统多为端,所以和的技术运用不多,会根据产品需求进行优雅降级和渐进增强。 前两天看segmentfault的时候,突然间,想写篇文章总结一下那些年自己写过的后台管理系统。作为我前端的入门项目,我对后台管理系统的感情还是挺深的。本着以下几点原因,写了此文。 对后台管理系统做一个综合全面的总...

    sugarmo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<