2011-10-29 26 views
2

Bouncy Castle RSAライブラリを使用して学校の割り当てに助けが必要ですが、それは非常に複雑に見え、私はいくつかの指導を学びたいと思います。Bouncy Castle RSA Javaを使用する

私の割り当てには、公開鍵と秘密鍵を生成する必要があります。その後、メッセージのブロックを暗号化し、タイミング測定を行います。それから、解読のために同じことをしてください。

誰かが正しい方向に向けるでしょうか? 暗号ライブラリは巨大で、これについてどうやって行くのか混乱しています。

ありがとうございました。

PS:基本的に鍵ペアを生成する必要があります。ランダムに生成された異なる鍵ペアを使用して暗号化と復号化を実行します。

私はどんな指導をappreaciateなり、Javaの持つ通常のおかげ

+1

Bouncy castleを絶対に使用する必要がありますか?私はGNU Cryptoをお勧めしたいので、学習して管理するのが簡単で、多くのチュートリアルがGoogleにあります –

+0

Bouncy Castleを使用する必要がありますか?あなたの要件を考えると、標準のJavaライブラリもうまくいくはずです。 「宿題」タグを追加してください。 – home

+0

バウンスの城は必須ではありません。 Java用のGNU Cryptoですか?私のチームメンバーはC/C++やPythonのようなスクリプト言語を知らないので、Javaが必要です。また、返信いただきありがとうございます。 また、宿題を追加しました。申し訳ありません。 – kal

答えて

2

あなたはjava.security.*javax.crypto.*パッケージで、Java暗号化APIのを使用します。

BouncyCastleにはこのAPIのプロバイダ(実装)が含まれていますが、RSAの場合、JREに付属のプロバイダも問題ありません。 (はBouncyCastleは、さらに、他の方法で物事を行う独自のAPIを持っています。)

あなたは、実際の暗号化と復号化操作のためのキー生成のためのKeyPairKeyPairGeneratorクラス、およびCipherクラスが必要になります。

タイミング測定には、信頼性の高いデータを得るために数千回の暗号化/復号化を繰り返します。

+0

ありがとう、これは私を大いに助けます。 また私は使用時に質問があります\t \t KeyPairGenerator kpg = KeyPairGenerator.getInstance( "RSA"); 未処理の例外タイプNoSuchAAlgorithmExceptionが発生しました。 – kal

+0

例外処理についての説明を読んでください。これは暗号特有のものではありません。 tryブロック内でこれらの例外をキャッチするか、メソッドのthrows節で宣言します(そして、それらを他の場所にキャッチする必要があります)。しかし、これについてのいくつかのJavaの本を読んで、このコメントは、例外処理の広範な治療のために短くすることです。 –

+0

ありがとう、:) – kal

関連する問題