架构师训练营第 11 周课后练习
发布于: 2021 年 01 月 02 日
请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文),返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。
namespace Geektime.PasswordHash{ using System; using System.Security.Cryptography; using System.Text;
class Program { static void Main(string[] args) { var userId = "1234"; var passwordClearText = "P@ssw0rd"; var passowordHash = "zcTD9O+VRD5KgMK9xgY7jg==";
var isMatch = CheckPassword(userId, passwordClearText, passowordHash); Console.WriteLine(isMatch); }
static bool CheckPassword(string userId, string passwordClearText, string passwordHash) { var saltedPassword = $"{userId}:{passwordClearText}"; var hashAlgo = HashAlgorithm.Create("MD5"); var rawHash = hashAlgo.ComputeHash(Encoding.UTF8.GetBytes(saltedPassword)); var expectedHash = Convert.ToBase64String(rawHash); return passwordHash == expectedHash; } }}复制代码
划线
评论
复制
发布于: 2021 年 01 月 02 日阅读数: 21
菜青虫
关注
还未添加个人签名 2017.11.20 加入
还未添加个人简介











评论