9346692696

9346692696



po 48 bitów każdy. Sposób tworzenia podkluczy dla kolejnych rund jest z góry określony i został opublikowany razem z opisem algorytmu.

Na każdą rundę składają się podstawienia:

Li+l — Ri

Ri+1 = Li® f {Ri, Ki+1)

gdzie Li to pierwsze 32 bity wyniku i-tej rundy, Ri - końcowe 32 bity i-tej rundy, a Ki to i-ty podklucz. Pierwszorzędne znaczenie ma tu funkcja /, która obliczana jest w kilku krokach:

-    Z 32 bitów Ri tworzona jest liczba 48-bitowa poprzez skopiowanie niektórych

bitów dwukrotnie. Jest to tzw. permutacja z rozszerzeniem.

—    Na otrzymanej liczbie dokonywana jest operacja xor z kluczem Ki+

—    Otrzymane 48 bitów dzielone jest na 8 ciągów po 6 bitów po czym każdy

z nich poddawany jest działaniu odpowiedniego dla danej rundy S-boksu.

-    Na koniec otrzymane 32 bity są permutowane.

DES jest szyfrem symetrycznym co oznacza, że do deszyfrowania używamy tej samej procedury co do kodowania. Wymaga to tylko użycia podkluczy w odwrotnej kolejności.

Jak już zostało zauważone DES szyfruje bloki danych po 64 bity (po usunięciu bitów parzystości tylko 56) i potrzebuje do tego klucza o tej samej długości. Aby zaszyfrować jakiś tekst jawny o sensownej długości wymagany jest ciąg, najlepiej pseudolosowych, kluczy. Oznacza to konieczność zbudowania wydajnego generatora sekwencji pseudolosowych.

Dla implementacji sprzętowych DESa przewidziano generator Linear Feed-back Shift Register (LFSR), który złożony jest z rejestru przesuwnego o danej długości oraz wielowejściowej bramki XOR podłączonej do wybranych bitów rejestru. Generator inicjowany jest przez zapisanie losowych bitów do pól rejestru. W pojedynczym cyklu generowany jest jeden bit. Najpierw w bramce XOR obliczana jest dysjunkcja, a wyliczony bit wpisywany jest na początek rejestru przesuwającego. Aby zrobić dla niego miejsce zawartość rejestru przesuwana jest o jedno pole, a ostatni bit, który „wypadnie” jest właśnie kolejnym bitem pseu-dolosowego ciągu.

LFSR w wersji hardwareowej działa bardzo szybko, niestety generowane przezeń ciągi nie przedstawiają sobą najwyższej jakości. Niech rejestr przesuwny LFSR ma długość k bitów. Wtedy okazuje się, że znajomość sekwencji 2k bitów wygenerowanego ciągu pozwala na przewidywanie dalszego zachowania generatora. Nie jest on więc kryptograficznie bezpieczny, ale szybkość działania pozostaje kuszącą cechą. Aby poprawić własności otrzymywanego ciągu funkcję xor można zastąpić inną, bardziej skomplikowaną. Można również w jednym układzie zastosować kilka LFSRów. Wartości generowne przez poszczególne układy są potem kombinowane w pewien sposób. Jest to prosta i tania metoda, ale w pewnych przypadkach nie daje porządanych efektów.

Przykładem takiej konstrukcji o dobrych rezultatach jest Shrinking LFSR składający się z dwu mdułów LFSR. Powiedzmy, że ciągi ai, a2,... i &i, 62, • • •



Wyszukiwarka

Podobne podstrony:
Untitled 18 Budowa S-funkcji Każdy sposób tworzenia modelu prowadzi do utworzenia S funkcji: a)
O ile sposób prezentowania celów dla controllingu może być jasno określony, to późniejsza
WA308?7 II5947 NAUKA O LUDACH617 I 601 go1). Okres cudów Nilowych był na każdy sposób bardzo ograni
IMG45 (7) 192KHina s w ten sposób Kretfonics panował w Mesenie, • Teme* no» u Argos. Po wyciągnięci
Image50 (3) Istnieje kilka sposobów tworzenia liczby mnogiej: •    poprzez powtórzeni
Zdjęcie0170 m*4 ■_po*
img224 224 bitów. Każdy wielobit, zgodnie z przyjętym kodem modulacyjnym, reprezento wany jest przez
IMG258 (2) •    Sposób korzystania •    Wynagrodzenie dla twórcy Prawa
SYNTEZA 17 cii, warunek koherencji syntezy, a więc po prostu jej istnienia, fundament tworzenia „kon
Metoda, w znaczeniu ogólnym, jest sposobem postępowania podejmowanym w sposób świadomy i powtarzalny

więcej podobnych podstron