DESX

DESX
Skaber Ronald Rivest
Oprettet 1984
Nøglestørrelse 184 bit
Blokstørrelse 64 bit
Antal runder 16
Type Feistel netværk

DESX  er en symmetrisk krypteringsalgoritme baseret på DES (Data Encryption Standard) blokchiffer. Denne algoritme bruger en nøgleblegningsmetode til at forbedre modstanden mod brute-force- angreb .

Historie

Den originale DES-algoritme blev godkendt som standard i 1977 og havde en nøglelængde på 56 bit ( mulige nøgler). Algoritmen er blevet kritiseret på grund af det faktum, at computerkraften til fuldstændig opregning af nøgler var tilgængelig for store organisationer og regeringer, især US National Security Agency . For at øge nøglelængden af ​​DES-algoritmen uden væsentlige ændringer , blev DESX-algoritmen foreslået af kryptoanalytiker Ronald Rivest fra RSA i 1984. Den øgede sikkerhed af algoritmen blev formelt demonstreret af Joe Kilian og Philip Rogueway i 1996.

Beskrivelse

Essensen af ​​algoritmen er, at før og efter udførelse af en enkelt DES, bliver forskellige 64-bit nøglefragmenter overlejret dataene ved hjælp af XOR-operationen:

Således øges nøglelængden til 56 + 2 × 64 = 184 bit.

DESX er fuldt ud kompatibel med DES-algoritmen, hvis K 1 = K 2 = 0. Forfatterne af algoritmen giver en række enkle anbefalinger, der giver dig mulighed for at bruge en variabel størrelse af krypteringsnøglen, efter at have anvendt hashing med SHA-1. algoritme . Derudover tillader forfatterne af algoritmen brugen af ​​en 120-bit krypteringsnøgle, mens K 1 er sat lig med K 2 . Der er en variant af DESX, også udviklet af RSA, med en 120-bit nøgle bestående af K og K 1 , og K 2 værdien er en funktion af alle 16 bytes af krypteringsnøglen. En anden variant af DESX-algoritmen er kendt, hvor modulo-addition udføres i stedet for begge XOR-operationer .

Hastigheden af ​​DESX-algoritmen er omtrent lig med DES-hastigheden.

DESX er ret robust, har en hardwareimplementering og er meget udbredt.

DESX-implementeringen har været inkluderet i RSA Securitys BSAFE kryptografiske biblioteker siden slutningen af ​​1980'erne.

Sikkerhed

Selvom nøglelængden af ​​DESX-algoritmen er 184 bit, er den effektive nøglelængde 56 + 64 - 1 - log 2 (M) = 119 - log 2 (M) = ~119 bit, hvor M er antallet af kendte klartekst/ chiffertekstpar. Desuden falder nøglelængden til 88 bit med kendte klartekster og ved brug af et adaptivt valgt klartekstangreb . Derfor bruger nogle implementeringer nøglen K2 som en envejsfunktion af K1 og K.

DESX øger også styrken af ​​DES mod differentiel og lineær kryptoanalyse , selvom forbedringen ikke er så signifikant som i tilfælde af et brute-force-angreb. For at kunne angribe DESX-algoritmen med succes vil differentiel krypteringsanalyse kræve kendte klartekster ( for DES), mens lineær krypteringsanalyse vil kræve klartekster ( for DES).

Links