我和这个安全人员一直在讨论.他可能是我为新项目付出的最多钱.无论如何,它是一种保存用户可以通过电话请求的敏感数据(密码,PIN)的服务.用户有一个密码(4位数),用于访问敏感数据.安全人员告诉我他将使用MD5来散列用于访问敏感数据的密码.在这里,讨论开始,正如我所想,并且非常肯定,MD5太脆弱了,因为它已经被破解/碰撞.
应该使用什么散列方法来散列保护敏感信息的密码?我觉得这项服务可能成为黑客的高价值目标,所以我真的很担心.我开始担心安全人员要提供的整体质量,特别是服务的安全性,但不知道在哪里可以找到其他人.
我在这看到一些问题.
首先,如果一个四位数的密码阻止访问您的超级敏感数据,那么您就遇到了麻烦.我希望有其他安全措施,因为用手蛮强迫10,000组合是微不足道的,更不用说某种脚本了.
其次,我不确定你是否理解哈希密码的重点.我怀疑你只会从10,000种可能性中得到一个哈希冲突,但是当密码被暴力破解时,这基本上是无关紧要的.您正在完成的只是对具有数据库读取权限的人进行了一些混淆.
第三,密码哈希算法的需求不同于其他哈希算法的需要.您需要算法缓慢,这通常意味着必须重复运行它,并且您需要有盐,以便无法从查找表派生密码.据说,Blowfish并不坏.我发现PostgreSQL 的pgcrypto文档有一个很好的解释.
| 归档时间: |
|
| 查看次数: |
400 次 |
| 最近记录: |