作成 2010.01.05
更新 2010.01.05
更新 2010.01.05
Java で暗号化通信のメモ
公開鍵方式
- SecureRandom = new SecureRandom(byte[] seed)
byte[] seed 任意 - KeyPairGenerator = KeyPairGenerator.getInstance(String algorithm)
String algorithm 標準名のドキュメント Cipher (暗号化) アルゴリズム - KeyPairGenerator.initialize(int keysize, SecureRandom random)
int keysize 任意 - KeyPair = KeyPairGenerator.generateKeyPair()
- PrivateKey = KeyPair.getPrivate()
- PublicKey = KeyPair.getPublic()
- Cipher = Cipher.getInstance(String transformation)
String transformation
"algorithm/mode/padding" 標準名のドキュメント Cipher (暗号化) アルゴリズム - Cipher.init(int opmode, Key key)
int opmode javax.crypto.Cipher のリファレンス - CipherInputStream(InputStream is, Cipher c)
- CipherOutputStream(OutputStream os, Cipher c)
- 送信元の保証
送信元のPrivateKeyで暗号化
送信元のPublicKeyで復号 - 通信経路の暗号化
送信先のPublicKeyで暗号化
送信先のPrivateKeyで復号
共有鍵方式
- SecureRandom = new SecureRandom(byte[] seed)
byte[] seed 任意 - KeyGenerator = KeyGenerator.getInstance(String algorithm)
String algorithm 標準名のドキュメント Cipher (暗号化) アルゴリズム - KeyGenerator.init(SecureRandom random)
- SecretKey = KeyGenerator.generateKey()
- Cipher = Cipher.getInstance(String transformation)
String transformation
"algorithm/mode/padding" 標準名のドキュメント Cipher (暗号化) アルゴリズム - Cipher.init(int opmode, Key key)
int opmode javax.crypto.Cipher のリファレンス - CipherInputStream(InputStream is, Cipher c)
- CipherOutputStream(OutputStream os, Cipher c)
タグ: Java