Wymiana podstawy oraz sprawdzanie autentyczności partnera. Algorytm wymiany małego klucza używaniem metody Diffiego - Hellmana
AB x = 34y = 19 P= Tajny Klucz podstawowy Key = Parametry Defie-Hellmana g = 11 i n = 47są określane z góry.if Klucza oraz parametrów do B wysyłamy drogą bezpieczną. Prywatne kluczy Diffie-Hellmana, duża liczba pierwsza ≥1024 bitowa. Tajny Klucz mały (podstawa) p = 23
A A B B A- przesyła do B swoją tożsamość AB 8, R A 45, R B x = 34y = Mod 47= Mod 47 = 45 B- przesyła do A swoją tożsamość i akceptuje propozycję A. p= Mod 47= 8 19 Mod 47= A - oblicza publiczny klucz Diffiego-Hellmana B - oblicza publiczny klucz Diffiego -Hellmana i generuje R B. A – Generuje liczbę: R A = 7215 A i B – obliczają wspólny tajny klucz do wymiany p.
A A B B Key(R B ) Uwierzytelnienie: A oblicza wartość Key(R B ) i wysyła ją do B. Wartość ta oblicza się na podstawie klucza dwu parametrowego Key=( , 23). A oblicza wartość Key(R B ) i wysyła ją do B. Wartość ta oblicza się na podstawie klucza dwu parametrowego Key=( , 23). Uwierzytelnienie: A oblicza wartość Key(R B ) i wysyła ją do B. Wartość ta oblicza się na podstawie klucza dwu parametrowego Key=( , 23). A oblicza wartość Key(R B ) i wysyła ją do B. Wartość ta oblicza się na podstawie klucza dwu parametrowego Key=( , 23). AB 12, R A 11, R B Key(R A ) p=23 P K s = = Tak samo, B oblicza wartość Key(R A ) i wysyła ją do A R A = 7215 K s = 27
Szyfrowanie za pomocą tablicy szyfrów. Ponieważ obie strony mają dwie parametrowy klucz, one na podstawie tego klucza mają obliczyć tablicę szyfrów. Dalszym ciągu do szyfrowania danych używa się ta tablica szyfrów. schemat obliczenia tablicy szyfrów oraz szyfrowania pokazana na poniżej slajdach.
A B x = k Tab = While(x > 0){ Tab {x Mod p} x = x / p } x = k Tab = While(x > 0){ Tab {x Mod p} x = x / p } Key = ( , 23 ) 2 2 Tab= Mod 23 Najpierw procesy A i B obliczają tablicę szyfrów: gdzie k = , p=23
A oblicza wartość Key(R B ). AB P = 23 B oblicza wartość Key(R A ) R A = 7215 P =
Koniec