Caja S - S-box

En criptografía , una caja S ( caja de sustitución ) es un componente básico de los algoritmos de clave simétrica que realiza la sustitución. En los cifrados de bloque , se suelen utilizar para ocultar la relación entre la clave y el texto cifrado , lo que garantiza la propiedad de confusión de Shannon . Matemáticamente, una caja S es una función booleana vectorial .

En general, una caja S toma una cierta cantidad de bits de entrada , m , y los transforma en una cierta cantidad de bits de salida, n , donde n no es necesariamente igual am . Se puede implementar una caja S m × n como una tabla de búsqueda con 2 m palabras de n bits cada una. Normalmente se utilizan tablas fijas, como en el Estándar de cifrado de datos (DES), pero en algunos cifrados las tablas se generan dinámicamente a partir de la clave (por ejemplo, los algoritmos de cifrado Blowfish y Twofish ).

Ejemplo

Un buen ejemplo de una tabla fija es la caja S de DES (S 5 ), que asigna una entrada de 6 bits a una salida de 4 bits:

S 5 Medio 4 bits de entrada
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Pedazos externos 00 0010 1100 0100 0001 0111 1010 1011 0110 1000 0101 0011 1111 1101 0000 1110 1001
01 1110 1011 0010 1100 0100 0111 1101 0001 0101 0000 1111 1010 0011 1001 1000 0110
10 0100 0010 0001 1011 1010 1101 0111 1000 1111 1001 1100 0101 0110 0011 0000 1110
11 1011 1000 1100 0111 0001 1110 0010 1101 0110 1111 0000 1001 1010 0100 0101 0011

Dada una entrada de 6 bits, la salida de 4 bits se encuentra seleccionando la fila usando los dos bits externos (el primero y el último bits), y la columna usando los cuatro bits internos. Por ejemplo, una entrada " 0 1101 1 " tiene bits externos " 01 " y bits internos "1101"; la salida correspondiente sería "1001".

Las ocho cajas S de DES fueron objeto de un intenso estudio durante muchos años debido a la preocupación de que una puerta trasera (una vulnerabilidad conocida solo por sus diseñadores) pudiera haberse plantado en el cifrado. Los criterios de diseño de la caja S se publicaron finalmente (en Coppersmith 1994 ) después del redescubrimiento público del criptoanálisis diferencial , lo que demuestra que se habían ajustado cuidadosamente para aumentar la resistencia contra este ataque específico. Biham y Shamir descubrieron que incluso pequeñas modificaciones en una caja S podrían debilitar significativamente a DES.

Análisis y propiedades

Se ha investigado mucho sobre el diseño de buenas cajas S, y se sabe mucho más sobre su uso en cifrados de bloques que cuando se lanzó DES.

Cualquier caja S donde cualquier combinación lineal de bits de salida se produce mediante una función doblada de los bits de entrada se denomina caja S perfecta .

Los S-boxes se pueden analizar usando criptoanálisis lineal y criptoanálisis diferencial en forma de una Tabla de Aproximación Lineal (LAT) o Transformada de Walsh y Tabla de Distribución de Diferencias (DDT) o tabla de autocorrelación y espectro. Su fuerza se puede resumir en la no linealidad (doblada, casi doblada) y la uniformidad diferencial (perfectamente no lineal, casi perfectamente no lineal).

Ver también

Referencias

Otras lecturas

  • Chuck Easttom (2018). "Una metodología generalizada para diseñar elementos no lineales en primitivas criptográficas simétricas". 2018 IEEE 8th Annual Computing and Communication Workshop and Conference (CCWC) . Taller y conferencia de IEEE Computing and Communication (CCWC), 2018 IEEE 8th Annual. IEEE . págs. 444–449. doi : 10.1109 / CCWC.2018.8301643 . ISBN 978-1-5386-4649-6. S2CID  3659645 .

enlaces externos