美团|为什么“找回密码”总也找不回密码


美团|为什么“找回密码”总也找不回密码
“找回密码”可以说是每一个网站(包括APP哦)的基本配置 , 这个功能可以让用户在忘记密码的时候“找回”他的密码 , 但事实上在大多数情况下你都无法用这个功能找回你的密码 。
找回密码
这是因为绝大部分的密码都是经过加密的 , 例如常见的MD5 , 这是一种不可逆的加密方式 , 也就是说加密后的密码是不会被逆向破解的 。 比如一个用户注册网站的时候 , 将登录密码设置为“123456” , 网站的服务器会将这一密码经过MD5加密 , 生成一个新的字符串“e10adc3949ba59abbe56e057f20f883e” , 这个加密后的字符串便会保存在网站的数据库里 , 当用户登录网站的时候 , 服务器会先将用户输入的密码进行MD5加密 , 然后再和此前用户注册时保存在数据库里的加密后的字符串进行比对 , 如果一致则允许登录 , 否则拒绝 。
这样一来便大大提高了用户信息的安全性 , 采用MD5加密后的密码 , 即使网站的数据被泄露 , 他人也无法通过被加密后的密码登录用户的账户 。 即使是网站服务的提供方 , 他们也无法知晓用户真正的密码 , 所以当你想找回你忘记了的密码的时候 , 任何人都无能为力 。
唯一的方法是——重新设置一个密码 。
你可能会有点疑问——要真这么牛 , 为什么老子的账户还是被人登录了?当然 , 这种情况是存在的 , 而且是普遍的 , 因为你设置的密码有可能太过于简单常见 。 比如上述的“123456” , 这种常见的密码和它经过MD5加密后的字符串“e10adc3949ba59abbe56e057f20f883e”会被保存到“字典”里 , 何为“字典”?你可以将其理解为一个数据集合 , 或者就当是一本新华字典得了 , 经加密后生成的字符串“e10adc3949ba59abbe56e057f20f883e”相当于字 , 而“123456”便是这个字的释义 , 它们是一一对应的 。 当某个别有用心的人获得“e10adc3949ba59abbe56e057f20f883e”这个字后 , 他可以通过查字典找到这个字的解释 , 也就是你真正的密码“123456” 。
还有一种情况就是密码不经过加密 , 直接使用明文的方式保存 , 比如前几年国内一个知名的码农交友网站CSDN就是采用了这一愚蠢的方式 , 其所泄露的数百万账户密码连字典都不用查 , 直接就可以登录了 。
既然密码无法找回 , 那为什么还有这么多的网站在他们的页面上提供“找回密码”的功能?我分析了一下 , 大致有三个可能性:
其一 , 早年间的网站登录密码是明文保存的 , 就像上述所提到的CSDN , 这种明文保存(或者采用可逆算法加密)的密码确实可以被找回;
其二 , 前端码农(或是美工技师)的“想当然”:密码忘记了怎么办——“找回来”;
其三 , 随大流——百度阿里都这样 , 我也要这样 。
【美团|为什么“找回密码”总也找不回密码】当然 , 现在已经有越来越多的网站将“找回密码”修改为“忘记密码”了 , 这是一个好现象 , 否则当你怀着愉悦的心情笑眯眯地想找回你那可爱的密码的时候 , 却突然被告知要重新设置一个密码 , 是不是有一种被玩弄的感觉?


    推荐阅读