2017-11-06 10 views
-2

개인 키 (ecdsa, secp256r1)가 있습니다.Bouncy Castle없이 자바에서 공개 키를 개인 (ecdsa)에서 만들 수있는 방법은 무엇입니까?

private final static String SHA = "SHA-256"; 
     private final static String MODE = "EC"; 
     private final static String PROV = "SunEC"; 
     private final static String ECC_ALGO = "secp256r1"; 

public static KeyPair eccKeyGen() { 


       KeyPairGenerator kpg; 
       KeyPair kp = null; 
       try { 
         kpg = KeyPairGenerator.getInstance(MODE, PROV); 
         ECGenParameterSpec ecsp; 
         ecsp = new ECGenParameterSpec(ECC_ALGO); 
         kpg.initialize(ecsp); 
         kp = kpg.genKeyPair(); 
         return kp; 
       } catch (Exception e) { 
         System.out.println("Key generation error."); 
         e.printStackTrace(); 
       } 
       return kp; 

어떻게 Bouncy Castle없이 Java에서 공개 키를 만들 수 있습니까?

+0

가능한 복제본을 생성합니다 (HTTPS [자바에서 개인 키 개체에서 RSA 공개 키 얻는 방법] : // 유래를 .com/questions/24756420/rsa-public-key-from-private-key-in-java) –

답변

0

개인 키가 OpenSSH 형식 인 경우 ssh-keygen-y 옵션을 사용할 수 있습니다. 개인이 mykey에 포함되는 경우 예를 들어, 다음 명령은 자사의 공개 키

ssh-keygen -y -f mykey > mykey.pub 
+0

"개인 키가 OpenSSH 형식이라고 가정합니다."어떻게 삽입 할 수 있습니까? Java 코드에서? – AlP

+0

이제 코드 예제를 추가 했으므로 공개 키를 잃어 버리는 문제는 아닙니다. Bouncy Castle과 같은 역할을 할 수있는 대체 JCE 제공자가 있는지 묻고 있습니까? – Frelling