Vous êtes sur la page 1sur 6

C'est quoi SSL, SSH, HTTPS ?

a sert quoi SSL ?


SSL = Secure Socket Layer
C'est un systme qui permet d'changer des informations entre 2 ordinateurs de faon
sre. SSL assure 3 choses:

Confidentialit: Il est impossible d'espionner les informations changes.

Intgrit: Il est impossible de truquer les informations changes.

Authentification: Il permet de s'assurer de l'identit du programme, de la


personne ou de l'entreprise avec lequelle on communique.

SSL est un complment TCP/IP et permet (potentiellement) de scuriser n'importe quel


protocole ou programme utilisant TCP/IP.
SSL a t cr et dvelopp par la socit Netscape et RSA Security. On trouve
dsormais des versions opensource ainsi qu'un protocole libre similaire: TLS (voir plus
loin).

Pourquoi utiliser SSL plutt qu'un autre systme ?


Pourquoi utiliser OpenSSL ?

SSL est standardis.

Il existe une version libre de SSL: OpenSSL (http://www.openssl.org) que vous


pouvez utiliser dans vos programmes sans payer de royalties.

OpenSSL est opensource: tout le monde peut contrller et vrifier le code


source (Le secret rside dans les cls de chiffrement, pas dans l'algorithme luimme).

SSL a t cryptanalys: ce systme a t plus analys que tout ses


concurrents. SSL a t pass en revue par de nombreux spcialistes en
cryptographique. On peut donc le considrer comme sr.

Il est rpandu: on peut facilement crer des programmes qui dialogueront avec
d'autres programmes utilisant SSL.

Il faut se mfier des systmes propritaires: contrairement ce qu'on pourrait


penser, la scurit d'un systme de chiffrement ne rside pas dans le secret de
l'algorithme de chiffrement, mais dans le secret de la cl. Il ne faut faire confiance qu'aux
systmes qui ont t publis et analyss.

Comment a marche SSL ?


SSL consiste en 2 protocoles:

SSL Handshake protocol: avant de communiquer, les 2 programmes SSL


ngocient des cls et des protocoles de chiffrement communs.

SSL Record protocol: Une fois ngocis, ils chiffrent toutes les informations
changes et effectuent divers contrles.

La ngociation SSL ("handshake")


Au dbut de la communication le client et le serveur s'changent:

la version SSL avec laquelle ils veulent travailler,

la liste des mthodes de chiffrement (symtrique et asymtrique) et de signature


que chacun connat (avec longueurs de cls),

les mthodes de compression que chacun connat,

des nombres alatoires,

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 donnes.

La communication SSL ("record")


Avec SSL, l'expditeur des donnes:

dcoupe les donnes en paquets,

compresse les donnes,

signe cryptographiquement les donnes,

chiffre les donnes,

les envoie.

Celui qui rceptionne les donnes:

dchiffre les donnes,

vrifie la signature des donnes,

dcompresse les donnes,

rassemble les paquets de donnes.

Comment SSL fait-il pour protger les communications ?


SSL utilise:

un systme de chiffrement asymtriques (comme RSA ou Diffie-Hellman).


Vous pouvez en savoir plus
ici: http://sebsauvage.net/comprendre/encryptage/crypto_asy.html. Il est utilis
pour gnrer la master key (cl principale) qui permettra de gnrer des cls de
session.

un systme de chiffrement symtrique (DES, 3DES, IDEA, RC4...) en utilisant


les cls de session pour chiffrer les donnes.

un systme de signature cryptographique des messsages (HMAC, utilisant


MD5, SHA...) pour s'assurer que les messages ne sont pas corrompus.

C'est lors de la ngociation SSL que le client et le serveur choisissent des systmes
communs (chiffrement asymtrique, symtrique, signature et longueur de cl).
Dans votre navigateur, vous pouvez voir la liste des systmes utiliss en plaant votre
curseur sur le petit cadenas quand vous tes dans une page en HTTPS.

A quoi servent les certificats ?


Lors d'une ngociation SSL, il faut s'assurer de l'identit de la personne avec qui on
communique. Comment tre sr que le serveur auquel vous parlez est bien celui qu'il
prtend tre ?
C'est l qu'interviennent les certificats. Au moment de vous connecter sur un serveur
web scuris, ce dernier vous enverra un certificat contenant le nom de l'entreprise, son
adresse, etc. C'est une sorte de pice d'identit.
Comment vrifier l'authenticit de cette pice d'identit ?
Ce sont les PKI (Public Key Infrastructure), des socits externes (auxquelles vous faites
implicitement confiance), qui vont vrifier l'authenticit du certificat.
(La liste de ces PKI est incluse dans votre navigateur. Il y a
gnralement VeriSign, Thawte, etc.)
Ces PKI signent cryptographiquement les certificats des entreprises (et ils se font payer
pour a).

Les utilisation de SSL: HTTPS, SSH, FTPS, POPS...


SSL peut tre utilis pour scuriser pratiquement n'importe quel protocole utilisant
TCP/IP.
Certains protocoles ont t spcialement modifis pour supporter SSL:

HTTPS: c'est HTTP+SSL. Ce protocole est inclus dans pratiquement tous les
navigateurs, et vous permet (par exemple) de consulter vos comptes bancaires
par le web de faon scurise.

FTPS est une extension de FTP (File Transfer Protocol) utilisant SSL.

SSH (Secure Shell): c'est une sorte de telnet (ou rlogin) scuris. Cela permet de
se connecter un ordinateur distant de faon sre et d'avoir une ligne de
commande. SSH possde des extensions pour scuriser d'autres protocoles (FTP,
POP3 ou mme X Windows).

Il est possible de scuriser des protocoles en crant des tunnels SSL. Une fois le tunnel
cr, vous pouvez faire passer n'importe quel protocole dedans (SMTP, POP3, HTTP,
NNTP...). Toutes les donnes changes sont automatiquement chiffres.
On peut faire cela avec des outils comme STunnel (http://www.stunnel.org) ou SSH.
Voici un exemple avec le protocole POP3:

Avec le protocole POP3 que vous utilisez habituellement pour aller lire votre courrier, les
mots de passe et les messages transitent en clair sur Internet. Il est possible de voler
vos mots de passe et vos messages.

Avec le tunnel SSL, et sans rien changer aux logiciels client et serveur, vous pouvez
scuriser la rcupration de vos mails: personne ne peut vous volez vos mots de passe
ou emails puisque tout ce qui passe travers le tunnel SSL est chiffr.
Mais cela ncessite d'installer STunnel sur le client et sur le serveur.
Certains fournisseur d'accs proposent ce service, mais a reste trop rare. Demandez
votre fournisseur d'accs si il a ce genre de service en place.

STunnel permet ainsi de scuriser la majorit des protocoles bas sur TCP/IP
sans modifier les logiciels. Il est trs facile installer.

Quelles sont les diffrentes versions de SSL ?


SSL version 3.0 est trs similaire SSL version 2.0, mais SSL v2.0 possde moins
d'algorithmes de chiffrement que SSL v3.0.
TLS v1.0 est un protocole similaire bas sur SSL. Les applications utilisant TLS v1.0
peuvent sans problme communiquer avec des applications utilisant SSL v3.0.

Alors quand je vois le cadenas, c'est sr ?


Le cadenas vous indique que les communications entre votre navigateur et le site web
sont sres: personne ne peut les espionner, et personne ne peut trafiquer les
communications. Mais il ne garantie rien d'autre !
Pour prendre une image:
HTTPS (le cadenas), c'est un peu comme un fourgon blind: Il vous assure la scurit
du transport.
Mais vraiment que du transport.
Le fourgon blind ne vous garantiera pas que la banque utilise de bons coffre-forts et
qu'elle les ferme bien.
Le fourgon bind ne garantie pas non plus que la banque ne fait pas de malversations.
Le fourgon blind ne garantie vraiment que le transport.
C'est la mme chose pour HTTPS (le petit cadenas du navigateur).
De la mme manire que des truands peuvent louer les services d'un fourgon blind, des
pirates et truands peuvent trs bien crer un site scuris (avec le petit cadenas).
Soyez vigilants, et ne confiez pas n'importe quelle information sur n'importe quel site,
cadenas ou pas.

Pour en savoir plus:

RFC 2246 (TLS v1.0): http://www.faqs.org/rfcs/rfc2246.html

Netscape: http://www.netscape.com/eng/ssl3/ et http://developer.netscape.co


m/docs/manuals/security/sslin/

OpenSSL: http://www.openssl.org/ et http://www.openssl.org/related/ssl.html

Diffrents programmes de tunnelling SSL:

STunnel: http://stunnel.mirt.net/

STunnel: http://www.stunnel.org/

Bjorb: http://www.funsite.info/bjorb/en/

TLSWrap : http://tlswrap.sunsite.dk/ (wrapper FTP/SSL)

SSLProxy: ftp://ftp.obdev.at/pub/Products/sslproxy/

Toutes ces pages et leur contenu (textes, images, sons, animations et toute autre forme de mdia) sont de par les lois
franaises et internationales sur le droit d'auteur et la proprit intellectuelle protges jusqu' 70 ans aprs le dcs de leur
auteur, Sbastien SAUVAGE (alias MWPC2). Toute reproduction est interdite sans le visa de l'auteur. Toute personne morale ou
physique portant atteinte ces droits s'expose des poursuites. Les images utilises dans ces pages sont marques
lectroniquement.
Merci de prvenir le Webmaster (

) de tout lien effectu vers ces pages.


http://sebsauvage.net

Vous aimerez peut-être aussi