今年春运已经开启,大家都抢到票了吗?有多少打工人是定时抢票,不停地刷新网页 , 最后仍然不得不花大价钱买“抢票加速包”才买到票的?
这两天关于“12306 已申请防止自动抢票专利”的新闻冲上热搜,引发广大网友的关注 。
那么 , 为什么有了软件加持,就真的能买到紧缺的车票呢?如何才能防止自动抢票呢?今天从技术的角度来聊聊 。

文章插图
网上购票时,到底发生了什么?
在 12306 上买火车票,和在淘宝、京东这些电商网站上买东西,基本的流程是相似的 , 大概可以分成登录、查询、选择、确认、支付这样几个步骤 。
登录是购票的前提 , 它会验证使用者的身份是否是自己声称的身份,涉及个人信息的确认 。
其原理也很简单:用户输入自己的用户名和登录密码,购票系统在自己的用户数据库中查询 , 看看用户名和密码是否正确 。如果正确的话,就认为用户身份可信 。

文章插图
在这一阶段 , 风险在于用户身份可能被仿冒 。仿冒者可能会大量尝试不同的密码,或者使用其他网站泄露的密码,来仿冒真正的用户身份 。
而通用的解决方案是双管齐下:当用户连续几次输错密码 , 就在一段时间内禁止登录;以及在用户输入密码后,再经过一个验证步骤,来让用户拖拽拼图 , 或者在一系列图片中找到符合要求的图片 。
过去的 12306 曾因为验证难度过高而为人诟病——在早期,12306 的第一次验证通过比例只有可怜的 8% 。当然,在经过多年持续改进后,这一问题已经被解决得差不多了 。
【12306申请防止自动抢票专利,抢票软件还有用吗?】确认了用户身份后,接下来就是一路坦途 。用户先根据自己的出发地和到达地查询余票情况,然后选择自己想要的车次;然后选择乘车人和座位信息 , 确认选择正确后,支付票款 。
这个过程,其实和用户把身份证递给火车站售票处的工作人员、由工作人员代为选票的过程是一样的 , 只不过实现了完全自助而已 。
有余票时,这个过程当然没有问题,大家按照先来后到的顺序逐一购票就好 。但若是余票不足 , 而大家又都想买到票,那么就不免有人想要上一些技术手段了 。
为什么技术手段可能可以抢到票?
购票时的技术手段,就是自动化抢票 。自动化抢票的基本思路,是让计算机模拟人的行为 。
个人使用:若是开发一个仅仅自己使用的自动化抢票程序,还是比较简单的 。先用自己的个人信息登录,人工通过身份验证,然后以较高的频率持续查询想要的车次,当查询返回的数据表示有余票时 , 马上下订单 。
此时的关键,在于分析返回的查询结果 。而这也不难,毕竟查询结果是返回的一串文字,从中提取信息比较容易 。这就像是站在售票处窗口,过两分钟就问一次有没有票一样,反正 12306 的服务器是机器而不是售票处工作人员,只要计算能力允许就能做到有问必答 , 不会觉得这样问来问去很烦 。
多人使用:而若是要为许多人抢票 , 就会麻烦一些 。帮助用户登录和通过验证比较麻烦,毕竟让计算机像人那样识别图形、通过验证过程还是有些难度的——验证码发明出来,就是为了让计算机难以冒充人 。

文章插图
不过既然是技术问题,那往往也就会有技术解决方案 。随着计算机视觉技术的发展,攻破图形验证码并不是难以做到的事情,只是拉高了技术门槛而已 。
所以自动化抢票的过程,就像是一群人堵在售票处窗口,过几秒钟就有人过来问一遍有没有票,直到买到票或者过了售票时间才罢休 。
自动化抢票会带来几个后果:对那些规规矩矩排队买票的用户不公平;浪费了 12306 服务器的计算资源,可能降低 12306 用户的购票体验;以及降低了所有用户的幸福感——没有买到票的用户自然不高兴,而加了钱抢到票的用户也未必开心 。
所以当然,为了防止自动化抢票 , 也该有相应的技术手段才是 。
如何防止自动化抢票?
有几个基本思路可以提高自动化抢票的技术难度 。
1.识别来自自动化抢票软件的行为,找到那些自动化抢票的机器黄牛 。
推荐阅读
- 知乎怎么申请直播权限呢 知乎怎么申请直播权限
- 公租房申请后多长时间能批下来 公租房申请后多长时间能批
- 微信该咋的才可以申请退款,微信直播买的东西怎么退款
- 如何申请通信行程卡,怎样申请通信大数据行程卡
- 为什么你的抢票软件没用了?12306 防自动抢票专利了解一下
- 2023年如何在线申请护照签证 2023年如何在线申请护照
- 婚前隐瞒了疾病婚姻能否撤销 婚前隐瞒疾病可以申请撤销婚姻吗
- 住房救助该如何申请
- 猫传腹要测试什么,猫传腹救助申请怎么申请
- 相互宝互助金需要出院后申请,相互保退出后还能买什么保险
