S-Box

S-Box ( substitutionsboks ), engelsk betegnelse for en substitutionstabel , der bruges i en symmetrisk krypteringsalgoritme . En S-Box bidrager til "forvirring" (et udtryk brugt af Claude Shannon ) ved at gøre de originale oplysninger uforståelige. S-bokse gør det muligt at bryde krypteringsstrukturens linearitet , og antallet varierer alt efter algoritmerne. DES har for eksempel otte tabeller med 16x4-elementer.

En erstatningstabel tager generelt en variabel på m bits som input og producerer en output på n bits, input og output har ikke nødvendigvis den samme størrelse. Tabellerne er ofte defineret på forhånd, men det sker undertiden, at de genereres af algoritmen (for eksempel i Blowfish ). De værdier, der findes i S-Boxes, skal vælges på en sådan måde, at man undgår angreb på forskellige måder, f.eks. Ved hjælp af buede funktioner . I tilfælde af DES blev det bevist, at tabellerne var designet til at modstå differentiel kryptanalyse (en teknik, der først ville blive offentliggjort mange år senere).

Eksempel

Her er en S-Box (S 5 ) taget fra DES- algoritmen . 4-bit output modtages fra 6-bit input. Vi deler disse 6 bits i to dele: de to bits i enderne og de resterende fire bits (i midten). De to bits angiver rækken, og de midterste bits angiver den tilsvarende kolonne. For eksempel med en post "011011" deler vi os i " 0 1101 1 ". Dette giver for række "01" og for kolonne "1101". Outputtet fra tabellen er så "1001".

S 5 4 bits i midten af ​​indgangen
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Eksterne bits 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

Se også

Relaterede artikler

eksterne links