揭秘验证码,你可能不知道的那些事儿

news2024/11/15 13:59:57

在现代网络世界中,我们经常遇到验证码这个概念。它是一种用于验证使用者身份或防止恶意行为的安全机制。然而,除了表面上的使用和功能,验证码还有许多有趣而不为人所知的方面。本文将带你揭秘验证码背后的秘密,探索你可能不知道的那些事儿。

ec20bb332adc2142bdd6377aad6892d5.jpeg

1、机器流量泛滥,图形验证码诞生

验证码的最终目的是为了区分正常人和机器的操作,保证企业和使用者的网络安全。20世纪初,黑客通过Python、Node.js等基本工具编写自动化攻击脚本。发送网络钓鱼木马、虚假礼券等低级诈骗至少有数百万受害者。

第一个解决这个问题的是雅虎。作为互联网时代早期最重要的免费电子邮件提供商,他们必须解决使用者每天遇到的数百封垃圾邮件轰炸。另一方面,雅虎提供的免费邮箱,也是垃圾邮件的最爱,而消耗无数资源阻止的垃圾邮件都来自于自己的服务器。这让雅虎认真思考如何解决恶意机器流量问题。他们找到了一位当时年仅21岁的天才——路易斯·冯·安。LuisVonAhn给出的解决方案是图形验证码。当时计算机图像识别技术还不成熟,无法识别扭曲、粘连的文字。另一方面,人类可以轻松识别这些单词。

d70114797c5cc7a31ab9e1577e73487c.jpeg

图形验证码被验证有效后,迅速推广,各大平台纷纷推出图形验证码。在使用者注册、登录、发帖、领取优惠券、投票等应用场景中,企业利用图形验证码,有效防止内容泛滥、垃圾注册、恶意登录、刷票、凭证、活动作弊、垃圾广告、爬虫、羊毛党等一系列不良行为,维护自身的产品和服务,保证使用者的安全体验。

2.黑产攻击,图形验证码难以抵御

但很快,随着光学字符识别技术(OCR)的不断进步以及模仿人类神经网络的深度学习技术的出现,图形验证码很容易被破解,安全性不断下降。同时,主流浏览器的开放性使得黑客可以通过脚本驱动的工具进行自动化攻击。例如素材商、取码平台、打码平台、设备资源提供商及管理平台(群控、云控、盒控等)、妙拨IP等专门提供手机号码的资源。

提供手机号码的供应商通过不同渠道领取手机卡并完成实名制,通过“猫吃”设备批量使用手机卡。该设备的手机卡可以连接到通信网络,发送和接收短信,整个过程是自动化的。在秒杀活动中,速度比普通使用者要快很多。

提供非法制作工具的技术组可以针对不同行业、平台定制各种改装工具、注册机、一键闪杀、多开、位置诈骗等各种非法制作工具。

提供云控制系统等设备和管理平台服务商,用一台电脑控制N台云手机,提供上千部手机的一键控制、同步操作、批量管理,节省成本,提高攻击效率。

提供IP资源。一方面,秒级拨IP的成本更低。另一方面,IP池极其丰富且易于使用。它可以按照该过程自动切换IP。

一系列黑产技术的攻击给企业造成了极大的危害,图形验证码不得不进行更改,以抵御新的技术攻击。从而导致各种扭曲、变形、旋转、粘连等难以识别,甚至出现更加怪异的验证码验证形式。

e21606b76cf538bee81cbf919618b163.jpeg

这些做法虽然在一定程度上抵御了非法产品的攻击,但严重损害了使用者体验。不仅使用者通过率不高,而且注册网站/APP使用者也流失。据相关统计,由于各种奇怪的图形验证码,企业使用者流失率高达21.8%。这与设计验证码的初衷相去甚远。以往,在打击黑产技术的过程中,图形验证码的便捷性和安全性似乎成了鱼与熊掌的关系。

3、验证码升级,上线行为验证码

在此基础上,行为验证码应运而生。它的诞生推动了验证码的变革,其更好的使用者体验和安全性使其成为应用最广泛的验证方式之一。

行为验证码是通过使用者的操作行为来完成验证,而不需要看懂扭曲的图片文字。其核心思想是利用使用者的“行为特征”来进行验证安全判断。整个验证框架采用高效的“行为沙箱”主动框架。该框架将引导使用者在“行为沙箱”中生成特定的行为数据,并利用“多重复合行为判别”算法对特定指向、视觉、思维等多种行为进行分析。识别信息中生物个体的特征,从而准确、快速地提供验证结果。

17414cc93c656fe5a6e6b3ad48711c0e.jpeg

并且相对于以往的字符识别输入,行为验证码更加简单,并且具有小游戏的性质,增强了使用者体验。行为验证码因其安全性而成为一种趋势。验证码的背景图片添加了很多随机效果,可以有效防止OCR文字识别。

云芯片行为验证服务提供文字点击验证、图标点击验证、滑动拼图验证、无感验证4种验证方式;极大优化了传统验证码使用者体验差的问题,使用者无需手动键盘输入只需要生成指定的行为轨迹;增加了机器破解的难度,降低了人眼识别的难度。目前该业务已覆盖全国数万家企业,在电商、餐饮、教育、社交等行业拥有大量顶级客户。

验证码作为保护我们在线安全的重要工具,背后隐藏着许多有趣的事实。通过了解验证码的工作原理、不同类型的验证码以及其应用领域,我们可以更好地理解和使用它们。同时,我们也能够认识到验证码技术的挑战和发展趋势。无论你是普通使用者还是开发者,了解验证码的内幕将使你对网络安全有更深入的认识,为你的在线体验提供更高的保障。让我们一起揭开验证码的神秘面纱,探索其中的奥秘吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/728199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ctfshow web入门 nodejs篇 web334-web344

CTFshow NodeJs web334 前言:做原型链污染,入门的话个人建议先看看P神的文章,只看前四部分就行了。 深入理解 JavaScript Prototype 污染攻击 | 离别歌 (leavesongs.com) 然后也得有一点js基础,不用太多,要不然看起…

浅谈电力监控系统在地铁运维中的应用

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 摘要:随着我国工业化进程的不断推进,我国监控系统也实现了长足的发展。以往传统的地铁监控模式已经无法满足当前需求,将电力监控系统和地铁综合监控系统已经进行资源整合,有效…

产品需求还原度低应该怎么办?

在实际开发过程中,产品设计的完整性较难保障和实现,产品需求还原度较低,前后端对产品设计理解不深入,可能会随意修改产品需求。从而造成后期需求设计不完整,产品风险增大等问题。 为了解决这一问题,我们可以…

【Linux进阶之路】gcc/g++、Makefile、git

前言 在正式开始之前我们先补充一个知识点——普通用户提权的操作。 sudo 【指令】那如何将tmp1添加到信任白名单——sudoers文件 中呢? 肯定不能自己加,得超级管理员root加——第一步:切到超级用户。 找到sudoers文件——/etc/sudoers …

生物信息学_玉泉路_课堂笔记_01 第一章生物信息学简介

🍅 课程:生物信息学_玉泉路_课堂笔记 中科院_2022秋季课 第一学期 🍅 个人笔记使用 🍅 2023/7/3 🍅 教材使用: 生物信息学是应用计算机科学和数学方法研究生物学问题的交叉学科。它包括了多个领域&#xf…

显示Gif菜单

需要 最近研究在底部菜单中加入gif播放。这样显得高级一些。研究了一些技术方案,现在写篇博客,沉淀一下。 效果 实现 通过Glide实现。虽然android官方有AnimatedImageDrawable 但是只支持API28以上,也就是android9.0以上的手机。兼容性太差…

怎样做好客户自助服务?

在当前高速发展的信息化时代,人们已经习惯了即时满足的方式。对于品牌来说,当客户遇到问题时,他们希望能够获得即时细致的解答。如果客户需要等待很长时间才能获取答案,他们的满意度就会降低。因此,企业是否提供客户自…

flutter开发实战-自定义Switch开关控件Widget

flutter开发实战-自定义Switch开关控件 在flutter中实现自定义Switch,主要实现类似IOS的UISwitch样式的开关控件 一、效果图 二、实现Switch开关的Widget 实现自定义Switch的Widget,主要实现交织动画。 交织动画 有些时候我们可能会需要一些复杂的动画…

apache 安装配置 基础篇(二)

在使用Apache时,配置虚拟主机可以允许一个单一的Apache服务器提供不同的网站、域名或IP地址。 Apache虚拟主机的一个重要作用是更好的网站管理能力。当一个虚拟主机被创建时,您可以轻松地分配不同的域名和IP地址,设置不同的目录、文件和权限…

【电影推荐系统】基于 ALS 的协同过滤推荐算法

目录 目的 用户电影推荐矩阵主要思路如下 1 UserId 和 MovieID 做笛卡尔积,产生(uid,mid)的元组 2 通过模型预测(uid,mid)的元组。 3 将预测结果通过预测分值进行排序。 4 返回分值最大的 …

js debugger的两种方式

第一种:在js代码中加上debugger class ReactiveEffect {constructor(fn, scheduler) {this.fn fn;this.scheduler scheduler;this.active true;this.deps [];console.log("创建 ReactiveEffect 对象");}run() {debugger; console.log("run…

Spring高手之路8——Spring Bean模块装配的艺术:@Import详解

文章目录 1. Spring手动装配基础2. Spring框架中的模块装配2.1 Import注解简单使用 3. Import模块装配的四种方式3.1 Import注解的功能介绍3.2 导入普通类与自定义注解的使用3.3 导入配置类的策略3.4 使用ImportSelector进行选择性装配3.5 使用ImportBeanDefinitionRegistrar进…

指针进阶详解

目录 指针基本概念 1.字符指针 2.指针数组 3.数组指针 对数组名的理解 小结 指针基本概念 在初阶指针中我们了解到一些指针的基本概念: 1.指针就是个变量,用来存放地址,地址唯一标识一块内存 2.指针的大小是固定的4/8个字节(32位/64位平台&…

详解c++---哈希封装

目录标题 哈希桶的代码哈希桶的修改迭代器的实现const迭代器 哈希桶的代码 通过前面的学习大家应该能够很容易的写出下面的代码&#xff1a; #pragma once #include<iostream> #include<vector> using namespace std; template<class K,class V> struct Ha…

2023年互联网行业研究报告

第一章 行业概况 互联网行业是一个广泛的领域&#xff0c;包括所有利用互联网技术进行商业活动的企业和组织。这个行业的核心是互联网&#xff0c;一个全球性的网络&#xff0c;连接着数以亿计的计算设备和用户&#xff0c;使他们可以共享信息、资源和服务。 互联网行业包括网…

apache 安装配置 基础篇(-)

download 地址 apache下载 ApacheHaus是免安装的&#xff0c; 然后解压上面的文件&#xff0c;把里面 因apache 默认端口是80&#xff0c;如果这个端口被占用&#xff0c;apache服务是启动不起来的 netstat -ano|findstr 80 apache 修改端口号 创建apache服务 在apa…

ESP32-H2 固件烧录需满足的硬件环境整理

ESP32-H2 默认通过 UART0 &#xff08;即 TXD&#xff08;GPIO24&#xff09;和 RXD&#xff08;GPIO23&#xff09;&#xff09;下载固件。 Windows 下可使用 Flash download tool 工具来下载编译后的 bin 文件&#xff1b; 运行 flash_download_tool.exe 的文件 选择开发…

SkyEye处理器仿真系列:龙芯2K1000处理器

​SkyEye简介&#xff1a; 天目全数字实时仿真软件SkyEye作为基于可视化建模的硬件行为级仿真平台&#xff0c;能够为嵌入式软件提供虚拟化运行环境&#xff0c;开发、测试人员可在该虚拟运行环境上进行软件开发、软件测试和软件验证活动。小到芯片&#xff0c;大到系统&#…

win10 DBeaver (升级)下载、安装、彻底卸载

DBeaver &#xff08;升级&#xff09;下载及安装 一、DBeaver 下载二、安装三、DBeaver 的基本使用 - mysql连接四、DBeaver 彻底卸载 DBeaver是一种通用数据库管理工具&#xff0c;适用于需要以专业方式使用数据的每个人&#xff1b;适用于开发人员&#xff0c;数据库管理员&…

苹果笔买原装的还是随便买?便宜好用的手写笔推荐

自从ipad和其他的平板电脑都搭配上了电容笔以后&#xff0c;电容笔很好地取代了我们的手指&#xff0c;书写的效率就大大提升了&#xff0c;但由于苹果原装电容笔的价格不够人性化&#xff0c;一直高居不下给普通人带来了很大的负担&#xff0c;特别是对于学生们来说&#xff0…