Académique Documents
Professionnel Documents
Culture Documents
TP OpenSSL
1. Prsentation de lOpenssl
1.1.
Protocole SSL
1.2.
openssl
OpenSSL est une bote outils cryptographiques implmentant les protocoles SSL et TLS
qui
Offre :
1. Une bibliothque de programmation en C permettant de raliser des applications
client/serveur scurises sappuyant sur SSL/TLS.
2. Une commande en ligne (OpenSSL) permettant :
la cration de cls RSA, DSA (signature)
la cration de certificats X509
le calcul dempreintes (MD5, SHA, RIPEMD160, ...)
le chiffrement et dchiffrement (RSA, DES, IDEA, RC2, RC4, Blowfish, ...)
la ralisation de tests de clients et serveurs SSL/TLS
la signature et le chiffrement de courriers (S/MIME)
Blowfish
Chiffrement d'un fichier : Pour chiffrer un fichier avec lalgorithme blowfish
Chiffrement d'un fichier : Pour chiffrer un fichier avec lalgorithme blowfish en mode CBC
Pour chiffrer le fichier toto avec une cl explicite, il faut utiliser les options -K et -iv
{ -K (K majuscule) suivi de la cl exprime en hexa;
{ -iv (iv en minuscules) suivi du vecteur d'initialisation exprime en hexad_ecimal1.
L'exemple qui suit montre la commande pour chiffrer toto avec Blowfish en mode CBC avec
un vecteur d'initialisation de 64 bits exprime par 16 chiffres hexa, et une cl de 128 bits
exprime par 32 chiffres hexa.
RC4
# openssl enc rc4 -in toto -out toto.rc4
Question : vrifier que toto.rc4 et toto.bf sont deux fichiers diffrents ? Quest ce que vous
constatez ?
Question : Tentez de dchiffrer un cryptogramme en utilisant un mauvais mot de passe. Comment
ragit openssl ?
Question : essayer de chiffrer un fichier de votre choix avec lalgorithme cast en mode CBC,
puis le dchiffrer ?
DES
Chiffrement d'un fichier : Pour chiffrer un fichier avec lalgorithme DES avec cl explicite
AES
Chiffrement d'un fichier
Pour chiffrer un fichier avec lalgorithme AES utilisant une cl symtrique.
pour gnrer un nombre alatoire sur numbits (utiliser loption base 64 pour la lisibilit).
Pour dchiffrer un fichier avec lalgorithme AES utilisant une cl symtrique
toto2 -d k cl.key
Chiffrement AES avec vecteur dinitialisation. Attention, ce vecteur doit tre chang
avant chaque cryptage !
-out toto.aes
Stocke la partie publique dans un ficchier part. Notez que macle.pem peut tre crypt ou
non avec un algorithme symtrique.
Question : afficher le contenu du fichier maclepub.pem ?
Le cryptage avec RSA se fait avec la cl publique. Pour faire le dcryptage la commande
suivante le permet
4. Hachage
La syntaxe gnrale de la commande pou les fonctions de hachage est la suivante.
MD5
Question : Calculer la valeur de lempreinte du fichier toto avec lalgorithme MD5 et la mettre
dans un fichier emp.md5? Quelle est la taille de cette empreinte ?
SHA1
Question : Calculer la valeur de lempreinte du fichier toto avec lalgorithme SHA1 et la
mettre dans un fichier emp.sha1? Quelle est la taille de cette empreinte ?
Comparer le rsultat des deux fonctions de hachage ?
Signature de fichiers
Signer un document revient signer son empreinte. Pour cela, on utilise loption sign de la
commande rsautl :
5. Certificats
Un certificat auto sign est comme le certificat de lautorit de certification 'root' qui va signer
lui-mme son certificat. Thoriquement, a n'a pas de valeur, mais ici, c'est nous le tiers de
confiance et nous savons qui nous sommes.
#openssl req
ca_cert.pem
new
x509
days
365
key
ca_cle.pem
out
Pour vrifier un certificat, il est ncessaire de disposer du certificat de lautorit qui la mis