保存登录信息的Cookie加密技能
一切需求账户登录的website 根本都会想到这样一个问题, 怎么坚持用户在必定时间内登录有用。
最近自己就在项目中遇到这样的需求,某些页面只能Admin账户登录后拜访, 当登录Admin账户后怎么才干坚持登录信息呢?
用Cookie或许Session来保存登录信息已经是一种比较老练的技能。可是关于账户信息假如把明文放在Cookie里边明显是十分风险的。
今日给我们共享一下自己在项目中用到的一些加密解密技能。
Cookie 是以key-value的方式存数据。关于账户信息而言最简略的是 UserName 和 Password
假如以明文的方式放到Cookie 比方
UserName=fakeUser
Password=fakePsd
考虑到安全性的问题,明显没有任何website会这样做。
那么是否能够把这几个字段都加密呢?
对 Key 的加密
对key字段像UserName, Password只需求在Server端加密并保存即可,甚至都无需还原成明文。
public static string MD5Hash(string input) { byte[] data = Encoding.UTF8.GetBytes(input.Trim().ToLowerInvariant()); using (var md5 = new MD5CryptoServiceProvider()) { data = md5.ComputeHash(data); } var ret = new StringBuilder(); foreach (byte b in data) { ret.Append(b.ToString("x2").ToLowerInvariant()); } return ret.ToString(); }[1] [2] [3] [4] [5] 黑客接单网