LoginSignup
85
84

More than 5 years have passed since last update.

JavaでAES256を使用できるようにする

Posted at

概要

Javaには、Cipherという暗号化/復号化を行うクラスが用意されている。
デフォルトのままだとAESの鍵の長さは128bitしか使えない。
これは、(AESの規格を定めた)アメリカの輸出規制か何かの制限によるものらしいが、
ここによると日本ではこの制限を受けないので、
Javaのポリシーファイルを書き換えれば256bitも使える。

JCE(Java Cryptography Extension)の無制限強度の管轄ポリシーファイルをダウンロード

バージョンによってファイルも変わるので注意。

バージョン ダウンロード元 ファイル名
JDK1.6 JCE Unlimited Strength Jurisdiction Policy Files 6 jce_policy-6.zip
JDK1.7 JCE Unlimited Strength Jurisdiction Policy Files 7 UnlimitedJCEPolicyJDK7.zip
JDK1.8 JCE Unlimited Strength Jurisdiction Policy Files 8 jce_policy-8.zip

ダウンロードしたJCE(Java Cryptography Extension)の無制限強度の管轄ポリシーファイルを差し替え

  1. zipファイルの解凍
  2. ファイル内に入っている「US_export_policy.jar」と「local_policy.jar」を以下の場所にコピー(既に同名ファイルが存在しているので、上書きする)
  • Windows

    
    %JAVA_HOME%\jre\lib\security
    
  • Linux

    
    $JAVA_HOME/jre/lib/security
    

あとはここを参考にコーディングすればよろしいかと。

以上!

85
84
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
85
84