Servidor + Certificado de cliente vs Certificado de servidor + Contraseña de cliente

2

Hay tres formas diferentes de utilizar TLS (1.2):

  1. el servidor y el cliente se autentican
  2. solo el servidor se autentica
  3. ninguno autentica

Si ni el servidor ni el cliente se autentican mediante un certificado, la conexión no está protegida contra los ataques de intermediarios (MITM).

La especificación TLS 1.2 dice que la conexión es segura tan pronto como el servidor se autentica. Y me pregunto:

  1. ¿Hay alguna diferencia de seguridad si el cliente se autentica o no si el servidor se autentica?

  2. Si tanto el cliente como el servidor necesitan autenticarse, ¿importa si el cliente envía un certificado de confianza en el saludo o simplemente envía una contraseña secreta (y segura) como datos de la aplicación?

    li>
pregunta MinecraftShamrock 30.07.2014 - 19:36
fuente

1 respuesta

7

Cuando solo el servidor envía un certificado, pero no el cliente, la conexión SSL es buena y elegante, pero el servidor no tiene ni idea de quién está hablando. Lo que proporciona SSL en ese caso es que el servidor puede estar seguro de que hablará con el mismo cliente todo el tiempo, sin que sea posible interceptarlo. Si el servidor aún debe saber quién puede ser el cliente, debe realizarse otra autenticación adicional, por ejemplo. el cliente envía un nombre de usuario + contraseña al servidor. Así es como van las cosas en los sitios web habituales de HTTPS.

La autenticación del cliente basada en certificados es más útil cuando el cliente desea demostrar su identidad al servidor, pero no debe dar ningún secreto a ese servidor. Esto realmente tiene sentido cuando el certificado de cliente ha sido emitido al cliente por una Autoridad de Certificación distinta del propietario del servidor. Si el servidor en sí está dando certificados a los clientes, entonces el uso de un certificado de cliente no tiene mucha ventaja conceptual sobre una autenticación simple de mostrar la contraseña.

(Los certificados de cliente pueden tener algunas ventajas de implementación: se pueden usar con tarjetas inteligentes compatibles con certificados; y dado que el certificado se realiza mediante el protocolo de enlace SSL, evita la necesidad de incluir un protocolo de autenticación de mostrar la contraseña en los datos de la aplicación.)

    
respondido por el Tom Leek 30.07.2014 - 19:52
fuente

Lea otras preguntas en las etiquetas