응용프로그램 인증 가이드

     ※ 인증 작업을 진행하시다가 에러가 발생하는 경우에는 코드사인 에러 테이블을
         참조하시기 바랍니다.

              -> 코드사인 에러 테이블

일반적인 순서
 ① Cab 파일 생성
 ② 생성된 Cab파일 Codesign 하기
 ③ 사인된 Cab파일 확인
세부 설치 가이드
1. 인증서를 설치하기 위하여 다음 프로그램을 다운로드 받아 압축을 풉니다
 
실행하면 압축이 자동으로 풀립니다.
발급받은 인증키(*.pvk, *.spc)가 저장되어진 폴더에 압축을 풉니다.
< Codesign.exe 파일구성 >
CabArc.exe Cabinet Archive를 생성해 주는 프로그램. 우리의 애플릿 클래스 파일들을 Cabinet 파일로 만들어 준다.
SignCode.exe Cabinet 파일을 우리의 비밀키와 인증서로 사인해준다.
ChkTrust.exe 사인 작업이 잘 수행되었는가 검증해 주는 프로그램.
MakeCert.exe 시험용 인증서를 만들어 주는 프로그램
Cert2Sp MakeCert로 만들어진 시험용 인증서를 사인하는 작업에 사용될 수 있도록 변환해 주는 프로그램
Javasign.dll 사인 작업 시 필요한 정보를 지정해 주는 데에 사용되는 프로그램

2. MS-DOS에서 해당 파일이 저장되어있는 폴더로 이동합니다.
 


3. -CAB 파일 생성- Application을 사인하기 위하여 CAB Archive 파일을 만든다.
 
Usage: CABARC [options] command cabfile [@list] [files] [dest_dir]
 기본 예> cabarc -s 6144 N ABC.cab ABC1.ocx ABC2.ocx
1) 하나의 파일을 Cab 파일로 생성
  CabArc n ABC.cab ABC.class
2) 적은수의 파일을 Cab 파일로 생성
 - 3개의 파일(ABC1.ocx, ABC2.ocx, ABC1.inf)로 Cab 파일 생성
  Cabarc n ABC.cab ABC1.ocx ABC2.ocx ABC.inf
< Cabarc Guide >
Command
L Cabinet(CAB) 파일의 목록 보기 (예: CabArc l test.cab)
N 새로운 cabinet 파일 생성 (예: CabArc n test.cab *.c app.mak *.h)
X Cabinet 파일로부터 파일 꺼내기 (예: CabArc x test.cab foo*.c)
Options
-c 작업할 파일 확인하기
-o 파일을 꺼낼 때, 사용자에게 묻지 않고 덮어쓰기
-m 압축 형태 지정 [LZX:<15..21>|MSZIP|NONE], (기본 형태는 MSZIP)
-p 파일명에 파일 경로 포함하기 (단, 상대 경로만 허용)
-P 파일 포함 시 지정된 접두어 생략하기 (주로, 파일 경로의 일부가 지정됨)
-r 하위 디렉토리의 파일까지 포함하기 (주로, -p 옵션과 함께 사용)
-s Cabinet 파일 내에 사인 정보를 둘 여유 공간 확보 (예: -s 6144 => 6K bytes). Java SDK 2.0부터는 필요 없음
-I Cabinet 생성시 'Cabinet Set ID' 지정 (기본 아이디는 0)

 
4. - Codesign - 발급된 인증서를 사용하여 코드사인 합니다.
 
< Uage: SignCode [options] FileName >
  ※ 대표적으로 5개의 Option을 가장 많이 사용합니다.
1) 기본사인하기 :
 signcode -spc [파일.spc] -v [파일.pvk] -n [프로그램이름] -i [부가설명URL]
 -t http://timestamp.verisign.com/scripts/timestamp.dll [사인할파일명]
2) 개인키 패스워드 창이 나오면 지정된 암호를 입력하시기 바랍니다.
※ signcode 작업을 진행하시다가 에러가 발생하는 경우에는
[애니서트 코드사인 에러 테이블]을 참조하시기 바랍니다.

-> [애니서트 코드사인 에러 테이블]

만약, [애니서트 코드 사인 에러 테이블]을 보시고 잘 해결되지 않는 부분에 대해서는 애니서트 메일로 에러 상황을 리포트해 주신다면 코드 사인 에러에 대해서 지원해 드릴 수 있습니다.
※ 대부분 codesign에 성공하나 아래와 같은 오류 메시지가 나올 수 있습니다.
 이는 잘못된 명령이 아니오며, Timestamp 서버에 접속이 실패한 것입니다.
 다시 Succeded 멧세지가 나올때까지 시도하시기 바랍니다.
3) 사인이 끝났습니다. 서명된 내용을 확인합니다.
 : Chktrust [파일명]


< SignCode Option Guide >
Options Parameter 설 명
-spc file SPC를 포함하는 파일명
-v pvkFile 비밀키를 포함하고 있는 파일명
-k KeyName 레지스트리 내의 키 이름
-n name 사인할 내용에 대한 텍스트 이름
-I info 사인할 내용에 대한 부가 설명이 있는 장소(예:URL)
-p provider 시스템내의 암호화 시스템 제공자 이름
-y type 시스템내의 암호화 시스템 제공자 형태
ky keytype 키의 종류 <signature|exchange|<정수>> 중 하나
-$ authority 인증서를 인증한 기관의 종류. <individual|commercial> 중 하나
-a algorithm 사인에 이용된 해쉬 알고리즘. <md5|sha1> 중 하나. MD5가 기본
-t URL Timestamp를 찍어줄 서버의 HTTP 주소
-tr Number Timestamp 간 간격(초단위) 기본은 0 초
-j DllName 사인에 필요한 부가 특성들을 포함하는 Dll 파일명(예:보안레벨)
-jp Param Dll 파일에 넘실 Parameter
-c File 인코딩된 spc를 포함한 X.509 파일명
-s Store 인증서를 가지고 있는 인증서 보관소명, 기본은 my store
-r Location 레지스트리 내의 인증서 보관소의 위치
 <localMachine|currentUser> 중 하나. 기본은 currentUser
-sp Policy 인증서 검증에 필요한 모든 인증서를 포함할 것인가 아니면 SPC 보관소(Store)에 들어있는 인증서가 나올 때까지 포함할 것인가에 대한 정책. <chain|spcstore> 중 하나. 기본은 spcstore.
-cn Name 인증서의 일반 이름(별명)
-x   사인하지 말고 Timestamp만 받을것을 명시


+ Recent posts