JCE Unlimited Strength ポリシー ファイルを使用して導入の課題に対処する
指定されたシナリオで特定されているように、256 ビット AES 暗号化を利用するアプリケーションを導入すると、 Unlimited Strength ポリシー ファイルがエンド ユーザーのマシンにインストールされていない場合、問題が発生します。これらのファイルを開発者のワークステーションにインストールするのは簡単ですが、技術者以外のユーザーに配布すると問題が発生する可能性があります。
従来のソリューションとその制限
一般的に提案されている 2 つのソリューションこの問題は次のとおりです:
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 サイトの他の関連記事を参照してください。