Documente Academic
Documente Profesional
Documente Cultură
PRELUCRARE A INFORMATIEI
CRIPTARE DE IMAGINI
IN TIMP REAL
Indrumator: Student:
Conf. Dr. Ing.Terebes Romulus Cabulea Cosmin
Gr. 2141/2
Tehnici de criptare a informaţiei
CRIPTARE DE IMAGINI
Unde avem :
S – sursa
R – receptor
K – spatiul cheilor de criptare
E – algoritm de criptare
D – algoritm de decriptare
Ke – cheie de criptare
Kd – cheie de decriptare
Clasificarea criptosistemelor:
--cu chei simetrice (cu cheie secretă) Ke=Kd=K - cifruri bloc n=32...128
- cifruri secvenţiale (stream ciphers)
Cifrurile blo coperează 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,pot opera şi pe blocuri multiple si sunt (în general) construite pornind o structură
canonică (cifruFeistel)
Criptare
TERMENI
Bloc – secvenţă de biţi care conţine intrarea, ieşirea, matricea de stare şi cheia ciclică.
Blocurile pot fi interpretate de asemenea ca şi vectori de biţi.
Criptare – o serie de transformări care convertesc datele necriptate în date criptate folosind o
cheie
Cheia de criptare – cheie criptografică, folosită de algoritmul de extindere a cheii pentru a
genera cheia ciclică. Poate fi privită ca şi o matrice nepătratică de octeţi, având 4
rânduri şi Nk coloane.
Date criptate – datele de ieşire ale operaţiei de criptare sau datele de intrare ale decriptării
Extinderea cheii – rutină care generează un set de chei ciclice din cheile de criptare
Date necriptate – datele de intrare ale criptării sau datele de ieşire ale decriptării
Cheia ciclică – valori derivate din cheia de criptare, folosind rutina de extindere a cheii; este
aplicată apoi matricii de stare în cadrul criptării sau decriptării
Matrice de stare – rezultat intermediar al criptării care se poate reprezenta ca şi o matrice
nepătratică de octeţi cu 4 linii şi Nb coloane
Matrice de substituţie (S-Box) – tabel neliniar de substituţie utilizat în substituţiile octeţilor şi
cadrul rutinei de extindere a cheii pentru substituirea fiecărui octet
Algoritmul AES se bazeaza pe permutari si substitutii.
Permutarile sunt interschimbari ale pozitiilor bitilor dintr-un bloc criptat, iar substitutiile
inlocuiesc un caracter din mesajul in clar cu un alt caracter in mesajul criptat. Operatia de
substitutie introduce confuzie iar cea de permutare induce difuzie.
Algoritmul AES utilizează o funcţie ciclică atât pentru criptare cât şi pentru
decriptare, care execută patru transformări diferite pe octet:
1) octeţii se substituie folosind un tabel predefinit de substituţie,
2) liniile din matricea de stare sunt deplasate folosindu-se diferite valori de offset,
3) datele cuprinse în fiecare coloană a matricii de stare sunt amestecate între ele
4) adăugarea cheii ciclice la matricea de stare.
Funcţia SubBytes()-substitutie octeti
Această funcţie execută o transformare neliniară prin care sunt substituiţi octeţii din
matricea de stare prin utilizarea tabelului de substituţie S-box. Acest tabel este inversabil şi
este construit prin compunerea a două transformări pe biţi:
1) se ia inversul faţă de înmulţire în GF(28), elementul {00}fiind de sine stătător,
2) se aplică transformarea peste GF(2), obţinându-se noul element
Fiecare octet este calculat astfel:
Stare intrare: Stare iesire:
95 2
a
Rezultatul acestui pas este ca fiecare coloana din tabloul stare rezultat este compusa din
octeti de pe fiecare coloana a starii initiale.
Criptarea presupune rotiri catre stanga iar decriptarea presupune rotiri catre dreapta.
Octetii din ultimele 3 randuri din variabila stare sunt permutati ciclic cu un anumit
numar de octeti (offset). Primul rand nu este permutat, r=0.
Fiecare coloana a tabloului de stare este considerata un polinom de gradul patru peste
campul Galois. Fiecare coloana, tratata ca un polinom, este inmultita modulo x4 + 1 cu
polinomul a(x) = 3x3 + x2 + x + 2. In acest pas, fiecare cloana este inmultita cu un polinom
notat mai jos cu c(x).
Se efectueaza o operatie de SAU EXCLUSIV pe biti intre octetii starii si cei ai cheii
de runda (o cheie care este unica pentru fiecare iterartie, chie calculata pe baza cheii secrete).
CBC-Cipher BlockChainingMode –fiecare bloc criptat criptat cu aceeaşi cheie; metoda
presupune suplimentar o operaţie SAU EXCLUSIV între blocul criptat curent şi mesajul în
clar următor.
Dezavantaj CBC:
-erorile aparute in procesul de transmisie intr-un bloc criptat afecteaza si blocurile
urmatoare.