En criptografia, una Caixa S (caixa de Substitució) és un component bàsic dels algorismes de xifratge de clau simètrica que realitza una substitució. En xifratge per blocs, s'utilitzen típicament per enfosquir la relació entre la clau i el text xifrat —; propietat de Shannon de confusió. En molts casos, les Caixes-S s'escullen prudentment per resistir el criptoanàlisi.
En general, una Caixa-S pren un nombre d'entrades bits m, i els transforma en algun nombre de bits de sortida, n: un a Caixa S m ×n es pot implementar com una lookup table amb 2m paraules de n bits cadascun. Les taules fixes es fan servirn normalment, com en el DES, però en alguns algorismes de xifatge les taules es generen dinàmicament de la clau; p. ex. en els algoritmes d'encriptació Blowfish i Twofish. Bruce Schneier descriu el Pas de multiplicació modular d'IDEA com una Caixa-S clau dependent.
Un bon exemple és aquesta 6×4-bit Caixa-S de DES (S5):
S5 | Middle 4 bits of input | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | ||
bits exteriors | 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 |
Donada una entrada de 6 bits, la sortida de 4 bits es troba seleccionant la fila que fent servir els dos bits externs (el primer i l'últim), i la columna fent servir els quatre bits interns. Per exemple, una entrada "011011" té bits exteriors "01" i bits interiors "1101"; la sortida corresponent seria "1001".
Les 8 Caixes-S de DES varen ser tema d'estudi intens durant molts anys per la preocupació de Porta falsa —; un vulnerabilitat coneguda només pels seus dissenyadors — podria haver estat implantada en el xifratge. Els criteris de disseny de les Caixes-S es publicaven finalment (Don Coppersmith, 1994) després de la redescoberta pública del criptoanàlisi diferencial, mostrant que havien estat afinats prudentment per augmentar la resistència en contra d'aquest atac específic. Una altra investigació ja havia indicat que les modificacions fins i tot petites a una Caixa-S podrien afeblir significativament DES.
Hi ha hagut molta investigació sobre el disseny de bones Caixes-S, i se'n sap molt més sobre el seu ús en sistemes de xifratge de bloc que quan sortia el DES.