网站首页 > 技术文章 正文
最近看到许多网站、app都出现了滑块验证码,那么滑块验证码到底是做什么的呢?为什么越来越多的网站都用上了滑块验证码呢?下面我们从几个方面来了解下滑块验证码。#接口安全防护 #短信验证码防刷
滑块验证码是什么
滑块验证码是在网站、APP等应用中常见的一种验证方式,通过按照一定规则滑动滑块到指定位置完成验证,才可以进行下一步操作。滑块验证码有两种设计,一种是在滑动框内“一滑到底”即完成验证的,还有一种是滑动滑块拼合拼图完成验证的。由于拼图式的滑块验证码安全性更高,趣味性更强,所以多数网站或APP都选择了拼图式的滑块验证码。
拼图式的滑块验证码在业务应用中有三种展现形式,触发式、嵌入式和弹出式。触发式即鼠标光标移入验证条后才显示验证拼图,不影响网页原有的排版。嵌入式即拼图验证区域直接嵌入展示在网页,清晰直观,便于用户使用。弹出式一般可以绑定自有验证方式,点击验证后才弹出滑动验证码,比如用户输入用户名和密码,点击登录后,页面弹出滑块验证码。
滑块验证码的作用
那么为什么要使用滑块验证码,滑块验证码在业务中起什么作用?滑块验证码是由图片验证码衍生后的产物,其本质是一种区分真实用户和僵尸程序的一种图灵测试。一些黑客会利用机器技术在某些业务应用中进行刷票(多次点击投票)、发广告、窃取客户密码等恶意操作,滑块验证码就是用来避免这种情况的,企业应用通过滑块验证码确定操作者身份为真实用户,才允许进行下一步操作。具体来说,在注册、发帖、发评论、投票、提交密码前添加滑动验证码,可以防止批量注册、发广告、刷票和破解密码等恶意操作。
如何接入滑块验证码
那么怎么在业务应用中添加滑块验证码?可以采取的有两种方式,一种是自主开发,滑块验证码的开发难度并不大;另一种是购买第三方服务商提供的滑块验证码产品。购买第三方滑块验证码产品后,可以由开发人员根据服务商提供的SDK接口文件,将滑块验证码添加到业务应用中。
两种实现方式相比,购买第三方服务商产品的成本比自主开发要高,但是有两点好处。第一点是滑块验证码的更新维护由服务商进行,不用分散精力维护;第二点是服务商提供的滑块验证码一般安全性更高。自主开发时一般考虑的因素比较少,比如只考虑拼图的拼合程度,而服务商提供的滑块验证码验证逻辑更加复杂,比如检测滑块滑动的平均速度、每一小段时间的瞬时速度、用户鼠标点击情况等,通过多种情况判断操作者是否为真实用户、验证是否成功。服务商会不断对滑动验证码的验证逻辑进行优化,增加黑客利用机器技术恶意操作的难度。
点评一下
使用滑块验证码的优点:
- 增加恶意程序绕过成本,降低受攻击风险;
- 增加业务趣味性,满足用户小小的虚荣心;
使用滑块验证码的缺点:
- 增加业务步骤,降低用户体验;
- 验证码可能出现加载失败,或由于网络原因验证失败,导致正常用户业务无法进行;
- 增加业务成本,接入第三方滑块验证码需要一定费用;
- ‘防君子不防小人’,黑客想要绕过滑块验证码很容易。
结语
这篇文章到这里就结束了,感谢大佬们驻足观看,大佬们点个关注、点个赞呗~
谢谢大佬~
作者:香芋味的猫丶
猜你喜欢
- 2024-10-26 最近别来杭州!怕你不想回去了……
- 2024-10-26 为什么有人不用免费的WPS,偏要花钱用Office?看完这些就知道了
- 2024-10-26 还在苦恼验证码怎么实现?看看这个验证码组件合集,你想要的都有
- 2024-10-26 时间浪费在哪儿?(时间浪费四种情形)
- 2024-10-26 qq账号被冻结了怎么快速解冻手机号换了
- 2024-10-26 RPA实战:“滑动”验证码与按照“语序”点击两类验证码
- 2024-10-26 产品心理学:给予用户理解和宽容(产品的心理功能有( )( )( ))
- 2024-10-26 OPPO Reno4 Pro忘记OPPO帐号密码怎么办?
- 2024-10-26 你知道新买的手机,怎样重新登录微信账号吗?
- 2024-10-26 短信验证码的深度剖析(短信验证码起什么作用)
- 11-26Win7\8\10下一条cmd命令可查得笔记本电脑连接过的Wifi密码
- 11-26一文搞懂MySQL行锁、表锁、间隙锁详解
- 11-26电脑的wifi密码忘记了?一招教你如何找回密码,简单明了,快收藏
- 11-26代码解决忘记密码问题 教你用CMD命令查看所有连接过的WIFI密码
- 11-26CMD命令提示符能干嘛?这些功能你都知道吗?
- 11-26性能测试之慢sql分析
- 11-26论渗透信息收集的重要性
- 11-26如何查看电脑连接过的所有WiFi密码
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)