我目前正在使用內置的 .NET 5 Identity CreateAsync() 創建新的用戶帳戶。這意味著獲取他們的密碼,對它們進行哈希處理,然后對其進行加鹽。.NET 5 CreateAsync() 方法是否使用 SHA1、SHA256 或 SHA512 并對其加鹽?
uj5u.com熱心網友回復:
根據.NET 5.0.17 的 PasswordHasher 源代碼:
/* =======================
* HASHED PASSWORD FORMATS
* =======================
*
* Version 2:
* PBKDF2 with HMAC-SHA1, 128-bit salt, 256-bit subkey, 1000 iterations.
* (See also: SDL crypto guidelines v5.1, Part III)
* Format: { 0x00, salt, subkey }
*
* Version 3:
* PBKDF2 with HMAC-SHA256, 128-bit salt, 256-bit subkey, 10000 iterations.
* Format: { 0x01, prf (UInt32), iter count (UInt32), salt length (UInt32), salt, subkey }
* (All UInt32s are stored big-endian.)
*/
注意:自 2022 年 5 月 10 日起, .NET 5 不再受支持,因此不會有安全補丁。您應該盡快升級到 .NET 6 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/480462.html
上一篇:混合2個長度不同的字串?[復制]
