UMAC

En criptografía, un código de autenticación de mensajes basado en hashing universal o UMAC es un tipo de código de autenticación de mensajes (MAC) que se calcula eligiendo una función de hash de una clase de funciones de hash de acuerdo a algún proceso secreto (aleatorio) y aplicándosela al mensaje. El resúmen resultante o fingerprint se cifra para ocultar la identidad de la función de hash usada. Como con cualquier código MAC, puede usarse para verificar simultáneamente tanto la integridad de los datos como la autenticidad del mensaje. Un UMAC tiene fuerza criptográfica demostrable y comúnmente es bastante menos computacionalmente intensiva que otras MACs.

Hashing Universal

Digamos que la función de hash se elije de una clase de funciones de hash H, que mapea mensajes en D, el conjunto de posibles resúmenes de mensaje. A este conjunto se lo llama universal si, para cada par distinto de mensajes, hay como máximo |H|/|D| funciones que las mapean al mismo miembro de D.

Esto significa que si un atacante quiere reemplazar un mensaje con otro y, desde su punto de vista, la función de hash se elijió completamente al azar, la probabilidad de que el UMAC no detecte su modificación es de a lo sumo 1/|D|.

Esta definición, sin embargo, no es lo suficientemente fuerte. Si los mensajes posibles son 0 y 1, D={0,1}, y H consiste de la operación identidad y la negación, entonces H es universal. Por otro lado, si el resumen del mensaje se cifra mediante adición modular, el atacante puede cambiar el mensaje y el resumen al mismo tiempo, sin que el receptor se entere.

Other Languages
català: UMAC
English: UMAC
русский: UMAC