ЗАШТИТА ОДАТАКА...Rešenje • 15-1 mod 26 = ? • Tražimo broj x takav da važi 15 *...

Post on 19-Jun-2020

1 views 0 download

Transcript of ЗАШТИТА ОДАТАКА...Rešenje • 15-1 mod 26 = ? • Tražimo broj x takav da važi 15 *...

ЗАШТИТА ПОДАТАКА

Симетрични алгоритми заштите

увод у криптографију

Zadatak 1

• Šifrovati poruku “napadamo u podne ako ne bude vetra”, koristeći svaki od sledećih osnovnih kriptografskih algoritama:– Cezarov (Caesar) algoritam u originalnom obliku (pomeraj je 3),

– monoalfabetski algoritam sa ključem: qwertzuiopasdfghjklyxcvbnm,

– Playfair algoritam sa ključnom reči: vetrobran (i i j tretirati kao jedno polje matrice),

– Rail Fence algoritam u tri reda,

– Row Transposition algoritam sa ključem: 4312567

• Napomena: koristiti 26 slova engleske abecede.

Rešenje

• napadamo u podne ako ne bude vetraa b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Rešenje

• napadamo u podne ako ne bude vetraa b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• Q

Rešenje

• napadamo u podne ako ne bude vetraa b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• QD

Rešenje

• napadamo u podne ako ne bude vetraa b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• QDS

Rešenje

• napadamo u podne ako ne bude vetraa b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• QDSDGDPR X SRGQH DNR QH EXGH YHWUD

Rešenje

• napadamo u podne ako ne bude vetra

abcdefghijklmnopqrstuvwxyz

qwertzuiopasdfghjklyxcvbnm

Rešenje

• napadamo u podne ako ne bude vetra

abcdefghijklmnopqrstuvwxyz

qwertzuiopasdfghjklyxcvbnm

• f

Rešenje

• napadamo u podne ako ne bude vetra

abcdefghijklmnopqrstuvwxyz

qwertzuiopasdfghjklyxcvbnm

• fq

Rešenje

• napadamo u podne ako ne bude vetra

abcdefghijklmnopqrstuvwxyz

qwertzuiopasdfghjklyxcvbnm

• fqh

Rešenje

• napadamo u podne ako ne bude vetra

abcdefghijklmnopqrstuvwxyz

qwertzuiopasdfghjklyxcvbnm

• fqhqrqdg x hgrft qag ft wxrt ctykq

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V E

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V E T

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V E T R O

B R

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V E T R O

B A

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• vetrobran

V E T R O

B A N

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

V E T R O

B A N C

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

V E T R O

B A N C D

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• cn

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• cn mn

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• cn mn bn se xl dk

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

Rešenje

• na pa da mo up od ne ak on eb ud ev et ra

• cn mn bn se xl dk at dg td va zb te tr ec

V E T R O

B A N C D

F G H I/J K

L M P Q S

U W X Y Z

Rešenje

• napadamo u podne ako ne bude vetra

• n d u n o u e

• a a a o p d e k n b d v t a

• p m o a e e r

• ndunoueaaaopdeknbdvtapmoaeer

Rešenje

• napadamo u podne ako ne bude vetra

• 4 3 1 2 5 6 7

• n a p a d a m

• o u p o d n e

• a k o n e b u

• d e v e t r a

• ppovaoneaukenoadddetanbrmeua

Zadatak 2

• Prikazati postupak kriptoanalizemonoalfabetske šifre nad porukomUZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESX UDBMETSXAIZVUEPHZHMDZSHZOWSFPAPPDT SVPQUZWYMXUZUHSXEPYEPOPDZSZUFPOMBZ WPFUPZHMDJUDTMOHMQ

Rešenje

Rešenje

• Analiza frekvencije pojavljivanja karaktera

• Poruka: UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBM ETSXAIZVUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYM XUZUHSXEPYEPOPDZSZUFPOMBZWPFUPZHMDJUDT MOHMQ

• Pojavljivanje pojedinačnih karaktera:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

2 2 0 6 6 4 2 7 1 1 0 0 8 0 9 16 3 0 10 3 10 5 4 5 2 14

Rešenje

• P i Z -> E i T

• Osim pojedinačnih frekvencija, analiza se sprovodi ina osnovu frekvencije digrama ili sekvence od višesukcesivnih karaktera

• najčešće TH -> Z = T, P = E i W = H

• *T**********E**E*TE****TH*T*E*E************* T***E*T***T**T*H**E*EE****E**TH****T*****E** E*E*T*T**E***THE**ET************

• TH*T -> THAT ZWSZ, odatle je S = A

Rešenje

• Nakon dekripcije dobija se sledeća poruka: IT WAS DISCLOSED YESTERDAY THAT SEVERAL INFORMAL BUT DIRECT CONTACTS HAVE BEEN MADE WITH POLITICAL REPRESENTATIVES OF THE VIET CONG IN MOSCOW

Zadatak 3

• Upotrebom Playfair algoritma šifrovati poruku VENI VIDI VICI. Za šifrovanje izabrati jedan od ponuđenih ključeva tako da on najviše doprinosi sigurnosti: ANANAS, IRITIRATI, SUNCE. Obrazložiti izbor. Poruka se sastoji isključivo od slova engleskog alfabeta. Uzeti da se I i J mapiraju kao jedno slovo.

Rešenje

A N S B C

D E F G H

I/J K L M O

P Q R T U

V W X Y Z

I/J R T A B

C D E F G

H K L M N

O P Q S U

V W X Y Z

S U N C E

A B D F G

H I/J K L M

O P Q R T

V W X Y Z

• Playfair matrice za svaki od tri ključa

Rešenje

• ve ni vi di vi ci

• Za ključ je izabrana reč SUNCE. Zašto?

• Rešenje: ZSUK WHBK WHUL

S U N C E

A B D F G

H I/J K L M

O P Q R T

V W X Y Z

Zadatak 4

• Posmatra se ćirilični Playfair algoritam koji koristi matricu 5x6. Prikazati postupak dekriptovanja poruke ОЗМЕЖАУЛМОЛИЛПНХОЏ koristeći ključ КОЛОКВИЈУМ. Pretpostaviti da je slovo za razdvajanje para ponovljenih slova prilikom šifrovanja bilo slovo Х.

Rešenje

• oз ме жа ул мо ли лп нх оџ

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

Rešenje

• оз ме жа ул мо ли лп нх оџ

• ве

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

Rešenje

• оз ме жа ул мо ли лп нх оџ

• ве ом

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

Rešenje

• оз ме жа ул мо ли лп нх оџ

• ве ом ал ак ох ов ор еш их

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

K O Л В И Ј

У М А Б Г Д

Ђ Е Ж З Љ Н

Њ П Р С Т Ћ

Ф Х Ц Ч Џ Ш

Rešenje

• Веома лакох ово реших

• slovo х je dodato da bi razdvojilo dva slova о

• Da li treba poslednje slovo х izbaciti?

• Da li smo kriptoanalizom mogli da dešifrujemo ovu poruku?

Zadatak 5

• Dešifrovati poruku: STXESSH’AXHXIAWTHTDA koja je dobijena šifrovanjem transpozicionimalgoritmom sa ključem: (3,1,4,2). Transpozicijaje primenjena dva puta.

Rešenje

• Ređanje je po kolonama!

• ciphertext: STXESSH’AXHXIAWTHTDA

• 3 1 4 2

• H S T S

• X T H H

• I X T ‘

• A E D A

• W S A X

• HSTSXTHHIXT’AEDAWSAX

Rešenje

• HSTSXTHHIXT’AEDAWSAX

• 3 1 4 2

• T H A T

• ’ S W H

• A T S H

• E S A I

• D X X X (slova X su bile dopune)

• THAT’S WHAT SHE SAID XXX

• Da li smo kriptoanalizom mogli da dešifrujemo ovu poruku?

Zadatak 6

• Upotrebom Hill algoritma šifrovati poruku SECURITY koristeći ključ HILL. Poruka se sastoji isključivo od slova engleskog alfabeta.

Rešenje

• Karakteri se kodiraju numeričkim vrednostimaA = 0, B = 1, ... , Z = 25

• C = PK mod 26

• Bira se m sukcesivnih karaktera plaintext-a irešava se sistem jednačina (m = 2):

• c1 = (k11*p1 + k21*p2) mod 26

• c2 = (k12*p1 + k22*p2) mod 26K =

k11 k12k21 k12

Rešenje

• plaintext: SECURITY

• K = 𝐻 𝐼𝐿 𝐿

=7 811 11

• m = 2

• SE ↔ 18 4

• c1 = (18 * 7 + 4 * 11) mod 26 = 14 (O)

• c2 = (18 * 8 + 4 * 11) mod 26 = 6 (G)

• ciphertext: OGACZQHA

Rešenje

• Kako biste dešifrovali dobijenu poruku?

• ciphertext: OGACZQHA

• Dešifrovanje koristi inverznu matricu ključa

• dokaz: P = D(K, C) = CK-1 mod 26 = PKK-1 = P

• def: K-1 = det(K)-1 * adj(K)

• sva aritmetika se radi po modulu 26!

• det(K) = 7 * 11 – 8 * 11 = -11 mod 26 = 15

• det(K)-1 = 15-1 mod 26

• 15-1 mod 26 = ?

K = 𝐻 𝐼𝐿 𝐿

=7 811 11

Rešenje

• 15-1 mod 26 = ?

• Tražimo broj x takav da važi 15 * x mod 26 = 1

• 1. način - pešački:– 15 * 1 mod 26 = 15

– 15 * 2 mod 26 = 4

– 15 * 3 mod 26 = 19

– 15 * 4 mod 26 = 8

– 15 * 5 mod 26 = 23

– 15 * 6 mod 26 = 12

– 15 * 7 mod 26 = 1

• det(K)-1 = 15-1 mod 26 = 7

Rešenje• 15-1 mod 26 = ?

• 2. načun - Euklidov algoritam:– 26 = 15 * (1) + 11

– 15 = 11 * (1) + 4

– 11 = 4 * (2) + 3

– 4 = 3 * (1) + 1

– sad idemo unazad

– 1 = 4 – 1*31 = 4 – 1*(11 - 2*4) = - 1*11 + 3*41 = - 1*11 + 3*(15 – 1*11) = - 4*11 + 3*151 = - 4*(26 – 1*15) + 3*151 = - 4*26 + 7*151 mod 26 = -4*26 mod 26 + 7*15 mod 26 1 = 7 * 15 mod 26

• det(K)-1 = 15-1 mod 26 = 7

Rešenje

• adj(K) = adj(7 811 11

) = 11 −8−11 7

mod 26

• adj(K) = 11 1815 7

• K-1 = det(K)-1 * adj(K) = 7 * 11 1815 7

= 77 126105 49

mod 26 =

=25 221 23

• ciphertext: OGACZQHA

• OG ↔ 14 6

• c1 = (14 * 25 + 6 * 1) mod 26 = 18 (S)

• c2 = (14 * 22 + 6 * 23) mod 26 = 4 (E)

• plaintext: SECURITY

• Koja su ograničenja pri izboru ključa za šifrovanje?

Zadatak 7

• Poruku “racunarskatehnikaiinformatika” šifrovati šifrom “zastita”

• Istu poruku šifrovati sada uz upotrebu autokey poboljšanja Vigenère metode.

• Napomena: koristiti 26 slova engleskeabecede.

Rešenje

Rešenje

• Ključ: zastita

• Poruka: racunarskatehnikaiinformatika

• Šifrovana poruka:

• qaunvtrrksmmanhksbqgfnretbbkz

• Auto key: zastitaracunarskatehnikaiinfo

• Šifrovana poruka:

• qaunvtrjkcnrheavabmvswbmibvpo

Zadatak 8

• Na slici je prikazana trenutnakonfiguracija rotor mašine.Prikazati postupak šifrovanjaporuke NEBO JE VEDRO kojapredstavlja deo neke većeporuke, ukoliko se zna da je doovog trenutka šifrovan 671karakter. Smatrati da je levi rotornajbrži, a desni najsporiji. Rotorirotiraju na dole.

Rešenje

• Nakon svakog šifrovanog karaktera, levi rotor rotira za 1

• Nakon šifrovanja 26. karaktera levi rotor rotira 26. put te se vraća u početno stanje, a srednji rotor rotira za 1

• Nakon šifrovanja (26 x 26 = ) 676. karaktera srednji rotor rotira 26. put te se vraća u početno stanje, a desni rotor rotira za 1

• Do sada je šifrovan 671 karakter

• Šifrovanje 672. karaktera • Stanje rotora nakon šifrovanja

• plaintext: NEBO JE VEDRO • ciphertext: Y

• Šifrovanje 673. karaktera • Stanje rotora nakon šifrovanja

• plaintext: NEBO JE VEDRO • ciphertext: YP

• Šifrovanje 676. karaktera • Stanje rotora nakon šifrovanja

• plaintext: NEBO JE VEDRO • ciphertext: YPJSX

• Šifrovanje 677. karaktera • Stanje rotora nakon šifrovanja

• plaintext: NEBO JE VEDRO • ciphertext: YPJSXR

Rešenje

• ciphertext: YPJSXRSIBAM

• Kako biste dešifrovali dobijenu poruku?

• Kako biste pronašli početno stanje rotora pre šifrovanja prvog karaktera?