Je me demande si les fichiers PEM contiennent à la fois des clés privées et publiques? Que signifie "PEM" ?
Réponses
Trop de publicités?Un fichier PEM peut contenir à peu près n'importe quoi, y compris une clé publique, une clé privée, ou les deux, car un fichier PEM n'est pas une norme. En effet, PEM signifie simplement que le fichier contient un morceau de données encodées en base64. Il est appelé fichier PEM par allusion aux anciennes normes de messagerie Privacy-Enhanced Mail qui ont précédé le S/MIME en tant que norme de sécurité des e-mails. Ces normes spécifiaient le format de différentes clés et messages dans un format base64 particulier. Voir RFC 1421 par exemple.
Typiquement, un fichier PEM contient une clé ou un certificat encodé en base64 avec des lignes d'en-tête et de pied de page de la forme -----BEGIN -----
et -----END ----
. Au fil du temps, de nombreuses possibilités ont évolué pour , y compris des clés privées, des clés publiques, des certificats X509, des données PKCS7, des fichiers contenant plusieurs certificats, des fichiers contenant à la fois la clé privée et le certificat X509, des demandes de signature de certificat PKCS#10, ...
RFC 7468 a été rédigé pour documenter ce format de facto.
Vous pouvez décoder votre certificat PEM formaté x509 certificate avec la commande suivante :
openssl x509 -in cert.pem -text -noout
Le certificat PEM contient uniquement la clé publique ou la clé privée ou les deux.
Pour l'exemple suivant :
-----BEGIN CERTIFICATE-----
MIICLDCCAdKgAwIBAgIBADAKBggqhkjOPQQDAjB9MQswCQYDVQQGEwJCRTEPMA0G
A1UEChMGR251VExTMSUwIwYDVQQLExxHbnVUTFMgY2VydGlmaWNhdGUgYXV0aG9y
aXR5MQ8wDQYDVQQIEwZMZXV2ZW4xJTAjBgNVBAMTHEdudVRMUyBjZXJ0aWZpY2F0
ZSBhdXRob3JpdHkwHhcNMTEwNTIzMjAzODIxWhcNMTIxMjIyMDc0MTUxWjB9MQsw
CQYDVQQGEwJCRTEPMA0GA1UEChMGR251VExTMSUwIwYDVQQLExxHbnVUTFMgY2Vy
dGlmaWNhdGUgYXV0aG9yaXR5MQ8wDQYDVQQIEwZMZXV2ZW4xJTAjBgNVBAMTHEdu
dVRMUyBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkwWTATBgcqhkjOPQIBBggqhkjOPQMB
BwNCAARS2I0jiuNn14Y2sSALCX3IybqiIJUvxUpj+oNfzngvj/Niyv2394BWnW4X
uQ4RTEiywK87WRcWMGgJB5kX/t2no0MwQTAPBgNVHRMBAf8EBTADAQH/MA8GA1Ud
DwEB/wQFAwMHBgAwHQYDVR0OBBYEFPC0gf6YEr+1KLlkQAPLzB9mTigDMAoGCCqG
SM49BAMCA0gAMEUCIDGuwD1KPyG+hRf88MeyMQcqOFZD0TbVleF+UsAGQ4enAiEA
l4wOuDwKQa+upc8GftXE2C//4mKANBC6It01gUaTIpo=
-----END CERTIFICATE-----
vous obtiendrez :
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 0 (0x0)
Signature Algorithm: ecdsa-with-SHA256
Issuer: C = BE, O = GnuTLS, OU = GnuTLS certificate authority, ST = Leuven, CN = GnuTLS certificate authority
Validity
Not Before: May 23 20:38:21 2011 GMT
Not After : Dec 22 07:41:51 2012 GMT
Subject: C = BE, O = GnuTLS, OU = GnuTLS certificate authority, ST = Leuven, CN = GnuTLS certificate authority
Subject Public Key Info:
Public Key Algorithm: id-ecPublicKey
Public-Key: (256 bit)
pub:
04:52:d8:8d:23:8a:e3:67:d7:86:36:b1:20:0b:09:
7d:c8:c9:ba:a2:20:95:2f:c5:4a:63:fa:83:5f:ce:
78:2f:8f:f3:62:ca:fd:b7:f7:80:56:9d:6e:17:b9:
0e:11:4c:48:b2:c0:af:3b:59:17:16:30:68:09:07:
99:17:fe:dd:a7
ASN1 OID: prime256v1
NIST CURVE: P-256
X509v3 extensions:
X509v3 Basic Constraints: critical
CA:TRUE
X509v3 Key Usage: critical
Certificate Sign, CRL Sign
X509v3 Subject Key Identifier:
F0:B4:81:FE:98:12:BF:B5:28:B9:64:40:03:CB:CC:1F:66:4E:28:03
Signature Algorithm: ecdsa-with-SHA256
30:45:02:20:31:ae:c0:3d:4a:3f:21:be:85:17:fc:f0:c7:b2:
31:07:2a:38:56:43:d1:36:d5:95:e1:7e:52:c0:06:43:87:a7:
02:21:00:97:8c:0e:b8:3c:0a:41:af:ae:a5:cf:06:7e:d5:c4:
d8:2f:ff:e2:62:80:34:10:ba:22:dd:35:81:46:93:22:9a
Pour comprendre la différence entre les sections Public Key Algorithm
et Signature Algorithm
, lisez ceci (les deux sont publiques).
1 votes
Liés: Convertir la clé pem au format ssh-rsa