WEB & WAS

PKCS 헤더

날았다 고양이 2019. 11. 24. 14:20
반응형

개요

공개 키 암호 표준(Public-Key Cryptography Standard, PKCS)에서 PKCS#1,PKCS#8의 PEM으로 인코딩된 개인키의 헤더부분이 어떻게 정의되어 있고, PKCS#1, PKCS#8 간의 서로 변환하는 방법 확인

 

인코딩 방식은 PEM, DER 방식으로 나뉜다.

PEM : ASCII 형식

DER : 바이너리 형식

 

1. 암호화된 PKCS#1 헤더

shell> openssl genrsa -des3 -out encrypt.pk1

encrypt.pk1 헤더

-----BEGIN RSA PRIVATE KEY----- 
Proc-Type: 4,ENCRYPTED 
DEK-Info: DES-EDE3-CBC,CB76AA39DAD09CA4 
MIIEpAIBAAKCAQEAyaNerEEPuAeCHViogtW2PH8jUer9/wky2OqgWEGHAKjNbiA

<중략>
UNN0arz68uhmDaUfKRIqTAZ6ZHaCr/pOwVNNXgrGixJOjv3f/Ekkag8n8dDE2UHl 
-----END RSA PRIVATE KEY-----

2. 암호화가 해제된 PKCS#1 헤더

shell> openssl rsa -in encrypt.pk1 -out decrypt.pk1

decrypt.pk1 헤더

-----BEGIN RSA PRIVATE KEY----- 
MIIEpAIBAAKCAQEAyaNerEEPuAeCHViogtW2PH8jUer9/wky2OqgWEGHAKjNbiAZ

<중략>
12jD94M2vLoy9tSgKSwf1OibrqoifKvcxcAmgUOCtOQxoVQhDnNb5A== 
-----END RSA PRIVATE KEY----- 

3. 암호화된 PKCS#8 헤더

shell> openssl pkcs8 -topk8 -inform PEM -outform PEM -in encrypt.pk1 -out encrypt.pk8

encrypt.pk8 헤더

-----BEGIN ENCRYPTED PRIVATE KEY----- 
MIIE6TAbBgkqhkiG9w0BBQMwDgQItjys/xRYb5kCAggABIIEyAPb3mMWLBKBejkV
<중략>
dg0g+ttxLr0qpOS7sA== 
-----END ENCRYPTED PRIVATE KEY----- 

4. 암호화가 해제된 PKCS#8 헤더

shell> openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in encrypt.pk1 -out decrypt.pk8

decrypt.pk8 헤더

-----BEGIN PRIVATE KEY----- 
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDJo16sQQ+4B4Id

<중략>
q9zFwCaBQ4K05DGhVCEOc1vk 
-----END PRIVATE KEY----- 

 

반응형