PORADNIK KRYPTOGRAFICZNY id 376 Nieznany

background image

Kryptograficzna

przygoda

01010 10001 11000 01111 10011
01110 00110 10001 00000 00101

01000 00010 11001 01101 00000
01111 10001 11001 11000 00110

01110 00011 00000

czyli całkiem inne szyfrowanie…

Autor:

phm. Michał Starosta HO

7 DSH „Cerber” im. gen. S.F. Sosabowskiego

Hufiec ZHP Nowy Tomyśl

cerber7zsh@op.pl

Spis tre

ś

ci

background image

I.

II.

III.

IV.

V.

Czy nie zastanawiali

ś

cie si

ę

?...

Co b

ę

dzie nam potrzebne

Zaczynamy zabaw

ę

Szyfr zmieniaj

ą

cy alfabet

Szyfr Vigenere’a
Szyfr Playfair’a

Robi si

ę

powa

ż

nie;-)

ECB
CBC
CFB
Szyfr Feistella

Wytaczamy ostatni

ą

armat

ę

Szyfr afiniczny

Pomoce matematyczne
Dodawanie binarne – dodawanie inaczej
Permutacja – z czym si

ę

to je

Macierz – to bardzo proste
Modulo – czy kto

ś

mi grozi?

3
3

4
4
8

13

15
15
19
23
28

33
33

37
37
37
37
38

Czy nie zastanawialiście się?...

www.wedrownik.net

2

background image

Czy nigdy si

ę

nie zastanawiali

ś

cie nad pewnymi brakami w rozwoju technik harcerskich? W

zasadzie wi

ę

kszo

ść

technik harcerskich mo

ż

emy rozwija

ć

w zale

ż

no

ś

ci od wieku. Wiele, ale

nie szyfry. Tak jak uczymy si

ę

ich na samym pocz

ą

tku naszej przygody harcerskiej, tak

zazwyczaj nic nowego ju

ż

ź

niej nie poznajemy. Proste szyfry harcerskie nie s

ą

ż

adnym

wyzwaniem dla harcerzy starszych, nie wspominaj

ą

c o w

ę

drownikach.

Mo

ż

e pora to zmieni

ć

. Chciałbym zaproponowa

ć

mał

ą

wycieczk

ę

w krain

ę

kryptografii.

Potrzebny przy tym aparat matematyczny nie b

ę

dzie wymagaj

ą

cy – humani

ś

ci nie musz

ą

si

ę

obawia

ć

.

Do cz

ęś

ci szyfrów podam metody ich łamania. Do tej pory przy harcerskich szyfrach nie

mieli

ś

my takiej mo

ż

liwo

ś

ci, gdy

ż

znajomo

ść

rodzaju szyfru była równoznaczna z mo

ż

liwo

ś

ci

ą

jego rozszyfrowania. Do nowych szyfrów potrzebny zawsze b

ę

d

ą

jakie

ś

dodatkowe

informacje. I łamanie szyfru b

ę

dzie zazwyczaj równoznaczne z ich kre

ś

leniem.

Co będzie nam potrzebne

Pierwszy grupa nowych szyfrów jakie b

ę

d

ą

w nast

ę

pnym rozdziale zaprezentowane nie b

ę

d

ą

od nas wymagały

ż

adnych przekształce

ń

matematycznych – wystarcz

ą

odpowiednie tabele i

b

ę

dziemy mogli szyfrowa

ć

i deszyfrowa

ć

wiadomo

ś

ci.

Do szyfrów z drugiej grupy potrzebna nam b

ę

dzie tabela zapisu liter w postaci

zerojedynkowej lub mówi

ą

c inaczej binarnej. Na szcz

ęś

cie szyfry te nie b

ę

d

ą

wymagały od

nas

ż

adnych skomplikowanych oblicze

ń

. Wystarczy par

ę

prostych działa

ń

matematycznych.

Do pracy z pozostałymi szyframi przyda si

ę

nam kalkulator. My

ś

l

ę

,

ż

e nie jest to bardzo

uci

ąż

liwe wymaganie, gdy

ż

wi

ę

kszo

ść

z nas posiada telefony komórkowe z kalkulatorem w

bonusie. Tutaj potrzebne b

ę

d

ą

nam tak

ż

e pewne poj

ę

cia z matematyki wy

ż

szej – operacja

modulo (bez strachu to wbrew pozorom bardzo łatwe).
Cała teoria matematyczna zostanie umieszczona dla przejrzysto

ś

ci na ko

ń

cu poradnika – na

pocz

ą

tku mogłaby za bardzo straszy

ć

;-)

Dodam jeszcze,

ż

e przy opisach działania i łamania szyfrów nie b

ę

d

ę

rozpisywał si

ę

jaka

teoria matematyczna pozwala na takie, a nie inne działania. Nie chc

ę

aby ten poradnik był

zbyt podobny do ksi

ą

zki z matematyki. Ka

ż

da metoda b

ę

dzie krok po kroku tłumaczona na

konkretnym przykładzie – zamiast przebijania si

ę

przez teorie od razu zobaczycie jak

działaj

ą

konkretne metody.

Ciekawskich zach

ę

cam do poszperania po ksi

ąż

kach (wybór literatury jest naprawd

ę

du

ż

y,

nawet dla pocz

ą

tkuj

ą

cych), a reszt

ę

do zabawy nieskr

ę

powanej teori

ą

matematyczn

ą☺

Zaczynamy zabawę

www.wedrownik.net

3

background image

Szyfr zmieniający alfabet

Fachowo powiedzieliby

ś

my – szyfr permutuj

ą

cy alfabet. Pierwszy szyfr i ju

ż

dziwne

matematyczne słowo;-) Ale aby nie bawi

ć

si

ę

w nadmierne tłumaczenie definicji permutacji

wystarczy przyj

ąć

,

ż

e zasada działania szyfru polega na zamianie kolejno

ś

ci liter alfabetu.

Jak to wygl

ą

da?

SZYFROWANIE – DESZYFROWANIE – ŁAMANIE SZYFRU

Aby zaszyfrowa

ć

wiadomo

ść

musimy utworzy

ć

alfabet tajny – czyli zmieni

ć

kolejno

ść

liter w

alfabecie. W praktyce wygl

ą

da to tak,

ż

e zapisujemy najpierw wszystkie litery w klasycznej

kolejno

ś

ci, a pó

ź

niej ka

ż

dej z nich przyporz

ą

dkujemy wybrana przez nas liter

ę

.

Wa

ż

ne

– nowo przyporz

ą

dkowane litery nie mog

ą

si

ę

powtarza

ć

!!!

Poni

ż

sza tabelka jest przykładem takiego nowego przyporz

ą

dkowania.

www.wedrownik.net

4

background image

a

m

f

k

m

t

ś

y

ą

c

g

i

n

ó

t

p

b

g

h

ć

ń

ą

u

z

c

a

i

ę

o

s

www.wedrownik.net

5

background image

Wadą tej metody jest to, że każdy przy odrobinie cierpliwości może złamać taki szyfr. Zaletą
zaś jest jej łatwość i możliwość zastosowania w różnych zabawach harcerskich – nawet dla
harcerzy młodszych.

Szyfr Vigenere’a

Zanim przejd

ę

do omawiania szyfru Vigenere’a przypomn

ę

szyfrowanie metod

ą

Cezara. Ten szyfr zna wi

ę

kszo

ść

harcerzy. W podanym tek

ś

cie, wybieramy jako klucz

cyfr

ę

nie wi

ę

ksz

ą

ni

ż

26 lub 32 (w zale

ż

no

ś

ci czy stosujemy angielski czy polski

alfabet). I wszystkie litery naszego tekstu przesuwamy o t

ą

warto

ść

na prawo w

alfabecie. Deszyfrowanie analogicznie z tym,

ż

e przesuwamy litery w lewo.

ż

nica pomi

ę

dzy szyfrem Cezara, a Vigenere’a jest taka,

ż

e w tym drugim

przypadku rol

ę

klucza pełni nie cyfra ale wyraz.

Aby nie musie

ć

co chwila oblicza

ć

jaka litera jest nast

ę

pn

ą

o podan

ą

ilo

ść

pozycji,

b

ę

dziemy stosowa

ć

tablic

ę

Vigenere’a.

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

A

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

B

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

A

C

C

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

D

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

E

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

D

F

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

G

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

H

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

I

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

J

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

K

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

L

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

M

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

N

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

O

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

P

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

Q

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

R

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

S

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

T

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

U

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

www.wedrownik.net

6

background image

V

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

W

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

X

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

Y

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Z

Z

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

Wskazówka
- w przypadku tego szyfru polecam stosowanie alfabetu angielskiego, gdy

ż

dzi

ę

ki

temu mo

ż

emy u

ż

ywaj

ą

c tylko jednej tablicy, by szyfrowa

ć

teksty w wi

ę

kszo

ś

ci j

ę

zyków

- je

ś

li chcemy szyfrowa

ć

tekst z polskimi literami musimy odpowiednio rozbudowa

ć

nasz

ą

tabel

ę

Maj

ą

c ju

ż

tabelk

ę

mo

ż

emy przyst

ą

pi

ć

do nauki jak funkcjonuje ta metoda.

SZYFROWANIE – DESZYFROWANIE – ŁAMANIE SZYFRU

Jak ju

ż

zostało wspomniane, jako klucza u

ż

ywa

ć

b

ę

dziemy wyrazu, a nie jednej litery.

Gdy tekst przeznaczony do szyfrowania jest dłu

ż

szy ni

ż

nasz klucz, to musimy wyraz klucz

wpisa

ć

pod naszym tekstem jawnym tyle razy ile si

ę

zmie

ś

ci.

W poni

ż

szym przykładzie u

ż

ywamy jako klucza słowa

dom

.

www.wedrownik.net

7

background image

h
a
r
c
e
r
z

s
z
e
d
l

p
r
z
e
z

d
o
m
d
o
m
d

o
m
d
o
m

d
o
m
d
o

Taki zapis oznacza,

ż

e do szyfrowania litery

h

u

ż

yjemy liter

ę

d

,

o

dla

a

,

m

dla

r

itd. Ale jak

teraz zastosowa

ć

nasz

ą

tabel

ę

? W pierwszym wierszu szukamy liter

ę

, któr

ą

chcemy

zaszyfrowa

ć

, a wi

ę

c w naszym przypadku

h

. W pierwszej kolumnie szukamy liter

ę

z klucza,

a wi

ę

c

d

. Przeci

ę

cie si

ę

wiersza i kolumny przyporz

ą

dkowuje nam zaszyfrowan

ą

liter

ę

k

.

www.wedrownik.net

8

background image

A
B
C
D
E

F

G

H

I

A
A
B
C
D
E

F

G

H

I

B
B
C
D
E

F

G

H

I

J

C
C
D
E

F

G

H

I

J

K

D
D
E

F

G

H

I

J

K

L

E

www.wedrownik.net

9

background image

Metoda ta jest do

ść

pracochłonna, ale po paru próbach łamanie szyfru powinno post

ę

powa

ć

do

ść

szybko. Istnieje przy niej ryzyko popełnienia pewnej ilo

ś

ci bł

ę

dów literowych lub pomyłki

podczas liczenia.

www.wedrownik.net

10

background image

Szyfr Playfaira

B

ę

dzie to ostatni szyfr z pierwszej grupy. Niestety tutaj nie podam metody jego łamania,

gdy

ż

jest zbyt pracochłonna. Ale pomimo to jest on wart uwagi.

SZYFROWANIE – DESZYFROWANIE

Równie

ż

ten szyfr opiera si

ę

na stosowaniu odpowiedniej tabelki. Jednak aby j

ą

stworzy

ć

,

potrzebne jest nam słowo klucz . Szyfr ten powstał w oparciu o słowo

playfair

(st

ą

d ta

nazwa). Nic nie stoi jednak na przeszkodzie, aby u

ż

ywa

ć

dowolnego słowa klucza.

Ż

eby utworzy

ć

odpowiedni

ą

tabelk

ę

(5x5) wpisujemy słowo klucz z pomini

ę

ciem

powtarzaj

ą

cych si

ę

liter. Wa

ż

ne jest tak

ż

e to,

ż

e litery

i

i

j

traktujemy jako jedn

ą

. Pozostałe

wolne miejsca w tabeli uzupełniamy (w kolejno

ś

ci alfabetycznej) brakuj

ą

cymi literami.

P

L
A
Y
F

I/J
R
B
C
D

E
G
H
K
M

N
O
Q
S
T

U
V
W
X
Z

Metod

ę

t

ą

omówi

ę

na przykładzie szyfrowania słowa

konna policja

. Wiem,

ż

e lepiej brzmi

policja konna, ale na potrzeby prezentacji działania szyfru zamieniłem ogólnie przyjmowan

ą

kolejno

ść

.

Krok I.
Dzielimy nasz tekst na pary liter. Je

ś

li w parze wyst

ę

puj

ą

te same litery, to oddzielamy je

liter

ą

x

. Gdyby okazało si

ę

,

ż

e ostatnia litera nie ma pary to tak

ż

e dopisujemy do niej

x

.

www.wedrownik.net

11

background image

ko
n

x

n
a
p
o
li
cj
a

x

Krok II.
Teraz stosujemy 3 zasady szyfrowania.

1. Je

ś

li obie litery znajduj

ą

si

ę

w tym samym wierszu, to zast

ę

pujemy je literami

stoj

ą

cymi po ich prawej stronie. Je

ś

li nasza litera tekstu jawnego jest na ko

ń

cu

wiersza, to zamiast niej wstawiamy t

ą

z samego pocz

ą

tku.

2. Je

ś

li obie litery znajduj

ą

si

ę

w tej samej kolumnie, to zast

ę

pujemy je literami

znajduj

ą

cymi si

ę

pod nimi. Je

ś

li nasza litera tekstu jawnego jest na dole kolumny, to

zamiast niej wstawiamy t

ą

z samej góry.

3.

Je

ś

li litery znajduj

ą

si

ę

w ró

ż

nych wierszach i kolumnach to zamiast nich wstawiamy

litery z tego samego wiersza, ale z kolumny drugiej litery w parze.

Stosuj

ą

c te 3 zasady otrzymamy nast

ę

puj

ą

cy szyfr.

ko
nx
n
a
p
o
li
cj
ax

gs
su
q
p
ln
pr
dr
y
w

A wi

ę

c ostatecznym efektem naszego szyfrowania jest tekst

gssuqplnprdryw

.

●●●

Deszyfrowanie jest zwykłym odwróceniem zasad 1-3. Sprawdzimy to na przykładzie
szyfru

qbbdgiuz

.

www.wedrownik.net

12

background image

qb
bd
gi
uz

qb

– obie litery nale

żą

do jednej kolumny. Odwracaj

ą

c zasad

ę

2 przyporz

ą

dkowujemy im litery

b

ę

d

ą

ce nad nimi i otrzymujemy –

ha

bd

– obie litery nale

żą

do jednego wiersza. Odwracaj

ą

c zasad

ę

1 przyporz

ą

dkowujemy im litery

b

ę

d

ą

ce po ich lewej stronie i otrzymujemy –

rc

gi

– obie litery le

żą

w ró

ż

nych wierszach i kolumnach wi

ę

c stosuj

ą

c zasad

ę

3 uzyskamy par

ę

er

uz

– obie litery nale

żą

do jednego wiersza. Odwracaj

ą

c zasad

ę

1 przyporz

ą

dkowujemy im litery

b

ę

d

ą

ce po ich lewej stronie i otrzymujemy –

zx

Po pozbyciu si

ę

symboli

x

w naszych parach liter, otrzymujemy wiadomo

ść

harcerz

.

Zalet

ą

tej metody jest jej prostota oraz fakt,

ż

e nie potrzebujemy do niej

ż

adnych

dodatkowych pomocy ani tabelek. Potrzebn

ą

nam tabelk

ę

szyfruj

ą

c

ą

mo

ż

emy stworzy

ć

sobie sami. Wad

ą

jest niestety brak mo

ż

liwo

ś

ci łamania tego systemu – niestety wymaga to

zbyt du

ż

ej ilo

ś

ci czasu.

www.wedrownik.net

13

background image

Robi się poważnie;-)

Szyfry dla zapisu zerojedynkowego

S

ą

to ciekawe szyfry daj

ą

ce ciekawe mo

ż

liwo

ś

ci. Co bardzo wa

ż

ne nie wymagaj

ą

ce

ż

adnych

wielkich zdolno

ś

ci matematycznych – a na tym nam przecie

ż

zale

ż

y:-) Zanim przejd

ę

do

omawiania dokładnych metod, krótkie wyja

ś

nienie jak zapisujemy wyrazy u

ż

ywaj

ą

c tylko cyfr

0 i 1. Potrzebujemy do tego tabelk

ę

przedstawiaj

ą

c

ą

przyporz

ą

dkowanie kodu

zerojedynkowego dla ka

ż

dej litery alfabetu.

Litera

Kod

Litera

Kod

Litera

Kod

a

00000

j

01001

s

10010

b

00001

k

01010

t

10011

c

00010

l

01011

u

10100

d

00011

m

01100

v

10101

e

00100

n

01101

w

10110

f

00101

o

01110

x

10111

g

00110

p

01111

y

11000

h

00111

q

10000

z

11001

i

01000

r

10001

Do pierwszych trzech szyfrów nie podam metod ich łamania. Poradnik ten ma by

ć

w ko

ń

cu

jak najmniej matematyczny. Na szcz

ęś

cie nadrobimy to przy ostatniej metodzie z tej grupy.

ECB (Elektronic Code Book)

Najprostszy z tej grupy szyfrów. Dzi

ę

ki temu jest doskonały nawet dla harcerzy młodszych.

Dobrze tez si

ę

sprawdza na grach terenowych ze wzgl

ę

du na szybko

ść

pracy z nim.

.

SZYFROWANIE – DESZYFROWANIE – ŁAMANIE SZYFRU

Działanie tej metody (tak jak i wcze

ś

niejszych) omówimy na konkretnym przykładzie. Dla

wzrokowców zał

ą

czam jeszcze schemat działania tego szyfru. Cho

ć

osobi

ś

cie s

ą

dz

ę

,

ż

e

łatwiej b

ę

dzie pracowa

ć

nam przy u

ż

yciu tabelki. Ale wszystko po kolei:-)

Schemat szyfrowania

www.wedrownik.net

14

background image

Do zaszyfrowania wybierzemy słowo

harcerz

.

Krok I.
Zapisujemy litery w systemie zerojedynkowym.

h
a

r

c

e

r

z

00111
00000
10001
00010
00100
10001
11001

Krok II.
Teraz pora na zaszyfrowanie naszej wiadomo

ś

ci. Dokonamy tego zmieniaj

ą

c kolejno

ść

symboli w blokach tekstu (poddaj

ą

c je permutacji – wyja

ś

nienie poj

ę

cia w rozdziale V na

stronie 37)
W naszym przykładzie u

ż

yjemy nast

ę

puj

ą

cej permutacji –

(124)

. A wi

ę

c pierwszy symbol

przeniesiemy na drug

ą

pozycj

ę

, drugi na czwart

ą

, czwarty na pierwsz

ą

, a trzeci pozostanie

na swoim miejscu. Aby tego dokona

ć

musimy nasz ci

ą

g 0 i 1 podzieli

ć

na bloki o długo

ś

ci 4

elementów (ilo

ść

permutowanych elementów).

0011
1000
0010
0010
0010
0010
0100
0111
001

Krok III.
Jak wida

ć

ostatni blok jest krótszy. W takiej sytuacji brakuj

ą

ce pozycje uzupełniamy

odpowiedni

ą

ilo

ś

ci

ą

zer.

www.wedrownik.net

15

background image

0011
1000
0010
0010
0010
0010
0100
0111
001

0

Krok IV.
W tym momencie pozostało nam tylko poddanie ka

ż

dego bloku zamianie symboli miejscami

(naszej matematycznej permutacji – wiem,

ż

e to słowo nie gryzie, ale wol

ę

go unika

ć

aby

nie straszy

ć

humanistów;-)

0011
1000
0010
0010
0010
0010
0100
0111
0010

1010
0100
0010
0010
0010
0010
0001
1011
0010

I po bólu, nasza wiadomo

ść

została wła

ś

nie zaszyfrowana:-)

Wa

ż

ne

- powy

ż

ej jest przedstawiony ostateczny wynik szyfrowania. Nie zmieniamy zapisu

zerojedynkowego w literowy, gdy

ż

podczas szyfrowania mo

ż

emy uzyska

ć

taki ci

ą

g 0 i 1,

który nie ma odpowiednika literowego

●●●

Schemat deszyfrowania

www.wedrownik.net

16

background image

Deszyfrowanie te

ż

jest bezbolesne. Spróbujemy teraz odszyfrowa

ć

wiadomo

ść

, któr

ą

dopiero co zaszyfrowali

ś

my.

Krok I.
Musimy najpierw okre

ś

li

ć

, jak odwróci

ć

przestawienie symboli (okre

ś

li

ć

permutacj

ę

odwrotn

ą

– ponownie odsyłam do rozdziału V na stronie 37)
Dla naszej permutacji szyfruj

ą

cej (124) odwrotn

ą

jest

(142)

– odwrócona kolejno

ść

(421) z

uwzgl

ę

dnieniem zasady wpisywania zawsze najmniejszej cyfry na pocz

ą

tku – czyli pierwszy

element umie

ś

cimy na czwartej pozycji, czwarty na drugiej, drugi na pierwszej, a trzeci

ponownie pozostaje bez zmian.

Krok II.
W tym momencie mo

ż

emy ju

ż

zastosowa

ć

przekształcenie odwrotne na nasz szyfr.

1010
0100
0010
0010
0010
0010
0001
1011
0010

0011
1000
0010
0010
0010
0010
0100
0111
0010

Krok III.
Rozszyfrowan

ą

wiadomo

ść

dzielimy na bloki długo

ś

ci 5 symboli, a nadwy

ż

k

ę

odrzucamy.

www.wedrownik.net

17

background image

00111
00000
10001
00010
00100
10001
11001

0

Krok IV.
Dokonujemy zamiany zapisu binarnego na nasz normalny alfabet.

00111
00000
10001
00010
00100
10001
11001

h
a

r

c

e

r

z

●●●

Łamanie tego szyfru jest czasochłonne, ale nieszczególnie skomplikowane. Je

ś

li znamy

długo

ść

permutacji szyfruj

ą

cej musimy okre

ś

li

ć

jej odwrotno

ść

. Sprowadza si

ę

to do

sprawdzenia wszelkich mo

ż

liwo

ś

ci – dla 3 elementów musimy sprawdzi

ć

tylko 6 układów,

dla 4 elementów ju

ż

24 układy, ale dla 5 elementów niestety a

ż

120. Z przestawieniem o

długo

ś

ci 2 nie ma najmniejszego problemu, dla (12) odwrotno

ś

ci

ą

jest (12).

Spróbujmy naszych sił na wiadomo

ś

ci zaszyfrowanej przy pomocy permutacji o długo

ś

ci 3.

001
100
111
001
011

Dla permutacji 3 elementów mamy 6 mo

ż

liwych kolejno

ś

ci –

(12)

,

(13)

,

(23)

,

(123)

,

(132)

,

oraz pozostawienie kolejno

ś

ci

bez zmian

.

Sprawd

ź

my wszystkie 6 mo

ż

liwo

ś

ci. Od razu wynik podzielimy na bloki długo

ś

ci 5 symboli i

podstawimy litery.

www.wedrownik.net

18

background image

szyfr

001
100
111
001
011

szyfr

001
100
111
001
011

(12)

001
010
111
001
101

(13)

100
001
111
100
110

długo

ść

5

00101
01110
01101

długo

ść

5

10000
11111
00110

tekst

f

o
n

tekst

q

---

g

www.wedrownik.net

19

background image

szyfr

001
100
111
001
011

szyfr

001
100
111
001
011

(23)

010
100
111
010
011

(123)

100
010
111
100
101

długo

ść

5

01010
01110
10011

długo

ść

5

10001
01111
00101

tekst

k

o

t

tekst

r

p

f

www.wedrownik.net

20

background image

szyfr

001
100
111
001
011

szyfr

001
100
111
001
011

(132)

010
001
111
010
110

b.z.

001
100
111
001
011

długo

ść

5

01000
11110
10110

długo

ść

5

00110
01110
01011

tekst

i

---

w

tekst

g
o

l

Jak wida

ć

w paru przypadkach uzyskali

ś

my nawet nieistniej

ą

ce symbole. Jedyne sensowne

wyrazy to

kot

i

gol

– czyli poprawne permutacje odwrotne to

(23)

i kolejno

ść

bez zmian

.

www.wedrownik.net

21

background image

Tak to jest z łamaniem szyfrów,

ż

e czasem dostajemy par

ę

sensownych wersji. Gdyby

ś

my

mieli dłu

ż

szy szyfr do złamania to mogliby

ś

my okre

ś

li

ć

jednoznacznie poprawn

ą

deszyfracj

ę

.

Uwaga
- metoda ta działa równie dobrze dla normalnego zapisu literowego (oszcz

ę

dzamy krok z

zamian

ą

liter na zapis z 1 i 0)

- po podzieleniu tekstu na bloki długo

ś

ci naszej permutacji uzupełniamy w razie potrzeby

ostatni blok – mo

ż

emy dowolnymi literami (tak aby nie zmieniły sensu szyfrowanego tekstu)

CBC (Cipher Block Chaining)

Pomi

ę

dzy CBC, a ECB s

ą

dwie ró

ż

nice. Poza permutacj

ą

posiadamy jeszcze klucz

pocz

ą

tkowy. Klucz ten zmienia si

ę

po ka

ż

dym zaszyfrowanym bloku – wła

ś

nie ten

zaszyfrowany blok jest nowym kluczem. Brzmi gro

ź

nie, ale na szcz

ęś

cie nie jest to tak

trudne.

SZYFROWANIE – DESZYFROWANIE

Najpierw zaprezentuj

ę

schemat tej metody.

Schemat szyfrowania

www.wedrownik.net

22

background image

A teraz jak zwykle przykład dla zilustrowania działania szyfru. Ponownie u

ż

yjemy słowa

harcerz

. Potrzebujemy te

ż

funkcj

ę

zmieniaj

ą

ca kolejno

ść

elementów –

(13)(24)

. Elementem

nowym b

ę

dzie klucz startowy –

0101

.

Krok I.
Zapisujemy nasz tekst w postaci zerojedynkowej.

h
a

r

c

e

r

z

00111
00000
10001
00010
00100
10001
11001

Krok II.
Dzielimy tekst na bloki długo

ś

ci równej ilo

ś

ci permutowanych elementów – czyli długo

ś

ci 4 –

i ewentualnie uzupełniamy ostatni blok.

www.wedrownik.net

23

background image

0011
1000
0010
0010
0010
0010
0100
0111
001

0

Krok III.
Tworzymy tabelk

ę

z 4 kolumnami – 1 kolumna zawiera wszystkie bloki tekstu, 2 w

pierwszym wierszu klucz startowy. Ostatnie dwie na razie pozostawimy puste

www.wedrownik.net

24

background image

Tekst

Kluc

z

Tekst

+

Kluc

z

Szyfr

(po

perm

utacji

)

0011
0101

1000

0010

0010

0010

0010

0100

0111

0010

www.wedrownik.net

25

background image

Metoda ta wymaga troszk

ę

wi

ę

cej pracy ni

ż

szyfr ECB. Mam jednak nadziej

ę

,

ż

e pomimo

tego jest ona interesuj

ą

ca.

Uwaga
- w tej i nast

ę

pnej metodzie istnieje ciekawy sposób ukrycia klucza. Po prostu zał

ą

czamy go

na pocz

ą

tku wiadomo

ś

ci. Adresat naszego tekstu wiedz

ą

c jaka jest jego długo

ść

wyodr

ę

bni

klucz z szyfru i przyst

ą

pi do odczytywania przesyłki.

CFB (Cipher Feedback)

CFB jest kolejnym bardziej skomplikowanym szyfrem z tej grupy. Podobnie jak dla CBC, dla
ka

ż

dego bloku tekstu dostajemy inny klucz. Jednak dokonujemy jeszcze paru dodatkowych

przekształce

ń

– prosz

ę

si

ę

nie ba

ć

, to nie b

ę

d

ą

ż

adne matematyczne przekształcenia.

SZYFROWANIE – DESZYFROWANIE

Szczególnie przy tej metodzie warto zapozna

ć

si

ę

z schematem, gdy

ż

wtedy łatwiej

zapami

ę

ta

ć

jak ona działa.

Schemat szyfrowania

W przykładzie ilustruj

ą

cym prac

ę

tego szyfru, tradycyjnie u

ż

yjemy słowa

harcerz

.

Potrzebujemy te

ż

funkcj

ę

permutuj

ą

c

ą

(13)

oraz klucz startowy –

1101

. Dodatkowym

parametrem jest warto

ść

przesuni

ę

cia –

1

. Co ta warto

ść

oznacza najlepiej poka

ż

e

przykład.

Krok I.
Zapisujemy nasz tekst w postaci zerojedynkowej.

www.wedrownik.net

26

background image

h
a

r

c

e

r

z

00111
00000
10001
00010
00100
10001
11001

Krok II.
Teraz musimy ustali

ć

długo

ść

bloku tekstu. Permutacja mo

ż

e mie

ć

minimaln

ą

ilo

ść

elementów równ

ą

3, ale klucz pocz

ą

tkowy ma ich 4. Wi

ę

c wychodzi nam długo

ść

4. Tutaj

jednak wchodzi w gr

ę

warto

ść

przesuni

ę

cia i skraca nam blok tekstu – w tym przykładzie o

1.
Ostateczna długo

ść

bloków przeznaczonych do szyfrowania wynosi 3 symbole.

001
110
000
010
001
000
100
010
010
001
110
01

0

Ostatni blok uzupełnili

ś

my o brakuj

ą

cy element.

Krok III.
Tworzymy teraz nast

ę

puj

ą

c

ą

tabelk

ę

– na pocz

ą

tek wpisujemy w 3 kolumn

ą

wszystkie bloki

tekstu.

www.wedrownik.net

27

background image

Klucz
Klucz
po
perm
utacji
Tekst
Szyfr

(klucz
+
tekst)

001

110

000

010

001

000

100

010

010

www.wedrownik.net

28

background image

Niestety, do obu powy

ż

szych szyfrów nie podam metod łamania, gdy

ż

s

ą

zbyt

skomplikowane – zainteresowanych odsyłam do fachowej literatury (jednak zalecam wzi

ę

cie

sobie paru dni wolnego;-)

Szyfr Feistella

Ostatni z szyfrów działaj

ą

cych w systemie zerojedynkowym. I to jest jedyne podobie

ń

stwo do

powy

ż

szych szyfrów;-) Stopniem trudno

ś

ci lokuje si

ę

pomi

ę

dzy dwoma pierwszymi szyframi

z tego rozdziału. Co jednak wa

ż

niejsze, nauczymy si

ę

w prosty sposób łama

ć

t

ą

metod

ę

:-)

SZYFROWANIE – DESZYFROWANIE – ŁAMANIE SZYFRU

Metod

ę

ta przedstawi

ę

w najprostszej wersji. Je

ś

li kto

ś

b

ę

dzie chciał spróbowa

ć

sił z troch

ę

wy

ż

szym poziomem trudno

ś

ci, to wystarczy zmieni

ć

warto

ś

ci pewnych parametrów.

Na nasze potrzeby wystarcz

ą

nast

ę

puj

ą

ce zało

ż

enia – b

ę

dziemy szyfrowa

ć

bloki tekstu o

długo

ś

ci 4 symboli, ilo

ść

kroków szyfruj

ą

cych ograniczymy do 2, a stosowanym elementem

szyfruj

ą

cym b

ę

dzie macierz 2x2 (kto nie zna tego poj

ę

cia to prosz

ę

zapozna

ć

si

ę

z

rozdziałem V na stronie 37)

Uwaga
- długo

ść

bloków jakie podlegaj

ą

szyfrowaniu jest

ś

ci

ś

le zwi

ą

zana z wielko

ś

ci

ą

macierzy –

szyfrowany fragment tekstu jest zawsze dwa razy dłu

ż

szy, ni

ż

wielko

ść

macierzy (dlatego

długo

ść

4 dla macierzy 2x2, 6 dla 3x3, 8 dla 4x4 itd.)

Na potrzeby naszego przykładu zaszyfrujemy słowo

harcerz

, przy zastosowaniu

2

kroków

szyfruj

ą

cych z macierz

ą





1

0

1

1

Krok I.

www.wedrownik.net

29

background image

Tradycyjnie zapisujemy nasz tekst w formie zerojedynkowej i dzielimy na fragmenty o
długo

ś

ci 4 elementów z ewentualnym uzupełnieniem ostatniej cz

ęś

ci.

h
a

r

c
e

r

z

00111
00000
10001
00010
00100
10001
11001

0011
1000
0010
0010
0010
0010
0100
0111
001

0

Krok II.
Tym razem działanie przedstawimy za pomoc

ą

rysunku. Najpierw zaszyfrujemy pierwszy

fragment naszego tekstu –

0011

.

Tekst dzielimy na cz

ęść

lew

ą

i praw

ą

.

Krok III.
Zaczynamy pierwszy krok szyfruj

ą

cy. Cz

ęść

praw

ą

mno

ż

ymy z nasz

ą

macierz

ą

i

przygotowujemy j

ą

do dodania do cz

ęś

ci lewej. Dodatkowo niezmienion

ą

cz

ęść

praw

ą

przepisujemy poni

ż

ej, aby móc za dwa kroki dokona

ć

zamiany.

www.wedrownik.net

30

background image

Krok IV.
Dodajemy do siebie cz

ęść

lew

ą

i zmodyfikowan

ą

praw

ą

.

W tym momencie ko

ń

czymy pierwszy krok szyfruj

ą

cy.

Krok V.
Dokonujemy zamiany cz

ęś

ci lewej i prawej.

Krok VI.
Dla nowych cz

ęś

ci tekstu, przeprowadzamy drugi krok szyfruj

ą

cy (dokładnie jak powy

ż

ej).

Po ostatnim kroku szyfruj

ą

cym nie dokonujemy zamiany. Dlatego w naszym przypadku

drugie powtórzenie daje nam zaszyfrowany pierwszy blok tekstu.

www.wedrownik.net

31

background image

Je

ś

li powtórzymy dla ka

ż

dego bloku tekstu kroki II – VI, to jako zaszyfrowany tekst

otrzymamy.

0010
1110
0011
0011
0011
0011
0101
0111
0011

●●●

Ta metoda jest kolejn

ą

, przy której dla rozszyfrowania podanego tajnego tekstu, musimy go

ponownie zaszyfrowa

ć

. A wi

ę

c, aby z szyfru

0010
1110
0011
0011
0011
0011
0101
0111
0011

uzyska

ć

słowo harcerz, musimy na nim zastosowa

ć

opisan

ą

powy

ż

ej metod

ę

wraz z

ko

ń

cowym podzieleniem na bloki składaj

ą

ce si

ę

z 5 elementów i eliminacj

ą

zb

ę

dnych

symboli – ale te działanie ju

ż

wielokrotnie

ć

wiczyli

ś

my.

●●●

Gdy mamy zaszyfrowan

ą

wiadomo

ść

i chcemy j

ą

rozgry

źć

, musimy okre

ś

li

ć

macierz, która

nam szyfruje pojedyncze bloki. Wiemy,

ż

e macierz ta ma 4 elementy, a jako mo

ż

liwe

warto

ś

ci tylko 0 i 1. Je

ś

li znamy jakie

ś

elementy macierzy to musimy sprawdzi

ć

wszystkie

mo

ż

liwo

ś

ci i zobaczy

ć

przy której uzyskujemy sensowne wyniki. Gdy znamy 3 elementy, to

www.wedrownik.net

32

background image

do sprawdzenia mamy 2 macierze, gdy znamy 2 to ju

ż

4, przy 1 elemencie a

ż

8. Gdy nie

znamy

ż

adnego, to pozostaje nam przetestowa

ć

wszystkie 16 mo

ż

liwo

ś

ci.

Prób

ę

przeprowadzamy tak, jak zostało to opisane w cz

ęś

ci po

ś

wi

ę

conej szyfrowaniu.

Ciekawiej jest, gdy oprócz szyfru znamy tekst jawny pasuj

ą

cy do jednego bloku szyfru.

Dzi

ę

ki temu mo

ż

emy okre

ś

li

ć

poszukiwan

ą

macierz – gdy znamy jakiekolwiek jej elementy,

to zadanie jest dodatkowo ułatwione.
Jak si

ę

do tego zabra

ć

?

Trzeba przeanalizowa

ć

, jak wygl

ą

da proces szyfrowania (bo w tej metodzie deszyfrowanie

działa identycznie jak szyfrowanie). Zrobimy to na konkretnym przykładzie.
Dla szyfru

0110

znamy tekst jawny

0111

.

Nasza macierz ma ogóln

ą

posta

ć





d

c

b

a

.

Krok I.
Uzupełniamy schemat szyfru i elementy, które ju

ż

znamy.

Uzupełnili

ś

my od razu

ś

cie

ż

k

ę

dla prawego elementu – wszystko zgodnie z metod

ą

szyfrowania.

Krok II.
Wymna

ż

amy praw

ą

stron

ę

naszego szyfru z ogóln

ą

postaci

ą

macierzy, a nast

ę

pnie

dodajemy do lewej strony (i uzupełniamy praw

ą

stron

ę

pozycji po zamianie).

Dla przejrzysto

ś

ci u

ż

yłem pisowni z przecinkiem.

W tej chwili mo

ż

emy zacz

ąć

okre

ś

la

ć

posta

ć

naszej macierzy. Z naszego schematu wynika,

ż

e

(a, b+1) = (11)

. Daje nam to nast

ę

puj

ą

ce warto

ś

ci:

a = 1

i

b = 0

. A wi

ę

c nasza macierz

www.wedrownik.net

33

background image

wygl

ą

da nast

ę

puj

ą

co -





d

c

0

1

.

Krok III.
Teraz wykonujemy drugie mno

ż

enie macierzy z nasz

ą

praw

ą

stron

ą

szyfru (po uprzednim

podstawieniu cyfr).

Aby okre

ś

li

ć

ostatnie elementy macierzy dokonujemy dodawania

(10) + (1+c, d)

.

Zsumowane elementy musz

ą

(na podstawie schematu) by

ć

równe elementowi

(01)

.

Ostatecznie daje nam to

(1+1+c, d) = (1, 1)

, a wi

ę

c

c = 0

,

d = 1

. Maj

ą

c wszystkie elementy

wiemy ju

ż

,

ż

e pozostałe bloki szyfru musimy podda

ć

działaniu macierzy





1

0

0

1

.

Czasem mo

ż

e trafi

ć

si

ę

nam trudniejsza sytuacja, gdy nie tak łatwo okre

ś

li

ć

jednoznacznie

elementy macierzy. Có

ż

, pozostaje nam wtedy rozpatrywa

ć

po kolei ró

ż

ne mo

ż

liwo

ś

ci i

sprawdza

ć

, które pasuj

ą

do schematu.

Metoda ta jak pokazuj

ą

przykłady mo

ż

e by

ć

troszk

ę

pracochłonna. Jednak nie ma tutaj

ż

adnej skomplikowane matematyki. Jedynie sprawdzanie pewnej liczby mo

ż

liwych

kombinacji.

Uwaga
- metoda ta sprawdza si

ę

równie

ż

, gdy zamiast macierzy, u

ż

ywamy do szyfrowania

dwuelementowego klucza
- niestety znacznie łatwiej wtedy złama

ć

t

ą

metod

ę

, gdy

ż

do wyboru mamy tylko 4 klucze

(mo

ż

na zawsze je wydłu

ż

y

ć

, ale co za tym idzie dwukrotnie zwi

ę

kszy

ć

szyfrowane lub

deszyfrowane bloki tekstu)

www.wedrownik.net

34

background image

Wytaczamy ostatnią armatę

Ta grupa szyfrów b

ę

dzie wymagała wprowadzenia pewnej, dla wielu osób na pocz

ą

tku na

pewno niełatwej, teorii matematycznej – działania modulo (proponuj

ę

zapozna

ć

si

ę

z tre

ś

ci

ą

rozdziału V na stronie 38).

Szyfr afiniczny

Jest to mocno utrudniona wersja szyfru Cezara. Tutaj zmiana litery jest okre

ś

lona dwoma

parametrami, a nie jak w metodzie Cezara jednym.

SZYFROWANIE – DESZYFROWANIE – ŁAMANIE SZYFRU


Przy tej metodzie do

ść

cz

ę

sto pomocnym narz

ę

dziem b

ę

dzie kalkulator.

Aby zobrazowa

ć

działanie tej metody zaszyfrujemy słowo harcerz.

Krok I.
Zamieniamy litery tekstu jawnego na ich warto

ś

ci liczbowe. Jednak zaczynamy od 0 – czyli

litera a ma warto

ść

0,

ą

– 1, b - 2, itd.

www.wedrownik.net

35

background image

h
a

r

c
e

r

z

10

0

22

3
6

22
29

Wa

ż

ne

- wa

ż

ne jest jaki alfabet stosujemy – dla angielskiego mamy 26 liter, a dla polskiego 32

- w tej metodzie szyfrowania, tak

ż

e odst

ę

p mi

ę

dzy wyrazami ma przypisana warto

ść

– dla

alfabetu angielskiego 26, a dla polskiego 32

Krok II.
Aby zaszyfrowa

ć

tekst musimy okre

ś

li

ć

funkcje szyfruj

ą

c

ą

. Jak ju

ż

wiemy b

ę

dzie ona zale

ż

e

ć

od dwóch warto

ś

ci –

a

i

b

(b

ę

dziemy je nazywa

ć

kluczem). Ogólna posta

ć

funkcji wygl

ą

da

nast

ę

puj

ą

co:

y

(ax + b) mod n

a

oraz

b

s

ą

wybranymi przez nas liczbami,

n

jest ilo

ś

ci

ą

liter w alfabecie + 1,

x

warto

ś

ci

ą

liczbow

ą

szyfrowanej litery, a

y

uzyskanym w ten sposób szyfrem. W naszym przykładzie

u

ż

yjemy funkcji

y

(2x + 7) mod 33

Je

ś

li zachcemy zaszyfrowa

ć

liter

ę

h, to uzyskamy poni

ż

szy wynik:

h = 10

, a wi

ę

c

y

(2·10 + 7) mod 33

= 27 mod 33 =

27 = w

Gdy ka

ż

d

ą

z liter słowa harcerz tak zaszyfrujemy uzyskamy:

www.wedrownik.net

36

background image

h
a

r

c

e

r

z

10

0

22

3
6

22
29

27

7

18
13
19
18
32

w

ę
ń

k
o

ń

●●●

Deszyfracja jest bardziej skomplikowana. Ale wszystko po kolei.

Poni

ż

szy szyfr został stworzony przy pomocy tej samej funkcji szyfruj

ą

cej:

y

(2x + 7) mod 33

www.wedrownik.net

37

background image

ę
ą
ę

d
e

ę

d
a

j

ś
ę

7
2
7
5
6
7
5
0
1
2
2
4
7

Krok I.
Aby deszyfrowa

ć

, musimy okre

ś

li

ć

funkcj

ę

odwrotn

ą

do zastosowanej.

Wa

ż

ne

- aby deszyfrowanie było mo

ż

liwe, musi by

ć

spełniony warunek NWD (a, n) = 1 (najwi

ę

kszy

wspólny dzielnik). Nie b

ę

d

ę

si

ę

rozwodził dlaczego akurat tak, gdy

ż

musiałbym straszy

ć

matematyk

ą

– zainteresowanych odsyłam do literatury fachowej.

NWD (2, 33) = 1, a wi

ę

c mo

ż

emy jednoznacznie okre

ś

li

ć

funkcje odwrotn

ą

. Jej ogólna

posta

ć

prezentuj

ę

si

ę

nast

ę

puj

ą

co:

x

a’·(y - b) mod n

a’

jest w tym przypadku odwrotno

ś

ci

ą

a z wzoru na szyfrowanie. Nie jest to jednak

odwrotno

ść

, jak

ą

znamy ze szkoły. Aby okre

ś

li

ć

a’ musimy zastosowa

ć

rozszerzony

algorytm Euklidesa

.

Dla

x

2’(y - 7) mod 33

całe obliczenie wygl

ą

da jak poni

ż

ej (dlaczego tak, a nie inaczej

wyja

ś

nione jest w rozdziale V na stronie 38).

33 = 16·2 + 1

1 = 33 - 16·2

A wi

ę

c odwrotno

ś

ci

ą

2

jest

-16

. Ale -16 odpowiada liczbie

17

(33-16=17) w grupie

mod 33

.

www.wedrownik.net

38

background image

Nasza funkcja ma posta

ć

:

x

17·(y - 7) mod 33

Krok II.
Nasz

ą

zaszyfrowan

ą

wiadomo

ść

poddajemy działaniu funkcji odwrotnej. Daje nam to efekt

jak poni

ż

ej.

ę
ą
ę

d
e

ę

d
a

j

ś

ę

7
2
7
5
6
7
5
0
1
2
2
4
7

www.wedrownik.net

39

background image

0
1
4
0
3
2
1
6
0
3
2
1
3
1
9
2
5
0

a

l

a

m
a

k
o

t

a

Metoda ta wymaga wiele uwagi i ci

ą

głej

ś

wiadomo

ś

ci,

ż

e liczymy w grupie mod n (u nas w

mod 33).

●●●

Aby móc złama

ć

szyfr afiniczny nie znaj

ą

c funkcji szyfruj

ą

cej, potrzebujemy informacj

ę

o

cho

ć

by paru przyporz

ą

dkowaniach liter tekstu jawnego do liter szyfru. Gdy znamy cho

ć

2 z

nich, mo

ż

emy złama

ć

t

ą

metod

ę

kryptograficzn

ą

. Tak

ż

e w tym przypadku najlepiej łamanie

omówi

ć

na konkretnym przykładzie, bez zb

ę

dnych teoretycznych wywodów, które sił

ą

woli

byłyby zbyt techniczne.

Mamy szyfr

n

ą

ry

ą

l

i wiemy,

ż

e

n

zostało zaszyfrowane do

r

, a

d

do

y

. Dzi

ę

ki temu mo

ż

emy

stwierdzi

ć

,

ż

e

www.wedrownik.net

40

background image

n

ą

r

y

ą

l

17

1

22
28

1

14

oraz

n

r

1
7

2
2

d

y

5

2
8

Pozwoli nam to okre

ś

li

ć

, jak

ą

funkcj

ą

zaszyfrowano tekst, a co za tym idzie wyznaczy

ć

funkcj

ę

do niej przeciwn

ą

. Gdy ju

ż

ja uzyskamy, to b

ę

dziemy mogli odszyfrowa

ć

pozostałe

litery.

Krok I.
Na podstawie drugiej tabelki utworzymy układ równa

ń

liniowych (w zapisie mod 33).

17a + b

22 mod 33

5a + b

28 mod 33

Jak wida

ć

na naszym przykładzie, warto

ś

ci liczbowe dla

tekstu jawnego

wpisujemy przy

a

,

a

warto

ś

ci szyfru

przy

mod

.

www.wedrownik.net

41

background image

Krok II.
Rozwi

ą

zujemy nasze równanie liniowe (pami

ę

taj

ą

c,

ż

e liczymy w grupie mod 33).

17a + b

22 mod 33

/ · (-1)

5a + b

28 mod 33

-17a - b

-22 mod 33

5a + b

28 mod 33

-12a

6 mod 33

21a

6 mod 33

a = 5

Pocz

ą

tek rozwi

ą

zania powinien by

ć

zrozumiały dla wszystkich. Wa

ż

ne jest aby pami

ę

ta

ć

i

ż

-12

ma warto

ść

21

w grupie mod 33.

Wynik

a = 5

mo

ż

na uzyska

ć

jedynie poprzez systematyczne podstawianie liczb (pocz

ą

wszy

od 1) i sprawdzanie czy równanie jest prawdziwe. Wymaga to troch

ę

cierpliwo

ś

ci i najlepiej

stosowania kalkulatora (jest to du

ż

e udogodnienie).

Teraz musimy wyznaczy

ć

jeszcze parametr b.

5·5 + b

28 mod 33

25 + b

28 mod 33

/ - 20

b

3 mod 33

b = 3

Maj

ą

c oba parametry wiemy ju

ż

,

ż

e tekst został zaszyfrowany funkcj

ą

:

y = (4x + 3) mod 33

Krok III.
Do rozszyfrowania wiadomo

ś

ci potrzebujemy, jak ju

ż

wiemy, funkcj

ę

odwrotn

ą

do tej przez

www.wedrownik.net

42

background image

nas okre

ś

lonej. Aby okre

ś

li

ć

5’

z

x = 5’·(y

3) mod 33

musimy zastosowa

ć

rozszerzony algorytm Euklidesa.

33 = 6·5 + 3
5 = 3 + 2
3 = 2 + 1

1 = 3 – 2
1 = 3 – (5 –
3)
1 = 2·3 – 5
1 = 2·(33 –
6·5) – 5
1 = 2·33 –
13·5

Odwrotno

ś

ci

ą

5 jest liczba

- 13

. Jednak -13 w zapisie mod 33 ma warto

ść

20 (33 – 13 = 20).

Tak wi

ę

c uzyskujemy

a’ = 20

. Ostatecznie nasza funkcja odwrotna ma posta

ć

:

x = 20·(y

3) mod 33

Krok IV.
Działamy nasz

ą

funkcja odwrotn

ą

na nieznane nam litery szyfru i uzyskujemy tekst jawny:

n

ą

r

y

ą

l

17

1

22
28

1

14

www.wedrownik.net

43

background image

16
26
17

5

26
22

m

u
n
d
u

r

W ten sposób przebili

ś

my si

ę

przez kolejn

ą

metod

ę

łamanie szyfru.

Pomoce matematyczne – proszę się nie bać, nie gryzą;-)

Dodawanie binarne - dodawanie inaczej

Brzmi strasznie, ale na szcz

ęś

cie jest prostsze ni

ż

zwykłe dodawanie, gdy

ż

mamy tylko 4

mo

ż

liwo

ś

ci:-)

Poni

ż

ej przedstawione s

ą

wszelkie mo

ż

liwe sytuacje podczas takiego dodawania.

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0

Permutacja – z czym się to je

Mówi

ą

c mo

ż

liwie prosto, permutacja to po prostu zmiana kolejno

ś

ci elementów ci

ą

gu. A

zapis ogólny podaje nam, które pozycje otrzymuj

ą

nowe przyporz

ą

dkowanie.

Przykładowo





1

4

4

3

2

2

3

1

oznacza,

ż

e pierwszy element bloku o długo

ś

ci 4 zostanie

przeniesiony na pozycj

ę

3, drugi pozostanie na pozycji 2, trzeci przesuwamy na pozycj

ę

4, a

ostatni element l

ą

duje na pocz

ą

tku bloku. Opis mo

ż

e skomplikowany, ale praktyka bardzo

prosta:-)

Inn

ą

form

ą

zapisu tej samej permutacji jest (134) – taki jest u

ż

ywany w tym poradniku. Je

ś

li

w zapisie tym brakuje jakiej

ś

cyfry, to oznacza to, i

ż

symbol na tej pozycji nie jest

przenoszony. Jest to opis krótszy a oznacza dokładnie to samo. Czasami mo

ż

emy spotka

ć

nast

ę

puj

ą

cy zapis (13)(24) – oznacza to nic innego jak to,

ż

e symbol z pozycji 1 przenosimy

na 3, z 3 na 1, a z 2 na 4 oraz z 4 na 2.
Aby okre

ś

li

ć

odwrotn

ą

permutacj

ę

odwracamy kolejno

ść

w wersji skróconej czyli otrzymamy

(431). Matematyczna konwencja przewiduje zawsze najmniejszy element na pocz

ą

tku, wi

ę

c

wersj

ą

ko

ń

cow

ą

jest (143).

Permutacje o długo

ś

ci 2 s

ą

odwrotne same do siebie. A wi

ę

c (23) jest odwrotno

ś

ci

ą

(23), a

(13)(24) jest odwrotno

ś

ci

ą

(13)(24). Proste:-)

www.wedrownik.net

44

background image

Macierz – to bardzo proste

Nie b

ę

d

ę

si

ę

wdawał w opisywanie definicji macierzy. W tym poradniku ograniczymy si

ę

do

macierzy kwadratowych o rozmiarze 2x2. Jak taki twór wygl

ą

da?





d

c

b

a

jest ogólnym

zapisem macierzy kwadratowej – prawda,

ż

e podobne do kwadratu? A zapis 2x2 oznacza,

ż

e mamy po dwa wiersze i dwie kolumny.

Wektorem z kolei nazwiemy nast

ę

puj

ą

cy element (e, f). Jest to wektor o długo

ś

ci 2. Mno

ż

y

ć

mo

ż

emy z sob

ą

tylko wektory i macierze kwadratowe o tym samym rozmiarze, a wi

ę

c wektor

o długo

ś

ci 2 z macierz

ą

2x2.

Jak wygl

ą

da takie mno

ż

enie?

(e f)

=





d

c

b

a

(ea+fc, eb+fd)

(1 1) ·





1

1

1

0

= (1·0 + 1·1 1·1 + 1·1 ) = (0 + 1 1 + 1) = (1 0)

- jest to mno

ż

enie macierzy z uwzgl

ę

dnieniem dodawania zerojedynkowego

Modulo – czy ktoś mi grozi?

Mówi

ą

c najpro

ś

ciej jak si

ę

da, jest to reszta z dzielenia przez liczb

ę

n. W zapisie

matematycznym wygl

ą

da to nast

ę

puj

ą

co:

a

b mod n

i oznacza,

ż

e a przy dzieleniu przez n, daje reszt

ę

b. Ten

ś

mieszny znaczek pomi

ę

dzy

elementami traktujcie jako zwykły znak równo

ś

ci. Mo

ż

e nie jest to w pełni poprawne

matematycznie, ale nas to nie interesuje, ma by

ć

łatwo i przyjemnie;-)

Przy takiej operacji liczba b le

ż

y w przedziale od 0 do n –1, niezale

ż

nie jak du

żą

liczb

ą

jest a.

W ramach

ć

wiczenia par

ę

przykładów:

22 mod 3 = 1
4 mod 6 = 4
25 mod 5 = 0

A co si

ę

stanie, gdy w wyniku naszych działa

ń

dostaniemy liczb

ę

negatywn

ą

? Wiemy

przecie

ż

,

ż

e nasze liczby nale

żą

do przedziału od 0 do n – 1.

-22 mod 3 = -1 mod 3 = 2 gdy

ż

3 – 1 = 2

-14 mod 33 = 19 gdy

ż

33 – 14 = 19

Na razie jest miło prosto i przyjemnie. Niestety teraz zaczn

ą

si

ę

lekkie schody. Czasami

musimy okre

ś

li

ć

odwrotno

ść

jakiej

ś

liczby w systemie modulo n. Zapis matematyczny

przedstawia si

ę

tak:

ab

1 mod n

www.wedrownik.net

45

background image

W tym przypadku a i b s

ą

do siebie odwrotne. Niestety nie s

ą

to elementy odwrotne tak, jak

si

ę

do tego przyzwyczaili

ś

my w szkole.

Do tego nie ka

ż

dy element w systemie mod n ma odwrotno

ść

. Dziwne, ale prawdziwe. Aby

móc wyznaczy

ć

taki element musi by

ć

spełniony warunek NWD(a, n) = 1.

Jak mo

ż

na je wyznaczy

ć

? Najprostsz

ą

metod

ą

jest rozszerzony algorytm Euklidesa. Jego

działanie najlepiej wytłumaczy

ć

na przykładzie.

Spróbujmy znale

źć

odwrotn

ą

liczb

ę

dla 18 w systemie mod 41

Szukamy zapisu liczby 41 przy pomocy 18 i ewentualnej reszty:

41 = 2·18 + 5

Teraz 18 przenosimy na lew

ą

stron

ę

i szukamy jej zapisu przy pomocy 5 i reszty.

18 = 3·5 + 3

Krok ten powtarzamy tak długo, a

ż

reszt

ą

b

ę

dzie liczba 1.

5 = 3 + 2
3 = 2 + 1

W ten sposób zako

ń

czyli

ś

my pierwsz

ą

cz

ęść

szukania odwrotno

ś

ci. Druga polega na

przedstawieniu 1 za pomoc

ą

18 i 41. Brzmi troch

ę

absurdalnie, ale jest to mo

ż

liwe i

poprawne matematycznie. Zaczniemy od naszego ostatniego równania – zmieniamy je tak,
aby tylko liczba 1 była po lewej stronie

1 = 3 – 2

Skorzystamy teraz z informacji, jakie s

ą

w drugim równaniu – po prostu w miejsce 2

wstawimy jej warto

ść

z drugiego równania.

1 = 3 – (5 – 3)

1 = 2·3 – 5

Wykorzystuj

ą

c równania z pierwszej cz

ęś

ci zamieniamy stopniowo liczby, a

ż

dojdziemy do

postaci z 18 i 41.

1 = 2·(18 – 3·5) – 5
1 = 2·18 – 7·5
1 = 2·18 – 7·(41 – 2·18)
1 = 16·18 – 7·41

Liczb

ą

odwrotn

ą

do 18 jest ta z, któr

ą

jest ona wymna

ż

ana w ostatniej linii naszego

równania. A wi

ę

c jest to liczba 16.

Aby sprawdzi

ć

nasz rachunek wystarczy wyliczy

ć

,

ż

e

16·18 = 288 mod 41 = 1

I to by było na tyle z matematycznych wywodów:-)

Ż

ycz

ę

miłej zabawy i całkiem nowych

wra

ż

e

ń

!

www.wedrownik.net

46


Wyszukiwarka

Podobne podstrony:
poradnik internetocholika id 37 Nieznany
Poradnik sluzb 1 0 id 376542 Nieznany
poradnik 10 id 375902 Nieznany
Poradnik genealogiczny id 37608 Nieznany
poradnik o ogniskach id 376460 Nieznany
Poradnictwo genetyczne id 18765 Nieznany
Poradnik EKG id 376064 Nieznany
Poradnik 12 id 375927 Nieznany
poradnik internetocholika id 37 Nieznany
poradnik dyzurnego PIK id 37606 Nieznany
Prkatyczny poradnik id 392530 Nieznany
poradnik 2009 tk id 375931 Nieznany
Poradnik 17 ergonomia id 375929 Nieznany
poradnik praca mgr id 376695 Nieznany
Poradnik dla leni id 376000 Nieznany
Poradnik Pani Domu id 376489 Nieznany
poradnik (1) id 375914 Nieznany
Abolicja podatkowa id 50334 Nieznany (2)
4 LIDER MENEDZER id 37733 Nieznany (2)

więcej podobnych podstron