为什么访问网站时会出现请验证你是真人选项?这样做是为什么?

我们在访问网站时,经常会碰到请验证你是人类,或请验证你是真人。这是项什么技术呢?

这项技术通常被称为 CAPTCHA。CAPTCHA 是 "Completely Automated Public Turing test to tell Computers and Humans Apart" 的缩写,中文可以翻译为“全自动区分计算机和人类的图灵测试”。

它的核心目的是通过设计一些计算机难以轻易完成,但人类相对容易识别的任务,来区分操作者是真人还是自动化程序(例如:网络机器人、爬虫等)。

常见形式的 CAPTCHA 技术包括:文本验证码、图像识别验证码、音频验证码、数学题验证码、滑动拼图验证码、手机短信验证码等等,我相信大家都见识过。

有时网站虽然弹出了请验证你是真人选项,但是你只要点下鼠标确认一下就可以了。这样的技术叫reCAPTCHA (Google 的一项服务)。

“我不是机器人”复选框: 这是最常见的 reCAPTCHA 形式。你只需要勾选一个复选框。Google 的后台会根据你的鼠标移动轨迹、点击行为、IP 地址等多种因素来判断你是否是真人,而无需你进行额外的操作。

隐形 reCAPTCHA: 这种形式更加智能,它会在后台分析用户的行为,只有在系统认为操作者可能是机器人的时候,才会弹出额外的验证挑战(例如图像识别)。

还有一项,你完全连鼠标也不用点,它会自动判断你是否真人。这里网站在后台也会做一些分析,它自动跳过判断的,这种的一般是你经常去的网站。在这之前,它已经在前期收集了你好多的行为和习惯。用户行为分析包括以下:鼠标移动轨迹、键盘输入模式、触摸事件(如果是在移动设备上)、环境和设备信息、IP 地址和地理位置、浏览器信息和指纹、HTTP 请求头信息等等。

如何让你的网站有这个功能呢?你只要用了Cloudflare 的 CDN (Content Delivery Network) 服务时,通常也会启用 Cloudflare 提供的安全功能,其中就包括自动的“Are you a human?”(你是否是人类?)验证。



网站使用 CAPTCHA 的主要目的一是为了防止各种机器人的恶意行为(像恶意注册、刷票、刷单等等),二是为了提高网站整体的安全性。

原文链接:,转发请注明来源!