PKI/X509 Profile

[X.509] μΈμ¦μ„œ μ •μ±… (Ceritifcate Policies) ν™•μž₯ ν•„λ“œλž€?

JayKimπŸ™‚ 2023. 8. 16. 11:01

μΈμ¦μ„œ μ •μ±… (Certificate Policies ) μš©λ„

μΈμ¦μ„œ 정책은 X.509 μΈμ¦μ„œμ˜ ν™•μž₯ ν•„λ“œμ΄λ‹€.
이 ν•„λ“œλŠ” μΈμ¦μ„œλ₯Ό λ°œκΈ‰ν•˜λŠ” CAμ—μ„œ ν•΄λ‹Ή λ°œκΈ‰λœ μΈμ¦μ„œ 정책을 λ‚˜νƒ€λ‚΄λŠ” 것이닀.
즉 ν•œλ§ˆλ””λ‘œ ν•΄λ‹Ή μΈμ¦μ„œμ˜ μš©λ„λ₯Ό μ•Œλ € μ£ΌλŠ” ν™•μž₯ ν•„λ“œ 이닀.

μΈμ¦μ„œ μ •μ±… 예제

μ•„λž˜ 그림은 SSL μΈμ¦μ„œμ—μ„œ μΈμ¦μ„œ μ •μ±… ν•„λ“œμ— λŒ€ν•œ μ˜ˆμ œμ΄λ‹€.

ν•΄λ‹Ή κ·Έλ¦Όμ—μ„œ 처럼 μΈμ¦μ„œ μ •μ±… OID 정보와 CPS ( Certificate Practice Statement ) 정보가 λ‚˜μ˜¨λ‹€.
μ—¬κΈ°μ„œ CPS λŠ” URI ν˜•μ‹μ˜ 정보이닀.

ν•΄λ‹Ή CPS μ •λ³΄μ˜ URI μ£Όμ†Œλ₯Ό μ°Έμ‘° ν•˜λ©΄ ν•΄λ‹Ή μΈμ¦μ„œ μš©λ„μ— λŒ€ν•œ λ‚΄μš©μ„ 확인 ν•  수 μžˆλ‹€.

그리고 μΈμ¦μ„œ μ •μ±… μ •λ³΄μ—λŠ” User Notice 정보도 쑴재 ν•˜λŠ”λ°
이 μ •λ³΄λŠ” μ‹ λ’° λ‹Ήμ‚¬μžμ—κ²Œ μΈμ¦μ„œκ°€ μ‚¬μš© λ λ•Œ ν‘œμ‹œλ₯Ό μœ„ν•œ ν•„λ“œ 이닀.

μΈμ¦μ„œ μ •μ±… ASN.1

   id-ce-certificatePolicies OBJECT IDENTIFIER ::=  { id-ce 32 }

   anyPolicy OBJECT IDENTIFIER ::= { id-ce-certificatePolicies 0 }

   certificatePolicies ::= SEQUENCE SIZE (1..MAX) OF PolicyInformation

   PolicyInformation ::= SEQUENCE {
        policyIdentifier   CertPolicyId,
        policyQualifiers   SEQUENCE SIZE (1..MAX) OF
                                PolicyQualifierInfo OPTIONAL }

   CertPolicyId ::= OBJECT IDENTIFIER

   PolicyQualifierInfo ::= SEQUENCE {
        policyQualifierId  PolicyQualifierId,
        qualifier          ANY DEFINED BY policyQualifierId }

   -- policyQualifierIds for Internet policy qualifiers

   id-qt          OBJECT IDENTIFIER ::=  { id-pkix 2 }
   id-qt-cps      OBJECT IDENTIFIER ::=  { id-qt 1 }
   id-qt-unotice  OBJECT IDENTIFIER ::=  { id-qt 2 }

   PolicyQualifierId ::= OBJECT IDENTIFIER ( id-qt-cps | id-qt-unotice )

μΈμ¦μ„œ μ •μ±…μ˜ ASN.1 을 μ°Έκ³  ν•˜κ²Œ 되면 μΈμ¦μ„œ 정책은 SEQUENCE λ‘œμ„œ μ—¬λŸ¬κ°œλ₯Ό κ°€μ§ˆ 수 μžˆλ‹€.
각각의 μΈμ¦μ„œ μ •μ±…μ—μ„œ μ£Όμš”ν•œ 값은 μ•„λž˜ 3가지 정보이닀.

  • μ •μ±… ID ( id-qt ) : ν•΄λ‹Ή μΈμ¦μ„œ 정책에 λŒ€ν•œ 고유 OID
  • CPS ( id-qt-cps) : μ •μ±… 정보λ₯Ό μ„€λͺ…ν•œ μ°Έμ‘° URI μ£Όμ†Œ
  • User Notice ( id-qt-unotice ) : μΈμ¦μ„œ 정책에 λŒ€ν•œ κ°„λž΅ν•œ ν‘œμ‹œ 메세지

마무리

일반적으둜 μ‚¬μš©ν•˜λŠ” λ‹€μ–‘ν•œ μΈμ¦μ„œκ°€ 쑴재 ν•œλ‹€.
예λ₯Ό λ“€λ©΄ SSL μΈμ¦μ„œ λ˜λŠ” 곡동 μΈμ¦μ„œ 그리고 SMIME λ“± μ΄λ ‡κ²Œ λ‹€μ–‘ν•œ μΈμ¦μ„œμ— λŒ€ν•œ μš©λ„μ— λŒ€ν•΄μ„œ
μ‹€μ œλ‘œ OID μ •λ³΄λ§ŒμœΌλ‘œλŠ” μΆ©λΆ„νžˆ λ‚΄μš©μ„ νŒŒμ•…ν•˜κΈ° μ–΄λ ΅λ‹€.
κ·Έλž˜μ„œ ν•΄λ‹Ή μΈμ¦μ„œ μ •μ±…ν•„λ“œμ— CPS 정보와 User Notice 정보λ₯Ό μ°Έμ‘° ν•˜μ—¬ 쒀더 μžμ„Ένžˆ μΈμ¦μ„œμ˜ μ‚¬μš© μš©λ„λ₯Ό νŒŒμ•… ν•  수 μžˆλ‹€.