
手势验证码(VAPTCHA)是目前人机验证的最佳解决方案,具备极高的安全性和优异的用户体验。免费为网站和APP应用提供人机验证接入服务。
手势验证
手势验证(VAPTCHA)是“Variation Analysis based Public Turing Test to Tell Computers and Humans Apart”(基于变量分析法来区分人类和计算机的图灵测试程序),这里的变量主要指用户绘制手势相对于系统给定手势的变化率,是验证码的一种。
手势验证基本简介
普通验证码图片随着互联网的普及,为了防止黑客利用程序机器人恶意注册、暴力破解密码、论坛灌水、刷票等,2002年由卡内基梅隆大学的路易斯·冯·安、Manuel Blum、Nicholas J.Hopper以及IBM的John Langford发明了验证码,通过生成一组随机字符串让用户识别并填写,从而区分人和计算机,为了对抗破解程序对字符进行识别,验证码会对字符进行环境干扰和变形。与传统验证码需要用户填写程序处理后很难识别的字符不同,手势验证(VAPTCHA)的“验证码”是一个清晰可见的轨迹图。它的验证流程是,系统随机生成一条路径轨迹,用户用鼠标绘制一样的轨迹,只有达到特定相似率才能通过验证。
手势验证主要特点
VAPTCHA验证码验证时间短。为了对抗不断升级的验证码破解程序,传统验证码的字符的变形处理越来越反人类,人类需要花费更多时间或者多次刷新才能正确识别出验证码字符。而手势验证的验证图是由一条简单的轨迹和干扰的背景图构成,用户仅需要使用鼠标绘制一个相似的轨迹即可完成验证,这个过程耗时不会超过1秒钟。
安全性高。字符验证码的破解流程大致分为降噪、二值化和OCR识别三个步骤。降噪是尽可能了去除掉用于干扰识别的点、线等非字符。二值化是忽略了颜色的干扰,将任意色彩的验证字符图都转化成黑白两色。OCR环节则根据特征库对比验证图匹配出最合适的对应字符。手势验证的图像干扰方式采用了路径轨迹取色与部分背景色一致且不影响人类识别的原则。因为人脑具备计算机不具备的抽象思维能力,就算路径被部分中断或同色块污染,人类仍然能脑补出完整图形,这种方式让破解程序在二值化时遇到极大困难。与传统验证字符的字库有限不同,手势验证的生成图背景以及路径都是随机的,理论上有无限种组合,OCR识别程序显然无法构建一个具备无限种特征的轨迹库,就算建立了这样一个轨迹库,在面对大量相似的轨迹进行特征提取并进行区分也是很大的挑战。正是这些特点,手势验证将验证安全性提升到了前所未有的级别。
手势验证主要应用
手势验证所具备的便捷性和安全性,使它可以应用到传统验证码所应用的场景。比如:防止恶意注册、防止垃圾邮件、防止暴力破解密码等。而易被人脑识别的特征,则让手势验证可以被任意语言的网站和应用所使用,比如:传统验证码字符如果是中文,显示英文环境的用户无法使用。移动互联网的发展,对验证的需求也越来越强烈,手势验证(VAPTCHA)同样适合APP应用进行人机判断。