2

.net メンバーシップ プロバイダーのソース コードを見ています。sqlmembershipprovider.cs には EncryptPassword と DecryptPassword への呼び出しがありますが、ソースのどこにもメソッドが表示されません。

彼らはどのようなアルゴリズムを使用していますか? そのソースも公開されていませんか?

4

4 に答える 4

3

SqlMembershipProvider は、EncryptPassword() および DecryptPassword() を継承する MembershipProvider から派生します。

Reflector でコードを調べると、アルゴリズムは、キーの長さが 8 バイトの場合は DES、それ以外の場合は AES (Rijndael) のようです。

于 2008-11-11T14:56:27.057 に答える
0

SqlMembershipProvider は System.Web.Security.MembershipProvider を基本クラスとして使用します。EncryptPassword および DecryptPassword メソッドが基本クラスで呼び出されています。

.NET Reflector を起動し、System.Web.Security.MembershipProvider をポイントすると、その方法がわかります。

于 2008-11-11T14:56:41.800 に答える
0

暗号化コードは "パブリック" ですが、メンバーシップ プロバイダーの既定の暗号化は一意のマシン キーに基づいています。

于 2008-11-11T14:58:41.513 に答える
0

基本の Decrypt/EncryptPassword が AES の標準 .NET 実装を使用していることを確認してください。

AesManagedクラスを参照してください。

于 2008-11-11T15:04:26.323 に答える