Cómo crear una página web https (¡30 puntos!)
La capa SSL se agrega a HTTP. La base de seguridad de HTTPS es SSL, por lo que los detalles del cifrado requieren SSL.
1. Secure Socket Layer) es un canal HTTP destinado a la seguridad. En pocas palabras, es una versión segura de HTTP.
2. Para comprender y comprender mejor el protocolo SSL, aquí nos centraremos en el protocolo de enlace del protocolo SSL. El protocolo SSL utiliza tanto tecnología de cifrado de clave pública como tecnología de cifrado simétrico. Aunque la tecnología de cifrado simétrico es más rápida que la tecnología de cifrado de clave pública, la tecnología de cifrado de clave pública proporciona una mejor tecnología de autenticación de identidad. El protocolo de protocolo de enlace SSL es muy eficaz para permitir que los clientes y servidores completen la autenticación de identidad mutua. El proceso principal es el siguiente:
① El navegador del cliente transmite el número de versión del protocolo SSL del cliente al servidor y lo cifra. El tipo de algoritmo, los números aleatorios generados y otra información diversa necesaria para la comunicación entre el servidor y el cliente.
②El servidor transmite el número de versión del protocolo SSL, el tipo de algoritmo de cifrado, el número aleatorio y otra información relacionada al cliente. Al mismo tiempo, el servidor también transmitirá su propio certificado al cliente.
③El cliente utiliza la información transmitida desde el servidor para verificar la legitimidad del servidor. La legitimidad del servidor incluye: si el certificado ha caducado, si la CA que emitió el certificado del servidor es confiable y si. la clave pública del certificado del emisor se puede descifrar correctamente, la "firma digital del emisor" del certificado del servidor y si el nombre de dominio en el certificado del servidor coincide con el nombre de dominio real del servidor. Si la verificación de legalidad falla, se desconectará la comunicación; si la verificación de legalidad pasa, se continuará con el cuarto paso.
④El cliente genera aleatoriamente una "contraseña simétrica" para la comunicación posterior y luego la cifra con la clave pública del servidor (la clave pública del servidor se obtiene del certificado del servidor en el paso ②) y luego pasa el cifrado. "contraseña maestra previa" al servidor.
⑤ Si el servidor requiere la autenticación de identidad del cliente (opcional durante el proceso de protocolo de enlace), el usuario puede crear un número aleatorio y luego realizar una firma de datos en él, y combinar este número aleatorio firmado con el del cliente. El certificado y la "contraseña maestra previa" cifrada se transmiten al servidor.
⑥Si el servidor requiere la autenticación de identidad del cliente, el servidor debe verificar la legalidad del certificado del cliente y el número aleatorio de firma. El proceso de verificación de legalidad específico incluye: si la fecha de uso del certificado del cliente es válida y si la fecha de uso del certificado del cliente es válida. Se proporciona el certificado del cliente. Si la CA es confiable, si la clave pública de la CA emisora puede descifrar correctamente la firma digital de la CA emisora del certificado del cliente y si el certificado del cliente está en la Lista de revocación de certificados (CRL). Si la verificación falla, la comunicación se interrumpe inmediatamente; si la verificación pasa, el servidor utilizará su propia clave privada para descifrar la "contraseña maestra previa" cifrada y luego realizará una serie de pasos para generar la contraseña de comunicación maestra (la el cliente también la generará mediante el mismo método (la misma contraseña maestra de comunicaciones).
⑦El servidor y el cliente utilizan la misma contraseña maestra, que es la "contraseña de llamada". Se utiliza una clave simétrica para cifrar y descifrar la comunicación segura de datos en el protocolo SSL. Al mismo tiempo, la integridad de la comunicación de datos debe completarse durante el proceso de comunicación SSL para evitar cualquier cambio en la comunicación de datos.
⑧El cliente envía un mensaje al servidor, indicando que la contraseña maestra en el paso ⑦ se utilizará en comunicaciones de datos posteriores como una clave simétrica, y notifica al servidor que el proceso de protocolo de enlace del cliente está completo.
⑨El servidor envía un mensaje al cliente, indicando que la contraseña maestra en el paso ⑦ se utilizará en comunicaciones de datos posteriores como una clave simétrica y, al mismo tiempo, notifica al cliente que el protocolo de enlace del lado del servidor El proceso está completo.
⑩La parte del protocolo de enlace de SSL finaliza y comienza la comunicación de datos del canal seguro SSL. El cliente y el servidor comienzan a utilizar la misma clave simétrica para la comunicación de datos y, al mismo tiempo, verifican la integridad de. la comunicación.