프로그래밍/기타

인증서 확장 필드

Subi Lee 2011. 5. 17.
반응형
 
  전자문서 교환이나 전자상거래의 안전 및 신뢰성을 보장하기 위하해서는 공개키 기반의 인증서비스가 필요합니다. 하지만 각 나라들이 구축한 공개키 기반구조는 상호연동이나 상호인증이 되지 않습니다. 이러한 문제를 해결하기 위해 인증서 프로파일이 개발되었습니다.
  인증서 프로파일은 공개 키 기반 구조(PKI)에서 공개 키의 신뢰성을 확보하기 위해 공신력 있는 제3의 기관이 자신의 개인 키로 공개 키를 포함하고 있는 문서에 전자 서명을 하는 인증서를 생성, 발급하기 위한 규격. 기본 필드는 인증서 일련번호, 발급자, 유효 기간, 소유자, 소유자 공개 키 정보, 발급자 및 소유자 고유 식별자 등 기본적인 사항이 포함되고, 확장 필드는 발급자 공개 키 식별자, 소유자 공개 키 식별자, 키 용도, 소유자 비밀 키 유효 기간, 인증서 정책, 소유자 및 발급자 대체 명칭 등이 포함됩니다.
 
<인증서 확장필드>
* Authority Key Identifier (발급자 공개키 식별자)
발급자 공개키 식별자 확장필드는 인증서를 발급한 인증기관의 인증서에 대한 공개키를 식별합니다. 공개키를 식별하는 방법은 공개키의 정보를 이용하는 방법과 인증 기관명과 인증서 일련번호를 이용하는 방법이 있습니다.
이 확장필드는 non-critical로 설정되어야 하며 모든 인증서에 포함되어야 하고 응용 프로그램은 이 확장필드를 처리할 수 있어야 합니다.
 
* Subject Key Identifier (소유자 공개키 식별자)
소유자 공개키 식별자 확장필드는 인증기관으로부터 인증 받는 공개키를 식별하고, 이 확장필드는 non-critical로 설정되어야 하며 모든 인증서에 포함되어야 하며 응용 프로그램은 이 확장필드를 처리할 수 있어야 합니다.
  <?xml:namespace prefix = o />
* Key Usage (키 사용목적)
키 사용목적 확장필드는 소유자의 공개키가 사용되는 목적을 명시하며 정의되는 사용목적들의 내용은 다음과 같다. 키 사용목적 확장필드는 공개키가 사용되는 목적을 정의합니다.
이 확장필드는 critical로 설정되어야 하며 모든 인증서에 포함되어야 하고 지정된 사용목적 이외로 사용되지 말아야 하며, 모든 응용프로그램은 이 확장필드를 처리할 수 있어야 합니다.
* Private Key Usage Period (소유자 비밀키 유효기간)
소유자 비밀키 유효기간 확장필드는 전자서명생성키의 유효기간이 인증서의 유효기간보다 짧은 경우에 전자서명생성키의 유효기간을 명시합니다. 이 확장필드는 모든 인증서에서 사용되지 말아야 하고 생성하는 경우에는 non-critical로 설정.
 
* Certificate Policies (인증서 정책)
인증서 정책 확장필드는 인증서를 발급하는데 적용된 인증기관의 인증서 정책을 나타냅니다. 한글을 사용하여 인증서 정책에 대한 추가적인 정보를 나타내고자 하는 경우에는 UTF8 인코딩하여 사용해야 하고, 모든 인증서에 이 확장필드가 포함되어야 하며 응용 프로그램은 이 확장필드(critical이나 non-critical로 설정)를 처리할 수 있어야 합니다.
 
* Policy Mappings (인증서 정책 매핑)
인증서 정책 매핑 확장필드는 인증서비스 영역간의 상호 인증 시 상대방 인증서비스 영역의 인증서 정책을 받아들이고자 하는 경우에 사용됩니다. 이 확장필드는 상호인증용 인증서에 대해서 선택적으로 사용될 수 있으며 모든 응용프로그램은 이 확장필드를 처리할 수 있어야 합니다. non-critical로 설정.
 
* Subject Alternative Name (소유자 대체 명칭)
소유자 대체 명칭 확장필드는 소유자의 추가적인 명칭을 나타내며 인증서비스 영역 내에서 사용되는 고유한 식별정보를 나타낼 수 있습니다. 소유자의 실명은 한글로 표현되어야 하며 UTF8 인코딩하여 저장되어야 하고, 소유자의 고유정보는 선택적으로 저장할 수 있으며 전자적으로 가공되어 저장됩니다. 소유자 고유정보는 실명과 고유 식별정보로 이루어집니다. 모든 인증서에 이 확장필드가 포함되어야 하며 응용 프로그램은 이를 처리할 수 있어야 합니다. non-critical로 설정.
 
* Issuer Alternative Name (발급자 대체 명칭)
발급자 대체 명칭 확장필드는 인증기관의 추가적인 명칭을 나타내며 인증서비스 영역 내에서 사용되는 고유한 식별정보를 나타낼 수 있습니다. 인증기관의 고유정보를 나타내고자 하는 경우에는 소유자 대체 명칭에서 정의한 형식을 사용합니다. 인증기관은 이 확장필드를 선택적으로 생성할 수 있으며 모든 응용 프로그램은 이를 처리할 수 있어야 합니다. non-critical로 설정.
 
* Subject Directory Attributes (소유자 디렉토리 정보)
소유자 디렉토리 정보 확장필드는 소유자에 대한 추가적인 정보를 나타내며 해당 정보는 디렉토리의 엔트리 속성에 포함되어 나타날 수 있고, 사용 시에는 non-critical로 설정.
 
* Basic Constraints (기본 제한)
기본 제한 확장필드는 사용자가 인증기관의 역할을 수행하는 것을 방지하며 이를 위하여 인증기관의 여부 및 인증경로의 길이를 제한합니다. 모든 응용프로그램은 이 확장필드를처리할 수 있어야 하고 critcal로 설정합니다. 이 확장필드는 인증 기관용 인증서에만 포함되며 사용자용 인증서에는 포함될 수 없습니다.
* Name Constraints (명칭 제한)
명칭 제한 확장필드는 소유자 필드 및 소유자 대체 명칭 확장필드에서 사용되는 명칭의 범위를 제한합니다. 명칭 제한은 계층적인 구조를 가지는 명칭에 대해서만 반영되며 소유자 대체 명칭에서 정의한 소유자 고유정보 관련 명칭 등에는 적용되지 않습니다. 사용자 인증세에는 포함되지 않아야 하고 인증기관이 선택적으로 생성할 수 있으며 모든 응용프로그램은 처리할 수 있어야 합니다. critical로 설정.
 
* Policy Constraints (정책 제한)
정책 제한 확장필드는 인증서 정책 검사의 요구 및 인증서 정책 매핑에 대한 금지 등에 대한 정보를 나타냅니다. 이 확장필드는 인증기관의 인증서에 대해서만 포함되며 인증기관이 선택적으로 생성할 수 있고, 모든 응용프로그램은 이 확장필드를 처리할 수 있어야 하며 critical로 설정.
 
* Extended Key Usage (확장 키 사용목적)
확장 키 사용목적 확장필드는 키 사용목적 확장필드에서 나타낼 수 있는 것 이외의 공개키 사용목적을 명시하며 각각의 사용목적에 대한 OID로 나타낸다. 인증기관은 선택적으로 이 확장필드를 생성할 수 있으며 시점확인용 인증서에 대해서는 반드시 포함하여야 합니다.
시점확인용에 대한 확장 키 사용목적 OID
id-kp-timeStamping OBJECT IDENTIFIER ::= { 1 3 6 1 5 5 7 3 8 }
모든 응용프로그램은 이 확장필드를 처리할 수 있어야 하고, critical 또는 non-critical로 설정될 수 있으며 특히 시점확인용 인증서에 대해서는 critical로 설정되어야 한다.
 
* CRL Distribution Points (인증서 효력정지 및 폐지 목록 분배점)
인증서 효력정지 및 폐지 목록 분배점 확장필드는 인증서의 상태정보를 확인하는 방법으로 인증서 효력정지 및 폐지 목록을 사용하는 경우에 이를 획득할 수 있는 위치 정보를 나타냅니다. 적어도 하나의 인증서 효력정지 및 폐지 목록 분배점 위치 정보를 포함하여야 하고 모든 인증서에 포함되어야 합니다. 인증기관 및 응용 프로그램은 이 확장필드를 생성, 처리할 수 있어야 합니다. non-critical로 설정.
 
* Authority Information Access (발급자 정보 접근)
발급자 정보 접근 확장필드는 인증서를 발급한 인증기관에 대한 정보를 획득하고자 하는 경우에 사용되며 인증기관 정보에 접근하는 방법 및 위치정보 등을 포함합니다. 인증서 효력정지 및 폐지 목록 분배점 위치정보에 대해서는 인증서 효력정지 및 폐지 목록 확장필드의 값을 먼저 활용하고 이를 이용하여 획득이 어려운 경우에는 발급자 정보 접근 확장필드의 값을 활용합니다. 이 확장필드는 모든 인증서에 사용될 수 있으며 인증기관 및 응용 프로그램은 선택적으로 생성, 처리할 수 있습니다. non-critical로 설정.

반응형

댓글