목 차 1. 개요 1 2. 규격의구성및범위 1 3. 관련표준및규격 국외표준및규격 국내표준및규격 기타 2 4. 정의 전자서명법용어정의 용어의정의 용어의효력 3 5. 약어 3 6. 유선공인인증서비스에서의공인인

Similar documents
목 차 1. 개요 1 2. 규격의 구성 및 범위 1 3. 관련 표준 및 규격 국외 표준 및 규격 국내 표준 및 규격 기타 2 4. 정의 전자서명법 용어 정의 용어의 정의 용어의 효력 3 5. 약어 3 6.

목 차 1. 개요 1 2. 규격의구성및범위 1 3. 관련표준및규격 국외표준및규격 국내표준및규격 기타 2 4. 정의 전자서명법용어정의 용어의정의 용어의효력 2 5. 약어 3 6. 사용자인증 3 7. 전송채널

KCAC.TS.CRLPROF v1.50 전자서명인증서효력정지및폐지목록프로파일규격 Accredited Digital Signature Certificate Revocation List Profile v 년 9월

인증기관간상호연동을위한 CTL 기술규격 CTL Technical Specification for the Interoperability of Certification Authorities 년 월

- - yessign Version 3.5 (yessign)

yessign Version 3.1 (yessign). ccopyright 2009 yessign ALL RIGHTS RESERVED

목 차 개요 규격의구성및범위 관련표준및규격 국외표준및규격 국내표준및규격 기타 정의 전자서명법용어정의 용어의정의 용어의효력 약어 인증경로구축 인증경로검증알고리즘 인증서경로기본검증 검증알고리즘 부록 규격연혁

0. 들어가기 전

<4D F736F F F696E74202D B0F8B0B3C5B0B1E2B9DDB1B8C1B6205BC8A3C8AF20B8F0B5E55D>

목 차 1. 개요 1 2. 규격의구성및범위 1 3. 관련표준 국외표준및규격 국내표준및규격 기타 2 4. 정의 전자서명법용어정의 용어의정의 용어의효력 3 5. 약어 4 6. 전자서명공인인증서프로파일 4 6.

A Study on the efficient mutual authentication mechanism using the agent server

개정일 : 2006 년 12 월 27 일 전자서명인증서프로파일 Digital Signature Certificate Profile 본문서에대한저작권은 TTA 에있으며, TTA 와사전협의없이이문서의전체또는일부를 상업적목적으로복제또는배포해서는안됩니다. Copyrightc

KCAC.TS.CM v1.60 무선단말기에서의공인인증서저장및이용 기술규격 Certificate Management in Mobile Device v 년 11 월

행정전자서명기술요건

슬라이드 1

Lecture22

Microsoft PowerPoint - (110203)암호체계고도화 교육자료_v3 [호환 모드]

thesis

[ 네트워크 1] 3 주차 1 차시. IPv4 주소클래스 3 주차 1 차시 IPv4 주소클래스 학습목표 1. IP 헤더필드의구성을파악하고요약하여설명할수있다. 2. Subnet ID 및 Subnet Mask 를설명할수있고, 각클래스의사용가능한호스트수와사설 IP 주소및네트

0. 들어가기 전

untitled

<B8DEC0CFC0BBC5EBC7D1C0FCC0DABCBCB1DDB0E8BBEABCADC0AFC5EBB0B3B9DFC1F6C4A776312E302E687770>

RHEV 2.2 인증서 만료 확인 및 갱신

The Pocket Guide to TCP/IP Sockets: C Version

Slide 1

보안토큰 자동배포 가이드라인(안)

게시판 스팸 실시간 차단 시스템

SMB_ICMP_UDP(huichang).PDF

C# Programming Guide - Types

TTA Journal No.157_서체변경.indd

Microsoft Word - [ ] IPv6 IPsec IKE Ç¥ÁØÀûÇÕ¼º ½ÃÇè_¾È_.doc

TCP.IP.ppt

한국전자인증㈜ 공인인증기관

Microsoft Word doc

순서 OAuth 개요 OAuth 1.0 규격 OAuth 2.0 규격

2. 개인키권한설정 보안경고개인키의유출방지를위해 group 과 other 의 permission 을모두제거한다. chmod 600 /etc/pki/tls/private/lesstif-rootca.key 3. CSR(Certificate Signing Request) 생

All your private keys are belong to us_번역중.doc

1장. 유닉스 시스템 프로그래밍 개요

PowerPoint Template


歯규격(안).PDF

말은 많은 Blockchain 2

본 강의에 들어가기 전

Subnet Address Internet Network G Network Network class B networ

Tomcat.hwp

歯김병철.PDF

한국정보보호진흥원

전자세금계산서교육자료_기업고객용

Network seminar.key

Remote UI Guide

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe

행자부 G4C

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

1217 WebTrafMon II

T100MD+

Secure Programming Lecture1 : Introduction

Ⅰ. 들어가는 말 2005년 6월에 발생한 인터넷뱅킹 해킹 사건이 2005년 가장 기억에 남는 정보보호 뉴 스로 선정되었다고 한다. 해킹 등으로 인해 개인의 PC가 악의적인 해커에 의해 장악이 된 경우에는 어떤 보안시스템도 제 기능을 다하지 못함에도 불구하고, 해킹 사

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :


<4D F736F F F696E74202D20C1A639C0E55FB9ABB0E1BCBA5FC0AFC1F65FB1E2BCFA2E >

歯270호.PDF

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

05 암호개론 (2)

공울울즚엜.hwp

슬라이드 1

PowerPoint 프레젠테이션

chap 5: Trees

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

전자세금계산서교육자료_기업고객용

open-api.md 2/14/2019 Deflow Open Api 1. 목록 (GET) /v1/order/list - 주문내역조회 (GET) /v1/order/complete/list - 거래내역조회 (POST) /v1/order/cancel - 주문취소 (GET)

이발명을지원한국가연구개발사업 과제고유번호 No 부처명 한국연구재단 연구관리전문기관 - 연구사업명 일반연구자지원사업 연구과제명 유무선통합환경에서의안전한클라우드데이터센터구축을위한지능형보안관제기술개 발 기여율 1/1 주관기관 순천향대학교산학협력단 연구기

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

SRC PLUS 제어기 MANUAL

hd1300_k_v1r2_Final_.PDF

BEA_WebLogic.hwp

발신자 목적지 발신자 목적지 발신자 목적지 공격자 발신자 목적지 발신자 목적지 공격자 공격자

歯박사

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

슬라이드 1

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

MySQL-.. 1

슬라이드 1

public key private key Encryption Algorithm Decryption Algorithm 1

TTA Verified : HomeGateway :, : (NEtwork Testing Team)

Microsoft PowerPoint - chap09.ppt

Microsoft PowerPoint - ch10 - 이진트리, AVL 트리, 트리 응용 pm0600

Microsoft PowerPoint - chap06.ppt

슬라이드 1

메뉴얼41페이지-2

<38345FB9CEBCD2BFAC2DBDBAB8B6C6AE20C7EFBDBAC4C9BEEE20B1E2B9DDC0C72E687770>

UI TASK & KEY EVENT

초기설정 WebtoB Web Server 에서인증서를사용하기위해 CSR 을생성하는방법입니다. 1. 초기설정 - CSR 을생성하기전에다음의몇가지사항을필히확인합니다. 부팅후 Path 나환경변수를일일이설정하지않게초기설정파일을사용하여로그인시자동으로실행되도록하고있습니다. 그러나

2009 April

204

종합물가정보 2016년 4월호

005- 4¿ùc03ÖÁ¾š

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

Transcription:

공인인증서관리프로토콜규격 Accredited Certificate Management Protocol Specification v1.21 2009년 9월

목 차 1. 개요 1 2. 규격의구성및범위 1 3. 관련표준및규격 1 3.1 국외표준및규격 1 3.2 국내표준및규격 2 3.3 기타 2 4. 정의 2 4.1 전자서명법용어정의 2 4.2 용어의정의 2 4.3 용어의효력 3 5. 약어 3 6. 유선공인인증서비스에서의공인인증서관리프로토콜 4 6.1 PKI 메시지 4 6.2 운영관련데이터구조 7 7. 무선공인인증서비스에서의공인인증서관리프로토콜 11 7.1 무선인증서관리형식타입스트링및인코딩규칙 12 7.2 무선인증서관리프로토콜 12 부록 1. VID 및 EVID 구조 21 부록 부록 2. PK(Public Key) 의구조 23 3. 프로토콜에따른등록기관( 또는공인인증기관) 의응답형식 25 부록 4. 규격연혁 27

공인인증서관리프로토콜규격( 안) Accredited Certificate Management Protocol Specification(Draft) 1. 개요 본규격에서는전자서명법에따라구축된공인전자서명인증체계공인인증서 비스에서사용되는유 무선공인인증서관리프로토콜을규정한다. 2. 규격의구성및범위 본규격은 [RFC2510], [WAPWPKI] 등국제표준을준용하여, 국내공인전자 서명인증체계내에서사용되는유 무선공인인증서관리를위한기본적인데 이터구조와인증서관리를위한운영관련데이터구조를정의한다. 첫번째로, 제장에서는 6 유선공인인증서비스에서의공인인증서관리프로토콜을 정의한다. 두번째로, 제장에서는무선공인인증서비스에서의공인인증서관리프로토콜을 7 정의한다. 3. 관련표준및규격 3.1 국외표준및규격 [RFC2119] [RFC2510] [RFC2511] [WAPWPKI] [WAPWTLS] IETF RFC 2119 (1997), Key Words for use in RFCs to Indicate Requirement Levels IETF RFC 2510 (1999), Internet X.509 Public Key Infrastructure Certificate Management Protocol IETF RFC 2511 (1999), Internet X.509 Certificate Request Message Format WAP Forum Approved Version 24-April-2001, WAP-217-WPKI, : Wireless Application Protocol Public Key Infrastructure Definition WAP Forum Approved Version 6-April-2001, Wireless -1-

[PKCS10] Transport Layer Security RSA Laboratories PKCS#10 v1.7 (2000), CertificationRequest SyntaxStandard 3.2 국내표준및규격 [KCAC.TS.RS] [KCAC.TS.E2E] KISA, KCAC.TS.RS, v1.11, 공인인증서발급을위한참조번 호인가코드기술규격 /, 2009 KISA, KCAC.TS.E2E, v1.30, 무선응용계층보안프로토 콜기술규격, 2003 [KCAC.TS.CRMF] KISA, KCAC.TS.CRMF, v1.21, 공인인증서요청형식프로 토콜규격, 2009 [KCAC.TS.DSIG] KISA, KCAC.TS.DSIG, v1.30, 전자서명알고리즘규격, 2009 3.3 기타 해당사항없음 4. 정의 본규격에서사용하는용어의정의는제장에서정한것을제외하고는관련 4 법령등이정하는바에의한다. 4.1 전자서명법용어정의 본규격에서사용된다음의용어들은전자서명법및동법시행령, 공인인증기관의 시설및장비등에관한규정( 행정안전부고시) 에정의되어있다. 가) 나) 다) 공인인증서 공인인증기관 가입자 4.2 용어의정의 가) 유선공인인증서비스 : 인터넷기반의전자거래를위해공인인증서를이용하는서비스나 ) 무선공인인증서비스 : 무선단말기기반의전자거래를위해공인인증서를 -2-

이용하는서비스 다) 키갱신 : 키및인증서갱신 4.3 용어의효력 본규격에서사용된다음의용어들은전자서명인증체계공인인증서요청형식 프로토콜의구현정도를의미하는것으로 의미를지닌다. 가) 해야한다, 필수이다, 강제한다 ( 기호 : M) 반드시준수해야한다. 나) 권고한다 ( 기호 : R) [RFC2119] 를준용하며다음과같은 보안성및상호연동을고려하여준수할것을권장한다. 다) 할수있다, 쓸수있다 ( 기호 : O) 주어진상황을고려하여필요한경우에한해선택적으로사용할수있다. 라) 권고하지않는다 ( 기호 : NR) 보안성및상호연동을고려하여사용하지말것을권장한다. 마) 금지한다, 허용하지않는다 ( 기호 : X) 반드시사용하지않아야한다. 바) 언급하지않는다, 정의하지않는다 ( 기호 : -) 준수여부에대해기술하지않는다. 5. 약어및기호 본규격에서는다음의약어가이용된다. 가) CA : Certification Authority, 인증기관나) RA : Registration Authority, 등록대행기관 본규격에서사용하는다음의기호들에대해정의한다. 1) h( ) : 해쉬함수 2) R : 비트열난수 3) E( ) : 암호화함수 4) IDN : 식별번호 5) VID : 가상식별번호 -3-

6) EVID : 암호화된가상식별번호 VID / EVID 구조는 [ 부록 1] 참조 7) PK : 가입자의전자서명검증키또는키분배용공개키 PK( 공개키) 구조는 [ 부록 2] 참조 8) type : 관리형식의 type string 값 9) ID : 10) Passwd : 가입자의참조번호 가입자의인가코드 11) nonce : 서버가생성한 UTC Time 12) SK 키분배 : 가입자의키분배용비밀키 13) SignValue 키분배 : 키분배용 POP(Proof Of Possession) 을확인하기위 해 nonce 값에 SK 키분배로서명한값 14) PK 키분배 : 가입자의키분배용공개키 6. 유선공인인증서비스에서의공인인증서관리프로토콜 본장에서는유선공인인증서관련가입자등록및인증서발급, 폐지등전자서명인증체계공인인증서관리프로토콜에필요한기본적인데이터구조를정의한다. 6.1. PKI 메시지 공인인증서관리프로토콜에이용되는모든메시지는다음의구조를따른다. PKIMessage ::= SEQUENCE { header PKIHeader, body PKIBody, protection [0] PKIProtection OPTIONAL, extracerts [1] SEQUENCE SIZE (1..MAX) OF Certificate OPTIONAL} 6.1.1 PKI Message Header 모든 PKI 메시지들은트랜잭션 ID 와주소정보등을포함한헤더를가지며, 만약 PKI 메시지가서명및 MAC을이용해보호된다면헤더정보도역시보호되어야 -4-

한다. 메시지헤더의구조는다음과같다. PKIHeader ::= SEQUENCE { pvno INTEGER { ietf-version2 (1) }, sender GeneralName, recipient GeneralName, messagetime [0] GeneralizedTime OPTIONAL, protectionalg [1] AlgorithmsIdentifier OPTIONAL, senderkid [2] KeyIdentifier OPTIONAL, recipkid [3] KeyIdentifier OPTIONAL, transactionid [4] OCTET STRING OPTIONAL, sendernonce [5] OCTET STRING OPTIONAL, recipnonce [6] OCTET STRING OPTIONAL, freetext [7] PKIFreeText OPTIONAL, generalinfo [8] SEQUENCE SIZE (1..MAX) OF InfoTypeAndValue OPTIONAL} PKIFreeText ::= SEQUENCE SIZE (1..MAX) OF UTF8String pvno 필드는이프로토콜의버전1) 을나타낸다. sender 및 recipient 필드는메시지의송수신자 이름을포함하며, 메시지에 protection 필드가설정되어있는경우, 즉, 해당 PKI 메시지가보호되는경우, 이필드들은해당메시지에대한 protection 을검증하는데사용되어야한다. protectionalg 필드는메시지를보호하기위해사용되는알고리즘을명시하며, protection 필드가설정된경우에만사용된다. senderkid 및 recipkid 는메시지보호를위해사용된키를식별하기위해사용 된다. 특히, sender 필드가 NULL 인경우, senderkid 는반드시존재해야한다. transactionid 필드는요청메시지와이에대한응답메시지를식별하기위해사용 되는필드로요청및응답메시지에동일한값이포함된다. sendernonce, recipnonce 필드는메시지의재사용공격을막기위해사용되는 1) 프로토콜버전은 [RFC2510] 이전은 0, [RFC2510] 은 1로정의되고있으므로본규격은이를 준용하도록함 -5-

필드로 sendernonce 는메시지생성자에의해설정되고, 요청및응답메시지에 동일한값이포함된다. messagetime 필드는송신자가메시지를생성하는시간을포함한다. 6.1.2 PKI Message Body PKIBody 는가입자초기화및인증서발급, 폐지, 키갱신등에대한응답및요청 메시지를포함해서 실제내용이포함된다. PKI 개체간에송 수신되는일반적인요청및응답메시지들의 PKIBody ::= CHOICE { ir ip cr cp p10cr popdecc popdecr kur kup krr krp rr rp ccr ccp ckuann cann rann crlann conf nested genm genp CertReqMessage, CertRepMessage, CertReqMessage, CertReqMessage, CertificateionRequest, POPODecKeyChallContent, POPODecKeyRespContent, CertReqMessage, CertRepMessage, CertReqMessage, KeyRecRepContent, CertReqMessage, CertRepMessage, CertReqMessage, CertReqMessage, CAKeyUpdAnnContent, CertAnnContent, RevAnnContent, CRLAnnContent, PKIConfirmContent, NestedMessageContent, GenMsgContent, GenRepContent, error ErrorMsgContent } -6-

6.1.3 protection protection 은메시지의무결성을위해사용될수있으며, 다음의구조를가진다. PKIProtection ::= BIT STRING PKIProtection 은해당메시지의 header와 body를포함한protectedpart에대해 DER 인코딩한값을 MAC 하거나혹은서명한값이다. ProtectedPart는다음의구조를 가진다. ProtectedPart ::= SEQUENCE { header PKIHeader, body PKIBody } 6.1.4 extracerts extracerts 필드는메시지수신자가유용하게이용할수있는인증서를포함할 수있다. 예를들면, 이것은CA나 RA가자신의새로운인증서를증명하기위해 사용자에게기존인증서를전송하는데사용될수있다. 6.2 운영관련데이터구조 6.2.1 초기화요청메시지 ir은초기화요청메시지로 [KCAC.TS.CRMF] 의 CertReqMessage의구조를 가지며, 발급요청하는인증서에포함될정보가포함된다. 일반적으로 CertTemplate에 SubjectPublicKeyInfo, KeyID 및 Validity 이포함될수있으며, 메시지에대한 protection을위해서는 MAC 을사용해야한다. 6.2.2 초기화응답메시지 ip 는가입자초기화요청에대한응답메시지로, 인증서요청에대한상태정보, 가입자인증서등을포함한다. 초기화응답의데이터구조는다음과같다. CertRepMessage ::= SEQUENCE { capubs [1] SEQUENCE SIZE (1..MAX) OF Certificate OPTIONAL, response SEQUENCE OF CertResponse } CertResponse ::= SEQUENCE { certreqid INTEGER, -7-

status PKIStatusInfo, certifiedkeypair CertifiedKeyPair OPTIONAL, rspinfo OCTET STRING OPTIONAL } CertifiedKeyPair ::= SEQUENCE { certorenccert CertOrEncCert, privatekey [0] EncryptedValue OPTIONAL, publicationinfo [1] PKIPublicationInfo OPTIONAL } CertOrEncCert ::= SEQUENCE { certificate [0] Certificate, encryptedcert [1] EncryptedValue } certreqid 는요청메시지의 certreqid 와동일해야하며, 요청메시지에 certreqid 가 명시되어있지않은경우,-1 의값을가져야한다. PKIStatusInfo 는 가진다. 인증요청메시지에대한처리상태를나타내며, 다음의구조를 PKIStatusInfo ::= { status PKIStatus, statusstring PKIFreeText OPTIONAL, failinfo PKIFailureInfo OPTIONAL } 응답메시지는다음에서정의된상태정보의일부를포함할수있다. PKIStatus ::= INTEGER { granted (0), grantedwithmods (1), rejection (2), waiting (3), revocationwaring (4), revocationnotification (5), keyupdatewarning (6) } 인증요청이실패한경우, 응답메시지의송신자는실패사유에대한정보를제공하기위해다음의데이터구조를사용한다. -8-

PKIFailureInfo ::= BIT STRING { badalg (0), badmessagecheck (1), badrequest (2), badtime (3), badcertid (4), baddataformat (5), wrongauthority (6), incorrectdata (7), missingtimestamp (8), badpop (9) } 6.2.3 등록및인증서요청메시지 cr은등록및인증서요청메시지로 [KCAC.TS.CRMF] 의 CertReqMessage 구조의데이터를가진다. 6.2.4 등록및인증서요청응답메시지 cp는등록및인증서요청에대한응답메시지로 6.2.2 에정의된 CertRepMessage 구조의데이터를가진다. 6.2.5 키갱신요청메시지 kur 은키갱신요청으로 [KCAC.TS.CRMF] 의CertReqMessage 의구조를가지며, 일반적으로갱신될키에대한 SubjectPublicKeyInfo, KeyID 및 Validity 이 CertTemplate 에포함될수있다. 6.2.6 키갱신응답메시지 kup는키갱신요청에대한응답으로 CertRepMessage 의구조를가지며, 포함되는 내용은인증서신규발급요청에대한응답메시지에포함된정보와동일하다. 6.2.7 인증서폐지요청메시지 rr 은인증서폐지요청으로다음의데이터구조를가진다. -9-

RevReqContent ::= SEQUENCE OF RevDetails RevDetails ::= SEQUENCE { certdetails CertTemplate, revocationreason ReasonFlags OPTIONAL, badsincedate GeneralizedTime OPTIONAL, crlentrydetails Extensions OPTIONAL } 인증서폐지요청자의이름은 PKIHeader 에포함된다. certdetails 은요청자가폐지요청한인증서에대한상세정보를가지고, revocationreason 은폐지요청사유를포함한다. 6.2.8 인증서폐지응답메시지 rp 는인증서폐지요청에대한응답으로다음의데이터구조를가진다. RevRepContent ::= SEQUENCE { status revcerts [0] SEQUENCE SIZE (1..MAX) OF PKIStatusInfo, SEQUENCE SIZE (1..MAX) OF CertID OPTIONAL, crls [1] SEQUENCE SIZE (1..MAX) OF CertificateList CertId ::= SEQUENCE { issuer OPTIONAL } GeneralName, serialnumber INTEGER } 6.2.9 확인메시지 conf는 3-way 프로토콜에서 final 메시지로사용되는확인메시지이다. 이필드의 값은 NULL 로모든경우에동일하며, 요청된모든정보가 PKIHeader 에포함되기 때문에실제로포함되는정보는없다 PKIConfirmContent ::= NULL 6.2.10 일반요청메시지 genm 은 PKI 개체간일반적인요청메시지로다음의데이터구조가사용될수있다. -10-

GenMsgContent ::= SEQUENCE OF InfoTypeAndValue InfoTypeAndValue ::= SEQUENCE { infotype OBJECT IDENTIFIER, infovalue ANY DEFINED BY infotype OPTIONAL } InfoTypeAndValue 은다음의예와같은내용을포함할수있으며, 필요에의해 새로운요청및응답메시지를정의하여사용할수있다. {CAProtEncCert ={id-it1},certificates } {SignKeyPairTypes ={id-it2},sequence OF AlgorithmIdentifier } {EncKeyPairTypes ={id-it3},sequence OF AlgorithmIdentifier } {PreferredSymmAlg ={id-it4},algorithmidentifier } {CAKeyUpdateInfo ={id-it5},cakeyupdanncontent } {CurrentCRL ={id-it6},certificatelist } 여기서,{id-it}={13615574} 6.2.11 일반응답메시지 genp 는일반적인요청메시지에대한응답으로다음의데이터구조를가진다. GenRepContent :: SEQUENCE OF InfoTypeAndValue 6.2.12 에러메시지 error 는다음의구조를가진다. ErrorMsgContent ::= SEQUENCE { pkistatusinfo PKIStatusInfo, errorcode INTEGER OPTIONAL, errordetails PKIFreeText OPTIONAL } 7. 무선공인인증서비스에서의공인인증서관리프로토콜 본장에서는무선공인인증서관련전자서명및키분배인증서요청형식프로 토콜을정의하며인증기관및응용프로그램이요청형식을생성하고처리하는데 -11-

필요한요구사항들을명시한다. 7.1 무선인증서관리형식타입스트링및인코딩규칙 7.1.1 관리형식타입스트링정의 본규격에서각종류에따른해당타입을아래와같이정의하고, 3 스트링(String) 으로표현한다. 바이트의 종 류 키분배및전자서명 전자서명 키분배 재발급 200 210 220 갱 신 300 310 320 갱신( 키교체) 400 410 420 효력정지 500 510 520 폐 지 600 610 620 7.1.2 데이터인코딩규칙 본규격에서모든바이너리데이터는 base64 인코딩규칙을따라야한다. 구분자는 버티칼라인( ) 을사용하지만, 해쉬메시지의 concatenation 시에구분자를사용하지 않아야한다. 또한, 참조번호로사용할수있는문자의범위에서버티칼라인( ) 은 제외해야한다. 7.1.3 데이터전송 본규격에서정의하고있는데이터를등록기관또는공인인증기관에게전송 ( ) 할때는 POST 방식을사용해야한다. 7.2 무선인증서관리프로토콜 전자서명인증체계에서인증서의재발급, 폐지, 갱신, 효력정지, 효력회복요청시 필요한관리프로토콜을정의한다. 무선인증서관리프로토콜에따른등록기관( 또는공인인증기관) 의응답형식은 [ 부록 3] 에서정의한다. 7.2.1 인증서재발급요청 인증서재발급요청형식은가입자가가입자의전자서명생성키가분실, 훼손또 -12-

는도난, 유출되었다고판단되는경우재발급요청형식작성하여공인인증기관 ( 또는등록기관을통해) 에전달하기위함이다. 가입자는일회성정보(ID, Passwd), POP 를위한방법, 가입자의공개키( 전자 서명용공인인증서인경우에는신원확인정보) 를포함하는공인인증서요청형식을 생성하여 Replay attack, 메시지위 변조방지할수있는요청형식을구성하여 공인인증기관( 또는등록기관을통해) 에공인인증서요청형식을전달하여야한다. 일회성정보(ID, Passwd) 는 [KCAC.TS.RS] 를준수하여이용하고, 가입자가공 인인증서를요청할때는 하여인증서요청형식을생성한다. [KCAC.TS.E2E] 에서정의한 signtext함수를사용 전자서명용또는키분배용인증서재발급요청형식구조는다음과같다. 가입자 R 생성 V ID = H ( H ( ID N,R )) EVID = E(VID R) M = type PK new ID new EVID N = Passwd new SignedContent = signtext(m H ( M,N ), 1, 0, ) CR = SignedContent nonce CR 등록기관( 또는공인인증기관) nonce 생성 SignedContent = CR PK new, ID new 추출및 SignedContent 검증 데이터베이스에서 Passwd new H' = H ( M,Passwd new ) H'? = H ( M, N ) VID R = D(EVID) V ID? = H ( H ( ID N', R )) 및 IDN' 추출 키분배용인증서를발급받는경우에는 VID 및 EVID 구조는 [ 부록 1] 에서정의함 여기서 nonce는사용하지않음 EVID 를생략함. -13-

7.2.2 인증서갱신발급요청 가입자가인증서만료 1개월전부터만료일까지인증서갱신발급요청형식을 구성및작성하여공인인증기관( 또는등록기관을통해) 에전달하기위함이다. 갱신발급은키교체가발생하지않을경우, 키교체가일어날경우두가지 경우가생길수있다. 이러한경우갱신발급요청형식을생성하여공인인증기 관또는등록기관을통해에보내주어야한다 ( ). o 키교체가일어나지않는경우전자서명용또는키분배용인증서갱신발급 요청형식구조 가입자 등록기관( 또는공인인증기관) nonce 값생성 nonce R 생성 VID = H ( H ( IDN,R )) EVID = E(VID R ) M = type 소유자의 DN의 CN string EVID N = nonce(replay 공격방지) SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent CR SignedContent = C R signtext의 option이 5로설정되므로 기존인증서를가져와 PK 를추출 SignedContent 를 PK 로검증 ( 사용자인증) VID R = D(EVID) V ID? = H ( H ( ID N', R )) 여기서메시지 M의소유자 DN에서 CN string 은옵션이고, Null 값을가질수있음 ( 버티칼라인( ) 포함). 메시지 M의관리형식 type string 값은반드시포함. -14-

o 키교체가일어나지않는경우전자서명용및키분배용인증서갱신발급 요청형식구조 가입자 등록기관( 또는공인인증기관) nonce nonce 값생성 R 생성 V ID = H ( H ( ID N,R )) EVID = E(VID R) M = type 키분배용인증서의 URL EVID N = nonce(replay 공격방지) SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent CR SignedContent = C R signtext의 option이 5로설정되므로 기존인증서를가져와 PK 를추출 SignedContent 를 PK 로검증 ( 사용자인증) VID R = D (EVID) V ID? = H ( H ( ID N', R )) -15-

o 키교체가일어나는경우전자서명용또는키분배용 가입자 등록기관( 또는공인인증기관) nonce nonce 생성 R 생성 V ID = H ( H ( ID N,R )) EVID = E(VID R) M = type PK new EVID 구성 nonce 를 SK new 로서명한서명값 SignValue 생성 N = nonce SignValue SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent CR SignedContent = C R signtext의 option 이 5로설정되므 로 기존인증서를가져와 PK 를추출 SignedContent 를 PK 로검증 ( 사용자인증) SignValue 를 M의 PK new 로검 증( 새로운공개키에대한 POP 확인) VID R = D(EVID) V ID? = H ( H ( ID N', R )) -16-

o 키교체가일어나는경우전자서명용및키분배용 가입자 등록기관( 또는공인인증기관) nonce 생성 nonce R 생성 V ID = H ( H ( ID N,R )) EVID = E (VID R) SignValue sign 는 nonce를 S K ne w _sig n 로서명한서명값 M = type P K ne w _sign SignValue sign EVID SignValue keyd 는 nonce를 SK new _keyd 로서명한서명값 N = nonce PK new _keyd SignValue keyd KeydURL SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent CR SignedContent = C R signtext의 option 이 5로설정되므로 기존인증서를가져와 PK 를추출. SignedContent 를 PK 로검증 ( 사용자인증) SignValue sign 를 M 의 P K ne w _sig n 로검증( 새로운전자서명검증키에대 한 POP 확인) SignValue keyd 를 N 의 PK new _keyd 로검증( 새로운키분배용공개키에 대한 POP 확인) VID R = D(EVID) V ID? = H ( H ( ID N', R )) -17-

7.2.3 인증서효력정지발급요청 가입자는가입자의생성키에대한분실, 훼손또는도난 유출이의심되는경 우인증서효력정지발급요청형식을생성하여공인인증기관( 또는등록기관을통 해에전달하기위함이다 ). 가입자는사용자인증, Replay attack을방지할수있는인증서효력정지 발급요청형식을구성하여공인인증기관( 또는등록기관을통해) 에전달해야한다. o 전자서명용또는키분배용인증서효력정지발급요청형식구조 가입자 등록기관( 또는공인인증기관) nonce nonce 생성 M = type CertificateHold N = nonce(replay attack 방지) SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent CR SignedContent = C R signtext의 option 이 5로설정되므 로 기존인증서를가져와 PK 를추출. SignedContent 를 PK 로검증 ( 사용자인증) M 의 CertificateHold를통해효 력정지사유를확인 인증서를효력정지목록에삽입 -18-

o 전자서명용및키분배용인증서효력정지발급요청형식구조 가입자 M = type CertificateHold N = nonce KeydURL SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent nonce CR 등록기관( 또는공인인증기관) nonce 생성 SignedContent = C R signtext의 option 이 5로설정되므 로 기존인증서를가져와 PK 를추출. SignedContent 를 PK 로검증 ( 사용자인증) M 의 CertificateHold를통해효 력정지사유를확인 인증서를효력정지목록에삽입 7.2.4 인증서효력회복 인증서효력회복은가입자가효력이정지된자신의인증서효력회복을신청 하는것이다. 가입자는인증서효력회복시인증기관( 또는등록기관을통해) 에 직접방문하여효력회복신청을해야한다. 7.2.5 인증서폐지발급요청 가입자가인증서를폐지신청한경우와가입자의생성키에대한분실, 훼손또는 도난 유출이의심되는경우에가입자는폐지발급요청형식을작성하여공인인증 기관( 또는등록기관을통해) 에전달하기위함이다. 가입자의생성키에대한분실또는훼손된경우가입자는인증기관( 또는등록기관) 에 직접방문하여폐지신청을하고, 그외가입자의생성키에대한도난 유출이의 심되어폐지신청한경우는온라인으로가입자는폐지발급요청형식을구성하여공 -19-

인인증기관( 또는등록기관을통해) 에전달한다. o 전자서명용또는키분배용인증서폐지발급요청형식구조 가입자 M = type ReasonCode SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent nonce CR 등록기관( 또는공인인증기관) nonce 생성 SignedContent = C R signtext의 option 이 5로설정이므 로 기존인증서를가져와 PK 를추출. SignedContent 를 PK 로검증 ( 사용자인증) M의 ReasonCode를 통하여 폐지 사유를확인및인증서를폐지목록에삽입 o 전자서명용및키분배용인증서폐지발급요청형식구조 -20-

가입자 등록기관( 또는공인인증기관) M = type ReasonCode N = KeydURL SignedContent =signtext(m N,5,1,H( 공개키)) C R = SignedContent nonce CR nonce 생성 SignedContent = C R signtext의 option 이 5로설정되므 로 기존인증서를가져와 PK 를추출. SignedContent 를 PK 로검증 ( 사용자인증) M의 ReasonCode를 통하여 폐지 사유를확인 인증서를폐지목록에삽입 -21-

부록 1. VID 및 EVID 구조 1.1 VID 구조 enum { SHA1(0), (255) } HashAlgorithm ; struct { HashAlgorithm hash_alg ; opaque virtualid<0..2^8-1> ; }VID; // virtualid는아래에정의된 HashContent를 HashAlgorithm으로 2번해쉬한 값이다. struct { opaque opaque }HashContent; idn<0..2^8-1>; randomnum[20]; 1.2 EVID 구조 enum { RSA(0), (255) } EncryptionAlgorithm ; struct { Identifier issuer; opaque serialnumber<0..2^8-1>; }IssuerAndSerialNumber; struct { uint8 version ; HashAlgorithm vid_hash_alg ; EncryptionAlgorithm vid_encyption_alg ; -22-

}EVID; IssuerAndSerialNumber certid ; opaque encryptedvid<0..2^16-1> ; // encryptedvid는아래에정의된encryptioncontent 를암호화한값이다. struct { VID vid ; opaque randomnum[20] ; }EncryptionContent; -23-

부록 2. PK(Public Key) 의구조 enum { rsa(2), ecdh(3), ecdsa(4), (255) } PublicKeyType ; struct { select (PublicKeyType) { case ecdh : ECPublicKey ; case ecdsa : ECPublicKey ; case rsa : RSAPublicKey ; } }PublicKey; struct { opaque rsa_exponent<1..2^16-1> ; opaque rsa_modulus<1..2^16-1> ; }RSAPublicKey; enum { ECunNamed(0), ECNamed(1), (255) } ECNameType ; struct { select (ECNameType) { case ECunNamed : ECParameters ; case ECNamed : opaque oid<1..2^8-1>; } opaque point<1..2^8-1>; }ECPublicKey; ECNamed 에포함되는타원곡선암호화(ECC) 커브는 [KCAC.TS.DSIG] 를 따름 enum { ec_prime_p(1), ec_characteristic_two(2), (255) } ECFieldID; -24-

enum { ec_basis_onb(1), ec_basis_trinomial(2), ec_basis_pentanomial(3), ec_basis_polynomial(4) } ECBasisType; struct { opaque a <1..2^8-1>; opaque b <1..2^8-1>; opaque seed <0..2^8-1>; }ECCurve; struct { ECFieldID field; select (field) { case ec_prime_p: opaque prime_p <1..2^8-1>; case ec_characteristic_two: uint16 m; ECBasisType basis; select (basis) { case ec_basis_onb: struct { }; case ec_trinomial: uint16 k; case ec_pentanomial: uint16 k1; uint16 k2; uint16 k3; case ec_basis_polynomial: opaque irreducible <1..2^8-1>; } } ECCurve curve; ECPoint base; opaque order <1..2^8-1>; opaque cofactor <1..2^8-1>; }ECParameters; ECParameters 구조에대한설명은 [WAPWTLS] 를참조한다. -25-

부록 3. 프로토콜에따른등록기관( 또는공인인증기관) 의응답형식 3.1 재발급및갱신발급요청에대한응답형식 3.1.1 성공(Success) MIME Type : application/vnd.wap.cert-response Content : Base64 인코딩된 CertResponse enum { cert_info(0), cert(1), referral(2), (255) } CertRespType; struct { CharacterSet character_set; opaque displayname <1.. 2^8-1>; }CertDisplayName; struct { }UrlPoint; opaque url <0.. 128>; struct { unit8 version; CertRespType type; select (type) { case cert_info: CertDisplayName Identifier UrlPoint case cert: CertDisplayName Identifier X509Certificate case referral: UrlPoint display_name[2]; ca_domain[2]; url[2]; display_name[2]; ca_domain[2]; cert[2]; url[2]; -26-

} }CertResponse; unit32 seconds_to_wait[2]; 각배열의첫번째는전자서명용, 두번째는키분배용관련정보이다. CertResponse 구조에대한설명은 [WAPWPKI] 를참조한다. 3.1.2 실패(Fail) MIME Type : text/plain Content : ascii text 값의에러메시지 3.2 효력정지및폐지발급요청에대한응답형식 3.2.1 성공(Success) MIME Type : text/plain Content : ascii text 값의성공메시지 3.2.2 실패(Fail) MIME Type : text/plain Content : ascii text 값의에러메시지 -27-

부록 4. 규격연혁 버전 제개정일 제개정내역 v1.00 2004년 12월 공인인증서관리프로토콜규격 으로제정 v1.10 2007년 4월 무선인증서관리프로토콜 v1.32 흡수통합 v1.20 2008년 10월 관련국내표준및규격갱신내용반영 법률공포번호가해당법률개정시마다변경되는점을 고려하여법령명으로개정 v1.21 2009년 9월 관련국내표준참조오류정정 -28-

규격작성공헌자 본규격의제개정을위해아래와같이많은분들이공헌을하였습니다. 구분성명소속사 규격제안전자인증팀한국인터넷진흥원 규격초안제출전자인증팀한국인터넷진흥원 규격검토 백종현이석래박상환이원철박윤식박순태이향진이한욱정성아심희원김연숙이성진국상진김재홍 한국인터넷진흥원한국인터넷진흥원한국인터넷진흥원한국인터넷진흥원한국인터넷진흥원한국인터넷진흥원한국인터넷진흥원금융결제원금융결제원한국정보인증한국정보인증한국증권전산한국무역정보통신한국전산원 규격안편집박상환한국인터넷진흥원 -29-