中文站

什么是验证码?验证码的作用?

我们平时上网时,注册登录、发帖、支付/转账都可能需要输入各种验证码,究竟”什么是验证码“以及“验证码的作用是什么”,本文将做简单介绍。

1.什么是验证码?

2002年, 路易斯·冯·安(Luis von Ahn)  和他的伙伴们在卡内基梅隆第一次提出了验证码这样一个程序概念,该程序是一种区分用户是机器还是人的自动程序。通过验证码向请求的发起方提出问题,能正确回答的即是人类,反之则为机器。

  

2.验证码的原理?

随着互联网的发展,网站会面对很多的在线攻击,在线攻击是利用“穷举法”不断向登录的页面填写一组又一组的用户名和密码,然后自动提交,直到进入系统为止。穷举法也可以叫排除法,穷举法攻击最重要的条件是:用户名和密码在攻击期间内不能变化,相对静止。它通过不断地尝试字母或数字功的组合,直到找到正确的密码。

如果在验证的时加人动态的验证内容,使每一次验证时都加人动态信息来就可以防止类似的攻击,验证码就是这种动态的信息。验证码在服务器上随机产生并记下来,再以图片文字的形式告诉用户,用户照着图片文字手动输人然后提交,服务器对提交的验证码与先前记下来的验证码判断是否相同,从而完成验证。由于每次产生的验证码字串是随机的,所以那些简单的暴力攻击工具就无能为力了,从而抵御来自页面提交的穷举法攻击。

3.验证码的作用?

通过上边的介绍,我们已经知道验证码最主要的作用是区分正常人和机器的操作,提升机器破解的难度,保护系统安全。

互联行为的注册、登录、发帖、领优惠券、投票等等应用场景,都有被机器刷造成各类损失的风险,如果不对各类机器垃圾的行为加以防范,灌水内容、垃圾注册、恶意登录、刷票、撞库、活动作弊、垃圾广告、爬虫、羊毛党等用户行为一旦发生,将对产品自身发展、用户体验造成极大的影响。验证码的作用在于区分人和机器,防止被暴力破解,提高破解密码的难度,有效防止垃圾注册、恶意登录、删单刷票、论坛灌水等行为。  

参考文献:

【1】洪伟铭,《验证码的原理及实现方法》

相关阅读:

验证码有什么作用

第一时间更新!网易易盾验证码服务支持微信PC端小程序无跳转验证