Sunteți pe pagina 1din 13

Prelegerea 4

Sisteme de criptare uide


4.1 Sisteme sincronizabile si auto-sincronizabile

In sistemele de criptare prezentate pana acum, elementele succesive ale textului clar erau
criptate folosind aceeasi cheie K. Deci, daca
x = x
1
x
2
x
3
. . .
este textul clar, textul criptat este
y = y
1
y
2
y
3
. . . = e
K
(x
1
)e
K
(x
2
)e
K
(x
3
) . . .
Sistemele de criptare de acest tip se numesc sisteme de criptare bloc (block cyphers).
Alta maniera utilizata este aceea a sistemelor de criptare uide (stream cyphers).
Denit ia 4.1 Fie /= (T, (, /, c, T) un sistem de criptare. O secvent a de simboluri
k
1
k
2
k
3
. . . /
+
se numeste cheie uida.
Denit ia 4.2 /= (T, (, /, c, T) este un sistem uid daca cripteaza un text clar
x = x
1
x
2
x
3
. . .
n
y = y
1
y
2
y
3
. . . = e
k
1
(x
1
)e
k
2
(x
2
)e
k
3
(x
3
) . . .
unde
k = k
1
k
2
k
3
. . .
este o cheie uida din /
+
.
Problema principala este aceea de a genera o astfel de cheie de criptare (teoretic innit).
Aceasta se poate realiza e aleator, e pe baza unui algoritm care pleaca de la o secvent a
mica de chei de criptare. Un astfel de algoritm se numeste generator de chei uide.
Mai multe detalii vor prezentate n cadrul prelegerii dedicate generatorilor de numere
pseudo-aleatoare.
1
2 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
Exemplul 4.1 (sistemul de criptare Vernam):

In acest sistem x
i
, k
i
, y
i
0, 1. Criptarea se realizeaza conform formulei
y
i
= x
i
k
i
, (i 1)
Daca cheia uida este aleasa aleator si nu mai este folosita ulterior, sistemul de
criptare Vernam se numeste one - time pad.
Un sistem de criptare one-time pad este teoretic imposibil de spart.
1

Intr-adevar,
ind dat un text criptat cu un astfel de sistem, Oscar nu are nici o informat ie privind
cheia uid a sau textul clar. Dicultatea consta nsa atat n lungimea cheii (egala cu cea
a textului clar), cat si n modalitatea de transmitere a ei ntre Alice si Bob.
Pentru sistemul Vernam exista o modalitate de atac cunoscuta sub numele de crip-
tanaliza diferent iala (prezentata mai tarziu, n cadrul sistemului de criptare DES).
Anume:
Daca y
1
y
2
. . . y
n
si y

1
y

2
. . . y

n
sunt doua texte criptate cu aceiasi chee uida k
1
k
2
. . . k
n
,
atunci
y
i
= x
i
k
i
, y

i
= x

i
k
i
(1 i n)
deci y
i
y

i
== x
i
x

i
, si cheia nu mai este necesara, ci doar informat ia privind lungimea
sa; redundant a ultimei relat ii va permite criptanaliza.
Sistemele de criptare uide sunt clasicate n sisteme sincrone si auto-sincronizabile.
Denit ia 4.3 Un sistem de criptare uid sincron este o structura (T, (, /, L, c, T),
unde:
T, (, / sunt mult imi nite nevide ale caror elemente se numesc texte clare, texte
criptate si respectiv chei;
L este o mult ime nita nevida numita alfabet sir de chei;
g : / L
+
este un generator de chei uide: pentru
k /, g(k) = k
1
k
2
k
3
. . . L
+
este o cheie uida (teoretic innita);
z L exista o regula de criptare e
z
c si o regula de decriptare d
z
T astfel ca
x T, d
k
(e
k
(x)) = x
Exemplul 4.2 Sistemul de criptare Vigenere poate denit ca un sistem de criptare
uid sincron. Fie m lungimea cuvantului cheie din sistemul Vigenere. Denim
1

In anii

90 comunicarea ntre Moscova si Washington era securizata n acest mod, transportul cheii
de criptare ind asigurat de curieri.
4.1. SISTEME SINCRONIZABILE SI AUTO-SINCRONIZABILE 3
T = ( = L =Z
26
, / =(Z
26
)
m
,
e
z
(x) = x +z (mod 26), d
z
(y) = y z (mod 26)
Cheia z
1
z
2
z
3
. . . este denita
z
i
=

k
i
daca 1 i m
z
im
daca i m+ 1
Ea va genera din cheia xa K = (k
1
, k
2
, . . . , k
m
), cheia uida k
1
k
2
. . . k
m
k
1
k
2
. . . k
m
k
1
k
2
. . .
Procesul de criptare cu un sistem uid sincron poate reprezentat ca un automat
descris de relat iile
q
i+1
= (q
i
, k), z
i
= g(q
i
, k), y
i
= h(z
i
, x
i
)
unde q
0
este starea init iala care poate determinata din cheia k, este funct ia de
tranzit ie a starilor, g este funct ia care produce cheia uida z
i
, iar h este funct ia de iesire
care produce textul criptat y
i
pe baza textului clar x
i
si a cheii uide z
i
.

q
i
-
666
- -
6
6
-
?

g
h k
q
i+1
z
i
x
i
y
i

q
i
-
666
- -
6
6
-
?

g
h
1
k
q
i+1
z
i
y
i
x
i
(a) Criptare (b) Decriptare
Observat ia 4.1
Un sistem de criptare bloc poate privit ca un caz particular de sistem de criptare
uid, n care i 1, z
i
= K.
(sincronizare):

In sistemele de criptare uide sincrone, Alice si Bob trebuie sa-si
sincronizeze cheia uida pentru a putea obt ine o criptare/decriptare corecta. Daca n
timpul transmisiei sunt inserat i sau eliminat i bit i n textul criptat, atunci decriptarea
esueaza si ea poate reluata numai pe baza unor tehnici de resincronizare (cum ar
de exemplu reinit ializarea sau plasarea unor marcatori speciali la intervale regulate
n textul transmis).
Modicarea unui bit din textul criptat (faa a se elimina sau adauga nimic) nu va
afecta decriptarea altor caractere (nepropagarea erorii).
4 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
Un adversar activ care elimina, insereaza sau retrimite componente ale mesajului
criptat, va provoca desincronizari si va deci detectat la recept ie. De asemenea, el
poate face modicari n textul criptat si sa observe cum vor afecta ele textul clar.
Deci un text criptat cu un sistem uid sincron necesita meca-nisme separate de
autenticare si de garantare a integritat ii datelor.
Denit ia 4.4 Un sistem aditiv uid binar de criptare este un sistem uid sincron n care
T = ( = L =Z
2
iar h este funct ia (XOR).
Un astfel de sistem este reprezentat mai jos:
Generator
chei uide

- -
?
-
k
z
i
x
i
y
i
Generator
chei uide

- -
?
-
k
z
i
y
i
x
i
(a) Criptare (b) Decriptare
Denit ia 4.5 Un sistem de criptare uid este auto-sincronizabil (sau asincron) daca
funct ia de generare a cheii uide depinde de un numar xat de caractere criptate anterior.
Deci comportamentul unui astfel de sistem poate descris de ecuat iile
q
i
= (y
it
, y
it+1
, . . . , y
i1
), z
i
= g(q
i
, k), y
i
= h(z
i
, x
i
)
unde q
0
= (y
t
, y
t+1
, . . . , y
1
) este starea init iala (cunoscuta), k este cheia, g este funct ia
de generare a cheii uide, iar h este functia de iesire care cripteaza textul clar x
i
. Cele
mai cunoscute sisteme auto-sincronizabile sunt registrii liniari cu feedback, utilizat i la
generarea secvent elor de numere pseudo-aleatoare (n criptograe) si la generarea codurilor
ciclice (n teoria codurilor).
Exemplul 4.3 (Criptare cu auto-cheie)
2
:
Fie T = ( = L =Z
26
. Se deneste cheia uida astfel:
z
1
= K, z
i
= y
i1
, (i 2)
Pentru un element oarecare al cheii z Z
26
, se deneste
e
z
(x) = x +z (mod 26)
d
z
(y) = y z (mod 26)
Sa consideram K = 13 si sa criptam textul clar BUCURESTI.
2
Se pare ca sistemul este atribuit lui Vigenere.
4.1. SISTEME SINCRONIZABILE SI AUTO-SINCRONIZABILE 5
Transformat n secvent a numerica vom avea
(x
1
, x
2
, x
3
, x
4
, x
5
, x
6
, x
7
, x
8
, x
9
) = (1, 20, 2, 20, 17, 4, 18, 19, 8)

In faza de criptare, vom calcula pe rand:


y
1
= e
13
(x
1
) = 1 + 13 (mod 26) = 14; y
2
= e
14
(x
2
) = 20 + 14 (mod 26) = 8;
y
3
= e
8
(x
3
) = 2 + 8 (mod 26) = 10; y
4
= e
10
(x
4
) = 20 + 10 (mod 26) = 4;
y
5
= e
4
(x
5
) = 17 + 4 (mod 26) = 21; y
6
= e
21
(x
6
) = 4 + 21 (mod 26) = 25;
y
7
= e
25
(x
7
) = 18 + 25 (mod 26) = 17; y
8
= e
17
(x
8
) = 19 + 17 (mod 26) = 10;
y
9
= e
10
(x
9
) = 8 + 10 (mod 26) = 18;
Deci textul criptat este (14, 8, 10, 4, 21, 25, 17, 10, 18) sau n litere: OIKEV ZRKS.
Pentru decriptare, vom avea:
x
1
= d
13
(y
1
) = 14 13 (mod 26) = 1; x
2
= d
14
(y
2
) = 8 14 (mod 26) = 20; s.a.m.d.
Se observa ca textul decriptat poate obt inut de oricine, aproape n totalitate, fara a
cunoaste nici o cheie (aceasta ind necesara doar pentru decriptarea primului caracter).
Deci gradul sau de securitate este nul.
Ceva mai dicil este sistemul n care generarea cheii uide se realizeaza cu ecuat ia
z
i
= x
i1
(i 2).

In acest caz, BUCURESTI se cripteaza n OV WWLV WLB (pentru K = 13).


Nici acest sistem de criptare cu auto-cheie nu este sigur, deoarece evident sunt
posibile doar 26 chei.
Proprietat i:
1. Auto-sincronizare: Deoarece funct ia de decriptare h
1
depinde numai de un numar
xat de caractere criptate anterior, desincronizarea rezultata eventual prin in-
serarea sau stergerea de caractere criptate se poate evita. Astfel de sisteme de
criptare pot restabili proprietatea de sincronizare afectand doar un numar nit de
caractere din textul clar.
2. Propagarea limitata a erorii: Daca starea unui sistem uid auto-sincronizabil de-
pinde de t caractere anterioare, atunci modicarea (eventual stergerea sau inser-
area) unui caracter din textul criptat poate duce la decriptarea incorecta a maxim
t caractere; dupa aceea decriptarea redevine corecta.
3. Rasp andirea textelor clare: Deoarece ecare caracter din textul clar inuent eaza
ntregul text criptat care urmeaza, eventualele proprietat i statistice ale textului clar
sunt dispersate prin textul criptat. Deci, din acest punct de vedere, sistemele de
criptare auto-sincronizabile sunt mai rezistente decat cele sincronizabile la atacurile
bazate pe redondant a textului clar.
4. Rezistent a la criptanaliza activa: Din proprietat ile de mai sus rezulta ca este destul
de dicil de depistat un atac venit din partea unui adversar activ (care poate mod-
ica, insera sau sterge caractere) auto-sincronizarea readucand decriptarea n faza
6 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
normala. De aceea sunt necesare mecanisme suplimentare pentru a asigura auten-
ticarea si integritatea datelor.
4.2 Exemple de sisteme uide de criptare
4.2.1 SEAL
SEAL (Software - optimized Encryption ALgorithm) este un sistem de criptare aditiv
binar (Denit ia 4.4), denit n 1993 de Coppersmith si Rogaway. Este unul din cele mai
eciente sisteme implementabile pe procesoare de 32 bit i.
La un astfel de sistem este importanta descrierea generatorului de chei uide (care se
aduna modulo 2 cu textul clar). SEAL este o funct ie pseudo-aleatoare care scoate o cheie
uida de L bit i folosind un numar n de 32 bit i si o cheie secreta a de 160 bit i.
Fie A, B, C, D, X
i
, Y
j
cuvinte de 32 bit i. Vom folosi urmatoarele notat ii:
1. A: complementul lui A (pe bit i);
2. A B, A B, A B: operat iile OR, AND si XOR (pe bit i);
3. A << s: rotirea ciclica a lui A spre stanga cu s pozit ii;
4. A >> s: rotirea ciclica a lui A spre dreapta cu s pozit ii;
5. A +B (mod 2
32
): suma lui A si B (considerate ca numere ntregi fara semn);
6. f(B, C, D) = (B C) (B D);
g(B, C, D) = (B C) (B D) (C D); h(B, C, D) = B C D.
7. A[[B: concatenarea lui A cu B;
8. (X
1
, X
2
, . . . , X
n
) (Y
1
, , , , , Y
2
, . . . , Y
n
): atribuire simultana.
4.2. EXEMPLE DE SISTEME FLUIDE DE CRIPTARE 7
Algoritmul de generare a tabelei G pentru SEAL 2.0:
3
Intrare: Un sir a de 160 bit i si un ntreg i (0 i < 2
32
).
Iesire: G
a
(i) sir de 160 bit i.
Algoritm 1:
1. Se denesc constantele (de 32 bit i):
y
1
= 0x5a827999, y
2
= 0x6ed9eba1,
y
3
= 0x8f1bbcdc, y
4
= 0xca62c1d6
2. a. X
0
i;
b. for j 1 to 15 do X
j
0x00000000;
c. for j 16 to 79 do X
j
((X
j3
X
j8
X
j14
X
j16
) << 1);
d. (A, B, C, D, E) (H
0
, H
1
, H
2
, H
3
, H
4
) where a = H
0
H
1
H
2
H
3
H
4
;
e. (Runda 1): for j 0 to 19 do
t ((A << 5) +f(B, C, D) +E +X
j
+y
1
);
(A, B, C, D, E) (t, A, B << 30, C, D);
f. (Runda 2): for j 20 to 39 do
t ((A << 5) +h(B, C, D) +E +X
j
+y
2
);
(A, B, C, D, E) (t, A, B << 30, C, D);
g. (Runda 3): for j 40 to 59 do
t ((A << 5) +g(B, C, D) +E +X
j
+y
3
);
(A, B, C, D, E) (t, A, B << 30, C, D);
h. (Runda 4): for j 60 to 79 do
t ((A << 5) +h(B, C, D) +E +X
j
+y
4
);
(A, B, C, D, E) (t, A, B << 30, C, D);
i. (H
0
, H
1
, H
2
, H
3
, H
4
) (H
0
+A, H
1
+B, H
2
+C, H
3
+D, H
4
+E);
G
a
(i) = H
0
[[H
1
[[H
2
[[H
3
[[H
4
.
SEAL(a, n) (Generatorul de chei uide pentru SEAL 2.0):
3
Algoritmul SEAL 1.0 este bazat pe funct ia de dispersie SHA, iar SEAL 2.0 pe funct ia SHA1.
8 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
Intrare: a cheia secreta (160 bit i), n [0, 2
32
) ntreg, L - lungimea solicitata pentru
cheia uida.
Iesire: cheia uida y, [y[ = L

, unde L

este primul multiplu de 128 din [L, ).


1. Se genereaza tabelele T, S, R avand ca elemente cuvinte de 32 bit i.
Fie funct ia F
a
(i) = H
i
i (mod 5)
unde H
i
0
H
i
1
H
i
2
H
i
3
H
i
4
= G
a
(i/5|).
a. for i 0 to 511 do T[i] F
a
(i);
b. for j 0 to 255 do S[j] F
a
(0x00001000 +j);
c. for k 0 to 4 (L 1)/8192| 1 do R[k] F
a
(0x00002000 +k);
2. Descrierea procedurii Initialize(n, l, A, B, C, D, n
1
, n
2
, n
3
, n
4
) cu intrarile n (cuvant)
si l (ntreg). Iesirile sunt A, B, C, D, n
1
, n
2
, n
3
, n
4
(cuvinte).
a.
A n R[4 l], B (n >> 8) R[4 l + 1],
C (n >> 16) R[4 l + 2], D (n >> 24) R[4 l + 3].
b. for j 1 to 2 do
P A 0x000007fc, B B +T[P/4], A (A >> 9),
P B 0x000007fc, C C +T[P/4], B (B >> 9),
P C 0x000007fc, D D +T[P/4], C (C >> 9),
P D 0x000007fc, A A +T[P/4], D (D >> 9),
(n
1
, n
2
, n
3
, n
4
) (D, A, B, C);
P A 0x000007fc, B B +T[P/4], A (A >> 9),
P B 0x000007fc, C C +T[P/4], B (B >> 9),
P C 0x000007fc, D D +T[P/4], C (C >> 9),
P D 0x000007fc, A A +T[P/4], D (D >> 9),
3. l 0, y (sirul vid);
4. repeat
a. Initialize(n, l, A, B, C, D, n
1
, n
2
, n
3
, n
4
);
b. for i 1 to 64 do
P A 0x000007fc, B B +T[P/4], A (A >> 9), B B A;
Q B 0x000007fc, C C +T[Q/4], B (B >> 9), C C B;
P (P +C) 0x000007fc, D D+T[P/4], C (C >> 9), D DC;
Q (Q+D) 0x000007fc, A A+T[Q/4], D (D >> 9), A AD;
P (P +A) 0x000007fc, B B +T[P/4], A (A >> 9);
Q (Q+B) 0x000007fc, C C +T[Q/4], B (B >> 9);
4.2. EXEMPLE DE SISTEME FLUIDE DE CRIPTARE 9
P (P +C) 0x000007fc, D D +T[P/4], C (C >> 9);
Q (Q+D) 0x000007fc, A A +T[Q/4], D (D >> 9);
y y[[(B +S[4 i 4])[[(C S[4 i 3])[[(D +S[4 i 2])[[(A S[i 1]).
if [y[ L then return(y) STOP
else if i (mod 2) = 1 then (A, C) (A +n
1
, C +n
2
)
else (A, C) (A +n
3
, C +n
4
)
c. l l + 1.
Observat ia 4.2 ([1])

In majoritatea aplicat iilor pentru SEAL 2.0 se foloseste L 2
19
.
Algoritmul funct ioneaza si pentru valori mai mari, dar devine inecient deoarece creste
mult dimensiunea tabelei R. O varianta este concatenarea cheilor uide SEAL(a, 0)[[
SEAL(a, 1)[[SEAL(a, 2)[[ . . . Deoarece n < 2
32
, se pot obt ine astfel chei uide de lungimi
pana la 2
51
, pastrand L = 2
19
.
4.2.2 RC4
Sistemul RC4 (Rivest Code #4) a fost creat n 1987 de Ron Rivest pentru societatea RSA
Data Security Inc (astazi RSA Security). Destinat scopurilor comerciale, el a fost secret,
ind accesibil numai dupa semnarea unui protocol de condent ialitate.

In septembrie 1994
nsa, un anonim publica codul sau sursa pe o lista de discut ii, dupa care se raspandeste
rapid starnind o serie de polemici referitor la drepturile intelectuale. Se considera ca astazi
exista mai multe implementari ilegale.
RC4 este un sistem aditiv uid de criptare.
Printre sistemele care folosesc RC4 se pot aminti SQL (Oracle), Lotus Notes, AOCE
(Apple Computer), WEP WPA CipherSaber Secure Sockets Layer (opt ional) sau Secure
shell (opt ional)
4
RC4 este utilizat pentru criptarea sierelor n protocoale cum ar RSA
SecurPC saun standarde de comunicat ii (WEP, WPA pentru carduri, criptarea tracului
de date sau a site-urilor de web bazate pe protocolul SSL). De asemenea, el face parte
din Cellular Digital Packet Data specication.
La acest sistem, pentru generarea cheii uide se foloseste o stare interna (secreta)
formata din doua componente:
Un tablou de 256 octet i: S[0], S[1], . . . S[255], numit S box.
Doi pointeri de cate 8-bit i (notat i i respectiv j).
S boxul este init ializat cu o cheie de lungime variabila de obicei ntre 40 si 256
bit i, folosind un algoritm numit KSA (key-sheduling algorithm).

In faza a doua, cheia uida este generata folosind algoritmul PRGA (pseudo-random
generation algorithm).
4
Cand un sistem de criptare este marcat opt ional, nsemna ca el este una din variantele oferite pentru
implementare.
10 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
Algoritmul PRGA de generare a cheii uide
i
j
+
? ?
?
666
?-
?
6

?
S
0 1 2 S[i]+S[j] 254 255
K
. . . . . . . . . . . .
Cont inuturile S[i] si S[j] (unde i, j sunt date de cei doi pointeri) se aduna modulo 256,
iar octetul K de la adresa S[i] + S[j] este introdus n cheia uida.

In plus cei doi octet i
sunt interschimbat i.
Procedeul este reluat atat timp cat este nevoie. La ecare reluare starea celor doi
pointeri se modica (i este incrementat cu 1 iar j este incrementat cu S[i]).

In acest fel,
orice locat ie din S box este modicata cel put in odata ;a 256 iterat ii.
Formal:
i := 0
j := 0
while GeneratingOutput:
i := (i + 1) mod 256
j := (j + S[i]) mod 256
swap(S[i],S[j])
output S[(S[i] + S[j]) mod 256]
Algoritmul KSA de init ializare
KSA este utilizat pentru init ializarea S boxului. Fie n (1 n 255) numarul de
octet i din cheie
5
. Init ial n S se introduce permutarea identica. Ulterior se realizeaza 256
transpozit ii. Formal
for i from 0 to 255 do S[i] := i
j := 0
for i from 0 to 255 do
j := (j + S[i] + key[i mod n]) mod 256
swap(S[i],S[j])
Implementarea sistemului RC4 este foarte simpla: ea lucreaza cu octet i si necesita
256 pentru S box, n octet i de memorie pentru cheie, plus trei variabile ntregi i, j, k.
Operat iile folosite sunt XOR si AND (sau pe unele platforme simpla adunare pe bit i,
fara transport).
5

In majoritatea implementarilor n este n intervalul [5, 16].


4.3. EXERCIT II 11
Securitatea RC4
Conform cu Bruce Schneier ([2]), sistemul are circa 256! 256
2
= 2
1700
stari posibile; el
este rezistent la criptanaliza diferent iala si liniara, iar ciclurile sunt mai mari de 10.100.
Totusi, securitatea RC4 este slaba din mai multe puncte de vedere si criptograi nu
recomanda sistemul pentru aplicat iile actuale.
Cheia uida generata are o usoara preferint a pentru anumite secvent e de octet i.
Aceasta a permis construirea unui atac (Fluhrer si McGrew), care separa cheia uida
dintr-o secvent a aleatoare de maxim 1 GB.

In 2001, Fluhrer, Mantin si Shamir descopera ca din toate cheile RC4 posibile, primii
octet i de iesire nu sunt aleatori, oferind informat ii importante despre cheie.
La majoritatea sistemelor de criptare, o masura de securitate ncesara este alegerea
unui numar aleator nou
6
care sa e folosit pentru criptarea ecarui mesaj.

In acest fel,
criptarea de doua ori a aceluiasi mesaj va genera texte diferite. O solute sigura (care
funct ioneaza pentru orice sistem de criptare) este de a folosi o cheie pe termen lung din
care, prin amestec cu un nonce (dupa un algoritm prestabilit) se obt ine cheia necesara
unei criptari. Multe aplicat ii nsa care folosesc RC4 fac o simpla concatenare a cheii cu
nonce. Aceasta slabiciune este exploatata de Fluhrer, Mantin si Shamir pentru a sparge
ulterior sistemul de criptare WEP (wired equivalent pruvacy) folosit pe ret elele fara r
802.11.
Ulterior implementarile sistemului RC4 s-au aparat eliminand primii octet i (uzual
1024) din cheia uida, nainte de a o folosi.
4.3 Exercit ii
1. Construit i coduri de autenticare a mesajelor (MAC) capabile sa autentice mesajele
primite printr-un sistem uid de criptare. (Indicat ie: a se vedea [1], paragraf 9.5.4)
2. Presupunem ca denim o cheie uida ntr-un sistem sincronizabil n felul urmator:
Fie K /, L un alfabet al cheilor si o mult ime nita de stari. Se deneste o
stare init iala q
0
. Apoi, pentru i 1, se deneste recursiv
q
i
= f(q
i1
, K)
unde f : / . De asemenea, i 1, elementul z
i
din cheia uida este denit
prin
z
i
= g(q
i
, K)
unde g : / L. Aratat i ca orice cheie uida rezultata n acest mod are o
perioada de lungime maxim [[.
6
Un astfel de numar poarta numele de nonce (new number)
12 PRELEGEREA 4. SISTEME DE CRIPTARE FLUIDE
Bibliograe
[1] Menezes, Oorschot, Vanstome - Handbook of applied cryptography, 1997
[2] Schneier, B. - Applied Cryptography, John Wiley & Sons, second edition, 1997
[3] Stinton, D. Cryptography, Theory and Practice, Chaptan & Hall/CRC, second edi-
tion 2002
13

S-ar putea să vă placă și