szyfrowanie rsa - mrostkow.oeiizk.waw.plmrostkow.oeiizk.waw.pl/prezentacjarsa.pdf · szyfrowanie...

12
Szyfrowanie RSA (Podróż do krainy kryptografii) Nie bójmy się programować z wykorzystaniem filmów Academy Khana i innych dostępnych źródeł oprac. Piotr Maciej Jóźwik

Upload: phamkhuong

Post on 01-Mar-2019

219 views

Category:

Documents


0 download

TRANSCRIPT

Szyfrowanie RSA(Podróż do krainy kryptografii)

Nie bójmy się programować

z wykorzystaniem filmów Academy Khana

i innych dostępnych źródeł

oprac. Piotr Maciej Jóźwik

Wprowadzenie metodyczne

Realizacja w zakresie rozszerzonym liceum ogólnokształcącego zgodnie z podstawąprogramową

5. Rozwiązywanie problemów i podejmowanie decyzji z wykorzystaniem komputera,stosowanie podejścia algorytmicznego.Uczeń:

11) opisuje podstawowe algorytmy i stosuje:e) algorytmy kompresji i szyfrowania, np.

- szyfr z kluczem jawnym (RSA)- wykorzystanie algorytmów szyfrowania np. w podpisie elektronicznym

Realizacja w gimnazjum ze zdolnymi uczniami lub w ramach zajęć dodatkowych

- użycie gotowego schematu szyfrowania bez zagłębiania się w szczegóły- wykorzystanie gotowych programów do tworzenia kluczy i szyfrowania wiadomości

Współtwórcy asymetrycznego algorytmu szyfrującego (1977r.)

Adi Szamir(ur. 6 czerwca 1952 r. w Tel Awiwie)– izraelski informatyk i kryptograf, profesor informatyki– w 1973 r. ukończył matematykę na Uniwersytecie Telawiwskim oraz informatykę w InstytucieNauki Weizmanna w Rechowot z tytułem doktorskim– pracował i wykładał na University of Warwick, Massachusetts Institute ofTechnology oraz École Normale Supérieure w Paryżu

Leonard Adleman(ur. 31 grudnia 1945 r.) – amerykański profesor nauk informatycznych oraz biologii molekularnej na UniwersyteciePołudniowej Kalifornii– studia ukończył w 1968 roku na Uniwersytecie Kalifornijskim w Berkeley, a doktorat obroniłw 1976 roku– w 1994 roku opublikował artykuł Obliczenia molekularne w rozwiązaniach problemówzłożonych, w którym przedstawił sposób użycia molekuł DNA w systemach obliczeniowych

W 2002 roku wszyscy trzej naukowcy otrzymali Nagrodę Turinga - zwaną równieżNoblem nauk informatycznych

Ronald Linn Rivest(ur. 6 maja 1947 r. w Schenectady - Nowy Jork)– informatyk, kryptograf– pracuje na stanowisku profesora informatyki uniwersytetu Massachusetts Institute ofTechnology

Schemat użycia szyfru RSA

NADAWCA ODBIORCA

klucz prywatny (n, d)

tekst jawny

Mtekst jawny

M

tekst zaszyfrowany

C

algorytm szyfrujący

C = Me mod n

algorytm deszyfrującyM = Cd mod n

klucz publiczny (n, e)

Generowanie kluczy (prywatnego i publicznego) – etap I

1. Wybieramy losowo dwie duże liczby

pierwsze p1 i p2 o zbliżonej długości bitów (po ok. 200

cyfr w zapisie dziesiętnym)

2. Obliczamy wartość n = p1⋅p2

Kluczem prywatnym jest para liczb (n, d)

Kluczem publicznym jest para liczb (n, e)

3. Obliczamy wartość funkcji Eulera dla liczby n:

φ(n)=(p1-1)⋅(p2-1)

4. Wybieramy liczbę e (1 < e < φ(n)) względnie

pierwszą z φ(n)

5. Znajdujemy liczbę d, gdzie jej różnica z

odwrotnością liczby e jest podzielna przez φ(n), czylid ≡ e−1 (mod φ(n)) lub e⋅d ≡ 1 (mod φ(n))

p1 = 11 p2 = 13

n = 143

φ(143) = 120

przyjmijmy e = 7

np. d = 1037d ≡ 1 (mod 120)

(143, 103)(143, 7)

niszczymy liczby p1 i p2

Szyfrowanie wiadomości – etap II

1. Wybieramy liczbę naturalną M (M < n)

odpowiadającą np. literom z przypisanym kodem

ASCII

2. Obliczamy wartość:

C = Me mod n

3. Wysyłamy wartość C

Literze „Q” odpowiada M = 81

C = 817 mod 143

C = 811⋅812⋅814 mod 143

C = (811 mod 143)⋅(812 mod 143)⋅(814 mod 143)

C = (81⋅126⋅3) mod 143

C = 16

811 mod 143 = 81 mod 143 = 81 812 mod 143 = 6561 mod 143 = 126

814 mod 143 = (812 mod 143)2 mod 143 = 1262 mod 143 = 15876 mod 143 = 3

Odszyfrowywanie kryptogramu – etap III

3. Odczytujemy dla liczby naturalnej M z tablicy

kodów ASCII literę

2. Obliczamy wartość:

M = Cd mod n

1. Otrzymujemy wiadomość C

Liczba M = 81 oznacza literę „Q”

M = 16103 mod 143

M = 161⋅162⋅164 ⋅1632⋅1664 mod 143

M = (161 mod 143)⋅(162 mod 143)⋅(164 mod 143)⋅(1632 mod 143)⋅(1664 mod 143)

M = (16⋅113⋅42⋅113⋅42) mod 143

C = 16

161 mod 143 = 16 mod 143 = 16 162 mod 143 = 256 mod 143 = 113

164 mod 143 = (162 mod 143)2 mod 143 = 1132 mod 143 = 12769 mod 143 = 42

168 mod 143 = (164 mod 143)2 mod 143 = 422 mod 143 = 1764 mod 143 = 48

1616 mod 143 = (168 mod 143)2 mod 143 = 482 mod 143 = 2304 mod 143 = 16

1632 mod 143 = (1616 mod 143)2 mod 143 = 162 mod 143 = 113

1664 mod 143 = (1632 mod 143)2 mod 143 = 1132 mod 143 = 42

Zastosowania

Bezpieczne połączenie internetowe – zarządzanie kontami bankowymi, działalnośćhandlowa (e-sklepy), dokonywanie zakupów przy użyciu kart płatniczych

1. Wygenerowanie zestawu kluczy RSA przez obie stacje2. Wymiana stacji kluczami publicznymi służącymi do szyfrowania przesyłanych

wiadomości3. Wysyłane wiadomości stacje szyfrują przy pomocy otrzymanego klucza publicznego4. Odebrane wiadomości stacje rozszyfrowują przy pomocy swojego klucza prywatnego

Podpis elektroniczny PGP (Pretty Good Privacy – całkiem niezła prywatność)

1. Stacja A szyfruje wiadomość W za pomocą swojego klucza tajnego otrzymanego odinstytucji przydzielającej certyfikaty i szyfr dołącza do tej wiadomości

2. Nowa wiadomość W‘ (jednoznacznie identyfikowana) składa się z oryginalnejwiadomości W oraz jej zaszyfrowanej kopii i zostaje przesłana do stacji B

3. Stacja B rozszyfrowuje (po potwierdzeniu) kopię kluczem publicznym stacji A4. Stacja B porównuje obie części wiadomości W' (w przypadku, gdy są identyczne, to

rzeczywiście pochodzą od stacji A)

Zamiast bibliografii – więcej informacji o szyfrowaniu, nie tylko RSA

1. Serwis Edukacyjny Nauczycieli I LO im. K. Brodzińskiego w Tarnowie (eduinf.waw.pl)

2. Opracowania o RSA i PGP

Co to jest ?

Maszyna szyfrująca Enigma

3. Wirtualna maszyna szyfrująca Enigmaa) http://enigmaco.de/enigma/enigma_pl.htmlb) http://www.wykop.pl/ramka/1360007/witrualna-enigma/

– materiał dla nauczyciela– materiał dla ucznia

ZADANIE DO ROZWIĄZANIA

Zaszyfruj RSA dowolne słowo (np. 3 – literowe), a następnie prześlij kryptogram do drugiejosoby, która powinna go rozszyfrować.W tym celu wykorzystaj następujące materiały:1. Tablica kodów ASCII2. Program do szyfrowania i deszyfrowania RSA z podręcznika WSiP „Informatyka cz. 1”

pod redakcją M. Sysły3. Serwis edukacyjny nauczycieli I LO im. K. Brodzińskiego w Tarnowie o szyfrowaniu RSA

„Kot” „KOT”lub