Vous êtes sur la page 1sur 45

Cryptographie

A.ABBAS
1
Février 2016
Introduction
• Le développement des transactions électroniques dans
un nombre croissant de domaines économiques pose
de manière de plus en plus critique le problème de la
sécurité de telles transactions, notamment vis-à-vis
des questions de confidentialité, d’authentification et
de certification qui s’y rattachent.
• Pour tous ces aspects, la cryptographie est appelée à
devenir une technique de plus en plus fondamentale
pour la protection des informations possédées et/ou
échangées par des individus ou des organisations.

2
Objectifs

Maximus Lucilla

Message Message

Assurer : Confidentialité, Intégrité, Authentification, Non-Répudiation


3
Génération des clés

Maximus Lucilla

Message Message

Kpub1 Maxim Kpub2 Lucilla


Kpriv1 Maxim Kpriv2 Lucilla
Kpub2 Lucilla Kpub1 Maximus
4
Génération des clés avec OPENSSL

Générer la clé privée


Prérequis :
$ mkdir REP ; chmod 700 REP ; cd REP
$ # eventuellement changer la valeur du umask 077
$ openssl genrsa –out maximus.prive 2048
$ # rétablir la valeur du umask initial 022 par exemple
$ # appliquer une sécurité en terme d’autorisations chmod 400
# Enlever l’écriture pour le propriétaire afin d’éviter tout risque de
modification

Déduire la clé publique


$ openssl rsa –in maximus.prive –pubout –out maximus.public

5
Kpub1 Maxim
Kpriv1 Maxim Processus-Côté Maximus
Kpub2 Lucilla
Maximus
Lucilla

file.txt AES file.aes

k.session Paquet à envoyer

file.aes
lucilla.pub RSA k.crypt k.crypt
file.sign

SHA file.sha file.sha

maximus.priv RSA file.sign


6
Kpub1 Maxim
Kpriv1 Maxim Processus-Côté Maximus
Kpub2 Lucilla
Maximus $ echo –n ‘’p@ssw0rd’’ >> k.session

$ openssl enc –in file.txt –out file.aes –e –aes256 –k k.session

file.txt AES file.aes

k.session

lucilla.pub RSA k.crypt

SHA file.sha

maximus.priv RSA file.sign


7
Kpub1 Maxim
Kpriv1 Maxim Processus-Côté Maximus
Kpub2 Lucilla
Maximus

$ openssl rsautl –pubin –encrypt –in k.session –inkey lucilla.pub –out k.crypt

file.txt AES file.aes

k.session

lucilla.pub RSA k.crypt

SHA file.sha

maximus.priv RSA file.sign


8
Kpub1 Maxim
Kpriv1 Maxim Processus-Côté Maximus
Kpub2 Lucilla
Maximus

file.txt

$ openssl dgst -sha512 -out file.sha file.txt

SHA file.sha

9
Kpub1 Maxim
Kpriv1 Maxim Processus-Côté Maximus
Kpub2 Lucilla
Maximus

$ openssl rsautl -sign -in file.sha -inkey maximus.priv –out file.sign

file.sha

maximus.priv RSA file.sign


10
Processus-Côté Lucilla
Premier niveau de contrôle
$openssl rsautl -verify -in file.sign -pubin -inkey maximus.public -out file.empreinte Lucilla
$diff file.empreinte file.sha
Oubien
$ cmp file.empreinte file.sha
Paquet reçu
Rejeter le paquet.
Perte d’intégrité.
file.aes
k.crypt
maximus.public file.sign
NON
file.sha

=? file.empreinte RSA

GOTO STEP 2
11
Processus-Côté Lucilla
Lucilla

file.aes
k.crypt
file.sign
k.session RSA file.sha

lucilla.priv Paquet reçu

$openssl rsautl –decrypt –in k.crypt –inkey lucilla.priv –out k.session

12
Processus-Côté Lucilla
Lucilla

file.aes
k.crypt
file.sign
AES k.session file.sha

Paquet reçu
file.txt

$openssl enc –in file.aes –out file.txt –d -aes –k k.session

13
DIVERSES MANIPULATIONS

14
CHIFFREMENT FORT ET FAIBLE
• Openssl fournit une liste des chiffres (combinaison
en terme de système pour l'authentification,
l'intégrité et la confidentialité) qu'il considère
comme fort ou faible à l'aide des commandes :
$ openssl ciphers -v 'HIGH‘
$ openssl ciphers -v 'LOW'

Todo : Analyzer les 2 ensembles et dites ce qui


caractérise un chiffre faible pour openssl.
15
Codage et décodage : base64
• On code une chaîne de caractères « Abacdef » que
l'on veut coder en base64 que l'on stocke dans un
fichier.
$ echo " Abacdef " | openssl base64 > test.b64
puis redécoder
$ openssl base64 -d < test.b64

TP : Vous devez être capable d'expliquer ce qu'est le


base64.
16
Résumé - hachage
• On veut calculer le md5 d'une chaîne de caractères
$ echo " Abacdef " | openssl md5
• Il est aussi possible d'utiliser la commande md5sum
$ echo "Abacdef" | md5sum
Réflexions :
• Combien de caractères diffèrent en sortie si vous changez un
caractère en entrée ?
• Vous devez être capable d'expliquer la différence entre le
base64 et le md5?
• Peut-on remonter au message initial depuis le base64 et depuis
le md5?

17
Résumé - hachage
• L'appliquer à /etc/passwd
$ openssl md5 /etc/passwd
• On peut aussi utiliser sha
$ openssl sha /etc/passwd
Réflexion :
• Combien de bits utilise md5 et combien de bits utilise
sha dans les cas précédents? (utilisez la commande wc
pour compter le nombre de caractères puis trouvez le
nombre de bits suivant le formatage des données – faire
un man md5 ou man sha)
18
Chiffrement
Crypter un fichier avec cast5 en CBC (Cypher
Block Chaining)
$ openssl cast5-cbc -in /etc/passwd -out passwd.cast5
On le décrypte dans le fichier passwd.restore
$ openssl cast5-cbc -d -in passwd.cast5 -out passwd.restore
Vérifions que le fichier est identique
$ diff /etc/passwd passwd.restore

19
AUTORITÉS DE CERTIFICATION

20
Générer certificat
Créer clé privé
$ openssl genrsa –des3 –out commerce.dz.key
2048
Créer la requête de certification
$ openssl req –new –key commerce.dz.key
–out commerce.dz.csr
Auto-signer le certificat
$ openssl x509 –req –days 365 –in
commerce.dz.csr –signkey
commerce.dz.key –out commerce.dz.cert
21
Création d’une autorité de certification

• Cette autorité de certification est la base de la


chaine de certification.
• Il s’agit d’un certificat x509 (auto signé) et
d’une arborescence de gestion des certificats.
• Le certificat racine doit être protégé par un
mot de passe et disposer d’une durée de
validité non nulle.

22
• La procédure de création d’une autorité de certification avec
OpenSSL est simplifiée par les scripts perl et bash « CA.XX » fournit
dans les pacquages d’OpenSSL.
• En fonction des distributions, vous les trouverez dans
« /usr/lib/ssl/misc/ », dans « /usr/local/ssl/misc/ », dans
« /etc/ssl/misc/ », ou dans « /etc/openssl/misc ».
• Les paramètres de création de l’autorité de certification sont
déclarées dans le script « CA.xx » et dans le fichier de
configuration de « openssl.cnf ».
• Par défaut, l’arborescence de l’autorité de certification est créée
sous « ./demoCA » mais cela peut être changé dans le fichier de
configuration et dans le script de création de l’autorité.

23
mafalda ssl # pwd
/etc/ssl
mafalda ssl # tree (oubien gvfs-tree)
.
|-- misc
| |-- CA.pl
| |-- CA.sh
| |-- c_hash
| |-- c_info
| |-- c_issuer
| `-- c_name
`-- openssl.cnf

1 directory, 7 files

24
• Par exemple pour créer une autorité de
certification basée sur un certificat ayant une
durée de validité de 10 ans dont la racine est
« /etc/ssl/CertificateAuthority », modifier les
variables   « CADAYS » et « CATOP » dans le
fichier du script « CA.pl » ou « CA.sh » ainsi
que la valeur de « dir » dans « openssl.cnf »
avant de lancer « /chemin/vers/CA.xx
-newca » :
25
mafalda ssl # /etc/ssl/misc/CA.pl -newca
CA certificate filename (or enter to create)

Making CA certificate ...


Generating a 1024 bit RSA private key
.............................................++++++
..........................++++++
writing new private key to '/etc/ssl/CertificateAuthority/private/cakey.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [FR]:FR
State or Province Name (full name) [Some-State]:Ile-De-France
Locality Name (eg, city) []:Paris
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Admin Linux
Organizational Unit Name (eg, section) []:Service Informatique
Common Name (eg, YOUR name) []:FHH
Email Address []:fhh@admin-linux.fr

Please enter the following 'extra' attributes


to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/ssl/openssl.cnf
Enter pass phrase for /etc/ssl/CertificateAuthority/private/cakey.pem:
Check that the request matches the signature
Signature ok
Certificate Details:
Serial Number:
fd:e4:e4:40:77:bc:b3:81
Validity
Not Before: Oct 13 11:23:24 2009 GMT
Not After : Oct 11 11:23:24 2019 GMT
Subject:
countryName = FR
stateOrProvinceName = Ile-De-France
organizationName = Admin Linux
organizationalUnitName = Service Informatique
commonName = FHH
emailAddress = fhh@admin-linux.fr
X509v3 extensions:
X509v3 Subject Key Identifier:
28:DB:B7:CE:1E:F7:3C:CB:63:7F:10:6D:61:A4:4B:16:AB:7A:B1:0D
X509v3 Authority Key Identifier:
keyid:28:DB:B7:CE:1E:F7:3C:CB:63:7F:10:6D:61:A4:4B:16:AB:7A:B1:0D
DirName:/C=FR/ST=Ile-De-France/O=Admin Linux/OU=Service Informatique/CN=FHH/emailAddress=fhh@admin-linux.fr
serial:FD:E4:E4:40:77:BC:B3:81

X509v3 Basic Constraints:


CA:TRUE
Certificate is to be certified until Oct 11 11:23:24 2019 GMT (3650 days)

Write out database with 1 new entries


Data Base Updated
26
Qui aura pour effet de créer l’arborescence suivante :

mafalda ssl # tree /etc/ssl/CertificateAuthority/


/etc/ssl/CertificateAuthority/
|-- cacert.pem
|-- careq.pem
|-- certs
|-- crl
|-- crlnumber
|-- index.txt
|-- index.txt.attr
|-- index.txt.old
|-- newcerts
| `-- FDE4E44077BCB381.pem
|-- private
| `-- cakey.pem
`-- serial

4 directories, 9 files

27
• Où :
• cacert.pem est la clé publique de votre autorité de
certification ;
• private/cakey.pem est la clé privée ;
• index.txt est le fichier d’index conservant l’association
certificat/propriétaire ;
• index.txt.attr est le fichier d’option des indexes ;
• serial est le numéro du prochain certificat créé ;
• certs est le répertoire des certificats signés et de leurs
hash associé.
28
Note sur le répertoire « certs »
• Afin de pouvoir vérifier une chaine de certification, on crée dans le répertoire « certs » un lien
symbolique pointant vers les certificats signés par la chaine de certification. Ce lien à pour nom «
hash.0 » où « hash » est le hachage du « DN » (Dir Name de la forme /C=FR/ST=Ile-De-
France/L=Paris/O=Admin Linux/OU=Service Informatique/CN=Marc
Dupond/emailAddress=marc.dupond@admin-linux.fr) du certificat.

• Le « hash » du certificat est retourné par :

• openssl x509 -hash -noout -in certif.{pem,crt}

• Dans l’exemple ci dessus nous obtenons :

• mafalda CertificateAuthority # openssl x509 -hash -noout -in cacert.pem


• 5a558f7f

• et créons donc le lien « /etc/ssl/CertificateAuthority/certs/5a558f7f.0 » pointant vers «


/etc/ssl/CertificateAuthority/cacert.pem »

29
Note sur les informations des certificats
• ATTENTION : Par défaut, la signature de plusieurs certificats créés avec EXACTEMENT LES MÊMES
PARAMÈTRES de sujet (countryName, stateOrProvinceName, organizationName, organizationalUnitName,
commonName, emailAddress) n’est pas autorisé !

• Pour des certificats machine, il est d’usage que le « commonName » désigne le nom de la machine
(souvent dans son entier nom.domaine) tandis que pour les utilisateurs ils désigne leurs « Prénom NOM ».

• Si toutefois vous devez impérativement créer deux certificats ayant le même sujet (même DN), passez la
valeur « unique_subject » à « no » dans le fichier « index.txt.attr » de votre autorité de certification.

• Sans cette modification, vous obtiendrez l’erreur suivante au moment de signer le certificat :

• Certificate is to be certified until Oct 21 15:36:37 2010 GMT (365 days)


• Sign the certificate? [y/n]:y

• failed to update database
• TXT_DB error number 2

30
Création d’un certificat
• Pour générer une clé SSL utilisable par un service tel qu’Apache ou autre, nous commençons générer la clé privée :

• mafalda ~ # openssl genrsa -out admin-linux.key 4096


• Generating RSA private key, 4096 bit long modulus
• ..................... . . . ...........++
• ..................... . . . .......................++
• e is 65537 (0x10001)

• Note : l’option « -des3 », « -aes128 », etc, lors de la génération de la clé privée permet de spécifier un mot de passe pour l’utilisation de la clé. Ce mot de passe sera demandé à chaque démarrage du service.

• A partir de cette clé, création de la demande de signature qui sera transmise à l’autorité de certification :

• mafalda ~ # openssl req -key admin-linux.key -new -out admin-linux.csr -days 365
• You are about to be asked to enter information that will be incorporated
• into your certificate request.
• What you are about to enter is what is called a Distinguished Name or a DN.
• There are quite a few fields but you can leave some blank
• For some fields there will be a default value,
• If you enter '.', the field will be left blank.
• -----
• Country Name (2 letter code) [FR]:
• State or Province Name (full name) [Some-State]:Ile-De-France
• Locality Name (eg, city) []:Paris
• Organization Name (eg, company) [Internet Widgits Pty Ltd]:Admin Linux
• Organizational Unit Name (eg, section) []:Service Informatique
• Common Name (eg, YOUR name) []:Marc Dupond
• Email Address []:marc.dupond@admin-linux.fr

• Please enter the following 'extra' attributes
• to be sent with your certificate request
• A challenge password []:
• An optional company name []:
• mafalda ~ # ls
• admin-linux.csr admin-linux.key

31
• Enfin, génération du certificat proprement dit :

• mafalda ~ # openssl req -x509 -in admin-linux.csr -key admin-linux.key > admin-linux.crt

• Les informations du certificat peuvent être lues via la commande suivante :

• mafalda ~ # openssl x509 -text -in admin-linux.crt -noout


• Certificate:
• Data:
• Version: 3 (0x2)
• Serial Number:
• 90:78:05:93:8b:ff:ee:b1
• Signature Algorithm: sha1WithRSAEncryption
• Issuer: C=FR, ST=Ile-De-France, L=Paris, O=Admin Linux, OU=Service Informatique, CN=Marc Dupond/emailAddress=marc.dupond@admin-linux.fr
• Validity
• Not Before: Oct 13 13:56:13 2009 GMT
• Not After : Nov 12 13:56:13 2009 GMT
• Subject: C=FR, ST=Ile-De-France, L=Paris, O=Admin Linux, OU=Service Informatique, CN=Marc Dupond/emailAddress=marc.dupond@admin-linux.fr
• Subject Public Key Info:
• Public Key Algorithm: rsaEncryption
• RSA Public Key: (4096 bit)
• Modulus (4096 bit):
• 00:de:c7:c5:18:d3:1a:6b:9c:8c:bd:35:03:06:da:
• ...
• Exponent: 65537 (0x10001)
• X509v3 extensions:
• X509v3 Subject Key Identifier:
• 5D:C7:AC:25:98:44:58:C9:7B:C4:C2:59:C9:91:72:88:B5:43:DE:98
• X509v3 Authority Key Identifier:
• keyid:5D:C7:AC:25:98:44:58:C9:7B:C4:C2:59:C9:91:72:88:B5:43:DE:98
• DirName:/C=FR/ST=Ile-De-France/L=Paris/O=Admin Linux/OU=Service Informatique/CN=Marc Dupond/emailAddress=marc.dupond@admin-linux.fr
• serial:90:78:05:93:8B:FF:EE:B1

• X509v3 Basic Constraints:
• CA:TRUE
• Signature Algorithm: sha1WithRSAEncryption
• 38:de:ac:1f:7f:f4:e5:d7:e5:f6:54:b3:d6:cd:43:3d:7e:fc:
• ...

32
Signature d’un certificat
• Récapitulons :

• dans un premier temps, nous avons créé une autorité de certification ;


• ensuite, nous avons généré un certificat SSL valide et prêt à être signé.

• L’objectif est maintenant de signer le certificat avec l’autorité de certification précédemment créé. Pour cela lancer la commande suivante (en remplaçant par vos paramètres les paramètres de l’exemple) :

• mafalda ~ # openssl ca -policy policy_anything -out admin-linux.crt -infiles admin-linux.csr


• Using configuration from /etc/ssl/openssl.cnf
• Enter pass phrase for /etc/ssl/CertificateAuthority/private/cakey.pem:
• Check that the request matches the signature
• Signature ok
• Certificate Details:
• Serial Number:
• fd:e4:e4:40:77:bc:b3:82
• Validity
• Not Before: Oct 13 14:18:41 2009 GMT
• Not After : Oct 13 14:18:41 2010 GMT
• Subject:
• countryName = FR
• stateOrProvinceName = Ile-De-France
• localityName = Paris
• organizationName = Admin Linux
• organizationalUnitName = Service Informatique
• commonName = Marc Dupond
• emailAddress = marc.dupond@admin-linux.fr
• X509v3 extensions:
• X509v3 Basic Constraints:
• CA:FALSE
• Netscape Comment:
• Certificate Authority to Admin Linux Fr
• X509v3 Subject Key Identifier:
• 5D:C7:AC:25:98:44:58:C9:7B:C4:C2:59:C9:91:72:88:B5:43:DE:98
• X509v3 Authority Key Identifier:
• keyid:28:DB:B7:CE:1E:F7:3C:CB:63:7F:10:6D:61:A4:4B:16:AB:7A:B1:0D

• Certificate is to be certified until Oct 13 14:18:41 2010 GMT (365 days)
• Sign the certificate? [y/n]:y


• 1 out of 1 certificate requests certified, commit? [y/n]y
• Write out database with 1 new entries
• Data Base Updated

33
• Rappel : Comme dit précédement, si vous
rencontrez à cette étape une erreur du type :
• failed to update database TXT_DB error
number 2
• C’est probablement que vous tentez de signer
un certificat créé avec le même « Subject » (ou
DN) qu’un autre.

34
• OpenSSL demande le mot de passe de l’autorité de certification puis après
vérification affiche le détail du certificat à signer. Le système nous avertis alors
que le certificat va être validé pour une durée de 365 jours et demande
confirmation. Une fois le certificat signé, il est ajouté à la base des certificats
gérés par l’autorité de certification.

• En jetant un œil aux fichiers d’index du CA, on peut lire le numéro


correspondant aux certificats géré :

• mafalda ~ # cat /etc/ssl/CertificateAuthority/index.txt


• V 191011112324Z FDE4E44077BCB381 unknown /C=FR/ST=Ile-
De-France/O=Admin Linux/OU=Service
Informatique/CN=FHH/emailAddress=fhh@admin-linux.fr
• V 101013141841Z FDE4E44077BCB382 unknown /C=FR/ST

35
• et constater que le certificat que nous venons
de signer à bien été ajouté à la liste. De
même, le numéro de série du prochain
certificat à bien été incrémenté :

• mafalda ~ # cat
/etc/ssl/CertificateAuthority/serial
• FDE4E44077BCB383

36
Diffuser sa chaine d’authentification
• Tous fonctionne pour le moment pour le mieux, mais lors de
la connexion à un site utilisant un certificat auto signé ou
signé par une autorité de certification non officielle, un
avertissement sera affiché à l’utilisateur.
• Cela est dû au fait que votre Autorité de Certification n’est
pas connue par les navigateurs Web du marché (à moins que
vous ne vous appeliez VeriSign ou quelque chose du genre).
• Pour résoudre ce problème, vous pouvez diffuser votre
chaîne de certification via un site internet. Copiez, ou vous le
souhaitez sur votre site web le certificat « cacert.pem » en
« cacert.crt ».

37
• Lors d’un clique sur ce fichier, le browser web
vous propose immédiatement d’ajouter la
chaîne de certification aux autorités
reconnues :

38
• Dès que l’autorité de certification est ajoutée, le navigateur
internet reconnais le certificat lors de son passage sur vos
page. Les détails sur l’autorité de certification sont consultable
via la liste des autorité racines comme présenté sur cette
capture d’écran réalisée sous firefox 3.X :

39
Questions diverses

40
Comment vérifier la signature d’un certificat
?
• Afin de vérifier la validité du certificat, nous faisons appel à l’option « verify
» d' »openssl » soit en lui précisant le la clé publique de l’autorité de
certification :

• mafalda ~ # openssl verify -CAfile /etc/ssl/CertificateAuthority/cacert.pem


admin-linux.crt
• admin-linux.crt: OK

• ou le répertoire des hash de certificat :

• mafalda ~ # openssl verify -CApath /etc/ssl/CertificateAuthority/certs


admin-linux.crt
• admin-linux.crt: OK

41
Comment tester un certificat ?

• Vous pouvez tester le certificat depuis généré et signé depuis


un navigateur web avec l’option « s_server » d’OpenSSL :

• mafalda ~ # cat admin-linux.crt > admin-linux.pem


• mafalda ~ # cat admin-linux.key >> admin-linux.pem
• mafalda ~ # openssl s_server -cert admin-linux.pem

• puis, depuis un navigateur internet, rendez vous sur


https://localhost:4433. Vous pouvez alors examiner le
certificat qui vous est proposé via votre browser.

42
Comment s’informer sur un certificat ?
• Les différentes informations concernant un certificat peuvent être retrouvées via ses champs x509. Nous retrouvons ainsi :

• ses dates de validité :

• mafalda ~ # openssl x509 -noout -dates -in admin-linux.pem


• notBefore=Oct 13 14:18:41 2009 GMT
• notAfter=Oct 13 14:18:41 2010 GMT

• son DN (ou sujet) :

• mafalda ~ # openssl x509 -noout -subject -in admin-linux.pem


• subject= /C=FR/ST=Ile-De-France/L=Paris/O=Admin Linux/OU=Service Informatique/CN=Marc
Dupond/emailAddress=marc.dupond@admin-linux.fr

• l’autorité de certification l’ayant signé :

• mafalda ~ # openssl x509 -noout -issuer -in admin-linux.pem


• issuer= /C=FR/ST=Ile-De-France/O=Admin Linux/OU=Service Informatique/CN=FHH/emailAddress=fhh@admin-linux.fr

• etc.

43
Comment télécharger un certificat ?
Un certificat peut être récupéré via l’option « s_client » d’OpenSSL (comme dans cet exemple sur le webmail de Yahoo) :

mafalda ~ # echo | openssl s_client -connect login.yahoo.com:443 2> /dev/null


CONNECTED(00000003)
---
Certificate chain
0 s:/C=US/ST=California/L=Santa Clara/O=Yahoo! Inc./OU=Yahoo/CN=login.yahoo.com
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIC7TCCAlagAwIBAgIDBaBMMA0GCSqGSIb3DQEBBQUAME4xCzAJBgNVBAYTAlVT
...
uwLtIWL7usK66NSPZsGlX635P88imxdXoMooxnYDpMTn
-----END CERTIFICATE-----
subject=/C=US/ST=California/L=Santa Clara/O=Yahoo! Inc./OU=Yahoo/CN=login.yahoo.com
issuer=/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
---
No client certificate CA names sent
---
SSL handshake has read 875 bytes and written 332 bytes
---
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 1024 bit
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DES-CBC3-SHA
Session-ID:
Session-ID-ctx:
Master-Key: BEE4346879BF443A1AEBCD48C96322B188609D96DEBCF08A138D58AD9C56FFB6F78C1A197ACE101CC630B3CF5D27EB89
Key-Arg : None
Start Time: 1255460237
Timeout : 300 (sec)
Verify return code: 21 (unable to verify the first certificate)
---

ou, juste pour obtenir le certificat :

mafalda ~ # echo | openssl s_client -connect login.yahoo.com:443 2> /dev/null |


sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > login.yahoo.com.crt
mafalda ~ # openssl x509 -noout -dates -in login.yahoo.com.crt
notBefore=Jan 4 17:09:06 2006 GMT
notAfter=Jan 4 17:09:06 2011 GMT

44
45

Vous aimerez peut-être aussi