Kryptografia systemy z kluczem publicznym. Kryptografia systemy z kluczem publicznym



Podobne dokumenty
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 5

Podstawy systemów kryptograficznych z kluczem jawnym RSA

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 9

n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze.

Zarys algorytmów kryptograficznych

Wykład IV. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

Kryptologia przykład metody RSA

PuTTY. Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Inne interesujące programy pakietu PuTTY. Kryptografia symetryczna

Szyfrowanie RSA (Podróż do krainy kryptografii)

RSA. R.L.Rivest A. Shamir L. Adleman. Twórcy algorytmu RSA

Copyright by K. Trybicka-Francik 1

Copyright by K. Trybicka-Francik 1

Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Marcin Pilarski

Matematyka dyskretna. Wykład 11: Kryptografia z kluczem publicznym. Gniewomir Sarbicki

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA

Seminarium Ochrony Danych

Parametry systemów klucza publicznego

Informatyka kwantowa. Zaproszenie do fizyki. Zakład Optyki Nieliniowej. wykład z cyklu. Ryszard Tanaś. mailto:tanas@kielich.amu.edu.

Kryptografia systemy z kluczem tajnym. Kryptografia systemy z kluczem tajnym

Wykład VI. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Bezpieczeństwo systemów komputerowych

Kryptografia-0. przykład ze starożytności: około 489 r. p.n.e. niewidzialny atrament (pisze o nim Pliniusz Starszy I wiek n.e.)

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 11

Przewodnik użytkownika

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Algorytmy asymetryczne

Bezpieczeństwo danych, zabezpieczanie safety, security

LICZBY PIERWSZE. 14 marzec Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F.

Bezpieczeństwo w sieci I. a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp.

KRYPTOGRAFIA ASYMETRYCZNA I JEJ ZASTOSOWANIE

Spis treści. Przedmowa... 9

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7

Załóżmy, że musimy zapakować plecak na wycieczkę. Plecak ma pojemność S. Przedmioty mają objętości,,...,, których suma jest większa od S.

Wybrane zagadnienia teorii liczb

LICZBY PIERWSZE. Jan Ciurej Radosław Żak

BSK. Copyright by Katarzyna Trybicka-Fancik 1. Bezpieczeństwo systemów komputerowych. Podpis cyfrowy. Podpisy cyfrowe i inne protokoły pośrednie

2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 1

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

Sieci komputerowe. Wykład 9: Elementy kryptografii. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Laboratorium nr 3 Podpis elektroniczny i certyfikaty

2 Kryptografia: algorytmy symetryczne

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, Kryptografia: algorytmy asymetryczne (RSA)

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA)

Zastosowania informatyki w gospodarce Wykład 5

Szyfrowanie informacji

Systemy Mobilne i Bezprzewodowe laboratorium 12. Bezpieczeństwo i prywatność

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

WSIZ Copernicus we Wrocławiu

w Kielcach, 2010 w Kielcach, 2010

Wasze dane takie jak: numery kart kredytowych, identyfikatory sieciowe. kradzieŝy! Jak się przed nią bronić?

Plan całości wykładu. Ochrona informacji 1

Szyfrowanie wiadomości

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 8

Wykład VIII. Systemy kryptograficzne Kierunek Matematyka - semestr IV. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

KONGRUENCJE. 1. a a (mod m) a b (mod m) b a (mod m) a b (mod m) b c (mod m) a c (mod m) Zatem relacja kongruencji jest relacją równoważności.

Czym jest kryptografia?

Wprowadzenie do technologii VPN

Bezpieczeństwo systemów komputerowych. Metody łamania szyfrów. Kryptoanaliza. Badane własności. Cel. Kryptoanaliza - szyfry przestawieniowe.

Bezpieczeństwo systemów komputerowych. Kryptoanaliza. Metody łamania szyfrów. Cel BSK_2003. Copyright by K.Trybicka-Francik 1

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI

kryptografię (z gr. κρυπτός oraz γράφω gráfo pisać ), czyli gałąź wiedzy o utajnianiu wiadomości;

Technologie cyfrowe semestr letni 2018/2019

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

Wykład 4. komputerowych Protokoły SSL i TLS główne slajdy. 26 października Igor T. Podolak Instytut Informatyki Uniwersytet Jagielloński

SCHEMAT ZABEZPIECZENIA WYMIANY INFORMACJI POMIĘDZY TRZEMA UŻYTKOWNIKAMI KRYPTOGRAFICZNYM SYSTEMEM RSA

Pierwiastki pierwotne, logarytmy dyskretne

Rozdział 4. Macierze szyfrujące. 4.1 Algebra liniowa modulo 26

ŁAMIEMY SZYFR CEZARA. 1. Wstęp. 2. Szyfr Cezara w szkole. Informatyka w Edukacji, XV UMK Toruń, 2018

Inne algorytmy z kluczem publicznym

Potencjalne ataki Bezpieczeństwo

Elementy kryptografii Twierdzenie Halla. Pozostałe tematy. Barbara Przebieracz B. Przebieracz Pozostałe tematy

Zastosowania arytmetyki modularnej. Zastosowania arytmetyki modularnej

Kryptografia publiczna (asymetryczna) Szyfrowanie publiczne (asym) Problem klucza publicznego. Podpisujemy cyfrowo. Jak zweryfikować klucz publiczny?

Bezpieczeństwo w Internecie

urządzenia: awaria układów ochronnych, spowodowanie awarii oprogramowania

Rozdział 6. Pakowanie plecaka. 6.1 Postawienie problemu

Laboratorium Kryptografia część I

INFORMATYKA WYBRANE ALGORYTMY OPTYMALIZACYJNE KRYPTOLOGIA.

Kryptografia szyfrowanie i zabezpieczanie danych

Tajemnice szyfrów. Barbara Roszkowska Lech. MATEMATYKA DLA CIEKAWYCH ŚWIATA marzec 2017

MADE IN CHINA czyli SYSTEM RESZTOWY

KAMELEON.CRT OPIS. Funkcjonalność szyfrowanie bazy danych. Wtyczka kryptograficzna do KAMELEON.ERP. Wymagania : KAMELEON.ERP wersja

Wprowadzenie ciag dalszy

KRYPTOGRAFIA Z KLUCZEM PUBLICZNYM (Ellis 1970)

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR

Protokół SSL/TLS. Algorytmy wymiany klucza motywacja

Opis efektów kształcenia dla modułu zajęć

Elementy teorii liczb. Matematyka dyskretna

Kryptografia kwantowa. Marta Michalska

KRYPTOGRAFIA I OCHRONA DANYCH. Krzysztof Kaczmarczyk

Transformaty. Kodowanie transformujace

Zabezpieczanie danych użytkownika przed szkodliwym oprogramowaniem szyfrującym

Bezpieczeństwo systemów komputerowych

VIII Festiwal Nauki i Sztuki. Wydziale Fizyki UAM

Transkrypt:

Mieliśmy więc...... system kryptograficzny P = f C = f 1 P, gdzie funkcja f składała się z dwóch elementów: Algorytm (wzór) np. C = f(p) P + b mod N Parametry K E (enciphering key) tutaj: b oraz N. W dotychczasowej praktyce algorytm szyfrowania był w zasadzie znany, tajne pozostawały wartości parametrów a więc K E i oczywiście K D (deciphering key). W systemach sprzed połowy lat 70-tych XX w. znając algorytm i K E można było bez trudu (większego) skonstruować K D i odwrotnie. Np. w przypadku spisku Babingtona złamanie szyfru (odszyfrowanie tekstu) umożliwiło wysłanie fałszywki, która spowodowała ujawnienie przez Marię Stuart nazwisk spiskowców.

Zmiana paradygmatu W roku 1976 Whitefield Diffie i Martin Hellman (Uniwersytet Stanforda, Palo Alto), a także doktorant M.H. Ralph Merkle stwarzają ideę systemów kryptograficznych z kluczem publicznym. Podstawowe założenie: znajomość K E nie wystarcza do odtworzenia K D mimo, że znana jest funkcja f to znalezienie f 1 jest piekielnie trudne (praktycznie niemożliwe). Klucz K E = K E,u, (u = user) ogólnie dostępny (w książce telefonicznej). Zmiana paradygmatu dlaczego? Bo kryptografia z obszaru nieco niszowego (dyplomacja, operacje wojskowe) wchodzi i to szerokim frontem do domeny publicznej (elektroniczna korespondencja, elektroniczna bankowość i w ogóle wymiana lawin informacji, często o charakterze poufnym, tajnym). Taka skala wymiany informacji wymaga nie tylko dobrego zabezpieczenia ale systemu niezbyt skomplikowanego w użyciu nie do pomyślenia sa np. szyfry wymagające częstej zmiany klucza (i jego wymiany P2P).

Potwierdzenie tożsamości Dwoje użytkowników: Ala i Bolek. Niech: f A oznacza przekształcenie szyfrujące, którego każdy użytkownik używa do zaszyfrowania wiadomości dla Ali. f B oznacza przekształcenie szyfrujące,... dla Bolka. SA oznacza podpis Ali Każdy (! nie tylko Ala) potrafi wysłać do Bolka f B (SA). Dlatego: Ala: f B ( fa 1 (SA) ) Bolek. Bolek: f B 1 f B ( fa 1 (SA) ) = f A 1 (SA) =??. Ponieważ to miała być Ala (i/albo wynika to z tekstu podpisu) Bolek dokonuje prostej transformacji f A [ fa 1 (SA) ] = SA i odczytuje podpis. Może być pewny, że to jest podpis Ali, bo tylko Ala dysponuje znajomością funkcji f 1 A.

Wymiana klucza Diffie, Hellman; prosty przykład Niech przekształceniem kodującym będzie prosta translacja: C = P + b (mod N). Algorytm jest znany; znana jest też wartość N. Jak przesłać (Ala Bolek) wartość b? A i B ustalają, że wartość klucza to b Y x (mod M). W ramach upubliczniania powszechnie znane są wartości Y = 7 i M = 11. Pozostaje wymienić z sobą wartość x. Ala wybiera liczbę A, np A = 3; oblicza: 7 A (mod 11) = 7 3 (mod 11) 2 = α. Wysyła α do Bolka. Podobnie Bolek wybiera liczbę B, np B = 6; oblicza: 7 B (mod 11) = 7 6 (mod 11) 4 = β. Wysyła β do Ali. Ala oblicza: β A (mod 11) = 4 3 (mod 11) = 64 (mod 11) 9 Bolek oblicza: α B (mod 11) = 2 6 (mod 11) = 64 (mod 11) 9 Oczywiście oboje obliczają: b 7 A B (mod 11) = 7 18 (mod 11) 9

System RSA Ronald Rivest (MIT), Adi Shamir (Inst. Weizmanna), Leonard Adleman (Berkeley) Konstrukcja K E i K D. 1 Użytkownik A wybiera dwie duże (!!) liczby pierwsze pa i q A. Liczby te zachowuje w tajemnicy. 2 Oblicza NA = p A q A oraz φ(n A ) = φ(p) φ(q) = (p 1)(q 1); wybiera losowo, z przedziału [1, φ(n A )] liczbę e A ; NW D(e A, N A ) = 1. Liczby N A i e A podaje jako swój klucz publiczny K E,A. 3 Dla konstrukcji KD : A oblicza d A jako rozwiązanie równania e A d A 1 (mod φ(n A )). Liczby d A i φ(n A ) zachowuje w tajemnicy. 4 C P e A (mod N A ); P C d A (mod N A ).

System RSA uzasadnienie C P e A (mod N A ); P C d A (mod N A ). Z obliczeń modułowych: {P e A } d A... e A d A 1 (mod φ(n A )) e A d A = φ(n A ) t + 1... [ P φ(n t A) P 1 (mod N A ) P (mod N A ) uwagi praktyczne: Przypuśćmy, że tekst jawny zapisujemy w postaci bloków k-literowych, a tekst zaszyfrowany w postaci bloków l-literowych i używamy N-literowego alfabetu. (Blok k(l)-literowy to liczba k(l)-cyfrowa w systemie pozycyjnym o podstawie k.) Niech l > k. W praktyce staramy się aby liczby N l i N k miały około dwustu cyfr dziesiętnych (uzasadnienie za chwilę). Wówczas powinno zachodzić N l > N A = p A q A > N k.

System RSA przykład dla wartości zupełnie nierealistycznych! Operując zestawem 26 (0 25) znaków wartość liczbowa bloku YES to: P = 24 26 2 + 4 26 + 18 = 16 346. Klucz publiczny (N A, e A ) = (46 927, 39 423). Obliczamy: C = f(p) = 16 346 39 423 (mod 46 927) 221 166 = 1 26 3 +5 26 2 +8 26+2. Wartość tekstowa tej liczby to BFIC i to otrzymuje adresat A. Klucz K D : N A = p A q A = 281 167; (zauważmy NW D(e A, 281 167) = 1.) A (znając p A i q A ) oblicza d A e A 1 (mod 280 166) d A = 26767. A odkodowuje tekst: 221 166 26767 (mod 46 927) = 16 346 = YES.

System RSA czy łatwo złamać? Wkrótce po wprowadzeniu idei kryptografii z kluczem publicznym Martin Gardner w artykule w Scientific American ogłosił konkurs, polegający na rozszyfrowaniu tekstu, zakodowanego metodą RSA z liczbą N = 114 381 625 757 888 867 669 235 779 976 146 612 010 218 296 721 242 362 562 561 842 935 706 935 245 733 897 830 597 123 563 958 705 058 989 075 147 599 290 026 879 543 541; e = 9007. Twórcy RSA otrzymali wówczas ponad 3 tysiące listów z prośbami o instrukcje. Liczbę N rozłożył na czynniki zespół liczący ponad pół tysiąca amatorów. Zespół pracował 8 miesięcy i 26 kwietnia 1994 ogłosił tryumfalnie N = p q, gdzie p = 3 490 529 510 847 650 949 147 849 619 903 898 133 417 764 638 493 387 843 990 820 577 oraz q = 32 769 132 993 266 709 549 961 988 190 834 461 413 177 642 967 992 942 539 798 288 533. Rozszyfrowanie tzw. RSA-129 odebrali nagrodę 100$. W lutym 1999 zespół informatyków rozłożył RSA-140 (dwa czynniki 70-cyfrowe), a 26/4 1999 inny zespół liczbę RSA-155.

System RSA czy łatwo złamać? Więcej o RSA, o faktoryzacji dużych liczb, można znaleźć wykorzystując linki w Wikipedii a także na stronie laboratoria RSA

System RSA wariacje Zamiast funkcji Eulera można użyć funkcji Carmichaela, λ(n). Funkcja szyfrująca przy znanym module N = pq i losowo wybranym k, przy czym NW D(k, λ(n)) = 1 ma postać analogiczną: C = f (P) P k (mod N). (p 1)(q 1) Jak pamiętamy λ(n) = NW W (p 1, q 1) = NW D[(p 1)(q 1)] ; jest ona trzymana w tajemnicy (jak i p i q). Odkodowanie: P = f 1 (C) C k (mod N); kk 1 (mod λ(n)). Uzasadnienie analogiczne do poprzedniego: ( P = (C) k = P k) k = (P k) mλ(n)+1 ( m = P λ(n)) k P = P

Idee Diffie go-hellman wariacje 1 Zespół użytkowników uzgadnia liczbę pierwszą q. Każdy użytkownik wybiera (w tajemnicy przed innymi) liczbę e 0 < e < q 1 i dodatkowo e q 1. Następnie oblicza d liczbę odwrotną do e modulo q 1: de 1 (mod q). 2 Ala wysyła do Bolka wiadomość P. Wysyła P e A. 3 Bolek nic nie rozumie, ale odsyła Ali (P e A ) e B. 4 Ala podnosi to do potęgi da i odsyła do Bolka. 5 Ponieważ ea d A 1 Bolek otrzymuje P e B i bez kłopotu odczytuje to, podnosząc do potęgi d B. Wady: 1 system wymaga dodatkowo dobrej metody potwierdzania tożsamości każdy może podszyć się pod Bolka i wysłać do Ali (P e A ) e C i dostanie od Ali tekst do odczytania (zna d C ). 2 nieuczciwy Bolek, który odczytał już wiele wiadomości i zna wiele par (P, P e A ) może je wykorzystać do znalezienia e A (poprzez obliczenie logarytmu dyskretnego e A ; a następnie d A = e A 1 (mod q 1)) wówczas będzie mógł czytać wszystkie informacje rozsyłane przez Alę.

Podpis cyfrowy schemat El Gamala Spośród wielu schematów rozpatrzmy: podpis S = (a, b), którym Ala podpisuje pewną wiadomość M. 1 Generacja klucza podpisu Ali: Ala wybiera (losowo) p oraz g i x (obie < p). Oblicza y g x (mod p). Ala upublicznia (y, g, p) ale x pozostaje tajne. 2 Generacja podpisu Ala wybiera (losowo) e (p 1). Zachowuje tę liczbę jako tajną. Ala oblicza a g e (mod p) oraz b e 1 (M xa) (mod p 1). Ala podpisuje wiadomość M przy pomocy S = (a, b). 3 Bob musi sprawdzić czy y a a b g M (mod p). 4 Weryfikacja: y a a b = (g x ) a (g e ) e 1 (M xa)+k (p 1) g xa g [e e 1 ](M xa) [ g (p 1)] k g M (mod p). 5 Odmiana tego schematu została wykorzystana do stworzenia (NIST, 1991) Standardu podpisu cyfrowego DSS (Digital Signature Standard).