请证明你是个人类!

经常使用互联网的你,一定见过下面这个家伙吧?

没错,它就是验证码。

可别小看这个家伙,很多人都在它面前栽过跟头。

想象个场景:你登录12306网站,发现还有最后一张余票,正准备下单时,验证码弹了出来,很不巧,你手速慢了一步,近在眼前的回家机会和你失之交臂。

先别气急败坏,大部分人都遇到过这样的窘境,或许这不是你的问题。根据360浏览器提供的大数据,用户一次性填对验证码的概率只有8%,两次输入正确的比例也不过27%。

国民级抢票平台12306网站,为了防止黄牛刷票,不断增加验证码难度,仅2015年,就推出了581种验证码方式。

看下图,感受一下,能3秒钟说出正确答案的朋友,请原地封神,哈哈~

我们都知道,验证码的出现,是为了防止机器恶意攻击而设置的屏障。通过验证码题目,将计算机和人做区分——将人放行,把计算机拦截在外。

但也不可否认,如今的验证码已经不再是简单的输入数字和字母这么简单,有的题目简直怀疑人生。人们不禁感慨,我该如何证明自己是个正常的人类?

今天,我们一起来聊聊验证码的前世今生。

验证码的前世今生

1. 验证码是什么

验证码的专业术语叫“全自动区分计算机和人类的图灵测试”,通过设置特定的题目来区分当前设备背后是人在操作还是机器。

2. 验证码的用途

主要用于防止:黑客穷举破解密码(再复杂的密码通过无限穷举和排列也可以被破解)、自动化程序注册僵尸用户(下文提到的雅虎邮箱就是惨痛的教训)、第三方程序恶意抓取内容(内容型平台的护城河)、自动化程序发帖评论(造成社区秩序混乱、质量下降)、批量操作(比如刷票)等。

中国工商银行注册页面

3. 验证码怎么出现的

2000年左右,人们主要通还是过邮件交流,雅虎邮箱堪称当时互联网行业的“杀手级”应用,很多中国人的第一个电子邮箱后缀就是@yahoo.com。

有流量的地方就会有黑产。

当年国际上最大的黑产是尼日利亚人,世纪之交时,他们开始用机器注册大量的雅虎马甲邮箱,用来发送垃圾邮件,进行网络诈骗,被媒体称作“雅虎男孩”。当时用户打开自己的邮箱,充斥着各种垃圾邮件,苦不堪言。

这个问题困扰了雅虎很久,当时被列为“雅虎十个无法解决的问题”之一。

后来一位叫路易斯·冯·安的人为雅虎设计了一套人机验证方案,也就是最早的字符验证码。

当时的验证码还比较简单,主要是一些简单的数字,利用了“人类会识字,但机器不会”的原理,这把当时的黑产打了一个措手不及。验证码的上线,将困扰雅虎很久都垃圾邮件问题得到了明显解决,用户体验呈指数级提升。

4. 验证码被迫增加难度

道高一尺,魔高一丈,黑产怎么会被轻易打败?可以说,验证码给我们带来的困扰,全都是黑产的“功劳”。

你出数字图形验证码,我就用OCR光学识别;你的图片加上噪点,我就去除噪点;你出滑动验证码,我就用浏览器测试工具模拟人类滑动。

拿OCR技术举例:很多人应该都听说过OCR技术,平时我们用手机将图片拍摄扫描自动转化成文本文字,使用的就是OCR技术。2003年有人通过图像识别算法对简单字符型对验证码进行自动化识别,可以达到93%的成功率。可怕吧?科技是把双刃剑,为我们带来便捷的同时,也被坏人所利用。

但OCR技术只能处理一些简单的字符型验证码,稍微复杂一些的,比如扭曲和翻转的字符,处理的难度就比较大了。因此后来很多网站开始使用复杂型字符,以抵抗反验证技术。

2005年,有人利用机器学习模型对单个字符对验证码进行自动化识别,计算机对识别成功率竟然还比人类对成功率高。但训练机器的难度和成本是很高的,从技术门槛上已经极大的提高了反验证的难度。再后来,验证码继续升级,推出了算术题、图像识别题等高难度题目,让反验证技术难上加难。

研发解码程序的难度和成本越来越高,到后来,索性衍生出了“打码员”的黑色利益链条。黑产们雇佣大量真人,通过系统派发打码任务,打码员根据任务到相关网站人工识别验证码,从而获得收益。

验证码最大的天敌是真实的人,当人与人进行对抗时,基本技术发挥不了多大的作用。

5. 验证码有哪些种类

正如上文所说,验证码被反验证技术倒逼升级,从简单数字、字母,到加减法,再到后来闪烁变形字母、干扰线变形字母,甚至到变态级的选图题…

其实字符扭曲,基本就可以阻挡住大部分机器的识别了,已经算是比较高的难度,在当时的20年内,其安全性也都能排在前列。

如今的验证题目,比如算术题,除了简单的加减乘除外,有时还会考平方计算(没上过初中或许还真答不对)。

为了防止机器识别,甚至汉字还用上了古文字;滑动滑块也是比较有效的方式,通过判断滑动的时间和快慢来识别是否是机器在操作(笔者曾经多次因手速滑动太快而为误认为是机器,真想喊冤);随着二维码的普及,扫码登录的方式也被更多网站所使用,自己证明自己,有意思;当然,像人脸识别、指纹识别、声纹识别等高级的验证方式也在进行探索和实验,目前主要用于银行类网站。

随着技术的发展,近些年,还有许多新型验证方式诞生。比如Gif动画验证码,通过提供GIF动态的验证码图片,使得识别器不容易辨识哪一个图层是真正的验证码图片;手机语音验证码实现自动语音播报,同时短信也能同时发送到用户手机,实现双保险确保万无一失;视频验证码是验证码中的新秀,随机数字、字母和中文组合而成的验证码动态嵌入到MP4,flv等格式的视频中,增大了破解难度。

验证码属于安全验证的一种。

而安全验证,无外乎是如下三个方面的判断:

1)基础信息判断

比如注册时设置的用户名、密码、找回密码的问题和答案,对用户身份有一个基础判断。

2)判断是真人

这就出现了我们经常见到的图形验证码、数字验证码、选图验证码等,用来判断你是不是真人。

3)判断是本人

以上两个方式,只能判断你是真人,且是知道一定真实信息的真人,但还无法确定你就是账号的所有者。所以就出现了短信验证码、微信扫码、人脸识别等验证方式。

目前很多网站已经在使用双重认证或多重验证的方式来保证用户和网站的安全。除了输入用户名、密码外,在发送验证码前还会进行滑块验证。

全民被验证码“白嫖”

或许你还不知道,验证码除了用来区分人和计算机,还在免费白嫖集体网民的智慧。

还记得上文提到的路易斯·冯·安吗?在发明了初代验证码后,他在2004年带领团队又上线了一个叫recaptcha的验证码系统。

当时有很多文献和图书都想做数字化(也就是我们现在看到的电子图书),但很多古书褪色严重,计算机无法识别,于是路易斯·冯·安想到了一个办法:把一个验证码分为两部分,用户需要输入两个验证信息,前面的验证码,用来区别真人与机器;后面的验证码是古书上机器无法识别的内容,用户提交的结果会发送到数据库,把许多人达成共识的答案再经由后台人员甄别,得出来的就是古书的正确内容,以此供计算机学习。据说准确率能够达到99%。

即便放到现在来看,这也仍然是一个聪明绝顶的想法。群众的力量是强大的,有数据统计,通过这种方式,验证码系统每天能够数字化两亿个字符,到今天为止,已经数字化2500万本书。当时纽约时报一整年的所有内容,只需要4天就能实现全部数字化。

2009年,谷歌收购了recaptcha,利用这个方式扩充自家的谷歌图书项目,谷歌图书馆目前已经是全球最大的电子图书馆,拥有近3000万册图书。

人的贪婪是无限的,只让网民翻译古书已经不能满足期待,于是recaptcha 2.0版本应运而生,你应该也不陌生,看看下面这个图片:

谷歌的AI技术一直是其骄傲的地方。

拿谷歌的AI无人驾驶技术来说,想提高机器判断精准度,其实并没有什么捷径可走,需要无数数据和样本供机器学习和训练,这是一项成本极高又很耗时间的投入。

谷歌如何做的呢?

他们将道路上的图片抓拍,并用在验证码上,让网民帮其判断,并将这些结果数据传回机器学习。如果说这是一个天才想法,应该不为过吧?

验证码的一些思考

1. 验证码是最优解吗?

验证码的出现绝对是无奈之举,它对用户的干扰很大。

仔细思考你会发现,验证码其实并不能完全解决问题,甚至在一些极限情况下会出现不成立,比如:验证码能成立的前提是【发起恶意行为时,相比机器自动化完成,人工成本更高】,但在人工非常廉价的地方,只需要付出少许的成本就可以利用真人顺利完成验证,验证码完全失效。

但在目前的技术实现上来看,验证码虽然不是一个好的设计,但确实是一个有效的设计。如果没有验证码系统,每年春运,我们根本抢不到票。

2. 验证码的适老化问题

当年轻人在判断到底是“0还是o”,“日还是曰”时,对于老年人简直是灾难。

在《移动互联网(APP)适老化通用设计规范》中也明确对验证码做了要求,不过纵观目前国内的互联网产品,在验证码适老化方面还有很大的提升空间。除了提供传统验证码放大能力以外,还应该支持更多元的验证方式,比如语音验证码等。

3. 验证码能一劳永逸吗?

随着技术的持续发展,未来计算机和人类的差距会越发缩小,验证码是阶段性背景下的产物,人和机器的对抗还将持续进行下去。

4. 有没有可替代的方案

目前也陆续出现了更多元的验证方式,比如指纹、虹膜、体感、声纹技术等,不过目前推广起来难度较大,这些技术的使用需要搭配额外的硬件来实现,抛开硬件的价格,精度本身都是个大问题,更何况安全性和便捷性也并不一定高。

苹果推出了私人访问令牌(无感验证),当用户开始使用手机时,系统就会自动开始跟踪记录,综合用户完成的一系列动作来判断设备背后是真人还是机器。但这是以牺牲个人隐私和数据为代价。尽管苹果承诺这些数据不会被用作其他用途。

5. 验证码的安全性和体验性

要对验证码进行升级,就必须考虑安全性和体验性,既要在交互上尽可能少的阻碍用户,又要做到足够安全,这本身就是很难平衡的天平。

近几年,国内互联网产品都在努力改进验证码方式,很多网站已经改为了短信验证码/扫码登录的方式,在用户体验和便捷性上都有了不小的提升,不过考虑到扫码也会存在潜在安全性,部分网站还是会将传统验证码和扫码结合使用,双重防护。

结语

笔者认为,虽然目前我们还没有更好的办法进行人机验证,不过可以尽可能少的对用户使用进行阻碍,在不必要的环节尽可能少的使用验证码。验证码慎用,验证码慎用,验证码慎用。

虽然痛恨它,但也感谢它,更要继续超越它,验证码的发展史,就是人机抗衡的革命史,没有任何解决方案可以一劳永逸,但在可控的范围内,我们可以选择更友好的方式,在体验上,在特殊人群上,都可以做的更好一点点。

记住,人永远是最高级的生物,无论何时。

本文来自微信公众号 “人人都是产品经理”(ID:woshipm),作者:李云琪,36氪经授权发布。


玩家诉游戏公司:虚拟财产如何归属

法院判决:游戏道具、装备等虚拟财产归游戏公司所有,但游戏公司应保障玩家的使用权。
许多玩家需要面对一个现实:游戏里的虚拟财产并不真正属于自己。在游戏厂商决定停服或封禁、删除玩家的游戏账号时,账号以及其中包含的所有道具、装备等也会一并消失。

游戏厂商往往会将“公司有权删除用户的游戏数据”写进各自的用户协议。其中,长时间不登录游戏的“非活跃账号”往往被厂商视为应当删除的对象。不论国内还是国外,多家游戏公司的用户协议中都有删除非活跃账号的条款。

对于这些用户协议,大部分玩家通常会选择“点击接受”,但也有人为此诉诸法律。

删除非活跃账号:业界普遍现象
事实上,“删除一段时间不登录的账户”并非某一个游戏的用户协议独有的条款。在游戏行业,这是一种相当普遍的现象。

比如米哈游的服务协议中规定,如用户连续365天没有登录游戏,则自第365天当天的24时起,米哈游有权采取措施删除该用户账号以及该用户账号在游戏数据库中的任何记录(包括但不限于角色、等级、虚拟物品、虚拟货币等数据信息),删除后的数据信息无法再恢复。

《畅游移动用户协议》中也规定,对持续180天未持续登录或使用畅游移动游戏平台的用户,畅游移动有权对该用户账号采取措施(包括但不限于冻结、注销等)。



《畅游移动用户协议》中对非活跃账户的处理措施

今年8月,拳头游戏发布公告,将删除旗下所有游戏中长期处于非活跃状态的账号。判断标准为:3年未登录、没有购买或收到任何游戏币、账号游戏时间不超过20小时、不拥有任何稀有游戏道具。一个账号必须满足以上全部条件,才可能会被删除。

甚至于,在游戏行业之外,许多平台也有类似的删除非活跃账户的举措。Netflix就在今年5月的一次声明中宣布,会向加入Netflix一年却未观看任何内容的用户,以及停止观看两年以上的老用户发送确认邮件,询问他们是否希望保留会员资格。用户如果不进行确认,账户将会被删除。不过,Netflix有条件地保留了这部分用户的个人资料,假如他们在10个月内重新注册成为会员,旧账号上的内容可以恢复。

Twitter也曾在2019年推行过删除非活跃账户的计划,因为涉及到过世用户的账号问题,这项规定在公布后遭到大批用户反对,最终也没有正式施行。

在游戏圈子里,虽然关于虚拟财产的讨论比较常见,但在国内,真正上法庭的次数并不多。在触乐之前的报道中,《云裳羽衣》停服事件中的当事人选择去中国消费者协会申诉,国行英伟达SHIELD停运事件里的受访者处于一种“认栽”的状态。

去年,一位玩家因对游戏内服务协议的部分条款不满,向上海市第一中级人民法院起诉运营商莉莉丝游戏。案件于2021年10月11日一审结束,判决认定《莉莉丝游戏许可及服务协议》(以下简称为《服务协议》)第5.3条无效,但驳回原告其他请求。随后,莉莉丝游戏提起上诉,二审于2022年7月25日宣判,维持原判。



《莉莉丝游戏许可及服务协议》中的相关条款

法院判决:玩家的权益应该得到保障,但账号和虚拟财产归属于游戏公司
一审阶段,原告玩家主要有两点核心诉求:一是希望判决其中的第5.3条(删除非活跃玩家账号无责,原文见插图)无效;二是希望判决第7.6.13条“用户不得私自进行游戏账号、游戏道具、游戏装备、游戏币等交易”的内容无效。

玩家一方的诉求很好理解——游戏账号是我的,公司不能因为我长时间不登录而删除它,也不能阻止我的交易行为。针对这两项诉求,玩家与游戏公司在法庭上分别表达了观点,法院也作出了相应的判决。

对于“游戏公司是否有权删除365天未登录的账号”,公司一方认为,这条规定的目的是让玩家享受更好的游戏体验,并没有限制玩家的主要权利,定时上线只是对游戏账号使用上的一些规定,总体来说是合理的。此外,如果服务器中存在过多“沉睡用户”,会影响其他用户体验,也增加游戏的服务器维护成本。

一审法院认定,双方争议的《服务协议》是游戏公司为了重复使用而预先拟定的,内容不可协商,属于格式条款。根据《中华人民共和国合同法》的规定,格式条款中,凡是免除提供格式条款一方当事人主要义务,排除对方当事人主要权利的,一律无效。

具体而言,游戏公司没有说明休眠账号会给服务器带来多大的运营负担,而对用户来说,账号被删的后果却很明显。这种条款实质上是服务合同的终止条款,是对双方权利义务的重大处分。因此,法院认为,游戏公司设定的连续365天不登录期限并不合理,处置方式(删除账户)也“缺乏交易之诚实信用”。这项条款免除了游戏公司运营的义务,排除了玩家玩游戏的权利,属于无效条款。

对于“玩家是否有权私自进行游戏账号、游戏道具、游戏装备、游戏币等交易”,游戏公司根据《服务协议》中第7.2条的约定,认为游戏道具资源的所有权属于游戏公司,玩家只有使用权。公司表示,玩家购买的道具是“为了获得更好的体验购买的服务”。禁止玩家私自进行交易,是为了游戏市场健康发展,不是出于保护运营者利益的目的。



游戏道具归属权是网上讨论的核心之一,也是庭审中的另一个主要焦点

在这一方面,法院基本认同莉莉丝提出的观点。法院认为,游戏账号、道具、游戏币等网络虚拟财产所有权由游戏用户享有,尚欠缺法律依据。双方属于服务合同关系,根据《服务协议》,游戏用户对上述的虚拟财产只有使用权而非所有权。包括在游戏中支付货币换取的游戏币、游戏道具等,也属于购买“区别于其他无偿游戏用户的游戏服务”,不是得到虚拟财产的所有权。

法院认为,网络游戏中的游戏道具、游戏装备等虚拟财产是在游戏中取得的,其取得方式和状态由游戏的规则所确定,属于网络游戏内容不可分割的一部分,理应归运营游戏的莉莉丝公司所有,游戏用户可以根据约定享有使用权。莉莉丝的义务是保证用户能正常使用它们,并没有明显失衡。因此,法院不能支持玩家的诉求。

因此,一审判决中,法院支持了玩家对删除游戏账号相关的诉求,但驳回了自由交易游戏内物品的诉求。随后,莉莉丝提起了上诉。

二审中,原、被告双方主要争论的焦点是删除非活跃账号的问题。

莉莉丝提供了包含畅游、米哈游、完美时空等业内主要公司的相应服务协议条款,新华社、《中国青年报》、《新京报》、新浪财经等媒体刊载过的有关游戏黑色产业的文章,以及案件中提及的游戏的黑产情况总览,总共16条证据,证明我国网络游戏产业饱受黑产侵袭,采用这类条款是主流游戏公司必要的共同选择。



《经济参考报》的报道《百倍暴利滋生互联网“账号黑市”》阐述了“网游黑产”的运作模式

公司认为,批量注册账户是黑产进行下一步违法行为的重要前提,这些账户可能被卖给下游黑产,用来从事损害公司和玩家合法权益的行为,比如批量“薅羊毛”,骗取游戏公司的用户福利,或套取其他玩家的信息,用以盗号或诈骗玩家。即使该账户有过充值行为,也无法判断是否为黑产的“养号”行为,所以游戏公司“必须保留删除的条款”。

同时,删除账号的目的还包括打击出租账号,通过删除租号公司批量注册的账号,起到保护未成年人的作用。

但二审法院认为,删除休眠账号并非打击黑产的唯一途径,休眠账号与网络黑产之间也没有直接的关联性,不能以此限制玩家的主要权利。

庭审中,法院对游戏公司与玩家签订《服务协议》的情况,也进行了一定程度的解释。法院表示,如果协议条款明确违反了《消费者权益保护法》或《合同法》,可以认定为部分条款无效。在本案中,莉莉丝以及其他公司处置游戏账号的方式,对未注意或遗忘条款的游戏玩家来讲过于严厉。玩家面临无救济措施而直接丧失合同主要权利的风险,过失与承担的风险并不相当,超过了必要限度。最终,这一条款被判定无效。

总体来看,这两次庭审可以反映出现阶段法院对游戏账号和虚拟财产归属的认定:游戏道具、装备等虚拟财产归游戏公司所有,但游戏公司应保障玩家的使用权。

期待更完善的虚拟财产相关法条
从结果来看,上海市第一中级人民法院此次判决,对于游戏行业、公司和普通玩家来说都有一定意义。虽然具体案例仍需具体分析,但在之后发生类似纠纷时,它可以给游戏公司与玩家提供一些参考。

与此同时,游戏公司在庭审过程中所提到的黑色产业、账号非法交易、保护未成年人远离黑灰产伤害等问题也并非不存在,这些风险不应该由公司、玩家或行业之中的某一方单独承担。

在相当长的一段时间里,关于游戏账号、游戏内虚拟财产的讨论或许仍将持续,并向着有据可循,有法可依的方向发展。《中华人民共和国民法典》第一百二十七条规定:“法律对数据、网络虚拟财产的保护有规定的,依照其规定。”对于游戏公司、玩家以及整个游戏行业而言,随着相关法律法规完善,虚拟财产的归属与保护也将逐渐规范化。

(你可以在中国裁判文书网上查询两次庭审的记录,一审案号为沪0112民初3445号,二审案号沪01民终249号。)

本文来自微信公众号 “触乐”(ID:chuappgame),作者:杨宗硕,36氪经授权发布。


互联网苦「验证码」久矣