57
Crittografia Corso di Laurea Specialistica in Informatica Introduzione e cifrari storici Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano – Bicocca Alberto Leporati e-mail: [email protected] [email protected]

Crittografia in Informatica - bio.disco.unimib.itleporati/crittografia/Introduzione alla... · — Introduzione e cifrari storici Dipartimento di Informatica, ... non si conosce un

Embed Size (px)

Citation preview

Crittografia

—Corso di Laurea Specialistica —

—in Inform

atica —

Introduzione e cifrari storici

Dip

artim

ento

di In

form

atic

a, S

iste

mistica

e C

om

unic

azio

ne

Univ

ersità

deg

li S

tudi di M

ilan

o –

Bic

occ

a

Alberto Leporati

e-m

ail: [email protected]

[email protected]

Alberto L

eporati

Corso di Crittografia

2

�Arto Salom

aa. Public-Key Cryptography. Seconda

edizione, Springer, 1996.

�William

Stallings. Cryptography and Network

Security. Principles and Practices. Terza edizione,

Prentice-Hall, 2003.

�D. R. Stinson. Cryptography. Theory and Practice.

Seconda edizione, Chapman & Hall/CRC, 2002.

�B. Schneier. Applied Cryptography. Protocols,

Algorithms and Source Code in C. Seconda edizione.

John Wiley & Sons, 1996.

Libri interess

anti

Alberto L

eporati

Corso di Crittografia

3

�A. J. Menezes, P.C. van Oorschot, S.A. Vanstone.

Handbook of Applied Cryptography. CRC Press, 1997.

Di questo libro esiste anche una versione elettronica

disponibile gratuitam

ente su Internet, all'URL:

http://www.cacr.math.uwaterloo.ca/hac/

�David Kahn. The Codebreakers: The Com

prehensive

History of Secret Com

munication from

Ancient Times

to the Internet . Simon & Schuster, 1996.

Libri interess

anti (continua)

Alberto L

eporati

Corso di Crittografia

4

�Arteantica, e scienza

moderna:

�fino al 1600 –1700: sostituzioni monoalfabetiche

�sostituzioni polialfabetiche e sistemi simmetrici fino

al 1975-76

�crittografia a chiave pubblica e moderna

�Scopo della crittografia: studiare metodi che

consentano di mem

orizzare, elaborare e

trasmettere informazioni in presenza di agenti

ostili

Cos’èla crittografia?

Alberto L

eporati

Corso di Crittografia

5

�Solitam

ente si fanno ipotesi sulle capacitàdi Eve

(potenza computazionale, capacità

di leggere e/o

scrivere sul canale, …)

Alice

Bob

Eve

Schem

a di com

unicazione

Alberto L

eporati

Corso di Crittografia

6

�Osservazione: non èdetto che Alice e Bob siano

i buoni, e Eve il cattivo

Quindi, la crittografia ha due obiettivi

contrastanti:

�studiare e implementare crittosistemi sicuri

(crittografia)

�analizzare i crittosistemi esistenti, al fine di

scoprirne eventuali debolezze ( crittoanalisi)

Crittografia + crittoanalisi = crittologia

Obiettivi della crittografia

Alberto L

eporati

Corso di Crittografia

7

�Crittosistemi:

�simmetrici a blocchi: DES, 3DES, AES, …

�simmetrici a flusso: cifratura/decifratura di audio e

video, tecniche di waterm

arking, …

�a chiave pubblica: RSA, ElGam

al, …

�Primitive crittografiche:

�funzioni hash

�generatori di numeri pseudocasuali

�Protocolli:

�firm

e digitali, autenticazione, scambio di chiavi,

condivisione di segreti, …

Strum

enti della crittografia

Alberto L

eporati

Corso di Crittografia

8

�Eve non può néleggere néscrivere

�il canale èsicuro

�Eve può leggere ma non scrivere

�solo attacchi passivi (no impersonificazioni)

�èla situazione piùcomune

�Eve può scrivere ma non leggere

�può disturbare il canale

�Eve può sia leggere che scrivere

�sono possibili attacchi attivi e impersonificazioni

Capacitàdi Eve

sul canale

Alberto L

eporati

Corso di Crittografia

9

Supponiam

o che Alice voglia mandare a

Bob un messaggio m

(testo in chiaro):

�Alice cifra

musando una funzione di

cifraturaE(∏). Produce quindic = E

(m)

�Alice spedisce

c (il testo cifrato) a Bob

�Bob decifra

c usando una funzione di

decifratura

D(∏). Ottiene

m =

D(c)

Trasm

issione di un m

ess

aggio

Alberto L

eporati

Corso di Crittografia

10

�Problemi:

�Alice e Bob devono accordarsisu quale

E(∏)eD

(∏)utilizzare

�E(∏)eD

(∏)devono restare segrete

�Principio di Kerkhoffs

(XIX

secolo):

“la segretezza non dovrebbe risiedere

in E

(∏)e

D(∏

), ma piuttosto in una piccola

inform

azione detta chiave”

Svantaggi

Alberto L

eporati

Corso di Crittografia

11

�PT: spazio dei testi in chiaro;

�CT: spazio dei testi cifrati;

�K: spazio delle chiavi;

�funzioni di cifratura:

E : P

T ×

K →

CT

�funzioni di decifratura:

D : C

T ×

K →

PT

Crittosistem

a: definizione

Alberto L

eporati

Corso di Crittografia

12

�Al posto di E(∏,k

), solitam

ente si scrive E

k(∏)

�Solitam

ente si pone P

T =

S*, dove S

èun

opportuno alfabeto, ad esempio:

�alfabeto della lingua italiana o inglese

�insieme binario {0,1}

�Si pone quindi

�Lo spazio delle chiavi non deve essere troppo

piccolo , altrimenti si può trovare la chiave

giusta per tentativi (attacco di tipo forza

bruta)

Crittosistem

a: convenzioni

UK

kkPT

ECT

∈=

)(

Alberto L

eporati

Corso di Crittografia

13

�∀m∈

PT, ∀k∈

K, D

k(E

k(m)) =

m

�∀m∈

PT, ∀k∈

K, il calcolo dic

= E

k(m)

deve essere facile

�èestrem

amente difficilescoprire m

dalla sola conoscenza di c = E

k(m)

�èinvece facile

calcolare

mdalla

conoscenza dic

e dik

�èestrem

amente difficilescoprire kdalla

conoscenza di c = E

k(m)e di m

Crittosistem

i: requisiti

Alberto L

eporati

Corso di Crittografia

14

�facile: calcolabile da una macchina di

Turing deterministica

(DTM) in tem

po

polinomiale

�estrem

amente difficile: non si conosce un

algoritm

o polinomiale per una DTM che

risolva il problema

�sono nozioni di Teoria della Com

plessità

�svolgono un ruolo cruciale nella crittografia

moderna (in particolare, a chiave pubblica)

Crittosistem

i: requisiti

Alberto L

eporati

Corso di Crittografia

15

�sembra sia stato utilizzato da Cesare

�la sicurezza lascia molto a desiderare

�èun crittosistema simmetrico:

�le chiavi per cifrare e decifrare sono uguali,

oppure

�la chiave per decifrare èfacilmentericavabile

da quella per cifrare

�poniam

o S

={A

,B,C

,…,Z

}(alfabeto inglese)

CAESAR

Alberto L

eporati

Corso di Crittografia

16

�Poniam

o:

PT =

CT =

S,

K={0

,1,2,…

,25}

�dato un messaggio, si cifrano e decifrano

le lettere in maniera indipendente

�èun crittosistema monoalfabeticoper

sostituzione: ogni lettera viene sostituita

con un’altra lettera (monoalfabetico =

sempre con la stessa)

CAESAR

Alberto L

eporati

Corso di Crittografia

17

�cifratura: fissata kœK, se s

èla lettera da

cifrare, allora E

k(s)èla lettera ottenuta

avanzando di kpostilungo l’alfabeto,

partendo da se ricominciando da capo se si

supera la lettera

Z

�decifratura: dati la chiave

ke il testo

cifratoc,

si retrocede dik

postilungo

l’alfabeto, partendo dace ricominciando

dal fondo se si arriva alla lettera

A

CAESAR

Alberto L

eporati

Corso di Crittografia

18

�esem

pi:

E3(T

RYAGAI&

)=W

UBDJD

LQ

E25(IBM

)=HAL

�crittoanalisi: lo spazio delle chiavi ètroppo

piccolo ! Ø

attacco a forza bruta

�commutatività: l’ordine di applicazione

delle funzioni non conta (èimmateriale):

E3D

7E

6D

11= E

3E

6D

7D

11=E

17=D

9

CAESAR

Alberto L

eporati

Corso di Crittografia

19

�per ogni

kcompreso tra1e 25, valgono le

seguenti proprietà:

Dk=

E26-k

Ek=

D26-k

DkE

k=E

0=D

0

�l’ultima proprietàdice che le funzioni D

ke

Eksi elidono a vicenda, com

e dovrebbero

CAESAR

Alberto L

eporati

Corso di Crittografia

20

�si ispira all’algebra lineare

(delle matrici)

�si num

erano le lettere dalla A alla Z con i

numeri interi da 0 a 25

�tutte le operazioni aritmetiche vengono

eseguite modulo 26

�si sceglie un intero d¥2(nel nostro

esem

pio, d=2per semplicità)

�la chiave di cifraturaèuna matrice

Mquadrata, di ordine d, invertibilein �

26

Crittosistem

a di H

ill

Alberto L

eporati

Corso di Crittografia

21

�se M

èinvertibile(cioèse det(M

)∫0) allora

esiste M

-1, e i suoi elementi sono com

presi tra 0

e 25

�esempio:

=5

2

33

M

Crittosistem

a di H

ill

=−

920

17

15

1M

�si verifica facilmente che MëM

-1=I 2

�si pone PT=CT= S

d, doveS

={0,1

,2,…

,25}

Alberto L

eporati

Corso di Crittografia

22

�cifratura: il testo in chiaro

mviene suddiviso in

blocchidi dlettere:

m=P

1P

2∫

Pl, con

|Pi|=d "

i = 1,2,…

,l

�se la lunghezza di mnon èun multiplo di d, si

possono aggiungere delle lettere fittizie

�ogni blocco viene cifrato separatamente:

Ci=

MÿP

i "

i = 1,2,…

,l

�il testo cifrato

risulta essere la concatenazione

dei blocchi C

1,C

2,…

,Cl

Crittosistem

a di H

ill: cifratu

ra

Alberto L

eporati

Corso di Crittografia

23

�supponiamo che sia m

= H

ELP, e che M

sia la

matrice di cui sopra

Allora:

=

=

471

EHP

Crittosistem

a di H

ill: ese

mpio

=

=

15

11

2PL

P

=

=

=⋅

=IH

PM

C87

47

52

33

11

=

=

=⋅

=TA

PM

C190

15

11

52

33

22

e quindi c=

C1C

2=HIA

T

Alberto L

eporati

Corso di Crittografia

24

�supponiamo che Eve sappia che d=2 (ma non

conosce M

)

�sceglie m

= HELP, cifra e ottiene c= HIA

T

�allora sa che HI

= [7 8

] = [H

E]ÿ

M= [7 4

]ÿM

e AT

= [0 1

9] = [L P

]ÿM

= [11 1

5]ÿ

M

�quindi deve valere:

Crittosistem

a di H

ill: crittoanalisi

=

19

8

07

15

4

11

7M

=

=

52

33

15

4

11

7

19

8

07

1

Mda cui:

Alberto L

eporati

Corso di Crittografia

25

In ordine crescente di vantaggio:

�cryptotext only: conosco c, devo ricavare m

�known plaintext: conosco alcune coppie (c i,m

i).

Arriva un nuovo c, devo ricavare m

�chosen plaintext: posso scegliere alcuni m

i, e

calcolare i c

i corrispondenti. A

rriva c, devo

ricavare m

�chosen ciphertext: posso decifrare quello che

voglio (in maniera adattiva) per un po’di tempo.

Arriva c, devo ricavare m

Crittoanalisi: tipi di attacchi

Alberto L

eporati

Corso di Crittografia

26

Class

ificazione dei crittosistem

i

crittosistem

a

simmetrico

(a chiave segreta)

a chiave pubblica

per trasposizione

(permutazione, come

negli anagrammi)

per sostituzione

monoalfabetico

polialfabetico

Alberto L

eporati

Corso di Crittografia

27

�crittosistem

i per sostituzione: ogni lettera

di cviene sostituita con una lettera di S

�monoalfabetico: viene sostituita sempre con la

stessa

lettera

�polialfabetico: il sostituto cambianel corso

della cifratura

�crittosistem

i per trasposizione: le chiavi

sono:

�o troppo facili da trovare, oppure

�troppo difficili da ricordare

Class

ificazione dei crittosistem

i

Alberto L

eporati

Corso di Crittografia

28

Rom

pere

un crittosistema significa:

�trovare ma partire da c

�scoprire il valore di k(a partire da ced,

eventualmente, da m)

�rottura parziale: porre dei vincoli sui

possibili valori di k

Rottura di un crittosistem

a

Alberto L

eporati

Corso di Crittografia

29

�ogni lingua naturaleha una distribuzione di probabilitàdi

lettere caratteristica. Ad esempio, per l’Inglese:

Analisi dei crittosistem

i m

onoalfabetici

Y 1

.88%

H 5.1

4%

Z 0

.09%

W 2.0

3%

R 6.0

3%

J 0

.10%

M 2.2

5%

S 6.5

9%

X 0

.20%

F 2

.28%

I 7

.18%

Q 0

.20%

P 2

.29%

N 7

.19%

K 0

.52%

U 3.1

0%

O 7

.94%

V 0

.93%

C 3.2

0%

A 8.0

5%

G 1

.61%

D 3.6

5%

T 9.5

9%

B 1

.62%

L 4.0

3%

E 12.3

1%

Basse

Medie

Alte

Alberto L

eporati

Corso di Crittografia

30

Quindi, la crittoanalisi consiste nel:

�fare l’analisi delle frequenze

�confrontare con le frequenze della lingua

sottostante

�non èdetto che questa tecnica funzioni al primo

colpo

�potrebbero essere necessari alcuni tentativi di

sostituzione

�la lingua sottostante potrebbe essere ignota

Osservazione: ciò funziona perché, sostituendo le

lettere, le frequenze non cam

biano

Analisi dei crittosistem

i m

onoalfabetici

Alberto L

eporati

Corso di Crittografia

31

Due metodi per contrastare l’analisi delle frequenze:

�nulle: si inseriscono nel testo in chiaro delle

lettere poco frequenti che non fanno parte del

messaggio

�om

òfone: supponiamo di usareS

={A

,B,…

Z} e

G={0,1

,2,…

,99} com

e alfabeti perPTeCT

�poiché

Ecompare circa il 12%

delle volte, assegnam

o a

E12 simboli di G(gli omòfonidi E)

�quando dobbiamo cifrare

E, scegliam

o a caso

uno dei

dodici simboli

Øcifratura random

izzata

�la scelta può anche essere fatta apposta per appiattire

le frequenze

Analisi dei crittosistem

i m

onoalfabetici

Alberto L

eporati

Corso di Crittografia

32

�polialfabetico: il sostituto cambia nel corso della

cifratura

�polialfabeticoin senso lato: ogni lettera di mpuò

essere sostituita in piùmodi, ma se si

considerano coppie (o terne, ecc.) di lettere,

queste vengono sostituite sem

pre nello stesso

modo

Øse cam

bio S, diventa monoalfabetico

�possibile crittoanalisi: frequenze di digrammi,

trigrammi, ecc.

Crittosistem

i polialfabetici

Alberto L

eporati

Corso di Crittografia

33

Esempio: crittosistema di Hill

�se d=2e

ALform

a un blocco, A

ed L

vengono sempre cifrate nello stesso modo

�se A

ed L

appartengono a blocchi

adiacenti, la loro cifratura cam

bia a

seconda degli altri caratteri presenti nei

due blocchi

Crittosistem

i polialfabetici

Alberto L

eporati

Corso di Crittografia

34

�chiave: si sistemano le

lettere dell’alfabeto

inglese (tranne J) in un

quadrato 5x5:

�mviene diviso in blocchi di

due lettere

�nessun blocco deve avere

lettere uguali

�il testo deve avere lunghezza

pari

PLAYFAIR

VQ

MK

B

EG

ON

T

FX

AC

H

LU

PI

R

ZW

DY

S

Alberto L

eporati

Corso di Crittografia

35

�cifratura: si cifra ogni blocco separatamente

�le due lettere sono sulla

stessa riga

Øci si

sposta (ciclicam

ente) verso destra

�le due lettere sono sulla stessa colonnaØci si

sposta (ciclicam

ente) verso il basso

�le due lettere non sonosulla stessa riga o sulla

stessa colonna Ø

si prendono gli altri due angoli

del rettangolo

�chiaramente queste sono solo convenzioni

PLAYFAIR

Alberto L

eporati

Corso di Crittografia

36

�decifratura: si eseguono al contrario le

operazioni di cifratura

�per costruire altre chiavi, si possono

considerare delle frasi. A

d esempio:

CO

RSO

DI CR

ITTO

GRA

FIA

�si rimuovono le occorrenze multipledi ogni lettera:

CO

RSD

ITG

AF

�si com

pleta con le altre letteredell’alfabeto

(saltando la J):

CO

RSD

ITG

AFB

EH

KLM

NPQ

UV

WX

YZ

PLAYFAIR

Alberto L

eporati

Corso di Crittografia

37

�si ottiene:

�vantaggio: facile da

ricordare/ricostruire

�svantaggio: piùfacile da

analizzare/indovinare

PLAYFAIR

ZY

XW

V

UQ

PN

M

LK

HE

B

FA

GT

I

DS

RO

C

�crittoanalisi: se una data coppia di lettere

form

a un blocco, allora viene sempre cifrata

nello stesso modo

Øfare un’analisi delle frequenze dei digrammiaiuta

parecchio a fare ipotesi su k

Alberto L

eporati

Corso di Crittografia

38

�Vigenère èil nom

e del com

mittente, non

dell’inventore

�inventato e usato nel XVI secolo

�ècome

CA

ESA

R, però la chiave varia ad

ogni passo

�per cifrare e decifrare usa un quadrato

con tutti i possibili cifrari di Cesare

�chiave: si sceglie una parola, e la si ripete

quanto basta per ottenere la lunghezza del

testo in chiaro m

VIG

EN

ERE

Alberto L

eporati

Corso di Crittografia

39

VIG

EN

ERE: tabella

AB

CD

EF

GH

IJ

KL

MN

OP

QR

ST

UVW

XY

Z

BC

DE

FG

HI

JK

LM

NO

PQ

RT

SU

VW

XY

ZA

CD

EF

GH

IJ

KL

MN

OP

QR

ST

UVW

XY

ZA

B

DEF

GH

IJ

KL

MN

OP

QR

ST

UVW

XY

ZA

BC

EFG

HI

JK

LM

NO

PQ

RS

TU

VW

XY

ZA

BC

D

FG

HI

JK

LM

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

GH

IJ

KL

MN

OP

QR

ST

UVW

XY

ZA

BC

DE

F

HIJ

KL

MN

OP

QR

ST

UVW

XY

ZA

BC

DE

FG

IJK

LM

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

H

JK

LM

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

KLM

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

J

LM

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

MNO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

L

NO

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

OPQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

N

PQ

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

QR

ST

UVW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

P

RS

TU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

STU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

R

TU

VW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

UVW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

T

VW

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

TU

WX

YZ

AB

CD

EF

GH

IJ

KL

MN

OP

QR

ST

UV

XY

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

TU

VW

YZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

TU

VW

X

ZA

BC

DE

FG

HI

JK

LM

NO

PQ

RS

TU

VW

XY

Alberto L

eporati

Corso di Crittografia

40

�cifratura: ogni coppia (lettera di m, lettera

di k) individua una riga e una colonna.

Si prende il carattere all’intersezione

�esem

pio:

m: P

URPLE

k: C

RY

PTO

c: RLPEES

�decifratura: si eseguono al contrario le

operazioni di cifratura

VIG

EN

ERE

Alberto L

eporati

Corso di Crittografia

41

�la i-esima lettera di mècifrata con un sistema

di Cesare la cui chiave èdata dall’i-esima

lettera di k

�se la chiave kèlunga l, i caratteri di malle

posizioni i, i+l, i+2l, …

vengono cifrati con lo

stesso carattere di k

Quindi,

�se si indovina l, si può suddividere cin lcolonne

e analizzare le frequenze in ogni colonna

VIG

EN

ERE: crittoanalisi

Alberto L

eporati

Corso di Crittografia

42

�esempio: l=5

VIG

EN

ERE: crittoanalisi

∂∂

∂∂

15

14

13

12

11

10

98

76

54

32

1

�ogni colonna èottenuta con un cifrario di Cesare

Øanalisi delle frequenze

�rompe il sistema anche se il num

ero di chiavi è

265=11.881.376

Alberto L

eporati

Corso di Crittografia

43

�problema: trovare la lunghezza di k

�si usa il metodo di Kasiski(1860 circa):

�si cercano occorrenze multiple di una sequenza

di simboli in c

�esem

pio:

…PU

XU

L 1

5 let

tere

PU

XU

L …

�potrebbe essere un fatto accidentale

�potrebbe essere la stessa sequenza di lettere

in m, cifrata con la stessa porzione di chiave

VIG

EN

ERE: crittoanalisi

Alberto L

eporati

Corso di Crittografia

44

�la distanza tra le due Pèdi 20 lettere

�lpotrebbe essere un multiplo di 20

�possibili valori di l: 1, 2, 4, 5, 10, 20

�se ci sono altre sequenze ripetute, si

prendono i valori com

uni per l

�Osservazione: prima del metodo di Kasiski,

Vigenère era considerato molto sicuro

VIG

EN

ERE: crittoanalisi

Alberto L

eporati

Corso di Crittografia

45

�tutti i crittosistemi visti finora sono per

sostituzione, e sono facili da rompere

�i crittosistemi per trasposizionedanno luogo a

chiavi difficili da ricordare (perm

utazioni

lunghe), ma sono piùsicuri (se si compongono più

perm

utazioni)

�possibile comprom

esso: sovracifrature

�si usano piùchiavi corte

�l’analisi èpiùdifficile: èpiùdifficile

riconoscere il testo in chiaro

Sicurezza

Alberto L

eporati

Corso di Crittografia

46

�tutti i crittosistem

i visti finora possono

essere rotti a mano

�usando macchine crittografiche, le

operazioni per cifrare e decifrare possono

essere:

�piùnumerose

�piùcomplicate

�si può lavorare con sistem

i aventi un

numero enorme di chiavi(es: 10100)

Rotori

Alberto L

eporati

Corso di Crittografia

47

�inventate all’inizio del XX secolo, per scopi

commerciali

�molto spesso fanno uso di rotori

�ogni rotore èdiviso in caselline

�ogni casellina contiene un carattere

�ogni rotore effettua una sostituzione

monoalfabetica

�ogni lettera di mviene cifrata tenendo

conto di tuttii rotori

Macchine cifranti

Alberto L

eporati

Corso di Crittografia

48

Rotori

Alberto L

eporati

Corso di Crittografia

49

�la sostituzione èdata dalla com

posizionedelle

sostituzioni di ciascun rotore

�dopo aver cifrato una lettera di m, uno dei rotori

avanza di una posizione; quando il rotore ha fatto

un giro completo, quello successivoavanza di una

posizione

�la chiave cam

bia ad ogni cifratura (sostituzione

polialfabetica )

�lunghezza effettiva della chiave: prodotto del

numero di caselline in ciascun rotore (numero di

possibili configurazioni dei rotori)

Macchine cifranti

Alberto L

eporati

Corso di Crittografia

50

�in pratica, il num

ero di configurazioni può

essere molto grande(ad es., 2610)

Øil metodo di Kasiski non funziona

�decifratura: si mettono i rotori nella

stessa posizione

iniziale usata per cifrare,

e si inserisce il testo cifrato

Macchine cifranti

Alberto L

eporati

Corso di Crittografia

51

�usata dai nazisti durante la II Guerra Mondiale

�form

ata da uno scam

biatore

piùtre, quattro o

cinque rotori

�assomiglia a una macchina da scrivere

Al posto del rullo ha delle spie lum

inose, una per

ciascuna lettera dell’alfabeto

�ogni volta che si prem

e un tasto, un segnale

elettrico attraversa lo scambiatore, poi ogni

rotore, e accende una spia

�dopo ogni cifratura, i rotori cam

biano

configurazione

Ese

mpio: Enigm

a

Alberto L

eporati

Corso di Crittografia

52

La m

acchina E

nigm

a

Alberto L

eporati

Corso di Crittografia

53

La m

acchina E

nigm

a

Alberto L

eporati

Corso di Crittografia

54

�all’inizio della II Guerra Mondiale, Enigm

a sembrava imbattibile

�ma grazie a:

�intuizioni di logici Polacchi

�intelligence Britannica

�Alan Turing (con l’aiuto economico degli Alleati)

il sistema èstato rotto

Crittoanalisi di Enigm

a

Alberto L

eporati

Corso di Crittografia

55

In particolare:

�sono stati costruiti dei duplicatidi Enigm

a�sono stati collegati in serie(cifratura +

decifratura)

�non può essere c =

m

�lo spazio delle chiavi può essere ridotto,

annullando l’effetto degli scam

biatori

�si può esplorare in parallelolo spazio delle chiavi

risultante

�sono stati costruiti “computer”apposta (Colossus,

“bom

be logiche”)

Crittoanalisi di Enigm

a

Alberto L

eporati

Corso di Crittografia

56

Crittoanalisi di Enigm

a: le “bom

be logiche”

Alberto L

eporati

Corso di Crittografia

57

In definitiva, Enigm

a èstata battuta da:

�analisi matem

aticadel suo funzionam

ento

�crittoanalisisullo spazio delle chiavi

�tecnologia(uso di macchine per fare un

attacco a forza bruta)

Crittoanalisi di Enigm

a: conclusioni