¿El uso de la misma clave secreta para AES-256-CBC y HMAC-SHA512 en Encrypt-then-MAC puede comprometer la clave?

4

Supongamos que uso una clave (y IV) para cifrar un fragmento de datos binarios con AES-256-CBC para producir los datos cifrados correspondientes.

Supongamos que luego lanzo estos datos cifrados en HMAC-SHA512 utilizando la misma clave que la anterior para producir un MAC. Envío los datos cifrados y el MAC a un destinatario.

El destinatario ahora puede verificar los datos cifrados con el MAC (si conoce la clave).

Mi pregunta es simple: ¿el hecho de que la clave que usé para AES-256-CBC que también usé para el HMAC-SHA512 pueda comprometer mi clave de alguna manera? En otras palabras, ¿es este un posible vector de ataque agregado contra mi clave (debido a posibles debilidades en SHA-512, o algo más)?

Para decirlo de otra manera, me pregunto si existe alguna diferencia en cuanto a la protección de una clave si esa clave se usa solo para AES-256-CBC en comparación con la utilizada para AES-256-CBC y HMAC-SHA512.

¿Estaría mejor usando CBC-MAC? (Especialmente si el uso de CBC-MAC hace que la clave pase por AES-256-CBC también, ¿no agrega ningún vector de ataque adicional? No estoy seguro de esto).

    
pregunta cryptonamus 03.07.2015 - 14:20
fuente

1 respuesta

2

Esta pregunta se responde de manera efectiva mediante una variación de la pregunta sobre crypto.SE , aquí: Utilizando la misma clave secreta para el cifrado y la autenticación en un esquema de cifrado y luego MAC

La parte pertinente de la respuesta está aquí: (énfasis mío).

  

Los problemas potenciales con el uso de la misma clave para el cifrado y MAC serían estructurales; [Un] ejemplo es CBC-MAC, que de hecho es idéntico al cifrado CBC, excepto que solo usa el último bloque cifrado como MAC. CBC-MAC funciona bien siempre y cuando no le dé al atacante acceso a los pares (p, c): p es un bloque de texto simple, c es el bloque de texto cifrado correspondiente, para la clave k que usa para CBC-MAC. Pero si usa la misma clave k para cifrar los datos, le está dando al atacante muchos de estos bloques.

     

Con HMAC vs AES, no se conoce tal interferencia. La sensación general de los criptógrafos es que AES y SHA-1 (o SHA-256) son "lo suficientemente diferentes" que no debería haber ningún problema práctico con el uso de la misma clave para AES y HMAC / SHA-1.      

Hay algunos algoritmos de cifrado y MAC que admiten de forma intrínseca compartir la misma clave. Esto es exactamente lo que sucede en GCM.

Entonces, el consenso general es que la seguridad está bien, y no introduce vulnerabilidades al compartir una clave entre AES y HMAC, pero también es un consenso general de que no es una buena higiene reutilizar una clave para diferentes fines Entonces, lo que resolvemos es que esta construcción generalmente está mal vista, pero no hay debilidades de seguridad conocidas o sospechadas en este momento.

    
respondido por el Xander 26.09.2016 - 17:34
fuente

Lea otras preguntas en las etiquetas