Red de conocimiento informático - Problemas con los teléfonos móviles - La diferencia entre la autenticación bidireccional SSL y la autenticación unidireccional

La diferencia entre la autenticación bidireccional SSL y la autenticación unidireccional

1. Seguridad diferente:

La autenticación unidireccional solo requiere que el sitio esté equipado con un certificado SSL, al que puede acceder cualquier usuario (excepto restricciones de IP, etc.), pero el servidor proporciona la identidad. autenticación. La autenticación bidireccional requiere que el servidor proporcione autenticación de identidad del cliente. Solo pueden acceder los clientes autorizados por el servidor, y la seguridad es relativamente mayor.

2. Diferentes usos:

Las aplicaciones web generalmente utilizan autenticación unidireccional. La razón es muy simple y no hay necesidad de autenticación de usuario en la capa de comunicación. Generalmente, la capa lógica se utiliza para garantizar la autenticación del usuario. Pero si se trata de un acoplamiento de aplicaciones empresariales, la situación es diferente y es posible que se le solicite al cliente que se autentique (en términos relativos). En este momento, se requiere autenticación bidireccional.

3. Diferentes requisitos:

La autenticación bidireccional del proceso de comunicación específico del protocolo SSL requiere que tanto el servidor como el cliente tengan certificados. El protocolo SSL de autenticación unidireccional no requiere que el cliente tenga un certificado de CA. Al negociar el esquema de cifrado simétrico y la clave de llamada simétrica, el servidor envía el esquema de cifrado no cifrado al cliente (sin afectar la seguridad del proceso SSL).

Datos extendidos:

Señales de protocolo de enlace que el cliente de autenticación bidireccional SSL enviará y recibirá:

Envíe un mensaje ClientHello para indicar la lista de cifrado algoritmos que soporta, también se envía el método de compresión y la versión más alta del protocolo, así como un número aleatorio que se utilizará más adelante.

Luego se recibe un mensaje ServerHello que contiene los parámetros de conexión elegidos por el servidor, derivados del ClientHello proporcionado por el cliente durante la fase inicial.

Cuando ambas partes conocen los parámetros de conexión, el cliente y el servidor intercambian certificados (dependiendo del sistema de clave pública seleccionado). Estos certificados suelen estar basados ​​en X.509, pero existen borradores que admiten certificados basados ​​en OpenPGP.

El servidor solicita la clave pública del cliente. Cuando el cliente tiene un certificado, significa autenticación bidireccional. Cuando no hay certificado, se genera una clave pública de forma aleatoria. El cliente y el servidor negocian en secreto la misma clave privada maestra a través de la clave pública (negociada aleatoriamente por ambas partes), que se implementa mediante una función de número pseudoaleatorio cuidadosamente diseñada. El resultado puede utilizar el intercambio Diffie-Hellman, o cifrado de clave pública simplificado, en el que cada parte descifra con su propia clave privada.

Todos los demás datos clave se cifran utilizando esta "clave maestra". En la transmisión de datos, la capa de registro se utiliza para encapsular protocolos de alto nivel como HTTP. Los datos de la capa de registro se pueden comprimir y cifrar a voluntad y comprimirlos junto con el código de verificación del mensaje. Cada paquete de capa de registro tiene una sección de tipo de contenido que registra el protocolo utilizado en capas superiores.

Enciclopedia Baidu: tecnología de cifrado SSL