S-Box |
En
En general, una S-Box toma un número m de bits de entrada y los transforma en n
Esta ilustración muestra una S-Box de 6×4 bits de DES(S5):
S5 | 4 bit de entrada internos | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | ||
Bits 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 | 1100 | 0011 | 1001 | 1000 | 0110 | |
10 | 0100 | 0010 | 0001 | 1011 | 1100 | 1101 | 0111 | 1000 | 1111 | 1001 | 1100 | 0101 | 0110 | 0011 | 0000 | 1110 | |
11 | 1011 | 1000 | 1100 | 0111 | 0001 | 1110 | 0010 | 1101 | 0110 | 1111 | 0000 | 1001 | 1100 | 0100 | 0101 | 0011 |
Dada una entrada de 6 bits, la salida de 4 bits se encuentra seleccionando la fila de los dos bits externos y la columna de los 4 internos. Por ejemplo, una entrada "011011" tiene como bits externos (el bit de cada extremo) "01" y "1101" como bits internos. La correspondiente salida sería "1001".
Las S-Boxes de DES fueron objeto de intensivo estudio durante años con la intención de localizar una