パスワード エンコーディング スキームを使用HMACSHA256.ComputeHash
して 1 つのサーバーでパスワード ハッシュを生成し、後で別のサーバーに移行する必要がある場合、ハッシュは同じものをエンコードしますか? 設定が暗号化操作に関係しているのを見た記憶がありmachineKey
ますが、完全にはわかりません。
2 に答える
3
同じものをエンコードするかどうかは、HMACSHA256 オブジェクトの作成方法によって異なります。インスタンス化したキーを使用してハッシュを実行するか、キーを指定しない場合はランダムなキーを生成します。同じキーを渡す限り、同じハッシュが生成されます。
于 2011-08-20T01:55:16.597 に答える
0
HMACは、シークレットと認証するデータからハッシュを計算します。2台のサーバーが同じHMACを計算するには、シークレットを共有する必要があります。これにより、サーバーはそのシークレットではなくなる可能性があります。古いパスワードを確認できるようにするには、シークレットを修正するか、変更できる場合は保存されているパスワードに沿って何らかの方法で参照する必要があり、事実上ソルトになります。
パスワードストレージ設定でHMACを使用するのはかなり奇妙で、適切なパスワード導出関数ではなく(速度が速すぎ、メモリを十分に消費しません)、シークレットは修正する必要があるため、あまり価値がありません(適切なHMACの使用法とは異なります)。秘密は、セッションのために通信する当事者によって合意され、その後忘れられます)。
于 2011-08-23T09:33:00.930 に答える