RSAアルゴリズムのアイデアラッパーJNI

JNI(Javaネイティブ・インターフェース)は、Javaや他の言語(主にC / C ++)の通信を達成することである、APIおよび標準のセットです。速度を計算するの考慮のために、計算アルゴリズムのより高い性能要件のいくつかは、多くの場合、C / C ++言語(ハードウェアとより関連性の高い)の実装に基づいています。あなたのアプリケーションは、いくつかの矛盾になりますJAVAベースのプログラミングを、必要がある場合。この場合には、便利なJNI技術、アルゴリズムの内容を知らなくてもJava開発者は、動的ライブラリのC / C ++暗号化アルゴリズム、クロスランゲージの呼び出しを使用します。たとえば、次のシナリオ:完全なRSA非対称アルゴリズムと認証サーバ間の同一性に基づいて、埋め込まれた端子に接続されています。ターミナル暗号化チップを追加することにより、高速で達成することができ、安全な署名検証チェックRSAアルゴリズムの仕事に基づいていますが、サーバー側の暗号化モジュールは、多くの場合、効率的な運用の目的を実現するように、多くの場合、OpenSSLのとRSAアルゴリズムを移行するために、他のオープンソースライブラリに基づいて、適用されません。これらのライブラリは主にC言語のソースコードに基づいており、この時間は、Java開発者は、JNI技術によってカプセル化機能に署名を実装することができます。
パッケージは、次の手順:
1は、Javaコンパイラを使用すると、コールRSAの暗号化と復号化、APIヘッダファイルの署名検証チェックを生成します。
生成されたヘッダファイルとRSA Cソースライブラリオープンソースライブラリに基づいて、2、、のためのスタティックライブラリJNIインターフェースコール生成
Javaソース・コード内のネイティブメソッドを使用して3導入API DLLを、Javaプログラムのコンパイル
の下に示され、最終的に生成されるファイル構造を:
RSAアルゴリズムのアイデアラッパーJNI
注:
1、Javaデータ型およびローカルデータ型は適切な変換、次の表の対応関係を実行する必要があります。
RSAアルゴリズムのアイデアラッパーJNI
直接の窓の下で、コマンドラインの形で使用する場合はJDKのバージョンに、2を有料の注意を、新しいバージョンがサポートされていませんjavahはコマンドが、代わりにJavaの-hを使用します。

おすすめ

転載: blog.51cto.com/13520299/2480294