Maison  >  Article  >  Quelle est la méthode de cryptage https ?

Quelle est la méthode de cryptage https ?

尚
original
2019-07-20 17:13:0614029parcourir

Quelle est la méthode de cryptage https ?

Cryptage HTTPS

Introduction

Http directement via du texte brut Les messages sont transmis entre le navigateur et le serveur, et le contenu de la communication peut facilement être intercepté et capturé.

Https utilise une combinaison de cryptage symétrique et de cryptage asymétrique pour communiquer.

Https n'est pas un nouveau protocole au niveau de la couche applicative, mais l'interface de communication HTTP utilise SSL et TLS pour renforcer le mécanisme de cryptage et d'authentification.

Méthode de cryptage

Cryptage symétrique : Le cryptage et le déchiffrement utilisent la même clé.

Cryptage asymétrique : les clés apparaissent par paires, divisées en clés publiques et clés privées. Le cryptage par clé publique nécessite un déchiffrement par clé privée, et le cryptage par clé privée nécessite un déchiffrement par clé publique.

La différence entre les deux

Le cryptage symétrique est rapide, tandis que le cryptage asymétrique est lent.

Le cryptage symétrique nécessite d'exposer la clé, ce qui n'est pas différent de la transmission en texte brut.

Le chiffrement asymétrique expose la clé publique pour le chiffrement du client, et le serveur utilise la clé privée pour déchiffrer.

Sélection du cryptage HTTPS

Inconvénients du cryptage symétrique

Le cryptage symétrique est rapide et adapté à l'algorithme de cryptage HTTPS, mais le mot de passe est transmis entre le serveur et navigateur Le processus clé a été surveillé et transmis en texte clair.

Inconvénients du chiffrement asymétrique

Le serveur expose uniquement la clé publique. Le navigateur utilise la clé publique pour chiffrer asymétriquement le message, et le serveur utilise la clé privée pour déchiffrer le message. Mais lorsque le serveur répond au navigateur, il ne peut utiliser que la clé privée pour chiffrer, et le navigateur ne peut utiliser que la clé publique pour déchiffrer. Cependant : la clé publique est connue de tous, et tout le monde peut lire le message répondu par le serveur pour le déchiffrer, cela ne peut donc pas résoudre le problème du serveur qui envoie le message au navigateur.

Cryptage HTTPS

Une combinaison de cryptage symétrique et de cryptage asymétrique

Le navigateur utilise l'URL HTTPS pour accéder au serveur et établir un lien SSL.

Le serveur reçoit le lien SSL et renvoie la clé publique A cryptée asymétriquement au navigateur

Le navigateur génère un nombre aléatoire comme clé cryptée symétriquement B

Parcourir Le Le navigateur utilise la clé publique A pour crypter la clé B qu'il a générée et obtient la clé C

Le navigateur envoie la clé C au serveur.

Le serveur utilise la clé privée D pour décrypter la clé reçue C et obtient la clé de chiffrement symétrique B.

La clé B peut être utilisée comme clé de cryptage symétrique pour communiquer entre le navigateur et le serveur.

Résumé

De cette façon, le navigateur et le serveur partagent une clé de cryptage symétrique B, et l'important est qu'elle ne soit pas interceptée. Le cryptage asymétrique n'est effectué qu'une seule fois lors de la transmission de la clé B, puis le cryptage symétrique est utilisé pour transmettre les données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn