java. 코드사인용 인증서로 자바 애플릿 사인하기

예스사인등 공인인증기관에서 발급받은 코드사인용 파일들 spc, pvk 를 가지고 자바 애플릿용 jar 파일을 사인하는 방법을 설명한다.
spc 와 pvk 파일에서 pfx 파일을 생성하고, 이를 jks(자바키스토어)에 import 시키는 것이 주요 시나리오이다.

1. pkvimprt 프로그램을 설치한다.

pvkimprt.zip

keystoremove.zip

2. pfx 파일을 생성한다.

pkvimprt -PFX test.spc test.pvk


1,2번 과정은 윈도우98 또는 2000 에서 실행해야 에러가 나지 않는다. pfx 를 내보낼 때는, 가능한 모든 인증서 포함 옵션을 선택하도록 하자.

3. 자바키스토어를 생성한다.

keytool -genkey -keystore test.jks


위와 같이 하면 사용하지 않는 쓰레기키가 하나 만들어지면서 키스토어가 생성된다. 국가 지역 등등을 물어보는데 그냥 엔터쳐서 넘기고 마지막에 확인할때는 y를 입력하자.

4. 자바키스토어에 pfx 를 임포트한다.

java -cp . KeystoreMove pkcs12 test.pfx keyPassword jks test.jks storePassword


alias 를 물어보면 입력한다.

다음의 명령으로 스토어에 저장된 개인키 목록을 확인할 수 있다.

keytool -list -keystore test.jks


5. 코드사인하기

jarsigner -keystore test.jks xxxx.jar keyAlias 


위와 같이 하면 된다. ANT 타스크로는 아래와같이 표현가능하다.

<signjar jar="xxxx.jar" keystore="test.jks" alias="keyAlias" 
storepass="storePassword" keypass="keyPassword"/>


코드사인이 잘 됐는지는 아래의 명령으로 확인한다.

jarsigner -verify xxxx.jar



참고

http://blog.naver.com/coolxeni/2217642
http://blog.naver.com/coolxeni/2238743
http://woojongwon.tistory.com/38
http://cafe.naver.com/nwcomcokr/878
http://change4u.tistory.com/47