spis treści
zamknij
BHPEX Logo

Blog bezpieczeństwa w pracy

DES

DES (ang. Data Encryption Standard) to symetryczny szyfr blokowy zaprojektowany w 1975 roku przez IBM na zlecenie ówczesnego Narodowego Biura Standardów USA (obecnie NIST). Od 1976 do 2001 roku stanowił standard federalny USA, a od roku 1981 standard ANSI dla sektora prywatnego (znany jako Data Encryption Algorithm). Od kilku lat uznawany jest za algorytm niezapewniający odpowiedniego bezpieczeństwa, głównie ze względu na niewielką długość klucza, która sprawia, że jest bardzo podatny na atak siłowy. W 2001 roku w USA został zastąpiony w ramach standardu federalnego przez AES. Jest jednym z najlepiej przeanalizowanych algorytmów szyfrujących.

Modyfikacje DES

Istnieje wiele różnych modyfikacji algorytmu DES. Do najważniejszych z nich zaliczane są:

  • 3DES – wykorzystujący do szyfrowania i deszyfrowania trzy klucze. Najpierw wiadomość jest szyfrowana pierwszym kluczem, następnie deszyfrowana drugim i ponownie szyfrowana trzecim kluczem. Szyfrogram uzyskany w ten sposób jest dużo bezpieczniejszy, ponieważ DES nie tworzy grupy.
  • DESX – wykorzystuje metodą wybielania rozmywającą zależność pomiędzy danymi wejściowymi oraz wyjściowymi. Wykorzystuje 64-bitowy klucz wybielający, który przed pierwszym cyklem jest sumowany modulo 2 z tekstem jawnym. Wybielanie uodparnia algorytm na atak brutalny, kryptoanalizę liniową i różnicową.
  • CRYPT(3) – wykorzystywany do tworzenia skrótów haseł w systemach z rodziny UNIX. Klucz szyfrujący tworzony jest poprzez pobranie niższych 7 bitów z każdego z ośmiu pierwszych bajtów hasła i wykorzystywany jest do szyfrowania stałego ciągu znaków (najczęściej samych zer). W tej wersji algorytmu permutacja rozszerzona jest zależna od klucza.
  • Uogólniony DES (ang. Generalized DES, GDES, G-DES)– opracowany przez Ingrida Schaumuller-Bichla w 1981 w celu przyspieszenia i wzmocnienia pierwotnego algorytmu. Operuje na blokach danych zmiennej długości. W 1990 Eli Biham oraz Adi Shamir udowodnili, że ta odmiana algorytmu jest podatna na kryptoanalizę różnicową i ogólnie mniej bezpieczna od pierwowzoru.
  • RDES – algorytm, w którym zamiana lewej i prawej połowy na końcu każdego cyklu zależna jest od klucza. Odmiana ta jest odporna zarówno na kryptoanalizę różnicową, jak i liniową.
  • SnDES – rodzina algorytmów, w której S-bloki miały zostać zaprojektowane w taki sposób, aby były odporne na kryptoanalizę różnicową oraz liniową.
  • DES z S-blokami zależnymi od kluczy – S-bloki wykorzystywane podczas szyfrowania są generowane na podstawie bitów klucza.
    DES ze zmienionymi S-blokami – grupa odmian algorytmu, w których skupiono się na ulepszaniu S-bloków.
  • DES z niezależnymi podkluczami – odmiana algorytmu, która w każdym cyklu wykorzystuje inny podklucz do szyfrowania danych. Długość klucza w tej odmianie DES wynosi 768 bitów. Algorytm jest odporny na kryptoanalizę liniową, nie jest jednak odporny na kryptoanalizę różnicową.