反正我總是可以生成相同的私鑰嗎?我厭倦了與使用相同seed
一個RandomSecure對象初始化KeyPairGenerator:使用RandomSecure生成KeyPair
private PrivateKey getPrivateKey(String seed) {
try {
SecureRandom sr = new SecureRandom(seed.getBytes());
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(1024, sr);
KeyPair keyPair = keyGen.generateKeyPair();
return keyPair.getPrivate();
} catch (NoSuchAlgorithmException e) {
System.out.println("Failed to generate key pair!");
}
return null;
}
我調用上面的函數,並檢查私有密鑰是相同的:
String seed = "xyzabc123";
PrivateKey key1 = getPrivateKey(seed);
PrivateKey key2 = getPrivateKey(seed);
boolean same = key1.equals(key2); // false
他們是不同的,我的問題是否有辦法生成總是相同的私鑰?
我認爲唯一的辦法是創建自定義Rsa algotihm – xXxpRoGrAmmErxXx
你的意思是'SecureRandom'嗎? – EJP