PKI/X509 Profile
[X.509] μΈμ¦μ ν€ μ©λ(KeyUsage) μ€λͺ
JayKimπ
2023. 6. 28. 09:00
X.509 μΈμ¦μ νλ μ€μ KeyUsage λΌλ νλκ° μλ€.
μ΄ νλλ ν΄λΉ μΈμ¦μμ μλ λΉλμΉν€μ μ¬μ© λͺ©μ μ μ μν νλμ΄λ€.
μλ κ·Έλ¦Όμ RootCA μΈμ¦μμ KeyUsage νλλ₯Ό λ³Ό μ μλ€.
μ΄ μΈμ¦μμ keyUsage λ΄μ©μ keyCertSign, cRLSign μΌλ‘ λμ€λλ° μΈμ¦μ μλͺ λ° CRL μλͺ μ©μ΄λΌλ λ»μ΄λ€.
ν΄λΉ νλμ ASN.1 νμμ λ€μκ³Ό κ°λ€.
id-ce-keyUsage OBJECT IDENTIFIER ::= { id-ce 15 }
KeyUsage ::= BIT STRING {
digitalSignature (0),
nonRepudiation (1),
keyEncipherment (2),
dataEncipherment (3),
keyAgreement (4),
keyCertSign (5),
cRLSign (6),
encipherOnly (7),
decipherOnly (8) }
ASN.1 νμμμ μ μ μλ―μ΄ KeyUsageμ μ©λλ 9κ°μ§κ° μ‘΄μ¬νλ€.
κ·ΈλΌ κ°κ°μ μ©λμ λν΄μ μμ보μ.
digitalSignature
- 보μ μλΉμ€λ₯Ό μν μ μ μλͺ μ© μ©λλ₯Ό λνλ΄λ€. (μΈμ¦μ μλͺ λλ CRL μλͺ κ³Όλ λ€λ₯Έκ²μ΄λ€)
- μΌλ° EndEntity κ° λ€μνκ² μ¬μ©νλ μ μ μλͺ μ©μμ λνλ΄λ€.
nonRepudiation
- μ μμλͺ μ ν λ μλͺ μκ° κ·Έ μλͺ κ±°λ λ΄μμ λΆμΈνμ§ λͺ»νλ€λκ²μ μλ―Ένλ€.
- μ¬μ€ λΆμΈ λ°©μ§ κ²½μ° λΆμμ μμ§κ° μμ κ²½μ° μ λ’°λ 3μμ μ§μ μ¬λΆκ° νμν μ©λμ΄λ€.
keyEncipherment
- ν€λ₯Ό μνΈν νμ¬ μ μ‘ ν μ μλ κΈ°λ₯μ λ§νλ€.
- λ³΄ν΅ RSA 곡κ°ν€ μνΈνλ₯Ό ν λ μ¬μ©νλ€.
dataEncipherment
- μνΈν ν€κ° μλ μ¬μ©μμ λ°μ΄νλ₯Ό μνΈννλλ° μ¬μ©λ¨μ μλ―Ένλ€.
keyAgreement
- μ΄ μ©λλ μμͺ½μμ ν€ λμλ₯Ό μ»κΈ° μν΄ μ¬μ©λλ μ©λμ΄λ€.
- λ³΄ν΅ DH μκ³ λ¦¬μ¦μ΄λ ECDH μκ³ λ¦¬μ¦μ μ¬μ© ν λ μ¬μ©λλ€.
keyCertSign
- μΈμ¦μμ λν μλͺ μ©λμμ λνλ΄λ€.
- μ΄ μ©λλ CAμΈμ¦μμμ μ¬μ©λλ μ©λμ΄λ€.
cRLSign
- CRLμ λν μλͺ μ©λμμ λνλΈλ€.
- μ΄ μ©λλ CA μΈμ¦μμμ μ¬μ©λλ μ©λμ΄λ€.
encipherOnly
- RSAμκ³ λ¦¬μ¦μμ μ¬μ©λλ©° 곡κ°ν€κ° μνΈνμ©μΌλ‘λ§ μ¬μ©λ¨μ μλ―Ένλ€.
- keyAgreement μ κ°μ΄ μ£Όλ‘ μ¬μ© λλ€.
- ν€ λμλ₯Ό μν μ λ°μ΄νλ₯Ό μνΈν νλ μ©λμ΄λ€.
decipherOnly
- RSAμκ³ λ¦¬μ¦μμ μ¬μ©λλ©° κ°μΈν€κ° 볡νΈνμ©μΌλ‘λ§ μ¬μ©λ¨μ μλ―Ένλ€.
- keyAgreement μ κ°μ΄ μ£Όλ‘ μ¬μ© λλ€.
- ν€ λμλ₯Ό μν μ λ°μ΄νλ₯Ό 볡νΈν νλ μ©λμ΄λ€.
μ΄μ ν€ μ©λμ λν΄μ μμ 보μλ€.
λ³΄ν΅ keyUage νλλ ν¬λ¦¬ν°μ»¬ νλμ΄μ΄μ νμ μ©λμ λ§κ² μ€μ μ΄ λμ΄μΌνλ€.
λ°μν