diferencia entre autenticación, integridad y autenticación de origen de datos

8

Primero pensé que todos estos términos eran sinónimos, pero a veces veo esos términos usados en el mismo documento. Por ejemplo, en MSDN:

  

autenticación de origen de datos, que permite al destinatario verificar que   los mensajes no han sido manipulados en tránsito (integridad de los datos) y   que se originan en el remitente esperado (autenticidad).

No entiendo completamente en qué se diferencia la integridad de la autenticidad.

¿Cómo podría ser posible garantizar solo la autenticidad del remitente sin integridad de datos? Si un atacante puede modificar el contenido, ¿cómo podemos confiar en que el campo del remitente sea correcto?

De manera similar, ¿qué significa saber que algunos datos tienen integridad, pero no saber el remitente?

Para mí, solo se trata de incluir o no el campo "Remitente" del encabezado en la parte del mensaje que se verifica para verificar su integridad (o autenticidad, ahora estoy confundido)

Por lo que sé, las firmas digitales resuelven tanto la integridad como la autenticidad, tal vez por eso no puedo ver la diferencia entre las dos.

    
pregunta Jacques 07.07.2015 - 15:34
fuente

1 respuesta

19

Integridad se trata de asegurarse de que algunos datos no se hayan alterado de alguna "versión de referencia". Autenticidad es un caso especial de integridad, donde la "versión de referencia" se define como "lo que fuera cuando estaba bajo el control de una entidad específica". Autenticación se trata de asegurarse de que una entidad determinada (con la que está interactuando) sea quien crea que es.

En ese sentido, obtienes autenticidad cuando la integridad y la autenticación se unen. Si lo prefiere, la autenticidad es la autenticación aplicada a un dato a través de la integridad.

Por ejemplo, considere que usa su navegador para conectarse a algún sitio web https:// . Esto significa SSL. Hay autenticación durante el protocolo de intercambio inicial: el servidor envía su certificado y utiliza su clave privada, y el certificado del servidor contiene el nombre del servidor; su navegador verifica que el nombre del servidor coincida con lo que se esperaba (la parte del nombre del servidor en la URL). Luego, todos los datos intercambiados se envían como "registros" que están cifrados y protegidos contra alteraciones: esto es integridad . Dado que su navegador recibe datos que se garantizan sin modificaciones respecto a lo que era cuando fue enviado por un servidor debidamente autenticado, se puede decir que los datos son "auténticos".

No pienses demasiado en las cosas. La terminología es al menos a medias tradicional, lo que significa que no es necesariamente práctica. Nos gusta hablar de la tríada "Confidencialidad - Integridad - Autenticidad" principalmente porque hace que el acrónimo "CIA" se vea bien.

    
respondido por el Thomas Pornin 07.07.2015 - 15:45
fuente

Lea otras preguntas en las etiquetas