Hash
我應該使用 SHA-256 雜湊的第一位還是最後一位?
我需要一個小於SHA-256雜湊的十六進製表示的正常長度的十六進制令牌。
我應該取第一位還是最後一位?其中哪個包含最多的熵?
如果獲取 SHA-256 輸出的第一位或最後一位有任何不同,這將被視為對 SHA-256 安全性的嚴重打擊。目前,在 SHA-256 中還沒有這樣的弱點。因此,據我們所知,您可以使用任何您想要的位。
如果您需要更“管理性”的答案,請查看 SHA-224(也在FIPS 180-3中指定)。這是一個具有 224 位輸出的散列函式,NIST 定義該函式是為了“匹配”(從管理上講)宣稱的 3DES 的 112 位安全性。他們通過採用 SHA-256、更改傳統 IV 並截斷輸出來定義 SHA-224。對於截斷,他們採用了前224 位。如果它對 NIST 有好處,那麼它對你也有好處:取第一部分。