Je viens de lire sur les différences entre http et https brièvement. Et ce que je n'ai pas compris, c'est le scénario possible suivant:
Tout le monde a la clé publique SSL, non?
Ainsi, n'importe qui peut obtenir la clé publique d'un serveur Web, puis l'utiliser pour déchiffrer les messages envoyés depuis le serveur Web? De cette façon, si le serveur Web envoie des informations secrètes, les intrus peuvent le savoir, non?
J'ai compris que la clé privée appartient au serveur Web. Par conséquent, seul le serveur Web peut déchiffrer le message crypté (à l'aide d'une clé publique) envoyé par le navigateur. Les données envoyées par le navigateur sont donc sécurisées. Mais je doute que les données reçues du serveur Web soient réellement sécurisées.
Ou disons si la clé publique change d'un utilisateur à l'autre. Mais l'intrus peut le pirater lorsque le navigateur l'envoie pour la première fois, n'est-ce pas?
S'il vous plaît corrigez-moi si j'ai mal compris.
EDIT: D'accord, je pense que je l'obtiens de la description fournie par le questionneur dans ce lien:
Comment fonctionne SSL? N'y a-t-il pas un trou?
Ça dit:
Lorsque le client se connecte à company.com sur son port sécurisé SSL, l'entreprise renvoie sa clé publique (ainsi que d'autres informations, telles que le type de cryptage pris en charge). ... une fois que le client est satisfait du serveur (et le serveur avec le client, si nécessaire), le client choisit un chiffrement SSL à utiliser dans la liste des méthodes de chiffrement fournies par le serveur, et génère une "clé symétrique" (mot de passe) à utiliser avec ce chiffre. Le client chiffre ce mot de passe à l'aide de la clé publique du serveur et le renvoie au serveur. Le serveur (et seul le serveur) peut déchiffrer ce message et obtenir ce mot de passe, qui est maintenant partagé par le client et le serveur.
Cela signifie que le client ne crypte pas uniquement avec la clé publique qu'il possède, mais utilise un mot de passe qu'il a généré (clé symétrique) qui sera partagé avec le serveur Web à l'aide du cryptage à clé publique. Et seul le serveur Web peut connaître le mot de passe partagé par le client, car il est seul propriétaire de la partie clé privée. Le serveur Web et le client utilisent donc la clé symétrique pour chiffrer les messages, ce que personne ne sait ni ne peut s’immiscer.
Ai-je raison?