Ism*_*ail 5 c# asp.net ssl sha1 hmac
我有以下代码从密码创建哈希,然后将其与数据库中存储的哈希密码进行比较.所有工作都优于http.这适用于在c#4.0下运行的asp.net webforms应用程序
HMACSHA1 hash = new HMACSHA1();
hash.Key = Encoding.Unicode.GetBytes(password);
encodedPassword = Convert.ToBase64String(hash.ComputeHash(Encoding.Unicode.GetBytes(password)));
Run Code Online (Sandbox Code Playgroud)
但是,当通过https/ssl运行时,编码的密码不同,因此用户无法登录.
在通过SSL时计算哈希时,.net框架是否会做一些不同的事情?
如果我单步执行代码并复制编码密码并更新我的数据库然后通过SSL我可以登录.
有任何想法吗?
非常感谢
请尝试按照 MSDN 文章中的定义设置全球化设置:http://msdn.microsoft.com/en-CA/library/39d1w2xf%28v=vs.100%29.aspx
这将确保 hash.key 在您的应用程序中是统一的,进而确保每次使用密钥计算时计算出的哈希值都是相同的。
| 归档时间: |
|
| 查看次数: |
208 次 |
| 最近记录: |