【问题标题】:Using another algorithm on top of an hashing one在散列算法之上使用另一种算法
【发布时间】:2016-03-15 06:12:51
【问题描述】:

对于我的网络课程项目,我被告知要制作一个具有登录/注销功能的网站,而我的教授要求的其中一件事是使用散列算法来加密用户密码。

在执行散列算法(例如:MD5、SHA-1 等)之前执行一种或多种不同的算法来转换我的数据(在本例中为字符串)是否明智?

【问题讨论】:

  • 我不确定这是不是您的想法,但首先对数据进行加盐当然是明智的,仅举一个明显的例子。

标签: algorithm security web hash password-encryption


【解决方案1】:

不,不是。

简短的回答,它不会增加安全性,并且可能只会增加碰撞的风险。


确保您使用的算法旨在对密码进行哈希处理,例如 PBKDF2BCrypt。像 MD5SHA-1 这样的哈希算法被创建为高效而不安全,因此永远不应该用于哈希密码。

另外,使用盐对密码进行哈希处理以防止preimage attacks

【讨论】:

  • 我说的是一般情况。如果我使用盐和为我的密码设计的算法,如果我在所有这些过程之前使用自制的加密算法会更安全吗?
  • 没有。现代密码散列函数已经很不错了。充其量,添加您的算法不会以任何方式增加安全性。但这样做很有可能会削弱它。
  • 阅读this answer了解更多详情
猜你喜欢
  • 1970-01-01
  • 2011-08-25
  • 2017-11-14
  • 2012-09-03
  • 1970-01-01
  • 1970-01-01
  • 2012-08-09
  • 1970-01-01
  • 2011-10-18
相关资源
最近更新 更多