Objectifs de SSL 1/3 Objectifs de SSL 1/3
Chiffrement
Pour les applications utilisant un mot de passe.
Très utile dans le cas des annuaires LDAP utilisé en référentiel unique d’authentification : le mot de passe devient de plus en plus
critique.
Très utile pour les usages nomades à travers des réseaux réputés non sûrs.
Chiffrement Chiffrement
Pour les applications utilisant un mot de Pour les applications utilisant un mot de passe.
passe.
Très utile dans le cas des annuaires LDAP Très utile dans le cas des annuaires LDAP utilisé en référentiel unique d’authentification utilisé en référentiel unique d’authentification
: le mot de passe devient de plus en plus : le mot de passe devient de plus en plus
critique.
critique.
Très utile pour les usages nomades à Très utile pour les usages nomades à travers des réseaux réputés non sûrs.
travers des réseaux réputés non sûrs.
Objectifs de SSL 2/3 Objectifs de SSL 2/3
Authentification du serveur
Le chiffrement à partir d’un certificat du serveur ; le client peut exploiter ce certificat pour authentifier le serveur.
Attention : l’authentification du serveur ne permet pas de savoir si le serveur de la camif est :•
camif.fr•
camif.com•
lacamif.fr•
camif.biz
Authentification du serveur Authentification du serveur
Le chiffrement à partir d’un certificat du serveur ; le Le chiffrement à partir d’un certificat du serveur ; le client peut exploiter ce certificat pour authentifier le client peut exploiter ce certificat pour authentifier leserveur.
serveur.
Attention : l’authentification du serveur ne permet pas Attention : l’authentification du serveur ne permet pas de savoir si le serveur de lade savoir si le serveur de la camifcamif est :est :
• •
camifcamif..frfr• •
camifcamif..com com• •
lacamiflacamif..frfr• •
camifcamif..bizbizObjectifs de SSL 3/3 Objectifs de SSL 3/3
Authentification mutuelle
Un certificat côté serveur et un certificat côté client : permet en plus du chiffrement
d’authentifier le client.
Certaines applications sont modifiées pour hériter de l’authentification assurée par la couche SSL.
Authentification mutuelle Authentification mutuelle
Un certificat côté serveur et un certificat côté Un certificat côté serveur et un certificat côté client : permet en plus du chiffrement
client : permet en plus du chiffrement d’authentifier le client.
d’authentifier le client.
Certaines applications sont modifiées pour Certaines applications sont modifiées pour hériter de l’authentification assurée par la hériter de l’authentification assurée par la
couche SSL.
couche SSL.
Principes généraux de SSL Principes généraux de SSL
LDAPPOP HTTP
TCP IP
IMAP
SSL Communication sécurisée X509
Domaines d’application Domaines d’application
443443 HTTPS
HTTPS
563563 NNTPS
NNTPS
993993 IMAPS
IMAPS
995995 POP3S
POP3S
636636 LDAPS
LDAPS
PORTPORT PROTOCOLE
PROTOCOLE
SSL record/
SSL record/ handshake handshake protocol protocol
SSL est divisé en deux sous-couches
SSL record protocol et SSL handshake protocol
Handshake : négociation du chiffrement et de l’authentification
•
Sélection des algorithmes de chiffrement•
Sélection et échange des certificats•
Echange d’une clé de chiffrement symétrique SSL est divisé en deux sous SSL est divisé en deux sous - - couches couches
SSL record SSL record protocol protocol et SSL et SSL handshake handshake protocol protocol
Handshake Handshake : négociation du chiffrement et de : négociation du chiffrement et de l’authentification
l’authentification
• •
Sélection des algorithmes de chiffrementSélection des algorithmes de chiffrement• •
Sélection et échange des certificatsSélection et échange des certificats• •
EchangeEchange d’une clé de chiffrement symétriqued’une clé de chiffrement symétriqueSSL SSL handshake handshake
0.2 à 0.4 KB Client hello
Finished
Change Cipher Spec Client Certificate
Server Hello Server Certificate Server Hello Done
Change Cipher Spec Finished
Nature des échanges Nature des échanges
fixer la version de SSL utilisée
arrêter un identificateur de session
envoi du certificat serveur
à la demande du serveur, envoi du certificat client (et de sa chaîne de certification)
envoi par le client d’une chaîne chiffrée avec la clé privée du client. (le serveur vérifie que le client est bien titulaire de la clé privée en déchiffrant cette chaîne avec la clé publique du client).
fixer une clé de chiffrement symétrique
fixer la version de SSL utiliséefixer la version de SSL utilisée
arrêter un identificateur de sessionarrêter un identificateur de session
envoi du certificat serveurenvoi du certificat serveur
à la demande du serveur, envoi du certificat client à la demande du serveur, envoi du certificat client (et de sa chaîne de certification)(et de sa chaîne de certification)
envoi par le client d’une chaîne chiffrée avec la clé envoi par le client d’une chaîne chiffrée avec la clé privée du client. (le serveur vérifie que le client est privée du client. (le serveur vérifie que le client estbien titulaire de la clé privée en déchiffrant cette bien titulaire de la clé privée en déchiffrant cette
chaîne avec la clé publique du client).
chaîne avec la clé publique du client).
fixer une clé de chiffrement symétriquefixer une clé de chiffrement symétriqueIdentificateur de session 1/2 Identificateur de session 1/2
Pour reprendre une session déjà initialisée, le client envoie (dans le Client Hello )
l’identificateur de cette session.
S’il retrouve cet identificateur dans son cache de session le serveur répond avec le même identificateur de session dans le Server
Hello
Cet identificateur permet de restaurer le
contexte de la session, en particulier la clé de chiffrement symétrique.
Pour reprendre une session déjà initialisée, le Pour reprendre une session déjà initialisée, le client envoie (dans le
client envoie (dans le Client Hello Client Hello ) ) l’identificateur de cette session.
l’identificateur de cette session.
S’il retrouve cet identificateur dans son cache S’il retrouve cet identificateur dans son cache de session le serveur
de session le serveur répond avec le même répond avec le même identificateur de session dans le
identificateur de session dans le Server Server Hello
Hello
Cet identificateur permet de restaurer le Cet identificateur permet de restaurer le contexte de la session, en particulier
contexte de la session, en particulier la clé de la clé de chiffrement symétrique.
chiffrement symétrique.
Identificateur de session 2/2 Identificateur de session 2/2
Le serveur peut forcer la renégociation en répondant avec un nouveau Session Id
Optimisation indispensable donc importance du réglage des paramètres des serveurs :
•
Durée de conservation des contextes de session•
Partage du cache en processus coopérants (principalement httpd) Le serveur peut forcer la renégociation en Le serveur peut forcer la renégociation en répondant avec un nouveau Session Id
répondant avec un nouveau Session Id
Optimisation indispensable donc importance du Optimisation indispensable donc importance du réglage des paramètres des serveurs :
réglage des paramètres des serveurs :
• •
Durée de conservation des contextes de sessionDurée de conservation des contextes de session• •
Partage du cache en processus coopérants Partage du cache en processus coopérants (principalement(principalement httpdhttpd))
Dans le document
Certificats X509 Certificats X509
(Page 76-87)