2048ビットのDSAキーを使用したいのですが、.NETを使用していますDSACryptoServiceProvider
。キーパラメータを.NETDSAParameters
オブジェクトにロードするのに問題があったので、次のコードを記述して、DSACryptoServiceProvider
:の有効なキーサイズを出力しました。
DSACryptoServiceProvider sampleDSA = new DSACryptoServiceProvider();
Console.Write("----- DSA LEGAL KEY SIZES -----\n");
foreach (KeySizes ks in sampleDSA.LegalKeySizes)
{
Console.WriteLine("Min: " + ks.MinSize.ToString());
Console.WriteLine("Max: " + ks.MaxSize.ToString());
}
配列にはオブジェクトが1つだけありKeySizes
、出力は次のとおりです。
----- DSA LEGAL KEY SIZES -----
Min: 512
Max: 1024
を使用して2048ビットキーを取得する方法はありますDSACryptoServiceProvider
か?1024ビットキーを使用することはオプションではありません。
- - 編集 - - -
デジタル署名を処理するLegalKeySizes
すべての.NETクラスのを列挙しました。CryptoServiceProvider
結果は以下のとおりです。
System.Security.Cryptography.DSACryptoServiceProvider
Min: 512
Max: 1024
System.Security.Cryptography.RSACryptoServiceProvider
Min: 384
Max: 16384
System.Security.Cryptography.ECDsaCng
Min: 256
Max: 384
Min: 521
Max: 521
私が尋ねるつもりだったのは、これを微調整して2048ビットキーを使用する方法はありDSACryptoServiceProvider
ますか、それとも512〜1024ビットの範囲にロックされていますか?