1.Captcha是什么?
Captcha(验证码)是“Completely Automated Public Turing test to tell Computers and Humans Apart”的缩写,是一种区分用户是计算机还是人的公共全自动程序。通过验证码向请求的发起方提出问题,能正确回答的即是人类,反之则为机器。
Captcha这个词最早是在2002年由 路易斯·冯·安(Luis von Ahn) 和他的伙伴们在卡内基梅隆第一次提出。因为这种测试是由计算机来考人类,而不是标准图灵测试中那样由人类来考计算机,所以有时称CAPTCHA是一种反向图灵测试。
一些常见的字符验证码
2.Captcha(验证码)的作用是什么?
Captcha(验证码)作为一种人机识别手段,其主要目的就是智能区分人机。
区分人机行为的作用不言而喻。互联行为的注册、登录、发帖、领优惠券、投票等等应用场景,都有被机器刷造成各类损失的风险,如果不对各类机器垃圾的行为加以防范,灌水内容、垃圾注册、恶意登录、刷票、撞库、活动作弊、垃圾广告、爬虫、羊毛党等用户行为一旦发生,将对产品自身发展、用户体验造成极大的影响。
3.Captcha(验证码) 能完全防止破解和盗号吗?
验证码的作用在于区分人和机器,防止被暴力破解,提高破解密码的难度。人工破解盗号很难通过验证码实现甄别,但在防止机器撞库方面有重要地位。
4.是否能单纯用 JS 来实现验证码?
JS可以实现验证码,但有相当多的弊端。JS实现验证码,是客户页面的验证信息的直接验证,完全由客户端实现。其弊端在于JS操作可以通过机器模拟,模拟数据如果没有服务端验证,则仍是无效的。最终提供验证的,其实是在服务端,不能单纯用JS来实现验证码。目前验证码的技术更新换代快,行为式验证码已经成为目前进行人机识别主要的验证方式。
5.什么是行为式验证码?行为式验证码和传统图文验证码有什么区别?