2009-06-17 2 views
6

나는 다음과 같은 명령 키 도구 자바에서 생성 된 공개 키 .cer 파일을 먹고 싶어 :JSSE를 사용하여 공개 키 .cer 파일을 Java 키 저장소로 프로그래밍 방식으로 가져 오는 방법은 무엇입니까?

"키 도구 -export -alias의 PrivateKey - 파일 publickey.cer -keystore privateKeys.store"

과로 가져 이 같은 새로운 빈 자바 키 저장소 :

"키 도구 -import -alias publiccert - 파일 publickey.cer -keystore publicCerts.store"

내가 JSSE를 사용하여 프로그래밍 방식으로 가져 오기를 수행 할 제외.

스택 오버로드가 당신의 마술을 작동! 감사!

+0

JSSE는 올바른 약어가 아닐 수도 있습니다. JCE 아마? 키 스토어를 처리하는 Java API가 무엇이든간에! :) –

+0

고마워. 나는 당신에게 줄줄을 달았지만 아직 그렇게 할 여력이 충분하지 않습니다. Reginaldo의 조언에 따라, 나는 뒤섞인 KeyTool 소스를보고 나서 알아 냈다. 나는 이와 비슷한 것을했다 : 인증서 cert = CertificateFactory.getInstance ("X509"). generateCertificate (new FileInputStream (certFileLocation)); keyStore.setCertificateEntry ("publickey", cert); –

답변

0

jad을 사용하여 Sun JDK와 함께 제공되는 tools.jar을 디 컴파일하면 정확하게 작동하는 것을 볼 수 있습니다.

폴더에서 tools.jar의 압축을 풀고 다음 명령을 사용하여 해당 클래스 내에있는 모든 클래스 을 디 컴파일하십시오.

 
for i in $(find . -name "*.class" | perl -ple 's/\.class$//g'); do jad -p $i.class > $i.java; done 

키 도구 소스

클래스 sun.security.tools.KeyTool 자바에서 키 스토어 클래스에서

2

봐 볼 수 있습니다. Here은 몇 가지 힌트를 줄 수있는 클래스입니다. 해당 기능을 모두 사용하려면 BouncyCastle 암호화 공급자가 필요합니다.

관련 문제