¿Cuál es el propósito de los datos autenticados asociados en AEAD?

3
  

Cifrado autenticado (AE) y cifrado autenticado con   Los datos asociados (AEAD, variante de AE) son una forma de cifrado que   Al mismo tiempo proporciona confidencialidad, integridad y autenticidad.   garantías sobre los datos.

Fuente : Wikipedia

Hace poco noté que varias verificadoras SSL comenzaron a señalar AEAD. Pero, ¿cuál es la diferencia entre AE y AEAD y cuál es el propósito de los "datos autenticados asociados" a una conexión cifrada? ¿Por qué no cifrarlo todo, en lugar de "autenticarlo" solamente?

    
pregunta Bob Ortiz 07.02.2018 - 00:41
fuente

1 respuesta

7

Como regla general, el propósito de los datos asociados (en adelante, "AD") es vincular un texto cifrado al contexto donde se supone que debe aparecer, por lo que los intentos de "cortar y pegar" un texto cifrado válido en un Se pueden detectar y rechazar diferentes contextos.

Por ejemplo, supongamos que estoy cifrando los valores que inserto en una base de datos clave / valor, y uso la clave de registro como AD. ¿Qué hace eso? Bueno, primero que nada, mecánicamente significa ahora que cada vez que descifre el valor, debo presentar la misma clave que AD o, de lo contrario, el descifrado fallará con un error de autenticidad. Así que mi aplicación tendrá que realizar ese paso para descifrar cualquiera de los datos correctamente.

En segundo lugar, y más profundo, es que al usar la clave como AD, he frustrado un tipo de ataque y, por ejemplo, el administrador de la base de datos, podría llevarse a cabo contra mi aplicación: tomar dos registros en la base de datos y intercambiar sus valores. Sin el AD, la aplicación felizmente descifraría estos, y asumiría ciegamente que leía el valor correcto para esas claves. Con la clave como AD, en su lugar, la aplicación notaría inmediatamente que los valores no son auténticos, aunque el atacante nunca los modificó, porque se están produciendo en el contexto incorrecto . Este es solo un ejemplo de muchos posibles, pero las aplicaciones de datos asociados tienden a tener ese sabor.

Un detalle importante que las personas a menudo omiten en los ejemplos es que los datos asociados no necesariamente tienen que almacenarse o transmitirse con el texto cifrado. Cualquier valor no secreto dependiente del contexto que las partes honestas puedan inferir correctamente puede ser útil como datos asociados. Por ejemplo, si las partes están ejecutando un protocolo complejo que se ha formulado en términos de una máquina de estados, de modo que cada parte correcta siempre pueda decir su propio estado y en qué debe estar una contraparte honesta, entonces esos estados, incluso si ' De acuerdo con el protocolo, se puede utilizar como AD. Este es el tipo de cosa que hace que las suites AEAD sean tan atractivas para los diseñadores de protocolos como TLS, es una herramienta que se puede usar para reducir la complejidad de un protocolo seguro.

    
respondido por el Luis Casillas 07.02.2018 - 02:14
fuente

Lea otras preguntas en las etiquetas