Poly1305-AES

Poly1305-AES es un código de autenticación del mensaje (MAC) criptográfico escrito por Daniel J. Bernstein. Puede ser usado para verificar la integridad de datos y la autenticidad de un mensaje.

Descripción

Poly1305-AES calcula un autenticador (de 16 bytes) de 128 bites de un mensaje de longitud variable, usando una llave AES de 128 bites, una llave adicional de 106 bites y nonce de 128 bites. El nombre se saca del uso del número primo 2 - 5 y el Estándar de la Codificación Avanzado.

Seguridad

La seguridad de Poly1305-AES está muy cerca del algoritmo de la cifra del bloque de AES subyacente. Como consiguiente, el único modo para un atacante de romper Poly1305-AES es romper AES.

El caso de:For, suponiendo que los mensajes sean paquetes hasta 1024 bytes; que el atacante vea mensajes certificados bajo una llave Poly1305-AES; que el atacante intente unas falsificaciones enormes; y que el atacante no puede romper AES con la probabilidad encima; entonces, con probabilidad al menos, todo ser rechazado.

Poly1305-AES también ofrece la cifra replaceability. Si algo realmente se equivoca con AES, se puede substituir con la garantía de seguridad idéntica.

Velocidad

Poly1305-AES se puede calcular en la alta velocidad en varias CPUs: para un mensaje del n-byte, más que 3.1n+780 los ciclos de Athlon no son necesarios, por ejemplo.

El autor ha soltado realizaciones optimizadas para Athlon, Pentium Pro/II/III/M, PowerPC y UltraSPARC, además de realizaciones de la referencia no optimizadas en C y C ++.

Enlaces externos



Buscar