Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu
Download
Report
Transcript Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu
Dlaczego możemy
czuć się bezpieczni w sieci
czyli o szyfrowaniu informacji
Maciej M. Sysło
Uniwersytet Wrocławski
Uniwersytet UMK w Toruniu
[email protected]
informatyka +
2
Plan
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
Podejście: Zwrócenie uwagi na znaczenie algorytmiki
informatyka +
3
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:
Ciekawa – Ewa
Nadawca – Alicja
Odbiorca – Bogdan
Wiadomość M
Wiadomość M
Co to jest?
szyfrowanie
Wiadomość zaszyfrowana M’
deszyfrowanie
Wiadomość zaszyfrowana M’
informatyka +
4
Kryptografia, kryptoanaliza, kryptologia
Tekst jawny
Kryptogram
Ciekawa – Ewa
Nadawca – Alicja
Odbiorca – Bogdan
Wiadomość M
Wiadomość M
Co to jest?
szyfrowanie
Wiadomość zaszyfrowana M’
deszyfrowanie
Wiadomość zaszyfrowana M’
Sposób szyfrowanie – szyfr
Kryptografia – nauka zajmująca się szyfrowaniem
Kryptoanaliza – zajmuje się deszyfrowaniem czyli
łamaniem szyfrów
Kryptologia = kryptografia + kryptoanaliza
informatyka +
Jeśli potrzeba
jest matką
wynalazków,
to zapewne
zagrożenie
jest matką
kryptoanalizy.
5
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
informatyka +
6
Przykłady szyfrów – szyfr Cezara (I w. p.n.e)
ABCDEFGHIKLMNOPQRSTUVWXYZ
ABCDEFGHIKLMNOPQRSTUVWXYZ ABC
Przykład:
VENI ! VIDI ! VICI !
YHQLYLGLYLFL
alfabet
łaciński
ma 25 liter
opuszczamy odstępy i inne znaki
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
Przykłady szyfrów – alfabet szyfrowy
Szyfr
Cezara
ABCDEFGHIKLMNOPQRSTUVWXYZ
ABCDEFGHIKLMNOPQRSTUVWXYZABC
ABCDEFGHIKLMNOPQRSTUVWXYZ
alfabet jawny
DEFGHIKLMNOPQRSTUVWXYZABC
alfabet szyfrowy
Słowo szyfrowe, może być tekst, np.:
INFORMATYKA PLUS
ABCDEFGHIKLMNOPQRSTUVWXYZ
alfabet jawny
INFORMATYKAPLUS
INFORMATYKPLUSVWXZBCDEGHQ
VENI VIDI VICI
alfabet szyfrowy
DRSY DYOY DYFY
informatyka +
8
Przykł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
informatyka +
9
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:
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
jeśli para jest po przekątnej, to bierzemy
parę z drugiej przekątnej
jeśli para jest w kolumnie, to bierzemy
do-zo-ba-cz-en-ia-os-zo-st-ej
parę pod nią, z zawinięciem kolumny
jeśli para jest w wierszu, to bierzemy
YS-US-FW-GU-BQ-LY-QN-US-NZ-CK
parę po prawej, z zawinięciem wiersza
informatyka +
10
Przykł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
n
r
o
a
m
y
t
a
k
ifrayanomtk
Łatwy do deszyfracji – wystarczy znaleźć liczbę poziomów
informatyka +
11
Schemat przekazywania kryptogramów
Ciekawa – Ewa
Nadawca – Alicja
Odbiorca – Bogdan
Klucz
Klucz
Tekst
jawny
Algorytm
szyfrujący
Tekst
zaszyfrowany
Algorytm
deszyfrujący
Tekst
jawny
Klucze
Generalna zasada: znane algorytmy, ale tajne klucze.
symetryczne –
Klucze:
takie same dla
obu stron.
szyfr Cezara – przesunięcie alfabetu
Problem z
metoda płotu – liczba rzędów w płocie
przekazywaniem
szyfr monoalfabetyczny, szyfr Playfair – tekst kluczowytajnych kluczy
informatyka +
12
Początki kryptologii komputerowej – Enigma
Do kupienia:
67 500 Euro
Wirnik
Wyprodukowano ok. 100 000 sztuk
informatyka +
13
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).
informatyka +
14
Enigma – budowa (model Wehrmacht)
Symulator Enigmy
Wirniki, 3,
4, 5 do 10
Lampki –
zaszyfrowane litery
Klawiatura do
wpisywania tekstu
i szyfogramów
Łącznica
par liter
informatyka +
15
Enigma – budowa
Symulator Enigmy
Wirniki
Lampki
Klawiatura
Łącznica –
niewidoczna
informatyka +
16
Enigma – działanie
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
Klucz symetryczny
informatyka +
17
Enigma – jak trudno złamać
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ń
porównywalne z kluczem 77 bitowym
informatyka +
18
Enigma – a jednak złamano
4. 1940: Bletchley Park
k/Londynu – centrum
dekryptażu – ok. 10000 osób
1. Lata 30. – prace Polaków – Polacy wyprzedzili cały świat o dobre 10 lat
3. Przed 1939 przekazują
wszystkie materiały
Francuzom i Anglikom
5. Bomba (USA)
6. Colossus – pierwszy
elektroniczny komputer, 1943
2. Polacy budują Bombę,
która pomagała w
dopasowaniu klucza
informatyka +
7. Olbrzymie
zasługi Turinga
19
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ść
Ciekawa – Ewa
Nadawca – Alicja
Odbiorca – Bogdan
KluczKlucz
publiczny
Tekst
jawny
Algorytm
szyfrujący
KluczKlucz
prywatny
Tekst
zaszyfrowany
Algorytm
deszyfrujący
Tekst
jawny
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.
informatyka +
20
Nowa era kryptografii – szyfr RSA
Ciekawa – Ewa
Tekst
jawny M
Nadawca – Alicja
Odbiorca – Bogdan
Klucz publiczny: n, e
Klucz prywatny: n, d
Algorytm
szyfrujący
P=Me mod n
Tekst
zaszyfrowany P
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)
Algorytm
deszyfrujący
M=Pd mod n
Tekst
jawny M
Bezpieczeństwo szyfru RSA – nawet
najmocniejszy komputer nie jest w
stanie znaleźć d, znając n i e.
Działania (przy szyfrowaniu):
Podnoszenie dużych liczb do dużych potęg i branie reszty z dzielenia (mod)
informatyka +
21
Szyfr RSA - demonstracja
informatyka +
22
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
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.
informatyka +
23
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.
informatyka +
24
Szyfr RSA – realizacja
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
Algorytm szkolny: liczyłby ok. 108 lat. binarny – ok. 200 mnożeń
informatyka +
25
Podpis elektroniczny
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
2. Tworzy się reprezentację dokumentu w postaci skrótu
informatyka +
26
Podpis elektroniczny – Podpisz
Źródło:
http://www.proinfo.com.pl/pr
odukty/podpis-elektroniczny/
informatyka +
27
Podpis elektroniczny – Weryfikuj
Źródło:
http://www.proinfo.com.pl/pr
odukty/podpis-elektroniczny/
informatyka +
28
Podpis elektroniczny – spełnienie założeń
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.
informatyka +
29
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
informatyka +
30
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
informatyka +
31