Comment fonctionne HTTPS?
HTTPS est basé sur la cryptographie à clé publique / privée . Cela signifie essentiellement qu'il existe une paire de clés: la clé publique est utilisée pour le chiffrement et la clé privée secrète est requise pour le déchiffrement.
Un certificat est essentiellement une clé publique avec un étiquette identifiant le propriétaire.
Ainsi, lorsque votre navigateur se connecte à un serveur HTTPS, le serveur répondra avec son certificat. Le navigateur vérifie si le certificat est valide :
- les informations du propriétaire doivent correspondre au nom du serveur demandé par l'utilisateur.
- le certificat a besoin à signer par une autorité de certification de confiance.
Si l'une de ces conditions n'est pas remplie, l'utilisateur est informé du problème.
Après la vérification, le le navigateur extrait la clé publique et l'utilise pour crypter certaines informations avant de les envoyer au serveur. Le serveur peut le déchiffrer car le serveur a la clé privée correspondante .
Comment HTTPS empêche-t-il les attaques de l'homme du milieu?
Dans ce cas, G pourra-t-il obtenir le certificat que A a précédemment obtenu de W?
Oui, le certificat est la clé publique avec l'étiquette. Le serveur Web l'enverra à toute personne qui s'y connectera.
Si G peut obtenir le certificat, cela signifie-t-il que G pourra déchiffrer les données?
Non. Le certificat contient la clé publique du serveur Web . Le proxy malveillant n'est pas en possession de la clé privée correspondante. Donc, si le proxy transmet le certificat réel au client, il ne peut pas déchiffrer les informations que le client envoie au serveur Web.
Le serveur proxy peut essayer de falsifier le certificat et fournir sa propre clé publique à la place. Cependant, cela détruira la signature des autorités de certification . Le navigateur vous avertira du certificat invalide.
Existe-t-il un moyen pour un serveur proxy de lire HTTPS?
Si l ' administrateur de votre ordinateur coopère , il est possible pour un serveur proxy de détecter les connexions https. Ceci est utilisé dans certaines entreprises afin de rechercher des virus et d'appliquer les directives d'utilisation acceptable.
Une autorité de certification locale est installée et l'administrateur informe votre navigateur que cela CA est digne de confiance . Le serveur proxy utilise cette autorité de certification pour signer ses faux certificats.
Oh et bien sûr, l'utilisateur a tendance à cliquer sur les avertissements de sécurité.