2012-07-26 2 views
6

java를 사용하여 공개 키를 읽고 구문 분석하여 해당 유효성, 지수, 모듈러스 또는 유효성 여부를 확인해야합니다. 아래 코드를 시도하고 문제가 발생했습니다. 이 문제에 대한 해결책을 찾는 것을 도와 주시겠습니까? 여기 java에서 공용 키를 구문 분석하고 읽음

public static void getPublicKey(String key) throws Exception { 

key = key.replaceAll("-----BEGIN SSH2 PUBLIC KEY-----", ""); 
key = key.replaceAll("-----END SSH2 PUBLIC KEY-----", ""); 
KeyFactory kFactory = KeyFactory.getInstance("RSA", new BouncyCastleProvider()); 
byte pub_llave[] = new BASE64Decoder().decodeBuffer(key) ; 
X509EncodedKeySpec spec = new X509EncodedKeySpec(pub_llave); 
PublicKey pubkey = (PublicKey) kFactory.generatePublic(spec); 
} 

그리고

는 예외입니다 :

java.lang.IllegalArgumentException: unknown object in getInstance: org.bouncycastle.asn1.DERApplicationSpecific 
    at org.bouncycastle.asn1.ASN1Sequence.getInstance(Unknown Source) 
    at org.bouncycastle.asn1.ASN1Sequence.getInstance(Unknown Source) 
    at org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getInstance(Unknown Source) 
+0

어떤 문제가 있습니까? 어떤 오류? – Tomer

+0

@ ftom2 - 예. 다음은 예외 추적은 - java.lang.IllegalArgumentException가이 :의 getInstance 알 수없는 객체 : org.bouncycastle.asn1.ASN1Sequence.getInstance (알 수없는 소스)에서 org.bouncycastle.asn1.DERApplicationSpecific \t org.bouncycastle.asn1.ASN1Sequence에서 \t .getInstance (알 수없는 출처) \t at org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getInstance (알 수없는 출처) – Sirish

+0

코드를 주석에 게시하지 마십시오. 질문을 편집하여 추가하십시오. – Tomer

답변