• Nie Znaleziono Wyników

WSTĘP DO KRYPTOLOGII

N/A
N/A
Protected

Academic year: 2021

Share "WSTĘP DO KRYPTOLOGII"

Copied!
1
0
0

Pełen tekst

(1)

WSTĘP DO KRYPTOLOGII

Literatura

1. D.E. Robling-Denning „Kryptografia i ochrona danych”, Wyd. II, WNT W-wa 1993.

2. B. Schneier „ Kryptografia dla praktyków”, WNT W-wa 1995.

3. B. Schneier „ Ochrona poczty elektronicznej”, WNT W-wa 1996.

4. N. Koblitz „Wykład z teorii liczb i kryptografii”, WNT W- wa 1995.

5. A. Menezes, P. van Oorschot, S. Vanstone „Handbook of Applied Cryptography” Springer-Verlag 1996.

6. D. R. Stinson „Cryptography. Theory And Practice”,

Springer-Verlag 1995

(2)

KRYPTOLOGIA

KRYPTOGRAFIA + KRYPTOANALIZA (konstruowanie szyfrów) (łamanie szyfrów)

KLASYCZNA KRYPTOGRAFIA

Definicja

Kryptosystem jest to piątka ( P , C , K , E , D ), gdzie spełnione są następujące warunki:

1. P jest skończonym zbiorem możliwych jednostek tekstu jawnego.

2. C jest skończonym zbiorem możliwych jednostek szyfrogramu.

3. K jest przestrzenią klucza; skończonym zbiorem możliwych kluczy.

4. Dla każdego k K istnieje reguła szyfrowania

ek E

i odpowiadająca reguła deszyfrowania

dk D .

Wtedy

ek: P  C

i

dk:C  P

są funkcjami takimi, że

d e xk

k( )

x

dla każdego x P . Funkcje e d

k

,

k

muszą być wzajemnie jednoznaczne:

x

1

  x

2

e x

k

( )

1

e x

k

( )

2

i podobnie dla funkcji d

k

.

jawny kanał łączności

A B

O

(3)

Jeśli znajomość przekształcenia szyfrującego

ek

jest równoważna znajomości przekształcenia deszyfrującego

dk

to kryptosystem nazywamy symetrycznym .

Wiadomość od Alicji do Boba:

x  x x1 2... ,xn

gdzie

x ii,  1,...,n

, są jednostkami testu jawnego.

Alicja szyfruje tekst jawny x używając funkcji

ek

otrzymując szyfrogram:

y y y1 2...yn,

gdzie y

i

e x

k

( ),

i

i 1 ,..., . n

Bob stosuje przekształcenie d

k

: x

i

d y

k

( ),

i

i  1 ,..., n i uzyskuje tekst jawny x.

Alicja Szyfrator Deszyfrator Bob

Oskar

Klucz

jawny kanał łączności

bezpieczny kanał łączności kanał

podsłuchu

(4)

Arytmetyka modularna

a i b - liczby całkowite m - liczba naturalna

a b  (mod ) m , a przystaje do b modulo m  jeśli m dzieli a-b.

Liczbę m nazywamy modułem kongruencji a b  (mod ) m .

a q m r

1

1

, b q m r

2

2

,

gdzie reszty z dzielenia spełniają warunek: 0 r r

1

,

2

m 1 .

a b  (mod ) mr

1

r

2

.

a mod m oznacza resztę r

1

z dzielenia a przez m .

Zastępując a przez a mod m , mówimy, że liczba całkowita a została zredukowana modulo m.

Z

m

zbiór liczb całkowitych { , ,..., 0 1 m 1 } z określonymi działaniami dodawania + i mnożenia  w ten sposób, że wyniki rzeczywistych działań są redukowane modulo m.

Przykład:

11  13 = 143 143  15(mod16), stąd 11  13 = 15 w Z

16

(5)

Dodawanie + i mnożenie  w Z

m

posiadają własności działań arytmetycznych:

1. Dodawanie jest zamknięte: dla

a b,

 Z

m

, a b   Z

m

. 2. Dodawanie jest przemienne:

a b Z, m, a b b a  

.

3. Dodawanie jest łączne: a b c , ,

Zm

, ( a b      ) c a ( b c ) . 4. Zero jest elementem neutralnym względem dodawania:

dla

aZ ,m a   0 0 a a.

5. Elementem przeciwnym (odwrotnym) do

aZm

jest m a :

a ( m a ) ( m a    ) a 0 . 6. Mnożenie jest zamknięte: dla

a,bZm,abZm

.

7. Mnożenie jest przemienne:

a b, Zm, ab ba

.

8. Mnożenie jest łączne: a b c , ,

Zm

, ( ) ( ) a bc ab c . 9. 1 jest elementem neutralnym względem mnożenia:

dla

aZ ,m 1a a 1 a.

10. Dodawanie i mnożenie są działaniami rozdzielnymi:

dla a b c Z , , 

m

, ( a b c ac bc  )   , a b c (   ) ab ac  .

Zbiór Z

m

z dodawaniem (Z

m

, +) tworzy strukturę algebraiczną zwaną grupą abelową (przemienną);

Zbiór Z

m

z działaniami dodawania i mnożenia (Z

m

, +, ) jest

pierścieniem.

(6)

Szyfr przesuwający (shift cipher)

P C K = =  Z

26

. Dla klucza 0   k 25 definiujemy

e x x k x

d y y k y

k k

( ) ( ) mod , ,

( ) ( ) mod , .

  

  

26 26

P C

A B C D E F G H I J K L M

0 1 2 3 4 5 6 7 8 9 10 11 12

N 0 P Q R S T U V W X Y Z

13 14 15 16 17 18 19 20 21 22 23 24 25.

Dla k = 3 szyfr ten był oryginalnie używany przez Juliusza Cezara (żył w latach 100 - 40 p.n.e.).

Przykład

k  11

tekst jawny:

spotk aniej utror ano

18 15 14 19 10 0 13 8 4 9

20 19 17 14 17 0 13 14

szyfrogram:

3 0 25 4 21 11 24 19 15 20

5 4 2 25 2 11 24 25

DAZEV LYTPU FECZC LYZ

Kryptosystem powinien spełniać następujące warunki:

(7)

1. Funkcje szyfrująca

ek

i deszyfrująca

dk

muszą być łatwe i szybkie w obliczaniu.

2. Kryptosystem musi być bezpieczny: przeciwnik (Oskar) znając kryptogram y nie jest w stanie znaleźć klucza k czy też tekstu jawnego x.

Określenie klucza k jest co najmniej tak trudne jak znalezienie tekstu jawnego.

Drugi warunek bezpieczeństwa kryptosytemu jest sformułowany w bardzo ogólny sposób.

Szyfr przesuwający nie jest bezpieczny.

#K = 26.

Do jego złamania możemy kolejno sprawdzać wartości klucza k

 1 2, ,...,25

aż otrzymamy sensowny tekst jawny;

Średnio należy wykonać 26/2 = 13 prób.

Opisana metoda kryptoanalizy nazywa się przeszukiwaniem przestrzeni klucza, stąd warunkiem koniecznym (ale nie dostatecznym) bezpieczeństwa kryptosytemu jest to, aby przestrzeń klucza była możliwie duża, co uniemożliwi jej przeszukanie w realnym czasie.

Szyfr podstawieniowy

P C = i P = Z

26

(8)

Przestrzeń klucza K - wszystkie możliwe permutacje (przekształcenia wzajemnie jednoznaczne) zbioru 26-elementowego.

Klucz k ustalona permutacja

Przekształcenie szyfrujące i deszyfrujące mają postać:

e x( )( ),x d 1( ),x

gdzie

1

jest permutacją odwrotną.

Przykład

Przykładowa permutacja 26-literowego alfabetu:

a b c d e f g h i j k l m

X N Y A H P O G Z Q W B T

n o p q r s t u v w x y z

S F L R C V M U E K J D I.

Permutacja odwrotna:

A B C D E F G H I J K L M

d l r y v o h e z x w p t

N O P Q R S T U V W X Y Z

b g f j q n m u s k a c i

# K = 26!

Zadanie

Używając powyższej permutacji zdeszyfrować tekst:

MHSVI DPCFO CXTQH VMMCU ASDAF FAYIM XSZX.

Szyfr afiniczny

P = = ZC 26

, funkcja szyfrująca:

e x

k

( )  ( ax b  ) mod 26 ,

gdzie klucz szyfrujący k =

{ , }a b

jest pewną parą liczb z

Z26

.

(9)

Warunkiem jednoznaczności funkcji deszyfrującej jest istnienie jedynego rozwiązania x równania

y(ax b ) mod 26

przy zadanym y .

Takie rozwiązanie istnieje dla a  0 względnie pierwszych z modułem 26

( ,a 26) 1

. Liczba a ma tzw. multiplikatywną odwrotność tzn. istnieje liczba

a

1

Z26

taka, że

a a1 1mod26.

Przekształcenie deszyfrujące:

 

xdk( )ya1y a b1 mod26

dla a względnie pierwszych z 26. Klucz deszyfrujący

k 

a1,a b1

 jest jednoznacznie wyznaczony przez k i może być łatwo obliczony stosując algorytm Euklidesa do obliczenia a

1

.

Jest to kryptosytem symetryczny.

( ,a 26) 1

dla

a  1 3 5 7 9 111517 19 21 23 25, , , , , , , , , , ,

.

#K = 12  26 = 312 Przykład

k  { , }7 3

, (7,26) = 1 i 7

1

mod 26 15  .

Funkcja szyfrująca: funkcja deszyfrująca:

e x

k

( )  7 x  3 , d y

k

( )  15 y  19 15  y  7 ,

tekst jawny: szyfrogram:

kryptografia VSPEGXTSDAHD

Szyfr Vigenere’a

(dyplomata francuski Blaise de Vigenere żył w latach 1523-1596)

Jest to kryptosystem polialfabetyczny.

m  2 - ustalona liczba naturalna

P = =C K  Z

 

26 m

.

Dla klucza

k

k k1, ,...,2 km

definiujemy przekształcenie szyfrujące

(10)

   

e x xk 1, 2,...,xmx1k x1, 2k2,...,xmkm

i przekształcenie deszyfrujące

   

d y yk 1, 2,...,ymy1k y1, 2k2,...,ymkm ,

gdzie działania arytmetyczne wykonujemy modulo 26.

#K = 26

m

Dla m  5 #K >

1 1 10, 7

.

Przykład

).

17 , 5 , 24 , 25 , 18 (

"

"

5

k

Szyfr k

m

Tekst jawny:

tenkr yptos ystem nieje stbez piecz ny Szyfrogram:

LDLPI QORTJ QRRJD FHCOV KSZJQ HHCHQ FX

Szyfr Hilla

(1929 rok)

m - liczba naturalna

 

P = = ZC 26 m.

Metoda szyfrowania polega na wykorzystaniu m przekształceń

liniowych m liter alfabetu tekstu jawnego;

(11)

Na przykład dla m=2

y x x

y x x

1 1 2

2 1 2

11 3

8 7

 

  ,

gdzie równości rozumiane są modulo 26.

Powyższe wzory można zapisać w postaci macierzowej:

(y y1, 2) ( ,x x1 2) 11 8 3 7

.

Kluczem przekształcenia szyfrującego jest macierz K o wymiarach 22.

Kluczem deszyfrującym jest macierz odwrotna K

1

do macierzy K obliczona modulo 26:

K

1 7 18

23 11

.

Warunkiem istnienia macierzy odwrotnej jest to, aby wyznacznik macierzy K był liczbą względnie pierwszą z modułem 26.

Przykład

tekst jawny: lu ty (11,20) (19,24) szyfrogram: (3,4) (11,22)

ZU VI

Szyfry przestawieniowe

m  2 - ustaloną liczbą naturalną

P = =C Am,

gdzie A jest alfabetem tekstu jawnego (np. 26-elementowym zbiorem

liter)

(12)

Przestrzeń klucza K składa się ze wszystkich permutacji zbioru {1,2,...,m}.

Dla ustalonego klucza k będącego permutacją przekształcenie szyfrujące ma postać:

 

e(x x1, 2,...,xm)  x( )1 ,x( )2 ,...,x(m) ,

a przekształcenie deszyfrujące:

 

d y y

( , ,...,

1 2

y

m

)  y

1( )1

, y

1( )2

,..., y

1( )m

,

gdzie

1

jest permutacją odwrotną do .

Zadanie

Niech m = 6 i permutacja ma postać:

1 2 3 4 5 6

3 5 1 6 4 2

Zaszyfrować wiadomość:

Jestbr zydkap ogoda

W celu uzyskania 3 grup 6-literowych dodajemy na końcu tekstu jawnego x.

Przykład 1

tekst jawny: kryptografia wpisujemy wierszami do macierzy o wymiarach 4 3.

1 2 3

K R Y

P T O

G R A

F I A

(13)

Następnie odczytujemy wpisany tekst kolumnami w kolejności kolumn (2 1 3) otrzymując szyfrogram:

RTRIKPGFYOAA.

Możemy stosować różne odmiany tej metody:

1. Odczytywanie z tablicy nie musi odbywać się kolumnami.

2. Można korzystać z różnych figur geometrycznych.

3. Można wykorzystywać siatki w danej figurze, a tekst jawny wpisuje się w określone miejsca figury, a całkowite wypełnienie siatki

uzyskuje się przez obroty figury.

Przykład 2

Kwadrat o wymiarach

9 9

dzielimy na cztery kwadraty o wymiarach

3 3

, których pola numerujemy ustaloną permutacją liczb 1,2,...,9.

1 2 3 7 4 1

4 5 6 8 5 2

7 8 9 9 6 3

3 6 9 9 8 7

2 5 8 6 5 4

1 4 7 3 2 1

(14)

Wycinamy teraz w sposób przypadkowy z tych czterech kwadratów 9 pól jednostkowych o numerach od 1 do 9. Otrzymujemy przykładowo następujący szablon:

1 2

3

7 4 1

4

5

6 8 5

2

7 8

9

9

6

3

3 6 9 9 8

7

2 5

8

6 5

4

1

4 7 3 2 1

w którym zakreślone pola oznaczają wycięte miejsca. Tekst jawny wpisujemy teraz wierszami w otwory szablonu, następnie obracamy szablon o 90

0

i wpisujemy dalej. Obracając szablon jeszcze dwukrotnie wypełniamy całą tablicę. Kluczem tego szyfru jest szablon.

Szyfry przestawieniowe są szczególnym przypadkiem szyfrów Hilla. Niech będzie ustaloną permutacją zbioru

{ , ,..., }1 2 m

. Definiujemy tzw. macierz permutacyjną

K  ( )kij

o wymiarach

m m

następującymi wzorami:

k i j

ij   

  1 0

jeśli

w przeciwnymwypadku

( )

.

Macierz ta zawiera w każdym wierszu i każdej kolumnie dokładnie

jedną jedynkę. Permutacji odwrotnej

1

odpowiada macierz

odwrotna:

(15)

K1K

1.

Macierz

K

jest kluczem w odpowiadającym szyfrze Hilla.

Dla podanego przykładu szyfru przedstawieniowego z m = 6 i podaną permutacją odpowiadająca macierz permutacyjna ma postać:

K













 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0

Natomiast macierz odwrotna

K1

określająca przekształcenie deszyfrujące ma postać:

K













1

0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0

Cytaty

Powiązane dokumenty

Obniżenie oceny o 0,5 następuje w przypadku każdorazowego niezaliczenia nieobecności na zajęciach we wskazanym terminie (por. b) oraz w przypadku

Jest pycha udziału w czymś wielkim, nawet, gdy się było tylko biernym statystą.. Oczywistą też jest pycha wywyższania się nad tych, którzy, wedle naszego dzisiejszego

Punktem wyjścia jest obserwacja, że dwa identyczne bloki tekstu jawnego są szyfrowane na te same bloki szyfrogramu, jeśli odległość między początkami

Zarówno w przypadku szyfrowania jak i deszyfracji jest używany ten sam klucz bądź z klucza szyfrującego da się wyliczyć klucz deszyfrujący lub odwrotnie

Jeśli uczeń prawidłowo rozwiąże zadanie inną niż proponowana metodą, otrzymuje maksymalną liczbę punktów.. Rozwiązania Zasady

Zwracając się do wszystkich, Ojciec Święty raz jeszcze powtarza słowa Chrystusa: „Bóg nie posłał swego Syna na świat po to, aby świat potępił, ale po to, by

5. Nauczyciel prezentuje pracę Andrzeja Mleczki z cyklu „Niebo i piekło” jako przykład podejścia do motywu raju utraconego z humorem. Należy również zwrócić uwagę uczniów,

Słowa kluczowe projekt Polska transformacja 1989-1991, przełom w 1989 roku, PRL, współczesność, 1989, 1990, Lublin, przemiany ekonomiczne i społeczne, prywatyzacja, Stocznia