Grano 128a


El cifrado de flujo Grain 128a se propuso por primera vez en el Symmetric Key Encryption Workshop (SKEW) en 2011 [1] como una mejora del predecesor Grain 128, que agregó mejoras de seguridad y autenticación de mensajes opcional utilizando el enfoque Encrypt & MAC. Una de las características importantes de la familia Grain es que se puede aumentar el rendimiento a expensas de hardware adicional. Grain 128a está diseñado por Martin Ågren, [1] Martin Hell, Thomas Johansson y Willi Meier.

Grain 128a consta de dos grandes partes: función de salida previa y MAC. La función de salida previa tiene un tamaño de estado interno de 256 bits, que consta de dos registros de 128 bits de tamaño: NLFSR y LFSR . El MAC admite longitudes de etiquetas variables w tales que . El cifrado utiliza una clave de 128 bits.

El cifrado admite dos modos de operación: con o sin autenticación, que se configura a través de la proporcionada de tal manera que si la autenticación del mensaje está habilitada y si la autenticación del mensaje está deshabilitada.

La función de salida previa consta de dos registros de 128 bits de tamaño: NLFSR ( ) y LFSR ( ) junto con 2 polinomios de retroalimentación y una función booleana .


Vista de grano 128a
Diagrama que muestra el procedimiento de puesta en marcha de la salida previa que retroalimenta el flujo de salida previa a las funciones y
Vista de grano 128a