Documente Academic
Documente Profesional
Documente Cultură
informatice
Ana-Maria Ghiran
anamaria.ghiran@econ.ubbcluj.ro
Introducere în criptografie
1. Terminologie
2. Metode de criptare
- Substituția
- Substituția monoalfabetică
- Transpoziția
- Substituția polialfabetică
- One time pad
3. Tipuri de cifruri
- Cifruri bloc
- Cifruri stream
Terminologie
• Criptografie=“scriere secretă”
Criptologie
• Criptanaliză=descifrarea cifrurilor
• Regulă în criptografie: folosirea unor algoritmi testaţi (cantitatea de efort necesară pentru a inventa, testa,
implementa o metodă nouă a făcut să fie nepractică păstrarea secretă a algoritmului)
• Principiul lui Kerckhoff: algoritmii de criptare/decriptare sunt publici doar cheile sunt secrete -> lungimea
cheii reprezintă cel mai important aspect
Aplicații ale criptografiei
• Securizarea comunicației, a datelor
• Semnătura digitală (autentificare plus garantare integritate)
• Comunicare anonimă (mixnet – comunicare criptată prin mai multe
servere proxy)
• Monede digitale (anonime și nereplicabile)
• Vot electronic (determinare rezultate vot fara a expune alegerea de
vot a unui anume alegator)
• Licitatii electronice
Metode de criptare
Substituţie: foloseşte o anumită schemă de substituire a caracterelor folosind un
algoritm ce e cunoscut de emiţător şi destinatar;
ex: cifrul lui Cezar - deplasare 3 litere
A-> D
B->E ....
c=E(m)=(m+3) mod 26,
m=D(c)=(c-3) mod 26
Dezavantaj: poate fi uşor descifrat cu atacuri de tip brute-force,
sau analiza frecvenţei
Atacurile de tip brute-force
• căutare completă a cheii sau verificarea sistematică a tuturor cheilor
posibile: de aici cu cât avem o cheie mai mare va creşte exponenţial și
spaţiul de căutare
• Ex: spațiul de căutare pentru o cheie ce folosește 26 litere ar fi 26!
• Numărul de asocieri posibile pentru o literă din textul in clar într-o
literă criptată ar fi 2k !
k – numărul de biți folosiți pentru a reprezenta o literă
Obs: blocurile de biti folosite nu sunt rezervate doar pentru o literă =>
în general vom spune că spațiul cheii, se va determina la fel ca cel
pentru mesaj
Analiza frecvenţei
1) Analiza frecvenţei literelor
2) Analiza frecvenţelor pentru secvenţe de 2 litere în textul cifrat, a celor de 3
ş.a.m.d
• Datorită naturii repetitive a cheii există posibilitatea ca grupuri de litere din textul în clar
să fie codate cu aceeaşi cheie, rezultând acelaşi text cifrat.
• Pe acest considerent s-a bazat Kasiski (în 1863) care a formulat o metodă de
determinare a lungimii cheii folosite în cifrul Vigenere
• Cunoscând lungimea cheii, textul criptat poate fi rescris pe mai multe coloane, fiecare
coloană corespunzând unei litere din cheie.
• Kerckhoff este cel care ulterior a propus folosirea analizei frecvenţei literelor pe fiecare
coloană pentru a determina care sunt literele cheii : cea mai des folosită literă din set va
fi criptarea literei „a” (cea mai des folosită literă în română)
Metode de criptare A R S O
C R S
B V
H
. E . V R.
. I . . V
• Maşini cu rotor: Y E O . .
Z S O .
Hebern Machine –
1 singur rotor (1870-1943)
- One-time pads: cifrul Vernam cheia trebuie să fie ca lungime egală cu mesajul ce
trebuie criptat, fiind folosită o singură dată
C=Ek(m)= k xor m
Cifruri Block: folosesc în general o dimensiune Cifruri Stream: realizează criptarea la un flux
fixă (de 128 de biţi) a blocului de criptare; continuu de informaţii, precum transmisii
video sau audio
Moduri de operare pentru cifrurile bloc: - se folosesc operaţii XOR ce pot fi realizate
-Electronic codebook (ECB) foarte rapid cu o cheie generată continuu
-Cipher-block chaining (CBC) (keystream) în mod cât mai aleator pornind
-Cipher feedback (CFB) de la o valoare iniţială; această valoare
-Output feedback (OFB) iniţială este folosită şi de către receptor ca şi
-Counter cheie pentru decriptare
Cifruri bloc
• Cifrul foloseşte o asociere unu la unu, fiecărui bloc de text clar de k biţi
corespunzându-i un sigur bloc de text cifrat de k biţi.
• Asocierea este dată de cheie: dacă atât emiţătorul cât şi receptorul cunosc
asocierea (cheia), aceştia pot cripta şi decripta mesajele trimise