2
生成DH參數時,使用Bouncy Castle Provider時性能出現問題。任何人都知道爲什麼下面的Bouncy Castle示例比使用標準提供程序慢50倍左右?Java中充氣城堡的性能
使用充氣城堡供應商:
Security.addProvider(new BouncyCastleProvider());
AlgorithmParameterGenerator generator = AlgorithmParameterGenerator.getInstance("DH", "BC");
for (int i = 0; i < 3; i++) {
generator.init(1024, new SecureRandom());
AlgorithmParameters params = generator.generateParameters();
DHParameterSpec dhSpec = (DHParameterSpec) params.getParameterSpec(DHParameterSpec.class);
System.out.println("P: " + dhSpec.getP() + ", G:" + dhSpec.getG());
}
使用標準的供應商:
AlgorithmParameterGenerator generator = AlgorithmParameterGenerator.getInstance("DH");
for (int i = 0; i < 3; i++) {
generator.init(1024, new SecureRandom());
AlgorithmParameters params = generator.generateParameters();
DHParameterSpec dhSpec = (DHParameterSpec) params.getParameterSpec(DHParameterSpec.class);
System.out.println("P: " + dhSpec.getP() + ", G:" + dhSpec.getG());
}