Documente Academic
Documente Profesional
Documente Cultură
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 Z
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Celelalte caractere ale lui A vor fi identificate cu numerele următoare (26, 27, ..., N − 1).
1 Criptosistemul Cezar
Cheia de criptare: k ∈ ZN
Funcţia de criptare: E : ZN → ZN , E (m) = m + k
Cheia de decriptare: k 0 = −k ∈ ZN
Funcţia de decriptare: D : ZN → ZN , D (c) = c + k 0
Exerciţiul 1 Criptaţi următorul text, folosind criptosistemul lui Cezar cu cheia K pe un alfabet cu 27
de caractere (A–Z ):
IN T RODU CERE IN CRIP T OGRAF IE
I N T R O D U C E R E I N C R I P T O G R A F I E
8 13 19 17 14 3 20 2 4 17 4 26 8 13 26 2 17 8 15 19 14 6 17 0 5 8 4
+10 mod 27 18 23 2 0 24 13 3 12 14 0 14 9 18 23 9 12 0 18 25 2 24 16 0 10 15 18 14
S X C A Y N D M 0 A 0 J S X J M A S Z C Y Q A K P S O
Exerciţiul 2 Decriptaţi următorul text cifrat obţinut folosind criptosistemul lui Cezar:
HAHJBSCHHCLHSV JHGP
Alfabetul folosit are 26 de caractere (A − Z), mesajul in clar este scris in limba română, iar caracterul
cel mai frecvent in limba română este A.
Soluţie. Cel mai frecvent caracter ı̂n mesajul criptat este H. Deducem că H este decriptat ı̂n A. Avem
atunci:
D
H 7→ A =⇒ D (7) = 0 =⇒ 7 + k 0 = 0 =⇒ k 0 = −7 = 19
(calculele sunt ı̂n Z26 ). Decriptarea va fi:
H A H J B S C H H C L H S V J H G P
7 0 7 9 1 18 2 7 7 2 11 7 18 21 9 7 6 15
+19 mod 26 0 19 0 2 20 11 21 0 0 21 4 0 11 14 2 0 25 8
A T A C U L V A A V E A L O C A Z I
2 Criptosisteme afine
Cheia de criptare: a, b ∈ ZN , a inversabil
Funcţia de criptare: E : ZN → ZN , E (m) = am + b
Cheia de decriptare: a0 = a−1 ∈ ZN , b0 = −a1 b ∈ ZN
Funcţia de decriptare: D : ZN → ZN , D (c) = a0 m + b0
1
Exerciţiul 3 Criptaţi următorul text, folosind un criptosistem afin (3, 2) pe blocuri de un caracter. Se
foloseşte un alfabet cu 26 de caractere (A–Z):
CRIP T OGRAF IE
Soluţie. Avem:
C R I P T O G R A F I E
m 2 17 8 15 19 14 6 17 0 5 8 4
3m + 2 mod 26 8 1 0 18 7 18 20 1 2 R 0 14
I B A V H S U B C R A O
Exerciţiul 4 Determinaţi cheia de descifrare pentru un criptosistem afin dacă numărul caracterelor este
N = 28 (A − Z ?) şi se cunoaşte că , A şi ? sunt criptate ı̂n B, ? respectiv O.
Soluţie. Fie D (c) = a0 c + b0 funcţia de decriptare (unde a0 , b0 ∈ Z28 , a0 inversabil). Din ipoteză
(caracterele B, ?, şi O sunt decriptate ı̂n , A şi ?) avem
a0 + b0 = 26
D (1) = 26
D (27) = 0 ⇐⇒ 27a0 + b0 = 0
D (14) = 27 14a0 + b0 = 27
Scăzând a treia ecuaţie din a doua obţinem 13a0 = −27 = 1, deci a0 = 13−1 mod 28 = 13 (din algoritmul
lui Euclid). Înlocuind ı̂n a doua ecuaţie găsim
0 = 27 · 13 + b0 = (−1) · 13 + b0
deci b0 = 13. Deci a0 = b0 = 13. Deoarece, pentru determinarea lui a0 şi b0 am folosit doar ultimele două
relaţii, trebuie să verificăm că a0 , b0 satisfac şi prima ecuaţie: a0 + b0 = 13 + 13 = 26. Deci, cheia de
decriptare este a0 = b0 = 13.
Obs. Alternativ, dacă scădeam a prima ecuaţie din a doua, obţineam 26a0 = −26 = 2. Nu putem
simplifica această prin 2, fiindcă 2 nu e inversabil ı̂n Z28 . Ecuaţia aceasta se rezolvă astfel:
Dacă a0 = 13, ı̂nlocuind ı̂n prima ecuaţie găsim b0 = 13, şi obţineam soluţia găsită. Dacă a0 = 27 = −1,
găseam din prima ecuaţie b0 = −1, şi când ı̂nlocuiam ı̂n a treia ecuaţie obţineam 14 (−1) + (−1) = −1,
imposibil.
GABODQN ABEBOZZLBZON
Pentru criptare s-a folosit un criptosistem afin pe blocuri de un caracter, cu un alfabet cu 26 de caractere
(A–Z).
(a) Se ştie că A este criptat in B, iar B este criptat in E.
(b) Se ştie că A este criptat in B, iar E este criptat in N .
Soluţie. Vom rezolva (b), celălalt punct tratându-se asemănător. Fie a0 , b0 ∈ Z26 , a0 inversabil, cheia de
decriptare. Deoarece B e decriptat ı̂n A şi N e decriptat ı̂n E, avem:
a0 + b0 = 0
0
= −a0
D (1) =0 b
⇐⇒ ⇐⇒
D (13) = 4 13a0 + b0 = 4 12a0 = 4
2
Dar 6 este inversabil ı̂n Z13 , deci
deci a0 ∈ {9, 9 + 13 = 22}. Dar a0 este inversabil ı̂n Z26 , de unde găsim a0 = 9 (cealaltă valoare, 22, nu
este inversabilă). Aşadar cheia de decriptare este a0 = 9, b0 = −9 = 17, iar mesajul descriptat va fi:
G A B O D Q N A B E B O Z Z L B Z O N
c 6 0 1 14 3 16 13 0 1 4 1 14 25 25 11 1 25 14 13
9c + 17 mod 26 19 17 0 13 18 5 4 17 0 1 0 13 8 8 12 0 8 13 4
T R A N S F E R A B A N I I M A I N E
Exerciţiul 6 Descifraţi mesajul N DXBHO ştiind că s-a realizat o criptare afină pe digrafi, cu un alfabet
cu 27 de caractere (A − Z ). De asemenea, se cunoaşte că prin criptarea digrafilor in clar E S T
se obţin digrafii ZA IA IW .
Soluţie. Fie a0 , b0 ∈ Z272 , (a0 , 27) = 1, cheia de decriptare. Mai ı̂ntâi determinăm numerele din Z272 ce
corespund digrafilor daţi:
216a0 + b0 = 512
238a0 + b0 = 721
Dacă scădem din prima ecuaţie, a doua obţinem 459a0 = −378, ecuaţie ce are mai multe soluţii fiindcă
459 nu e inversabil ı̂n Z729 (şi 729 şi 459 se divid cu 9). Pentru a evita această complicaţie scădem din a
treia ecuaţie pe a doua şi obţinem
3
4 Criptosistemul Vigenère
Mesajul este ı̂mpărţit ı̂n blocuri de lungime r ≥ 2. Fiecare bloc este văzut ca un vector linie din ZrN .
Exerciţiul 7 Criptaţi următorul text, folosind criptosistemul lui Vigenére cu cheia CHEIE pe un alfabet
cu 28 de caractere (A − Z ?):
Soluţie. Cheia ”CHEIE” corespunde vectorului k = (2, 7, 4, 8, 4). Criptarea primelor trei cuvinte este:
C E A L G O R I T M S T A
m 2 4 26 0 11 6 14 17 8 19 12 26 18 19 0
k 2 7 4 8 4 2 7 4 8 4 2 7 4 8 4
m+k 4 11 2 8 15 8 21 21 16 23 14 5 22 27 4
E L C I P I V V Q X O F W ? E
Observaţie. O matrice
a b
A= ∈ M2 (ZN )
c d
este inversabilă dacă şi numai dacă det A = ad − bc este inversabil ı̂n ZN (nu doar diferit de 0). În acest
caz, inversa este:
−1 d −b
A−1 = (ad − bc)
−c a
F W M DIQ
4
m1 m1
Soluţie. (a) Funcţia de criptare este E =A mod 26. Avem:
m2 m2
13 E 2 3 13 16
NO → 7 → mod 26 = → QV
14 7 8 14 21
0 E 2 3 0 13
AN → 7→ mod 26 = → NA
13 7 8 13 0
18 E 2 3 18 24
SW → 7→ mod 26 = → YQ
22 7 8 22 16
4 E 2 3 4 7
ER → 7→ mod 26 = → HI
17 7 8 17 8
Putem scrie ı̂ntr-un mod mai restrâns calculele de mai sus astfel
N A S E 13 0 18 4 2 3 13 0 18 4 16 13 24 7 Q N Y H
→ → = →
O N W R 14 13 22 17 7 8 14 13 22 17 21 0 16 8 V A Q I
−1 −1
(b) Avem det A = 2 · 8 − 3 · 7 = −5, deci (det A) = (−5) mod 26 = 5. Matricea de decriptare este
atunci: −1
2 3 8 −3 40 −15 14 11
A−1 = =5 = =
7 8 −7 2 −35 10 17 10
şi avem
F M I 5 12 8 14 11 5 12 8 0 19 2 A T C
→ → mod 26 = →
W D Q 22 3 16 17 10 22 3 16 19 0 10 T A K
deci mesajul decriptat este AT T ACK.
Exerciţiul 9 Presupunem că ştim faptul că adversarul nostru foloseşte pentru criptarea mesajelor un
criptosistem ı̂n care blocurile mesajelor au două caractere, alfabetul are 29 de caractere (A − Z ?!) şi
criptarea se face folosind o matrice de criptare. Decriptaţi textul
GF P Y JP X?U Y XST LADP LW
ştiind că ultimele cinci caractere sunt semnătura expeditorului: 0 KARLA0 .
Soluţie. Din ipoteză ştim că ultimele două blocuri 0 DP 0 şi 0 LW 0 sunt decriptate ı̂n 0 AR0 şi 0 LA0 . Notând
prin A0 matricea de decriptare, obţinem
0 3 0
A =
(
D
DP → AR 15 17 0 3 11 0 11
D =⇒ =⇒ A =
LW → LA 11 11 15 22 17 0
A0 =
22 0
3 11
Matricea are determinantul 3 · 22 − 11 · 15 = 17, ce este inversabil ı̂n Z29 , deci
15 22
−1
3 11 −1 22 −11 22 −11 3 13
= 17 = 12 =
15 22 −15 3 −15 3 23 7
(am folosit 17−1 mod 29 = 12), de unde găsim
−1
0 0 11 3 11 0 11 3 13 21 19
A = = =
17 0 15 22 17 0 23 7 22 18
Decriptăm acum mesajul:
G P J ? Y S L D L 6 15 9 26 27 24 18 11 3 11
→
F Y P X U X T A P W 5 24 15 23 20 23 19 0 15 22
21 19 6 15 9 26 27 24 18 11 3 11 18 17 10 26 19 13 14 28 0 11
=
22 18 5 24 15 23 20 23 19 0 15 22 19 8 4 0 26 14 13 10 17 0
deci mesajul decriptat este
ST RIKE AT N OON !KARLA
5
Exerciţiul 10 Fie matricile:
3 11 10 15
A= , B=
4 15 5 9
Pentru a micşora şansele de succes ale unui eventual atac, decidem să criptăm fiecare digraf al unui text
ı̂n clar astfel:
(i) utilizăm un alfabet de 26 de caractere (A − Z) şi matricea de criptare A (se lucrează modulo 26);
(ii) digrafului obţinut i se aplică matricea de criptare B lucrând modulo 29. Textul cifrat va fi scris ı̂n
alfabetul de 29 de caractere de la exerciţiul anterior.
(a) Criptaţi textul SEN D;
(b) Decriptaţi textul ZM OY .
Dacă la criptare, foloseam mai ı̂ntâi A şi apoi B, la decriptare, folosim mai ı̂ntâi B −1 mod 29 şi apoi
A−1 mod 26:
Z O 25 14 B −1 · 18 28 25 14 3 25
→ −→ mod 29 =
M Y 12 24 19 20 12 24 19 21
3 25 A−1 · 15 15 3 25 18 14 S O
−→ mod 26 = →
19 21 22 3 19 21 19 15 T P
6 Alte exerciţii
Exerciţiul 11 Să presupunem că o matrice neinversabilă A ∈ M2 (ZN ) este folosită pentru o criptare
afină pe digrafi. Demonstraţi
căorice mesaj criptat corespunde la cel puţin două mesaje ı̂n clar. Exemplificaţi
2 1
ı̂n cazul matricei A = ∈ M2 (Z30 ). Determinaţi cel puţin două mesaje ı̂n clar care corespund
1 3
mesajului cifrat 0 GD0 . Alfabetul folosit conţine 30 de litere (A − Z ?!).
6
Soluţie. Fie TA : Z2N → Z2N , TA (x) = Ax. Acesta este un morfism de ZN -module libere, ce nu este
izomorfism pentru că A este neinversabilă ı̂n ZN .
Presupunem că TA este injectiv. Cum Z2N este o mulţime finită, va rezulta că TA este şi surjectiv,
deci că TA este izomorfism, contradicţie. Aşadar, TA nu este injectiv, de unde deducem că ker TA 6= {0},
adică există x 6= 0 ı̂n Z2N astfel ı̂ncât Ax = 0.
Dacă c∈Z2N este un mesaj criptat ce corespunde unui mesaj clar m (adică Am = c), atunci m + x va
satisface:
m + x 6= m
A (m + x) = Am + Ax = c + 0 = c
de unde, calculându-l şi pe x, obţinem (x, y) ∈ {(3, 0) , (15, 6) , (27, 12) , (9, 18) , (21, 24)}. Mesajele ı̂n clar
corespunzătoare vor fi: DA, P G, ?M , IS, V Y .
Exerciţiul 12 Pentru un criptosistem afin pe digrafi, cu un alfabet cu 30 de litere, se cunosc mesajul ı̂n
clar şi mesajul cifrat:
3 3 17 8
M= ,C =
2 5 8 29
Determinaţi matriceea de criptare A ∈ M2 (Z30 ).
Soluţie. Trebuie să rezolvăm ecuaţia AM = C (ı̂n necunoscuta A). Observăm că M nu este inversabilă
30
deoarece det M = 9 e neinversabil ı̂n Z30 . Dar det M este inversabil modulo (9,30) = 10. Aşa că vom
reduce ecuaţia noastră mod 10 şi obţinem
−1
3 3 17 8 7 8 3 3
A = mod 10 =⇒ A mod 10 = mod 10
2 5 8 29 8 9 2 5
Dar
−1
3 3 5 −3 5 −3 5 3
mod 10 = 9−1 mod 10 = − mod 10 =
2 5 −2 3 −2 3 2 7
deci
7 8 5 3 1 7
A mod 10 = mod 10 =
8 9 2 7 8 7
Rezultă că
1 7
A= + 10A1
8 7
unde A1 ∈ M2 (Z3 ) (coeficienţii lui A1 sunt câturile coeficienţilor lui A la ı̂mpărţirea cu 10. Cum aceştia
sunt < 30, câturile pot lua doar valorile 0, 1 sau 2). Înlocuind ı̂n ecuaţia iniţială găsim:
1 7 3 3 3 3 17 8
+ 10A1 =
8 7 2 5 2 5 8 29
7
deci ecuaţia devine
3 3
10A1 = O2 mod 30
2 5
De aici rezultă că
3 3 0 0
A1 = O2 mod 3 ⇐⇒ A1 = O2 mod 3
2 5 2 1
a1 b1
Scriind A1 = ∈ M2 (Z3 ) şi efectuând calculelel obţinem b1 = d1 = 0 şi a1 , c1 ∈ Z3 arbitrari.
c1 d1
În concluzie, soluţiile ecuaţiei AM = C sunt:
1 7 a1 0 1 + 10a1 7
A= + 10 =
8 7 c1 0 8 + 10c1 7
cu a1 , c1 ∈ Z3 (sunt 9 soluţii)
Dar A este o matrice de criptare, deci trebuie să mai impunem condiţia ca det A să fie inversabil ı̂n
Z30 . Avem:
Dând valorile a1 = 0, 1, 2, respectiv c1 = 0, 1, 2, obţinem că det A este inversabil doar pentru