パスワードからハッシュを作成し、それをデータベースに保存されているハッシュパスワードと比較する次のコードがあります。すべてhttp上で正常に動作します。これは、C#4.0で実行されているasp.netWebフォームアプリケーションの場合です。
HMACSHA1 hash = new HMACSHA1();
hash.Key = Encoding.Unicode.GetBytes(password);
encodedPassword = Convert.ToBase64String(hash.ComputeHash(Encoding.Unicode.GetBytes(password)));
ただし、https / sslで実行する場合、エンコードされたパスワードが異なるため、ユーザーはログインできません。
.netフレームワークは、SSLを介してハッシュを計算するときに何か違うことをしますか?
コードをステップ実行し、エンコードされたパスワードをコピーしてデータベースを更新すると、SSLを介してログインできます。
何か案は?
どうもありがとう