javax.cryptoによる暗号化
仕事で簡単な暗号化をする必要があって、javax.cryptoを使ったのでメモ。
J2SE 1.4から標準で組み込まれた機能で、共有鍵や公開鍵方式が使えます。DES,3DES,Blowfish,AESなどが統一的なインターフェースで使えて便利。下はDESを使って暗号→復号化するサンプル。今回は速度優先ということでBlowfishを使いました。
・javax.crypto
・Java 暗号化拡張機能リファレンスガイド
J2SE 1.4から標準で組み込まれた機能で、共有鍵や公開鍵方式が使えます。DES,3DES,Blowfish,AESなどが統一的なインターフェースで使えて便利。下はDESを使って暗号→復号化するサンプル。今回は速度優先ということでBlowfishを使いました。
import javax.crypto.*;
public class DES{
public static void main(String[] argv){
try{
KeyGenerator kg = KeyGenerator.getInstance("DES");
SecretKey sk = kg.generateKey();
byte[] m = "Hello Des World".getBytes();
Cipher ch = Cipher.getInstance("DES/ECB/PKCS5Padding");
ch.init(Cipher.ENCRYPT_MODE, sk);
byte[] c = ch.doFinal(m);
System.out.println(new String(c));
ch.init(Cipher.DECRYPT_MODE, sk);
byte[] m2 = ch.doFinal(c);
System.out.println(new String(m2));
}catch(Exception e){
System.out.println(e);
}
}
}
関連リンク:・javax.crypto
・Java 暗号化拡張機能リファレンスガイド
perm link: http://yamashita.dyndns.org/blog/198/









