【发布时间】:2014-09-04 17:13:34
【问题描述】:
我一直在尝试在 android 中生成唯一的密钥对。谁能告诉我为什么第一次调用时总是产生相同的键?
long ltime = System.currentTimeMillis();
SecureRandom random = null;
random = new SecureRandom();
byte[] seed = ByteBuffer.allocate(8).putLong(ltime).array();
random.nextBytes(seed);
RSAKeyGenParameterSpec spec = new RSAKeyGenParameterSpec(1024, RSAKeyGenParameterSpec.F4);
try {
mKeyPairGenerator.initialize(spec, random);
} catch (InvalidAlgorithmParameterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mKeyPair = mKeyPairGenerator.generateKeyPair();
mPublicKey = (PublicKey) mKeyPair.getPublic();
mPrivateKey = (PrivateKey) mKeyPair.getPrivate();
【问题讨论】: