SSL/TLS et HSTS, qu’est ce que c’est ?
Nos sites web sont sécurisés en https. C’est à dire qu’ils utilisent SSL/TLS. Mais qu’est ce que c’est ? Et quelle est cette extension HSTS ?
Si vous voulez les informations techniques pour Limawi, jetez un oeil ici.
Le fonctionnement de SSL/TLS
SSL/TLS est un protocole qui permet de vérifier l’identité d’un serveur (par exemple un serveur web comme Limawi, dans ce cas on parle d’https car le protocole d’accès à un serveur web s’appelle http). Cette vérification d’identité fonctionne avec un envoi de certificat de la part du serveur.
Voici le protocole étape par étape (les termes techniques sont présents dans les infographies) :
- Le client demande au serveur son identité.
- Le serveur envoie au client son certificat signé par une autorité de confiance commune au client et au serveur.
- Le client vérifie que la signature appartient bien à une autorité de confiance qu’il reconnaît.
- Il envoie une demande à cette autorité de confiance pour déterminer si elle considère ce certificat encore valable.
- Le client et le serveur se mettent d’accord sur une clé de session qui chiffrera les informations pendant un temps limité (ce temps révolu, une autre clé de session prend le relais, le détail pour Limawi est expliqué dans l’infographie sur la clé de session).
- Le client et le serveur peuvent communiquer de façon sécurisée.
L’extension HSTS
L’extension HSTS est une extension du protocole http (le protocole qui charge des pages web) renforçant l’usage de SSL/TLS.
Cette extension force un navigateur à charger les versions sécurisées d’une page et de toutes les ressources que cette page contient (c’est à dire les versions https) sur un domaine (l’adresse de base d’un site web) qui l’implémente.
Si la page recherchée n’a pas de version sécurisée, elle n’est pas chargée par le navigateur.
Une fois que le navigateur a accédé au site utilisant cette extension il garde en mémoire que les prochaines pages visitées sur ce site doivent être sécurisées. Il peut ainsi le vérifier avant même d’envoyer la requête au site.
Une extension HSTS est valable pour une durée limitée et le navigateur doit vérifier au bout de cette validité si le site l’utilise toujours pour déclencher une nouvelle période de validité.
Les domaines (l’adresse de base d’un site web) peuvent être préchargés dans une base de données disponible dans votre navigateur. Ainsi le navigateur sait avant même d’envoyer la première requête de son historique à une page qu’elle doit être sécurisée sinon il ne la charge pas.
Cette base est disponible ici : HSTS Preload.
Chez Limawi
Pour Limawi, l’autorité de certification est Let’s Encrypt.
L’échange de la clé de session entre le client et le serveur se fait grâce au protocole Diffie-Helman qui permet de créer une clé symétrique de session sans échanger d’éléments secrets (je vous renvoie à l’article pour une autre source d’informations sur le sujet).
Limawi utilise HSTS. La validité de l’HSTS est de 6 mois.
Références
- SSL/TLS : Wikipedia
- HSTS : Wikipedia
- Diffie-Helman : Wikipedia
- Préchargement pour MyCrypNet : Préchargement HSTS
- Préchargement pour Limawi : Préchargement HSTS
Originally published at https://blog.limawi.io on May 18, 2017.