十八章 反守为攻(3 / 3)

码。

关键就在密码上。

我们举一个简单的例子,银行卡的6位数字密码,银行卡的用户创建的时候存储了密码。这个密码是以加密的形式存储在银行的服务器上。比如你的银行卡密码是123456,在银行那边这个密码会加密成一个字符串。比方用常见的d5加密方式,123456就变成了“e10ad3949ba59abbe56e057f20f883e”银行的服务器只存储这个字符串。

银行卡用户使用银行卡的时候输入123456,这组数字就会被加密变成一个字母串,上传到服务器进行对比,一模一样就认为密码是正确的。

或者说,银行并不知道用户的密码究竟是什么。

当银行卡用户丢失密码后,他需要到机器或柜台上尝试输入密码,只有输入正确的6位数,才能生成正确的字符串。

如果实在不记得密码,就拿出身份证证明“这张卡是我的”,那么银行获得授权后就把密码重置为字符串“e10ad3949ba59abbe56e057f20f883e”,现在用户的密码就恢复成为123456。

这里说明一下,银行系统和很多重要系统采用的加密方法是没有可逆的,中国著名数学家王小云院士提出过一种d5破解方法,也仅在某些简易密码的加密中有效。

对于简易密码,暴力穷举,字典攻击,彩虹表之类的基本也能够破解(此处不详述说)

总之,不要使用过分简单的密码,正常的密码是安全的。网络最常见的泄密是你的密码在没有加密的网站使用,或者使用过挂了盗窃密码的软件。然后黑客会拿这个账号和密码到各处去试验……

请大家务必在重要网站和a与一般地方使用不同的密码!!!