criptografie criptografie clasica complet
TRANSCRIPT
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
– 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/11 – DES/4
• Schema bloc corespunzătoare unei interaţii
TSI - Criptografie simetrică modernă/12
30
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 ==