4

Isopoh.Cryptography.Argon2 NuGet パッケージ (ここからの最新バージョン 1.1.2: https://github.com/mheyman/Isopoh.Cryptography.Argon2 ) を通じて提供される C# Argon2 実装を使用しています。Argon2 ハッシュの生成と検証は、以下の構成が低コストであると理解していますが、高速な場合もあれば非常に遅い場合もあります (数秒)。

私の Argon2 構成は次のとおりです。

Type = Argon2Type.HybridAddressing,
Version = Argon2Version.Nineteen,
MemoryCost = 16, //I had this at 2048 and lowered to 16 for testing, still slow
TimeCost = 2,
Lanes = 2,
Threads = 1,
HashLength = 32, 
ClearPassword = true,
ClearSecret = true

これにより、次の構成ヘッダーを示す Argon2 ハッシュが生成されます。

$argon2id$v=19$m=16,t=2,p=2$<<hash>>

パフォーマンス プロファイラーを作成したところ、繰り返しテストを行っても、約 10 回から 12 回の反復の後、各反復で実装が (ほとんど) 遅くなることがわかりました。遅さは 2 桁以上 (10 ミリ秒から数秒) で、ガベージ コレクションやメモリ リークの問題があると思われます。

ここに画像の説明を入力

4

1 に答える 1