Documente Academic
Documente Profesional
Documente Cultură
C E K e (M ) D K d (C ) M
M
E D R
S
Ke
Kd
K
Ke – cheie de criptare
Kd – cheie de decriptare
S – sursă
R – receptor
K – spaţiul cheilor de criptare
TPI- curs 6
•Clasificarea criptosistemelor:
cifruri bloc
n=32...128
cu chei simetrice
(cu cheie secretă)
Criptosisteme
Ke=Kd=K cifruri secvenţiale
(stream ciphers)
cu chei publice K e K d
(asimetrice) C E K (M) e
D K d ( C) M
Ke – cheie de criptare
Kd – cheie de decriptare
TPI- curs 6
•Criptosisteme cu chei simetrice
- cheile folosite la criptare şi decriptare sunt identice
Ke Kd K
- cheia K este secretă - sisteme cu cheie secretă.
- criptarea şi decriptarea se realizează extrem de simplu dacă
se cunoaşte cheia K:
C E K M
M D K C D K E K M
- în funcţie de algoritmul folosit, criptosistemele cu chei simetrice se
clasifică în:
- criptosisteme cu cifruri block (block ciphers)
- criptosisteme cu cifruri secvenţiale (stream ciphers)
TPI- curs 6
-cifrurile bloc operează pe subdiviziuni ale mesajului în clar (lungimi
tipice 32- 128) iar blocurile de intrare se procesează individual prin
operaţii elementare de substituţie şi permutare
mesaj în clar (2L biţi)
- pot opera şi pe blocuri multiple
- sunt (în general) construite
iteraţia 1
pornind o structură canonică (cifru
Feistel)
- mesaj în clar de lungime 2w iteraţia 2
- algoritmul se aplică de m ori
iterativ (tipic m=8,16)
KKi subchei (generate din K)
iteraţia m
F- defineşte modul de substituţie
funcţie de subcheia curentă
mesaj criptat (2L biţi)
TPI- curs 6
- decriptarea se face prin prelucrare inversă:
mesaj criptat (2L biţi)
iteraţia 1
iteraţia 2
iteraţia m
TPI- curs 6
- cifruri secvenţiale (stream ciphers): mesajul de la intrare este
considerat ca o succesiune continuă de simboluri iar criptarea
operează asupra mesajului în clar simbol cu simbol (tipic bit cu bit
prin operaţii de tip SAU exclusiv).
xor xor
Date Date
Signaling
Secvenţă de criptare Mesaj criptat Secvenţă de criptare
/user data
Algoritm A5 Algoritm A5
Kc Kc
Staţie Staţie de
mobilă Număr cadru Număr cadru bază
TDMA. TDMA
Staţi
TPI- curs 6
4.2 Algoritmul de criptare AES
4.2.1 Introducere
- AES – Advanced Encryption Standard
- standardizat de NIST (National Institute of Standards and
Technology -SUA)
- substituție pentru DES (Data Encryption Standard) folosit peste 30
de ani ca standard de criptare
- competiție internațională în 1997
- câștigător: cifrul Rijndael (John Daeman, Vincent Rijmen)
- operează pe blocuri de 128 de biți, operații orientate pe octet
- cheie de criptare de lungime 128,192 sau 256 de biți (doar 56 pentru
DES)
- pentru o cheie de 128 biți numărul de combinații posibile: 3.4x1038
TPI- curs 6
4.2.2 Criptare și decriptare AES
Mesaj în clar Cheie de criptare Mesaj în clar
Adunare cheie rundă Adunare cheie rundă
w[0,3]
Runda 1
Adunare cheie rundă Adunare cheie rundă
w[4,7]
Substituție octeți inv.
Runda 9
Adunare cheie rundă Adunare cheie rundă
w[36,39]
Substituție octeți Substituție octeți inv.
TPI- curs 6
Terminologie și operații elementare AES
- Stare - variabilă reprezentată ca un tablou bidimensional de 4x4
octeți (pt chei de 128 biți) ce memorează blocul de date de 128 de biți
procesat . Fiecare element al matricii e un element din GF(28)
- Cheia cifrului AES – parametru de intrare reprezentat de asemenea
folosind un format de 4x4 octeți
Exemplu
TPI- curs 6
- Rundă AES - succesiune de operații asupra unei stări folosind
subchei de rundă distincte obținute în urma unei operații de
expandare a cheii inițiale
- expandare: generare de subchei diferite de aceeași lungime (128)
- utilizarea de runde multiple cu chei distincte îmbunătățeste
proprietățile de difuzie ale cifrului
- prin expandare cei 128 de biți ai chei sunt transformați în 1408 de
biți ce intervin în operații de tip SAU-EXCLUSIV
- cheia expandată poate fi pusă sub forma:
wo w1 w2 w3 w4 w5 w6 w7... w40 w41 w42 w43 wj – 4 octeţi
cheie runda 1 cheie runda 2 cheie runda 10
- toţi paşii algoritmului sunt publici:
http://www.csrc.nist.gov/publications/fips/fips197/fips-197.pdf
TPI- curs 6
O rundă AES presupune efectuarea următoarele operaţii:
a) Substituţie octeţi
- substituţie neliniară de octeţi ce lucrează independent pe
fiecare octet din variabila stare, folosind un tabel de substituţie
(cutie-S în terminologie AES). stare intrare
95
stare ieşire
2a
Cutie S AES
TPI- curs 6
b) Rotire rânduri
a b c d Rotire stânga 0 poziţii
a b c d
e f g h Rotire stânga 1 poziţie
f g h e
i j k l Rotire stânga 2 poziţii k l i j
m p p m n o
n o Rotire stânga 3 poziţii
-asigură permutarea octeţilor pe liniile variabilei matriciale stare
-decriptarea presupune rotiri către dreapta
c) Amestec coloane
-fiecare coloană a variabilei stare este considerată un polinom de
gradul patru peste câmpul Galois GF(28)
- fiecare polinom, este înmulţit modulo x4 + 1, cu polinomul c(x)
= 3x3 + x2 + x + 2
TPI- curs 6
a( x) a3 x 3 a2 x 2 a1 x a0
a (a0 , a1 , a2 , a3 )
c( x) c3 x 3 c2 x 2 c1 x c0
b( x) a( x) c( x) b6 x 6 b5 x 5 ... b2 x 2 b1 x b0
b6 a3 c3
b5 a3 c2 a2 c3
mod( x 4 1) x i mod( x 4 1) x i mod 4
b4 a3 c1 a2 c2 a1 c3
b3 a3 c0 a2 c1 a1 c2 a0 c3
b2 a2 c0 a1 c1 a0 c2 b3 a3 c0 a2 c1 a1 c2 a0 c3
b1 a1 c0 a0 c1 b2 a2 c0 a1 c1 a0 c2 a3 c3
b1 a3 c2 a2 c3 a1 c0 a0 c1
b0 a0 b0
b0 a3 c1 a2 c2 a1 c3 a0 c0
TPI- curs 6
-operaţia poate fi pusă în termeni de multiplicare matricială
b0 c0 c3 c2 c1 a0
b c c0 c3 c 2 a1
1 1
b2 c 2 c1 c0 c3 a 2
b3 c3 c2 c1 c0 a3
TPI- curs 6
-câmpul Galois GF(28) este generat de polinomul:
p( x) x8 x 4 x 3 x 1 (100011011 binar )
D4 2 ?
D 4 2 11010100 00000010 ( x 7 x 6 x 4 x 2 )( x) mod p ( x)
x 8 x 7 x 5 x 3 mod p ( x) x 7 x 5 x 4 x 1 10110011 B3
d) Adunare cheie rundă
-operaţie simplă de SAU EXCLUSIV efectuată pe coloane cu
cheile de rundă
wi wi+1 wi+2 w
i+3
TPI- curs 6
Moduri de operare AES
-algoritmul de criptare AES poate opera în principal în 2 moduri
a) ECB - Electronic CodeBook - criptarea constă în procesarea
independentă a fiecărui bloc de 128 de biţi cu aceeaşi cheie de
criptare
M1 M2 M3 MN
128 M1 M2 MN
C1 C2 CN
Dezavantaje: mesaje în clar identice produc mesaje criptate identice;
metoda nu este sigură pentru secvenţe lungi de date. Un atacator
poate schimba de asemenea ordinea blocurilor criptate.
TPI- curs 6
Exemplu
Imagine Imagine
originală criptată ECB
128
M1 M2 M3 MN
Vector de
iniţializare
C1 C2 CN
- vector de iniţializare – asigură aleatorizarea în debutul procesului
de criptare CBC; în absenţa acestuia mesaje în clar identice ar
conduce la mesaje criptate identice
- vectorul de iniţializare trebuie transmis receptorului (de obicei în
mod EBC)
TPI- curs 6
- decriptare CBC:
C1-1 C1 C1+1
M1
Vector de
iniţializare
M1-1 M1 M1+1
TPI- curs 6
Exemplu
Imagine Imagine
originală criptată
AES
TPI- curs 6
5 Tehnici de marcare transparentă a imaginilor şi a
semnalelor
5.1 Introducere
- criptarea poate fi privită ca o soluţie pentru protecţia drepturilor de
autor
- dezavantajul major al unei astfel de abordări constă în faptul că de
îndată ce informaţia a fost decriptată aceasta poate fi copiată fără
restricţii
- tehnicile de marcare transparentă adresează această problemă prin
inserarea unei informaţii impercetibile pentru sistemul auditiv sau vizual
uman
- informaţia inserată poartă denumirea de watermark (marcaj)
- tehnicile de marcare transparentă inserează marcajul într-un semnal
gazdă de tip fişier, semnal audio, imagini statice sau secvenţe video
TPI- curs 6
- utilizarea unei tehnici de watermarking în aplicaţii reale presupune
definirea a 2 operaţii pereche- inserarea marcajului şi extragerea
marcajului- şi, suplimentar, a unei operaţii de comparare în caz de
dispută
Date gazdă Date marcate
Inserare
Marcaj
TPI- curs 6
• Caracteristicile unui sistem de marcare transparentă
- transparenţă perceptuală: marcajul inserat nu trebuie să degradeze
în mod semnificativ calitatea datelor gazdă; marcajul inserat este
numit invizibil în acest caz şi se bazează pe incapacitatea
sistemului auditiv sau vizual uman de a detecta modificările aduse
prin inserarea acestuia
- robusteţe: marcajul trebuie să reziste la modificări neintenţionate
sau intenţionate (atacuri) realizate pentru înlăturarea acestuia.
Exemple:transformări geometrice, compresie, transformări
neliniare, scalare, etc.
- capacitatea marcajului: exprimă cantitatea de informaţie cuprinsă
în marcaj raportată la cea inclusă în datele gazdă.
TPI- curs 6
- modul de detecţie: detectarea marcajului la recepţie poate fi făcută
în prezenţa originalului sau în absenţa acestuia
• Aplicaţii tipice
- protecţia dreptului de autor: autorul introduce un marcaj cu
informaţii legate de dreptul său de proprietate
- protejarea la copiere: informaţie de marcaj inserată pentru
permiterea sau interzicerea dreptului de copiere
- amprentare : inserarea unor informaţii specifice în fiecare copie a
datelor originale
TPI- curs 6