Dlaczego możemy
czuć się bezpieczni w sieci
czyli o szyfrowaniu informacji
Maciej M. Sysło
Uniwersytet Wrocławski Uniwersytet UMK w Toruniu
syslo@ii.uni.wroc.pl
2
Plan
informatyka +
3
Szyfrowanie
(
kryptologia
):
•
rozwój metod spowodował
rozwój wielu działów nauki
•
szyfrowanie/deszyfrowanie miały
wpływ na historię
•
obecnie – szyfrowanie jest podstawą
bezpieczeństwa
komunikacji i przechowywania danych
w sieci
Interent
Głównie zwrócimy uwagę na
komunikację
:
•
kilka historycznych szyfrów
•
początki kryptografii komputerowej – Enigma i Polacy
•
współczesne szyfry z kluczem publicznym
•
podpis elektroniczny
Komunikacja
System komunikacji
, czyli sposób wymiany wiadomości
potrzebny w każdej społeczności
jeszcze bardziej potrzebny rządzącym
niezmiernie ważny w czasach konfliktów i wojen
Schemat – wersja pokojowa:
informatyka +
4
Ciekawa – Ewa Nadawca – Alicja Odbiorca – Bogdan Wiadomość M Wiadomość MWiadomość zaszyfrowana M’ Wiadomość zaszyfrowana M’
Kryptografia, kryptoanaliza, kryptologia
Kryptografia
– nauka zajmująca się szyfrowaniem
Kryptoanaliza
– zajmuje się deszyfrowaniem czyli
łamaniem szyfrów
Kryptologia
= kryptografia + kryptoanaliza
informatyka +
5
Ciekawa – Ewa Nadawca – Alicja Odbiorca – Bogdan Wiadomość M Wiadomość MWiadomość zaszyfrowana M’ Wiadomość zaszyfrowana M’
szyfrowanie Co to jest? deszyfrowanie
Tekst jawny Kryptogram
Sposób szyfrowanie – szyfr Jeśli potrzeba
jest matką wynalazków, to zapewne zagrożenie jest matką kryptoanalizy.
Steganografia – utajnianie przez ukrywanie
Pierwsze próby utajniania wiadomości – ukrywanie wiadomości bez ich przetwarzania.
Słaba strona: przechwycenie równoznaczne z odczytaniem Przemyślne sposoby ukrywania wiadomości:
• napis na ogolonej głowie (V w. p.n.e.)
• „połykanie” wiadomości (np. woskowe kulki z wiadomościami)
• wiadomości „między sygnałami” – II Wojna Światowa
• nowsze metody: atrament sympatyczny
Steganografia dzisiaj – druga młodość
• miniaturyzacja – wiadomość w kropce tekstu
• informacje w wolnych miejscach w plikach
• informacje jako tło dla innych wiadomości
Przykłady szyfrów – szyfr Cezara (I w. p.n.e)
ABCDEFGHIKLMNOPQRSTUVWXYZ ABCDEFGHIKLMNOPQRSTUVWXYZ
Przykład: VENI ! VIDI ! VICI ! opuszczamy odstępy i inne znaki YHQLYLGLYLFL
Szyfr Cezara:
•To szyfr podstawieniowy – podstawiamy literę za literę
•Kluczem jest wielkość przesunięcia – w oryginale 3, ale może być dowolna liczba
•Klucz wystarczy do zaszyfrowania i do odczytania – klucz symetryczny
•Łatwo złamać – wystarczy przejrzeć wszystkie możliwe przesunięcia (25)
informatyka +
7
ABC alfabet łaciński ma 25 literPrzykłady szyfrów – alfabet szyfrowy
ABCDEFGHIKLMNOPQRSTUVWXYZ ABCDEFGHIKLMNOPQRSTUVWXYZ ABCDEFGHIKLMNOPQRSTUVWXYZ DEFGHIKLMNOPQRSTUVWXYZABC
Słowo szyfrowe, może być tekst, np.: INFORMATYKA PLUS ABCDEFGHIKLMNOPQRSTUVWXYZ
INFORMATYKAPLUS INFORMATYKPLUS
VENI VIDI VICI DRSY DYOY DYFY
informatyka +
8
ABC VWXZBCDEGHQ alfabet jawny alfabet szyfrowy alfabet jawny alfabet szyfrowy Szyfr CezaraPrzykłady szyfrów – alfabet szyfrowy, cd
Wady:
częstość liter w tekstach jawnych przenosi się na teksty zaszyfrowane:
w dłuższych tekstach języka angielskiego najczęściej występuje litera E (12.6%), w kryptogramach najczęstsza litera na ogół odpowiada E.
częste są zlepienia liter, np. th, qu – w angielskim; sz, cz, ch – po polsku
analiza częstościowa służy do łamania takich szyfrów – IX wiek, Al-Kindi, zwany „filozofem Arabów”.
Metoda wielu alfabetów szyfrowych:
XVI wiek – szyfr Vigenere’a
te same litery były inaczej szyfrowane – utrudniona analiza częstości
złamany w połowie XIX wieku: W. Kasiski i Ch. Babbage
Przykłady szyfrów – szyfr Playfaira
Szyfrowanie par liter:
wybieramy słowo kluczowe, jak w przypadku alfabetów, np. WYPAD tworzymy tabelę 5 x 5 – słowo kluczowe na początku, dalej jak w alfabecie
tekst do zaszyfrowania dzielimy na pary, np. Do zobaczenia o 6-tej
szyfrujemy parami:
jeśli para jest po przekątnej, to bierzemy parę z drugiej przekątnej
jeśli para jest w kolumnie, to bierzemy parę pod nią, z zawinięciem kolumny
jeśli para jest w wierszu, to bierzemy parę po prawej, z zawinięciem wiersza
informatyka +
10
W Y P A D B C E F G H I/J K L M N O Q R S T U V X Z do-zo-ba-cz-en-ia-os-zo-st-ej YS-US-FW-GU-BQ-LY-QN-US-NZ-CKPrzykłady szyfrów – szyfr przestawieniowy
Szyfr przestawieniowy:
szyfrowanie przez przestawianie liter w tekście jawnym – tekst zaszyfrowany jest anagramem jawnego.
np. AGLMORTY to anagram: algorytm i logarytm
Szyfr trudny do przekazania i odszyfrowania – mało popularny
Metoda płotu:
Tekst piszemy w kolejnych wierszach i kryptogram tworzymy czytając wierszami:
i f r a y a
n o m t k ifrayanomtk
Łatwy do deszyfracji – wystarczy znaleźć liczbę poziomów
Klucze symetryczne –
takie same dla obu stron.
Problem z przekazywaniem tajnych kluczy
Schemat przekazywania kryptogramów
Generalna zasada: znane algorytmy, ale tajne klucze.
Klucze:
szyfr Cezara – przesunięcie alfabetu
metoda płotu – liczba rzędów w płocie
szyfr monoalfabetyczny, szyfr Playfair – tekst kluczowy
informatyka +
12
Ciekawa – Ewa
Nadawca – Alicja Odbiorca – Bogdan
Algorytm szyfrujący Tekst zaszyfrowany Tekst jawny Klucz Algorytm deszyfrujący Tekst jawny Klucz
Początki kryptologii komputerowej – Enigma
informatyka +
13
Do kupienia: 67 500 Euro
Wyprodukowano ok. 100 000 sztuk
informatyka +
14
Maszyna Enigma
Enigma z 10 wirnikami, stosowana do komunikacji w najwyższych sferach wojskowych III Rzeszy – sprzedana w 2009 roku za 50 000 Euro (spodziewano się 70 000).
Enigma – budowa (model Wehrmacht)
informatyka +
15
Wirniki, 3, 4, 5 do 10 Lampki – zaszyfrowane litery Klawiatura do wpisywania tekstu i szyfogramów Łącznica par liter Symulator EnigmyEnigma – budowa
informatyka +
16
Lampki Klawiatura Łącznica – niewidoczna Symulator Enigmy WirnikiEnigma – działanie
informatyka +
17
Symulator Enigmy Ustawienie do pracy – klucz:
•wybrać wirniki •ustawić wirniki
•wybrać dla nich miejsce •połączyć litery w pary
•nastawić wirniki według klucza
Szyfrowanie:
•wprowadź tekst, na lampkach ukazuje się szyfrogram
Deszyfrowanie:
•identyczne ustawienia, jak przy szyfrowaniu
•wprowadź tekst szyfrogramu
Enigma – jak trudno złamać
informatyka +
18
Liczba możliwych stawień:
•Wybór 3 z 5 wirników: = 5 x 4 x 3 = 60
•położenie wirników: 26 x 26 = 676 •Łącznica wtyczkowa: 10 par liter spośród 26 = 150 738 274 937 250 •Razem:
107 458 687 327 250 619 360 000 = 1.07*1023 możliwych ustawień
Enigma – a jednak złamano
informatyka +
19
1. Lata 30. – prace Polaków – Polacy wyprzedzili cały świat o dobre 10 lat
2. Polacy budują Bombę, która pomagała w dopasowaniu klucza 3. Przed 1939 przekazują wszystkie materiały Francuzom i Anglikom 4. 1940: Bletchley Park k/Londynu – centrum
dekryptażu – ok. 10000 osób
5. Bomba (USA) 6. Colossus – pierwszy elektroniczny komputer, 1943 7. Olbrzymie zasługi Turinga
Nowa era kryptografii – klucz publiczny
Kłopoty z przekazywaniem klucza – stąd pomysł klucza publicznego, dostępnego dla każdego, kto chce wysłać wiadomość
informatyka +
20
Ciekawa – Ewa
Nadawca – Alicja Odbiorca – Bogdan
Algorytm szyfrujący Tekst zaszyfrowany Tekst jawny Klucz Algorytm deszyfrujący Tekst jawny Klucz
Klucz publiczny Klucz prywatny
Każdy może wysłać wiadomość do Bogdana, ale tylko on może ją odczytać, bo ma klucz prywatny, pasujący do klucza publicznego.
Nowa era kryptografii – szyfr RSA
informatyka +
21
Ciekawa – Ewa
Nadawca – Alicja Odbiorca – Bogdan
Algorytm szyfrujący P=Me mod n Tekst zaszyfrowany P Tekst jawny M Algorytm deszyfrujący M=Pd mod n Tekst jawny M Klucz publiczny: n, e Klucz prywatny: n, d
.
Liczby:
n = p*q, p, q – duże liczby pierwsze e – względnie pierwsza z (p – 1)(q – 1) d – spełnia e*d = 1 mod (p – 1)(q – 1) Działania (przy szyfrowaniu):
Podnoszenie dużych liczb do dużych potęg i branie reszty z dzielenia (mod)
Bezpieczeństwo szyfru RSA – nawet najmocniejszy komputer nie jest w stanie znaleźć d, znając n i e.
Szyfr RSA - demonstracja
Szyfr RSA – przykład
Bogdan przygotowuje klucze:
1.Wybiera dwie duże liczby pierwsze
p i q i trzyma je w tajemnicy
2.Oblicza n = p*q i znajduje liczbę e, która jest względnie pierwsza z (p– 1)*(q–1)
3. Oblicza d, takie że
e*d = 1 mod (p–1)*(q–
1)
4. Ogłasza (n, e) jako klucz
publiczny i zachowuje (n, d) jako prywatny
informatyka +
23
Przykład: 1. p = 11, q = 13 2. n = 11*13 = 143. Mamy (p– 1)*(q–1) = 10*12 = 120 =23*3*5, więc może być e = 7 3. Ma być 7*d = 1 mod 120. Otrzymujemy d = 103.
4. Para (143, 7) jest kluczem publicznym, a para (143, 103) jest kluczem prywatnym.
Szyfr RSA – przykład, cd.
Szyfrowanie wiadomości przez Alicję:
1.Chce wysłać literę Q. Zamienia na kod ASCII – M = 81. 2.Oblicza Me, czyli 817 mod 143
Obliczenia: 817 = 811*812*814 = 81*126*3 = 16 mod 143
3. Wysyła do Bogdana wiadomość P = 16
Odszyfrowywanie kryptogramu:
1. M = Pd = 16103 = 16*162*164*16321664 = 16*113*42*113*42
= 81 mod 143. A zatem Bogdan otrzymał wiadomość o wartości 81, której odpowiada w kodzie ASCII litera Q.
Szyfr RSA – realizacja
informatyka +
25
Przygotowanie kluczy:
1.Wybiera dwie duże liczby pierwsze p i q i trzyma je w tajemnicy
Znane są szybkie metody generowania dużych liczb pierwszych
2. Oblicza n = p*q i znajduje liczbę e, która jest względnie pierwsza z (p– 1)*(q–1)
Podobnie jak w punkcie 1.
3. Oblicza d, takie że e*d = 1 mod (p–1)*(q–1)
Stosuje się rozszerzony algorytm Euklidesa. Szyfrowanie i deszyfrowanie – podnoszenie do potęgi
Stosowany jest szybki algorytm binarnego potęgowania: na przykład: x12345678912345678912345678912345
Podpis elektroniczny
informatyka +
26
Oczekiwane cechy podpisu elektronicznego:
1.Jednoznacznie identyfikuje autora 2. Nie można go podrobić
3. Nie można go skopiować na inny dokument
4. Gwarantuje, że po podpisaniu nikt nie może wprowadzić zmian do dokumentu
Kwestie techniczne:
1.W Centrum Certyfikacji muszę otrzymać oba klucze i osobisty certyfikat elektroniczny
Źródło:
http://www.proinfo.com.pl/pr odukty/podpis-elektroniczny/
Podpis elektroniczny – Podpisz
Podpis elektroniczny – Weryfikuj
informatyka +
28
Źródło:
http://www.proinfo.com.pl/pr odukty/podpis-elektroniczny/
Podpis elektroniczny – spełnienie założeń
informatyka +
29
Spełnienie oczekiwań:
1.Autentyczność nadawcy potwierdza jego certyfikat, do którego ma dostęp odbiorca
2.Takiego podpisu nie można podrobić, bo klucz prywatny , pasujący do klucza publicznego, znajdującego się w
certyfikacie, ma tylko nadawca.
3.Podpisu nie można związać z innym dokumentem, bo nie będzie pasował do jego skrótu.
4.Skrót dokumentu jest gwarancją, że dokument nie uległ zmianie po jego podpisaniu.
Pokrewne zajęcia w Projekcie Informatyka +
Wykład+Warsztaty (Wszechnica Poranna):• Wprowadzenie do algorytmiki i programowania – wyszukiwanie i porządkowanie informacji
• Proste rachunki wykonywane za pomocą komputera.
• Techniki algorytmiczne – przybliżone (heurystyczne) i dokładne.
Wykłady (Wszechnica Popołudniowa):
• Czy wszystko można policzyć na komputerze?
• Porządek wśród informacji kluczem do szybkiego wyszukiwania. • Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu
informacji.
• Znajdowanie najkrótszych dróg, najniższych drzew, najlepszych małżeństw
Pokrewne zajęcia w Projekcie Informatyka +
Kursy (24 godz.) – Wszechnica na Kołach:• Algorytmy poszukiwania i porządkowania. Elementy języka programowania
• Różnorodne algorytmy obliczeń i ich komputerowe realizacje • Grafy, algorytmy grafowe i ich komputerowe realizacje
Kursy (24 godz.) – Kuźnia Informatycznych Talentów – KIT dla Orłów:
• Przegląd podstawowych algorytmów • Struktury danych i ich wykorzystanie • Zaawansowane algorytmy
Tendencje – Wykłady
• Algorytmy w Internecie, K. Diks
• Czy P = NP, czyli jak wygrać milion dolarów w Sudoku, J. Grytczuk • Między przeszłością a przyszłość informatyki, M.M Sysło