Présentation
d’OpenSSL
SAFWANE MADJERI
AUDITEUR CNAM UE RSX112
SOMMAIRE
 - Qu’est ce qu’OpenSSL ?
 - Le protocole SSL
 - La ligne de commande openssl
 - La bibliothèque OpenSSL
 - Avantages et inconvénients avec OpenSSL
 - Résumé
 - Références
Qu’est OpenSSL ?
- Le projet OpenSSL est un le fruit d’un travail collectif qui a pour but de
développer une boîte à outils libre d’accès, gratuite, puissante, riche en
fonctionnalités et de qualité commercial, implémentant les protocoles SSL et
TLS ainsi qu’une interface en ligne de commande.
- Cette boîte à outils comprend une bibliothèque puissante de cryptographie.
- Le projet est géré par une communauté mondiale de volontaire qui utilise
internet pour communiquer, planifier et développer la boîte à outils OpenSSL.
Le protocole SSL
 Le protocole SSL (Secure Sockets Layer) a été développé par la société
Netscape Communications Corporations pour permettre la sécurisation
des échanges sur Internet.
 L’IETF qui produit la plupart des nouveaux standards d’Internet a continué
le développement de SSL en le renommant TLS (Transport Layer Security).
 SSL/TLS fonctionne en deux temps selon un mode client-serveur :
 Une phase de poignée de mains (handshake) durant laquelle le client et le
serveur s'identifient, conviennent du système de chiffrement et d'une clé qu'ils
utiliseront par la suite.
 Une phase de communication proprement dite durant laquelle les données
échangées sont compressées, chiffrées et signées.
La ligne de commande openssl
 La ligne de commande openssl permet d’utiliser les différentes fonctions
cryptographiques de la bibliothèque openssl :
 La création de paramètres des clefs de type publique RSA, DH et DSA
 La création de certificats X.509, CSRs et CRLs
 Le calcul d'empreintes (MD5, SHA, RIPEMD160, ...)
 Le chiffrement et déchiffrement (DES, IDEA, RC2, RC4, Blowfish, ...)
 Le test de clients et serveurs SSL/TLS
 La signature et le chiffrement de courriers (S/MIME)
La syntaxe de la commande est : opennssl <commande> <options>
La bibliothèque OpenSSL
 OpenSSL est Basé sur la bibliothèque SSLeay de Eric A. Young et Tim J.
Hudson. Il s’agit d’une bibliothèque logicielle qui contient une collection
de fonctions prêtent à être utilisé par le programme OpenSSL.
 OpenSSL fournit deux bibliothèques primaires : Libssl & libcrypto.
 Libssl & libcrypto sont des API ou Interface de programmation :
 Libssl implémente SSL/TLS
 Libcrypto s’occupe du chiffrement symétrique, cryptographie à clé publique et un accord
clé, la gestion des certificats, fonctions de hachage cryptographique et un générateur de
nombres pseudo-aléatoire cryptographique
Avantages et Inconvénients d’OpenSSL
Avantages Inconvénients
- Outil puissant
- Incontournable pour le chiffrement
et le hachage
- Opensource
- Portabilité
- Massivement utilisé
- Pas simple à utiliser
- Documentation pas toujours claires
- Soucis de compatibilité des
librairies sur certaines plateformes
- Des failles de +/- importantes ont
été découvertes
Résumé
 OpenSSL est une boîte à outils cryptographiques, implémentant les
protocoles SSL et TLS, qui avec sa bibliothèque de cryptographie permet
aux applications client/serveur de communiquer de façon sécurisé
 OpenSSL est une librairie incontournable pour le chiffrement et le
hachage, disponible sous Linux mais également sous Windows
 OpenSSL est géré par une communauté mondiale
 Malgré quelques soucis de sécurité rencontrés récemment OpenSSL reste
massivement utilisé
Références
 https://www.openssl.org/
 http://fr.wikipedia.org/wiki/OpenSSL
 http://www.lifl.fr/~wegrzyno/lic/UE/PAC/Doc/TP/TP2/tp2001.html#toc1
 http://www.open-source-guide.com/Solutions/Developpement-et-
couches-intermediaires/Pki/Openssl
 http://fr.wikipedia.org/wiki/Transport_Layer_Security
 http://fr.wikipedia.org/wiki/Internet_Engineering_Task_Force

OpenSSL

  • 1.
  • 2.
    SOMMAIRE  - Qu’estce qu’OpenSSL ?  - Le protocole SSL  - La ligne de commande openssl  - La bibliothèque OpenSSL  - Avantages et inconvénients avec OpenSSL  - Résumé  - Références
  • 3.
    Qu’est OpenSSL ? -Le projet OpenSSL est un le fruit d’un travail collectif qui a pour but de développer une boîte à outils libre d’accès, gratuite, puissante, riche en fonctionnalités et de qualité commercial, implémentant les protocoles SSL et TLS ainsi qu’une interface en ligne de commande. - Cette boîte à outils comprend une bibliothèque puissante de cryptographie. - Le projet est géré par une communauté mondiale de volontaire qui utilise internet pour communiquer, planifier et développer la boîte à outils OpenSSL.
  • 4.
    Le protocole SSL Le protocole SSL (Secure Sockets Layer) a été développé par la société Netscape Communications Corporations pour permettre la sécurisation des échanges sur Internet.  L’IETF qui produit la plupart des nouveaux standards d’Internet a continué le développement de SSL en le renommant TLS (Transport Layer Security).  SSL/TLS fonctionne en deux temps selon un mode client-serveur :  Une phase de poignée de mains (handshake) durant laquelle le client et le serveur s'identifient, conviennent du système de chiffrement et d'une clé qu'ils utiliseront par la suite.  Une phase de communication proprement dite durant laquelle les données échangées sont compressées, chiffrées et signées.
  • 5.
    La ligne decommande openssl  La ligne de commande openssl permet d’utiliser les différentes fonctions cryptographiques de la bibliothèque openssl :  La création de paramètres des clefs de type publique RSA, DH et DSA  La création de certificats X.509, CSRs et CRLs  Le calcul d'empreintes (MD5, SHA, RIPEMD160, ...)  Le chiffrement et déchiffrement (DES, IDEA, RC2, RC4, Blowfish, ...)  Le test de clients et serveurs SSL/TLS  La signature et le chiffrement de courriers (S/MIME) La syntaxe de la commande est : opennssl <commande> <options>
  • 6.
    La bibliothèque OpenSSL OpenSSL est Basé sur la bibliothèque SSLeay de Eric A. Young et Tim J. Hudson. Il s’agit d’une bibliothèque logicielle qui contient une collection de fonctions prêtent à être utilisé par le programme OpenSSL.  OpenSSL fournit deux bibliothèques primaires : Libssl & libcrypto.  Libssl & libcrypto sont des API ou Interface de programmation :  Libssl implémente SSL/TLS  Libcrypto s’occupe du chiffrement symétrique, cryptographie à clé publique et un accord clé, la gestion des certificats, fonctions de hachage cryptographique et un générateur de nombres pseudo-aléatoire cryptographique
  • 7.
    Avantages et Inconvénientsd’OpenSSL Avantages Inconvénients - Outil puissant - Incontournable pour le chiffrement et le hachage - Opensource - Portabilité - Massivement utilisé - Pas simple à utiliser - Documentation pas toujours claires - Soucis de compatibilité des librairies sur certaines plateformes - Des failles de +/- importantes ont été découvertes
  • 8.
    Résumé  OpenSSL estune boîte à outils cryptographiques, implémentant les protocoles SSL et TLS, qui avec sa bibliothèque de cryptographie permet aux applications client/serveur de communiquer de façon sécurisé  OpenSSL est une librairie incontournable pour le chiffrement et le hachage, disponible sous Linux mais également sous Windows  OpenSSL est géré par une communauté mondiale  Malgré quelques soucis de sécurité rencontrés récemment OpenSSL reste massivement utilisé
  • 9.
    Références  https://www.openssl.org/  http://fr.wikipedia.org/wiki/OpenSSL http://www.lifl.fr/~wegrzyno/lic/UE/PAC/Doc/TP/TP2/tp2001.html#toc1  http://www.open-source-guide.com/Solutions/Developpement-et- couches-intermediaires/Pki/Openssl  http://fr.wikipedia.org/wiki/Transport_Layer_Security  http://fr.wikipedia.org/wiki/Internet_Engineering_Task_Force