Análisis del principio básico del protocolo de transmisión encriptado HTTPS

Inserte la descripción de la imagen aquí

Resumen: Enciclopedia Baidu:
  HTTPS (Protocolo de transferencia de hipertexto a través de SecureSocket Layer) es un canal HTTP cuyo objetivo es la seguridad. Sobre la base de HTTP, el cifrado de transmisión y la autenticación de identidad garantizan la seguridad del proceso de transmisión. HTTPS se une a la capa SSL bajo la base de HTTP. La base de seguridad de HTTPS es SSL, por lo que el contenido cifrado detallado requiere SSL. HTTPS tiene un puerto predeterminado diferente que HTTP y una capa de cifrado / autenticación (entre HTTP y TCP). Este sistema proporciona autenticación y métodos de comunicación encriptados. Es ampliamente utilizado en comunicaciones sensibles a la seguridad en la World Wide Web, como los pagos de transacciones.

PD: el protocolo de enlace de tres vías HTTP es relativamente simple, solo confirme la conexión de red, puede llevar a cabo la transmisión de datos a través del proceso normal, los detalles específicos no se repiten.

1. HTTPS & HTTP

  1. HTTPS es un protocolo de transmisión cifrado SSL seguro, HTTP es un protocolo de transmisión de hipertexto y la información se transmite en texto claro
  2. El navegador HTTPS muestra un bloqueo de seguridad verde, HTTP no se muestra o la pantalla no es segura
  3. Puerto estándar HTTPS 443, puerto estándar HTTP 80
  4. HTTPS se basa en la capa de transporte, HTTP se basa en la capa de aplicación
  5. HTTPS es más seguro que HTTP y los motores de búsqueda son más amigables

2. HTTPS的握手过程相对比较复杂

Motivo: necesita tener un proceso de transmisión cifrada y determinar la clave real que se utilizará cuando finalmente transmitamos datos

3. 公钥 & 私钥

  1. Clave privada: herramienta de descifrado almacenada en el servidor
  2. Clave pública: una cadena cifrada que se puede obtener
  3. Principio: la clave pública y la clave privada se utilizan principalmente para la transmisión durante el protocolo de enlace, es decir, los datos que se transmitirán se cifran primero con la clave pública y luego se descifran con la clave privada después de la transmisión al servidor. Por lo tanto, incluso si hay captura e intercepción de paquetes, no hay una clave privada para descifrar.

4. HTTPS的握手详解:

Proceso:

  1. En este proceso de transmisión, el cliente generará primero un número aleatorio y luego lo transmitirá al servidor. Al mismo tiempo, también traerá un conjunto de cifrado (hay muchos conjuntos de cifrado diferentes) admitidos por el cliente.
  2. Luego, el servidor almacenará primero el número aleatorio y también generará un número aleatorio, que se transmitirá al cliente junto con el certificado del servidor, es decir, la clave pública.
  3. Después de que el cliente obtiene el número aleatorio del servidor, también lo almacena primero y luego la clave pública que se le pasa a través del servidor generará una clave maestra previa.
  4. En el proceso de generar la clave maestra previa, también se genera un número aleatorio (por lo que se generan un total de tres números aleatorios). Después de generar este número aleatorio, se cifra con la clave pública y se transmite al servidor.
  5. Después de que estos datos se transmiten al servidor, el servidor obtiene la clave maestra previa a través del descifrado de clave privada, que es una cadena aleatoria, y luego el cliente y el servidor realizan simultáneamente una operación de algoritmo en estos tres números aleatorios para generar una clave maestra.
  6. Después de tener la clave maestra, toda la transmisión de datos posterior se cifra a través de la clave maestra.

Puntos clave:

  1. Este proceso es un proceso que no puede ser explicado por un intermediario. Debido a que usa la clave pública para cifrar los datos, solo el lado del servidor tiene la clave privada para descifrar.
  2. Porque implicará un conjunto de cifrado, porque el servidor final elegirá un conjunto de cifrado, que debe ser soportado por el lado del cliente, y luego ambos lados determinan usar el mismo conjunto de cifrado al mismo tiempo, y realizar una operación de algoritmo en estos tres números aleatorios para generar Una llave maestra.
  3. Porque el último número aleatorio solo es conocido por el cliente y el servidor. El intermediario no puede obtenerlo en absoluto, por lo que la clave maestra que producen tampoco puede ser descifrada por el intermediario.
  4. Debido a que la clave maestra es la misma en ambos lados, ambos lados pueden descifrar los datos después del cifrado, entonces el intermediario no tiene forma de conocer la clave maestra, es decir, no hay forma de descifrar los datos.

En este punto, una transmisión de datos en el medio se ha convertido en una transmisión segura.

5. 图解

Inserte la descripción de la imagen aquí

6. HTTPS的应用面

En la era de Internet extremadamente abierta, HTTPS es extremadamente importante para garantizar la transmisión de datos y evitar el secuestro.

  1. Sitios web dirigidos por el usuario, como sistemas de comercio electrónico y buzones
  2. Sitios web altamente privados como sistemas de pago y finanzas.
  3. Sitios web que utilizan motores de búsqueda como fuente principal de tráfico.
  4. Un sitio web enfocado en la experiencia del usuario

La seguridad HTTPS ha mejorado mucho en comparación con HTTP, pero la seguridad de Internet siempre es relativa y no existe seguridad absoluta.

Publicó 40 artículos originales · ganó 31 · vistas 2769

Supongo que te gusta

Origin blog.csdn.net/CodingmanNAN/article/details/104367061
Recomendado
Clasificación