Combinando MAC y Cifrado

4

¿Cuál es la forma más segura y preferida de combinar Cifrado y MAC? Hubo una conferencia sobre diferentes estrategias de combinación adoptadas por diferentes protocolos en un curso de criptografía realizado por coursera.

 - Authenticate then encrypt SSL 
   (MSG -> compute Tag(MSG)-> MSG + Tag -> Encrypt(MSG+Tag)
 - Encrypt then authenticate IPSEC
   (MSG -> encrypt(MSG) -> compute Tag(encrypted MSG) -> encrypted MSG + tag)
 - Encrypt and authenticate SSH 
   (MSG -> encrypt(MSG) -> compute Tag(MSG) -> encrypted MSG + tag

La conferencia concluyó con el enfoque IPSEC siendo el implemento correcto, pero todavía carezco de antecedentes matemáticos y por eso no se prefiere el enfoque SSL.

    
pregunta Ali Ahmad 27.12.2012 - 12:03
fuente

1 respuesta

5

La forma preferida es usar un modo de cifrado que haga el trabajo duro por ti; estos son cifrado autenticado . Las recomendaciones habituales son EAX y GCM .

Si está atascado con el cifrado "clásico" y con un MAC adicional (y está diseñando su propio protocolo, que es una tarea desalentadora), la manera teórica "buena" es aplicar el MAC a los datos cifrados. Esto se llama "encrypt-then-MAC". Consulte esta pregunta en crypto.SE . Como resumen, cuando aplique el MAC a los datos encriptados, entonces lo que el MAC haga no podrá revelar nada en los datos de texto sin formato y, de manera similar, ya que verifica el descifrado de MAC antes , entonces esto protegerá contra muchos ataques de texto cifrado elegidos (cuando los atacantes te alimentan con el llamado "texto cifrado" y observa tus reacciones).

    
respondido por el Thomas Pornin 27.12.2012 - 19:22
fuente

Lea otras preguntas en las etiquetas