ホームページ > Java > &#&チュートリアル > JCE Unlimited Strength ポリシー ファイルを使用せずに、256 ビット AES 暗号化を使用して Java アプリケーションをデプロイするにはどうすればよいですか?

JCE Unlimited Strength ポリシー ファイルを使用せずに、256 ビット AES 暗号化を使用して Java アプリケーションをデプロイするにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-27 03:38:09
オリジナル
370 人が閲覧しました

How Can I Deploy Java Applications Using 256-bit AES Encryption Without JCE Unlimited Strength Policy Files?

JCE Unlimited Strength ポリシー ファイルを使用して導入の課題に対処する

指定されたシナリオで特定されているように、256 ビット AES 暗号化を利用するアプリケーションを導入すると、 Unlimited Strength ポリシー ファイルがエンド ユーザーのマシンにインストールされていない場合、問題が発生します。これらのファイルを開発者のワークステーションにインストールするのは簡単ですが、技術者以外のユーザーに配布すると問題が発生する可能性があります。

従来のソリューションとその制限

一般的に提案されている 2 つのソリューションこの問題は次のとおりです:

  • 無制限の強度ポリシーのインストールファイル: これらのファイルをインストールすると、アプリケーションがエンドユーザーのマシンで正しく機能できるようになります。ただし、このアプローチは、インストール プロセスを理解していない、または権限によって妨げられる可能性がある非技術ユーザーにとっては扱いにくい場合があります。
  • サードパーティ ライブラリの使用: Bouncy Castle などの代替ライブラリ、ポリシー ファイルの必要性を排除する回避策を提供します。ただし、このソリューションはアプリケーションに約 1MB の追加の依存関係を追加し、256 ビット TLS 暗号スイートをサポートしません。

3 番目のオプションのリフレクションの利用

より型破りなアプローチには、Java リフレクションを利用して JceSecurity クラスを変更し、アクセス チェックをバイパスすることが含まれます。これは、次のコードを使用して実現できます。

private static void removeCryptographyRestrictions() {
    // ... implementation as provided in the question answer ...
}

private static boolean isRestrictedCryptography() {
    // ... implementation as provided in the question answer ...
}
ログイン後にコピー

暗号化操作を実行する前に、removeCryptographyRestrictions() を呼び出すことにより、アプリケーションは暗号化制限を効果的に削除し、256 ビット暗号を直接利用できるようになります。このソリューションは Oracle Java 7 および 8 で動作しますが、Java 9 および OpenJDK では不要になったプロセスをスキップします。

以上がJCE Unlimited Strength ポリシー ファイルを使用せずに、256 ビット AES 暗号化を使用して Java アプリケーションをデプロイするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート