Exemples de certificats
Quelques exemples de certificats X.509.
Le premier est simplement l’apparence d’un certificat en base-64. Le
formats DER et PKCS#7 ne sont pas très lisibles...
En bas de page, on peut voir à quoi ressemble un certificat de l’intérieur.
Certificat en base-64 :
-----BEGIN CERTIFICATE-----
MIICejCCAeOgAwIBAgIEN6WQeDANBgkqhkiG9w0BAzUJk
QUFADAbMQswCQYDVQQGEwJGUjEMMAoGA1UEChMDQ1BFMB
4XDTk5MDgwMjEyMTA0OFoXDTAyMDgwMjEyNDA0OFowMjE
LMAkGA1UEBhMCRlIxDDAKBgNVBAoTA0NQRTEVMBMGA1UE
AxMMWXZlcyBMZSBSb3V4MIGdMA0GCSqGSIb3DQEBAQUAA
4GLADCBhwKBgQDWIb6MHRZTc1zUJKPZdBVnintsVc6/+2
ztftItA/+9HZVC4ybwSnn/73vj3MgXsckH7c8dWTDNxBj
Zl/SjwrCc7YqZzvZe738Pr0HhzZbctDS97uVKqZsLgbFM
sU1amiQqjY4sKJ2yS7xJ4tqhFNeaSqvXmaFishPrIVFUM
wu3hwIBA6OBtTCBsjA9BgNVHR8ENjA0MDKgMKAupCwwKj
ELMAkGA1UEBhMCRlIxDDAKBgNVBAoTA0NQRTENMAsGA1U
EAxMEQ1JMMTALBgNVHQ8EBAMCBSAwHwYDVR0jBBgwFoAU
1DNiduNeQmx9wIv7uq14NWiSXhIwHQYDVR0OBBYEFFSrv
hL0dWDssFdFPPCSi8jgVucZMAkGA1UdEwQCMAAwGQYJKo
ZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZIhvcNAQE
FBQADgYEAVpAJ/SBJj3Lq3vyCpndwvZeNQLT8KT9Hyn5c
B1euuMX2aNLe9E1UPUHtPVPdACugNr4f1+AH94X3oIam7
22iuV0prGukNGXrAKMUE2tTnCJaY+L0J28c5VYBNqg4gW
HbjthiIu3ae+2MEWw=
-----END CERTIFICATE-----
Comme le codage en base-64 n’est toujours pas très explicite, le voici en langage naturel. Pour intepreter, après décodage base-64, le codage DER et ASN.1, on peut utiliser les fonctionnalités
des navigateurs, ou bien les fonctions de n’importe quelle API de crypto/PKI
digne de ce nom (SSLeay propose par exemple ce genre de routines).
J’ai modifié quelques champs.
Le même certificat en langage naturel :
Version :
V3
Numéro de série :
37A5 9078
Algorithme de signature :
sha1RSA
Emetteur :
O = cryptosec
C = fr
Valide à partir du :
lundi 2 août 1999 13:10:48
Valide jusqu’au :
vendredi 2 août 2002 13:40:48
Objet :
CN = leredacteur
O = cryptosec
C = fr
Clé publique (RSA 1024 bits en hexa) :
3081 8702 8181 00D6 21BE 8C1D 1653 735C D424 A3D9 7415 678A 7B6C 55CE
BFFB 6CED 7ED2 2D03 FFBD 1D95 42E3 26F0 4A79 FFEF 7BE3 DCC8 17B1 C907 EDCF
1D59 30CD C418 D997 F4A3 C2B0 9CED 8A99 CEF6 5EEF 7F0F AF41 E1CD 96DC B434
BDEE E54A A99B 0B81 B14C B14D 5A9A 242A 8D8E 2C28 9DB2 4BBC 49E2 DAA1 14D7
9A4A ABD7 99A1 62B2 13EB 2151 5433 0BB7 8702 0103
Point de distribution de la CRL (extension) :
[1]Point de distribution de la liste de révocation de certificats
Nom du point de distribution :
Nom complet
Adresse d’annuaire :
CN=CRL-1
O=cryptosec
C=fr
Utilisation de la clé (extension) :
Chiffrement de la clé(20)
Identificateur de la clé de l’autorité (extension) :
ID de la clé=D433 6276 E35E 426C 7DC0 8BFB BAAD 7835 6892 5E12
Identificateur de la clé du sujet (extension) :
54AB BE12 F475 60EC B057 453C F092 8BC8 E056 E719
Contrainte de base (extension) :
Type d’objet=Entité finale
Contrainte de longueur de chemin d’accès=Aucun(e)
1.2.840.113533.7.65.0 (extension)
30 0A 1B 04 56 34 2E 30 0...V4.0
03 02 04 90...
Algorithme de hachage :
sha1
Signature :
DACA 58CB 6D01 E968 1526 906E A2BA B947 6D4F DAF5
Bon, maintenant qu’on a vu un certificat client, on va voir à
quoi ressemble un certificat d’AC. Le certificat d’AC doit être
présent dans l’application cliente (le navigateur par exemple) parce
que c’est la clé publique de l’AC qui y est contenue qui va servir
à vérifier les signatures des certificats émis par cette
autorité de certification.
Dans ce cas c’est un certificat auto-émis par l’AC. Il y a
quelques champs en moins, et le champs le plus intéressant à regarder
est "utilisation de la clé".
Le certificat de l’autorité de certification qui
à émis le précédent certificat :
Version :
V3
Numéro de série :
2712 F125 590F C2BF 4124 4841 7E3C 0323
Algorithme de signature :
sha1RSA
Emetteur :
CN = cryptosec
O = cryptosec
C = fr
Valide à partir du :
lundi 20 décembre 1999 17:15:51
Valide jusqu’au :
jeudi 20 décembre 2001 17:25:24
Objet :
CN = cryptosec
O = cryptosec
C = fr
Clé publique (RSA 512 bits en hexa) :
3048 0241 00DA D767 0AC6 D92F 87D2 A03D 641A 63F6 9AB7 08F1 2680 64D0
758F 2A32 02B1 6F45 5A29 B5EB E4C0 5252 BDEE D5F4 AF2A A885 F356 EC7B ED3D
39C6 DACA 1458 15AE 467E C702 0301 0001
Point de distribution de la CRL (extension) :
[1]Point de distribution de la liste de révocation de certificats
Nom du point de distribution :
Nom complet :
URL=http://serveur/CertEnroll/cryptosec.crl
[2]Point de distribution de la liste de révocation de certificats
Nom du point de distribution :
Nom complet :
URL=file ://serveurCertEnrollcryptosec.crl
Utilisation de la clé (extension) :
Signature numérique , Non-répudiation , Signature du
certificat , Signature de la liste de révocation de certificats
hors connexion, Signature de la liste de révocation de certificats(C6)
Identificateur de la clé du sujet (extension) :
5033 490A 8643 A83E C1E5 CFDB E08B 7274 99AA D62E
Version de l’autorité de certification (extension) :
V6.0
Contrainte de base (extension critique, pour la co-certification) :
Type d’objet=Autorité de certification
Contrainte de longueur de chemin d’accès=Aucun(e)
Algorithme de hachage :
sha1
Signature :
231F F1F7 63A8 EFE7 5972 7EA2 60A4 BC67 568D C5FB
Le coeur d’un certificat :
Le certificat suivant ThawtePersPremCA.cer est un certificat racine de l’AC Thawte que l’on trouve dans la plupart des navigateurs.
Après l’avoir fait passer au travers de dumpasn1, on peu en voir ici sa structure ASN.1
29 janvier 2003
Partager sur Twitter | Partager sur LinkedIn