7

現在、デフォルトはPasswordHasherCompatibilityMode.IdentityV2ASP.NET 5 の HMAC-SHA1 に設定されているようです。サービス (DI) に追加するインスタンスを作成しようとしましたPasswordHasherOptionsが、動作させることができませんでした。

V3 は、HMAC-SHA256、128 ビットのソルト、256 ビットのサブキー、10000 回の反復で PBKDF2 を使用します。

すべてのコードが既にそこにあるため、カスタム実装を実装する必要がなく、将来の構成設定と同じくらい簡単になることを願っています。

アップデート:

services.Configure<PasswordHasherOptions>(options => options.CompatibilityMode = PasswordHasherCompatibilityMode.IdentityV3);

4

1 に答える 1

6

https://github.com/aspnet/Identity/blob/dev/src/Microsoft.AspNetCore.Identity/PasswordHasherOptions.csでわかるように、デフォルトは V2 ではなく、デフォルトは新しい形式です。

    /// <remarks>
    /// The default compatibility mode is 'ASP.NET Identity version 3'.
    /// </remarks>
    public PasswordHasherCompatibilityMode CompatibilityMode { get; set; } = 
           PasswordHasherCompatibilityMode.IdentityV3;

ハッシュされたパスワードの最初のバイトが 0x01 の場合、それはバージョン 3 のハッシュです。

0x00 が表示されている場合は、コード内の別の場所で構成されているか、バグがあります。その場合は、GitHub に記録してください。

于 2016-04-04T12:49:02.890 に答える