Password Hasher是一种用于对用户密码进行安全处理的工具或算法。它会将用户输入的密码进行 哈希(Hashing) 处理,生成一串 不可逆 的加密字符串(哈希值)。在用户登录时,系统将输入的密码进行同样的哈希操作,再与数据库中的 已存储哈希值 进行对比验证。
抗暴力破解:采用迭代算法(如 PBKDF2、bcrypt)延长破解时间。
SHA-256 : 快速但需额外加盐,单独使用易受彩虹表攻击。
using Microsoft.AspNetCore.Identity; var app = WebApplication.Create(); app.Run(context => { var password = context.Request.Query["password"]; // 堆代码 duidaima.com if (string.IsNullOrWhiteSpace(password)) password = "123456"; var usr = new User(); var hasher = new PasswordHasher<User>(); var hashedPassword = hasher.HashPassword(usr, password); var isPasswordMatch = hasher.VerifyHashedPassword(usr, hashedPassword, password); return context.Response.WriteAsync($"Password : {password} => Hashed : {hashedPassword} \nPassword Matched : {isPasswordMatch}"); }); app.Run(); public record User();运行效果如下: