这是一个关于需要散列的盐渍短语的问题。
我想知道将盐前缀到短语或后缀是否更安全?盐 + 词组或词组 + 盐
盐是加在前面还是后面没有区别。
尽管以下因素会影响安全性
什么时候消化盐并不重要:前缀、后缀、中缀都会产生不同的散列,但达到击败彩虹表或其他预散列字典攻击的相同目的。
我认为该评论与 MD5 中的漏洞有关,而不是一般的散列。我不明白细节,但它与找到两个产生相同哈希的前缀有关。
当有人对盐的使用有疑问时,我担心这是因为他们正忙于(重新)发明他们一开始就不应该做的事情。基于这个问题,我的建议是使用 HMAC。
不像其他人说的,这很重要!和@einstein,如果你关心使用HMAC
.
为什么前缀不好,因为可以计算校验和的中间状态,直到给定的固定盐前缀。然后开始并行计算其余部分。总之phrase+salt
比 更安全salt+phrase
,但HMAC(salt, phrase)
甚至更好。
从技术上讲,这并不重要,只要盐是独特的并且不容易猜到。只是不要像我一样犯下储存盐的错误。
对字符串“加盐”的目的是以一种比 MD5 散列更加个性化和独特的方式对其进行加扰。没有正确或错误的方法,只要你是唯一知道它是如何工作的人。无论哪种方式都会达到结果,即使生成的MD5哈希与彩虹表不对应,以便于破解密码。