破解方法rainbow table
1 .攻击者将所有的常见密码进行单向操作,得到最后的结果,然后和数据库的进行对比,就可以得到对应的密码。
2 .尤其是我们使用的哈希算法是开源的,那就更不安全了
密码存储进阶方案
1 .加盐
2 .利用已有的哈希算法进行多次哈希
3 .将第一次得到的值加上一个只有管理员知道的随机串,在进行一次哈希加密
4 .这样就保证了,只要加的盐不会被泄露,即使黑客拿到最后的加密串,也几乎无法推出原来的密码
5 .
专家方案
1 .意增加密码计算所需耗费的资源和时间,使得任何人都不可获得足够的资源建立所需的rainbow table。除非量子计算机出来
2 .算法中都有个因子,用于指明计算密码摘要所需要的资源和时间,也就是计算强度。计算强度越大,攻击者建立rainbow table越困难,以至于不可继续
3 .https://github.com/golang/crypto/tree/master/scrypt
数据加密和解密
1 .base64
2 .aes
3 .des
4 .关键是你使用这几个包加密,是可以用这几个包直接解密的啊
有疑问加站长微信联系(非本文作者)