此擴充功能提供了一些函式,可用於使用各種雜湊演算法直接或增量處理任意長度的訊息,包括產生 HMAC 值和金鑰衍生,包括 HKDF 和 PBKDF2。
雜湊演算法大致分為三類,完整的演算法列表可以在 hash_algos() 的文件中找到。
"crc32b"
或 "adler32"
):這些用於計算校驗和,適用於需要偵測傳輸錯誤的情況。它們通常速度非常快。這些演算法通常產生的值很容易「猜到」或可以被操縱以產生碰撞,因此它們完全不適合用於加密。
一些早期的加密演算法,例如 "md4"
、"md5"
和 "sha1"
,已被證明容易受到碰撞攻擊,通常建議不再將它們用於加密應用程式。
另請參閱安全密碼雜湊的常見問題,以了解在處理密碼時使用雜湊函數的最佳實務。