06 Déc

Pourquoi utiliser SSL plutôt qu’un autre système ?

Pourquoi SSL, et comment ça marche ?

Ça sert à quoi ?

SSL = Secure Socket Layer

C’est un système qui permet d’échanger des informations entre 2 ordinateurs de façon sûre. Il assure 3 choses:

  • Confidentialité et intégrité : Il est impossible de truquer ou d’espionner les informations échangées.
  • Authentification: Il permet de s’assurer de l’identité du programme, de la personne ou de l’entreprise avec lequelle on communique.

Il est un complément à TCP/IP et permet (potentiellement) de sécuriser n’importe quel protocole ou programme utilisant TCP/IP.

Il a été créé et développé par la société Netscape et RSA Security. On trouve désormais des versions opensource ainsi qu’un protocole libre similaire: TLS (voir plus loin).

Pourquoi l’utiliser plutôt qu’un autre système ?

Pourquoi utiliser  ?

  • SSL est standardisé.
  • Il existe en  version libre : OpenSSL (http://www.openssl.org) que vous pouvez utiliser dans vos programmes sans payer de royalties.
  • OpenSSL est opensource: tout le monde peut contrôller et vérifier le code source (Le secret réside dans les clés de chiffrement, pas dans l’algorithme lui-même).
  • Il a été cryptanalysé: ce système a été plus analysé que tout ses concurrents. Il a été passé en revue par de nombreux spécialistes en cryptographique. On peut donc le considérer comme sûr.

Comment ça marche  ?

  • SSL Handshake protocol: avant de communiquer, les 2 programmes SSL négocient des clés et des protocoles de chiffrement communs.
  • SSL Record protocol: Une fois négociés, ils chiffrent toutes les informations échangées et effectuent divers contrôles.

1.La négociation (« handshake« )

Au début de la communication le client et le serveur s’échangent:

  • la version SSL avec laquelle ils veulent travailler,
  • la liste des méthodes de chiffrement (symétrique et asymétrique) et de signature que chacun connaît (avec longueurs de clés),
  • les méthodes de compression que chacun connaît,
  • des nombres aléatoires,
  • les certificats.

Client et serveur essaient d’utiliser le protocole de chiffrement le plus puissant et diminuent jusqu’à trouver un protocole commun aux deux. Une fois que cela est fait, ils peuvent commencer à échanger des données.

2. La communication  (« record« )

Avec SSL, l’expéditeur des données:

  • Découpe les données en paquets,
  • Compresse les données,
  • Signe cryptographiquement les données,
  • Chiffre les données,
  • Les envoie.

Celui qui réceptionne les données:

  • Déchiffre les données,
  • Vérifie la signature des données,
  • Décompresse les données,
  • Réassemble les paquets de données.

 

Source : sebsauvage

Partager