Criptografie Criptografie Clasica Complet

81
3. Criptografie conventionala (simetrica) 3.1 Criptografie clasică 3.2 Criptografie simetrică modernă TSI - Criptografie conventionala 1 3.2 Criptografie simetrică modernă 3.3 Confidentialitate cu criptografie simetrica

Transcript of Criptografie Criptografie Clasica Complet

3. Criptografie conventionala(simetrica)

3.1 Criptografie clasică

3.2 Criptografie simetrică modernă

TSI - Criptografie conventionala 1

3.2 Criptografie simetrică modernă

3.3 Confidentialitate cu criptografie simetrica

Principii

• Cheie unica pentru criptare/decriptare (secreta)

• Criptografie clasica (inaintea calculatorului)

TSI - Criptografie conventionala/1 2

• Criptografie clasica (inaintea calculatorului)

• Criptografia simetrica moderna• Utilizare

– Cea mai mare

– Pentru confidentialitate

3.1 Criptografie clasică

• Schema bloc

A E D

Criptanaliz ă

BM

'

'

k

M

MCDk =)(C

TSI - Criptografie conventionala/2 3

A E D

K

BM

k

Canalul sigur

Canal nesigur

C

Prelucrari de baza• substitutie – confuzie• transpozitie - difuzie

3.1 Criptografie clasică• Clasificarea cifrurilor:

– bazate pe substituţie• monoalfabetică

– Caesar– Caezar generalizat

TSI - Criptografie conventionala/3 4

– Caezar generalizat– Polybius– ROT13(Unix)

• omofonică• poligramică

– Playfair – Huffman

• polialfabetică– Trithemius– Vigenere

3.1 Criptografie clasică

• Clasificare (contiuare):– de transpoziţie

• Hill

• ADFGVX

TSI - Criptografie conventionala/4 5

• ADFGVX

– maşini rotor• Enigma

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul lui Caesar

• Criptare: 26mod)3()( += ii nnC

TSI - Criptografie conventionala/5 6

• Criptare:

• Decriptare:

– Exemplu:• Corespondenţa caracterelor:

text în clar: CR I PTOGRAF I Etext criptat: ZOFMQLDOXCFB

26mod)3()( += ii nnC

26mod)3()( −= CCD

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 ZX 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

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul lui Caesar generalizat

NbMaC mod)( +⋅=

TSI - Criptografie conventionala/6 7

• a – factor de amplificare

• b – coeficient de deplasare

• N=26={0, 1, 2, ... 25}

– Modalităţi de atac:• prin forţă brută – anumite cuvinte din formulări;

• analiză statistică;

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul lui Polybius

• Cifru monoalfabetic de substituţie• Conversie litere în numere

TSI - Criptografie conventionala/7 8

• Conversie litere în numere• Conceput pentru ca mesajele să fie transmise folosind torţele• Prima formă concretă de schimb secretizat de mesaje• Secretul – schimbarea cifrelor sau amestecarea literelor• Litera=(linie , coloană)• Pătratul lui Polybius:• Exemplu:

– text în clar: CRIPTOGRAFIE– text criptat: 13-42-24-35-44-34-22-42-11-21-...-24-15

I II III IV V

1 A B C D E2 F G H IJ K3 L M N O P

4 Q R S T U5 V W X Y Z

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Playfair– REGULII DE CRIPTARE:

• caracterele se criptează înblocuri de câte 2C U R S AB D E F G

TSI - Criptografie conventionala/8 9

• caracterele se criptează înblocuri de câte 2• dacă sunt pe aceeaşi linie:

caracterul din DREAPTA• dacă sunt pe aceeaşi coloană:

caracterul de JOS• dacă sunt pe linii, rânduri diferite:

caracterele din intresecţie l / c.• Exemplu:

text în clar: CRIPTOGRAFIE (CRtext în clar: CRIPTOGRAFIE (CR--IPIP--TOTO--GRGR--AFAF--IE)IE)text criptat: UStext criptat: US--KOKO--NPNP--EAEA--SGSG--KDKD

B D E F GH IJ K L MN O P Q TV W X Y Z

Cheia: CURS

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Trithemius

• Cifru polialfabetic• Alfabetul :

TSI - Criptografie conventionala/9 10

• Alfabetul :– Dispus pe 26 de linii numerotate de la 0 la 25– Numărul de ordine al liniei indică numărul de caractere cu

care se deplasează ciclic alfabetul spre dreapta– Linia numerotată cu zero constituie tocmai alfabetul în

ordinea iniţială– Codarea poate fi făcută astfel:

» Primul caracter se cifrează selectându-l din linia 1» Al doilea din linia a 2-a şi aşa mai departe

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Trithemius

• Exemplu:

TSI - Criptografie conventionala/10 11

Cheia: 1 2 3 4 5 6 7 8 9 10 11 12Text: A S O S I T T I M P U LText criptat: B URWNZ AQVZFX

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Vigenere

• Utilizează un anumit cuvânt cheie • Cheia poate fi:

– în clar

TSI - Criptografie conventionala/11 12

– în clar – de încercare– autocheie (cheie cifrată)

• Cu cheie în clar:• la criptare:

• se dă cheia în litere• se stabileşte n pentru fiecare literă• se înlocuieşte litera cu litera de pe n poziţii în dreapta.

• la decriptare:• se procedează în mod invers.

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Vigenere

• Exemplu cu cheie în clar:

TSI - Criptografie conventionala/12 13

12 14 13 0 12 14 13 0 12 14 13 0M O N A M O N A M O N AA S O S I T T I M P U LM G B S U H G I Y D H L

cuvânt cheietext în clartext cifrat

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Vigenere

• Cu cheie de încercare:– se foloseşte o cheie dată

TSI - Criptografie conventionala/13 14

– se foloseşte o cheie dată

– după introducerea cheii se continuă cu mesajul în clar

– cheia depinde de mesajul în clar

– criptarea şi decriptarea după aceleaşi principii.

• Exemplu:

M A S O S I T T I M P UA S O S I T T I M P U LM S G G A B M B U B J F

cuvânt cheietext în clartext cifrat

3.1 Criptografie clasică

• Cifruri de substitu ţie– Cifrul Vigenere

• Cu autocheie (cheie cifrată)– după introducerea cheii – se introduce textul cifrat.

TSI - Criptografie conventionala/14 15

– după introducerea cheii – se introduce textul cifrat.

• Exemplu:

M M E S K S L E M Z N HA S O S I T T I M P U LM E S K S L E M Z N H S

cuvânt cheietext în clartext cifrat

3.1 Criptografie clasică

• Maşini rotor– o clasă importantă de maşini de cifrat

– în al 2-lea Război Mondial, germani

– prin substituţie, folosind un alfabet ce se poate schimb

TSI - Criptografie conventionala/15 16

– prin substituţie, folosind un alfabet ce se poate schimb

– principiul de bază – să genereze o cheie foarte mare

– rotorul se mişcă la fiecare eliberare de tastă.

– rotorul cel mai nesemificativ – tastă

– la o mişcare completă, următorul face un pas;

3.1 Criptografie clasică

• Maşini rotor

TSI - Criptografie conventionala/16 17

3.1 Criptografie clasică• Maşini rotor

– cheia este de lungime mare 26 la puterea nr. rotoare;

– 3-8 rotoare;

TSI - Criptografie conventionala/17 18

3.2 Criptografie simetrică modernă

3.2 Cifruri simetrice

3.2.1 bloc (block ciphers)

TSI - Criptografie simetrică modernă/1

19

simetrice3.2.2 secvenţiale (she ciphers)

3.2.1 Cifruri bloc/1

• Caracteristici:– mesajul în clar M este împărţit în blocuri, de obicei de aceeaşi

dimensiune, fiecare bloc fiind cifrat independent– cifrurile bloc sunt cifruri produs iterate (m) având la bază substituţia şi transpoziţia

TSI - Criptografie simetrică modernă/2

20

şi transpoziţia– lungimile tipice ale blocurilor sunt: 32 ÷ 128 biţi– anii de dezvoltare a cifrurilor bloc sunt anii '70 (la baza acestora

stând lucrările lui Shannon).

• Componentele de bază ale cifrurilor bloc sunt transform ările de:– transpoziţie - cutiile P (permutare P - box) - difuzie– substituţie - cutiile S (sustituţie S - box) - confuzie

3.2.1 Cifruri bloc/2

• Cutia P– transformările operate de o cutie P sunt liniare, legăturile interioare

ale unei cutii P putând fi determinate prin punerea unui “1” la fiecare intrare şi marcarea ieşirii corespondente

TSI - Criptografie simetrică modernă/3

21

fiecare intrare şi marcarea ieşirii corespondente

M 0

M 1

M 2

M 3

M 7

…………

C0

C1

C2

…………C3

C7

n: :n; (2n)!

3.2.1 Cifruri bloc/3• Cutia S

C2

C1

C0M0

M1M2

P

CBZ

CZB

01234567

01234567

TSI - Criptografie simetrică modernă/4

22

• Stările intr ărilor şi ieşirilorIn M0 M1 M2 C0 C1 C2 out

0 0 0 0 1 1 0 3

1 1 0 0 1 1 1 7

2 0 1 0 0 0 0 0

3 1 1 0 0 1 1 6

4 0 0 1 0 1 0 2

5 1 0 1 0 0 1 4

6 0 1 1 1 0 1 5

7 1 1 1 1 0 0 1

3.2.1 Cifruri bloc/4

• Sistem de cifrare bloc – o alternanta de cutii P si S

C0

S S4 4 4 4

8 8M 0 B cB î

TSI - Criptografie simetrică modernă/5

23

k′′′′ k′′′′′′′′M 0

C1

C15

S1

P1 P2P3

S2

S3

S4

S1

S2

S3

S4

4

4

4

4

4

4

4

4

4

4

4

4

4

4

4

4

M 1

M 15

B cl io fc r

at te x Ct

B îl no c ct le ax rt

M

3.2.1 Cifruri bloc/5

• Cifrul Feistel (1970)– Intrarea:

• Text în clar de lungime 2w• 2w=64

S0 (w)

D0 (w)

TSI - Criptografie simetrică modernă/6

24

• 2w=64• Algoritmul se aplică de m ori (n=nr. de interaţii)• n=16 tipic (criptanaliza def.=forţă brută)• K⇒K i subchei (generate din K); lungimea Ki =128 (64 )• F= funcţia ce asigurăconfuzia SD şi difuzia P, Li⇔Ri

– Probleme de interes:• Criptare/decriptare soft rapidă• Uşurinţă în analiză: pentru detecţia vulnerabilităţii la

criptanaliză

3.2.1 Cifruri bloc/6

F

L1 R1

K1L0 R0

W biţi W biţi

F

L1 R1

K1L0 R0

W biţi W biţiInteraţia 1

Interaţia i

F

Ki

Text în clar 2w biţi

• Reţea clasică Feistel(SPN)

F – substitutiepermutare ↔L

TSI - Criptografie simetrică modernă/7

25

F

Li Ri

Interaţia n

F

Ln Rn

Kn

Ln+1Rn+1

Text cifrat 2w biţi

permutare ↔iL

3.2.1 Cifruri bloc/7Text în clar

F

K1LE0 RE0

F

K2 LE1RE1

LE2 RE2

Text în clar

F

F

K1LD15=RE1RD15=LE1

LD16=RE0 RD16=LE0

LD16=RE0RD16=LE0

• Criptarea şi decriptarea Feistel

TSI - Criptografie simetrică modernă/8

26

F

K15

F

K16

Text cifrat

LE14

LE16

LE15

LE16

RE14

RE16

RE16

RE15

Text cifrat

F

K16

F

K15

F

K2

LD0=RE16 RD0=LE16

LD1=RE15RD1=LE15

LD14=RE2 RD14=LE2

3.2.1 Cifruri bloc/8 – DES/1• DES (Data Encryption Standard)

– Istoric:• 1970 – necesitatea criptografiei nemilitare

– IBM – LUCIFER• 1972 – NBS (azi NIST) – program de protecţie a

calculatoarelor şi transmisiilor de date• 1973 – NBS – prima cerere publică de alg. criptografici pentru

TSI - Criptografie simetrică modernă/9

27

• 1973 – NBS – prima cerere publică de alg. criptografici pentru standard, cu specificarea cerinţelor:

– Nivel ridicat de securitate– Complet specificat şi uşor de înţeles– Securitatea să fie cuprinsă doar cu cheile– Disponibil tuturor utilizatorilor– Adaptabil pentru diverse aplicaţii– Implementare hard economică– Evaluabil– Exportabil

3.2.1 Cifruri bloc/9 – DES/2

• Istoric (continuare):– 1974 – NBS – a 2-a cerere: IBM a prezentat o

propunere– 1975 – publicarea algoritmului dat de IBM

TSI - Criptografie simetrică modernă/10

28

– 1975 – publicarea algoritmului dat de IBM– 1976 – NBS a ţinut 2 conferinţe:

– Matematica algoritmului– Problema creşterii dimensiunii cheii

– 26.11.1976 – adoptarea DES ca standard federal– 15.01.1977 – descrierea oficială a standardului– 1981 – ghidul de utilizare şi utilizare a DES– 1981 – DES adoptat ca standard pentru sectorul privat

(ANSI X 3.92)

3.2.1 Cifruri bloc/10 – DES/3• Principiul DES

TSI - Criptografie simetrică modernă/11

29

3.2.1 Cifruri bloc/11 – DES/4

• Schema bloc corespunzătoare unei interaţii

TSI - Criptografie simetrică modernă/12

30

3.2.1 Cifruri bloc/12 – DES/5

• Calculul funcţiei F(D,K)

TSI - Criptografie simetrică modernă/13

31

3.2.1 Cifruri bloc/13 – DES/6

• Moduri de operare a cifrurilor bloc1. EBC (Electronic Codebook)

• Descriere:– fiecare bloc de 64 biţi din M(P) se codează independent

TSI - Criptografie simetrică modernă/14

32

– fiecare bloc de 64 biţi din M(P) se codează independent utilizând aceaşi cheie

• Aplicaţie:– criptarea cheii

2. CBC (Cipher Block Chaining)• Descriere:

– intrarea = Pi+Ci-1

• Aplicaţie:– aplicaţii generale pentru transmisiuni orientate pe bloc (n>64

biţi) şi autentificare.

3.2.1 Cifruri bloc/14 – DES/7

• Moduri de operare a cifrurilor bloc3. CFB (Chiper Feedback)

• Descriere:– intrarea (Pi) se procsează în blocuri de J biţi=Ci-1

– C (J biţi) →criptează ⇒ C’ ⊕P= C(J biţi)

TSI - Criptografie simetrică modernă/15

33

– Ci-1 (J biţi) →criptează ⇒ C’ i⊕Pi= Ci(J biţi)

• Aplicaţii:– Autentificare– Transmisiuni de tip continuu

4. OFB (Output Feedback)• Descriere:identic cu CFB, cu diferenţa că intrarea= C’i-1(J biţi), Ci

(J biţi)=Ci⊕Pi

• Aplicaţii: transmisiuni de tip continuu (stream oriented) pe canale zgomotoase (ex transmisiuni pe satelit)

3.2.1 Cifruri bloc/15 – DES/8

1. ECB– Codebook=

– Utilizare: mesaje scurte ⇒tr. securizată a ki

– Dezavantaj: pentru blocuri identice Pi ⇒Ci identice ⇒ nu este sigură la mesaje lungi

iii CPNiPP ⇔∀⇒== ,...1},{

TSI - Criptografie simetrică modernă/16

34

– Criptarea:

– Decriptarea:

Ek(DES)

P1

C1

K

t1

Ek(DES)

P2

C2

K

t2

Ek(DES)

PN

CN

K

tN

Dk(DES)

C1

P1

K Dk(DES)

C2

P2

K Dk(DES)

CN

PN

K

3.2.1 Cifruri bloc/16 – DES/92. CBC/1

– Criptare:P1IV

KEk(DES)

P2

KEk(DES)

PN

KEk(DES)

CN-1

t1 t2 tN

TSI - Criptografie simetrică modernă/17

35

– Decriptare:C1 C2 CN

P1

Dk(DES)

IV

K

C1

P2

Dk(DES)K

C2

PN

Dk(DES)K

CN

CN-1

3.2.1 Cifruri bloc/17 – DES/10

2. CBC/2– Înlătură dezavantajele ECB ⇒ acelaşi Pi ⇒ Ci≠

][ 1 nnkn PCEC ⊕= −

PPCCCDC =⊕⊕=⊕ )(

TSI - Criptografie simetrică modernă/18

36

– IV – (iniţialization vector) – cunoscut la E şi R

– Trebuie protejat ca şi K

– Trimise prin ECB

nnnnnkn PPCCCDC =⊕⊕=⊕ −−− 111 )(

nnnnkknk PCPCEDCD ⊕=⊕= −− 11 ))(()(

3.2.1 Cifruri bloc/18 – DES/11

3. CFB/1– Criptare:

IVRD 64 – j biţi/j bi ţi

64

RD 64 – j biţi/j bi ţi RD 64 – j biţi/j bi ţi

CM-1

TSI - Criptografie simetrică modernă/19

37

Ek(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

64

64

jj

jP1

C1

KEk(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

P2

C2

KEk(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

PM

CM

K

3.2.1 Cifruri bloc/19 – DES/123. CFB/2

– Decriptare:

RD 64 – j biţi/j bi ţi

IV

RD 64 – j biţi/j bi ţi RD 64 – j biţi/j bi ţi

CM-1

TSI - Criptografie simetrică modernă/20

38

Dk(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

P1

C1

K Dk(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

P2

C2

K Dk(DES)

Selectează j bi ţi

Înl ătur ă64 – j biţi

PM

CM

K

3.2.1 Cifruri bloc/20 – DES/13

4. OFB/1– Asemănător cu CFB

– Ieşirea funcţiei de criptare: este intrarea în RD

– Avantaj:)(DESyEk

TSI - Criptografie simetrică modernă/21

39

– Avantaj:• Dacă apar erori în C1 numai partea decriptată din P1 este

afectată; unităţile Pi următoare nu sunt afectate de această eroare. (în CFB, C1 este intrare pentru obţinerea lui C2

⇒acumulare de erori).

– Dezavantaj:• mai vulnerabil la criptanaliză decât CFB

3.2.1 Cifruri bloc/21 – DES/14

4. OFB/2– Criptare:

IVOM-1

TSI - Criptografie simetrică modernă/22

40

Ek(DES)

RD 64 – j biţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

64

64

P1

C1

KEk(DES)

RD 64 – j biţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

P2

C2

K Ek(DES)

RD 64 – j biţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

PM

CM

K

3.2.1 Cifruri bloc/22 – DES/15

4. OFB/3– Decriptare:

RD 64 – j bi ţi/j bi ţi

IV

RD 64 – j bi ţi/j bi ţi RD 64 – j bi ţi/j bi ţi

OM-1

TSI - Criptografie simetrică modernă/23

41

Dk(DES)

RD 64 – j bi ţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

P1

C1

K Dk(DES)

RD 64 – j bi ţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

P2

C2

KDk(DES)

RD 64 – j bi ţi/j bi ţi

Selectează j bi ţi

Înl ătur ă64 – j biţi

PM

CM

K

3.2.1 Cifruri bloc/23 – alte cifruri/1

• Alte cifruri bloc– T-DES– IDEA (1990 Lai, Massey)– RC-5– BLOWFHISH

TSI - Criptografie simetrică modernă/24

42

– BLOWFHISH– CAST-128 (Canada)– RC-2– New-DES (1985)– DES-X (1986 – Mail Sec)– CRYPT(3) – variantă de DES pentru UNIX– 3 – WAY – FEAL (Japonia)– GOST (URSS/RUSIA)

3.2.1 Cifruri bloc/24 – alte cifruri/2

• T-DES/1– Utilizare:

• în standardul pentru managementul cheilor

TSI - Criptografie simetrică modernă/25

43

• în standardul pentru managementul cheilor– ANS X 9.17(American National Standard: Financial

Institution Key Management)

– ISO 8732

– Proprietăţi:• Atacul forţei brute: 2122 → nu ∃ atacuri

criptanalitice practice

3.2.1 Cifruri bloc/25 – alte cifruri/3

• T-DES/2– Criptare:

K 1 K 2 K 1

B C

TSI - Criptografie simetrică modernă/26

44

– Decriptare:

E D EP A B C

D DE

K 1 K 2 K 1

C B A P

3.2.1 Cifruri bloc/26 – alte cifruri/4• IDEA (International Data Encryption Alg.)/1

– 1990 – Xuejia Lai

– James Massay

– Utilizare: – PGP

– propunere de a înlocui DES

– Caracteristici:

de la Swiss Federal Institute of Technology

TSI - Criptografie simetrică modernă/27

45

– Caracteristici:

– K – 128 biţi (>DES)

– blocul de date: 64 biţi

– confuzia mai bună decât la DES

– difuzia: un bit din P împrăştiat pe cât mai multe din C

– nr interaţii: 8

– implementarea uşoară în soft (flexibiliă şi ieftină) şi hard (FPGA - rapidă)

3.2.1 Cifruri bloc/27 – alte cifruri/5

• IDEA /2– Confuzia:

• Ci=f(Pi,K), f cât mai complicată

• f = 3 operaţii (DES – cutii S + ⊕⊕⊕⊕)

TSI - Criptografie simetrică modernă/28

46

• f = 3 operaţii (DES – cutii S + ⊕⊕⊕⊕)– ⊕⊕⊕⊕ sau exclusiv bit cu bit

– adunare mod 216

– multiplicare mod (216 +1)

3.2.1 Cifruri bloc/28 – alte cifruri/6

• IDEA /3 - Criptare

X1(16 biţi)

X (16 biţi) Y1(16 biţi)

TSI - Criptografie simetrică modernă/29

47

P(64 biţi) X2(16 biţi)

X3(16 biţi)

X4(16 biţi)

K(128 biţi)

Z1(16 biţi)

Z52(16 biţi)

⇒ C(64 biţi)

Y1(16 biţi)

Y2(16 biţi)

Y3(16 biţi)

Y4(16 biţi)

3.2.1 Cifruri bloc/29 – alte cifruri/7• IDEA /4 - structura

R1K 1

K 6

P1 P2 P3 P4

W11 W12 W13 W14

R2K 7

K 12

64 –bit text în clar

128 biţi cheie K

TSI - Criptografie simetrică modernă/30

48

Transformarea ieşirii

W21 W22 W23 W24

W71 W72 W73 W74

R8K 43

K 48

W81 W82 W83 W84

C1 C2 C3 C4

64 –bit text cifrat

K 49

K 52

Generator de subchei

K 1 K 52

16

3.2.1 Cifruri bloc/30 – alte cifruri/8• IDEA /5 – prezentarea unei interaţii

P1 P2 P3 P4

K 3

K 4

K 1

K 2

TSI - Criptografie simetrică modernă/31

49

MA

K 6

K 5

W11 W12 W13 W14

3.2.1 Cifruri bloc/31 – alte cifruri/9

• IDEA /6 – Transformarea de ieşire

W81 W82 W83 W84

TSI - Criptografie simetrică modernă/32

50

K 49

K 50

K 51

K 52

C1 C2 C3 C4

3.2.1 Cifruri bloc/32 – alte cifruri/10

• IDEA /7 – Generarea subcheilorK (128 biţi)

K 1 K 2 K 3 K 4 K 5 K 6 K 7 K 8

K K K K K KK K K

K 1=[1…16]K 2=[17…32]

TSI - Criptografie simetrică modernă/33

51

K 16 K 9 K 10 K 11 K 12 K 13K 15 K 14 K 15

K 22 K 23 K 24 K 17 K 18 K 19 K 20 K 21

K 29 K 30 K 31 K 32 K 25 K 26K 28 K 27 K 28

K 35 K 36 K 37 K 38 K 39 K 40 K 33 K 34

K 42 K 43 K 44 K 45 K 46 K 47K 41 K 48

K 49 K 50 K 51 K 52

K 2=[17…32]…K 7=[97…112]K 8=[113…128]K 9=[26…41]K 10=[42…57]K 11=[58…73]K 12=[74…89]K 13=[90…105]etc.

3.2.1 Cifruri bloc/33 – alte cifruri/11• IDEA /8 – Decriptare

Criptare:

Transformare

Criptare intermediar ăI 11 I 12 I 13 I 14

TransformareW11 W12 W13 W14

P1 P2 P3 P4

R1

K 1...K4

K 5,K6

K 7...K10 Transformare

V V V V

Criptare intermediar ă

J81 J82 J83 J84

V81 V82 V83 V84

Transformarea ieşiriiP1 P2 P3 P4 U49...U52

U47,U48

U43...U46

R8

Decriptare:

TSI - Criptografie simetrică modernă/34

52

Criptare intermediar ăI 21 I 22 I 23 I 24

W11 W12 W13 W14

Transformare

Criptare intermediar ăI 81 I 82 I 83 I 84

W71 W72 W73 W74

W81 W82 W83 W84

Transformarea ieşirii

C1 C2 C3 C4

R2

R8

K 11,K12

K 43...K46

K 47,K48

K 49...K52 Transformare

C1 C2 C3 C4

Criptare intermediar ă

J11 J12 J13 J14

Transformare

V11 V12 V13 V14

Criptare intermediar ă

J21 J22 J23 J24

V21 V22 V23 V24

V71 V72 V73 V74

U11,U12

U7...U10

U5,U6

U1...U4

R2

R1

3.2.1 Cifruri bloc/34 – alte cifruri/12• IDEA /9 – criptare decriptare chei intermediare

Criptare Decriptare

Intera ţia Denumire Echivalent cu Denumire Echivalent cu

1 Z1 Z2 Z3 Z4 Z5 Z6 Z[1..96] U1 U2 U3 U4 U5 U6

2 Z7 Z8 Z9 Z10 Z11 Z12 Z[97..128;26..89] U7 U8 U9 U10 U11 U12

3 Z13 Z14 Z15 Z16 Z17 Z18 Z[90..128;1..25;5..82] U13 U14 U15 U16 U17 U18

42411

4644451

43 ZZZZZZ −− −−4847

1525150

149 ZZZZZZ −− −−

36351

4038391

37 ZZZZZZ −− −−

TSI - Criptografie simetrică modernă/35

53

4 Z19 Z20 Z21 Z22 Z23 Z24 Z[83..128;1..50] U19 U20 U21 U22 U23 U24

5 Z25 Z26 Z27 Z28 Z29 Z30 Z[76..128;1..43] U25 U26 U27 U28 U29 U30

6 Z31 Z32 Z33 Z34 Z35 Z36 Z[44..75;101..128;1..36] U31 U32 U33 U34 U35 U36

7 Z37 Z38 Z39 Z40 Z41 Z42 Z[37..100;126..128;1..29]

U37 U38 U39 U40 U41 U42

8 Z43 Z44 Z45 Z46 Z47 Z48 [30..125] U43 U44 U45 U46 U47 U48

Transf. Z49 Z50 Z51 Z52 Z[23..86] U49 U50 U51 U52

363540383937 ZZZZZZ −−

30291

3432331

31 ZZZZZZ −− −−

24231

2826271

25 ZZZZZZ −− −−

18171

2220211

19 ZZZZZZ −− −−

12111

1614151

13 ZZZZZZ −− −−

651

10891

7 ZZZZZZ −− −−1

4321

1−− −− ZZZZ

3.2.1 Cifruri bloc/35 – alte cifruri/13• IDEA /10 –structură de multiplicare/adunare (MA)

– Cele 2 operaţii: şi nu sunt distributive sau asociative• a (b c) (a b) (a c)

• a (b ⊕ c) (a b)⊕c

• ⊕ adunare modulo 2

• adunare de întregi modulo 216 (întregi pe 16 biţi)

≠≠

TSI - Criptografie simetrică modernă/36

54

• adunare de întregi modulo 216 (întregi pe 16 biţi)

• multiplicare de întregi modulo 216 +1F1 F2

Z5

Z6

G2G1

3.2.1 Cifruri bloc/36 – alte cifruri/14• IDEA /11 – funcţii

X Y X Y X Y X⊕⊕⊕⊕Y

0 00 0 00 0 00 1 01 0 00

0 00 1 01 1 01 0 00 1 01

0 00 2 10 2 10 3 11 2 10

0 00 3 11 3 11 2 10 3 11

1 01 0 00 1 01 0 00 1 01

1 01 1 01 2 10 0 00 1 01

1 01 2 10 3 11 2 10 3 11

TSI - Criptografie simetrică modernă/37

55

1 01 2 10 3 11 2 10 3 11

1 01 3 11 0 00 3 11 2 10

2 10 0 00 2 10 3 11 2 10

2 10 1 01 3 11 2 10 3 11

2 10 2 10 0 00 0 00 0 00

2 10 3 11 1 01 1 01 1 01

3 11 0 00 3 11 2 10 3 11

3 11 1 01 0 00 3 11 2 10

3 11 2 10 1 01 1 01 1 01

3 11 3 11 2 10 0 00 0 00

3.2.1 Cifruri bloc/37 – alte cifruri/15

• AES (Advanced Encryption Standard)• Inventat de Joan Daemen si Vincent Rijmen =>

Rijandael 1998• 26.11.2001 – NIST → castigator al competitiei

pentru standard criptografic

TSI - Criptografie simetrica moderna/38

56

pentru standard criptografic• 26.05.2002 → inlocuitor al DES

Caracteristici• Lungime cheie: 12 8, 192, 256 biti• Lungime bloc: 128• Structura S-P (nu Feistel)• Nr de interatii: 10, 12, 14

• Principiul: functie hash: H utilizata in modul CFB sau OFB:

3.2.1 Cifruri bloc/38 – alte cifruri/16

⊕=⊕=

),(

),(

1

1

iii

iii

CKHCP

CKHPC

TSI - Criptografie simetrica moderna/39

57

• Realizari• MDC (Message digest Cipher)

• Inventat de Peter Gutmann 1993

• Securitatea• Data de functia H

• Nu este inca studiata

etcSnefru

SHA

MDMD

H

,

4,5

3.2.1 Comparaţia cifrurilor bloc

Algoritm Perioade de tact pe

interaţie

Intera ţii Perioade de tact pe biţi

cripta ţi

TSI - Criptografie simetrică modernă/40

58

interaţie cripta ţi

Blowfish 9 16 18

RC5 12 16 23

DES 18 16 45

IDEA 50 8 50

Triple – DES 18 48 108

3.2.2 Cifruri secvenţiale/1

• Cifruri bazate pe RDR => generatoare de combinare (combining generators)

• Principiu:

TSI - Criptografie simetrică modernă/41

59

• Principiu: • RDRi, =>yi=f(gi, S0i) functia de combinare• gi - polinoame primitive →ni=2ki-1 • daca ni sunt numere prime• N=1 => generatorul =: filtru generator

• Implementare: • Hard=>viteza mare

Ni ,1=

∏=

=N

iinn

1

3.2.2 Cifruri secvenţiale/2

• realizate cu RDR

– Avantaj: simplitate (hard)

– Dezavantaj:

TSI - Criptografie simetrică modernă/42

60

– Dezavantaj:• Ineficiente soft

• Prelucrează doar un bit la un moment de timp, spre deosebire de un cifru bloc care prelucrează la un moment de timp n (64) biţi

• Obs: CRAY

3.2.2 Cifruri secvenţiale/3

• Realizari: A5– Proiectat de francezi (1980)

– Utilizat în GSM pentru criptarea liniei telefonice la S, B

– 3RDR k=19

TSI - Criptografie simetrică modernă/43

61

– 3RDR k1=19

k2=22 n=n1 n2 n3

k3=23 ni=2ki-1

– Securitate medie, posibil de îmbunătăţit prin creşterea lui k şi alegerea unor polinoame generatoare dense.

3.2.2 Cifruri secvenţiale/4

• RC4– 1987 inventat de Ron Rivest pt. RSA Data Security Inc– Este un cod bloc transformat prin OFB– Lungimea cheii este variabilă

TSI - Criptografie simetrică modernă/44

62

– Lungimea cheii este variabilă– 1994 – codul sursă pus pe internet ⇒ extrem de utilizat– Utilizare:

• Lotus Notes• Apple Computer’s AOCE• Oracle Secure SQL• Cellular Digital Data Specifications

3.2.2 Cifruri secvenţiale/5

• SEAL– Inventat in1994 (patent IBM)

– Alg. Soft foarte rapid (optimal pt. procesoare pe 32 biti)

TSI - Criptografie simetrică modernă/45

63

• WAKE (Work Auto Key Encryption)– Inventat de David Wheeler în 1994

– Cod bloc pe 32 de biţi transformat prin CFB

– Foarte rapid

– Nesigur la atac cu text în clar la alegere şi text cifrat la alegere

3.2.2 Cifruri secvenţiale/6

• PKZIP– Este un algoritm de criptare incadrat in programul de compresie

PKZIP– Inventat de Roger Schlafly– Nivel de securitate modest, nu se recomandă

TSI - Criptografie simetrică modernă/46

64

– Nivel de securitate modest, nu se recomandă

• Hughes XPD/KPD– XPD – 1986 → protectia echipamentelor exportabile– Utilizat de Hughes Aircraft Corp. → echipamente militare– KPD (Kinetic Protection Device)– 1 RDR – 61 biti; 210 polinoame primitive

– K – selectia g(x) si S0– NSA – acord pentru export => atac ≈240 sau L

3.2.2 Cifruri secvenţiale/7

• NANOTWQ (companie el. Din Rep. Sud Africana)– Folosit de politia din Africa de Sud pentru

protectie fax

TSI - Criptografie simetrică modernă/47

65

protectie fax– 1 RDR – 127 biti cu g(x) dat– K - S0 =>2129 -1– Securitate indoielnica (multe din faxurile

criptate au aparut in ziare => rolul spionajului (intelligence sevices) din SUA, UK, URSS)

3.2.2 Cifruri secvenţiale/8

• Generatoare aditive [Sch p390-392]– F. eficiente: produc cuvinte aleatoare, nu biti– Principiul:

• un vector de cuvinte pe n biti: X1, …, Xn

• Cheia: starea initiala

TSI - Criptografie simetrică modernă/48

66

• Cheia: starea initiala X i=( Xi-a+ Xi-b+…+ Xi-m)mod2n

• Realizari– Fish (Fibonacci shrinking generator)

• 2 generatoare• Spart cu factor de lucru 240

– Pike• 3 generatoare Ai , Bi, Ci

3.3 Confidentialitate cu criptografie simetrica

3.3.1 Modalităţi de criptare a canalelor de

comunicaţie

Criptografie conventionala 67

comunicaţie

3.3.2 Distributia cheilor in criptosisteme simetrice

3.3.3 Protocoale pt. comunicaţii criptografice

simetrice

3.3.1 Modalităţi de criptare a canalelor de comunicaţie/1

Criptarea legătur ă la legătur ă:

TSI - Criptografie simetrică modernă/49

68

• Criptarea legătur ă la legătur ă:– Caracteristici:

• Criptarea se face la nivel fizic.• Echipamentul de criptare se pune dupa interfata stratului fizic, care

este standardizata; aceste echipamente hard cripteaza toate datele ce trec prin ele: date, informatii de rutare, informatii corespunzatoare

3.3.1 Modalităţi de criptare a canalelor de comunicaţie/2

TSI - Criptografie simetrică modernă/50

69

trec prin ele: date, informatii de rutare, informatii corespunzatoare protocolului. Datorita acestui fapt se realizeaza o protectie a traficului (traffic flow security), ceea ce constituie un avantaj.

• Comutatoarele inteligente si nodurile cu memorie dintre emitator si receptor necesita decriptare înainte de procesare (vezi nodurile 2 si 3) ceea ce constituie un dezavantaj, nodurile devenind vulnerabile din punct de vedere al securitatii.

• Managementul cheilor este simplu, numai nodurile terminale ale unei legaturi necesitând o cheie comuna, ele putând sa-si schimbe cheia independent de restul retelei

• Securitatea nu depinde de managementul cheilor• Criptarea este online

• Criptarea capăt la capăt

3.3.1 Modalităţi de criptare a canalelor de comunicaţie/3

TSI - Criptografie simetrică modernă/51

70

• Caracteristici:– criptarea se face la nivelul transport, echipamentul de

criptare punându-se între nivelul retea si nivelul transport

– informatiile de rutare nu sunt criptate, ceea ce permite

3.3.1 Modalităţi de criptare a canalelor de comunicaţie/4

TSI - Criptografie simetrică modernă/52

71

– informatiile de rutare nu sunt criptate, ceea ce permite analiza traficului si constituie dezavantajul principal al acestui tip de criptare

– managementul cheilor este mai dificil (dezavantaj), deoarece utilizatorii individuali trebuie sa fie siguri ca au aceeasi cheie

– criptarea este offline (dezavantaj)– asigura un nivel sporit de securitate (avantaj), în noduri

semnalele fiind criptate

• Caracteristici:– criptarea având loc la nivel înalt, este independenta de tipul retelei,

de codurile de linie folosite, de sincronizarea dintre modemuri, de interfetele fizice, etc. ceea ce constituie un avantaj

– criptarea la nivelele înalte interactioneaza cu softul utilizatorului, care poate diferi de la un calculator la altul (dezavantaj)

3.3.1Modalităţi de criptare a canalelor de comunicaţie/5

TSI - Criptografie simetrică modernă/54

72

care poate diferi de la un calculator la altul (dezavantaj)– echipamentul de criptare poate fi realizat soft sau hard

• Probleme în transmisiune:– Daca apar erori în transmisiune, acestea pot fi corectate prin

retransmisie– Cheile utilizate sunt valabile doar pentru o singura transmisiune

(cheie de sesiune), dupa care existenta lor nu mai este necesara

3.3.1Modalităţi de criptare a datelor pentru stocare/6

• Probleme în stocare:– Datele stocate trebuie sa fie protejate prin coduri corectoare de

erori deoarece retransmisia este imposibila– Cheile trebuie sa se pastreze atâta timp cât se pastreaza datele

stocate (ani de zile în multe situatii).– Datele în clar trebuie sa existe pe alt disc sau alt suport, de

TSI - Criptografie simetrică modernă/55

73

– Datele în clar trebuie sa existe pe alt disc sau alt suport, de exemplu hârtie (de aici posibilitatea unor atacuri cu text în clar).

– În aplicatii cu baze de date, datele pot fi mai mici decât lungimea blocului majoritatii algoritmilor, ceea ce face ca textul cifrat sa fie mai mare decât textul în clar.

– Viteza dispozitivelor de I/O cer criptari / decriptari de mare viteza, deci criptare hard, iar în unele aplicatii se cer algoritmi de mare viteza

– Managementul cheilor este mult mai complicat, deoarece utilizatori diferiti necesita acces la diferite fisiere sau portiuni de fisiere

• Caracteristici ale criptarii informatiei de pe un disc cu o

singura cheie– este simpla deoarece nu implica retinerea de catre utilizatori a

unui numar mare de chei de criptare (avantaj);

3.3.1Modalităţi de criptare a datelor pentru stocare/7

TSI - Criptografie simetrică modernă/56

74

unui numar mare de chei de criptare (avantaj);

– nivelul de securitate este redus deoarece un eventual criptanalist ar avea la dispozitie o cantitate imensa de text criptat (dezavantaj);

– nu se poate restrictiona accesul utilizatorilor doar la anumite fisiere (dezavantaj).

• Caracteristici ale criptarii datelor folosind mai multe chei– este greoaie deoarece fiecare utilizator care doreste sa aiba acces

la informatia din mai multe fisiere trebuie sa cunoasca cheile cu careacestea sunt criptate (dezavantaj - deoarece trebuiesc

3.3.1 Modalităţi de criptare a datelor pentru stocare/8

TSI - Criptografie simetrică modernă/57

75

careacestea sunt criptate (dezavantaj - deoarece trebuiesc retinute un numar mare de chei);

– dezavantajul de mai sus poate fi contracarat daca se copiaza cheile de criptare într-un fisier separat care va fi la rândul sau cifrat cu o cheie care va fi cunoscuta de toti utilizatorii;

– utilizatorii au acces doar la acele fisiere la care cunosc cheia de criptare (avantaj - din punt de vedere al nivelului de securitate).

3.3.1Comparaţii dintre criptarea hard şi soft/9

• Caracteristici ale implementării hard– este extrem de avantajoasa din puntul de vedere al vitezei de

lucru

– nivelul de securitate este ridicat deoarece circuitele pot fi protejate la modificari sau se pot folosi cipuri VLSI speciale

TSI - Criptografie simetrică modernă/58

76

protejate la modificari sau se pot folosi cipuri VLSI speciale care nu permite modificari ale schemei

– din moment ce radiatia electromagnetica emisa de un circuit poate da informatii nedorite despre ceea ce se întâmpla în el, cutiile de criptare specializate pot fi ecranate

– sunt usor de instalat ele putând fi conectate fara probleme la diferitele dispozitive care se doresc a fii protejate

3.3.1Comparaţii dintre criptarea hard şi soft/10

• Caracteristici ale implementării soft� au o viteza de lucru mult mai mica decât implementarile

hard� sunt mai putin sigure deoarece un program de codare sau

decodare ce ruleaza pe un calculator nespecializat nu are nici un fel de protectie fizica

TSI - Criptografie simetrică modernă/59

77

un fel de protectie fizica� o protejare mai eficienta a unei implementari soft ar

presupune introducerea criptarii la nivelul sistemului de operare

� este avantajoasa din punctul de vedere al portabilitatii si flexibilitatii în cazul folosirii de limbaje de programare care au versiuni ce ruleaza sub diferite sisteme de operare

� utilizarea si upgrade-ul se pot face foarte usor în cazul unei astfel de implementari

3.3.1Lungimea cheilor/11

• Pentru a vedea ce lungime a cheii ar fi de dorit într-un sistem criptografic, cel care îl proiecteazå trebuie såråspundå în prealabil la câteva întrebåri cum ar fi:

TSI - Criptografie simetrică modernă/60

78

– Cât valoreazå informaÆiile care trebuie protejate?

– Cât timp trebuie så fie aceste informaÆii confidenÆiale?

– Care ar fi categoriile de persoane interesate în datele care trebuie protejate?

– De ce resurse dispun aceçti oponenÆi?

3.3.1Lungimea cheilor în sisteme simetrice/12

• Securitatea unui sistem este influenţată de:– Securitatea algoritmului (greu de testat)– Lungimea cheii (forţa brută)– Cele mai eficiente atacuri de forţă brută sunt cele hard şi depind

de:

TSI - Criptografie simetrică modernă/61

79

de:• Numărul cheilor• Viteza fiecărui test

– Atacuri soft• De 1000 ori mai lente ca cele hard• Avantaj esenţia – mult mai ieftine • Ex: www.distributed.netîn 1998a spart DES în 39 zile• Loteria chinezească• Viruşi pentru criptanaliză

3.3.2 Distributia cheilor in criptosisteme simetrice

• Numarul de chei necesar pentru N utilizatori in criptografia capata la capat este:

)1(2 −= NNC

TSI - Criptografie simetrică modernă/62

80

• In cazul criptarii legatura la legatura (nivel aplicatie) acest numar creste foarte mult

• Distributia cheilor este cea mai dificila problema a criptografiei simetrice.

22 =CN

3.3.3 Protocoale pt. comunicaţii criptografice simetrice

′ ′′

M’Criptanaliză

AM

F

D B

k′

C=E(M) Dk(C)=M

E

TSI - Criptografie simetrică modernă/63

81

Dk(C′)=M′′

HC′′′′′′′′ =Ek ′′′′(M ′′′′)

kk

(1) A şi B cad de comun acord asupra unui criptosistem simetric;(2) A şi B aleg cheia k (secretă), cea mai bună fiind cheia de unică folosinţă

(one time pad) pentru o comunicaţie(3) A trimite lui B mesajul M criptat cu cheia k:(4) B decripteazămesajul criptat primit de la A, utilizând aceeaşi cheie k:

( )MEC k=

( ) ( )( ) MMEDCD kkk ==