Java: RSA, ECCでキーペア生成

JavaでRSA・ECCのそれぞれでキーペアを作る方法のメモ。

RSA

KeyPairGeneratorにキーサイズを渡して初期化。キーサイズは、512ビット長以上、16384ビット長以下。

private static KeyPair generateKeyPairByRSA(int keySize) throws NoSuchAlgorithmException {
	
	KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
	keyGen.initialize(keySize);
	KeyPair keyPair = keyGen.generateKeyPair();
	
	return keyPair;
}

ECC

KeyPairGeneratorの初期化時に、楕円曲線名を渡す方法とキーサイズ・乱数を渡す方法の2通りがある。

private static KeyPair generateKeyPairByECC(String curveName) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException {
	
	KeyPairGenerator keyGen = KeyPairGenerator.getInstance("EC");
	
	//楕円曲線名で初期化
	ECGenParameterSpec spec = new ECGenParameterSpec(curveName);
	keyGen.initialize(spec);
	
	//キーサイズ・乱数で初期化
	//SecureRandom randomGen = SecureRandom.getInstance("SHA1PRNG");
	//keyGen.initilize(keySize, randomGen);
	
	KeyPair keyPair = keyGen.generateKeyPair();
	
	return keyPair;
}

以上、メモでした。

カテゴリー: Java

コメントを残す

メールアドレスが公開されることはありません。