有的对位数有要求、
有的要包含大小写、
有的必须有特殊符号
终于设置好了一个
符合所有要求的新密码
点击确认后又收到提示
“新密码不能和旧密码一致”
那么问题来了
为啥忘记密码必须重置
不能直接告诉我旧密码呢?
我研究之后发现
这事儿还真不能怪APP们
因为的旧密码
APP们也不知道啊~
要解释清楚这个问题
首先我们得了解一下
密码学里的“哈希算法”
举个例子——
你输入了密码“123456”
哈希算法会把这串密码“切碎”
转换成一长串乱七八糟的乱码
“yhmjtp*awr188reyb21h”
(这一串是我随便打的
大概就是这么个意思)
每个密码
转换出的乱码都是唯一的
所以下次你再输入这个密码
就能转换同一个乱码
然后就完成了密码验证
接下来关键的来了
这个哈希算法
只能从密码推出乱码
不能从乱码反推出密码
这也就从根本上保护了密码安全
现在老爷们应该懂了
APP们保存的是乱码的信息
所以也并不知道你的密码
到底是啥
看到这儿
可能有老爷会说
“不对啊!
在大家都还玩QQ的年代
我的QQ密码可是被盗了好几次啊!”
这是因为
当年的哈希算法
还是比较早期厄版本
如果盗号者手里
有一个样本足够多的密码库
就能解出加密后的密码
不只是QQ
那时候很多的数据泄露事件
都是类似的情况
这也是为啥
必须重置密码的原因
一个账号反复被输入错误密码
说明存在一定的被盗风险
(虽然真实原因是你自己忘了)
这时候
验证用户的身份
然后再重置一个新密码
才是最保险的方式
当然
手动输入密码这种方式
还是存在局限性的
随着技术的进步
现在也有了越来越多的
其它验证身份的方式
比如“扫码登录”
免除了输入密码的过程
就在一定程度上
避免了钓鱼网站的风险
再比如“短信验证码”
只要你手机不丢、
验证码不随便告知他人
就能很好的保证账户安全
然后还有
“指纹”“人脸”“虹膜”等等
这些的安全系数就更高了
内容最后
再给大家分享一个
和密码有关的问题
“为什么银行卡密码都是六位数?”
其实老早以前
出于方便用户记忆的原因
是用过四位数密码的
后面发现
这安全性实在是有点低了
很容易就会被破译
然后又有研究发现
大部分年轻人的记忆广度
在7个单位
不管是数字还是字母
如果达到7个及以上
很多人就无法短时记忆了
然后密码位数就改成了六位
这样就有了
超过10万种组合方式
安全性大幅提高
好了
今天就先聊到这儿
咱们下期再见!
博士一分钟,知识涨不停
我是好奇博士
很高兴认识你们返回搜狐,查看更多