Je lisais cet article en particulier la partie "SSL en action". C'est écrit :
Lorsque le client se connecte à company.com sur son port sécurisé par SSL, l'entreprise renvoie sa clé publique (et d'autres informations, comme les codes qu'elle prend en charge).
...
Une fois que le client est satisfait du serveur (et le serveur du client, si nécessaire), le client choisit un code SSL à utiliser dans la liste des méthodes de cryptage fournies par le serveur, et génère une "clé symétrique" (mot de passe) à utiliser avec ce code. Le client chiffre ce mot de passe à l'aide de la clé publique du serveur et le renvoie au serveur. Le serveur (et seulement le serveur) peut déchiffrer ce message et obtenir ce mot de passe, qui est maintenant partagé par le client et le serveur.
Donc, si je comprends bien, il y a seulement un la clé publique ; celle qui est donnée à company.com par le tiers de confiance (thawte/godaddy/verisign etc.). Le client choisit alors d'accepter cette clé/certificat et envoie un mot de passe utilisé pour chiffrer les communications futures.
S'il n'y a qu'une seule clé publique, un pirate ne peut-il pas se rendre une seule fois sur ce site, obtenir une copie de la clé publique, puis intercepter le client lorsqu'il envoie le mot de passe, le décrypter en utilisant la clé publique qu'il possède déjà, puis espionner toutes les communications futures ? Qu'est-ce qui empêche cela ?
La partie que je ne comprends pas est
Le serveur (et seulement le serveur) peut décrypter ce message et obtenir ce mot de passe.
Pourquoi seul le serveur peut décrypter le message ? Qu'est-ce qui empêche les autres de le décrypter ?