2012-05-08 7 views
2

私が弾む城を使用して(C#/ vb.netバージョン)、このルーチンでの私の証明書に使用するために4096バイトのRSA鍵ペアを生成しています:BouncyCastle、RSA鍵ペアの生成にはどのくらいの時間が必要ですか?

Public Shared Function GenerateRSAKeypair(keylength As Integer) As AsymmetricCipherKeyPair 
    Dim r As New RsaKeyPairGenerator() 
    r.Init(New KeyGenerationParameters(New SecureRandom(), keylength)) 
    Dim keys As AsymmetricCipherKeyPair = r.GenerateKeyPair() 
    Return keys 
End Function 

手順は[OK]を動作しますが、しかし、それは非常に取り長い時間、最大1分(私は2.4GHzペンティアムDualCore上にいる)。

私はRSAやこれらすべてのことについて多くの経験がありません(ほとんどありません)ので、鍵を生成するのに時間がかかりすぎるのか、私が間違っているのか。

ありがとうございます!

+0

このコードは、http://stackoverflow.com/questions/844997/encrypting-a-bouncycastle-rsa-key-pair-and-storing-in-a-sql2008-databaseに見られるようなキー生成に似ています。私はそれがかかる限りそれが長いと思う。時間がどこに費やされているかを見るための手順をプロファイリングしましたか? –

+0

ええ、そこからコードを取得しました:D待っている以外の解決策はないと思います...おそらく私はメソッドを非同期で呼び出します。そうしないとUIが1分間フリーズします。ありがとう。 –

答えて

1

RSAに関するいくつかの理論を読んだ後、私はコードに何も問題がないことを確認できます。このような大きな鍵を生成するには時間がかかります。

関連する問題