Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

SHA1 – Secure Hash Algorithm

Podobne prezentacje


Prezentacja na temat: "SHA1 – Secure Hash Algorithm"— Zapis prezentacji:

1 SHA1 – Secure Hash Algorithm
Funkcje skrótu SHA1 – Secure Hash Algorithm

2 Skróty komunikatów – message digest
Pęknie podpisy cyfrowe można otrzymać używając funkcji mieszającej (haszującej). Jest to funkcja jedno kierunkowa. Jako argument używa duży fragment tekstu i z tego fragmentu otrzymuje co najmniej bitowy skrót. Tekst otwarty niech będzie P (paylaod). Tą funkcję oznaczamy przez MD (Massage Digest) i ma ona następujące własności: Obliczenie MAC = MD( P ) jest bardzo łatwo. Obliczenie P na podstawie MAC jest w praktyce nie wykonalne. Dla danego P nie da się znaleźć takiego Q, że Q≠P oraz MD( P ) = MD( Q ) Zmiana nawet 1 bitu w tekście wejściowym powoduje drastyczne zmiany w wartości funkcji

3 Skróty komunikatów – message digest
Aby łatwe było spełnienie kryterium 3 łańcuch wynikowy funkcji mieszającej powinien mieć długość co najmniej 128 bitów. W celu zadośćuczynienia kryterium 4 funkcja mieszająca powinna wykonywać dość znaczące przetasowania bitów, zdecydowanie różne od opisywanych wcześniej symetrycznych algorytmów szyfrowania. Obliczenie skrótu z tekstu otwartego wykonywane jest znacznie szybciej niż zaszyfrowanie tego tekstu za pomocą klucza publicznego, lak więc opisywana metoda może znacząco poprawić efektywność systemów podpisu elektronicznego System oparty na skrótach komunikatów może funkcjonować także w połączeniu z kluczami publicznymi

4 Funkcja mieszająca – SHA1
Blok 512 bitowy wypełnienie Słowo 32 bitowe Słowo 32 bitowe SHA-1 przetwarza tekst wejściowy w podziale na bloki 512-bitowe, produkuje jednak wynik 160-bitowy Wi = S1( Wi-3Wi-8Wi-14Wi-16 ), i=16,…, (1) Inicjalizacja zmiennych Wypełnienie tablicy W według wzoru (1) Obliczanie zmiennych A,B,C,D i E Obliczanie zmiennych H0 -H4. W16 = S1( W13W8W2W0), W17 = S1( W14W9W3W1), ……………………………………. W79 = S1( W76W71W65W63),

5 SHA gdzie Sm(W) oznacza cykliczne przesunięcie (rotację) 32-słowa W o m bitów w lewo. Następnie pięć zmiennych roboczych A, B, C, D, E inicjowanych jest zawartością H0 -H4. Wykonywane dalej obliczenia dają się zapisać w postaci następującego pseudokodu: for ( i=0; i<80: i++) { temp=S5 (A) + f(B, C, D) + E + Wi; E=D; D=C; C = S30(B); B = A; A = temp; }

6 SHA gdzie funkcje mieszające/dane są wzorami:
f(B, C, D) = ( B & C )||( !B & D ) 0 < i < 19 f(B, C, D) = B xor C xor D 20 < i < 39 f(B, C, D) = ( B & C )||( B & D )||( C & D ) 40 < i< 59 f(B, C, D) = B xor C xor D 60 < i< 79 Oraz operatory: And &, koniunkcja bitowa, Or ||, alternatywa bitowa, xor symetryczna różnica bitowej, not -!, negacja bitowa.

7 SHA Po wykonaniu 80 iteracji zawartość zmiennych A -E dodawana jest do zawartości zmiennych H0 -H4. H0 = H0 +A ……………. H4 = H4 +E Przy przejściu do nowego bloku tablica W ponownie inicjowana jest jego zawartością, natomiast wartość zmiennych H0 -H4 nie jest zmieniana. Po przetworzeniu ostatniego bloku zmienne te zawierają wynik funkcji. . Oraz opracowane są nowe wersje funkcji SHA-1 zwracające wyniki o długości 256,384 i 512 bitów. Patrz dokument RFC 3174

8 Integralność MD(Payload) = MAC ? Ann Algorytm SHA Bann 160 bitowy
Skrót Otwarty text Anny o dowolnej długości Algorytm SHA Payload MAC MD(Payload) = MAC ? Payload MAC Bann

9 Koniec części


Pobierz ppt "SHA1 – Secure Hash Algorithm"

Podobne prezentacje


Reklamy Google