验证字(CAPTCHA) 的安全问题

验证字/验证码(CAPTCHA) 最早作为 Carnegie Mellon 大学的一个科研项目,Yahoo! 是CAPTCHA 的第一个用户。 CAPTCHA 这个缩写来自 “Completely Automated Public Turing test to Tell Computers and Humans Apart” ,其目的就是通过用来区分机器与人,其安全性与 SPAM 数量息息相关,一直以来,是此消彼长。

验证字是每一个网站不可回避的一个东西。前几天 Slashdot 上一则题为: Yahoo CAPTCHA Hacked 的消息引起了不少人的震惊。乖乖,精确度能达到 35%!要知道,一直研究 CAPTCHA 有效性的 PWNtcha 项目的评测中,Yahoo! 的验证字几乎是最安全的那种, “A very good captcha, but not always human-solvable”,之前也有 专门针对 Yahoo ! 所用验证字进行破解研究项目,比如 Gimpy

肯定没有 100% 安全的验证字–除非你根本不想让人看明白,在用户可识别性与机器识别之间的平衡是最大的问题,”挑战–响应”,两个环节之间的问题其实也挺微妙。在注册微软的一些服务的时候,验证字很难让人看明白,要多刷新几次才能有个好认的;而一些电子商务的网站,比如 Paypal ,验证字被 PWNtcha 破解的概率是 88% ,这么做应该也是有苦衷的,毕竟要考虑用户体验。

中文网站所使用的验证字机制,个人觉得还没有引起足够的重视。唯一值得一提的是腾讯的 “中文” 验证字算是一个创新(估计是申请专利了),估计能够抵挡住国外 SPAM 的攻击(谁让老外不认识中文呢). 而从我个人的体验上来看,通过机器人发送 SPAM 的大部分来自国外,国内目前处于”手工“ Spam 方式比较多,当然,更为精准。这就是技术的”马奇诺防线“啊!

参考:

EOF


  • http://www.gracecode.com 手气不错

    其实还有一个比较取巧的做法防范 Spam
    http://www.gracecode.com/Archive/Display/99
    不过个人认为仅仅这些还是不够的

  • http://www.bolarn.com 波乐

    不知道jpgraph的这个antispam效果怎么样?http://www.aditus.nu/jpgraph/features_gallery.php#AntiSpam

  • http://www.aiseminar.cn/bbs jink2005

    开阔眼界了,CAPTCHA可以好好研究下了,呵呵。我把此文转载到人工智能研讨论坛了,欢迎您来访指导。
    http://www.aiseminar.cn/bbs/viewthread.php?tid=729&fromuid=3