• Nie Znaleziono Wyników

krypt04.pdf ,

N/A
N/A
Protected

Academic year: 2021

Share "krypt04.pdf ,"

Copied!
52
0
0
Pokaż więcej ( Stron)

Pełen tekst

(1)

Kryptografia

z elementami kryptografii kwantowej

Ryszard Tanaś

http://zon8.physd.amu.edu.pl/~tanas Wykład 4

(2)

Spis treści

7 IDEA — International Data Encryption Algorithm 3

7.1 Szyfrowanie . . . 4

7.2 Generowanie podkluczy . . . 6

7.3 Deszyfrowanie . . . 7

(3)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie

(4)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie

(5)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie

(6)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie

(7)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie

(8)

7 IDEA — International Data Encryption Algorithm

• IDEA jest algorytmem blokowym wprowadzonym w latach 90-tych

• IDEA używa kluczy 128 bitowych • IDEA jest używana w pakiecie PGP

• IDEA jest algorytmem opatentowanym; można go używać bezpłatnie do celów niekomercyjnych

• IDEA działa na blokach 64 bitowych i wykorzystuje 3 różne operacje: xor (⊕), dodawanie modulo 216 () oraz mnożenie modulo 216 + 1 ( )

(9)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(10)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16 bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(11)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(12)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(13)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(14)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4 podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów:

(15)

7.1 Szyfrowanie

• 64 bitowy blok tekstu jawnego jest dzielony na 4 bloki po 16

bitów: X1, X2, X3, X4

• Algorytm składa się z 8 rund

• W każdej rundzie wykonywane są wymienione wyżej 3 typy operacji na 16 bitowych blokach z 16 bitowymi podkluczami (każda runda wymaga 6 podkluczy)

• Pomiędzy rundami blok 2 i 3 są zamieniane

• Algorytm kończy przekształcenie końcowe, które wymaga 4

podkluczy

• W wyniku otrzymuje się 4 bloki kryptogramu po 16 bitów: Y , Y , Y , Y

(16)
(17)

X1 X2 X3 X4

? ? ? ?

- - -

(18)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕

(19)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r

(20)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ?

(21)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6 

(22)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6  r  -⊕ ⊕

(23)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6  r  -⊕ ⊕ r  -⊕ ⊕

(24)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6  r  -⊕ ⊕ r  -⊕ ⊕ ? ? hhh hhh hhhhh h ( ( ( ( ( ( ( ( ( ( ( ( ? ?

(25)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6  r  -⊕ ⊕ r  -⊕ ⊕ ? ? hhh hhh hhhhh h ( ( ( ( ( ( ( ( ( ( ( ( ? ? Kolejne 7 rund

(26)

X1 X2 X3 X4 ? ? ? ? - - - -K1(1) K2(1)  K3(1)  K4(1) ? r -? r  ⊕ ? ? r -⊕ r ? -K5(1) ? ? ?  K(1) 6  r  -⊕ ⊕ r  -⊕ ⊕ ? ? hhh hhh hhhhh h ( ( ( ( ( ( ( ( ( ( ( ( ? ? Kolejne 7 rund hhh hhh hhhhh h ( ( ( ( ( ( ( ( ( ( ( ( ? ? ? ? - - - -K1(9) K2(9)  K3(9)  K4(9) ? ? ? ? Y1 Y2 Y3 Y4

(27)

7.2 Generowanie podkluczy

• IDEA używa klucza 128 bitowego i wymaga 8 × 6 + 4 = 52

podklucze

1. 128 bitowy klucz jest dzielony na bloki 16 bitowe, co daje 8

podkluczy

2. Na kluczu wykonuje się przesunięcie cykliczne o 25 pozycji i znowu dzieli na bloki 16 bitowe, co daje kolejne 8

podkluczy

3. Operację z punktu 2 powtarza się tak długo aż wygeneruje się wszystkie podklucze

(28)

7.2 Generowanie podkluczy

• IDEA używa klucza 128 bitowego i wymaga 8 × 6 + 4 = 52 podklucze

1. 128 bitowy klucz jest dzielony na bloki 16 bitowe, co daje 8

podkluczy

2. Na kluczu wykonuje się przesunięcie cykliczne o 25 pozycji i znowu dzieli na bloki 16 bitowe, co daje kolejne 8

podkluczy

3. Operację z punktu 2 powtarza się tak długo aż wygeneruje się wszystkie podklucze

(29)

7.2 Generowanie podkluczy

• IDEA używa klucza 128 bitowego i wymaga 8 × 6 + 4 = 52

podklucze

1. 128 bitowy klucz jest dzielony na bloki 16 bitowe, co daje 8 podkluczy

2. Na kluczu wykonuje się przesunięcie cykliczne o 25 pozycji i znowu dzieli na bloki 16 bitowe, co daje kolejne 8

podkluczy

3. Operację z punktu 2 powtarza się tak długo aż wygeneruje się wszystkie podklucze

(30)

7.2 Generowanie podkluczy

• IDEA używa klucza 128 bitowego i wymaga 8 × 6 + 4 = 52

podklucze

1. 128 bitowy klucz jest dzielony na bloki 16 bitowe, co daje 8

podkluczy

2. Na kluczu wykonuje się przesunięcie cykliczne o 25 pozycji i znowu dzieli na bloki 16 bitowe, co daje kolejne 8

podkluczy

3. Operację z punktu 2 powtarza się tak długo aż wygeneruje się wszystkie podklucze

(31)

7.2 Generowanie podkluczy

• IDEA używa klucza 128 bitowego i wymaga 8 × 6 + 4 = 52

podklucze

1. 128 bitowy klucz jest dzielony na bloki 16 bitowe, co daje 8

podkluczy

2. Na kluczu wykonuje się przesunięcie cykliczne o 25 pozycji i znowu dzieli na bloki 16 bitowe, co daje kolejne 8

podkluczy

3. Operację z punktu 2 powtarza się tak długo aż wygeneruje się wszystkie podklucze

(32)

7.3 Deszyfrowanie

• Deszyfrowanie algorytmem IDEA przebiega tak jak

szyfrowanie, zamiast X1, X2, X3, X4 na wejściu podaje się bloki Y1, Y2, Y3, Y4 kryptogramu oraz klucz K (ten sam co przy szyfrowaniu)

• Z klucza K generuje się podklucze Ki(r)

• Generuje się podklucze deszyfrujące K0(r)i wg schematu przedstawionego w tablicy

(33)

7.3 Deszyfrowanie

• Deszyfrowanie algorytmem IDEA przebiega tak jak

szyfrowanie, zamiast X1, X2, X3, X4 na wejściu podaje się bloki Y1, Y2, Y3, Y4 kryptogramu oraz klucz K (ten sam co przy szyfrowaniu)

• Z klucza K generuje się podklucze Ki(r)

• Generuje się podklucze deszyfrujące K0(r)i wg schematu przedstawionego w tablicy

(34)

7.3 Deszyfrowanie

• Deszyfrowanie algorytmem IDEA przebiega tak jak

szyfrowanie, zamiast X1, X2, X3, X4 na wejściu podaje się bloki Y1, Y2, Y3, Y4 kryptogramu oraz klucz K (ten sam co przy szyfrowaniu)

• Z klucza K generuje się podklucze Ki(r)

• Generuje się podklucze deszyfrujące K0(r)i wg schematu przedstawionego w tablicy

(35)

7.3 Deszyfrowanie

• Deszyfrowanie algorytmem IDEA przebiega tak jak

szyfrowanie, zamiast X1, X2, X3, X4 na wejściu podaje się bloki Y1, Y2, Y3, Y4 kryptogramu oraz klucz K (ten sam co przy szyfrowaniu)

• Z klucza K generuje się podklucze Ki(r)

• Generuje się podklucze deszyfrujące K0(r)i wg schematu przedstawionego w tablicy

(36)

Runda K0(r)1 K0(r)2 K0(r)3 K0(r)4 K0(r)5 K0(r)6 r = 1 “K1(10−r)”−1 −K2(10−r) −K3(10−r) “K4(10−r)”−1 K5(9−r) K6(9−r) 2≤ r ≤ 8 “K1(10−r)”−1 −K3(10−r) −K2(10−r) “K4(10−r)”−1 K5(9−r) K6(9−r) r = 9 “ K1(10−r) ”−1 −K2(10−r) −K3(10−r) “K4(10−r) ”−1 — —

Tworzenie podkluczy deszyfrujących K0(r)i na podstawie podkluczy szyfrujących Ki(r) w algorytmie IDEA (dla Ki = 0 przyjmuje się

(37)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako

128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(38)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako

128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(39)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako

128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(40)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako 128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(41)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako

128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(42)

8 AES — Advanced Encryption Standard — Rijndael • Nowy standard przyjęty w 2001 r. w USA

• Algorytm blokowy, który zaprojektowali Joan Daemen i Vincent Rijmen

• Zarówno długość bloku jak i klucza może być wybrana jako

128, 192 lub 256 bitów

• Rijndael jest ogólnie dostępny

(43)

• W każdej rundzie wykonywane są 4 operacje (macierzowe):

– podstawienie w S-boksie

– przesunięcie wierszy – mieszanie kolumn xor z podkluczem

(44)

• W każdej rundzie wykonywane są 4 operacje (macierzowe): – podstawienie w S-boksie

– przesunięcie wierszy – mieszanie kolumn xor z podkluczem

(45)

• W każdej rundzie wykonywane są 4 operacje (macierzowe):

– podstawienie w S-boksie – przesunięcie wierszy

– mieszanie kolumn xor z podkluczem

(46)

• W każdej rundzie wykonywane są 4 operacje (macierzowe):

– podstawienie w S-boksie

– przesunięcie wierszy

– mieszanie kolumn

xor z podkluczem

(47)

• W każdej rundzie wykonywane są 4 operacje (macierzowe):

– podstawienie w S-boksie

– przesunięcie wierszy – mieszanie kolumn

xor z podkluczem

(48)

• W każdej rundzie wykonywane są 4 operacje (macierzowe):

– podstawienie w S-boksie

– przesunięcie wierszy – mieszanie kolumn xor z podkluczem

(49)
(50)
(51)
(52)

Cytaty

Powiązane dokumenty

33 Wykorzystanie hiperłączy w prezentacji 41 Tworzymy dokument wielostronicowy 44 Zaawansowane funkcje edytora grafiki 49 Instalacja oprogramowania. 53 Projekt

– niektóre Kościoły prawosławne (konstantynopolitański, rumuński, grecki, fiński) używają kalendarza gregoriańskiego na święta stałe, kalendarza juliańskiego na święta

• posiada stopień wojskowy równy lub bezpośrednio niższy od stopnia etatowego stanowiska służbowego, na jakie ma być wyznaczony, a w przypadku gdy stanowisko etatowe jest

cisco“ könnten eine konsequente Fortsetzung von „Rodzinna Europa“ sein, wenn auch hier die Chronologie und die lineare Perspektive mit der für das Selbstporträt typischen,

Data from Australian Government Bureau of Meteorology (BOM 2014a, d) accessed October 10, 2014. Temperatures in Cape Otway Lighthouse: a) measured monthly average maximum

Podobnie po założeniu relacji można zmienić lico źródłowe w tym wypadku trzeba użyć przycisku Element części umieszczanej (przycisk Z rys.. Polecenie Składaj można wywołać

- piętro koron drzew (do 40 m wysokości), tworzoną przez w pełni dojrzałe rośliny drzewiaste (różne gatunki zależnie od zbiorowiska roślinnego, w Polsce: sosna, świerk, buk,

Zmiana wartości argumentu odbywa się później (po wyliczeniu całego wyrażenia)...

c. ograniczenia możliwości uprawniania nowych Zawodników na czas nie dłuższy niż 12 miesięcy. W przypadku złożenia przez Klub bezpodstawnego oświadczenia o jednostronnym

1 niniejszego paragrafu Polski Związek Piłki Nożnej może udzielić jednorazowej zgody na organizację kursu kształcenia trenerów: UEFA A, UEFA Elite Youth B, UEFA B, UEFA

Podczas lekcji wyjaśniamy pojęcie krajobraz, stosując metodę mapowania pojęć, a następnie wyjaśniamy, jak rozumieją pojęcie krajobraz przekształcony. Warto zwrócić

Informatyka 2 (ES1E3017), studia stacjonarne I stopnia

Jeśli pamięci nie można przydzielić, to zwraca wartość NULL Przydzielona pamięć nie jest inicjowana. Zwracaną wartość wskaźnika należy rzutować na

Jeśli zauważysz, że dzieci oczekują jeszcze kilku przykładów, kontynuuj zabawę (zaproponuj, aby i dzieci stały się prowadzącymi).. Po każdym poleceniu nauczyciela

Specjalnie dobrany papier o wysokiej gramaturze, zabezpiecza arkusze przed marszczeniem się w trakcie malowania oraz przed przesiąkaniem

Są lata, kiedy miasteczko wypełnia się gwarnym tłumem młodzieży, po nich przychodzą okresy, gdy przyjeżdżają tylko babcie i matki z dziećmi, Kazimierz staje

Pojawią się firmy, które działają wyłącznie tam, niektóre będą prowadzone przez sztuczną inteligencję. Metaverse zacznie oferować pełne

Art. Kryterium oceny wykorzystania Juniorów i Wychowanków, stanowią minuty rozegrane w ramach oficjalnych rozgrywek mistrzowskich IV ligi. Każdy Junior lub Wychowanek wchodzący

According to the Japanese Act of 12 November 1993 – Law on Administrative Procedure (gyōsei tetsuzuki hō: Law No. 88), the administrative guidance does not consist a part of

Jeżeli w okresie trzech miesięcy, licząc od dnia wydania orzeczenia o niepełnosprawności lub orzeczenia o stopniu niepełnosprawności, zostanie złożony wniosek o ustalenie prawa

Głównymi najemcami powierzchni magazynowych w Polsce wschodniej, w tym także w Lublinie jest sektor lekkiej produkcji (69 proc.) oraz handlu (23 proc.).. Wskaźnik pustostanów na

P.  Żółkowski byłby dobrym aktorem komicznym, gdyby przestał chcieć być bufo- nem; gdyby raczył sobie przypomnieć, że teatr jest rodzajem liceum, gdzie trzeba się poddać

Porównanie opinii badanych uprawiających sporty indywidualne i zespołowe gry sportowe dostarcza wyników mówiących o silniejszym sprzyjającym oddziaływaniu czynników wewnętrznych