Diffie Hellman 키 교환 프로토콜을 구현하려고합니다. 잠시 동안 저는 공개 매개 변수 생성에 매달 렸습니다.
프로그램을 실행할 때마다 p 및 g 매개 변수가 동일합니다 (메서드 설명서에 "이 옵션이 호출 될 때마다 새 키 쌍이 생성됩니다").Diffie Hellman 공개 매개 변수가 모든 실행에서 동일한 이유는 무엇입니까?
누군가 나에게 여기에없는 것을 설명해 주시겠습니까?
KeyPairGenerator kpg;
try
{
kpg = KeyPairGenerator.getInstance("DiffieHellman");
kpg.initialize(512, new SecureRandom());
KeyPair dkp = kpg.generateKeyPair();
DHParameterSpec params =
((javax.crypto.interfaces.DHPublicKey) dkp.getPublic()).getParams();
BigInteger p = params.getP();
BigInteger a = params.getG();
System.out.println(p);
} catch (Exception e)
{
e.printStackTrace();
}
Java 플랫폼의 구현은 1024 개 키 크기가되는 DiffieHellman를 구현해야합니다. 이것은 구현에서 실제로 차이가 없지만 1024의 키 크기로 초기화하고 어떤 일이 발생하는지 확인할 수 있습니까? 또한 초기화를 전혀 호출하지 않도록하십시오 (기본 초기화가 사용됩니다). – SirRichie