CIPHERUNICORN-E


En criptografía , CIPHERUNICORN-E es un cifrado de bloque creado por NEC en 1998. Fue una de las técnicas criptográficas recomendadas para el uso del gobierno japonés por CRYPTREC en 2003. Sin embargo, la revisión de CRYPTREC de 2013 la ha dejado al nivel de "candidato".

El algoritmo tiene una estructura de red Feistel modificada de 16 rondas , con una función de mezcla adicional dependiente de la clave después de cada 2 rondas. El tamaño del bloque es de 64 bits y el tamaño de la clave de 128 bits. La función de ronda es bastante complicada, dividida en dos cálculos casi paralelos.

La primera parte (llamada corriente principal por los diseñadores) consta de búsquedas XOR y S-box , con algunas opciones influenciadas por la segunda parte. Esta segunda función (llamada generación de clave temporal ) usa más XOR y dos operaciones que son equivalentes a las multiplicaciones modulares . Las subclaves se agregan en varias etapas de ambas partes de la función de ronda. Hay 4 cajas S en total, cada una con entradas y salidas de 8 bits.

En 2000, NEC utilizó la misma estructura de alto nivel, con componentes más elaborados, para diseñar el cifrado CIPHERUNICORN-A .

El programa clave de CIPHERUNICORN-E utiliza una red Feistel anidada, basada en algunos de los mismos componentes básicos que el propio cifrado.

La complejidad de la función de ronda de CIPHERUNICORN-E ha dificultado su análisis. Se han realizado algunos análisis limitados en variantes simplificadas, lo que demuestra que probablemente sean resistentes tanto al criptoanálisis diferencial como al lineal .