验证码是否真的能保证用户帐号安全?

  • 回答 (7)
  • 关注 (0)
  • 查看 (285)

今天我登录时不小心输错了两次密码,现在他要我输入验证码,然后给了我这个图:

我:????????

所以我想问,验证码真的能保证帐号安全吗?我要是盗了你的密码也可以顺手输入验证码啊,而且验证码为什么要设置得这么复杂啊?

超级大菜鸟超级大菜鸟提问于
独钓寒江雪_Ly站在巨人肩膀上的矮子回答于

我们一般使用的验证码有两类,一类是区分人和机器的验证码,像你在问题发的那种,一类是验证个人身份的验证码,像手机短信验证码、语音验证码等等。

我们先来说区分人和机器的验证码。就像前面那个兄弟说的,主要是为了防止暴力破解。

可能对于人来说,知道你的一个帐号,一个一个去试你的密码是件很傻的事情。但是对于计算机来说,写一个程序去做这件事情简直太轻松了。计算机最擅长去做重复的事情。但计算机又是这个世界上最严重的脸盲症患者。那么,验证码的诞生就是为了对抗程序而诞生了。这也能解释为什么验证码一个个都扭曲的不行,人有时看起来都会很难识别。这都是为了恶心计算机程序呀。

可能你已经发现现在的验证码越来越难类,连正常人都会输错好几遍。

以前的验证码是这样的:

现在的是这样的:

甚至还有这样的(汗):

其实这主要是验证码破解技术也上来了,现在甚至用图像识别,机器学习等技术来识别破解验证码,所谓魔高一尺道高一丈,然后苦的是我们用户啊....

再来说另一类验证码,个人身份验证码。像手机短信验证码,手机语音验证码就是此类。

这类没什么好说的,只要你用的平台是安全稳定并且快捷的,就不会出现大问题。

但这类验证码的出现,还是带来了验证码短信轰炸这种问题。

那最后还是来说一下验证码的作用,虽然有时它很烦人,但作用还是挺大的:

1.为了防止机器冒充人类做暴力破解

2.防止大规模在线注册滥用服务

3.防止滥用在线批量操

4.防止自动发布

5.防止信息被大量采集聚合

刺猬Christian.CS.真理使人得自由.回答于

如果你的密码被盗号者知道了,确实什么验证码都没用,盗号者顺手输入就行了。

但现在很多盗号是用暴力计算出你的密码的。

比如,假设密码长度是8位,只允许数字和字母,那么盗号者只要写一个脚本,从输入00000000到zzzzzzzz,全部输入一次,那你的密码就出来了,而且花不了多久,大概1天就能完成了。

加入验证码就不一样了,因为脚本识别不了验证码,所以盗号者就不能这样为所欲为啦。

乌鸦病人出院后,症状未消除。回答于
不会飞的蝴蝶回答于
今朝回答于

每个论坛,包括贴吧啊天涯啊豆瓣啊这些,管理员每天都会处理很多垃圾广告,而这些垃圾广告有很多其实都是由机器自动发出的。后来为了防止恶意注册,大多数论坛都引入了验证码功能。

验证码简单来说就是用来区分你是人类还是机器,虽然增加验证码功能会在一定程度上提高用户的注册成本以及影响用户体验,但是比起用户的密码被暴力破解,你的产品被大规模注册滥用服务,你的信息被大量采集聚合,我们肯定更愿意选择验证码,哪怕被吐槽吐成狗。

只是从以前的数字验证码,字母验证码到现在的图形验证码甚至是上边回单里的那些丧心病狂的验证码,依旧没能挡住机器识别出验证码的脚步。

比如我们要从一副图片中,识别出验证码, 大概有哪些步骤呢?

1.图像采集:直接通过HTTP抓HTML,然后分析出图片的url,然后下载保存就可以了。

2.预处理:检测是正确的图像格式,转换到合适的格式,压缩,剪切出ROI,去除噪音,灰度化,转换色彩空间这些。

3.检测:验证码识别,主要是找出文字所在的主要区域。

4.前处理:验证码识别,“一般”要做的是文字的切割

5.训练:通过各种模式识别,机器学习算法,来挑选和训练合适数量的训练集。不是训练的样本越多越好。过学习,泛化能力差的问题可能在这里出现。这一步不是必须的,有些识别算法是不需要训练的。

6.识别:输入待识别的处理后的图片,转换成分类器需要的输入格式,然后通过输出的类和置信度,来判断大概可能是哪个字母。识别本质上就是分类。

你看,为了防止被机器识别出来,开发人员只能越做越难啦。

用户2941100回答于

安全都是相对的,有验证码功能只是相对安全,但是随着机器学习识别能力越来越强,验证码也要相应的升级更新才能更安全。

名字真难选a梦想成为一个有趣的人回答于

其实验证码的主要作用是区分人和机器,但是由于当前机器的学习能力越来越强,所以当前需要输入的验证码也是越来越难的。

验证码主要是采取一种只有人能识别而机器无法识别的方案。

扫码关注云+社区