.:. 草榴社區 » 技術討論區 » 点了“我不是机器人”后,网站怎么知道你真的是人?
--> 本頁主題: 点了“我不是机器人”后,网站怎么知道你真的是人? 字體大小 寬屏顯示 只看樓主 最新點評 熱門評論 時間順序
路丸


級別:精靈王 ( 12 )
發帖:502
威望:120 點
金錢:362834519 USD
貢獻:85086 點
註冊:2015-08-10


点了“我不是机器人”后,网站怎么知道你真的是人?



大部分人可能都被Google要求做过这样奇怪的保证:
“我不是机器人”。
 
只要你经常使用一些国外的网站,它就会隔三差五地弹出这个对话框,要求你点击来“声明”自己不是机器人。
以前这种“证明自己是人”的环节里,有很多让人不胜其烦的验证码,要么是一串扭曲的字符,要么是一堆支离破碎的图片让你辨认。但在这种最新的验证下,大部分情况下,只要你点击确认之后,网页就会成功放行。
这显然是一种更方便快捷的验证形式。但它同时也让一些用户陷入了迷惑:
“这究竟怎么判断我到底是不是机器人的?”
 
“难道是因为机器人不会撒谎?”
事实当然并非如此。
简单的点击背后,其实暗藏着很多信息传递,还包含你的隐私。
这个见怪不怪的机器人测试背后,掩盖着的是十数年人机对抗的斗争史。


1
点击“我不是机器人”这一交互形式,本质上来说还是你在填验证码。
要解释这一点,我们就有必要回顾一下验证码的发展历程。
对于现在的用户而言,填写各类验证码已经必不可缺的技能之一。验证码只会耽误每位用户几秒钟的时间,但却能极大提升网络环境的“清净程度”。
 
如果没有它的存在,那你现在恐怕会遭受更多的垃圾邮件轰炸,信息骚扰。服务商也会面对泱泱脚本大军而感到崩溃……
就像20年前的互联网那样。
2000年之前,验证码并不存在。那时的网络虽然并不发达,但已开始兴起,各类论坛和邮件服务商的涌现,拉开了网络交流时代的序幕,而与正向技术一同出现,当然还有种种恶意脚本。
垃圾邮件、评论、恶意信息随着脚本的出现开始漫天飞舞。雅虎作为2000年左右最为出名的网络服务商之一,深受其害——他们是互联网早期最重要的免费邮箱提供商,但面对脚本和海量垃圾邮件束手无策。于是雅虎便联系到了卡内基梅隆大学的计算机科学系来寻求帮助。
雅虎的主要需求是想“有效分清真人用户和机器脚本”。卡内基梅隆大学一名21岁的学生路易斯·冯·安恩(Luis Von Ahn)针对这个目的有了思路:要让注册的用户提供“证据”来证明自己是一个人类,例如做一些只有人类能做,而机器做不到的事情。
什么事情是在当时只有人类能做而机器做不到的?答案是阅读图片。
人类可以很轻松的读出图片中的信息,但当时的机器并没有这样的能力。如果通过程序来提供一些稍加扭曲的图片,然后让注册者回答图片中的内容,便能很轻易地将机器拒之门外。
 
听起来是不是很熟悉?这正是即使在现在我们也很常看到的验证码形式之一。
2000年左右,这名学生路易斯·冯·安恩发明了验证码这一概念,他将其命名为CAPTCHA。
CAPTCHA是Completely Automated Public Turing test to tell Computers and Humans Apart的简写,意为“全自动区分计算机和人类的图灵测试”。
也是从这一刻开始,一场持续数十年的,人与机器之间,围绕着图灵测试的对抗开始了。


2
说起这种最早出现,也是最常见的验证码形式,恐怕大多数人,都对它有过一些不太美好的回忆。
最早出现的验证码,都是一些简单容易看懂的形式。人类可以很简单地分清上面的内容。
 
但随着机器识别图片能力的提高,验证码的难度也日益提升。
有时它的难度甚至大到网友怀疑自己的程度。
 
为了避免被机器识别,验证码需要对图上的文字加以扭曲等视觉干扰,本质上是为了避免被机器认出来。
但有时扭曲的程度也难到了人类。
 
“U”和“V”像是双胞胎兄弟,“O”和“0”很难分清,这基本上是每个网友都碰见过的麻烦。但这些都只是初级问题,当中文验证码出现之后,人们面前的困难也就更多了。
 
和英文、数字验证码不同的是,中文验证码更多是给人心理上的折磨。
 
2017年,成都大学的一名大四女生,在网上准备报名考研。输完用户和密码后,她的屏幕上弹出两个字的中文验证码:
“别考。”

 后来官方表明“纯属巧合”
关于这种初级形态的验证码,类似的问题无时无刻在困扰着网民们。而验证码又对网络环境而言来说是个不可或缺的存在。
每位网民都要在验证码上花费几秒时间,看似成本短暂,但叠加起来又是一个巨大的量级。
根据统计数据,全球网民每天需要输入近2亿次验证码,每次需要花费十秒。算起来,全人类每天会在验证码上花费50万个小时。
验证码最初的发明者,路易斯·冯·安恩发现这个事实后,深感浪费——毕竟时间就是金钱。而这50万小时的资源,就这样白白浪费掉了。
 他现在是多邻国的创始人
有什么能利用这些时间的方法吗?路易斯·冯·安恩又有了想法:既然验证码需要让人类辨认图上的文字,那能不能让人类“顺带”帮忙辨认一下一些难以识别的书籍?
这听起来似乎是天方夜谭,但路易斯·冯·安恩通过一个简单的小方法实现了。
他把验证码需要输入的单词改为两个,其中一个是已知答案的单词,另一个是摘自旧书或手稿中的单词。
 
已知答案的单词是单纯的验证码,如果用户成功输入,那就已经通过了测试。
 
于此同时,这也意味着这名用户不是瞎打的字。那么用户所辨认的另一个截取自古书籍的单词的内容,也将被记录为有效答案。如果有3位用户对一个单词给出同样的答案,那么该字就将得到校验。
你看似是在输入验证码,其实是在帮助识别校对古书籍上的内容。
这个新的验证码机制(reCaptcha)很快被各大网站利用,随后被谷歌收购。每天大约有4000万个单词就这样被辨认出来,这个新的验证码系统,靠着无穷无尽的免费人力资源,每年能读出数十万本书。
这是验证码大战的另一次升级:人类创造脚本来牟利,脚本让人类在验证码上浪费无数时间成本,而聪明的人类又把这份成本有效的利用了。
当然,这并不意味着这场斗争的停止。


3
看图识字型验证码,仅仅维持了一段时间的互联网和平。验证码农场的诞生,开始带来一些改变。
所谓验证码农场,就是一些专门来人工识别验证码的工作室。它的原理非常简单:“农场主”雇佣大量廉价人力资源,这些人坐在电脑前,无间断地输入从各地发来的需要辨认的验证码。
这种质朴的方式的确扰乱了大环境,但带来的改变并没有那么致命。
真正的变化,还是起于机器识别能力的日益提升。随着技术逐步升级,原本对于机器来说难以辨认的扭曲验证码,已经不再是一个天大的难题。
 
在2014年,谷歌发布新的研究成果,一个专门用来解读扭曲验证码内容的算法。
最后测试的结果中,机器解读验证码成功率99.8%,而人类的成功率,是33%。
在绝对的技术面前,人力再一次落败。但这当然不是验证码的末路。
2014年,Google发布了新一代验证码技术,他们将其称为:“No CAPTCHA reCAPTCHA ”——“没有验证码的验证码”。
这个没有验证码的验证码十分简单,只需要你勾选一个按钮,来“证明”自己不是机器人。
这就是如今我们常常看见的“我不是机器人”。
 
“我不是机器人”看起来简单方便,只需用户轻轻一点。但背后的逻辑要比普通验证码复杂许多。
当你点击“我不是机器人”时,Google将会分析你的各种行为,包括点验证码前、点验证码时、点验证码后的动作,来判断你是不是人类。
它也会收集一些你的数据,比如指针移动速率,当前IP,是否使用插件,页面使用时间,进行过多少次点击……
 
如果你展现出来的行为,都符合一个人类的标准,那网页就会放行。
基本上可以这样说:这是用一小部分隐私换来的快捷。
而且有意思的是,这种测试对于真正的(物理)机器人来说反倒不太有效。
 
当然,有时Google也无法单纯从你的行为来确认你是否为人类,而这时就会出现图片测试,要求用户选择图片中出现的XX。
这种也是当下比较常见的一种验证码形式,同时也遭人吐槽最多。
比如说,图片测试中要求辨认的物体,总是很刚好地超出选项框一点点,令人左右为难。
 
“选出图片中的汽车”往往是最难的一项。
 
选交通信号灯也常常让用户感到无从下手。
 
有时图片里根本不会有要求辨认的物体:
 
基本上每个网民,都曾被这种类型的验证码折磨过几回。也让“选出图片中的xx”顺利成为了一种梗图。
 
 
如果你有幸曾在12306上购买过车票,应该也能理解这种痛苦。自2015年开始,12306上线了新的图片验证码,自此让所有买票人叫苦连天。
 据官方统计,能一次性输入对12306验证码的人,只有8%
脚本越来越厉害,验证码越变越复杂,这似乎是一个无解的循环……
由人们创造的,日益提升的机器算法,和同样出自于人类之手的脚本相互抗衡,最终诞生的时间成本,似乎还是要人类自己来承担。


4
最近这两年,Google又推出了新一代验证码 reCaptcha v3。
而reCaptcha v3,其实也不用再被称之为“验证码”了,因为它并不需要用户做出任何证据来“证明”自己是个人类。
它会在网站后台自动记录使用者在网站中浏览的行为特征,随后根据这些记录来给用户打分,当用户的“非人”操作足够多之后,就会被判定为机器人。
这项技术如今并没有被大面积使用。但对验证码的发展来说,似乎是个较好的方向。但它必然也是有代价的,比如隐私……
截至目前来看,这场人与机器之间,围绕着图灵测试的对抗,仍未有个明确的局势。
或许在技术更加发达的未来,如何证明自己是个人类,对于人类而言将变成更难的一个问题。
 




赞(4)
TOP Posted:2021-03-04 13:45 樓主 引用 | 發表評論
骚妇杀手


級別:精靈王 ( 12 )
精華:1
發帖:2978
威望:876 點
金錢:12 USD
貢獻:12345 點
註冊:2020-04-16


感谢分享
TOP Posted:2021-03-04 13:46 #1樓 引用 | 點評
比樂師憂


級別:精靈王 ( 12 )
發帖:5007
威望:2008 點
金錢:3169 USD
貢獻:11111 點
註冊:2021-02-21

感谢分享
TOP Posted:2021-03-04 13:48 #2樓 引用 | 點評
jmszrwx


級別:風雲使者 ( 13 )
發帖:79732
威望:7972 點
金錢:2147284429 USD
貢獻:22850 點
註冊:2012-04-26

可怕的
TOP Posted:2021-03-04 13:52 #3樓 引用 | 點評
锦觅


級別:新手上路 ( 8 )
發帖:130
威望:22 點
金錢:3 USD
貢獻:20 點
註冊:2021-02-23

12306的验证码是真的恶心,经常弄出错,然后一直错下去
------------------------
.


點評

    TOP Posted:2021-03-04 13:53 #4樓 引用 | 點評
    继续吹风66


    級別:騎士 ( 10 )
    發帖:2855
    威望:357 點
    金錢:10176 USD
    貢獻:0 點
    註冊:2020-12-28

    1024
    TOP Posted:2021-03-04 13:53 #5樓 引用 | 點評
    砂锅


    級別:聖騎士 ( 11 )
    發帖:7433
    威望:714 點
    金錢:983240 USD
    貢獻:222 點
    註冊:2019-03-16

    感谢大佬分享
    TOP Posted:2021-03-04 13:56 #6樓 引用 | 點評
    平安喜乐


    級別:俠客 ( 9 )
    發帖:1246
    威望:125 點
    金錢:4 USD
    貢獻:118 點
    註冊:2020-10-21

    1024
    TOP Posted:2021-03-04 13:56 #7樓 引用 | 點評
    唐棣之华


    級別:俠客 ( 9 )
    發帖:2236
    威望:224 點
    金錢:1536914 USD
    貢獻:6 點
    註冊:2015-10-09

    感谢分享。
    TOP Posted:2021-03-04 14:02 #8樓 引用 | 點評
    马马马0325


    級別:俠客 ( 9 )
    發帖:1761
    威望:177 點
    金錢:10091 USD
    貢獻:0 點
    註冊:2015-06-14

    感谢分享
    TOP Posted:2021-03-04 14:03 #9樓 引用 | 點評
    喝酒吃肉


    級別:精靈王 ( 12 )
    發帖:13767
    威望:1222 點
    金錢:2386888 USD
    貢獻:0 點
    註冊:2020-08-30

    感谢分享
    TOP Posted:2021-03-04 14:06 #10樓 引用 | 點評
    岚图


    級別:天使 ( 14 )
    發帖:4109
    威望:6291 點
    金錢:205 USD
    貢獻:2324972 點
    註冊:2020-12-12


    感谢分享
    ------------------------
    7
    TOP Posted:2021-03-04 14:09 #11樓 引用 | 點評
    泛思微


    級別:精靈王 ( 12 )
    發帖:3979
    威望:409 點
    金錢:77 USD
    貢獻:31862 點
    註冊:2019-10-16

    不知道它是不是真的知道
    TOP Posted:2021-03-04 14:10 #12樓 引用 | 點評
    李杰卡尔德


    級別:俠客 ( 9 )
    發帖:1056
    威望:103 點
    金錢:34 USD
    貢獻:0 點
    註冊:2019-01-08

    1024
    TOP Posted:2021-03-04 14:14 #13樓 引用 | 點評
    花看半开


    級別:俠客 ( 9 )
    發帖:1009
    威望:103 點
    金錢:6 USD
    貢獻:2 點
    註冊:2021-01-11

    人机对抗,慢慢发展成为机机对抗。


    點評

      TOP Posted:2021-03-04 14:27 #14樓 引用 | 點評
      小喬初妝


      級別:聖騎士 ( 11 )
      發帖:1833
      威望:440 點
      金錢:4 USD
      貢獻:14500 點
      註冊:2020-12-15

      魔高一尺道高一丈
      ------------------------
      A
      TOP Posted:2021-03-04 14:39 #15樓 引用 | 點評
      扬春白雪


      級別:新手上路 ( 8 )
      發帖:686
      威望:70 點
      金錢:695 USD
      貢獻:0 點
      註冊:2020-03-27

      1024也就是人的对抗
      TOP Posted:2021-03-04 14:49 #16樓 引用 | 點評
      泡枸杞的大叔


      級別:聖騎士 ( 11 )
      發帖:8139
      威望:765 點
      金錢:101749 USD
      貢獻:23 點
      註冊:2020-01-24


      多谢分享
      TOP Posted:2021-03-04 14:56 #17樓 引用 | 點評
      zgpshc


      級別:精靈王 ( 12 )
      發帖:3738
      威望:380 點
      金錢:77368377 USD
      貢獻:35000 點
      註冊:2016-12-09

      验证码好难
      TOP Posted:2021-03-04 15:10 #18樓 引用 | 點評
      持笔续竹楼


      級別:禁止發言 ( 8 )
      發帖:427
      威望:43 點
      金錢:427 USD
      貢獻:0 點
      註冊:2021-02-16

      感谢分享
      TOP Posted:2021-03-04 15:21 #19樓 引用 | 點評
      正太分布


      級別:俠客 ( 9 )
      發帖:2196
      威望:220 點
      金錢:92684 USD
      貢獻:2 點
      註冊:2016-12-17

      1024
      TOP Posted:2021-03-04 15:29 #20樓 引用 | 點評
      chch2350


      級別:光明使者 ( 14 )
      發帖:9736
      威望:847 點
      金錢:13404265 USD
      貢獻:500000 點
      註冊:2013-03-04

      最后一个验证码真不会做
      ------------------------
      3
      TOP Posted:2021-03-04 15:39 #21樓 引用 | 點評
      ylxnrGR


      級別:光明使者 ( 14 )
      發帖:25558
      威望:2517 點
      金錢:5314414 USD
      貢獻:729498 點
      註冊:2016-09-08

      看看了
      TOP Posted:2021-03-04 16:02 #22樓 引用 | 點評
      炮神


      級別:精靈王 ( 12 )
      發帖:13613
      威望:1386 點
      金錢:15192 USD
      貢獻:0 點
      註冊:2011-09-11


      谷歌经常有这茬儿
      TOP Posted:2021-03-04 16:27 #23樓 引用 | 點評
      娇风吹梦


      級別:騎士 ( 10 )
      發帖:4599
      威望:451 點
      金錢:6190 USD
      貢獻:30 點
      註冊:2018-10-15

      谷歌搞出来的
      TOP Posted:2021-03-04 16:35 #24樓 引用 | 點評

      .:. 草榴社區 -> 技術討論區

      快速回帖 頂端
      內容
      HTML 代碼不可用

      使用簽名
      Wind Code自動轉換

      按 Ctrl+Enter 直接提交