0

バックグラウンド

メンバーのログイン情報を格納する ASPNET メンバーシップ プロバイダーと、二次的な情報セットを格納する MongoDB を使用しています。

MongoDB は組み込みの暗号化を提供しないため、ASPNET メンバーシップ プロバイダー テーブルにあるメンバーのソルトを使用して、データをデータベースに挿入する前に一部のデータを暗号化することにしました。

目的

コードでアクセスできるように、ソルトを公開するにはどうすればよいですか? デフォルトのプロバイダー クラスには、このためのメソッドが見つかりません。

それか、誰かがより良いアプローチを提案できますか? 塩を別の場所に保存する利点の 1 つは、「侵入者」から塩を保護することです。

ありがとう、マックス。

4

1 に答える 1

0

これが1つのアプローチです。ユーザー名、電子メールを使用してソルトすることができます。

public static string hashCalculator(string username, string password)//Use username as salt.
        {
            byte[] stringbytes = System.Text.Encoding.Unicode.GetBytes(username.ToLower() + password);
            return Convert.ToBase64String(new SHA384Managed().ComputeHash(stringbytes));
        }
于 2012-07-26T09:04:45.773 に答える