Cuprins

Notat ¸ii 9
1 Numere ˆıntregi 11
1.1 Divizibilitate ˆın N . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Relat ¸ia de divizibilitate pe Z . . . . . . . . . . . . . . . . 13
1.3 Teorema fundamental˘a a aritmeticii . . . . . . . . . . . . 20
1.4 Numere prime . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.5 Numere Fermat . . . . . . . . . . . . . . . . . . . . . . . . 27
1.6 Ecuat ¸ii liniare diofantice . . . . . . . . . . . . . . . . . . . 30
2 Fract ¸ii continue 33
2.1 Fract ¸ii continue finite . . . . . . . . . . . . . . . . . . . . . 33
2.2 Fract ¸ii continue infinite . . . . . . . . . . . . . . . . . . . 38
2.3 Fract ¸ii continue periodice . . . . . . . . . . . . . . . . . . 43
3 Congruent ¸e 57
3.1 Not ¸iuni generale . . . . . . . . . . . . . . . . . . . . . . . 57
3.2 Congruent ¸e liniare . . . . . . . . . . . . . . . . . . . . . . 60
3.3 Sisteme de congruent ¸e . . . . . . . . . . . . . . . . . . . . 63
3.4 Congruent ¸e speciale . . . . . . . . . . . . . . . . . . . . . 68
3.4.1 Teorema Wilson . . . . . . . . . . . . . . . . . . . 68
3.4.2 Mica Teorem˘a a lui Fermat . . . . . . . . . . . . . 69
3.4.3 Teorema lui Euler . . . . . . . . . . . . . . . . . . 70
4 Funct ¸ii multiplicative 73
4.1 Funct ¸ia Euler . . . . . . . . . . . . . . . . . . . . . . . . . 73
5
6 CUPRINS
4.2 Funct ¸iile σ ¸si τ . . . . . . . . . . . . . . . . . . . . . . . . 76
4.3 Numere perfecte . . . . . . . . . . . . . . . . . . . . . . . 77
4.4 Numere Mersenne . . . . . . . . . . . . . . . . . . . . . . 78
5 Prime aplicat ¸ii ale congruent ¸elor 81
5.1 Factorizarea unor numere de form˘a particular˘a . . . . . . 81
5.2 Teste de divizibilitate . . . . . . . . . . . . . . . . . . . . 83
5.3 Calendarul . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.4 Programarea unui turneu . . . . . . . . . . . . . . . . . . 90
6 R˘ad˘acini primitive 93
6.1 Ordinul unui num˘ar ˆıntreg . . . . . . . . . . . . . . . . . . 93
6.2 Existent ¸a r˘ad˘acinilor primitive . . . . . . . . . . . . . . . 95
6.3 Index aritmetic . . . . . . . . . . . . . . . . . . . . . . . . 102
6.4 Exponent ¸i universali . . . . . . . . . . . . . . . . . . . . . 105
7 Reciprocitate p˘atratic˘a 113
7.1 Simbolul Legendre . . . . . . . . . . . . . . . . . . . . . . 114
7.2 Legea reciprocit˘at ¸ii p˘atratice . . . . . . . . . . . . . . . . 120
7.3 Simbolul Jacobi . . . . . . . . . . . . . . . . . . . . . . . . 125
8 Criptografie cu cheie secret˘a 133
8.1 Cifr˘ari flux (binar) . . . . . . . . . . . . . . . . . . . . . . 136
8.2 Criptosisteme caracter . . . . . . . . . . . . . . . . . . . . 136
8.3 Criptosisteme bloc . . . . . . . . . . . . . . . . . . . . . . 139
8.4 Criptare exponent ¸ial˘a . . . . . . . . . . . . . . . . . . . . 142
8.5 DES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
9 Criptografie cu cheie public˘a 147
9.1 RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
9.2 Criptosisteme bazate pe DLP . . . . . . . . . . . . . . . . 154
9.3 Criptosisteme knapsack . . . . . . . . . . . . . . . . . . . 156
9.4 Semn˘atur˘a digital˘a . . . . . . . . . . . . . . . . . . . . . . 159
9.5
ˆ
Imp˘art ¸irea secretelor . . . . . . . . . . . . . . . . . . . . . 162
10 Teste de primalitate 167
10.1 Ciurul lui Eratostene . . . . . . . . . . . . . . . . . . . . . 168
10.2 C˘autare de divizori prin ˆıncerc˘ari . . . . . . . . . . . . . . 168
10.3 Teste n-1. Testul Pepin . . . . . . . . . . . . . . . . . . . 169
CUPRINS 7
10.4 Teste n+1. Testul Lucas-Lehmer . . . . . . . . . . . . . . 171
10.5 Testul Fermat . . . . . . . . . . . . . . . . . . . . . . . . . 176
10.6 Testul Solovay-Strassen . . . . . . . . . . . . . . . . . . . 180
10.7 Testul Miller-Rabin . . . . . . . . . . . . . . . . . . . . . . 185
10.8 Primalitate folosind curbele eliptice . . . . . . . . . . . . . 195
10.9 Algoritmul AKS . . . . . . . . . . . . . . . . . . . . . . . 196
11 Problema factoriz˘arii 199
11.1 Factorizare prin c˘autare direct˘a . . . . . . . . . . . . . . . 200
11.2 Metoda Fermat . . . . . . . . . . . . . . . . . . . . . . . . 200
11.3 Metoda Euler . . . . . . . . . . . . . . . . . . . . . . . . . 202
11.4 Metoda Pollard-rho . . . . . . . . . . . . . . . . . . . . . . 202
11.5 Metoda Pollard p-1 . . . . . . . . . . . . . . . . . . . . . . 205
11.6 Factorizare folosind curbele eliptice . . . . . . . . . . . . . 206
11.7 Metoda bazei factor . . . . . . . . . . . . . . . . . . . . . 207
11.8 Metoda fract ¸iilor continue . . . . . . . . . . . . . . . . . . 209
11.9 Metoda filtrului p˘atratic . . . . . . . . . . . . . . . . . . . 213
11.10Filtrul corpului de numere . . . . . . . . . . . . . . . . . . 215
12 Problema logaritmului discret 217
12.1 Algoritmul Shanks . . . . . . . . . . . . . . . . . . . . . . 218
12.2 Algoritmul Pohlig-Hellman . . . . . . . . . . . . . . . . . 220
12.3 Algoritmul Pollard rho . . . . . . . . . . . . . . . . . . . . 222
12.4 Algoritmul index-calculus . . . . . . . . . . . . . . . . . . 226
13 R˘ad˘acini p˘atrate 229
13.1 R˘ad˘acini p˘atrate mod p . . . . . . . . . . . . . . . . . . . 230
13.2 R˘ad˘acini p˘atrate mod n . . . . . . . . . . . . . . . . . . . 233
A Numere prime Mersene 237
B Numere pseudoprime 239
Bibliografie 241
Index 243
8 CUPRINS
Notat ¸ii
a [ b a divide b
a ∼ b a este asociat ˆın divizibilitate cu b
(a, b) cel mai mare divizor comun pentru a ¸si b
[a, b] cel mai mic multiplu comun pentru a ¸si b
Z[i] inelul ˆıntregilor lui Gauss
(f
n
)
n≥0
¸sirul lui Fibonacci
p
α
|n p
α
este cea mai mare putere a lui p care
divide n
ord
p
n ordinul lui n la p
p
n
al n−lea num˘ar prim
π(x) num˘arul numerelor prime ≤ x, x > 0
F
n
num˘ar Fermat
[x] partea ˆıntreag˘a a num˘arului x
[a
0
; a
1
, . . . , a
n
] fract ¸ie continu˘a
p
k
q
k
k−convergenta unei fract ¸ii continue
a ≡ b (mod n) a este congruent cu b modulo n
¯ a (mod n) inversul lui a modulo n
φ funct ¸ia lui Euler
σ(n) suma divizorilor pozitivi ai lui n
τ(n) num˘arul divizorilor pozitivi ai lui n
M
n
num˘ar Mersenne
ord
n
a ordinul lui a mod n
ind
r
a (mod n) indicele aritmetic al lui a relativ la r
modulo n
λ(n) exponent universal minimal al lui n
λ
0
(n) ±1−exponent maximal al lui n
9
10 CUPRINS
_
a
n
_
simbol Legendre sau Jacobi
/ alfabet de definit ¸ie
/ spat ¸iul de mesaje
( spat ¸iul textului cifrat
/ spat ¸iul cheilor
E
e
funct ¸ie de criptare
D
d
funct ¸ie de decriptare
DES Data Encryption Standard
TDES Triplu DES
DLP problema logaritmului discret
U(Z
n
) grupul unit˘at ¸ilor inelului Z
n
log
g
b logaritmul discret al lui b ˆın baza g
DSA Digital Standard Algorithm
Ψ
k
cel mai mic num˘ar tare pseudoprim
cu primele k numere prime alese ca baze
Capitolul 1
Numere ˆıntregi
1.1 Divizibilitate ˆın N
Dac˘a consider˘am dou˘a numere naturale a ¸si b, spunem c˘a a divide b ¸si
scriem a [ b dac˘a exist˘a un num˘ar natural c astfel ˆıncˆat b = a c.
ˆ
In acest
caz, a se nume¸ste divizor al lui b. Este evident c˘a orice num˘ar n > 1 are
cel put ¸in doi divizori: pe 1 ¸si pe el ˆınsu¸si. Prin divizor propriu al lui n
ˆınt ¸elegem un divizor diferit de num˘arul n, iar prin divizor netrivial al lui
n, un divizor diferit de 1 ¸si n.
Relat ¸ia [ definit˘a pe N se nume¸ste relat ¸ie de divizibilitate pe N. Se
arat˘a u¸sor c˘a aceasta este o relat ¸ie de ordine pe N.
Prin definit ¸ie, un num˘ar prim este un num˘ar mai mare decˆat 1 care
nu are alt ¸i divizori ˆın afar˘a de 1 ¸si el ˆınsu¸si. Un num˘ar se nume¸ste
compus dac˘a are cel put ¸in un divizor netrivial.
Lem˘a 1.1.1 Orice num˘ar natural, mai mare decˆat 1, are un divizor
prim.
Demonstrat ¸ie. Pentru a demonstra afirmat ¸ia, reducem la absurd ¸si pre-
supunem c˘a exist˘a un num˘ar n > 1 care nu are divizori primi. Dac˘a
not˘am mult ¸imea acestor numere cu S, cum ea este nevid˘a ¸si N este bine
ordonat˘a, exist˘a un cel mai mic element ˆın S. Fie acesta n
0
. n
0
este
atunci un num˘ar compus, deci n
0
= a b, cu 1 < a, b < n
0
. Pentru a nu
contrazice alegerea lui n
0
, a / ∈ S, adic˘a a are un divizor prim care va fi
divizor ¸si pentru n
0
, ceea ce contrazice faptul c˘a n
0
∈ S.
11
12 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Teorem˘a 1.1.1 Dac˘a n este un num˘ar compus, atunci el are cel put ¸in
un divizor prim ≤

n.
Demonstrat ¸ie. Cum n este compus, fie n = ab, cu 1 < a ≤ b < n. Dac˘a
a >

n, atunci n = ab > n, fals. Deci, a ≤

n. Din lema 1.1.1, a are
un divizor prim. Deci, n are un divizor prim ≤

n.
Observat ¸ie 1.1.1 1) Pentru a verifica dac˘a un num˘ar este prim e su-
ficient s˘a verific˘am dac˘a are divizori primi ≤

n, t ¸inˆ and cont de forma
echivalent˘ a a teoremei anterioare: Dac˘a num˘arul n nu are factori primi


n, atunci el este prim.
2) Teorema anterioar˘ a poate fi folosit˘a pentru a determina numerele
prime ≤ n (vezi capitolul 10.1.).
Teorem˘a 1.1.2 (Teorema ˆımp˘art ¸irii cu rest) Pentru dou˘a numere
naturale m, n cu n ,= 0, exist˘a numerele naturale q, r astfel ˆıncˆat
m = nq +r ¸si r < n.
ˆ
In plus, q ¸si r sunt unic determinate.
Demonstrat ¸ie. Consider˘am mult ¸imea
A = ¦s ∈ N [ ∃k ∈ N, m = nk +s¦.
Din m = n 0 + m, m ∈ A. Deci, mult ¸imea A nu este vid˘a. Atunci,
cum N este bine ordonat˘a, exist˘a r un cel mai mic element din A.
Rezult˘a, m = nq + r, pentru un q ∈ N. R˘amˆane s˘a ar˘at˘am c˘a r < n.
Dac˘a presupunem c˘a r ≥ n, atunci r = n + u, pentru un u ∈ N ¸si
m = nq + r = nq + n + u = n(q + 1) + u. Astfel, u ∈ A. Dar r ≤ u.
Obt ¸inem r = u, de unde n = 0, fals. Deci, r < n. Astfel, afirmat ¸ia de
existent ¸˘a din enunt ¸ul teoremei este demonstrat˘a. Pentru a ar˘ata c˘a q ¸si
r sunt unice, presupunem m = nq+r = np+s unde r, s < n. Dac˘a q < p,
atunci p = q +u, u ,= 0. Obt ¸inem nq +r = n(q +u) +s = nq +(nu +s),
adic˘a r = nu + s. Dar, cum n ,= 0 ¸si u ≥ 1, rezult˘a nu ≥ n. Atunci,
r = nu+s ≥ n+s ≥ n, ceea ce contrazice faptul c˘a r < n. Astfel, p = q,
de unde rezult˘a imediat r = s.
Numerele q ¸si r care apar ˆın enunt ¸ul teoremei se numesc cˆatul ¸si
restul ˆımp˘art ¸irii lui m la n.
1.2. RELAT¸ IA DE DIVIZIBILITATE PE Z 13
1.2 Relat ¸ia de divizibilitate pe Z
Fie numerele ˆıntregi a ¸si b. Spunem c˘a a divide b ¸si scriem a [ b dac˘a
exist˘a un ˆıntreg c astfel ˆıncˆat b = a c. Ca ¸si ˆın cazul relat ¸iei de divizi-
bilitate definite pe N, ea este reflexiv˘a ¸si tranzitiv˘a, dar nu mai este
antisimetric˘a. De exemplu, 2 [ −2 ¸si −2 [ 2.
Pentru a putea obt ¸ine o relat ¸ie de echivalent ¸˘a pe Z, definim relat ¸ia
numit˘a asociere ˆın divizibilitate, prin:
x ∼ y ⇔x = ±y.
Definit ¸ie 1.2.1 Fie a, b numere ˆıntregi. Spunem c˘a un num˘ar ˆıntreg d
este un cel mai mare divizor comun al numerelor a, b dac˘a:
1. d [ a ¸si d [ b.
2. Pentru orice d

[ a ¸si d

[ b, rezult˘a d

[ d.
Un cel mai mare divizor comun al lui a ¸si b este unic determinat,
mai put ¸in o asociere ˆın divizibilitate. Putem presupune c˘a acesta este
un num˘ar natural. Un astfel de cel mai mare divizor comun este unic
determinat ¸si ˆıl not˘am d = (a, b).
Dac˘a (a, b) = 1, spunem c˘a numerele a ¸si b sunt prime ˆıntre ele sau
relativ prime.
Propozit ¸ie 1.2.1 Fie a, b numere ˆıntregi ¸si d = (a, b).
Atunci, a = a

d, b = b

d, unde a

, b

sunt numere ˆıntregi prime ˆıntre ele.
Din definit ¸ia celui mai mare divizor comun d a dou˘a numere a, b, rezult˘a
c˘a d [ (a −b). Euclid
1
a folosit acest rezultat pentru a determina cel mai
mare divizor comun a dou˘a numere naturale folosind metoda sc˘aderii
repetate a num˘arului mic din cel mare.
1
Euclid (circa 350 ˆı.e.n.) este autorul celui mai faimos text matematic scris vre-
odat˘a, Elemente, considerat ca fiind cea mai citit˘a carte ¸stiint ¸ific˘ a din lume. Timp
de dou˘a milenii, a constituit materialul de baz˘a dup˘a care s-a predat matematica.
ˆ
In aceast˘a carte, Euclid realizeaz˘a o introducere ˆın geometria plan˘a ¸si ˆın teoria nu-
merelor. Algoritmul s˘au se g˘ase¸ste ˆın cartea a VII-a din cele XIII care alc˘atuiesc
lucrarea, iar demonstrarea teoremei care precizeaz˘a c˘a exist˘a o infinitate de numere
prime se afl˘a ˆın cartea a IX-a. Euclid a predat la faimoasa Academie din Alexandria
¸si a mai scris c˘art ¸i de astronomie, optic˘a, muzic˘a, mecanic˘a.
14 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Algoritmul funct ¸ioneaz˘ a dup˘a cum urmeaz˘a:
Presupunem numerele naturale a > b. Fie a
1
= a, b
1
= b. Pentru
fiecare pereche (a
i
, b
i
) form˘am perechea (a
i+1
, b
i+1
) unde
a
i+1
= max¦b
i
, a
i
−b
i
¦, b
i+1
= min¦b
i
, a
i
−b
i
¦.
Acest proces formeaz˘a numere din ce ˆın ce mai mici, deci se va opri.
Vom obt ¸ine a
k
= b
k
, caz ˆın care vom concluziona c˘a c.m.m.d.c.(a, b) =
a
k
= b
k
. Algoritmul funct ¸ioneaz˘a corect deoarece
c.m.m.d.c.(a
1
, b
1
) = c.m.m.d.c.(a
2
, b
2
) = . . . = c.m.m.d.c.(a
k
, b
k
).
De exemplu, alegem a = 34, b = 19. Algoritmul realizeaz˘a perechile
urm˘atoare:
(a
1
, b
1
) = (34, 19)
(a
2
, b
2
) = (19, 34 −19) = (19, 15)
(a
3
, b
3
) = (15, 19 −15) = (15, 4)
(a
4
, b
4
) = (15 −4, 4) = (11, 4)
(a
5
, b
5
) = (11 −4, 4) = (7, 4)
(a
6
, b
6
) = (4, 7 −4) = (4, 3)
(a
7
, b
7
) = (3, 4 −3) = (3, 1)
(a
8
, b
8
) = (3 −1, 1) = (2, 1)
(a
9
, b
9
) = (2 −1, 1) = (1, 1)
de unde obt ¸inem c.m.m.n.c.(34, 19) = c.m.m.d.c.(1, 1) = 1.
Pentru a fi mai rapid, acest algoritm este de obicei ˆımbun˘at˘at ¸it
ˆınlocuind sc˘aderile repetate cu ˆımp˘art ¸iri.
Pentru aceasta, reamintim teorema ˆımp˘art ¸irii cu rest pentru numerele
ˆıntregi:
Teorem˘a 1.2.1 (Teorema ˆımp˘art ¸irii cu rest)
Fie a, b ∈ Z cu b ,= 0. Atunci, exist˘a q, r ∈ Z astfel ca a = bq + r unde
0 ≤ r < [b[.
ˆ
In plus, numerele q ¸si r care verific˘a aceste propriet˘at ¸i sunt
unic determinate.
Demonstrat ¸ie. Pentru a = 0, avem a = b 0 + 0 ¸si 0 < [b[. Putem lua
astfel, q = 0, r = 0. Dac˘a a > 0, b > 0, putem aplica teorema 1.1.2.
Dac˘a a > 0, b < 0 aplic˘am teorema 1.1.2 pentru a ¸si −b. Rezult˘a astfel
a = (−b)q

+r

, q

, r

∈ N, 0 ≤ r

< −b = [b[. Luˆand q = −q

¸si r = r

,
rezult˘a a = bq +r cu 0 ≤ r < −b = [b[.
Dac˘a a < 0, b > 0, aplic˘am teorema pentru −a ¸si b, obt ¸inˆand
−a = bq

+ r

, 0 ≤ r

< b. Dac˘a r

= 0, atunci a = −bq

¸si alegem q =
1.2. RELAT¸ IA DE DIVIZIBILITATE PE Z 15
−q

, r = 0. Pentru cazul 0 < r

, avem a = −bq

−r

= b(−q

−1)+(b−r

).
Alegem q = −q

−1, r = b−r

. Cum 0 < r

< b, obt ¸inem 0 < r < b = [b[.
Dac˘a a < 0, b < 0, aplic˘am aceea¸si teorem˘a pentru numerele naturale −a
¸si −b. Avem, −a = −bq

+ r

, 0 ≤ r

< −b. Dac˘a r

= 0, alegem q = q

¸si r = 0. Dac˘a r

> 0, avem a = bq

− r

= b(q

+ 1) + (−b − r

). Lu˘am
q = q

+ 1, r = −b −r

. Cum 0 < r

< −b, rezult˘a 0 < r < −b = [b[.
S˘a demonstr˘am acum unicitatea numerelor q ¸si r astfel determinate.
Presupunem c˘a bq + r = bq

+ r

cu 0 ≤ r, r

< [b[. Rezult˘a b(q − q

) =
r

− r, deci [b[ [q − q

[ = [r − r

[. Cum r ¸si r

sunt numere naturale cu
0 ≤ r, r

< [b[, avem [r − r

[ < [b[. Astfel, [b[ [q − q

[ < [b[, de unde
[q −q

[ < 1.
Atunci, q = q

¸si apoi r = r

.
Lem˘a 1.2.1 Fie a, b, q, r ∈ Z astfel ca a = bq +r. Atunci, cel mai mare
divizor comun al lui a ¸si b exist˘a dac˘a ¸si numai dac˘a cel mai mare divizor
comun al lui b ¸si r exist˘a.
ˆ
In plus, avem (a, b) = (b, r).
Demonstrat ¸ie. Presupunem c˘a d = (a, b) exist˘a. Din d [ a ¸si d [ b, rezult˘a
d [ r. Dac˘a presupunem c˘a d

este un divizor comun al lui b ¸si r, rezult˘a
d

[ bq + r, adic˘a d

[ a. Atunci, d

[ d ¸si astfel, d = (b, r). Afirmat ¸ia
reciproc˘a se demonstreaz˘a la fel.
Teorem˘a 1.2.2 (Algoritmul lui Euclid) Pentru orice dou˘a numere
ˆıntregi exist˘a un cel mai mare divizor comun.
Demonstrat ¸ie. Fie a ¸si b cele dou˘a numere ˆıntregi. Dac˘a b = 0, atunci,
(a, b) = a. Dac˘a b ,= 0, aplic˘am teorema 1.2.1. Exist˘a q
2
∈ Z, r
2
∈ N
astfel ˆıncˆat
a = bq
2
+r
2
, 0 ≤ r
2
<[ b [ . (E
1
)
Cazul cˆand un rest va fi zero va fi tratat mai tˆarziu.
Dac˘a r
2
,= 0, exist˘a q
3
∈ Z, r
3
∈ N astfel ˆıncˆat
b = r
2
q
3
+r
3
, 0 ≤ r
3
< r
2
. (E
2
)
Dac˘a r
3
,= 0, exist˘a q
4
∈ Z, r
4
∈ N astfel ˆıncˆat
r
2
= r
3
q
4
+r
4
, 0 ≤ r
4
< r
3
. (E
3
)
.
.
.
16 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Dac˘a r
k
,= 0, exist˘a q
k+1
∈ Z, r
k+1
∈ N astfel ˆıncˆat
r
k−1
= r
k
q
k+1
+r
k+1
, 0 ≤ r
k+1
< r
k
(E
k
)
.
.
.
Obt ¸inem astfel c˘a resturile verific˘a relat ¸iile:
[ b [> r
2
> r
3
> . . . > r
k
> r
k+1
≥ 0. (1.1)
Dac˘a t ¸inem cont c˘a mult ¸imea numerelor naturale este bine ordonat˘a,
exist˘a un rang n astfel ˆıncˆat r
n+1
= 0.
Ultimele dou˘a relat ¸ii din lant ¸ul de ˆımp˘art ¸iri cu rest sunt:
r
n−2
= r
n−1
q
n
+r
n
(E
n−1
)
r
n−1
= r
n
q
n+1
(E
n
)
Din relat ¸ia (E
n
) rezult˘a r
n
= (r
n
, r
n−1
).
Din relat ¸iile (E
n−1
), . . . , (E
k
), . . . , (E
2
), (E
1
), aplicˆand lema anterioar˘a,
obt ¸inem:
r
n
= (r
n
, r
n−1
) = (r
n−1
, r
n−2
) = . . . = (r
2
, r
3
) = (b, r
2
) = (a, b).
Pentru a uniformiza relat ¸iile (E
1
), (E
2
), . . . , (E
n
), facem notat ¸iile
a = r
0
¸si b = r
1
. Astfel, relat ¸iile din algoritmul lui Euclid pot fi scrise
sub forma:
r
k−1
= r
k
q
k+1
+r
k+1
, 1 ≤ k ≤ n, r
n+1
= 0. (E
k
)
Dac˘a privim relat ¸iile (E
k
) ale algoritmului lui Euclid, obt ¸inem
r
k−1
r
k
= q
k+1
+
r
k+1
r
k
unde q
k+1
∈ Z ¸si 0 ≤
r
k+1
r
k
< 1.
De aici putem concluziona c˘a q
k+1
=
_
r
k−1
r
k
_
.
Forma ˆın care folosimˆımp˘art ¸iri pentru a realiza algoritmul lui Euclid
nu este doar mai rapid˘a Ea are o aplicabilitate mult mai larg˘a decˆat
1.2. RELAT¸ IA DE DIVIZIBILITATE PE Z 17
varianta sc˘aderilor succesive, putˆand fi folosit˘a ˆın orice inele euclidiene,
de exemplu ˆın inelul ˆıntregilor lui Gauss, Z[i] (vezi [9]).
Aplicarea algoritmului pentru numere ˆıntregi se reduce la aplicarea
acestuia pentru numere naturale.
ˆ
In rolul lui b se poate alege cel mai
mic dintre cele dou˘a numere.
ˆ
In anumite situat ¸ii poate fi necesar s˘a cunoa¸stem num˘arul deˆımp˘art ¸iri
din algoritmul lui Euclid.
Pentru a putea da un r˘aspuns referitor la aceast˘a problem˘a, trebuie
s˘a definim mai ˆıntˆai ¸sirul lui Fibonacci
2
.
Fie (f
n
)
n≥1
¸sirul definit prin f
1
= f
2
= 1 ¸si, f
n+1
= f
n
+f
n−1
, pentru
n ≥ 2.
Folosind induct ¸ia matematic˘a, se demonstreaz˘a u¸sor c˘a, pentru orice
n ≥ 3,
f
n
>
_
1 +

5
2
_
n−2
.
Cu ajutorul acestui rezultat, putem demonstra urm˘atoarea teorem˘a
3
:
Teorem˘a 1.2.3 (Lam´e) Num˘arul de ˆımp˘art ¸iri din algoritmul lui
Euclid pentru a, b ∈ N

cu a > b nu dep˘a¸se¸ste de cinci ori num˘arul
cifrelor din scrierea ˆın baza 10 a lui b.
Demonstrat ¸ie. Consider˘am algoritmul lui Euclid pentru numerele a ¸si
b :
a = r
0
, b = r
1
, r
k−1
= r
k
q
k+1
+r
k+1
, 1 ≤ k ≤ n, r
n+1
= 0.
ˆ
In acest caz, q
i
≥ 1, 2 ≤ i ≤ n ¸si q
n+1
≥ 2, pentru c˘a altfel, r
n−1
= r
n
.
Observ˘am c˘a r
n
≥ 1 = f
2
¸si r
n−1
= r
n
q
n+1
≥ 2f
2
= f
3
.
2
Fibonacci, n˘ascut ˆın Pisa, era negustor care c˘al˘atorea ˆın Orientul Mijlociu. Aici a
luat contact cu lucr˘arile matematice ale arabilor.
ˆ
In cartea sa Liber Abaci, introduce
notat ¸ia arab˘a pentru cifre, efectueaz˘a operat ¸ii cu numere fract ¸ionare (a introdus linia
de fract ¸ie ¸si denumirea de fractus), studiaz˘a, pentru prima dat˘a, sumarea unei serii
recurente ai c˘arei termeni sunt numerele Fibonacci ¸si introduce, tot pentru prima
dat˘a ˆın Europa, numerele negative.
3
Gabriel Lam´e (1795-1870) a fost inginer, absolvent al S¸colii Politehnice din Paris.
Principalele sale contribut ¸ii au fost ˆın fizica matematic˘a. A f˘acut multe descoperiri
¸si ˆın teoria numerelor, Gauss considerˆandu-l cel mai important matematician francez
al timpului s˘au.
18 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Prin induct ¸ie matematic˘a, se arat˘a c˘a r
n−i
≥ f
i+2
, 0 ≤ i ≤ n.
ˆ
In
particular, b = r
1
≥ f
n+1
> α
n−1
, unde α =
1 +

5
2
.
Presupunem c˘a b are s cifre ˆın scrierea sa ˆın baza 10. Atunci, b < 10
s
de unde obt ¸inem α
n−1
< 10
s
. Astfel, (n − 1) lg α < s. Dac˘a t ¸inem cont
de relat ¸ia
1
5
< lg α, rezult˘a ˆın final n ≤ 5s.
Consider˘am acum problema invers˘a: S˘a vedem dac˘a se pot determina
dou˘a numere naturale a ¸si b astfel ˆıncˆat algoritmul lui Euclid aplicat
acestora s˘a se realizeze prin n ˆımp˘art ¸iri.
Teorem˘a 1.2.4 Dac˘a (f
n
)
n≥1
este ¸sirul lui Fibonacci, aplicarea algo-
ritmului lui Euclid pentru f
n+2
¸si f
n+1
necesit˘a exact n ˆımp˘art ¸iri.
Demonstrat ¸ie. Dac˘a t ¸inem cont de modul de definire al acestui ¸sir,
obt ¸inem c˘a f
n+1
> f
n
, pentru n ≥ 2. Algoritmul lui Euclid, ˆın acest
caz, este dat de relat ¸iile:
f
n+2
= f
n+1
1 +f
n
, 0 < f
n
< f
n+1
f
n+1
= f
n
1 +f
n−1
, 0 < f
n−1
< f
n
.
.
.
f
4
= f
3
1 +f
2
, 0 < f
2
< f
3
f
3
= f
2
2.
Observ˘am c˘a sunt exact n ˆımp˘art ¸iri. Cum (f
n+2
, f
n+1
) = f
2
= 1, pen-
tru orice n, rezult˘a c˘a orice doi termeni consecutivi ai ¸sirului sunt relativ
primi.
Algoritm 1.2.1 (Algoritmul lui Euclid)
INPUT: dou˘a numere naturale a, b cu a ≥ b.
OUTPUT: cel mai mare divizor comun pentru a ¸si b.
1. Cˆat timp b ,= 0, execut˘a:
1.1. r ←a mod b, a ←b, b ←r.
2. Returneaz˘a a.
Algoritmul lui Euclid poate fi extins pentru a determina pe lˆang˘a cel
mai mare divizor comun d a dou˘a numere a, b ¸si o scriere a acestuia ca
o combinat ¸ie liniar˘a a numerelor init ¸iale: d = au + bv. Coeficient ¸ii u, v
ai combinat ¸iei se numesc coeficient ¸i B´ezout (vezi [9]).
1.2. RELAT¸ IA DE DIVIZIBILITATE PE Z 19
Teorem˘a 1.2.5 Fie a, b ∈ Z cu b ,= 0. Construim, prin recurent ¸˘a, vec-
torii: (w
k
)
0≤k≤n+1
, w
k
= (t
k
, u
k
, v
k
) din Z
3
astfel:
w
0
= (a, 1, 0), w
1
= (b, 0, 1),
w
k+1
= w
k−1
−q
k+1
w
k
, 1 ≤ k ≤ n
unde q
k+1
sunt cˆaturile din algoritmul lui Euclid pentru numerele a, b.
Atunci:
t
k
= r
k
= u
k
a +v
k
b, 0 ≤ k ≤ n + 1 (B
k
)
Relat ¸iile B
k
poart˘a numele de relat ¸iile lui B´ezout.
Cum algoritmul lui Euclid ¸si relat ¸iile lui B´ezout se pot realiza simul-
tan, putem cuprinde rezultatele ˆıntr-un tabel de forma:
k 0 1 2 . . . k . . . n n+1
t
k
a b r
2
. . . r
k
. . . r
n
r
n+1
u
k
1 0 u
2
. . . u
k
. . . u
n
u
n+1
v
k
0 1 v
2
. . . v
k
. . . v
n
v
n+1
q
k
q
2
. . . q
k
. . . q
n
q
n+1
De exemplu, pentru a = 34 ¸si b = 19, obt ¸inem:
(34, 19) = 1 = 34 (−5) + 19 9
dup˘a cum reiese din tabelul:
k 0 1 2 3 4 5 6
t
k
34 19 15 4 3 1 0
u
k
1 0 1 -1 4 -5 19
v
k
0 1 -1 2 -7 9 -34
q
k
1 1 3 1 3
20 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Acest algoritm poart˘a numele de algoritmul extins al lui Euclid ¸si
este prezentat ˆın continuare:
Algoritm 1.2.2 (Algoritmul extins al lui Euclid)
INPUT: dou˘a numere naturale a, b cu a ≥ b.
OUTPUT: d = (a, b) ¸si dou˘a numere ˆıntregi u, v cu d = au +vb.
1. Dac˘a b = 0, atunci d ←a, u ←1, v ←0,
returneaz˘a (d, u, v) ¸si se opre¸ste.
2. u
1
←1, u
2
←0, v
1
←0, v
2
←1
3. Cˆat timp b > 0 execut˘a:
3.1. q ←[a/b], r ←a −qb, u ←u
1
−qu
2
, v ←v
1
−bv
2
.
3.2. a ←b, b ←r, u
1
←u
2
, u
2
←u, v
1
←v
2
, v
2
←v.
4. d ←a, u ←u
1
, v ←v
1
¸si returneaz˘a (d, u, v).
1.3 Teorema fundamental˘a a aritmeticii
Propozit ¸ie 1.3.1 Orice num˘ar natural n ≥ 2 este produs de numere
prime.
Demonstrat ¸ie. Presupunem c˘a mult ¸imea A a numerelor naturale n ≥ 2
care nu se scriu ca produs de numere prime este nevid˘a. Atunci, cum N
este bine ordonat˘a, fie n
0
un prim element al lui A. Astfel, n
0
= ab unde
1 < a, b < n
0
pentru c˘a n
0
nu este prim. Dar, pentru a nu contrazice
alegerea lui n
0
, a, b / ∈ A. Astfel, a, b sunt fiecare produs de numere prime,
de unde ¸si n
0
este la fel, afirmat ¸ie ce contrazice n
0
∈ A.
Observat ¸ie 1.3.1 Dac˘a n ∈ Z ¸ ¦−1, 0, 1¦, cum n = sgn(n) [ n [,
obt ¸inem n = up
1
p
2
. . . p
k
unde u = ±1, o unitate ¸si p
1
, p
2
, . . . , p
k
sunt
numere prime nu neap˘arat distincte. Atunci, putem grupa toate nu-
merele prime egale, ¸si putem scrie:
n = up
α
1
1
p
α
2
2
. . . p
α
s
s
,
cu u unitate, p
1
, . . . , p
s
numere prime distincte ¸si α
1
, . . . , α
s
≥ 1.
ˆ
In
ultima relat ¸ie putem face s˘a apar˘a orice num˘ar prim, chiar dac˘a acesta
nu este divizor pentru n, punˆandu-l la puterea 0.
Astfel, n = u

p∈P
p
α
p
unde P este mult ¸imea numerelor prime ¸si α
p
> 0.
1.3. TEOREMA FUNDAMENTAL
˘
A A ARITMETICII 21
Propozit ¸ie 1.3.2 Fie a, b, c numere ˆıntregi astfel ˆıncˆat c [ ab ¸si a, c sunt
relativ prime. Atunci, c [ b.
Demonstrat ¸ie.
4
Din (a, c) = 1, rezult˘a c˘a exist˘a numerele ˆıntregi u, v
pentru care 1 = au + cv. Atunci, b = b 1 = (ab)u + (bv)c. Cum c [ ab,
rezult˘a c [ b.
Corolar 1.3.1 Fie p un num˘ar prim ¸si a, b dou˘a numere ˆıntregi. Dac˘a
p [ ab, atunci p [ a sau p [ b.
Demonstrat ¸ie. Dac˘a p a, cum p este prim, (a, p) = 1. Din propozit ¸ia
anterioar˘a, rezult˘a p [ b.
Definit ¸ie 1.3.1 Dac˘a p este un num˘ar prim ¸si n un num˘ar ˆıntreg, vom
nota
5
ord
p
n = α dac˘a p
α
[ n ¸si p
α+1
n, adic˘a p
α
este cea mai mare
putere a lui p care divide n, unde α > 0. Vom numi acest num˘ar natural
α, ordinul lui n la p.
Corolar 1.3.2 Pentru dou˘a numere ˆıntregi nenule a, b ¸si pentru orice
num˘ar prim p, are loc relat ¸ia:
ord
p
(ab) = ord
p
a +ord
p
b.
Demonstrat ¸ie. Fie ord
p
a = n, ord
p
b = m.
Atunci, a = p
n
a

, b = p
m
b

, p a

, p b

. Rezult˘a ab = p
n+m
a

b

. Din
corolarul 1.3.1, p a

b

. Astfel, ord
p
(ab) = n +m.
Teorem˘a 1.3.1 (Teorema fundamental˘a a aritmeticii) Orice nu-
m˘ar ˆıntreg nenul n, diferit de ±1, poate fi scris ˆın mod unic (mai put ¸in
ordinea factorilor) ca produs de numere prime de forma n = u

p∈P
p
α
p
unde P este mult ¸imea numerelor prime ¸si doar un num˘ar finit din nu-
merele naturale α
p
sunt nenule.
Demonstrat ¸ie. Produsul se poate scrie de fapt sub forma
n = up
α1
1
p
α2
2
. . . p
α
s
s
,
4
Aceast˘a proprietate a fost demonstrat˘a de Euclid.
5
mai poate fi ˆıntˆalnit˘ a notat ¸ia p
α
||n
22 CAPITOLUL 1. NUMERE
ˆ
INTREGI
cu u unitate, p
1
, . . . , p
s
numere prime distincte ¸si α
1
, . . . , α
s
≥ 1. Din
corolarul 1.3.2, pentru un num˘ar prim q,
ord
q
n = ord
q
u +

p∈P
α
p
ord
q
p.
Cum u este unitate, ord
q
u = 0. ord
q
p = 1 dac˘a p = q, altfel ord
q
p = 0.
Rezult˘a astfel c˘a α
1
= ord
p
1
n, . . . , α
s
= ord
p
s
n ≥ 1.
Unicitatea descompunerii ˆın factori primi a fost prima dat˘a ment ¸ionat˘a
de Gauss,
6
ˆın anul 1801. Forma canonic˘a a descompunerii este aceea de
a scrie num˘arul ca produs de numere prime distincte la puterile cores-
punz˘atoare, ˆın ordine cresc˘atoare, de exemplu: 12600 = 2
3
3
9
5
2
7.
Definit ¸ie 1.3.2 Fie a, b numere ˆıntregi. Spunem c˘a m este un cel mai
mic multiplu comun al numerelor a, b ¸si not˘am m = [a, b] dac˘a:
1. a [ m ¸si b [ m.
2. Pentru orice a [ m

¸si b [ m

, rezult˘a m [ m

.
Propozit ¸ie 1.3.3 Fie n = up
α1
1
p
α2
2
. . . p
α
s
s
¸si m = vp
β1
1
p
β2
2
. . . p
β
s
s
, unde
u, v sunt unit˘at ¸i, p
1
, . . . , p
s
numere prime distincte ¸si α
k
, β
k
≥ 0 pentru
1 ≤ k ≤ s. Atunci:
(n, m) =

1≤k≤s
p
min{α
k

k
}
k
,
[n, m] =

1≤k≤s
p
max{α
k

k
}
k
.
Obt ¸inem astfel, (n, m)[n, m] =[ n [ [ m [
6
Karl Friedrich Gauss (1777-1855), fiul unui zidar, a fost unul dintre copiii mi-
nune. La 3 ani a descoperit o gre¸seal˘ a ˆın statul de plat˘a al tat˘alui s˘au. La 8 ani
a rezolvat rapid problema sumei primelor 100 de numere naturale.
ˆ
In anul 1796 a
f˘acut o mare descoperire ˆın domeniul geometric, ce nu mai progresase din antichitate,
ar˘atˆand c˘a un poligon regulat cu 17 laturi poate fi construit cu rigla ¸si compasul.
ˆ
In
1799 a dat o demonstrat ¸ie riguroas˘a teoremei fundamentale a algebrei. Gauss a pus
bazele teoriei moderne a numerelor prin lucrarea sa Disquitiones Arithmeticae, ˆın
1801. Expresia sa favorit˘a, Matematica este regina ¸stiint ¸elor, iar teoria numerelor,
regina matematicii, subliniaz˘a pasiunea lui deosebit˘a pentru aceast˘a ¸stiint ¸˘ a. Cele mai
importante descoperiri ale sale au fost f˘acute de matematicianˆın tineret ¸e, restul viet ¸ii
petrecˆandu-l cu rafinarea lor. S-a dovedit c˘a multe rezultate care sunt atribuite unor
matematicieni au fost obt ¸inute de Gauss mai ˆınainte, el nepublicˆand toate studiile
f˘acute. Gauss a fost considerat de matematicienii contemporani lui Print ¸ul Mate-
maticii.
1.4. NUMERE PRIME 23
1.4 Numere prime
Numerele prime pot fi privite ca blocuri din care se formeaz˘a numerele
naturale, cum orice num˘ar natural ≥ 2 este produs de numere prime.
Una dintre primele probleme studiate referitor la mult ¸imea numerelor
prime a constat ˆın stabilirea cardinalit˘at ¸ii acesteia: este mult ¸imea in-
finit˘a sau nu?
Teorem˘a 1.4.1 (Euclid) Exist˘a o infinitate de numere prime.
Pentru aceast˘a teorem˘a, oferim acum dou˘a demonstrat ¸ii, urmˆand ca, ˆın
1.5, s˘a mai fie propus˘a o alta.
Demonstrat ¸ie. 1. (Euclid) Presupunem, prin absurd, c˘a mult ¸imea nu-
merelor prime este finit˘a. Astfel, presupunem c˘a exist˘a doar n numere
prime p
1
, p
2
, . . . , p
n
. Num˘arul N = p
1
p
2
. . . p
n
+ 1 este mai mare decˆat
1, deci are un divizor prim. Cum fiecare p
i
N, acesta va fi prim, adic˘a
N = p
k
pentru un k ∈ ¦1, . . . , n¦, ceea ce este absurd.
Demonstrat ¸ie 2. Fie P
n
= n! + 1, pentru n ≥ 1. Din lema 1.1.1, pentru
fiecare P
n
g˘asim cˆate un divizor prim p
n
. Dac˘a un p
n
≤ n, atunci p
n
[ n!
¸si cum p
n
[ P
n
, rezult˘a p
n
= 1, fals. Deci, p
n
> n, pentru orice n. Am
obt ¸inut astfel c˘a, pentru orice n ≥ 1, exist˘a p
n
> n num˘ar prim, ceea
ce arat˘a c˘a mult ¸imea numerelor prime este infinit˘a (Pentru n = 1 g˘asim
p
1
, apoi alegem n = p
1
¸si obt ¸inem un num˘ar prim > p
1
, etc.)
Demonstrat ¸ia lui Euclid furnizeaz˘a ¸si o anumit˘a majorare pentru al
n− lea num˘ar prim, pe care ˆıl not˘am cu p
n
. Dac˘a p este un num˘ar prim
diferit de p
1
, p
2
, . . . , p
n
¸si p [ p
1
p
2
. . . p
n
+ 1, atunci:
p
n+1
≤ p ≤ p
1
p
2
. . . p
n
+ 1.
Prin induct ¸ie matematic˘a dup˘a n, se poate demonstra u¸sor c˘a
p
n
< 2
2
n
.
Mult ¸imea numerelor prime fiind infinit˘a, a fost pus˘a apoi problema
distribut ¸iei numerelor prime, problem˘a care poate fi rezumat˘a astfel:
Definim funct ¸ia
π : R
+
→N
prin π(x) este egal cu num˘arul numerelor prime ≤ x.
Astfel, π(1) = 0, π(2) = 1, π(3) = π(4) = 2, etc.
24 CAPITOLUL 1. NUMERE
ˆ
INTREGI
S-a ˆıncercat g˘asirea unei formule de calcul pentru π(x).
Este evident c˘a π(p
n
) = n ¸si p
π(n)
= n, pentru orice num˘ar prim n.
Atunci, din p
n
< 2
2
n
, obt ¸inem π(2
2
n
) ≥ n, pentru orice num˘ar na-
tural n ≥ 1.
Propozit ¸ie 1.4.1 Pentru orice num˘ar real x > 1, avem
π(x) > ln(ln x).
Demonstrat ¸ie. Fie n cel mai mic num˘ar ˆıntreg mai mare ca ln(ln x).
Atunci n −1 ≤ ln(ln x) < n, ceea ce este echivalent cu
e
e
n−1
≤ x ≤ e
e
n
.
Dac˘a x ≥ e
e
3
, atunci n ≥ 4 ¸si avem:
e
3
> (2, 7)
3
= 19, 683 > 16 = 2
4
.
Astfel, e
n−1
= e
3
e
n−4
> 2
4
2
n−4
= 2
n
. Deci,
x ≥ e
e
n−1
> e
2
n
> 2
2
n
.
Atunci,
π(x) ≥ π(2
2
n
) ≥ n > ln(ln x).
Dac˘a 5 < x < e
e
3
, avem π(x) ≥ 3 > ln(ln x).
Dac˘a 2 ≤ x ≤ 5, avem e
e
> e
2
> (2, 7)
2
= 7, 29 > 5 ≥ x, de unde
π(x) ≥ 1 > ln(ln x).
Dac˘a 1 < x < 2, avem ln(x) < 1, de unde π(x) = 0 > ln(ln x).
O alt˘a relat ¸ie cunoscut˘a apare ˆın propozit ¸ia urm˘atoare. Pentru de-
monstrat ¸ie, putet ¸i consulta, [16].
Propozit ¸ie 1.4.2 Pentru orice num˘ar ˆıntreg pozitiv n, avem:
π(x) ≥
ln x
2 ln 2
.
1.4. NUMERE PRIME 25
Un rezultat de baz˘a legat de numerele prime este prezentat ˆın urm˘a-
toarea teorem˘a:
7
Teorem˘a 1.4.2 (Teorema numerelor prime)
lim
x→∞
π(x)
x
ln x
= 1
Pentru mai multe informat ¸ii legate de funct ¸ia π, se pot studia ine-
galit˘at ¸ile lui Cebˆı¸sev
8
ˆın [5].
Teorem˘a 1.4.3 Pentru orice num˘ar natural n ≥ 1, exist˘a cel put ¸in n
numere naturale compuse consecutive.
Demonstrat ¸ie. Consider˘am numerele
(n + 1)! + 2, (n + 1)! + 3, . . . , (n + 1)! +n + 1.
Este evident c˘a pentru 2 ≤ k ≤ n+1, k [ (n+1)! +k, deci cele n numere
construite init ¸ial sunt toate compuse.
Observat ¸ie 1.4.1 1) Conform teoremei, putem construi 7 numere na-
turale consecutive compuse ˆıncepˆand cu 8! + 2 = 40322. Dar, exist˘a 7
numere consecutive compuse mult mai mici, ca de exemplu: 90, 91, 92, 93,
94, 95, 96.
2) Teorema arat˘a c˘a distant ¸a dintre dou˘a numere prime este arbitrar˘a.
Un num˘ar prim p se nume¸ste pereche, dac˘a p + 2 este tot prim. Nu
se ¸stie dac˘a mult ¸imea acestor numere prime pereche este infinit˘a sau nu.
Teorem˘a 1.4.4 (Dirichlet) Fie a ¸si b numere naturale prime ˆıntre ele.
Atunci, progresia aritmetic˘a an+b, n ≥ 1 cont ¸ine o infinitate de numere
prime.
7
Aceast˘a teorem˘a a fost enunt ¸at˘a de Gauss ˆın 1793. Demonstrat ¸ia ei a fost re-
alizat˘a abia ˆın 1896, independent, de J. Hadamard ¸si de C.J. de la Vall´ee Poussin,
folosind analiza complex˘a.
8
Pafnuti Lvovici Cebˆı¸sev (1821-1894) a fost un matematician multilateral, care a
ˆımbinat mereu teoria cu practica. A inventat 40 de mecanisme diferite (ma¸sini de sor-
tat, pr˘a¸sitoare, mecanisme de vˆaslire, etc.), preocupare ce l-a condus la crearea unei
noi ramuri matematice: teoria celei mai bune aproxim˘ari a funct ¸iilor. Pentru rezul-
tatele deosebite obt ¸inute ˆın teoria numerelor, el a fost numit ˆınving˘ atorul numerelor
prime, care a fort ¸at torentul lor capricios s˘a intre ˆın limitele algebrei.
26 CAPITOLUL 1. NUMERE
ˆ
INTREGI
Aceast˘a teorem˘a este cunoscut˘a sub numele de Teorema Dirichlet
9
pentru numere prime ˆın progresie aritmetic˘a. Demonstrat ¸ia nu este
prezentat˘a aici. Ea poate fi studiat˘a ˆın [18] ¸si anumite cazuri particu-
lare ale ei, ˆın [5].
Una dintre problemele celebre nerezolvate despre numerele prime este
urm˘atoarea afirmat ¸ie, ˆıntˆalnit˘a ¸si sub numele de Conjectura lui Gold-
bach
10
: Orice num˘ar par este suma a dou˘a numere prime.
ˆ
Incheiem acest subcapitol sublinind o problem˘a actual˘a de mare im-
portant ¸˘a: determinarea de numere prime mari.
Astfel, ˆın anul 1984, Samuel Yates a definit not ¸iunea de num˘ar prim
titanic ca fiind un num˘ar prim cu cel put ¸in 1000 de cifre zecimale. La
acea perioad˘a nu se cuno¸steau decˆat 110 astfel de numere.
ˆ
In prezent,
sunt de peste 1000 de ori mai multe. Cum computerele ¸si criptografia dau
mare important ¸˘a c˘aut˘arii de numere prime mari, dimensiunea acestora
va continua s˘a creasc˘a.
Cele mai mari numere prime cunoscute sunt, de cele mai multe ori,
numere prime Mersenne M
p
(vezi capitolul 4.4) deoarece testarea pri-
malit˘at ¸ii lor se face descompunˆand u¸sor ˆın factori pe M
p
+ 1 (va fi o
putere a lui 2). Pe Internet sunt site-uri speciale care p˘astrez˘a ca baz˘a
de date multe numere prime (pot fi ¸si 6000). C˘art ¸ile de specialitate, chiar
dac˘a insereaz˘a aceste rezultate, nu vor putea oferi liste de actualitate,
t ¸inˆand cont de perioada de timp care trece de la conceperea c˘art ¸ii pˆan˘a
la publicarea ei. Ele sunt ˆıns˘a importante pentru c˘a pot furniza, mult
mai pe larg, teoria matematic˘a ce a stat la baza obt ¸inerii rezultatelor
practice.
9
G.Lejeune Dirichlet (1805-1859) a studiat la Universitatea din Paris, un centru
important pe plan mondial ˆın matematic˘a la aceea vreme. El a fost ales de c˘atre
Gauss s˘a-i succead˘a la catedr˘a, la Universitatea din G¨ottingen. Prin cartea sa de
teoria numerelor, Vorlesung ¨ uber Zahlentheorie, el a f˘acut ca descoperirile lui Gauss
s˘a fie accesibile majorit˘at ¸ii matematicienilor. A avut contribut ¸ii importante ¸si ˆın
domeniul analizei matematice iar principiul s˘au binecunoscut, cel al cutiei, este folosit
ˆın combinatoric˘a ¸si teoria numerelor.
10
Cristian Goldbach (1690-1764) a corespondat cu mult ¸i matematicieni eminent ¸i
ai epocii, cum ar fi Euler ¸si Bernoulli. Al˘aturi de celebrele sale conjecturi, el a avut
¸si multe contribut ¸ii importante ˆın analiza matematic˘a.
1.5. NUMERE FERMAT 27
1.5 Numere Fermat
Propozit ¸ie 1.5.1 Dac˘a n este un num˘ar natural ¸si 2
n
+ 1 este num˘ar
prim, atunci n este o putere a lui 2.
Demonstrat ¸ie. Presupunem c˘a n = 2
k
m cu k ∈ N ¸si m num˘ar impar.
Deci,
2
n
+ 1 =
_
2
2
k
_
m
+ 1
=
_
2
2
k
+ 1
_
_
_
2
2
k
_
m−1

_
2
2
k
_
m−2
+. . . + 1
_
.
Cum 2
n
+ 1 este prim, rezult˘a c˘a 2
2
k
+ 1 = 1, ceea ce nu este posibil,
sau 2
2
k
+ 1 = 2
n
+ 1 de unde n = 2
k
.
Definit ¸ie 1.5.1 Numerele Fermat sunt numerele de forma
F
n
= 2
2
n
+ 1, n ≥ 0.
Fermat
11
a afirmat c˘a toate aceste numere sunt prime. Pˆan˘a ˆın
prezent se cunosc ca fiind prime doar numerele Fermat:
F
0
= 3, F
1
= 5, F
2
= 17, F
3
= 257, F
4
= 65537,
f˘ar˘a a putea preciza dac˘a exist˘a o infinitate de numere prime Fermat.
ˆ
In 1732, Euler
12
a ar˘atat c˘a F
5
este compus, num˘arul fiind divizibil
cu 641. Demonstrat ¸ia este foarte elegant˘a, f˘ar˘a multe calcule. Ea se
11
Pierre de Fermat (1601-1665) era de profesie avocat. A fost probabil cel mai
mare matematician amator din istorie. Pe parcursul viet ¸ii nu a publicat nimic din
descoperirile sale, dar a corespondat cu mult ¸i matematicieni contemporani lui despre
acestea, de exemplu cu Mersenne. Dup˘a moartea sa, fiul s˘au a g˘asit toate notit ¸ele
sale ¸si le-a publicat.
12
Leonard Euler (1707-1783) a fost fiul unui preot elvet ¸ian. Pe lˆang˘ a teologie,
ˆındrumat de Johann Bernoulli, a studiat ¸si matematica. La 16 ani ¸si-a obt ¸inut doc-
toratul ˆın filozofie. A scris peste 700 de c˘art ¸i ¸si articole, l˘asˆ and atˆatea rezultate
nepublicate ˆıncˆat Academia Imperial˘a din Petersburg nu a sfˆar¸sit publicarea acestora
decˆat dup˘a 47 de ani de la moartea sa. Cu toate c˘a ultimii 17 ani din viat ¸˘a a fost
orb, datorit˘a memoriei sale except ¸ionale, a putut s˘a-¸si continue activitatea ¸stiint ¸ific˘a
pˆan˘a ˆın ultimul moment.
28 CAPITOLUL 1. NUMERE
ˆ
INTREGI
bazeaz˘a pe relat ¸ia 641 = 5 2
7
+ 1 = 2
4
+ 5
4
. Astfel,
F
5
= 2
2
5
+ 1 = 2
32
+ 1 = 2
4
2
28
+ 1
= (641 −5
4
)2
28
+ 1 = 641 2
28
−(5 2
7
)
4
+ 1
= 641 2
28
−(641 −1)
4
+ 1
= 641(2
28
−641
3
+ 4 641
2
−6 641 + 4).
Tot el, ˆın 1770, a ar˘atat c˘a orice divizor al lui F
n
trebuie s˘a fie de
forma 2
n+1
k +1, cu k ≥ 0. Acest rezultat a fost ˆımbun˘at˘at ¸it de Lucas,
ˆın 1878, prin teorema:
Teorem˘a 1.5.1 Orice divizor prim al lui F
n
, dac˘a exist˘a, este de forma
2
n+2
k + 1.
Spre exemplu, pentru F
3
= 257 se caut˘a divizori primi ≤

257 =
16, ... de forma 2
5
k + 1 = 32k + 1. Cum astfel de factori nu exist˘a,
F
3
este prim. La fel, pentru F
6
divizorii primi c˘autat ¸i ar fi de forma
2
8
k + 1 = 256k + 1 ≤

F
6
. Dup˘a mai multe calcule se obt ¸ine k = 1071,
¸si astfel, 274177 [ F
6
.
Lema urm˘atoare st˘a la baza unei propriet˘at ¸i importante a numerelor
Fermat. Demonstrat ¸ia, folosind metoda induct ¸iei matematice, este foarte
simpl˘a ¸si o l˘as˘am ca exercit ¸iu pentru cititor.
Lem˘a 1.5.1 Numerele Fermat verific˘a relat ¸ia de recurent ¸˘ a:
F
0
F
1
F
2
. . . F
n−1
= F
n
−2,
pentru n ≥ 1.
Propozit ¸ie 1.5.2 Pentru m, n ∈ N, distincte, numerele Fermat F
m
¸si
F
n
sunt prime ˆıntre ele.
Demonstrat ¸ie. Putem presupune n > m.
Din lema anterioar˘a, F
0
F
1
. . . F
m
. . . F
n−1
= F
n
−2.
Fie d = (F
n
, F
m
) . Cum d [ F
n
¸si d [ F
0
F
1
. . . F
n−1
, obt ¸inem c˘a d [ 2.
Dar, toate numerele Fermat sunt impare de unde rezult˘a d = 1.
Folosind acest rezultat putem oferi o alt˘a demonstrat ¸ie pentru teo-
rema 1.4.1:
Fiecare num˘ar Fermat este > 1, deci el va avea un factor prim. Fie
1.5. NUMERE FERMAT 29
p
n
un divizor prim al lui F
n
, cu n ∈ N. Dar, (F
n
, F
m
) = 1, pentru
m ,= n. Obt ¸inem astfel c˘a divizorii p
n
¸si p
m
sunt diferit ¸i. Cum mult ¸imea
divizorilor p
n
este infinit˘a, exist˘a o infinitate de numere prime.
Descompunerea ˆın factori primi a numerelor Fermat este foarte di-
ficil˘a, t ¸inˆand cont de dimensiunea lor mare. De fapt, s-au factorizat
complet doar numerele F
5
pˆan˘a la F
11
.
Astfel, ˆın 1880, Landry a factorizat F
6
, metoda folosit˘a nefiind publi-
cat˘a ˆıns˘a. F
7
a fost factorizat folosind metoda fract ¸iilor continue ˆın 1975
de c˘atre Morrison ¸si Brillhart. Pentru F
8
, ˆın 1981, Brent ¸si Pollard au
folosit o versiune a testului rho. Cu ajutorul metodei curbelor eliptice,
ˆın 1988, Brent a factorizat F
11
.
F
12
are 5 factori primi cunoscut ¸i, r˘amˆand un factor compus necunos-
cut de 1187 cifre. Pentru F
13
situat ¸ia este asem˘an˘atoare, ¸stiindu-se 4
factori primi iar cel compus, r˘amas de studiat, are 2391 cifre. Chiar dac˘a
nu se cunoa¸ste factorizarea lui F
14
, el este num˘ar compus.
ˆ
In prezent, se ¸stie c˘a F
n
este compus pentru 5 ≤ n ≤ 32. Dintre
acestea, singurele numere Fermat compuse pentru care nu este cunoscut
nici un divizor prim sunt F
14
, F
20
, F
22
¸si F
24
.
Numerele Fermat ˆı¸si g˘asesc important ¸a ˆın geometrie prin rezultatul
dat de Galois ˆın 1801. Acesta a stabilit c˘a un poligon regulat cu n laturi
este construibil cu rigla ¸si compasul dac˘a ¸si numai dac˘a n = 2
k
p
1
p
2
. . . p
r
,
unde k ∈ N ¸si p
1
, . . . p
r
sunt numere prime Fermat distincte.
De asemenea, aceste numere prezint˘a interes ¸si ˆın teoria corpurilor
finite. Astfel, dac˘a consider˘am un corp K de ordin 2
2
n
, grupul multi-
plicativ K

este o sum˘a direct˘a de n grupuri ciclice ale c˘aror ordine sunt
egale cu F
0
, F
1
, . . . , F
n−1
. Folosind acest rezultat, pentru a determina
ordinul unui element din K

este necesar s˘a cunoa¸stem descompunerea
ˆın factori primi a numerelor Fermat.
30 CAPITOLUL 1. NUMERE
ˆ
INTREGI
1.6 Ecuat ¸ii liniare diofantice
Cele mai sinple ecuat ¸ii liniare diofantice
13
sunt ecuat ¸ii liniare ˆın dou˘a
variabile:
ax +by = c, a, b, c ∈ Z. (1.2)
Aceste ecuat ¸ii pot avea o infinitate de solut ¸ii sau nici una.
Studiului acestora se bazeaz˘a pe proprietatea celui mai mare divizor
comun a dou˘a numere de a fi scris ca o combinat ¸ie liniar˘a a numerelor
considerate.
Teorem˘a 1.6.1 Fie a, b, c ∈ Z. Ecuat ¸ia ax + by = c are solut ¸ii ˆıntregi
dac˘a ¸si numai dac˘a d [ c unde d = (a, b).
Demonstrat ¸ie. Dac˘a d = (a, b), atunci d [ ax + by = c, pentru orice
numere ˆıntregi x, y. Reciproc, dac˘a d [ c, putem scrie c = dc

. Din teo-
rema 1.2.5, exist˘a u, v ∈ Z, pentru care au + bv = d. Obt ¸inem astfel
c = a(uc

) +b(vc

), adic˘a o solut ¸ie particular˘a a ecuat ¸iei ( 1.2) este dat˘a
de x
0
= uc

, y
0
= vc

. Mai mult, dac˘a ecuat ¸ia are o solut ¸ie, (x
0
, y
0
), ea
va avea o infinitate de solut ¸ii ¸si anume
x = x
0
+
b
d
t, y = y
0

a
d
t, t ∈ Z.
De exemplu, pentru c˘a avem deja rezultatele algoritmului lui Euclid
extins pentru numerele a = 34, b = 19, s˘a rezolv˘am ˆın numere ˆıntregi
ecuat ¸ia: 34x + 19y = 14.
Din (34, 19) = 1 = 34(−5) + 19 9 ¸si 1 [ 14, ecuat ¸ia are solut ¸ii ˆıntregi.
O solut ¸ie particular˘a este x
0
= (−5)14 = −70, y
0
= 9 14 = 126.
Solut ¸ia general˘a a ecuat ¸iei este dat˘a de x = −70 + 19t, y = 126 − 34t,
unde t ∈ Z.
13
Diofante (aprox. 250ˆı.e.n.), cunoscut ¸si ca tat˘ al algebrei, a scris Aritmetica, prima
carte de algebr˘a cunoscut˘a. Ea cont ¸ine, pentru prima dat˘a, notat ¸ii matematice pentru
a reprezenta necunoscute ¸si puteri ale acestora ˆın ecuat ¸ii, ˆın folosire sistematic˘a.
Despre viat ¸a sa, singura surs˘a de informat ¸ii este o epigram˘a g˘asit˘a ˆıntr-o colect ¸ie
numit˘a Antologia Greac˘ a: Diophantus ¸si-a petrecut 1/6 din viat ¸˘a ˆın copil˘ arie, 1/2
ˆın tineret ¸e, iar 1/7, nec˘ as˘ atorit. Dup˘a 5 ani de c˘as˘ atorie, s-a n˘ascut un fiu care a
murit cu 4 ani ˆınaintea tat˘alui, avˆand jum˘atate din vˆarsta tat˘alui. De aici, se poate
presupune c˘a Diophantus a tr˘ait 84 de ani.
1.6. ECUAT¸ II LINIARE DIOFANTICE 31
Demonstrat ¸ia teoremei conduce la utilizarea urm˘atorului algoritm de
rezolvare a ecuat ¸iilor liniare diofantice de forma ( 1.2):
Algoritm 1.6.1 (Rezolvarea ecuat ¸iei liniare diofantice)
INPUT: numerele naturale a, b, c.
OUTPUT: o solut ¸ie particular˘a a ecuat ¸iei ( 1.2), dac˘a exist˘a
solut ¸ii ˆıntregi.
1. Aplic˘a algoritmul 1.2.2 pentru numerele a, b
2. Dac˘a c mod d ,= 0, returneaz˘a ecuat ¸ia nu are solut ¸ii ˆıntregi
¸si se opre¸ste.
3. x
0
←uc/d, y
0
←vc/d
4. Returneaz˘a (x
0
, y
0
)
Exercit ¸ii propuse
1. Fie a, m, n numere naturale. Ar˘atat ¸i c˘a
(a
m
−1, a
n
−1) = a
d
−1,
unde d = (m, n).
2. Fie a, b dou˘a numere naturale, prime ˆıntre ele, astfel ˆıncˆat ab = c
n
.
Ar˘atat ¸i c˘a exist˘a d, e ∈ N astfel ca a = d
n
¸si b = e
n
.
3. Ar˘atat ¸i c˘a restul ˆımp˘art ¸irii unui p˘atrat perfect la 16 este tot un
p˘atrat perfect.
4. Dac˘a suma p˘atratelor a dou˘a numere ˆıntregi este divizibil˘a cu 11,
ar˘atat ¸i c˘a ¸si suma lor este divizibil˘a cu 11.
5. Determinat ¸i d = (184, 234) prin dou˘a metode. Aflat ¸i coeficient ¸ii
B´ezout corespunz˘atori.
6. Fie a, b, c numere naturale. Ar˘atat ¸i c˘a sunt verificate urm˘atoarele
relat ¸ii:
i) [a, b, c](ab, ac, bc) = abc.
ii) ([a, b], [a, c], [b, c]) = [(a, b), (a, c), (b, c)] .
7. Determinat ¸i numerele naturale care pentru care:
i) ab = 2400 ¸si (a, b) = 10.
ii) a +b = 36 (a, b) ¸si [a, b] = 3850.
32 CAPITOLUL 1. NUMERE
ˆ
INTREGI
8. Fie n ∈ N. Ar˘atat ¸i c˘a exponentul la care apare num˘arul prim p
ˆın descompunerea lui n! este egal cu:
_
n
p
_
+
_
n
p
2
_
+
_
n
p
3
_
+. . . .
9. Determinat ¸i num˘arul de zerouri din scrierea zecimal˘a a num˘arului
100!.
10. Demonstrat ¸i c˘a
(m+n)!
m! n!
∈ N, pentru orice numere naturale
m, n.
11. Fie a ¸si n dou˘a numere naturale. Ar˘atat ¸i c˘a dac˘a num˘arul a
n
−1
este prim, atunci a = 2 ¸si n este prim.
12. S˘a se determine numerele prime care se pot reprezenta atˆat ca
sum˘a cˆat ¸si ca diferent ¸˘a de numere prime.
13. Dac˘a num˘arul ab este prim, atunci 2a −b este num˘ar prim.
14. S˘a se determine numerele naturale n pentru care urm˘atoarele
numere sunt toate prime:
n + 1, n + 5, n + 7, n + 11, n + 13, n + 17, n + 23.
15. Verificat ¸i dac˘a F
4
este num˘ar prim sau nu, folosind rezultatul
teoremei 1.5.1.
16. Stabilit ¸i pentru ce valori ale num˘arului natural n ∈ [50, 80], un
poligon regulat cu n laturi se poate construi cu rigla ¸si compasul.
17. S˘a se rezolve, ˆın numere ˆıntregi, ecuat ¸ia 324x −170y = 19.
CAPITOLUL 2
Fract ¸ii continue
2.1 Fract ¸ii continue finite
Folosind algoritmul lui Euclid, putem exprima numerele rat ¸ionale sub
forma unor fract ¸ii continue.
De exemplu, fie
73
19
. Algoritmul lui Euclid aplicat numerelor 73 ¸si 19
const˘a ˆın relat ¸iile:
73 = 19 3 + 16
19 = 16 1 + 3
16 = 3 5 + 1
3 = 1 3.
Atunci, putem scrie:
73
19
= 3 +
16
19
= 3 +
1
19
16
= 3 +
1
1 +
3
16
= 3 +
1
1 +
1
16
3
= 3 +
1
1 +
1
5 +
1
3
.
Definit ¸ie 2.1.1 O fract ¸ie continu˘a finit˘a este o expresie de forma
a
0
+
1
a
1
+
1
a
2
+
.
.
.
+
1
a
n−1
+
1
a
n
33
34 CAPITOLUL 2. FRACT¸ II CONTINUE
unde a
0
, a
1
, . . . , a
n
sunt numere reale, cu a
1
, . . . , a
n
pozitive ¸si o vom
nota [a
0
: a
1
, a
2
, . . . , a
n
]. Aceste numere poart˘a numele de cˆaturi part ¸iale.
Fract ¸ia continu˘ a se nume¸ste simpl˘a dac˘a numerele reale a
0
, a
1
, . . . ,
a
n
sunt numere ˆıntregi.
Teorem˘a 2.1.1 Orice fract ¸ie continu˘ a finit˘a simpl˘a reprezint˘a un num˘ar
rat ¸ional.
Demonstrat ¸ie. Proced˘am prin induct ¸ie matematic˘a dup˘a n. Pentru
n = 1, [a
0
; a
1
] = a
0
+
1
a
1
=
a
0
a
1
+ 1
a
1
∈ Q.
Presupunem c˘a afirmat ¸ia este adev˘arat˘a pentru fract ¸ii continue, finite,
simple de forma [b
0
; b
1
, . . . b
k
]. Ar˘at˘am c˘a afirmat ¸ia r˘amˆane adev˘arat˘a ¸si
pentru [a
0
; a
1
, . . . a
k
, a
k+1
].
Avem egalitatea [a
0
; a
1
, . . . a
k
, a
k+1
] = a
0
+
1
[a
1
; a
2
, . . . , a
k+1
]
. Din ipoteza
de induct ¸ie, [a
1
; a
2
, . . . , a
k+1
] este num˘ar rat ¸ional. Astfel, obt ¸inem c˘a ¸si
[a
0
; a
1
, . . . a
k
, a
k+1
] este rat ¸ional.
Teorem˘a 2.1.2 Orice num˘ar rat ¸ional se poate exprima ca o fract ¸ie con-
tinu˘a finit˘a simpl˘a.
Demonstrat ¸ie. Fie x =
a
b
un num˘ar rat ¸ional, unde a, b ∈ Z, b > 0.
Aplic˘am algoritmul lui Euclid pentru r
0
= a ¸si r
1
= b. Obt ¸inem relat ¸iile:
r
0
= r
1
q
2
+r
2
, 0 < r
2
< r
1
r
1
= r
2
q
3
+r
3
, 0 < r
3
< r
2
.
.
.
r
n−3
= r
n−2
q
n−1
+r
n−1
, 0 < r
n−1
< r
n−2
r
n−2
= r
n−1
q
n
+r
n
, 0 < r
n
< r
n−1
r
n−1
= r
n
q
n+1
.
Astfel,
a
b
=
r
0
r
1
= q
2
+
1
r
1
r
2
r
1
r
2
= q
3
+
1
r
2
r
3
2.1. FRACT¸ II CONTINUE FINITE 35
. . .
r
n−3
r
n−2
= q
n−1
+
1
r
n−2
r
n−1
r
n−2
r
n−1
= q
n
+
1
r
n−1
r
n
r
n−1
r
n
= q
n+1
.
Remarc˘am faptul c˘a q
3
, . . . , q
n+1
> 0.
ˆ
Inlocuind relat ¸iile, una cˆate
una, rezult˘a:
a
b
= q
2
+
1
q
3
+
1
r
2
r
3
= q
2
+
1
q
3
+
1
q
4
+
1
r
3
r
4
= . . .
= [q
2
; q
3
, . . . , q
n+1
].
Prezent˘am ˆın continuare un algoritm de reprezentare a unui num˘ar
rat ¸ional sub forma unei fract ¸ii continue:
Algoritm 2.1.1
INPUT: a/b, a, b ∈ Z, b ,= 0.
OUTPUT: [a
0
; a
1
, . . . , a
n
]
1. a
0
←[a/b], r ←a −a
0
b, a ←b, b ←r.
2. k ←0
3. Cˆat timp r ,= 0, calculeaz˘ a:
3.1. k ←k + 1
3.2. a
k
←[a/b], r ←a −a
k
b, a ←b, b ←r.
4. Returneaz˘a [a
0
; a
1
, . . . , a
n
].
Observat ¸ie 2.1.1 Scrierea unui num˘ar rat ¸ional sub forma unei fract ¸ii
continue finite simple nu este unic˘a. Dac˘a consider˘am x = [a
0
; a
1
, . . . , a
n
]
fract ¸ia continu˘a finit˘a simpl˘a corespunz˘atoare num˘arului rat ¸ional x, pen-
tru a
n
> 1, putem scrie a
n
= (a
n
−1) + 1, de unde
x = [a
0
; a
1
, . . . , a
n
−1, 1].
36 CAPITOLUL 2. FRACT¸ II CONTINUE
De exemplu,
73
19
= [3; 1, 5, 3] = [3; 1, 5, 2, 1].
De fapt, se poate ar˘ata c˘a un num˘ar rat ¸ional se poate scrie ca o
fract ¸ie continu˘a finit˘a simpl˘a ˆın exact dou˘a feluri, unul cu un num˘ar
impar de termeni iar altul cu un num˘ar par de termeni.
S˘a vedem ce se poate obt ¸ine dintr-o fract ¸ie continu˘a finit˘a prin t˘aierea
expresiei la pa¸si diferit ¸i.
Definit ¸ie 2.1.2 Fract ¸ia continu˘a [a
0
; a
1
, . . . , a
k
], cu 0 ≤ k ≤ n, se
nume¸ste k−convergenta fract ¸iei continue [a
0
; a
1
, . . . , a
n
] ¸si o not˘am C
k
.
Teorem˘a 2.1.3 Fie a
0
, a
1
, . . . , a
n
numere reale cu a
i
> 0 pentru
1 ≤ i ≤ n.
Definim recursiv ¸sirurile:
p
0
= a
0
q
0
= 1
p
1
= a
0
a
1
+ 1 q
1
= a
1
p
k
= a
k
p
k−1
+p
k−2
q
k
= a
k
q
k−1
+q
k−2
, 2 ≤ k ≤ n
Atunci, k−convergenta C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
.
Demonstrat ¸ie. Ar˘at˘am c˘a aceast˘a afirmat ¸ie este adev˘arat˘a folosind metoda
induct ¸iei matematice.
Pentru k = 0, C
0
= [a
0
] =
a
0
1
=
p
0
q
0
.
Dac˘a k = 1, C
1
= [a
0
; a
1
] = a
0
+
1
a
1
=
a
0
a
1
+ 1
a
1
=
p
1
q
1
.
Presupunem acum C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
=
a
k
p
k−1
+p
k−2
a
k
q
k−1
+q
k−2
pentru
2 < k < n.
Din modul de definire a fiec˘arui p
i
, q
i
, observ˘am c˘a numere reale p
k−2
,
p
k−1
, q
k−2
, q
k−1
depind doar de cˆaturile part ¸iale a
0
, a
1
, . . . , a
k−1
. Astfel,
putem ˆınlocui ˆın ultima relat ¸ie a
k
prin a
k
+
1
a
k+1
. Atunci,
C
k+1
= [a
0
; a
1
, . . . , a
k
, a
k+1
] =
_
a
0
; a
1
, . . . , a
k
+
1
a
k+1
_
2.1. FRACT¸ II CONTINUE FINITE 37
=
_
a
k
+
1
a
k+1
_
p
k−1
+p
k−2
_
a
k
+
1
a
k+1
_
q
k−1
+q
k−2
=
a
k+1
(a
k
p
k−1
+p
k−2
) +p
k−1
a
k+1
(a
k
q
k−1
+q
k−2
) +q
k−1
=
a
k+1
p
k
+p
k−1
a
k+1
q
k
+q
k−1
=
p
k+1
q
k+1
.
Pentru exemplul nostru,
73
19
= [3; 1, 5, 3], obt ¸inem:
p
0
= 3, q
0
= 1,
p
1
= 3 1 + 1 = 4, q
1
= 1,
p
2
= 5 4 + 3 = 23, q
2
= 5 1 + 1 = 6
p
3
= 3 23 + 4 = 73, q
3
= 3 6 + 1 = 19.
Convergentele fract ¸iei continue sunt:
C
0
=
p
0
q
0
= 3, C
1
=
p
1
q
1
= 4, C
2
=
p
2
q
2
=
23
6
, C
3
=
p
3
q
3
=
73
19
.
Propozit ¸ie 2.1.1 Fie k ≥ 1, num˘ar natural ¸si consider˘am C
k
=
p
k
q
k
,
k−convergenta fract ¸iei continue [a
0
; a
1
, . . . , a
n
], definit˘a ca mai ˆınainte.
Atunci,
p
k
q
k−1
−p
k−1
q
k
= (−1)
k−1
.
Demonstrat ¸ie. Prin induct ¸ie matematic˘a dup˘a k.
S˘a verific˘am relat ¸iile pentru exemplul anterior:
p
1
q
0
−p
0
q
1
= 4 1 −3 1 = 1,
p
2
q
1
−p
1
q
2
= 23 1 −4 6 = −1,
p
3
q
2
−p
2
q
3
= 73 6 −23 19 = 1.
Corolar 2.1.1 Fie C
k
, k−convergenta fract ¸iei continue simple
[a
0
; a
1
, . . . , a
n
]. Atunci, (p
k
, q
k
) = 1, pentru 1 ≤ k ≤ n.
Corolar 2.1.2 Fie C
k
=
p
k
q
k
k−convergenta fract ¸iei continue
[a
0
; a
1
, . . . , a
n
]. Atunci,
C
k
−C
k−1
=
(−1)
k−1
q
k
q
k−1
, 1 ≤ k ≤ n,
38 CAPITOLUL 2. FRACT¸ II CONTINUE
C
k
−C
k−2
=
a
k
(−1)
k
q
k
q
k−2
, 2 ≤ k ≤ n.
Urm˘atoarea teorem˘a va fi folosit˘a la dezvoltarea fract ¸iilor continue
infinite.
Teorem˘a 2.1.4 Fie C
k
k−convergenta fract ¸iei continue simple finite
[a
0
; a
1
, . . . , a
n
]. Atunci,
C
1
> C
3
> C
5
> . . .
C
0
< C
2
< C
4
. . . .
ˆ
In plus, pentru orice num˘ar impar 2i+1 ≤ n, ¸si orice num˘ar par 2j ≤ n,
C
2i+1
> C
2j
.
Demonstrat ¸ie. Din corolarul 2.1.2, C
k
−C
k−2
=
a
k
(−1)
k
q
k
q
k−2
. Astfel, pentru
k impar, C
k
−C
k−2
< 0 iar pentru k num˘ar par, C
k
> C
k−2
.
La fel, C
2m+1
−C
2m
=
(−1)
2m
q
2m
q
2m−1
> 0. Deci, C
2m+1
> C
2m
.
ˆ
In final, rezult˘a C
2i+1
> C
2i+2j+1
> C
2i+2j
> C
2j
.
2.2 Fract ¸ii continue infinite
Teorem˘a 2.2.1 Fie (a
n
)
n≥0
un ¸sir de numere ˆıntregi cu a
1
, a
2
, . . . po-
zitivi ¸si fie C
k
= [a
0
; a
1
, . . . , a
k
]. Atunci, exist˘a lim
n→∞
C
n
= α.
Demonstrat ¸ie. Folosind teorema 2.1.4, avem
C
1
> C
3
> C
5
> . . . > C
2n−1
> C
2n+1
> . . .
C
0
< C
2
< C
4
< . . . < C
2n−2
< C
2n
< . . .
¸si C
2j
< C
2k+1
, pentru orice j, k numere naturale. Astfel, obt ¸inem c˘a
sub¸sirurile (C
2n+1
)
n≥0
¸si (C
2n
)
n≥0
sunt convergente.
Not˘am lim
n→∞
C
2n+1
= α
1
¸si lim
n→∞
C
2n
= α
2
.
Din corolarul 2.1.2, C
2n+1
−C
2n
=
1
q
2n
q
2n+1
.
Folosind induct ¸ia matematic˘a, se verific˘a u¸sor c˘a q
k
≥ k, pentru orice
k ≥ 1. Atunci, C
2n+1
−C
2n
<
1
2n(2n + 1)
.
2.2. FRACT¸ II CONTINUE INFINITE 39
Astfel, lim
n→∞
(C
2n+1
−C
2n
) = 0.
De aici, 0 = lim
n→∞
C
2n+1
− lim
n→∞
C
2n
= α
1
−α
2
. Deci, α
1
= α
2
= α.
Observat ¸ie 2.2.1 α se nume¸ste valoarea fract ¸iei continue simple infi-
nite [a
0
; a
1
, a
2
, a
3
, . . .].
Teorem˘a 2.2.2 Fie (a
n
)
n≥0
un ¸sir de numere ˆıntregi cu a
1
, a
2
, . . .
pozitivi. Atunci, [a
0
; a
1
, a
2
, . . .] este un num˘ar irat ¸ional.
Demonstrat ¸ie. Fie α = [a
0
; a
1
, a
2
, . . .] ¸si C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
,
pentru k natural. Din teorema 2.2.1, C
2n
< α < C
2n+1
, pentru n
natural. Atunci, 0 < α − C
2n
< C
2n+1
− C
2n
=
1
q
2n
q
2n+1
. Astfel,
0 < α −
p
2n
q
2n
<
1
q
2n
q
2n+1
.
Rezult˘a
0 < αq
2n
−p
2n
<
1
q
2n+1
. (2.1)
Reducem la absurd, ¸si presupunem c˘a α este rat ¸ional. Fie a, b ∈ Z,
cu b ,= 0, pentru care α =
a
b
.
ˆ
Inmult ¸ind relat ¸ia ( 2.1) cu b, obt ¸inem 0 < aq
2n
−bp
2n
<
b
q
2n+1
. Cum
q
2n+1
≥ 2n + 1, pentru orice n, exist˘a n
0
natural astfel ca q
2n
0
+1
> b,
deci
b
q
2n
0
+1
< 1.
Am obt ¸inut astfel, c˘a num˘arul ˆıntreg aq
2n
0
−bp
2n
0
∈ (0, 1), ceea ce fals.
Rezult˘a α num˘ar irat ¸ional.
Teorem˘a 2.2.3 Fie α = α
0
un num˘ar irat ¸ional. Definim recursiv ¸sirul
de numere ˆıntregi (a
n
)
n≥0
prin: a
k
= [α
k
], α
k+1
=
1
α
k
−a
k
, pentru
k ∈ N. Atunci, α = [a
0
; a
1
, a
2
, . . .].
Demonstrat ¸ie. Ar˘at˘am, prin induct ¸ie matematic˘a, c˘a α
k
/ ∈ Q, pentru
orice k.
Pentru k = 0, α = α
0
este irat ¸ional.
Presupunem α
k
irat ¸ional, pentru k > 0. Din modul de definire al ¸sirului,
α
k
= a
k
+
1
α
k+1
. (2.2)
40 CAPITOLUL 2. FRACT¸ II CONTINUE
Dac˘a α
k+1
este rat ¸ional, rezult˘a α
k
rat ¸ional, ceea ce contrazice ipoteza
de induct ¸ie. Deci, α
k+1
este irat ¸ional.
Din α
k
,= a
k
¸si a
k
< α
k
< a
k
+ 1, rezult˘a 0 < α
k
− a
k
< 1 ¸si astfel,
α
k+1
=
1
α
k
−a
k
> 1, pentru orice k natural.
Deci, a
k+1
= [α
k+1
] ≥ 1, adic˘a a
1
, a
2
, . . . sunt pozitive.
Din ( 2.2),
α = α
0
= a
0
+
1
α
1
= [a
0
; α
1
]
= a
0
+
1
a
1
+
1
α
2
= [a
0
; a
1
, α
2
]
= . . .
= [a
0
; a
1
, a
2
, . . . , a
k
, α
k+1
].
Deci,
α = [a
0
; a
1
, a
2
. . . , a
k
, α
k+1
] =
α
k+1
p
k
+p
k−1
α
k+1
q
k
+q
k−1
.
Fie C
j
=
p
j
q
j
, j−convergenta fract ¸iei [a
0
; a
1
, a
2
, . . .]. Atunci, folosind
propozit ¸ia 2.1.1,
α −C
k
=
α
k+1
p
k
+p
k−1
α
k+1
q
k
+q
k−1

p
k
q
k
=
−(p
k
q
k−1
−p
k−1
q
k
)

k+1
q
k
+q
k−1
) q
k
=
=
(−1)
k

k+1
q
k
+q
k−1
) q
k
.
Dar, α
k+1
q
k
+q
k−1
> a
k+1
q
k
+q
k−1
= q
k+1
. Obt ¸inem
[ α −C
k
[<
1
q
k
q
k+1

1
k(k + 1)
, de unde lim
k→∞
C
k
= α.
Teorem˘a 2.2.4 Dac˘a dou˘a fract ¸ii continue simple infinite
[a
0
; a
1
, a
2
, . . .] ¸si [b
0
; b
1
, b
2
, . . .] reprezint˘a acela¸si num˘ar irat ¸ional, atunci
a
k
= b
k
, pentru orice k ≥ 0.
Demonstrat ¸ie. Presupunem α = [a
0
; a
1
, a
2
, . . .]. Atunci,
α = lim
k→∞
[a
0
; a
1
, . . . , a
k
] = lim
k→∞
_
a
0
+
1
[a
1
; a
2
, a
3
, . . . , a
k
]
_
2.2. FRACT¸ II CONTINUE INFINITE 41
= a
0
+
1
lim
k→∞
[a
1
; a
2
, a
3
, . . . , a
k
]
= a
0
+
1
[a
1
; a
2
, a
3
, . . .]
.
Din C
0
= a
0
, C
1
= a
0
+
1
a
1
, rezult˘a:
a
0
< α < a
0
+
1
a
1
,
adic˘a a
0
= [α].
Presupunem [a
0
; a
1
, a
2
, . . .] = [b
0
; b
1
, b
2
, . . .]. Astfel, am obt ¸inut
a
0
= b
0
= [α] ¸si a
0
+
1
[a
1
; a
2
, . . .]
= b
0
+
1
[b
1
; b
2
, . . .]
, de unde
[a
1
; a
2
, . . .] = [b
1
; b
2
, . . .].
Presupunem c˘a a
k
= b
k
. Din [a
k+1
; a
k+2
, . . .] = [b
k+1
; b
k+2
, . . .] rezult˘a
a
k+1
= b
k+1
¸si a
k+1
+
1
[a
k+2
; a
k+3
, . . .]
= b
k+1
+
1
[b
k+2
; b
k+3
, . . .]
. Astfel,
[a
k+2
; a
k+3
, . . .] = [b
k+2
; b
k+3
, . . .]. Deci, prin induct ¸ie matematic˘a, am
ar˘atat c˘a a
k
= b
k
, pentru orice k.
S˘a consider˘am α =

7. Folosind ultimele dou˘a teoreme, s˘a g˘asim
fract ¸ia continu˘a infinit˘a corespunz˘atoare.
a
0
= [

7] = 2, α
1
=
1

7 −2
=

7 + 2
3
,
a
1
= [α
1
] = 1, α
2
=
1
2 +

7
3
−1
=

7 + 1
2
,
a
2
= [α
2
] = 1, α
3
=
1

7 + 1
2
−1
=

7 + 1
3
,
a
3
= [α
3
] = 1, α
4
=
1

7 + 1
3
−1
= 2 +

7,
a
4
= [α
4
] = 4, α
5
=
1
2 +

7 −4
=
1

7 −2
= α
1
.
Obt ¸inem astfel,

7 = [2; 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, . . .].
Convergentele unei fract ¸ii continue simple infinite ale unui num˘ar
irat ¸ional α sunt cele mai bune aproxim˘ari rat ¸ionale ale lui α, ˆın sensul
42 CAPITOLUL 2. FRACT¸ II CONTINUE
c˘a
p
k
q
k
e mai aproape de α decˆat orice alt num˘ar rat ¸ional cu numitorul
mai mic decˆat q
k
.
Prezent˘am aceste teoreme f˘ar˘a demonstrat ¸ii. Pentru cei interesat ¸i,
problema este abordat˘a ˆın detaliu ˆın [5] ¸si [20].
Teorem˘a 2.2.5 Fie α un num˘ar irat ¸ional ¸si
p
j
q
j
j−convergentele fract ¸iei
continue simple infinite corespunz˘atoare lui α.
Dac˘a r, s ∈ Z, cu s > 0, ¸si k ∈ N, astfel ca
[ sα −r [<[ q
k
α −p
k
[,
atunci s ≥ q
k+1
.
Corolar 2.2.1 Fie α un num˘ar irat ¸ional ¸si
p
j
q
j
j−convergentele fract ¸iei
continue simple infinite corespunz˘atoare lui α.
Dac˘a
r
s
∈ Q, cu r, s ∈ Z, s > 0, ¸si k ∈ N astfel ˆıncˆat
¸
¸
¸
¸
α −
r
s
¸
¸
¸
¸
<
¸
¸
¸
¸
α −
p
k
q
k
¸
¸
¸
¸
,
atunci s > q
k
.
De exemplu, fract ¸ia continu˘a simpl˘a a lui π este
[3; 7, 15, 1, 292, 1, 1, 1, 2, 1, 3, . . .].
Convergentele: 3,
22
7
,
333
106
,
355
113
,
103993
33102
, sunt cele mai bune aproxim˘ari
rat ¸ionale ale lui π:
22
7
este cea mai bun˘a aproximare a lui π cu numitor < 106,
335
113
este cea mai bun˘a aproximare a lui π cu numitor < 33102, etc.
De asemenea, se poate ar˘ata c˘a orice suficient de apropiat˘a aproxi-
mare rat ¸ional˘a a unui num˘ar irat ¸ional trebuie s˘a fie o convergent˘a a
fract ¸iei corespunz˘atoare num˘arului irat ¸ional luat ˆın discut ¸ie.
2.3. FRACT¸ II CONTINUE PERIODICE 43
Teorem˘a 2.2.6 Fie α un num˘ar irat ¸ional ¸si
r
s
∈ Q, cu r, s ∈ Z, rela-
tiv prime, s > 0, cu proprietatea c˘a
¸
¸
¸
¸
α −
r
s
¸
¸
¸
¸
<
1
2s
2
. Atunci,
r
s
este o
convergent˘a a fract ¸iei continue simple a lui α.
2.3 Fract ¸ii continue periodice
Definit ¸ie 2.3.1 O fract ¸ie continu˘a infinit˘a simpl˘a [a
0
; a
1
, a
2
, . . .] este
periodic˘a dac˘a exist˘a N ¸si k numere naturale astfel ca a
n
= a
n+k
, pentru
orice n ≥ N.
Vom folosi notat ¸ia [a
0
; a
1
, . . . a
N−1
, a
N
, a
N+1
, . . . , a
N+k−1
] .
De exemplu,
_
1; 2, 3, 4
¸
= [1; 2, 3, 4, 3, 4, 3, 4, . . .].
Definit ¸ie 2.3.2 Un num˘ar real α se nume¸ste irat ¸ional p˘atratic dac˘a
α este irat ¸ional ¸si este r˘ad˘acin˘a a unui polinom de gradul al doilea cu
coeficient ¸i ˆıntregi.
Urm˘atoarele rezultate introductive sunt u¸sor de demonstrat, drept
pentru care vor fi doar enunt ¸ate.
Lem˘a 2.3.1 Num˘arul real α este irat ¸ional p˘atratic dac˘a ¸si numai dac˘a
exist˘a a, b, c numere ˆıntregi, cu b > 0, b nu este p˘atrat perfect ¸si c ,= 0,
astfel ˆıncˆat α =
a +

b
c
.
Lem˘a 2.3.2 Dac˘a α este num˘ar irat ¸ional p˘atratic ¸si r, s, t, u ∈ Z, atunci
rα +s
tα +u
este num˘ar rat ¸ional sau irat ¸ional p˘atratic.
Definit ¸ie 2.3.3 Fie α =
a +

b
c
un num˘ar irat ¸ional p˘atratic.
Atunci, α

=
a −

b
c
se nume¸ste conjugatul lui α.
Lem˘a 2.3.3 Dac˘a α este un num˘ar irat ¸ional p˘atratic, r˘ad˘acin˘a a poli-
nomului AX
2
+BX+C ∈ Z[X], α

este cealalt˘a r˘ad˘acin˘a a polinomului.
44 CAPITOLUL 2. FRACT¸ II CONTINUE
Lem˘a 2.3.4 Fie α
1
=
a
1
+
_
b
1
c
2
, α
2
=
a
2
+
_
b
2
c
2
dou˘a numere rat ¸ionale
sau irat ¸ionale p˘atratice. Atunci:

1

2
)

= α

1

2

1
−α
2
)

= α

1
−α

2

1
α
2
)

= α

1
α

2
_
α
1
α
2
_

=
α

1
α

2
Lem˘a 2.3.5 Dac˘a α este un num˘ar irat ¸ional p˘atratic, atunci exist˘a nu-
merele ˆıntregi P, Q, d cu Q ,= 0, d > 0 nu este p˘atrat perfect, Q [ d −P
2
astfel ˆıncˆat α =
P +

d
Q
.
Demonstrat ¸ie. Din lema 2.3.1, exist˘a a, b, c ∈ Z cu c ,= 0, b > 0 nu este
p˘atrat perfect, pentru care α =
a +

b
c
.
Atunci, putem scrie α =
a [ c [ +

bc
2
c [ c [
.
Facem notat ¸iile: P = a [ c [, Q = c [ c [ ¸si d = bc
2
. Se observ˘a c˘a
P, Q, d ∈ Z, Q ,= 0, d > 0 nu e p˘atrat perfect.
Din d − P
2
= bc
2
− a
2
c
2
= c
2
_
b −a
2
_
= ±Q
_
b −a
2
_
, obt ¸inem
Q [ d −P
2
.
Teorema urm˘atoare ofer˘a un algoritm de determinare a fract ¸iei con-
tinue simple corespunz˘atoare unui irat ¸ional p˘atratic.
Teorem˘a 2.3.1 Fie α =
P
0
+

d
Q
0
un irat ¸ional p˘atratic cu Q
0
,= 0,
d > 0 care nu este p˘atrat perfect ¸si Q
0
[ d −P
2
0
.
Definim recursiv, pentru k ≥ 0:
α
k
=
P
k
+

d
Q
k
, a
k
= [α
k
],
P
k+1
= a
k
Q
k
−P
k
,
Q
k+1
=
d −P
2
k+1
Q
k
.
Atunci, α = [a
0
; a
1
, a
2
, . . .].
2.3. FRACT¸ II CONTINUE PERIODICE 45
Demonstrat ¸ie. Prin induct ¸ie matematic˘a ar˘at˘am c˘a
P
k
, Q
k
∈ Z, Q
k
,= 0, Q
k
[ d −P
2
k
, (2.3)
pentru k ≥ 0.
Pentru k = 0, din ipoteza teoremei, relat ¸iile sunt verificate.
Presupunem c˘a ( 2.3) este adev˘arat˘a pentru k ¸si ar˘at˘am c˘a ea r˘amˆane
adev˘arat˘a pentru k + 1.
P
k+1
= a
k
Q
k
−P
k
, deci P
k+1
∈ Z.
Q
k+1
=
d −P
2
k+1
Q
k
=
d −(a
k
Q
k
−P
k
)
2
Q
k
=
d −P
2
k
Q
k
+ 2a
k
P
k
− a
2
k
Q
k
∈ Z
cum, din ipoteza de induct ¸ie,
d −P
2
k
Q
k
∈ Z.
d ,= P
2
k+1
, nefiind p˘atrat perfect. Atunci Q
k+1
=
d −P
2
k+1
Q
k
,= 0.
Din Q
k
=
d −P
2
k+1
Q
k+1
∈ Z, rezult˘a Q
k+1
[ d −P
2
k+1
.
Demonstr˘am acum c˘a a
0
, a
1
, a
2
, . . . sunt cˆaturile part ¸iale ale fract ¸iei
continue corespunz˘atoare lui α. Pentru aceasta, folosim teorema 2.2.3
¸si ar˘at˘am c˘a α
k+1
=
1
α
k
−a
k
, pentru orice k ≥ 0.
α
k
−a
k
=
P
k
+

d
Q
k
−a
k
=

d −(a
k
Q
k
−P
k
)
Q
k
=

d −P
k+1
Q
k
=
_

d −P
k+1
__

d +P
k+1
_
Q
k
_

d +P
k+1
_
=
Q
k
Q
k+1
Q
k
_

d +P
k+1
_ =
Q
k+1

d +P
k+1
=
1
α
k+1
.
De exemplu, pentru α =
2 +

7
3
irat ¸ional p˘atratic avem
P
0
= 2, d = 7, Q
0
= 3. Atunci,
a
0
= [α] = 1 a
1
= [α
1
] = 1
P
1
= 1 3 −2 = 1 P
2
= 1 2 −1 = 1
46 CAPITOLUL 2. FRACT¸ II CONTINUE
Q
1
=
7 −1
3
= 2 Q
2
=
7 −1
2
= 3
α
1
=
1 +

7
2
α
2
=
1 +

7
3
a
2
= [α
2
] = 1 a
3
= [α
3
] = 4
P
3
= 1 3 −1 = 2 P
4
= 4 1 −2 = 2
Q
3
=
7 −4
3
= 1 Q
4
=
7 −4
1
= 3
α
3
= 2 +

7 α
4
=
2 +

7
3
= α
0
.
Astfel, α =
2 +

7
3
=
_
1; 1, 1, 4
¸
.
Teorem˘a 2.3.2 (Lagrange) Fract ¸iile continue simple infinite cores-
punz˘atoare pentru numere irat ¸ionale sunt periodice dac˘a ¸si numai dac˘a
numerele sunt irat ¸ionale p˘atratice.
Demonstrat ¸ie. Fie α = [a
0
; a
1
. . . , a
N−1
, a
N
, a
N+1
, . . . a
N+k
].
Not˘am β = [a
N
; a
N+1
, . . . a
N+k
] . Atunci, β = [a
N
; a
N+1
, . . . a
N+k
, β].
Folosind rezultatul teoremei 2.1.3, β =
βp
k
+p
k−1
βq
k
+q
k−1
unde
p
k−1
q
k−1
¸si
p
k
q
k
sunt convergente ale fract ¸iei [a
N
; a
N+1
, . . . , a
N+k
].
Cum fract ¸ia continu˘a simpl˘a a lui β este infinit˘a, β este irat ¸ional.
Din relat ¸ia anterioar˘a, q
k
β
2
+ (q
k−1
−p
k
) β − p
k−1
= 0. Deci, β este
irat ¸ional p˘atratic.
Se observ˘a c˘a α = [a
0
; a
1
, . . . , a
N−1
, β]. De aici,
α =
βp
N−1
+p
N−2
βq
N−1
+q
N−2
unde
p
N−1
q
N−1
¸si
p
N−2
q
N−2
sunt convergentele fract ¸iei
[a
0
; a
1
, . . . , a
N−1
]. Din lema 2.3.2, cum β este irat ¸ional p˘atratic, rezult˘a
α rat ¸ional sau irat ¸ional p˘atratic. Fract ¸ia continu˘a corespunz˘atoare lui α
fiind infinit˘a, α nu este rat ¸ional. Deci, α este irat ¸ional p˘atratic.
Reciproc, consider˘am acum α irat ¸ional p˘atratic. Din lema 2.3.5,
α =
P
0
+

d
Q
0
, iar din teorema 2.3.1, α = [a
0
; a
1
, a
2
, . . .] unde
α
k
=
P
k
+

d
Q
k
, a
k
= [α
k
], P
k+1
= a
k
Q
k
−P
k
¸si Q
k+1
=
d −P
2
k+1
Q
k
.
2.3. FRACT¸ II CONTINUE PERIODICE 47
Cum α = [a
0
; a
1
, a
2
, . . . , α
k
], din teorema 2.2.3, rezult˘a
α =
α
k
p
k−1
+p
k−2
α
k
q
k−1
+q
k−2
.
Prin conjugare, obt ¸inem α

=
α

k
p
k−1
+p
k−2
α

k
q
k−1
+q
k−2
de unde,
α

k
=
−q
k−2
q
k−1

α


p
k−2
q
k−2
α


p
k−1
q
k−1
.
Convergentele
p
k−1
q
k−1
¸si
p
k−2
q
k−2
tind la α, pentru k →∞.
Astfel, lim
k→∞
α


p
k−2
q
k−2
α


p
k−1
q
k−1
= 1.
Deci, exist˘a N natural astfel ˆıncˆat α

k
< 0 pentru k ≥ N. Cum
α
k
> 0, pentru orice k ≥ 1, rezult˘a
α
k
− α

k
=
P
k
+

d
Q
k

P
k


d
Q
k
=
2

d
Q
k
> 0 pentru k ≥ N. Astfel,
Q
k
> 0, pentru k ≥ N.
Din Q
k
Q
k+1
= d −P
2
k+1
, pentru k ≥ N, obt ¸inem:
Q
k
≤ Q
k
Q
k+1
≤ d
¸si
P
2
k+1
≤ P
2
k+1
+Q
k
Q
k+1
= d.
Deci, pentru k ≥ N avem:


d < P
k+1
<

d, 0 < Q
k
≤ d.
Astfel, cum P
k
, Q
k
sunt numere ˆıntregi, exist˘a un num˘ar finit de valori
posibile pentru perechile (P
k
, Q
k
) cu k ≥ N. Dar, k ≥ N ia o infinitate de
valori ¸si astfel, exist˘a i, j ∈ N, i < j, cu P
i
= P
j
¸si Q
i
= Q
j
. Din modul
ˆın care sunt definite, rezult˘a α
i
= α
j
. Atunci, a
i
= a
j
, a
i+1
= a
j+1
, . . . .
Obt ¸inem c˘a
α = [a
0
; a
1
, . . . , a
i−1
, a
i
, a
i+1
, . . . , a
j−1
, a
i
, a
i+1
, . . . , a
j−1
, . . .]
= [a
0
; a
1
, . . . , a
i−1
, a
i
, a
i+1
, . . . , a
j−1
]
este o fract ¸ie continu˘a simpl˘a periodic˘a.
48 CAPITOLUL 2. FRACT¸ II CONTINUE
Definit ¸ie 2.3.4 Fract ¸ia continu˘a [a
0
; a
1
, a
2
, . . .] se nume¸ste pur peri-
odic˘ a dac˘a exist˘a N, num˘ar natural, astfel ˆıncˆat a
k
= a
N+k
, pentru
orice k ≥ 0, adic˘a
[a
0
; a
1
, a
2
, . . .] = [a
0
; a
1
, a
2
, . . . , a
N−1
] .
De exemplu, α =
2 +

7
3
=
_
1; 1, 1, 4
¸
este o fract ¸ie pur periodic˘a.
Definit ¸ie 2.3.5 Un num˘ar irat ¸ional p˘atratic α se nume¸ste redus dac˘a
α > 1 ¸si −1 < α

< 0.
Teorem˘a 2.3.3 Fract ¸ia continu˘a simpl˘a a unui num˘ar irat ¸ional p˘atratic
α este pur periodic˘a dac˘a ¸si numai dac˘a α este redus.
Mai mult, dac˘a α este redus ¸si α = [a
0
; a
1
, a
2
, . . . , a
n
] , atunci fract ¸ia
continu˘ a corespunz˘atoare lui −
1
α

este [a
n
; a
n−1
, . . . , a
1
, a
0
].
Demonstrat ¸ie. Presupunem mai ˆıntˆai c˘a α este un num˘ar irat ¸ional
p˘atratic redus. Din teorema 2.2.3, α = [a
0
; a
1
, a
2
, . . .] unde α = α
0
,
a
k
= [α
k
], α
k+1
=
1
α
k
−a
k
, pentru k ≥ 0.
Atunci,
1
α
k+1
= α
k
−a
k
, ¸si, prin conjugare,
1
α

k+1
= α

k
−a
k
.
Ar˘at˘am, prin induct ¸ie matematic˘a, c˘a −1 < α

k
< 0, pentru orice
k ≥ 0. Cum α
0
este redus, afirmat ¸ia este verificat˘a pentru k = 0.
Presupunem c˘a −1 < α

k
< 0. Pentru c˘a α
0
> 1, avem a
0
≥ 1. De aici,
a
k
≥ 1, pentru k ≥ 0.
Atunci
1
α

k+1
= α

k
−a
k
< −1 deci, −1 < α

k+1
< 0.
S˘a observ˘am acum c˘a, din α

k
=
1
α

k+1
+ a
k
¸si −1 < α

k
< 0, avem
−1 < a
k
+
1
α

k+1
. Atunci, −1 −
1
α

k+1
< a
k
< −
1
α

k+1
, adic˘a a
k
=
_

1
α

k+1
_
.
Conform teoremei 2.3.2, α fiind irat ¸ional p˘atratic, exist˘a i, j numere
ˆıntregi, cu i < j astfel ˆıncˆat α
i
= α
j
, adic˘a −
1
α

i
= −
1
α

j
. Deci, a
i−1
=
2.3. FRACT¸ II CONTINUE PERIODICE 49
a
j−1
. Continuˆand, obt ¸inem α
j−2
= α
i−2
, α
j−3
= α
i−3
, . . . α
j−i
= α
0
.
Rezult˘a astfel,
α = α
0
= [a
0
; a
1
, . . . , a
j−i−1
, α
j−i
]
= [a
0
; a
1
, . . . , a
j−i−1
, α
0
] = [a
0
; a
1
, . . . a
j−i−1
]
este fract ¸ie continu˘a pur periodic˘a.
Reciproc, presupunem acum α irat ¸ional p˘atratic ¸si fract ¸ia continu˘a
α = [a
0
; a
1
, . . . , a
k
] este pur periodic˘a.
Din α = [a
0
; a
1
, . . . , a
k
, α], rezult˘a α =
αp
k
+p
k−1
αq
k
+q
k−1
unde
p
k−1
q
k−1
¸si
p
k
q
k
sunt convergentele fract ¸iei continue α. Obt ¸inem:
q
k
α
2
+ (q
k−1
−p
k
) α −p
k−1
= 0. (2.4)
Fie β un irat ¸ional p˘atratic astfel ca β = [a
k
; a
k−1
, . . . , a
1
, a
0
] . Atunci,
β = [a
k
; a
k−1
, . . . , a
1
, a
0
, β].
La fel ca mai ˆınainte, obt ¸inem β =
βp

k
+p

k−1
βq

k
+q

k−1
unde
p

k−1
q

k−1
¸si
p

k
q

k
sunt
convergentele fract ¸iei continue β.
Observ˘am c˘a
p
k
p
k−1
= [a
k
; a
k−1
, . . . , a
1
, a
0
] =
p

k
q

k
¸si
q
k
q
k−1
= [a
k
; a
k−1
, . . . , a
2
, a
1
] =
p

k−1
q

k−1
.
Conform corolarului 2.1.1, convergentele
p
k−1
q
k−1
,
p
k
q
k
,
p

k−1
q

k−1
,
p

k
q

k
sunt fract ¸ii
ireductibile.
Astfel, p

k
= p
k
, q

k
= p
k−1
, p

k−1
= q
k
, q

k−1
= q
k−1
.
ˆ
Inlocuind, rezult˘a
β =
βp
k
+q
k
βp
k−1
+q
k−1
adic˘a p
k−1
β
2
+(q
k−1
−p
k
) β −q
k
= 0, relat ¸ie pe care
o putem scrie sub forma
q
k
_

1
β
_
2
+ (q
k−1
−p
k
)
_

1
β
_
−p
k−1
= 0. (2.5)
50 CAPITOLUL 2. FRACT¸ II CONTINUE
Din ( 2.4) ¸si ( 2.5), rezult˘a c˘a cele dou˘a r˘ad˘acini ale ecuat ¸iei
q
k
x
2
+ (q
k−1
−p
k
) x −p
k−1
= 0
sunt α ¸si −
1
β
. Deci, α

= −
1
β
.
Cum β = [a
k
; a
k−1
, . . . , a
1
, a
0
] , β > 1. De aici,
−1 < α

= −
1
β
< 0.
Astfel, am demonstrat c˘a α este redus.
Din β = −
1
α

, rezult˘a −
1
α

= [a
k
; a
k−1
, . . . , a
1
, a
0
] .
ˆ
Incheiem capitolul precizˆand forma fract ¸iilor continue simple peri-
odice pentru numere irat ¸ionale p˘atratice de forma

d cu d num˘ar na-
tural, care nu este p˘atrat perfect. Observ˘am c˘a

d nu este redus, cum
conjugatul s˘au −

d / ∈ (−1, 0).
Dar, din
_

d
_


d ∈ (−1, 0), g˘asim c˘a
_

d
_
+

d este irat ¸ional p˘atratic
redus.
Conform teoremei 2.3.3, fract ¸ia continu˘a a lui
_

d
_
+

d este pur pe-
riodic˘a. Primul cˆat part ¸ial al acestei fract ¸ii periodice este
__

d
_
+

d
_
=
2
_

d
_
= 2a
0
, unde a
0
=
_

d
_
. Putem scrie:
_

d
_
+

d =
_
2a
0
; a
1
, a
2
, . . . , a
n
¸
=
=
_
2a
0
; a
1
, a
2
, . . . , a
n
, 2a
0
, a
1
, a
2
, . . . , a
n
¸
.
De aici, sc˘azˆand a
0
, rezult˘a:

d = [a
0
; a
1
, a
2
, . . . , a
n
, 2a
0
, a
1
, a
2
, . . . , a
n
, 2a
0
, . . .] =
=
_
a
0
; a
1
, a
2
, . . . , a
n
, 2a
0
¸
.
Tot din teorema 2.3.3, ¸stim c˘a fract ¸ia continu˘a pentru

1
_

d
_


d
=
1

d −
_

d
_
este
_
a
n
; a
n−1
, . . . , a
1
, 2a
0
¸
.
2.3. FRACT¸ II CONTINUE PERIODICE 51
Observ˘am c˘a

d −
_

d
_
=
_
0; a
1
, a
2
, . . . , a
n
, 2a
0
¸
. De aici,
1

d −
_

d
_
=
_
a
1
; a
2
, . . . , a
n
, 2a
0
¸
.
Din teorema 2.2.4, reprezentarea unui num˘ar irat ¸ional sub forma unei
fract ¸ii continue simple infinite este unic˘a. Aplic˘am acest rezultat pentru
1

d −
_

d
_
¸si obt ¸inem a
1
= a
n
, a
2
= a
n−1
, . . . , a
n
= a
1
.
Deci, partea periodic˘a a fract ¸iei continue pentru

d este simetric˘a
de la primul termen pˆan˘a la penultimul. Astfel,

d =
_
a
0
; a
1
, a
2
, . . . , a
2
, a
1
, 2a
0
¸
.
Spre exemplu, se poate verifica prin calcul

23 =
_
4; 1, 3, 1, 8
¸
.
Putem rezuma cele prezentate pentru a descrie un algoritm de dez-
voltare a lui

d ˆın fract ¸ie continu˘a unde d ∈ N, nu este p˘atrat perfect.
Consider˘am¸sirurile: (a
k
)
k≥0
, (P
k
)
k≥0
, (Q
k
)
k≥0
definite caˆın teorema
2.3.1:
a
0
= [

d], P
0
= 0, Q
0
= 1,
P
k+1
= a
k
Q
k
−P
k
,
Q
k+1
=
d −P
2
k+1
Q
k
,
a
k+1
=
_
a
0
+P
k+1
Q
k+1
_
,
pentru k ≥ 0.
Vom calcula termenii P
k
, Q
k
pˆan˘a cˆand obt ¸inem primul indice t
pentru care P
t+1
= P
1
¸si Q
t+1
= Q
1
.
ˆ
In [5], se precizeaz˘a c˘a pentru t num˘ar par, n =
t
2
este cel mai mic
indice pentru care P
n+1
= P
n
, iar dac˘a t este impar, n =
t −1
2
este cel
mai mic indice pentru care Q
n+1
= Q
n
.
T¸ inˆand cont de aceast˘a observat ¸ie, vom calcula termenii ¸sirurilor
pˆan˘a cˆand P
n+1
= P
n
sau Q
n+1
= Q
n
.
52 CAPITOLUL 2. FRACT¸ II CONTINUE
Atunci:
i) Dac˘a P
n+1
= P
n
,

d = [a
0
; a
1
, . . . , a
n−1
, a
n
, a
n−1
, . . . , a
1
, 2a
0
],
deci num˘arul termenilor din perioada minim˘a este par;
ii) Dac˘a Q
n+1
= Q
n
,

d = [a
0
; a
1
, . . . , a
n−1
, a
n
, a
n
, a
n−1
, . . . , a
1
, 2a
0
],
deci lungimea perioadei minime este impar˘a.
De exemplu, pentru d = 809, vom obt ¸ine:
a
0
=
_√
809
¸
= 28, P
0
= 0, Q
0
= 1
P
1
= 28 1 −0 = 28 Q
1
=
809 −28
2
1
= 25 a
1
=
_
28 + 28
25
_
= 2
P
2
= 2 25 −28 = 22 Q
2
=
809 −22
2
25
= 13 a
2
=
_
28 + 22
13
_
= 3
P
3
= 3 13 −22 = 17 Q
3
=
809 −17
2
13
= 40 a
3
=
_
28 + 17
40
_
= 1
P
4
= 1 40 −17 = 23 Q
4
=
809 −23
2
40
= 7 a
4
=
_
28 + 23
7
_
= 7
P
5
= 7 7 −23 = 26 Q
5
=
809 −26
2
7
= 19 a
5
=
_
28 + 26
19
_
= 2
P
6
= 2 19 −26 = 12 Q
6
=
809 −12
2
19
= 35 a
6
=
_
28 + 12
35
_
= 1
P
7
= 1 35 −12 = 23 Q
7
=
809 −23
2
35
= 8 a
7
=
_
28 + 23
8
_
= 6
P
8
= 6 8 −23 = 25 Q
8
=
809 −25
2
8
= 23 a
8
=
_
28 + 25
23
_
= 2
P
9
= 2 23 −25 = 21 Q
9
=
809 −21
2
23
= 16 a
9
=
_
28 + 21
16
_
= 3
P
10
= 3 16 −21 = 27 Q
10
=
809 −27
2
16
= 5 a
10
=
_
28 + 27
5
_
= 11
P
11
= 11 5 −27 = 28 Q
11
=
809 −28
2
5
= 5 a
11
=
_
28 + 28
5
_
= 11
Din Q
10
= Q
11
, rezult˘a:

809 =
_
28; 2, 3, 1, 7, 2, 1, 6, 2, 3, 11, 11, 3, 2, 6, 1, 2, 7, 1, 3, 2, 56
¸
.
2.3. FRACT¸ II CONTINUE PERIODICE 53
Astfel, algoritmul propus va avea forma:
Algoritm 2.3.1 (

d ca fract ¸ie continu˘a)
INPUT: d ∈ N care nu este p˘atrat perfect.
OUTPUT: fract ¸ia continu˘a corespunz˘atoare.
1. a
0
←[

d], P
0
←0, Q
0
←1.
2. Pentru i = 0, 1, 2, . . . efectueaz˘a:
2.1. P
i+1
←a
i
Q
i
−P
i
, Q
i+1
←(d −P
2
i+1
)/Q
i
,
a
i+1
←[(a
0
+P
i+1
)/Q
i+1
].
2.2. Dac˘a P
i
= P
i+1
atunci returneaz˘a
[a
0
; a
1
, . . . , a
i−1
, a
i
, a
i−1
, . . . , a
1
, 2a
0
] ¸si se opre¸ste.
2.3. Dac˘a Q
i
= Q
i+1
atunci returneaz˘a
[a
0
; a
1
, . . . , a
i
, a
i
, . . . , a
1
, 2a
0
] ¸si se opre¸ste.
2.4. i ←i + 1.
ˆ
In [5], sunt precizate teoreme de reprezentare pentru numere ˆıntregi.
O astfel de teorem˘a, stabile¸ste forma general˘a a numerelor naturale care
se pot scrie ca sum˘a de dou˘a p˘atrate:
Teorem˘a 2.3.4 (Fermat-Euler) Fie n > 1, n = 2
k
n
1
n
2
, unde
k ∈ N, n
1
este produsul factorilor primi impari de forma 4k + 1 ai lui
n iar n
2
este produsul celorlalt ¸i factori primi impari ai lui n (de forma
4k + 3).
Ecuat ¸ia x
2
+ y
2
= n are solut ¸ii ˆıntregi dac˘a ¸si numai dac˘a tot ¸i
exponent ¸ii din descompunerea canonic˘a a lui n
2
sunt pari.
Mai mult, dac˘a ecuat ¸ia are solut ¸ii, ea va avea exact 4(d
1
(n) −d
3
(n))
solut ¸ii ˆıntregi, unde d
s
(n) reprezint˘a num˘arul de divizori ai lui n de
forma 4k +s, s ∈ ¦1, 3¦.
Dac˘a particulariz˘am, ¸si alegem p, un num˘ar prim de forma 4k + 1,
observ˘am c˘a ne ˆıncadr˘am ˆın condit ¸iile teoremei. Astfel, ecuat ¸ia
x
2
+y
2
= p
unde p este un num˘ar prim de forma 4k+1, va avea ˆıntotdeauna 2 solut ¸ii
ˆın mult ¸imea numerelor naturale. Metoda de determinare a acestora este
datorat˘a lui Lagrange, care a stabilit c˘a, pentru un astfel de num˘ar prim,
lungimea perioadei fract ¸iei continue corespunz˘atoare lui

p este impar˘a.
54 CAPITOLUL 2. FRACT¸ II CONTINUE
Deci, folosind rezultatele anterioare, obt ¸inem

p = [a
0
; a
1
, . . . , a
n
, a
n
, . . . , a
1
, 2a
0
],
unde n este cel mai mic indice pentru care Q
n+1
= Q
n
.
Num˘arul α
n+1
= [a
n
; a
n−1
, . . .] are perioada simetric˘a. Din teorema
2.3.3, α
n+1
α

n+1
= −1. Pe de alt˘a parte, p˘astrˆand notat ¸iile anterioare,
α
n+1
=
P
n+1
+

p
Q
n+1
iar α

n+1
=
P
n+1


p
Q
n+1
.
Astfel, rezult˘a p = P
2
n+1
+ Q
2
n+1
, deci (P
n+1
, Q
n+1
) ¸si (Q
n+1
, P
n+1
)
sunt solut ¸iile ecuat ¸iei.
Pentru exemplul anterior, p = 809 = 4 202 +1 este de forma dorit˘a.
Am obt ¸inut Q
10
= Q
11
. Atunci, din P
11
= 28, ¸si Q
11
= 5, solut ¸iile
naturale ale ecuat ¸iei x
2
+y
2
= 809 sunt (28, 5), (5, 28).
Algoritmul prezentat anterior poate fi folosit pentru rezolvarea aces-
tui tip de ecuat ¸ii.
Algoritm 2.3.2 (rezolvarea ecuat ¸iei x
2
+y
2
= p)
INPUT: p num˘ar prim, de forma 4k + 1.
OUTPUT: solut ¸iile (x,y) ale ecuat ¸iei.
1. a
0
←[

d], P
0
←0, Q
0
←1.
2. Pentru i = 0, 1, 2, . . . efectueaz˘a:
2.1. P
i+1
←a
i
Q
i
−P
i
, Q
i+1
←(d −P
2
i+1
)/Q
i
,
a
i+1
←[(a
0
+P
i+1
)/Q
i+1
].
2.2. Dac˘a Q
i
= Q
i+1
atunci returneaz˘a
(P
i+1
, Q
i+1
); (Q
i+1
, P
i+1
) ¸si se opre¸ste.
2.3. i ←i + 1.
Exercit ¸ii propuse
1. Determinat ¸i numerele rat ¸ionale reprezentate de fract ¸iile continue
simple:
i) [2; 7],
ii) [0; 5, 6],
iii) [3; 7, 15, 1].
2.3. FRACT¸ II CONTINUE PERIODICE 55
2. Determinat ¸i fract ¸iile continue simple corespunz˘atoare numerelor
rat ¸ionale:
6
5
,
22
7
,
101
29
,
−23
141
.
3. Dac˘a α ∈ Q, α > 1, are fract ¸ia continu˘a simpl˘a [a
0
; a
1
, . . . , a
n
],
atunci ar˘atat ¸i c˘a fract ¸ia continu˘a simpl˘a corespunz˘atoare lui
1
α
este
[0; a
0
, a
1
, . . . , a
n
].
4. Determinat ¸i fract ¸iile continue simple corespunz˘atoare numerelor:

2,

3,
1 +

5
2
.
5. Determinat ¸i primele 5 cˆaturi part ¸iale ale fract ¸iilor continue simple
pentru:
3

2, 2π,
e −1
e + 1
.
6. Fract ¸ia continu˘a infinit˘a corespunz˘atoare num˘arului e este
e = [2; 1, 2, 1, 1, 4, 1, 1, 6, 1, 1, 8, . . .].
i) Determinat ¸i primele 8 convergente ale fract ¸iei.
ii) Determinat ¸i cea mai bun˘a aproximare a lui e cu numitor mai mic
decˆat 100.
7. Fie α = [a
0
; a
1
, a
2
, . . .] un num˘ar irat ¸ional. Ar˘atat ¸i c˘a fract ¸ia
continu˘a simpl˘a corespunz˘atoare lui −α este [−a
0
−1; 1, a
1
−1, a
2
, a
3
, . . .],
dac˘a a
1
> 1 ¸si [−a
0
−1; a
2
+ 1, a
3
, . . .], pentru a
1
= 1.
8. Determinat ¸i fract ¸iile continue simple pentru numerele:
i)

11,

23,

47,
ii)
1 +

3
2
,
13 −

2
7
.
9. Determinat ¸i irat ¸ionalul p˘atratic a c˘arui dezvoltare ˆın fract ¸ie con-
tinu˘a simpl˘a este:
i)
_
2; 1, 5
¸
,
ii)
_
2; 1, 5
¸
.
56 CAPITOLUL 2. FRACT¸ II CONTINUE
10. Ar˘atat ¸i c˘a, dac˘a d este num˘ar natural, fract ¸ia continu˘a simpl˘a
pentru

d
2
+ 1 este
_
d; 2d
¸
. Folosind acest rezultat, determinat ¸i fract ¸iile
continue pentru

101,

290.
11. Fie d ≥ 2, num˘ar natural. Ar˘atat ¸i c˘a:
i)

d
2
−1 =
_
d −1; 1, 2d −2
¸
,
ii)

d
2
−d =
_
d −1; 2, 2d −2
¸
.
Folosind aceste rezultate, determinat ¸i fract ¸iile continue pentru

99
¸si

110.
12. Care dintre urm˘atorii irat ¸ionali p˘atratici
1 +

5, 2 +

8, 4 +

17,
11 −

10
9
,
3 +

23
2
au fract ¸iile continue pur periodice?
13. Rezolvat ¸i, ˆın numere naturale ecuat ¸iile:
i) x
2
+y
2
= 1009,
ii) x
2
+y
2
= 405.
CAPITOLUL 3
Congruent ¸e
3.1 Not ¸iuni generale
Definit ¸ie 3.1.1 Fie m un num˘ar natural nenul ¸si a, b dou˘a numere
ˆıntregi. Spunem c˘a a este congruent cu b modulo m dac˘a m [ a − b.
ˆ
In acest caz, vom folosi notat ¸ia a ≡ b (mod m).
Congruent ¸ele apar foarte des ˆın viat ¸a de zi cu zi. De exemplu, ceasul
funct ¸ioneaz˘a modulo 12 sau 24 ore, calendarul modulo 12 luni sau mo-
dulo 7 pentru zile, metrul modulo 1000 mm, etc. Congruent ¸a cu doi este
cel mai simplu tip de congruent ¸˘a, unde numerele congruente cu 0 sunt
numite numere pare iar cele congruente cu 1, impare.
Unele dintre propozit ¸iile urm˘atoare au demonstrat ¸iile foarte simple
¸si sunt propuse cititorului ca exercit ¸iu.
Propozit ¸ie 3.1.1 Dac˘a a, b ∈ Z iar m ≥ 2 este un num˘ar natural,
atunci a ≡ b (mod m) dac˘a ¸si numai dac˘a exist˘a k num˘ar ˆıntreg pentru
care a = b +km.
Propozit ¸ie 3.1.2 Relat ¸ia de congruent ¸˘a este o relat ¸ie de echivalent ¸˘a pe
mult ¸imea numerelor ˆıntregi Z.
Conform acestui rezultat, mult ¸imea Z este ˆımp˘art ¸it˘a ˆın clase de
echivalent ¸˘a unde clasa de echivalent ¸˘a a num˘arului ˆıntreg a este format˘a
din toate numerele ˆıntregi de forma a +km, cu k ∈ Z.
57
58 CAPITOLUL 3. CONGRUENT¸ E
Definit ¸ie 3.1.2 Un sistem complet de resturi modulo m este o mult ¸ime
de numere ˆıntregi astfel ˆıncˆat orice ˆıntreg este congruent modulo m cu
un singur num˘ar din mult ¸ime.
Spre exemplu:
1) ¦0, 1, . . . , m−1¦ se nume¸ste mult ¸imea celor mai mici resturi pozitive
modulo m.
2) Pentru m natural impar, sistemul complet de resturi
¦−
m−1
2
, −
m−3
2
, . . . , −1, 0, 1, . . . ,
m−3
2
,
m−1
2
¦
se nume¸ste mult ¸imea celor mai mici resturi, ˆın valoare absolut˘a, modulo
m.
Propozit ¸ie 3.1.3 Fie a, b numere ˆıntregi, m num˘ar natural nenul, ast-
fel ˆıncˆat a ≡ b (mod m). Atunci, pentru orice ˆıntreg c, au loc relat ¸iile:
1) a +c ≡ b +c (mod m),
2) a −c ≡ b −c (mod m),
3) ac ≡ bc (mod m).
Propozit ¸ie 3.1.4 Fie m un num˘ar natural nenul ¸si a, b, c numere ˆıntregi
unde (c, m) = d. Dac˘a ac ≡ bc (mod m), atunci a ≡ b (mod
m
d
).
Demonstrat ¸ie. Din ac ≡ bc (mod m), exist˘a k ∈ Z astfel ca c(a−b) = km.
Cum d = (c, m), obt ¸inem c = dc

, m = dm

cu (c

, m

) = 1. Rezult˘a
c

(a −b) = km

, adic˘a m

[ a −b.
ˆ
In practic˘a, apare mai des un caz particular al acestei propozit ¸ii, ¸si
anume:
Corolar 3.1.1 Fie m un num˘ar natural nenul ¸si a, b, c numere ˆıntregi
unde (c, m) = 1.
Dac˘a ac ≡ bc (mod m), atunci a ≡ b (mod m).
Propozit ¸ie 3.1.5 Dac˘a a ≡ b (mod m) ¸si c ≡ d (mod m), atunci,
1) a ±c ≡ b ±d (mod m),
3.1. NOT¸ IUNI GENERALE 59
2) ac ≡ bd (mod m).
Propozit ¸ie 3.1.6 Dac˘a ¦r
1
, r
2
, . . . , r
m
¦ este un sistem complet de res-
turi modulo m iar a ∈ N cu (a, m) = 1, atunci,
¦ar
1
+b, ar
2
+b, . . . , ar
m
+b¦
este un sistem complet de resturi modulo m, pentru orice b ∈ Z.
Demonstrat ¸ie. Cum mult ¸imea este format˘a din m elemente, este suficient
s˘a ar˘at˘a c˘a oricare dou˘a dintre acestea nu sunt congruente modulo m.
Dac˘a presupunem c˘a ar
j
+ b ≡ ar
k
+ b (mod m), pentru j ,= k, atunci
ar
j
≡ ar
k
(mod m). Din corolarul 3.1.1 rezult˘a r
j
≡ r
k
(mod m), ceea
ce este fals.
Propozit ¸ie 3.1.7 Dac˘a a ≡ b (mod m), atunci a
k
≡ b
k
(mod m), pen-
tru orice num˘ar natural k.
Propozit ¸ie 3.1.8 Dac˘a a ≡ b (mod m
1
), a ≡ b (mod m
2
),. . . ,
a ≡ b (mod m
k
), atunci a ≡ b (mod [m
1
, m
2
, . . . , m
k
]).
O consecint ¸˘a imediat˘a a acestei propozit ¸ii este dat˘a de:
Corolar 3.1.2 Fie numerele naturale nenule m
1
, m
2
, . . . , m
k
, dou˘a cˆate
dou˘a relativ prime.
Dac˘a a ≡ b (mod m
1
), a ≡ b (mod m
2
), . . . , a ≡ b (mod m
k
), atunci
a ≡ b (mod m
1
m
2
. . . m
k
).
Ca o prim˘a aplicat ¸ie a congruent ¸elor, prezent˘am o metod˘a rapid˘a
de calcul pentru b
n
(mod m) unde b, n, m sunt numere naturale. Ea
este denumit˘a metoda ridic˘arii repetate la p˘atrat ¸si reducerii modulo m,
algoritmul presupunˆand doar ridic˘ari la p˘atrat ¸si ˆınmult ¸iri repetate cu
numere naturale mai mici decˆat modulul. Aceast˘a metod˘a, fiind deosebit
de eficient˘a pentru valori mari ale lui n ¸si m, este des folosit˘a ˆın multe
protocoale criptografice care implic˘a exponent ¸ieri modulare.
Pentru ˆınceput, se scrie n ˆın baza 2. Fie n = (a
k
a
k−1
. . . a
1
a
0
)
2
.
Atunci
b
n
= b
k

j=0
2
j
a
j
=
_
b
2
0
_
a
0
_
b
2
1
_
a
1
. . .
_
b
2
k
_
a
k
.
T¸ inˆand cont de aceast˘a relat ¸ie, calcul˘amˆıntˆai resturile modulo m ale lui
b, b
2
, b
4
, . . . , b
2
k
ridicˆand succesiv la p˘atrat ¸si reducˆand modulo m. Dup˘a
60 CAPITOLUL 3. CONGRUENT¸ E
aceea, ˆınmult ¸im resturile modulo m ale lui b
2
j
cu a
j
= 1 ¸si reducem
modulo m.
De exemplu, tabelul urm˘ator pune ˆın evident ¸˘a, pe pa¸si, calculul efec-
tuat pentru 5
596
(mod 1234) :
j 0 1 2 3 4 5 6 7 8 9
a
j
0 0 1 0 1 0 1 0 0 1
A 5 25 625 681 1011 369 421 779 947 925
N 1 1 625 625 67 67 1059 1059 1059 1013
unde, la fiecare pas j, am notat:
A = 5
2
j
(mod 1234) ¸si
N = 5
a
0
_
5
2
_
a
1
. . .
_
5
2
j
_
aj
(mod 1234).
Algoritm 3.1.1 (Ridicare repetat˘a la p˘atrat)
INPUT: numerele naturale b, n, m.
OUTPUT: b
n
(mod m)
1. N ←1. Dac˘a n = 0, returneaz˘ a N ¸si se opre¸ste.
2. A ←b.
3. Dac˘a a
0
= 1, atunci pune N ←b
4. Pentru j = 1, . . . , k calculeaz˘a:
4.1. A ←A
2
mod m
4.2. Dac˘a a
j
= 1, atunci N ←A N mod m
5. returneaz˘a N.
3.2 Congruent ¸e liniare
Definit ¸ie 3.2.1 O congruent ¸˘a de forma
ax ≡ b (mod m) (3.1)
unde x ∈ Z este necunoscuta, poart˘a numele de congruent ¸˘a liniar˘a ˆıntr-o
variabil˘a.
Vom ar˘ata c˘a studiul lor se reduce la cel al ecuat ¸iilor diofantice ˆın dou˘a
variabile. Mai ˆıntˆai, observ˘am c˘a, dac˘a x este solut ¸ie a congruent ¸ei ( 3.1)
iar x ≡ x
1
(mod m), atunci ax ≡ ax
1
(mod m) adic˘a ax
1
≡ b (mod m)
ceea ce arat˘a c˘a ¸si x
1
este solut ¸ie pentru ( 3.1).
3.2. CONGRUENT¸ E LINIARE 61
Teorem˘a 3.2.1 Fie a, b ∈ Z, m natural nenul ¸si (a, m) = d. Congruent ¸a
ax ≡ b (mod m) are solut ¸ii dac˘a ¸si numai dac˘a d [ b.
ˆ
In acest caz,
congruent ¸a are exact d solut ¸ii necongruente modulo m.
Demonstrat ¸ie. Congruent ¸a ( 3.1) este echivalent˘a cu ax−mk = b, pentru
un num˘ar ˆıntreg k. Deci, ( 3.1) are solut ¸ii dac˘a ¸si numai dac˘a exist˘a un
ˆıntreg y astfel ˆıncˆat ax −my = b. Din teorema 1.6.1, congruent ¸a ( 3.1)
va avea solut ¸ii dac˘a ¸si numai dac˘a d [ b.
Presupunem c˘a exist˘a solut ¸ii pentru congruent ¸a ( 3.1). Fie (x
0
, y
0
) o
solut ¸ie particular˘a a ecuat ¸iei diofantice ata¸sate. Atunci, solut ¸ia general˘a
a acesteia este dat˘a de x = x
0
+
m
d
t, y = y
0
+
a
d
t unde t este un
parametru ˆıntreg. Deci, solut ¸iile congruent ¸ei ( 3.1) sunt x = x
0
+
m
d
t, cu
t ∈ Z. Vedem cˆate dintre acestea nu sunt congruente modulo m. Pentru
aceasta, stabilim cˆand dou˘a solut ¸ii x
1
= x
0
+
m
d
t
1
¸si x
2
= x
0
+
m
d
t
2
sunt
congruente modulo m.
Dac˘a x
1
≡ x
2
(mod m), obt ¸inem c˘a
m
d
t
1

m
d
t
2
(mod m). Folosind
propozit ¸ia 3.1.4, cum
_
m
d
, m
_
=
m
d
, rezult˘a c˘a t
1
≡ t
2
(mod d). Deci,
un sistem complet de solut ¸ii necongruente modulo m se obt ¸ine din x =
x
0
+
m
d
t cˆand t parcurge un sistem complet de resturi modulo d.
Aceast˘a teorem˘a arat˘a c˘a rezolvarea congruent ¸elor liniare se reduce
la rezolvarea ecut ¸iilor diofantice prezentate ˆın 1.6. Astfel, algoritmul de
rezolvare a acestui tip de congruent ¸e se va reduce la algoritmul 1.6.1.
Spre exemplu, s˘a rezolv˘am congruent ¸a liniar˘a 6x ≡ 15 (mod 21).
Se observ˘a c˘a (6, 21) = 3 ¸si 3 [ 15, deci congruent ¸a are solut ¸ii. Ea va
avea 3 solut ¸ii necongruente modulo 21. Rezolv˘am ecuat ¸ia 6x−21y = 15
folosind metoda prezentat˘a ˆın teorema 1.6.1:
k 0 1 2 3 4 5
r
k
6 -21 -15 -6 -3 0
u
k
1 0 1 -1 3 -7
v
k
0 1 1 0 1 -2
q
k
-1 1 2 2
62 CAPITOLUL 3. CONGRUENT¸ E
Obt ¸inem astfel:
−3 = 6(3) −21(1) de unde, 15 = 6(−15) −21(−5).
Atunci, x
0
= −15, y
0
= −5 este o solut ¸ie particular˘a a ecuat ¸iei.
Solut ¸iile necongruente modulo 21 ale congruent ¸ei init ¸iale sunt:
x
1
≡ −15 + 7t (mod 21), unde t ∈ ¦0, 1, 2¦.
ˆ
In final obt ¸inem:
x
1
≡ 6 (mod 21), x
2
≡ 13 (mod 21), x
3
≡ 20 (mod 21).
Consider˘am ˆın continuare congruent ¸ele de forma ax ≡ 1 (mod m).
Din teorema 3.2.1, acest tip de congruent ¸˘a are solut ¸ii dac˘a ¸si numai
dac˘a a ¸si m sunt numere relativ prime.
Definit ¸ie 3.2.2 Fie a ∈ Z ¸si m ∈ N

numere relativ prime. O solut ¸ie
¯ a a congruent ¸ei ax ≡ 1 (mod m) se nume¸ste invers modulo m al lui a.
Spre exemplu:
x ≡ 9 (mod 31) este solut ¸ie a congruent ¸ei 7x ≡ 1 (mod 31). Astfel, orice
num˘ar congruent cu 9 modulo 31 este invers pentru 7 modulo 31.
Algoritm 3.2.1 (Invers modulo m)
INPUT: numerele naturale a, m.
OUTPUT: ¯ a (mod m) dac˘a exist˘a.
1. Calculeaz˘ a d = (a, m) ¸si u, v cu au +mv = d
folosind algoritmul 1.2.2.
2. Dac˘a d > 1, atunci returneaz˘a ¯ a (mod m) nu exist˘a
¸si se opre¸ste.
3. Returneaz˘a u.
Dac˘a cunoa¸stem inversul lui a modulo m, putem rezolva congruent ¸a
ax ≡ b (mod m) unde (a, m) = 1. Prin ˆınmult ¸irea congruent ¸ei cu ¯ a, vom
obt ¸ine x ≡ ¯ ab (mod m).
Astfel, pentru congruent ¸a rezolvat˘a anterior, 6x ≡ 15 (mod 21), dac˘a
t ¸inem cont de propozit ¸ia 3.1.4, ea este echivalent˘a cu congruent ¸a
2x ≡ 5 (mod 7). Folosind propozit ¸ia 3.1.3, putem s˘aˆınmult ¸im congruent ¸a
cu 4 care este inversul lui 2 modulo 7 ¸si vom obt ¸ine ca solut ¸ie final˘a
x ≡ 6 (mod 7). Observ˘am c˘a acest˘a solut ¸ie este echivalent˘a cu cele trei
solut ¸ii necongruente modulo 21 g˘asite anterior.
3.3. SISTEME DE CONGRUENT¸ E 63
S˘a vedem cˆand un ˆıntreg este propriul s˘au invers modulo un num˘ar
prim.
Propozit ¸ie 3.2.1 Fie p un num˘ar prim ¸si a ∈ Z prim cu p. Atunci, a
este propriul s˘au invers modulo p dac˘a ¸si numai dac˘a a ≡ ±1 (mod p).
Demonstrat ¸ie. a a ≡ a
2
≡ 1 (mod p) este echivalent cu p [ a
2
−1 adic˘a
p [ a −1 sau p [ a + 1. Deci, a ≡ ±1 (mod p).
3.3 Sisteme de congruent ¸e
Vom studia dou˘a tipuri de sisteme de congruent ¸e liniare ¸si anume sisteme
de dou˘a sau mai multe congruent ¸e liniare ˆıntr-o variabil˘a cu diferite
module ¸si sisteme de congruent ¸e liniare ˆın mai multe variabile dar toate
cu acela¸si modul.
Teorem˘a 3.3.1 (Teorema chinezeasc˘a a resturilor) Sistemul
(S)
_
¸
¸
_
¸
¸
_
x ≡ a
1
(mod m
1
)
x ≡ a
2
(mod m
2
)
..........................
x ≡ a
r
(mod m
r
)
are solut ¸ie unic˘a modulo M = m
1
m
2
. . . m
r
, pentru m
1
, m
2
, . . . , m
r
, nu-
mere naturale relativ prime, dou˘a cˆate dou˘a.
Demonstrat ¸ie.
1
Fie M
k
=
M
m
k
pentru 1 ≤ k ≤ r. Pentru fiecare j ,= k,
(m
j
, m
k
) = 1. Obt ¸inem astfel c˘a (M
k
, m
k
) = 1. Fie M
k
un invers al lui
M
k
modulo m
k
. Deci, M
k
M
k
≡ 1 (mod m
k
). Not˘am
x = a
1
M
1
M
1
+a
2
M
2
M
2
+. . . +a
r
M
r
M
r
¸si ar˘at˘am c˘a este solut ¸ie pentru sistem.
Pentru aceasta, consider˘am un k fixat, 1 ≤ k ≤ r. Atunci, m
k
[ M
j
pentru orice j ,= k. Astfel, M
j
≡ 0 (mod m
k
) pentru j ,= k. Obt ¸inem
x ≡ a
k
M
k
M
k
≡ a
k
(mod m
k
).
1
Forma original˘a a teoremei, g˘asit˘a ˆın China aproximativ ˆın anul 300 e.n., era
aceea c˘a pentru a, b prime ˆıntre ele, fiecare n = 0, 1, . . . , ab −1 are o pereche distinct˘a
de resturi la ˆımp˘art ¸irea cu a ¸si cu b.
64 CAPITOLUL 3. CONGRUENT¸ E
ˆ
In final, ar˘at˘am c˘a x este singura solut ¸ie a sistemului modulo M.
Consider˘am x
1
, x
2
dou˘a solut ¸ii ale sistemului (S).
Atunci, x
1
≡ x
2
(mod m
k
) pentru 1 ≤ k ≤ r.
Din propozit ¸ia 3.1.8 rezult˘a acum c˘a x
1
≡ x
2
(mod M), deci orice dou˘a
solut ¸ii ale sistemului sunt congruente modulo M.
Spre exemplu, s˘a rezolv˘am urm˘atoarea problem˘a g˘asit˘a ˆın Manualul
de Matematic˘a al lui Sun Zi, problem˘a considerat˘a un exemplu clasic al
teoremei chineze¸sti a resturilor:
Determinat ¸i un num˘ar care ˆımp˘art ¸it la 3 d˘a restul 2, la ˆımp˘art ¸irea la 5,
restul este 3 iar ˆımp˘art ¸it la 7 d˘a restul 2. Problema o putem transcrie
sub forma sistemului:
(S
1
)
_
_
_
x ≡ 2 (mod 3)
x ≡ 3 (mod 5)
x ≡ 2 (mod 7)
M = 3 5 7 = 105, M
1
=
105
3
= 35, M
2
=
105
5
= 21, M
3
=
105
7
= 15.
Pentru determinarea lui M
1
rezolv˘am 35M
1
≡ 1 (mod 3). Astfel,
2M
1
≡ 1 (mod 3), de unde M
1
≡ 2 (mod 3).
Analog, M
2
≡ 1 (mod 5) rezult˘a din 21M
2
≡ 1 (mod 5).
La fel obt ¸inem M
3
≡ 1 (mod 7).
Solut ¸ia sistemului este:
x = 2 35 2 + 3 21 1 + 2 15 1 = 233 ≡ 23 (mod 105).
Algoritmul de rezolvare a sistemelor corespunz˘atoare teoremei chine-
ze¸sti a resturilor urm˘are¸ste demonstrat ¸ia teoremei ¸si este atribuit lui
Gauss.
Algoritm 3.3.1 (Teorema chinezeasc˘a a resturilor)
INPUT: numerele naturale m
1
, . . . , m
r
dou˘a cˆate dou˘a relativ
prime ¸si a
1
, . . . , a
r
numere ˆıntregi.
OUTPUT: Solut ¸ia x (mod M) a sistemului (S).
1. Calculeaz˘ a M = m
1
m
2
. . . m
r
.
2. Pune x ←0. Pentru k = 1, . . . , r calculeaz˘a:
2.1. M
k
=
M
m
k
¸si M
k
mod m
k
.
2.2. x ←x +a
k
M
k
M
k
(mod M).
3. Returneaz˘a x.
3.3. SISTEME DE CONGRUENT¸ E 65
O alt˘a metod˘a de rezolvare a unui sistem de congruent ¸e de forma lui
(S), ˆın care modulule nu trebuie s˘a fie neap˘arat dou˘a cˆate dou˘a prime
ˆıntre ele, este de a rezolva succesiv congruent ¸ele din sistem. Ea poart˘a
numele de metod˘a iterativ˘a.
De exemplu, dac˘a consider˘am sistemul anterior, (S
1
), prima congru-
ent ¸˘a arat˘a c˘a x = 3t + 2, unde t ∈ Z.
Aceste numere trebuie s˘a verifice congruent ¸a urm˘atoare din sistem, adic˘a
3t + 2 ≡ 3 (mod 5) sau 3t ≡ 1 (mod 5). Atunci, t ≡ 2 (mod 5) de unde
t = 5u + 2 cu u num˘ar ˆıntreg. Obt ¸inem x = 15u + 8. Mai r˘amˆane
s˘a vedem pentru ce valori ale lui u se verific˘a ¸si ultima congruent ¸˘a a
sistemului.
15u+8 ≡ 2 (mod 7) implic˘a u ≡ 1 (mod 7). Astfel, u = 7v +1, cu v ∈ Z.
ˆ
In final, x = 105v + 23 ≡ 23 (mod 105).
Vom considera acum sisteme de mai multe congruent ¸e liniare cu mai
multe necunoscute, dar acela¸si modul.
Pentru ˆınceput consider˘am cazul ˆın care sistemul este format din
dou˘a congruent ¸e cu dou˘a necunoscute:
(S
2
)
_
ax +by ≡ e (mod m)
cx +dy ≡ f (mod m)
cu a, b, c, d, e, f ∈ Z, m ∈ N

, astfel ˆıncˆat (∆, m) = 1, ∆ = ad −bc.
Propozit ¸ie 3.3.1 Sistemul (S
2
) are solut ¸ie unic˘a modulo m ¸si anume:
x ≡
¯
∆(de −bf) (mod m)
y ≡
¯
∆(af −ce) (mod m).
Putem extinde modul de rezolvare la un sistem de n congruent ¸e liniare
cu n necunoscute.
Pentru studiul acestora vom folosi matrice p˘atratice cu elemente nu-
mere ˆıntregi.
Definit ¸ie 3.3.1 Fie A, B ∈ /
k,n
(Z). Spunem c˘a matricele A = (a
ij
)
¸si B = (b
ij
) sunt congruente modulo m dac˘a a
ij
≡ b
ij
(mod m), pentru
orice i ∈ ¦1, . . . , k¦, j ∈ ¦1, . . . , n¦.
ˆ
In acest caz, vom scrie A ≡ B (mod m).
66 CAPITOLUL 3. CONGRUENT¸ E
De exemplu,
_
15 3
8 12
_

_
5 13
−2 2
_
(mod 10).
ˆ
In continuare prezent˘am cˆateva propriet˘at ¸i ale matricelor.
Propozit ¸ie 3.3.2 Fie A, B ∈ /
k,l
(Z) a¸sa ˆıncˆat A ≡ B (mod m).
Atunci, pentru orice matrice C ∈ /
l,n
(Z) ¸si orice D ∈ /
p,k
(Z), au
loc relat ¸iile AC ≡ BC (mod m) ¸si DA ≡ DB (mod m).
Definit ¸ie 3.3.2 Dac˘a A,
¯
A ∈ /
n
(Z) verific˘a
A
¯
A ≡
¯
AA ≡ I
n
(mod m),
atunci spunem c˘a
¯
A este inversa matricei A modulo m.
Dac˘a consider˘am c˘a
¯
Aeste inversa lui Amodulo miar B ≡
¯
A(mod m),
propozit ¸ia anterioar˘a asigur˘a c˘a BA ≡ I
n
(mod m).
Invers, dac˘a B
1
, B
2
sunt inverse ale matricei A modulo m, atunci, din
B
1
A ≡ B
2
A ≡ I
n
(mod m) rezult˘a B
1
AB
1
≡ B
2
AB
1
(mod m) ¸si astfel,
B
1
≡ B
2
(mod m).
De exemplu, din
_
2 5
3 1
__
3 1
3 2
_

_
1 0
0 1
_
(mod 4)
_
3 1
3 2
__
2 5
3 1
__
1 0
0 1
_
(mod 4)
rezult˘a c˘a
_
3 1
3 2
_
este inversa matricei
_
2 5
3 1
_
modulo 4.
Propozit ¸ie 3.3.3 Fie A =
_
a b
c d
_
∈ /
2
(Z) astfel ˆıncˆat
∆ = det(A) = ad −bc este relativ prim cu m.
Atunci, matricea
¯
A =
¯

_
d −b
−c a
_
este inversa matricei A modulo
m.
Presupunem acum c˘a A ∈ /
n
(Z) iar cu A

not˘am matricea ad-
junct˘a.
3.3. SISTEME DE CONGRUENT¸ E 67
Propozit ¸ie 3.3.4 Pentru A ∈ /
n
(Z) ¸si m ∈ N

cu det(A) = ∆ ¸si m
relativ prime, matricea
¯
A =
¯
∆A

este inversa lui A modulo m.
De exemplu, consider˘am matricea A =
_
_
1 2 3
1 2 5
1 4 6
_
_
¸si vrem s˘a-i
determin˘am inversa modulo 7.
∆ = −4 ≡ 3 (mod 7). Obt ¸inem
¯
∆ ≡ 5 (mod 7).
A

=
_
_
−8 0 4
−1 3 −2
2 −2 0
_
_

_
_
6 0 4
6 3 5
2 5 0
_
_
(mod 7).
Rezult˘a astfel:
¯
A = 5A

=
_
_
30 0 20
30 15 25
10 25 0
_
_

_
_
2 0 6
2 1 4
3 4 0
_
_
(mod 7).
Putem s˘a abord˘am acum rezolvarea unui sistem de congruent ¸e de
forma:
(S
n
)
_
¸
¸
_
¸
¸
_
a
11
x
1
+a
12
x
2
+. . . +a
1n
x
n
≡ b
1
(mod m)
a
21
x
1
+a
22
x
2
+. . . +a
2n
x
n
≡ b
2
(mod m)
......................................................................
a
n1
x
1
+a
n2
x
2
+. . . +a
nn
x
n
≡ b
n
(mod m)
Sistemul poate fi scris sub form˘a matriceal˘a AX ≡ B (mod m) unde
A = (a
ij
) ∈ /
n
(Z), X =
_
_
x
1
. . .
x
n
_
_
∈ /
n,1
(Z) ¸si
B =
_
_
b
1
. . .
b
n
_
_
∈ /
n,1
(Z).
Presupunem c˘a ∆ = det(A) ¸si m sunt relativ prime. Atunci exist˘a
¯
A,
inversa modulo m a lui A. Prin ˆınmult ¸ire cu aceasta, obt ¸inem
¯
AB ≡
¯
AAX ≡ X (mod m) ca solut ¸ie a sistemului (S
n
).
S˘a rezolv˘am de exemplu sistemul:
_
_
_
x + 2y + 3z ≡ 2 (mod 7)
x + 2y + 5z ≡ 1 (mod 7)
x + 4y + 6z ≡ 2 (mod 7)
68 CAPITOLUL 3. CONGRUENT¸ E
Observ˘am c˘a matricea asociat˘a sistemului este matricea A pentru
care am calculat deja inversa modulo 7. Solut ¸ia sistemului se obt ¸ine
atunci ca fiind:
_
_
x
y
z
_
_
=
¯
A
_
_
2
1
2
_
_
=
_
_
16
13
10
_
_

_
_
2
6
3
_
_
(mod 7).
3.4 Congruent ¸e speciale
3.4.1 Teorema Wilson
Teorem˘a 3.4.1 (Wilson) Dac˘a p > 1 este un num˘ar prim, atunci
(p −1)! ≡ −1 (mod p).
Demonstrat ¸ie. Dac˘a p = 2, atunci (p − 1)! = 1 ≡ −1 (mod 2). Con-
sider˘am acum p > 2 num˘ar prim.
Atunci, pentru orice 1 ≤ x ≤ p−1 exist˘a invers modulo p. Din propozit ¸ia
3.2.1, x = ¯ x dac˘a ¸si numai dac˘a x ≡ ±1 (mod p). De aici, rezult˘a c˘a
putem grupa numerele naturale nenule mai mici decˆat p, mai put ¸in nu-
merele 1 ¸si p−1 astfel ˆıncˆat produsul celor
p −3
2
perechi s˘a fie congruent
cu 1 modulo p.
Deci, 2 3 . . . (p −3) (p −2) ≡ 1 (mod p).
ˆ
In final, (p −1)! ≡ 1 (p −1) ≡ −1 (mod p).
Reciproca teoremei lui Wilson este adev˘arat˘a:
Teorem˘a 3.4.2 Dac˘a n este un num˘ar natural astfel ˆıncˆat
(n −1)! ≡ −1 (mod n),
atunci n este prim.
Demonstrat ¸ie. S˘a reducem la absurd ¸si s˘a presupunem c˘a n este un
num˘ar compus. Atunci, n = a b unde 1 < a, b < n. Deci, a [ (n − 1)!.
Din n [ (n −1)! + 1, rezult˘a c˘a a [ (n −1)! + 1 ¸si, ˆın final, a [ 1, ceea ce
este fals.
Observ˘am c˘a aceast˘a teorem˘a ofer˘a un test de primalitate. Pentru
a testa dac˘a n este prim, calcul˘am (n − 1)! + 1 ¸si vedem dac˘a el este
divizibil cu n. Cu toate c˘a pare foarte simplu, acest test este impracticabil
deoarece necesit˘a prea multe operat ¸ii binare.
3.4. CONGRUENT¸ E SPECIALE 69
3.4.2 Mica Teorem˘a a lui Fermat
Teorem˘a 3.4.3 (Mica Teorem˘a a lui Fermat) Fie p ≥ 2, num˘ar
prim. Atunci, a
p−1
≡ 1 (mod p), pentru orice num˘ar ˆıntreg a prim
cu p.
Demonstrat ¸ie. Consider˘am numereleˆıntregi a, 2a, . . . , (p−1)a. Observ˘am
c˘a p ka pentru 1 ≤ k ≤ p − 1. De asemenea, ja ,= ka (mod p), pen-
tru j ,= k. Deci, ¦a, 2a, . . . , (p − 1)a¦ reprezint˘a un sistem complet de
resturi modulo p din care a fost exclus 0. Astfel, a 2a . . . (p − 1)a ≡
1 2 . . . (p −1) (mod p). De aici, a
p−1
(p −1)! ≡ (p −1)! (mod p). Cum
((p −1)!, p) = 1, rezult˘a ˆın final a
p−1
≡ 1 (mod p).
Teorem˘a 3.4.4 Pentru p ≥ 2, num˘ar prim ¸si pentru orice a, num˘ar
ˆıntreg, are loc relat ¸ia:
a
p
≡ a (mod p).
Demonstrat ¸ie. Dac˘a p a, din mica teorem˘a a lui Fermat, rezult˘a c˘a
a
p−1
≡ 1 (mod p), de unde, a
p
≡ a (mod p).
Dac˘a p [ a, atunci a
p
≡ a ≡ 0 (mod p).
O prim˘a aplicat ¸ie a micii teoreme a lui Fermat const˘a ˆın deter-
minarea unor resturi modulo p pentru puteri. De exemplu, dac˘a dorim
s˘a calcul˘am restul lui 8
110
modulo 13, folosind teorema, obt ¸inem c˘a
8
110
=
_
8
12
_
9
8
2
≡ 64 ≡ 12 (mod 13).
O alt˘a aplicat ¸ie folositoare a acestei teoreme este urm˘atoarea:
Corolar 3.4.1 Dac˘a p ≥ 2 este un num˘ar prim, a ∈ Z cu p a, atunci
a
p−2
este inversul modulo p al lui a.
Teorema 3.4.3 ofer˘a astfel o nou˘a metod˘a de rezolvare a congruent ¸elor
liniare.
Corolar 3.4.2 Dac˘a a, b sunt numere ˆıntregi, p ≥ 2 num˘ar prim cu
p a, solut ¸ia congruent ¸ei liniare ax ≡ b (mod p) este
x ≡ a
p−2
b (mod p).
70 CAPITOLUL 3. CONGRUENT¸ E
3.4.3 Teorema lui Euler
Definit ¸ie 3.4.1 Funct ¸ia φ : N → N, definit˘a prin φ(n) este num˘arul
numerelor naturale mai mici decˆat n ¸si prime cu n, poart˘a numele de
funct ¸ia lui Euler.
Definit ¸ie 3.4.2 Un sistem redus de resturi modulo n este o mult ¸ime de
φ(n) numere ˆıntregi, toate prime cu n ¸si dou˘a cˆate dou˘a necongruente
modulo n.
De exemplu, ¦1, 3, 7, 9¦ este un sistem redus de resturi modulo 10.
Pornind de la un sistem redus de resturi modulo n, asem˘an˘ator cu
rezultatul propozit ¸iei 3.1.6, putem construi un nou sistem redus de
resturi modulo n.
Propozit ¸ie 3.4.1 Fie ¦r
1
, r
2
, . . . , r
φ(n)
¦ un sistem redus de resturi mo-
dulo n ¸si a ∈ Z, prim cu n. Atunci, ¦ar
1
, ar
2
, . . . , ar
φ(n)
¦ este tot un
sistem redus de resturi modulo n.
O generalizare a micii teoreme a lui Fermat este dat˘a de Euler:
Teorem˘a 3.4.5 (Euler) Fie a ∈ Z, n ∈ N cu (a, n) = 1. Atunci,
a
φ(n)
≡ 1 (mod n).
Demonstrat ¸ie. Fie ¦r
1
, r
2
, . . . , r
φ(n)
¦ un sistem redus de resturi modulo
n. Conform propozit ¸iei anterioare, ¦ar
1
, ar
2
, . . . , ar
φ(n)
¦ este un sistem
redus de resturi modulo n.
Deci, resturile modulo n ale numerelor ar
1
, ar
2
, . . . , ar
φ(n)
sunt r
1
, r
2
, . . . ,
r
φ(n)
, eventual ˆın alt˘a ordine.
Atunci, a
φ(n)
r
1
r
2
. . . r
φ(n)
≡ r
1
r
2
. . . r
φ(n)
(mod n).
Aplicˆand corolarul 3.1.1, obt ¸inem a
φ(n)
≡ 1 (mod n).
La fel ca ˆın cazul micii teoreme a lui Fermat, urm˘atoarele corolare
sunt imediate:
Corolar 3.4.3 Dac˘a n ≥ 2 este un num˘ar natural, a ∈ Z cu (a, n) = 1,
atunci a
φ(n)−1
este inversul modulo n al lui a.
Corolar 3.4.4 Dac˘a a, b sunt numere ˆıntregi, n ≥ 2 num˘ar natural cu
(a, n) = 1, solut ¸ia congruent ¸ei liniare ax ≡ b (mod n) este
x ≡ a
φ(n)−1
b (mod n).
3.4. CONGRUENT¸ E SPECIALE 71
Exercit ¸ii propuse
1. Determinat ¸i, folosind metoda ridic˘arii repetate la p˘atrat:
2
321
(mod 47) ¸si 3
22
(mod 23).
2. Rezolvat ¸i urm˘atoarele congruent ¸e liniare:
i) 3x ≡ 4 (mod 7),
ii) 4x ≡ 3 (mod 12),
iii) 9x ≡ 12 (mod 21),
iv) 27x ≡ 25 (mod 256),
v) 17x ≡ 14 (mod 21),
vi) 15x ≡ 9 (mod 25),
vii) 103x ≡ 612 (mod 676),
viii) 987x ≡ 610 (mod 1597),
ix) 27x ≡ 72 (mod 900).
3. Fie p num˘ar prim impar ¸si k num˘ar natural nenul. Ar˘atat ¸i c˘a
x
2
≡ 1 (mod p
k
) are exact dou˘a solut ¸ii necongruente, x ≡ ±1 (mod p
k
).
4. Fie congruent ¸a x
2
≡ 1 (mod 2
k
), cu k ≥ 1. Ar˘atat ¸i c˘a aceast˘a
congruent ¸˘a are solut ¸ie unic˘a pentru k = 1 iar pentru k = 2, are dou˘a
solut ¸ii necongruente.
Pentru k > 2, demonstrat ¸i c˘a toate solut ¸iile congruent ¸ei sunt:
x ≡ ±1 (mod 2
k
) ¸si x ≡ ±(1 + 2
k−1
) (mod 2
k
).
5. Rezolvat ¸i urm˘atoarele sistemele:
_
_
_
x ≡ 1 (mod 5)
x ≡ 3 (mod 6)
x ≡ 11 (mod 17)
_
x ≡ 6 (mod 7)
x ≡ 2 (mod 6)
_
¸
¸
_
¸
¸
_
x ≡ 2 (mod 11)
x ≡ 6 (mod 13)
x ≡ 5 (mod 12)
x ≡ 4 (mod 7)
_
_
_
x ≡ 3 (mod 15)
x ≡ 4 (mod 11)
x ≡ 1 (mod 14) .
72 CAPITOLUL 3. CONGRUENT¸ E
6. Determinat ¸i cea mai mic˘a solut ¸ie pozitiv˘a a sistemelor:
_
_
_
x ≡ 12 (mod 31)
x ≡ 87 (mod 127)
x ≡ 91 (mod 225)
_
3x ≡ 4 (mod 17)
2x ≡ 7 (mod 9)
7. G˘asit ¸i un num˘ar care este multiplu de 11 ¸si ˆımp˘art ¸it la fiecare
dintre numerele 2, 3, 5, ¸si 7, d˘a restul 1.
8. Fie sistemul de congruent ¸e liniare:
_
x ≡ a
1
(mod m
1
)
x ≡ a
2
(mod m
2
) .
Ar˘atat ¸i c˘a sistemul are solut ¸ie dac˘a ¸si numai dac˘a
(m
1
, m
2
) [ a
1
−a
2
.
ˆ
In cazul ˆın care sistemul are solut ¸ie, ar˘atat ¸i c˘a ea este unic˘a modulo
[m
1
, m
2
].
Folosind acest rezultat, rezolvat ¸i sistemele:
_
x ≡ 4 (mod 6)
x ≡ 13 (mod 15)
_
x ≡ 7 (mod 10)
x ≡ 4 (mod 15) .
9. Rezolvat ¸i urm˘atoarele sisteme de congruent ¸e liniare:
_
_
_
x + 2y +z ≡ 3 (mod 6)
3y + 4z ≡ 3 (mod 6)
2x + 2y +z ≡ 4 (mod 6)
_
17x + 11y ≡ 7 (mod 29)
13x + 10y ≡ 8 (mod 29.)
10. Determinat ¸i 2
326
(mod 17), folosind mica teorem˘a a lui Fermat.
11. G˘asit ¸i ultima cifr˘a a num˘arului 3
100
, scris ˆın baza 7.
12. Fie p, q dou˘a numere prime distincte. Ar˘atat ¸i c˘a
p
q−1
+q
p−1
≡ 1 (mod pq).
13. Pentru a ∈ Z ¸si p, num˘ar prim, ar˘atat ¸i c˘a:
p [ a
p
+ (p −1)!a.
CAPITOLUL 4
Funct ¸ii multiplicative
4.1 Funct ¸ia Euler
Definit ¸ie 4.1.1 O funct ¸ie aritmetic˘a este o funct ¸ie al c˘arei domeniu de
definit ¸ie este mult ¸imea numerelor naturale.
Definit ¸ie 4.1.2 Fie f o funct ¸ie aritmetic˘a. Dac˘a f(mn) = f(m)f(n),
pentru orice dou˘a numere naturale m, n, relativ prime, spunem c˘a f este
funct ¸ie multiplicativ˘a.
Dac˘a f(mn) = f(m)f(n), pentru orice m, n ∈ N, atunci f se nume¸ste
complet multiplicativ˘a.
Teorem˘a 4.1.1 Fie f o funct ¸ie multiplicativ˘a ¸si
n = p
α
1
1
p
α
2
2
. . . p
α
k
k
cu p
j
numere prime distincte, α
j
≥ 1, pentru fiecare 1 ≤ j ≤ k. Atunci,
f(n) = f (p
α
1
1
) f (p
α
2
2
) . . . f (p
α
k
k
) .
Teorem˘a 4.1.2 Dac˘a f este o funct ¸ie multiplicativ˘a, atunci funct ¸ia F
definit˘a prin F(n) = Σ
d|n
f(d) este o funct ¸ie multiplicativ˘a.
Demonstrat ¸ie. Fie m, n numere naturale cu (m, n) = 1.
F(mn) = Σ
d|mn
f(d). Dac˘a d [ mn ¸si (m, n) = 1, atunci exist˘a numerele
73
74 CAPITOLUL 4. FUNCT¸ II MULTIPLICATIVE
naturale d
1
¸si d
2
, relativ prime, astfel ˆıncˆat d
1
[ m, d
2
[ n, d = d
1
d
2
.
Obt ¸inem:
F(mn) = Σ
d1|m
d
2
|n
f(d
1
d
2
) = Σ
d1|m
d
2
|n
f(d
1
)f(d
2
)
= Σ
d1|m
f(d
1
) Σ
d2|n
f(d
2
) = F(m)F(n)
deoarece f este multiplicativ˘a ¸si d
1
, d
2
sunt relativ prime.
Propozit ¸ie 4.1.1 Dac˘a p este num˘ar prim, atunci φ(p) = p − 1. Re-
ciproc, dac˘a φ(n) = n −1, atunci n este num˘ar prim.
Demonstrat ¸ie. Prima parte a afirmat ¸iei este evident˘a. Consider˘am acum
c˘a φ(n) = n −1 ¸si presupunem c˘a n este compus. Atunci, exist˘a
1 < d < n un divizor netrivial al lui n. Astfel, exist˘a cel mult n − 2
numere mai mici decˆat n ¸si prime cu n, de unde φ(n) ≤ n −2, fals.
Propozit ¸ie 4.1.2 Fie p num˘ar prim ¸si k num˘ar natural nenul. Atunci,
φ(p
k
) = p
k
−p
k−1
.
Demonstrat ¸ie. Pentru a < p
k
observ˘am imediat c˘a (a, p
k
) ,= 1 dac˘a ¸si
numai dac˘a p [ a. Astfel, numerele a care nu sunt prime cu p
k
sunt toate
de forma jp cu 1 ≤ j ≤ p
k−1
. Deci, sunt p
k−1
numere mai mici decˆat p
k
care nu sunt prime cu acesta. Relat ¸ia cerut˘a rezult˘a acum imediat.
Teorem˘a 4.1.3 Funct ¸ia Euler este o funct ¸ie multiplicativ˘a.
Demonstrat ¸ie. Fie m, n ∈ N, relativ prime.
A¸sez˘am numerele 1, 2, . . . , mn sub forma urm˘atoare:
1 m+ 1 2m+ 1 . . . (n −1)m+ 1
2 m+ 2 2m+ 2 . . . (n −1)m+ 2
. . . . . . . . . . . . . . .
r m+r 2m+r . . . (n −1)m+r
. . . . . . . . . . . . . . .
m 2m 3m . . . nm
Presupunem (m, r) = d > 1. Atunci, din d [ m ¸si d [ r, obt ¸inem c˘a pe
linia r nu exist˘a numere relativ prime cu mn. Astfel, pentru a num˘ara
numerele relativ prime cu mn din ¸sir trebuie s˘a alegem doar liniile r cu
4.1. FUNCT¸ IA EULER 75
(r, m) = 1. Sunt exact φ(m) astfel de linii. Vedem acum cˆate numere
de pe o astfel de linie sunt prime cu mn. T¸ inˆand cont de forma lor,
este evident c˘a toate sunt prime cu m. Din propozit ¸ia 3.1.6, rezult˘a c˘a
numerele de pe linie formeaz˘a un sistem complet de resturi modulo n.
Deci, numai φ(n) dintre ele sunt prime cu n. Cum toate sunt prime cu
m ¸si m, n sunt relativ prime, pe linie sunt φ(n) numere prime cu mn.
ˆ
In final, am obt ¸inut c˘a sunt φ(n) φ(m) numere mai mici decˆat mn ¸si
prime cu mn, adic˘a funct ¸ia φ este multiplicativ˘a.
ˆ
Insumˆand toate aceste rezultate, ¸si aplicˆand teorema 4.1.3, rezult˘a:
Teorem˘a 4.1.4 Dac˘a n = p
α
1
1
p
α
2
2
. . . p
α
k
k
unde p
i
sunt numere prime
distincte ¸si α
i
≥ 1, pentru 1 ≤ i ≤ k, atunci
φ(n) = n
_
1 −
1
p
1
__
1 −
1
p
1
_
. . .
_
1 −
1
p
k
_
.
Teorem˘a 4.1.5 Pentru n, un num˘ar natural nenul, are loc relat ¸ia:
Σ
d|n
φ(d) = n. (4.1)
Demonstrat ¸ie. Vom ˆımp˘art ¸i numerele de la 1 la n ˆın clase. Definim
clasa C
d
= ¦m [ (m, n) = d¦. Observ˘am c˘a orice dou˘a astfel de clase
sunt disjuncte. De asemenea, m ∈ C
d
este echivalent cu
_
m
d
,
n
d
_
= 1.
Deci, num˘arul de elemente din clasa C
d
este egal cu num˘arul numerelor
naturale mai mici decˆat
n
d
¸si relativ prime cu
n
d
. Astfel, [ C
d
[= φ
_
n
d
_
.
Aceste clase C
d
realizeaz˘a o partit ¸ie a mult ¸imii ¦1, 2, . . . , n¦. De aici,
n = Σ
d|n
[ C
d
[= Σ
d|n
φ
_
n
d
_
. Dar, cˆand d parcurge tot ¸i divizorii lui n,
n
d
face acela¸si lucru. Putem scrie atunci, n = Σ
d|n
φ(d).
S˘a consider˘am un exemplu pentru a vedea cum se formeaz˘a aceste
clase. Alegem n = 12.
Form˘am clasele C
d
= ¦m [ (m, 12) = d¦ unde d ∈ ¦1, 2, 3, 4, 6, 12¦.
76 CAPITOLUL 4. FUNCT¸ II MULTIPLICATIVE
C
1
= ¦1, 5, 7, 11¦ [ C
1
[= φ
_
12
1
_
= 4
C
2
= ¦2, 10¦ [ C
2
[= φ
_
12
2
_
= 2
C
3
= ¦3, 9¦ [ C
3
[= φ
_
12
3
_
= 2
C
4
= ¦4, 8¦ [ C
4
[= φ
_
12
4
_
= 2
C
6
= ¦6¦ [ C
6
[= φ
_
12
6
_
= 1
C
12
= ¦12¦ [ C
12
[= φ
_
12
12
_
= 1
Obt ¸inem 4 + 2 + 2 + 2 + 1 + 1 = 12.
4.2 Funct ¸iile σ ¸si τ
Definit ¸ie 4.2.1 Funct ¸ia aritmetic˘a σ este definit˘a prin σ(n) este egal
cu suma divizorilor naturali ai lui n, adic˘a σ(n) = Σ
d|n
d.
De asemenea, definim funct ¸ia τ prin τ(n) = Σ
d|n
1, adic˘a τ(n) este
egal cu num˘arul divizorilor naturali ai lui n.
Folosind teorema 4.1.2, obt ¸inem c˘a funct ¸iile σ ¸si τ sunt funct ¸ii mul-
tiplicative.
Lem˘a 4.2.1 Dac˘a p > 1 este num˘ar prim ¸si k ∈ N

, atunci:
σ(p
k
) =
p
k+1
−1
p −1
, τ(p
k
) = k + 1.
Teorem˘a 4.2.1 Fie n un num˘ar natural a c˘arui descompunere canonic˘a
ˆın factori primi este n = p
α
1
1
p
α
2
2
. . . p
α
k
k
. Atunci,
σ(n) =
k

j=1
p
α
j
+1
j
−1
p
j
−1
, τ(n) =
k

j=1

j
+ 1).
4.3. NUMERE PERFECTE 77
4.3 Numere perfecte
ˆ
In antichitate, un interes deosebit ˆıl prezenta relat ¸ia dintre un num˘ar
natural ¸si suma divizorilor s˘ai, relat ¸ie care c˘ap˘ata chiar valent ¸e mistice.
Definit ¸ie 4.3.1 Un num˘ar natural n pentru care σ(n) = 2n se nume¸ste
num˘ar perfect.
De exemplu, cum σ(6) = 12 ¸si σ(28) = 56, numerele 6 ¸si 28 sunt
numere perfecte.
Teorem˘a 4.3.1 Un num˘ar natural par n este perfect dac˘a ¸si numai
dac˘a n = 2
m−1
(2
m
−1) unde m ≥ 2 ¸si 2
m
−1 este num˘ar prim.
Demonstrat ¸ie. Presupunem n un num˘ar par perfect.
Atunci, n = 2
s
t, unde s ≥ 1 ¸si t impar. Astfel,
σ(n) = σ(2
s
)σ(t) =
_
2
s+1
−1
_
σ(t) (4.2)
¸si cum
σ(n) = 2n = 2
s+1
t, (4.3)
din cele dou˘a relat ¸ii, obt ¸inem c˘a:
2
s+1
t =
_
2
s+1
−1
_
σ(t). (4.4)
Dar,
_
2
s+1
, 2
s+1
−1
_
= 1. Atunci, 2
s+1
[ σ(t), adic˘a σ(t) = 2
s+1
q pentru
un num˘ar natural q. Rezult˘a
2
s+1
t =
_
2
s+1
−1
_
2
s+1
q (4.5)
adic˘a t =
_
2
s+1
−1
_
q. Deci, q [ t ¸si q ,= t. Avem:
t +q =
_
2
s+1
−1
_
q +q = 2
s+1
q = σ(t). (4.6)
Dac˘a q ,= 1, atunci exist˘a cel put ¸in trei divizori naturali ai lui t, ¸si anume
1, q, t. De aici rezult˘a:
σ(t) ≥ t +q + 1, (4.7)
ceea ce contrazice ( 4.6). Deci, q = 1 ¸si atunci, t = 2
s+1
− 1. Rezult˘a
σ(t) = t + 1, de unde t este prim. Obt ¸inem n = 2
s
_
2
s+1
−1
_
unde
2
s+1
−1 este prim.
78 CAPITOLUL 4. FUNCT¸ II MULTIPLICATIVE
Reciproc, presupunem c˘a n = 2
m−1
(2
m
−1) unde 2
m
− 1 este prim.
Atunci, σ(n) = σ
_
2
m−1
_
σ (2
m
−1) = (2
m
−1) 2
m
= 2n. Astfel, n este
num˘ar perfect.
Pentru a determina numerele pare perfecte avem nevoie de numere
prime de forma 2
n
−1.
Propozit ¸ie 4.3.1 Dac˘a 2
n
−1 este num˘ar prim, atunci n este prim.
Demonstrat ¸ie. Dac˘a presupunem c˘a n nu este prim, atunci n = ab cu
1 < a, b < n. Obt ¸inem atunci
2
n
−1 = (2
a
−1)
_
2
a(b−1)
+. . . + 2
a
+ 1
_
unde 1 < 2
a
−1 < 2
n
−1. Astfel, obt ¸inem c˘a 2
n
−1 este num˘ar compus
ceea ce contrazice ipoteza.
4.4 Numere Mersenne
La ˆınceput, numerele de forma 2
n
−1 erau considerate prime, pentru n
num˘ar prim.
ˆ
Incepˆand cu anul 1536, diver¸si matematicieni au ar˘atat c˘a
aceast˘a afirmat ¸ie nu este corect˘a, dˆand contraexemple.
Definit ¸ie 4.4.1 Fie n ∈ N. Un num˘ar de forma M
n
= 2
n
− 1 se
nume¸ste num˘ar Mersenne. Dac˘a p este un num˘ar prim ¸si M
p
este prim,
el poart˘a numele de num˘ar prim Mersenne.
Mersenne,
1
ˆın lucrarea sa Cogitata Physica-Mathematica, din anul
1644 a afirmat, f˘ar˘a demonstrat ¸ie, c˘a:
M
p
este prim, pentru p ∈ ¦2, 3, 5, 7, 13, 17, 19, 31, 67, 127, 257¦ iar pentru
celelalte valori n < 257, numerele M
n
erau compuse.
300 de ani au fost necesari pentru a verifica complet aceast˘a afirmat ¸ie.
ˆ
In anul 1947, cˆand a fost finalizat studiul, s-a remarcat c˘a Mersenne
f˘acuse 5 erori ¸si anume: M
61
, M
89
, M
107
sunt prime iar M
67
, M
257
com-
puse.
1
Marin Mersenne (1588-1648) a fost c˘alug˘ar franciscan, tr˘aind aproape toat˘a viat ¸a
ˆın mˆan˘astirile Parisului. Chilia sa era locul unde mari matematicieni precum Fermat
¸si Pascal se ˆıntˆ alneau pentru a discuta. Prin vasta sa corespondent ¸˘ a cu alt ¸i matema-
ticieni, el a jucat un rol important ˆın comunicarea rezultatelor matematice obt ¸inute
ˆın acea perioad˘a, cˆand nu existau publicat ¸ii ¸stiint ¸ifice.
4.4. NUMERE MERSENNE 79
Pentru a vedea dac˘a un num˘ar Mersenne este prim, de obicei verific˘am
dac˘a are divizori primi mici. Urm˘atoarea teorem˘a a lui Euler ¸si Fermat
este folositoare ˆın aceast˘a privint ¸˘a.
Teorem˘a 4.4.1 Fie p ¸si q numere prime impare. Dac˘a q [ M
p
, atunci
q ≡ ±1 (mod 8). Mai mult, q = 2kp + 1, pentru un k natural.
Cu toate c˘a ˆın finalul demonstrat ¸iei se folose¸ste un rezultat obt ¸inut
ˆın capitolul 7, anume teorema 7.1.3, prezent˘am demonstrat ¸ia teoremei
acum, pentru a nu o separa de enunt ¸.
Demonstrat ¸ie. Din teorema 3.4.3, cum q este prim impar, obt ¸inem
q [ 2
q−1
−1. Din ipotez˘a, q [ 2
p
−1. Deci,
q [
_
2
p
−1, 2
q−1
−1
_
= 2
(p,q−1)
−1. (4.8)
Rezult˘a c˘a 2
(p,q−1)
−1 > 1, adic˘a (p, q −1) > 1. Dar p este num˘ar prim,
de unde (p, q −1) = p. Astfel, p [ q −1 adic˘a exist˘a m natural astfel ˆıncˆat
q = mp + 1. Din q impar, rezult˘a c˘a m trebuie s˘a fie num˘ar par. Astfel,
exist˘a k natural cu q = 2kp + 1.
Relat ¸ia 2
q−1
2
= (2
p
)
k
≡ 1 (mod q), arat˘a c˘a 2 este rest p˘atratic modulo
q. Folosind teorema 7.1.3, q ≡ ±1 (mod 8). .
S˘a vedem pe cˆateva exemple cum funct ¸ioneaz˘a aceast˘a teorem˘a.
1) Pentru a vedea dac˘a M
13
= 2
13
−1 = 8191 este prim, vedem dac˘a
are divizori primi de forma 26k + 1. Singurele numere prime de aceast˘a
form˘a ≤

8191 sunt 53 ¸si 79. Prin calcul direct, se obt ¸ine c˘a ei nu sunt
divizori pentru M
13
. Deci, M
13
este num˘ar prim Mersenne.
2) Pentru M
23
= 8388607 c˘aut˘am divizori primi de forma 46k + 1 ≤

M
23
= 2896, . . . . Se obt ¸ine M
23
= 47 178481, deci M
23
este compus.
3)
ˆ
In 1772, Euler a folosit teorema pentru a ar˘ata c˘a M
31
este prim.
Astfel, el a c˘autat divizori de forma 62k + 1 care verific˘a q = 62k + 1 ≡
±1 (mod 8). Rezolvˆand congruent ¸ele, rezult˘a k ≡ 1 (mod 4) sau k este
multiplu de 4. De aici, q ≡ 1 (mod 248) sau q ≡ 63 (mod 248). Cum
dintre aceste numere, nici unul nu e divizor pentru M
31
, el este prim.
Se presupune c˘a exist˘a o infinitate de numere prime Mersenne, deci
o infinitate de numere pare perfecte.
80 CAPITOLUL 4. FUNCT¸ II MULTIPLICATIVE
Un rezultat interesant este oferit de Euler ˆın teorema:
Teorem˘a 4.4.2 Fie p num˘ar prim, p ≡ 3 (mod 4). Atunci, 2p + 1 este
prim dac˘a ¸si numai dac˘a 2
p
≡ 1 (mod 2p + 1).
Cu alte cuvinte, dac˘a p ≡ 3 (mod 4) este num˘ar prim ¸si 2p + 1 este tot
num˘ar prim, atunci M
p
este num˘ar compus.
G˘asirea de numere prime Mersene este extrem de laborioas˘a din
punct de vedere computat ¸ional. G. Woltman a organizat un program
distribuit pe Internet, Great Internet Mersenne Prime Search, ˆın care
sute de voluntari folosesc computerele pentru a realiza etape din c˘autare.
ˆ
In cadrul acestui program, pe 17 noiembrie 2003 s-a descoperit al 40-lea
num˘ar prim Mersenne iar dup˘a ¸sase luni, al 41- lea. Ultimul num˘ar prim
Mersenne cunoscut pˆan˘a ˆın prezent a fost determinat ˆın februarie 2005.
Dac˘a vet ¸i consulta Anexa A, vet ¸i g˘asi cele 42 de numere prime
Mersenne cunoscute pˆan˘a ˆın prezent. Semnele de ˆıntrebare care apar ˆın
dreptul ultimelor numere din tabel arat˘a c˘a cercetarea primalit˘at ¸ii nu-
merelor Mersenne nu este complet˘a ˆınc˘a ˆın acest interval. Cum c˘autarea
nu a fost f˘acut˘a pentru tot ¸i exponent ¸ii, trebuie verificat dac˘a ultimele
numere sunt numere prime Mersenne consecutive, adic˘a nu exist˘a alte
numere prime Mersenne ˆıntre ultimele 4.
Exercit ¸ii propuse
1. Calculat ¸i φ(n) pentru n ∈ ¦24, 52, 84, 99, 100, 256¦.
2. Determinat ¸i suma divizorilor pozitivi ai lui n ∈ ¦35, 1000, 2
37
¦.
3. Pentru n ∈ ¦36, 99, 144, 10!¦ determinat ¸i num˘arul de divizori po-
zitivi.
4. Precizat ¸i care sunt toate numerele naturale cu exact 2, 3, respectiv
4 divizori pozitivi.
5. Folosind rezultatul teoremei 4.4.1, stabilit ¸i care dintre numerele
Mersene M
7
, M
11
, M
17
sunt numere prime Mersenne.
6. Fie n num˘ar natural astfel ˆıncˆat 2n +1 este num˘ar prim. Atunci,
2n + 1 [ M
n
sau 2n + 1 [ M
n
+ 2.
CAPITOLUL 5
Prime aplicat ¸ii ale
congruent ¸elor
5.1 Factorizarea unor numere de form˘a par-
ticular˘a
Propozit ¸ie 5.1.1 Fie b ¸si n dou˘a numere relativ prime iar a ¸si c numere
naturale. Dac˘a b
a
≡ 1 (mod n) ¸si b
c
≡ 1 (mod n), atunci b
d
≡ 1 (mod n)
unde d = (a, c).
Demonstrat ¸ie. Folosind algoritmul lui Euclid, exist˘a u, v ∈ Z astfel ca
d = ua +vc.
Cum unul din cele dou˘a numere u, v este pozitiv iar cel˘alalt negativ sau
zero, putem presupune c˘a u > 0, v ≤ 0. Obt ¸inem b
au
≡ 1 (mod n) ¸si
b
c(−v)
≡ 1 (mod n), de unde, b
au−c(−v)
≡ 1 (mod n).
Astfel, b
d
≡ 1 (mod n).
Propozit ¸ie 5.1.2 Dac˘a p este un num˘ar prim cu p [ b
n
− 1, atunci
p [ b
d
−1 pentru d, un divizor propriu al lui n sau p ≡ 1 (mod n). Dac˘a
p > 2, ¸si n este impar, a doua condit ¸ie devine p ≡ 1 (mod 2n).
Demonstrat ¸ie. Din ipotez˘a, b
n
≡ 1 (mod p) iar din mica teorem˘a a lui
Fermat, b
p−1
≡ 1 (mod p). Din propozit ¸ia anterioar˘a, b
d
≡ 1 (mod p),
unde d = (n, p − 1). Dac˘a d < n, obt ¸inem prima relat ¸ie. Pentru cazul
81
82 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
d = n, cum d [ p −1, avem p ≡ 1 (mod n).
ˆ
In situat ¸ia ˆın care p ¸si n sunt
amˆandoi impari ¸si n [ p −1, atunci este evident c˘a 2n [ p −1.
Vom exemplifica cum aceast˘a propozit ¸ie poate fi folosit˘a pentru a
descompune ˆın factori anumite numere mari.
1. Pentru 2
11
− 1 = 2047 c˘aut˘am divizori primi p ≡ 1 (mod 22).
Verific˘ am dac˘a p = 23, 67, 89, . . . sunt divizori ai num˘arului (de fapt,
nu trebuie s˘a dep˘a¸sim

2047 = 45, . . .). Obt ¸inem astfel descompunerea
2047 = 23 89.
ˆ
In mod analog, se arat˘a c˘a 2
13
−1 = 8191 este prim.
2. Pentru a descompune ˆın factori primi 3
12
−1 = 531440, ˆıncerc˘am
mai ˆıntˆ ai cu divizorii numerelor mai mici 3
1
−1, 3
2
−1, 3
3
−1, 3
4
−1 ¸si
cu ai lui 3
6
−1 = (3
3
−1)(3
3
+ 1) care nu apar deja ˆın 3
3
−1. Obt ¸inem
astfel, 2
4
, 5, 7, 13. Cum
531440
2
4
5 7 13
= 73 este prim, amˆıncheiat descom-
punerea. Trebuie remarcat c˘a, a¸sa cum era de a¸steptat, orice num˘ar prim
care nu apare ˆın descompunerea lui 3
d
− 1 pentru d divizor propriu al
lui 12 (73, de exemplu) trebuie s˘a fie ≡ 1 (mod 12).
3. Pentru 2
35
− 1 = 34359738367 consider˘am la ˆınceput divizorii
2
d
−1 pentru d = 1, 5, 7 care furnizeaz˘a divizorii primi 31 ¸si 127. Obt ¸inem
2
35
−1 = 311278727391. Propozit ¸ia ne asigur˘a c˘a divizorii primi r˘ama¸si
trebuie s˘a fie ≡ 1 (mod 70). Verific˘am pentru 71, 211, 281, . . . . Nu trebuie
s˘a verific˘am tot ¸i divizorii de aceast˘a form˘a pˆan˘a la

8727391 = 2954, . . . ,
pentru c˘a g˘asim imediat 8727391 = 71 122921 ¸si astfel, r˘amˆane s˘a
cercet˘am doar pˆan˘a la

122921 = 350, . . . . G˘asim 122921 num˘ar prim
¸si astfel, descompunerea ˆın factori primi cerut˘a este 2
35
− 1 = 31 71
127 122921.
Ca o remarc˘a, s˘a vedem cum s-ar face aceast˘a descompunere folosind
un calculator care presupunem c˘a face operat ¸ii aritmetice doar cu nu-
mere de maxim 8 cifre zecimale. Vom sparge num˘arul ˆın p˘art ¸i.
ˆ
In
cazul nostru, atingem limita impus˘a pentru 2
26
= 67108864. Pentru
a face ˆınmult ¸irea cu 2
9
= 512, scriem 2
35
= 512 (67108 1000 +
864) = 34359296 1000 + 442368 = 34359738368. Apoi, cˆand trebuie s˘a
ˆımp˘art ¸im 2
35
−1 la 31 127 = 3937, lu˘am partea ˆıntreag˘a
_
34359738
3937
_
=
8727 ¸si scriem 34359738 = 3937 8727 + 1539. Atunci,
34359738367
3937
=
(3937 8727 + 1539) 1000 + 367
3937
= 8727000 +
1539367
3937
= 8727391.
5.2. TESTE DE DIVIZIBILITATE 83
5.2 Teste de divizibilitate
Folosind congruent ¸ele, putem realiza teste de divizibilitate pentruˆıntregi
t ¸inˆand cont de dezvoltarea lor relativ la diferite baze.
Pentru ˆınceput, discut˘am cele mai cunoscute teste care folosesc scri-
erea zecimal˘a.
Consider˘am num˘arul natural n = (a
k
a
k−1
. . . a
1
a
0
)
10
. Deci,
n = a
k
10
k
+a
k−1
10
k−1
+. . . +a
1
10 +a
0
, cu 0 ≤ a
j
≤ 9. (5.1)
Test de divizibilitate cu puteri ale lui 2.
Cum 10 ≡ 0 (mod 2), obt ¸inem c˘a 10
j
≡ 0 (mod 2
j
), pentru orice
j ≤ k. Astfel,
n ≡ (a
j−1
a
j−2
. . . a
1
a
0
)
10
(mod 2
j
).
Deci, rezult˘a c˘a:
Test 5.2.1 n este divizibil cu 2
j
dac˘a ¸si numai dac˘a num˘arul format cu
ultimele sale j cifre este divizibil cu 2
j
.
De exemplu, pentru n = 2114480, cum 2
5
14480 ¸si 2
4
[ 4480, obt ¸inem
c˘a 2
5
n iar pentru j ≤ 4, 2
j
[ n.
Dup˘a un rat ¸ionament asem˘an˘ator, obt ¸inem un test de divizibilitate
cu puteri ale lui 5:
Test 5.2.2 n este divizibil cu 5
j
dac˘a ¸si numai dac˘a num˘arul format cu
ultimele sale j cifre este divizibil cu 5
j
.
Spre exemplu, putem verifica imediat c˘a n = 23752875 este divizibil
cu 5
j
pentru j ≤ 3 iar 5
4
n cum 625 2875.
Teste de divizibilitate cu 3 ¸si 9.
Din 10 ≡ 1 (mod 3) ¸si 10 ≡ 1 (mod 9), rezult˘a:
10
j
≡ 1 (mod 3) respectiv 10
j
≡ 1 (mod 9).
Din ( 5.1), obt ¸inem n ≡ a
k
+ a
k−1
+ . . . + a
1
+ a
0
(mod 3) ¸si aceea¸si
relat ¸ie modulo 9.
Test 5.2.3 n este divizibil cu 3 sau cu 9 dac˘a ¸si numai dac˘a suma
cifrelor sale este divizibil˘a cu respectiv 3 sau 9.
84 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
Pentru n = 26453097, observ˘am c˘a 2 + 6 + 4 + 5 + 3 + 9 + 7 = 36, de
unde n este divizibil cu 9.
Test de divizibilitate cu 11.
Dac˘a t ¸inem cont de faptul c˘a 10 ≡ −1 (mod 11), obt ¸inem:
10
2
≡ 1 (mod 11), 10
3
≡ −1 (mod 11), etc. Astfel, ( 5.1) implic˘a
n ≡ a
0
−a
1
+. . . + (−1)
k−1
a
k−1
+ (−1)
k
a
k
(mod 11).
Test 5.2.4 n este divizibil cu 11 dac˘a ¸si numai dac˘a suma alternat˘a a
cifrelor sale este divizibil˘a cu 11.
Dac˘a alegem n = 291575295, cum 5−9+2−5+7−5+1−9+2 = −11,
rezult˘a 11 [ n.
Test de divizibilitate cu 7,11 ¸si 13.
Trebuie remarcat c˘a 7 11 13 = 1001, de unde
10
3
≡ −1 (mod 1001).
Atunci,
n ≡ (a
0
+10a
1
+100a
2
) +1000(a
3
+10a
4
+100a
5
) +1000
2
(a
6
+10a
7
+
100a
8
) +. . . ≡ (a
2
a
1
a
0
)
10
−(a
5
a
4
a
3
)
10
+ (a
8
a
7
a
6
)
10
. . . (mod 1001).
Test 5.2.5 n este divizibil cu 7, 11 sau 13 dac˘a ¸si numai dac˘a suma
alternat˘a a numerelor formate din blocuri de trei cifre, pornind de la
ultimele, este divizibil˘a cu, respectiv 7, 11 sau 13.
S˘a generaliz˘am acum testele prezentate considerˆand num˘arul n scris
ˆıntr-un sistem de numerat ¸ie de baz˘a oarecare b. Fie
n = (a
k
a
k−1
. . . a
1
a
0
)
b
.
Urmˆand aceea¸si cale de demonstrat ¸ie ca pentru cazul scrierii zeci-
male, obt ¸inem urm˘atoarele teste:
Test 5.2.6 Dac˘a d [ b ¸si 0 ≤ j < k, n este divizibil cu d
j
dac˘a ¸si numai
dac˘a (a
j−1
a
j−2
. . . a
1
a
0
)
b
este divizibil cu d
j
.
Test 5.2.7 Dac˘a d [ b − 1, n este divizibil cu d dac˘a ¸si numai dac˘a
a
k
+. . . a
1
+a
0
este divizibil cu d.
5.3. CALENDARUL 85
Test 5.2.8 Dac˘a d [ b+1, n este divizibil cu d dac˘a ¸si numai dac˘a suma
(−1)
k
a
k
+. . . +a
2
−a
1
+a
0
este divizibil˘a cu d.
Spre exemplu, dac˘a consider˘am num˘arul n = (7F28A6)
16
scris ˆın baza
16, vom obt ¸ine:
2 [ n pentru c˘a 2 [ 6 dar 4 n cum 4 (A6)
16
= 166;
3 [ n deoarece 3 [ 7 +F + 2 + 8 +A+ 6 = 48 ¸si din
5 7 +F + 2 + 8 +A+ 6, rezult˘a 5 n;
17 n se obt ¸ine din 17 6 −A+ 8 −2 +F −7 = 10.
Observat ¸ie 5.2.1 Dac˘a dorim, putem face o conversie simpl˘a din sis-
temul hexagesimal ˆın cel binar ¸si invers, conform tabelului:
Hex 0 1 2 3 4 5 6 7
Binar 0000 0001 0010 0011 0100 0101 0110 0111
Hex 8 9 A B C D E F
Binar 1000 1001 1010 1011 1100 1101 1110 1111
Spre exemplu, (2FB3)
16
= (10111110110011)
2
unde se observ˘a c˘a am
omis cele dou˘a zerouri din scrierea lui 2 aflate ˆın fat ¸a num˘arului. Pen-
tru (11110111101001)
2
, dac˘a dorim s˘a-l scriem ˆın baza 16, se formeaz˘a
grupe de cˆate 4 cifre, pornind de la ultimele, pe care le ˆınlocuim conform
tabelului. Obt ¸inem astfel, (3DE9)
16
.
ˆ
In acela¸si fel se poate face conversia numerelor scrise ˆın bazele b ¸si
b
k
.
5.3 Calendarul
Calendarul
1
este un sistem de organizare a unit˘at ¸ilor de timp pentru
a calcula timpul pe perioade foarte extinse. Prin convent ¸ie, ziua este
cea mai mic˘a unitate calendaristic˘a de timp. Calendarul, indiferent de
tipul s˘au, reprezint˘a o leg˘atur˘a ˆıntre omenire ¸si cosmos. El a stat la
baza planific˘arii agriculturii, vˆan˘atorii, ciclurilor de migrat ¸ie, ment ¸inerii
ciclurilor de evenimente civile ¸si religioase.
1
Kalaendae reprezenta prima zi din fiecare lun˘a ˆın calendarul roman antic.
86 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
Conform unor date recente, ˆın lume se folosesc aproximativ 40 de ca-
lendare. Ciclurile astronomice fundamentale sunt ziua (bazat˘a pe rotat ¸ia
P˘amˆantului ˆın jurul axei sale), luna (bazat˘a pe revolut ¸ia Lunii ˆın ju-
rul P˘amˆantului) ¸si anul (bazat pe revolut ¸ia P˘amˆantului ˆın jurul Soare-
lui). Complexitatea calendarelor apare datorit˘a faptului c˘a ciclurile de
revolut ¸ie nu cuprind un num˘ar ˆıntreg de zile, precum ¸si datorit˘a faptului
c˘a ciclii astronomici nu sunt constant ¸i ¸si nici perfect comparabili unii cu
ceilalt ¸i.
F˘ar˘a a dori s˘a prezent˘am pe larg istoria calendarului, punct˘am doar
dou˘a momente importanteˆın evolut ¸ia sa. La egipteni, fiecare an avea 365
de zile.
ˆ
In anul 45 ˆı.e.n., Iulius Cezar
2
a init ¸iat modificarea calendarului,
cerˆand sprijinul astronomului Sosigenes din Alexandria. Acesta a stabilit
lungimea anului ca fiind de 365,25 zile. El a creat un calendar solar
3
cu 3 ani format ¸i din 365 de zile ¸si cu ani bisect ¸i la fiecare 4 ani pentru
a reflecta mai bine lungimea adev˘arat˘a a anului. Deci, lungimea anului
era de 365,25 de zile.
Cele mai recente calcule arat˘a c˘a un an are un num˘ar de aproximativ
365,2422 de zile. Astfel, cu trecerea secolelor, diferent ¸a de 0,0078 zile
pe an s-a adunat ¸si calendarul a devenit din ce ˆın ce mai mult incom-
patibil cu anotimpurile.
ˆ
In secolul XVI, echinoct ¸iul de prim˘avar˘a, care
determina data Pa¸stelui, se mutase cu 10 zile fat ¸˘a de data exact˘a.
ˆ
In anul 1582, Papa Gregoriu al XIII-lea a dat un decret prin care
s-au exclus 10 zile din calendar. Data de 5 octombrie a devenit data de
15 octombrie, iar zilele de 6-14 octombrie au fost omise. Ca ani bisect ¸i,
au fost considerat ¸i cei divizibili cu 4, iar dintre cei divizibili cu 100,
bisect ¸i au fost ale¸si doar cei care sunt divizibili ¸si cu 400. De exemplu,
1900 nu este an bisect, dar 2000, da. Astfel, anul are 365,2425 zile.
Eroarea de 0,0003 zile ˆınseamn˘a 3 zile la 10000 ani. S¸i acest calendar
ˆınc˘a necesit˘a modific˘ari. Calendarul Gregorian
4
a stabilit ca prim˘a zi
2
Calendarul Iulian a fost calendarul standard pentru majoritatea t ¸˘ arilor europene
¸si pentru America, pˆan˘ a ˆın 1582 cˆand a ap˘arut calendarul Gregorian. Ianuarie a
devenit prima lun˘a din an, pˆan˘ a atunci, anul ˆıncepˆand cu luna martie.
3
Un calendar solar este un calendar care intercaleaz˘a zile, formˆand ani bisect ¸i,
pentru a cre¸ste lungimea anului calendaristic.
4
Trecerea la calendarul Gregorian a fost adoptat˘a de Anglia ¸si SUAˆın 1752, printr-
un salt de 11 zile, de URSS ˆın 1917, de Grecia ˆın 1923. El este cunoscut sub numele
de calendarul nou, pe cˆand cel Iulian de calendarul vechi. Luˆand ˆın considerare
acest fapt, exist˘a algoritmi de conversie a zilelor dup˘a calendarul Iulian ˆın zile dup˘a
calendarul Gregorian.
5.3. CALENDARUL 87
a anului, data de 1 Ianuarie. Scopul s˘au init ¸ial a fost ecleziastic, ¸si
anume de a stabili data s˘arb˘atoririi Pa¸stelui conform regulilor impuse
de biseric˘a. Calcularea datei zilei de Pa¸ste se bazeaz˘a pe congruent ¸e ¸si,
un astfel de algoritm a fost dat de Oudin ˆın 1940.
Ne propunem s˘a aplic˘am congruent ¸ele ˆın scopul determin˘arii zilei din
s˘apt˘amˆan˘a corespunz˘atoare unei date calendaristice. Pentru a simplifica
problema, vom considera datele ca fiind date conform calendarului Gre-
gorian. Dac˘a nu, trebuie s˘a facem apel ¸si la un algoritm de conversie.
Cum zilele s˘apt˘amˆanii se repet˘a din 7 ˆın 7, vom folosi congruent ¸a
modulo 7. Facem urm˘atoarele convent ¸ii:
• Zilele s˘apt˘amˆanii, ˆıncepˆand cu duminic˘a se noteaz˘a cu cifre de la
0 la 6.
• Consider˘am c˘a anul ˆıncepe la 1 Martie. Atunci, lunile vor fi nu-
merotate, pornind cu Martie ¸si terminˆand cu Februarie, de la 1 la
12. Astfel, pentru anii bisect ¸i, ziua care se ata¸seaz˘a va fi ultima
din an.
• Not˘am cu k ziua din lun˘a, cu m luna ¸si anul va fi notat cu N =
100C +Y unde C marcheaz˘a secolul iar Y ≤ 99.
De exemplu, dac˘a consider˘am data de 17 Ianuarie 1990, k = 17,
m = 11, N = 1989 de unde C = 19, Y = 89.
Ca baz˘a de plecare folosim ziua de 1 Martie a fiec˘arui an. Not˘am
cu d
N
ziua din s˘apt˘amˆan˘a corespunz˘atoare lui 1 Martie din anul N.
ˆ
Incepem cu anul 1600, pentru u¸surint ¸a calculului, ¸si calcul˘am mai ˆıntˆai
d
N
pentru fiecare N.
ˆ
Intre 1 Martie din anul N − 1 ¸si 1 Martie din anul N, sunt 365 de
zile dac˘a N nu este an bisect. Astfel,
d
N
≡ d
N−1
+ 1 (mod 7), (5.2)
cum 365 ≡ 1 (mod 7). Dac˘a N este an bisect, avem
d
N
≡ d
N−1
+ 2 (mod 7). (5.3)
Calcul˘am acum cˆat ¸i ani bisect ¸i au fost ˆıntre anii 1600 ¸si N. Conform
calendarului Gregorian, vom avea
88 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
x =
_
N −1600
4
_

_
N −1600
100
_
+
_
N −1600
400
_
=
_
N
4
_
− 400 −
_
N
100
_
+ 16 +
_
N
400
_
−4 =
_
N
4
_

_
N
100
_
+
_
N
400
_
−388.
Dac˘a ˆınlocuim N = 100C +Y, obt ¸inem
x = 25C +
_
Y
4
_
−C −
_
Y
100
_
+
_
C
4
_
−388,
de unde
x ≡ 3C +
_
C
4
_
+
_
Y
4
_
−3 (mod 7). (5.4)
Din ( 5.2) ¸si ( 5.3), obt ¸inem d
N
≡ d
1600
+ N −1600 + x (mod 7) ¸si,
folosind ( 5.4), rezult˘a ˆın final,
d
N
≡ d
1600
−2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7). (5.5)
S¸tim c˘a d
2005
≡ 2 (mod 7), ziua de 1 Martie 2005 fiind ˆıntr-o zi de
mart ¸i. Atunci, 2 ≡ d
1600
− 2 20 + 5 +
_
20
4
_
+
_
5
4
_
(mod 7) de unde
d
1600
≡ 31 ≡ 3 (mod 7). Am g˘asit c˘a 1 Martie 1600 a fost ˆıntr-o zi de
miercuri.
ˆ
Inlocuind ˆın ( 5.5), rezult˘a:
d
N
≡ 3 −2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7). (5.6)
Pasul urm˘ator este de a stabili ziua din s˘apt˘amˆan˘a corespunz˘atoare
primei zile din fiecare lun˘a a anului N. Observ˘am c˘a lunile cu 30 de zile
deplaseaz˘a la dreapta ziua de 1 a lunii urm˘atoare cu 2 zile, iar lunile cu
31 de zile, cu 3 zile la dreapta. Cum, ˆın cazul nostru, februarie are 28
de zile, ea nu aduce nici o modificare.
ˆ
In total, pe parcursul unui an, se
obt ¸ine o deplasare de 29 zile.
5.3. CALENDARUL 89
Rezultatele sunt prezentate ˆın urm˘atorul tabel:
Perioada zile ad˘augate
1 Martie - 1 Aprilie 3
1 Aprilie - 1 Mai 2
1 Mai - 1 Iunie 3
1 Iunie - 1 Iulie 2
1 Iulie - 1 August 3
1 August - 1 Septembrie 3
1 Septembrie - 1 Octombrie 2
1 Octombrie - 1 Noiembrie 3
1 Noiembrie - 1 Decembrie 2
1 Decembrie - 1 Ianuarie 3
1 Ianuarie - 1 Februarie 3
Pentru 1 ≤ m ≤ 12, obt ¸inem c˘a [2, 6m−0, 2] − 2 are acelea¸si valori
cu num˘arul de zile ad˘augate, corespunz˘atoare lunii m. Observ˘am c˘a,
pentru m = 1, valoarea ei este zero.
Deci, ziua din s˘apt˘amˆan˘a corespunz˘atoare primei zile din luna m a
anului N este restul modulo 7 al lui d
N
+ [2, 6m−0, 2] −2.
ˆ
In final, pentru stabilirea zilei W din s˘apt˘amˆan˘a corespunz˘atoare
datei k din luna m a anului N, adun˘am k −1 ˆın ultima relat ¸ie. Formula
care se obt ¸ine este:
W ≡ k + [2, 6m−0, 2] −2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7).
Ca exemplu, s˘a determin˘am ziua din s˘apt˘amˆan˘a corespunz˘atoare
datei de 15 Februarie 2005. Atunci,
k = 15, m = 12, N = 2004 = 100 20 + 4, de unde C = 20, Y = 4.
W ≡ 15 + [2, 6 12 −0, 2] −2 20 + 4 +
_
20
4
_
+
_
4
4
_
≡ 15 +31 −40 +4 +5 +1 ≡ 2 (mod 7). Dac˘a verific˘amˆın calendar, ziua
luat˘a ca exemplu a fost ˆıntr-adev˘ar ˆıntr-o zi de mart ¸i.
90 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
5.4 Programarea unui turneu
S˘a vedem cum putem aplica congruent ¸ele ˆın programarea unui turneu.
Presupunem c˘a exist˘a N echipe diferite care joac˘a ˆıntr-un turneu
astfel ˆıncˆat fiecare echip˘a joac˘a cu fiecare alt˘a echip˘a o singur˘a dat˘a.
Dac˘a N este impar, la fiecare etap˘a o echip˘a trebuie s˘a nu joace. Atunci,
ˆın acest caz introducem o echip˘a fictiv˘a, ¸si echipa care este programat˘a
s˘a joace cu aceasta, de fapt, ˆın runda aceea, st˘a.
Putem presupune astfel c˘a num˘arul de echipe participante la turneu
este mereu par. Not˘am aceste echipe cu 1, 2, . . . , N −1, N.
Realiz˘am urm˘atoarea programare:
Fie echipa i cu i ,= N. Ea joac˘a cu echipa j unde j / ∈ ¦i, N¦ ˆın turul
k dac˘a i + j ≡ k (mod N − 1). Am programat astfel toate jocurile din
turul k mai put ¸in echipa N ¸si echipa i pentru care 2i ≡ k (mod N −1).
Cum N − 1 este impar, ultima congruent ¸˘a are solut ¸ie unic˘a x unde
1 ≤ x ≤ N −1. Punem ˆın joc, ˆın turul k aceast˘a echip˘a cu echipa N.
Ar˘at˘am c˘a aceast˘a programare este cea dorit˘a. Pentru aceasta, con-
sider˘am init ¸ial primele N −1 echipe.
Pentru 1 ≤ i ≤ N − 1, echipa i joac˘a cu echipa N ˆın turul k dac˘a
2i ≡ k (mod N −1).
ˆ
In alte runde, i nu joac˘a cu acelea¸si echipe, pentru
c˘a dac˘a i +j ≡ k (mod N −1) ¸si i +j ≡ k

(mod N −1), rezult˘a k = k

,
ceea ce este fals.
Cum fiecare echip˘a din primele N −1 joac˘a N −1 jocuri ¸si nu joac˘a
cu fiecare echip˘a mai mult decˆat o dat˘a, obt ¸inem c˘a ele joac˘a fiecare o
singur˘a dat˘a. Echipa N joac˘a N −1 jocuri ¸si orice alt˘a echip˘a joac˘a cu
N o singur˘a dat˘a. Deci, echipa N joac˘a cu fiecare echip˘a o singur˘a dat˘a.
Spre exemplu, s˘a consider˘am c˘a ˆın turneu particip˘a 5 echipe. Atunci,
N = 6 ¸si fiecare echip˘a care este programat˘a s˘a joace cu echipa 6 ˆın
fiecare tur, de fapt nu joac˘a ˆın acel tur. Rezultatul program˘arii este
prezentat ˆın tabelul urm˘ator:
TurEchipˇ a 1 2 3 4 5
1 5 4 stˇ a 2 1
2 stˇ a 5 4 3 2
3 2 1 5 stˇ a 3
4 3 stˇ a 1 5 4
5 4 3 2 1 stˇ a
5.4. PROGRAMAREA UNUI TURNEU 91
Exercit ¸ii propuse
1. Fie b ¸si n > 2, dou˘a numere prime ˆıntre ele iar a, c numere naturale
cu d = (a, c). Dac˘a b
a
≡ −1 (mod n) ¸si b
c
≡ ±1 (mod n), atunci
b
d
≡ −1 (mod n) ¸si
n
d
este num˘ar impar.
2. Ar˘atat ¸i c˘a, dac˘a p [ b
n
+ 1, cu p num˘ar prim, atunci:
i) p [ b
d
+1, pentru d, un divizor propriu al lui n cu
n
d
num˘ar impar
sau
ii) p ≡ 1 (mod 2n).
3. Fie n = 2
24
+ 1 = 16777217.
i) G˘asit ¸i un num˘ar prim Fermat care divide n.
ii) Ar˘atat ¸i c˘a orice alt divizor prim p al lui n verific˘a p ≡ 1 (mod 48).
iii) G˘asit ¸i descompunerea canonic˘a ˆın factori primi a lui n.
4. Descompunet ¸i ˆın factori primi numerele urm˘atoare:
i) 3
15
−1, 3
24
−1,
ii) 10
5
−1, 10
8
−1,
iii) 2
33
−1, 2
21
−1.
5. Fie n = 111 . . . 1 un num˘ar de k cifre. Stabilit ¸i ce condit ¸ii trebuie
impuse pentru ca:
i) n s˘a fie divizibil cu 3, respectiv cu 9.
ii) n s˘a fie divizibil cu 11.
iii) n s˘a fie divizibil cu 1001.
iv) n s˘a fie num˘ar prim, dac˘a k < 10.
92 CAPITOLUL 5. PRIME APLICAT¸ II ALE CONGRUENT¸ ELOR
6. Stabilit ¸i un test de divizibilitate cu 37.
7. Fie n un num˘ar scris ˆın baza b. Stabilit ¸i un test de divizibilitate
al lui n cu divizori ai lui b
2
+ 1. Folosind testul g˘asit, verificat ¸i dac˘a
(12100122)
3
este divizibil cu 2 sau cu 5.
8. Determinat ¸i ziua din s˘apt˘amˆan˘a ˆın care v-at ¸i n˘ascut.
9. Realizat ¸i, dup˘a modelul prezentat, programarea unui turneu la
care particip˘a 9 echipe.
CAPITOLUL 6
R˘ad˘acini primitive
6.1 Ordinul unui num˘ar ˆıntreg
Fie n num˘ar natural nenul ¸si a ∈ Z, prim cu n. Din teorema lui Euler
¸stim c˘a a
φ(n)
≡ 1 (mod n). Mult ¸imea numerelor naturale fiind bine
ordonat˘a, va exista un cel mai mic num˘ar natural nenul k care s˘a verifice
relat ¸ia a
k
≡ 1 (mod n).
Definit ¸ie 6.1.1 Fie n num˘ar natural ¸si a ∈ Z, prim cu n. Cel mai mic
num˘ar natural nenul k pentru care a
k
≡ 1 (mod n) se nume¸ste ordinul
lui a modulo n ¸si ˆıl vom nota ord
n
a.
De exemplu, din 4
2
≡ 2 (mod 7), 4
3
≡ 1 (mod 7), rezult˘a
ord
7
4 = 3.
ˆ
In continuare, vom prezenta cˆateva propriet˘at ¸i de baz˘a ale ordinului
unui ˆıntreg. Cum majoritatea demonstrat ¸iilor sunt simple, le vom l˘asa
ca exercit ¸iu pentru cititor.
Propozit ¸ie 6.1.1 Dac˘a a ¸si n sunt relativ prime, cu n > 0, atunci
k ∈ N este solut ¸ie a congruent ¸ei a
k
≡ 1 (mod n) dac˘a ¸si numai dac˘a
ord
n
a [ k.
93
94 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
De aici, obt ¸inem un rezultat important care u¸sureaz˘a determinarea
lui ord
n
a.
Corolar 6.1.1 Dac˘a n este num˘ar natural nenul ¸si a este un ˆıntreg,
prim cu n, atunci ord
n
a [ φ(n).
Astfel, dac˘a dorim s˘a determin˘am ord
7
3, cum φ(7) = 6, calcul˘am doar
3
k
pentru k ∈ ¦1, 2, 3, 6¦. Astfel:
3
1
≡ 3 (mod 7) 3
3
≡ 6 (mod 7)
3
2
≡ 2 (mod 7) 3
6
≡ 1 (mod 7)
Un rezultat des folositˆın continuare este dat de urm˘atoarea propozit ¸ie:
Propozit ¸ie 6.1.2 Fie n num˘ar natural nenul ¸si a ∈ Z, (a, n) = 1.
Atunci, a
i
≡ a
j
(mod n) dac˘a ¸si numai dac˘a i ≡ j (mod ord
n
a).
ˆ
In continuare prezent˘am un algoritm de determinare a ordinului unui
num˘ar natural a modulo n. Acesta presupune ˆıns˘a un inconvenient: pen-
tru a putea s˘a aplic˘am algoritmul, trebuie s˘a cunoa¸stem descompunerea
ˆın factori primi a lui φ(n).
Algoritm 6.1.1 (Ordinul unui num˘ar natural)
INPUT: numerele naturale relativ prime a, n cu φ(n) = p
α1
1
p
α2
2
. . . p
α
k
k
.
OUTPUT: ord
n
a = t
1. Pune t ←φ(n).
2. Pentru i = 1, . . . , k execut˘a:
2.1. Pune t ←t/p
αi
i
.
2.2. Calculeaz˘a a
1
←a
t
mod n
2.3. Cˆat timp a
1
,= 1 mod n, execut˘a:
2.3.1. Calculeaz˘a a
1
←a
p
i
1
mod n
2.3.2. Pune t ←t p
i
3. Returneaz˘a t.
Un interes deosebit ˆıl prezint˘a numerele cu ordinul modulo n egal cu
φ(n).
Definit ¸ie 6.1.2 Dac˘a (r, n) = 1, cu n > 0, ¸si ord
n
r = φ(n), atunci r
se nume¸ste r˘ad˘acin˘a primitiv˘a modulo n.
6.2. EXISTENT¸ A R
˘
AD
˘
ACINILOR PRIMITIVE 95
Spre exemplu, am ar˘atat c˘a 3 este r˘ad˘acin˘a primitiv˘a modulo 7.
Dar, trebuie s˘a remarc˘am c˘a nu pentru toate numere n exist˘a r˘ad˘acini
primitive. De exemplu, pentru n = 8, obt ¸inem 3
2
≡ 5
2
≡ 7
2
≡ 1 (mod 8).
Astfel, ord
8
3 = ord
8
5 = ord
8
7 = 2 ,= 4.
Propozit ¸ie 6.1.3 Dac˘a r este r˘ad˘acin˘a primitiv˘a modulo n, atunci
r, r
2
, . . . , r
φ(n)
formeaz˘a un sistem redus de resturi modulo n.
Presupunem c˘a un num˘ar natural nenul n are o r˘ad˘acin˘a primitiv˘a.
Pentru a stabili num˘arul total al acestora, avem nevoie de urm˘atoarea
propozit ¸ie:
Propozit ¸ie 6.1.4 Dac˘a ord
n
a = k ¸si l > 0 este un num˘ar natural,
atunci, ord
n
a
l
=
k
(k, l)
.
Corolar 6.1.2 Fie r o r˘ad˘acin˘a primitiv˘a modulo n. Atunci, r
k
este
r˘ad˘ acin˘a primitiv˘a modulo n dac˘a ¸si numai dac˘a (k, φ(n)) = 1.
Teorem˘a 6.1.1 Dac˘a n are o r˘ad˘acin˘a primitiv˘a, atunci are exact
φ(φ(n)) r˘ad˘acini primitive.
Demonstrat ¸ie. Fie r o r˘ad˘acin˘a primitiv˘a modulo n. Din propozit ¸ia
6.1.3, r, r
2
, . . . , r
φ(n)
este sistem redus de resturi modulo n. Conform
corolarului 6.1.2, r
k
este r˘ad˘acin˘a primitiv˘a modulo n dac˘a ¸si numai
dac˘a (k, φ(n)) = 1. Atunci, exist˘a φ(φ(n)) astfel de numere, deci tot
atˆatea r˘ad˘acini primitive modulo n.
6.2 Existent ¸a r˘ad˘acinilor primitive
Definit ¸ie 6.2.1 Fie f ∈ Z[X], un polinom de grad ≥ 1. Spunem c˘a x
este o r˘ad˘acin˘a a lui f modulo n, dac˘a f(x) ≡ 0 (mod n).
De exemplu, f = X
2
+ 2 are dou˘a r˘ad˘acini necongruente modulo 3,
pe x ≡ 1 (mod 3) ¸si x ≡ 2 (mod 3).
Teorem˘a 6.2.1 (Lagrange) Fie f = a
n
X
n
+a
n−1
X
n−1
+. . . +a
1
X+
a
0
, un polinom de grad n ≥ 1 cu coeficient ¸i ˆıntregi ¸si p un num˘ar prim
cu p a
n
. Atunci, f are cel mult n r˘ad˘acini necongruente modulo p.
96 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
Demonstrat ¸ie
1
. Proced˘am prin induct ¸ie matematic˘a dup˘a n. Pentru
n = 1, f = a
1
X +a
0
. Cum p a
1
, congruent ¸a a
1
x ≡ −a
0
(mod p) are o
singur˘a solut ¸ie, care va fi ¸si r˘ad˘acina modulo p a lui f.
Presupunem afirmat ¸ia adev˘arat˘a pentru polinoame de grad n − 1 ¸si
ar˘at˘am c˘a ea r˘amˆane adev˘arat˘a pentru polinoame de grad n.
Consider˘am c˘a un polinom f de grad n are n +1 r˘ad˘acini necongruente
modulo p pe care le not˘am x
0
, x
1
, . . . , x
n
. Atunci, pentru 0 ≤ k ≤ n,
f(x
k
) ≡ 0 (mod p).
Din f(x)−f(x
0
) = a
n
(x
n
−x
n
0
)+a
n−1
_
x
n−1
−x
n−1
0
_
+. . . +a
1
(x−x
0
),
obt ¸inem c˘a f(x) = f(x
0
) +(x−x
0
)g(x), unde g este un polinom de grad
n −1. Pentru 1 ≤ k ≤ n, obt ¸inem:
f(x
k
) −f(x
0
) ≡ (x
k
−x
0
)g(x
k
) ≡ 0 (mod p).
De aici, cum fiecare x
k
− x
0
,= 0 (mod p), rezult˘a g(x
k
) ≡ 0 (mod p).
Deci, polinomul g care are gradul n − 1, are n r˘ad˘acini necongruente
modulo p. Cum acest rezultat contrazice ipoteza de induct ¸ie, rezult˘a c˘a
presupunerea f˘acut˘a este fals˘a. Deci, f are cel mult n r˘ad˘acini necon-
gruente modulo p.
Teorem˘a 6.2.2 Fie p un num˘ar prim ¸si d [ p − 1. Atunci, X
d
− 1 are
exact d r˘ad˘acini necongruente modulo p.
Demonstrat ¸ie. Fie p −1 = de. Atunci,
X
p−1
−1 =
_
X
d
−1
_
_
X
d(e−1)
+X
d(e−2)
+. . . +X
d
+ 1
_
=
_
X
d
−1
_
g(X).
Din mica teorem˘a a lui Fermat, X
p−1
− 1 are p − 1 r˘ad˘acini necon-
gruente modulo p ¸si orice astfel de r˘ad˘acin˘a este r˘ad˘acin˘a pentru X
d
−1
sau pentru g. Conform teoremei Lagrange, g are cel mult d(e − 1) =
p − d − 1 r˘ad˘acini necongruente modulo p. Astfel, X
d
− 1 are cel put ¸in
1
Joseph-Louis Lagrange (1736-1813) a fost un autodidact, el neavˆand avantajul
de a beneficia de sprijinul unor matematicieni contemporani lui. A obt ¸inut rezul-
tate importante ˆın calculul variat ¸ional, pe care l-a aplicat ˆın mecanic˘a, ˆın calculul
probabilit˘at ¸ilor, ecuat ¸iilor diferent ¸iale, astronomie, dinamic˘a, mecanica fluidelor, ˆın
fundamentarea calculului ˆın teoria numerelor.
ˆ
In anul 1770 a ar˘atat c˘a orice num˘ ar
natural este o sum˘a de patru p˘atrate, ˆın 1771 a demonstrat teorema lui Wilson.
Se consider˘a c˘a el a f˘acut primul pas ˆın dezvoltarea teoriei grupurilor. Expresia sa
favorit˘ a era je ne sais pas, fapt ce dovede¸ste marea sa modestie.
6.2. EXISTENT¸ A R
˘
AD
˘
ACINILOR PRIMITIVE 97
(p −1) −(p −d −1) = d r˘ad˘acini necongruente modulo p. Dac˘a aplic˘am
ˆınc˘a o dat˘a teorema 6.2.1 pentru polinomul X
d
−1, obt ¸inem c˘a el are cel
mult d solut ¸ii necongruente modulo p. Astfel, X
d
−1 are exact d solut ¸ii
necongruente modulo p.
Folosind acest rezultat, putem determina cˆate numere naturale necon-
gruente au un ordin dat modulo p.
Teorem˘a 6.2.3 Fie p un num˘ar prim ¸si d [ p − 1. Atunci, num˘arul
numerelor naturale de ordin d modulo p este egal cu φ(d).
Demonstrat ¸ie. Pentru d [ p − 1, not˘am cu F(d) num˘arul numerelor
naturale de ordin d modulo p, mai mici decˆat p.
Cum ordinul modulo p al unui num˘ar care nu este multiplu de p divide
p −1, obt ¸inem p −1 =

d|p−1
F(d).
Din teorema 4.1.5, p −1 =

d|p−1
φ(d).
Dac˘a ar˘at˘am c˘a F(d) ≤ φ(d), din

d|p−1
φ(d) =

d|p−1
F(d), va rezulta
egalitatea F(d) = φ(d), pentru d [ p −1.
Pentru aceasta, fie d [ p − 1. Dac˘a F(d) = 0, atunci F(d) ≤ φ(d).
Presupunem c˘a exist˘a a cu ord
p
a = d. Atunci, a, a
2
, . . . , a
d
nu sunt
congruente modulo p.
Din (a
k
)
d
≡ a
kd
≡ 1 (mod p), pentru 1 ≤ k ≤ d, rezult˘a c˘a acestea sunt
r˘ad˘acini modulo p ale polinomului X
d
− 1. Folosind propozit ¸ia 6.1.4,
ord
p
a
k
= d dac˘a ¸si numai dac˘a (k, d) = 1.
Deci, dac˘a exist˘a r˘ad˘acini de ordin d modulo p, ele sunt exact ˆın num˘ar
de φ(d). Astfel F(d) ≤ φ(d).
Corolar 6.2.1 Orice num˘ar prim are r˘ad˘acini primitive.
Demonstrat ¸ie. Fie p num˘ar prim. Din teorema anterioar˘a, exist˘a φ(p−1)
numere necongruente modulo p, de ordin p−1. Cum fiecare dintre acestea
este o r˘ad˘acin˘a primitiv˘a modulo p, obt ¸inem c˘a p are φ(p − 1) r˘ad˘acini
primitive.
Teorem˘a 6.2.4 Dac˘a p este un num˘ar prim impar cu r˘ad˘acina primi-
tiv˘a r, atunci r sau r +p este r˘ad˘acin˘a primitiv˘a modulo p
2
.
Demonstrat ¸ie. ord
p
r = φ(p) = p −1. Not˘am ord
p
2r = m.
Din r
m
≡ 1 (mod p
2
), rezult˘a r
m
≡ 1 (mod p), adic˘a
p −1 [ m. (6.1)
98 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
Din corolarul 6.1.1, avem
m [ φ(p
2
) = p(p −1). (6.2)
Astfel, din ( 6.1) ¸si ( 6.2), rezult˘a m = p −1 sau m = p(p −1).
Dac˘a m = p(p −1), r este r˘ad˘acin˘a primitiv˘a modulo p
2
.
Pentru m = p − 1 ar˘at˘am c˘a t = r + p este r˘ad˘acin˘a primitiv˘a modulo
p
2
.
Pentru aceasta, observ˘am mai ˆıntˆai c˘a t este ¸si ea r˘ad˘acin˘a primitiv˘a
modulo p, cum t ≡ r (mod p). Din calculele f˘acute anterior, rezult˘a c˘a
ord
p
2t = p − 1 sau ord
p
2t = p(p − 1). Pentru a ˆıncheia demonstrat ¸ia,
ar˘at˘am c˘a ord
p
2t ,= p −1.
t
p−1
= (r +p)
p−1
= r
p−1
+
p−2

j=1
C
j
p−1
r
p−j−1
p
j
+p
p−1
≡ r
p−1
+ (p −1)p r
p−2
≡ 1 +p(p −1)r
p−2
≡ 1 −p r
p−2
(mod p
2
).
Dac˘a t
p−1
≡ 1 (mod p
2
), atunci, p r
p−2
≡ 0 (mod p
2
), de unde
r
p−2
≡ 0 (mod p), ceea ce este fals (p r).
De exemplu, pentru p = 7, ¸stim c˘a 3 este r˘ad˘acin˘a primitiv˘a. Cum
3
6
≡ 43 ,= 1 (mod 49), 3 este r˘ad˘acin˘a primitiv˘a modulo 49.
Dac˘a consider˘am acum p = 487, o r˘ad˘acin˘a primitiv˘a este 10. Din
10
486
≡ 1 (mod 487
2
), rezult˘a c˘a 10 +487 = 497 este r˘ad˘acin˘a primitiv˘a
modulo 487
2
.
Teorem˘a 6.2.5 Fie p un num˘ar prim impar. Atunci, exist˘a r˘ad˘acini
primitive modulo p
k
, pentru orice k num˘ar natural.
Mai mult, dac˘a r este o r˘ad˘acin˘a primitiv˘a modulo p
2
, r este r˘ad˘acin˘a
primitiv˘a modulo p
k
, pentru orice k ≥ 2.
Demonstrat ¸ie. Fie r o r˘ad˘acin˘a primitiv˘a modulo p, care este ¸si r˘ad˘acin˘a
primitiv˘a modulo p
2
. Atunci, din teorema 6.2.4, r
p−1
,= 1 (mod p
2
).
Ar˘at˘am, prin induct ¸ie matematic˘a, c˘a, pentru orice k ≥ 2:
r
p
k−2
(p−1)
,= 1 (mod p
k
). (6.3)
Pentru k = 2, relat ¸ia se verific˘a. Presupunem c˘a ea este adev˘arat˘a pentru
k > 2 ¸si ar˘at˘am c˘a ea r˘amˆane adev˘arat˘a pentru k + 1.
Din (r, p) = 1, avem (r, p
k−1
) = 1.
Aplicˆand teorema lui Euler, r
φ(p
k−1
)
= r
p
k−2
(p−1)
≡ 1 (mod p
k−1
).
6.2. EXISTENT¸ A R
˘
AD
˘
ACINILOR PRIMITIVE 99
Exist˘a astfel d, num˘ar natural pentru care:
r
p
k−2
(p−1)
= 1 +d p
k−1
. (6.4)
Din, ipoteza de induct ¸ie, r
p
k−2
(p−1)
,= 1 (mod p
k
). De aici, rezult˘a c˘a
p d.
Ridic˘am la puterea p ˆın relat ¸ia ( 6.4) ¸si obt ¸inem
r
p
k−1
(p−1)
= (1 +d p
k−1
)
p
≡ 1 +d p
k
(mod p
k+1
). (6.5)
Cum p d, rezult˘a r
p
k−1
(p−1)
,= 1 (mod p
k+1
).
Deci, pentru orice k ≥ 2, r
p
k−2
(p−1)
,= 1 (mod p
k
).
Not˘am m = ord
p
kr. Atunci, m [ φ(p
k
) = p
k−1
(p −1).
Din r
m
≡ 1 (mod p
k
), rezult˘a r
m
≡ 1 (mod p). Deci, p −1 [ m. Obt ¸inem
astfel m = p
t
(p − 1) unde 0 ≤ t ≤ k − 1. Dac˘a t ≤ k − 2, atunci
r
p
k−2
(p−1)
=
_
r
p
t
(p−1)
_
p
k−2−t
≡ 1 (mod p
k
). Aceast˘a relat ¸ie contrazice
ˆıns˘a ( 6.3). Deci, t = k −1, de unde m = φ(p
k
).
Ca exemplu, 3 este r˘ad˘acin˘a primitiv˘a modulo 7
k
, cu k ≥ 1.
S˘a vedem ce putem preciza despre puterile lui 2. Se observ˘a imediat
c˘a 1 este r˘ad˘acin˘a primitiv˘a modulo 2 iar 3 este r˘ad˘acin˘a primitiv˘a pentru
4.
Teorem˘a 6.2.6 Dac˘a a este impar ¸si k ≥ 3, atunci,
a
φ(2
k
)
2
= a
2
k−2
≡ 1 (mod 2
k
).
Demonstrat ¸ie. Ar˘at˘am, prin induct ¸ie, c˘a afirmat ¸ia se verific˘a pentru
fiecare k ≥ 3. Cum a este impar, putem scrie a = 2m+ 1, m ∈ N.
Pentru k = 3, rezult˘a a
2
= (2m + 1)
2
= 4m(m + 1) + 1 ≡ 1 (mod 8).
Presupunem c˘a a
2
k−2
≡ 1 (mod 2
k
). Atunci, a
2
k−2
= 1 + 2
k
d, pentru
un num˘ar natural d.
De aici,
a
2
k−1
=
_
1 + 2
k
d
_
2
= 1 +d 2
k+1
+ 2
2k
d
2
≡ 1 (mod 2
k+1
).
De fapt, teorema arat˘a c˘a, 2 ¸si 4 sunt singurele puteri ale lui 2 pentru
care exist˘a r˘ad˘acini primitive.
Teorem˘a 6.2.7 Fie k ≥ 3. Atunci, ord
2
k5 =
φ(2
k
)
2
= 2
k−2
.
100 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
Demonstrat ¸ie. Din teorema anterioar˘a, 5
2
k−2
≡ 1 (mod 2
k
), pentru
k ≥ 3. Astfel, ord
2
k5 [ 2
k−2
. R˘amˆane s˘a demonstr˘am prin induct ¸ie c˘a,
pentru k ≥ 3, 5
2
k−3
≡ 1 + 2
k−1
,= 1 (mod 2
k
), adic˘a ord
2
k5 2
k−3
.
Pentru k = 3, relat ¸ia se verific˘a imediat.
Presupunem c˘a 5
2
k−3
≡ 1 + 2
k−1
(mod 2
k
). Relat ¸ia se poate scrie sub
forma 5
2
k−3
= (1 + 2
k−1
) +d 2
k
. Ridicˆand la p˘atrat, rezult˘a:
5
2
k−2
=
_
(1 + 2
k−1
) +d 2
k
_
2
= (1 + 2
k−1
)
2
+ (1 + 2
k−1
) d 2
k+1
+d
2
2
2k
≡ (1 + 2
k−1
)
2
≡ 1 + 2
k
(mod 2
k+1
).
Teorem˘a 6.2.8 Fie n un num˘ar natural care nu este de forma n = p
k
sau n = 2p
k
, unde p este num˘ar prim impar ¸si k natural. Atunci, nu
exist˘a r˘ad˘acini primitive modulo n.
Demonstrat ¸ie. Fie n = p
α1
1
p
α2
2
. . . p
α
m
m
. Presupunem c˘a exist˘a r r˘ad˘acin˘a
primitiv˘a modulo n. Atunci, (r, n) = 1 ¸si ord
n
r = φ(n).
Cum, pentru fiecare 1 ≤ j ≤ m, (r, p
α
j
j
) = 1, din teorema lui Euler,
avem r
φ(p
α
j
j
)
≡ 1 (mod p
α
j
j
). Not˘am
U = [φ(p
α
1
1
), φ(p
α
2
2
), . . . , φ(p
αm
m
)] . (6.6)
De aici, r
U
≡ 1 (mod p
α
j
j
), pentru orice 1 ≤ j ≤ m. Rezult˘a astfel,
ord
n
r = φ(n) = φ(p
α1
1
) φ(p
α2
2
) . . . φ(p
α
m
m
) ≤ U. (6.7)
Pentru ca produsul unor numere s˘a fie mai mic decˆat cel mai mic multiplu
comun al acestora, numerele trebuie s˘a fie dou˘a cˆate dou˘a relativ prime.
Deci, pentru 1 ≤ i < j ≤ m,
_
φ(p
α
i
i
), φ(p
α
j
j
)
_
= 1. (6.8)
Pentru un num˘ar prim p, φ(p
t
) = p
t−1
(p−1). Acest num˘ar este par dac˘a
p este impar sau dac˘a p = 2 ¸si t ≥ 2.
De aici, pentru a se verifica ( 6.8), ˆın descompunerea lui n trebuie s˘a
existe un singur factor prim impar ¸si, eventual, un 2. Deci n = p
t
sau
n = 2p
t
cu p prim impar ¸si t natural.
6.2. EXISTENT¸ A R
˘
AD
˘
ACINILOR PRIMITIVE 101
Teorem˘a 6.2.9 Fie p un num˘ar prim impar ¸si k un num˘ar natural.
Atunci, exist˘a r˘ad˘acini primitive modulo 2p
k
. Mai mult, dac˘a r este o
r˘ad˘ acin˘a primitiv˘a modulo p
k
, atunci r este r˘ad˘acin˘a primitiv˘a modulo
2p
k
dac˘a r este num˘ar impar.
ˆ
In caz contrar, r + p
k
va fi o r˘ad˘acin˘a
primitiv˘a modulo 2p
k
.
Demonstrat ¸ie. Fie r o r˘ad˘acin˘a primitiv˘a modulo p
k
.
Atunci, din r
φ(p
k
)
≡ 1 (mod p
k
) ¸si φ(2p
k
) = φ(p
k
), obt ¸inem
r
φ(2p
k
)
≡ 1 (mod p
k
). (6.9)
Dac˘a r este impar,
r
φ(2p
k
)
≡ 1 (mod 2). (6.10)
Din ( 6.9) ¸si ( 6.10), rezult˘a
r
φ(2p
k
)
≡ 1 (mod 2p
k
). (6.11)
Pentru t < φ(2p
k
), r
t
,= 1 (mod 2p
k
) ¸si obt ¸inem astfel:
ord
2p
kr = φ(2p
k
).
Dac˘a r este par, r +p
k
este num˘ar impar. Astfel,
(r +p
k
)
φ(2p
k
)
≡ 1 (mod 2). (6.12)
Din r ≡ r +p
k
(mod p
k
), avem
(r +p
k
)
φ(2p
k
)
≡ 1 (mod p
k
). (6.13)
Ultimele dou˘a relat ¸ii, arat˘a c˘a
(r +p
k
)
φ(2p
k
)
≡ 1 (mod 2p
k
). (6.14)
Cum φ(2p
k
) este cea mai mic˘a putere pentru care ( 6.14) se verific˘a,
rezult˘a c˘a r +p
k
este, ˆın acest caz, r˘ad˘acin˘a primitiv˘a modulo 2p
k
.
De exemplu, ¸stim c˘a r = 3 este r˘ad˘acin˘a primitiv˘a modulo 7
k
, pen-
tru k natural. Atunci, cum r este impar, 3 r˘amˆane r˘ad˘acin˘a primitiv˘a
modulo 2 7
k
.
102 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
La fel, 2 este r˘ad˘acin˘a primitiv˘a modulo 5. 2
4
≡ 16 ,= 1 (mod 25).
Deci, 2 este r˘ad˘acin˘a primitiv˘a pentru 25. Fiind num˘ar par, 2 + 5
k
este
o r˘ad˘acin˘a primitiv˘a modulo 2 5
k
.
Toate rezultatele oferite ˆın acest subcapitol pot fi reunite ˆıntr-unul
singur care s˘a stabileasc˘a exact modulele pentru care exist˘a r˘ad˘acini
primitive:
Teorem˘a 6.2.10 Exist˘a r˘ad˘acini primitive modulo n dac˘a ¸si numai
dac˘a n ∈ ¦2, 4, p
k
, 2p
k
¦ unde p este prim impar ¸si k num˘ar natural.
Observat ¸ie 6.2.1 Dac˘a t ¸inem cont c˘a U(Z
n
), grupul unit˘at ¸ilor lui Z
n
,
are ordinul φ(n), existent ¸a unei r˘ad˘acini primitive modulo n este echiva-
lent˘a cu cea a unui generator pentru grupul U(Z
n
). Deci, exist˘a r˘ad˘acini
primitive modulo n dac˘a ¸si numai dac˘a U(Z
n
) este grup ciclic.
Prezent˘amˆın final un algoritm de determinare a unui generator pen-
tru un grup ciclic de ordin n = p
α1
1
p
α2
2
. . . p
α
k
k
.
Algoritm 6.2.1 (Generatorul unui grup ciclic)
INPUT: n = p
α1
1
p
α2
2
. . . p
α
k
k
, ordinul grupului.
OUTPUT: a, generatorul grupului.
1. Alege aleator a un element al grupului.
2. Pentru i = 1, . . . , k execut˘a:
2.1. Calculeaz˘ a b ←a
n/p
i
.
2.2. Dac˘a b = 1, mergi la pasul 1.
3. Returneaz˘a a.
6.3 Index aritmetic
Fie r o r˘ad˘acin˘a primitiv˘a modulo n.
Conform propozit ¸iei 6.1.3, r, r
2
, . . . , r
φ(n)
este un sistem redus de resturi
modulo n.
Atunci, pentru orice ˆıntreg a, prim cu n, exist˘a un unic 1 ≤ x ≤ φ(n)
astfel ˆıncˆat a ≡ r
x
(mod n).
Definit ¸ie 6.3.1 Fie r o r˘ad˘acin˘ a primitiv˘a modulo n ¸si a, num˘ar na-
tural prim cu n.
Num˘arul natural 1 ≤ x ≤ φ(n) pentru care a ≡ r
x
(mod n) se nume¸ste
indexul lui a ˆın baza r modulo n ¸si ˆıl vom nota ind
r
a.
6.3. INDEX ARITMETIC 103
Deci,
a ≡ r
ind
r
a
(mod n) (6.15)
Mai observ˘am c˘a pentru a ≡ b (mod n), obt ¸inem ind
r
a = ind
r
b.
De exemplu, pentru r = 3 r˘ad˘acin˘a primitiv˘a modulo n = 7, avem:
3
1
≡ 3 (mod 7) 3
4
≡ 4 (mod 7)
3
2
≡ 2 (mod 7) 3
5
≡ 5 (mod 7)
3
3
≡ 6 (mod 7) 3
6
≡ 1 (mod 7)
Obt ¸inem:
a 1 2 3 4 5 6
ind
3
a 6 2 1 4 5 3
Mai trebuie remarcat faptul c˘a o schimbare a r˘ad˘acinii primitive con-
duce la modificarea valorii indexului. Astfel, cum 5 este cealalt˘a r˘ad˘acin˘a
primitiv˘a modulo 7, tabela de index modulo 7 devine:
a 1 2 3 4 5 6
ind
5
a 6 4 5 2 1 3
Propozit ¸ie 6.3.1 Fie r o r˘ad˘acin˘a primitiv˘a modulo n ¸si a, b dou˘a nu-
mere naturale, prime cu n. Atunci, urm˘atoarele afirmat ¸ii sunt adev˘arate:
1) ind
r
1 ≡ 0 (mod φ(n)).
2) ind
r
(ab) ≡ ind
r
a +ind
r
b (mod φ(n)).
3) ind
r
a
k
≡ k ind
r
a (mod φ(n)).
Demonstrat ¸ie. 1) r fiind r˘ad˘acin˘a primitiv˘a modulo n, ord
n
r = φ(n).
Astfel, r
φ(n)
≡ 1 (mod n) ¸si φ(n) este cea mai mic˘a putere pentru care
se verific˘a congruent ¸a. Deci, ind
r
1 = φ(n) ≡ 0 (mod φ(n)).
2) Din ( 6.15), ab ≡ (r)
indr(ab)
(mod n). Dar,
r
ind
r
a+ind
r
b
= r
ind
r
a
r
ind
r
b
≡ ab (mod n).
Rezult˘a astfel, r
indr(ab)
≡ r
indra+indrb
(mod n) ¸si, aplicˆand propozit ¸ia
6.1.2, ind
r
(ab) ≡ ind
r
a +ind
r
b (mod φ(n)).
3) se demonstreaz˘a asem˘an˘ator cu subpunctul 2).
104 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
O prim˘a aplicat ¸ie a indexului const˘a ˆın rezolvarea unor tipuri de
congruent ¸e. De exemplu, s˘a consider˘am pentru ˆınceput congruent ¸a:
3x
14
≡ 2 (mod 23).
23 este num˘ar prim, deci exist˘a r˘ad˘acini primitive modulo 23. Cum
5
11
≡ −1 (mod 23), ord
23
5 = 22. Deci, 5 este r˘ad˘acin˘a primitiv˘a modulo
23.
Scriem tabela de index modulo 23 relativ la aceast˘a r˘ad˘acin˘a primitiv˘a:
a 1 2 3 4 5 6 7 8 9 10 11
ind
5
a 22 2 16 4 1 18 19 6 10 3 9
a 12 13 14 15 16 17 18 19 20 21 22
ind
5
a 20 14 21 17 8 7 12 15 5 13 11
Congruent ¸a devine ind
5
(3 x
14
) ≡ ind
5
2 (mod 22).
Folosind propozit ¸ia 6.3.1, rezult˘a ind
5
3+14 ind
5
x ≡ 2 (mod 22). Deci,
16 + 14 ind
5
x ≡ 2 (mod 22). Obt ¸inem 14 ind
5
x ≡ 8 (mod 22), de
unde 7 ind
5
x ≡ 4 (mod 11).
ˆ
Inmult ¸im congruent ¸a cu
¯
7 ≡ 8 (mod 11) ¸si
rezult˘a ind
5
x ≡ 10 (mod 11). Deci, ind
5
x = 10 sau ind
5
x = 21. Atunci,
din tabela de index rezult˘a direct x ≡ 9 (mod 23) ¸si x ≡ 14 (mod 23).
S˘a rezolv˘am acum o congruent ¸˘a de forma:
3
x
≡ 2 (mod 23).
Congruent ¸a este echivalent˘a cu ind
5
(3
x
) ≡ ind
5
2 (mod 22), adic˘a
x ind
5
3 ≡ 2 (mod 22). Din 16 x ≡ 2 (mod 22) obt ¸inem:
8 x ≡ 1 (mod 11), deci x ≡ 7 (mod 11). Putem scrie aceast˘a solut ¸ie ¸si
sub forma x ≡ 7 (mod 23), x ≡ 18 (mod 23).
S˘a studiem acum congruent ¸ele de forma
x
k
≡ a (mod n) (6.16)
unde a, n, k sunt numere naturale, exist˘a r˘ad˘acini primitive modulo n
iar a ¸si n sunt relativ prime.
Definit ¸ie 6.3.2 Cu notat ¸iile anterioare, spunem c˘a a este k−putere
rezidual˘ a a lui n dac˘a congruent ¸a ( 6.16) are solut ¸ii.
6.4. EXPONENT¸ I UNIVERSALI 105
Teorem˘a 6.3.1 Congruent ¸a ( 6.16) are solut ¸ii dac˘a ¸si numai dac˘a
a
φ(n)
d
≡ 1 (mod n),
unde d = (k, φ(n)). Mai mult, dac˘a congruent ¸a are solut ¸ii, exist˘a exact
d solut ¸ii necongruente modulo n.
Demonstrat ¸ie. Fie r o r˘ad˘acin˘a primitiv˘a modulo n. Congruent ¸a ( 6.16)
este echivalent˘a cu
k ind
r
x ≡ ind
r
a (mod φ(n)). (6.17)
Din teorema 3.2.1, aceast˘a congruent ¸˘a are solut ¸ii dac˘a ¸si numai dac˘a
d [ ind
r
a unde d = (k, φ(n)) ¸si, ˆın acest caz, sunt d solut ¸ii necongruente.
Dar,
d [ ind
r
a ⇔ φ(n)
ind
r
a
d
=
φ(n)
d
ind
r
a ≡ 0 (mod φ(n)) ⇔ a
φ(n)
d

_
r
indra
_
φ(n)
d

_
r
φ(n)
_
ind
r
a
d
≡ 1 (mod n).
Observat ¸ie 6.3.1 Teorema arat˘a c˘a, pentru p num˘ar prim, k natural
¸si a prim cu p, a este k−putere rezidual˘ a a lui p dac˘a ¸si numai dac˘a
a
p−1
d
≡ 1 (mod p),
unde d = (k, p −1).
6.4 Exponent ¸i universali
Dac˘a revedem demonstrat ¸ia teoremei 6.2.8, observ˘am c˘a, pentru un
num˘ar natural n ¸si pentru orice a prim cu n,
a
U
≡ 1 (mod n),
unde U este cel definit ˆın relat ¸ia ( 6.6).
La fel, din teorema lui Euler, a
φ(n)
≡ 1 (mod n), pentru orice a cu
(a, n) = 1.
Definit ¸ie 6.4.1 Un exponent universal al lui n este un num˘ar natural
e cu proprietatea c˘a a
e
≡ 1 (mod n), pentru orice a prim cu n.
106 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
Deci, U ¸si φ(n) sunt exponent ¸i universali ai lui n.
Definit ¸ie 6.4.2 Cel mai mic exponent universal al lui n poart˘ a numele
de exponent universal minimal ¸si ˆıl not˘am λ(n).
Folosind descompunerea ˆın factori primi a lui n, s˘a c˘aut˘am o formul˘a
pentru a determina λ(n).
Este evident c˘a, dac˘a n are o r˘ad˘acin˘a primitiv˘a, atunci λ(n) = φ(n).
Astfel, teorema 6.2.10 precizeaz˘a c˘a:
λ(2 p
k
) = λ(p
k
) = φ(p
k
), pentru p prim impar ¸si k natural,
λ(2) = φ(2) = 1,
λ(4) = φ(4) = 2.
Din teoremele 6.2.6 ¸si 6.2.7 ¸stim c˘a a
2
k−2
≡ 1 (mod 2
k
), pentru
k ≥ 3, a impar ¸si ord
2
k5 = 2
k−2
. Astfel, λ(2
k
) = 2
k−2
, pentru k ≥ 3.
Teorem˘a 6.4.1 Fie n = 2
k
0
p
k
1
1
. . . p
k
m
m
, unde p
i
sunt numere prime im-
pare distincte ¸si k
i
≥ 1. Atunci,
λ(n) =
_
λ(2
k
0
), φ(p
k1
1
), . . . φ(p
k
m
m
)
_
.
ˆ
In plus, exist˘a a, prim cu n, al c˘arui ordin s˘a fie egal cu λ(n), cel
mai mare ordin posibil modulo n.
Demonstrat ¸ie. Fie a prim cu n. Din teorema 6.2.6, a
λ(2
k
0
)
≡ 1 (mod 2
k0
).
Cum (a, p
k
i
i
) = 1, a
φ(p
k
i
i
)
≡ 1 (mod p
k
i
i
), pentru fiecare i.
Not˘am M =
_
λ(2
k0
), φ(p
k1
1
), . . . φ(p
km
m
)
_
.
Din λ(2
k0
) [ M ¸si φ(p
k
i
i
) = λ(p
k
i
i
) [ M, pentru 1 ≤ i ≤ m, rezult˘a
a
M
≡ 1 (mod n).
Am ar˘atat astfel c˘a M este exponent universal. S˘a ar˘at˘am c˘a el este ¸si
minimal.
Pentru aceasta, g˘asim un num˘ar a cu proprietatea c˘a a
t
,= 1 (mod n),
pentru t < M. Acest a va fi elementul de ordin maxim modulo n.
Not˘am cu r
i
o r˘ad˘acina primitiv˘a modulo p
ki
i
, 1 ≤ i ≤ m ¸si consider˘am
sistemul de congruent ¸e:
6.4. EXPONENT¸ I UNIVERSALI 107
_
¸
¸
¸
_
¸
¸
¸
_
x ≡ 3 (mod 2
k0
)
x ≡ r
1
(mod p
k
1
1
)
.
.
.
x ≡ r
m
(mod p
k
m
m
)
Folosind teorema chinezeasc˘a a resturilor, exist˘a o solut ¸ie unic˘a a,
modulo 2
k
0
p
k
1
1
. . . p
k
m
m
= n. Ar˘at˘am c˘a ord
n
a = M.
Fie t pentru care a
t
≡ 1 (mod n). Atunci, a
t
≡ 1 (mod 2
k0
) ¸si, pentru
fiecare i, a
t
≡ 1 (mod p
ki
i
). Dar, a este solut ¸ie a sistemului.
Obt ¸inem ord
2
k
0
a = λ(2
k0
), ord
p
k
i
i
a = λ(p
ki
i
), cu 1 ≤ i ≤ m. Deci,
λ(2
k0
) [ t ¸si fiecare φ(p
ki
i
) [ t. Atunci, M [ t. De aici, ord
n
a = M.
S˘a aplic˘am aceast˘a teorem˘a pentru n = 100.
λ(100) =
_
λ(2
2
), λ(5
2
)
¸
= [2, 20] = 20. Pentru a determina elementul de
ordin 20 modulo 100, rezolv˘am sistemul:
_
x ≡ 3 (mod 4)
x ≡ 2 (mod 25)
folosind teorema chinezeasc˘a a resturilor. Rezult˘a a ≡ 27 (mod 100).
Algoritm 6.4.1 (Element de ordin maxim modulo n = pq)
INPUT: p, q numere prime impare.
OUTPUT: a, cu ord
n
a = [p −1, q −1].
1. Folose¸ste algoritmul 6.2.1 pentru a g˘asi α o r˘ad˘acin˘ a
primitiv˘a mod p.
2. Folose¸ste algoritmul 6.2.1 pentru a g˘asi β o r˘ad˘acin˘a
primitiv˘a mod q.
3. Aplic˘a algoritmul 3.3.1 pentru a g˘asi 1 ≤ a ≤ n
solut ¸ia sistemului x ≡ α (mod p), x ≡ β (mod q).
4. Returneaz˘a a.
Observat ¸ie 6.4.1 Exponentul universal minimal, λ(n), ˆı¸si g˘ase¸ste apli-
cat ¸ii ˆın unele metode de generare a numerelor pseudo-aleatoare. Aceste
metode creeaz˘a un ¸sir de numere, pornind de la un num˘ar ales init ¸ial,
numit generator. S¸irurile obt ¸inute astfel, nu sunt aleatoare, ele fiind
obt ¸inute ˆın mod metodic, dup˘a o anumit˘a regul˘ a (de exemplu, metoda
congruent ¸ei liniare, metoda celor mai mici p˘atrate). De aceea ele se
numesc pseudo-aleatoare. Cel mai mare dezavantaj ˆın generarea de nu-
mere pseudo-aleatoare prin aceste metode, este c˘a, ˆın funct ¸ie de alegerea
108 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
generatorului, pot rezulta ¸siruri cu un num˘ar redus de numere, care se
repet˘a mereu. Din acest motiv se urm˘are¸ste ca lungimea maxim˘a a
¸sirului f˘ar˘ a repetit ¸ie, numit˘a lungimea perioadei, s˘a fie cˆat mai mare.
Ea este dat˘a de λ(n).
Definit ¸ie 6.4.3 Fie n > 0, natural ¸si a, prim cu n. Cel mai mic num˘ar
natural x pentru care a
x
≡ ±1 (mod n), se nume¸ste ±1−exponentul lui
a modulo n.
Vrem s˘a determin˘am, pentru fiecare n, cel mai mare ±1−exponent
posibil, pe care ˆıl vom nota λ
0
(n) ¸si ˆıl numim ±1−exponent maximal al
lui n. Din definit ¸ie, tot ¸i ±1−exponent ¸ii modulo n sunt ≤ λ(n).
ˆ
Incepem, ca ¸si ˆınainte, cu situat ¸ia ˆın care exist˘a o r˘ad˘acin˘a primitiv˘a
modulo n.
Teorem˘a 6.4.2 Pentru n > 2, cu proprietatea c˘a exist˘a r˘ad˘acini primi-
tive modulo n,
λ
0
(n) =
φ(n)
2
=
λ(n)
2
.
Demonstrat ¸ie. Fie r o r˘ad˘acin˘a primitiv˘a modulo n.
Atunci, λ(n) = φ(n). Cum, ˆın acest cax, φ(n) este num˘ar par,
λ(n)
2
∈ N.
Folosind teorema lui Euler, a
φ(n)
=
_
a
φ(n)
2
_
2
≡ 1 (mod n), pentru
(a, n) = 1. De aici, a
φ(n)
2
≡ ±1 (mod n), adic˘a λ
0
(n) ≤
φ(n)
2
.
Not˘am cu e
1
±1−exponentul lui r modulo n. Atunci, r
e1
≡ ±1 (mod n),
de unde r
2e1
≡ 1 (mod n). Astfel, ord
n
r = φ(n) [ 2e
1
, sau
φ(n)
2
[ e
1
.
λ
0
(n) este cel mai mare ±1−exponent modulo n, deci e
1
≤ λ
0
(n).
Rezult˘a astfel c˘a
φ(n)
2
≤ λ
0
(n), de unde obt ¸inem, ˆın final, egalitatea
dorit˘a.
Lem˘a 6.4.1 Fie n cu proprietatea c˘a nu exist˘a r˘ad˘ acini primitive mo-
dulo n ¸si fie a, un num˘ar natural prim cu n, cu ord
n
a = λ(n).
Presupunem c˘a a verific˘a a
λ(n)
2
,= −1 (mod n). Atunci, ±1−exponentul
lui a modulo n este egal cu λ(n).
6.4. EXPONENT¸ I UNIVERSALI 109
Demonstrat ¸ie. Not˘am ±1−exponentul lui a modulo n cu e
a
. Astfel,
a
e
a
≡ ±1 (mod n). Cum ord
n
a = λ(n) ¸si a
2e
a
≡ 1 (mod n), avem
λ(n) [ 2e
a
. Din e
a
≤ λ(n), obt ¸inem e
a
=
λ(n)
2
sau e
a
= λ(n).
Pentru e
a
=
λ(n)
2
, avem a
λ(n)
2
≡ ±1 (mod n). Din ipotez˘a, a
λ(n)
2
,=
−1 (mod n). ord
n
a = λ(n) implic˘a a
λ(n)
2
,= 1 (mod n). Deci, acest caz
nu este posibil ¸si obt ¸inem e
a
= λ(n).
Teorem˘a 6.4.3 Dac˘a nu exist˘a r˘ad˘acini primitive modulo n, atunci,
λ
0
(n) = λ(n).
Demonstrat ¸ie. Folosind rezultatul lemei anterioare, pentru a demonstra
teorema trebuie doar s˘a g˘asim un num˘ar a care verific˘a condit ¸iile acestei
leme.
Fie n = 2
k0
p
k
1
1
. . . p
km
m
. Consider˘am mai multe cazuri:
1) n are cel put ¸in doi factori primi impari diferit ¸i.
Descompunem ˆın factori primi φ(p
k
i
i
) pentru 1 ≤ i ≤ m. Vom nota
cu j, indicele pentru care exponentul lui 2 ˆın aceste descompuneri este
minim. Fie r
i
o r˘ad˘acin˘a primitiv˘a modulo p
ki
i
, 1 ≤ i ≤ m. Fie a solut ¸ia
sistemului:
_
_
_
x ≡ 3 (mod 2
k
0
)
x ≡ r
i
(mod p
k
i
i
) ∀i ,= j
x ≡ r
2
j
(mod p
kj
j
)
Din teorema 6.4.1,
ord
n
a =
_
λ(2
k0
), φ(p
k1
1
), . . . ,
φ(p
kj
j
)
2
, . . . , φ(p
km
m
)
_
.
Din alegerea lui j,
_
λ(2
k
0
), φ(p
k1
1
), . . . ,
φ(p
k
j
j
)
2
, . . . , φ(p
k
m
m
)
_
= λ(n).
Din a ≡ r
2
j
(mod p
kj
j
), obt ¸inem a
φ(p
k
j
j
)
2
≡ r
φ(p
k
j
j
)
j
≡ 1 (mod p
kj
j
). Dar,
φ(p
k
j
j
)
2
[
λ(n)
2
. Astfel, a
λ(n)
2
≡ 1 ,= −1 (mod n). Deci, am g˘asit a care
verific˘a condit ¸iile lemei 6.4.1.
2) n = 2
k0
p
k
cu p prim impar, k > 0, k
0
≥ 2.
Dac˘a k
0
= 2 sau 3, λ(n) =
_
2, φ(p
k
)
¸
= φ(p
k
). Fie a solut ¸ia sistemului
110 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
_
x ≡ 1 (mod 4)
x ≡ r (mod p
k
)
unde r este r˘ad˘acin˘a primitiv˘a modulo p
k
. Rezult˘a ord
n
a = λ(n). Din
a ≡ 1 (mod 4), a
λ(n)
2
≡ 1 (mod 4) ¸si rezult˘a c˘a a
λ(n)
2
,= −1 (mod n).
Astfel, ±1−exponentul lui a modulo n este λ(n).
Dac˘a k
0
≥ 4, alegem a ca fiind solut ¸ia sistemului
_
x ≡ 3 (mod 2
k
0
)
x ≡ r (mod p
k
) .
Obt ¸inem ord
n
a = λ(n). Din 4 [ λ(2
k0
), rezult˘a 4 [ λ(n).
Atunci,
a
λ(n)
2
≡ 3
λ(n)
2
≡ (3
2
)
λ(n)
4
≡ 1 (mod 8) ¸si astfel, a
λ(n)
2
,= −1 (mod n).
Folosind lema 6.4.1, rezult˘a e
a
= λ(n).
3) n = 2
k
0
, k
0
≥ 3.
Din teorema 6.2.7, ord
n
5 = λ(n). Din 5
λ(n)
2
≡ (5
2
)
λ(n)
4
≡ 1 (mod 8),
rezult˘a 5
λ(n)
2
,= −1 (mod n), deci a = 5 verific˘a condit ¸iile lemei.
S˘a vedem cum se utilizeaz˘a ±1−exponentul maximal λ
0
(n) ˆın proce-
sul de ˆımbinare a cablurilor telefonice.
Cablurile telefonice sunt formate din mai multe straturi concentrice
de fire izolate din cupru. Liniile telefonice se construiesc prin ˆımbinarea
sect ¸iunilor de cablu. Dac˘a dou˘a fire din acela¸si strat devin adiacente ˆın
mai multe sect ¸iuni, apar probleme de interferent ¸˘a ¸si de suprapuneri de
convorbiri. Din acest motiv, dou˘a fire adiacente din acela¸si strat ˆıntr-o
sect ¸iune, nu trebuie s˘a fie adiacente, ˆın acela¸si strat, ˆın orice sect ¸iune
apropiat˘a. De asemenea, modalitatea de a realiza acest lucru trebuie s˘a
fie simpl˘a, t ¸inˆand cont de mediul ˆın care se realizeaz˘a aceste ˆımbin˘ari.
Pentru ˆımbinarea cablurilor, vom aplica urm˘atoarea regul˘a:
Firele dintr-un strat concentric sunt ˆımbinate cu fire din stratul cores-
punz˘ator al sect ¸iunii urm˘atoare, folosind aceea¸si direct ¸ie de ˆımbinare la
fiecare jonct ¸iune. Presupunem c˘a stratul are n fire ¸si conect˘am firul aflat
pe pozit ¸ia j, 1 ≤ j ≤ n, dintr-o sect ¸iune cu cel de pe pozit ¸ia S(j) din
sect ¸iunea urm˘atoare. S(j) se define¸ste ca fiind restul modulo n al lui
1 +(j −1)s, unde s poart˘a numele de ˆıntinderea sistemului de ˆımbinare.
Astfel, de fapt, se ˆımbin˘a firul j cu cel care se afl˘a cu s modulo n pozit ¸ii
mai departe (ˆın sensul convenit) din sect ¸iunea urm˘atoare.
6.4. EXPONENT¸ I UNIVERSALI 111
Corespondent ¸a definit˘a trebuie s˘a fie bijectiv˘a, adic˘a:
dac˘a S(j) ≡ S(k) (mod n), atunci j = k, 1 ≤ j, k ≤ n.
ˆ
Inlocuind,
rezult˘a congruent ¸a js ≡ ks (mod n) care trebuie s˘a implice j = k. Deci,
(s, n) = 1.
Not˘am cu S
t
(j) firul cu care este ˆımbinat ˆın sect ¸iunea t firul init ¸ial
j, din prima sect ¸iune.
Aplicˆand metoda induct ¸iei matematice, se obt ¸ine u¸sor c˘a
S
t
(j) ≡ 1 + (j −1)s
t−1
(mod n).
Pentru a fi ˆındeplinit˘a regula precizat˘a init ¸ial, trebuie ca firele adia-
cente s˘a fie separate ˆın cˆat mai multe sect ¸iuni posibile. Presupunem c˘a
firele j ¸si j + 1 sunt adiacente ˆın a t−a sect ¸iune f˘acut˘a. Atunci,
S
t
(j) −S
t
(j + 1) ≡ ±1 (mod n), adic˘a s
t−1
≡ ±1 (mod n).
Deci, pornind de la dou˘a fire adiacente ˆın prima sect ¸iune, pentru a
le p˘astra cˆat mai mult separate, trebuie s˘a alegem ˆıntinderea s care are
±1− exponentul maximal λ
0
(n).
De exemplu, dac˘a n = 100, λ
0
(100) = λ(100) = 20 iar s = 27 a fost
calculat anterior.
Exercit ¸ii propuse
1. Determinat ¸i ord
10
3, ord
13
10, ord
17
9.
2. Determinat ¸i toate r˘ad˘acinile primitive modulo 13.
3. Fie n ∈ ¦4, 8, 10, 18, 19, 25, 98, 100, 343, 1001¦. Precizat ¸i pentru ce
valori ale lui n exist˘a r˘ad˘acini primitive modulo n.
4. Determinat ¸i o r˘ad˘acin˘a primitiv˘a modulo n, dac˘a
n ∈ ¦22, 26, 121, 169¦.
5. Fie n un num˘ar natural pentru care exist˘a r, o r˘ad˘acin˘a primitiv˘a.
Folosind aceast˘a r˘ad˘acin˘a, ar˘atat ¸i c˘a produsul numerelor mai mici decˆat
n ¸si relativ prime cu n este congruent cu −1 modulo n.
6. Determinat ¸i toate solut ¸iile urm˘atoarelor congruent ¸e:
i) 3x
5
≡ 1 (mod 23).
ii) 13
x
≡ 5 (mod 23).
112 CAPITOLUL 6. R
˘
AD
˘
ACINI PRIMITIVE
7. Pentru ce numere naturale a congruent ¸a ax
4
≡ 2 (mod 13) are
solut ¸ii?
8. Fie congruent ¸a 8x
7
≡ a (mod 29). Stabilit ¸i toate valorile lui a
pentru ca aceast˘a congruent ¸˘a s˘a aib˘a solut ¸ie.
9. Fie r o r˘ad˘acin˘a primitiv˘a modulo p, cu p num˘ar prim impar.
Ar˘atat ¸i c˘a ind
r
(p −1) =
p −1
2
.
10. Calculat ¸i λ(n) ¸si ±1−exponentul maximal pentru
n ∈ ¦11, 17, 22, 36, 38, 120, 144, 222¦.
11. Fie n ∈ ¦12, 15, 36, 47¦. Determinat ¸i un num˘ar al c˘arui ordin
modulo n este cel mai mare posibil.
12. Fie n ∈ ¦13, 14, 15, 25, 30¦. Determinat ¸i un num˘ar a al c˘arui
±1−exponent modulo n este egal cu λ
0
(n).
CAPITOLUL 7
Reciprocitate p˘atratic˘a
Diofante, ˆın Arithmetica, a f˘acut urm˘atoarea afirmat ¸ie care a fost punctul
de plecare pentru obt ¸inerea rezultatului cunoscut sub numele de legea
reciprocit˘at ¸ii p˘atratice:
65 se scrie ˆın mod natural ca sum˘a de dou˘a p˘atrate, adic˘a 7
2
+ 4
2
¸si
8
2
+ 1
2
, datorit˘a faptului c˘a 65 = 13 5 iar fiecare dintre factori este
sum˘a de dou˘a p˘atrate.
Evident, Diofante cuno¸stea formula
(a
2
+b
2
)(c
2
+d
2
) = (ac ±bd)
2
+ (bc ∓ad)
2
care arat˘a c˘a un produs de sume de dou˘a p˘atrate este la rˆandul ei o
sum˘a de dou˘a p˘atrate.
De aici, Fermat a dedus c˘a pentru a cunoa¸ste care numere se scriu
ca sum˘a de dou˘a p˘atrate, trebuie s˘a fie cunoscute numerele prime cu
aceast˘a proprietate. Este u¸sor de ar˘atat c˘a numerele prime de forma
4k + 3 nu sunt sum˘a de dou˘a p˘atrate. Dificil este de ar˘atat c˘a toate
numerele prime de forma 4k + 1 sunt sume de dou˘a p˘atrate.
1
Fermat a
g˘asit forme liniare ¸si pentru numere prime de forma a
2
+2b
2
¸si a
2
+3b
2
.
Primele sunt numere prime de forma 8k +1 sau 8k +3 iar ultimele sunt
exact cele de forma 3k + 1.
1
Aceat˘a teorem˘a a fost enunt ¸at˘a de Fermat ˆın 1640, dar prima demonstrat ¸ie cunos-
cut˘a este datorat˘a lui Euler, ˆın anul 1755.
113
114 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
La mijlocul secolului al XVIII-lea, Euler observ˘a c˘a aflarea numerelor
prime de forma a
2
+b
2
, a
2
+2b
2
sau a
2
+3b
2
depinde dac˘a p este p˘atrat
(mod q) pentru anumit ¸i ˆıntregi p ¸si q. Astfel, pentru p ¸si q numere prime
impare, el a obt ¸inut urm˘atorul rezultat:
1. Cˆand p, q sunt amˆandoi de forma 4k +3, atunci p este p˘atrat mo-
dulo q dac˘a ¸si numai dac˘a q nu este p˘atrat modulo p.
2. Altfel, p este p˘atrat modulo q dac˘a ¸si numai dac˘a q este p˘atrat
modulo p.
Datorit˘a relat ¸iei reciproce ˆıntre p ¸si q, aceast˘a afirmat ¸ie se nume¸ste
legea reciprocit˘at ¸ii p˘atratice.
2
7.1 Simbolul Legendre
Definit ¸ie 7.1.1 Fie m un num˘ar natural ¸si a un ˆıntreg, relativ prim cu
m. a se nume¸ste rest p˘atratic modulo m dac˘a congruent ¸a x
2
≡ a (mod m)
are solut ¸ii.
ˆ
In caz contrar, spunem c˘a a nu este rest p˘atratic modulo m.
Spre exemplu, din congruent ¸ele:
1
2
≡ 10
2
≡ 1 (mod 11) 2
2
≡ 9
2
≡ 4 (mod 11)
3
2
≡ 8
2
≡ 9 (mod 11) 4
2
≡ 7
2
≡ 5 (mod 11)
5
2
≡ 6
2
≡ 3 (mod 11)
rezult˘a c˘a 1, 3, 4, 5, 9 sunt resturi p˘atratice modulo 11 iar 2, 6, 7, 8, 10 nu
sunt.
Lem˘a 7.1.1 Fie p num˘ar prim impar ¸si a ∈ Z, cu p a. Congruent ¸a
x
2
≡ a (mod p) (7.1)
are 2 solut ¸ii necongruente modulo p, sau nu are solut ¸ie.
2
Euler nu a putut demonstra acest rezultat, decˆat pe cˆateva cazuri particulare,
prima demonstrat ¸ie fiind dat˘a de Gauss. Exist˘a aproape 200 de demonstrat ¸ii diferite
pentru legea reciprocit˘at ¸ii p˘atratice. Astfel, aceasta a devenit a doua teorem˘a cu cele
mai multe demonstrat ¸ii, dup˘a teorema lui Pitagora.
7.1. SIMBOLUL LEGENDRE 115
Demonstrat ¸ie. Presupunem c˘a congruent ¸a ( 7.1) are o solut ¸ie, pe x
0
.
Atunci, ¸si −x
0
este solut ¸ie pentru ( 7.1). Dac˘a x
0
≡ −x
0
(mod p),
atunci, p [ 2x
0
. Cum p este impar, p [ x
0
, de unde p [ a, ceea ce este fals.
Deci, x
0
¸si −x
0
sunt solut ¸ii necongruente modulo p. R˘amˆane s˘a ar˘at˘am
c˘a orice alt˘a solut ¸ie y a lui ( 7.1) este congruent˘a modulo p cu una din
acestea dou˘a. Din y
2
≡ a ≡ x
2
0
(mod p), obt ¸inem p [ y
2
−x
2
0
. Cum p este
prim, p [ y −x
0
sau p [ y +x
0
de unde obt ¸inem rezultatul dorit.
Propozit ¸ie 7.1.1 Pentru p num˘ar prim impar, exist˘a exact
p −1
2
res-
turi p˘atratice modulo p ¸si
p −1
2
non-resturi p˘atratice modulo p ˆıntre
numerele 1, 2, . . . , p −1.
Demonstrat ¸ie. Pentru a determina resturile p˘atratice modulo p dintre
numerele 1, 2, . . . , p−1, proced˘am caˆın exemplul anterior. Calcul˘am res-
turile modulo p ale p˘atratelor celor p−1 numere. Sunt p−1 p˘atrate care
trebuie considerate. S¸tim c˘a fiecare congruent ¸˘a ( 7.1) are 2 solut ¸ii necon-
gruente modulo p sau niciuna. Deci, sunt exact
p −1
2
resturi p˘atratice
modulo p. Cele r˘amase, ˆın num˘ar de p − 1 −
p −1
2
=
p −1
2
sunt non-
resturi p˘atratice modulo p.
Definit ¸ie 7.1.2 Fie p num˘ar prim impar ¸si a un ˆıntreg relativ prim cu
p. Definim simbolul lui Legendre
3
,
_
a
p
_
prin:
_
a
p
_
=
_
1, dac˘a a este rest p˘atratic mod p;
−1, dac˘a a nu este rest p˘atratic mod p.
Observat ¸ie 7.1.1
ˆ
In unele lucr˘ari de specialitate, simbolul lui Legendre
este definit ¸si pentru cazul cˆand p [ a, luˆand valoarea 0 ˆın aceast˘a situat ¸ie.
Dar, acest caz nu ne intereseaz˘a ˆın studiul nostru.
Spre exemplu,
_
3
11
_
=
_
4
11
_
= 1 iar
_
2
11
_
=
_
6
11
_
= −1.
3
Adrien-Marie Legendre (1752-1833), ˆın lucrarea sa de teoria numerelor din anul
1785, a prezentat multe rezultate importante legate de legea reciprocit˘at ¸ii p˘atratice
¸si a numerelor prime aflate ˆıntr-o progresie aritmetic˘a.
116 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
Pentru p num˘ar prim ¸si p a (mod p), din teorema 3.4.3 obt ¸inem
a
p−1
≡ 1 (mod p). Euler a folosit acest rezultat pentru a obt ¸ine un
criteriu care s˘a stabileasc˘a dac˘a un num˘ar este rest p˘atratic modulo p
sau nu.
Teorem˘a 7.1.1 (Criteriul Euler) Fie p num˘ar prim impar, a ∈ Z cu
p a. Atunci,
_
a
p
_
≡ a
p−1
2
(mod p). (7.2)
Demonstrat ¸ie. Presupunem mai ˆıntˆai c˘a
_
a
p
_
= 1. Atunci, congruent ¸a
( 7.1) are solut ¸ie pe care o not˘am x
0
. Din teorema 3.4.3,
a
p−1
2
=
_
x
2
0
_
p−1
2
≡ x
p−1
0
≡ 1 (mod p).
Consider˘am acum
_
a
p
_
= −1. Deci, congruent ¸a ( 7.1) nu are solut ¸ie.
Din teorema 3.2.1, pentru orice 1 ≤ i ≤ p −1 exist˘a 1 ≤ j ≤ p −1 astfel
ˆıncˆat ij ≡ a (mod p).
ˆ
In acest caz, i ¸si j trebuie s˘a fie diferite. Putem
grupa numerele 1, 2, . . . , p −1 ˆın
p −1
2
perechi, fiecare cu produsul egal
cu a. Atunci, (p −1)! ≡ a
p−1
2
(mod p). Aplicˆand acum teorema Wilson,
rezult˘a a
p−1
2
≡ −1 (mod p).
Propozit ¸ie 7.1.2 Fie p num˘ar prim impar ¸si a, b ∈ Z cu p a ¸si p b.
Atunci,
1. Dac˘a a ≡ b (mod p), atunci
_
a
p
_
=
_
b
p
_
.
2.
_
a
p
_

_
b
p
_
=
_
ab
p
_
.
3.
_
a
2
p
_
= 1.
Demonstrat ¸ie. 1) a ≡ b (mod p). Atunci, x
2
≡ a (mod p) are solut ¸ii dac˘a
¸si numai dac˘a x
2
≡ b (mod p) are solut ¸ii.
2) Folosind criteriul lui Euler,
_
a
p
_
≡ a
p−1
2
(mod p),
_
b
p
_
≡ b
p−1
2
(mod p)
7.1. SIMBOLUL LEGENDRE 117
¸si
_
ab
p
_
≡ (ab)
p−1
2
(mod p). Atunci,
_
a
p
_

_
b
p
_

_
ab
p
_
(mod p). Cum
valorile simbolului lui Legendre sunt ±1, obt ¸inem egalitatea cerut˘a.
3) Folosind 2), din
_
a
p
_
= ±1, rezult˘a ultima afirmat ¸ie.
Observ˘am c˘a punctul 2) al propozit ¸iei afirm˘a c˘a produsul a dou˘a
resturi p˘atratice sau a dou˘a non-resturi p˘atratice modulo p este rest
p˘atratic, pe cˆand produsul dintre un rest p˘atratic ¸si un non-rest p˘atratic
modulo p este un non-rest p˘atratic modulo p.
Folosind criteriul lui Euler, vedem u¸sor care numere prime impare au
pe -1 rest p˘atratic. Obt ¸inem astfel:
Teorem˘a 7.1.2 Dac˘a p este num˘ar prim impar,
_
−1
p
_
=
_
1, dac˘a p ≡ 1 (mod 4);
−1, dac˘a p ≡ −1 (mod 4).
Un alt criteriu care stabile¸ste dac˘a un num˘ar este rest p˘atratic modulo
p a fost enunt ¸at de Gauss.
Lem˘a 7.1.2 (Lema lui Gauss) Fie p > 2 num˘ar prim ¸si a ∈ Z, prim
cu p. Dac˘a dintre resturile modulo p ale numerelor a, 2a, 3a, . . . ,
p −1
2
a,
doar s sunt mai mari decˆat
p
2
, atunci
_
a
p
_
= (−1)
s
.
Demonstrat ¸ie. Fie u
1
, u
2
, . . . , u
s
resturile modulo p mai mari decˆat
p
2
¸si not˘am v
1
, v
2
, . . . , v
t
celelalte resturi. Din (j a, p) = 1 pentru orice
1 ≤ j ≤
p −1
2
, toate resturile se afl˘a ˆın mult ¸imea ¦1, 2, . . . , p −1¦.
Ar˘at˘am c˘a p −u
1
, p −u
2
, . . . , p −u
s
, v
1
, v
2
, . . . , v
t
acoper˘a mult ¸imea
¦1, 2, . . . ,
p −1
2
¦ ˆıntr-o anumit˘a ordine.
Dac˘a avem u
j
≡ u
i
(mod p) sau v
i
≡ v
i
(mod p), ar exista m, n ≤
p −1
2
astfel ˆıncˆat ma ≡ na (mod p). De aici, cum m ,= n (mod p), rezult˘a
p [ a, ceea ce contrazice ipoteza. Deci, pentru i ,= j, u
i
,= u
j
(mod p) ¸si
v
i
,= v
j
(mod p).
Dac˘a p −u
i
≡ v
j
(mod p), pentru i ,= j, atunci exist˘a 1 ≤ m, n ≤
p −1
2
118 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
pentru care ma ≡ p−na (mod p). Obt ¸inem atunci, m ≡ −n (mod p), ceea
ce este imposibil t ¸inˆand cont de alegerea numerelor m, n. Deci, pentru
i ,= j, p −u
i
,= v
j
(mod p).
Am demonstrat astfel c˘a p −u
1
, p −u
2
, . . . , p −u
s
, v
1
, v
2
, . . . , v
t
sunt
numerele 1, 2, . . . ,
p −1
2
, ˆıntr-o anumit˘a ordine. Atunci,
(p −u
1
)(p −u
2
) . . . (p −u
s
)v
1
v
2
. . . v
t

_
p −1
2
_
! (mod p) (7.3)
adic˘a
(−1)
s
u
1
u
2
. . . u
s
v
1
v
2
. . . v
t

_
p −1
2
_
! (mod p) (7.4)
Dar, u
1
u
2
. . . u
s
v
1
v
2
. . . v
t
≡ a 2a . . .
_
p −1
2
_
a (mod p) de unde
u
1
u
2
. . . u
s
v
1
v
2
. . . v
t
≡ a
p−1
2
_
p −1
2
_
! (mod p) (7.5)
Din ( 7.4) ¸si ( 7.5), obt ¸inem
(−1)
s
a
p−1
2
_
p −1
2
_
! ≡
_
p −1
2
_
! (mod p). (7.6)
De aici, cum p ¸si
_
p −1
2
_
! sunt relativ prime, rezult˘a
(−1)
s
a
p−1
2
≡ 1 (mod p). (7.7)
Prin ˆınmult ¸ire cu (−1)
s
, obt ¸inem
_
a
p
_
≡ a
p−1
2
≡ (−1)
s
(mod p) ceea ce
finalizeaz˘a demonstrat ¸ia.
De exemplu, pentru p = 11 ¸si a = 6, obt ¸inem
p −1
2
= 5. Rezult˘a
1 6 ≡ 6 (mod 11)
2 6 ≡ 1 (mod 11)
3 6 ≡ 7 (mod 11)
4 6 ≡ 9 (mod 11)
5 6 ≡ 8 (mod 11)
7.1. SIMBOLUL LEGENDRE 119
Cum sunt 4 resturi mai mari decˆat 5,
_
6
11
_
= (−1)
4
= 1.
Folosind lema lui Gauss, caracteriz˘am numerele prime impare care
au pe 2 rest p˘atratic.
Teorem˘a 7.1.3 Dac˘a p este num˘ar prim impar,
_
2
p
_
= (−1)
p
2
−1
8
=
_
1 dac˘a p ≡ ±1 (mod 8);
−1 dac˘a p ≡ ±3 (mod 8).
Demonstrat ¸ie. P˘ast˘am notat ¸iile din demonstrat ¸ia lemei lui Gauss.
Fie 1 ≤ j ≤
p −1
2
. Din 2 j ≤
p
2
pentru j ≤
p
4
rezult˘a c˘a exist˘a
_
p
4
_
numere strict mai mici decˆat
p
2
. Atunci, exist˘a s =
p −1
2

_
p
4
_
resturi
mai mari decˆat
p
2
.
R˘amˆane s˘a ar˘at˘am c˘a
p −1
2

_
p
4
_

p
2
−1
8
(mod 2).
Pentru aceasta, cum p este prim impar, avem situat ¸iile:
p ≡ ±1 (mod 8) sau p ≡ ±3 (mod 8).
Pentru primul caz, p = 8k ±1, pentru k natural. Obt ¸inem
p
2
−1
8
= 8k
2
±2k ≡ 0 (mod 2),
p −1
2

_
p
4
_
=
_
2k ≡ 0 (mod 2), dac˘a p = 8k + 1;
2k + 2 ≡ 0 (mod 2), dac˘a p = 8k + 7.
Rezult˘a astfel,
p −1
2

_
p
4
_

p
2
−1
8
(mod 2).
Pentru p = 8k ±3,
p
2
−1
8
= 8k
2
±6k +1 ≡ 1 (mod 2). Pe de alt˘a parte,
p −1
2

_
p
4
_
=
_
2k + 1 ≡ 1 (mod 2), dac˘a p = 8k + 3;
2k + 1 ≡ 1 (mod 2), dac˘a p = 8k + 5.
Obt ¸inem ¸si ˆın aceast˘a situat ¸ie congruent ¸a dorit˘a.
120 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
De exemplu, s˘a calcul˘am urm˘atoarele simboluri Legendre:
1.
_
317
11
_
. Pentru aceasta, cum 317 ≡ 9 (mod 11), obt ¸inem:
_
317
11
_
=
_
9
11
_
=
_
3
11
_
2
= 1.
2.
_
89
13
_
. Din 89 ≡ −2 (mod 13) rezult˘a:
_
89
13
_
=
_
−2
13
_
=
_
−1
13
_

_
2
13
_
= −1, pentru c˘a:
din 13 ≡ 1 (mod 4) rezult˘a
_
−1
13
_
= 1 ¸si, deoarece 13 ≡ −3 (mod 8),
_
2
13
_
= −1.
7.2 Legea reciprocit˘at ¸ii p˘atratice
Teorema elegant˘a, datorat˘a lui Gauss, leag˘a
_
p
q
_
de
_
q
p
_
unde p, q
sunt numere prime impare diferite. Cunoscut˘a sub numele de legea re-
ciprocit˘at ¸ii p˘atratice, ea precizeaz˘a dac˘a congruent ¸a x
2
≡ p (mod q) are
solut ¸ii, ¸stiind dac˘a congruent ¸a x
2
≡ q (mod p) are solut ¸ii.
ˆ
Inainte de a o enunt ¸a, s˘a vedem cum funct ¸ioneaz˘a urm˘atoarea lem˘a,
necesar˘a ˆın demonstrat ¸ia teoremei.
Lem˘a 7.2.1 Fie p num˘ar prim impar ¸si a ∈ Z, impar, cu p a. Atunci,
_
a
p
_
= (−1)
T(a,p)
(7.8)
unde
T(a, p) =
p−1
2

j=1
_
ja
p
_
. (7.9)
7.2. LEGEA RECIPROCIT
˘
AT¸ II P
˘
ATRATICE 121
Demonstrat ¸ie. Consider˘am resturile modulo p ale numerelor a, 2a, . . . ,
p −1
2
a. Not˘am cu u
1
, u
2
, . . . , u
s
pe cele >
p
2
iar cu v
1
, v
2
, . . . , v
t
pe cele
<
p
2
. Teorema ˆımp˘art ¸irii cu rest arat˘a c˘a
ja = p
_
ja
p
_
+r
unde r este restul ˆımp˘art ¸irii care nu poate fi decˆat un u
k
sau un v
l
.
Adunˆand cele
p −1
2
astfel de ecuat ¸ii, obt ¸inem:
p−1
2

j=1
ja =
p−1
2

j=1
p
_
ja
p
_
+
s

k=1
u
k
+
t

l=1
v
l
. (7.10)
Din lema 7.1.2, p−u
1
, . . . , p−u
s
, v
1
, . . . , v
t
sunt exact resturile 1, 2, . . . ,
p −1
2
, eventual ˆın alt˘a ordine.
Calculˆand suma lor, rezult˘a
p−1
2

k=1
k =
s

j=1
(p −u
j
) +
t

j=1
v
j
= ps −
s

j=1
u
j
+
t

j=1
v
j
. (7.11)
De aici, sc˘azˆand din ( 7.10) relat ¸ia ( 7.11), rezult˘a
p−1
2

j=1
ja −
p−1
2

j=1
j =
p−1
2

j=1
p
_
ja
p
_
−ps + 2
s

j=1
u
j
(7.12)
(a −1)
p−1
2

j=1
j = pT(a, p) −ps + 2
s

j=1
u
j
. (7.13)
Cum a ¸si p sunt impare, 0 ≡ T(a, p) −s (mod 2), de unde
T(a, p) ≡ s (mod 2).
Aplicˆand ˆınc˘a o dat˘a lema lui Gauss, obt ¸inem
_
a
p
_
= (−1)
s
= (−1)
T(a,p)
. (7.14)
122 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
S˘a calcul˘am simbolul lui Legendre pentru a = 7, p = 11.
5

j=1
_
7j
11
_
=
_
7
11
_
+
_
14
11
_
+
_
21
11
_
+
_
28
11
_
+
_
35
11
_
= 0 +1 +1 +2 +3 = 7.
De aici,
_
7
11
_
= (−1)
7
= −1.
ˆ
In mod analog,
3

j=1
_
11j
7
_
=
_
11
7
_
+
_
22
7
_
+
_
33
7
_
= 1 + 3 + 4 = 8,
de unde,
_
11
7
_
= (−1)
8
= 1.
Teorem˘a 7.2.1 (Legea reciprocit˘at ¸ii p˘atratice) Fie p, q numere
prime impare. Atunci,
_
p
q
_

_
q
p
_
= (−1)
p−1
2
·
q−1
2
(7.15)
S˘a vedem cum am aplica lema anterioar˘a pentru a demonstra teorema
pe cazul numeric tratat anterior. Consider˘am p = 7 ¸si q = 11.
Form˘am perechi (x, y) cu 1 ≤ x ≤
7 −1
2
= 3, 1 ≤ y ≤
11 −1
2
= 5.
Sunt ˆın total 15 astfel de perechi pentru care nu se verific˘a egalitatea
11x = 7y. Dac˘a egalitatea ar fi verificat˘a pentru o pereche (x, y), atunci
11 [ 7y, de unde 11 [ y, fals.
ˆ
Imp˘art ¸im aceste perechi ˆın dou˘a grupe dup˘a
cum urmeaz˘a:
Prima grup˘a este format˘a din perechile (x, y) cu 1 ≤ x ≤ 3, 1 ≤ y ≤ 5
¸si 11x > 7y. Atunci, 1 ≤ x ≤ 3, 1 ≤ y ≤
11x
7
. Pentru o valoare fixat˘a a
lui x sunt
_
11x
7
_
valori posibile pentru y.
Astfel, prima grup˘a este format˘a din
3

j=1
_
11j
7
_
= 8 perechi care sunt:
(1, 1), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3), (3, 4).
Cea de-a doua grup˘a cuprinde celelalte perechi, adic˘a:
(x, y) cu 1 ≤ x ≤ 3, 1 ≤ y ≤ 5 ¸si 11x < 7y. Atunci, 1 ≤ y ≤ 5 ¸si
1 ≤ x ≤
7y
11
. Pentru o valoare fixat˘a a lui y sunt
_
7y
11
_
valori posibile
7.2. LEGEA RECIPROCIT
˘
AT¸ II P
˘
ATRATICE 123
pentru x.
Grupa este format˘a din
5

j=1
_
7j
11
_
= 7 perechi care sunt:
(1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 5).
Astfel,
11 −1
2

7 −1
2
= 5 3 = 15 =
3

j=1
_
11j
7
_
+
5

j=1
_
7j
11
_
= 8 + 7.
Rezult˘a, ˆın final,
(−1)
11 −1
2
·
7 −1
2
= (−1)
3

j=1

11j
7

(−1)
5

j=1

7j
11

=
_
11
7
_

_
7
11
_
.
S˘a ne ˆıntoarcem acum la demonstrat ¸ia teoremei.
Demonstrat ¸ie. Form˘am perechi
(x, y), 1 ≤ x ≤
p −1
2
, 1 ≤ y ≤
q −1
2
.
Sunt ˆın total
p −1
2

q −1
2
astfel de perechi. Dac˘a qx = py, atunci q [ py,
de unde q [ y, ceea ce este fals. Astfel, pentru fiecare pereche (x, y),
qx ,= py.
ˆ
Imp˘art ¸im aceste perechi ˆın dou˘a grupe ca mai sus.
Astfel, prima grup˘a este format˘a din perechile
(x, y), 1 ≤ x ≤
p −1
2
, 1 ≤ y ≤
q −1
2
, qx > py.
Atunci, perechile c˘autate sunt exact cele pentru care 1 ≤ x ≤
p −1
2
,
1 ≤ y ≤
qx
p
. Pentru o valoare fixat˘a a lui x sunt
_
qx
p
_
valori posibile
pentru y. Deci, prima grup˘a este format˘a din
p−1
2

j=1
_
qj
p
_
perechi.
124 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
A doua grup˘a cuprinde perechile pentru care
1 ≤ x ≤
p −1
2
, 1 ≤ y ≤
q −1
2
, qx < py.
Atunci, 1 ≤ y ≤
q −1
2
, 1 ≤ x ≤
py
q
. Pentru o valoare fixat˘a a lui y
sunt
_
py
q
_
valori posibile pentru x. Deci, aceast˘a grup˘a este format˘a din
q−1
2

j=1
_
pj
q
_
perechi.
Num˘arul total de perechi (x, y) este egal cu:
p −1
2

q −1
2
=
p−1
2

j=1
_
qj
p
_
+
q−1
2

j=1
_
pj
q
_
.
Folosind notat ¸iile lemei 7.2.1, putem scrie:
p −1
2

q −1
2
= T(q, p) +
T(p, q).
Rezult˘a,
(−1)
T(q,p)+T(p,q)
= (−1)
T(q,p)
(−1)
T(p,q)
= (−1)
p−1
2
·
q−1
2
.
Din lema 7.2.1, (−1)
T(q,p)
=
_
q
p
_
¸si (−1)
T(p,q)
=
_
p
q
_
. Obt ¸inem astfel
relat ¸ia dorit˘a.
S˘a observ˘am c˘a
p −1
2
este num˘ar par dac˘a p ≡ 1 (mod 4) iar, ˆın caz
contrar, este num˘ar impar. Astfel,
(−1)
p−1
2
·
q−1
2
=
_
1, dac˘a p ≡ 1 (mod 4) sau q ≡ 1 (mod 4);
−1, dac˘a p ≡ q ≡ 3 (mod 4).
Obt ¸inem:
_
p
q
_
=
_
¸
¸
_
¸
¸
_
_
q
p
_
, dac˘a p ≡ 1 (mod 4) sau q ≡ 1 (mod 4);

_
q
p
_
, dac˘a p ≡ q ≡ 3 (mod 4).
7.3. SIMBOLUL JACOBI 125
Spre exemplu, consider˘am p = 11, q = 19. Din 11 ≡ 19 ≡ 3 (mod 4),
rezult˘a:
_
11
19
_
= −
_
19
11
_
= −
_
2
11
_
3
= −(−1)
3
= 1, pentru c˘a 11 ≡ 3 (mod 8).
Folosind teorema 7.2.1, putem calcula acum anumite simboluri
Legendre. Pentru
_
217
1009
_
, din 217 = 31 7, rezult˘a:
_
217
1009
_
=
_
31
1009
_

_
7
1009
_
1009 ≡ 1 (mod 4), de unde:
_
31
1009
_
=
_
1009
31
_
=
_
17
31
_
=
_
31
17
_
=
_
14
17
_
=
_
2
17
_

_
7
17
_
.
Din 17 ≡ 1 (mod 8),
_
2
17
_
= 1.
Obt ¸inem,
_
31
1009
_
=
_
7
17
_
=
_
17
7
_
=
_
3
7
_
= −
_
7
3
_
= −
_
4
3
_
=

_
2
3
_
2
= −1.
Proced˘am analog pentru
_
7
1009
_
¸si obt ¸inem
_
7
1009
_
=
_
1009
7
_
=
_
8
7
_
=
_
2
7
_
3
= 1
3
= 1.
Deci,
_
217
1009
_
= (−1) 1 = −1.
7.3 Simbolul Jacobi
Simbolul Jacobi
4
este o generalizare a simbolului Legendre. El este folo-
sitor ˆın evaluarea acestuia ¸si apare ˆın definirea unui tip de numere pseu-
doprime (vezi capitolul 10.6).
Definit ¸ie 7.3.1 Fie n = p
α1
1
p
α2
2
. . . p
α
m
m
un num˘ar compus impar, unde
p
i
sunt numere prime distincte, α
i
≥ 1, pentru fiecare 1 ≤ i ≤ m.
4
Carl Gustav Jacob Jacobi (1804-1851) are contribut ¸ii importante ˆın teoria nu-
merelor, legate de resturi cubice, ˆın studiul funct ¸iilor eliptice cˆat ¸si al ecuat ¸iilor cu
diferent ¸iale part ¸iale.
126 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
Consider˘am a ∈ Z cu (a, n) = 1. Definim simbolul Jacobi
_
a
n
_
prin:
_
a
n
_
=
_
a
p
1
_
α
1

_
a
p
2
_
α
2
. . .
_
a
p
m
_
α
m
.
Deoarece pentru n num˘ar prim, simbolul coincide cu simbolul
Legendre, se folose¸ste aceea¸si notat ¸ie.
De exemplu,
_
2
1001
_
=
_
2
7
_

_
2
11
_

_
2
13
_
= 1 (−1) (−1) = 1.
Trebuie s˘a remarc˘am faptul c˘a, pentru n num˘ar compus, valoarea
simbolului Jacobi nu precizeaz˘a dac˘a congruent ¸a x
2
≡ a (mod n) are
solut ¸ii.
Dac˘a congruent ¸a are solut ¸ii, atunci, pentru fiecare 1 ≤ i ≤ m,
congruent ¸a x
2
≡ a (mod p
i
) are solut ¸ii. Astfel,
_
a
p
i
_
= 1, pentru tot ¸i
divizorii primi p
i
ai lui n. Din modul de definire al simbolului Jacobi,
obt ¸inem
_
a
n
_
= 1.
Dar, dac˘a
_
a
n
_
= 1, este posibil ca x
2
≡ a (mod n) s˘a nu aib˘a solut ¸ii.
Spre exemplu, congruent ¸a x
2
≡ 2 (mod 55) este echivalent˘a cu sistemul
de congruent ¸e:
_
x
2
≡ 2 (mod 5)
x
2
≡ 2 (mod 11)
Cele dou˘a congruent ¸e care formeaz˘a sistemul nu au solut ¸ii pentru c˘a
_
2
5
_
=
_
2
11
_
= −1. Deci, congruent ¸a init ¸ial˘a nu are solut ¸ii, cu toate
c˘a
_
2
55
_
= (−1)(−1) = 1.
Teorem˘a 7.3.1 Fie n num˘ar natural impar ¸si a, b ∈ Z, cu (a, n) = 1,
(b, n) = 1. Atunci:
1) Dac˘a a ≡ b (mod n) atunci,
_
a
n
_
=
_
b
n
_
.
7.3. SIMBOLUL JACOBI 127
2)
_
ab
n
_
=
_
a
n
_

_
b
n
_
.
3)
_
−1
n
_
= (−1)
n−1
2
.
4)
_
2
n
_
= (−1)
n
2
−1
8
.
Demonstrat ¸ie. 1) Fie n = p
α1
1
p
α2
2
. . . p
αm
m
descompunerea ˆın factori primi
a lui n. Din a ≡ b (mod n), rezult˘a a ≡ b (mod p
i
), pentru fiecare
1 ≤ i ≤ m. Astfel,
_
a
p
i
_
=
_
b
p
i
_
, pentru fiecare i.
Rezult˘a
_
a
n
_
=
m

i=1
_
a
p
i
_
α
i
=
m

i=1
_
b
p
i
_
α
i
=
_
b
n
_
.
2)
_
ab
n
_
=
m

i=1
_
ab
p
i
_
αi
=
m

i=1
_
a
p
i
_
αi

m

i=1
_
b
p
i
_
αi
=
_
a
n
_

_
b
n
_
.
3) Din criteriul lui Euler obt ¸inem c˘a, pentru fiecare 1 ≤ i ≤ m,
_
−1
p
i
_
= (−1)
p
i
−1
2
. (7.16)
Astfel,
_
−1
n
_
=
m

i=1
_
−1
p
i
_
αi
= (−1)
α
1
p
1
−1
2
+...+α
m
pm−1
2
. (7.17)
Din descompunerea lui n, obt ¸inem
n = (1 + (p
1
−1))
α
1
(1 + (p
2
−1))
α
2
. . . (1 + (p
m
−1))
α
m
.
Fiecare p
i
−1 fiind un num˘ar par, rezult˘a:
(1 + (p
i
−1))
α
i
≡ 1 +α
i
(p
i
−1) (mod 4),
(1 +α
i
(p
i
−1)) (1 +α
j
(p
j
−1)) ≡ 1 +α
i
(p
i
−1) +α
j
(p
j
−1) (mod 4).
Deci,
n ≡ 1 +α
1
(p
1
−1) +α
2
(p
2
−1) +. . . +α
m
(p
m
−1) (mod 4).
128 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
Atunci,
n −1
2

α
1
(p
1
−1)
2
+
α
2
(p
2
−1)
2
+. . . +
α
m
(p
m
−1)
2
(mod 2) (7.18)
¸si astfel,
_
−1
n
_
= (−1)
n−1
2
.
4) Conform lemei lui Gauss,
_
2
p
i
_
= (−1)
p
2
i
−1
8
, pentru fiecare 1 ≤ i ≤ m.
Atunci,
_
2
n
_
=
m

i=1
_
2
p
i
_
αi
= (−1)
α
1
p
2
1
−1
8
+...+α
m
p
2
m
−1
8
. (7.19)
Ca la subpunctul precedent,
n
2
= (1 + (p
2
1
−1))
α
1
(1 + (p
2
2
−1))
α
2
. . . (1 + (p
2
m
−1))
α
m
.
Cum fiecare p
2
i
−1 ≡ 0 (mod 8), obt ¸inem
(1 + (p
2
i
−1))
α
i
≡ 1 +α
i
(p
2
i
−1) (mod 64),
de unde:
n
2
≡ 1 +α
1
(p
2
1
−1) +α
2
(p
2
2
−1) +. . . +α
m
(p
2
m
−1) (mod 64).
De aici,
n
2
−1
8

α
1
(p
2
1
−1)
8
+
α
2
(p
2
2
−1)
8
+. . . +
α
m
(p
2
m
−1)
8
(mod 8). (7.20)
Din relat ¸iile ( 7.19) ¸si ( 7.20), obt ¸inem relat ¸ia cerut˘a.
Teorem˘a 7.3.2 (Legea de reciprocitate pentru simbolul Jacobi)
Fie m, n dou˘a numere naturale impare, relativ prime. Atunci,
_
n
m
_

_
m
n
_
= (−1)
n−1
2
·
m−1
2
.
Demonstrat ¸ie. Consider˘am descompunerile canonice:
n = p
α
1
1
p
α
2
2
. . . p
α
s
s
¸si m = q
β
1
1
q
β
2
2
. . . q
β
r
r
.
Atunci,
_
n
m
_
=
r

i=1
_
n
q
i
_
β
i
=
r

i=1
s

j=1
_
p
j
q
i
_
α
j
β
i
(7.21)
7.3. SIMBOLUL JACOBI 129
¸si
_
m
n
_
=
s

j=1
_
m
p
j
_
αj
=
s

j=1
r

i=1
_
q
i
p
j
_
αjβi
(7.22)
Astfel,
_
n
m
_

_
m
n
_
=
r

i=1
s

j=1
__
p
j
q
i
_

_
q
i
p
j
__
αjβi
(7.23)
Dar, din teorema 7.2.1,
_
p
j
q
i
_

_
q
i
p
j
_
= (−1)

p
j
−1
2

·(
q
i
−1
2
)
. (7.24)
Deci,
_
n
m
_

_
m
n
_
=
r

i=1
s

j=1
(−1)
αj

p
j
−1
2

βi(
q
i
−1
2
)
=
= (−1)
r

i=1
s

j=1
α
j

p
j
−1
2

β
i(
q
i
−1
2
)
. (7.25)
Din relat ¸ia ( 7.18), obt ¸inem:
s

j=1
α
j
_
p
j
−1
2
_

n −1
2
(mod 2) (7.26)
r

i=1
β
i
_
q
i
−1
2
_

m−1
2
(mod 2). (7.27)
Astfel,
r

i=1
s

j=1
α
j
_
p
j
−1
2
_
β
i
_
q
i
−1
2
_
=
s

j=1
α
j
_
p
j
−1
2
_

r

i=1
β
i
_
q
i
−1
2
_

n −1
2

m−1
2
(mod 2). (7.28)
ˆ
Inlocuind aceast˘a ultim˘a relat ¸ie ˆın ( 7.25), rezult˘a:
_
n
m
_

_
m
n
_
= (−1)
n−1
2
·
m−1
2
.
130 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
Stabilim, ˆın final un algoritm eficient de determinare a simbolurilor
Jacobi.
Fie a, n numere naturale, relativ prime. Presupunem a > n. Not˘am
r
0
= a, r
1
= n. Aplic˘am algoritmul lui Euclid, punˆand ˆın evident ¸˘a
puterea maxim˘a a lui 2 din fiecare rest. Obt ¸inem astfel,
r
0
= r
1
q
2
+ 2
s
1
r
2
(7.29)
r
1
= r
2
q
3
+ 2
s
2
r
3
(7.30)
r
2
= r
3
q
4
+ 2
s
3
r
4
(7.31)
(7.32)
r
n−3
= r
n−2
q
n−1
+ 2
s
n−2
r
n−1
(7.33)
r
n−2
= r
n−1
q
n
+ 2
s
n−1
1 (7.34)
unde pentru 1 ≤ j ≤ n −1, tot ¸i s
j
∈ N, r
j
impari ¸si r
j
< r
j−1
.
De exemplu, dac˘a alegem a = 3027, n = 407, obt ¸inem relat ¸iile:
3027 = 407 7 + 2 89
407 = 89 4 + 2
0
51
89 = 51 1 + 2 19
51 = 19 2 + 2
0
13
19 = 13 1 + 2 3
13 = 3 4 + 2
0
1.
Teorem˘a 7.3.3 Fie a > n numere naturale relativ prime. Atunci, sim-
bolul Jacobi
_
a
n
_
este egal cu:
(−1)
s1
r
2
1
−1
8
+...+sn−1
r
2
n−1
−1
8
+
r
1
−1
2
·
r
2
−1
2
+...+
r
n−2
−1
2
·
r
n−1
−1
2
.
Demonstrat ¸ie. Folosind rezultatele teoremei 7.3.1, obt ¸inem
_
a
n
_
=
_
r
0
r
1
_
=
_
2
s
1
r
2
r
1
_
=
_
2
r
1
_
s
1

_
r
2
r
1
_
= (−1)
s
1
r
2
1
−1
8

_
r
2
r
1
_
.
Din teorema 7.3.2,
_
r
2
r
1
_
= (−1)
r
1
−1
2
·
r
2
−1
2

_
r
1
r
2
_
.
7.3. SIMBOLUL JACOBI 131
Deci,
_
a
n
_
= (−1)
s1
r
2
1
−1
8
+
r
1
−1
2
·
r
2
−1
2

_
r
1
r
2
_
. (7.35)
ˆ
In mod analog, folosind celelalte relat ¸ii din algoritmul lui Euclid pen-
tru 2 ≤ j ≤ n −2, rezult˘a:
_
r
j−1
r
j
_
= (−1)
sj
r
2
j
−1
8
+
r
j
−1
2
·
r
j+1
−1
2

_
r
j
r
j+1
_
. (7.36)
ˆ
Inlocuind relat ¸iile ( 7.36) ˆın ( 7.35) vom obt ¸ine rezultatul dorit.
Pentru exemplul anterior, vom obt ¸ine exponentul lui −1 egal cu:
1
407
2
−1
8
+ 0
89
2
−1
8
+ 1
51
2
−1
8
+ 0
19
2
−1
8
+ 1
13
2
−1
8
+
0
3
2
−1
8
+
407 −1
2

89 −1
2
+
89 −1
2

51 −1
2
+
51 −1
2

19 −1
2
+
19 −1
2

13 −1
2
+
13 −1
2

3 −1
2
= 31369.
Atunci,
_
3027
407
_
= (−1)
31369
= −1.
Algoritm 7.3.1 (Simbolul Jacobi)
INPUT: numerele naturale a, n.
OUTPUT:
_
a
n
_
1. u ←a mod n, v ←n, k ←1.
2. Cˆat timp u > 1 calculeaz˘a:
2.1. Dac˘a u este par, atunci u ←u/2, k ←k (−1)
(v
2
−1)/8
2.1.1. Dac˘a u = v, atunci returneaz˘a (a, n) ,= 1 ¸si
se opre¸ste.
2.2. Dac˘a u > v atunci u ←(u −v)/2, k ←k (−1)
(v
2
−1)/8
2.2.1. u ←(v −u)/2, v ←u,
k ←k (−1)
(u−1)·(v−1)/4
,
k ←k (−1)
(v
2
−1)/8
3. Returneaz˘a k.
132 CAPITOLUL 7. RECIPROCITATE P
˘
ATRATIC
˘
A
Algoritmul poate fi propus ¸si sub forma:
Algoritm 7.3.2
J(a, n)
INPUT: numerele naturale a < n, cu n ≥ 3 impar.
OUTPUT:
_
a
n
_
1. Dac˘a a = 0, atunci returneaz˘a 0 ¸si se opre¸ste.
2.Dac˘a a = 1, returneaz˘a 1 ¸si se opre¸ste.
3. Scrie a = 2
e
a
1
, unde a
1
este impar.
4. Dac˘a e este par, pune s ←1. Altfel, dac˘a n ≡ ±1 (mod 8)
pune s ←1 ¸si dac˘a n ≡ ±3 (mod 8) pune s ←−1.
5. Dac˘a n ≡ 3 (mod 4) ¸si a
1
≡ 3 (mod 4), pune s ←−s.
6. Pune n
1
←n mod a
1
7. Dac˘a a
1
= 1, atunci returneaz˘a s ¸si se opre¸ste;
altfel, returneaz˘a s J(n
1
, a
1
)
Exercit ¸ii propuse
1. Calculat ¸i urm˘atoarele simboluri Legendre:
_
11
37
_
,
_
97
101
_
,
_
31
167
_
,
_
1801
8191
_
¸si simbolurile Jacobi:
_
5
21
_
,
_
27
101
_
,
_
111
1001
_
.
2. Ar˘atat ¸i c˘a:
i) −3 este rest p˘atratic modulo p, cu p num˘ar prim impar, dac˘a ¸si
numai dac˘a p ≡ 1 (mod 3).
ii) 3 este non-rest p˘atratic modulo orice num˘ar prim Mersenne > 3.
3. Ar˘atat ¸i c˘a 5 este rest p˘atratic modulo p, un num˘ar prim impar,
dac˘a ¸si numai dac˘a p ≡ ±1 (mod 20) sau p ≡ ±9 (mod 20).
4. Stabilit ¸i pentru ce valori ale num˘arului prim impar p, −5 nu este
rest p˘atratic modulo p.
5. Calculat ¸i
_
5
F
n
_
¸si
_
7
F
n
_
, unde F
n
este un num˘ar prim Fermat.
CAPITOLUL 8
Criptografie cu cheie
secret˘a
Criptografia
1
este studiul principiilor ¸si tehnicilor prin care informat ¸ia
poate fi ascuns˘a ˆın texte cifrate ¸si mai tˆarziu este dezv˘aluit˘a de persoane
avizate folosind chei secrete (pentru persoane neautorizate este imposibil
sau computat ¸ional imposibil).
Criptanaliza
2
studiaz˘a redobˆandirea informat ¸iei din textul cifrat, f˘ar˘a
a cunoa¸ste cheia.
Criptologia
3
este ¸stiint ¸a ce ˆınglobeaz˘a cele dou˘a domenii mai sus
definite.
Istoria criptografiei ˆıncepe ˆınc˘a de acum 4000 de ani (la egipteni). De
cele mai multe ori, rezultatele acesteia erau folosite ˆın domeniul militar,
diplomatic ¸si guvernamental. Criptografia a fost folosit˘a ca un instru-
ment important ˆın protejarea secretelor ¸si strategiilor nat ¸ionale.
Odat˘a cu dezvoltarea ˆın anii 60 a sistemelor de comunicat ¸ie ¸si a com-
puterelor, apare cerint ¸a de a oferi sectorului privat mijloace de protejare
a informat ¸iei ˆın form˘a digital˘a ¸si de asigurare a serviciilor de securi-
tate. Principiile criptografiei, conceput˘a init ¸ial pentru a secretiza mesaje
scrise, se aplic˘a la fel de bine pentru securizarea fluxului de date ˆıntre
1
Provine din cuvintele grece¸sti kryptos-a ascunde ¸si graphein-a scrie.
2
Provine din cuvintele grece¸sti kryptos-a ascunde ¸si analyein-a dezlega.
3
Provine din cuvintele grece¸sti krypos-a ascunde ¸si logos-cuvˆant.
133
134 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
computere, a comunicat ¸iilor de voce digitale cˆat ¸si la cifrarea de facsimile
¸si a semnalelor de televiziune. De exemplu, majoritatea satelit ¸ilor ci-
freaz˘a ˆın mod curent fluxul de date c˘atre ¸si de la stat ¸iile terestre pentru
a furniza securitate ¸si confident ¸ialitate abonat ¸ilor.
Cˆateva dintre principalele scopuri urm˘arite ˆın criptografie sunt:
1. Confident ¸ialitatea, care presupune p˘astrarea secret˘a a informat ¸iei
fat ¸˘a de tot ¸i cei care nu sunt autorizat ¸i s˘a o cunoasc˘a.
2. Integritatea datelor, realizeaz˘a protejarea datelor la alterare sau
manipulare de c˘atre persoane neautorizate.
Prin manipularea datelor ˆınt ¸elegem procese cum ar fi insert ¸ii, ˆıntˆar-
zieri sau substituiri.
3. Autentificarea, care presupune posibilitatea de identificare a infor-
mat ¸iei ¸si a entit˘at ¸ii (o persoan˘a, un terminal de computer, o carte
de credit).
4. Non-repudierea, care previne negarea unor angajamente sau act ¸iuni
anterioare.
Criptografia trebuie s˘a acopere, ˆın mod corespunz˘ator, aceste patru
direct ¸ii, atˆat ˆın teorie, cˆat ¸si ˆın practic˘a. Ea trebuie s˘a previn˘a ¸si s˘a
detecteze furtul ¸si alte act ¸iuni ilegale, fiind doar una dintre tehnicile de
asigurare a securit˘at ¸ii informat ¸iei.
Pentru ˆınceput, definim urm˘atoarele not ¸iuni:
1. Alfabet de definit ¸ie / care este o mult ¸ime finit˘a. De exemplu,
/ = ¦0, 1¦ se nume¸ste alfabet binar. Trebuie s˘a remarc˘am c˘a orice
alfabet, spre exemplu alfabetul englezesc, poate fi scris ˆın funct ¸ie
de alfabetul binar. Literele vor deveni ¸siruri de cˆate cinci cifre
binare.
2. Spat ¸iul de mesaje / este format din ¸siruri de simboluri ale unui
alfabet de definit ¸ie. Un element al lui / se nume¸ste text de baz˘a.
De exemplu, /poate fi format din ¸siruri binare, un text ˆın englez˘a
sau ˆın alt˘a limb˘a, codul unui computer, etc.
3. Spat ¸iul de text cifrat ( este alc˘atuit din ¸siruri de simboluri ale unui
alfabet de definit ¸ie, care poate fi diferit de /. Un element al lui (
se nume¸ste text cifrat.
135
4. Spat ¸iul cheilor / este o mult ¸ime de ¸siruri (chei ) peste un alfabet.
Pentru fiecare e ∈ /, aplicat ¸ia bijectiv˘a E
e
: /→(, determinat˘a
de e, se nume¸ste funct ¸ie sau transformare de criptare.
ˆ
In mod analog, funct ¸ia bijectiv˘a D
d
: ( → /, determinat˘a de
d ∈ /, poart˘a numele de funct ¸ie sau transformare de decriptare.
5. Procesul (algoritmul) de criptare E este procesul de aplicare a
transform˘arii E
e
lui /. Deci, E
e
(/) = (.
6. Procesul (algoritmul) de decriptare D este procesul de aplicare
a transform˘arii D
d
lui (. Astfel, D
d
(() = /. Subliniem fap-
tul c˘a algoritmii D ¸si E trebuie s˘a aib˘a proprietatea D
d
(() =
D
d
(E
e
(/)) = /.
7. O schem˘a de criptare, sau un cifru, este format˘a dintr-o mult ¸ime
de transform˘ari de criptare ¦E
e
¦ ¸si din mult ¸imea corespunz˘atoare
¦D
d
¦, de transform˘ari de decriptare cu proprietatea c˘a, pentru
fiecare e ∈ /, exist˘a un unic d ∈ / astfel ˆıncˆat D
d
= E
−1
e
. Cheile
e ¸si d cu aceast˘a proprietate se numesc pereche de chei ¸si de multe
ori se noteaz˘a (e, d). Pentru a construi o schem˘a de criptare avem
nevoie de toate not ¸iunile definite anterior.
Criptosistemele pot fi clasificate ˆın:
1. Sisteme criptografice cu cheie secret˘a, numite ¸si criptosisteme si-
metrice.
2. Sisteme criptografice cu cheie public˘a, numite ¸si criptosisteme asi-
metrice.
Criptografia cu cheie secret˘a se ocup˘a de primul tip de criptosisteme.
Un sistem de criptare se nume¸ste simetric
4
dac˘a, din punct de vedere
computat ¸ional, pentru fiecare pereche de chei (e, d) se poate determina
u¸sor d cunoscˆand doar pe e ¸si invers.
De cele mai multe ori, ˆıntr-un sistem cu cheie secret˘a, cheile e ¸si
d coincid. Cheia comun˘a k, numit˘a cheie secret˘a, este folosit˘a atˆat la
criptare cˆat ¸si la decriptare. De aceea aceste sisteme poart˘a numele de
sisteme simetrice.
4
Alt ¸i termeni folosit ¸i ˆın literatura de specialitate pentru aceste sisteme sunt:
criptare tradit ¸ional˘ a, cu cheie unic˘a, cu cheie secret˘a.
136 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
Vom studia cum se pot transmite mesaje ˆıntre dou˘a persoane: ex-
peditorul A, de cele mai multe ori numit Alice ¸si destinatarul B, numit
uzual Bob.
Astfel, Alice aplic˘a funct ¸ia bijectiv˘a E
k
pentru a realiza un text cifrat
prin C = E
k
(M), pentru fiecare M ∈ /, pe care ˆıl trimite lui Bob
printr-un canal nesigur (persoane neautorizate pot citi, schimba, ¸sterge
informat ¸ia). Cheia k trebuie ¸si ea trimis˘a lui Bob, dar printr-un canal
sigur. Bob decripteaz˘a textul cifrat prin transformarea invers˘a, D
k
, ¸si
obt ¸ine D
k
(C) = D
k
(E
k
(M)) = M, pentru C ∈ (, adic˘a reconstituie
textul init ¸ial.
8.1 Cifr˘ari flux (binar)
ˆ
In cifr˘arile flux, unit˘at ¸ile de mesaj sunt cifre binare ¸si cheia este produs˘a
de obicei de un generator aleator binar. Textul de baz˘a este criptat bit
cu bit. Cheia este ˆınc˘arcat˘a ˆıntr-un generator aleator de bit ¸i pentru a
crea un ¸sir lung de semnale binare. Cheia ¸sir k este aplicat˘a apoi textului
de baz˘a M, (de obicei se face adunare modulo 2) pentru a obt ¸ine textul
cifrat C. De exemplu:
M 0 1 1 0 0 0 1 1 1 1 1 1 1 . . .
k 1 0 0 1 1 0 0 1 0 0 0 1 0 . . .
C 1 1 1 1 1 0 1 0 1 1 1 0 1 . . .
Pentru decriptare, se folose¸ste aceea¸si cheie.
8.2 Criptosisteme caracter
Primele sisteme de criptare erau bazate pe transformarea fiec˘arei litere
din textul init ¸ial ˆıntr-o liter˘a diferit˘a pentru a obt ¸ine textul cifrat. Astfel
de cifr˘ari, ˆın care unitatea de mesaj este format˘a dintr-o singur˘a liter˘a,
poart˘a numele de sisteme de criptare caracter, substitut ¸ie sau mono-
grafice.
Vom considera ˆın toate exemplele c˘a / este alfabetul limbii engleze.
Cum acesta este format din 26 de litere, vom atribui fiec˘areia un echiva-
8.2. CRIPTOSISTEME CARACTER 137
lent numeric de la 0 la 25 dup˘a cum urmeaz˘a:
A B C D E F G H I J K L M
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡
0 1 2 3 4 5 6 7 8 9 10 11 12
N O P Q R S T U V W X Y Z
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡
13 14 15 16 17 18 19 20 21 22 23 24 25
Din considerente istorice, alegem ca prim sistem caracter, un sistem
de criptare care se presupune c˘a a fost inventat ¸si folosit de Iulius Cezar.
Aici, cheia este k = 3 ¸si transformarea de criptare este
C = E
3
(M) ≡ M + 3 (mod 26), 0 ≤ M ≤ 25.
Cu alte cuvinte, fiecare liter˘a este deplasat˘a la dreapta cu trei pozit ¸ii fat ¸˘a
de pozit ¸ia init ¸ial˘a din alfabet. De exemplu, A devine D, X se transform˘a
ˆın A, Y ˆın B, Z ˆın C.
Presupunem c˘a textul init ¸ial este:
THIS MESSAGE IS TOP SECRET
Pentru ˆınceput, el este ˆımp˘art ¸it ˆın blocuri de 5 litere pentru a preveni
recunoa¸sterea unor cuvinte particulare
THISM ESSAG EISTO PSECR ET
¸si fiecare liter˘a este ˆınlocuit˘a cu echivalentul s˘au numeric
19 7 8 18 12 4 18 18 0 6 4 8 18 19 14 15 18 4 2 17 4 19.
Fiecare echivalent numeric este transformat dup˘a regula precizat˘a:
22 10 11 21 15 7 21 21 3 9 7 11 21 22 17 18 21 7 5 20 7 22
¸si apoi se ˆınlocuie¸ste cu litera corespunz˘atoare. Textul cifrat rezul-
tat este:
WKLV P HV V DJ HLV WR SV HFU HW.
138 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
Pentru decifrare, se folose¸ste transformarea
M = D
3
(C) ≡ C −3 (mod 26), 0 ≤ C ≤ 25.
Acest cifru face parte din categoria criptosistemelor de deplasare.
ˆ
In
acest caz, cheia este 0 ≤ k ≤ 25, funct ¸ia de criptare este
E
k
(M) ≡ M +k (mod 26), 0 ≤ M ≤ 25,
iar transformarea de decriptare este dat˘a de
D
k
(C) ≡ C −k (mod 26), 0 ≤ C ≤ 25.
Dac˘a vom generaliza, obt ¸inem criptosistemele afine unde cheia este
perechea (a, b) cu 0 ≤ a, b ≤ 25 iar a este relativ prim cu 26. Observ˘am
c˘a putem construi 12 26 = 312 astfel de chei. Transformarea de criptare
este dat˘a de funct ¸ia
E
(a,b)
(M) ≡ aM +b (mod 26), 0 ≤ M ≤ 25
iar cea de decriptare este
D
(a,b)
(C) ≡ a(C −b) (mod 26), 0 ≤ C ≤ 25.
De exemplu, dac˘a aplic˘am o transformare afin˘a textului SECURITY
folosind cheia (7, 10) obt ¸inem: GMY UZONW dup˘a cum se remarc˘a mai
jos:
S E C U R I T Y
18 4 2 20 17 8 19 24
6 12 24 20 25 14 13 22
G M Y U Z O N W
Pentru criptanaliza sistemelor caracter trebuie f˘acut˘a o analiz˘a a
frecvent ¸ei de aparit ¸ie a literelor ˆın textul cifrat. Aceasta este com-
parat˘a cu frecvent ¸a literelor dintr-un text obi¸snuit.
ˆ
In limba englez˘a,
cele mai frecvente litere dintr-un text sunt E, T, R, N, I, O, A (pentru
limba romˆan˘a, ele ar fi I, E, A, B). Astfel, punˆand ˆın corespondent ¸˘a cea
8.3. CRIPTOSISTEME BLOC 139
mai des ˆıntˆalnit˘a liter˘a din textul cifrat (de preferint ¸˘a mai lung, pen-
tru a realiza o cˆat mai corect˘a corespondent ¸˘a ˆıntre literele cu frecvent ¸˘a
maxim˘a) cu litera care apare de cele mai multe ori ˆıntr-un text arbitrar,
se pot dobˆandi informat ¸ii legate de cheia de criptare.
De exemplu, consider˘am dou˘a situat ¸ii:
1. Presupunem c˘a un text, scris ˆın limba englez˘a, a fost criptat
printr-un sistem de deplasare. Observ˘am c˘a litera care apare cel mai
des ˆın textul cifrat este P. Atunci, putem presupune c˘a ea corespunde
literei E, litera cu cea mai mare frecvent ¸˘a ˆıntr-un text scris ˆın limba
englez˘a. T¸ inˆand cont de echivalent ¸ii numerici corespunz˘atori acestor
litere, obt ¸inem relat ¸ia 15 ≡ 4 + k (mod 26), de unde k = 11 este o
posibil˘a cheie de cifrare.
Cum exist˘a doar 26 de transform˘ari de deplasare, inclusiv cea iden-
tic˘a, determinarea cheii nu presupune un volum foarte mare de munc˘a.
ˆ
In concluzie, acest sistem este u¸sor de criptanalizat.
2. Presupunem acum c˘a un text, scris ˆın limba englez˘a, a fost crip-
tat printr-o transformare afin˘a. Analizˆand frecvent ¸a literelor din textul
cifrat, vedem c˘a cele mai des folosite litere sunt L¸si U. Atunci, putem pre-
supune c˘a L este ˆın corespondent ¸˘a cu E iar U corespunde lui T. Rezult˘a
relat ¸iile 11 ≡ 4a + b (mod 26) ¸si 20 ≡ 19a + b (mod 26). Rezolvˆand sis-
temul de congruent ¸e, o posibil˘a cheie este (11, 19). Deci, transformarea
de criptare ar fi E
(11,19)
(M) ≡ 11M + 19 (mod 26). Pentru decriptare,
se folose¸ste D
(11,19)
(C) ≡ 19(C−19) ≡ 19C+3 (mod 26) unde am t ¸inut
cont c˘a a ≡ 19 (mod 26).
8.3 Criptosisteme bloc
Pentru a evita faptul c˘a primele criptosisteme prezentate sunt mult prea
vulnerabile, s-a preferat ˆımp˘art ¸irea textului de baz˘a ˆın blocuri de o anu-
mit˘a lungime ¸si transformarea acestora ˆın blocuri cu aceea¸si lungime.
Aceste sisteme se numesc sisteme bloc
5
sau poligrafice.
Studiem mai ˆıntˆai cazul cifrului diagrafic pe un exemplu concret.
Aici blocurile sunt formate din dou˘a cifre. Consider˘am textul init ¸ial
THE GOLD IS BURIED IN ORONO.
5
Au fost prezentate de Hill, ˆın anul 1930.
140 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
Mai ˆıntˆ ai, textul init ¸ial se ˆımparte ˆın blocuri de 2 litere. Dac˘a
num˘arul de litere este impar, se completeaz˘a ultimul bloc cu o liter˘a,
de exemplu, X. Obt ¸inem pentru exemplul nostru,
TH EG OL DI SB UR IE DI NO RO NO.
Fiecare liter˘a din bloc este ˆınlocuit˘a cu echivalentul s˘au numeric:
19 7 4 6 14 11 3 8 18 1 20 17 8 4 3 8 13 14 17 14 13 14.
Fiecare bloc de numere M
1
M
2
din textul init ¸ial esteˆınlocuit cu blocul
C
1
C
2
dup˘a transformarea:
C
1
≡ 5M
1
+ 17M
2
(mod 26)
C
2
≡ 4M
1
+ 15M
2
(mod 26).
Acest criptosistem este mult mai u¸sor de descris matriceal, ¸si anume:
_
C
1
C
2
_

_
5 17
4 15
_

_
M
1
M
2
_
(mod 26).
Se observ˘a c˘a matricea care intervine are invers modulo 26, matricea
invers˘a intervenind ˆın procesul de decriptare.
Trecem acum la cazul general, ˆın care blocurile ˆın care este ˆımp˘art ¸it
textul init ¸ial cont ¸in n litere. Procesul de cifrare se realizeaz˘a la fel cu
cazul anterior, numai c˘a, aici, unitatea este un bloc M =
_
_
_
M
1
.
.
.
M
n
_
_
_ cu
0 ≤ M
i
≤ 25, pentru 0 ≤ i ≤ n.
ˆ
In acest caz cheia este A ∈ M
n
(Z), cu
(det A, 26) = 1, deci matricea A are invers modulo 26. Transformarea de
criptare este E
A
(M) ≡ AM (mod 26) iar pentru decriptare se folose¸ste
funct ¸ia D
A
(C) ≡ AC (mod 26), C =
_
_
_
C
1
.
.
.
C
n
_
_
_, 0 ≤ C
i
≤ 25.
De exemplu, s˘a vedem cum cript˘am mesajul
STOP PAY MENT
8.3. CRIPTOSISTEME BLOC 141
folosind un astfel de algoritm.
Alegem n = 3 iar cheia A =
_
_
11 2 19
5 23 25
20 7 1
_
_
. A este corect aleas˘a
pentru c˘a, din det A ≡ 5 (mod 26), matricea este inversabil˘a modulo 26.
Textul init ¸ial este ˆımp˘art ¸it ˆın blocuri de trei litere, ad˘augˆand pentru
blocul final un X pentru ca ¸si acest bloc s˘a aib˘a num˘arul corespunz˘ator
de litere:
STO PPA Y ME NTX.
ˆ
Inlocuim literele cu echivalent ¸ii lor numerici
18 19 14 15 15 0 24 12 4 13 19 23
¸si aplic˘am fiec˘arei unit˘at ¸i de mesaj transformarea de criptare. De exem-
plu, pentru primul bloc, calcul˘am
_
_
C
1
C
2
C
3
_
_

_
_
11 2 19
5 23 25
20 7 1
_
_

_
_
18
19
14
_
_

_
_
8
19
13
_
_
(mod 26).
Pentru obt ¸inerea textului cifrat, ˆın ¸sirul rezultat
8 19 13 13 4 15 0 2 22 20 11 0
ˆınlocuim echivalent ¸ii numerici cu litere corespunz˘atoare:
ITN NEP ACW ULA.
La decriptare, vom folosi matricea invers˘a modulo 26 a lui A,
A =
_
_
6 −5 11
−5 −1 −10
−7 3 7
_
_
.
Acest tip de criptosistem este ¸si el vulnerabil la frecvent ¸a blocurilor
de litere. De exemplu, ˆın limba englez˘a, cele mai frecvente perechi de
litere dintr-un text sunt TH ¸si HE iar THE, AND ¸si THA sunt cele
mai des ˆıntˆalnite blocuri de trei litere. F˘acˆand analiza corespunz˘atoare,
putem g˘asi cheia.
142 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
De exemplu, dac˘a ˆıntr-un text cifrat, scris ˆın limba englez˘a cele mai
frecvente grupe de dou˘a litere sunt KX ¸si V Z, presupunˆand c˘a algorit-
mul folosit este de tipul celui prezentat, putem pune ˆın corespondent ¸˘a
KX cu TH iar V Z cu HE.
ˆ
Inlocuind literele cu echivalent ¸ii lor nu-
merici, din relat ¸ia
_
10 21
23 25
_
≡ A
_
19 7
7 4
_
(mod 26) rezult˘a
A =
_
10 21
23 25
_

_
4 19
19 19
_

_
23 17
21 2
_
(mod 26) ca posibil˘a
cheie.
8.4 Criptare exponent ¸ial˘a
Acest criptosistem a fost inventat de Pohlig ¸si Helmann ˆın anul 1976.
Se alege p un num˘ar prim, ¸si un num˘ar natural e, prim cu p−1, care
este cheia de criptare. Fiecare unitate de mesaj, ˆın cazul nostru o liter˘a,
se ˆınlocuie¸ste cu echivalent ¸i numerici alc˘atuit ¸i tot ¸i din dou˘a cifre. Astfel,
de exemplu echivalentul lui A este 00, C va avea echivalentul numeric
egal cu 02, etc.
Mesajul se ˆımparte ˆın blocuri de 2m cifre zecimale unde 2m este
cel mai mare num˘ar par cu proprietatea c˘a toate numerele de 2m cifre
alc˘atuite din echivalent ¸ii numerici ai celor m litere sunt mai mici decˆat
p. Astfel, dac˘a p = 2633, din 2525 < p < 252525 rezult˘a m = 2.
Fiec˘arui bloc M cu 2m cifre zecimale i se aplic˘a transformarea de
criptare C = E
e
(M) ≡ M
e
(mod p), deci fiecare bloc din textul cifrat
va fi un num˘ar mai mic decˆat p. De exemplu, consider˘am mesajul
THIS IS AN EXAMPLE OF AN EXPONENTIATION CIPHER
pe care vrem s˘a-l cript˘am folosind un algoritm exponent ¸ial.
Alegem p = 2633 ¸si e = 29. Transform˘am literele ˆın echivalent ¸i numerici
¸si form˘am blocuri de cˆate 4 cifre:
1907 0818 0818 0013 0423 0012 1511 0414 0500 1304
2315 1413 0413 1908 0019 0814 1302 0815 0704 1723
ˆ
In acest caz, am ad˘augat la finalul ultimului bloc un X pentru a avea
aceea¸si dimensiune.
8.4. CRIPTARE EXPONENT¸ IAL
˘
A 143
Aplic˘am transformarea C ≡ M
29
(mod 2633) pentru fiecare bloc ˆın
parte, de exemplu C ≡ 1907
29
≡ 2199 (mod 2633), ¸si obt ¸inem:
2199 1745 1745 1206 2437 2425 1729 1619 0935 0960
1072 1541 1701 1553 0735 2064 1351 1704 1841 1459
care constituie mesajul criptat. Remarc˘am c˘a, fat ¸˘a de celelalte criptosis-
teme prezentate, ˆın forma criptat˘a mesajul nu mai poate fi transformat
ˆın litere.
Pentru decriptare, se folose¸ste cheia d, unde d este inversul modulo
p − 1 al cheii e. Din e d ≡ 1 (mod p − 1), rezult˘a e d = k(p − 1) + 1,
cu k, num˘ar natural. Pentru a verifica dac˘a cheia d este cea corect˘a,
s˘a ar˘at˘am c˘a transformarea D
d
este inversa transform˘arii E
e
. Pentru un
bloc C, arbitrar ales, folosind mica teorem˘a a lui Fermat, obt ¸inem:
D
d
(C) ≡ C
d
≡ D
d
(E
e
(M)) ≡ M
e·d
≡ M
k(p−1)+1
≡ M
_
M
p−1
_
k

M (mod p).
Pentru exemplul anterior, obt ¸inem d ≡ −363 ≡ 2269 (mod 2632)
rezolvˆand ecuat ¸ia 29d − 2632k = 1 cu ajutorul algoritmului extins al
lui Euclid. Pentru a decripta mesajul secret, vom calcula pentru fiecare
bloc 0 ≤ C ≤ 2633, M ≡ C
2269
(mod 2633) ¸si, apoi, fiecare echivalent
numeric de dou˘a cifre va fi ˆınlocuit cu litera corespunz˘atoare, reg˘asind
mesajul init ¸ial.
Procesul de criptare ¸si cel de decriptare pentru criptosistemul de
exponent ¸iere modular˘a se face rapid, folosind algoritmul de ridicare
repetat˘a la p˘atrat ¸si reducere modulo p, respectiv algoritmul lui Euclid
extins.
ˆ
In general, criptanaliza nu mai poate fi f˘acut˘a rapid. Presupunem
c˘a se ¸stie num˘arul prim p folosit ¸si s-a stabilit c˘a blocul C
0
corespunde
blocului M
0
, adic˘a C
0
≡ M
e
0
(mod p). Atunci, avem de rezolvat aceast˘a
congruent ¸˘a pentru a afla cheia e (conform teoremei 6.3.1, congruent ¸a are
solut ¸ie unic˘a). e este atunci logaritmul lui C
0
ˆın baza M
0
modulo p. Vom
discuta despre algoritmii folosit ¸i pentru calculul logaritmului discret ˆın
capitolul 12. Oricum, ace¸sti algoritmi, pentru p convenabil ales, sunt
foarte lent ¸i. De obicei, se aleg numere prime p cu proprietatea c˘a p −1
nu are numai factori primi mici: de exemplu, p = 2q + 1, num˘ar prim
unde q este ¸si el un num˘ar prim mare.
144 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
Criptosistemele exponent ¸iale pot fi utilizate ¸si pentru a stabili chei
comune, chei ce pot fi folosite de dou˘a sau mai multe persoane. Pentru
aceasta, se alege p, un num˘ar prim mare ¸si un ˆıntreg a cu (a, p) = 1.
Consider˘am cazul a dou˘a persoane.
Fiecare alege o cheie e
i
, cu (e
i
, p−1) = 1, i ∈ ¦1, 2¦. Pentru a determina
cheia comun˘a, Alice trimite lui Bob x ≡ a
e
1
(mod p), 1 ≤ x ≤ p − 1.
Bob g˘ase¸ste cheia comun˘a k calculˆand k ≡ x
e
2
≡ a
e
1
e
2
(mod p), k < p.
Analog, Bob trimite y ≡ a
e2
(mod p), y < p lui Alice care afl˘a cheia
comun˘a prin k ≡ y
e1
≡ a
e1e2
(mod p).
8.5 DES
F˘ar˘a a intra ˆın am˘anunte, prezent˘am cˆateva informat ¸ii generale despre
Data Encryption Standard (DES). El este cel mai r˘aspˆandit sistem crip-
tografic cu cheie secret˘a folosit ˆın prezent, atˆat de guverne cˆat ¸si de com-
panii particulare. DES a fost proiectat de IBM ¸si aprobat ˆın anul 1977
de U.S. National Bureau of Standards (NBS) care acum se nume¸ste U.S.
National Institute of Standards and Technology (NIST). Acest standard
(algoritm) a fost publicat prima dat˘a ˆın anul 1977 (FIPS 46- Federal
Information Proccesing Standard 46) ¸si este rev˘azut la fiecare 5 ani.
Standardul este public ¸si toate caracteristicile sale sunt fixate. Al-
goritmul folose¸ste transform˘ari de transpozit ¸ie, substitut ¸ie ¸si operat ¸ii
neliniare. Ele se aplic˘a ˆın 16 iterat ¸ii fiec˘arui bloc al unui mesaj. Mesajul
se ˆımparte ˆın blocuri de 64 bit ¸i. Cheia secret˘a folosit˘a este format˘a din
56 bit ¸i ale¸si dintr-o cheie cu 64 bit ¸i. Fiecare unitate de mesaj M de 64
bit ¸i este transformat˘a ˆıntr-o unitate de aceea¸si dimensiune C a textului
cifrat, dup˘a cum urmeaz˘a:
Se aplic˘a la ˆınceput o permutare de bit ¸i, M devenind M

. Aceast˘a
permutare nu are o semnificat ¸ie criptografic˘a aparent˘a.
Apoi, DES ˆımparte M

ˆın jum˘atate obt ¸inˆand L
0
, (jum˘atatea din
stˆanga) ¸si R
0
, cealalt˘a jum˘atate. Fiecare au deci, 32 de bit ¸i.
ˆ
In a treia etap˘a, DES execut˘a operat ¸iile urm˘atoare de 16 ori, pentru
i ∈ ¦1, 2, . . . , 16¦:
_
L
i
= R
i−1
,
R
i
= L
i−1
⊕f(R
i−1
, k
i
),
8.5. DES 145
unde ⊕ este operatorul sau exhaustiv, iar f este o funct ¸ie care transform˘a
o jum˘atate dreapt˘a de 32 bit ¸i cu ajutorul unei chei k
i
, de fiecare dat˘a
diferit˘a, pentru a rezulta tot un bloc de 32 bit ¸i.
ˆ
In final, textul pre-cifrat C

= (R
16
, L
16
) este permutat cu inversa
permut˘ arii init ¸iale pentru a obt ¸ine textul cifrat C.
Pentru decriptare, algoritmul este parcurs ˆın sens invers.
Toate aceste vaste act ¸iuni binare pot fiˆıncorporate ˆıntr-un singur mi-
crocip construit special ˆın acest scop. Astfel, DES se poate implementa
ˆıntr-un mod foarte eficient.
Deoarece s-a ar˘atat c˘a o criptanaliz˘a a acestui sistem poate fi reali-
zat˘a relativ u¸sor, se prefer˘a sistemul Triple DES (TDES) care presupune
criptare multipl˘a. Astfel, mesajului i se aplic˘a de trei ori cˆate un DES
diferit. Dac˘a E
k
, D
k
reprezint˘a transform˘arile de criptare ¸si decriptare
pentru un DES cu cheia k, pentru criptarea mesajului M cu ajutorul
lui TDES, transformarea este dat˘a de C = E
k
3
(D
k
2
(E
k
1
(M))). Pentru
decriptare, aplic˘am M = D
k1
(E
k2
(D
k3
(C))).
Pentru mai multe informat ¸ii, cei interesat ¸i pot consulta [25].
Exercit ¸ii propuse
Consider˘am c˘a, pentru toate exercit ¸iile urm˘atoare, alfabetul este cel
al limbii engleze, format din 26 de litere.
1. Decriptat ¸i textul cifrat RTOLK TOIK, ¸stiind c˘a a fost criptat
folosind transformarea afin˘a C ≡ 3M + 24 (mod 26).
2. Dac˘a cea mai des folosit˘a liter˘a dintr-un text lung cifrat este Q ¸si
presupunem c˘a pentru criptarea mesajului init ¸ial s-a folosit o transfor-
mare de deplasare, aflat ¸i valoarea plauzibil˘a a cheii de criptare.
3. Folosind o transformare afin˘a ¸si cheia de criptare (a, b) = (13, 9),
criptat ¸i textul HELP ME.
4. Presupunem c˘a studiem un text lung cifrat, criptat cu ajutorul
unei transform˘ari afine. Dac˘a literele Y ¸si V, ˆın aceast˘a ordine, prezint˘a
cea mai mare frecvent ¸˘a ˆın text, g˘asit ¸i o posibil˘a valoare a cheii de
criptare.
5. Presupunem c˘a un text a fost criptat folosind un cifru diagrafic.
Perechile de litere care apar cel mai des ˆın textul cifrat sunt KH ¸si XW.
Stabilit ¸i o posibil˘a matrice de criptare, folosit˘a ˆın aceast˘a situat ¸ie.
146 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET
˘
A
6. Determinat ¸i cifrul produs, obt ¸inut prin folosirea transform˘arii C ≡
17M+3 (mod 26) urmat˘a apoi de transformarea C ≡ 5M+13 (mod 26).
7. Cˆate perechi de litere r˘amˆan neschimbate dac˘a criptarea mesajului
se face folosind transformarea:
_
C
1
≡ 7M
1
+ 17M
2
(mod 26)
C
2
≡ M
1
+ 6M
2
(mod 26) ?
8. Presupunem c˘a realiz˘am produsul unui cifru de tip Hill cu blocuri
de lungime n cu un cifru de acela¸si tip, dar pentru blocuri de lungime
m. Ar˘atat ¸i c˘a cifrul produs este tot un cifru Hill cu blocuri de lungime
[m, n].
9. Folosind o criptare exponent ¸ial˘a cu p = 101, e = 3 criptat ¸i mesajul
WE ARE THE CHAMPIONS.
10. Textul 1213 0902 0539 1208 1234 1103 1374 este obt ¸inut printr-o
criptare exponent ¸ial˘a unde p = 31 ¸si e = 11. Determinat ¸i textul init ¸ial.
11. Mesajul 04 19 19 11 04 24 09 15 15 este obt ¸inut printr-o criptare
exponent ¸ial˘a. Se presupune c˘a se cunoa¸ste p = 29 ¸si faptul c˘a blocul
24 corespunde literei U din mesajul de baz˘a. Stabilit ¸i care este mesajul
init ¸ial.
CAPITOLUL 9
Criptografie cu cheie
public˘a
ˆ
In criptarea tradit ¸ional˘a, cheile de criptare ¸si decriptare trebuie p˘astrate
secrete. Cum ˆın trecut criptografia era folosit˘a cel mai des ˆın scopuri
militare sau diplomatice, exista de fiecare dat˘a un grup restrˆans, bine
definit, de utilizatori care puteau u¸sor ˆımp˘art ¸i ¸si distribui periodic cheile.
Generarea, transmiterea ¸si stocarea acestor chei se nume¸ste managemen-
tul cheilor. Criptarea cu cheie secret˘a are deseori probleme ˆın a oferi o
gestionare securizat˘a de chei, mai ales pentru sisteme deschise, cu un
mare num˘ar de utilizatori.
ˆ
In prezent, aplicat ¸iile criptografiei s-au extins ¸si includ multe alte
domenii ˆın care sistemele de comunicat ¸ii joac˘a un rol esent ¸ial (colectarea
¸si stocarea de informat ¸ii confident ¸iale, tranzact ¸ii financiare electronice).
De multe ori exist˘a o ret ¸ea mare de utilizatori ˆın care un grup restrˆans
trebuie s˘a p˘astreze secretul comunicat ¸iei atˆat fat ¸˘a de ceilalt ¸i din ret ¸ea,
cˆat ¸si fat ¸˘a de persoane din afar˘a. La fel, este posibil ca ˆın urma unei
comunic˘ari avute, unul dintre parteneri trebuie s˘a transmit˘a o parte a
informat ¸iei secrete unei tert ¸e persoane.
ˆ
In loc s˘a rezolve problema managementului de chei, Whitfield Diffie
¸si Martin Hellman au introdus conceptul de criptografie cu cheie public˘a
ˆın anul 1976 ˆın lucrarea New Directions in Cryptography. Astfel, ei
furnizeaz˘a o metod˘a nou˘a, ingenioas˘a, pentru schimbul de chei la care
147
148 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
securitatea se bazeaz˘a pe imposibilitatea de a rezolva problema loga-
ritmilor discret ¸i. Chiar dac˘a cei doi nu au realizat la acel moment, ˆın
mod practic, un criptosistem cu cheie public˘a, ideea a generat un interes
deosebit ¸si o activitate intens˘a ˆın domeniu.
ˆ
In anul 1977, Rivest, Shamir
¸si Adleman au descoperit prima schem˘a practic˘a de criptare cu cheie
public˘a ¸si de semn˘atur˘a, RSA, bazat˘a tot pe o problem˘a dificil˘a din
punct de vedere computat ¸ional, problema factoriz˘arii numerelor mari.
Cu toate c˘a anii 80 au adus noi metode de factorizare, acestea nu au
sl˘abit securitatea criptosistemului RSA. O alt˘a clas˘a de scheme practice
cu cheie public˘a, bazat˘a pe problema logaritmului discret, este g˘asit˘a de
ElGamal ˆın anul 1985.
Criptosistemele cu cheie public˘a au dou˘a utiliz˘ari principale: criptarea
¸si autentificarea (semn˘atura digital˘a). Fiecare persoan˘a prime¸ste o pere-
che de chei format˘a dintr-o cheie public˘a care este f˘acut˘a cunoscut˘a ¸si
o cheie privat˘a care este p˘astrat˘a secret˘a. Astfel, necesitatea ˆımp˘art ¸irii
informat ¸iei secrete de c˘atre dou˘a persoane care comunic˘a este eliminat˘a.
Toate comunicat ¸iile implic˘a doar cheile publice; nici o cheie privat˘a nu se
transmite sau se ˆımparte cu cineva. Deci, nu mai este nevoie s˘a folosim
un canal sigur de comunicat ¸ie. Singura cerint ¸˘a este ca aceste chei publice
s˘a fie asociate cu utilizatorii lor ˆıntr-un mod autentificat (de ˆıncredere).
Oricine poate trimite un mesaj confident ¸ial, dar mesajul poate fi decrip-
tat cu o cheie privat˘a, care este ˆın posesia unic˘a a destinatarului dorit.
Astfel, cu ajutorul cript˘arii cu cheie public˘a, este posibil s˘a se realizeze
o comunicat ¸ie secret˘a ˆıntre dou˘a persoane f˘ar˘a ca acestea s˘a aib˘a un
contact init ¸ial, f˘ar˘a s˘a stabileasc˘a dac˘a au ˆıncredere unul ˆın cel˘alalt.
ˆ
In criptosistemele cu cheie public˘a, cheia privat˘a este mereu legat˘a
matematic de cheia public˘a. De aceea, este ˆıntotdeauna posibil s˘a ataci
un sistem cu cheie public˘a dobˆandind cheia privat˘a din cheia public˘a.
ˆ
In mod natural, pentru a putea s˘a ap˘ar˘am sistemul, trebuie s˘a facem
ca problema obt ¸inerii cheii private s˘a fie cˆat mai dificil˘a posibil. Astfel,
criptosistemele cu cheie public˘a se bazeaz˘a pe probleme care, din anumite
puncte de vedere sunt greu de rezolvat. Dificultatea se refer˘a mai mult la
cerint ¸ele computat ¸ionale necesare g˘asirii unei solut ¸ii, decˆat la conceperea
problemei. Aceste probleme se numesc probleme dificile.
Procesul de criptare se realizeaz˘a sub urm˘atoarea form˘a, indiferent de
criptosistemul folosit: Alice trimite lui Bob un mesaj secret, criptˆandu-l
cu cheia public˘a a lui Bob. Acesta folose¸ste cheia sa privat˘a pentru a
decripta mesajul primit ¸si ˆıl cite¸ste.
149
Pentru a semna un mesaj, Alice realizeaz˘a un calcul ce folose¸ste cheia
ei privat˘a ¸si mesajul. Rezultatul este numit semn˘atur˘a digital˘a ¸si se
ata¸seaz˘a mesajului. Bob, pentru a verifica semn˘atura, efectueaz˘a un
calcul ce implic˘a mesajul, semn˘atura ¸si cheia public˘a a lui Alice. Dac˘a
rezultatul este corect conform cu o relat ¸ie matematic˘a simpl˘a, prescris˘a,
semn˘atura este cea original˘a.
ˆ
In caz contrar, semn˘atura este fals˘a sau
mesajul a fost alterat.
Cele mai mari avantaje ale cript˘arii cu cheie public˘a sunt cre¸sterea
securit˘at ¸ii ¸si posibilitatea de a furniza semn˘aturi digitale care nu pot
fi repudiate. Un mare dezavantaj al ei este viteza, multe sisteme cu
cheie secret˘a fiind mult mai rapide decˆat cele cu cheie public˘a. Oricum,
criptarea cu cheie public˘a nu are rolul de a ˆınlocui criptarea cu cheie
secret˘a, ci de a m˘ari securitatea acesteia. Ele pot fi folosite ¸si ˆımpreun˘a,
un astfel de protocol numindu-se criptosistem hibrid.
ˆ
In unele cazuri,
criptarea cu cheie public˘a nu este necesar˘a, fiind suficient˘a criptarea cu
cheie secret˘a. De exemplu, sunt situat ¸ii ˆın care utilizatorii se ˆıntˆalnesc ˆın
particular sau o singur˘a autoritate cunoa¸ste ¸si administreaz˘a toate cheile,
ca de exemplu un sistem bancar ˆınchis. Cum acesta cunoa¸ste deja toate
cheile, nu mai are rost ca unele s˘a fie publice ¸si altele secrete. Dar,
acest ultim caz poate deveni impracticabil dac˘a num˘arul utilizatorilor
cre¸ste; astfel de limit˘ari nu sunt necesare ˆın criptarea cu cheie public˘a,
care se potrive¸ste cel mai bine unui mediu deschis, cu un mare num˘ar
de utilizatori.
G˘asirea de noi criptosisteme cu cheie public˘a ¸si ˆımbun˘at˘at ¸irea meca-
nismelor criptografice existente continu˘a ˆıntr-un ritm alert.
150 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
9.1 RSA
Criptosistemul RSA a fost realizat de Ronald Rivest
1
, Adi Shamir
2
¸si
Leonard Adleman
3
, ˆın anul 1977. El este un criptosistem cu cheie public˘a
care realizeaz˘a atˆat criptare de mesaje, cˆat ¸si autentificare (semn˘atur˘a
digital˘a).
Algoritmul RSAfunct ¸ioneaz˘a astfel: se aleg dou˘a numere prime mari,
p ¸si q ¸si se calculeaz˘a n = pq, numit modul. Se alege e, e < n ¸si prim
cu (p −1)(q −1) = φ(n). Atunci e are invers modulo φ(n). Fie d acesta.
e poart˘a numele de exponent public iar d se nume¸ste exponent privat.
Cheia public˘a este perechea (n, e) iar cheia privat˘a este (n, d). Factorii
p ¸si q pot fi distru¸si sau p˘astrat ¸i cu cheia secret˘a.
Numerele folosite ca modul n = pq se numesc numere RSA. Ele sunt
listate ˆın Factoring Challenge of RSA Security
4
¸si sunt alese pentru
proprietarea de a fi greu de factorizat. Aceste numere au fost denumite
la ˆınceput dup˘a num˘arul de cifre zecimale pe care le au. De exemplu,
RSA − 100 este un num˘ar RSA cu 100 de cifre zecimale. Mai tˆarziu,
s-a trecut la indicarea numerelor ˆın funct ¸ie de scrierea lor binar˘a. De
exemplu, RSA−576 are 576 de cifre binare, adic˘a 174 de cifre zecimale.
De obicei, numerele prime p ¸si q sunt alese astfel ˆıncˆat p ±1 ¸si q ±1
sunt divizibile cu numere prime mari, altfel exist˘a metode rapide de
factorizare, ca de exemplu, metoda Pollard rho (vezi 11.4). Ele se pot
genera aleator. De exemplu, se poate porni de la un num˘ar aleator mare
m. Dac˘a el este par, se alege m + 1. Cu ajutorul testului probabilistic
1
Profesor de inginerie electronic˘a ¸si informatic˘a la Institutul de Tehnologie Mas-
sachussets (MIT), conduc˘atorul laboratorului Cryptography and Information Security
Group. A fondat RSA Data Security.
2
Profesor la Departamentul de Matematici Aplicate ¸si Informatic˘a la Institutul
de S¸tiinte Weizmann, Israel. A studiat diferite tipuri de atacuri pe criptosisteme
diferite, cum ar fi criptosistemul rucsac, scheme ¸si tehnici criptografice, criptanaliz˘a
diferent ¸ial˘a.
3
Coleg cu Rivest la MIT. El a reu¸sit s˘a sparg˘a primele 42 de criptosisteme realizate
de Rivest ¸si Shamir. Doar al 43-lea a rezistat ¸si a fost considerat optim. Acum
este profesor la Departamentul de Informatic˘a al Universit˘at ¸ii California de Sud.
Activitatea sa principal˘a se desf˘a¸soar˘ a ˆın domeniul informaticii teoretice.
4
RSA Security Data a ˆınceput s˘a sponsorizeze ˆın martie 1991 RSA Factoring
Challenge pentru a ˆıncuraja cercetarea ˆın teoria computat ¸ional˘a a numerelor ¸si ˆın
studierea dificult˘at ¸ilor practice a factoriz˘arii numerelor mari. Acest lucru este folo-
sitor utilizatorilor algoritmului RSAˆın alegerea unei chei de lungime corespunz˘atoare
cu nivelul de securitate dorit.
9.1. RSA 151
Miller-Rabin (vezi 10.7) vedem dac˘a num˘arul convine. Dac˘a nu, repet˘am
pentru m+ 2, m+ 4, . . . pˆan˘a g˘asim primul num˘ar prim ≥ m.
M˘arimea unei chei ˆın algoritmul RSA se refer˘a la m˘arimea lui n. Cele
dou˘a numere prime p, q trebuie alese astfel ˆıncˆat s˘a aib˘a o m˘arime apro-
ximativ egal˘a. M˘arimea modulului depinde de cerint ¸ele de securitate.
Cu cˆat modulul este mai mare, cu atˆat securitatea este mai mare, dar, ˆın
acela¸si timp, scade viteza de operare. Lungimea modulului trebuie aleas˘a
ˆın funct ¸ie de valoarea datelor ce trebuie protejate, de timpul necesar de
protect ¸ie, de cˆat de puternice pot fi posibilele amenint ¸˘ari.
ˆ
In anul 1999, un grup condus de Herman te Riele, utilizˆand 300 de
stat ¸ii de lucru ¸si PC-uri, a factorizat dup˘a ¸sapte luni num˘arul RSA−155
ˆın dou˘a numere prime cu 78 cifre binare. Pˆan˘a ˆın prezent s-au mai
factorizat RSA−160, RSA−200, RSA−576. De aceea Laboratoarele
RSA recomand˘a chei de m˘arime de 1024 de bit ¸i pentru corporat ¸ii ¸si chei
de 2048 de bit ¸i pentru chei de valoare deosebit˘a, cum ar fi cheia pentru
autentificare.
Este normal s˘a ne asigur˘am c˘a o cheie a unui utilizator expir˘a dup˘a o
anumit˘a dat˘a, s˘a zicem doi ani. Aceasta ofer˘a posibilitatea de a schimba
chei ˆın mod regulat ¸si de a asigura nivelul dorit de securitate, folosind
datele furnizate de Laboratoarele RSA.
Criptosistemul RSAeste folositˆın mod curent peste totˆın lume. El se
reg˘ase¸ste ˆın multe produse comerciale software, este construit ˆın sisteme
operat ¸ionale curente de c˘atre Microsoft, Apple, Sun, Novell.
ˆ
In hard-
ware, algoritmul RSA se reg˘ase¸ste ˆın securizarea telefoanelor, ˆın ret ¸eaua
de carduri Ethernet. Algoritmul este inclus ˆın toate protocoalele impor-
tante pentru asigurarea securit˘at ¸ii comunicat ¸iilor Internet, este utilizat
ˆın interiorul unor institut ¸ii cum ar fi guvernul U.S.A., marile corporat ¸ii,
laboratoare nat ¸ionale ¸si universit˘at ¸i.
S˘a vedem acum cum funct ¸ioneaz˘a acest algoritm pentru criptarea
mesajelor.
Presupunem c˘a mesajul este deja transformat ca ˆın cazul cript˘arii
exponent ¸iale, doar c˘a de aceast˘a dat˘a p esteˆınlocuit cu n. Fiecare unitate
de mesaj M este transformat˘a dup˘a regula C ≡ M
e
(mod n) pentru a
rezulta mesajul cifrat.
De exemplu, dac˘a alegem n = 43 59 = 2537 ¸si e = 13, pentru a
cripta mesajul
PUBLIC KEY CRY PTOGRAPHY
152 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
grup˘am ˆın blocuri de dou˘a litere pe care le transform˘am ˆın echivalent ¸i
numerici de dou˘a cifre. Obt ¸inem astfel,
1520 0111 0802 1004 2402 1724 1519 1406 1700 1507 2423.
Fiecare bloc este transformat prin C ≡ M
13
(mod 2537) ¸si vom obt ¸ine
textul cifrat, format din
0095 1648 1410 1289 0811 2333 2132 0370 1185 1457 1084.
Pentru decifrare, este nevoie de d, care ˆın acest caz este d = 937.
ˆ
In practic˘a, sistemul RSA este des folosit ˆımpreun˘a cu DES. Atunci
cˆand Alice dore¸ste s˘a trimit˘a un mesaj lui Bob, mai ˆıntˆai cripteaz˘a
mesajul cu DES, folosind o cheie aleas˘a aleator, apoi folose¸ste cheia pu-
blic˘a a lui Bob pentru a cripta cheia DES. Mesajul criptat DES ¸si cheia
DES criptat˘a RSA formeaz˘a un criptosistem hibrid, care este transmis
lui Bob. Acesta decripteaz˘a cheia DES cu cheia sa privat˘a ¸si apoi uti-
lizeaz˘a cheia DES pentru a decripta mesajul.
ˆ
In acest fel se combin˘a
viteza ridicat˘a a DES-ului cu managementul de chei al sistemului RSA.
Atˆat criptarea cˆat ¸si autentificarea au loc f˘ar˘a a ˆımp˘art ¸i chei private;
sunt folosite doar cheile publice ale unei alte persoane ¸si cheile private
ale persoanei ˆın discut ¸ie.
ˆ
In final, prezent˘am cˆateva din variantele de a ˆıncerca criptanaliza
acestui sistem.
1. O variant˘a este aceea de a ˆıncerca factorizarea lui n prin di-
verse metode.
2. De asemenea, cum problema factoriz˘arii lui nˆın acest caz este
echivalent˘a cu cea a cunoa¸sterii lui φ(n), putemˆıncerca s˘a afl˘am valoarea
lui φ(n). Dac˘a aceasta este cunoscut˘a, din relat ¸iile:
p +q = n −φ(n) + 1
p −q = (p +q)
2
−4n,
rezult˘a
p =
1
2
[(p +q) + (p −q)] , q =
1
2
[(p +q) −(p −q)] .
3. Presupunem acum c˘a putem determina d astfel ca a
de
≡ a (mod n),
pentru tot ¸i a primi cu n. Acest lucru ˆınseamn˘a c˘a de − 1 este multiplu
9.1. RSA 153
al celui mai mic multiplu comun al numerelor p − 1, q − 1. A cunoa¸ste
m = de −1 este un rezultat mai slab decˆat dac˘a l-am cunoa¸ste pe φ(n).
Cu toate acestea, ¸si ˆın acest caz, exist˘a o metod˘a prin care n poate fi
factorizat, cu o mare probabilitate.
Deci, presupunem n = pq, produsul a dou˘a numere prime mari, m, un
num˘ar natural cu proprietatea c˘a a
m
≡ 1 (mod n), pentru orice a, prim
cu n. Observ˘am c˘a m trebuie s˘a fie num˘ar par deoarece relat ¸ia trebuie
s˘a se verifice ¸si pentru a = −1. Mai ˆıntˆai verific˘am dac˘a
m
2
are aceea¸si
proprietate cu m, caz ˆın care ˆınlocuim m cu
m
2
. Dac˘a nu, congruent ¸a
a
m
2
≡ 1 (mod n) nu este verificat˘a pentru cel put ¸in jum˘atate din valorile
lui a modulo φ(n). Astfel, dac˘a pentru o mult ¸ime suficient de mare de
valori ale lui a, alese aleator, congruent ¸a se verific˘a, putem presupune
(cu probabilitate mare) c˘a m poate fi ˆınlocuit cu
m
2
. Continu˘am acest
procedeu, pˆan˘a cˆand congruent ¸a nu se mai verific˘a pentru
m
2
de la acel
pas.
Acum apar dou˘a posibilit˘at ¸i:
(i)
m
2
este multiplu de unul din numerele p − 1, q − 1, dar nu
de ambele. Presupunem c˘a
m
2
este multiplu de p − 1. Atunci, a
m
2

1 (mod p) este adev˘arat˘a pentru orice a, dar, pentru exact jum˘atate din
valorile lui a, a
m
2
≡ −1 (mod q) (vezi teorema 7.1.1).
(ii)
m
2
nu este multiplu nici de p − 1, nici de q − 1. Atunci,
a
m
2
≡ 1 (mod n) se verific˘a pentru exact un sfert din valorile lui a,
a
m
2
≡ −1 (mod n) pentru acela¸si num˘ar de valori. Pentru cealalt˘a
jum˘atate de valori a lui a, a
m
2
≡ 1 (mod p) ¸si a
m
2
≡ −1 (mod q), sau
invers.
Astfel, alegˆand aleator valori pentru a, vom g˘asi cu mare probabili-
tate un a pentru care a
m
2
−1 este multiplu de p dar nu de q, sau invers.
Cˆand am aflat un astfel de a, din (n, a
m
2
−1) = p rezult˘a un factor al lui
n.
Pˆan˘a ˆın prezent, nu s-au g˘asit metode de a criptanaliza un astfel de
sistem f˘ar˘a a factoriza num˘arul n.
154 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
9.2 Criptosisteme bazate pe DLP
Problema logaritmului discret, cunoscut˘a ¸si sub forma DLP, este o alt˘a
problem˘a dificil˘a. Dac˘a lucr˘am cu numere reale, exponent ¸ierea a
x
nu este mult mai u¸soar˘a decˆat operat ¸ia invers˘a. Dac˘a presupunem c˘a
lucr˘am ˆıns˘a ˆıntr-un grup finit, cum ar fi U(Z
n
), cu ajutorul metodei de
ridicare repetat˘a la p˘atrat, se poate calcula rapid a
x
pentru valori mari
ale lui x. Problema invers˘ a, poart˘a numele de problema logaritmului
discret: cunoscˆand b, care ¸stim c˘a este de forma a
x
, cum determin˘am
x = log
a
b? Cuvˆantul discret face distinct ¸ia dintre cazul grupurilor finite
¸si situat ¸ia clasic˘a. Aceast˘a problem˘a va fi tratat˘a pe larg ˆın capitolul 12.
Sistemul de schimbare de chei Diffie-Hellman-Merkle
Datorit˘a faptului c˘a criptosistemele cu cheie public˘a sunt relativ
mai ˆıncete decˆat criptosistemele clasice (cel put ¸in ˆın stadiul actual de
cunoa¸stere tehnologic˘a ¸si teoretic˘a), este bine s˘a le folosim ˆımpreun˘a
cu acestea. De exemplu, dac˘a dou˘a persoane trebuie s˘a se pun˘a de
acord asupra unei chei comune secrete, printr-o ret ¸ea public˘a, pentru
a fi folosit˘a apoi ˆın schimbul de mesaje realizate cu criptosisteme cla-
sice, se poate folosi criptarea cu cheie public˘a pentru secretizarea cheii
¸si criptosistemul DES pentru transmiterea mesajelor.
Primul astfel de protocol a fost realizat de Whitfield Diffie
5
, Martin
Hellman
6
¸si Ralph Merkle
7
. El funct ¸ioneaz˘a astfel:
1. Se aleg q, un num˘ar prim ¸si g, un generator al grupului finit
Z

q
. Acestea sunt f˘acute publice.
2. Alice alege aleator un a, 1 ≤ a ≤ q −1, calculeaz˘a g
a
(mod q)
¸si ˆıl trimite lui Bob. a este p˘astrat secret.
3. Bob alege ¸si el, ˆın mod aleator b, 1 ≤ b ≤ q − 1, calculeaz˘a
g
b
(mod q) ¸si transmite valoarea aceasta lui Alice. b este p˘astrat ¸si el
5
Inginer la Sun Microsystems ˆın Palo Alto, California. Este cunoscut ˆın special
pentru c˘a a descoperit ˆın anul 1975 conceptul de criptare cu cheie public˘a pentru
care i s-a decernat titlul de Doctor Honoris Causa de c˘atre Swiss Federal Institute
of Technology, ˆın 1992.
6
Este considerat tat˘al criptografiei (cu cheie public˘a) moderne.
7
Teza sa de doctorat a avut tema Secrecy, Authentification and Public Key Sys-
tems, profesorul ˆındrum˘ ator fiind Hellman. Al˘aturi de Adleman, Diffie, Helmann,
Rivest ¸si Shamir a primit premiul ACM Kenellakis Award ˆın anul 1977.
ˆ
In 1998 i
s-a decernat premiul Feyman ˆın nanotehnologie iar ˆın anul 2000, premiul RSA ˆın
matematic˘a.
9.2. CRIPTOSISTEME BAZATE PE DLP 155
secret.
4. Alice ¸si Bob calculeaz˘a amˆandoi g
ab
(mod q) care va fi cheia
secret˘a pe care o vor folosi ˆın urm˘atoarele comunicat ¸ii.
O a treia persoan˘a cunoa¸ste g, q, g
a
(mod q), g
b
(mod q) ¸si trebuie s˘a
determine g
ab
(mod q). Securitatea sistemului se bazeaz˘a pe urm˘atoarea
presupunere:
Presupunerea Diffie-Helman-Merkle. Este imposibil din punct
de vedere computat ¸ional s˘a se calculeze g
ab
din g
a
¸si g
b
.
Pˆan˘a ˆın prezent nu s-a determinat o metod˘a prin care s˘a se afle g
ab
f˘ar˘a a calcula a ¸si b, cu ajutorul logaritmului discret. Teoretic, o alt˘a
cale ar exista, dar ea nu a fost g˘asit˘a ˆınc˘a.
Criptosistemul ElGamal
ˆ
In anul 1985, ElGamal
8
a propus un criptosistem cu cheie public˘a,
bazat pe logaritmi discret ¸i, pentru a asigura securizarea comunicat ¸iilor:
1. Se aleg q, un num˘ar prim mare ¸si un generator g pentru Z

q
,
care sunt f˘acute publice.
2. Alice alege un a, 1 ≤ a ≤ q − 1, care este cheia secret˘a de
decriptare, ¸si calculeaz˘a g
a
(mod q), care este cheia public˘a de criptare.
3. Presupunem c˘a Bob dore¸ste s˘a-i trimit˘a lui Alice un mesaj M
format cu echivalent ¸i numerici mod q. El alege aleator b, 1 ≤ b ≤ q − 1
¸si trimite lui Alice perechea de elemente
_
g
b
(mod q), Mg
ab
(mod q)
_
.
4. Cum Alice cunoa¸ste a, ea poate reg˘asi M, calculˆand g
ab
(mod q)
¸si apoi ˆımp˘art ¸ind al doilea element din pereche la acesta.
Oricine poate rezolva problema logaritmului discret ˆın corpul finit cu
q elemente, poate g˘asi cheia secret˘a a din cheia public˘a g
a
. Securitatea
sistemului se bazeaz˘a pe presupunerea Diffie-Helman-Merkle. Astfel,
criptosistemul ElGamal este echivalent cu sistemul de schimbare de chei
Diffie-Hellman.
8
Ahmed ElGamal este profesor conduc˘ator al Departamentului de Inginerie Struc-
turat˘a al Universit˘at ¸ii California, San-Diego. Activitatea sa de cercetare se desf˘a¸soar˘a
ˆın domenii ca tehnologie informatic˘a, inginerie structurat˘a, studiu seismologic.
156 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
Criptosistemul Massey-Omura
Acest criptosistem este un alt sistem foarte cunoscut, folosit pentru
transmiterea mesajelor.
1. Se alege q, o putere a unui num˘ar prim, deci vom lucra ˆıntr-un
corp finit cu q elemente.
2. Fiecare utilizator ˆı¸si alege, ˆın mod aleator, o cheie e, 1 ≤ e ≤
q −1 astfel ˆıncˆat (e, q −1) = 1 ¸si calculeaz˘a d ≡ e (mod q −1), folosind
algoritmul lui Euclid extins.
3. Pentru ca Alice s˘a trimit˘a un mesaj M lui Bob, ea calculeaz˘a
M
e
A
(mod q) ¸si ˆıl trimite acestuia. Cˆand prime¸ste mesajul, Bob nu ˆıl
poate citi ˆınc˘a. El returneaz˘a lui Alice M
e
A
e
B
(mod q) care ˆıi trimite
ˆınapoi M
e
A
e
B
d
A
≡ M
e
B
(mod q). Bob descifreaz˘a mesajul prin M ≡
M
e
B
d
B
(mod q).
9.3 Criptosisteme knapsack
Criptosistemul rucsac (knapsack) Merkle-Hellman a fost publicat ˆın anul
1978. El se bazeaz˘a pe problema sumei unei submult ¸imi din combina-
toric˘a, sau problema rucsacului, cum mai este ˆıntˆalnit˘a.
Aceast˘a problem˘a presupune alegerea unui num˘ar de obiecte cu greu-
tate cunoscut˘a dintr-o mult ¸ime mare de astfel de obiecte a¸sa ˆıncˆat suma
greut˘at ¸ilor lor s˘a fie egal˘a cu o valoare stabilit˘a init ¸ial. Tratat˘a pe caz
general, ea este inclus˘a ˆın categoria problemelor dificile.
Sub form˘a matematic˘a, problema s-ar putea transcrie astfel:
Fie ¦a
1
, a
2
, . . . , a
n
¦ o mult ¸ime de numere naturale ¸si S, un num˘ar natu-
ral. S˘a se determine dac˘a exist˘a x
i
∈ ¦0, 1¦, 1 ≤ i ≤ n, pentru care
n

i=1
x
i
a
i
= S.
ˆ
In anumite situat ¸ii, problema se poate rezolva u¸sor. De exemplu,
dac˘a a
i
= 2
i−1
, 1 ≤ i ≤ n, atunci problema se reduce la scrierea lui S ˆın
baza 2.
Un caz particular al problemei rucsacului este problema rucsac su-
percresc˘atoare.
Spunem c˘a ¸sirul de numere naturale (a
i
)
i≥1
este supercresc˘ator dac˘a
j−1

i=1
a
i
< a
j
, pentru j ≥ 2.
9.3. CRIPTOSISTEME KNAPSACK 157
De exemplu, 2, 3, 6, 12, 25, 51 este o secvent ¸˘a supercresc˘atoare. S˘a
rezolv˘am problema:
2x
1
+ 3x
2
+ 6x
3
+ 12x
4
+ 25x
5
+ 51x
6
= 68.
Pentru aceasta, cum 2 + 3 + 6 + 12 + 25 < 51, x
6
= 1, altfel suma este
mai mic˘a decˆat 51. Rezult˘a 2x
1
+ 3x
2
+ 6x
3
+ 12x
4
+ 25x
5
= 17 ¸si
relu˘am procedeul. Din 25 > 17, obt ¸inem x
5
= 0. Astfel, 2x
1
+ 3x
2
+
6x
3
+ 12x
4
= 17, de unde x
4
= 1 (altfel, suma ar fi < 12).
ˆ
In final, din
2x
1
+ 3x
2
+ 6x
3
= 5 rezult˘a x
3
= 0, x
2
= 1, x
1
= 1.
Pe caz general, problema rucsacului pentru ¸siruri supercresc˘atoare,
n

i=1
x
i
a
i
= S unde ¦a
1
, a
2
, . . . , a
n
¦ formeaz˘a un ¸sir supercresc˘ator, se
rezolv˘a astfel:
1. Determin˘am x
n
prin:
x
n
=
_
1, S ≥ a
n
;
0, S < a
n
.
2. Determin˘am x
n−1
, x
n−2
, . . . , x
1
folosind relat ¸iile:
x
j
=
_
¸
¸
_
¸
¸
_
1, S −
n

i=j+1
x
i
a
i
≥ a
j
;
0, S −
n

i=j+1
x
i
a
i
< a
j
,
pentru j ∈ ¦n−1, n−2, . . . , 1¦. Trebuie remarcat faptul c˘a, dac˘a aceast˘a
problem˘a are solut ¸ie, ea este unic˘a.
S˘a vedem acum cum funct ¸ioneaz˘a criptosistemul Merkle-Hellman.
1. Mai ˆıntˆai, mesajul este transformat ˆınlocuind fiecare liter˘a cu
echivalentul s˘au numeric binar. Dac˘a presupunem, ca ¸si pˆan˘a acum, c˘a
alfabetul este format din 26 de litere, cum 25 = (11001)
2
, fiecare liter˘a
va avea un echivalent numeric format din 5 cifre binare:
A−(00000)
2
, B −(00001)
2
, . . . , Z −(11001)
2
.
2. Se alege un n−uplu supercresc˘ator a
1
, a
2
, . . . , a
n
(n este 5 sau
un multiplu de 5, t ¸inˆand cont c˘a fiecare liter˘a este substituit˘a cu un bloc
de 5 cifre), un modul m > 2a
n
¸si un num˘ar natural w, prim cu m, numit
multiplu. Aceste alegeri se fac prin procese aleatoare. De exemplu,
158 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
se poate considera o secvent ¸˘a arbitrar˘a l
1
, l
2
, . . . , l
n+1
, de numere mai
mici decˆat o anumit˘a valoare convenabil aleas˘a, pe baza c˘aruia se poate
construi a
1
= l
1
, a
j
= l
j
+ a
j−1
+ a
j−2
+ . . . + a
1
, 2 ≤ j ≤ n. m poate
fi ales de forma m = l
n+1
+
n

i=1
a
i
. Pentru w, alegem aleator un w
0
< m
iar w va fi primul num˘ar mai mare decˆat w
0
, prim cu m.
3. Determin˘am n−uplul b
i
≡ wa
i
(mod m), 0 < b
i
< m pentru
1 ≤ i ≤ n. Acesta este f˘acut public, el reprezentˆand cheia de criptare.
Cheia de decriptare, care trebuie p˘astrat˘a secret˘a, este (w, m). Cu aju-
torul ei, se obt ¸ine u¸sor din b
1
, b
2
, . . . , b
n
n−uplul init ¸ial.
4. Alice, pentru a trimite mesajul lui Bob, ˆımparte mesajul for-
mat din echivalent ¸ii numerici binari ai literelor ˆın blocuri de n cifre binare
x
1
x
2
. . . x
n
(dac˘a este nevoie, se completeaz˘a ultimul bloc cu cifre de 1
pentru a obt ¸ine acela¸si num˘ar de cifre). Pentru fiecare astfel de unitate
de mesaj, se calculeaz˘a suma S =
n

i=1
x
i
b
i
. S¸irul format cu aceste sume
formeaz˘a mesajul cifrat.
5. Pentru a decripta mesajul, Bob calculeaz˘a pentru fiecare sum˘a:
S
0
≡ wS ≡
n

i=1
wb
i
x
i

n

i=1
x
i
a
i
(mod m), 0 < S
0
< m.
Din
n

i=1
x
i
a
i
< m, rezult˘a S
0
=
n

i=1
x
i
a
i
. Aceast˘a ecuat ¸ie se poate rezolva
u¸sor pentru c˘a ¸sirul ¦a
1
, a
2
, . . . , a
n
¦ este supercresc˘ator. Rezult˘a astfel
M = x
1
x
2
. . . x
n
.
ˆ
Intreg mesajul este reg˘asit ˆınlocuind echivalent ¸ii binari
cu literele corespunz˘atoare.
De exemplu, folosim un 10−uplu supercresc˘ator:
(2, 11, 14, 29, 58, 119, 241, 480, 959, 1917),
m = 3837 (m > 2a
10
), w = 1001, pentru a aplica sistemul la criptarea
mesajului:
REPLY IMMEDIATELY
Form˘am unit˘at ¸i de mesaj alc˘atuite din 10 cifre binare (echivalent ¸ii a
dou˘a litere):
1000100100 0111101011 1100001000 0110001100
0010000011 0100000000 1001100100 0101111000
9.4. SEMN
˘
ATUR
˘
A DIGITAL
˘
A 159
Form˘am 10−uplul b
i
≡ 1001a
i
(mod 3837), 1 ≤ i ≤ 10 ¸si obt ¸inem
(2002, 3337, 2503, 2170, 503, 172, 3347, 855, 709, 417). Pentru fiecare bloc
determinat anterior calcul˘am sumele
10

i=1
x
i
b
i
. Astfel, pentru primul bloc
obt ¸inem S = b
1
+b
5
+b
8
= 3360.
Mesajul cifrat este
3360 12986 8686 10042 3629 3337 5530 9729
Pentru decriptare, din congruent ¸a 1001w ≡ 1 (mod 3837) rezult˘a w =
23. Pentru fiecare bloc rezolv˘am 23S ≡
10

i=1
x
i
a
i
(mod 3837). Verific˘am
tot pentru primul bloc: 3360 23 ≡ 540 (mod 3837). Din 540 = 480 +
58 + 2, rezult˘a x
1
= x
5
= x
8
= 1 iar restul nuli, adic˘a 1000100100.
Pentru un timp, acest sistem a fost considerat sigur. Dar, tipul de
problem˘a rucsac pe care se bazeaz˘a acest sistem este tot un caz parti-
cular: se obt ¸ine din problema supercresc˘atoare prin transform˘ari simple
(multiplicarea ¸si reducerea modulo m a fiec˘arui element din ¸sir).
ˆ
In anul
1982, Shamir a spart acest criptosistem rucsac (ˆıntr-o singur˘a iterat ¸ie),
g˘asind un algoritm de rezolvare a acestuia. Chiar dac˘a Merkle a dezvoltat
un alt astfel de criptosistem cu multiple iterat ¸ii, nici acesta nu s-a dovedit
imposibil de criptanalizat, Brickell fiind cel care a oferit un algoritm
pentru acest caz.
Astfel, criptosistemul Merkle-Hellman nu mai este ast˘azi considerat
sigur, el fiind vulnerabil la o criptanaliz˘a eficient˘a.
Un criptosistem rucsac, care nu se bazeaz˘a pe exponent ¸iere modular˘a,
este sistemul Chor-Rivest. El utilizeaz˘a polinoame cu coeficient ¸i ˆıntr-un
corp finit. Prima dat˘a, a fost publicat ˆın anul 1984 ¸si a fost revizuit ˆın
1988.
ˆ
In prezent, acesta este singurul criptosistem rucsac care ˆınc˘a nu a
fost spart. Pentru mai multe informat ¸ii, se poate studia [12], [15].
9.4 Semn˘atur˘a digital˘a
Presupunem c˘a Alice ˆıi trimite un mesaj criptat lui Bob. De obicei, pen-
tru a fi mai sigur, unul din blocurile mesajului este blocul de semn˘atur˘a.
Bob poate identifica acest bloc deoarece, la decriptare, acesta nu are
ˆınt ¸eles.
160 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
Prezent˘am ˆın continuare cˆateva scheme de semn˘atur˘a:
Schem˘a bazat˘a pe criptosistemul RSA
1. Presupunem c˘a (n
A
, e
A
) este cheia public˘a a lui Alice iar
(n
B
, e
B
) cea a lui Bob. Cheile secrete de decriptare sunt d
A
, respec-
tiv, d
B
. Pentru ca Alice s˘a-i trimit˘a lui Bob semn˘atura sa, ea calculeaz˘a:
S
A

_
M
d
A
(mod n
A
)
_
e
B
(mod n
B
), dac˘a n
A
< n
B
sau
S
A
≡ (M
e
B
(mod n
B
))
d
A
(mod n
A
), pentru cazul n
A
> n
B
.
Ea trimite apoi S
A
ca unitate de mesaj cifrat lui Bob.
ˆ
In ambele
situat ¸ii, inegalitatea precizat˘a ne asigur˘a c˘a expresia din parantez˘a nu
este mai mare decˆat cheia care reprezint˘a modulul ˆın raport cu care se
face calculul.
2.
ˆ
In primul caz, Bob poate verifica autenticitatea mesajului
ridicˆand la puterea d
B
modulo n
B
¸si apoi la puterea e
A
modulo n
A
.
Pentru cel˘alalt caz, el va face acela¸si calcul, dar ˆın ordine invers˘a.
Schem˘a bazat˘a pe criptosistemul ElGamal
1. Alice alege un num˘ar prim p ¸si dou˘a numere naturale aleatoare
g, x < p. Ea calculeaz˘a y ≡ g
x
(mod p), face public (y, g, p) ¸si p˘astreaz˘a
secret x.
2. Apoi, Alice alege aleator k, prim cu p −1 ¸si calculeaz˘a:
a ≡ g
k
(mod p), b ≡ k(M −xa) (mod p −1).
Acum Alice a generat semn˘atura (a, b). Ea trebuie s˘a p˘astreze secret ¸si
pe k.
3. Pentru a verifica semn˘atura, Bob vede dac˘a y
a
a
b
≡ g
M
(mod p)
este adev˘arat˘a.
Semn˘atura digital˘a standard
ˆ
In anul 1991, Institutul Nat ¸ional de Standarde ¸si Tehnologie al gu-
vernului U.S.A., NIST, a propus un algoritm pentru semn˘aturi digi-
tale. Algoritmul este cunoscut sub numele DSA, Digital Signature Al-
gorithm. DSA a devenit Standard pentru semn˘aturi digitale, DSS, fiind
prima schem˘a de semn˘atur˘ a recunoscut˘a de orice guvern. El este desti-
nat a fi folosit ˆın po¸sta electronic˘a, transfer˘ari electronice de bani, schimb
electronic de date, distribut ¸ie software, stocare de date ¸si alte aplicat ¸ii
care necesit˘a asigurarea integrit˘at ¸ii datelor ¸si autentificarea acestora.
9.4. SEMN
˘
ATUR
˘
A DIGITAL
˘
A 161
Rolul lui DSS este asem˘an˘ator lui DES, adic˘a trebuie s˘a furnizeze o
metod˘a standard de semn˘atur˘a care s˘a fie folosit˘a atˆat de guvern cˆat ¸si
de organizat ¸ii comerciale. Deoarece, pentru a construi semn˘aturi digi-
tale, este necesar˘a criptarea cu cheie public˘a, NIST a ales ca schema de
semn˘atur˘a digital˘a s˘a se bazeze pe problema logaritmului discret.
DSA/DSS const˘a ˆın dou˘a procese principale: generarea semn˘aturii,
folosind o cheie privat˘a, ¸si verificarea acesteia cu ajutorul unei chei pub-
lice. Algoritmul funct ¸ioneaz˘a astfel:
1. Generarea cheii DSA
1.1. Fiecare expeditor, Alice, alege un num˘ar prim q de aproxi-
mativ 160 bit ¸i, folosind un generator aleator de numere ¸si un test de
primalitate.
1.2. Ea alege un al doilea num˘ar prim p, p ≡ 1 (mod q), de
aproximativ 512 bit ¸i.
1.3. Alice alege un generator al unicului subgrup ciclic de ordin
q al grupului Z

p
. Pentru a realiza aceasta, verific˘a dac˘a pentru un g, ales
aleator, g
p−1
q
,= 1 (mod p). Dac˘a da, g este generator.
1.4. Alice alege aleator x, 0 < x < q, care este cheia ei secret˘a
¸si ˆı¸si calculeaz˘a cheia public˘a y ≡ g
x
(mod p).
2. Generarea semn˘aturii DSA
Pentru a realiza aceast˘a etap˘a, Alice trebuie s˘a foloseasc˘a o funct ¸ie
hash. O funct ¸ie hash este o aplicat ¸ie u¸sor de calculat, f : x → h care
transform˘a ¸siruri binare de lungime arbitrar˘a foarte mare ˆın ¸siruri binare
de lungime fixat˘a, mult mai scurt˘a, numit˘a valoare hash. De exemplu,
¸siruri de 10
6
bit ¸i pot fi transformate ˆın ¸siruri de 150 bit ¸i. Funct ¸ia trebuie
s˘a mai verifice proprietatea c˘a, pentru x, x

diferit ¸i, nu se poate obt ¸ine
f(x) = f(x

).
2.1. Ea aplic˘a o funct ¸ie hash mesajului pentru a obt ¸ine h < q.
2.2. Alice alege aleator k, 0 < k < q. Cu ajutorul acestuia ˆı¸si
construie¸ste semn˘atura (r, s) prin:
r ≡
_
g
k
(mod p)
_
(mod q)
s ≡ k(h +xr) (mod q).
162 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
Pentru a verifica semn˘atura:
Bob calculeaz˘a u
1
≡ sh (mod q) ¸si u
2
≡ sr (mod q).
S˘a observ˘am mai ˆıntˆai c˘a, g
u
1
y
u
2
= g
s(h+xr)
≡ g
k
(mod p).
Dac˘a r ≡ (g
u1
y
u2
(mod p)) (mod q), atunci semn˘atura este corect˘a.
Dac˘a congruent ¸a nu se verific˘a, atunci mesajul a fost semnat incorect sau
a fost semnat de un impostor.
ˆ
In acest caz, mesajul nu este considerat
valid.
Aceast˘a schem˘a de semn˘atur˘a are avantajul c˘a semn˘aturile sunt destul
de scurte, fiind formate din dou˘a numere de 160 bit ¸i. Pe de alt˘a parte,
securitatea sistemului depinde de imposibilitatea de a rezolva problema
logaritmului discret ˆın grupul multiplicativ Z

p
, cu p suficient de mare.
9.5
ˆ
Imp˘art ¸irea secretelor
Schemele de ˆımp˘art ¸ire a secretelor au fost descoperite, independent, de
Blakley ¸si Shamir. Principalul scop al acestora este gestionarea securi-
zat˘a a cheilor.
ˆ
In unele situat ¸ii exist˘a o singur˘a cheie secret˘a care permite
accesul la mai multe fi¸siere importante. Dac˘a o astfel de cheie este
pierdut˘a (de exemplu, persoana care cunoa¸ste cheia nu este disponibil˘a
sau computerul care depoziteaz˘a cheia este distrus), atunci toate fi¸sierele
sunt inaccesibile. Ideea de baz˘a ˆın ˆımp˘art ¸irea de secrete este de a diviza
cheia secret˘a ˆın mai multe p˘art ¸i, numite umbre care sunt distribuite
la persoane diferite a¸sa ˆıncˆat cheia secret˘a s˘a poat˘a fi reg˘asit˘a dintr-o
submult ¸ime de umbre.
O schem˘a general˘a de ˆımp˘art ¸ire a secretelor specific˘a num˘arul minim
de umbre necesare la reconstituirea cheii secrete.
Un exemplu clasic de ˆımp˘art ¸ire a secretelor este schema k din n sau
schema (k, n)−threshold cu 1 < k < n.
ˆ
Intr-o astfel de schem˘a, exist˘a
un expeditor, sau dealer ¸si n participant ¸i. Dealer-ul ˆımparte secretul ˆın
n p˘art ¸i ¸si d˘a fiec˘arui participant cˆate o parte astfel ˆıncˆat orice k p˘art ¸i
pot reconstitui secretul, dar orice k − 1 p˘art ¸i nu sunt suficiente pentru
a-l determina. O astfel de schem˘a se nume¸ste perfect˘a dac˘a orice grup
de cel mult k −1 participant ¸i nu poate afla mai multe informat ¸ii despre
secret decˆat o persoan˘a din exteriorul grupului.
Cea mai simpl˘a schem˘a threshold este bazat˘a pe teoria congruent ¸elor
¸si pe teorema chinezeasc˘a a resturilor. Pentru a construi o astfel de
9.5.
ˆ
IMP
˘
ART¸ IREA SECRETELOR 163
schem˘a (k, n)−threshold putem folosi urm˘atorul algoritm, format din
dou˘a etape principale: construirea umbrelor ¸si reconstituirea secretului
din k umbre.
1. Not˘am cu S secretul (este un num˘ar) ¸si cu s
1
, s
2
, . . . , s
n
um-
brele care trebuie create.
Alegem secvent ¸a m
1
, m
2
, . . . , m
n
de numere naturale care verific˘a
condit ¸iile:
(m
i
, m
j
) = 1, pentru i ,= j,
m
1
m
2
. . . m
k
> m
n
m
n−1
. . . m
n−k+2
.
Determin˘am secretul S astfel ˆıncˆat
m
n
m
n−1
. . . m
n−k+2
< S < m
1
m
2
. . . m
k
,
unde m
n
m
n−1
. . . m
n−k+2
este cea mai mare valoare obt ¸inut˘a calculˆand
produsul a k−1 numere din ¸sir, iar m
1
m
2
. . . m
k
reprezint˘a cea mai mic˘a
valoare obt ¸inut˘a dintre produsele de k numere.
Construim umbrele prin
s
i
≡ S (mod m
i
), 1 ≤ i ≤ n.
Fiecare participant P
i
va primi (s
i
, m
i
, M), unde M = m
1
m
2
. . . m
n
.
2. S˘a vedem acum dac˘a am definit o schem˘a (k, n)−threshold.
Consider˘am umbrele s
j
1
, s
j
2
, . . . , s
j
k
cunoscute. Fiecare persoan˘a P
j
i
,
folosind cheia sa secret˘a (s
ji
, m
ji
, M), calculeaz˘a:
M
ji
=
M
m
ji
, N
ji
≡ M
ji
(mod m
ji
) ¸si, ˆın final I
ji
= s
ji
M
ji
N
ji
.
Folosind teorema chinezeasc˘a a resturilor, g˘asims ≡
k

i=1
I
j
i
(mod M
j
),
unde M
j
= m
j
1
m
j
2
. . . m
j
k
. Dar, din 0 < S < M
j
, rezult˘a S = s ¸si, ast-
fel, am reconstituit secretul.
Spre exemplu, s˘a construim o schem˘a (3, 5)−threshold.
Administratorul schemei alege ¸sirul de numere:
m
1
= 11, m
2
= 12, m
3
= 17, m
4
= 19, m
5
= 25.
El calculeaz˘a M = 1065900, m
1
m
2
m
3
= 2244, m
4
m
5
= 475 ¸si define¸ste
secretul S = 1011. Se observ˘a c˘a 475 < S < 2244.
ˆ
In final, calculeaz˘a umbrele s
i
≡ S (mod m
i
), obt ¸inˆand:
s
1
= 21, s
2
= 3, s
3
= 8, s
4
= 4, s
5
= 11. Fiecare persoan˘a P
i
va primi
164 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
(s
i
, m
i
, M). S˘a vedem cum obt ¸in persoanele P
1
, P
3
, P
4
secretul S.
P
1
calculeaz˘a M
1
=
M
m
1
= 96900, N
1
≡ M
1
(mod 11), de unde N
1
= 1
¸si I
1
= 2034900.
P
3
calculeaz˘a M
3
=
M
m
3
= 62700, N
3
≡ M
3
(mod 17), de unde N
3
= 13
¸si I
3
= 6520800.
P
4
calculeaz˘a M
4
=
M
m
4
= 56100, N
4
≡ M
4
(mod 19), de unde N
4
= 8
¸si I
4
= 1795200.
ˆ
In final, rezult˘a S ≡ I
1
+ I
3
+ I
4
= 10350900 ≡ 1011 (mod 3553)
unde m
1
m
3
m
4
= 3553.
Dac˘a ˆıncerc˘am s˘a reg˘asim secretul folosind doar umbrele s
1
, s
3
, obt ¸i-
nem S ≡ I
1
+I
3
= 8555700 ≡ 76 (mod 187), ceea ce nu este corect.
ˆ
Incheiem acest subcapitol cu prezentare schemei de ˆımp˘art ¸ire a se-
cretelor a lui Shamir. Aceasta este o schem˘a perfect˘a care se bazeaz˘a pe
interpolarea polinomial˘a ¸si pe faptul c˘a un polinom de gradul k −1 este
unic determinat de cei k coeficient ¸i ai s˘ai.
1. Construirea umbrelor.
Administratorul alege un num˘ar prim p, cu p > max¦S, n¦ unde S
este secretul iar n, num˘arul de participant ¸i. Apoi, define¸ste a
0
= S ¸si
alege ˆın mod aleator k − 1 coeficient ¸i independent ¸i a
1
, . . . , a
k−1
astfel
ˆıncˆat 1 ≤ a
i
≤ p − 1, 1 ≤ i ≤ k − 1. Dealer-ul define¸ste polinomul
f =
k−1

i=0
a
i
X
i
, care este de fapt un polinom cu coeficient ¸i ˆıntr-un corp finit
cu p elemente. Umbrele secretului S vor fi create prin s
j
≡ f(j) (mod p),
pentru n valori diferite j, 1 ≤ j ≤ p −1. Fiecare participant P
j
prime¸ste
(s
j
, j), printr-un canal sigur.
2. Reconstituirea secretului.
Consider˘am c˘a un grup de k sau mai mult ¸i participant ¸i vor s˘a deter-
mine secretul. Fiecare pereche (j, s
j
) este considerat˘a ca fiind un punct
(x
j
, y
j
), unde y
j
= f(x
j
). Pentru a determina funct ¸ia polinomial˘a al c˘arei
grafic trece prin aceste puncte, folosim formula de interpolare Lagrange:
f(x) =
k

j=1
y
j

1≤l≤k
l=j
x −x
l
x
j
−x
l
.
9.5.
ˆ
IMP
˘
ART¸ IREA SECRETELOR 165
Cum S = a
0
= f(0), putem scrie S =
k

j=1
c
j
y
j
, unde c
j
=

1≤l≤k
l=j
x
l
x
l
−x
j
.
Deci, fiecare grup de k participant ¸i va determina secretul calculˆand
o combinat ¸ie liniar˘a a umbrelor, coeficient ¸ii c
j
nefiind secret ¸i.
Un caz simplu de vizualizat este pentru k = 2. Graficul funct ¸iei
polinomiale este o dreapt˘a. Punctul A, ˆın care dreapta intersecteaz˘a axa
Oy, are coordonatele (0, f(0)). Din S = f(0), rezult˘a c˘a secretul este
ordonata punctului A. Fiecare umbr˘a este de fapt un punct pe dreapt˘a.
Dac˘a consider˘am orice dou˘a puncte, acestea determin˘a ˆın mod unic
dreapta, deci g˘asim secretul. Dac˘a consider˘am un singur punct, prin
acesta pot trece o infinitate de drepte.
ˆ
In acest caz, secretul poate fi
orice punct de pe axa Oy, deci nu ˆıl putem afla.
Exercit ¸ii propuse
1. Fie n > 1 un num˘ar liber de p˘atrate, iar d ¸si e numere naturale
astfel ˆıncˆat p − 1 [ de − 1, pentru orice divizor prim p al lui n (de
exemplu, acesta poate fi cazul cˆand de ≡ 1 (mod φ(n))). Ar˘atat ¸i c˘a
a
de
≡ a (mod n), pentru orice ˆıntreg a.
2. Determinat ¸i numerele prime p ¸si q dac˘a n = pq = 14647 iar
φ(n) = 14400.
3. Precizat ¸i care dintre urm˘atoarele 5−upluri sunt supercresc˘atoare:
i) (3, 5, 9, 19, 40)
ii) (2, 6, 10, 15, 36).
4. Fie A = ¦2, 3, 4, 7, 11, 13, 16¦. Determinat ¸i toate submult ¸imile B
ale mult ¸imii A cu proprietatea c˘a suma tuturor elementelor din B este
egal˘a cu 18.
5. Fie
i) (2, 3, 7, 20, 35, 69) ¸si S = 45
ii) (1, 2, 5, 9, 20, 49) ¸si S = 73
iii) (1, 3, 7, 12, 22, 45) ¸si S = 67.
166 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC
˘
A
Pentru fiecare dintre aceste 6−upluri ¸si S, stabilit ¸i care dintre pro-
blemele rucsac sunt supercresc˘atoare. G˘asit ¸i, pentru fiecare problem˘a
rucsac, toate solut ¸iile, dac˘a acestea exist˘a.
6. Ar˘atat ¸i c˘a:
i) Pentru un n−uplu supercresc˘ator, (a
1
, a
2
, . . . , a
n
) se verific˘a
a
j
≥ 2
j−1
, pentru 1 ≤ j ≤ n.
ii) Orice n−uplu (a
1
, a
2
, . . . , a
n
) care verific˘a a
j+1
≥ 2a
j
, pentru
1 < j < n, este supercresc˘ator.
7. Determinat ¸i secvent ¸a ce se obt ¸ine din 7−uplul (1, 3, 5, 10, 20, 41, 80)
pentru multiplul w = 17 ¸si modulul m = 162.
8. Presupunem c˘a un mesaj a fost criptat folosind un sistem rucsac
cu cheia public˘a (57, 14, 3, 24, 8). Cunoscˆand ¸si cheia privat˘a b = 23,
m = 61, reconstituit ¸i mesajul ¸stiind c˘a mesajul cifrat are unit˘at ¸ile
14 25 89 3 65 24 3 49 89 24 41 25 68 41 71.
CAPITOLUL 10
Teste de primalitate
ˆ
Inc˘a din antichitate, matematicienii au fost fascinat ¸i de probleme ce
implicau numere prime.
O problem˘a de baz˘a ce se refer˘a la numerele prime este aceea de a
stabili dac˘a un anumit num˘ar este prim sau nu. Un test care realizeaz˘a
acest lucru poart˘a numele de test de primalitate. Ele sunt importante ¸si
ˆın prezent, mai ales din punct de vedere practic, t ¸inˆand cont de utilizarea
acestor numere ˆın criptografie.
Testele de primalitate pot fi deterministice sau probabilistice.
Cele deterministice stabilesc cu certitudine dac˘a un num˘ar este prim
pe cˆand testele probabilistice pot identifica ˆın mod fals (cu o mic˘a proba-
bilitate) un num˘ar compus ca fiind prim (invers nu este posibil). Aceste
teste sunt mult mai rapide decˆat cele deterministice. Numerele care trec
un test de primalitate probabilistic vor fi numite probabil prime pˆan˘a
cˆand primalitatea lor este demonstrat˘a ˆın mod deterministic. Testele
probabilistice de primalitate folosesc pe lˆang˘a num˘arul n care este testat
¸si alte numere alese aleator dintr-o mult ¸ime de probe. Orice astfel de test
trebuie s˘a dea r˘aspunsul corect cu o mare probabilitate (de exemplu, mai
mare decˆat
2
3
). Probabilitatea erorii poate fi mic¸sorat˘a repetˆand testul
pentru mai multe valori prob˘a independente.
167
168 CAPITOLUL 10. TESTE DE PRIMALITATE
Un test probabilistic de primalitate are urm˘atoarea structur˘a de baz˘a:
1. Aleg la ˆıntˆamplare un num˘ar b.
2. Verific o egalitate ce implic˘a numerele b ¸si n, num˘arul testat. Dac˘a
egalitatea nu este adev˘arat˘a, n este compus ¸si b poart˘a numele de martor
al lui n, testul oprindu-se.
3. Repet˘am pasul 1 pˆan˘a se obt ¸ine certitudinea dorit˘a. Dac˘a, dup˘a
mai multe iterat ¸ii, num˘arul n nu se dovede¸ste compus, el este declarat
probabil prim.
10.1 Ciurul lui Eratostene
Acesta este cel mai vechi test de primalitate cunoscut, ap˘arut ˆın jurul
anului 240 ˆı.e.n.
1
El funct ¸ioneaz˘a corect pentru orice numere prime.
Considerat un num˘ar n, pentru a testa dac˘a este prim, ˆıntocmim o list˘a
cu toate numerele naturale pornind de la 2 pˆan˘a la n. Din ea se ˆınl˘atur˘a
toate numerele care sunt multiplii de numerele prime ≤

n. Cele care
r˘amˆan ˆın list˘a sunt toate numere prime.
De exemplu, pentru a g˘asi numerele prime impare, mai mici decˆat
100, list˘amˆıntˆai numerele impare de la 3 la 100. Primul num˘ar din list˘a
este 3, astfel el este primul num˘ar prim impar.
ˆ
Inl˘atur˘am din ¸sir tot ¸i
multiplii lui 3 ¸si primul num˘ar r˘amas este 5, care este deci, prim. Pentru
el aplic˘am acela¸si procedeu. Cum 11 >

100, mai r˘amˆane s˘a aplic˘am
procedeul doar pentru 7. Toate numerele r˘amase ˆın list˘a sunt numere
prime.
10.2 C˘autare de divizori prin ˆıncerc˘ari
Testul de c˘autare de divizori prinˆıncerc˘ari, trial division, stabile¸ste dac˘a
num˘arul n este prim, verificˆand dac˘a el are divizori primi ≤

n conform
teoremei 1.1.1.
De exemplu, pentru a testa dac˘a 211 este num˘ar prim, vedem dac˘a
unul dintre numerele 2,3,5,7,11 sau 13 este divizor al s˘au.
1
Eratostene (276-194ˆı.e.n,) a studiat la ¸scoala lui Platonˆın Atena. El a scris multe
lucr˘ari ˆın domeniul matematicii, geografiei, astronomiei, istoriei, filozofiei, criticii
literare. El este cunoscut pentru m˘asur˘atorile sale geografice printre care se num˘ar˘a
¸si faimoasa m˘asurare a circumferint ¸ei p˘amˆantului.
10.3. TESTE N-1. TESTUL PEPIN 169
Pentru aˆımbun˘at˘at ¸i aplicarea practic˘a a acestei metode, facem obser-
vat ¸ia urm˘atoare: toate numerele prime, mai put ¸in 2 ¸si 3 sunt de forma
6k ±1.
Astfel, e mai practic s˘a facem ˆımp˘art ¸irile pentru 2,3,5 iar apoi s˘a
vedem dac˘a numere congruente cu 1,7,11,13,17,19,23,29 modulo 30, mai
mici decˆat

n, sunt divizori pentru n. Acest fel de factorizare e uneori
numit˘a factorizare circular˘a. Ea necesit˘a mai multe ˆımp˘art ¸iri (unii di-
vizori vor fi numere compuse), dar are avantajul c˘a nu trebuie s˘a avem
la dispozit ¸ie o list˘a de numere prime.
Oricum, cele dou˘a teste prezentate nu se aplic˘a decˆat pentru numere
mici; dac˘a n are mai mult de 25 cifre, avem nevoie de teste mai rapide.
10.3 Teste n-1. Testul Pepin
Dac˘a vom studia cu atent ¸ie o list˘a format˘a din cele mai mari numere
prime cunoscute, p, vom observa u¸sor c˘a majoritatea acestora au o form˘a
particular˘a, anume, p − 1 sau p + 1 se pot descompune foarte repede.
Acest rezultat nu este nea¸steptat pentru c˘a exist˘a teste deterministice
care verific˘a primalitatea numerelor de aceast˘a form˘a.
ˆ
In 1891, Lucas
2
a transformat mica teorem˘a a lui Fermat ˆıntr-un test
practic de primalitate, ˆımbun˘at˘at ¸it de Kraitchik ¸si Lehmer
3
:
Teorem˘a 10.3.1 Fie n > 1. Dac˘a pentru orice factor prim p al lui
n −1 exist˘a un ˆıntreg a astfel ˆıncˆat:
1. a
n−1
≡ 1 (mod n) ¸si
2. a
n−1
p
,= 1 (mod n),
atunci, n este prim.
2
Fran¸cois Edouard Anatole Lucas (1842-1891) este cunoscut ˆın special pentru
studiul f˘acut asupra ¸sirului Fibonacci ¸si a ¸sirurilor Lucas pe care le-a asociat acestuia.
El a inventat metode de testare a primalit˘at ¸ii numerelor cu ajutorul c˘arora, ˆın 1876
a ar˘atat c˘a M
127
este prim. Acest num˘ar este cel mai mare num˘ar prim descoperit
f˘ar˘a ajutorul computerelor.
3
Derrick Norman Lehmer (1905-1991), profesor la Berkeley, a obt ¸inut rezultate
importante referitoare la funct ¸iile Lucas, teste de primalitate, fract ¸ii continue, ecuat ¸ii
diofantice, tehnici computat ¸ionale. El este considerat un pionier ˆın aplicarea metode-
lor mecanice, incluzˆand ¸si computerul, pentru rezolvarea unor probleme de teoria
numerelor.
170 CAPITOLUL 10. TESTE DE PRIMALITATE
Demonstrat ¸ie. Pentru a ar˘ata c˘a n este prim, demonstr˘am c˘a φ(n) =
n −1. De fapt, pentru a simplifica, ar˘at˘am c˘a n −1 [ φ(n).
Dac˘a presupunem contrariul, exist˘a p num˘ar prim, r > 0 astfel ˆıncˆat
p
r
[ n − 1 ¸si p
r
φ(n). Pentru acest p exist˘a a care verific˘a cele dou˘a
condit ¸ii din enunt ¸ul teoremei. Fie m = ord
n
(a). Atunci, m [ n − 1 dar
m
n −1
p
. Astfel, p
r
[ m ¸si din m [ φ(n) ajungem la o contradict ¸ie.
De fapt, ˆın aceast˘a demonstrat ¸ie, se arat˘a c˘a grupul U(Z
n
) are or-
dinul n −1, deci n este num˘ar prim. Acest procedeu st˘a la baza tuturor
testelor moderne de primalitate indiferent dac˘a acestea sunt simple, ca
testul ˆın discut ¸ie, sau mai complicate, cum ar fi teste ce folosesc curbele
eliptice sau corpuri de numere.
Teorema are un inconvenient: necesit˘a factorizarea complet˘a a lui
n − 1. Din acest motiv, Poklington a stabilit un rezultat care ˆınt˘are¸ste
teorema anterioar˘a, fiind necesar˘a doar factorizarea unui divizor al lui
n −1.
Teorem˘a 10.3.2 (Teorema Poklington) Fie n−1 = p
k
R unde p este
num˘ar prim, p R. Dac˘a exist˘a un ˆıntreg a astfel ˆıncˆat:
1. a
n−1
≡ 1 (mod n) ¸si
2. (a
n−1
p
−1, n) = 1,
atunci fiecare factor prim al lui n are forma p
k
r + 1.
Demonstrat ¸ie. Fie q un divizor al lui n ¸si m = ord
q
(a). Din prima
condit ¸ie, m [ n − 1 iar din a doua, m
n −1
p
. Atunci, p
k
[ m. Astfel,
m = p
k
l. Din m [ q −1 rezult˘a q de forma cerut˘a.
Putem generaliza teorema Poklington, obt ¸inˆand testul:
Teorem˘a 10.3.3 Fie n −1 = F R unde F > R, R <

n,
F = p
α
1
1
p
α
2
2
. . . p
α
k
k
. Dac˘a pentru fiecare i = 1, . . . , k exist˘a b
i
astfel ˆıncˆat:
1. b
n−1
i
≡ 1 (mod n),
2.
_
b
n−1
p
i
i
−1, n
_
= 1,
atunci n este prim.
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 171
Dintre cazurile clasice ale teoremei 10.3.3, prezent˘am urm˘atoarele
dou˘a:
Teorem˘a 10.3.4 (Testul Pepin (1877)) Fie F
n
= 2
2
n
+ 1 al n−lea
num˘ar Fermat cu n > 1.
F
n
este prim dac˘a ¸si numai dac˘a 3
F
n
−1
2
≡ −1 (mod F
n
).
Demonstrat ¸ie. Dac˘a 3
Fn−1
2
≡ −1 (mod F
n
), din teorema 10.3.3, luˆand
b = 3, obt ¸inem F
n
num˘ar prim. Reciproc, dac˘a consider˘am F
n
prim,
Atunci,
_
3
F
n
_
≡ 3
F
n
−1
2
(mod F
n
).
Dar,
_
3
F
n
_
=
_
F
n
3
_
=
_
2
3
_
= −1.
Teorem˘a 10.3.5 (Teorema Proth (1878)) Fie n = h 2
k
+ 1 cu
2
k
> h. Dac˘a exist˘a a, num˘ar ˆıntreg, astfel ˆıncˆat a
n−1
2
≡ −1 (mod n),
atunci n este prim.
10.4 Teste n+1. Testul Lucas-Lehmer
Pentru ˆınceput, definim ¸sirurile Lucas.
Fie p ¸si q numere ˆıntregi astfel ˆıncˆat d = p
2
− 4q > 0. Atunci, poli-
nomul X
2
−pX +q are r˘ad˘acini distincte:
a =
1
2
_
p +

d
_
, b =
1
2
_
p −

d
_
.
Prin induct ¸ie, se arat˘a c˘a:
Lem˘a 10.4.1 a
m
=
V
m
+U
m

d
2
unde ¸sirurile U
m
, V
m
sunt definite
recursiv prin:
U
0
= 0, U
1
= 1, U
m
= pU
m−1
−qU
m−2
, m ≥ 2, (10.1)
V
0
= 2, V
1
= p, V
m
= pV
m−1
−qV
m−2
, m ≥ 2. (10.2)
Obt ¸inem, de fapt, pentru n ≥ 0:
U
n
=
a
n
−b
n
a −b
, V
n
= a
n
+b
n
.
172 CAPITOLUL 10. TESTE DE PRIMALITATE
Aceste ¸siruri se numesc ¸sirurile Lucas asociate numerelor p ¸si q. Un
caz particular cunoscut se obt ¸ine pentru p = 1, q = −1. Atunci, U
n
este
¸sirul numerelor Fibonacci.
Lem˘a 10.4.2 S¸irurile Lucas verific˘a urm˘atoarele relat ¸ii:
V
2n+2
= (p
2
−2q)V
2n
−q
2
V
2n−2
, (10.3)
U
2n+2
= (p
2
−2q)U
2n
−q
2
U
2n−2
, (10.4)
pentru orice n ≥ 1.
Demonstrat ¸ie. Aplic˘am relat ¸ia ( 10.1) ¸si obt ¸inem:
U
2n+2
= pU
2n+1
−qU
2n
= p (pU
2n
−qU
2n−1
) −qU
2n
= (p
2
−q)U
2n
−pqU
2n−1
= (p
2
−2q)U
2n
+q (U
2n
−pU
2n−1
)
= (p
2
−2q)U
2n
−q
2
U
2n−2
.
Cealalt˘a relat ¸ie se obt ¸ine ˆın acela¸si mod.
Lem˘a 10.4.3 Fie m un num˘ar natural, relativ prim cu p ¸si cu q. Not˘am
p

≡ ¯ q(p
2
−2q) (mod m). Atunci, ¸sirurile (U

n
)
n≥0
, (V

n
)
n≥0
definite prin
U

n
= ¯ pq
1−n
U
2n
(mod m), (10.5)
V

n
= ¯ q
n
V
2n
(mod m), (10.6)
pentru orice n ≥ 0, sunt ¸sirurile Lucas, calculate modulo m, asociate
numerelor p

¸si 1.
Demonstrat ¸ie. Ar˘at˘am c˘a ¸sirul (U

n
)
n≥0
verific˘a relat ¸ia ( 10.1). Pentru
aceasta,
U

0
≡ ¯ pqU
0
= 0 (mod m), U

1
≡ ¯ pU
2
≡ ¯ pp ≡ 1 (mod m).
Folosind lema 10.4.2, pentru n ≥ 1 obt ¸inem:
U

n+1
≡ ¯ p¯ q
n
U
2n+2
≡ ¯ p¯ q
n
(p
2
−2q)U
2n
− ¯ pq
2−n
U
2n−2
≡ ¯ pq
1−n
U
2n
¯ q(p
2
−2q) − ¯ pq
2−n
U
2(n−1)
≡ p

U

n
−1 U

n−1
.
ˆ
In mod analog, se arat˘a c˘a
V

0
≡ 2 (mod m), V

1
≡ p

(mod m), V

n+1
= p

V

n
−V

n−1
.
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 173
Se poate stabili u¸sor c˘a ¸sirurile Lucas verific˘a urm˘atoarele identit˘at ¸i:
U
2n
= U
n
V
n
(10.7)
U
2n+1
= U
n+1
V
n
−q
n
(10.8)
V
2n
= V
2
n
−2q
n
, n ≥ 1 (10.9)
V
2
n
= dU
2
n
+ 4q
n
(10.10)
V
2n+1
= V
n+1
V
n
−pq
n
. (10.11)
Aceste formule permit calculul elementelor din ¸sir pentru valori mari
ale lui n, mai ales dac˘a ˆın descompunerea lui n apar mult ¸i factori pari.
Lem˘a 10.4.4 Pentru p, q, a, definit ¸i anterior ¸si d care nu este p˘atrat
modulo n, fie 2a ≡ s+t

d (mod n) pentru s, t numere ˆıntregi cu aceea¸si
paritate. Dac˘a n este prim, atunci 2a
n
≡ s −t

d (mod n).
S˘a reformul˘am aceast˘a lem˘a folosind ¸sirul U
n
. Observ˘am c˘a lema
afirm˘a cu necesitate c˘a a
n
este conjugatul complex al lui a modulo n.
Din acest motiv, le ˆınmult ¸im ¸si rezult˘a:
Lem˘a 10.4.5 Cu p, q ca mai sus, dac˘a n este prim, atunci
U
n+1
≡ 0 (mod n).
Folosind aceste rezultate putem enunt ¸a teorema corespunz˘atoare teo-
remei 10.3.1:
Teorem˘a 10.4.1 Fie n > 1 un num˘ar impar. Dac˘a exist˘a un ¸sir Lucas
astfel ˆıncˆat sunt verificate condit ¸iile:
1.
_
d
n
_
= −1, (n, dp) = 1, U
n+1
≡ 0 (mod n)
2. Pentru orice factor prim r al lui n + 1,
_
Un+1
r
, n
_
= 1,
atunci n este prim.
De ment ¸ionat c˘a putem folosi valori diferite pentru p, q cˆat timp valoarea
lui d nu se modific˘a.
174 CAPITOLUL 10. TESTE DE PRIMALITATE
Un caz particular al acestui test este urm˘atorul, specific numerelor
Mersenne:
Teorem˘a 10.4.2 (Testul Lucas-Lehmer(1930)) Fie M
n
= 2
n
− 1,
al n− lea num˘ar Mersenne. Consider˘am ¸sirul s
k
definit recurent:
s
0
= 4, s
k+1
≡ s
2
k
−2 (mod M
n
), k ≥ 1.
Pentru n ≥ 3 num˘ar prim, M
n
este num˘ar prim Mersenne dac˘a ¸si numai
dac˘a s
n−2
≡ 0 (mod M
n
).
Demonstrat ¸ie. Vom aplica testul corespunz˘ator ¸sirurilor Lucas enunt ¸at
ˆın teorema 10.4.1.
Alegem p = 2, q = −2. Atunci, d = 12.
Calcul˘am mai ˆıntˆai simbolul
_
3
M
n
_
. Folosind legea reciprocit˘at ¸ii
p˘atratice ¸si lema lui Gauss, obt ¸inem:
_
3
M
n
_
= −
_
M
n
3
_
=
_
2
3
_
= −1.
Obt ¸inem
_
d
M
n
_
=
_
3
M
n
_
= −1.
ˆ
In cazul ˆın care, ˆın teorema 10.4.1, alegem pentru n num˘arul Mersenne
M
n
, cele dou˘a condit ¸ii din enunt ¸ul teoremei devin:
1. U
Mn+1
≡ 0 (mod M
n
)
2.
_
UM
n
+1
2
, M
n
_
= 1.
Ar˘at˘am c˘a acestea sunt echivalente cu condit ¸ia
VMn+1
2
≡ 0 (mod M
n
). (10.12)
Presupunem c˘a cele dou˘a condit ¸ii ale testului se verific˘a. Atunci, din
a doua relat ¸ie, rezult˘a c˘a UM
n
+1
2
are invers modulo M
n
.
Din ( 10.7), ¸stim c˘a U
Mn+1
= UM
n
+1
2
VM
n
+1
2
. Prima condit ¸ie implic˘a
atunci, VM
n
+1
2
≡ 0 (mod M
n
).
Reciproc, dac˘a ( 10.12) se verific˘a, prima condit ¸ie este imediat˘a.
Fie t un divizor al lui M
n
. Atunci, t este num˘ar impar. S˘a presupunem
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 175
c˘a t [ UM
n
+1
2
.
ˆ
In cazul nostru, relat ¸ia ( 10.10) arat˘a c˘a
V
2
Mn+1
2
= dU
2
Mn+1
2
+ 4q
M
n
+1
2
.
Obt ¸inem V
2
M
n
+1
2
−12U
2
M
n
+1
2
= 4(−2)
Mn+1
2
.
Aplic˘am (10.12) ¸si astfel, M
n
[ 12U
2
M
n
+1
2
+ 4(−2)
Mn+1
2
.
ˆ
In final rezult˘a t [ 4(−2)
Mn+1
2
, adic˘a t este num˘ar par.
Aceast˘a contradict ¸ie arat˘a c˘a M
n
¸si UM
n
+1
2
sunt prime ˆıntre ele.
Pentru a ˆıncheia demonstrat ¸ia acestui test, aplic˘am lema 10.4.3 pen-
tru p = 2, q = −2, m = M
n
. Atunci, p

= −4 ¸si (−2)
n
V

n
≡ V
2n
(mod M
n
).
Astfel, folosind ( 10.9),
V

2n
= (−2)
−2n
V
4n
≡ (−2)
−2n
_
V
2
2n
−2(−2)
2n
_
≡ V
2
n
−2 (mod M
n
).
Deci, V

2n
= V
2
n
−2, pentru n > 0.
Dac˘a not˘am s
j
= V

2
j
, pentru j ≥ 0, obt ¸inem ¸sirul:
s
0
= V

1
= p

= −4, s
j+1
= V

2
j+1
= V

2·2
j
=
_
V

2
j
_
2
−2 = s
2
j
−2, j > 0.
De aici, relat ¸ia ( 10.12) este echivalent˘a cu
V
2
n−1 = V
2·2
n−2 = (−2)
2
n−2
V

2
n−2 = (−2)
2
n−2
s
n−2
.
Astfel, cele dou˘a condit ¸ii din testul de primalitate 10.4.1 sunt echiva-
lente cu s
n−2
≡ 0 (mod M
n
).
Valoarea s
n−2
poart˘a numele de reziduu Lucas-Lehmer al lui n.
Acest test este deosebit de rapid deoarece nu folose¸ste ˆımp˘art ¸iri.
Spre exenplu, pentru n = 7, M
7
= 2
7
− 1 = 127. S¸irul este dat de
s
0
= 4, s
1
≡ 14 (mod 127), s
2
≡ 67 (mod 127), s
3
≡ 42 (mod 127),
s
4
≡ 111 (mod 127), s
5
≡ 0 (mod 127). Astfel, M
7
este prim.
Algoritm 10.4.1 (Algoritmul Lucas-Lehmer)
INPUT: un num˘ar Mersenne M
n
= 2
n
−1 cu n ≥ 3.
OUTPUT: un r˘aspuns referitor la primalitatea lui M
n
.
1. Se verific˘a prin metoda obi¸snuit˘ a dac˘a n are un divizor d cu
2 ≤ d ≤

n. Dac˘a exist˘a, se returneaz˘a num˘ar compus ¸si se opre¸ste.
2. s ←4.
176 CAPITOLUL 10. TESTE DE PRIMALITATE
3. Pentru k de la 1 la n −2 calculeaz˘a:
3.1. s ←(s
2
−2) mod M
n
.
4. Dac˘a s = 0 returneaz˘a num˘ar prim. Altfel, returneaz˘a
num˘ar compus.
10.5 Testul Fermat
Din teorema 3.4.4 ¸stim c˘a, dac˘a n este num˘ar prim ¸si b ∈ Z, atunci
b
n
≡ b (mod n). Cu alte cuvinte, dac˘a exist˘a un ˆıntreg b pentru care
b
n
,= b (mod n), atunci n este num˘ar compus.
De exemplu, pentru n = 129 ¸si b = 2 obt ¸inem 2
129
=
_
2
7
_
18
8 =
128
18
8 ≡ (−1)
18
8 ≡ 8 (mod 129).
ˆ
In China antic˘a numerele n pentru care 2
n
≡ 2 (mod n) se considerau
prime. Dar, reciproca micii teoreme a lui Fermat nu este adev˘arat˘a. De
exemplu, pentru num˘arul compus n = 341 = 11 31 obt ¸inem:
2
10
≡ 1 (mod 11) (10.13)
2
340
=
_
2
10
_
34
≡ 1 (mod 11) (10.14)
2
340
=
_
2
5
_
68
= 32
68
≡ 1 (mod 31) (10.15)
Din ( 10.14) ¸si ( 10.15) rezult˘a c˘a 2
340
≡ 1 (mod 341). Astfel, chiar dac˘a
341 este compus, 2
341
≡ 2 (mod 341).
Definit ¸ie 10.5.1 Fie b ≥ 2 un num˘ar natural. Un num˘arul natural
compus n care verific˘a relat ¸ia:
b
n
≡ b (mod n) (10.16)
se nume¸ste pseudoprim cu baza b.
Tabelul B.1 (vezi Anexa B) prezint˘a cele mai mici numere pseudo-
prime cu primele 100 de baze.
Observat ¸ie 10.5.1 Dac˘a (b, n) = 1, congruent ¸a ( 10.16) este echiva-
lent˘a cu
b
n−1
≡ 1 (mod n) (10.17)
10.5. TESTUL FERMAT 177
Lem˘a 10.5.1 Fie d, n numere naturale astfel ˆıncˆat d [ n. Atunci,
2
d
−1 [ 2
n
−1.
Teorem˘a 10.5.1 Exist˘a o infinitate de numere pseudoprime cu baza 2.
Demonstrat ¸ie. Ar˘at˘am c˘a pentru n, num˘ar pseudoprim impar cu baza
2, obt ¸inem m = 2
n
−1 num˘ar pseudoprim cu baza 2. Dac˘a demonstr˘am
aceast˘a afirmat ¸ie, cum 341 este pseudoprim cu baza 2, putem construi
o infinitate de numere pseudoprime impare cu baza 2 formˆand ¸sirul de
numere n
0
= 341, n
k
= 2
n
k−1
−1 pentru k ≥ 1. S¸irul fiind strict cresc˘ator,
toate numerele g˘asite sunt diferite ˆıntre ele.
Dac˘a n este pseudoprim impar, atunci n este compus ¸si verific˘a ( 10.17).
Consider˘am d un divizor netrivial al lui n. Din lema anterioar˘a rezult˘a
c˘a 2
d
− 1 este divizor al lui m ¸si se observ˘a c˘a el este diferit de 1 ¸si m.
Deci, m este compus.
Din 2
n
≡ 2 (mod n) obt ¸inem 2
n
−2 = kn pentru un k natural. Atunci,
2
m−1
= 2
2
n
−2
= 2
kn
. Aplic˘am din nou lema ¸si obt ¸inem 2
n
−1 [ 2
kn
−1
adic˘a m [ 2
m−1
−1. Astfel, 2
m−1
≡ 1 (mod m).
Presupunem c˘a relat ¸ia 2
n−1
≡ 1 (mod n) este verificat˘a pentru
num˘arul impar n. Atunci, n poate fi num˘ar prim sau pseudoprim cu baza
2. Pentru a stabili cu exactitate natura sa, trebuie testat n ˆın raport cu
alte baze. Dac˘a g˘asim un b, prim cu n, pentru care b
n−1
,= 1 (mod n),
atunci n este compus.
De exemplu, pentru 341 care este pseudoprim cu baza 2, test˘am dac˘a
relat ¸ia ( 10.17) este verificat˘a pentru b = 7. Observ˘am c˘a:
7
3
= 343 ≡ 2 (mod 341) (10.18)
2
10
= 1024 ≡ 1 (mod 341) (10.19)
Din aceste relat ¸ii,
7
340
=
_
7
3
_
113
7 ≡ 2
113
7 =
_
2
10
_
11
2
3
7 ≡ 8 7 ≡ 56 ,= 1 (mod 341).
Deci, 341 este compus.
Dar, exist˘a numere compuse n care verific˘a relat ¸ia ( 10.17), pentru
orice baze b prime cu n. Spre exemplu, dac˘a alegem n = 561 = 3 11 17
178 CAPITOLUL 10. TESTE DE PRIMALITATE
¸si o baz˘a b unde (b, n) = 1, obt ¸inem c˘a (b, 3) = 1, (b, 11) = 1, (b, 17) = 1.
Aplicˆand teorema 3.4.3, obt ¸inem:
b
560
=
_
b
2
_
280
≡ 1 (mod 3) (10.20)
b
560
=
_
b
10
_
56
≡ 1 (mod 11) (10.21)
b
560
=
_
b
16
_
35
≡ 1 (mod 17) (10.22)
de unde b
560
≡ 1 (mod 561).
Definit ¸ie 10.5.2 Un num˘ar natural compus n care verific˘a relat ¸ia
( 10.17) pentru orice b num˘ar relativ prim cu n, se nume¸ste num˘ar
Carmichael.
ˆ
In tabelul B.2, din cadrul Anexei B, al˘aturi de numerele pseudoprime cu
baza 2 mai mici decˆat 41041, sunt ment ¸ionate ¸si numerele Carmichael
existente pˆan˘a la aceast˘a limit˘a.
Propozit ¸ie 10.5.1 Fie n un num˘ar natural impar.
1) Dac˘a n se divide cu p˘atratul unui num˘ar natural > 1, atunci n nu
este un num˘ar Carmichael.
2) Dac˘a n este liber de p˘atrate, atunci n este num˘ar Carmichael dac˘a
¸si numai dac˘a p −1 [ n −1 pentru fiecare divizor prim p al lui n.
Demonstrat ¸ie. 1) Presupunem c˘a p
2
[ n, unde p este un num˘ar prim. Fie
r o r˘ad˘acin˘a primitiv modulo p
2
. Atunci, ord
p
2r = p(p − 1). Not˘am cu
n
1
produsul tuturor numerelor prime diferite de p care divid n. Aplicˆand
teorema chinezeasc˘a a resturilor, sistemul
_
x ≡ r (mod p
2
)
x ≡ 1 (mod n
1
)
are solut ¸ie unic˘a pe b. Atunci, b este r˘ad˘acin˘a primitiv˘a modulo p
2
¸si
este prim cu n deoarece nu este divizibil cu p sau cu alt factor prim care
divide n
1
.
Vom ar˘ata c˘a n nu este pseudoprim cu baza b, deci nu va fi num˘ar
Carmichael.
Pentru aceasta, presupunem contrariul, adic˘a b
n−1
≡ 1 (mod n). Atunci,
din p
2
[ n, rezult˘a b
n−1
≡ 1 (mod p
2
). Dar, ord
p
2b = p(p − 1) implic˘a
10.5. TESTUL FERMAT 179
p(p − 1) [ n − 1 de unde obt ¸inem p [ n − 1. Din p [ n rezult˘a p = 1 ce
contrazice faptul c˘a p este prim.
2)
ˆ
In acest caz, n = p
1
p
2
. . . p
k
unde p
i
sunt numere prime distincte.
Presupunem mai ˆıntˆai c˘a p
i
−1 [ n −1 pentru fiecare 1 ≤ i ≤ k. Atunci,
pentru fiecare i exist˘a t
i
astfel ˆıncˆat n−1 = t
i
(p
i
−1). Fie b unˆıntreg prim
cu n. Aplic˘am teorema 3.4.3 ¸si obt ¸inem b
n−1
=
_
b
pi−1
_
ti
≡ 1 (mod p
i
).
Din corolarul 3.1.2, rezult˘a b
n−1
≡ 1 (mod n).
Reciproc, presupunem c˘a n este num˘ar Carmichael dar exist˘a un p
j
pentru care p
j
−1 n −1. Atunci, fie r o r˘ad˘acin˘a primitiv˘a modulo p
j
.
Ca ˆın demonstrat ¸ia primului punct, g˘asim un ˆıntreg b, prim cu n, care
verific˘a
_
_
_
b ≡ r (mod p
j
)
b ≡ 1
_
mod
n
p
j
_
Atunci, ca ¸si ˆınainte, (b, n) = 1 ¸si b
n−1
≡ r
n−1
(mod p
j
). Dar, p
j
−1 n−1
de unde, r
n−1
,= 1 (mod p
j
). Astfel, b
n−1
,= 1 (mod p
j
) ceea ce arat˘a c˘a
b
n−1
,= 1 (mod n), fals.
Propozit ¸ie 10.5.2 Un num˘ar Carmichael trebuie s˘a fie produsul a cel
put ¸in trei factori primi distinct ¸i.
Demonstrat ¸ie. Propozit ¸ia anterioar˘a a stabilit c˘a orice num˘ar Carmichael
este liber de p˘atrate. Ar˘at˘am c˘a un astfel de num˘ar nu poate fi un
produs de dou˘a numere prime distincte. Pentru aceasta, fie n = pq
unde p, q sunt prime, distincte. Alegem p < q. Dac˘a n este un num˘ar
Carmichael, atunci, conform propozit ¸iei anterioare, q − 1 [ n − 1. Deci,
n − 1 ≡ 0 (mod q − 1). Pe de alt˘a parte, din n − 1 = p(q − 1 + 1) − 1,
obt ¸inem n −1 ≡ p −1 (mod q −1).
Dar, din 0 < p − 1 < q − 1 rezult˘a n − 1 ,= 0 (mod q − 1). Aceast˘a
contradict ¸ie ˆıncheie demonstrat ¸ia.
Observat ¸ie 10.5.2
ˆ
In anul 1992, deci suficient de recent, Alford, Gran-
ville ¸si Pomerance au demonstrat c˘a exist˘a o infinitate de numere
Carmichael (vezi [1]).
Mica teorem˘a a lui Fermat afirm˘a c˘a pentru un num˘ar prim n ¸si a un
ˆıntreg , 1 ≤ a ≤ n − 1, atunci a
n−1
≡ 1 (mod n). Dup˘a cum am v˘azut,
reciproca teoremei lui Fermat nu este adev˘arat˘a.
180 CAPITOLUL 10. TESTE DE PRIMALITATE
Ideea testului Fermat este urm˘atoarea:
Pentru num˘arul n, a c˘arui primalitate o cercet˘am, alegem b > 1 ¸si cal-
cul˘am b
n−1
(mod n). Dac˘a rezultatul nu este 1, atunci num˘arul este
compus ¸si b se nume¸ste martor Fermat al faptului c˘a n este compus.
Dac˘a este egal cu 1, atunci n este prim sau pseudoprim cu baza b.
Acest test st˘a la baza testelor probabilistice de primalitate. El nu
este cu adev˘arat un test probabilistic deoarece el nu poate distinge ˆıntre
numerele prime ¸si numerele Carmichael.
Algoritm 10.5.1 (Algoritm Fermat)
INPUT: un num˘ar n > 2 impar, un parametru de securitate t > 1.
OUTPUT: un r˘aspuns referitor la primalitatea lui n.
1. Pentru i de la 1 la t :
1.1. Alege aleator un ˆıntreg b cu 2 ≤ b ≤ n −2.
1.2. Calculeaz˘a r = b
n−1
mod n folosind algoritmul 3.1.1.
1.3. Dac˘a r ,= 1, atunci returneaz˘a num˘ar compus ¸si
se opre¸ste
2. Returneaz˘a num˘ar prim.
10.6 Testul Solovay-Strassen
Fie p num˘ar prim impar ¸si b ∈ Z, cu p b.
Conform criteriului lui Euler, b
p−1
2

_
b
p
_
(mod p).
Deci, dac˘a dorim s˘a test˘am dac˘a un num˘ar natural n este prim,
putem alege un b, prim cu n ¸si verific˘am dac˘a b
n−1
2

_
b
n
_
(mod n).
Dac˘a congruent ¸a nu se verific˘a, atunci n este compus.
De exemplu, pentru n = 341 ¸si b = 2, obt ¸inem 2
170
≡ 1 (mod 341).
Din 341 ≡ −3 (mod 8), rezult˘a
_
2
341
_
= −1.
Deci, 2
170
,=
_
2
341
_
(mod 341), de unde, 341 este compus.
Definit ¸ie 10.6.1 Un num˘ar natural compus n, care verific˘a congruent ¸a
b
n−1
2

_
b
n
_
(mod n), (10.23)
10.6. TESTUL SOLOVAY-STRASSEN 181
pentru b ∈ Z, (b, n) = 1, se nume¸ste num˘ar Euler pseudoprim cu baza b.
De exemplu, n = 1105 este Euler pseudoprim cu baza b = 2 deoarece
2
552
≡ 1 (mod 1105) ¸si, din 1105 ≡ 1 (mod 8), rezult˘a
_
2
1105
_
= 1.
Teorem˘a 10.6.1 Dac˘a n este Euler pseudoprim cu baza b, atunci n este
pseudoprim cu baza b.
Demonstrat ¸ie. Cum n este Euler pseudoprim cu baza b, congruent ¸a
b
n−1
2

_
b
n
_
(mod n)
este verificat˘a. Astfel, b
n−1

_
b
n
_
2
(mod n). Dar,
_
b
n
_
= ±1, de
unde b
n−1
≡ 1 (mod n).
Observat ¸ie 10.6.1 Trebuie s˘a remarc˘am faptul c˘a nu orice num˘ar pseu-
doprim este Euler pseudoprim. Astfel, din exemplul anterior, 341, despre
care ¸stim c˘a este pseudoprim cu baza 2, nu este Euler pseudoprim cu baza
2.
Lem˘a 10.6.1 Fie n num˘ar impar care nu este p˘atrat perfect. Atunci
exist˘a cel put ¸in un num˘ar natural b, 1 < b < n, relativ prim cu n, pentru
care
_
b
n
_
= −1.
Demonstrat ¸ie. Dac˘a n este num˘ar prim, propozit ¸ia 7.1.1 ne asigur˘a de
existent ¸a unui astfel de b.
Consider˘am acum c˘a n este compus. T¸ inˆand cont de condit ¸ia impus˘a
lui n, aceea c˘a n nu este p˘atrat perfect, putem scrie n = r s, unde
(r, s) = 1 ¸si r = p
a
, cu p prim impar, a num˘ar impar. Fie t un non-
rest p˘atratic modulo p (existent ¸a lui este asigurat˘a de propozit ¸ia 7.1.1).
Folosind teorema chinezeasc˘a a resturilor, exist˘a 1 < b < n, prim cu n
care verific˘a
_
b ≡ t (mod r)
b ≡ 1 (mod s)
182 CAPITOLUL 10. TESTE DE PRIMALITATE
Atunci,
_
b
r
_
=
_
b
p
a
_
=
_
b
p
_
a
= (−1)
a
= −1 ¸si
_
b
s
_
= 1. De aici,
_
b
n
_
=
_
b
r
_

_
b
s
_
= −1.
Lem˘a 10.6.2 Fie n num˘ar compus impar. Atunci, exist˘a cel put ¸in un
1 < b < n, prim cu n, pentru care b
n−1
2
,=
_
b
n
_
(mod n).
Demonstrat ¸ie. Vom presupune c˘a nu exist˘a un astfel de b, adic˘a, pen-
tru toate numerele b mai mici decˆat n ¸si prime cu n, avem b
n−1
2

_
b
n
_
(mod n). Atunci, pentru fiecare astfel de b, obt ¸inem:
b
n−1

_
b
n
_
2
= (±1)
2
= 1 (mod n).
De aici, rezult˘a c˘a n este num˘ar Carmichael. Astfel, n = p
1
p
2
. . . p
k
,
unde p
i
sunt numere prime distincte.
Vom ar˘ata c˘a b
n−1
2
≡ 1 (mod n), pentru orice 1 < b < n, prim cu n.
Pentru aceasta, reducem la absurd ¸si presupunem c˘a exist˘a un 1 < b < n,
prim cu n, pentru care b
n−1
2
,= 1 (mod n). Aplic˘am teorema chinezeasc˘a
a resturilor pentru a obt ¸ine un num˘ar 1 < a < n, prim cu n, care verific˘a
sistemul:
_
a ≡ b (mod p
1
)
a ≡ 1 (mod p
2
. . . p
k
)
Rezult˘a a
n−1
2
≡ b
n−1
2
≡ −1 (mod p
1
) ¸si a
n−1
2
≡ 1 (mod p
2
. . . p
k
).
Deci, a
n−1
2
,= ±1 (mod n), rezultat ce contrazice presupunerea f˘acut˘a
la ˆınceputul demonstrat ¸iei.
Astfel, b
n−1
2
≡ 1 (mod n), pentru orice 1 < b < n, prim cu n. De aici,
t ¸inˆand cont de ipoteza de lucru, obt ¸inem b
n−1
2

_
b
n
_
= 1 (mod n),
pentru orice 1 < b < n, prim cu n.
Acest rezultat contrazice afirmat ¸ia f˘acut˘a ˆın lema 10.6.1, deci pre-
supunerea f˘acut˘a la ˆınceputul demonstrat ¸iei este fals˘a.
Teorem˘a 10.6.2 (Solovay) Fie n num˘ar compus impar. Num˘arul nu-
merelor mai mici decˆat n, prime cu n, ˆın raport cu care n este Euler
pseudoprim este mai mic decˆat
φ(n)
2
.
10.6. TESTUL SOLOVAY-STRASSEN 183
Demonstrat ¸ie. Din lema 10.6.2, exist˘a un 1 < b < n, prim cu n, pentru
care b
n−1
2
,=
_
b
n
_
(mod n). Fie a
1
, a
2
, . . . , a
m
toate numerele mai mici
dacˆat n, prime cu n pentru care
a
n−1
2
j

_
a
j
n
_
(mod n) (10.24)
pentru 1 ≤ j ≤ m. Fie r
1
, r
2
, . . . , r
m
resturile modulo n ale numerelor
ba
1
, ba
2
, . . . , ba
m
. Se verific˘a u¸sor c˘a r
j
sunt distinct ¸i ¸si primi cu n, pentru
1 ≤ j ≤ m.
Dac˘a pentru un j ar avea loc congruent ¸a r
n−1
2
j

_
r
j
n
_
(mod n), atunci
(ba
j
)
n−1
2

_
ba
j
n
_
(mod n). Astfel, b
n−1
2
a
n−1
2
j

_
b
n
_

_
a
j
n
_
(mod n).
Din relat ¸ia ( 10.24), obt ¸inem b
n−1
2

_
b
n
_
(mod n), ceea ce contrazice
alegerea lui b.
Deci, pentru orice 1 ≤ j ≤ m, r
n−1
2
j
,=
_
r
j
n
_
(mod n).
Cum pentru fiecare j, numerele a
j
verific˘a congruent ¸ele ( 10.24), ˆın
timp ce r
j
nu le verific˘a, cele dou˘a mult ¸imi formate cu aceste elemente
sunt disjuncte. Am obt ¸inut astfel 2m numere mai mici decˆat n ¸si prime
cu n. Deci, 2m ≤ φ(n), de unde m ≤
φ(n)
2
.
Observat ¸ie 10.6.2 Dac˘a n este num˘ar compus ¸si se alege aleator un
num˘ar 1 < b < n, prim cu n, probabilitatea ca n s˘a fie Euler pseudoprim
cu baza b este mai mic˘a decˆat
1
2
.
Testul probabilistic de primalitate Solovay
4
-Strassen
5
a fost primul
test popularizat la aparit ¸ia criptografiei cu cheie public˘a, ˆın particular,
a criptosistemului RSA. El nu mai este folosit, deoarece testul Miller-
Rabin este o alternativ˘a mai eficient˘a ¸si cel put ¸in la fel de corect˘a.
4
Robert Solovay, profesor la Berkeley, are multe contribut ¸ii remarcabile ˆın mate-
matic˘a, g˘asind solut ¸ii decisive pentru probleme dificile de interes general, cum ar fi
testarea primalit˘at ¸ii.
5
Volker Strassen, matematician german, care, pentru munca sa ˆın studiul test˘arii
primalit˘at ¸ii, a primit ˆın anul 2003 premiul Paris Kanellakis al ACM, Association for
Computing Machinery.
184 CAPITOLUL 10. TESTE DE PRIMALITATE
Criteriul lui Euler, teorema 7.1.1, precizeaz˘a c˘a, pentru un num˘ar
prim n, avem a
n−1
2

_
a
n
_
(mod n), pentru orice ˆıntreg a relativ prim
cu n.
Testul de fat ¸˘a se bazeaz˘a pe acest criteriu. Astfel, dac˘a pentru un
a obt ¸inem (a, n) ,= 1 sau a
n−1
2
,=
_
a
n
_
(mod n), num˘arul este compus
iar a se nume¸ste martor Euler (pentru faptul c˘a num˘arul este compus)
pentru n.
ˆ
In caz contrar, n este prim sau Euler pseudoprim cu baza a.
Teorem˘a 10.6.3 Fie n un num˘ar compus impar. Probabilitatea ca tes-
tul Solovay-Strassen, aplicat pentru t baze diferite, s˘a declare num˘arul n
ca fiind prim este mai mic˘a decˆat
_
1
2
_
t
.
Algoritm 10.6.1 (Test Solovay-Strassen)
INPUT: un num˘ar n > 2 impar, un parametru de securitate t > 1.
OUTPUT: un r˘aspuns referitor la primalitatea lui n.
1. Pentru i de la 1 la t :
1.1. Alege aleator un ˆıntreg a cu 2 ≤ a ≤ n −2.
1.2. Calculeaz˘a r = a
n−1
2
mod n folosind algoritmul 3.1.1.
1.3. Dac˘a r ,= 1, ¸si r ,= n −1, atunci returneaz˘a
num˘ar compus ¸si se opre¸ste.
1.4. Calculeaz˘a simbolul Jacobi s =
_
a
n
_
folosind
algoritmul 7.3.1
1.5. Dac˘a r ,= s mod n, returneaz˘ a num˘ar compus ¸si
se opre¸ste.
2. Returneaz˘a num˘ar prim.
Observ˘am c˘a, dac˘a d = (a, n) > 1, atunci, d [ a
n−1
2
(mod n). Astfel,
testˆand la pasul 1.3. dac˘a r ,= 1, elimin˘am necesitatea de a verifica dac˘a
(a, n) ,= 1.
10.7. TESTUL MILLER-RABIN 185
10.7 Testul Miller-Rabin
S˘a presupunem c˘a n verific˘a congruent ¸a ( 10.17) pentru b prim cu n.
Putem luaˆın considerare restul lui b
n−1
2
modulo n. Astfel, dac˘a x = b
n−1
2
,
atunci congruent ¸a devine x
2
≡ 1 (mod n).
ˆ
In cazul ˆın care n este prim,
x ≡ ±1 (mod n).
Deci, dac˘a congruent ¸a ( 10.17) este verificat˘a, putem vedea dac˘a
b
n−1
2
≡ ±1 (mod n).
ˆ
In situat ¸ia ˆın care aceast˘a relat ¸ie nu se verific˘a,
atunci n este compus.
Spre exemplu, dac˘a alegem cel mai mic num˘ar Carmichael n = 561,
pentru b = 5 obt ¸inem 5
561−1
2
= 5
280
≡ 67 (mod 561), deci 561 este
compus.
Definit ¸ie 10.7.1 Fie n > 2 num˘ar natural impar cu n − 1 = 2
s
t unde
s, t sunt numere naturale cu t impar. Spunem c˘a n trece testul Miller
pentru baza b, un num˘ar natural, prim cu n, dac˘a este verificat˘a una
dintre urm˘atoarele condit ¸ii:
b
t
≡ 1 (mod n) (10.25)
∃ 0 ≤ j ≤ s −1, b
2
j
t
≡ −1 (mod n). (10.26)
Teorem˘a 10.7.1 Fie n un num˘ar prim ¸si b un num˘ar natural, prim cu
n. Atunci, n trece testul Miller pentru baza b.
Demonstrat ¸ie. Fie n − 1 = 2
s
t cu t impar. Pentru fiecare 0 ≤ k ≤ s
consider˘am
x
k
= b
n−1
2
k
= b
2
s−k
t
.
Din teorema 3.4.3, cum n este prim, x
0
= b
n−1
≡ 1 (mod n). Atunci,
x
2
1
=
_
b
n−1
2
_
2
= x
0
≡ 1 (mod n), de unde x
1
≡ ±1 (mod n).
Dac˘a x
1
≡ 1 (mod n), atunci x
2
2
= x
1
≡ 1 (mod n), de unde x
2

±1 (mod n). Pe caz general, dac˘a am g˘asit
x
0
≡ x
1
≡ x
2
≡ . . . ≡ x
k
≡ 1 (mod n), k < s,
atunci x
2
k+1
≡ 1 (mod n) ¸si obt ¸inem x
k+1
≡ ±1 (mod n).
Continuˆand procedeul, obt ¸inem x
k
≡ 1 (mod n) pentru orice k sau exist˘a
un j pentru care x
j
≡ −1 (mod n). Deci, n trece testul Miller pentru
baza b.
186 CAPITOLUL 10. TESTE DE PRIMALITATE
Propozit ¸ie 10.7.1 Dac˘a n trece testul Miller pentru baza b, el este
pseudoprim cu baza b.
Demonstrat ¸ie. Presupunem acelea¸si notat ¸ii. Dac˘a n verific˘a condit ¸ia
( 10.25), atunci b
n−1
= (b
t
)
2
s
≡ 1 (mod n).
ˆ
In cazul ˆın care este verificat˘a
condit ¸ia ( 10.26), b
n−1
=
_
b
2
j
t
_
2
s−j
≡ (−1)
2
s−j
≡ 1 (mod n).
Definit ¸ie 10.7.2 Spunem c˘a un num˘ar compus n este tare pseudoprim
cu baza b unde (b, n) = 1 dac˘a el trece testul Miller pentru baza b.
Spre exemplu, dac˘a consider˘am n = 2047 = 23 89, n −1 = 2 1023.
Observ˘am c˘a
2
2046
2
= 2
1023
= (2
11
)
93
≡ 1 (mod 2047).
Deci, 2047 este tare pseudoprim cu baza 2.
Teorem˘a 10.7.2 Exist˘a o infinitate de numere tari pseudoprime cu
baza 2.
Demonstrat ¸ie. Ar˘at˘am c˘a dac˘a n este pseudoprim impar cu baza 2,
atunci m = 2
n
−1 este tare pseudoprim cu baza 2.
Fie n num˘ar compus impar ¸si 2
n−1
≡ 1 (mod n). Atunci, 2
n−1
−1 = kn,
cu k impar.
m−1 = 2
n
−2 = 2(2
n−1
−1) = 2kn.
Deci, ˆın acest caz, s = 1, t = kn impar.
2
m−1
2
= 2
nk
= (2
n
)
k
= (m+ 1)
k
≡ 1 (mod m).
Astfel, m trece testul Miller pentru baza 2. Din teorema 10.5.1, exist˘a o
infinitate de numere pseudoprime cu baza 2, ¸si astfel obt ¸inem o infinitate
de numere tari pseudoprime cu baza 2.
Teorem˘a 10.7.3 Dac˘a n este tare pseudoprim cu baza b, atunci el este
Euler pseudoprim cu baza b.
Demonstrat ¸ie. Fie n −1 = 2
s
t, cu t impar ¸si s natural nenul.
Fie n =
m

i=1
p
αi
i
, descompunerea sa canonic˘a ˆın factori primi.
10.7. TESTUL MILLER-RABIN 187
Presupunem ˆıntˆai cazul cˆand b
t
≡ 1 (mod n).
Fie p un divizor prim al lui n. Atunci, b
t
≡ 1 (mod p), de unde ord
p
b [ t.
Cum t este impar, rezult˘a ord
p
b num˘ar impar.
Dar, ord
p
b [ φ(p) = p −1, de unde ord
p
b [
p−1
2
.
Astfel, b
p−1
2
≡ 1 (mod p) ¸si, aplicˆand criteriul lui Euler,
_
b
p
_
= 1,
pentru orice divizor prim p al lui n. Atunci,
_
b
n
_
=
m

i=1
_
b
p
i
_
α
i
= 1.
Din b
t
≡ 1 (mod n) rezult˘a b
n−1
2
= (b
t
)
2
s−1
≡ 1 (mod n).
Pentru cazul ˆın care exist˘a 0 ≤ j ≤ s−1 astfel ca b
2
j
t
≡ −1 (mod n),
obt ¸inem c˘a b
2
j
t
≡ −1 (mod p), pentru orice divizor prim p al lui n.
Ridicˆand la p˘atrat, rezult˘a b
2
j+1
t
≡ 1 (mod p), de unde ord
p
b [ 2
j+1
t.
Din ord
p
b 2
j
t, avem ord
p
b = 2
j+1
c, cu c num˘ar impar.
2
j+1
[ ord
p
b ¸si ord
p
b [ p − 1, implic˘a 2
j+1
[ p − 1. Deci, exist˘a d ∈ Z,
astfel ˆıncˆat p = 2
j+1
d + 1.
Din b
ordpb
2
≡ −1 (mod p), rezult˘a
_
b
p
_
≡ b
p−1
2
=
_
b
ord
p
b
2
_
p−1
ord
p
b
≡ (−1)
p−1
2
j+1
c
(mod p).
Cum c este impar, (−1)
c
≡ −1 (mod p), de unde
_
b
p
_
≡ (−1)
p−1
2
j+1
≡ (−1)
d
(mod p).
Am ar˘atat c˘a, pentru fiecare 1 ≤ i ≤ m, exist˘a d
i
∈ Z, astfel ca
divizorii p
i
s˘a fie de forma p
i
= 2
j+1
d
i
+ 1. Atunci,
n =
m

i=1
p
α
i
i
=
m

i=1
_
2
j+1
d
i
+ 1
_
αi

m

i=1
_
1 + 2
j+1
α
i
d
i
_
≡ 1 + 2
j+1
m

i=1
d
i
α
i
(mod 2
j+2
).
Deci, 2
s−1
t =
n −1
2
≡ 2
j
m

i=1
d
i
α
i
(mod 2
j+1
).
188 CAPITOLUL 10. TESTE DE PRIMALITATE
Astfel, obt ¸inem t 2
s−j−1

m

i=1
d
i
α
i
(mod 2). De aici,
b
n−1
2
=
_
b
2
j
t
_
2
s−j−1
≡ (−1)
2
s−j−1
= (−1)
m

i=1
d
i
α
i
(mod n).
Pe de alt˘a parte,
_
b
n
_
=
m

i=1
_
b
p
i
_
α
i
=
m

i=1
_
(−1)
di
_
αi
=
m

i=1
(−1)
αidi
= (−1)
m

i=1
αidi
.
Deci, ¸si ˆın acest caz, n este Euler pseudoprim cu baza b.
Observat ¸ie 10.7.1 Nu orice num˘ar Euler pseudoprim cu baza b este
tare pseudoprim cu baza b. De exemplu, am v˘azut c˘a 1105 este Euler
pseudoprim cu baza 2.
1104 = 2
4
69. Calculˆand, obt ¸inem:
2
69
≡ 138 ,= ±1 (mod 1105), 2
276
≡ 781 (mod 1105),
2
138
≡ 259 (mod 1105), 2
552
≡ 1 ,= −1 (mod 1105).
De aici, 1105 nu este tare pseudoprim cu baza 2.
Cu toate acestea, ˆın anumite cazuri particulare, cele dou˘a tipuri de
numere coincid.
Propozit ¸ie 10.7.2 Dac˘a n ≡ 3 (mod 4) ¸si n este Euler pseudoprim cu
baza b, atunci el este tare pseudoprim cu baza b.
Demonstrat ¸ie. Din n ≡ 3 (mod 4), putem scrie n −1 = 2 t, unde t este
impar. n este Euler pseudoprim, deci b
t
= b
n−1
2

_
b
n
_
(mod n). Cum
_
b
n
_
= ±1, rezult˘a b
t
≡ ±1 (mod n), adic˘a n este tare pseudoprim cu
baza b.
Propozit ¸ie 10.7.3 Dac˘a n este Euler pseudoprim cu baza b ¸si
_
b
n
_
= −1, atunci n este tare pseudoprim cu baza b.
10.7. TESTUL MILLER-RABIN 189
Demonstrat ¸ie. Fie n − 1 = 2
s
t, unde t este impar ¸si s natural. Din
ipotez˘a, obt ¸inem b
2
s−1
t
= b
n−1
2

_
b
n
_
≡ −1 (mod n). Deci, n este tare
pseudoprim cu baza b.
Not˘am cu Ψ
k
cel mai mic num˘ar tare pseudoprim cu primele k nu-
mere prime alese ca baze.
ˆ
In anul 1993, Jaeschke a calculat Ψ
k
, pentru 5 ≤ k ≤ 8 ¸si a dat
margini superioare pentru 9 ≤ k ≤ 11. Astfel,
Ψ
1
= 2047
Ψ
2
= 1373653
Ψ
3
= 25326001
Ψ
4
= 3215031751
Ψ
5
= 2152302898747
Ψ
6
= 3474749660383
Ψ
7
= 341550071728321
Ψ
8
= 341550071728321
Ψ
9
≤ 41234316135705689041
Ψ
10
≤ 1553360566073143205541002401
Ψ
11
≤ 56897193526942024370326972321
De asemenea, el a ar˘atat c˘a exist˘a 101 numere tari pseudoprime cu
bazele 2,3 ¸si 5 mai mici decˆat 10
12
. Dac˘a ad˘aug˘am ¸si baza 7 sunt 9 iar
ˆın cazul ˆın care ¸si 11 este ales drept baz˘a, nu exist˘a nici unul.
Observ˘am c˘a primul num˘ar tare pseudoprim cu bazele 2, 3, 5, 7 este
3215031751. Putem concluziona acum c˘a, dac˘a aplic˘am testul Miller
pentru un num˘ar ≤ 2, 5 10
10
, diferit de 3215031751, ¸si acesta trece
testul pentru bazele 2, 3, 5, 7, el este prim.
La fel, dac˘a aplic˘am un test ˆın ¸sapte pa¸si, rezultatele anterioare per-
mit verificarea primalit˘at ¸ii tuturor numerelor ≤ 3, 4 10
14
.
Testul Miller-Rabin se bazeaz˘a pe not ¸iunea de num˘ar tare pseudo-
prim, prezentat˘a anterior.
Pentru a verifica dac˘a un num˘ar impar n este prim sau nu, folosind
acest test, scriem ˆıntˆai n − 1 = 2
s
t unde t este impar ¸si alegem la
ˆıntˆamplare o baz˘a b, 1 < b < n. Dac˘a n nu trece testul Miller pen-
tru aceast˘a baz˘a, atunci el este compus. Altfel, n este prim sau tare
pseudoprim cu baza b.
190 CAPITOLUL 10. TESTE DE PRIMALITATE
Teorem˘a 10.7.4 (Rabin) Dac˘a n este nu num˘ar impar compus, acesta
trece testul Miller-Rabin pentru cel mult
n −1
4
baze b cu 1 ≤ b ≤ n −1.
Pentru a demonstra teorema, avem nevoie de urm˘atorul rezultat care
este un caz particular al teoremei 6.3.1:
Lem˘a 10.7.1 Fie p un num˘ar prim impar ¸si k, t numere naturale.
Congruent ¸a x
t
≡ 1(mod p
k
) are exact (t, p
k−1
(p − 1)) solut ¸ii necongru-
ente modulo p
k
.
Demonstrat ¸ia teoremei. Fie n = p
k
1
1
p
k
2
2
. . . p
k
m
m
un num˘ar compus
care trece testul Miller pentru baza b. Fie n − 1 = 2
s
t, cu t impar.
Atunci, b
n−1
≡ 1 (mod n), indiferent de condit ¸ia din definit ¸ia testului
Miller care se verific˘a. Conform lemei anterioare, pentru 1 ≤ i ≤ m,
congruent ¸a x
n−1
≡ 1 (mod p
ki
i
) are (n−1, p
ki−1
i
(p
i
−1)) = (n−1, p
i
−1)
solut ¸ii necongruente.
Astfel, folosind teorema chinezeasc˘a a resturilor, obt ¸inem c˘a exist˘a
m

i=1
(n−1, p
i
−1) solut ¸ii necongruente ale congruent ¸ei x
n−1
≡ 1 (mod n).
Consider˘am dou˘a cazuri:
1. Mai ˆıntˆ ai, presupunem c˘a exist˘a j, cu 1 ≤ j ≤ m, pentru care k
j
≥ 2.
Observ˘am c˘a
p
j
−1
p
kj
j
=
1
p
kj−1
j

1
p
kj
j

2
9
pentru c˘a, valorile cele mai
mari ale expresiei se obt ¸in cˆand p
j
= 3 ¸si k
j
= 2. Atunci,
m

i=1
(n −1, p
i
−1) ≤
m

i=1
(p
i
−1) ≤
_
_

i=j
p
i
_
_

_
2
9
p
k
j
j
_

2
9
n.
Deci, num˘arul de solut ¸ii necongruente modulo n ale congruent ¸ei
x
n−1
≡ 1 (mod n) este ≤
2
9
n.
Observ˘am c˘a pentru n ≥ 9,
2
9
n ≤
1
4
(n − 1). Astfel, exist˘a cel mult
n −1
4
baze 1 ≤ b ≤ n, ˆın raport cu care n este tare pseudoprim.
2. Presupunem acun n = p
1
p
2
. . . p
m
.
Pentru fiecare i, fie p
i
−1 = 2
s
i
t
i
, cu tot ¸i t
i
impari. Dup˘a o eventual˘a
10.7. TESTUL MILLER-RABIN 191
renumerotare, vom avea s
1
≤ s
2
≤ . . . ≤ s
m
.
Cu notat ¸iile f˘acute, pentru 1 ≤ i ≤ m,
(n −1, p
i
−1) = 2
min(s,s
i
)
(t, t
i
).
Conform lemei, fiecare congruent ¸˘a x
t
≡ 1 (mod p
i
) are T
i
= (t, t
i
) solut ¸ii
necongruente.
Consider˘am acum congruent ¸ele
x
2
j
·t
≡ −1 (mod p
i
), 1 ≤ i ≤ m.
Folosind teorema 6.3.1, stabilim ˆın ce condit ¸ii aceste congruent ¸e au
solut ¸ii.
Dac˘a 0 ≤ j ≤ s
i
− 1, pentru fiecare i, congruent ¸a are 2
j
T
i
solut ¸ii
necongruente.
Dac˘a j ≥ s
i
, atunci (2
j
t, p
i
− 1) = 2
si
T
i
¸si
p
i
−1
2
si
T
i
=
t
i
T
i
este impar.
Rezult˘a (−1)
t
i
T
i
≡ −1 (mod p
i
) ¸si astfel, ˆın acest caz, nu exist˘a solut ¸ii.
Am obt ¸inut urm˘atorul rezultat:
pentru congruent ¸a x
t
≡ 1 (mod n) exist˘a T = T
1
T
2
. . . T
m
solut ¸ii necon-
gruente ¸si
pentru x
2
j
·t
≡ −1 (mod n), cu 0 ≤ j ≤ s
1
− 1 exist˘a 2
jm
T
1
T
2
. . . T
m
solut ¸ii necongruente.
ˆ
In total, vor exista
T
_
_
1 +
s
1
−1

j=0
2
jm
_
_
= T
_
1 +
2
ms
1
−1
2
m
−1
_
baze b ≤ n −1 ˆın raport cu care n este tare pseudoprim.
ˆ
In acest caz,
φ(n) = (p
1
−1)(p
2
−1) . . . (p
m
−1) = t
1
t
2
. . . t
m
2
s
1
+s
2
+...+s
m
.
Ar˘at˘am c˘a T
_
1 +
2
ms1
−1
2
m
−1
_

φ(n)
4
.
Pentru aceasta, cum T = T
1
T
2
. . . T
m
≤ t
1
t
2
. . . t
m
, r˘amˆane de demon-
strat c˘a
_
1 +
2
ms
1
−1
2
m
−1
_

1
2
s
1
+s
2
+...+s
m

1
4
. (10.27)
192 CAPITOLUL 10. TESTE DE PRIMALITATE
Din s
1
≤ s
2
≤ . . . ≤ s
m
, rezult˘a
_
1 +
2
ms
1
−1
2
m
−1
_

1
2
s
1
+s
2
+...+s
m

_
1 +
2
ms
1
−1
2
m
−1
_

1
2
ms
1
=
=
1
2
ms1
+
2
ms1
−1
2
ms1
(2
m
−1)
=
1
2
ms1
+
1
2
m
−1

1
2
ms1
(2
m
−1)
=
=
1
2
m
−1
+
2
m
−2
2
ms
1
(2
m
−1)

1
2
m
−1
+
2
m
−2
2
m
(2
m
−1)
=
=
1
2
m
−1
+
2
2
m

1
2
m
−1
=
1
2
m−1
.(10.28)
Dac˘a m ≥ 3, din ( 10.28) rezult˘a ( 10.27).
Pentru m = 2, obt ¸inem n = p
1
p
2
. Dac˘a s
1
< s
2
,
_
1 +
2
2s1
−1
3
_

1
2
s1+s2
=
_
1 +
2
2s1
−1
3
_

1
2
2s1
2
s2−s1
=
=
_
1
3
+
1
3 2
2s
1
−1
_

1
2
s
2
−s
1

1
2

_
1
3
+
1
6
_
=
1
4
. (10.29)
Astfel, ( 10.27) se verific˘a ¸si ˆın acest caz.
R˘amˆane cazul ˆın care s
1
= s
2
.
Presupunem p
1
> p
2
. Dac˘a T
1
= t
1
, atunci p
1
−1 [ n −1.
Din n ≡ 1 (mod p
1
−1) ¸si n = p
1
p
2
≡ p
2
(mod p
1
−1), rezult˘a
p
2
≡ 1 (mod p
1
−1). Deci, p
2
> p
1
, ceea ce contrazice alegerea noastr˘a.
Astfel, T
1
,= t
1
. Pentru c˘a T
1
= (t, t
1
), rezult˘a t
1
= T
1
d, unde d > 1.
Dar, t
1
, T
1
fiind impari, rezult˘a d ≥ 3. Astfel, T
1

t
1
3
.
Dac˘a presupunem p
1
< p
2
¸si refacem rat ¸ionamentul anterior, obt ¸inem
T
2
,= t
2
, de fapt, T
2

t
2
3
.
Deci, indiferent de presupunerea f˘acut˘a, T
1
T
2

t
1
t
2
3
. Cum s
1
≥ 1,
rezult˘a
_
1 +
2
2s
1
−1
3
_

1
2
2s
1

1
2
.
Astfel, obt ¸inem:
T
1
T
2
_
1 +
2
2s
1
−1
3
_

t
1
t
2
2
2s
1
6
=
φ(n)
6

n −1
6
<
n −1
4
.
10.7. TESTUL MILLER-RABIN 193
Teorem˘a 10.7.5 (Rabin (1980)) Dac˘a n este nu num˘ar impar com-
pus, probabilitatea ca acesta s˘a treac˘ a testul Miller-Rabin pentru k baze
b cu 1 ≤ b ≤ n −1 este mai mic˘a decˆat
1
4
k
.
Astfel, dac˘a alegem 25 de iterat ¸ii pentru testul Miller aplicat unui
num˘ar, probabilitatea ca acesta s˘a nu fie compus este mai mic˘a decˆat
2
−50
.
Cu aceea¸si probabilitate, calculatorul poate da erori datorate hardware-
ului, viru¸silor, utilizatorul poate muri de inim˘a ˆın timpul rul˘arii progra-
mului. Acest lucru subliniaz˘a, ˆınc˘a o dat˘a, avantajul folosirii testului.
ˆ
In practic˘a, nu avem de ales un num˘ar mare de baze b pentru a fi
aproape siguri c˘a n este prim. De exemplu, cum am stabilit deja, singurul
num˘ar tare pseudoprim cu bazele 2,3,5,7, mai mic decˆat 2, 5 10
10
este
3215031751. Astfel, dac˘a n trece testul pentru bazele ment ¸ionate ¸si este
diferit de acesta, el este prim.
Dac˘a consider˘am un num˘ar impar de 1024 cifre binare ¸si s-ar folosi
44 de valori diferite ale bazei b, am declara, cu o probabilitate mai mic˘a
decˆat 2
−80
, c˘a num˘arul este prim. Aceast˘a probabilitate arat˘a c˘a n poate
fi folosit sigur ˆın scopuri criptografice. Oricum, de obicei, se testeaz˘a ˆın
general 6 valori diferite pentru baz˘a pentru a garanta aceast˘a probabili-
tate, spre deosebire de 90 de iterat ¸ii necesare testului Solovay-Strassen
pentru a asigura aceea¸si probalilitate.
Din p˘acate, nu este total sigur s˘a ne sprijinim pe un test probabilistic,
chiar dac˘a acesta este rapid ¸si probabilitatea ca el s˘a e¸sueze este foarte
mic˘a.
O afirmat ¸ie f˘acut˘a de
´
Emile Borel, cred c˘a merit˘a s˘a fie ment ¸ionat˘a
ˆın acest cadru:
Un fenomen a c˘arui probabilitate de a nu se ˆıntˆampla este de 10
−50
,
nu se va produce de loc sau, cel put ¸in, nu va fi observat.
(Les Probabilit´ee et la vie)
Dac˘a am presupune c˘a exist˘a un num˘ar destul de mic B (depinde de
m˘arimea lui n) astfel ˆıncˆat, dac˘a n este compus, exist˘a o baz˘a b < B
pentru care n nu trece testul Miller, am spune cu sigurant ¸˘a c˘a num˘arul
n este compus. Astfel, pentru a verifica ˆın mod sigur dac˘a num˘arul
este prim, ar trebui s˘a aplic˘am testul pentru primele B baze. O astfel de
194 CAPITOLUL 10. TESTE DE PRIMALITATE
afirmat ¸ie exist˘a, dar se bazeaz˘a pe Ipoteza generalizat˘a Rieman (GRH),
6
o problem˘a de un milion de dolari a Institutului de Matematic˘a Clay.
7
ˆ
In forma sa init ¸ial˘a, testul Miller era un test deterministic, bazat pe
GRH, ¸si anume:
Teorem˘a 10.7.6 (Miller) Dac˘a GRH este adev˘arat˘a ¸si n este num˘ar
compus impar, atunci n nu trece testul Miller pentru o baz˘a b < 2 lg
2
n.
Modificarea f˘acut˘a de Rabin a transformat testul ˆıntr-un test proba-
bilistic, dar care nu este condit ¸ionat de nici o afirmat ¸ie nedemonstrat˘a.
Algoritm 10.7.1 (Miller-Rabin)
INPUT: un num˘ar n > 2 impar, un parametru de securitate r > 1.
OUTPUT: un r˘aspuns referitor la primalitatea lui n.
1. Determin˘a s ¸si t astfel ˆıncˆ at n −1 = 2
s
t cu t impar.
2. Pentru i de la 1 la r:
2.1. Alege aleator un ˆıntreg b cu 2 ≤ b ≤ n −2.
2.2. Calculeaz˘a y = b
t
mod n folosind algoritmul 3.1.1.
2.3. Dac˘a y ,= 1 ¸si y ,= n −1, atunci:
2.3.1. j ←1.
2.3.2. Cˆat timp j ≤ s −1 ¸si y ,= n −1 execut˘a:
2.3.2.1. y ←y
2
mod n.
2.3.2.2. Dac˘a y = 1, atunci returneaz˘a
num˘ar compus ¸si se opre¸ste.
2.3.2.3. j ←j + 1
2.3.3. Dac˘a y ,= n −1, returneaz˘a num˘ar compus
¸si se opre¸ste.
3. Returneaz˘a num˘ar prim.
ˆ
In a 5-a linie a pasului 2.3., dac˘a y = 1, atunci b
2
j
r
≡ 1 (mod n). Cum
acesta este cazul cˆand b
2
j−1
r
,= ±1 (mod n), n este compus. De fapt,
6
Ipoteza Riemann este o conjectur˘a care a fost enunt ¸at˘ a prima dat˘a ˆın 1859 de
Bernhard Riemannˆın lucrarea sa On the Number of Primes Less Than a Given Mag-
nitude De fapt, sub o form˘a echivalent˘ a, ea spune c˘a numerele prime sunt distribuite
cˆat de regulat posibil, t ¸inˆand cont de aparit ¸ia lor, ce pare aleatoare ˆın ¸sirul numerelor
naturale.
7
Pentru a s˘arb˘ atori matematicienii acestui mileniu, Institutul de Matematic˘a Clay
din Cambridge, Massachusetts, a nominalizat ¸sapte probleme importante care nu au
putut fi demonstrate pˆan˘ a acum. G˘asirea unei demonstrat ¸ii este r˘aspl˘atit˘a cu cˆate
un milion de dolari, fiecare.
ˆ
In iunie 2004, Louis DeBranges de Bourcia a afirmat c˘a
a demonstrat GRH, fapt care ˆınc˘a nu este confirmat.
10.8. PRIMALITATE FOLOSIND CURBELE ELIPTICE 195
_
b
2
j−1
r
−1, n
_
este un divizor propriu al lui n.
ˆ
In ultima linie a pasului
2.3., dac˘a y ,= n−1, atunci b este un martor al faptului c˘a n este compus.
Testul Solovay-Strassen folose¸ste, spre deosebire de testul Miller-
Rabin, ¸si calculul unui simbol Jacobi, fiind mai dificil de implementat ¸si
necesitˆand mai multe calcule. Din acest motiv, t ¸inˆand cont ¸si de faptul
c˘a probabilitatea ˆın acest caz este mai mic˘a, putem renunt ¸a la testul
Solovay-Strassen ˆın favoarea lui Miller-Rabin.
10.8 Primalitate folosind curbele eliptice
ˆ
In anii 70 s-a ˆıncercat ˆımbun˘at˘at ¸irea testele n + 1 ¸si n − 1. Adleman,
Pomerance ¸si Rumely au fost cei care au introdus testul de primalitate
APR, ˆın 1979. Acesta este considerat ca fiind ˆınceputul erei moderne a
testelor de primalitate. Cohen ¸si Lenstra au ˆımbun˘at˘at ¸it acest test care
lucreaz˘a cu numere de 100 cifre ˆın cˆateva secunde.
Pornind de la ideea de baz˘a a testului Fermat, aceea de a determina
ordinul grupului U (Z
n
) ¸si de a vedea dac˘a acesta este n − 1, pasul
urm˘ator f˘acut ˆın vederea obt ¸inerii de noi teste de primalitate a fost de
a modifica grupul init ¸ial.
Astfel, ˆın 1986, Goldwasser ¸si Kilian au propus un algoritm bazat pe
curbele eliptice.
Teoria curbelor eliptice, studiat˘a ˆın teoria nunerelor cˆat ¸si ˆın geome-
tria algebric˘a, nu se va reg˘asi ˆın cont ¸inutul acestei c˘art ¸i. Pentru mai
multe informat ¸ii legate de aceast˘a teorie, se poate studia [12].
ˆ
In con-
tinuare, va fi prezentat˘a doar ideea de baz˘a a acestui algoritm.
O curb˘a eliptic˘a este o mult ¸ime de puncte (x, y) care verific˘a ecuat ¸ia
E(a, b) : y
2
= x
3
+ ax + b unde 4a
3
+ 27b
2
,= 0 ¸si un singur punct O,
numit punctul de la infinit. Punctele rat ¸ionale de pe o astfel de curb˘a
formeaz˘a un grup ˆın care adunarea este definit˘a prin metoda tangentei
¸si a coardei. Astfel, dac˘a dou˘a puncte P
1
, P
2
sunt rat ¸ionale (au coordo-
natele rat ¸ionale), dreapta determinat˘a de acestea intersecteaz˘a curba tot
ˆıntr-un punct rat ¸ional pe care ˆıl vom nota −(P
1
+ P
2
) (Semnul negativ
este necesar pentru ca operat ¸ia s˘a fie asociativ˘a). Dac˘a punctele nu sunt
distincte, folosim tangenta ˆın P
1
la curb˘a. Dac˘a unul dintre puncte este
O, de exemplu P
1
= O, atunci P
1
+P
2
= P
2
.
196 CAPITOLUL 10. TESTE DE PRIMALITATE
Conform unei teoreme datorate lui Mordell, acest grup este finit gene-
rat.
Pentru a aplica algoritmul, se reduce acest grup modulo un num˘ar
prim p ¸si obt ¸inem un grup al c˘arui ordin va fi folosit aproape la fel ca ˆın
teorema Poklington. S-aˆınlocuit astfel un grup de ordin n−1 sau n+1 cu
un altul al c˘arui ordin se afl˘a ˆın intervalul
_
p + 1 −2

p, p + 1 + 2

p
_
(teorema Hasse).
10.9 Algoritmul AKS
ˆ
In anul 2002, Agrawal, Kayal ¸si Saxena au g˘asit un algoritm determi-
nistic, relativ simplu, care nu se bazeaz˘a pe nici o presupunere nedemon-
strat˘a.
Ideea pentru AKS rezult˘a dintr-o alt˘a versiune simpl˘a a micii teoreme
a lui Fermat:
Teorem˘a 10.9.1 Fie p > 1 ¸si a un ˆıntreg, relativ prim cu p. Atunci, p
este prim dac˘a ¸si numai dac˘a (x −a)
p
≡ (x
p
−a) (mod p).
Demonstrat ¸ie. Dac˘a p este prim, p [ C
k
p
, pentru k ∈ ¦1, . . . , p − 1¦.
Atunci, (x − a)
p
≡ (x
p
− a
p
) (mod n) dup˘a care nu mai avem decˆat s˘a
aplic˘am mica teorem˘a a lui Fermat pentru a obt ¸ine congruent ¸a final˘a.
Reciproc, dac˘a presupunem c˘a p este compus, el are un divizor prim
q. Fie k astfel ˆıncˆat q
k
este cea mai mare putere a lui q care divide p.
Atunci, q
k
C
q
p
. Dac˘a (q
k
, a
p−q
) ,= 1, rezult˘a q [ a ¸si astfel (a, p) ,= 1,
fals. Deci, (q
k
, a
p−q
) = 1.
ˆ
In final, obt ¸inem c˘a x
q
are ˆın membrul stˆang
al congruent ¸ei coeficientul nenul, ceea ce este fals.
ˆ
In aceast˘a form˘a este dificil s˘a folosim algoritmul, fiind prea mult ¸i
coeficient ¸i pe care trebuie s˘a-i verific˘am. Urm˘ator pas f˘acut a fost acela
de a g˘asi o condit ¸ie mai simpl˘a ¸si anume:
(x −a)
p
≡ (x
p
−a) (mod x
k
−1, p)
unde a ≡ b (mod n, m) ˆınseamn˘a c˘a a −b este suma dintre un multiplu
de n ¸si un multiplu de m.
Congruent ¸a trebuie s˘a se verifice dac˘a p este prim.
O afirmat ¸ie, f˘ar˘a demonstrat ¸ie pˆan˘a acum, precizeaz˘a urm˘atoarele:
dac˘a k > 1 nu divide p ¸si congruent ¸a este adev˘arat˘a, atunci p este prim
10.9. ALGORITMUL AKS 197
sau p
2
≡ 1 (mod k). Odat˘a rezolvat˘a aceast˘a problem˘a, se va putea da
o versiune mai eficient˘a acestui test.
Algoritm 10.9.1 (AKS)
INPUT: un num˘ar n > 2.
OUTPUT: un r˘aspuns referitor la primalitatea lui n.
1. Dac˘a n este de forma a
b
cu b > 1, returneaz˘a num˘ar compus
¸si se opre¸ste.
2. r ←2
3. Cˆat timp r < n, execut˘a:
3.1. Dac˘a (n, r) ,= 1, returneaz˘a num˘ar compus ¸si
se opre¸ste.
3.2. Dac˘a r ≥ 2 este prim, execut˘a:
Fie q cel mai mare factor al lui r −1.
Dac˘a q > 4

r lg n ¸si n
r−1
q
,= 1 (mod r),
atunci salt la 4.
3.3. r ←r + 1
4. Pentru a de la 1 la 2

r lg n execut˘a:
4.1. Dac˘a (x −a)
n
,= (x
n
−a) (mod x
r
−1, n),
atunci returneaz˘a num˘ar compus ¸si se opre¸ste.
5. Returneaz˘a num˘ar prim.
Exercit ¸ii propuse
1. Folosind testul Pepin, ar˘atat ¸i c˘a urm˘atoarele numere Fermat sunt
prime: F
1
= 5, F
3
= 257, F
4
= 65537.
2. Cu ajutorul testului Pepin, ar˘atat ¸i c˘a 3 este r˘ad˘acin˘a primitiv˘a
pentru orice num˘ar prim Fermat.
3. Folosind testul Lucas-Lehmer, stabilit ¸i care dintre numerele
Mersenne M
3
, M
5
, M
11
, M
13
sunt prime.
4. Explicat ¸i de ce nu trebuie verificat cu ajutorul testului Fermat
dac˘a un num˘ar Fermat sau un num˘ar Mersenne este prim.
5. Ar˘atat ¸i c˘a 91 este pseudoprim cu baza 3 iar 45 este pseudoprim
cu bazele 17 ¸si 19.
198 CAPITOLUL 10. TESTE DE PRIMALITATE
6. Fie n un num˘ar impar compus ¸si (b, n) = 1. Dac˘a p este un divizor
prim al lui n, fie n

=
n
p
. Ar˘atat ¸i c˘a n este pseudoprim cu baza b dac˘a
¸si numai dac˘a b
n

−1
≡ 1 (mod p). Folosind acest rezultat, ar˘atat ¸i c˘a nu
exist˘a un num˘ar pseudoprim cu baza 2, 5, sau 7 care s˘a fie de forma
n = 3p cu p num˘ar prim > 3.
7. G˘asit ¸i toate bazele b pentru care 15, respectiv 21 este pseudoprim.
8. Determinat ¸i cel mai mic pseudoprim cu baza 5.
9. Fie n = pq cu p, q numere prime impare.
Fie d = (p − 1, q − 1). Ar˘atat ¸i c˘a n este pseudoprim cu baza b dac˘a ¸si
numai dac˘a b
d
≡ 1 (mod n).
10. Fie m num˘ar natural astfel ˆıncˆat 6m+ 1, 12m+ 1, 18m+ 1 sunt
toate numere prime. Ar˘atat ¸i c˘a n = (6m + 1)(12m + 1)(18m + 1) este
num˘ar Carmichael.
11. Ar˘atat ¸i c˘a urm˘atoarele numere
1105 = 5 13 17, 1729 = 7 13 19, 2465 = 5 17 29
sunt numere Carmichael.
12. Ar˘atat ¸i c˘a 561 este cel mai mic num˘ar Carmichael.
13. Fie n Euler pseudoprim cu bazele b
1
¸si b
2
. Ar˘atat ¸i c˘a n este Euler
pseudoprim cu bazele b
1
b
2
.
14. Fie n ≡ 5 (mod 8) un num˘ar Euler pseudoprim cu baza 2. Ar˘atat ¸i
c˘a n este tare pseudoprim cu baza 2.
15. Ar˘atat ¸i c˘a:
i) 561 este tare pseudoprim cu baza 101.
ii) 65 este tare pseudoprim cu bazele 8 ¸si 18.
iii) 1387 este pseudoprim cu baza 2 dar nu este tare pseudoprim cu
baza 2.
16. Ar˘atat ¸i c˘a dac˘a g˘asim b astfel ˆıncˆat n este pseudoprim dar nu
tare pseudoprim cu baza b, atunci putem factoriza rapid n. Explicat ¸i
cum se poate proteja criptosistemul RSA, prin alegerea lui n, de aceast˘a
situat ¸ie.
CAPITOLUL 11
Problema factoriz˘arii
Problema factoriz˘arii este cea mai cunoscut˘a problem˘a dificil˘a. Am
v˘azut c˘a ea este ideea ce st˘a la baza criptosistemului RSA. Factorizarea
presupune determinarea tuturor divizorilor primi ai unui num˘ar ˆıntreg
compus. Problema factoriz˘arii reprezint˘a un domeniu de cercetare foarte
activ, atˆat pentru matematicieni, cˆat ¸si pentru informaticieni. Algoritmii
de factorizare pot fi ˆımp˘art ¸it ¸i ˆın dou˘a categorii:
1) algoritmi cu scop special, care sunt eficient ¸i ˆın factorizarea nu-
merelor cu divizori mici. Astfel de algoritmi sunt: metoda Pollard
rho, metoda Pollard p-1, metoda curbelor eliptice.
2) algoritmi cu scop general, a c˘aror eficient ¸˘a depinde de num˘arul
care se factorizeaz˘a. Ele sunt cele mai importante ˆın domeniul sis-
temelor criptografice ¸si al securit˘at ¸ii acestora. Dintre ele putem
ment ¸iona filtrul corpului numerelor (NFS), cel mai des folosit al-
goritm de factorizare la acest moment, filtrul p˘atratic polinomial
multiplu (MPQS).
Un num˘ar general este un num˘ar care nu are o form˘a particular˘a ce ar
putea conduce u¸sor la determinarea divizorilor s˘ai. Astfel de numere sunt
folosite la crearea modulului ˆın criptosistemul RSA. Dac˘a un num˘ar are
o form˘a u¸soar˘a de reprezentare, el se nume¸ste num˘ar cu form˘a special˘a.
De exemplu, numerele Fermat sunt astfel de numere.
Problema factoriz˘arii a devenit mai u¸soar˘a ˆın ultimii 15 ani datorit˘a
faptului c˘a num˘arul computerelor, puterea de procesare ¸si performant ¸ele
199
200 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
acestora au crescut foarte mult ¸si au fost g˘asit ¸i algoritmi superiori de
factorizare.
11.1 Factorizare prin c˘autare direct˘a
Metoda de c˘autare a divizorilor prin ˆıncerc˘ari, prezentat˘a ˆın 10.2, este
cea mai simpl˘a metod˘a de determinare a divizorilor primi ai unui num˘ar
¸si mai poate fi ˆıntˆalnit˘a sub denumirea de trial division.
La informat ¸iile furnizate anterior, ˆın 10.2, mai facem doar o scurt˘a
observat ¸ie care poate simplifica testul:
Dac˘a cel mai mic factor prim p al lui n este >
3

n, atunci
n
p
este num˘ar
prim. Pentru a ar˘ata c˘a aceast˘a afirmat ¸ie este adev˘arat˘a, s˘a presupunem
c˘a m =
n
p
este compus. Atunci, m = a b. Putem presupune c˘a a, b ≥ p.
Astfel, ajungem la o contradict ¸ie, ¸si anume n = pm = pab ≥ p
3
> n.
Deci, m este prim.
11.2 Metoda Fermat
De obicei, metoda este recomandat˘a ˆın cazul ˆın care n are doi factori
de m˘arime similar˘a. Pentru un num˘ar natural n, se caut˘a ˆıntregi x, y
astfel ˆıncˆat n = x
2
−y
2
. Atunci n = (x −y)(x +y) ¸si se obt ¸ine o prim˘a
descompunere a lui n, ˆın care un factor este foarte mic. La baza acestui
rezultat st˘a urm˘atoarea propozit ¸ie, u¸sor de demonstrat:
Propozit ¸ie 11.2.1 Fie n un num˘ar natural impar. Exist˘a o corespon-
dent ¸˘a bijectiv˘a ˆıntre descompunerile lui n de forma n = ab cu a ≥ b > 0
¸si reprezent˘arile lui n de forma n = x
2
− y
2
unde x, y sunt numere
naturale. Corespondent ¸a este dat˘a de relat ¸iile:
x =
a +b
2
, y =
a −b
2
, a = x +y, b = x −y.
Dac˘a n = ab, cu a ¸si b de valori apropiate, y va fi un num˘ar mic iar
x put ¸in mai mare decˆat

n.
ˆ
In acest caz, c˘aut˘am p˘atrate perfecte de
forma x
2
−n, pornind cu x
1
= [

n] +1. Test˘am dac˘a x
2
1
−n este p˘atrat
perfect. Cum exist˘a doar 22 de combinat ¸ii pentru ultimele dou˘a cifre ale
unui num˘ar p˘atrat perfect, multe cazuri pot fi eliminate.
11.2. METODA FERMAT 201
Dac˘a x
2
1
− n nu este p˘atrat perfect, alegem x
2
= x
1
+ 1 ¸si refacem
rat ¸ionamentul.
Procesul se opre¸ste pentru c˘a descompunerea trivial˘a n = n 1 conduce
la n =
_
n + 1
2
_
2

_
n −1
2
_
2
.
Spre exemplu, s˘a aplic˘am metoda pentru n = 4429.
Din 66 <

4429 < 67, pornim cu x
1
= 67. Obt ¸inem:
x
1
= 67, 67
2
−n = 60 - nu este p˘atrat perfect,
x
2
= 68, 68
2
−n = 195 - nu este p˘atrat perfect,
x
3
= 69, 69
2
−n = 332 - nu este p˘atrat perfect,
x
4
= 70, 70
2
−n = 471 - nu este p˘atrat perfect,
x
5
= 71, 71
2
−n = 612 - nu este p˘atrat perfect,
x
6
= 72, 72
2
−n = 755 - nu este p˘atrat perfect,
x
7
= 73, 73
2
−n = 900 - este p˘atrat perfect.
Deci, 4429 = (73 − 30)(73 + 30) = 43 103. Apoi, relu˘am procesul
pentru factorii g˘asit ¸i. La noi, ace¸stia sunt primi.
Aceast˘a factorizare poate fi ineficient˘a dac˘a cei doi factori a ¸si b nu
au valori apropiate: este posibil s˘a fie necesare
n + 1
2


n verific˘ari
pentru a testa dac˘a numerele generate sunt p˘atrate perfecte.
ˆ
In aceast˘a situat ¸ie se poate folosi o metod˘a Fermat generalizat˘a care
act ¸ioneaz˘a mai bine ˆın astfel de cazuri. Pentru aceasta, se alege k num˘ar
mic ¸si x va lua succesiv valorile
_

kn
_
+1,
_

kn
_
+2, . . . . Ne vom opri
cˆand x
2
−kn este p˘atrat perfect. Presupunem x
2
−kn = y
2
. Atunci, din
(x +y)(x −y) = kn, (x +y, n) este un divizor propriu al lui n.
De exemplu, ca s˘a factoriz˘am u¸sor n = 68987 folosind metoda Fermat
generalizat˘a, alegem k = 3.
Atunci 454 <

3n < 455. Chiar la prima iterat ¸ie obt ¸inem:
455
2
−3 68987 = 64, adic˘a 3n = 455
2
−8
2
.
Calculˆand (455 + 8, 68987) = 463, rezult˘a 68987 = 463 149.
Algoritm 11.2.1 (Fermat generalizat˘a)
INPUT: un num˘ar n, impar compus ¸si k, factor de apropiere.
OUTPUT: doi factori a, b cu n = ab.
1. N ←[

kn], i ←1, t ←0.
202 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
2. Cˆat timp i ≤ N ¸si t = 0, efectueaz˘a:
2.1. y ←
_
(N +i)
2
−kn.
2.2. Dac˘a y = [y], atunci x ←N +i, t ←1.
2.3. i ←i + 1.
3. Dac˘a t = 1, atunci returneaz˘a a = (x +y, n), b = n/a ¸si se
opre¸ste.
4. Returneaz˘a mesaj de e¸sec.
11.3 Metoda Euler
Metoda Euler de factorizare se poate aplica pentru numere n impare
care se pot scrie ca sum˘a de dou˘a p˘atrate ˆın dou˘a feluri diferite. Astfel,
n = a
2
+b
2
= c
2
+d
2
unde a ¸si c sunt pare iar b ¸si d impare. Obt ¸inem c˘a a
2
− c
2
= d
2
− b
2
,
sau (a −c)(a +c) = (d −b)(d +b).
Not˘am k = (a −c, d −b). Deci, k este par ¸si a −c = kl, d −b = km,
cu (l, m) = 1.
ˆ
Inlocuind, obt ¸inem l(a +c) = m(b +d). De aici, m [ a +c.
Fie a + c = mr. Atunci, b + d = lr unde r = (a + c, b + d) este num˘ar
par. T¸ inˆand cont de toate aceste rezultate, obt ¸inem:
_
_
k
2
_
2
+
_
r
2
_
2
_
_
l
2
+m
2
_
=
1
4
_
k
2
+r
2
_ _
l
2
+m
2
_
=
=
1
4
_
(km)
2
+ (kl)
2
+ (mr)
2
+ (lr)
2
¸
=
=
1
4
_
(d −b)
2
+ (a −c)
2
+ (a +c)
2
+ (b +d)
2
¸
=
=
1
4
_
2a
2
+ 2b
2
+ 2c
2
+ 2d
2
_
=
1
4
(2n + 2n) = n.
11.4 Metoda Pollard-rho
Presupunem c˘a un num˘ar mare n este compus; de exemplu, nu a trecut
un test de primalitate prezentat ˆın capitolul anterior. Cel mai simplu
test, mult mai rapid decˆat metoda ˆımp˘art ¸irilor, este datorat lui J. M.
Pollard. El poart˘a numele de metoda rho, sau metoda Monte Carlo.
Acest test este un test cu scop special folosit pentru a g˘asi factori primi
mici pentru un num˘ar compus.
11.4. METODA POLLARD-RHO 203
Algoritmul Pollard-rho prezint˘a dou˘a aspecte care trebuie subliniate.
Primul const˘a ˆın ideea de a itera o formul˘a pˆan˘a se cade ˆıntr-un
ciclu. Fie S o mult ¸ime finit˘a ¸si f : S →S o funct ¸ie oarecare. Fie x
0
∈ S
punctul de plecare. Definim x
k+1
= f(x
k
) pentru k ≥ 0. Cum S este
finit˘a, exist˘a o pereche (p, q) pentru care x
p+q
= x
p
. Aplicˆand ˆın mod
repetat pe f ˆın ambii membri, obt ¸inem x
r+q
= x
r
, pentru tot ¸i r ≥ p.
Cel mai mic p pentru care x
p
se repet˘a se nume¸ste pre-perioada M. Cel
mai mic q se nume¸ste perioada T. Ele depind de alegerea lui x
0
, de f
¸si S. Punctele x
0
, . . . , x
M
se numesc coada ¸si punctele x
M+r
cu r ≥ 0
poart˘a numele de ciclul lui ρ. Numele algoritmului provine din forma pe
care o are ¸sirul de numere.
Consider˘am c˘a mult ¸imea S are n elemente (se poate alege, S = Z
n
).
Funct ¸ia f trebuie s˘a fie aleas˘a astfel ˆıncˆat valorile ei s˘a poat˘a fi u¸sor
calculate. Astfel, f este de obicei o funct ¸ie polinomial˘a; de exemplu
f(x) = x
2
+a unde a / ∈ ¦0, −2¦.
Fie n = αβ unde α, β sunt divizori relativi primi necunoscut ¸i ai lui
n. Iterˆand x
k+1
≡ x
2
k
+a (mod n) (sau orice alt˘a formul˘a polinomial˘a),
pentru orice valoare init ¸ial˘a x
0
, se obt ¸ine un ¸sir de numere care va intra
ˆıntr-un ciclu. Timpul pˆan˘a cˆand x
i
vor intraˆıntr-un ciclu, cˆat ¸si lungimea
ciclului sunt proport ¸ionale cu

n.
Din teorema chinezeasc˘a a resturilor, fiecare x (mod n) corespunde
perechii (x (mod α), x (mod β)) .
Din x
k+1
≡ x
2
k
+ a (mod α) ¸si x
k+1
≡ x
2
k
+ a (mod β), rezult˘a c˘a ¸sirul
modulo α intr˘a ˆıntr-un ciclu de lungime mai mic˘a.
Compar˘am diferit ¸i x
i
pentru a obt ¸ine doi care sunt resturi diferite
modulo n, dar sunt congruent ¸i modulo un divizor al lui n. Fie x
i
¸si
x
j
dou˘a astfel de elemente.
ˆ
In acest caz, spunem c˘a avem o coliziune.
Atunci, (x
i
−x
j
, n) este egal cu un divizor propriu al lui n.
De exemplu, pentru factorizarea lui n = 91 alegem f(x) = x
2
+ 1 ¸si
x
0
= 1. Atunci, x
1
= 2, x
2
= 5, x
3
= 26. Nu mai continu˘am pentru c˘a
am g˘asit un divizor propriu (26 −5, 91) = 7.
Al doilea aspect const˘a ˆın detectarea faptului c˘a ¸sirul de numere
devine periodic. Cantitatea mare de stocare a numerelor x
i
necesar˘a
obt ¸inerii unei coliziuni, a fost eliminat˘a de Pollard care a folosit algorit-
mul lui Floyd de g˘asire a unui ciclu.
ˆ
In aceast˘a metod˘a se porne¸ste cu
y
0
= x
0
¸si se calculeaz˘a y
k+1
= f (f(y
k
)) . Se obt ¸ine rapid, folosind
204 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
induct ¸ia matematic˘a, y
k
= x
2k
. Astfel, dac˘a k este multiplu de T,
obt ¸inem y
k
= x
k
. Verificˆand la fiecare pas dac˘a se obt ¸ine identitatea
vom g˘asi un multiplu de T. Dac˘a M ¸si T sunt de m˘arime comparabil˘a,
atunci vom g˘asi chiar un multiplu mic al lui T.
Algoritm 11.4.1 (Pollard-rho)
INPUT: un num˘ar n > 2 compus, care nu este putere a unui
num˘ar prim.
OUTPUT: un divizor propriu al lui n.
1. Pune a ←2, b ←2.
2. Pentru i = 1, 2, . . . execut˘a:
2.1. Calculeaz˘a a ←a
2
+ 1 mod n, b ←b
2
+ 1 mod n,
b ←b
2
+ 1 mod n.
2.2. Calculeaz˘a d = (a −b, n).
2.3. Dac˘a 1 < d < n, atunci returneaz˘a d ¸si se opre¸ste.
2.4. Dac˘a d = n, atunci returneaz˘a mesaj de e¸sec
( trebuie aleas˘a o alt˘a funct ¸ie polinomial˘a).
De exemplu, pentru n = 455459 ¸si x
0
= 2 obt ¸inem:
x
1
= 5, y
1
= f(f(x
1
)) ≡ 26 (mod 455459), (y
1
−x
1
, n) = 1;
x
2
= 26, y
2
≡ 2871 (mod 455459), (y
2
−x
2
, n) = 1;
x
3
= 677, y
3
≡ 179685 (mod 455459), (y
3
−x
3
, n) = 1;
x
4
= 2871, y
4
≡ 155260 (mod 455459), (y
4
−x
4
, n) = 1;
x
5
= 44380, y
5
≡ 416250 (mod 455459), (y
5
−x
5
, n) = 1;
x
6
= 179685, y
6
≡ 43670 (mod 455459), (y
6
−x
6
, n) = 1;
x
7
= 121634, y
7
≡ 164403 (mod 455459), (y
7
−x
7
, n) = 1;
x
8
= 155260, y
8
≡ 247944 (mod 455459), (y
8
−x
8
, n) = 1;
x
9
= 44567, y
9
≡ 68343 (mod 455459), (y
9
−x
9
, n) = 743.
Deci, 743 este un divizor netrivial al lui 455459.
Obt ¸inem 455459 = 743 613.
Pentru c˘a ˆın aceast˘a situat ¸ie, la fiecare pas este necesar s˘a aplic˘am
de trei ori funct ¸ia, putem pierde mult timp. De aceea, ultima parte a
algoritmului a fost modificat˘a de c˘atre Brent care a ˆınlocuit algoritmul
lui Floyd cu un altul.
Mai ˆıntˆai s˘a presupunem c˘a M ¸si T au m cifre binare. Atunci, ar
trebui s˘a g˘asim o repetit ¸ie pentru k = 2
m
− 1. Deoarece T ≤ 2
m
− 1,
11.5. METODA POLLARD P-1 205
k + T = 2
m
+ T − 1 este mai mic decˆat 2
m+1
− 2. Astfel vom stoca
y
m
= x
2
m
−1
¸si ˆıl vom compara cu x
k
pentru 2
m
≤ k ≤ 2
m+1
− 2. La
fiecare pas, se aplic˘a f o singur˘a dat˘a. Pe de alt˘a parte, M este aproape
dublat, deci facem aproape un num˘ar dublu de test˘ari fat ¸˘a de cazul
init ¸ial Pollard. Este evident c˘a alegerea ˆıntre cele dou˘a versiuni se va
face t ¸inˆand cont de care dintre urm˘atoarele dou˘a procese este mai mare
consumatoare de timp: calcularea funct ¸iei sau compararea.
11.5 Metoda Pollard p-1
Aceast˘a metod˘a este o metod˘a cu scop special, fiind folosit˘a pentru fac-
torizarea numerelor n care au un factor prim p cu proprietatea c˘a p −1
este produs de factori primi mai mici dacˆat un num˘ar relativ mic B.
Ideea este urm˘atoarea:
Fie m cel mai mic multiplu comun al tuturor puterilor de numere prime
≤ B care sunt ≤ n. Dac˘a q
l
≤ n, atunci l ln q ≤ ln n ¸si, deci l ≤
_
ln n
ln q
_
.
Astfel, m =

q≤B
q
[
ln n
ln q
]
unde produsul se face dup˘a toate numerele prime
q ≤ B.
Dac˘a p este un factor prim al lui n astfel ˆıncˆat p−1 are tot ¸i factorii primi
≤ B, atunci p−1 [ m. Astfel, din mica teorem˘a a lui Fermat, pentru orice
(a, p) = 1 avem a
m
≡ 1 (mod p). De aici, dac˘a not˘am d = (a
m
− 1, n),
obt ¸inem p [ d. Este posibil ca d = n, caz ˆın care algoritmul e¸sueaz˘a.
Oricum, aceast˘a situat ¸ie este put ¸in probabil s˘a apar˘a dac˘a n are doi
factori primi mari distinct ¸i.
Algoritm 11.5.1 (Pollard p-1)
INPUT: un num˘ar n > 2 compus, care nu este putere a unui
num˘ar prim.
OUTPUT: un divizor propriu al lui n.
1. Alege o margine B.
2. Alege, aleator, un a, 2 ≤ a ≤ n −1 ¸si calculeaz˘a d = (a, n).
Dac˘a d ≥ 2, returneaz˘a d ¸si se opre¸ste.
3. Pentru fiecare num˘ar prim q ≤ B, execut˘a:
3.1. Calculeaz˘a l = [ln n/ ln q].
3.2. Calculeaz˘a a ←a
q
l
mod n.
206 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
4. Calculeaz˘ a d = (a −1, n).
5. Dac˘a d = 1 sau d = n, returneaz˘a mesaj de e¸sec; altfel,
returneaz˘a d.
De exemplu, pentru n = 19048567, B = 19, a = 3 obt ¸inem:
q = 2, l = 24, a ≡ 2293244 (mod 19048567);
q = 3, l = 15, a ≡ 13555889 (mod 19048567);
q = 5, l = 10, a ≡ 16937223 (mod 19048567);
q = 7, l = 8, a ≡ 15214586 (mod 19048567);
q = 11, l = 6, a ≡ 9685355 (mod 19048567);
q = 13, l = 6, a ≡ 13271154 (mod 19048567);
q = 17, l = 5, a ≡ 11406961 (mod 19048567);
q = 19, l = 5, a ≡ 554506 (mod 19048567).
ˆ
In acest caz, (554506 −1, 19048567) = 5281.
Se obt ¸ine 19048567 = 5281 3607, care este chiar descompunerea ˆın
factori primi a lui n. Trebuie remarcat c˘a:
5280 = 5281 −1 = 2
5
3 5 11, 3606 = 3607 −1 = 2 3 601.
Deci, 5280 are factorii primi mai mici decˆat 19, ˆın timp ce cel˘alalt num˘ar
nu are aceast˘a proprietate.
11.6 Factorizare folosind curbele eliptice
Ca ¸si ˆın cazul testului de primalitate ce utilizeaz˘a teoria curbelor eliptice,
¸si aici vom prezenta doar ideea ce st˘a la baza acestui algoritm. Algorit-
mul generalizeaz˘a algoritmul Pollard p−1ˆın sensul c˘a grupul Z

p
, al c˘arui
ordin este p −1 (p este prim) este ˆınlocuit cu grupul unei curbe eliptice
aleatoare peste Z
p
. Dac˘a ordinul grupului ales are tot ¸i factorii primi
mai mici decˆat un num˘ar init ¸ial considerat, atunci algoritmul furnizeaz˘a
un divizor propriu al lui n.
ˆ
In caz contrar, trebuie ales un alt grup.
ˆ
In practic˘a, acest algoritm este folosit pentru a determina factori
primi cu mai put ¸in de 40 cifre zecimale pentru numere mari compuse.
Astfel, el este considerat un algoritm cu scop special.
11.7. METODA BAZEI FACTOR 207
11.7 Metoda bazei factor
Ideea ce se afl˘a la baza acestei metode de factorizare este de fapt comun˘a
tuturor metodelor de factorizare cu p˘atrate aleatoare, ¸si anume:
Dac˘a g˘asimˆıntregi x, y astfel ˆıncˆat x
2
≡ y
2
(mod n) ¸si x ,= ±y (mod n),
atunci am aflat de fapt un divizor netrivial al lui n, anume (x+y, n) sau
(x−y, n). Aceasta se obt ¸ine t ¸inˆand cont c˘a n x±y ¸si n [ (x−y)(x+y).
Pentru un modul n, ¸si a un num˘ar ˆıntreg, vom spune c˘a a
0
este
cel mai mic rest ˆın valoare absolut˘a al lui a dac˘a a ≡ a
0
(mod n) ¸si

n
2
≤ a
0

n
2
.
Definit ¸ie 11.7.1 O baz˘a factor este o mult ¸ime B = ¦p
1
, p
2
, . . . , p
k
¦ de
numere prime distincte, mai put ¸in, eventual, p
1
care poate fi −1.
Spunem c˘a p˘atratul unui num˘ar ˆıntreg b este B− num˘ar, relativ la
num˘arul n, dac˘a cel mai mic rest ˆın valoare absolut˘a al lui b
2
(mod n)
se poate scrie ca un produs de numere din B.
De exemplu, pentru n = 2701 ¸si B = ¦−1, 2, 3¦ :
Din 52
2
≡ 3 (mod 2701), 53
2
≡ 108 ≡ 2
2
3
3
(mod 2701), obt ¸inem c˘a
52
2
¸si 53
2
sunt B−numere.
Consider˘am n natural ¸si B o baz˘a factor format˘a din k numere.
Fiec˘arui B−num˘ar b
2
ˆıi vom pune ˆın corespondent ¸˘a un vector
e = (e
1
, e
2
, . . . , e
k
)
unde e
i
∈ ¦0, 1¦, pentru fiecare i, dup˘a cum urmeaz˘a:
Scriem cel mai mic rest ˆın valoare absolut˘a b
2
(mod n) sub forma
k

i=1
p
α
i
i
¸si definim e
i
≡ α
i
(mod 2). Astfel, e
i
= 0, dac˘a α
i
este par ¸si e
i
= 1,
pentru α
i
impar.
ˆ
In exemplul nostru, lui 52
2
ˆıi corespunde vectorul (0, 0, 1) iar lui 53
2
,
acela¸si vector.
Fie e
j
= (e
j1
, e
j2
, . . . , e
jk
) vectorul corespunz˘ator lui a
j
, cel mai mic
rest ˆın valoare absolut˘a al B− num˘arului b
2
j
(mod n), pentru 1 ≤ j ≤ s.
Dac˘a suma vectorilor este vectorul nul (suma se calculeaz˘a modulo 2),
atunci produsul tuturor a
j
este un produs de puteri pare ale numerelor
208 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
prime din B. Astfel,
s

j=1
a
j
=
k

i=1
p

j=1,s
α
ji
i
=
_
k

i=1
p
1
2

j=1,s
α
ji
i
_
2
.
Am g˘asit astfel x, y cele mai mici resturi ˆın valoare absolut˘a pentru
numerele
s

j=1
b
j
(mod n),
k

i=1
p
1
2

j=1,s
α
ji
i
(mod n)
ale c˘aror p˘atrate sunt congruente modulo n. Trebuie s˘a observ˘am faptul
c˘a fiecare num˘ar este construit altfel, unul ca produs de b
j
, cel˘alalt ca
produs de p
i
.
Dac˘a x ≡ ±y (mod n), trebuie s˘a relu˘am rat ¸ionamentul pentru alt˘a
mult ¸ime de B− numere pentru care suma vectorilor este vectorul nul.
Cum n este compus, probabilitatea s˘a ˆıntˆalnim o astfel de situat ¸ie
este de
1
2
. Va trebui continuat pˆan˘a cˆand g˘asim o pereche (x, y) care ne
furnizeaz˘a un divizor propriu al lui n.
ˆ
In exemplul considerat, (0, 0, 1) + (0, 0, 1) = (0, 0, 0). Obt ¸inem:
52
2
53
2
≡ 3 108 ≡ (2 3
2
)
2
(mod 2701).
Atunci, x ≡ 52 53 ≡ 55 (mod 2701), y ≡ 18 (mod 2701).
Calcul˘am (55 + 18, 2701) = 73 ¸si rezult˘a 2701 = 73 37.
ˆ
In practic˘a, baza factor ¸si numerele b
j
se aleg prin diverse metode.
O alegere este de a porni cu B format˘a din primele k sau k −1 numere
prime, dup˘a cum alegem p
1
= −1 sau nu. Numerele b
j
se aleg aleator
pˆan˘a se g˘asesc cˆateva ale c˘aror p˘atrate sunt B−numere.
O alt˘a cale de lucru const˘a ˆın a ˆıncepe cu alegerea unor b
j
pentru
care cel mai mic rest ˆın valoare absolut˘a b
2
j
(mod n) este mic (ˆın valoare
absolut˘a); de exemplu, alegem b
j
apropiat ¸i de

hn, pentru multiplii mici
hn. Atunci, B va fi format˘a din numerele prime mici, eventual ¸si −1, care
apar ˆın descompunerea ˆın factori primi a mai multor b
2
j
(mod n).
S˘a rezum˘am acum modul de factorizare a unui num˘ar mare n prin
alegerea aleatoare a numerelor b
j
.
Se alege un num˘ar c de m˘arime intermediar˘a; de exemplu, dac˘a n
are 50 de cifre ˆın scrierea zecimal˘a, putem alege c un num˘ar cu 5 sau 6
cifre zecimale. B este format˘a din -1 ¸si din toate numerele prime ≤ c,
11.8. METODA FRACT¸ IILOR CONTINUE 209
deci va avea π(c) +1 elemente. Se caut˘a aleator mai multe numere b
j
¸si
se calculeaz˘a cel mai mic rest ˆın valoare absolut˘a pentru b
2
j
(mod n). Se
verific˘a dac˘a acesta se poate scrie ca produs de primi din B. C˘autarea se
opre¸ste cˆand am g˘asit suficiente B− numere b
2
j
(mod n) (π(c) + 2 sunt
de ajuns). Pentru fiecare dintre ele se scrie vectorul corespunz˘ator ¸si se
formeaz˘a o submult ¸ime de numere b
j
care au proprietatea c˘a suma vecto-
rilor este zero. Apoi se calculeaz˘a x =

j
b
j
(mod n), y =

j
p
β
j
j
(mod n)
care ¸stim c˘a verific˘a x
2
≡ y
2
(mod n). Dac˘a x ,= ±y (mod n), am g˘asit
un divizor propriu al lui n, calculˆand (x +y, n).
11.8 Metoda fract ¸iilor continue
Am v˘azut c˘a metoda bazei factor se aplic˘a cel mai bine dac˘a exist˘a
o metod˘a avantajoas˘a de a g˘asi ˆıntregi b astfel ˆıncˆat cel mai mic rest
ˆın valoare absolut˘a al lui b
2
(mod n) s˘a fie produs de numere prime
mici. Aceast˘a situat ¸ie apare ˆın mod sigur dac˘a valoarea absolut˘a a lui
b
2
(mod n) este mic˘a. Prezent˘amˆın cele ce urmeaz˘a o metod˘a de a g˘asi
ˆıntregi b pentru care [ b
2
(mod n) [< 2

n. Pentru aceasta, este necesar
s˘a reprezent˘am num˘arul

n sub forma unei fract ¸ii continue.
Propozit ¸ie 11.8.1 Fie α > 1 un num˘ar real a c˘arui fract ¸ie continu˘a
are convergentele
p
k
q
k
. Atunci, pentru orice k ≥ 0,
¸
¸
p
2
k
−α
2
q
2
k
¸
¸
< 2α.
Demonstrat ¸ie. S¸tim c˘a
p
k
q
k
< α <
p
k+1
q
k+1
¸si, din corolarul 2.1.2,
¸
¸
¸
¸
p
k
q
k

p
k+1
q
k+1
¸
¸
¸
¸
=
1
q
k
q
k+1
. De aici,
¸
¸
p
2
k
−α
2
q
2
k
¸
¸
= q
2
k
¸
¸
¸
¸
α −
p
k
q
k
¸
¸
¸
¸
¸
¸
¸
¸
α +
p
k
q
k
¸
¸
¸
¸
< q
2
k
1
q
k
q
k+1
_
α +
_
α +
1
q
k
q
k+1
__
.
Astfel,
¸
¸
p
2
k
−α
2
q
2
k
¸
¸
−2α < 2α
_
−1 +
q
k
q
k+1
+
1
2αq
2
k+1
_
<
< 2α
_
−1 +
q
k
q
k+1
+
1
q
k+1
_
< 2α
_
−1 +
q
k+1
q
k+1
_
= 0.
210 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
Aceast˘a propozit ¸ie conduce la urm˘atorul rezultat:
Propozit ¸ie 11.8.2 Fie n num˘ar natural, care nu este p˘atrat perfect.
Fie
p
k
q
k
convergentele fract ¸iei continue simple a lui

n. Atunci, pentru
orice k ≥ 0, cel mai mic rest ˆın valoare absolut˘a al lui p
2
k
(mod n) este
mai mic decˆat 2

n.
Demonstrat ¸ie. Folosim rezultatul demonstrat anterior pentru α =

n.
Astfel, p
2
k
≡ p
2
k
−nq
2
k
(mod n), de unde
¸
¸
p
2
k
(mod n)
¸
¸
< 2

n.
Acest rezultat st˘a la baza algoritmului fract ¸iilor continue. Astfel, se
precizeaz˘a c˘a, alegˆand num˘ar˘atorii p
k
ai convergentelor fract ¸iei continue
a lui

n, se poate obt ¸ine un ¸sir de numere ale c˘aror p˘atrate au resturi
mici. Pe lˆang˘a faptul c˘a ne intereseaz˘a doar num˘ar˘atorii acestor fract ¸ii,
se opereaz˘a doar cu resturi modulo n, deci, nu vom lucra cu numere
foarte mari.
Vom preciza acum modul de realizare a algoritmul de factorizare
folosind fract ¸iile continue utilizˆand o baz˘a factor. De aceast˘a dat˘a, nu
mai alegem aleator elementele b
j
.
Astfel, ˆıncepem prin a init ¸ializa:
b
−1
= 1, b
0
= [

n] = a
0
, x
0
=

n −a
0
. Calcul˘am b
2
0
(mod n).
Pentru j = 1, 2, . . . execut˘am:
1. a
j
=
_
1
x
j−1
_
¸si apoi x
j
=
1
x
j−1
−a
j
.
2. b
j
≡ a
j
b
j−1
+b
j−2
(mod n).
3. Calcul˘am b
2
j
(mod n).
Dup˘a ce realiz˘am aceste calcule pentru mai multe valori ale lui j,
vedem care numere de la punctul 3. se scriu ca ± produse de numere
mici prime. Alegem ˆın funct ¸ie de acestea baza B care va fi format˘a din
−1 ¸si din numerele prime mici ce apar ˆın scrierea mai multor b
2
j
(mod n).
Apoi, proced˘am ca ˆın cazul metodei bazei factor.
De exemplu, pentru n = 9509,
b
0
= 97, x
0
= 0, 514101, b
2
0
≡ −100 (mod 9509).
Obt ¸inem:
a
1
=
_
1
x
0
_
= 1, b
1
= 1 97 + 1 = 98, x
1
=
1
x
0
−a
1
= 0, 945143,
11.8. METODA FRACT¸ IILOR CONTINUE 211
b
2
1
= 9604 ≡ 95 (mod 9509);
a
2
=
_
1
x
1
_
= 1, b
2
= 1 98 + 97 = 195, x
2
=
1
x
1
−a
2
= 0, 0580409,
b
2
2
= 38025 ≡ −11 (mod 9509);
a
3
=
_
1
x
2
_
= 17, b
3
= 17 195 + 98 = 3413, x
3
=
1
x
2
−a
3
= 0, 229229,
b
2
3
= 11648569 ≡ 44 (mod 9509).
Observ˘am c˘a −100 = −1 2
2
5
2
, 95 = 5 19, −11 = −1 11, 44 = 2
2
11.
Alegem B = ¦−1, 2, 5, 11¦ ¸si numerele b
0
, b
2
, b
3
. Vectorii corespunz˘atori
sunt (1, 0, 0), (1, 0, 1), (0, 0, 1) a c˘aror sum˘a vedem c˘a este vectorul nul.
Atunci,
x = 97 195 3413 = 64556895 ≡ 294 (mod 9509) ¸si y = 2
2
5 11 = 220.
Calcul˘am (294 + 220, 9509) = 257 ¸si (294 −220, 9509) = 37.
ˆ
In final, prezent˘am o variant˘a a metodei de factorizare cu ajutorul
fract ¸iilor continue ˆın care nu folosim o baz˘a factor.
Pentru aceasta, s˘a facem mai ˆıntˆai urm˘atoarea observat ¸ie: ˆın cazul
metodei Fermat se c˘autau numere naturale x, y cu proprietatea c˘a
n = x
2
−y
2
¸si x −y ,= 1.
Factorizarea lui n este posibil˘a ¸si ˆın cazul ˆın care impunem ni¸ste
condit ¸ii mai slabe asupra numerelor x, y ¸si anume:
n = x
2
−y
2
, 0 < y < x < n, x +y ,= n.
Din aceste relat ¸ii obt ¸inem n x±y ¸si n [ (x−y)(x+y). Atunci, (x−y, n)
¸si (x +y, n) sunt divizori netriviali ai lui n.
Pentru a determina solut ¸iile congruent ¸ei se poate folosi reprezentarea
lui

n sub form˘a de fract ¸ie continu˘a.
Propozit ¸ie 11.8.3 Fie n num˘ar natural, care nu este p˘atrat perfect.
Definim:
α
0
=

n, α
k
=
P
k
+

n
Q
k
, a
k
= [α
k
] , P
k+1
= a
k
Q
k
−P
k
,
Q
k+1
=
n −P
2
k+1
Q
k
, pentru k ≥ 0.
Fie
p
k
q
k
k−convergenta fract ¸iei continue simple a lui

n. Atunci,
p
2
k
−nq
2
k
= (−1)
k−1
Q
k+1
.
212 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
Demonstrat ¸ie. Fie

n = α
0
= [a
0
; a
1
, a
2
, . . . , α
k
] .
Astfel,

n =
α
k+1
p
k
+p
k−1
α
k+1
q
k
+q
k−1
. Cum α
k+1
=
P
k+1
+

n
Q
k+1
, rezult˘a

n =
_
P
k+1
+

n
_
p
k
+Q
k+1
p
k−1
_
P
k+1
+

n
_
q
k
+Q
k+1
q
k−1
.
Obt ¸inem astfel,
nq
k
+ (P
k+1
q
k
+Q
k+1
q
k−1
)

n = (P
k+1
p
k
+Q
k+1
p
k−1
) +p
k

n.
De aici,
nq
k
= P
k+1
p
k
+Q
k+1
p
k−1
(11.1)
p
k
= P
k+1
q
k
+Q
k+1
q
k−1
(11.2)
ˆ
Inmult ¸im prima relat ¸ie cu q
k
, a doua cu p
k
¸si sc˘adem. Dac˘a t ¸inem cont
¸si de propozit ¸ia 2.1.1, rezult˘a:
p
2
k
−nq
2
k
= (p
k
q
k−1
−p
k−1
q
k
) Q
k+1
= (−1)
k−1
Q
k+1
.
Cu ajutorul acestei propozit ¸ii s˘a vedem cum funct ¸ioneaz˘a algoritmul,
f˘ar˘a a mai alege o baz˘a factor.
Conform propozit ¸iei, p
2
k
≡ (−1)
k−1
Q
k+1
(mod n), pentru fiecare k.
Presupunem k impar ¸si Q
k+1
≡ s
2
(mod n), un p˘atrat perfect. Atunci
p
2
k
≡ s
2
(mod n). Astfel, vom c˘auta p˘atrate perfecte s
2
ˆın ¸sirul Q
j
pentru
indici j pari. Atunci, pentru fiecare p
j−1
vedem dac˘a (p
j−1
+ s, n) este
divizor propriu al lui n.
De exemplu, pentru n = 9509, obt ¸inem:
α
0
=

9509, P
0
= 0, Q
0
= 1, a
0
=
_√
9509
¸
= 97;
P
1
= 97 1 −0 = 97, Q
1
=
9509 −97
2
1
= 100,
α
1
=

9509 + 97
100
, a
1
= [α
1
] = 1;
P
2
= 100 1 −97 = 3, Q
2
=
9509 −3
2
100
= 95,
α
2
=

9509 + 3
95
, a
2
= [α
2
] = 1;
11.9. METODA FILTRULUI P
˘
ATRATIC 213
P
3
= 95 1 −3 = 92, Q
3
=
9509 −92
2
95
= 11,
α
3
=

9509 + 92
11
, a
3
= [α
3
] = 17;
P
4
= 17 11 −92 = 95, Q
4
=
9509 −95
2
11
= 44,
α
4
=

9509 + 95
44
, a
4
= [α
4
] = 4;
P
5
= 44 4 −95 = 81, Q
5
=
9509 −81
2
44
= 67,
α
5
=

9509 + 81
67
, a
5
= [α
5
] = 2;
P
6
= 67 2 −81 = 53, Q
6
=
9509 −53
2
67
= 100,
α
6
=

9509 + 53
100
, a
6
= [α
6
] = 1.
Calcul˘am acum p
5
.
p
0
= a
0
= 97, p
1
= a
0
a
1
+ 1 = 98
p
2
= 1 98 + 97 = 195,
p
3
= 17 195 + 98 = 3413,
p
4
= 4 3413 + 195 = 13847,
p
5
= 2 13847 + 3413 = 31107 ≡ 2580 (mod n).
Atunci, 2580
2
≡ 10
2
(mod 9509).
Prin calcul, obt ¸inem (2580 − 10, 9509) = 257 ¸si (2580 + 10, 9509) = 37.
Deci, 9509 = 257 37.
11.9 Metoda filtrului p˘atratic
Metoda filtrului p˘atratic, realizat˘a de Pomerance, la ˆınceputul anilor 80,
a fost mult timp mai performant˘a decˆat alte metode de factorizare de
tip general. Ea este folosit˘a pentru a factoriza numere mari n care nu
au factori primi de m˘arime mult mai mic˘a decˆat

n.
Filtrul p˘atratic este o variant˘a a metodei bazei factor. Ca baz˘a B,
vom alege ˆın acest caz toate numerele prime p ≤ P (P este un num˘ar
214 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
limit˘a ales ˆıntr-un fel optim) pentru care
_
n
p
_
= 1 pentru p impar. p = 2
va fi ¸si el inclus ˆın baz˘a, ˆın mod automat. Vom nota cu S mult ¸imea de
B− numere pe care le c˘aut˘ am. Ea va fi aceea¸si mult ¸ime ca cea folosit˘a
ˆın metoda Fermat, ¸si anume:
S = ¦t
2
−n [
_√
n
¸
≤ t ≤
_√
n
¸
+A¦
cu A, o limit˘a potrivit aleas˘a.
Ideea principal˘a a acestei metode const˘a ˆıntr-o filtrare asem˘an˘atoare
ciurului lui Eratostene pentru elementele bazei alese init ¸ial.
Fie n un num˘ar compus impar.
1. Alegem marginile P ¸si A, ambele de m˘arime apropiat˘a cu e

ln nln ln n
.
ˆ
In general, A este ales mai mare decˆat P, dar nu mai mare decˆat o putere
mic˘a a lui P. De exemplu, P < A < P
2
.
2. Pentru fiecare prim p ≤ P, verific˘am mai ˆıntˆai dac˘a
_
n
p
_
= 1.
Dac˘a relat ¸ia nu se verific˘a, p este eliminat din baz˘a.
3. Pentru t = [

n] +1, [

n] +2, . . . , [

n] +A, realiz˘am o coloan˘a de
numere t
2
−n.
4. Alegem din coloana de la punctul 3. doar numerele t
2
− n care
sunt B− numere.
5. Mai departe, se procedeaz˘a ca ˆın metoda bazei factor.
Pentru a exemplifica aceast˘a metod˘a, factoriz˘am n = 24961 folosind
cea mai simpl˘a variant˘a de filtru p˘atratic.
Consider˘am P = 23. Pentru simplificarea aplicat ¸iei, vom alege pentru
t valorile [

n] , [

n] ±1, [

n] ±2, . . . .
Calculˆand
_
n
p
_
, pentru numerele prime p ∈ ¦7, 11, 17, 19¦, n nu este rest
p˘atratic. Deci, ele se elimin˘a din baz˘a. Obt ¸inem B = ¦−1, 2, 3, 5, 13, 23¦.
Baza avˆand 6 elemente, trebuie s˘a determin˘am cel put ¸in 7 B− numere
din care s˘a putem alege pe cele pentru care aplic˘am metoda bazei factor.
Obt ¸inem:
a
0
= 157, b
0
≡ a
2
0
−24961 ≡ −312 (mod 24961),
−312 = −1 2
3
3 13, v
0
= (1, 1, 1, 0, 1, 0).
a
1
= 158, b
1
≡ a
2
1
−24961 ≡ 3 (mod 24961),
11.10. FILTRUL CORPULUI DE NUMERE 215
v
1
= (0, 0, 1, 0, 0, 0).
a
2
= 156, b
2
≡ a
2
2
−24961 ≡ −625 (mod 24961),
−625 = −1 5
4
, v
2
= (1, 0, 0, 0, 0, 0).
a
3
= 159, b
3
≡ a
2
3
−24961 ≡ 320 (mod 24961),
320 = 2
6
5, v
3
= (0, 0, 0, 1, 0, 0).
a
4
= 155, b
4
≡ a
2
4
−24961 ≡ −936 (mod 24961),
−936 = −1 2
3
3
2
13, v
4
= (1, 1, 0, 0, 1, 0).
a
5
= 161, b
5
≡ a
2
5
−24961 ≡ 960 (mod 24961),
960 = 2
6
3 5, v
5
= (0, 0, 1, 1, 0, 0).
a
6
= 151, b
6
≡ a
2
6
−24961 ≡ −2160 (mod 24961),
−2160 = −1 2
4
3
3
5, v
6
= (1, 0, 1, 1, 0, 0).
Observ˘am v
0
+v
1
+v
4
= (0, 0, 0, 0, 0, 0). Atunci,
x ≡ 157 158 155 ≡ 936 (mod 24961),
y ≡ −1 2
3
3
2
13 ≡ 24025 (mod 24961).
ˆ
In aceast˘a situat ¸ie, x ≡ −y (mod 24961), deci trebuie s˘a c˘aut˘am alt˘a
combinat ¸ie.
Din v
2
+v
5
+v
6
= (0, 0, 0, 0, 0, 0), rezult˘a:
x ≡ 23405 (mod 24961),
y ≡ −1 2
5
3
2
5
3
≡ 13922 (mod 24961).
Acum 23405 ,= ±13922 (mod 24961), ¸si calcul˘am:
(23405 −13922, 24961) = (9483, 24962) = 109.
O situat ¸ie mai complex˘a de tratare a acestei metode poate fiˆıntˆalnit˘a
ˆın [12]. De asemenea, alte variante folosesc mai multe polinoame ˆın
selectarea B− numerelor (noi am folosit doar f = X
2
− n), pentru a
asigura o mai mare ¸sans˘a de factorizare ¸si un interval de filtrare mai
scurt, fiind aplicabil proces˘arii paralele.
11.10 Filtrul corpului de numere
Problema factoriz˘arii nu a cunoscut ˆımbun˘at˘at ¸iri majore pˆan˘a ˆın anul
1990 cˆand Pollard a realizat un algoritm foarte rapid, cu ajutorul c˘aruia
a factorizat num˘arul RSA-130.
216 CAPITOLUL 11. PROBLEMA FACTORIZ
˘
ARII
ˆ
In unele privint ¸e, algoritmul este asem˘an˘ator cu cele anterioare, el
c˘autˆand ˆıntregi x, y astfel ˆıncˆat x
2
≡ y
2
(mod n) ¸si x ,= ±y (mod n).
Pentru a realiza acest lucru, se folosesc dou˘a baze factor; una este for-
mat˘a din toate numere prime mai mici decˆat o anumit˘a limit˘a ¸si cealalt˘a
baz˘a este format˘a din toate idealele prime de norm˘a mai mic˘a decˆat o
valoare considerat˘a, din inelul de ˆıntregi al unui corp de numere algebrice
potrivit ales.
Astfel, avˆand la baz˘a tehnica filtrului p˘atratic, algoritmul folose¸ste
teoria algebric˘a a numerelor, fiind considerat cel mai complicat algoritm
cunoscut.
O versiune special˘a a algoritmului este folosit˘a pentru a factoriza
numere de forma n = r
e
−s pentru valori mici ale lui r ¸si [s[ (vezi [14]).
S-a dovedit c˘a acest algoritm este mult mai rapid decˆat filtrul p˘atratic
ˆın factorizarea numerelor de aproximativ 115 cifre zecimale. La ora
actual˘a, el det ¸ine locul ˆıntˆ ai ˆın ierarhia algoritmilor de factorizare cu
scop general.
Exercit ¸ii propuse
1. Factorizat ¸i numerele: 8633, 200819, 809009 folosind metoda Fer-
mat. Pentru 68987 aplicat ¸i metoda Fermat generalizat˘a.
2. Ar˘atat ¸i c˘a num˘arul 23360947609 nu poate fi folosit ˆıntr-un crip-
tosistem RSA.
3. Aplicat ¸i metoda rho pentru a obt ¸ine o descompunere ˆın factori
primi pentru urm˘atoarele situat ¸ii. De fiecare dat˘a, comparat ¸i x
k
numai
cu x
j
unde j = 2
h
−1 ¸si k este un num˘ar cu (h + 1) cifre binare.
i) f(x) = x
2
−1, x
0
= 2, n = 91;
ii) f(x) = x
2
+ 1, x
0
= 1, n = 8051;
iii) f(x) = x
2
−1, x
0
= 5, n = 7031.
4. Factorizat ¸i n = 4633. folosind numerele 68, 152, 153 ˆımpreun˘a cu
o baz˘a factor B potrivit aleas˘a.
5. Factorizat ¸i numerele 13561, 8777, 14429, 12403, 197209 prin metoda
fract ¸iilor continue.
6. Factorizat ¸i numerele 1046603 ¸si 998771 folosind metoda filtrului
p˘atratic.
CAPITOLUL 12
Problema logaritmului
discret
Dup˘a cum am v˘azut ˆın capitolul 9, securitatea multor criptosisteme se
bazeaz˘a pe problema logaritmului discret, o alt˘a problem˘a conside-
rat˘a ˆın prezent ca fiind dificil˘a.
Dac˘a consider˘am un grup ciclic G, de ordin n, cu g un generator
al s˘au, atunci G = ¦1, g, g
2
, . . . , g
n−1
¦. Pentru b ∈ G, definim log
g
b
logaritmul discret al lui b ˆın baza g ca fiind unicul num˘ar 1 ≤ x ≤ n −1
care verific˘a b = g
x
.
Un caz particular a fost deja studiat ˆın capitolul 6, ¸si anume situat ¸ia
ˆın care grupul U(Z
n
) este ciclic.
ˆ
In acest caz, un generator al grupu-
lui este r˘ad˘acina primitiv˘a r, iar logaritmul discret a fost numit index
aritmetic.
De exemplu, U(Z
17
) este un grup ciclic de ordin 16. Cum ord
17
3 =
16, 3 este un generator sau, r˘ad˘acin˘a primitiv˘a modulo 17. Deoarece
3
4
= 81 ≡ 13 (mod 17), obt ¸inem log
3
13 = 4.
Problema logaritmului discret, DLP, este formulat˘a astfel:
Dac˘a consider˘am un num˘ar prim p, g un generator al grupului Z

p
(r˘ad˘acin˘a primitiv˘a modulo p) ¸si un element b ∈ Z

p
, s˘a se determine
1 ≤ x ≤ p −1 pentru care b ≡ g
x
(mod p).
Dac˘a ˆın locul lui Z

p
alegem un grup ciclic oarecare, spunem c˘a am
enunt ¸at problema generalizat˘a a logaritmului discret, GDLP.
217
218 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Trebuie s˘a subliniem un fapt important. Dac˘a consider˘am g
1
¸si g
2
doi generatori diferit ¸i ai grupului G, ciclic de ordin n, iar b ∈ G obt ¸inem:
b = g
log
g
1
b
1
= g
log
g
2
b
2
=
_
g
log
g
1
g
2
1
_
log
g
2
b
.
Astfel, log
g
1
b ≡ log
g
2
b log
g
1
g
2
(mod n). De aici rezult˘a c˘a un algoritm
care calculeaz˘a logaritmi relativ la baza g
1
poate calcula logaritmi ˆın
orice baz˘a g, cu g un generator oarecare al grupului. Aceast˘a observat ¸ie
arat˘a c˘a dificultatea problemei logaritmului discret nu depinde de gene-
ratorul ales.
Spre deosebire de algoritmii de factorizare care au fost studiat ¸i timp
de sute de ani, algoritmii de calcul a logaritmilor discret ¸i au o perioad˘a
mult mai scurt˘a de cercetare, anume ˆıncepˆand cu anul 1970. De cele mai
multe ori, ace¸sti algoritmi sunt ˆımp˘art ¸it ¸i ˆın dou˘a clase:
1. metode de calculare a indexului, care sunt asem˘an˘atoare cu cele
mai rapide metode de factorizare. Exist˘a dou˘a metode clasice,
strˆans legate de algoritmii filtrului p˘atratic ¸si cel al filtrul corpu-
lui numerelor. Ele sunt eficiente numai ˆın anumite grupuri, fiind
necesar s˘a se verifice anumite propriet˘at ¸i matematice.
2. metode de g˘asire de coliziuni, aplicate ˆın cazuri generale. Cea mai
performant˘a dintre acestea este metoda Pollard-rho.
Vom prezenta ˆın continuare cei mai cunoscut ¸i algoritmi de rezolvare
a DLP. Grupul ciclic G va fi grupul multiplicativ al unui corp finit cu
p elemente, deci un grup de ordin p − 1. Generatorul acestui grup va fi
notat cu g ¸si vom avea de calculat log
g
b, unde b ∈ G.
12.1 Algoritmul Shanks
Fie m =
_√
p −1
¸
. Dac˘a b = g
x
∈ G, atunci putem scrie x = cm+d, cu
0 ≤ c, d ≤ m−1. Atunci, b = g
x
= g
cm
g
d
, de unde bg
−d
= (g
m
)
c
.
Pornind de la aceast˘a observat ¸ie, Shanks a propus o metod˘a de
c˘autare succesiv˘a pentru a determina log
g
b, numit˘a ¸si algoritmul baby-
step giant-step.
12.1. ALGORITMUL SHANKS 219
Se creeaz˘a dou˘a liste :
Giant step Baby step
1 b
g
m
bg
−1
g
2m
bg
−2
.
.
.
.
.
.
g
(m−1)m
bg
−(m−1)
¸si vedem pentru ce valori ale lui c ¸si d obt ¸inem g
cm
= bg
−d
. Atunci,
log
g
b = cm+d.
Algoritm 12.1.1 (Shanks)
INPUT: g, p, b cu semnificat ¸iile anterioare.
OUTPUT: log
g
b.
1. m ←[

p −1]
2. Pentru c = 0, . . . , m−1, construie¸ste un tabel cu (c, g
mc
), care
se ordoneaz˘a dup˘a a doua component˘a.
3. Calculeaz˘a g
−1
¸si pune a ←b.
4. Pentru d = 0, . . . , m−1, execut˘a:
4.1. Verific˘a dac˘a a este a doua component˘a a
unui element din tabel.
4.2. Dac˘a a = g
mc
, returneaz˘a x = cm+d ¸si se opre¸ste.
4.3. Pune a ←ag
−1
.
Spre exemplu, dac˘a alegem grupul ciclic G = Z

181
, de ordin 180,
un generator al s˘au este g = 2.
ˆ
In acest caz, m = 13. Vrem s˘a aplic˘am
algoritmul pentru a determina log
2
30.
Pentru 0 ≤ c ≤ 12,
_
2
13
_
c
ia valorile ˆınscrise ˆın tabel:
c 0 1 2 3 4 5
2
13c
1 47 37 110 102 88
c 6 7 8 9 10 11 12
2
13c
154 179 87 107 142 158 5
Din 2
180
≡ 1 (mod 181), rezult˘a 2
−1
≡ 2
179
≡ 91 (mod 181).
Calcul˘am b2
−d
, pˆan˘a g˘asim o valoare egal˘a cu un 2
13c
anterior calculat.
220 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Pentru d ≤ 7 valorile obt ¸inute sunt:
d 0 1 2 3 4 5 6 7
30 2
−d
30 15 98 49 115 148 74 37
Am obt ¸inut
_
2
13
_
2
≡ 30 2
−7
(mod 181). Astfel, c = 2 iar d = 7.
Rezult˘a log
2
30 = 2 13 + 7 = 33.
12.2 Algoritmul Pohlig-Hellman
Acest algoritm este utilizabil dac˘a ordinul grupului ciclic are factori primi
mici. Presupunem c˘a p − 1 =
m

i=1
q
ki
i
, cu q
i
numere prime distincte.
Fie g
x
≡ b (mod p). Din capitolul 6.3, ¸stim c˘a aceast˘a congruent ¸˘a este
echivalent˘a cu x ≡ log
g
b (mod p − 1). Folosind teorema chinezeasc˘a a
resturilor, este suficient s˘a determin˘am x
i
≡ x (mod q
ki
i
), pentru fiecare
1 ≤ i ≤ m. Cu aceste valori, vom calcula apoi x (mod p −1).
Fie q un divizor prim al lui p−1 astfel ˆıncˆat q
k
|p−1. Pentru a calcula
x
q
≡ x (mod q
k
), consider˘am x ≡ a
0
+ a
1
q + . . . + a
k−1
q
k−1
(mod q
k
),
cu 0 ≤ a
i
≤ q −1. Vom determina succesiv ace¸sti coeficient ¸i.
Pentru aceasta, fie α ≡ g
p−1
q
(mod p). Atunci, α
q
≡ 1 (mod p).
Vom determina toate elementele r
q,i
≡ α
i
(mod p) de ordin q, pentru
0 ≤ i ≤ q − 1, folosind metoda ridic˘arii succesive la p˘atrat ¸si le vom
p˘astra ˆıntr-un tabel. Lucrˆand ˆın ipoteza c˘a divizorii primi ai lui p − 1
sunt mici, dimensiunea tabelului este rezonabil˘a.
Congruent ¸a g
x
≡ b (mod p) devine:
b
p−1
q
≡ (g
x
)
p−1
q
≡ g
a
0
p−1
q
+a
1
(p−1)+...
≡ g
a
0
p−1
q
≡ α
a
0
(mod p).
Deci, r
q,a
0
= α
a
0
≡ b
p−1
q
(mod p). Astfel, vom compara b
p−1
q
cu toate
elementele r
q,j
¸si a
0
va fi egal cu valoarea j pentru care obt ¸inem egalitate.
Pentru a determina a
1
, consider˘am b
1
≡ bg
−a0
(mod p), adic˘a:
g
x−a
0
≡ b
1
(mod p).
12.2. ALGORITMUL POHLIG-HELLMAN 221
Atunci:
b
p−1
q
2
1
≡ (g
x−a
0
)
p−1
q
2
≡ g
a
1
p−1
q
+a
2
(p−1)+...
≡ g
a
1
p−1
q
≡ α
a1
≡ r
q,a1
(mod p).
Vom compara b
p−1
q
2
1
cu elementele din mult ¸imea ¦r
q,j
¦
0≤j<q
dup˘a care
identific˘am a
1
cu indicele j pentru care se obt ¸ine egalitatea.
Proced˘am inductiv, pentru a obt ¸ine tot ¸i coeficient ¸ii a
i
. Vom nota:
b
i
= bg
−(a
0
+a
1
q+...+a
i−1
q
i−1
)
.
Atunci, b
p−1
q
i
i
≡ 1 (mod p) ¸si b
p−1
q
i+1
i
≡ r
q,a
i
.
ˆ
In final, obt ¸inem x (mod q
k
). Aplicˆand procedeul pentru fiecare di-
vizor q [ p − 1 ¸si folosind teorema chinezeasc˘a a resturilor, obt ¸inem
x = log
g
b.
Algoritm 12.2.1 (Pohlig-Hellman)
INPUT: g, p, b cu semnificat ¸iile anterioare.
OUTPUT: log
g
b.
1. Factorizeaz˘a p −1 =
m

i=1
q
ki
i
.
2. Pentru i de la 1 la m efectueaz˘a:
2.1. q ←q
i
, k ←k
i
.
2.2. b
1
←1, a
−1
←0.
2.3. Calculeaz˘a α ←g
(p−1)/q
2.4. Pentru j de la 0 la k −1, efectueaz˘ a:
2.4.1. Calculeaz˘a b
1
←b
1
g
aj−1q
j−1
,
b

←(bb
−1
1
)
(p−1)/q
j+1
.
2.4.2. Calculeaz˘a a
j
←log
α
b

folosind
algoritmul Shanks.
2.5. x
i
←a
0
+a
1
q +. . . +a
k−1
q
k−1
.
3. Aplic˘a algoritmul Gauss pentru a rezolva sistemul
x ≡ x
i
(mod q
k
i
i
), 1 ≤ i ≤ m.
4. Returneaz˘a x.
De exemplu, s˘a recalcul˘am log
2
30 ˆın grupul G = Z

181
, de ordin
180 = 2
2
3
2
5. Vom avea p = 181, g = 2, b = 30 ¸si q ∈ ¦2, 3, 5¦.
222 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Calcul˘am pentru fiecare q valorile r
q,j
pentru 0 ≤ j ≤ q −1.
1. q = 2. Atunci, x ≡ a
0
+a
1
2 (mod 4), a
0
, a
1
∈ ¦0, 1¦.
α = 2
180
2
= 2
90
≡ 180 ≡ −1 (mod 181).
r
2,0
= α
0
= 1, r
2,1
= α = −1.
b
180
2
= 30
90
≡ 180 (mod 181), deci a
0
= 1.
Fie b
1
= bg
−1
≡ 30 91 ≡ 15 (mod 181). Din b
180
2
2
1
≡ 15
45
≡ 1 (mod 181),
rezult˘a b
180
2
2
1
≡ r
2,0
(mod 181), adic˘a a
1
= 0. Deci, x ≡ 1 (mod 4).
2. q = 3. Relu˘am procedeul anterior, ¸si, pentru x ≡ a
0
+a
1
3 (mod 9),
cu 0 ≤ a
0
, a
1
≤ 2, rezult˘a:
r
3,0
≡ 1 (mod 181), r
3,1
≡ α ≡ 2
180
3
≡ 2
60
≡ 48 (mod 181),
r
3,2
≡ α
2
≡ 132 (mod 181).
30
180
3
= 30
60
≡ 1 ≡ r
3,0
(mod 181), deci a
0
= 0.
Acum, b
1
= b = 30. Din b
180
3
2
1
≡ 30
20
≡ 132 ≡ r
3,2
(mod 181), rezult˘a
a
1
= 2, deci x ≡ 6 (mod 9).
3. q = 5.
ˆ
In acest caz, x ≡ a
0
(mod 5), 0 ≤ a
0
≤ 4.
r
5,0
≡ 1 (mod 181), r
5,1
≡ α ≡ 2
180
5
≡ 2
36
≡ 59 (mod 181),
r
5,2
≡ α
2
≡ 42 (mod 181), r
5,3
≡ α
3
≡ 125 (mod 181),
r
5,4
≡ α
4
≡ 135 (mod 181).
b
180
5
≡ 30
36
≡ 125 ≡ r
5,3
(mod 181). Astfel, a
0
= 3 ¸si x ≡ 3 (mod 5).
Rezolv˘am sistemul:
_
_
_
x ≡ 1 (mod 4)
x ≡ 6 (mod 9)
x ≡ 3 (mod 5)
folosind teorema chinezeasc˘a a resturilor ¸si obt ¸inem x ≡ 33 (mod 180).
Deci, log
2
30 = 33.
12.3 Algoritmul Pollard rho
Algoritmul Polard rho pentru calculul logaritmului discret este preferat
algoritmului Shanks datorit˘a faptului c˘a acesta necesit˘a o cantitate mai
mic˘a de date ce trebuie stocate. Pentru a simplifica prezentarea acestui
algoritm vom considera cazul ˆın care grupul ciclic G este Z

p
, cu p num˘ar
prim.
12.3. ALGORITMUL POLLARD RHO 223
Grupul G este partit ¸ionat ˆın trei mult ¸imi S
1
, S
2
, S
3
, de cardinale
aproximativ egale. Alegerea celor trei submult ¸imi trebuie f˘acut˘a cu grij˘a:
1 / ∈ S
2
¸si criteriul dup˘a care se face distribuirea elementelor grupului ˆın
fiecare mult ¸ime trebuie s˘a cont ¸in˘a condit ¸ii u¸sor de verificat. Cele mai
simple ¸si mai des ˆıntˆalnite moduri de partit ¸ionare sunt urm˘atoarele:
S
1
= ¦x ∈ G [ 0 < x <
p
3
¦
S
2
= ¦x ∈ G [
p
3
< x <
2p
3
¦
S
3
= ¦x ∈ G [
2p
3
< x < p¦
sau
S
1
= ¦x ∈ G [ x ≡ 1 (mod 3)¦
S
2
= ¦x ∈ G [ x ≡ 0 (mod 3)¦
S
3
= ¦x ∈ G [ x ≡ 2 (mod 3)¦
Definim ¸sirul (x
i
)
i≥0
de elemente ale grupului G prin x
0
= 1 ¸si,
pentru i > 0:
x
i+1
=
_
_
_
bx
i
, x
i
∈ S
1
;
x
2
i
, x
i
∈ S
2
;
gx
i
, x
i
∈ S
3
.
S¸irul astfel construit determin˘a alte dou˘a ¸siruri de numere naturale
(c
i
)
i≥0
¸si (d
i
)
i≥0
care verific˘a x
i
= g
c
i
b
d
i
. Astfel, c
0
= 0, d
0
= 0 ¸si pentru
i > 0,
c
i+1
=
_
_
_
c
i
, x
i
∈ S
1
;
2c
i
(mod p −1), x
i
∈ S
2
;
c
i
+ 1 (mod p −1), x
i
∈ S
3
.
¸si
d
i+1
=
_
_
_
d
i
+ 1 (mod p −1), x
i
∈ S
1
;
2d
i
(mod p −1), x
i
∈ S
2
;
d
i
, x
i
∈ S
3
.
Algoritmul lui Floyd de ciclare, prezentat ˆın 11.2, este folosit ˆın con-
tinuare pentru a determina o coliziune x
i
= x
2i
.
224 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Atunci, g
c
i
b
d
i
≡ g
c
2i
b
d
2i
(mod p), de unde g
c
i
−c
2i
≡ b
d
2i
−d
i
(mod p).
Dac˘a not˘am e ≡ d
2i
− d
i
(mod p − 1) ¸si f ≡ c
i
− c
2i
(mod p − 1),
0 ≤ e, f ≤ p −2, obt ¸inem
b
e
≡ g
f
(mod p) (12.1)
de unde,
e log
g
b ≡ f (mod p −1). (12.2)
Aceast˘a congruent ¸˘a ofer˘a o posibilitate de a determina log
g
b dac˘a
e ,= 0 (mod p −1).
ˆ
In cazul ˆın care e ≡ 0 (mod p −1), trebuie alese alte
valori pentru c
0
, d
0
¸si repetat procedeul.
Fie d = (e, p−1) ¸si u, v numerele ˆıntregi pentru care d = eu+(p−1)v.
Din congruent ¸a ( 12.1) rezult˘a b
eu
≡ g
fu
(mod p). Obt ¸inem:
b
d
≡ b
eu
_
b
p−1
_
v
≡ b
eu
≡ g
fu
(mod p).
Cum b ≡ g
log
g
b
(mod p), deducem
g
d log
g
b
≡ g
fu
(mod p)
¸si, ˆın final,
d log
g
b ≡ fu (mod p −1).
Fie k num˘ar natural pentru care d log
g
b = fu+k(p−1). Din d [ p−1,
rezult˘a d [ fu ¸si astfel,
log
g
b =
k(p −1) +fu
d
pentru un k, 0 ≤ k ≤ d −1.
Dac˘a d = 1, e are invers modulo p −1 ¸si, din ( 12.2), obt ¸inem
log
g
b ≡ ef (mod p −1).
Dac˘a d ,= 1, se calculeaz˘a log
g
b, dˆand valori lui k, pˆan˘a se verific˘a
congruent ¸a g
log
g
b
≡ b (mod p). Dac˘a valoarea lui d este foarte mare,
atunci trebuie c˘autat˘a o alt˘a variant˘a de lucru datorit˘a volumului mare
de verific˘ ari ce trebuie f˘acute.
Putem face urm˘atoarea observat ¸ie: dac˘a grupul G are ordinul n, un
num˘ar prim ¸si e ,= 0 (mod n), atunci, d = 1 ¸si determinarea logaritmului
discret se simplific˘a.
12.3. ALGORITMUL POLLARD RHO 225
Pentru acest caz, propunem urm˘atorul algoritm:
Algoritm 12.3.1 (Polard-rho)
INPUT: g, b cu semnificat ¸iile anterioare ¸si
n num˘ar prim, egal cu ordinul grupului G.
OUTPUT: log
g
b.
1. x
0
←1, c
0
←0, d
0
←0.
2. Pentru i = 1, 2, . . . efectueaz˘a:
2.1. Folosind x
i−1
, c
i−1
, d
i−1
¸si x
2i−2
, c
2i−2
, d
2i−2
calculeaz˘a x
i
, c
i
, d
i
¸si x
2i
, c
2i
, d
2i
folosind relat ¸iile anterioare.
2.2. Dac˘a x
i
= x
2i
atunci:
2.2.1. e ←d
2i
−d
i
(mod n)
2.2.2. Dac˘a e ≡ 0 (mod n), returneaz˘ a mesaj de e¸sec
¸si se opre¸ste; altfel calculeaz˘a ¸si returneaz˘a
log
g
b = e(c
i
−c
2i
) (mod n).
S˘a vedem, pe un caz concret, cum funct ¸ioneaz˘a algoritmul. Calcul˘am
log
2
153 ˆın Z

181
. Alegem pentru partit ¸ionare grupului, a doua variant˘a
prezentat˘a. Rezultatele sunt cuprinse ˆın urm˘atorul tabel:
i x
i
c
i
d
i
x
2i
c
2i
d
2i
1 153 0 1 60 0 2
2 60 0 2 141 1 4
3 161 0 4 123 3 8
4 141 1 4 109 6 17
5 152 2 8 24 6 19
6 123 3 8 3 24 76
7 106 6 16 81 96 124
8 109 6 17 34 24 136
9 25 6 18 87 25 137
10 24 6 19 19 50 95
11 33 12 38 22 51 96
12 3 24 76 80 102 14
13 9 48 152 45 103 15
14 81 96 124 134 26 31
15 45 12 68 148 54 62
226 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
i x
i
c
i
d
i
x
2i
c
2i
d
2i
16 34 24 136 11 54 64
17 134 24 137 108 55 65
18 87 25 137 160 111 130
19 148 50 94 34 42 82
17 134 24 137 108 55 65
18 87 25 137 160 111 130
19 148 50 94 34 42 82
20 19 50 95 87 43 83
21 11 50 96 19 86 167
22 22 51 96 22 87 168
Am g˘asit o coliziune x
22
= x
44
. Atunci, avem de rezolvat congruent ¸a
(168 −96)y ≡ 51 −87 (mod 180).
Ea este echivalent˘a cu 72y ≡ −36 (mod 180), adic˘a y ≡ 2 (mod 5). Deci,
y = 2 + 5k, k < 36.
Pentru k = 21 obt ¸inem y = 107 care verific˘a 2
107
≡ 153 (mod 181). Deci,
log
2
153 = 107.
12.4 Algoritmul index-calculus
Acest algoritm reprezint˘a cea mai puternic˘a metod˘a cunoscut˘a pentru
determinarea logaritmului discret. Ea este ˆıns˘a aplicabil˘a doar unor
grupuri, cum ar fi Z

p
sau pentru grupul multiplicativ al unui corp finit cu
p
n
elemente, unde p este num˘ar prim. Algoritmul este ˆın multe privint ¸e
asem˘an˘ator cu metoda bazei factor, prezentat˘a ˆın capitolul 11.7.
Pentru o prezentare cˆat mai simplificat˘a a acestui algoritm, vom stu-
dia doar cazul lui G = Z

p
. Pentru cazul G = F

p
n unde F
p
n este un corp
finit cu p
n
elemente, trebuie mai ˆıntˆai studiate propriet˘at ¸ile corpurilor
finite, construct ¸ia acestora, algoritmul Berlekamp de factorizare a poli-
noamelor cu coeficient ¸i ˆıntr-un corp finit (ce pot fi g˘asite ˆın [9]). Doar
dup˘a aceea se poate ˆınt ¸elege algoritmul prezentat ˆın [12].
12.4. ALGORITMUL INDEX-CALCULUS 227
Algoritmul este format din dou˘a etape importante:
Preg˘atirea calcului.
1. Se alege mai ˆıntˆai o baz˘a B ⊂ Z

p
.
ˆ
In cazul nostru, de obicei
se aleg primele t numere prime avˆand grij˘a ca majoritatea elementelor
grupului s˘a poat˘a fi exprimate ˆın funct ¸ie de acestea.
Fie B = ¦p
1
, p
2
, . . . , p
t
¦.
2. Se determin˘a log
g
p
i
pentru fiecare element al bazei. Pentru
aceasta, se alege aleator k, 0 ≤ k ≤ p − 2, ¸si se calculeaz˘a g
k
(mod p).
Vedem dac˘a
g
k

t

i=1
p
a
i
i
(mod p),
unde a
i
≥ 0.
Dac˘a relat ¸ia nu se verific˘a, se alege alt˘a valoare pentru k.
Dac˘a congruent ¸a are loc, rezult˘a
k ≡
t

i=1
a
i
log
g
p
i
(mod p −1).
Se repet˘a acest procedeu pˆan˘a obt ¸inem un sistem liniar de congruent ¸e cu
solut ¸ie unic˘a, adic˘a determinantul matricei sistemului este num˘ar prim
cu p −1.
ˆ
In acest moment, rezolvˆand sistemul obt ¸inem o baz˘a de date ce
este folosit˘a ˆın etapa urm˘atoare.
T¸ inˆand cont de cele prezentate, rezult˘a c˘a dimensiunea bazei trebuie
aleas˘a cu grij˘a. Baza trebuie s˘a cont ¸in˘a un num˘ar redus de elemente,
pentru ca sistemul de congruent ¸e ce trebuie rezolvat s˘a nu fie prea mare.
ˆ
In acela¸si timp, dac˘a t este prea mic, exist˘a riscul ca relat ¸iile ce trebuie
aflate s˘a nu se g˘aseasc˘a u¸sor.
Calculul logaritmului discret.
1. Se alege aleator k, cu 0 ≤ k ≤ p − 2 ¸si se calculeaz˘a
bg
k
(mod p).
2. Dac˘a bg
k

t

i=1
p
b
i
i
(mod p), b
i
≥ 0, aplic˘am logaritmul ˆın
ambii membri ai congruent ¸ei ¸si obt ¸inem valoarea dorit˘a
log
g
b ≡
t

i=1
b
i
log
g
p
i
−k (mod p −1).
228 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
ˆ
In caz contrar, se repet˘a calculul pentru o alt˘a valoare a lui k.
Spre exemplu, s˘a calcul˘am log
2
62ˆın Z

181
. Alegem baza B = ¦2, 3, 5¦.
Din 2
56
≡ 3 (mod 181) rezult˘a log
2
3 = 56.
2
90
≡ 180 ≡ 2
2
3
2
5 (mod 181) conduce la congruent ¸a
90 ≡ 2 + log
2
3 + log
2
5 (mod 180).
ˆ
Inlocuind, rezult˘a log
2
5 = 156.
Deci, log
2
2 = 1, log
2
3 = 56, log
2
5 = 156.
Din 62 2
8
≡ 5
3
(mod 181), obt ¸inem
log
2
62 + 8 ≡ 3 log
2
5 (mod 180).
Atunci, log
2
62 ≡ 468 ≡ 100 (mod 180). Deci, log
2
62 = 100.
Exercit ¸ii propuse
1. Folosind algoritmul Shanks determinat ¸i:
log
11
14 (mod 23), log
3
57 (mod 113).
2. Cu ajutorul algoritmului Pohlig-Hellman, calculat ¸i:
log
2
28 (mod 37), log
11
8 (mod 41).
3. Aplicat ¸i algoritmul Pollard-rho pentru a afla
log
2
228 (mod 191)
4. Folosind algoritmul index-calculus:
i) rezolvat ¸i congruent ¸a 3
x
≡ 76 (mod 89).
ii) aflat ¸i valoarea lui log
6
13 (mod 229).
CAPITOLUL 13
Problema r˘ad˘acinilor
p˘atrate modulo n
Folosind algoritmul 7.3.1, putem determina u¸sor dac˘a un ˆıntreg a cu
1 < a < p, este rest p˘atratic modulo p, adic˘a stabilim dac˘a congruent ¸a
x
2
≡ a (mod p) are solut ¸ii.
Dac˘a consider˘am acum un num˘ar compus, n, spre deosebire de cazul
precedent(n = p prim), aici stabilirea dac˘a a este rest p˘atratic modulo
n este mult mai complicat˘a.
Dac˘a simbolul Jacobi
_
a
n
_
= −1, atunci este simplu, a este non-rest
p˘atratic modulo n.
Problema apare cˆand
_
a
n
_
= 1.
ˆ
In acest caz, stabilirea dac˘a a este rest
p˘atratic sau nu modulo n este considerat˘a o problem˘a dificil˘a. Aceasta
poart˘a numele de problema resturilor p˘atratice ¸si st˘a la baza secu-
rit˘at ¸ii unor scheme criptografice cu cheie public˘a.
Funct ¸iile criptografice folosesc frecvent operat ¸ii de ridicare la p˘atrat
modulo n sau de extragere a r˘ad˘acinii p˘atrate modulo n. Din p˘acate,
dac˘a n este compus ¸si nu i se cunoa¸ste descompunerea ˆın factori primi,
este foarte dificil s˘a determin˘am r˘ad˘acini p˘atrate modulo n. Aceast˘a
problem˘a este cunoscut˘a sub numele de problema r˘ad˘acinilor p˘atrate
modulo n. S-a demonstrat c˘a aceast˘a problem˘a este computat ¸ional
echivalent˘a cu problema factoriz˘arii (vezi [15]).
229
230 CAPITOLUL 13. R
˘
AD
˘
ACINI P
˘
ATRATE
13.1 R˘ad˘acini p˘atrate mod p
Pentru a determina solut ¸iile congruent ¸ei x
2
≡ a (mod p) unde a este un
rest p˘atratic modulo p, ne vom folosi de b, un non-rest p˘atratic modulo
p, pe care ˆıl determin˘am prin ˆıncerc˘ari.
Mai ˆıntˆai scriem p −1 = 2
s
t, unde t este impar. Facem notat ¸iile:
c ≡ b
t
(mod p), r ≡ a
t+1
2
(mod p),
cu c, r < p.
Ar˘at˘am c˘a c are ordinul egal cu 2
s
modulo p.
Observ˘am c˘a c
2
s
≡ b
2
s
t
≡ b
p−1
≡ 1 (mod p). Deci, ord
p
c [ 2
s
. Pre-
supunem ord
p
c = 2
s1
, unde s
1
< s. Fie ξ o r˘ad˘acin˘a primitiv˘a modulo
p. Atunci, conform propozit ¸iei 6.1.3, exist˘a k cu 1 ≤ k ≤ φ(p) astfel
ca c = ξ
k
. Din ξ
k2
s
1
≡ 1 (mod p), rezult˘a 2
s
t [ k2
s
1
. Din presupunerea
f˘acut˘a, 2
s−s
1
t [ k deci, k este num˘ar par. Rezult˘a c = ξ
2k
1
¸si c devine
p˘atrat modulo p. Aceast˘a afirmat ¸ie nu este ˆıns˘a adev˘arat˘a, pentru c˘a
_
c
p
_
=
_
b
p
_
t
= (−1)
t
= −1.
ˆ
In concluzie, ord
p
c = 2
s
.
Observ˘am c˘a
_
r
2
a
−1
_
2
s−1
≡ a
2
s−1
t
= a
p−1
2

_
a
p
_
≡ 1 (mod p).
Vomˆınlocui r cu un element x de ordin 2
s
modulo p astfel ca x
2
a
−1

1 (mod p). R˘amˆane s˘a g˘asim o putere convenabil˘a c
j
, cu 0 ≤ j < 2
s
,
pentru care x = c
j
r este r˘ad˘acina p˘atrat˘a modulo p a lui a.
Pentru aceasta, scriem j ˆın baza 2 astfel
j = j
0
+ 2j
1
+ 4j
2
+. . . + 2
s−2
j
s−2
¸si s˘a vedem cum determin˘am cifrele sale binare.
ˆ
Inainte de a realiza
acest lucru, subliniem c˘a putem presupune j < 2
s−1
deoarece c
2
s−1

−1 (mod p). Prin ˆınlocuirea lui j cu 2
s−1
, obt ¸inem un alt j pentru care
c
j
r este cealalt˘a r˘ad˘acin˘a p˘atrat˘a modulo p a lui a.
Procedeul inductiv de determinare a cifrelor binare ale lui j const˘a
ˆın:
1) Calcul˘am
_
r
2
a
−1
_
2
s−2
(mod p). Am v˘azut c˘a p˘atratul acestei ex-
presii este 1 (mod p). Deci, vom obt ¸ine ±1 (mod p). Dac˘a valoarea g˘asit˘a
13.1. R
˘
AD
˘
ACINI P
˘
ATRATE MOD P 231
este 1, lu˘am j
0
= 0, altfel j
0
= 1. Deci, j
0
este ales astfel ˆıncˆat
_
c
j
0
r
_
2
a
−1
s˘a aib˘a ordinul modulo p egal cu 2
s−2
.
2) Presupunem c˘a am determinat j
0
, . . . , j
k−1
astfel ca
_
c
j
0
+2j
1
+...+2
k−1
j
k−1
r
_
2
a
−1
s˘a aib˘a ordinul 2
s−k−1
modulo p. Pentru a determina j
k
, ridic˘am acest
num˘ar la o putere egal˘a cu jum˘atate din ordinul s˘au. Obt ¸inem astfel,
_
_
c
j0+2j1+...2
k−1
j
k−1
r
_
2
a
−1
_
2
s−k−2
≡ ±1 (mod p).
Pentru valoarea 1, alegem j
k
= 0 iar pentru -1, j
k
= 1.
Astfel,
_
c
j0+2j1+...+2
k
j
k
r
_
2
a
−1
va avea ordinul 2
s−k−2
modulo p.
Cˆand ajungem la j = s −2, vom avea
_
c
j
0
+2j
1
+...+2
s−2
j
s−2
r
_
2
a
−1
≡ 1 (mod p),
de unde c
j
r este cel c˘autat.
S˘a g˘asim o r˘ad˘acin˘a p˘atrat˘a a lui a = 186 modulo p = 401.
Primul non-rest p˘atratic g˘asit este b = 3. Avem p−1 = 2
4
25. Atunci,
c ≡ 3
25
≡ 268 (mod 401) ¸si r ≡ a
13
≡ 103 (mod 401).
Aplic˘am algoritmul de determinare al inversului lui a modulo 401 ¸si
obt ¸inem a
−1
≡ 235 (mod 401).
Calcul˘am r
2
a
−1
≡ 98 (mod 401) cu ord
401
98 = 8.
Din 98
4
≡ −1 (mod 401), rezult˘a j
0
= 1.
Calcul˘am apoi (cr)
2
a
−1
≡ (268 103)
2
235 ≡ −1 (mod 401). Cum, la
p˘atrat, num˘arul va fi 1, obt ¸inem j
1
= 0 ¸si j
2
= 1. Astfel, j = 1 + 2 0 +
4 1 = 5. R˘ad˘acina p˘atrat˘a c˘autat˘a este c
5
r ≡ 304 (mod 401).
232 CAPITOLUL 13. R
˘
AD
˘
ACINI P
˘
ATRATE
Algoritm 13.1.1 (R˘ad˘acini p˘atrate mod p prim)
INPUT: numerele naturale a < p, cu p prim impar.
OUTPUT: Dou˘a r˘ad˘acini p˘atrate ale lui a mod p.
1. Calculeaz˘ a
_
a
p
_
folosind algoritmul 7.3.1.
2. Dac˘a
_
a
p
_
= −1, atunci returneaz˘a a nu are r˘ad˘acini p˘atrate
( mod p) ¸si se opre¸ste.
3.Caut˘a 1 ≤ b ≤ p −1, pˆan˘a cˆand
_
b
p
_
= −1.
4. Scrie p −1 = 2
s
t, unde t este impar.
5. Calculeaz˘ a ¯ a (mod p), folosind algoritmul 3.2.1.
6. Pune c ←b
t
(mod p), r ←a
(t+1)/2
(mod p) (algoritmul 3.1.1)
7. Pentru i = 1, . . . , p −1 execut˘a:
7.1. d ←(r
2
¯ a)
2
s−i−1
(mod p)
7.2. Dac˘a d ≡ −1 (mod p), atunci r ←r c (mod p).
7.3. c ←c
2
(mod p)
8. Returneaz˘a r,-r.
Cea mai simpl˘a situat ¸ie ce poate apare pentru acest algoritm este cea
ˆın care p ≡ 3 (mod 4). Atunci, s = 1, de unde
t + 1
2
=
p + 1
4
. Atunci,
_
±a
p+1
4
_
2
= a
p+1
2
= a
p−1
2
a ≡
_
a
p
_
a ≡ a (mod p), presupunˆand c˘a a
este rest p˘atratic modulo p.
Deci, x ≡ ±r ≡ ±a
p+1
4
(mod p) sunt r˘ad˘acinile p˘atrate pentru a modulo
p.
Astfel, algoritmul precedent cap˘at˘a urm˘atoarea form˘a simplificat˘a:
Algoritm 13.1.2 (R˘ad˘acini p˘atrate mod p prim, p ≡ 3 (mod 4))
INPUT: numerele naturale p ≡ 3 (mod 4), prim ¸si a un rest p˘atratic
modulo p.
OUTPUT: Dou˘a r˘ad˘acini p˘atrate ale lui a mod p.
1. Calculeaz˘ a r ≡ a
p+1
4
(mod p) folosind algoritmul 3.1.1.
2. Returneaz˘a r, −r.
13.2. R
˘
AD
˘
ACINI P
˘
ATRATE MOD N 233
Dac˘a particulariz˘am algoritmul 13.1.1 pentru cazul s = 2 ¸si ne
folosim de faptul c˘a 2 este non-rest p˘atratic modulo un num˘ar prim
p ≡ 5 (mod 8), obt ¸inem o form˘a simplificat˘a, ¸si anume:
Algoritm 13.1.3 (R˘ad˘acini p˘atrate mod p ≡ 5 (mod 8))
INPUT: numerele naturale p ≡ 5 (mod 8), prim ¸si a un rest p˘atratic
modulo p.
OUTPUT: Dou˘a r˘ad˘acini p˘atrate ale lui a mod p.
1. Calculeaz˘a d ←a
p−1
4
(mod p), folosind algoritmul 3.1.1.
2. Dac˘a d = 1, calculeaz˘a r ←a
(p+3)/8
(mod p).
3.Dac˘a d = p −1, calculeaz˘a r ←2a(4a)
(p−5)/8
(mod p).
4. Returneaz˘a r, −r.
Dac˘a p − 1 = 2
s
t cu s mare, este preferabil s˘a se foloseasc˘a un alt
algoritm, ˆın locul celui init ¸ial. Acesta utilizeaz˘a polinoame cu coeficient ¸i
ˆıntregi modulo p. Cei interesat ¸i pot g˘asi mai multe date referitoare la
aceast˘a problem˘a, consultˆand [15].
13.2 R˘ad˘acini p˘atrate mod n
Vom studia doar cazul ˆın care n este produs de dou˘a numere prime im-
pare diferite p ¸si q. Pentru a g˘asi r˘ad˘acinile p˘atrate ale lui a modulo
n = pq, afl˘am mai ˆıntˆai r˘ad˘acinile p˘atrate ale lui a modulo p ¸si modulo
q, dup˘a care aplic˘am teorema chinezeasc˘a a resturilor pentru a afla
r˘ad˘acinile p˘atrate modulo n ale lui a.
Astfel, presupunem c˘a 1 ≤ a ≤ n −1 este un rest p˘atratic modulo n,
adic˘a congruent ¸a
x
2
≡ a (mod n) (13.1)
are solut ¸ii. Fie x
0
o solut ¸ie a acesteia. Ar˘at˘am c˘a ea are exact 4 solut ¸ii
necongruente modulo n. Pentru aceasta, fie
x
1
≡ x
0
(mod p), 0 < x
1
< p (13.2)
x
2
≡ x
0
(mod q), 0 < x
2
< q (13.3)
Atunci, congruent ¸a
x
2
≡ a (mod p) (13.4)
234 CAPITOLUL 13. R
˘
AD
˘
ACINI P
˘
ATRATE
are exact dou˘a solut ¸ii necongruente, pe x
1
¸si p −x
1
iar
x
2
≡ a (mod q) (13.5)
pe x
2
¸si q −x
2
.
Congruent ¸a ( 13.1) este echivalent˘a cu sistemul format din congruent ¸ele
( 13.4) ¸si ( 13.5).
Astfel, folosind teorema chinezeasc˘a a resturilor, exist˘a exact 4 solut ¸ii
necongruente modulo n = pq, ce se obt ¸in rezolvˆand urm˘atoarele sisteme:
(S
1
)
_
x ≡ x
1
(mod p)
x ≡ x
2
(mod q)
(S
2
)
_
x ≡ x
1
(mod p)
x ≡ q −x
2
(mod q)
(S
3
)
_
x ≡ p −x
1
(mod p)
x ≡ x
2
(mod q)
(S
4
)
_
x ≡ p −x
1
(mod p)
x ≡ q −x
2
(mod q)
Dac˘a not˘am solut ¸ia sistemului (S
1
) cu x ¸si solut ¸ia lui (S
2
) cu y, atunci
solut ¸ia sistemului (S
3
) este n − y iar cea a ultimului sistem este n − x,
dup˘a cum se poate verifica u¸sor.
Algoritmul urm˘ator realizeaz˘a cele prezentate:
Algoritm 13.2.1 (R˘ad˘acini p˘atrate mod n = pq)
INPUT: numerele naturale p, q prime impare cu n = pq
¸si a un rest p˘atratic modulo n.
OUTPUT: Cele patru r˘ad˘acini p˘atrate ale lui a mod n.
1. Folosind algoritmul 13.1.1, determin˘a cele dou˘a r˘ad˘acini
p˘atrate ±r ale lui a mod p.
2. Folosind algoritmul 13.1.1, determin˘a cele dou˘a r˘ad˘acini
p˘atrate ±s ale lui a mod q.
3. Folose¸ste algoritmul 1.2.2 pentru a determina c, d
astfel ca cp +dq = 1.
4. Pune x ←rdq +scp (mod n), y ←rdq −scp (mod n).
5. Returneaz˘a ±x (mod n), ±y (mod n).
Dac˘a consider˘am acum cazul particular
n = pq, p ≡ q ≡ 3 (mod 4),
congruent ¸a ( 13.4) are solut ¸iile ±x
1
≡ ±a
p+1
4
(mod p), dup˘a cum am
v˘azut mai ˆınainte, cˆand modulul era prim.
La fel, ( 13.5) va avea solut ¸iile ±x
2
≡ ±a
q+1
4
(mod q).
13.2. R
˘
AD
˘
ACINI P
˘
ATRATE MOD N 235
Pentru a exemplifica cele prezentate, s˘a consider˘am un caz numeric
unde a = 860, n = 11021 = 103 107.
S˘a rezolv˘am congruent ¸a x
2
≡ 860 (mod 11021). Ea este echivalent˘a cu
sistemul:
_
x
2
≡ 860 ≡ 36 (mod 103)
x
2
≡ 860 ≡ 4 (mod 107)
Solut ¸iile primei congruent ¸e din sistem sunt
±36
103+1
4
= ±36
26
≡ ±6 (mod 103)
iar pentru a doua congruent ¸˘a, solut ¸iile sunt
±4
107+1
4
= ±4
27
≡ ±2 (mod 107).
Aplicˆand acum teorema chinezeasc˘a a resturilor, obt ¸inem pentru
congruent ¸a init ¸ial˘a solut ¸iile:
x ≡ ±212 (mod 11021) ¸si x ≡ ±109 (mod 11021).
ˆ
In final, d˘am un exemplu de metod˘a flip coin.
Presupunem c˘a Alice ¸si Bob comunic˘a electronic.
1. Alice alege dou˘a numere prime mari p ¸si q cu p ≡ q ≡ 3 (mod 4),
calculeaz˘a n = pq ¸si trimite rezultatul n lui Bob.
2. Bob alege aleator un num˘ar x < n, calculeaz˘a x
2
≡ a (mod n) ¸si
trimite num˘arul a < n lui Alice.
3. Alice g˘ase¸ste cele 4 solut ¸ii necongruente x, y, n − y, n − x ale
congruent ¸ei x
2
≡ a (mod n) ¸si trimite una dintre ele lui Bob.
4. Dac˘a Bob prime¸ste y sau n −y el va putea descompune ˆın factori
num˘arul n astfel:
x +y ≡ 2x
1
,= 1 (mod p) ¸si x +y ≡ 0 (mod q), de unde, (x +y, n) = q.
ˆ
In mod analog, pentru cealalt˘a situat ¸ie se obt ¸ine (x+(n−y), n) = p.
Dac˘a Bob prime¸ste x sau n −x, el nu poate factoriza ˆın timp util pe n.
ˆ
In consecint ¸˘a, Bob cˆa¸stig˘a flip coin dac˘a poate factoriza pe n ¸si
pierde, ˆın caz contrar. T¸ inˆand cont de observat ¸iile anterioare, exist˘a
¸sanse egale ca Bob s˘a primeasc˘a o solut ¸ie a congruent ¸ei care s˘a-l ajute
s˘a factorizeze rapid pe n, sau o solut ¸ie care s˘a nuˆıi fie util˘a. Deci, aceast˘a
metod˘a flip coin este corect˘a.
236 CAPITOLUL 13. R
˘
AD
˘
ACINI P
˘
ATRATE
Exercit ¸ii propuse
1. Fie p = 2081. Not˘am cu b cel mai mic non-rest p˘atratic modulo p.
Aflat ¸i b ¸si, folosind metoda prezentat˘a, determinat ¸i o r˘ad˘acin˘a p˘atrat˘a
a lui 302 modulo p.
2. Determinat ¸i o r˘ad˘acin˘a p˘atrat˘a a lui 55 modulo 89.
3. Rezolvat ¸i urm˘atoarele congruent ¸e:
i) x
2
≡ 1 (mod 15).
ii) x
2
≡ 31 (mod 75).
iii) x
2
≡ 16 (mod 105).
ANEXA A
Numere prime Mersene
Tabel A.1: Numerele prime Mersene cunoscute.
nr. p cifreM
p
Observat ¸ii
1 2 1 antichitate
2 3 1 antichitate
3 5 2 antichitate
4 7 3 antichitate
5 13 4 Reguis, Cataldi (1461)
6 17 6 Cataldi (1588)
7 19 6 Cataldi (1588)
8 31 10 Euler (1750)
9 61 19 Pervouchine, Seelhoff (1883)
10 89 27 Powers (1911)
11 107 33 Powers (1913)
12 127 39 Lucas (1876)
13 521 157 Robinson (1952)
237
238 ANEXA A. NUMERE PRIME MERSENE
nr. p cifreM
p
Observat ¸ii
14 607 183 Robinson (1952)
15 1279 386 Robinson (1952)
16 2203 664 Robinson (1952)
17 2281 687 Robinson (1952)
18 3217 969 Riesel (1957)
19 4253 1281 Hurwitz (1961)
20 4423 1332 Hurwitz (1961)
21 9689 2917 Gillies (1963)
22 9941 2993 Gillies (1963)
23 11213 3376 Gillies (1963)
24 19937 6002 Tuckerman (1971)
25 21701 6533 Noll, Nickel (1978)
26 23209 6987 Noll (1979)
27 44497 13395 Nelson, Slowinski (1979)
28 86243 25962 Slowinski (1982)
29 110503 33265 Colquitt, Welsh (1988)
30 132049 39751 Slowinski (1983)
31 216091 65050 Slowinski (1985)
32 756839 227832 Slowinski, Gage (1992)
33 859433 258716 Slowinski, Gage (1994)
34 1257787 378632 Slowinski, Gage (1996)
35 1398269 420921 Armengaud/GIMPS (1996)
36 2976221 895832 Spence/GIMPS (1997)
37 3021377 909526 Clarkson/GIMPS (1998)
38 6972593 2098960 Hajratwala/GIMPS (1999)
39 13466917 4053946 Cameron/GIMPS (2001)
40? 20996011 6320430 Shafer/GIMPS (2003)
41? 24036583 7235733 Findley/GIMPS (2004)
42? 25964951 7816230 Nowak/GIMPS (2005)
ANEXA B
Numere pseudoprime
Tabel B.1: Cele mai mici numere pseudoprime n cu primele 100 de baze
b.
b n b n b n b n b n
2 341 15 341 28 45 41 105 54 55
3 91 16 51 29 35 42 205 55 63
4 15 17 45 30 49 43 77 56 57
5 124 18 25 31 49 44 45 57 65
6 35 19 45 32 33 45 76 58 133
7 25 20 21 33 85 46 133 59 87
8 9 21 55 34 35 47 65 60 341
9 28 22 69 35 51 48 49 61 91
10 33 23 33 36 91 49 66 62 63
11 15 24 25 37 45 50 51 63 341
12 65 25 28 38 39 51 65 64 65
13 21 26 27 39 95 52 85 65 112
14 15 27 65 40 91 53 65 66 91
239
240 ANEXA B. NUMERE PSEUDOPRIME
b n b n b n b n b n
67 85 74 75 81 85 88 91 95 141
68 69 75 91 82 91 89 99 96 133
69 85 76 77 83 105 90 91 97 105
70 169 77 247 84 85 91 115 98 99
71 105 78 341 85 129 92 93 99 145
72 85 79 91 86 87 93 301 100 153
73 111 80 81 87 91 94 95
Tabel B.2: Numerele pseudoprime cu baza 2 ¸si numerele Carmichael
(cele boldate) mai mici dacˆat 41041.
a n a n a n a n
1 341 14 4369 27 13741 40 29341
2 561 15 4371 28 13747 41 30121
3 645 16 4681 29 13981 42 30889
4 1105 17 5461 30 14491 43 31417
5 1387 18 6601 31 15709 44 31609
6 1729 19 7957 32 15841 45 31621
7 1905 20 8321 33 16705 46 33153
8 2047 21 8481 34 18705 47 34945
9 2465 22 8911 35 18721 48 35333
10 2701 23 10261 36 19951 49 39865
11 2821 24 10585 37 23001 50 41041
12 3277 25 11305 38 23377
13 4033 26 12801 39 25761
Bibliografie
[1] Alford, W.R., Granville, A., Pomerance, C., There are Infinitely
Many Carmichael Numbers, Annals Math., 140 (1994), 703-722.
[2] Albu, T., Ion, I.D., Capitole speciale de teoria numerelor, Editura
Academiei, Bucure¸sti, 1984.
[3] Albu, T., Ion, I.D., Itinerar elementar ˆın algebra superioar˘a, Edi-
tura All, 1997.
[4] Bobancu, V., Caleidoscop matematic, Editura Albatros, Bucure¸sti,
1979.
[5] Bu¸sneag, D., Boboc, F., Piciu, D., Aritmetic˘a ¸si teoria numerelor,
Editura Universitaria, Craiova, 1999.
[6] Cohen, H., A Course in Computational Algebric Number Theory,
Springer-Verlag, 1995.
[7] Cucurezeanu, I., Probleme de aritmetic˘a ¸si teoria numerelor, Edi-
tura Tehnic˘a, Bucure¸sti, 1976.
[8] Depman, J., Din istoria matematicii, Editura Cartea Rus˘a, Bu-
cure¸sti, 1952.
[9] Dinc˘a, Al., Lect ¸ii de algebr˘a, Editura Universitaria, Craiova, 2000.
[10] Kiran, K., Is this number prime?, Berkeley Math Circle, November,
2002.
[11] Koblitz, N., Algebric Aspects of Cryptography, Springer-Verlag,
Berlin, 1988.
241
242 BIBLIOGRAFIE
[12] Koblitz, N., A Course in Number Theory and Cryptography, ed. a
II-a, Springer-Verlag, Berlin, 1994.
[13] Knuth, D.E., The Art of Computer Programming, vol.I, ed. a II-a,
Addison-Wesley, 1973.
[14] Lenstra, A.K., Lenstra, H.W. jr., Manasse, M.S., Pollard, J.M., The
Number Field Sieve, The Developement of the Number Field Sieve,
Springer-Verlag, 1993.
[15] Menezes, A., Oorschot, P., Vanstone, S., Handbook of Applied Cryp-
tography, CRC Press, Boca Raton, Florida, 1998.
[16] N˘ast˘ asescu, C., Nit ¸˘a, C., Vraciu, C., Aritmetic˘a ¸si algebr˘a, Editura
Didactic˘a ¸si Pedagogic˘a, Bucure¸sti, 1993.
[17] Pomerance, C., The Quadratic sieve factoring algorithm, Advances
in Cryptology, Proceedings of Eurocrypt 84, Paris, 1984, Lectures
notes in Computer Sci, 209 (1985), 169-182.
[18] Popovici, C.P., Teoria numerelor, Editura Didactic˘a ¸si Pedagogic˘a,
Bucure¸sti, 1973.
[19] Robin, G., Algorithmique et Criptographie, Mathematique et Appli-
cations, Ellipses, 1991.
[20] Rosen, K.H., Elementary Number Theory and Cryptography,
Addison-Wesley, 1993.
[21] Sierpinski, W., Elementary Theory of Numbers, Polski Academic
Nauk, Warsaw, 1964.
[22] Sierpinski. W., Ce ¸stim ¸si ce nu ¸stim despre numerele prime, Edi-
tura S¸tiint ¸ific˘a, Bucure¸sti, 1966.
[23] Stillwell, J., Elements of Number Theory, Springer-Verlag, New-
York, 2003.
[24] Stinson, D.R., Cryptography: Theory and Practice, CRC Press,
Boca Raton, Florida, 1995.
[25] Yan Song, Y., Number Theory for Computing, ed. a II-a, Springer-
Verlag, 2002.
Index
alfabet de definit ¸ie, 134
algoritm
AKS, 196
cu scop general, 199, 213,
216
cu scop special, 199, 202,
205, 206
de criptare, 135
de decriptare, 135
DSA, 160
Euclid, 15
Euclid extins, 20
Floyd de ciclare, 203, 223
index-calculus, 226
Pohlig-Hellman, 220
Pollard rho, 222
Shanks, 218
asociere ˆın divizibilitate, 13
autentificare, 134, 148
B-num˘ar, 207
B´ezout
coeficient ¸i, 18
relat ¸ii, 19
teorem˘a, 19
baby-step giant-step, 218
baz˘a factor, 207
metod˘a, 207
c.m.m.d.c., 13
c.m.m.m.c., 22
cˆaturi part ¸iale, 34
calendar, 85
Gregorian, 86
Iulian, 86
Carmichael, num˘ar, 178
cel mai mic rest ˆın valoare abso-
lut˘a, 207
cheie
de criptare, 135
de decriptare, 135
pereche, 135
privat˘a, 148
public˘a, 148
secret˘a, 135
ciclu, 203
cifru, 135
ciurul lui Eratostene, 168
coeficient ¸i B´ezout, 18
coliziune, 223
confident ¸ialitate, 134
congruent ¸e, 57
liniare, 60
sistem, 63, 65, 67
conjectura lui Goldbach, 26
conjugatul unui irat ¸ional, 43
convergent˘ a, 36
criptanaliz˘a, 133
243
244 INDEX
criptare
cheie, 135
funct ¸ie, 135
criptografie, 133
cu cheie public˘a, 148, 150,
154–156
cu cheie secret˘a, 135, 136,
138, 139, 142, 144
criptologie, 133
criptosistem
afin, 138
asimetric, 135
bloc, 139
caracter, 136
Cezar, 137
cu cheie public˘a, 135
cu cheie secret˘a, 135
de deplasare, 138
DES, 144
Diffie-Hellman, 154
ElGamal, 155
exponent ¸ial, 142
hibrid, 149
Hill, 139
Massey-Omura, 156
Merkle-Hellman, 157
monografic, 136
poligrafic, 139
RSA, 150
simetric, 135
structur˘a, 135
curbe eliptice, 195
metod˘a de factorizare, 206
test de primalitate, 196
decriptare
cheie, 135
funct ¸ie, 135
DES, 144
Diffie-Hellman
criptosistem, 154
presupunere, 155
divizor, 11
netrivial, 11
propriu, 11
DSA, 160
ecuat ¸ie diofantic˘a, 30
ElGamal
criptosistem, 155
semn˘atur˘a digital˘a, 160
Euclid
algoritm, 15
algoritm extins, 20
Euler
criteriu, 116
funct ¸ie φ, 70
martor, 184
metod˘a factorizare, 202
pseudoprimi, 181
teorem˘a, 70
exponent ±1, 108
maximal, 108
exponent universal, 105
minimal, 106
Fermat
metod˘a de factorizare, 200
metod˘a generalizat˘a, 201
mica teorem˘a, 69
numere, 27
test, 180
Fibonacci ¸sir, 17
filtru
al corpurilor de numere, 216
p˘atratic, 213
INDEX 245
fract ¸ie continu˘a
cˆaturi part ¸iale, 34
convergent˘a, 36
finit˘a, 33
infinit˘a, 39
metod˘a de factorizare, 210,
211
periodic˘a, 43
pur periodic˘a, 48
simpl˘a, 34
funct ¸ie
π, 23
σ, 76
τ, 76
p
n
, 23
aritmetic˘a, 73
de criptare, 135
de decriptare, 135
Euler φ, 70
hash, 161
multiplicativ˘a, 73
Gauss, lem˘a, 117
hash
funct ¸ie, 161
valoare, 161
hibrid, criptosistem, 149
Hill, criptosistem, 139
index aritmetic, 102
index-calculus, 226
inegalit˘at ¸i Cebˆı¸sev, 25
integritatea datelor, 134
invers mod n
pentru un element, 62
algoritm, 62
pentru matrice, 66
ipoteza Riemann generalizat˘a, 194
irat ¸ional p˘atratic, 43
conjugatul unui, 43
redus, 48
Jacobi, simbol, 126
Lagrange,teorem˘a, 46, 95
legea reciprocit˘at ¸ii p˘atratice, 120,
122, 128
Legendre,simbol, 115
lema lui Gauss, 117
logaritm discret, 217
algoritm index-calculus, 226
algoritm Pohlig-Hellman, 220
algoritm Pollard rho, 222
algoritm Shanks, 218
problem˘a, 217
Lucas, ¸siruri, 171
Lucas-Lehmer, test primalitate,
174
managementul cheilor, 147
martor, 168
Euler, 184
Massey-Omura, criptosistem, 156
Mersenne
num˘ar, 78
num˘ar prim, 78, 174
test primalitate, 174
metoda
bazei factor, 207
curbelor eliptice pentru fac-
torizare, 206
de calculare a indexului, 218
de g˘asire de coliziuni, 218
Euler, 202
Fermat, 200
246 INDEX
Fermat generalizat˘a, 201
filtrului corpului de numere,
216
filtrului p˘atratic, 213
fract ¸iilor continue, 210, 211
Pollard p-1, 205
Pollard-rho, 202
ridic˘arii succesive la p˘atrat,
59
Miller, test, 186, 189, 194
Miller-Rabin, test primalitate, 189,
194
non-repudiere, 134
non-rest p˘atratic, 114
numere
Carmichael, 178
compuse, 11
cu form˘a special˘a, 199
Euler pseudoprime, 181
Fermat, 27, 171
generale, 199
Mersenne, 78, 174
perfecte, 77
prime, 11
prime pereche, 25
pseudoprime, 176
relativ prime, 13
RSA, 150
tari pseudoprime, 186
ordin
al unui element mod n, 93
al lui n la p, 21
Pepin, test primalitate, 171
pereche de chei, 135
perioad˘a, 203
Pohlig-Hellman, algoritm, 220
Poklington, teorem˘a, 170
Pollard
p-1, 205
rho
algoritm DLP, 222
metod˘a de factorizare, 202
pre-perioad˘a, 203
prim, 11
Mersenne, 78
pereche, 25
teorem˘a, 25
probabil prim, 167
problema
factoriz˘arii, 199
logaritmului discret, 217
logaritmului discret gener-
alizat˘a, 217
r˘ad˘acinilor p˘atrate, 229
resturilor p˘atratice, 229
rucsac supercresc˘atoare, 156
rucsacului, 156
sumei unei submult ¸imi, 156
probleme dificile, 148, 154, 156,
199, 217, 229
pseudoprim, 176
Euler, 181
tare, 186
putere rezidual˘a, 104
r˘ad˘acini
p˘atratice, 230
primitive, 94
relat ¸ie
asociere ˆın divizibilitate, 13
B´ezout, 19
de congruent ¸˘a, 57
de divizibilitate, 11
INDEX 247
rest
cel mai mic ˆın valoare abso-
lut˘a, 207
p˘atratic, 114
RSA
criptosistem, 150
numere, 150
problema, 152
semn˘atur˘a digital˘a, 160
schem˘a
deˆımp˘art ¸ire a secretelor, 162
Shamir, 164
treshold, 162
de criptare, 135
semn˘atur˘a digital˘a, 149, 160
ElGamal, 160
RSA, 160
standard, 160
simbol
Jacobi, 126
Legendre, 115
sistem
complet de resturi, 58
congruent ¸e liniare, 63, 65,
67
redus de resturi, 70
Solovay-Strassen, test primalitate,
183
spat ¸iu
pentru chei, 135
de mesaje, 134
de text cifrat, 134
supercresc˘ator
¸sir, 156
problem˘a rucsac, 156
TDES, 145
teorema
ˆımp˘art ¸irii cu rest, 12, 14
B´ezout, 19
chinezeasc˘a a resturilor, 63
criteriul Euler, 116
Dirichlet, 25
Euler, 70
Fermat, 69
fundamental˘a a aritmeticii,
21
Lagrange, 46, 95
Lam´e, 17
legea reciprocit˘at ¸ii p˘atratice,
120, 128
Miller, 194
numerelor prime, 25
Poklington, 170
Proth, 171
Rabin, 189, 193
Solovay, 182
Wilson, 68
test
de primalitate folosind curbe
eliptice , 196
de divizibilitate, 83–85
de primalitate, 167
deterministic, 167, 169, 171,
194, 196
Fermat, 180
Lucas-Lehmer, 174
Miller, 185, 194
Miller-Rabin, 194
Pepin, 171
probabilistic, 167, 183, 194
Solovay-Strassen, 183
text
cifrat, 134
de baz˘a, 134
248 INDEX
transformare
de criptare, 135
de decriptare, 135
trial division, 168, 200
unitate de text, 134
Wilson, teorem˘a, 68

6 4.2 4.3 4.4

CUPRINS Functiile σ ¸i τ . . . . . . . . . . . . . . . . . . . . . . . . 76 ¸ s Numere perfecte . . . . . . . . . . . . . . . . . . . . . . . 77 Numere Mersenne . . . . . . . . . . . . . . . . . . . . . . 78 particular˘ a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 81 83 85 90 93 93 95 102 105

5 Prime aplicatii ale congruentelor ¸ ¸ 5.1 Factorizarea unor numere de form˘ a 5.2 Teste de divizibilitate . . . . . . . 5.3 Calendarul . . . . . . . . . . . . . 5.4 Programarea unui turneu . . . . . 6 R˘d˘cini primitive a a 6.1 Ordinul unui num˘r ˆ a ıntreg . . . 6.2 Existenta r˘d˘cinilor primitive ¸ a a 6.3 Index aritmetic . . . . . . . . . 6.4 Exponenti universali . . . . . . ¸ . . . . . . . .

7 Reciprocitate p˘tratic˘ a a 113 7.1 Simbolul Legendre . . . . . . . . . . . . . . . . . . . . . . 114 7.2 Legea reciprocit˘¸ii p˘tratice . . . . . . . . . . . . . . . . 120 at a 7.3 Simbolul Jacobi . . . . . . . . . . . . . . . . . . . . . . . . 125 8 Criptografie cu cheie secret˘ a 8.1 Cifr˘ri flux (binar) . . . . . a 8.2 Criptosisteme caracter . . . 8.3 Criptosisteme bloc . . . . . 8.4 Criptare exponential˘ . . . ¸ a 8.5 DES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 136 136 139 142 144 147 150 154 156 159 162

9 Criptografie cu cheie public˘ a 9.1 RSA . . . . . . . . . . . . . . 9.2 Criptosisteme bazate pe DLP 9.3 Criptosisteme knapsack . . . 9.4 Semn˘tur˘ digital˘ . . . . . . a a a 9.5 ˆ artirea secretelor . . . . . Imp˘ ¸

10 Teste de primalitate 167 10.1 Ciurul lui Eratostene . . . . . . . . . . . . . . . . . . . . . 168 10.2 C˘utare de divizori prin ˆ a ıncerc˘ri . . . . . . . . . . . . . . 168 a 10.3 Teste n-1. Testul Pepin . . . . . . . . . . . . . . . . . . . 169

CUPRINS 10.4 10.5 10.6 10.7 10.8 10.9 Teste n+1. Testul Lucas-Lehmer . Testul Fermat . . . . . . . . . . . . Testul Solovay-Strassen . . . . . . Testul Miller-Rabin . . . . . . . . . Primalitate folosind curbele eliptice Algoritmul AKS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 171 176 180 185 195 196 199 200 200 202 202 205 206 207 209 213 215 217 218 220 222 226

11 Problema factoriz˘rii a 11.1 Factorizare prin c˘utare direct˘ . . a a 11.2 Metoda Fermat . . . . . . . . . . . 11.3 Metoda Euler . . . . . . . . . . . . 11.4 Metoda Pollard-rho . . . . . . . . . 11.5 Metoda Pollard p-1 . . . . . . . . . 11.6 Factorizare folosind curbele eliptice 11.7 Metoda bazei factor . . . . . . . . 11.8 Metoda fractiilor continue . . . . . ¸ 11.9 Metoda filtrului p˘tratic . . . . . . a 11.10Filtrul corpului de numere . . . . . 12 Problema logaritmului discret 12.1 Algoritmul Shanks . . . . . . 12.2 Algoritmul Pohlig-Hellman . 12.3 Algoritmul Pollard rho . . . . 12.4 Algoritmul index-calculus . . . . . . . . . . . . . .

13 R˘d˘cini p˘trate a a a 229 13.1 R˘d˘cini p˘trate mod p . . . . . . . . . . . . . . . . . . . 230 a a a 13.2 R˘d˘cini p˘trate mod n . . . . . . . . . . . . . . . . . . . 233 a a a A Numere prime Mersene B Numere pseudoprime Bibliografie Index 237 239 241 243

8

CUPRINS

.Notatii ¸ a|b a∼b (a. a1 . . . b] Z [i] (fn )n≥0 pα n ordp n pn π(x) Fn [x] [a0 . an ] pk qk a ≡ b (mod n) a (mod n) ¯ φ σ(n) τ (n) Mn ordn a indr a (mod n) λ(n) λ0 (n) a divide b a este asociat ˆ divizibilitate cu b ın cel mai mare divizor comun pentru a ¸i b s cel mai mic multiplu comun pentru a ¸i b s inelul ˆ ıntregilor lui Gauss ¸irul lui Fibonacci s pα este cea mai mare putere a lui p care divide n ordinul lui n la p al n−lea num˘r prim a num˘rul numerelor prime ≤ x. . x > 0 a num˘r Fermat a partea ˆ ıntreag˘ a num˘rului x a a fractie continu˘ ¸ a k−convergenta unei fractii continue ¸ a este congruent cu b modulo n inversul lui a modulo n functia lui Euler ¸ suma divizorilor pozitivi ai lui n num˘rul divizorilor pozitivi ai lui n a num˘r Mersenne a ordinul lui a mod n indicele aritmetic al lui a relativ la r modulo n exponent universal minimal al lui n ±1−exponent maximal al lui n 9 . b) [a.

10 a n A M C K Ee Dd DES T DES DLP U (Z n ) logg b DSA Ψk simbol Legendre sau Jacobi alfabet de definitie ¸ spatiul de mesaje ¸ spatiul textului cifrat ¸ spatiul cheilor ¸ functie de criptare ¸ functie de decriptare ¸ Data Encryption Standard Triplu DES problema logaritmului discret grupul unit˘¸ilor inelului Z n at logaritmul discret al lui b ˆ baza g ın Digital Standard Algorithm cel mai mic num˘r tare pseudoprim a cu primele k numere prime alese ca baze CUPRINS .

Pentru a nu a contrazice alegerea lui n0 . a ¸ Lem˘ 1. s a 11 . un num˘r prim este un num˘r mai mare decˆt 1 care ¸ a a a nu are alti divizori ˆ afar˘ de 1 ¸i el ˆ si. Dac˘ a a a a not˘m multimea acestor numere cu S. are un divizor a a a prim. Fie acesta n0 .1 Orice num˘r natural. ceea ce contrazice faptul c˘ n0 ∈ S. cu 1 < a.Capitolul 1 Numere ˆ ıntregi 1. Se ¸ a s ¸ arat˘ u¸or c˘ aceasta este o relatie de ordine pe N . Este evident c˘ orice num˘r n > 1 are s a a cel putin doi divizori: pe 1 ¸i pe el ˆ si. a s a ¸ Prin definitie. adic˘ a are un divizor prim care va fi / a divizor ¸i pentru n0 . b < n0 .1. iar prin divizor netrivial al lui ınt a n. mai mare decˆt 1. cum ea este nevid˘ ¸i N este bine a ¸ as ordonat˘.1 Divizibilitate ˆ N ın Dac˘ consider˘m dou˘ numere naturale a ¸i b. a ∈ S. Demonstratie. reducem la absurd ¸i pre¸ ¸ s supunem c˘ exist˘ un num˘r n > 1 care nu are divizori primi. exist˘ un cel mai mic element ˆ S. Prin divizor propriu al lui n ¸ s ınsu¸ ˆ ¸elegem un divizor diferit de num˘rul n. deci n0 = a · b. n0 este a a ın atunci un num˘r compus. a se nume¸te divizor al lui b. spunem c˘ a divide b ¸i a a a s a s scriem a | b dac˘ exist˘ un num˘r natural c astfel ˆ at b = a · c. ˆ acest a a a ıncˆ In caz. Un num˘r se nume¸te ¸ ın a s ınsu¸ a s compus dac˘ are cel putin un divizor netrivial. s Relatia | definit˘ pe N se nume¸te relatie de divizibilitate pe N . Pentru a demonstra afirmatia. un divizor diferit de 1 ¸i n.

Din m = n · 0 + m.1.1 1) Pentru a verifica dac˘ un num˘r este prim e su¸ a √ a ficient s˘ verific˘m dac˘ are divizori primi ≤ n. Deci. p = q. exist˘ r un cel mai mic element din A. a Numerele q ¸i r care apar ˆ enuntul teoremei se numesc cˆtul ¸i s ın ¸ a s restul ˆ artirii lui m la n. q ¸i r sunt unic determinate. rezult˘ nu ≥ n. a a Rezult˘. Din lema 1. ¸ adic˘ r = nu + s. ceea ce contrazice faptul c˘ r < n.). s < n. a are √ un divizor prim. exist˘ numerele naturale q. a s a r = nu + s ≥ n + s ≥ n. m = nk + s}. m = nq + r. r < n. Dac˘ q < p. NUMERE ˆ INTREGI Teorem˘ 1. Deci. presupunem m = nq +r = np+s unde r. Teorem˘ 1. R˘mˆne s˘ ar˘t˘m c˘ r < n. a de unde rezult˘ imediat r = s. Astfel. Deci. ımp˘ ¸ . Obtinem nq + r = n(q + u) + s = nq + (nu + s). s s Demonstratie. u = 0.1. ¸inˆnd cont de forma a a a t a echivalent˘ a teoremei anterioare: Dac˘ num˘rul n nu are factori primi a a a √ ≤ n. 2) Teorema anterioar˘ poate fi folosit˘ pentru a determina numerele a a prime ≤ n (vezi capitolul 10. cum n = 0 ¸i u ≥ 1. de unde n = 0. Obtinem r = u. a ≤ n. atunci n = ab > n. pentru un q ∈ N. atunci el este prim.2 (Teorema ˆ artirii cu rest) Pentru dou˘ numere a ımp˘ ¸ a naturale m. Deci. multimea A nu este vid˘. u ∈ A. Astfel. Observatie 1. a atunci p = q + u. Astfel. cu 1 < a ≤ b < n. Pentru a ar˘ta c˘ q ¸i ¸a ¸ a a a s r sunt unice. m ∈ A. pentru un u ∈ N ¸i a a s m = nq + r = nq + n + u = n(q + 1) + u.1. Dac˘ ¸ a √ √ a > n. Cum n este compus.12 CAPITOLUL 1. Demonstratie.1 Dac˘ n este un num˘r compus. Consider˘m multimea ¸ a ¸ A = {s ∈ N | ∃k ∈ N. Dar. atunci r = n + u. Atunci. ¸ a cum N este bine ordonat˘. fals.1. n are un divizor prim ≤ n. Atunci.1. In plus.1. fie n = ab. Dar r ≤ u. atunci el are cel putin a a ¸ √a un divizor prim ≤ n. a a a a aa a Dac˘ presupunem c˘ r ≥ n. r astfel ˆ at a ıncˆ ˆ m = nq + r ¸i r < n. afirmatia de ¸ ¸ existent˘ din enuntul teoremei este demonstrat˘. n cu n = 0. fals.

2. ıntregi.2 Relatia de divizibilitate pe Z ¸ Fie numerele ˆ ıntregi a ¸i b. De exemplu. b = b d. dar nu mai este a s a antisimetric˘. optic˘. a 1 Euclid (circa 350 ˆ ı. Pentru orice d | a ¸i d | b.2. 2 | −2 ¸i −2 | 2. b dac˘: a 1. d | a ¸i d | b. rezult˘ d | d. Euclid1 a folosit acest rezultat pentru a determina cel mai a mare divizor comun a dou˘ numere naturale folosind metoda sc˘derii a a repetate a num˘rului mic din cel mare. RELATIA DE DIVIZIBILITATE PE Z ¸ 13 1. Din definitia celui mai mare divizor comun d a dou˘ numere a. s mai putin o asociere ˆ divizibilitate. a a a ˆ aceast˘ carte. spunem c˘ numerele a ¸i b sunt prime ˆ a a s ıntre ele sau relativ prime. Timp a a s ¸ a de dou˘ milenii. Un astfel de cel mai mare divizor comun este unic a determinat ¸i ˆ not˘m d = (a. muzic˘. b numere ˆ ¸ ıntregi ¸i d = (a. b numere ˆ ¸ este un cel mai mare divizor comun al numerelor a. Euclid a predat la faimoasa Academie din Alexandria a ın ¸i a mai scris c˘rti de astronomie. mecanic˘. b) = 1. unde a . Spunem c˘ un num˘r ˆ a a ıntreg d Definitie 1. s a Un cel mai mare divizor comun al lui a ¸i b este unic determinat. s 2.e. ea este reflexiv˘ ¸i tranzitiv˘. prin: a ın x ∼ y ⇔ x = ±y.) este autorul celui mai faimos text matematic scris vreodat˘. s ıl a Dac˘ (a.1 Fie a.n. a = a d. Putem presupune c˘ acesta este ¸ ın a un num˘r natural. b sunt numere ˆ ıntregi prime ˆ ıntre ele. Ca ¸i ˆ cazul relatiei de diviziıncˆ s ın ¸ bilitate definite pe N . rezult˘ ¸ a a c˘ d | (a − b). s Atunci. a constituit materialul de baz˘ dup˘ care s-a predat matematica. b. Algoritmul s˘u se g˘se¸te ˆ cartea a VII-a din cele XIII care alc˘tuiesc a a s ın a lucrarea. a s Pentru a putea obtine o relatie de echivalent˘ pe Z . b). Propozitie 1.1 Fie a.1. s a¸ a a a . considerat ca fiind cea mai citit˘ carte ¸tiintific˘ din lume. b). Elemente. iar demonstrarea teoremei care precizeaz˘ c˘ exist˘ o infinitate de numere a a a prime se afl˘ ˆ cartea a IX-a. definim relatia ¸ ¸ ¸a ¸ numit˘ asociere ˆ divizibilitate. Spunem c˘ a divide b ¸i scriem a | b dac˘ s a s a exist˘ un ˆ a ıntreg c astfel ˆ at b = a · c.2. Euclid realizeaz˘ o introducere ˆ geometria plan˘ ¸i ˆ teoria nuIn a a ın a s ın merelor.

m. 1) (a9 . 15) (a3 . b3 ) = (15. Pentru a fiecare pereche (ai . b9 ) = (2 − 1. b5 ) = (11 − 4. 1) = (1.c. b > 0. acest algoritm este de obicei ˆ ımbun˘t˘¸it a at ˆ ınlocuind sc˘derile repetate cu ˆ artiri.m.m. b) = ¸ ın a ak = bk . bk ).2. 3) (a7 . b < 0 aplic˘m teorema 1. b ∈ Z cu b = 0. numerele q ¸i r care verific˘ aceste propriet˘¸i sunt s a at unic determinate. b7 ) = (3. 7 − 4) = (4. alegem a = 34. 0 ≤ r < b.d. 4) = (11.(a.m.d. a s rezult˘ a = bq + r cu 0 ≤ r < −b = |b|.(a1 .2 pentru a ¸i −b. r ∈ Z astfel ca a = bq + r unde a ˆ 0 ≤ r < |b|. bi+1 = min{bi . aplic˘m teorema pentru −a ¸i b. a Dac˘ a > 0. b8 ) = (3 − 1.2. 19) (a2 .c.m.1.(a2 . b4 ) = (15 − 4.m. b > 0. ai − bi }.(1.d.(34.m. Rezult˘ astfel a a s a a = (−b)q + r . Fie a1 = a. b1 ) = (34. 4) (a6 . Luˆnd q = −q ¸i r = r . r ∈ N. ai − bi }.(ak . b1 ) = c. 19 − 15) = (15. De exemplu. = c.m. Acest proces formeaz˘ numere din ce ˆ ce mai mici.c. 1) = (2. Pentru a = 0.m.m. 4 − 3) = (3. Algoritmul functioneaz˘ corect deoarece ¸ a c.n. q .c. caz ˆ care vom concluziona c˘ c. Dac˘ a > 0.1 (Teorema ˆ artirii cu rest) a ımp˘ ¸ Fie a. a Dac˘ a < 0. b6 ) = (4. bi ) form˘m perechea (ai+1 . avem a = b · 0 + 0 ¸i 0 < |b|. 1) (a8 .d.c. Algoritmul realizeaz˘ perechile a urm˘toare: a (a1 . Putem lua ¸ s astfel. deci se va opri. Demonstratie. reamintim teorema ˆ artirii cu rest pentru numerele ımp˘ ¸ ˆ ıntregi: Teorem˘ 1.d. b2 ) = . exist˘ q. 1) de unde obtinem c.c. b1 = b. bi+1 ) unde ai+1 = max{bi . 34 − 19) = (19.1. b = 19. 19) = c. 4) (a5 . a ımp˘ ¸ Pentru aceasta. atunci a = −bq ¸i alegem q = a s . . 1) = 1. 4) (a4 . 0 ≤ r < −b = |b|.m. a ın Vom obtine ak = bk . In plus. Dac˘ r = 0.14 CAPITOLUL 1. . r = 0. NUMERE ˆ INTREGI Algoritmul functioneaz˘ dup˘ cum urmeaz˘: ¸ a a a Presupunem numerele naturale a > b. ¸ Pentru a fi mai rapid.m. obtinˆnd a a s ¸ a −a = bq + r . putem aplica teorema 1. Atunci. 4) = (7. q = 0. b2 ) = (19.

aplic˘m teorema 1. Atunci. avem |r − r | < |b|. s Lem˘ 1. a a s Presupunem c˘ bq + r = bq + r cu 0 ≤ r. Alegem q = −q − 1. atunci. . cel mai mare a divizor comun al lui a ¸i b exist˘ dac˘ ¸i numai dac˘ cel mai mare divizor s a as a comun al lui b ¸i r exist˘. Atunci. obtinem 0 < r < b = |b|. r < |b|. r = b − r . .1. a a Dac˘ r2 = 0. avem (a. Pentru cazul 0 < r . b) exist˘. Dac˘ b = 0. avem a = −bq −r = b(−q −1)+(b−r ).2. Dac˘ presupunem c˘ d este un divizor comun al lui b ¸i r. . −a = −bq + r . d | d ¸i astfel. Afirmatia a s ¸ reciproc˘ se demonstreaz˘ la fel. (E2 ) Dac˘ r3 = 0. aplic˘m aceea¸i teorem˘ pentru numerele naturale −a a a s a ¸i −b. alegem q = q s a ¸i r = 0. q.2 (Algoritmul lui Euclid) Pentru orice dou˘ numere a a ˆ ıntregi exist˘ un cel mai mare divizor comun. d = (b. |b| · |q − q | < |b|. exist˘ q4 ∈ Z . Dac˘ b = 0. r). a a Teorem˘ 1. Dac˘ r = 0. ˆ plus. Cum r ¸i r sunt numere naturale cu s 0 ≤ r.1 Fie a. r2 ∈ N a a a astfel ˆ at ıncˆ a = bq2 + r2 . adic˘ d | a. a (a. b) = a. r < |b|. Presupunem c˘ d = (a. avem a = bq − r = b(q + 1) + (−b − r ). 0 ≤ r2 <| b | . a S˘ demonstr˘m acum unicitatea numerelor q ¸i r astfel determinate. r3 ∈ N astfel ˆ at a a ıncˆ b = r2 q3 + r3 . (E3 ) . rezult˘ 0 < r < −b = |b|. Cum 0 < r < −b. Avem. q = q ¸i apoi r = r . (E1 ) Cazul cˆnd un rest va fi zero va fi tratat mai tˆrziu. Lu˘m s a a q = q + 1. rezult˘ ¸ a a s a d | r. b < 0. Din d | a ¸i d | b. Cum 0 < r < b. r4 ∈ N astfel ˆ at a a ıncˆ r2 = r3 q4 + r4 . s a In Demonstratie. a Demonstratie. deci |b| · |q − q | = |r − r |.2. 0 ≤ r4 < r3 . Fie a ¸i b cele dou˘ numere ˆ ¸ s a ıntregi. 0 ≤ r < −b. de unde |q − q | < 1. r = −b − r . r ∈ Z astfel ca a = bq + r.2. RELATIA DE DIVIZIBILITATE PE Z ¸ 15 −q .2. r). b) = (b. Dac˘ r > 0. 0 ≤ r3 < r2 . Rezult˘ b(q − q ) = a a r − r.1. exist˘ q3 ∈ Z . ¸ Dac˘ a < 0. Exist˘ q2 ∈ Z . r = 0. Astfel. b. Atunci. rezult˘ a a s a d | bq + r.

. . rn+1 = 0. facem notatiile ¸ ¸ a = r0 ¸i b = r1 . exist˘ qk+1 ∈ Z . r3 ) = (b. Obtinem astfel c˘ resturile verific˘ relatiile: ¸ a a ¸ | b |> r2 > r3 > . . NUMERE ˆ INTREGI Dac˘ rk = 0. . . ¸ a a obtinem: ¸ rn = (rn . . . (1. obtinem a ¸ ¸ rk−1 rk+1 = qk+1 + rk rk unde qk+1 ∈ Z ¸i 0 ≤ s rk+1 < 1. . . (En ). . (E1 ). rk Forma ˆ care folosim ˆ artiri pentru a realiza algoritmul lui Euclid ın ımp˘ ¸ nu este doar mai rapid˘ Ea are o aplicabilitate mult mai larg˘ decˆt a a a . a t a ¸ a exist˘ un rang n astfel ˆ at rn+1 = 0.16 CAPITOLUL 1. a ıncˆ Ultimele dou˘ relatii din lantul de ˆ artiri cu rest sunt: a ¸ ¸ ımp˘ ¸ rn−2 = rn−1 qn + rn (En−1 ) rn−1 = rn qn+1 (En ) Din relatia (En ) rezult˘ rn = (rn . r2 ) = (a. rn−1 ) = (rn−1 . ¸ a Din relatiile (En−1 ). = (r2 . aplicˆnd lema anterioar˘. . rk+1 ∈ N astfel ˆ at a a ıncˆ rk−1 = rk qk+1 + rk+1 . Pentru a uniformiza relatiile (E1 ). . rn−1 ). 1 ≤ k ≤ n. . (Ek ) Dac˘ privim relatiile (Ek ) ale algoritmului lui Euclid. relatiile din algoritmul lui Euclid pot fi scrise s ¸ sub forma: rk−1 = rk qk+1 + rk+1 . . > rk > rk+1 ≥ 0. . rn−2 ) = . .1) (Ek ) Dac˘ ¸inem cont c˘ multimea numerelor naturale este bine ordonat˘. Astfel. . . (E2 ). 0 ≤ rk+1 < rk . (E2 ). rk De aici putem concluziona c˘ qk+1 = a rk−1 . (Ek ). b).

introduce a In notatia arab˘ pentru cifre. a ˆ anumite situatii poate fi necesar s˘ cunoa¸tem num˘rul de ˆ artiri In ¸ a s a ımp˘ ¸ din algoritmul lui Euclid. tot pentru prima a s dat˘ ˆ Europa. se demonstreaz˘ u¸or c˘. 2 Cu ajutorul acestui rezultat. ˆ acest caz. 2 ≤ i ≤ n ¸i qn+1 ≥ 2. sumarea unei serii ¸ s a a recurente ai c˘rei termeni sunt numerele Fibonacci ¸i introduce. fn+1 = fn +fn−1 . In s a Observ˘m c˘ rn ≥ 1 = f2 ¸i rn−1 = rn qn+1 ≥ 2f2 = f3 . Aplicarea algoritmului pentru numere ˆ ıntregi se reduce la aplicarea acestuia pentru numere naturale. Pentru a putea da un r˘spuns referitor la aceast˘ problem˘. n˘scut ˆ Pisa. a . a a s 2 Fibonacci. rk−1 = rk qk+1 + rk+1 . Folosind inductia matematic˘. b = r1 . pentru orice ¸ a a s a n ≥ 3. rn−1 = rn . 1 ≤ k ≤ n.2. rn+1 = 0. efectueaz˘ operatii cu numere fractionare (a introdus linia ¸ a a ¸ ¸ de fractie ¸i denumirea de fractus). Aici a a ın aa ın luat contact cu lucr˘rile matematice ale arabilor. putem demonstra urm˘toarea teorem˘3 : a a Teorem˘ 1. A f˘cut multe descoperiri ¸ ın a a ¸i ˆ teoria numerelor. a a a ın de exemplu ˆ inelul ˆ ın ıntregilor lui Gauss. pentru prima dat˘.3 (Lam´) Num˘rul de ˆ artiri din algoritmul lui a e a ımp˘ ¸ Euclid pentru a. trebuie a a a s˘ definim mai ˆ ai ¸irul lui Fibonacci2 . pentru s s n ≥ 2. Gauss considerˆndu-l cel mai important matematician francez s ın a al timpului s˘u. putˆnd fi folosit˘ ˆ orice inele euclidiene. ın Demonstratie. √ n−2 1+ 5 fn > . RELATIA DE DIVIZIBILITATE PE Z ¸ 17 varianta sc˘derilor succesive. numerele negative. Consider˘m algoritmul lui Euclid pentru numerele a ¸i ¸ a s b: a = r0 . qi ≥ 1. e ¸ Principalele sale contributii au fost ˆ fizica matematic˘. era negustor care c˘l˘torea ˆ Orientul Mijlociu. a ın 3 Gabriel Lam´ (1795-1870) a fost inginer. b ∈ N∗ cu a > b nu dep˘¸e¸te de cinci ori num˘rul as s a cifrelor din scrierea ˆ baza 10 a lui b. ˆ cartea sa Liber Abaci. a ıntˆ s Fie (fn )n≥1 ¸irul definit prin f1 = f2 = 1 ¸i. studiaz˘.2. absolvent al Scolii Politehnice din Paris. Z [i] (vezi [9]). ˆ rolul lui b se poate alege cel mai In mic dintre cele dou˘ numere. pentru c˘ altfel.1.

s a ımp˘ ¸ Demonstratie. rezult˘ c˘ orice doi termeni consecutivi ai ¸irului sunt relativ a a s primi. 0 < fn−1 < fn . 2. 0 ≤ i ≤ n. Coeficientii u. s 1. fn+1 ) = f2 = 1. b = r1 ≥ fn+1 > αn−1 . .4 Dac˘ (fn )n≥1 este ¸irul lui Fibonacci. a ← b. Algoritmul lui Euclid. aplicarea algoa a s ritmului lui Euclid pentru fn+2 ¸i fn+1 necesit˘ exact n ˆ artiri. (n − 1) lg α < s. 2 Presupunem c˘ b are s cifre ˆ scrierea sa ˆ baza 10. ˆ ¸ a a a In √ 1+ 5 particular. execut˘: a a 1. Dac˘ ¸inem cont de modul de definire al acestui ¸ir. se arat˘ c˘ rn−i ≥ fi+2 . Observ˘m c˘ sunt exact n ˆ artiri.1. b ¸i o scriere a acestuia ca a s o combinatie liniar˘ a numerelor initiale: d = au + bv. 0 < f2 < f3 f3 = f2 · 2. . r ← a mod b. b < 10s a ın ın de unde obtinem αn−1 < 10s . unde α = . Dac˘ ¸inem cont ¸ at 1 de relatia < lg α. pena a ımp˘ ¸ tru orice n. Atunci. ˆ acest ¸ a ın caz. b ← r. a Algoritmul lui Euclid poate fi extins pentru a determina pe lˆng˘ cel a a mai mare divizor comun d a dou˘ numere a. a ımp˘ ¸ Teorem˘ 1. Astfel. ¸ a ın 5 Consider˘m acum problema invers˘: S˘ vedem dac˘ se pot determina a a a a dou˘ numere naturale a ¸i b astfel ˆ at algoritmul lui Euclid aplicat a s ıncˆ acestora s˘ se realizeze prin n ˆ artiri.18 CAPITOLUL 1. f4 = f3 · 1 + f2 . v ¸ a ¸ ¸ ai combinatiei se numesc coeficienti B´zout (vezi [9]).2. pentru n ≥ 2. ¸ a t s obtinem c˘ fn+1 > fn . NUMERE ˆ INTREGI Prin inductie matematic˘. 0 < fn < fn+1 fn+1 = fn · 1 + fn−1 . Returneaz˘ a.1 (Algoritmul lui Euclid) INPUT: dou˘ numere naturale a. Cˆt timp b = 0. ¸ ¸ e . Cum (fn+2 . b cu a ≥ b. rezult˘ ˆ final n ≤ 5s.2. a OUTPUT: cel mai mare divizor comun pentru a ¸i b. este dat de relatiile: ¸ fn+2 = fn+1 · 1 + fn . Algoritm 1.

b ∈ Z cu b = 0. RELATIA DE DIVIZIBILITATE PE Z ¸ 19 Teorem˘ 1. 0).. .... putem cuprinde rezultatele ˆ ıntr-un tabel de forma: k tk uk vk qk 0 a 1 0 1 b 0 1 2 r2 u2 v2 q2 . 19) = 1 = 34 · (−5) + 19 · 9 dup˘ cum reiese din tabelul: a k tk uk vk qk 0 34 1 0 1 19 0 1 2 15 1 -1 1 3 4 -1 2 1 4 3 4 -7 3 5 1 -5 9 1 6 0 19 -34 3 . 0.. pentru a = 34 ¸i b = 19. . b. 0 ≤ k ≤ n + 1 (Bk ) Relatiile Bk poart˘ numele de relatiile lui B´zout. vk ) din Z3 astfel: w0 = (a.. . wk = (tk . .. obtinem: s ¸ (34... ... wk+1 = wk−1 − qk+1 wk . a Atunci: tk = rk = uk a + vk b.. n rn un vn qn n+1 rn+1 un+1 vn+1 qn+1 De exemplu. .5 Fie a. Construim. 1. .2. 1).. 1 ≤ k ≤ n unde qk+1 sunt cˆturile din algoritmul lui Euclid pentru numerele a... uk . w1 = (b. k rk uk vk qk .2.. . prin recurent˘... veca ¸a torii: (wk )0≤k≤n+1 ..1.. ¸ a ¸ e Cum algoritmul lui Euclid ¸i relatiile lui B´zout se pot realiza simuls ¸ e tan.

3. v1 ← v2 . NUMERE ˆ INTREGI Acest algoritm poart˘ numele de algoritmul extins al lui Euclid ¸i a s este prezentat ˆ continuare: ın Algoritm 1. a ← b. 0. 4. p2 . . Atunci. ¸ s p∈P . v2 ← 1 3. b ∈ A. u ← u1 . u. b) ¸i dou˘ numere ˆ s a ıntregi u.3 Teorema fundamental˘ a aritmeticii a Propozitie 1. . n = u pαp unde P este multimea numerelor prime ¸i αp > 0.20 CAPITOLUL 1. . 3. b ← r.2. . Atunci. / de unde ¸i n0 este la fel. chiar dac˘ acesta ¸ a a a a nu este divizor pentru n. . . Astfel. v cu d = au + vb. r ← a − qb. v ← v1 ¸i returneaz˘ (d. a returneaz˘ (d. v2 ← v. Astfel. a. u1 ← u2 .2 (Algoritmul extins al lui Euclid) INPUT: dou˘ numere naturale a. ¸ a obtinem n = up1 p2 . atunci d ← a. punˆndu-l la puterea 0. a OUTPUT: d = (a.1 Orice num˘r natural n ≥ 2 este produs de numere ¸ a prime. . Dar. . u. . a Astfel. s ¸ Observatie 1. Presupunem c˘ multimea A a numerelor naturale n ≥ 2 ¸ a ¸ care nu se scriu ca produs de numere prime este nevid˘. afirmatie ce contrazice n0 ∈ A. pαs .1. s a 1. . pentru a nu contrazice a alegerea lui n0 . d ← a. a s s 2. pk sunt ¸ s numere prime nu neap˘rat distincte. b cu a ≥ b. . b < n0 pentru c˘ n0 nu este prim. Cˆt timp b > 0 execut˘: a a 3. u ← 1. b sunt fiecare produs de numere prime. .2. ps numere prime distincte ¸i α1 . v). n0 = ab unde a 1 < a. . u2 ← 0. p1 . u1 ← 1. Dac˘ b = 0. ˆ s In ultima relatie putem face s˘ apar˘ orice num˘r prim. fie n0 un prim element al lui A. a. u2 ← u. v1 ← 0. αs ≥ 1. Demonstratie. ¸i putem scrie: s n = upα1 pα2 . o unitate ¸i p1 . q ← [a/b]. putem grupa toate nua merele prime egale. v) ¸i se opre¸te. . v ← 0. . s 1 2 cu u unitate. 1}.1 Dac˘ n ∈ Z \ {−1. 1. cum N a este bine ordonat˘. u ← u1 − qu2 . cum n = sgn(n)· | n |. . v ← v1 − bv2 .3. pk unde u = ±1.

a poate fi ˆ alnit˘ notatia pα ||n ıntˆ a ¸ .1. Astfel. ¸ Atunci. Teorem˘ 1. rezult˘ p | b.3. Atunci. b = pm b . adic˘ pα este cea mai mare a s a putere a lui p care divide n. Din propozitia ¸ a ¸ anterioar˘. rezult˘ c | b. .4 Din (a.3.3. p) = 1. Fie ordp a = n. b. a Corolar 1. Demonstratie. Atunci.3. Din a corolarul 1.1 Fie p un num˘r prim ¸i a.3. c sunt ıncˆ s relativ prime. . unde α > 0. c | b. a = pn a .1 Dac˘ p este un num˘r prim ¸i n un num˘r ˆ ¸ a a s a ıntreg. vom nota5 ordp n = α dac˘ pα | n ¸i pα+1 n. (a. pαs . diferit de ±1. atunci p | a sau p | b. rezult˘ c˘ exist˘ numerele ˆ ¸ a a a ıntregi u. a a Definitie 1. p a b . ordinul lui n la p. Produsul se poate scrie de fapt sub forma ¸ n = upα1 pα2 .1 (Teorema fundamental˘ a aritmeticii) Orice nua a m˘r ˆ a ıntreg nenul n. ordp b = m. p a . Vom numi acest num˘r natural a α. b ¸i pentru orice s num˘r prim p. poate fi scris ˆ mod unic (mai putin ın ¸ pαp ordinea factorilor) ca produs de numere prime de forma n = u p∈P unde P este multimea numerelor prime ¸i doar un num˘r finit din nu¸ s a merele naturale αp sunt nenule.2 Fie a. TEOREMA FUNDAMENTALA A ARITMETICII 21 Propozitie 1. b dou˘ numere ˆ a s a ıntregi. p b . cum p este prim. Dac˘ p a. are loc relatia: a ¸ ordp (ab) = ordp a + ordp b. s 2 1 4 Aceast˘ a 5 mai proprietate a fost demonstrat˘ de Euclid. b = b · 1 = (ab)u + (bv)c. Rezult˘ ab = pn+m a b . Cum c | ab. Demonstratie. c numere ˆ ¸ ıntregi astfel ˆ at c | ab ¸i a. ordp (ab) = n + m.3. Dac˘ a p | ab.2 Pentru dou˘ numere ˆ a ıntregi nenule a. v pentru care 1 = au + cv. Corolar 1.3.˘ 1. Demonstratie. c) = 1. Demonstratie.

a ın ar˘tˆnd c˘ un poligon regulat cu 17 laturi poate fi construit cu rigla ¸i compasul. . . ordq u = 0. Cele mai importante descoperiri ale sale au fost f˘cute de matematician ˆ tinerete. fiul unui zidar. Atunci: (n. b numere ˆ ¸ ıntregi. a Rezult˘ astfel c˘ α1 = ordp1 n. Cum u este unitate. Matematica este regina ¸tiintelor. b ¸i not˘m m = [a.2. . rezult˘ m | m . . b] dac˘: s a a 1. . pentru un num˘r prim q. s 2. . iar teoria numerelor. [n. . unde ¸ s s s 1 2 1 2 u. . Spunem c˘ m este un cel mai a mic multiplu comun al numerelor a. .3. . βk ≥ 0 pentru at s 1 ≤ k ≤ s. . pαs ¸i m = vpβ1 pβ2 . Pentru orice a | m ¸i b | m . . αs = ordps n ≥ 1. a s ¸ a a as ¸˘ regina matematicii. . p1 . ˆ ın 1801. v sunt unit˘¸i.3 Fie n = upα1 pα2 . . m) = 1≤k≤s pk pk 1≤k≤s min{αk . subliniaz˘ pasiunea lui deosebit˘ pentru aceast˘ ¸tiinta. a | m ¸i b | m. La 3 ani a descoperit o gre¸eal˘ ˆ statul de plat˘ al tat˘lui s˘u. La 8 ani s a ın a a a a rezolvat rapid problema sumei primelor 100 de numere naturale. . ordq p = 1 dac˘ p = q. m] =| n | · | m | ¸ 6 Karl Friedrich Gauss (1777-1855). a ın a Definitie 1.3. . altfel ordq p = 0. Forma canonic˘ a descompunerii este aceea de ın a a scrie num˘rul ca produs de numere prime distincte la puterile coresa punz˘toare. a a Unicitatea descompunerii ˆ factori primi a fost prima dat˘ mentionat˘ ın a ¸ a de Gauss. (n. m)[n.3. s a Propozitie 1. S-a dovedit c˘ multe rezultate care sunt atribuite unor a a matematicieni au fost obtinute de Gauss mai ˆ ¸ ınainte. ˆ ordine cresc˘toare. pβs . restul vietii a ın ¸ ¸ petrecˆndu-l cu rafinarea lor. . p1 . . . ˆ anul 1796 a In f˘cut o mare descoperire ˆ domeniul geometric. ˆ a a a s In 1799 a dat o demonstratie riguroas˘ teoremei fundamentale a algebrei. el nepublicˆnd toate studiile a f˘cute. ce nu mai progresase din antichitate. a ordq n = ordq u + p∈P αp ordq p. . de exemplu: 12600 = 23 · 39 · 52 · 7. ps numere prime distincte ¸i α1 . NUMERE ˆ INTREGI cu u unitate.βk } Obtinem astfel. Gauss a pus ¸ a bazele teoriei moderne a numerelor prin lucrarea sa Disquitiones Arithmeticae.6 ˆ anul 1801. αs ≥ 1. . Expresia sa favorit˘. m] = max{αk . .2 Fie a. ps numere prime distincte ¸i αk .22 CAPITOLUL 1. a fost unul dintre copiii minune. Gauss a fost considerat de matematicienii contemporani lui Printul Matea ¸ maticii. Din s corolarul 1.βk } .

. atunci: s pn+1 ≤ p ≤ p1 p2 .5. pentru orice n ≥ 1. . π(1) = 0. pn + 1. oferim acum dou˘ demonstratii. Dac˘ un pn ≤ n. . pe care ˆ not˘m cu pn .1. . . p2 . Am s a obtinut astfel c˘. Din lema 1. s˘ mai fie propus˘ o alta. Multimea numerelor prime fiind infinit˘. a fost pus˘ apoi problema ¸ a a distributiei numerelor prime. pn ¸i p | p1 p2 . 1.4. pentru ¸ fiecare Pn g˘sim cˆte un divizor prim pn . a Pentru aceast˘ teorem˘. urmˆnd ca. NUMERE PRIME 23 1. Cum fiecare pi N. apoi alegem n = p1 ¸i obtinem un num˘r prim > p1 .4 Numere prime Numerele prime pot fi privite ca blocuri din care se formeaz˘ numerele a naturale. . Demonstratie 2. fals. pn . c˘ multimea nu¸ a ¸ merelor prime este finit˘. exist˘ pn > n num˘r prim. Deci. a a Demonstratie.1 (Euclid) Exist˘ o infinitate de numere prime. ceea ce este absurd. ˆ a a a ¸ a ın 1.) s ¸ a Demonstratia lui Euclid furnizeaz˘ ¸i o anumit˘ majorare pentru al ¸ as a n− lea num˘r prim. a Una dintre primele probleme studiate referitor la multimea numerelor ¸ prime a constat ˆ stabilirea cardinalit˘¸ii acesteia: este multimea inın at ¸ finit˘ sau nu? a a Teorem˘ 1. se poate demonstra u¸or c˘ ¸ a a s a pn < 22 . Dac˘ p este un num˘r prim a ıl a a a diferit de p1 .4. Fie Pn = n! + 1. etc. atunci pn | n! a a a ¸i cum pn | Pn . . π(2) = 1. p2 . n}. pn + 1. . problem˘ care poate fi rezumat˘ astfel: ¸ a a Definim functia ¸ π : R+ → N prin π(x) este egal cu num˘rul numerelor prime ≤ x.1. . . rezult˘ pn = 1. presupunem c˘ exist˘ doar n numere a a a prime p1 . . etc. cum orice num˘r natural ≥ 2 este produs de numere prime. deci are un divizor prim. adic˘ a N = pk pentru un k ∈ {1. . pn > n. . . . n . Num˘rul N = p1 p2 . ceea ¸ a a a ce arat˘ c˘ multimea numerelor prime este infinit˘ (Pentru n = 1 g˘sim a a ¸ a a p1 . . acesta va fi prim. Astfel. (Euclid) Presupunem. . pn + 1 este mai mare decˆt a a 1. . Prin inductie matematic˘ dup˘ n. pentru n ≥ 1. prin absurd. π(3) = π(4) = 2.1. pentru orice n. a Astfel.

a Propozitie 1. x ≥ ee Atunci. [16]. Dac˘ 5 < x < ee . Dac˘ 1 < x < 2. obtinem π(22 ) ≥ n.4. a s a n n Atunci. n n . din pn < 22 . a O alt˘ relatie cunoscut˘ apare ˆ propozitia urm˘toare. Atunci n − 1 ≤ ln(ln x) < n.1 Pentru orice num˘r real x > 1. π(x) ≥ π(22 ) ≥ n > ln(ln x). 7)3 = 19. atunci n ≥ 4 ¸i avem: a s e3 > (2. en−1 = e3 · en−4 > 24 · 2n−4 = 2n . avem ¸ π(x) > ln(ln x). de unde a π(x) ≥ 1 > ln(ln x). avem ee > e2 > (2. ¸ ¸ Propozitie 1. puteti consulta. a Dac˘ 2 ≤ x ≤ 5. 2 ln 2 3 n n−1 > e2 > 22 . Fie n cel mai mic num˘r ˆ ¸ a ıntreg mai mare ca ln(ln x). 683 > 16 = 24 . pentru orice num˘r na¸ a tural n ≥ 1. Astfel. Deci.2 Pentru orice num˘r ˆ ¸ a ıntreg pozitiv n. Pentru dea ¸ a ın ¸ a monstratie. avem ln(x) < 1. Demonstratie.24 CAPITOLUL 1. avem: π(x) ≥ ln x . ceea ce este echivalent cu ee 3 n−1 ≤ x ≤ ee . avem π(x) ≥ 3 > ln(ln x). a Este evident c˘ π(pn ) = n ¸i pπ(n) = n. n Dac˘ x ≥ ee . 7)2 = 7. NUMERE ˆ INTREGI S-a ˆ ıncercat g˘sirea unei formule de calcul pentru π(x). 29 > 5 ≥ x.4. de unde π(x) = 0 > ln(ln x). pentru orice num˘r prim n.

a a ¸ a a Un num˘r prim p se nume¸te pereche. mecanisme de vˆslire.4. ¸ a ın .). ¸ Observatie 1. progresia aritmetic˘ an+b. Pentru rezula ¸ tatele deosebite obtinute ˆ teoria numerelor. pr˘¸itoare. 7 Aceast˘ teorem˘ a fost enuntat˘ de Gauss ˆ 1793. deci cele n numere a construite initial sunt toate compuse.4. independent. preocupare ce l-a condus la crearea unei as a noi ramuri matematice: teoria celei mai bune aproxim˘ri a functiilor.2 (Teorema numerelor prime) a lim π(x) x ln x x→∞ =1 Pentru mai multe informatii legate de functia π. Dar. 94. 91. 96. .4. . Hadamard ¸i de C. k | (n + 1)! + k.1 1) Conform teoremei. (n + 1)! + 3. n ≥ 1 contine o infinitate de numere a ¸ prime.4. etc. 2) Teorema arat˘ c˘ distanta dintre dou˘ numere prime este arbitrar˘. 95. care a ı¸ ˆ ımbinat mereu teoria cu practica. dac˘ p + 2 este tot prim. NUMERE PRIME 25 Un rezultat de baz˘ legat de numerele prime este prezentat ˆ urm˘a ın a toarea teorem˘:7 a Teorem˘ 1. exist˘ cel putin n a numere naturale compuse consecutive. 93. Nu a s a se ¸tie dac˘ multimea acestor numere prime pereche este infinit˘ sau nu. exist˘ 7 a a numere consecutive compuse mult mai mici. care a fortat torentul lor capricios s˘ intre ˆ limitele algebrei. Demonstratia ei a fost rea a ¸ a ın ¸ alizat˘ abia ˆ 1896.3 Pentru orice num˘r natural n ≥ 1.4 (Dirichlet) Fie a ¸i b numere naturale prime ˆ a Atunci. de la Vall´e Poussin. . s a ¸ a s ıntre ele. (n + 1)! + n + 1.4. A inventat 40 de mecanisme diferite (ma¸ini de sors tat. . de J. putem construi 7 numere na¸ turale consecutive compuse ˆ ıncepˆnd cu 8! + 2 = 40322. ca de exemplu: 90. Consider˘m numerele ¸ a (n + 1)! + 2. at ı¸ ın a a ¸ Teorem˘ 1.1.J. se pot studia ine¸ ¸ galit˘¸ile lui Cebˆsev 8 ˆ [5]. 92. a ın s e folosind analiza complex˘. Demonstratie. Teorem˘ 1. el a fost numit ˆ ¸ ın ınving˘torul numerelor a prime. a 8 Pafnuti Lvovici Cebˆsev (1821-1894) a fost un matematician multilateral. Este evident c˘ pentru 2 ≤ k ≤ n + 1.

Vorlesung uber Zahlentheorie. Cum computerele ¸i criptografia dau s mare important˘ c˘ut˘rii de numere prime mari. el a f˘cut ca descoperirile lui Gauss ¨ a s˘ fie accesibile majorit˘¸ii matematicienilor. ¸a Astfel.26 CAPITOLUL 1. 9 G. ın as 10 Cristian Goldbach (1690-1764) a corespondat cu multi matematicieni eminenti ¸ ¸ ai epocii. NUMERE ˆ INTREGI Aceast˘ teorem˘ este cunoscut˘ sub numele de Teorema Dirichlet 9 a a a pentru numere prime ˆ progresie aritmetic˘. numere prime Mersenne Mp (vezi capitolul 4. Ea poate fi studiat˘ ˆ [18] ¸i anumite cazuri particua a ın s lare ale ei. Prin cartea sa de a a a o teoria numerelor. el a avut s a ¸i multe contributii importante ˆ analiza matematic˘. nu vor putea oferi liste de actualitate. ın Una dintre problemele celebre nerezolvate despre numerele prime este urm˘toarea afirmatie. teoria matematic˘ ce a stat la baza obtinerii rezultatelor a ¸ practice.Lejeune Dirichlet (1805-1859) a studiat la Universitatea din Paris. este folosit a ˆ combinatoric˘ ¸i teoria numerelor. cum ar fi Euler ¸i Bernoulli. La a ¸ acea perioad˘ nu se cuno¸teau decˆt 110 astfel de numere. Demonstratia nu este ın a ¸ prezentat˘ aici. C˘rtile de specialitate. cel al cutiei.4) deoarece testarea primalit˘¸ii lor se face descompunˆnd u¸or ˆ factori pe Mp + 1 (va fi o at a s ın putere a lui 2). a s a In sunt de peste 1000 de ori mai multe. Al˘turi de celebrele sale conjecturi. Ele sunt ˆ a importante pentru c˘ pot furniza. mult ıns˘ a mai pe larg. Pe Internet sunt site-uri speciale care p˘strez˘ ca baz˘ a a a de date multe numere prime (pot fi ¸i 6000). Samuel Yates a definit notiunea de num˘r prim ın ¸ a titanic ca fiind un num˘r prim cu cel putin 1000 de cifre zecimale. El a fost ales de c˘tre ın a a Gauss s˘-i succead˘ la catedr˘. A avut contributii importante ¸i ˆ a at ¸ s ın domeniul analizei matematice iar principiul s˘u binecunoscut. chiar s a¸ dac˘ insereaz˘ aceste rezultate. s ¸ ın a . de cele mai multe ori. ˆ prezent. ˆ alnit˘ ¸i sub numele de Conjectura lui Golda ¸ ıntˆ as bach 10 : Orice num˘r par este suma a dou˘ numere prime. ˆ anul 1984. dimensiunea acestora ¸a a a va continua s˘ creasc˘. un centru important pe plan mondial ˆ matematic˘ la aceea vreme. ˆ [5]. a a ¸inˆnd cont de perioada de timp care trece de la conceperea c˘rtii pˆn˘ t a a¸ a a la publicarea ei. la Universitatea din G¨ttingen. a a Cele mai mari numere prime cunoscute sunt. a a ˆ Incheiem acest subcapitol sublinind o problem˘ actual˘ de mare ima a portant˘: determinarea de numere prime mari.

Euler12 a ar˘tat c˘ F5 este compus. F1 = 5. Dup˘ moartea sa. 2n + 1 = = 22 k m +1 22 k 22 + 1 k m−1 − 22 k m−2 + . num˘rul fiind divizibil In a a a cu 641. ¸ a a ˆ ındrumat de Johann Bernoulli. s 12 Leonard Euler (1707-1783) a fost fiul unui preot elvetian. A scris peste 700 de c˘rti ¸i articole. l˘sˆnd atˆtea rezultate ın a¸ s a a a nepublicate ˆ at Academia Imperial˘ din Petersburg nu a sfˆr¸it publicarea acestora ıncˆ a a s decˆt dup˘ 47 de ani de la moartea sa. rezult˘ c˘ 22 + 1 = 1.5. f˘r˘ multe calcule. F2 = 17. Demonstratie. datorit˘ memoriei sale exceptionale.1 Numerele Fermat sunt numerele de forma ¸ Fn = 22 + 1. Demonstratia este foarte elegant˘.5. ¸ a s a Deci. f˘r˘ a putea preciza dac˘ exist˘ o infinitate de numere prime Fermat. aa a a ˆ 1732. + 1 . n k Fermat11 a afirmat c˘ toate aceste numere sunt prime. a studiat ¸i matematica. ceea ce nu este posibil.5. a a ın . Cum 2n + 1 este prim. Pe lˆng˘ teologie..1 Dac˘ n este un num˘r natural ¸i 2n + 1 este num˘r ¸ a a s a prim. Pˆn˘ ˆ a a a ın prezent se cunosc ca fiind prime doar numerele Fermat: F0 = 3. A fost probabil cel mai mare matematician amator din istorie. atunci n este o putere a lui 2. Cu toate c˘ ultimii 17 ani din viat˘ a fost a a a ¸a orb..5 Numere Fermat Propozitie 1. La 16 ani ¸i-a obtinut docs s ¸ toratul ˆ filozofie. Pe parcursul vietii nu a publicat nimic din ¸ descoperirile sale. F4 = 65537. n ≥ 0. Ea se ¸ a aa 11 Pierre de Fermat (1601-1665) era de profesie avocat. Presupunem c˘ n = 2k m cu k ∈ N ¸i m num˘r impar. NUMERE FERMAT 27 1. a putut s˘-¸i continue activitatea ¸tiintific˘ a ¸ as s ¸ a pˆn˘ ˆ ultimul moment. dar a corespondat cu multi matematicieni contemporani lui despre ¸ acestea. F3 = 257. Definitie 1. de exemplu cu Mersenne. fiul s˘u a g˘sit toate notitele a a a ¸ sale ¸i le-a publicat.1. a a k sau 22 + 1 = 2n + 1 de unde n = 2k .

. Propozitie 1. Fn−1 = Fn − 2. . numerele Fermat Fm ¸i ¸ s Fn sunt prime ˆ ıntre ele. Fm ) . folosind metoda inductiei matematice. Fn−1 = Fn − 2. Putem presupune n > m. obtinem c˘ d | 2. . . . F0 F1 . √ Spre exemplu. .. Acest rezultat a fost ˆ ımbun˘t˘¸it de Lucas. a ar˘tat c˘ orice divizor al lui Fn trebuie s˘ fie de ın a a a forma 2n+1 · k + 1. este de forma a a a 2n+2 · k + 1. a ¸ F5 = = = = 22 + 1 = 232 + 1 = 24 · 228 + 1 (641 − 54 )228 + 1 = 641 · 228 − (5 · 27 )4 + 1 641 · 228 − (641 − 1)4 + 1 641(228 − 6413 + 4 · 6412 − 6 · 641 + 4). pentru F3 = 257 se caut˘ divizori primi ≤ 257 = a 16. Demonstratie. s Lema urm˘toare st˘ la baza unei propriet˘¸i importante a numerelor a a at Fermat. NUMERE ˆ INTREGI bazeaz˘ pe relatia 641 = 5 · 27 + 1 = 24 + 54 . distincte. toate numerele Fermat sunt impare de unde rezult˘ d = 1. Cum d | Fn ¸i d | F0 F1 . a ¸ ¸i astfel. as aa ¸ Lem˘ 1. deci el va avea un factor prim. . a at ˆ 1878. √ pentru F6 divizorii primi c˘utati ar fi de forma a ¸ 28 k + 1 = 256k + 1 ≤ F6 .5. este foarte ¸ ¸ simpl˘ ¸i o l˘s˘m ca exercitiu pentru cititor. Fn−1 .1 Orice divizor prim al lui Fn . ˆ 1770. La fel.4. . n ∈ N. Fm .5. de forma 25 k + 1 = 32k + 1. a Fie d = (Fn . Demonstratia. a F3 este prim.1 Numerele Fermat verific˘ relatia de recurenta: a a ¸ ¸˘ F0 F1 F2 .28 CAPITOLUL 1. Dup˘ mai multe calcule se obtine k = 1071.5. pentru n ≥ 1. ¸ Din lema anterioar˘. dac˘ exist˘. 5 Tot el.1: Fiecare num˘r Fermat este > 1. prin teorema: ın Teorem˘ 1. a Folosind acest rezultat putem oferi o alt˘ demonstratie pentru teoa ¸ rema 1. Fie a .2 Pentru m. 274177 | F6 . s ¸ a Dar. cu k ≥ 0. Astfel.. Cum astfel de factori nu exist˘. .

el este num˘r compus. pentru m = n. are 2391 cifre. grupul multia a ∗ plicativ K este o sum˘ direct˘ de n grupuri ciclice ale c˘ror ordine sunt a a a egale cu F0 . . De fapt. aceste numere prezint˘ interes ¸i ˆ teoria corpurilor a s ın n finite.1. cu n ∈ N . se ¸tie c˘ Fn este compus pentru 5 ≤ n ≤ 32. . (Fn . dac˘ consider˘m un corp K de ordin 22 . s Numerele Fermat ˆsi g˘sesc importanta ˆ geometrie prin rezultatul ı¸ a ¸ ın dat de Galois ˆ 1801. Landry a factorizat F6 . Fm ) = 1. a a Astfel. ˆ 1880. metoda folosit˘ nefiind publiın a cat˘ ˆ a. . ın F12 are 5 factori primi cunoscuti. Obtinem astfel c˘ divizorii pn ¸i pm sunt diferiti. pr sunt numere prime Fermat distincte. s De asemenea. F20 . . s as a unde k ∈ N ¸i p1 . ın . F7 a fost factorizat folosind metoda fractiilor continue ˆ 1975 a ıns˘ ¸ ın de c˘tre Morrison ¸i Brillhart. r˘mas de studiat. Pentru F13 situatia este asem˘n˘toare. Dintre In s a acestea. Astfel. . F22 ¸i F24 . ¸inˆnd cont de dimensiunea lor mare. . exist˘ o infinitate de numere prime. F1 . NUMERE FERMAT 29 pn un divizor prim al lui Fn . pr . .5. Folosind acest rezultat. ˆ 1988. pentru a determina ordinul unui element din K ∗ este necesar s˘ cunoa¸tem descompunerea a s ˆ factori primi a numerelor Fermat. . singurele numere Fermat compuse pentru care nu este cunoscut nici un divizor prim sunt F14 . Acesta a stabilit c˘ un poligon regulat cu n laturi ın a este construibil cu rigla ¸i compasul dac˘ ¸i numai dac˘ n = 2k p1 p2 . Descompunerea ˆ factori primi a numerelor Fermat este foarte diın ficil˘. Cu ajutorul metodei curbelor eliptice. ˆ 1981. ¸tiindu-se 4 ¸ a a s factori primi iar cel compus. Brent ¸i Pollard au a s ın s folosit o versiune a testului rho. Dar. s a ˆ prezent. Chiar dac˘ a a nu se cunoa¸te factorizarea lui F14 . r˘mˆnd un factor compus necunos¸ a a cut de 1187 cifre. s-au factorizat a t a complet doar numerele F5 pˆn˘ la F11 . Pentru F8 . Brent a factorizat F11 . . Fn−1 . Cum multimea ¸ a s ¸ ¸ a a divizorilor pn este infinit˘.

De aici. NUMERE ˆ INTREGI 1. s˘ rezolv˘m ˆ numere ˆ a a ın ıntregi ecuatia: 34x + 19y = 14. a scris Aritmetica. 250 ˆ ı. y. ˆ folosire sistematic˘. se poate a a a a a presupune c˘ Diophantus a tr˘it 84 de ani. atunci d | ax + by = c. t ∈ Z . y = 126 − 34t. b. dac˘ ecuatia are o solutie. y0 = 9 · 14 = 126.30 CAPITOLUL 1. y = y0 − t. ea a ¸ ¸ va avea o infinitate de solutii ¸i anume ¸ s x = x0 + b a t. Teorem˘ 1. b). exist˘ u. b. singura surs˘ de informatii este o epigram˘ g˘sit˘ ˆ ¸ a ¸ a a a ıntr-o colectie ¸ numit˘ Antologia Greac˘ : Diophantus ¸i-a petrecut 1/6 din viat˘ ˆ copil˘rie. c ∈ Z . Mai mult.1 Fie a. avˆnd jum˘tate din vˆrsta tat˘lui. c ∈ Z. ¸ a Solutia general˘ a ecuatiei este dat˘ de x = −70 + 19t. b = 19.n. pentru c˘ avem deja rezultatele algoritmului lui Euclid a extins pentru numerele a = 34. pentru orice ¸ a numere ˆ ıntregi x. adic˘ o solutie particular˘ a ecuatiei ( 1. notatii matematice pentru a a ¸ a ¸ a reprezenta necunoscute ¸i puteri ale acestora ˆ ecuatii. nec˘s˘torit. ecuatia are solutii ˆ s ¸ ¸ ıntregi. (1. Ecuatia ax + by = c are solutii ˆ a ¸ ¸ ıntregi dac˘ ¸i numai dac˘ d | c unde d = (a. y0 ).2) este dat˘ a ¸ a ¸ a de x0 = uc . Obtinem astfel a ¸ c = a(uc ) + b(vc ). b). putem scrie c = dc . pentru care au + bv = d. Dup˘ 5 ani de c˘s˘torie. cunoscut ¸i ca tat˘l algebrei. 1/2 a a s ¸a ın a ˆ tinerete. Reciproc. v ∈ Z . a a . prima s a carte de algebr˘ cunoscut˘. ¸ a ¸ a unde t ∈ Z. Din teoa rema 1. Ea contine. y0 = vc . (x0 . as a Demonstratie. 13 Diofante (aprox. Dac˘ d = (a. iar 1/7.e.2. 19) = 1 = 34(−5) + 19 · 9 ¸i 1 | 14. O solutie particular˘ este x0 = (−5)14 = −70. dac˘ d | c.6 Ecuatii liniare diofantice ¸ Cele mai sinple ecuatii liniare diofantice13 sunt ecuatii liniare ˆ dou˘ ¸ ¸ ın a variabile: ax + by = c. pentru prima dat˘. s ın ¸ ın a Despre viata sa.6. a.5. s-a n˘scut un fiu care a ın ¸ a a a a a a murit cu 4 ani ˆ ınaintea tat˘lui. ¸ ¸ Studiului acestora se bazeaz˘ pe proprietatea celui mai mare divizor a comun a dou˘ numere de a fi scris ca o combinatie liniar˘ a numerelor a ¸ a considerate. d d De exemplu.2) Aceste ecuatii pot avea o infinitate de solutii sau nici una. ¸ Din (34.).

x0 ← uc/d. Fie a. c numere naturale. Aflati coeficientii ¸ a ¸ ¸ B´zout corespunz˘tori. a ¸ as a 5. (a.1 (Rezolvarea ecuatiei liniare diofantice) ¸ INPUT: numerele naturale a. unde d = (m. b) ¸i [a. prime ˆ a ıntre ele.2 pentru numerele a. b). Returneaz˘ (x0 . Ar˘tati c˘ sunt verificate urm˘toarele a ¸ a a relatii: ¸ i) [a. b a 2. c). Determinati d = (184. returneaz˘ ecuatia nu are solutii ˆ a a ¸ ¸ ıntregi ¸i se opre¸te. 2. c]. a ar˘tati c˘ ¸i suma lor este divizibil˘ cu 11. s s 3. b. c)] . c]) = [(a. astfel ˆ at ab = cn .2.2). ii) ([a. OUTPUT: o solutie particular˘ a ecuatiei ( 1. m. a 4. s ii) a + b = 36 · (a.6. Determinati numerele naturale care pentru care: ¸ i) ab = 2400 ¸i (a. Fie a. y0 ) a Exercitii propuse ¸ 1. Ar˘tati c˘ a ¸ a (am − 1. bc) = abc. b dou˘ numere naturale.6.2): ¸ Algoritm 1. e a 6. b) = 10. y0 ← vc/d 4. ıncˆ n Ar˘tati c˘ exist˘ d. Fie a. Dac˘ c mod d = 0. 1. 234) prin dou˘ metode. b. c. c](ab. Ar˘tati c˘ restul ˆ artirii unui p˘trat perfect la 16 este tot un a ¸ a ımp˘ ¸ a p˘trat perfect. s . e ∈ N astfel ca a = d ¸i b = en . b]. an − 1) = ad − 1.1. [b. n). a ¸ a a s 3. Dac˘ suma p˘tratelor a dou˘ numere ˆ a a a ıntregi este divizibil˘ cu 11. dac˘ exist˘ ¸ a ¸ a a solutii ˆ ¸ ıntregi. b. n numere naturale. [a. (b. ac. 7. ECUATII LINIARE DIOFANTICE ¸ 31 Demonstratia teoremei conduce la utilizarea urm˘torului algoritm de ¸ a rezolvare a ecuatiilor liniare diofantice de forma ( 1. Aplic˘ algoritmul 1. b] = 3850.

n + 17. Verificati dac˘ F4 este num˘r prim sau nu. S˘ se determine numerele prime care se pot reprezenta atˆt ca a a sum˘ cˆt ¸i ca diferent˘ de numere prime. ˆ numere ˆ a ın ıntregi. (m + n)! 10. p p p 9. 80]. folosind rezultatul ¸ a a teoremei 1. S˘ se determine numerele naturale n pentru care urm˘toarele a a numere sunt toate prime: n + 1. a a s ¸a 13.. Fie a ¸i n dou˘ numere naturale. 11. Dac˘ num˘rul ab este prim.5. Determinati num˘rul de zerouri din scrierea zecimal˘ a num˘rului ¸ a a a 100!. s 12.. Ar˘tati c˘ dac˘ num˘rul an − 1 s a a ¸ a a a este prim.32 CAPITOLUL 1. 15. atunci a = 2 ¸i n este prim. Stabiliti pentru ce valori ale num˘rului natural n ∈ [50. a a a 14. Fie n ∈ N . n + 11. n. S˘ se rezolve. ecuatia 324x − 170y = 19. s 17. ¸ . n + 5. un ¸ a poligon regulat cu n laturi se poate construi cu rigla ¸i compasul. n + 23. n + 7.1. atunci 2a − b este num˘r prim. n + 13. pentru orice numere naturale m! · n! m.. Demonstrati c˘ ¸ a ∈ N . Ar˘tati c˘ exponentul la care apare num˘rul prim p a ¸ a a ˆ descompunerea lui n! este egal cu: ın n n n + 2 + 3 + . NUMERE ˆ INTREGI 8. 16.

1 Fractii continue finite ¸ Folosind algoritmul lui Euclid.1 O fractie continu˘ finit˘ este o expresie de forma ¸ ¸ a a a0 + a1 + a2 + ..1. Atunci. Algoritmul lui Euclid aplicat numerelor 73 ¸i 19 s 19 const˘ ˆ relatiile: a ın ¸ 73 = 19 · 3 + 16 19 = 16 · 1 + 3 16 = 3 · 5 + 1 3 = 1 · 3. putem exprima numerele rationale sub ¸ forma unor fractii continue. putem scrie: 73 16 1 1 1 1 =3+ =3+ =3+ =3+ =3+ .+ 1 an−1 + 33 1 an . ¸ 73 De exemplu.CAPITOLUL 2 Fractii continue ¸ 2. fie . 19 19 19 3 1 1 1+ 1+ 1+ 16 1 16 16 5+ 3 3 Definitie 2. 1 1 .

. a a ¸ Fractia continu˘ se nume¸te simpl˘ dac˘ numerele reale a0 . . b1 . ak+1 ] de inductie. . ak+1 ] este num˘r rational. ak+1 ] = a0 + [a1 . . a2 . a1 . Astfel. unde a. a ¸ b Aplic˘m algoritmul lui Euclid pentru r0 = a ¸i r1 = b. an sunt numere reale. . . a1 . ¸ Demonstratie. b > 0. ak . . rn−1 = rn qn+1 . . Fie x = ¸ a un num˘r rational. . a1 ] = a0 + = ∈ Q. a2 . ak+1 ] este rational. 0 < rn−1 < rn−2 0 < rn < rn−1 rn−3 = rn−2 qn−1 + rn−1 .1. . . ak . [a0 . . Astfel. Ar˘t˘m c˘ afirmatia r˘mˆne adev˘rat˘ ¸i aa a ¸ a a a as pentru [a0 . a b r1 r2 = = r0 1 = q2 + r1 r1 r2 1 q3 + r2 r3 . . finite.34 CAPITOLUL 2. . Proced˘m prin inductie matematic˘ dup˘ n. cu a1 . . . . . . rn−2 = rn−1 qn + rn . . . Pentru ¸ a ¸ a a 1 a0 a1 + 1 n = 1. 1 . FRACTII CONTINUE ¸ unde a0 . bk ]. ¸ a s a a an sunt numere ˆ ıntregi. an ]. . Aceste numere poart˘ numele de cˆturi partiale. a1 . .1 Orice fractie continu˘ finit˘ simpl˘ reprezint˘ un num˘r a ¸ a a a a a rational. [a1 . .1. an pozitive ¸i o vom s nota [a0 : a1 .2 Orice num˘r rational se poate exprima ca o fractie cona a ¸ ¸ tinu˘ finit˘ simpl˘. a ¸ a a ¸ simple de forma [b0 . Obtinem relatiile: a s ¸ ¸ r 0 = r 1 q2 + r 2 . . . . a1 . . obtinem c˘ ¸i ¸ a ¸ ¸ as [a0 . b ∈ Z . a1 a1 Presupunem c˘ afirmatia este adev˘rat˘ pentru fractii continue. . ak . . ak+1 ]. . a2 . . . . . . 0 < r2 < r1 r 1 = r 2 q3 + r 3 . 0 < r3 < r2 . Din ipoteza Avem egalitatea [a0 . ¸ Teorem˘ 2. Teorem˘ 2. a1 . . . a a a Demonstratie.

2.1. FRACTII CONTINUE FINITE ¸ ... rn−3 rn−2 rn−2 rn−1 rn−1 rn

35

=

qn−1 +

1 rn−2 rn−1 1

=

qn +

rn−1 rn

=

qn+1 .

Remarc˘m faptul c˘ q3 , . . . , qn+1 > 0. ˆ a a Inlocuind relatiile, una cˆte ¸ a una, rezult˘: a a b = q2 + 1 q3 + 1 r2 r3 = q2 + q3 + 1 1 q4 + 1 r3 r4 = ...

=

[q2 ; q3 , . . . , qn+1 ].

Prezent˘m ˆ continuare un algoritm de reprezentare a unui num˘r a ın a rational sub forma unei fractii continue: ¸ ¸ Algoritm 2.1.1 INPUT: a/b, a, b ∈ Z, b = 0. OUTPUT: [a0 ; a1 , . . . , an ] 1. a0 ← [a/b], r ← a − a0 b, a ← b, b ← r. 2. k ← 0 3. Cˆt timp r = 0, calculeaz˘: a a 3.1. k ← k + 1 3.2. ak ← [a/b], r ← a − ak b, a ← b, b ← r. 4. Returneaz˘ [a0 ; a1 , . . . , an ]. a Observatie 2.1.1 Scrierea unui num˘r rational sub forma unei fractii ¸ a ¸ ¸ continue finite simple nu este unic˘. Dac˘ consider˘m x = [a0 ; a1 , . . . , an ] a a a fractia continu˘ finit˘ simpl˘ corespunz˘toare num˘rului rational x, pen¸ a a a a a ¸ tru an > 1, putem scrie an = (an − 1) + 1, de unde x = [a0 ; a1 , . . . , an − 1, 1].

36 De exemplu,

CAPITOLUL 2. FRACTII CONTINUE ¸

73 = [3; 1, 5, 3] = [3; 1, 5, 2, 1]. 19 De fapt, se poate ar˘ta c˘ un num˘r rational se poate scrie ca o a a a ¸ fractie continu˘ finit˘ simpl˘ ˆ exact dou˘ feluri, unul cu un num˘r ¸ a a a ın a a impar de termeni iar altul cu un num˘r par de termeni. a S˘ vedem ce se poate obtine dintr-o fractie continu˘ finit˘ prin t˘ierea a ¸ ¸ a a a expresiei la pa¸i diferiti. s ¸ ¸ a Definitie 2.1.2 Fractia continu˘ [a0 ; a1 , . . . , ak ], cu 0 ≤ k ≤ n, se ¸ nume¸te k−convergenta fractiei continue [a0 ; a1 , . . . , an ] ¸i o not˘m Ck . s ¸ s a Teorem˘ 2.1.3 Fie a0 , a1 , . . . , an numere reale cu ai > 0 pentru a 1 ≤ i ≤ n. Definim recursiv ¸irurile: s p0 = a0 p1 = a0 a1 + 1 pk = ak pk−1 + pk−2 q0 = 1 q1 = a 1 qk = ak qk−1 + qk−2 , pk . qk

2≤k≤n

Atunci, k−convergenta Ck = [a0 ; a1 , . . . , ak ] =

Demonstratie. Ar˘t˘m c˘ aceast˘ afirmatie este adev˘rat˘ folosind metoda ¸ aa a a ¸ a a inductiei matematice. ¸ a p Pentru k = 0, C0 = [a0 ] = 0 = 0 . 1 q0 1 a a +1 p Dac˘ k = 1, C1 = [a0 ; a1 ] = a0 + a = 0 1 = 1. a1 a1 q1 pk ak pk−1 + pk−2 Presupunem acum Ck = [a0 ; a1 , . . . , ak ] = = pentru qk ak qk−1 + qk−2 2 < k < n. Din modul de definire a fiec˘rui pi , qi , observ˘m c˘ numere reale pk−2 , a a a pk−1 , qk−2 , qk−1 depind doar de cˆturile partiale a0 , a1 , . . . , ak−1 . Astfel, a ¸ 1 putem ˆ ınlocui ˆ ultima relatie ak prin ak + ın ¸ . Atunci, ak+1 Ck+1 = [a0 ; a1 , . . . , ak , ak+1 ] = a0 ; a1 , . . . , ak + 1 ak+1

2.1. FRACTII CONTINUE FINITE ¸ 1 pk−1 + pk−2 ak+1 1 ak + qk−1 + qk−2 ak+1 ak+1 (ak pk−1 + pk−2 ) + pk−1 ak+1 (ak qk−1 + qk−2 ) + qk−1 ak+1 pk + pk−1 pk+1 = . ak+1 qk + qk−1 qk+1 ak +

37

=

= =

73 = [3; 1, 5, 3], obtinem: ¸ 19 p0 = 3, q0 = 1, p1 = 3 · 1 + 1 = 4, q1 = 1, p2 = 5 · 4 + 3 = 23, q2 = 5 · 1 + 1 = 6 p3 = 3 · 23 + 4 = 73, q3 = 3 · 6 + 1 = 19. Convergentele fractiei continue sunt: ¸ p0 p p 23 p 73 C0 = = 3, C1 = 1 = 4, C2 = 2 = , C3 = 3 = . q0 q1 q2 6 q3 19 Pentru exemplul nostru, pk , qk k−convergenta fractiei continue [a0 ; a1 , . . . , an ], definit˘ ca mai ˆ ¸ a ınainte. Atunci, pk qk−1 − pk−1 qk = (−1)k−1 . Propozitie 2.1.1 Fie k ≥ 1, num˘r natural ¸i consider˘m Ck = ¸ a s a Demonstratie. Prin inductie matematic˘ dup˘ k. ¸ ¸ a a S˘ verific˘m relatiile pentru exemplul anterior: a a ¸ p1 q0 − p0 q1 = 4 · 1 − 3 · 1 = 1, p2 q1 − p1 q2 = 23 · 1 − 4 · 6 = −1, p3 q2 − p2 q3 = 73 · 6 − 23 · 19 = 1. Corolar 2.1.1 Fie Ck , k−convergenta fractiei continue simple ¸ [a0 ; a1 , . . . , an ]. Atunci, (pk , qk ) = 1, pentru 1 ≤ k ≤ n. Corolar 2.1.2 Fie Ck = [a0 ; a1 , . . . , an ]. Atunci, pk k−convergenta fractiei continue ¸ qk (−1)k−1 , qk qk−1

Ck − Ck−1

=

1 ≤ k ≤ n,

38 Ck − Ck−2

CAPITOLUL 2. FRACTII CONTINUE ¸ = ak (−1)k , qk qk−2 2 ≤ k ≤ n.

Urm˘toarea teorem˘ va fi folosit˘ la dezvoltarea fractiilor continue a a a ¸ infinite. Teorem˘ 2.1.4 Fie Ck k−convergenta fractiei continue simple finite a ¸ [a0 ; a1 , . . . , an ]. Atunci, C1 > C 3 > C 5 > . . . C0 < C 2 < C 4 . . . . ˆ In plus, pentru orice num˘r impar 2i+1 ≤ n, ¸i orice num˘r par 2j ≤ n, a s a C2i+1 > C2j . ak (−1)k . Astfel, pentru qk qk−2 k impar, Ck − Ck−2 < 0 iar pentru k num˘r par, Ck > Ck−2 . a (−1)2m La fel, C2m+1 − C2m = > 0. Deci, C2m+1 > C2m . q2m q2m−1 ˆ final, rezult˘ C2i+1 > C2i+2j+1 > C2i+2j > C2j . In a Demonstratie. Din corolarul 2.1.2, Ck −Ck−2 = ¸

2.2

Fractii continue infinite ¸
n→∞

Teorem˘ 2.2.1 Fie (an )n≥0 un ¸ir de numere ˆ a s ıntregi cu a1 , a2 , . . . pozitivi ¸i fie Ck = [a0 ; a1 , . . . , ak ]. Atunci, exist˘ lim Cn = α. s a Demonstratie. Folosind teorema 2.1.4, avem ¸ C1 > C3 > C5 > . . . > C2n−1 > C2n+1 > . . . C0 < C2 < C4 < . . . < C2n−2 < C2n < . . . ¸i C2j < C2k+1 , pentru orice j, k numere naturale. Astfel, obtinem c˘ s ¸ a sub¸irurile (C2n+1 )n≥0 ¸i (C2n )n≥0 sunt convergente. s s Not˘m lim C2n+1 = α1 ¸i lim C2n = α2 . a s Din corolarul 2.1.2, C2n+1 − C2n = 1 . q2n q2n+1 Folosind inductia matematic˘, se verific˘ u¸or c˘ qk ≥ k, pentru orice ¸ a a s a 1 k ≥ 1. Atunci, C2n+1 − C2n < . 2n(2n + 1)
n→∞ n→∞

Fie α = [a0 . qk pentru k natural. q2n q2n q2n+1 Rezult˘ a 1 0 < αq2n − p2n < . prin inductie matematic˘. a2 . q2n0 +1 Am obtinut astfel. Pentru k = 0.2. Fie a. a3 . Din teorema 2. . [a0 . α1 = α2 = α. . . 1).2. Deci. 0 = lim C2n+1 − lim C2n = α1 − α2 . . . .3 Fie α = α0 un num˘r irational.2. Ar˘t˘m. Astfel. . ¸i presupunem c˘ α este rational. c˘ num˘rul ˆ ¸ a a ıntreg aq2n0 − bp2n0 ∈ (0. . ceea ce fals. ¸ s αk = ak + 1 .1.2) . lim (C2n+1 − C2n ) = 0. c˘ αk ∈ Q. αk+1 (2. ak ] = ¸ s Reducem la absurd. Atunci. a a ¸ Teorem˘ 2. (2.] ¸i Ck = [a0 . pentru care α = . a b deci < 1. a2 .1 α se nume¸te valoarea fractiei continue simple infi¸ s ¸ nite [a0 . .]. pozitivi. .2. obtinem 0 < aq2n − bp2n < ¸ ¸ ¸ . . FRACTII CONTINUE INFINITE ¸ Astfel. b b ˆ Inmultind relatia ( 2. a1 . . αk+1 = .2 Fie (an )n≥0 un ¸ir de numere ˆ a s ıntregi cu a1 . a2 .] este un num˘r irational. Definim recursiv ¸irul a a ¸ s 1 de numere ˆ ıntregi (an )n≥0 prin: ak = [αk ]. n→∞ n→∞ 39 Observatie 2. . α = [a0 .1) cu b. a1 . b ∈ Z . Atunci. Din modul de definire al ¸irului. . q2n q2n+1 p 1 0 < α − 2n < . s a ¸ a cu b = 0. a1 . Teorem˘ 2.1) q2n+1 Demonstratie.2. Cum q2n+1 q2n+1 ≥ 2n + 1. .]. Rezult˘ α num˘r irational. .2. Atunci. . α = α0 este irational. a2 . a ¸ pk . n→∞ De aici. exist˘ n0 natural astfel ca q2n0 +1 > b. pentru orice n. . pentru k > 0. pentru αk − ak k ∈ N. ¸ Presupunem αk irational. C2n < α < C2n+1 . a2 . pentru n 1 natural. a1 . Demonstratie. pentru ¸ aa ¸ a a / orice k. a1 . . 0 < α − C2n < C2n+1 − C2n = .

. ak ] . . . . . . a1 . pentru orice k natural. Presupunem α = [a0 .] reprezint˘ acela¸i num˘r irational. rezult˘ αk rational. . a2 .]. ak ] = lim k→∞ a0 + 1 [a1 . ak . = [a0 . b2 . sunt pozitive. . qk qk+1 k(k + 1) k→∞ Teorem˘ 2. . . . j−convergenta fractiei [a0 . ceea ce contrazice ipoteza a ¸ a ¸ de inductie. .. a2 . a2 . . . αk+1 ] = Fie Cj = αk+1 pk + pk−1 . αk+1 este irational. ¸ ¸ Din αk = ak ¸i ak < αk < ak + 1. α = [a0 . ¸ α − Ck = = αk+1 pk + pk−1 pk − (pk qk−1 − pk−1 qk ) − = = αk+1 qk + qk−1 qk (αk+1 qk + qk−1 ) qk (−1)k .1. a1 . . ak . a2 . αk+1 qk + qk−1 > ak+1 qk + qk−1 = qk+1 . . . adic˘ a1 .. Deci. de unde lim Ck = α. α1 ] α1 = [a0 . . a1 .4 Dac˘ dou˘ fractii continue simple infinite a a a ¸ [a0 . αk − ak Deci. b1 . a2 . . . a2 . pentru orice k ≥ 0.1. αk+1 ]. atunci s a s a ¸ ak = bk . . a1 . . . α2 ] = . (αk+1 qk + qk−1 ) qk Dar.2.2). ak+1 = [αk+1 ] ≥ 1. . . a2 . a Din ( 2. a1 . Atunci. s a s 1 αk+1 = > 1. FRACTII CONTINUE ¸ Dac˘ αk+1 este rational. . . Obtinem ¸ 1 1 | α − Ck |< ≤ . . a1 .]. a3 . a1 .40 CAPITOLUL 2. Deci. α = = α0 = a0 + a0 + 1 a1 + 1 α2 1 = [a0 . . Atunci.] ¸i [b0 . folosind ¸ qj propozitia 2. ¸ α = k→∞ lim [a0 . . Demonstratie. rezult˘ 0 < αk − ak < 1 ¸i astfel. αk+1 qk + qk−1 pj .

prin inductie matematic˘. . . 1. . ¸ Convergentele unei fractii continue simple infinite ale unui num˘r ¸ a irational α sunt cele mai bune aproxim˘ri rationale ale lui α.] 1 . am obtinut ¸ 1 1 a0 = b0 = [α] ¸i a0 + s = b0 + . 3 7−2 √ 7+1 1 √ . . a1 = [α1 ] = 1. ak+2 . de unde [a1 . . bk+3 . . . . α2 = = 2 2+ 7 −1 3 √ 1 7+1 a2 = [α2 ] = 1. 4. b2 . C1 = a0 + adic˘ a0 = [α]. . a Presupunem [a0 .] [bk+2 . . a2 . . 1. .] rezult˘ a a 1 1 ak+1 = bk+1 ¸i ak+1 + s = bk+1 + . .] = [b0 . . 7 = [2. FRACTII CONTINUE INFINITE ¸ = a0 + 1 1 = a0 + . ˆ sensul ¸ a ¸ ın .] [a1 . b2 . Folosind ultimele dou˘ teoreme.2.] = [bk+1 . α3 = √ = . . . . pentru orice k. Astfel. . 4. ¸ a a a √ √ 7+2 √ 1 a0 = [ 7] = 2. ak+3 . . α1 = = . bk+3 . a a √ S˘ consider˘m α = 7. . Deci. . .] [ak+2 . 7+1 −1 3 1 1 √ =√ = α1 . . . . . 3 7+1 −1 2 √ 1 a3 = [α3 ] = 1. . . bk+2 . Din [ak+1 . a4 = [α4 ] = 4. s˘ g˘sim a a a a a fractia continu˘ infinit˘ corespunz˘toare. .]. . . a3 .]. . ak ] [a1 . 4. 1. ak+3 . . . a1 41 k→∞ Din C0 = a0 . . . 1.2. 1. b1 .]. α5 = 2+ 7−4 7−2 √ Obtinem astfel. α4 = √ = 2 + 7. . . a1 . 1. rezult˘: a a1 a0 < α < a0 + 1 . . a2 . Presupunem c˘ ak = bk . . am ¸ a ar˘tat c˘ ak = bk . 1. 1. . . Astfel.] [b1 . 1. . a2 . . a2 .] = [b1 .] = [bk+2 . b2 . . . lim [a1 .]. a3 . a2 . [ak+2 .

. Convergentele: 3. .]. a 7 335 este cea mai bun˘ aproximare a lui π cu numitor < 33102. FRACTII CONTINUE ¸ pk e mai aproape de α decˆt orice alt num˘r rational cu numitorul a a ¸ qk mai mic decˆt qk . ¸i k ∈ N astfel ˆ at a s Corolar 2.2. 1. s ∈ Z. 15. s ∈ Z. ¸i k ∈ N. a 113 r pk < α− . 3. atunci s ≥ qk+1 . a Prezent˘m aceste teoreme f˘r˘ demonstratii. 7. Pentru cei interesati. . etc. s qk De asemenea.2. sunt cele mai bune aproxim˘ri a 7 106 113 33102 rationale ale lui π: ¸ 22 este cea mai bun˘ aproximare a lui π cu numitor < 106. cu s > 0. 22 333 355 103993 . . . . cu r. 292. ¸ a a ¸ ın ¸ . 1. pj j−convergentele fractiei ¸ qj continue simple infinite corespunz˘toare lui α. 1. 1. a aa ¸ ¸ problema este abordat˘ ˆ detaliu ˆ [5] ¸i [20]. a ın ın s pj j−convergentele fractiei ¸ qj continue simple infinite corespunz˘toare lui α. se poate ar˘ta c˘ orice suficient de apropiat˘ aproxia a a mare rational˘ a unui num˘r irational trebuie s˘ fie o convergent˘ a ¸ a a ¸ a a fractiei corespunz˘toare num˘rului irational luat ˆ discutie. 1. 2.1 Fie α un num˘r irational ¸i a ¸ s α− atunci s > qk . a Dac˘ r. s > 0. astfel ca a s Teorem˘ 2.42 c˘ a CAPITOLUL 2. a r s ıncˆ Dac˘ ∈ Q.5 Fie α un num˘r irational ¸i a a ¸ s | sα − r |<| qk α − pk |. De exemplu. fractia continu˘ simpl˘ a lui π este ¸ a a [3.

. . drept a s pentru care vor fi doar enuntate.] este ¸ periodic˘ dac˘ exist˘ N ¸i k numere naturale astfel ca an = an+k . 4 = [1. ¸ Lem˘ 2.3. a ¸ 2.2 Un num˘r real α se nume¸te irational p˘tratic dac˘ ¸ a s ¸ a a α este irational ¸i este r˘d˘cin˘ a unui polinom de gradul al doilea cu ¸ s a a a coeficienti ˆ ¸ ıntregi. cu b > 0. t. aN −1 . . relas r 1 r tiv prime. . 2. . a1 . este o s s 2s2 convergent˘ a fractiei continue simple a lui α. a a a a .2.]. .3. s c Lem˘ 2.2 Dac˘ α este num˘r irational p˘tratic ¸i r. b nu este p˘trat perfect ¸i c = 0. Vom folosi notatia [a0 . . 3.3.6 Fie α un num˘r irational ¸i a a ¸ s 43 r ∈ Q.3.3 Fractii continue periodice ¸ ¸ a a a Definitie 2. aN .3. a ¸ a c √ a− b Atunci. . atunci a a a ¸ a s rα + s este num˘r rational sau irational p˘tratic. . s. 1. cu r. pentru a a a s orice n ≥ N.2. FRACTII CONTINUE PERIODICE ¸ Teorem˘ 2. 4. 4. . aN +1 . s > 0. .3 Dac˘ α este un num˘r irational p˘tratic. 3. α este cealalt˘ r˘d˘cin˘ a polinomului. 3. Atunci. a s a+ b astfel ˆ at α = ıncˆ .1 Num˘rul real α este irational p˘tratic dac˘ ¸i numai dac˘ a a ¸ a as a exist˘ a. a2 . a ¸ ¸ a tα + u √ a+ b Definitie 2. a1 . u ∈ Z. c numere √ a ˆ ıntregi. aN +k−1 ] . 3. c Lem˘ 2. Urm˘toarele rezultate introductive sunt u¸or de demonstrat. .3. α = se nume¸te conjugatul lui α. . 4.3. b. r˘d˘cin˘ a polia a a ¸ a a a a nomului AX 2 +BX +C ∈ Z[X]. 2.1 O fractie continu˘ infinit˘ simpl˘ [a0 . ¸ De exemplu. Definitie 2.3 Fie α = ¸ un num˘r irational p˘tratic. s ∈ Z. cu proprietatea c˘ α − a < .

1. Teorema urm˘toare ofer˘ un algoritm de determinare a fractiei cona a ¸ tinue simple corespunz˘toare unui irational p˘tratic. . d √ Q = 0. pentru care α = a . Q = 0. Q | d − P 2 cu a P+ d astfel ˆ at α = ıncˆ . a s Definim recursiv.4 Fie α1 = a CAPITOLUL 2. FRACTII CONTINUE ¸ a1 + b1 a + b2 .3.5 Dac˘ α este un num˘r irational p˘tratic. 2 d − Pk+1 Qk+1 = . a Din d − P 2 = bc2 − a2 c2 = c2 b − a2 = ±Q b − a2 . Se observ˘ c˘ ¸ s a a P. b. α2 = 2 dou˘ numere rationale a ¸ c2 c2 sau irationale p˘tratice. . d ∈ Z .3. a2 . . Atunci.3. Q. pentru k ≥ 0: √ Pk + d αk = . atunci exist˘ nua a a ¸ a a merele ˆ ıntregi P. Atunci: ¸ a (α1 + α2 ) (α1 − α2 ) (α1 · α2 ) α1 α2 = = = = α1 + α2 α1 − α2 α1 · α2 α1 α2 Lem˘ 2. d > 0 nu e p˘trat perfect. √c a | c | + bc2 . b > 0 nu este ¸ a √ a+ b p˘trat perfect. a1 . exist˘ a. Qk Pk+1 = ak Qk − Pk .1 Fie α = a un irational p˘tratic cu Q0 = 0.]. obtinem ¸ Q | d − P 2. Qk Atunci. ak = [αk ]. . Q Demonstratie. c ∈ Z cu c = 0. Din lema 2.3. a ¸ a √ P0 + d Teorem˘ 2. d > 0 nu este p˘trat perfect. Q. putem scrie α = c|c| Facem notatiile: P = a | c |. α = [a0 . Q = c | c | ¸i d = bc2 .44 Lem˘ 2. ¸ a Q0 2 d > 0 care nu este p˘trat perfect ¸i Q0 | d − P0 .

cum. rezult˘ Qk+1 | d − Pk+1 . a Qk+1 Demonstr˘m acum c˘ a0 . deci Pk+1 ∈ Z . Pentru aceasta.3. din ipoteza de inductie. 45 (2.3) este adev˘rat˘ pentru k ¸i ar˘t˘m c˘ ea r˘mˆne a a a s aa a a a adev˘rat˘ pentru k + 1. . Q0 = 3.2. d = 7.2. ¸ Qk 2 d − Pk+1 2 d = Pk+1 . Qk 2 d − Pk+1 2 Din Qk = ∈ Z . din ipoteza teoremei. Qk = 0. Qk ∈ Z . pentru orice k ≥ 0.3 a 1 ¸i ar˘t˘m c˘ αk+1 = s aa a . relatiile sunt verificate. a a Pk+1 = ak Qk − Pk .3) pentru k ≥ 0. . FRACTII CONTINUE PERIODICE ¸ Demonstratie. sunt cˆturile partiale ale fractiei a a a ¸ ¸ continue corespunz˘toare lui α. nefiind p˘trat perfect. ¸ Presupunem c˘ ( 2. . Qk | d − Pk . pentru α = a0 = [α] = 1 a1 = [α1 ] = 1 P1 = 1 · 3 − 2 = 1 P2 = 1 · 2 − 1 = 1 . 2 2 2 d − Pk+1 d − (ak Qk − Pk ) d − Pk Qk+1 = = = + 2ak Pk − a2 Qk ∈ Z k Qk Qk Qk 2 d − Pk ∈ Z. Atunci. folosim teorema 2. Prin inductie matematic˘ ar˘t˘m c˘ ¸ ¸ a aa a 2 Pk . Atunci Qk+1 = a = 0. a1 . Pentru k = 0. αk − ak √ √ d − (ak Qk − Pk ) Pk + d αk − ak = − ak = Qk Qk √ √ √ d − Pk+1 d + Pk+1 d − Pk+1 = = √ Qk Q d+P k k+1 = Qk Qk Qk+1 √ d + Pk+1 =√ Qk+1 d + Pk+1 = 1 . αk+1 √ 2+ 7 irational p˘tratic avem ¸ a 3 P0 = 2. a2 . De exemplu.

3. De aici. ¸ Not˘m β = [aN . rezult˘ ¸ a a α rational sau irational p˘tratic. consider˘m acum α irational p˘tratic. aN −1 . . iar din teorema 2. . a1 . . . .3. aN +k . ak = [αk ]. . β]. Deci. Deci. a a βpN −1 + pN −2 p p α = unde N −1 ¸i N −2 sunt convergentele fractiei s ¸ βqN −1 + qN −2 qN −1 qN −2 [a0 . a1 . aN +1 . aN −1 ]. . cum β este irational p˘tratic. 1. . a2 . α nu este rational. .3. qk β 2 + (qk−1 − pk ) β − pk−1 = 0. .] unde Q0 √ 2 d − Pk+1 P + d αk = k .3. . 3 √ 2+ 7 Astfel. . β este ¸ a irational p˘tratic. ¸ Cum fractia continu˘ simpl˘ a lui β este infinit˘. a1 . . a βpk + pk−1 p p Folosind rezultatul teoremei 2.46 Q1 = CAPITOLUL 2. aN +k ]. . .5. 1. aN +1 . β = [aN . a ¸ ¸ a Reciproc. α este irational p˘tratic. Atunci. FRACTII CONTINUE ¸ 7−1 =2 3 √ 1+ 7 α1 = 2 Q2 = 7−1 =3 2 √ 1+ 7 α2 = 3 a2 = [α2 ] = 1 a3 = [α3 ] = 4 P3 = 1 · 3 − 1 = 2 P4 = 4 · 1 − 2 = 2 7−4 7−4 =3 Q3 = =1 Q4 = 1 3 √ √ 2+ 7 α3 = 2 + 7 α4 = = α0 . .2 (Lagrange) Fractiile continue simple infinite coresa ¸ punz˘toare pentru numere irationale sunt periodice dac˘ ¸i numai dac˘ a ¸ as a numerele sunt irationale p˘tratice. . . ¸ a Se observ˘ c˘ α = [a0 .1. ¸ a Demonstratie.1. . β este irational. Din lema 2. Din lema 2. . Fie α = [a0 . Qk Qk . aN +k ] . aN +k ]. aN +1 . α = = 1. . β]. β = unde k−1 ¸i k s βqk + qk−1 qk−1 qk sunt convergente ale fractiei [aN . aN +1 . . . a1 . 3 Teorem˘ 2. . a ¸ a √ P + d α= 0 . aN −1 . . . Fractia continu˘ corespunz˘toare lui α ¸ ¸ a ¸ a a fiind infinit˘.3. Pk+1 = ak Qk − Pk ¸i Qk+1 = s . 4 . aN .2. α = [a0 . . ¸ a a a ¸ Din relatia anterioar˘.

rezult˘ αi = αj . a2 . s qk−1 qk−2 pk−2 α − qk−2 Astfel. . pk−1 k→∞ α − qk−1 Deci. . ai−1 . obtinem: ¸ Qk ≤ Qk Qk+1 ≤ d ¸i s 2 2 Pk+1 ≤ Pk+1 + Qk Qk+1 = d. . . . . aj−1 . k ≥ N ia o infinitate de valori ¸i astfel. ın a Obtinem c˘ ¸ a α = [a0 . 2 Din Qk Qk+1 = d − Pk+1 . exist˘ N natural astfel ˆ at αk < 0 pentru k ≥ N. Qk ) cu k ≥ N. obtinem α = k k−1 ¸ de unde. pentru k ≥ N avem: √ √ − d < Pk+1 < d. i < j. . ¸ a a a . . . Qk Qk Qk Qk > 0.2. . αk qk−1 + qk−2 pk−2 α − qk−2 − qk−2 · . pentru orice k ≥ 1. . αk ]. . a1 . aj−1 . αk qk−1 + qk−2 α p + pk−2 Prin conjugare. . Cum a ıncˆ αk > 0. cu Pi = Pj ¸i Qi = Qj . exist˘ un num˘r finit de valori a a posibile pentru perechile (Pk . ai+1 = aj+1 . ai+1 . . Deci. rezult˘ a αk pk−1 + pk−2 α= . . ai .3. . .2. . pentru k ≥ N. Astfel. pentru k ≥ N. Dar. . cum Pk . FRACTII CONTINUE PERIODICE ¸ 47 Cum α = [a0 . ai . . . a1 . ai+1 . 0 < Qk ≤ d. exist˘ i. ai−1 . ai+1 . . . aj−1 ] este o fractie continu˘ simpl˘ periodic˘. j ∈ N . Qk sunt numere ˆ ıntregi. ai . ai = aj . din teorema 2. αk = qk−1 pk−1 α − qk−1 pk−1 p Convergentele ¸i k−2 tind la α. . . . . Din modul s a s ˆ care sunt definite. pentru k → ∞. lim = 1. . . .3. . rezult˘ a √ √ √ P + d P − d 2 d αk − αk = k − k = > 0 pentru k ≥ N. Atunci.] = [a0 . Astfel. a1 .

. . De aici. afirmatia este verificat˘ pentru k = 0. cu i < j astfel ˆ at αi = αj . 3 Definitie 2. ai−1 = αi αj . a2 . αk+1 Conform teoremei 2. . αk − ak 1 1 = αk − ak . exist˘ i. prin conjugare. αk+1 αk+1 Ar˘t˘m.] = [a0 .3. . an ] . s Teorem˘ 2. a1 . αk+1 = . num˘r natural. Cum α0 este redus.5 Un num˘r irational p˘tratic α se nume¸te redus dac˘ ¸ a ¸ a s a α > 1 ¸i −1 < α < 0. a1 . adic˘ − ıncˆ a = − .3.3. aN −1 ] . . α = [a0 . adic˘ a [a0 . 4 este o fractie pur periodic˘. . α Demonstratie. j numere ¸ a a 1 1 ˆ ıntregi.2. din αk = a a a αk+1 1 1 1 −1 < ak + . a a ak ≥ 1.] unde α = α0 .48 CAPITOLUL 2. Atunci.3 Fractia continu˘ simpl˘ a unui num˘r irational p˘tratic a ¸ a a a ¸ a α este pur periodic˘ dac˘ ¸i numai dac˘ α este redus. a2 . dac˘ α este redus ¸i α = [a0 . . . . pentru k ≥ 0. 1. avem a0 ≥ 1. a2 . a as a Mai mult. αk+1 1 + ak ¸i −1 < αk < 0. . prin inductie matematic˘.] se nume¸te pur peri¸ ¸ a s odic˘ dac˘ exist˘ N. pentru orice aa ¸ a a k ≥ 0. pentru a a a a ıncˆ orice k ≥ 0. a2 . pentru k ≥ 0. avem s S˘ observ˘m acum c˘. Din teorema 2. ¸ a Presupunem c˘ −1 < αk < 0. . atunci fractia a s ¸ 1 continu˘ corespunz˘toare lui − a a este [an . α = ¸ a = 1. 1 Atunci = αk − ak < −1 deci. astfel ˆ at ak = aN +k . α fiind irational p˘tratic. Pentru c˘ α0 > 1. . a1 .2. a1 . ¸i. . . . 1. a1 . c˘ −1 < αk < 0.3. −1 < αk+1 < 0. . a 1 ak = [αk ]. . . Deci. an−1 . . √ 2+ 7 De exemplu. a1 . FRACTII CONTINUE ¸ Definitie 2. = αk − ak . s Atunci. . .3. a0 ].4 Fractia continu˘ [a0 . −1 − < ak < − . Presupunem mai ˆ ai c˘ α este un num˘r irational ¸ ıntˆ a a ¸ p˘tratic redus. adic˘ ak = a αk+1 αk+1 αk+1 1 − . a2 .

. . . . . aj−i−1 . a1 . ak−1 . a1 . . . . . ak−1 . . a ¸ Rezult˘ astfel. . qk = pk−1 .1. a0 . rezult˘ α = a αqk + qk−1 qk−1 qk sunt convergentele fractiei continue α. . aj−i−1 ] 49 este fractie continu˘ pur periodic˘. a1 . (2. . Astfel. a1 ] = k−1 . a1 . . . FRACTII CONTINUE PERIODICE ¸ aj−1 . ak . ak−1 . a1 . . . . . β]. ¸ Observ˘m c˘ a a p pk = [ak .5) . presupunem acum α irational p˘tratic ¸i fractia continu˘ ¸ a s ¸ a α = [a0 . . ak ] este pur periodic˘. qk−1 qk qk−1 qk ireductibile. a p p αpk + pk−1 unde k−1 ¸i k s Din α = [a0 . qk−1 qk−1 Conform corolarului 2. . relatie pe care a ¸ βpk−1 + qk−1 o putem scrie sub forma qk − 1 β 2 + (qk−1 − pk ) − 1 β − pk−1 = 0. Obtinem: ¸ ¸ qk α2 + (qk−1 − pk ) α − pk−1 = 0. Continuˆnd. aj−i−1 .1. α]. . .3. . ¸ a β = [ak . pk = pk . α0 ] = [a0 . convergentele pk−1 pk pk−1 pk . αj−i = α0 . ¸ a a Reciproc. .4) Fie β un irational p˘tratic astfel ca β = [ak . . sunt fractii ¸ . a0 ] = k pk−1 qk ¸i s p qk = [ak . (2. . . . a1 . . Atunci. a1 . a1 . . obtinem αj−2 = αi−2 . αj−i ] = [a0 .2. a2 . ˆ Inlocuind. . . . rezult˘ a βpk + qk β= adic˘ pk−1 β 2 + (qk−1 − pk ) β − qk = 0. obtinem β = ¸ unde k−1 ¸i k sunt s βqk + qk−1 qk−1 qk convergentele fractiei continue β. βpk + pk−1 p p La fel ca mai ˆ ınainte. . . a0 ] . . . αj−3 = αi−3 . qk−1 = qk−1 . a α = α0 = [a0 . ak−1 . . pk−1 = qk .

Deci. unde a0 = d . 0). . cum a a a √ conjugatul s˘u − d ∈ (−1. FRACTII CONTINUE ¸ Din ( 2. an .50 CAPITOLUL 2.3. an . β Astfel. a1 . an . .] = = a0 . . a1 . . . rezult˘ c˘ cele dou˘ r˘d˘cini ale ecuatiei s a a a a a ¸ qk x2 + (qk−1 − pk ) x − pk−1 = 0 1 1 sunt α ¸i − . α = − . . Primul cˆt partial al acestei fractii periodice este a a ¸ ¸ d + d = √ √ 2 d = 2a0 . 2a0 . . . a1 . a0 ] . . . −1 < α = − 1 < 0. . a / √ √ √ √ Dar. Putem scrie: √ d + √ d = = 2a0 . . a2 . ak−1 . . . a1 . sc˘zˆnd a0 . . .3. . a α α ˆ Incheiem capitolul precizˆnd forma fractiilor continue simple peria ¸ √ odice pentru numere irationale p˘tratice de forma d cu d num˘r na¸ a a √ tural. an = 2a0 . rezult˘ − = [ak . a2 . a2 . . . a0 ] . √ √ Conform teoremei 2.3. a1 . De aici. a2 . a1 .5). 2a0 . ak−1 . . a1 . . . . a2 . . am demonstrat c˘ α este redus. .4) ¸i ( 2. . rezult˘: a a a √ d = [a0 . a1 . a1 . Tot din teorema 2. . s β β Cum β = [ak . 2a0 . care nu este p˘trat perfect. 0). . . a 1 1 Din β = − . . . g˘sim c˘ a a d + d este irational p˘tratic ¸ a redus. an−1 . . β > 1. an . De aici. an . Observ˘m c˘ d nu este redus. ¸tim c˘ fractia continu˘ pentru s a ¸ a 1 1 − √ √ =√ √ este an . . fractia continu˘ a lui ¸ a d + d este pur pe√ √ riodic˘. d − d d− d . .3. . . . a2 . . . 2a0 . din d − d ∈ (−1. 2a0 .

Qk pˆn˘ cˆnd obtinem primul indice t a a a ¸ pentru care Pt+1 = P1 ¸i Qt+1 = Q1 . Tinˆnd cont de aceast˘ observatie. a2 = an−1 .4. partea periodic˘ a fractiei continue pentru d este simetric˘ a ¸ a de a a √ la primul termen pˆn˘ la penultimul. se poate verifica prin calcul 23 = 4. Astfel. 1. .3. d− d Din teorema 2.2. a1 . ın ¸ a a Consider˘m ¸irurile: (ak )k≥0 . an . Aplic˘m acest rezultat pentru ¸ a a 1 s ¸ √ √ ¸i obtinem a1 = an . nu este p˘trat perfect.1: √ a0 = [ d]. . a2 . a a a . a2 . . 1. (Qk )k≥0 definite ca ˆ teorema a s ın 2. . Qk+1 pentru k ≥ 0. . Q0 = 1. . n = a este cel 2 mai mic indice pentru care Qn+1 = Qn . an . Pk+1 = ak Qk − Pk . √ Spre exemplu. s ˆ [5]. a2 . an = a1 . De aici. . n = t este cel mai mic In a a a 2 t−1 indice pentru care Pn+1 = Pn . . a1 . 2a0 . . 3. iar dac˘ t este impar. a2 . . . d− d √ Deci.2. 1 √ √ = a1 . se precizeaz˘ c˘ pentru t num˘r par. 2a0 . . P0 = 0. Putem rezuma cele prezentate pentru a descrie un algoritm de dez√ voltare a lui d ˆ fractie continu˘ unde d ∈ N . . Vom calcula termenii Pk . . vom calcula termenii ¸irurilor ¸ a a ¸ s pˆn˘ cˆnd Pn+1 = Pn sau Qn+1 = Qn . 2a0 . 2 d − Pk+1 Qk+1 = . d = a0 . (Pk )k≥0 . .3. a1 . 8 . reprezentarea unui num˘r irational sub forma unei a ¸ fractii continue simple infinite este unic˘. FRACTII CONTINUE PERIODICE ¸ 51 √ √ Observ˘m c˘ d − a a d = 0. Qk a0 + Pk+1 ak+1 = . .

. . . a1 . 2. an . 1. 2a0 ]. 11. 1. . pentru d = 809. . an . 1. 11. a1 . . 1. . d = [a0 . a De exemplu. an−1 . . Q0 = 1 809 − 282 28 + 28 P1 = 28 · 1 − 0 = 28 Q1 = = 25 a1 = 1 25 809 − 222 28 + 22 P2 = 2 · 25 − 28 = 22 Q2 = = 13 a2 = 25 13 2 809 − 17 28 + 17 P3 = 3 · 13 − 22 = 17 Q3 = = 40 a3 = 13 40 2 28 + 23 809 − 23 =7 a4 = P4 = 1 · 40 − 17 = 23 Q4 = 40 7 2 809 − 26 28 + 26 P5 = 7 · 7 − 23 = 26 Q5 = = 19 a5 = 7 19 2 28 + 12 809 − 12 P6 = 2 · 19 − 26 = 12 Q6 = = 35 a6 = 19 35 2 28 + 23 809 − 23 =8 a7 = P7 = 1 · 35 − 12 = 23 Q7 = 35 8 809 − 252 28 + 25 P8 = 6 · 8 − 23 = 25 Q8 = = 23 a8 = 8 23 809 − 212 28 + 21 P9 = 2 · 23 − 25 = 21 Q9 = = 16 a9 = 23 16 809 − 272 28 + 27 P10 = 3 · 16 − 21 = 27 Q10 = = 5 a10 = 16 5 809 − 282 28 + 28 P11 = 11 · 5 − 27 = 28 Q11 = = 5 a11 = 5 5 Din Q10 = Q11 . a deci lungimea perioadei minime este impar˘. FRACTII CONTINUE ¸ √ i) Dac˘ Pn+1 = Pn . 7. 3. 2. 3. a1 . 2. a1 . 2. . 2. 56 =2 =3 =1 =7 =2 =1 =6 =2 =3 = 11 = 11 .52 Atunci: CAPITOLUL 2. P0 = 0. . . a a √ ii) Dac˘ Qn+1 = Qn . an−1 . . . vom obtine: ¸ √ a0 = 809 = 28. 3. . 6. rezult˘: a √ 809 = 28. 7. . an−1 . a deci num˘rul termenilor din perioada minim˘ este par. an . 3. . 2. 6. an−1 . d = [a0 . . 2a0 ].

Dac˘ Qi = Qi+1 atunci returneaz˘ a a [a0 . i ← i + 1. . 53 ˆ [5]. . . . unde a k ∈ N. Q0 ← 1. . 3}. a a √¸ 1. . Dac˘ particulariz˘m. ai .1 ( d ca fractie continu˘) ¸ a INPUT: d ∈ N care nu este p˘trat perfect. Pentru i = 0. pentru un astfel de num˘r prim. ¸ a a . . ai . care a stabilit c˘. dac˘ ecuatia are solutii. 2.3. ai−1 . va avea ˆ a ıntotdeauna 2 solutii ¸ ˆ multimea numerelor naturale. P0 ← 0. a0 ← [ d].3. . . ai−1 . a1 . s s 2. Dac˘ Pi = Pi+1 atunci returneaz˘ a a s s [a0 . FRACTII CONTINUE PERIODICE ¸ Astfel. .1. 2. a1 . ea va avea exact 4(d1 (n) − d3 (n)) a ¸ ¸ solutii ˆ ¸ ıntregi. a1 . . ¸ a Mai mult. 1. n1 este produsul factorilor primi impari de forma 4k + 1 ai lui n iar n2 este produsul celorlalti factori primi impari ai lui n (de forma ¸ 4k + 3). ai . . . a OUTPUT: fractia continu˘ corespunz˘toare.2.2. 2a0 ] ¸i se opre¸te. . Astfel. a a a √ lungimea perioadei fractiei continue corespunz˘toare lui p este impar˘. efectueaz˘: a 2 2. ¸i alegem p. a1 . Metoda de determinare a acestora este ın ¸ datorat˘ lui Lagrange. 2a0 ] ¸i se opre¸te. n = 2k · n1 · n2 . . stabile¸te forma general˘ a numerelor naturale care a s a se pot scrie ca sum˘ de dou˘ p˘trate: a a a Teorem˘ 2. a a s a observ˘m c˘ ne ˆ a a ıncadr˘m ˆ conditiile teoremei. Pi+1 ← ai Qi − Pi . unde ds (n) reprezint˘ num˘rul de divizori ai lui n de a a forma 4k + s. . un num˘r prim de forma 4k + 1. algoritmul propus va avea forma: √ Algoritm 2. O astfel de teorem˘. ecuatia a ın ¸ ¸ x2 + y 2 = p unde p este un num˘r prim de forma 4k +1. ai+1 ← [(a0 + Pi+1 )/Qi+1 ]. 2. Qi+1 ← (d − Pi+1 )/Qi . .4 (Fermat-Euler) Fie n > 1. sunt precizate teoreme de reprezentare pentru numere ˆ In ıntregi. . Ecuatia x2 + y 2 = n are solutii ˆ ¸ ¸ ıntregi dac˘ ¸i numai dac˘ toti a s a ¸ exponentii din descompunerea canonic˘ a lui n2 sunt pari. s ∈ {1.3.4. . 2.3.

54 CAPITOLUL 2. . (5. p˘strˆnd notatiile anterioare. .1. 15. efectueaz˘: a 2 2. a0 ← [ d].3. . i ← i + 1. . Pi+1 ← ai Qi − Pi . 2. . αn+1 · αn+1 = −1. 6]. Din teorema a a 2.3. Atunci. s s 2. Exercitii propuse ¸ 1. 1. a Am obtinut Q10 = Q11 . . Num˘rul αn+1 = [an . 28). ¸ Algoritm 2. 2. obtinem ¸ √ p = [a0 . Pe de alt˘ parte. a OUTPUT: solutiile (x. ¸ Algoritmul prezentat anterior poate fi folosit pentru rezolvarea acestui tip de ecuatii. deci (Pn+1 . . an . ii) [0. Qi+1 ← (d − Pi+1 )/Qi . ai+1 ← [(a0 + Pi+1 )/Qi+1 ]. p = 809 = 4 · 202 + 1 este de forma dorit˘. . . rezult˘ p = Pn+1 + Qn+1 . Qn+1 ) ¸i (Qn+1 .y) ale ecuatiei. Q0 ← 1. 2. a1 . Determinati numerele rationale reprezentate de fractiile continue ¸ ¸ ¸ simple: i) [2. 1]. ¸ ¸ Pentru exemplul anterior. unde n este cel mai mic indice pentru care Qn+1 = Qn . ¸ √¸ 1. . de forma 4k + 1. din P11 = 28. . 7]. ¸i Q11 = 5. solutiile ¸ s ¸ naturale ale ecuatiei x2 + y 2 = 809 sunt (28. a1 . an−1 . a a a ¸ √ √ Pn+1 + p Pn+1 − p αn+1 = iar αn+1 = . Pentru i = 0. 2a0 ]. an . folosind rezultatele anterioare.2 (rezolvarea ecuatiei x2 + y 2 = p) ¸ INPUT: p num˘r prim. 5. Pi+1 ) ¸i se opre¸te. . iii) [3. Qi+1 ). Qn+1 Qn+1 2 2 Astfel.3. 7. Pn+1 ) a s sunt solutiile ecuatiei.3. Dac˘ Qi = Qi+1 atunci returneaz˘ a a (Pi+1 . FRACTII CONTINUE ¸ Deci. . (Qi+1 . 5).] are perioada simetric˘.2. . P0 ← 0. .

. 6. Determinati primele 5 cˆturi partiale ale fractiilor continue simple ¸ a ¸ ¸ pentru: √ e−1 3 2. Fractia continu˘ infinit˘ corespunz˘toare num˘rului e este ¸ a a a a e = [2. a3 . 1. . . .]. . 1. . a a a dac˘ a1 > 1 ¸i [−a0 − 1. . 47. . Fie α = [a0 . 1. . an ]. a1 .]. pentru a1 = 1. √ √ 1 + 3 13 − 2 ii) . Dac˘ α ∈ Q. α > 1. 8. . . 2. 4. ii) 2. . a1 −1. a0 . . Determinati irationalul p˘tratic a c˘rui dezvoltare ˆ fractie con¸ ¸ a a ın ¸ tinu˘ simpl˘ este: a a i) 2. . 5 . a2 .]. . 5 7 29 141 3. Ar˘tati c˘ fractia a ¸ a ¸ a ¸ continu˘ simpl˘ corespunz˘toare lui −α este [−a0 −1. 3. a2 + 1. 1. 2 5. . . . Determinati fractiile continue simple corespunz˘toare numerelor: ¸ ¸ a √ √ √ 1+ 5 . a1 .3. . 1. a2 . i) Determinati primele 8 convergente ale fractiei. . . 5 . FRACTII CONTINUE PERIODICE ¸ 55 2. . a ¸ a a 1 atunci ar˘tati c˘ fractia continu˘ simpl˘ corespunz˘toare lui a ¸ a ¸ a a a este α [0. 1. Determinati fractiile continue simple pentru numerele: ¸ ¸ √ √ √ i) 11. 2π. 1. an ]. 4.] un num˘r irational. Determinati fractiile continue simple corespunz˘toare numerelor ¸ ¸ a rationale: ¸ 6 22 101 −23 . 2. 1. . 1. a 7. ¸ ¸ ¸ a ii) Determinati cea mai bun˘ aproximare a lui e cu numitor mai mic decˆt 100.2. 23. a1 . 1. are fractia continu˘ simpl˘ [a0 . . a s 8. 2 7 9. e+1 6. . . a3 .

56 CAPITOLUL 2. . √ atati c˘. Folosind aceste rezultate. determinati fractiile ¸ ¸ √ √ continue pentru 101. num˘r natural. Fie d ≥ 2. FRACTII CONTINUE ¸ 10. √ ii) d2 − d = d − 1. Ar˘tati c˘: a a ¸ a √ i) d2 − 1 = d − 1. 2d − 2 . 290. Care dintre urm˘torii irationali p˘tratici a ¸ a √ √ √ √ √ 11 − 10 3 + 23 1 + 5. 2. dac˘ d este num˘r natural. 2d . fractia continu˘ simpl˘ Ar˘ ¸ a a a ¸ a a pentru d2 + 1 este d. ˆ numere naturale ecuatiile: ¸ ın ¸ i) x2 + y 2 = 1009. ii) x2 + y 2 = 405. 2d − 2 . 2 + 8. determinati fractiile continue pentru ¸ ¸ √ ¸i 110. 11. √ 99 . s 12. 1. Rezolvati. 4 + 17. Folosind acest rezultat. 9 2 au fractiile continue pur periodice? ¸ 13.

Unele dintre propozitiile urm˘toare au demonstratiile foarte simple ¸ a ¸ ¸i sunt propuse cititorului ca exercitiu. Propozitie 3. multimea Z este ˆ artit˘ ˆ clase de ¸ ımp˘ ¸ a ın echivalent˘ unde clasa de echivalent˘ a num˘rului ˆ ¸a ¸a a ıntreg a este format˘ a din toate numerele ˆ ıntregi de forma a + km. ¸ a a atunci a ≡ b (mod m) dac˘ ¸i numai dac˘ exist˘ k num˘r ˆ as a a a ıntreg pentru care a = b + km. b ∈ Z iar m ≥ 2 este un num˘r natural.1. metrul modulo 1000 mm. s ¸ Propozitie 3.CAPITOLUL 3 Congruente ¸ 3. unde numerele congruente cu 0 sunt ¸a numite numere pare iar cele congruente cu 1.1 Notiuni generale ¸ Definitie 3. calendarul modulo 12 luni sau mo¸ a dulo 7 pentru zile. De exemplu. ¸ Congruentele apar foarte des ˆ viata de zi cu zi.1 Dac˘ a. a a ˆ In acest caz. 57 . ceasul ¸ ın ¸ functioneaz˘ modulo 12 sau 24 ore.1.1 Fie m un num˘r natural nenul ¸i a. Spunem c˘ a este congruent cu b modulo m dac˘ m | a − b. Congruenta cu doi este ¸ cel mai simplu tip de congruent˘. etc.1. cu k ∈ Z .2 Relatia de congruent˘ este o relatie de echivalent˘ pe ¸ ¸ ¸a ¸ ¸a multimea numerelor ˆ ¸ ıntregi Z. Conform acestui rezultat. b dou˘ numere ¸ a s a ˆ ıntregi. impare. vom folosi notatia a ≡ b (mod m).

2) Pentru m natural impar.− . ˆ valoare absolut˘. Propozitie 3. modulo s ¸ ın a m. . . . c numere ˆ a s ıntregi unde (c. .3 Fie a. a ¸ Spre exemplu: 1) {0. 1.2 Un sistem complet de resturi modulo m este o multime ¸ ¸ de numere ˆ ıntregi astfel ˆ at orice ˆ ıncˆ ıntreg este congruent modulo m cu un singur num˘r din multime. 3) ac ≡ bc (mod m). m) = 1.1. Dac˘ ac ≡ bc (mod m). } 2 2 2 2 se nume¸te multimea celor mai mici resturi.1. . . ¸ a Cum d = (c. . m − 1} se nume¸te multimea celor mai mici resturi pozitive s ¸ modulo m.1. a d Demonstratie.58 CAPITOLUL 3. b numere ˆ ¸ ıntregi. m num˘r natural nenul. adic˘ m | a − b. c numere ˆ ¸ a s ıntregi m unde (c. obtinem c = dc . Propozitie 3. ¸i In a ¸ s anume: Corolar 3. ¸ a s 1) a ± c ≡ b ± d (mod m). b. Rezult˘ ¸ a c (a − b) = km . au loc relatiile: ¸ 1) a + c ≡ b + c (mod m). b. m ) = 1. atunci a ≡ b (mod m). Din ac ≡ bc (mod m). a Propozitie 3. 1.5 Dac˘ a ≡ b (mod m) ¸i c ≡ d (mod m). 2) a − c ≡ b − c (mod m). 0.4 Fie m un num˘r natural nenul ¸i a. . . . exist˘ k ∈ Z astfel ca c(a−b) = km. CONGRUENTE ¸ Definitie 3. sistemul complet de resturi {− m−1 m−3 m−3 m−1 . apare mai des un caz particular al acestei propozitii. .1. pentru orice ˆ ıncˆ ıntreg c. −1. . m) = d. a ˆ practic˘. atunci.1. . .1 Fie m un num˘r natural nenul ¸i a. m). asta fel ˆ at a ≡ b (mod m). Atunci. m = dm cu (c . atunci a ≡ b (mod ). Dac˘ ac ≡ bc (mod m).

arm + b} este un sistem complet de resturi modulo m. . se scrie n ˆ baza 2. pentru j = k. a Propozitie 3. a ≡ b (mod m2 ). Demonstratie. O consecint˘ imediat˘ a acestei propozitii este dat˘ de: ¸a a ¸ a a a Corolar 3. Ca o prim˘ aplicatie a congruentelor. . Tinˆnd cont de aceast˘ relatie. Propozitie 3. Dup˘ a a s a a . . . Ea este denumit˘ metoda ridic˘rii repetate la p˘trat ¸i reducerii modulo m. . b2 k ak .7 Dac˘ a ≡ b (mod m). m sunt numere naturale. {ar1 + b. . r2 . Din corolarul 3. . atunci a ≡ b (mod [m1 . prezent˘m o metod˘ rapid˘ a ¸ ¸ a a a de calcul pentru bn (mod m) unde b. calcul˘m ˆ ai resturile modulo m ale lui ¸ a a ¸ a ıntˆ k b. a ¸ Pentru ˆ ınceput. . .8 Dac˘ a ≡ b (mod m1 ).1. b2 . .1 rezult˘ rj ≡ rk (mod m). . . ar2 + b. a ≡ b (mod m2 ). . . . . a a a s algoritmul presupunˆnd doar ridic˘ri la p˘trat ¸i ˆ a a a s ınmultiri repetate cu ¸ numere naturale mai mici decˆt modulul. .1. b2 ridicˆnd succesiv la p˘trat ¸i reducˆnd modulo m. pen¸ a tru orice num˘r natural k. a1 a0 )2 . m2 .1. . atunci a a arj ≡ ark (mod m).1. Fie n = (ak ak−1 . . . . . Cum multimea este format˘ din m elemente.1. atunci ak ≡ bk (mod m). . mk . . ceea a ce este fals. · mk ). . ın Atunci k b = bj=0 n 2 j aj = b2 0 a0 b2 1 a1 .6 Dac˘ {r1 . atunci a a ≡ b (mod m1 · m2 · . ¸ a a ≡ b (mod mk ). n. fiind deosebit a a a de eficient˘ pentru valori mari ale lui n ¸i m. rm } este un sistem complet de res¸ a turi modulo m iar a ∈ N cu (a. . . m) = 1.2 Fie numerele naturale nenule m1 . atunci. . dou˘ cˆte dou˘ relativ prime. NOTIUNI GENERALE ¸ 2) ac ≡ bd (mod m).. m2 .3.1. este suficient ¸ ¸ a s˘ ar˘t˘ c˘ oricare dou˘ dintre acestea nu sunt congruente modulo m. . a ≡ b (mod mk ). . este des folosit˘ ˆ multe a s a ın protocoale criptografice care implic˘ exponentieri modulare. 59 Propozitie 3. . a Dac˘ a ≡ b (mod m1 ). Aceast˘ metod˘. a aa a a Dac˘ presupunem c˘ arj + b ≡ ark + b (mod m). . b4 . mk ]). pentru orice b ∈ Z. .

pe pa¸i. poart˘ numele de congruent˘ liniar˘ ˆ a ¸a a ıntr-o variabil˘. a Vom ar˘ta c˘ studiul lor se reduce la cel al ecuatiilor diofantice ˆ dou˘ a a ¸ ın a variabile. Dac˘ n = 0. observ˘m c˘. 3. a as ¸ .2 Congruente liniare ¸ ax ≡ b (mod m) (3. atunci N ← A · N mod m a 5. returneaz˘ N. tabelul urm˘tor pune ˆ evident˘. atunci ax ≡ ax1 (mod m) adic˘ ax1 ≡ b (mod m) a ceea ce arat˘ c˘ ¸i x1 este solutie pentru ( 3.1 (Ridicare repetat˘ la p˘trat) a a INPUT: numerele naturale b. Pentru j = 1. ˆ ınmultim resturile modulo m ale lui b2 cu aj = 1 ¸i reducem ¸ s modulo m. k calculeaz˘: a 4. . m. . .1) ıntˆ a a a ¸ ¸ iar x ≡ x1 (mod m). 52 j aj (mod 1234). atunci pune N ← b a 4. OUTPUT: bn (mod m) 1. am notat: j A = 52 (mod 1234) ¸i s N = 5a0 52 a1 . la fiecare pas j.1. returneaz˘ N ¸i se opre¸te. Dac˘ a0 = 1. . .1 O congruent˘ de forma ¸ ¸a unde x ∈ Z este necunoscuta. CONGRUENTE ¸ j aceea. A ← b. n.1) Definitie 3. a 3. N ← 1. dac˘ x este solutie a congruentei ( 3. . A ← A2 mod m 4. Dac˘ aj = 1. Mai ˆ ai.1).2. a a s s 2.1.2. calculul efeca ın ¸a s tuat pentru 5596 (mod 1234) : j aj A N 0 0 5 1 1 0 25 1 2 1 625 625 3 0 681 625 4 1 1011 67 5 0 369 67 6 1 421 1059 7 0 779 1059 8 0 947 1059 9 1 925 1013 unde. Algoritm 3. De exemplu.60 CAPITOLUL 3.

deci congruenta are solutii. Deci.3. ¸ Spre exemplu. y = y0 + t unde t este un a d d m parametru ˆ ıntreg. ¸ as a Presupunem c˘ exist˘ solutii pentru congruenta ( 3. congruenta ( 3. obtinem c˘ a ¸ a t ≡ t (mod m).1. m m Dac˘ x1 ≡ x2 (mod m). solutiile congruentei ( 3. Pentru a m m aceasta.6.1. b ∈ Z.1) este echivalent˘ cu ax−mk = b.4.1 Fie a. stabilim cˆnd dou˘ solutii x1 = x0 + t1 ¸i x2 = x0 + t2 sunt a a ¸ s d d congruente modulo m.1) are solutii dac˘ ¸i numai dac˘ exist˘ un ¸ as a a ˆ ıntreg y astfel ˆ at ax − my = b. a a d d un sistem complet de solutii necongruente modulo m se obtine din x = ¸ ¸ m x0 + t cˆnd t parcurge un sistem complet de resturi modulo d. CONGRUENTE LINIARE ¸ 61 Teorem˘ 3. m) = d. ( 3.1) ıncˆ ¸ va avea solutii dac˘ ¸i numai dac˘ d | b.1: a ın k rk uk vk qk 0 6 1 0 1 -21 0 1 2 -15 1 1 -1 3 -6 -1 0 1 4 -3 3 1 2 5 0 -7 -2 2 .1. Deci. Fie (x0 . y0 ) o a a ¸ ¸ solutie particular˘ a ecuatiei diofantice ata¸ate.1). m = . ¸ ¸ Demonstratie. Congruenta ( 3. Rezolv˘m ecuatia 6x − 21y = 15 ¸ a ¸ folosind metoda prezentat˘ ˆ teorema 1. a a ¸ a Se observ˘ c˘ (6. 21) = 3 ¸i 3 | 15. ˆ acest caz. s˘ rezolv˘m congruenta liniar˘ 6x ≡ 15 (mod 21).2. Din teorema 1. cu ¸ ¸ d t ∈ Z .6. pentru ¸ ¸ a un num˘r ˆ a ıntreg k. cum ¸ . Atunci. algoritmul de ¸ ın rezolvare a acestui tip de congruente se va reduce la algoritmul 1. Deci.6. rezult˘ c˘ t1 ≡ t2 (mod d). Astfel.1) sunt x = x0 + t. Ea va a a s ¸ ¸ avea 3 solutii necongruente modulo 21. a d Aceast˘ teorem˘ arat˘ c˘ rezolvarea congruentelor liniare se reduce a a a a ¸ la rezolvarea ecutiilor diofantice prezentate ˆ 1. Folosind d 1 d 2 m m propozitia 3. solutia general˘ ¸ a ¸ s ¸ a m a a acesteia este dat˘ de x = x0 + t. m natural nenul ¸i (a.2. Congruenta a s ¸ ax ≡ b (mod m) are solutii dac˘ ¸i numai dac˘ d | b.6. Vedem cˆte dintre acestea nu sunt congruente modulo m. ¸ a s a In congruenta are exact d solutii necongruente modulo m.

putem s˘ ˆ ¸ a ınmultim congruenta ¸ ¸ cu 4 care este inversul lui 2 modulo 7 ¸i vom obtine ca solutie final˘ s ¸ ¸ a x ≡ 6 (mod 7). ¯ ¸ s Spre exemplu: x ≡ 9 (mod 31) este solutie a congruentei 7x ≡ 1 (mod 31).2 Fie a ∈ Z ¸i m ∈ N∗ numere relativ prime. x2 ≡ 13 (mod 21). ea este echivalent˘ cu congruenta t ¸ a ¸ 2x ≡ 5 (mod 7). 15 = 6(−15) − 21(−5).1. y0 = −5 este o solutie particular˘ a ecuatiei.1. v cu au + mv = d a s folosind algoritmul 1. m) = 1. s s 3. a Dac˘ cunoa¸tem inversul lui a modulo m.1. a s Definitie 3.4. 2. ¸ a ¸ Atunci. orice ¸ ¸ num˘r congruent cu 9 modulo 31 este invers pentru 7 modulo 31. Returneaz˘ u. m. Calculeaz˘ d = (a. a Algoritm 3. Consider˘m ˆ continuare congruentele de forma ax ≡ 1 (mod m).2. 2}. x0 = −15.2. ˆ final obtinem: In ¸ x1 ≡ 6 (mod 21).1 (Invers modulo m) INPUT: numerele naturale a.2.2. Astfel. ¸ a .62 CAPITOLUL 3. Folosind propozitia 3. pentru congruenta rezolvat˘ anterior. ¸ ¯ Astfel. atunci returneaz˘ a (mod m) nu exist˘ a a¯ a ¸i se opre¸te. Solutiile necongruente modulo 21 ale congruentei initiale sunt: ¸ ¸ ¸ x1 ≡ −15 + 7t (mod 21). CONGRUENTE ¸ Obtinem astfel: ¸ −3 = 6(3) − 21(1) de unde. a ın ¸ Din teorema 3. acest tip de congruent˘ are solutii dac˘ ¸i numai ¸a ¸ a s dac˘ a ¸i m sunt numere relativ prime. O solutie ¸ s ¸ a a congruentei ax ≡ 1 (mod m) se nume¸te invers modulo m al lui a. 6x ≡ 15 (mod 21). Prin ˆ ınmultirea congruentei cu a. putem rezolva congruenta a s ¸ ax ≡ b (mod m) unde (a. m) ¸i u. OUTPUT: a (mod m) dac˘ exist˘. 1. unde t ∈ {0. Dac˘ d > 1. Observ˘m c˘ acest˘ solutie este echivalent˘ cu cele trei a a a ¸ a solutii necongruente modulo 21 g˘site anterior. ¯ a a 1.3. x3 ≡ 20 (mod 21). vom ¸ ¸ ¯ obtine x ≡ ab (mod m). dac˘ ¸ a a ¸inem cont de propozitia 3.2.

3. SISTEME DE CONGRUENTE ¸ 63 S˘ vedem cˆnd un ˆ a a ıntreg este propriul s˘u invers modulo un num˘r a a prim. ımp˘ ¸ s . s Teorem˘ 3. . 1 ≤ k ≤ r.. s aa a ¸ Pentru aceasta.. . a ≡ ±1 (mod p). . dou˘ cˆte dou˘. m2 ..2. Atunci.1 (Teorema a     (S)    chinezeasc˘ a resturilor) Sistemul a x ≡ a1 (mod m1 ) x ≡ a2 (mod m2 ) . Mk Mk ≡ 1 (mod mk ).. . mk | Mj a pentru orice j = k... Pentru fiecare j = k. Fie Mk un invers al lui ¸ a Mk modulo mk . a ¸ a s este propriul s˘u invers modulo p dac˘ ¸i numai dac˘ a ≡ ±1 (mod p). g˘sit˘ ˆ China aproximativ ˆ anul 300 e. . mk ) = 1.. fiecare n = 0.. Deci.. + ar Mr Mr ¸i ar˘t˘m c˘ este solutie pentru sistem.... Atunci. Deci. consider˘m un k fixat... mr .1 Fie Mk = ¸ x = a1 M1 M1 + a2 M2 M2 + . b prime ˆ a ıntre ele. 1. Propozitie 3. mr .3..3. .. mk (mj . x ≡ ar (mod mr ) are solutie unic˘ modulo M = m1 m2 . a · a ≡ a2 ≡ 1 (mod p) este echivalent cu p | a2 − 1 adic˘ ¸ a p | a − 1 sau p | a + 1. . mk ) = 1. pentru m1 .. . ab − 1 are o pereche distinct˘ a de resturi la ˆ artirea cu a ¸i cu b. Mj ≡ 0 (mod mk ) pentru j = k.. . a a a M pentru 1 ≤ k ≤ r.. .. Obtinem astfel c˘ (Mk . . Obtinem ¸ x ≡ ak Mk Mk ≡ ak (mod mk )..3.. nu¸ a mere naturale relativ prime. Not˘m a Demonstratie.3 Sisteme de congruente ¸ Vom studia dou˘ tipuri de sisteme de congruente liniare ¸i anume sisteme a ¸ s de dou˘ sau mai multe congruente liniare ˆ a ¸ ıntr-o variabil˘ cu diferite a module ¸i sisteme de congruente liniare ˆ mai multe variabile dar toate s ¸ ın cu acela¸i modul. 1 Forma original˘ a teoremei. .. a as a Demonstratie. era a a a ın ın aceea c˘ pentru a...1 Fie p un num˘r prim ¸i a ∈ Z prim cu p. Astfel.n..

Pune x ← 0. a 2M1 ≡ 1 (mod 3). . s mk 2. de unde M1 ≡ 2 (mod 3). . Din propozitia 3. Algoritmul de rezolvare a sistemelor corespunz˘toare teoremei chinea ze¸ti a resturilor urm˘re¸te demonstratia teoremei ¸i este atribuit lui s a s ¸ s Gauss. a . 3. mr dou˘ cˆte dou˘ relativ a a a prime ¸i a1 . problem˘ considerat˘ un exemplu clasic al a a a teoremei chineze¸ti a resturilor: s Determinati un num˘r care ˆ artit la 3 d˘ restul 2. . deci orice dou˘ ¸ a a a solutii ale sistemului sunt congruente modulo M. ¸ a ımp˘ ¸ a ımp˘ ¸ restul este 3 iar ˆ artit la 7 d˘ restul 2. Calculeaz˘ M = m1 m2 . Analog.1 (Teorema chinezeasc˘ a resturilor) a INPUT: numerele naturale m1 . . . x ← x + ak Mk Mk (mod M ).1. OUTPUT: Solutia x (mod M ) a sistemului (S). ar˘t˘m c˘ x este singura solutie a sistemului modulo M.8 rezult˘ acum c˘ x1 ≡ x2 (mod M ).2.1. x1 ≡ x2 (mod mk ) pentru 1 ≤ k ≤ r. M2 ≡ 1 (mod 5) rezult˘ din 21M2 ≡ 1 (mod 5). ¸ Solutia sistemului este: ¸ x = 2 · 35 · 2 + 3 · 21 · 1 + 2 · 15 · 1 = 233 ≡ 23 (mod 105). ¸ 1. CONGRUENTE ¸ ˆ final. a La fel obtinem M3 ≡ 1 (mod 7). ar numere ˆ s ıntregi. . Astfel. M1 = 3 = 35. . In aa a ¸ Consider˘m x1 . ¸ Spre exemplu. Mk = ¸i Mk mod mk . M2 = 5 = 21.3. . a a ¸ Atunci. M3 = 7 = 15. Algoritm 3. . . Returneaz˘ x. . s˘ rezolv˘m urm˘toarea problem˘ g˘sit˘ ˆ Manualul a a a a a a ın de Matematic˘ al lui Sun Zi.64 CAPITOLUL 3. . Pentru k = 1. a 2. Pentru determinarea lui M1 rezolv˘m 35M1 ≡ 1 (mod 3). . la ˆ artirea la 5. . Problema o putem transcrie ımp˘ ¸ a sub forma sistemului:   x ≡ 2 (mod 3) x ≡ 3 (mod 5) (S1 )  x ≡ 2 (mod 7) 105 105 105 M = 3 · 5 · 7 = 105. x2 dou˘ solutii ale sistemului (S). r calculeaz˘: a M 2. mr .

1 Fie A. ˆ care modulule nu trebuie s˘ fie neap˘rat dou˘ cˆte dou˘ prime ın a a a a a ˆ ıntre ele. Obtinem x = 15u + 8. d. m) = 1. B ∈ Mk. Atunci. Definitie 3. b. . j ∈ {1. Ea poart˘ ¸ a numele de metod˘ iterativ˘. vom scrie A ≡ B (mod m). cu v ∈ Z . . Mai r˘mˆne ¸ a a s˘ vedem pentru ce valori ale lui u se verific˘ ¸i ultima congruent˘ a a a s ¸a sistemului.n (Z).3. a ˆ final. u = 7v + 1. ˆ In acest caz. este de a rezolva succesiv congruentele din sistem. Pentru studiul acestora vom folosi matrice p˘tratice cu elemente nua mere ˆ ıntregi. SISTEME DE CONGRUENTE ¸ 65 O alt˘ metod˘ de rezolvare a unui sistem de congruente de forma lui a a ¸ (S). astfel ˆ at (∆. dar acela¸i modul. . . ¸a a a Aceste numere trebuie s˘ verifice congruenta urm˘toare din sistem. . Astfel.3. prima congrua a ent˘ arat˘ c˘ x = 3t + 2. x = 105v + 23 ≡ 23 (mod 105). k}. t ≡ 2 (mod 5) de unde t = 5u + 2 cu u num˘r ˆ a ıntreg. (S1 ).3. n}. adic˘ a ¸ a a 3t + 2 ≡ 3 (mod 5) sau 3t ≡ 1 (mod 5). dac˘ consider˘m sistemul anterior. a a De exemplu. s Pentru ˆ ınceput consider˘m cazul ˆ care sistemul este format din a ın dou˘ congruente cu dou˘ necunoscute: a ¸ a (S2 ) ax + by ≡ e (mod m) cx + dy ≡ f (mod m) cu a. . Spunem c˘ matricele A = (aij ) ¸ a ¸i B = (bij ) sunt congruente modulo m dac˘ aij ≡ bij (mod m). e. In Vom considera acum sisteme de mai multe congruente liniare cu mai ¸ multe necunoscute. 15u + 8 ≡ 2 (mod 7) implic˘ u ≡ 1 (mod 7). unde t ∈ Z . Putem extinde modul de rezolvare la un sistem de n congruente liniare ¸ cu n necunoscute. ∆ = ad − bc. ıncˆ Propozitie 3. pentru s a orice i ∈ {1. m ∈ N ∗ . f ∈ Z . . c. . .3.1 Sistemul (S2 ) are solutie unic˘ modulo m ¸i anume: ¸ ¸ a s ¯ x ≡ ∆(de − bf ) (mod m) ¯ y ≡ ∆(af − ce) (mod m).

3. din a B1 A ≡ B2 A ≡ In (mod m) rezult˘ B1 AB1 ≡ B2 AB1 (mod m) ¸i astfel.66 De exemplu. ¸ a a a Invers. CONGRUENTE ¸ 5 13 −2 2 (mod 10). a a a ¯ propozitia anterioar˘ asigur˘ c˘ BA ≡ In (mod m). ¸ s ıncˆ Atunci.l (Z) a¸a ˆ at A ≡ B (mod m). ˆ continuare prezent˘m cˆteva propriet˘¸i ale matricelor. B ∈ Mk. In a a at Propozitie 3. a ¯ ¯ Dac˘ consider˘m c˘ A este inversa lui A modulo m iar B ≡ A (mod m).3. a . atunci.2 Dac˘ A. Propozitie 3. 15 8 3 12 ≡ CAPITOLUL 3. este inversa matricei a b ∈ M2 (Z) astfel ˆ at ıncˆ c d ∆ = det(A) = ad − bc este relativ prim cu m.3 Fie A = ¸ Presupunem acum c˘ A ∈ Mn (Z ) iar cu A∗ not˘m matricea ada a junct˘. A ∈ Mn (Z) verific˘ ¸ ¯ ¯ AA ≡ AA ≡ In (mod m).k (Z). matricea A = ∆ este inversa matricei A modulo −c a m. din 2 5 3 1 3 1 3 2 rezult˘ c˘ a a 3 1 3 2 3 3 2 3 1 2 5 1 ≡ 1 0 0 1 1 0 0 1 2 3 (mod 4) (mod 4) 5 1 modulo 4.2 Fie A. pentru orice matrice C ∈ Ml.n (Z) ¸i orice D ∈ Mp. De exemplu. dac˘ B1 . B2 sunt inverse ale matricei A modulo m. d −b ¯ ¯ Atunci.3. au s loc relatiile AC ≡ BC (mod m) ¸i DA ≡ DB (mod m). a s B1 ≡ B2 (mod m). atunci spunem c˘ A este inversa matricei A modulo m. ¸ s ¯ a a Definitie 3.

. + ann xn ≡ bn (mod m) Sistemul poate fi scris sub form˘ a matriceal˘ AX ≡ B (mod m) unde a  x1 A = (aij ) ∈ Mn (Z ). + a2n xn ≡ b2 (mod m) (Sn )  .. Atunci exist˘ A... Prin ˆ ınmultire cu aceasta.. .. ¸ S˘ rezolv˘m de exemplu sistemul: a a   x + 2y + 3z ≡ 2 (mod 7) x + 2y + 5z ≡ 1 (mod 7)  x + 4y + 6z ≡ 2 (mod 7) . obtinem ¸ ¸ ¯ ¯ AB ≡ AAX ≡ X (mod m) ca solutie a sistemului (Sn ).4 Pentru A ∈ Mn (Z) ¸i m ∈ N∗ cu det(A) = ∆ ¸i m ¸ s s ¯ ¯ relativ prime...3........ a s a ¯ inversa modulo m a lui A. ..............  ∈ Mn.....  ∈ Mn.. .. X =  . SISTEME DE CONGRUENTE ¸ 67 Propozitie 3. . ¸    6 0 4 −8 0 4 A∗ =  −1 3 −2  ≡  6 3 5  (mod 7)..3....   1 2 3 De exemplu...... 2 5 0 2 −2 0 Rezult˘ astfel: a     2 0 6 30 0 20 ¯ A = 5A∗ =  30 15 25  ≡  2 1 4  (mod 7)....   an1 x1 + an2 x2 + .....1 (Z ).. . consider˘m matricea A =  1 2 5  ¸i vrem s˘-i a s a 1 4 6 determin˘m inversa modulo 7. matricea A = ∆A∗ este inversa lui A modulo m. a ¯ ∆ = −4 ≡ 3 (mod 7).3.... + a1n xn ≡ b1 (mod m)   a21 x1 + a22 x2 + . bn Presupunem c˘ ∆ = det(A) ¸i m sunt relativ prime... .1 (Z ) ¸i s xn   b1 B =  ... . Obtinem ∆ ≡ 5 (mod 7). ...... 3 4 0 10 25 0 Putem s˘ abord˘m acum rezolvarea unui sistem de congruente de a a ¸ forma:   a11 x1 + a12 x2 + .... .... .

Deci. pentru orice 1 ≤ x ≤ p−1 exist˘ invers modulo p.4. Pentru a a a a a a testa dac˘ n este prim. x = x dac˘ ¸i numai dac˘ x ≡ ±1 (mod p).4. In Reciproca teoremei lui Wilson este adev˘rat˘: a a Teorem˘ 3. S˘ reducem la absurd ¸i s˘ presupunem c˘ n este un ¸ a s a a num˘r compus. Din propozitia a ¸ 3. atunci (p − 1)! = 1 ≡ −1 (mod 2). (p − 1)! ≡ 1 · (p − 1) ≡ −1 (mod p).1 (Wilson) Dac˘ p > 1 este un num˘r prim. Observ˘m c˘ aceast˘ teorem˘ ofer˘ un test de primalitate. a | (n − 1)!.1 Congruente speciale ¸ Teorema Wilson (p − 1)! ≡ −1 (mod p).68 Observ˘m c˘ a a care am calculat atunci ca fiind:    x 2 ¯  y  = A 1 z 2 CAPITOLUL 3. De aici. acest test este impracticabil a deoarece necesit˘ prea multe operatii binare. Demonstratie. · (p − 3) · (p − 2) ≡ 1 (mod p).2 Dac˘ n este un num˘r natural astfel ˆ at a a a ıncˆ (n − 1)! ≡ −1 (mod n). a Din n | (n − 1)! + 1. n = a · b unde 1 < a. ˆ final. Cu toate c˘ pare foarte simplu. Teorem˘ 3. Dac˘ p = 2. a a Atunci. Con¸ a sider˘m acum p > 2 num˘r prim. a ¸ . Solutia sistemului se obtine ¸ ¸      16 2  =  13  ≡  6  (mod 7). . atunci n este prim. calcul˘m (n − 1)! + 1 ¸i vedem dac˘ el este a a s a divizibil cu n. a | 1. Atunci.4. . ceea ce a a s ın este fals. Deci.2. 10 3 3. 2 · 3 · . CONGRUENTE ¸ matricea asociat˘ sistemului este matricea A pentru a deja inversa modulo 7. b < n. rezult˘ c˘ a | (n − 1)! + 1 ¸i. mai putin nua ¸ p−3 merele 1 ¸i p−1 astfel ˆ at produsul celor s ıncˆ perechi s˘ fie congruent a 2 cu 1 modulo p.1. atunci a a a Demonstratie. rezult˘ c˘ ¯ a s a a a putem grupa numerele naturale nenule mai mici decˆt p.4 3. ˆ final.

pena tru j = k. Observ˘m a c˘ p ka pentru 1 ≤ k ≤ p − 1. . p) = 1. {a. Atunci. Dac˘ p a. .4. . . Astfel. 2a. De aici. . num˘r a a a prim. (p − 1)a} reprezint˘ un sistem complet de a resturi modulo p din care a fost exclus 0.4. . de unde. .1 Dac˘ p ≥ 2 este un num˘r prim. 2a. Cum ((p − 1)!. . a · 2a · .4. folosind teorema. p ≥ 2 num˘r prim cu a p a. · (p − 1)a ≡ 1 · 2 · . Demonstratie. pentru orice num˘r ˆ a ıntreg a prim cu p. . din mica teorem˘ a lui Fermat. a ın Teorem˘ 3. Corolar 3. Dac˘ p | a.3. solutia congruentei liniare ax ≡ b (mod p) este ¸ ¸ x ≡ ap−2 b (mod p). ap ≡ a (mod p). . b sunt numere ˆ a ıntregi. ap−1 ≡ 1 (mod p). .2 Dac˘ a. (p−1)a. dac˘ dorim a s˘ calcul˘m restul lui 8110 modulo 13. ja = ka (mod p). Demonstratie.4 Pentru p ≥ 2. atunci a a ap−2 este inversul modulo p al lui a. Consider˘m numerele ˆ ¸ a ıntregi a. num˘r a a s a ˆ ıntreg.4. rezult˘ c˘ ¸ a a a a ap−1 ≡ 1 (mod p). CONGRUENTE SPECIALE ¸ 69 3.4.3 (Mica Teorem˘ a lui Fermat) Fie p ≥ 2. obtinem c˘ a a ¸ a 110 12 9 2 8 = 8 · 8 ≡ 64 ≡ 12 (mod 13). a O prim˘ aplicatie a micii teoreme a lui Fermat const˘ ˆ detera ¸ a ın minarea unor resturi modulo p pentru puteri. are loc relatia: ¸ ap ≡ a (mod p). . num˘r prim ¸i pentru orice a. rezult˘ ˆ final ap−1 ≡ 1 (mod p). De exemplu. Teorema 3. · (p − 1) (mod p).2 Mica Teorem˘ a lui Fermat a Teorem˘ 3.3 ofer˘ astfel o nou˘ metod˘ de rezolvare a congruentelor a a a ¸ liniare. ap−1 (p − 1)! ≡ (p − 1)! (mod p). De asemenea.4. a ∈ Z cu p a. Deci. .4. atunci ap ≡ a ≡ 0 (mod p). O alt˘ aplicatie folositoare a acestei teoreme este urm˘toarea: a ¸ a Corolar 3.

ar2 . a ∈ Z cu (a. . {1. r2 . .4. resturile modulo n ale numerelor ar1 . 9} este un sistem redus de resturi modulo 10.3 Teorema lui Euler Definitie 3.5 (Euler) Fie a ∈ Z.4 Dac˘ a. Deci. rφ(n) (mod n). Conform propozitiei anterioare. . CONGRUENTE ¸ 3. Corolar 3. b sunt numere ˆ a ıntregi. solutia congruentei liniare ax ≡ b (mod n) este ¸ ¸ x ≡ aφ(n)−1 b (mod n). . Demonstratie. . putem construi un nou sistem redus de ¸ resturi modulo n. eventual ˆ alt˘ ordine. urm˘toarele corolare ın a sunt imediate: Corolar 3. ar2 . De exemplu. . ar2 . Fie {r1 . {ar1 . n ≥ 2 num˘r natural cu a (a.6. aφ(n) r1 r2 . asem˘n˘tor cu a a rezultatul propozitiei 3. Aplicˆnd corolarul 3. rφ(n) ≡ r1 r2 . poart˘ numele de a s a functia lui Euler. 7. . rφ(n) } un sistem redus de resturi mo¸ dulo n ¸i a ∈ Z.1 Functia φ : N → N.70 CAPITOLUL 3. . . .1. .2 Un sistem redus de resturi modulo n este o multime de ¸ ¸ φ(n) numere ˆ ıntregi. 3. n) = 1. Atunci. a ¸ La fel ca ˆ cazul micii teoreme a lui Fermat. ¸ Definitie 3. . rφ(n) } un sistem redus de resturi modulo ¸ n. . . .4.1 Fie {r1 . .4. . rφ(n) .4. . obtinem aφ(n) ≡ 1 (mod n). a aφ(n) ≡ 1 (mod n).4.1. definit˘ prin φ(n) este num˘rul ¸ ¸ a a numerelor naturale mai mici decˆt n ¸i prime cu n. n) = 1. arφ(n) } este tot un s sistem redus de resturi modulo n. toate prime cu n ¸i dou˘ cˆte dou˘ necongruente s a a a modulo n.4. n ∈ N cu (a. r2 . prim cu n. . . arφ(n) } este un sistem ¸ redus de resturi modulo n. Atunci. . . arφ(n) sunt r1 . . Pornind de la un sistem redus de resturi modulo n. {ar1 . . .1. . Propozitie 3. r2 .3 Dac˘ n ≥ 2 este un num˘r natural. O generalizare a micii teoreme a lui Fermat este dat˘ de Euler: a Teorem˘ 3.4. a a atunci aφ(n)−1 este inversul modulo n al lui a. . ın a Atunci. . n) = 1. .

vii) 103x ≡ 612 (mod 676).4. s 5.  x ≡ 4 (mod 7) . ii) 4x ≡ 3 (mod 12). demonstrati c˘ toate solutiile congruentei sunt: ¸ a ¸ ¸ x ≡ ±1 (mod 2k ) ¸i x ≡ ±(1 + 2k−1 ) (mod 2k ). x ≡ ±1 (mod pk ). iii) 9x ≡ 12 (mod 21). a ¸ 4. s 2. Fie p num˘r prim impar ¸i k num˘r natural nenul. Fie congruenta x2 ≡ 1 (mod 2k ). are dou˘ ¸a ¸ a a solutii necongruente. Rezolvati urm˘toarele sistemele: ¸ a   x ≡ 1 (mod 5) x ≡ 6 (mod 7) x ≡ 3 (mod 6) x ≡ 2 (mod 6)  x ≡ 11 (mod 17)    x ≡ 2 (mod 11)    x ≡ 3 (mod 15) x ≡ 6 (mod 13) x ≡ 4 (mod 11)  x ≡ 5 (mod 12)   x ≡ 1 (mod 14) . vi) 15x ≡ 9 (mod 25). cu k ≥ 1. folosind metoda ridic˘rii repetate la p˘trat: ¸ a a 2321 (mod 47) ¸i 322 (mod 23). Ar˘tati c˘ aceast˘ ¸ a ¸ a a congruent˘ are solutie unic˘ pentru k = 1 iar pentru k = 2. Rezolvati urm˘toarele congruente liniare: ¸ a ¸ i) 3x ≡ 4 (mod 7). Ar˘tati c˘ a s a a ¸ a x2 ≡ 1 (mod pk ) are exact dou˘ solutii necongruente.3. CONGRUENTE SPECIALE ¸ Exercitii propuse ¸ 1. viii) 987x ≡ 610 (mod 1597). 71 3. ¸ Pentru k > 2. ix) 27x ≡ 72 (mod 900). v) 17x ≡ 14 (mod 21). Determinati. iv) 27x ≡ 25 (mod 256).

folosind mica teorem˘ a lui Fermat. 13. 9. Determinati 2326 (mod 17). Fie p. Pentru a ∈ Z ¸i p. q dou˘ numere prime distincte. 3. m2 ]. num˘r prim. ¸i 7.)  2x + 2y + z ≡ 4 (mod 6) 10. Folosind acest rezultat. . Ar˘tati c˘ a a ¸ a pq−1 + q p−1 ≡ 1 (mod pq). s a 8. m2 ) | a1 − a2 . ¸ a 11. G˘siti un num˘r care este multiplu de 11 ¸i ˆ artit la fiecare a ¸ a s ımp˘ ¸ dintre numerele 2. 5. ar˘tati c˘: s a a ¸ a p | ap + (p − 1)!a. G˘siti ultima cifr˘ a num˘rului 3100 . rezolvati sistemele: ¸ x ≡ 4 (mod 6) x ≡ 13 (mod 15) x ≡ 7 (mod 10) x ≡ 4 (mod 15) . ar˘tati c˘ ea este unic˘ modulo In ın ¸ a ¸ a a [m1 . d˘ restul 1. Determinati cea mai mic˘ solutie pozitiv˘ a sistemelor: ¸ a ¸ a   x ≡ 12 (mod 31) 3x ≡ 4 (mod 17) x ≡ 87 (mod 127) 2x ≡ 7 (mod 9)  x ≡ 91 (mod 225) 7. a ¸ a a ın 12. ˆ cazul ˆ care sistemul are solutie. Rezolvati urm˘toarele sisteme de congruente liniare: ¸ a ¸   x + 2y + z ≡ 3 (mod 6) 17x + 11y ≡ 7 (mod 29) 3y + 4z ≡ 3 (mod 6) 13x + 10y ≡ 8 (mod 29. scris ˆ baza 7. Ar˘tati c˘ sistemul are solutie dac˘ ¸i numai dac˘ a ¸ a ¸ as a (m1 . CONGRUENTE ¸ 6.72 CAPITOLUL 3. Fie sistemul de congruente liniare: ¸ x ≡ a1 (mod m1 ) x ≡ a2 (mod m2 ) .

n) = 1. 2 1 k Teorem˘ 4. atunci exist˘ numerele a s a d|mn 73 . f (pαk ) .2 Fie f o functie aritmetic˘. . ¸ ¸ a a pentru orice dou˘ numere naturale m. .1 O functie aritmetic˘ este o functie al c˘rei domeniu de ¸ ¸ a ¸ a definitie este multimea numerelor naturale. atunci f se nume¸te a s complet multiplicativ˘. Dac˘ d | mn ¸i (m. n numere naturale cu (m. ¸ a Dac˘ f (mn) = f (m)f (n). a ¸ a d|n Demonstratie. pαk 1 k cu pj numere prime distincte. a Teorem˘ 4. .CAPITOLUL 4 Functii multiplicative ¸ 4.1 Fie f o functie multiplicativ˘ ¸i a ¸ as α n = pα1 p2 2 . relativ prime.1. Atunci.2 Dac˘ f este o functie multiplicativ˘.1 Functia Euler ¸ Definitie 4.1. ¸ ¸ Definitie 4. ¸ F (mn) = Σ f (d).1. atunci functia F a a ¸ a ¸ definit˘ prin F (n) = Σ f (d) este o functie multiplicativ˘. αj ≥ 1. Dac˘ f (mn) = f (m)f (n). Fie m. . n) = 1. n ∈ N.1. pentru orice m. spunem c˘ f este a a functie multiplicativ˘. n. f (n) = f (pα1 ) · f (pα2 ) · . pentru fiecare 1 ≤ j ≤ k.

d2 | n. ¸ A¸ez˘m numerele 1. .2 Fie p num˘r prim ¸i k num˘r natural nenul... nm Presupunem (m. . . Atunci. . . m m+1 m+2 . . dac˘ φ(n) = n − 1.1. a s Propozitie 4. a ¸ ¸ a Demonstratie.1.. Atunci.. d2 sunt relativ prime. sunt pk−1 numere mai mici decˆt pk a care nu sunt prime cu acesta. obtinem c˘ pe s ¸ a linia r nu exist˘ numere relativ prime cu mn. fals. a a Demonstratie.74 CAPITOLUL 4. 3m . Demonstratie. Astfel.. Atunci.1 Dac˘ p este num˘r prim. .3 Functia Euler este o functie multiplicativ˘.. mn sub forma urm˘toare: s a a 1 2 . exist˘ cel mult n − 2 a numere mai mici decˆt n ¸i prime cu n.. ....... Deci. r . pentru a num˘ra a a numerele relativ prime cu mn din ¸ir trebuie s˘ alegem doar liniile r cu s a .. ¸ a s a φ(pk ) = pk − pk−1 .. as Propozitie 4. FUNCTII MULTIPLICATIVE ¸ naturale d1 ¸i d2 . atunci φ(p) = p − 1. din d | m ¸i d | r... s ıncˆ Obtinem: ¸ F (mn) = = d1 |m d2 |n d1 |m Σ f (d1 d2 ) = Σ f (d1 )f (d2 ) d1 |m d2 |n Σ f (d1 ) Σ f (d2 ) = F (m)F (n) d2 |n deoarece f este multiplicativ˘ ¸i d1 . (n − 1)m + 1 2m + 2 . Fie m. atunci n este num˘r prim. pk ) = 1 dac˘ ¸i ¸ a a as numai dac˘ p | a. 2. . 2m + r . relativ prime. exist˘ a s a a 1 < d < n un divizor netrivial al lui n.. de unde φ(n) ≤ n − 2... Pentru a < pk observ˘m imediat c˘ (a.. Re¸ a a ciproc. Prima parte a afirmatiei este evident˘. Relatia cerut˘ rezult˘ acum imediat. relativ prime. d = d1 d2 . . Astfel. astfel ˆ at d1 | m. n ∈ N . m+r . Astfel. numerele a care nu sunt prime cu pk sunt toate a de forma jp cu 1 ≤ j ≤ pk−1 . . . . (n − 1)m + r .1. ¸ a a Teorem˘ 4. Consider˘m acum ¸ ¸ a a c˘ φ(n) = n − 1 ¸i presupunem c˘ n este compus. . (n − 1)m + 2 . r) = d > 1.. 2m 2m + 1 .

(4. . Alegem n = 12. a ¸ a ˆ Insumˆnd toate aceste rezultate.1. adic˘ functia φ este multiplicativ˘. n = Σ φ(d).1. | Cd |= φ a s . 2. m ∈ Cd este echivalent cu . am obtinut c˘ sunt φ(n) · φ(m) numere mai mici decˆt mn ¸i In ¸ a a s prime cu mn. s ˆ final. a Deci. n) = d}. pentru 1 ≤ i ≤ k. = 1. Vom ˆ arti numerele de la 1 la n ˆ clase. atunci s φ(n) = n 1 − 1 p1 1− 1 p1 .3.6. FUNCTIA EULER ¸ 75 (r. are loc relatia: a a ¸ Σ φ(d) = n. . numai φ(n) dintre ele sunt prime cu n. ¸i aplicˆnd teorema 4. pαk unde pi sunt numere prime a a 1 2 k distincte ¸i αi ≥ 1. Dar. d d Deci. Sunt exact φ(m) astfel de linii. . 1 − 1 pk . . 12}. ¸ a este evident c˘ toate sunt prime cu m. s d|n S˘ consider˘m un exemplu pentru a vedea cum se formeaz˘ aceste a a a clase. 4. a ¸ ¸ n n .1. Astfel. n sunt relativ prime... 2. Vedem acum cˆte numere a de pe o astfel de linie sunt prime cu mn. d d d Aceste clase Cd realizeaz˘ o partitie a multimii {1. a ¸ n = Σ | Cd |= Σ φ d d d|n d|n face acela¸i lucru. Putem scrie atunci. rezult˘: a s a a Teorem˘ 4. .1) d|n Demonstratie. Din propozitia 3. Form˘m clasele Cd = {m | (m. n}. num˘rul de elemente din clasa Cd este egal cu num˘rul numerelor a a n n n naturale mai mici decˆt ¸i relativ prime cu . rezult˘ c˘ a ¸ a a numerele de pe linie formeaz˘ un sistem complet de resturi modulo n.1. cˆnd d parcurge toti divizorii lui n. 12) = d} unde d ∈ {1.1. m) = 1. Cum toate sunt prime cu m ¸i m. De asemenea. a .4 Dac˘ n = pα1 pα2 .4.5 Pentru n. De aici. un num˘r natural nenul. pe linie sunt φ(n) numere prime cu mn. 6. Definim ¸ ımp˘ ¸ ın clasa Cd = {m | (m. Observ˘m c˘ orice dou˘ astfel de clase a a a m n sunt disjuncte. Teorem˘ 4. . 3. Tinˆnd cont de forma lor.

7. 9} | C3 |= φ =2 3 12 C4 = {4.2. pj − 1 j=1 j=1 k α +1 .1 Functia aritmetic˘ σ este definit˘ prin σ(n) este egal ¸ ¸ a a cu suma divizorilor naturali ai lui n.1 Fie n un num˘r natural a c˘rui descompunere canonic˘ a a a a α ˆ factori primi este n = p1 1 pα2 .2.76 C1 = {1. . a a s Lem˘ 4. ın 2 k k pj j − 1 σ(n) = .2 Functiile σ ¸i τ ¸ s d|n Definitie 4. 8} | C4 |= φ =2 4 12 C6 = {6} | C6 |= φ =1 6 12 C12 = {12} | C12 |= φ =1 12 Obtinem 4 + 2 + 2 + 2 + 1 + 1 = 12. a Folosind teorema 4. 5. . 11} CAPITOLUL 4. atunci: a σ(pk ) = pk+1 − 1 . pαk . 10} | C2 |= φ =2 2 12 C3 = {3. τ (n) = (αj + 1). Atunci. τ (pk ) = k + 1. definim functia τ prin τ (n) = Σ 1. p−1 Teorem˘ 4.1.1 Dac˘ p > 1 este num˘r prim ¸i k ∈ N∗ . a De asemenea. ¸ 4. obtinem c˘ functiile σ ¸i τ sunt functii mul¸ a ¸ s ¸ tiplicative.2. adic˘ σ(n) = Σ d. FUNCTII MULTIPLICATIVE ¸ | C1 |= φ 12 =4 1 12 C2 = {2. adic˘ τ (n) este ¸ a d|n egal cu num˘rul divizorilor naturali ai lui n.2.

relatie care c˘p˘ta chiar valente mistice. Deci. q = 1 ¸i atunci. . adic˘ σ(t) = 2s+1 q pentru a un num˘r natural q. t = 2s+1 − 1. s a ¸ a a ¸ Definitie 4. (4. Avem: a s t + q = 2s+1 − 1 q + q = 2s+1 q = σ(t). s σ(n) = σ(2s )σ(t) = 2s+1 − 1 σ(t) ¸i cum s σ(n) = 2n = 2s+1 t. un interes deosebit ˆ prezenta relatia dintre un num˘r In ıl ¸ a natural ¸i suma divizorilor s˘i.3. atunci exist˘ cel putin trei divizori naturali ai lui t. De aici rezult˘: a σ(t) ≥ t + q + 1. 2s+1 − 1 = 1.3 Numere perfecte ˆ antichitate.2) (4. Presupunem n un num˘r par perfect.6). Obtinem n = 2s 2s+1 − 1 unde ¸ 2s+1 − 1 este prim. (4. t. Deci.5) Dac˘ q = 1. q.1 Un num˘r natural n pentru care σ(n) = 2n se nume¸te ¸ a s num˘r perfect. cum σ(6) = 12 ¸i σ(28) = 56. obtinem c˘: a ¸ ¸ a 2s+1 t = 2s+1 − 1 σ(t). Rezult˘ a a 2s+1 t = 2s+1 − 1 2s+1 q adic˘ t = 2s+1 − 1 q.4.3.6) (4.7) ceea ce contrazice ( 4. Atunci. n = 2s t. NUMERE PERFECTE 77 4. a De exemplu. Teorem˘ 4. numerele 6 ¸i 28 sunt s s numere perfecte.3. 2s+1 | σ(t). a s a Demonstratie. ¸ a Atunci. (4.1 Un num˘r natural par n este perfect dac˘ ¸i numai a a a s dac˘ n = 2m−1 (2m − 1) unde m ≥ 2 ¸i 2m − 1 este num˘r prim. ¸i anume a a ¸ s 1.3) din cele dou˘ relatii.4) Dar. Astfel. q | t ¸i q = t. unde s ≥ 1 ¸i t impar. (4. 2s+1 . Rezult˘ s a σ(t) = t + 1. de unde t este prim.

4. dˆnd contraexemple. n este num˘r perfect. Dac˘ presupunem c˘ n nu este prim. Astfel. din anul ın 1644 a afirmat. a ¸ a a Definitie 4. el a jucat un rol important ˆ comunicarea rezultatelor matematice obtinute ın ¸ ˆ acea perioad˘. c˘: aa ¸ a Mp este prim. Chilia sa era locul unde mari matematicieni precum Fermat ın a a ¸i Pascal se ˆ alneau pentru a discuta. tr˘ind aproape toat˘ viata a a a a ¸ ˆ mˆn˘stirile Parisului.1 ˆ lucrarea sa Cogitata Physica-Mathematica. Dac˘ p este un num˘r prim ¸i Mp este prim. 300 de ani au fost necesari pentru a verifica complet aceast˘ afirmatie. numerele Mn erau compuse. 127. a Atunci.1 Fie n ∈ N.4 Numere Mersenne La ˆ ınceput. 3. Prin vasta sa corespondenta cu alti matemas ıntˆ ¸˘ ¸ ticieni.4. 257} iar pentru celelalte valori n < 257. Obtinem atunci ¸ 2n − 1 = (2a − 1) 2a(b−1) + . . presupunem c˘ n = 2m−1 (2m − 1) unde 2m − 1 este prim. Un num˘r de forma Mn = 2n − 1 se ¸ a nume¸te num˘r Mersenne. ın a a ¸ s ¸ . f˘r˘ demonstratie. 5. atunci n = ab cu ¸ a a 1 < a. M89 . cˆnd nu existau publicatii ¸tiintifice. Propozitie 4. cˆnd a fost finalizat studiul. a a Mersenne. 13. s a a a s el poart˘ numele de num˘r prim Mersenne. a ¸ ˆ anul 1947. M257 coma s puse.1 Dac˘ 2n − 1 este num˘r prim. pentru n num˘r prim. Astfel. 7. 17. numerele de forma 2n − 1 erau considerate prime. . σ(n) = σ 2m−1 σ (2m − 1) = (2m − 1) · 2m = 2n. ˆ a Incepˆnd cu anul 1536. s-a remarcat c˘ Mersenne In a a f˘cuse 5 erori ¸i anume: M61 . b < n.78 CAPITOLUL 4. atunci n este prim. 31. M107 sunt prime iar M67 . pentru p ∈ {2. 67. FUNCTII MULTIPLICATIVE ¸ Reciproc. 19. obtinem c˘ 2n − 1 este num˘r compus ¸ a a ceea ce contrazice ipoteza.3. 1 Marin Mersenne (1588-1648) a fost c˘lug˘r franciscan. ¸ a a Demonstratie. + 2a + 1 unde 1 < 2a − 1 < 2n − 1. a Pentru a determina numerele pare perfecte avem nevoie de numere prime de forma 2n − 1. diver¸i matematicieni au ar˘tat c˘ a s a a aceast˘ afirmatie nu este corect˘.

Singurele numere prime de aceast˘ a √ form˘ ≤ 8191 sunt 53 ¸i 79. anume teorema 7. .4. Folosind teorema 7.4. . arat˘ c˘ 2 este rest p˘tratic modulo ¸ a a a q.1 Fie p ¸i q numere prime impare. q ≡ 1 (mod 248) sau q ≡ 63 (mod 248).1. a a a a exist˘ k natural cu q = 2kp + 1. . Deci.8) Rezult˘ c˘ 2(p. ın a ¸a Teorem˘ 4. rezult˘ c˘ m trebuie s˘ fie num˘r par. (4. a q−1 k Relatia 2 2 = (2p ) ≡ 1 (mod q).q−1) − 1 > 1. NUMERE MERSENNE 79 Pentru a vedea dac˘ un num˘r Mersenne este prim. Din ipotez˘. Urm˘toarea teorem˘ a lui Euler ¸i Fermat a a a s este folositoare ˆ aceast˘ privint˘. q = 2kp + 1. a a a √ 2) Pentru M23 = 8388607 c˘ut˘m divizori primi de forma 46k + 1 ≤ M23 = 2896. a a a a de unde (p. De aici. obtinem ¸ ¸ q | 2q−1 − 1. nici unul nu e divizor pentru M31 . se obtine c˘ ei nu sunt a s ¸ a divizori pentru M13 . a q | 2p − 1. a a ¸ a a a 1) Pentru a vedea dac˘ M13 = 213 − 1 = 8191 este prim. q ≡ ±1 (mod 8). Cu toate c˘ ˆ finalul demonstratiei se folose¸te un rezultat obtinut a ın ¸ s ¸ ˆ capitolul 7. Se presupune c˘ exist˘ o infinitate de numere prime Mersenne. q − 1) > 1. de obicei verific˘m a a a dac˘ are divizori primi mici. rezult˘ k ≡ 1 (mod 4) sau k este a ¸ a multiplu de 4. p | q − 1 adic˘ exist˘ m natural astfel ˆ at a a ıncˆ q = mp + 1. q − 1) = p. Mai mult. pentru a nu o separa de enunt. Rezolvˆnd congruentele. el este prim.3. . deci M23 este compus. M13 este num˘r prim Mersenne. Prin calcul direct.3. el a c˘utat divizori de forma 62k + 1 care verific˘ q = 62k + 1 ≡ a a ±1 (mod 8). . 2q−1 − 1 = 2(p.3. Cum dintre aceste numere. S˘ vedem pe cˆteva exemple cum functioneaz˘ aceast˘ teorem˘.4. Dac˘ q | Mp . Astfel.4. pentru un k natural. vedem dac˘ a a are divizori primi de forma 26k + 1. q | 2p − 1. deci a a o infinitate de numere pare perfecte. prezent˘m demonstratia teoremei ın a ¸ acum. In a a Astfel. Se obtine M23 = 47 · 178481. . Dar p este num˘r prim.1. Din q impar. cum q este prim impar. ¸ Demonstratie. Din teorema 3. atunci a s a q ≡ ±1 (mod 8). Euler a folosit teorema pentru a ar˘ta c˘ M31 este prim. adic˘ (p.q−1) − 1. Astfel. ¸ 3) ˆ 1772. Deci.

Calculati φ(n) pentru n ∈ {24. a ıncˆ a 2n + 1 | Mn sau 2n + 1 | Mn + 2. Fie n num˘r natural astfel ˆ at 2n + 1 este num˘r prim. Precizati care sunt toate numerele naturale cu exact 2.4. Great Internet Mersenne Prime Search. 5. p ≡ 3 (mod 4).1. 6. stabiliti care dintre numerele ¸ Mersene M7 . Ultimul num˘r prim a as a Mersenne cunoscut pˆn˘ ˆ prezent a fost determinat ˆ februarie 2005. 99. Semnele de ˆ a a ın ıntrebare care apar ˆ ın dreptul ultimelor numere din tabel arat˘ c˘ cercetarea primalit˘¸ii nua a at merelor Mersenne nu este complet˘ ˆ a ˆ acest interval. ¸ 2. 1000. a a G˘sirea de numere prime Mersene este extrem de laborioas˘ din a a punct de vedere computational. 3. as a Cu alte cuvinte. M17 sunt numere prime Mersenne. 256}. Exercitii propuse ¸ 1. 2p + 1 este a a prim dac˘ ¸i numai dac˘ 2p ≡ 1 (mod 2p + 1). dac˘ p ≡ 3 (mod 4) este num˘r prim ¸i 2p + 1 este tot a a s num˘r prim. a a ın ın Dac˘ veti consulta Anexa A. . M11 . 4.lea. respectiv ¸ 4 divizori pozitivi. 52.2 Fie p num˘r prim. G. Cum c˘utarea a ınc˘ ın a nu a fost f˘cut˘ pentru toti exponentii.80 CAPITOLUL 4. atunci Mp este num˘r compus. Determinati suma divizorilor pozitivi ai lui n ∈ {35. Pentru n ∈ {36. Woltman a organizat un program ¸ distribuit pe Internet. trebuie verificat dac˘ ultimele a a ¸ ¸ a numere sunt numere prime Mersenne consecutive. 100. ˆ care ın sute de voluntari folosesc computerele pentru a realiza etape din c˘utare. 237 }. Atunci. 84. 144. adic˘ nu exist˘ alte a a numere prime Mersenne ˆ ıntre ultimele 4.4. ¸ 3. FUNCTII MULTIPLICATIVE ¸ Un rezultat interesant este oferit de Euler ˆ teorema: ın Teorem˘ 4. veti g˘si cele 42 de numere prime a ¸ ¸ a Mersenne cunoscute pˆn˘ ˆ prezent. Atunci. 10!} determinati num˘rul de divizori po¸ a zitivi. 99. pe 17 noiembrie 2003 s-a descoperit al 40-lea In num˘r prim Mersenne iar dup˘ ¸ase luni. Folosind rezultatul teoremei 4. a ˆ cadrul acestui program. al 41.

CAPITOLUL 5 Prime aplicatii ale ¸ congruentelor ¸ 5. Folosind algoritmul lui Euclid. Propozitie 5. putem presupune c˘ u > 0. s ¸ Demonstratie. Cum unul din cele dou˘ numere u. p − 1).1 Fie b ¸i n dou˘ numere relativ prime iar a ¸i c numere ¸ naturale.1.1. un divizor propriu al lui n sau p ≡ 1 (mod n). v ≤ 0. Obtinem bau ≡ 1 (mod n) ¸i a ¸ s bc(−v) ≡ 1 (mod n). Pentru cazul a ¸ ¸ 81 . Dac˘ a p > 2. v ∈ Z astfel ca ¸ a d = ua + vc.2 Dac˘ p este un num˘r prim cu p | bn − 1.1 Factorizarea unor numere de form˘ para ticular˘ a s a s Propozitie 5. bd ≡ 1 (mod n). obtinem prima relatie. de unde. c). Dac˘ ba ≡ 1 (mod n) ¸i bc ≡ 1 (mod n). bd ≡ 1 (mod p). Demonstratie. bau−c(−v) ≡ 1 (mod n). atunci bd ≡ 1 (mod n) a s unde d = (a. Din propozitia anterioar˘. Dac˘ d < n. v este pozitiv iar cel˘lalt negativ sau a a zero. exist˘ u. bn ≡ 1 (mod p) iar din mica teorem˘ a lui ¸ a a Fermat. a doua conditie devine p ≡ 1 (mod 2n). bp−1 ≡ 1 (mod p). atunci ¸ a a p | bd − 1 pentru d. ¸ a unde d = (n. ¸i n este impar. Astfel. Din ipotez˘.

PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ d = n. lu˘m partea ˆ ımp˘ ¸ a ıntreag˘ a = 3937 34359738367 8727 ¸i scriem 34359738 = 3937 · 8727 + 1539. 5. . . 13. . In a a 2. Cum 4 = 73 este prim. atingem limita impus˘ pentru 226 = 67108864. s˘ vedem cum s-ar face aceast˘ descompunere folosind a a a un calculator care presupunem c˘ face operatii aritmetice doar cu nua ¸ mere de maxim 8 cifre zecimale. s = 3937 (3937 · 8727 + 1539) · 1000 + 367 1539367 = 8727000 + = 8727391. a a Verific˘m dac˘ p = 23. Propozitia ne asigur˘ c˘ divizorii primi r˘ma¸i ¸ a a a s trebuie s˘ fie ≡ 1 (mod 70). avem p ≡ 1 (mod n). a a ¸ a a a a pentru c˘ g˘sim imediat 8727391 = 71 · 122921 ¸i astfel. 5. r˘mˆne s˘ a a s a a a √ cercet˘m doar pˆn˘ la 122921 = 350. . descompunerea ˆ factori primi cerut˘ este 235 − 1 = 31 · 71 · s ın a 127 · 122921. de exemplu) trebuie s˘ fie ≡ 1 (mod 12). Atunci. ˆ a ın a ¸ In cazul nostru. Vom sparge num˘rul ˆ p˘rti. 7 care furnizeaz˘ divizorii primi 31 ¸i 127. . Obtinem ın ¸ 531440 astfel. a 3. ın 1. . d Ca o remarc˘. . Apoi.). ˆ ın ıncerc˘m a mai ˆ ai cu divizorii numerelor mai mici 31 − 1. 281. ˆ situatia ˆ care p ¸i n sunt In ¸ ın s amˆndoi impari ¸i n | p − 1. 32 − 1. Obtinem a s ¸ 235 −1 = 31·127·8727391. 89. Obtinem astfel descompunerea a as ¸ 2047 = 23 · 89. a a a √ nu trebuie s˘ dep˘¸im 2047 = 45. a¸a cum era de a¸teptat. Pentru a descompune ˆ factori primi 312 − 1 = 531440. atunci este evident c˘ 2n | p − 1. 24 . Nu trebuie a a √ s˘ verific˘m toti divizorii de aceast˘ form˘ pˆn˘ la 8727391 = 2954. 211.82 CAPITOLUL 5. . se arat˘ c˘ 213 − 1 = 8191 este prim. 7. . 34 − 1 ¸i ıntˆ s cu ai lui 36 − 1 = (33 − 1)(33 + 1) care nu apar deja ˆ 33 − 1. Verific˘m pentru 71. 3937 3937 . sunt divizori ai num˘rului (de fapt. cum d | p − 1. . . ˆ mod analog. G˘sim 122921 num˘r prim a a a a a ¸i astfel. Pentru 235 − 1 = 34359738367 consider˘m la ˆ a ınceput divizorii 2 −1 pentru d = 1. Pentru 211 − 1 = 2047 c˘ut˘m divizori primi p ≡ 1 (mod 22). scriem 235 = 512 · (67108 · 1000 + ¸ 864) = 34359296 · 1000 + 442368 = 34359738368. . . Trebuie remarcat c˘. . . . Pentru a a face ˆ ınmultirea cu 29 = 512. . orice num˘r prim a s s a care nu apare ˆ descompunerea lui 3d − 1 pentru d divizor propriu al ın lui 12 (73. 67. . am ˆ ıncheiat descom2 · 5 · 7 · 13 punerea. a s a Vom exemplifica cum aceast˘ propozitie poate fi folosit˘ pentru a a ¸ a descompune ˆ factori anumite numere mari. cˆnd trebuie s˘ a a 34359738 35 ˆ artim 2 − 1 la 31 · 127 = 3937. 33 − 1.

obtinem s ¸ c˘ 25 n iar pentru j ≤ 4. Test de divizibilitate cu puteri ale lui 2 . putem realiza teste de divizibilitate pentru ˆ ¸ ıntregi ¸inˆnd cont de dezvoltarea lor relativ la diferite baze.2. ¸ Test 5. obtinem c˘ 10j ≡ 0 (mod 2j ). . Deci. obtinem n ≡ ak + ak−1 + . obtinem un test de divizibilitate a ¸ a a ¸ cu puteri ale lui 5 : Test 5. s Din 10 ≡ 1 (mod 3) ¸i 10 ≡ 1 (mod 9). Din ( 5. a1 a0 )10 (mod 2j ). . a1 a0 )10 .2. a a n = ak · 10k + ak−1 · 10k−1 + . pentru n = 2114480.1). . Cum 10 ≡ 0 (mod 2). .3 n este divizibil cu 3 sau cu 9 dac˘ ¸i numai dac˘ suma a s a cifrelor sale este divizibil˘ cu respectiv 3 sau 9. t a Pentru ˆ ınceput. .1 n este divizibil cu 2j dac˘ ¸i numai dac˘ num˘rul format cu as a a ultimele sale j cifre este divizibil cu 2j . . Astfel.5. pentru orice ¸ a j ≤ k. discut˘m cele mai cunoscute teste care folosesc scria erea zecimal˘. cum 25 14480 ¸i 24 | 4480. . n ≡ (aj−1 aj−2 . a Dup˘ un rationament asem˘n˘tor. Spre exemplu.2 Teste de divizibilitate Folosind congruentele. cu 0 ≤ aj ≤ 9. a Consider˘m num˘rul natural n = (ak ak−1 . a (5.1) . + a1 + a0 (mod 3) ¸i aceea¸i ¸ s s relatie modulo 9. . putem verifica imediat c˘ n = 23752875 este divizibil a cu 5j pentru j ≤ 3 iar 54 n cum 625 2875. rezult˘: s a 10j ≡ 1 (mod 3) respectiv 10j ≡ 1 (mod 9). rezult˘ c˘: a a Test 5. Teste de divizibilitate cu 3 ¸i 9 . Deci. 2j | n.2. De exemplu. + a1 · 10 + a0 .2 n este divizibil cu 5j dac˘ ¸i numai dac˘ num˘rul format cu as a a ultimele sale j cifre este divizibil cu 5j . TESTE DE DIVIZIBILITATE 83 5.2.

. obtinem urm˘toarele teste: ¸ a Test 5. a rezult˘ 11 | n. n ≡ (a0 + 10a1 + 100a2 ) + 1000(a3 + 10a4 + 100a5 ) + 10002 (a6 + 10a7 + 100a8 ) + .11 ¸i 13 .2. obtinem: at a ¸ 102 ≡ 1 (mod 11). .7 Dac˘ d | b − 1. a1 + a0 este divizibil cu d. a1 a0 )b este divizibil cu dj . PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ Pentru n = 26453097.5 n este divizibil cu 7. respectiv 7. a Dac˘ alegem n = 291575295. observ˘m c˘ 2 + 6 + 4 + 5 + 3 + 9 + 7 = 36. a Test de divizibilitate cu 7. Dac˘ ¸inem cont de faptul c˘ 10 ≡ −1 (mod 11). 11 sau 13 dac˘ ¸i numai dac˘ suma alternat˘ a numerelor formate din blocuri de trei cifre. + (−1)k−1 ak−1 + (−1)k ak (mod 11). a s a Test 5. Fie ¸ a n = (ak ak−1 . etc. . Astfel. n este divizibil cu dj dac˘ ¸i numai a s as dac˘ (aj−1 aj−2 . 11 sau 13. 103 ≡ −1 (mod 11). . Test 5. . .2.1) implic˘ a n ≡ a0 − a1 + . (mod 1001). pornind de la a ultimele. .2. . Urmˆnd aceea¸i cale de demonstratie ca pentru cazul scrierii zecia s ¸ male. ( 5. .6 Dac˘ d | b ¸i 0 ≤ j < k. este divizibil˘ cu. . de a a unde n este divizibil cu 9. s Trebuie remarcat c˘ 7 · 11 · 13 = 1001.4 n este divizibil cu 11 dac˘ ¸i numai dac˘ suma alternat˘ a as a a cifrelor sale este divizibil˘ cu 11. ≡ (a2 a1 a0 )10 − (a5 a4 a3 )10 + (a8 a7 a6 )10 . Atunci. n este divizibil cu d dac˘ ¸i numai dac˘ a a s a ak + . .2. a Test 5.84 CAPITOLUL 5. cum 5−9+2−5+7−5+1−9+2 = −11. a S˘ generaliz˘m acum testele prezentate considerˆnd num˘rul n scris a a a a ˆ ıntr-un sistem de numeratie de baz˘ oarecare b. a1 a0 )b . . . de unde a 103 ≡ −1 (mod 1001). Test de divizibilitate cu 11 .

5. El a stat la s baza planific˘rii agriculturii. s 1 Kalaendae reprezenta prima zi din fiecare lun˘ ˆ calendarul roman antic.5. n este divizibil cu d dac˘ ¸i numai dac˘ suma a as a (−1)k ak + . ziua este ¸ cea mai mic˘ unitate calendaristic˘ de timp.2. Pena ın ¸ a tru (11110111101001)2 .1 Dac˘ dorim.3. reprezint˘ o leg˘tur˘ ˆ a a a a ıntre omenire ¸i cosmos. Obtinem astfel. se formeaz˘ a a ın a grupe de cˆte 4 cifre. a 17 n se obtine din 17 6 − A + 8 − 2 + F − 7 = 10. rezult˘ 5 n. a Spre exemplu. ciclurilor de migratie. pornind de la ultimele. ¸ a a Observatie 5.2. a ın . + a2 − a1 + a0 este divizibil˘ cu d. mentinerii a a a ¸ ¸ ciclurilor de evenimente civile ¸i religioase. dac˘ dorim s˘-l scriem ˆ baza 16. dac˘ consider˘m num˘rul n = (7F 28A6)16 scris ˆ baza a a a ın 16. conform tabelului: ın s Hex Binar Hex Binar 0 0000 8 1000 1 0001 9 1001 2 0010 A 1010 3 0011 B 1011 4 0100 C 1100 5 0101 D 1101 6 0110 E 1110 7 0111 F 1111 Spre exemplu. . .3 Calendarul Calendarul1 este un sistem de organizare a unit˘¸ilor de timp pentru at a calcula timpul pe perioade foarte extinse. Calendarul. indiferent de a a tipul s˘u. (2F B3)16 = (10111110110011)2 unde se observ˘ c˘ am a a omis cele dou˘ zerouri din scrierea lui 2 aflate ˆ fata num˘rului. Prin conventie. (3DE9)16 . a 3 | n deoarece 3 | 7 + F + 2 + 8 + A + 6 = 48 ¸i din s 5 7 + F + 2 + 8 + A + 6. vom obtine: ¸ 2 | n pentru c˘ 2 | 6 dar 4 n cum 4 (A6)16 = 166. ¸ ˆ acela¸i fel se poate face conversia numerelor scrise ˆ bazele b ¸i In s ın s bk . putem face o conversie simpl˘ din sis¸ temul hexagesimal ˆ cel binar ¸i invers. pe care le ˆ a ınlocuim conform tabelului. vˆn˘torii. CALENDARUL 85 Test 5.8 Dac˘ d | b + 1.

Complexitatea calendarelor apare datorit˘ faptului c˘ ciclurile de a a revolutie nu cuprind un num˘r ˆ ¸ a ıntreg de zile. pˆn˘ atunci. Ciclurile astronomice fundamentale sunt ziua (bazat˘ pe rotatia a ¸ P˘mˆntului ˆ jurul axei sale). de Grecia ˆ 1923. Cele mai recente calcule arat˘ c˘ un an are un num˘r de aproximativ a a a 365. precum ¸i datorit˘ faptului s a c˘ ciclii astronomici nu sunt constanti ¸i nici perfect comparabili unii cu a ¸ s ceilalti. Eroarea de 0. ˆ secolul XVI. exist˘ algoritmi de conversie a zilelor dup˘ calendarul Iulian ˆ zile dup˘ a a ın a calendarul Gregorian. punct˘m doar aa a a a dou˘ momente importante ˆ evolutia sa.n. De exemplu. Si acest calendar a ¸ ˆ a necesit˘ modific˘ri. Deci. La egipteni. printra s ın un salt de 11 zile. iar dintre cei divizibili cu 100.86 CAPITOLUL 5. ˆ lume se folosesc aproximativ 40 de caın lendare.0078 zile ¸ pe an s-a adunat ¸i calendarul a devenit din ce ˆ ce mai mult incoms ın patibil cu anotimpurile.0003 zile ˆ ınseamn˘ 3 zile la 10000 ani.2422 de zile. formˆnd ani bisecti. Acesta a stabilit a lungimea anului ca fiind de 365. ¸ au fost considerati cei divizibili cu 4. anul are 365. El este cunoscut sub numele ın ın de calendarul nou.2425 zile. ˆ anul 45 ˆ In ı. se mutase cu 10 zile fat˘ de data exact˘. care In ¸ a a determina data Pa¸telui. Astfel. lungimea anului a a era de 365.. ¸ cerˆnd sprijinul astronomului Sosigenes din Alexandria. Ianuarie a s a a ın a a devenit prima lun˘ din an. . El a creat un calendar solar 3 cu 3 ani formati din 365 de zile ¸i cu ani bisecti la fiecare 4 ani pentru ¸ s ¸ a reflecta mai bine lungimea adev˘rat˘ a anului. echinoctiul de prim˘var˘. a 3 Un calendar solar este un calendar care intercaleaz˘ zile. Luˆnd ˆ considerare a a ın acest fapt. diferenta de 0.25 de zile. dar 2000.25 zile. fiecare an avea 365 a ın ¸ de zile. pˆn˘ ˆ 1582 cˆnd a ap˘rut calendarul Gregorian. Ca ani bisecti. Iulius Cezar2 a initiat modificarea calendarului. ¸ bisecti au fost ale¸i doar cei care sunt divizibili ¸i cu 400. Papa Gregoriu al XIII-lea a dat un decret prin care In s-au exclus 10 zile din calendar. a a ¸ pentru a cre¸te lungimea anului calendaristic. Astfel. anul ˆ a a a ıncepˆnd cu luna martie. s 4 Trecerea la calendarul Gregorian a fost adoptat˘ de Anglia ¸i SUA ˆ 1752. Calendarul Gregorian4 a stabilit ca prim˘ zi ınc˘ a a a 2 Calendarul Iulian a fost calendarul standard pentru majoritatea ¸arilor europene t˘ ¸i pentru America. cu trecerea secolelor. ¸ F˘r˘ a dori s˘ prezent˘m pe larg istoria calendarului. de URSS ˆ 1917. PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ Conform unor date recente. iar zilele de 6-14 octombrie au fost omise. da. pe cˆnd cel Iulian de calendarul vechi. luna (bazat˘ pe revolutia Lunii ˆ jua a ın a ¸ ın rul P˘mˆntului) ¸i anul (bazat pe revolutia P˘mˆntului ˆ jurul Soarea a s ¸ a a ın lui). Data de 5 octombrie a devenit data de 15 octombrie. ¸ s s 1900 nu este an bisect. s ¸a a ˆ anul 1582.e.

data de 1 Ianuarie. Calcularea datei zilei de Pa¸te se bazeaz˘ pe congruente ¸i. • Consider˘m c˘ anul ˆ a a ıncepe la 1 Martie. CALENDARUL 87 a anului. ˆ a a a ıncepˆnd cu duminic˘ se noteaz˘ cu cifre de la a a a 0 la 6. ın Ne propunem s˘ aplic˘m congruentele ˆ scopul determin˘rii zilei din a a ¸ ın a s˘pt˘mˆn˘ corespunz˘toare unei date calendaristice. ¸i calcul˘m mai ˆ ai s ¸ s a ıntˆ dN pentru fiecare N. Ca baz˘ de plecare folosim ziua de 1 Martie a fiec˘rui an. a De exemplu. dac˘ consider˘m data de 17 Ianuarie 1990. ziua care se ata¸eaz˘ va fi ultima ¸ s a din an. vom avea . Astfel. N = 1989 de unde C = 19. a s a ¸ s un astfel de algoritm a fost dat de Oudin ˆ 1940. avem a dN ≡ dN −1 + 2 (mod 7). Y = 89. a a s Cum zilele s˘pt˘mˆnii se repet˘ din 7 ˆ 7. Dac˘ N este an bisect. Conform s calendarului Gregorian. de la 1 la s a 12. Dac˘ nu. ¸i a ¸ s anume de a stabili data s˘rb˘toririi Pa¸telui conform regulilor impuse a a s de biseric˘. Scopul s˘u initial a fost ecleziastic. ˆ Intre 1 Martie din anul N − 1 ¸i 1 Martie din anul N. a a m = 11.3) (5. pornind cu Martie ¸i terminˆnd cu Februarie. (5.5. Atunci. a dN ≡ dN −1 + 1 (mod 7). • Not˘m cu k ziua din lun˘. Not˘m a a a cu dN ziua din s˘pt˘mˆn˘ corespunz˘toare lui 1 Martie din anul N. trebuie s˘ facem apel ¸i la un algoritm de conversie.2) Calcul˘m acum cˆ¸i ani bisecti au fost ˆ a at ¸ ıntre anii 1600 ¸i N. vom considera datele ca fiind date conform calendarului Gregorian. k = 17. pentru u¸urinta calculului. Pentru a simplifica a a a a a problema. pentru anii bisecti.3. sunt 365 de s zile dac˘ N nu este an bisect. cu m luna ¸i anul va fi notat cu N = a a s 100C + Y unde C marcheaz˘ secolul iar Y ≤ 99. Facem urm˘toarele conventii: a ¸ • Zilele s˘pt˘mˆnii. cum 365 ≡ 1 (mod 7). a a a a a ˆ Incepem cu anul 1600. Astfel. vom folosi congruenta a a a a ın ¸ modulo 7. lunile vor fi numerotate.

100 4 C Y + 4 4 − 3 (mod 7). s ¸ s folosind ( 5. (5. Observ˘m c˘ lunile cu 30 de zile a a a deplaseaz˘ la dreapta ziua de 1 a lunii urm˘toare cu 2 zile.88 CAPITOLUL 5.5). (5. ˆ cazul nostru. ˆ total. (5.4) Din ( 5. PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ N − 1600 N − 4 N N + 16 + −4= 100 400 x = − 1600 N − 1600 N + = 100 400 4 N N N − + − 388. se In obtine o deplasare de 29 zile. ˆ Inlocuind ˆ ( 5. ziua de 1 Martie 2005 fiind ˆ ¸ a ıntr-o zi de 20 5 marti. iar lunile cu a a 31 de zile. Cum. Atunci. ¸ . a ın dN ≡ d1600 − 2C + Y + C Y + 4 4 (mod 7). Am g˘sit c˘ 1 Martie 1600 a fost ˆ a a ıntr-o zi de miercuri. rezult˘ ˆ final. ea nu aduce nici o modificare. pe parcursul unui an. rezult˘: ın a dN ≡ 3 − 2C + Y + C Y + 4 4 (mod 7).4).5) Stim c˘ d2005 ≡ 2 (mod 7).2) ¸i ( 5.3). cu 3 zile la dreapta. februarie are 28 ın de zile. 4 100 400 − 400 − Dac˘ ˆ a ınlocuim N = 100C + Y.6) Pasul urm˘tor este de a stabili ziua din s˘pt˘mˆn˘ corespunz˘toare a a a a a a primei zile din fiecare lun˘ a anului N. 2 ≡ d1600 − 2 · 20 + 5 + ¸ + (mod 7) de unde 4 4 d1600 ≡ 31 ≡ 3 (mod 7). obtinem dN ≡ d1600 + N − 1600 + x (mod 7) ¸i. obtinem ¸ x = 25C + de unde x ≡ 3C + Y 4 −C − Y C + − 388.

CALENDARUL Rezultatele sunt prezentate ˆ urm˘torul tabel: ın a 89 Perioada 1 Martie . adun˘m k − 1 ˆ ultima relatie. m = 12. ziua din s˘pt˘mˆn˘ corespunz˘toare primei zile din luna m a a a a a a anului N este restul modulo 7 al lui dN + [2. 20 4 W ≡ 15 + [2.1 Ianuarie 1 Ianuarie .1 Decembrie 1 Decembrie . 6m − 0. corespunz˘toare lunii m.1 August 1 August . Formula a ın ¸ care se obtine este: ¸ W ≡ k + [2. obtinem c˘ [2.1 Februarie zile ad˘ugate a 3 2 3 2 3 3 2 3 2 3 3 Pentru 1 ≤ m ≤ 12. a a a a a pentru m = 1. 2] − 2C + Y + C Y + 4 4 (mod 7). de unde C = 20. ziua a a ın luat˘ ca exemplu a fost ˆ a ıntr-adev˘r ˆ a ıntr-o zi de marti. k = 15. Dac˘ verific˘m ˆ calendar. Deci. 6m − 0. pentru stabilirea zilei W din s˘pt˘mˆn˘ corespunz˘toare In a a a a a datei k din luna m a anului N. 2] − 2. N = 2004 = 100 · 20 + 4. s˘ determin˘m ziua din s˘pt˘mˆn˘ corespunz˘toare a a a a a a a datei de 15 Februarie 2005. ˆ final. 6 · 12 − 0.1 Aprilie 1 Aprilie .1 Septembrie 1 Septembrie .3. 6m − 0.1 Octombrie 1 Octombrie . Ca exemplu. Observ˘m c˘. valoarea ei este zero.5. 2] − 2 are acelea¸i valori ¸ a s cu num˘rul de zile ad˘ugate. Atunci. 2] − 2 · 20 + 4 + + 4 4 ≡ 15 + 31 − 40 + 4 + 5 + 1 ≡ 2 (mod 7).1 Iunie 1 Iunie .1 Iulie 1 Iulie .1 Noiembrie 1 Noiembrie . ¸ .1 Mai 1 Mai . Y = 4.

Atunci. ¸i echipa care este programat˘ ın a a s a s˘ joace cu aceasta. s˘ consider˘m c˘ ˆ turneu particip˘ 5 echipe. Am programat astfel toate jocurile din a turul k mai putin echipa N ¸i echipa i pentru care 2i ≡ k (mod N − 1). Rezultatul program˘rii este a ın a prezentat ˆ tabelul urm˘tor: ın a T ur Echipˇ a 1 2 3 4 5 1 5 stˇ a 2 3 4 2 4 5 1 stˇ a 3 3 stˇ a 4 5 1 2 4 2 3 stˇ a 5 1 5 1 2 3 4 stˇ a . a ¸ Pentru 1 ≤ i ≤ N − 1. la fiecare etap˘ o echip˘ trebuie s˘ nu joace. a ın a Putem presupune astfel c˘ num˘rul de echipe participante la turneu a a este mereu par. . Punem ˆ joc. ˆ alte runde. a a a ın a N = 6 ¸i fiecare echip˘ care este programat˘ s˘ joace cu echipa 6 ˆ s a a a ın fiecare tur. .4 Programarea unui turneu S˘ vedem cum putem aplica congruentele ˆ programarea unui turneu. pentru In a s c˘ dac˘ i + j ≡ k (mod N − 1) ¸i i + j ≡ k (mod N − 1). conaa a a a sider˘m initial primele N − 1 echipe. . . ¸ s Cum N − 1 este impar. 2. Not˘m aceste echipe cu 1. ın ın a a Ar˘t˘m c˘ aceast˘ programare este cea dorit˘. ıncˆ a a a a a a Dac˘ N este impar. a a a a ˆ acest caz introducem o echip˘ fictiv˘.90 CAPITOLUL 5. a a s a ceea ce este fals. de fapt nu joac˘ ˆ acel tur. de fapt. ultima congruent˘ are solutie unic˘ x unde ¸a ¸ a 1 ≤ x ≤ N − 1. ˆ turul k aceast˘ echip˘ cu echipa N. N. Ea joac˘ cu echipa j unde j ∈ {i. a ¸ ın Presupunem c˘ exist˘ N echipe diferite care joac˘ ˆ a a a ıntr-un turneu astfel ˆ at fiecare echip˘ joac˘ cu fiecare alt˘ echip˘ o singur˘ dat˘. obtinem c˘ ele joac˘ fiecare o a a a ¸ a a singur˘ dat˘. ˆ runda aceea. i nu joac˘ cu acelea¸i echipe. Echipa N joac˘ N − 1 jocuri ¸i orice alt˘ echip˘ joac˘ cu a a a s a a a N o singur˘ dat˘. Deci. Atunci. Cum fiecare echip˘ din primele N − 1 joac˘ N − 1 jocuri ¸i nu joac˘ a a s a cu fiecare echip˘ mai mult decˆt o dat˘. rezult˘ k = k . N − 1. a a a a a a Spre exemplu. PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ 5. echipa N joac˘ cu fiecare echip˘ o singur˘ dat˘. st˘. Pentru aceasta. echipa i joac˘ cu echipa N ˆ turul k dac˘ a ın a 2i ≡ k (mod N − 1). a Realiz˘m urm˘toarea programare: a a Fie echipa i cu i = N. N } ˆ turul a / ın k dac˘ i + j ≡ k (mod N − 1).

c numere naturale cu d = (a. a iv) n s˘ fie num˘r prim. dac˘ k < 10. Fie b ¸i n > 2. a a a . atunci a s n d b ≡ −1 (mod n) ¸i s este num˘r impar. a ¸ a a a ¸ a ın iii) G˘siti descompunerea canonic˘ ˆ factori primi a lui n. Fie n = 224 + 1 = 16777217. . Dac˘ ba ≡ −1 (mod n) ¸i bc ≡ ±1 (mod n). a d 2. iii) 233 − 1. Fie n = 111 . 108 − 1. 221 − 1. PROGRAMAREA UNUI TURNEU Exercitii propuse ¸ 91 1.5. cu p num˘r prim. a iii) n s˘ fie divizibil cu 1001. 1 un num˘r de k cifre. dac˘ p | bn + 1. 324 − 1. un divizor propriu al lui n cu num˘r impar a d sau ii) p ≡ 1 (mod 2n). atunci: a ¸ a a a n i) p | bd + 1. 4. 3. a ii) n s˘ fie divizibil cu 11. c). ii) 105 − 1. pentru d. a ¸ a ii) Ar˘tati c˘ orice alt divizor prim p al lui n verific˘ p ≡ 1 (mod 48). 5.4. respectiv cu 9. i) G˘siti un num˘r prim Fermat care divide n. Descompuneti ˆ factori primi numerele urm˘toare: ¸ ın a i) 315 − 1. . Ar˘tati c˘. dou˘ numere prime ˆ s a ıntre ele iar a. Stabiliti ce conditii trebuie a ¸ ¸ impuse pentru ca: i) n s˘ fie divizibil cu 3.

a . Folosind testul g˘sit. Fie n un num˘r scris ˆ baza b. Determinati ziua din s˘pt˘mˆn˘ ˆ care v-ati n˘scut. Stabiliti un test de divizibilitate cu 37. dup˘ modelul prezentat. ¸ a a a a ın ¸ a 9. PRIME APLICATII ALE CONGRUENTELOR ¸ ¸ 6. programarea unui turneu la ¸ a care particip˘ 9 echipe. ¸ 7. Realizati. 8. Stabiliti un test de divizibilitate a ın ¸ al lui n cu divizori ai lui b2 + 1.92 CAPITOLUL 5. verificati dac˘ a ¸ a (12100122)3 este divizibil cu 2 sau cu 5.

prim cu n. s ıl De exemplu. din 42 ≡ 2 (mod 7). rezult˘ a ord7 4 = 3.1 Ordinul unui num˘r ˆ a ıntreg Fie n num˘r natural nenul ¸i a ∈ Z .1 Dac˘ a ¸i n sunt relativ prime. Cum majoritatea demonstratiilor sunt simple. prim cu n. 43 ≡ 1 (mod 7). ¸ Propozitie 6. va exista un cel mai mic num˘r natural nenul k care s˘ verifice a a a relatia ak ≡ 1 (mod n). vom prezenta cˆteva propriet˘¸i de baz˘ ale ordinului In a at a unui ˆ ıntreg. 93 . le vom l˘sa ¸ a ca exercitiu pentru cititor. ¸ Definitie 6. ˆ continuare. atunci ¸ a s k ∈ N este solutie a congruentei ak ≡ 1 (mod n) dac˘ ¸i numai dac˘ ¸ ¸ a s a ordn a | k.1. Din teorema lui Euler a s ¸tim c˘ aφ(n) ≡ 1 (mod n). Multimea numerelor naturale fiind bine s a ¸ ordonat˘.CAPITOLUL 6 R˘d˘cini primitive a a 6. cu n > 0. Cel mai mic ¸ a s num˘r natural nenul k pentru care ak ≡ 1 (mod n) se nume¸te ordinul a s lui a modulo n ¸i ˆ vom nota ordn a.1 Fie n num˘r natural ¸i a ∈ Z.1.

. . Definitie 6. . n cu φ(n) = pα1 pα2 . cu n > 0. k execut˘: a 2.2 Fie n num˘r natural nenul ¸i a ∈ Z. trebuie s˘ cunoa¸tem descompunerea a a a s ˆ factori primi a lui φ(n). Acesta presupune ˆ a un inconvenient: pena ıns˘ tru a putea s˘ aplic˘m algoritmul. ¸i ordn r = φ(n).1 (Ordinul unui num˘r natural) a INPUT: numerele naturale relativ prime a. atunci r ¸ a s se nume¸te r˘d˘cin˘ primitiv˘ modulo n.1. atunci ordn a | φ(n). Pune t ← t · pi 3. ın Algoritm 6. 1 2 k OUTPUT: ordn a = t 1. Corolar 6. s a a a a .1. Pentru i = 1. pαk .3. prim cu n. 2. 6}. Returneaz˘ t. calcul˘m doar a a a a 3k pentru k ∈ {1. n) = 1. (a. dac˘ dorim s˘ determin˘m ord7 3. Pune t ← t/pαi . ¸ a s Atunci. Calculeaz˘ a1 ← at mod n a 2. RADACINI PRIMITIVE De aici. . obtinem un rezultat important care u¸ureaz˘ determinarea ¸ s a lui ordn a.2.1. 3.1. cum φ(7) = 6.1 Dac˘ n este num˘r natural nenul ¸i a este un ˆ a a s ıntreg.2 Dac˘ (r. Cˆt timp a1 = 1 mod n. execut˘: a a 2. Astfel. ai ≡ aj (mod n) dac˘ ¸i numai dac˘ i ≡ j (mod ordn a).2. 2. Astfel: 31 ≡ 3 (mod 7) 32 ≡ 2 (mod 7) 33 ≡ 6 (mod 7) 36 ≡ 1 (mod 7) Un rezultat des folosit ˆ continuare este dat de urm˘toarea propozitie: ın a ¸ Propozitie 6. i 2.3.94 ˘ ˘ CAPITOLUL 6. n) = 1.1. a Un interes deosebit ˆ prezint˘ numerele cu ordinul modulo n egal cu ıl a φ(n). .3.1. as a ˆ continuare prezent˘m un algoritm de determinare a ordinului unui In a num˘r natural a modulo n. Calculeaz˘ a1 ← api mod n a 1 2. . Pune t ← φ(n).

obtinem 32 ≡ 52 ≡ 72 ≡ 1 (mod 8). Propozitie 6. a a a a a a Dar. rk este r˘d˘cin˘ primitiv˘ modulo n dac˘ ¸i numai a a a a a s dac˘ (k. r.1 Fie f ∈ Z[X]. trebuie s˘ remarc˘m c˘ nu pentru toate numere n exist˘ r˘d˘cini a a a a a a primitive.2 Existenta r˘d˘cinilor primitive ¸ a a Definitie 6.˘ ˘ 6. . .2 Fie r o r˘d˘cin˘ primitiv˘ modulo n.2. pentru n = 8. . EXISTENTA RADACINILOR PRIMITIVE ¸ 95 Spre exemplu. Atunci. atunci are exact a a a a a a φ(φ(n)) r˘d˘cini primitive. a Presupunem c˘ un num˘r natural nenul n are o r˘d˘cin˘ primitiv˘. a a .2. . . Din propozitia ¸ a a a a ¸ 6.2. rφ(n) este sistem redus de resturi modulo n. r2 . ¸ Astfel. un polinom de grad n ≥ 1 cu coeficienti ˆ ¸ ıntregi ¸i p un num˘r prim s a cu p an . . a a a a a a Pentru a stabili num˘rul total al acestora. dac˘ f (x) ≡ 0 (mod n). ord8 3 = ord8 5 = ord8 7 = 2 = 4. a a a pe x ≡ 1 (mod 3) ¸i x ≡ 2 (mod 3). a a a a as a Teorem˘ 6. atunci ¸ a a a a a r. Atunci. rφ(n) formeaz˘ un sistem redus de resturi modulo n. .1 (Lagrange) Fie f = an X n + an−1 X n−1 + . rk este a a a a r˘d˘cin˘ primitiv˘ modulo n dac˘ ¸i numai dac˘ (k. l) Corolar 6. De exemplu. φ(n)) = 1. f = X 2 + 2 are dou˘ r˘d˘cini necongruente modulo 3. Conform corolarului 6. ordn a = .1. .1. φ(n)) = 1. ¸ a s a k l atunci. am ar˘tat c˘ 3 este r˘d˘cin˘ primitiv˘ modulo 7.4 Dac˘ ordn a = k ¸i l > 0 este un num˘r natural. (k. a a Demonstratie. avem nevoie de urm˘toarea a a propozitie: ¸ Propozitie 6. Atunci.2. .1. f are cel mult n r˘d˘cini necongruente modulo p. un polinom de grad ≥ 1. exist˘ φ (φ(n)) astfel de numere. s Teorem˘ 6. Spunem c˘ x ¸ a este o r˘d˘cin˘ a lui f modulo n. Fie r o r˘d˘cin˘ primitiv˘ modulo n. a a a a De exemplu.3.1. a a a 6. deci tot a a atˆtea r˘d˘cini primitive modulo n. r2 .1. + a1 X + a a0 .3 Dac˘ r este r˘d˘cin˘ primitiv˘ modulo n.1.1 Dac˘ n are o r˘d˘cin˘ primitiv˘. .

Expresia sa a a a ın favorit˘ era je ne sais pas. De aici. . dinamic˘. g are cel mult d(e − 1) = p − d − 1 r˘d˘cini necongruente modulo p. ecuatiilor diferentiale. Din f (x)−f (x0 ) = an (xn − xn )+an−1 xn−1 − xn−1 +. rezult˘ g(xk ) ≡ 0 (mod p). aa a a a a a Consider˘m c˘ un polinom f de grad n are n + 1 r˘d˘cini necongruente a a a a modulo p pe care le not˘m x0 .+a1 (x−x0 ). . . ˆ calculul ın ¸ ın a ın probabilit˘¸ilor. astronomie.96 ˘ ˘ CAPITOLUL 6. f = a1 X + a0 . Atunci. X p−1 − 1 are p − 1 r˘d˘cini necona a a gruente modulo p ¸i orice astfel de r˘d˘cin˘ este r˘d˘cin˘ pentru X d − 1 s a a a a a a sau pentru g. Din mica teorem˘ a lui Fermat. + X d + 1 X d − 1 g(X). polinomul g care are gradul n − 1. Conform teoremei Lagrange. ˆ 1771 a demonstrat teorema lui Wilson. ¸ X p−1 − 1 = = Xd − 1 X d(e−1) + X d(e−2) + . rezult˘ c˘ ¸ a a presupunerea f˘cut˘ este fals˘. Pentru ¸ a ¸ a a n = 1. Atunci. obtinem: ¸ f (xk ) − f (x0 ) ≡ (xk − x0 )g(xk ) ≡ 0 (mod p). 0 0 obtinem c˘ f (x) = f (x0 ) + (x − x0 )g(x). a Deci. Fie p − 1 = de. a a Demonstratie. Cum acest rezultat contrazice ipoteza de inductie. xn . A obtinut rezul¸ tate importante ˆ calculul variational. congruenta a1 x ≡ −a0 (mod p) are o ¸ singur˘ solutie. a s . . x1 .2 Fie p un num˘r prim ¸i d | p − 1. Deci.2. . ˆ anul 1770 a ar˘tat c˘ orice num˘r ın In a a a natural este o sum˘ de patru p˘trate. X d − 1 are cel putin a a ¸ 1 Joseph-Louis Lagrange (1736-1813) a fost un autodidact. RADACINI PRIMITIVE Demonstratie 1 . a a ın Se consider˘ c˘ el a f˘cut primul pas ˆ dezvoltarea teoriei grupurilor. . Astfel. Pentru 1 ≤ k ≤ n. fapt ce dovede¸te marea sa modestie. X d − 1 are a a s exact d r˘d˘cini necongruente modulo p. are n r˘d˘cini necongruente a a modulo p. a f (xk ) ≡ 0 (mod p). pentru 0 ≤ k ≤ n. el neavˆnd avantajul a de a beneficia de sprijinul unor matematicieni contemporani lui. a ¸ s a a Presupunem afirmatia adev˘rat˘ pentru polinoame de grad n − 1 ¸i ¸ a a s ar˘t˘m c˘ ea r˘mˆne adev˘rat˘ pentru polinoame de grad n. care va fi ¸i r˘d˘cina modulo p a lui f. Proced˘m prin inductie matematic˘ dup˘ n. mecanica fluidelor. unde g este un polinom de grad ¸ a n − 1. f are cel mult n r˘d˘cini necona a a a a gruente modulo p. . . cum fiecare xk − x0 = 0 (mod p). Cum p a1 . ˆ at ¸ ¸ a ın fundamentarea calculului ˆ teoria numerelor. pe care l-a aplicat ˆ mecanic˘. Atunci. Teorem˘ 6.

a Presupunem c˘ exist˘ a cu ordp a = d. as a Deci. Pentru aceasta. adic˘ a a p − 1 | m. Not˘m ordp2 r = m. obtinem p − 1 = ¸ F (d). num˘rul a numerelor naturale de ordin d modulo p este egal cu φ(d).1 Orice num˘r prim are r˘d˘cini primitive. Din teorema anterioar˘. a2 . pentru 1 ≤ k ≤ d. Astfel F (d) ≤ φ(d). a a a a a Demonstratie. Dac˘ aplic˘m a a a a ˆ a o dat˘ teorema 6. atunci F (d) ≤ φ(d). EXISTENTA RADACINILOR PRIMITIVE ¸ 97 (p − 1) − (p − d − 1) = d r˘d˘cini necongruente modulo p. p − 1 = d|p−1 φ(d). fie d | p − 1. . Fie p num˘r prim. exist˘ φ(p−1) ¸ a a a numere necongruente modulo p.2. Din (ak )d ≡ akd ≡ 1 (mod p). rezult˘ rm ≡ 1 (mod p). mai mici decˆt p.4 Dac˘ p este un num˘r prim impar cu r˘d˘cina primia a a a a tiv˘ r. a s a Teorem˘ 6.1.3 Fie p un num˘r prim ¸i d | p − 1.1 pentru polinomul X d −1.2. ordp r = φ(p) = p − 1. obtinem c˘ p are φ(p − 1) r˘d˘cini a a a a ¸ a a a primitive.5. Pentru d | p − 1.2.4.˘ ˘ 6. . Demonstratie.1) . rezult˘ c˘ acestea sunt a a r˘d˘cini modulo p ale polinomului X d − 1.2. ¸ a Din rm ≡ 1 (mod p2 ). Atunci. Atunci. Cum fiecare dintre acestea este o r˘d˘cin˘ primitiv˘ modulo p. ele sunt exact ˆ num˘r a a a a ın a de φ(d). d) = 1.1. pentru d | p − 1. dac˘ exist˘ r˘d˘cini de ordin d modulo p. not˘m cu F (d) num˘rul numerelor ¸ a a naturale de ordin d modulo p. φ(d) = d|p−1 d|p−1 Dac˘ ar˘t˘m c˘ F (d) ≤ φ(d). obtinem c˘ el are cel ınc˘ a ¸ a mult d solutii necongruente modulo p. X d − 1 are exact d solutii ¸ ¸ necongruente modulo p. ad nu sunt a a congruente modulo p. Corolar 6.2. . a Cum ordinul modulo p al unui num˘r care nu este multiplu de p divide a p − 1. a. d|p−1 Din teorema 4. a a ¸ ordp ak = d dac˘ ¸i numai dac˘ (k. Teorem˘ 6. Folosind acest rezultat. din a aa a F (d). (6. atunci r sau r + p este r˘d˘cin˘ primitiv˘ modulo p2 . Dac˘ F (d) = 0. a a a Demonstratie. putem determina cˆte numere naturale necona gruente au un ordin dat modulo p. Astfel. va rezulta egalitatea F (d) = φ(d). Folosind propozitia 6. . de ordin p−1.

k−1 k−2 Aplicˆnd teorema lui Euler. ¸ ar˘t˘m c˘ ordp2 t = p − 1. Din calculele f˘cute anterior. s a Dac˘ m = p(p − 1). exist˘ r˘d˘cini a a a a a primitive modulo pk . Atunci. De exemplu. r este r˘d˘cin˘ primitiv˘ modulo p2 . rezult˘ c˘ 10 + 487 = 497 este r˘d˘cin˘ primitiv˘ a a a a a a modulo 4872 . Din a a a a a a 10486 ≡ 1 (mod 4872 ). rezult˘ m = p − 1 sau m = p(p − 1). din teorema 6. atunci. relatia se verific˘.1) ¸i ( 6. de unde a rp−2 ≡ 0 (mod p). a .2. RADACINI PRIMITIVE m | φ(p2 ) = p(p − 1). avem (r.3) Pentru k = 2. dac˘ r este o r˘d˘cin˘ primitiv˘ modulo p2 . Pentru a ˆ ıncheia demonstratia.1. pentru orice k num˘r natural. rp−1 = 1 (mod p2 ). a Demonstratie. a Mai mult. pentru orice k ≥ 2.4. rφ(p ) = rp (p−1) ≡ 1 (mod pk−1 ). care este ¸i r˘d˘cin˘ ¸ a a a a s a a a primitiv˘ modulo p2 . Presupunem c˘ ea este adev˘rat˘ pentru ¸ a a a a k > 2 ¸i ar˘t˘m c˘ ea r˘mˆne adev˘rat˘ pentru k + 1. Dac˘ tp−1 ≡ 1 (mod p2 ). 3 este r˘d˘cin˘ primitiv˘ modulo 49. Fie r o r˘d˘cin˘ primitiv˘ modulo p. p · rp−2 ≡ 0 (mod p2 ). observ˘m mai ˆ ai c˘ t este ¸i ea r˘d˘cin˘ primitiv˘ a ıntˆ a s a a a a modulo p. pentru p = 7. prin inductie matematic˘.2). p) = 1. r este r˘d˘cin˘ a a a a a a a a primitiv˘ modulo pk . pentru orice k ≥ 2: aa ¸ a a rp k−2 (p−1) = 1 (mod pk ). din ( 6.2. ceea ce este fals (p r). s aa a a a a a Din (r. Cum s a a a a a 36 ≡ 43 = 1 (mod 49). Teorem˘ 6. cum t ≡ r (mod p). Atunci.2) Astfel. o r˘d˘cin˘ primitiv˘ este 10. a a a a a Pentru m = p − 1 ar˘t˘m c˘ t = r + p este r˘d˘cin˘ primitiv˘ modulo aa a a a a a p2 . (6. (6. pk−1 ) = 1. rezult˘ c˘ a a a ordp2 t = p − 1 sau ordp2 t = p(p − 1).5 Fie p un num˘r prim impar. avem ˘ ˘ CAPITOLUL 6. a a a a Dac˘ consider˘m acum p = 487.98 Din corolarul 6.1. aa a tp−1 = (r + p)p−1 = rp−1 + p−2 j=1 j Cp−1 rp−j−1 pj + pp−1 ≡ rp−1 + (p − 1)p · rp−2 ≡ 1 + p(p − 1)rp−2 ≡ 1 − p · rp−2 (mod p2 ). Pentru aceasta. ¸tim c˘ 3 este r˘d˘cin˘ primitiv˘. c˘. a Ar˘t˘m.

Obtinem a ¸ astfel m = pt (p − 1) unde 0 ≤ t ≤ k − 1. putem scrie a = 2m + 1. a a a a S˘ vedem ce putem preciza despre puterile lui 2. Dac˘ t ≤ k − 2. De aici. 2 ¸i 4 sunt singurele puteri ale lui 2 pentru a a s care exist˘ r˘d˘cini primitive. rezult˘ rp (p−1) = 1 (mod pk+1 ). k−1 (6. rp (p−1) = 1 (mod pk ). cu k ≥ 1. Cum a este impar. Ridic˘m la puterea p ˆ relatia ( 6. . Atunci. num˘r natural pentru care: a a rp k−2 99 (p−1) k−2 = 1 + d · pk−1 . (6. a a s a φ(2k ) 2 = a2 k−2 ≡ 1 (mod 2k ). de unde m = φ(pk ). rezult˘ rm ≡ 1 (mod p). a Din rm ≡ 1 (mod pk ).2. t = k − 1. Deci. a k−2 k−2 Presupunem c˘ a2 a ≡ 1 (mod 2k ). pentru orice k ≥ 2. Demonstratie. rezult˘ a2 = (2m + 1)2 = 4m(m + 1) + 1 ≡ 1 (mod 8).4) Din.6 Dac˘ a este impar ¸i k ≥ 3. p − 1 | m.3). rezult˘ c˘ ¸ a a p d.5) Cum p d. atunci. c˘ afirmatia se verific˘ pentru ¸ aa ¸ a ¸ a fiecare k ≥ 3. ıns˘ Ca exemplu. De fapt. Deci. a2 = 1 + 2k · d. a De aici. m | φ(pk ) = pk−1 (p − 1). Se observ˘ imediat a a c˘ 1 este r˘d˘cin˘ primitiv˘ modulo 2 iar 3 este r˘d˘cin˘ primitiv˘ pentru a a a a a a a a a 4. k−1 2 a2 = 1 + 2k · d = 1 + d · 2k+1 + 22k d2 ≡ 1 (mod 2k+1 ). m ∈ N .˘ ˘ 6.2. Aceast˘ relatie contrazice a ¸ ˆ a ( 6. atunci a rp k−2 (p−1) = rp t (p−1) pk−2−t ≡ 1 (mod pk ). Pentru k = 3. ord2k 5 = a φ(2k ) 2 = 2k−2 .2. teorema arat˘ c˘. Not˘m m = ordpk r. Atunci. a k−2 Deci. Atunci. a a a Teorem˘ 6. Teorem˘ 6. rp (p−1) = 1 (mod pk ).7 Fie k ≥ 3. prin inductie. 3 este r˘d˘cin˘ primitiv˘ modulo 7k .4) ¸i obtinem a ın ¸ s ¸ rp k−1 (p−1) = (1 + d · pk−1 )p ≡ 1 + d · pk (mod pk+1 ). pentru un num˘r natural d. EXISTENTA RADACINILOR PRIMITIVE ¸ Exist˘ astfel d. ipoteza de inductie. Ar˘t˘m.

. adic˘ ord2k 5 2 a . (r. Deci n = pt sau s n = 2pt cu p prim impar ¸i t natural. nu a s exist˘ r˘d˘cini primitive modulo n. pentru k ≥ 3. R˘mˆne s˘ demonstr˘m prin inductie c˘. m 2 1 (6. . . φ(pα2 ). Pentru k = 3.100 ˘ ˘ CAPITOLUL 6.7) α Pentru ca produsul unor numere s˘ fie mai mic decˆt cel mai mic multiplu a a comun al acestora. a ordn r = φ(n) = φ(pα1 ) · φ(pα2 ) · . avem rφ(pj αj ) ≡ 1 (mod pj j ). pentru fiecare 1 ≤ j ≤ m. Din teorema anterioar˘. pj j ) = 1. numerele trebuie s˘ fie dou˘ cˆte dou˘ relativ prime. rezult˘: a a a 52 k−2 = (1 + 2k−1 ) + d · 2k 2 = (1 + 2k−1 )2 + (1 + 2k−1 ) · d · 2k+1 + d2 · 22k ≡ (1 + 2k−1 )2 ≡ 1 + 2k (mod 2k+1 ). Relatia se poate scrie sub ¸ k−3 2 k−1 k forma 5 = (1 + 2 ) + d · 2 . Acest num˘r este par dac˘ a a a p este impar sau dac˘ p = 2 ¸i t ≥ 2. 52 ¸ a ≡ 1 (mod 2k ). a s De aici. a s α Cum. un 2. Teorem˘ 6. relatia se verific˘ imediat. din teorema lui Euler. n) = 1 ¸i ordn r = φ(n). . Fie n = pα1 pα2 .8). . pαm . unde p este num˘r prim impar ¸i k natural.8) Pentru un num˘r prim p. RADACINI PRIMITIVE k−2 Demonstratie. φ(pαi ). pentru a se verifica ( 6. φ(pαm )] . φ(pt ) = pt−1 (p − 1). i α (6. Ridicˆnd la p˘trat. Presupunem c˘ exist˘ r r˘d˘cin˘ ¸ a a a a a m 1 2 primitiv˘ modulo n. . s . ˆ descompunerea lui n trebuie s˘ ın a existe un singur factor prim impar ¸i. Atunci.6) α De aici. φ(pj j ) = 1. m 2 1 (6. a a a Demonstratie. Astfel. ¸ a k−3 Presupunem c˘ 52 a ≡ 1 + 2k−1 (mod 2k ). Rezult˘ astfel. Atunci. rU ≡ 1 (mod pj j ).2. ord2k 5 | 2k−2 . a a a a ¸ a 2k−3 k−1 k k−3 pentru k ≥ 3. Not˘m a U = [φ(pα1 ). . pentru 1 ≤ i < j ≤ m. pentru orice 1 ≤ j ≤ m. · φ(pαm ) ≤ U. 5 ≡1+2 = 1 (mod 2 ). . (r. a a a a Deci.8 Fie n un num˘r natural care nu este de forma n = pk a a sau n = 2pk . eventual.

13) ) ≡ 1 (mod 2pk ). rezult˘ s a rφ(2p k k k ) ≡ 1 (mod pk ). Mai mult.10) ) ≡ 1 (mod 2pk ). 3 r˘mˆne r˘d˘cin˘ primitiv˘ a a a a a a modulo 2 · 7k . (6. a a ın a a a a De exemplu. r + pk este num˘r impar. a Demonstratie. a a (r + pk )φ(2p Din r ≡ r + pk (mod pk ). ¸tim c˘ r = 3 este r˘d˘cin˘ primitiv˘ modulo 7k . ¸ a a a a k Atunci. Atunci.9) ) ≡ 1 (mod 2). dac˘ r este o a a a a r˘d˘cin˘ primitiv˘ modulo pk .11) Pentru t < φ(2pk ). a a s a Atunci. obtinem s ¸ rφ(2p Dac˘ r este impar. avem (r + pk )φ(2p Ultimele dou˘ relatii. ˆ caz contrar. (6. Fie r o r˘d˘cin˘ primitiv˘ modulo pk . exist˘ r˘d˘cini primitive modulo 2pk .9 Fie p un num˘r prim impar ¸i k un num˘r natural. atunci r este r˘d˘cin˘ primitiv˘ modulo a a a a a a a a 2pk dac˘ r este num˘r impar. (6. pens a a a a a tru k natural.14) se verific˘. a rφ(2p Din ( 6. . arat˘ c˘ a ¸ a a (r + pk )φ(2p k k k ) ≡ 1 (mod 2). r + pk va fi o r˘d˘cin˘ a a In a a a primitiv˘ modulo 2pk . EXISTENTA RADACINILOR PRIMITIVE ¸ 101 Teorem˘ 6. cum r este impar. rt = 1 (mod 2pk ) ¸i obtinem astfel: s ¸ ord2pk r = φ(2pk ).2. (6. (6.2. din rφ(p ) ≡ 1 (mod pk ) ¸i φ(2pk ) = φ(pk ). r˘d˘cin˘ primitiv˘ modulo 2pk . a a rezult˘ c˘ r + pk este.14) Cum φ(2pk ) este cea mai mic˘ putere pentru care ( 6.9) ¸i ( 6. Dac˘ r este par. ˆ acest caz.˘ ˘ 6. (6. Astfel.10).12) ) ≡ 1 (mod pk ).

1 Fie r o r˘d˘cin˘ primitiv˘ modulo n ¸i a.2. .3. rφ(n) este un sistem redus de resturi ¸ modulo n. ¸ at a at are ordinul φ(n).2. a a a a Conform propozitiei 6. r2 . Alege aleator a un element al grupului. 2 este r˘d˘cin˘ primitiv˘ pentru 25. Atunci.2. . a 6.3 Index aritmetic Fie r o r˘d˘cin˘ primitiv˘ modulo n. 2 este r˘d˘cin˘ primitiv˘ modulo 5. 2 + 5k este a a a a a o r˘d˘cin˘ primitiv˘ modulo 2 · 5k . a 2. prim cu n. pαk . existenta unei r˘d˘cini primitive modulo n este echiva¸ a a lent˘ cu cea a unui generator pentru grupul U (Zn ). Deci. Pentru i = 1.2. .3. a 3.1 Dac˘ ¸inem cont c˘ U (Zn ). . r. . mergi la pasul 1. 2. generatorul grupului. pk . 1 2 k Algoritm 6. Returneaz˘ a. Num˘rul natural 1 ≤ x ≤ φ(n) pentru care a ≡ rx (mod n) se nume¸te a s indexul lui a ˆ baza r modulo n ¸i ˆ vom nota indr a. k execut˘: a 2. . grupul unit˘¸ilor lui Zn . 4. . pαk .1. num˘r na¸ a a a a s a tural prim cu n. 1.10 Exist˘ r˘d˘cini primitive modulo n dac˘ ¸i numai a dac˘ n ∈ {2. Dac˘ b = 1. ordinul grupului. 2pk } unde p este prim impar ¸i k num˘r natural. pentru orice ˆ ıntreg a.1. . a s a Observatie 6. 1 2 k OUTPUT: a. . .102 ˘ ˘ CAPITOLUL 6. a a a a Deci. Calculeaz˘ b ← an/pi . . . as a Prezent˘m ˆ final un algoritm de determinare a unui generator pena ın tru un grup ciclic de ordin n = pα1 pα2 . ıncˆ Definitie 6. exist˘ un unic 1 ≤ x ≤ φ(n) a astfel ˆ at a ≡ rx (mod n). Fiind num˘r par.1 (Generatorul unui grup ciclic) INPUT: n = pα1 pα2 . RADACINI PRIMITIVE La fel. a a a a Toate rezultatele oferite ˆ acest subcapitol pot fi reunite ˆ ın ıntr-unul singur care s˘ stabileasc˘ exact modulele pentru care exist˘ r˘d˘cini a a a a a primitive: a a a a s Teorem˘ 6. 24 ≡ 16 = 1 (mod 25). exist˘ r˘d˘cini a a a a primitive modulo n dac˘ ¸i numai dac˘ U (Zn ) este grup ciclic. ın s ıl .

Atunci. Astfel.3. aplicˆnd propozitia a s a ¸ 6. obtinem indr a = indr b. prime cu n. ¸ a a a a Astfel.1 Fie r o r˘d˘cin˘ primitiv˘ modulo n ¸i a. a a ¸ De exemplu. b dou˘ nu¸ a a a a s a mere naturale. a a a . avem: a a a a 31 ≡ 3 (mod 7) 34 ≡ 4 (mod 7) 32 ≡ 2 (mod 7) 35 ≡ 5 (mod 7) 33 ≡ 6 (mod 7) 36 ≡ 1 (mod 7) Obtinem: ¸ a ind3 a 1 6 2 2 3 1 4 4 5 5 6 3 Mai trebuie remarcat faptul c˘ o schimbare a r˘d˘cinii primitive cona a a duce la modificarea valorii indexului.15).15) Mai observ˘m c˘ pentru a ≡ b (mod n). pentru r = 3 r˘d˘cin˘ primitiv˘ modulo n = 7. ab ≡ (r)indr (ab) (mod n). indr (ab) ≡ indr a + indr b (mod φ(n)). 2) indr (ab) ≡ indr a + indr b (mod φ(n)). Deci. cum 5 este cealalt˘ r˘d˘cin˘ a a a a primitiv˘ modulo 7. rindr (ab) ≡ rindr a+indr b (mod n) ¸i. ordn r = φ(n). INDEX ARITMETIC Deci. Dar.6. a ≡ rindr a (mod n) 103 (6. 3) se demonstreaz˘ asem˘n˘tor cu subpunctul 2). indr 1 = φ(n) ≡ 0 (mod φ(n)). rindr a+indr b = rindr a · rindr b ≡ ab (mod n).1. rφ(n) ≡ 1 (mod n) ¸i φ(n) este cea mai mic˘ putere pentru care s a se verific˘ congruenta. Rezult˘ astfel. a ¸ 2) Din ( 6.2. 1) r fiind r˘d˘cin˘ primitiv˘ modulo n. urm˘toarele afirmatii sunt adev˘rate: a ¸ a 1) indr 1 ≡ 0 (mod φ(n)). 3) indr ak ≡ k · indr a (mod φ(n)). tabela de index modulo 7 devine: a a ind5 a 1 6 2 4 3 5 4 2 5 1 6 3 Propozitie 6. Demonstratie.3.

3. deci exist˘ r˘d˘cini primitive modulo 23. a s S˘ rezolv˘m acum o congruent˘ de forma: a a ¸a 3x ≡ 2 (mod 23). Obtinem 14 · ind5 x ≡ 8 (mod 22). de ¸ unde 7 · ind5 x ≡ 4 (mod 11). Congruenta este echivalent˘ cu ind5 (3x ) ≡ ind5 2 (mod 22). Putem scrie aceast˘ solutie ¸i a ¸ s sub forma x ≡ 7 (mod 23). Deci. ord23 5 = 22.3. S˘ studiem acum congruentele de forma a ¸ xk ≡ a (mod n) (6. a a ¸ ¸ . 5 este r˘d˘cin˘ primitiv˘ modulo a a a a 23. ¸ a 16 + 14 · ind5 x ≡ 2 (mod 22). Deci. adic˘ ¸ a a x · ind5 3 ≡ 2 (mod 22). a din tabela de index rezult˘ direct x ≡ 9 (mod 23) ¸i x ≡ 14 (mod 23).2 Cu notatiile anterioare. ˆ Inmultim congruenta cu ¯ ≡ 8 (mod 11) ¸i ¸ ¸ 7 s rezult˘ ind5 x ≡ 10 (mod 11). 23 este num˘r prim. Deci. De exemplu. ind5 x = 10 sau ind5 x = 21.16) are solutii. Din 16 · x ≡ 2 (mod 22) obtinem: ¸ 8 · x ≡ 1 (mod 11). x ≡ 18 (mod 23). RADACINI PRIMITIVE O prim˘ aplicatie a indexului const˘ ˆ rezolvarea unor tipuri de a ¸ a ın congruente. spunem c˘ a este k−putere ¸ ¸ a rezidual˘ a lui n dac˘ congruenta ( 6. deci x ≡ 7 (mod 11). s˘ consider˘m pentru ˆ ¸ a a ınceput congruenta: ¸ 3x14 ≡ 2 (mod 23).104 ˘ ˘ CAPITOLUL 6.1. exist˘ r˘d˘cini primitive modulo n a a a iar a ¸i n sunt relativ prime.16) unde a. n. Scriem tabela de index modulo 23 relativ la aceast˘ r˘d˘cin˘ primitiv˘: a a a a a a 1 2 3 4 ind5 a 22 2 16 4 a 12 13 14 15 ind5 a 20 14 21 17 5 6 7 8 9 10 11 1 18 19 6 10 3 9 16 17 18 19 20 21 22 8 7 12 15 5 13 11 Congruenta devine ind5 (3 · x14 ) ≡ ind5 2 (mod 22). rezult˘ ind5 3 + 14 · ind5 x ≡ 2 (mod 22). Cum a a a a 511 ≡ −1 (mod 23). k sunt numere naturale. ¸ Folosind propozitia 6. s Definitie 6. Atunci.

sunt d solutii necongruente. EXPONENTI UNIVERSALI ¸ Teorem˘ 6.16) ¸ a a a a ¸ este echivalent˘ cu a k · indr x ≡ indr a (mod φ(n)). p−1 d ≡ 1 (mod p). observ˘m c˘. 6. p − 1).1. aφ(n) ≡ 1 (mod n). φ(n)). din teorema lui Euler. a este k−putere rezidual˘ a lui p dac˘ ¸i numai dac˘ s a as a a unde d = (k. exist˘ exact a ¸ ¸ a d solutii necongruente modulo n. Mai mult. φ(n) indr a φ(n) d | indr a ⇔ φ(n) · = · indr a ≡ 0 (mod φ(n)) ⇔ a d ≡ d d rindr a φ(n) d ≡ rφ(n) indr a d ≡ 1 (mod n). Fie r o r˘d˘cin˘ primitiv˘ modulo n. s ın ¸ Dar.1 Un exponent universal al lui n este un num˘r natural ¸ a e cu proprietatea c˘ ae ≡ 1 (mod n).1 Teorema arat˘ c˘.8.2.4. unde d = (k. a s aU ≡ 1 (mod n). pentru p num˘r prim.6). pentru un a ¸ a a num˘r natural n ¸i pentru orice a prim cu n. Definitie 6.6.4.1 Congruenta ( 6. n) = 1. unde U este cel definit ˆ relatia ( 6. ¸ Demonstratie. ın ¸ La fel. dac˘ congruenta are solutii. φ(n)) ¸i. pentru orice a prim cu n.17) Din teorema 3.3.3. pentru orice a cu (a.16) are solutii dac˘ ¸i numai dac˘ a ¸ ¸ as a a φ(n) d 105 ≡ 1 (mod n). k natural ¸ ¸i a prim cu p. aceast˘ congruent˘ are solutii dac˘ ¸i numai dac˘ a ¸a ¸ a s a d | indr a unde d = (k. (6. a .2.4 Exponenti universali ¸ Dac˘ revedem demonstratia teoremei 6. ˆ acest caz. a a a Observatie 6. Congruenta ( 6.

aλ(2 ) ≡ 1 (mod 2k0 ).6. pkm . unde pi sunt numere prime ima m 1 pare distincte ¸i ki ≥ 1. φ(pkm ) . s λ(n) = λ(2k0 ).2 Cel mai mic exponent universal al lui n poart˘ numele ¸ a de exponent universal minimal ¸i ˆ not˘m λ(n). λ(4) = φ(4) = 2. a m 1 Din λ(2k0 ) | M ¸i φ(pki ) = λ(pki ) | M. s λ(2) = φ(2) = 1. atunci λ(n) = φ(n). s ¸ Definitie 6. . prim cu n.2. . Astfel. ¸ ki ki Cum (a.1 Fie n = 2k0 pk1 . cel a a a mai mare ordin posibil modulo n. 1 ≤ i ≤ m ¸i consider˘m a a a a s a i sistemul de congruente: ¸ k0 . g˘sim un num˘r a cu proprietatea c˘ at = 1 (mod n). Not˘m cu ri o r˘d˘cina primitiv˘ modulo pki . RADACINI PRIMITIVE Deci.2. .106 ˘ ˘ CAPITOLUL 6. U ¸i φ(n) sunt exponenti universali ai lui n. Pentru aceasta.2. φ(pkm ) . s˘ c˘ut˘m o formul˘ ın a a a a pentru a determina λ(n). Din teorema 6. i Not˘m M = λ(2k0 ). pentru k ≥ 3.4. pi ) = 1. Fie a prim cu n. φ(pk1 ). exist˘ a. al c˘rui ordin s˘ fie egal cu λ(n). S˘ ar˘t˘m c˘ el este ¸i a a a aa a s minimal. λ(2 ) = 2k−2 . Este evident c˘.2. . Acest a va fi elementul de ordin maxim modulo n.7 ¸tim c˘ a2 s s a ≡ 1 (mod 2k ). pentru k−2 k . . pentru p prim impar ¸i k natural. Demonstratie. m 1 ˆ In plus. a a a a a a Astfel. Am ar˘tat astfel c˘ M este exponent universal. . φ(pk1 ). rezult˘ s a i i aM ≡ 1 (mod n). s ıl a Folosind descompunerea ˆ factori primi a lui n. a a a pentru t < M.10 precizeaz˘ c˘: a a λ(2 · pk ) = λ(pk ) = φ(pk ). k ≥ 3. dac˘ n are o r˘d˘cin˘ primitiv˘. . Atunci. aφ(pi ) ≡ 1 (mod pki ). teorema 6.4.6 ¸i 6. . pentru 1 ≤ i ≤ m. pentru fiecare i. a impar ¸i ord2k 5 = 2 s Teorem˘ 6. k−2 Din teoremele 6.

a a Algoritm 6. ¸ 4. ordn a = M. De aceea ele se ¸ a numesc pseudo-aleatoare. dup˘ o anumit˘ regul˘ (de exemplu.4. Atunci. OUTPUT: a.1 pentru a g˘si β o r˘d˘cin˘ s a a a a primitiv˘ mod q. ¸ i λ(2k0 ) | t ¸i fiecare φ(pki ) | t. Cel mai mare dezavantaj ˆ generarea de nuın mere pseudo-aleatoare prin aceste metode. Folose¸te algoritmul 6. pornind de la un num˘r ales initial.   x ≡ rm (mod pkm ) m 107 Folosind teorema chinezeasc˘ a resturilor. M | t. pkm = n.4. λ(52 ) = [2. Ar˘t˘m c˘ ordn a = M.4. ¸ i Obtinem ord2k0 a = λ(2k0 ). Dar.  . cu 1 ≤ i ≤ m. ˆsi g˘se¸te apli¸ ı¸ a s catii ˆ unele metode de generare a numerelor pseudo-aleatoare. ordpki a = λ(pki ). a 3. nu sunt aleatoare. ˆ functie de alegerea a ın ¸ i .2.  . 20] = 20.1 pentru a g˘si 1 ≤ a ≤ n a a solutia sistemului x ≡ α (mod p). Sirurile obtinute astfel. Atunci. q numere prime impare. Rezult˘ a ≡ 27 (mod 100). q − 1].1 (Element de ordin maxim modulo n = pq) INPUT: p.1 pentru a g˘si α o r˘d˘cin˘ s a a a a primitiv˘ mod p. a Observatie 6. s i S˘ aplic˘m aceast˘ teorem˘ pentru n = 100. Deci. este c˘. De aici.1 Exponentul universal minimal. pentru s fiecare i. . m 1 Fie t pentru care at ≡ 1 (mod n). Aplic˘ algoritmul 3. Aceste ¸ ın metode creeaz˘ un ¸ir de numere. . rezolv˘m sistemul: a x ≡ 3 (mod 4) x ≡ 2 (mod 25) folosind teorema chinezeasc˘ a resturilor.3. cu ordn a = [p − 1. a 2. a s a ¸ numit generator. exist˘ o solutie unic˘ a. a a ¸ a aa a modulo 2k0 pk1 . metoda celor mai mici p˘trate). metoda ¸ ın a a a congruentei liniare. at ≡ 1 (mod pki ). a este solutie a sistemului. 1. x ≡ β (mod q). Folose¸te algoritmul 6. Returneaz˘ a. Pentru a determina elementul de ordin 20 modulo 100.2.6. EXPONENTI UNIVERSALI ¸  k  x ≡ 3 (mod 2 0 )    x ≡ r1 (mod pk1 ) 1 . at ≡ 1 (mod 2k0 ) ¸i. a a a a λ(100) = λ(22 ). ele fiind ¸ ¸ obtinute ˆ mod metodic. λ(n).

2 2 Demonstratie. pentru φ(n) (a. a a a a a Lem˘ 6. cel mai mare ±1−exponent a a posibil. Din acest motiv se urm˘re¸te ca lungimea maxim˘ a a a s a ¸irului f˘r˘ repetitie. RADACINI PRIMITIVE generatorului. pe care ˆ vom nota λ0 (n) ¸i ˆ numim ±1−exponent maximal al ıl s ıl lui n. a φ(n) 2 2 . Cum.3 Fie n > 0. φ(n) λ(n) λ0 (n) = = .2 Pentru n > 2. s˘ fie cˆt mai mare.4. a Definitie 6. de unde obtinem. φ(n) este num˘r par. pentru fiecare n. λ(n) = φ(n). n) = 1. cu situatia ˆ care exist˘ o r˘d˘cin˘ primitiv˘ ¸ ın a a a a a modulo n. aφ(n) = φ(n) 2 λ(n) ∈ N. ¸ a a a a Atunci. ¸ ¸ ¸ ˆ Incepem. se nume¸te ±1−exponentul lui s a modulo n. ˆ acest cax. De aici. deci e1 ≤ λ0 (n).4. toti ±1−exponentii modulo n sunt ≤ λ(n). care se s a repet˘ mereu. pot rezulta ¸iruri cu un num˘r redus de numere. ˆ final. sau | e1 . un num˘r natural prim cu n. 2 λ0 (n) este cel mai mare ±1−exponent modulo n.1 Fie n cu proprietatea c˘ nu exist˘ r˘d˘cini primitive moa dulo n ¸i fie a. s a a ¸ a a a Ea este dat˘ de λ(n). 2 ≡ 1 (mod n). a ≡ ±1 (mod n). r ≡ ±1 (mod n). prim cu n. cu proprietatea c˘ exist˘ r˘d˘cini primia tive modulo n. ±1−exponentul a a lui a modulo n este egal cu λ(n). Din definitie. Atunci. natural ¸i a. egalitatea ¸ ın 2 dorit˘. Fie r o r˘d˘cin˘ primitiv˘ modulo n. 2 e1 Not˘m cu e1 ±1−exponentul lui r modulo n. Atunci. ca ¸i ˆ s ınainte. Cel mai mic num˘r ¸ s a natural x pentru care ax ≡ ±1 (mod n). Astfel. ordn r = φ(n) | 2e1 . adic˘ λ0 (n) ≤ a .108 ˘ ˘ CAPITOLUL 6. ın a Folosind teorema lui Euler. φ(n) Rezult˘ astfel c˘ a a ≤ λ0 (n). cu ordn a = λ(n). a φ(n) de unde r2e1 ≡ 1 (mod n).4. s a λ(n) Presupunem c˘ a verific˘ a 2 = −1 (mod n). numit˘ lungimea perioadei. a a a a Teorem˘ 6. Vrem s˘ determin˘m.

. . . Folosind rezultatul lemei anterioare. . Fie a solutia sistemului a ¸ . Din ea ≤ λ(n). Din ipotez˘. ordn a = λ(2k0 ). Astfel.1. . . Fie n = 2k0 pk1 . k φ(pj j ) λ(n) λ(n) a | . am g˘sit a care 2 2 verific˘ conditiile lemei 6. λ(n) = 2. Astfel. . φ(pk ) = φ(pk ). .6. . Demonstratie. a 2 = a 2 λ(n) −1 (mod n). 1 φ(pj j ) . . . . . pkm . pentru a demonstra ¸ teorema trebuie doar s˘ g˘sim un num˘r a care verific˘ conditiile acestei a a a a ¸ leme. avem a 2 ≡ ±1 (mod n). 1 Din a ≡ k 2 rj (mod k pj j ).4. m 2 φ(pj j ) . obtinem ea = ¸ sau ea = λ(n). 2 λ(n) λ(n) λ(n) Pentru ea = . Deci. atunci. λ(2k0 ). k > 0. a a a a a λ0 (n) = λ(n). . avem s λ(n) λ(n) | 2ea . m 2 ≡ rj φ(pj j ) k k k Din alegerea lui j. obtinem a ¸ φ(p kj ) j 2 ≡ 1 (mod pj j ). φ(pk1 ). ¸ a aea ≡ ±1 (mod n). Consider˘m mai multe cazuri: a m 1 1) n are cel putin doi factori primi impari diferiti. . indicele pentru care exponentul lui 2 ˆ aceste descompuneri este ın minim. Dar. . Fie a solutia a a a a ¸ i sistemului:  k  x ≡ 3 (mod 2 0 ) x ≡ ri (mod pki ) ∀i = j i  k 2 x ≡ rj (mod pj j ) Din teorema 6. 1 ≤ i ≤ m. φ(pkm ) . k0 ≥ 2.4.1. Fie ri o r˘d˘cin˘ primitiv˘ modulo pki . . s ¸ Teorem˘ 6. φ(pkm ) = λ(n). Cum ordn a = λ(n) ¸i a2ea ≡ 1 (mod n). φ(pk1 ).4. Deci.3 Dac˘ nu exist˘ r˘d˘cini primitive modulo n.4. Dac˘ k0 = 2 sau 3. a 2 ≡ 1 = −1 (mod n). ¸ ¸ k Descompunem ˆ factori primi φ(pi i ) pentru 1 ≤ i ≤ m. Not˘m ±1−exponentul lui a modulo n cu ea . a ¸ 2) n = 2k0 pk cu p prim impar. ordn a = λ(n) implic˘ a 2 = 1 (mod n). Vom nota ın cu j. . EXPONENTI UNIVERSALI ¸ 109 Demonstratie. acest caz a nu este posibil ¸i obtinem ea = λ(n).

folosind aceea¸i directie de ˆ a ¸ a s ¸ ımbinare la fiecare jonctiune. a a ¸ S˘ vedem cum se utilizeaz˘ ±1−exponentul maximal λ0 (n) ˆ procea a ın sul de ˆ ımbinare a cablurilor telefonice. a Pentru ˆ ımbinarea cablurilor. alegem a ca fiind solutia sistemului a ¸ x ≡ 3 (mod 2k0 ) x ≡ r (mod pk ) . Astfel. Liniile telefonice se construiesc prin ˆ ımbinarea sectiunilor de cablu. Cablurile telefonice sunt formate din mai multe straturi concentrice de fire izolate din cupru. 1 ≤ j ≤ n. unde s poart˘ numele de ˆ a ıntinderea sistemului de ˆ ımbinare. s Folosind lema 6. de fapt. ¸ a Atunci. nu trebuie s˘ fie adiacente.2. dou˘ fire adiacente din acela¸i strat ˆ a s ıntr-o sectiune. λ(n) λ(n) λ(n) λ(n) a 2 ≡ 3 2 ≡ (32 ) 4 ≡ 1 (mod 8) ¸i astfel. Din a a a a a λ(n) λ(n) s a a a ≡ 1 (mod 4). ±1−exponentul lui a modulo n este λ(n). Rezult˘ ordn a = λ(n).110 ˘ ˘ CAPITOLUL 6. a 2 ≡ 1 (mod 4) ¸i rezult˘ c˘ a 2 = −1 (mod n). k0 ≥ 3. RADACINI PRIMITIVE x ≡ 1 (mod 4) x ≡ r (mod pk ) unde r este r˘d˘cin˘ primitiv˘ modulo pk . Din 5 2 ≡ (52 ) 4 ≡ 1 (mod 8). Din 4 | λ(2k0 ). Presupunem c˘ stratul are n fire ¸i conect˘m firul aflat ¸ a s a pe pozitia j. Obtinem ordn a = λ(n). apar probleme de interferent˘ ¸i de suprapuneri de ¸ ¸a s convorbiri. ˆ acela¸i strat. Astfel. ˆ orice sectiune ¸ a ın s ın ¸ apropiat˘. se ˆ ımbin˘ firul j cu cel care se afl˘ cu s modulo n pozitii a a ¸ mai departe (ˆ sensul convenit) din sectiunea urm˘toare. λ(n) rezult˘ 5 2 = −1 (mod n). Dac˘ k0 ≥ 4. ordn 5 = λ(n). S(j) se define¸te ca fiind restul modulo n al lui ¸ a s 1 + (j − 1)s. deci a = 5 verific˘ conditiile lemei. modalitatea de a realiza acest lucru trebuie s˘ a a fie simpl˘. ¸inˆnd cont de mediul ˆ care se realizeaz˘ aceste ˆ a t a ın a ımbin˘ri. De asemenea.4. rezult˘ ea = λ(n).7.1. Din acest motiv. dintr-o sectiune cu cel de pe pozitia S(j) din ¸ ¸ ¸ sectiunea urm˘toare. rezult˘ 4 | λ(n). ın ¸ a . vom aplica urm˘toarea regul˘: a a Firele dintr-un strat concentric sunt ˆ ımbinate cu fire din stratul corespunz˘tor al sectiunii urm˘toare. a 2 = −1 (mod n). a 3) n = 2k0 . λ(n) λ(n) Din teorema 6. Dac˘ dou˘ fire din acela¸i strat devin adiacente ˆ ¸ a a s ın mai multe sectiuni.

De exemplu. a a a a a a Folosind aceast˘ r˘d˘cin˘. ord17 9. 19. ¸ a a 3. Precizati pentru ce ¸ valori ale lui n exist˘ r˘d˘cini primitive modulo n. din prima sectiune. dac˘ ¸ a a a a a n ∈ {22. 98. 5. ¸ Aplicˆnd metoda inductiei matematice. EXPONENTI UNIVERSALI ¸ 111 Corespondenta definit˘ trebuie s˘ fie bijectiv˘.6. adic˘ st−1 ≡ ±1 (mod n). 10. 121. trebuie s˘ alegem ˆ a a a ıntinderea s care are ±1− exponentul maximal λ0 (n). ar˘tati c˘ produsul numerelor mai mici decˆt a a a a a ¸ a a n ¸i relativ prime cu n este congruent cu −1 modulo n. ˆ a Inlocuind. 1 ≤ j. Determinati toate solutiile urm˘toarelor congruente: ¸ ¸ a ¸ i) 3x5 ≡ 1 (mod 23). rezult˘ congruenta js ≡ ks (mod n) care trebuie s˘ implice j = k. ord13 10. 18. a a a 4. 25. . Determinati ord10 3. Determinati o r˘d˘cin˘ primitiv˘ modulo n. 100. k ≤ n. pentru a a ın ¸ le p˘stra cˆt mai mult separate. Determinati toate r˘d˘cinile primitive modulo 13. a ¸ a (s. a Deci. pornind de la dou˘ fire adiacente ˆ prima sectiune. 8. n) = 1. λ0 (100) = λ(100) = 20 iar s = 27 a fost a calculat anterior. Not˘m cu St (j) firul cu care este ˆ a ımbinat ˆ sectiunea t firul initial ın ¸ ¸ j. 26. ¸ 2. Fie n un num˘r natural pentru care exist˘ r. Fie n ∈ {4. Deci.4. 343. ii) 13x ≡ 5 (mod 23). atunci j = k. 169}. adic˘: ¸ a a a a dac˘ S(j) ≡ S(k) (mod n). 1001}. se obtine u¸or c˘ a ¸ ¸ s a St (j) ≡ 1 + (j − 1)st−1 (mod n). s 6. Atunci. o r˘d˘cin˘ primitiv˘. s ın ¸ a a St (j) − St (j + 1) ≡ ±1 (mod n). dac˘ n = 100. trebuie ca firele adiaa a ¸ cente s˘ fie separate ˆ cˆt mai multe sectiuni posibile. Exercitii propuse ¸ 1. Pentru a fi ˆ ındeplinit˘ regula precizat˘ initial. Presupunem c˘ a ın a ¸ a firele j ¸i j + 1 sunt adiacente ˆ a t−a sectiune f˘cut˘.

. Fie n ∈ {12. 36. 25. 36.112 ˘ ˘ CAPITOLUL 6. Determinati un num˘r al c˘rui ordin ¸ a a modulo n este cel mai mare posibil. 11. cu p num˘r prim impar. 17. 30}. RADACINI PRIMITIVE 7. Stabiliti toate valorile lui a ¸ ¸ pentru ca aceast˘ congruent˘ s˘ aib˘ solutie. 15. Calculati λ(n) ¸i ±1−exponentul maximal pentru ¸ s n ∈ {11. a ¸a a a ¸ 9. Fie n ∈ {13. 144. 12. Determinati un num˘r a al c˘rui ¸ a a ±1−exponent modulo n este egal cu λ0 (n). Pentru ce numere naturale a congruenta ax4 ≡ 2 (mod 13) are ¸ solutii? ¸ 8. 38. a a a a a p−1 Ar˘tati c˘ indr (p − 1) = a ¸ a . 22. 222}. 2 10. 15. Fie r o r˘d˘cin˘ primitiv˘ modulo p. 14. 47}. Fie congruenta 8x7 ≡ a (mod 29). 120.

1 Fermat a a a g˘sit forme liniare ¸i pentru numere prime de forma a2 + 2b2 ¸i a2 + 3b2 . a a a De aici. ˆ anul 1755.CAPITOLUL 7 Reciprocitate p˘tratic˘ a a Diofante. dar prima demonstratie cunosa a ¸ a ın ¸ cut˘ este datorat˘ lui Euler. a a ın 113 . Diofante cuno¸tea formula s (a2 + b2 )(c2 + d2 ) = (ac ± bd)2 + (bc ad)2 care arat˘ c˘ un produs de sume de dou˘ p˘trate este la rˆndul ei o a a a a a sum˘ de dou˘ p˘trate. Fermat a dedus c˘ pentru a cunoa¸te care numere se scriu a s ca sum˘ de dou˘ p˘trate. trebuie s˘ fie cunoscute numerele prime cu a a a a aceast˘ proprietate. Este u¸or de ar˘tat c˘ numerele prime de forma a s a a 4k + 3 nu sunt sum˘ de dou˘ p˘trate. ˆ Arithmetica. a f˘cut urm˘toarea afirmatie care a fost punctul ın a a ¸ de plecare pentru obtinerea rezultatului cunoscut sub numele de legea ¸ reciprocit˘¸ii p˘tratice: at a 65 se scrie ˆ mod natural ca sum˘ de dou˘ p˘trate. datorit˘ faptului c˘ 65 = 13 · 5 iar fiecare dintre factori este a a sum˘ de dou˘ p˘trate. a s s Primele sunt numere prime de forma 8k + 1 sau 8k + 3 iar ultimele sunt exact cele de forma 3k + 1. Dificil este de ar˘tat c˘ toate a a a a a numerele prime de forma 4k + 1 sunt sume de dou˘ p˘trate. adic˘ 72 + 42 ¸i ın a a a a s 82 + 12 . a a a Evident. 1 Aceat˘ teorem˘ a fost enuntat˘ de Fermat ˆ 1640.

6. Cˆnd p. 3. spunem c˘ a nu este rest p˘tratic modulo m. Astfel. q sunt amˆndoi de forma 4k + 3. atunci p este p˘trat moa a a dulo q dac˘ ¸i numai dac˘ q nu este p˘trat modulo p. Lem˘ 7. decˆt pe cˆteva cazuri particulare.1. dup˘ teorema lui Pitagora. 8. as a a 2.1 Fie m un num˘r natural ¸i a un ˆ ¸ a s ıntreg. ¸ ˆ a a Spre exemplu. a se nume¸te rest p˘tratic modulo m dac˘ congruenta x2 ≡ a (mod m) s a a ¸ are solutii.2 at a 7. sau nu are solutie. aceasta a devenit a doua teorem˘ cu cele at a a mai multe demonstratii.1.1 Simbolul Legendre Definitie 7.1) . Astfel. cu p a. 7. din congruentele: ¸ 12 ≡ 102 ≡ 1 (mod 11) 32 ≡ 82 ≡ 9 (mod 11) 52 ≡ 62 ≡ 3 (mod 11) 22 ≡ 92 ≡ 4 (mod 11) 42 ≡ 72 ≡ 5 (mod 11) rezult˘ c˘ 1. pentru p ¸i q numere prime s s impare. In caz contrar. a a prima demonstratie fiind dat˘ de Gauss. 5. 9 sunt resturi p˘tratice modulo 11 iar 2. Altfel. RECIPROCITATE PATRATICA La mijlocul secolului al XVIII-lea. a2 + 2b2 sau a2 + 3b2 depinde dac˘ p este p˘trat a a (mod q) pentru anumiti ˆ ¸ ıntregi p ¸i q.114 ˘ ˘ CAPITOLUL 7. Congruenta a a s ¸ x2 ≡ a (mod p) are 2 solutii necongruente modulo p. aceast˘ afirmatie se nume¸te s a ¸ s legea reciprocit˘¸ii p˘tratice. relativ prim cu m. Euler observ˘ c˘ aflarea numerelor a a prime de forma a2 + b2 .1 Fie p num˘r prim impar ¸i a ∈ Z. 4. ¸ a (7. p este p˘trat modulo q dac˘ ¸i numai dac˘ q este p˘trat a a s a a modulo p. 10 nu a a a sunt. ¸ ¸ 2 Euler nu a putut demonstra acest rezultat. el a obtinut urm˘torul rezultat: ¸ a 1. Datorit˘ relatiei reciproce ˆ a ¸ ıntre p ¸i q. Exist˘ aproape 200 de demonstratii diferite ¸ a a ¸ pentru legea reciprocit˘¸ii p˘tratice.

3 11 = 4 11 = 1 iar 2 11 = 6 11 = −1. exist˘ exact ¸ a a turi p˘tratice modulo p ¸i a s numerele 1. a a s ıntreg relativ prim cu Definitie 7. 3 Adrien-Marie Legendre (1752-1833). s ¸ a atunci. R˘mˆne s˘ ar˘t˘m s ¸ a a a aa c˘ orice alt˘ solutie y a lui ( 7. acest caz nu ne intereseaz˘ ˆ studiul nostru. p | 2x0 .1. .1 Pentru p num˘r prim impar. proced˘m ca ˆ exemplul anterior. a a −1. dac˘ a nu este rest p˘tratic mod p. 2. Din y 2 ≡ a ≡ x2 (mod p). . . p | x0 .7. . sunt exact resturi p˘tratice a 2 p−1 p−1 modulo p.1) este congruent˘ modulo p cu una din a a ¸ a acestea dou˘.1. simbolul lui Legendre ¸ a este definit ¸i pentru cazul cˆnd p | a. . Deci.1). a prezentat multe rezultate importante legate de legea reciprocit˘¸ii p˘tratice at a ¸i a numerelor prime aflate ˆ s ıntr-o progresie aritmetic˘.1 In unele lucr˘ri de specialitate. prin: p a p = 1. a . 2. pe x0 . Pentru a determina resturile p˘tratice modulo p dintre ¸ a numerele 1. obtinem p | y 2 − x2 . SIMBOLUL LEGENDRE 115 Demonstratie. a a ˆ Observatie 7. s a a ın a ¸ Dar. Definim simbolul lui Legendre . . . .1.1) are 2 solutii necon¸ a ¸a ¸ p−1 gruente modulo p sau niciuna. ˆ lucrarea sa de teoria numerelor din anul ın 1785. de unde p | a. ˆ num˘r de p − 1 − a ın a = sunt non2 2 resturi p˘tratice modulo p. Cum p este impar. p − 1. ¸i −x0 este solutie pentru ( 7. luˆnd valoarea 0 ˆ aceast˘ situatie. p | y − x0 sau p | y + x0 de unde obtinem rezultatul dorit. p−1 res2 p−1 non-resturi p˘tratice modulo p ˆ a ıntre 2 Demonstratie. Cum p este a ¸ 0 0 prim.1) are o solutie. Stim c˘ fiecare congruent˘ ( 7. ¸ a ¸ ¸ Atunci. Sunt p − 1 p˘trate care a a trebuie considerate.2 Fie p num˘r prim impar ¸i a un ˆ ¸ a 3 p. Cele r˘mase. Presupunem c˘ congruenta ( 7. Deci. Dac˘ x0 ≡ −x0 (mod p). ceea ce este fals. x0 ¸i −x0 sunt solutii necongruente modulo p. a ın Spre exemplu. p−1. dac˘ a este rest p˘tratic mod p. Calcul˘m resa ın a turile modulo p ale p˘tratelor celor p − 1 numere. ¸ Propozitie 7.1.

congruenta ( 7. fiecare cu produsul egal 2 p−1 cu a. (p − 1)! ≡ a 2 (mod p).1 (Criteriul Euler) Fie p num˘r prim impar. ≡ b 2 (mod p) p p . a p = b p . Dac˘ a ≡ b (mod p).3. Deci.1) are solutie pe care o not˘m x0 . Atunci.1.2) p a = 1. ≡ a 2 (mod p).3 obtinem a s ¸ ap−1 ≡ 1 (mod p). a p−1 2 ≡ −1 (mod p). . Atunci.1) nu are solutie.4. 2. 1. p − 1 ˆ ın perechi. a ∈ Z cu a a p a. Demonstratie. Euler a folosit acest rezultat pentru a obtine un ¸ criteriu care s˘ stabileasc˘ dac˘ un num˘r este rest p˘tratic modulo p a a a a a sau nu. Atunci. ¸ a Demonstratie. ˆ acest caz. = ab p . . Teorem˘ 7. pentru orice 1 ≤ i ≤ p − 1 exist˘ 1 ≤ j ≤ p − 1 astfel a ˆ at ij ≡ a (mod p). 1) a ≡ b (mod p). Aplicˆnd acum teorema Wilson. b ∈ Z cu p a ¸i p b. congruenta ¸ p ( 7. din teorema 3. Din teorema 3. ¸ a s s Atunci.1. RECIPROCITATE PATRATICA Pentru p num˘r prim ¸i p a (mod p).116 ˘ ˘ CAPITOLUL 7. a p a2 p · b p = 1. Atunci. rezult˘ a a Propozitie 7. 3. atunci a 2. p−1 a ≡ a 2 (mod p).2. .4. x2 ≡ a (mod p) are solutii dac˘ ¸ ¸ a ¸i numai dac˘ x2 ≡ b (mod p) are solutii. s a ¸ p−1 p−1 a b 2) Folosind criteriul lui Euler. . (7. i ¸i j trebuie s˘ fie diferite.1. Putem ıncˆ In s a p−1 grupa numerele 1. Presupunem mai ˆ ai c˘ ¸ ıntˆ a a Consider˘m acum a p−1 2 = x2 0 p−1 2 ≡ xp−1 ≡ 1 (mod p). ¸ ¸ p Din teorema 3. 0 a = −1.2 Fie p num˘r prim impar ¸i a.

atunci exist˘ 1 ≤ m.1.7. . . p − u2 . pentru i = j. Din (j · a. . . . Cum p p p p valorile simbolului lui Legendre sunt ±1. 2a. . vt celelalte resturi. us resturile modulo p mai mari decˆt ¸ a . −1. ceea ce contrazice ipoteza. ar exista m. . . n ≤ a a 2 Demonstratie. . Obtinem astfel: a ¸ Teorem˘ 7. vt acoper˘ multimea aa a a ¸ p−1 }ˆ ıntr-o anumit˘ ordine. . toate resturile se afl˘ ˆ multimea {1.2 Dac˘ p este num˘r prim impar. Fie u1 . obtinem egalitatea cerut˘. . v2 . atunci a = (−1)s . . Atunci. 2. 2. . cum m = n (mod p). . rezult˘ ultima afirmatie. SIMBOLUL LEGENDRE ¸i s 117 p−1 ab a b ab ≡ (ab) 2 (mod p). a a. v1 . pentru i = j.1. a Un alt criteriu care stabile¸te dac˘ un num˘r este rest p˘tratic modulo s a a a p a fost enuntat de Gauss. . v2 . De aici. ¸ a s Lem˘ 7. 3a. p − 1}.1. . ¸ a a 3) Folosind 2). . u2 . p − us . . prim a p−1 cu p. a {1. . din = ±1. Dac˘ dintre resturile modulo p ale numerelor a. p−1 Dac˘ p − ui ≡ vj (mod p). a ¸ p Observ˘m c˘ punctul 2) al propozitiei afirm˘ c˘ produsul a dou˘ a a ¸ a a a resturi p˘tratice sau a dou˘ non-resturi p˘tratice modulo p este rest a a a p˘tratic. Deci.2 (Lema lui Gauss) Fie p > 2 num˘r prim ¸i a ∈ Z. . · ≡ (mod p). . . p) = 1 pentru orice s a p−1 1≤j≤ . pe cˆnd produsul dintre un rest p˘tratic ¸i un non-rest p˘tratic a a a s a modulo p este un non-rest p˘tratic modulo p. rezult˘ ıncˆ a p | a. 2 p a doar s sunt mai mari decˆt . n ≤ a 2 astfel ˆ at ma ≡ na (mod p). . vedem u¸or care numere prime impare au s pe -1 rest p˘tratic. a a a −1 p = 1. a ın ¸ 2 Ar˘t˘m c˘ p − u1 . . . ui = uj (mod p) ¸i s vi = vj (mod p). . . dac˘ p ≡ 1 (mod 4). 2 p p 2 ¸i not˘m v1 . 2 p−1 Dac˘ avem uj ≡ ui (mod p) sau vi ≡ vi (mod p). . a Folosind criteriul lui Euler. a dac˘ p ≡ −1 (mod 4).

ceea ¸ ce este imposibil ¸inˆnd cont de alegerea numerelor m. RECIPROCITATE PATRATICA pentru care ma ≡ p−na (mod p).7) Prin ˆ ınmultire cu (−1)s .5) p−1 ! (mod p) 2 p−1 !≡ 2 p−1 ! (mod p). .ˆ ıntr-o anumit˘ ordine. vt ≡ Dar. . .5). p − u2 . . vt ≡ adic˘ a (−1)s u1 u2 . obtinem s ¸ (−1)s a De aici. us v1 v2 . . p − us . . . cum p ¸i s p−1 2 p−1 2 p−1 ! (mod p) 2 (7. . 2. obtinem ¸ ¸ finalizeaz˘ demonstratia. vt sunt a p−1 numerele 1. v1 . . . us v1 v2 .4) ¸i ( 7. a 2 (p − u1 )(p − u2 ) . Am demonstrat astfel c˘ p − u1 . . us v1 v2 . a ¸ ≡ (−1)s (mod p) ceea ce p−1 = 5. . . . · u1 u2 . m ≡ −n (mod p). obtinem s ¸ 1·6≡6 2·6≡1 3·6≡7 4·6≡9 5·6≡8 (mod (mod (mod (mod (mod 11) 11) 11) 11) 11) . pentru t a i = j. Obtinem atunci. . . . . . . . . rezult˘ a 2 (−1)s a p−1 2 ≡ 1 (mod p). . . vt ≡ a · 2a · . Deci.4) · a (mod p) de unde (7. Atunci. vt ≡ a Din ( 7. pentru p = 11 ¸i a = 6. p − ui = vj (mod p). a p ≡a p−1 2 (7.118 ˘ ˘ CAPITOLUL 7. 2 (7. .6) p−1 ! sunt relativ prime. (p − us )v1 v2 . . . . Rezult˘ a 2 De exemplu.3) p−1 ! (mod p) 2 p−1 2 (7. n. u1 u2 . v2 . . . .

a 2 p−1 p p2 − 1 R˘mˆne s˘ ar˘t˘m c˘ a a a aa a − ≡ (mod 2). p = 8k ± 1. a −1 dac˘ p ≡ ±3 (mod 8). pentru k natural.1. a p−1 p p2 − 1 Rezult˘ astfel. = 8k 2 ± 6k + 1 ≡ 1 (mod 2). a − ≡ (mod 2). avem situatiile: ¸ p ≡ ±1 (mod 8) sau p ≡ ±3 (mod 8). dac˘ p = 8k + 1. 2 4 8 Pentru aceasta. a 8 2k + 1 ≡ 1 (mod 2). Obtinem ¸ p2 − 1 = 8k 2 ± 2k ≡ 0 (mod 2). exist˘ s = a a − resturi 2 2 4 p mai mari decˆt . Pentru primul caz.1.3 Dac˘ p este num˘r prim impar. P˘st˘m notatiile din demonstratia lemei lui Gauss. 8 2k ≡ 0 (mod 2). a 2k + 2 ≡ 0 (mod 2). 119 Folosind lema lui Gauss. dac˘ p = 8k + 5. a 2 p = (−1) p2 −1 8 = 1 dac˘ p ≡ ±1 (mod 8). SIMBOLUL LEGENDRE Cum sunt 4 resturi mai mari decˆt 5. 2 4 8 2 p −1 Pentru p = 8k ± 3. caracteriz˘m numerele prime impare care a au pe 2 rest p˘tratic. ¸ s ın a ¸ ¸ a p−1 p − = 2 4 . a p p−1 − = 2 4 2k + 1 ≡ 1 (mod 2). ¸ a a ¸ ¸ p p p p−1 . Din 2 · j ≤ pentru j ≤ rezult˘ c˘ exist˘ a a a Fie 1 ≤ j ≤ 2 2 4 4 p p−1 p numere strict mai mici decˆt . dac˘ p = 8k + 7. Atunci. a Obtinem ¸i ˆ aceast˘ situatie congruenta dorit˘. Pe de alt˘ parte. a Demonstratie. cum p este prim impar. dac˘ p = 8k + 3. a a a Teorem˘ 7.7. a 6 11 = (−1)4 = 1.

RECIPROCITATE PATRATICA De exemplu. 2.1 Fie p num˘r prim impar ¸i a ∈ Z. ¸ a ¸ a a a necesar˘ ˆ demonstratia teoremei. Atunci. p (7. datorat˘ lui Gauss. ¸ s a ¸ ¸ ˆ Inainte de a o enunta. leag˘ a a a Lem˘ 7. deoarece 13 ≡ −3 (mod 8). 7.2 Legea reciprocit˘¸ii p˘tratice at a p q de unde p. cum 317 ≡ 9 (mod 11). impar.120 ˘ ˘ CAPITOLUL 7. ¸tiind dac˘ congruenta x2 ≡ q (mod p) are solutii. p) = j=1 ja . a ın ¸ Teorema elegant˘. cu p a. 89 13 89 13 . 317 11 .9) . ea precizeaz˘ dac˘ congruenta x2 ≡ p (mod q) are at a a a ¸ solutii. s˘ calcul˘m urm˘toarele simboluri Legendre: a a a 1.2. Pentru aceasta. pentru c˘: a 13 −1 = 1 ¸i. Cunoscut˘ sub numele de legea rea ciprocit˘¸ii p˘tratice. s 13 din 13 ≡ 1 (mod 4) rezult˘ a 2 13 = −1.p) (7. Din 89 ≡ −2 (mod 13) rezult˘: a = −2 13 = −1 13 · 2 = −1.8) T (a. a a s a p unde p−1 2 = (−1)T (a. q q p sunt numere prime impare diferite. s˘ vedem cum functioneaz˘ urm˘toarea lem˘. obtinem: ¸ 317 11 9 11 3 11 2 = = = 1.

.12) (a − 1) j=1 j = pT (a. . p − u1 . Aplicˆnd ˆ a o dat˘ lema lui Gauss. ın a 2 Calculˆnd suma lor. 2a. obtinem a ınc˘ a ¸ a p = (−1)s = (−1)T (a. . vt pe cele a 2 2 p < . . Consider˘m resturile modulo p ale numerelor a.p) . 2. . . Teorema ˆ artirii cu rest arat˘ c˘ ımp˘ ¸ a a 2 ja = p ja +r p unde r este restul ˆ artirii care nu poate fi decˆt un uk sau un vl . . ımp˘ ¸ a p−1 Adunˆnd cele a astfel de ecuatii. LEGEA RECIPROCITATII PATRATICE 121 Demonstratie. .11). rezult˘ a a p−1 2 s t s t k= k=1 j=1 (p − uj ) + j=1 vj = ps − j=1 uj + j=1 vj . (7. p) − ps + 2 j=1 uj . (7. . . . . . . p − us . p) − s (mod 2). p−1 . . de unde s T (a. . . ¸ a p−1 p a. .2. v2 . . (7. u2 . Not˘m cu u1 . . 0 ≡ T (a. us pe cele > iar cu v1 .11) De aici. obtinem: ¸ ¸ 2 p−1 2 p−1 2 ja = j=1 j=1 p ja + p s t uk + k=1 l=1 vl . (7.2.1. eventual ˆ alt˘ ordine.10) relatia ( 7. vt sunt exact resturile 1.14) . p) ≡ s (mod 2). sc˘zˆnd din ( 7. .10) Din lema 7. .13) Cum a ¸i p sunt impare. rezult˘ a a ¸ a p−1 2 p−1 2 p−1 2 ja − j=1 j=1 p−1 2 j = j=1 p ja − ps + 2 uj p j=1 s s (7. v1 . .˘¸ ˘ 7. .

1 ≤ y ≤ = 5. Dac˘ egalitatea ar fi verificat˘ pentru o pereche (x. fals. de unde. (2.1 (Legea reciprocit˘¸ii p˘tratice) Fie p. 2 2 Sunt ˆ total 15 astfel de perechi pentru care nu se verific˘ egalitatea ın a 11x = 7y. Atunci. Pentru o valoare fixat˘ a a 7 11x lui x sunt valori posibile pentru y. 1 ≤ y ≤ 5 ¸i s s 7y 7y 1≤x≤ . y) cu 1 ≤ x ≤ 3. (3. Atunci. 3). (3. 1 ≤ y ≤ 5 a a 11x ¸i 11x > 7y. In 3 11j 11 22 33 = + + = 1 + 3 + 4 = 8. (2. a a 5 j=1 7j 7 14 21 28 35 = + + + + = 0 + 1 + 1 + 2 + 3 = 7. (3. Consider˘m p = 7 ¸i q = 11.15) S˘ vedem cum am aplica lema anterioar˘ pentru a demonstra teorema a a pe cazul numeric tratat anterior. y) cu 1 ≤ x ≤ 3. (3. 1). ˆ artim aceste perechi ˆ dou˘ grupe dup˘ Imp˘ ¸ ın a a cum urmeaz˘: a Prima grup˘ este format˘ din perechile (x. 11 ˆ mod analog. p = 11. Cea de-a doua grup˘ cuprinde celelalte perechi. (2. 1 ≤ y ≤ s . RECIPROCITATE PATRATICA S˘ calcul˘m simbolul lui Legendre pentru a = 7. 1).2. 7 3 11j Astfel. 4). de unde 11 | y. 11 7 = (−1)8 = 1. 11 11 11 11 11 11 7 = (−1)7 = −1. q numere a at a prime impare. Atunci. Teorem˘ 7. adic˘: a a (x. a s 7−1 11 − 1 Form˘m perechi (x. atunci a a 11 | 7y. Pentru o valoare fixat˘ a lui y sunt a valori posibile 11 11 . 2). 1 ≤ x ≤ 3. y) cu 1 ≤ x ≤ a = 3. 2).122 ˘ ˘ CAPITOLUL 7. 1). prima grup˘ este format˘ din a a = 8 perechi care sunt: 7 j=1 (1. 1 ≤ y ≤ 5 ¸i 11x < 7y. p q · q p = (−1) p−1 q−1 2 · 2 (7. y). 3). 7 7 7 7 j=1 De aici.

2 2 p−1 q−1 · astfel de perechi. Dac˘ qx = py. 5). (3. (1. 5). 7 11 j=1 5 11 7 · 7 11 . qx > py. ceea ce este fals. LEGEA RECIPROCITATII PATRATICE pentru x. 2). ¸ Demonstratie.2. y). a ın 3 5 11 − 1 · 7 − 1 11j 7j 2 2 = (−1)j=1 7 · (−1)j=1 11 = (−1) 3 j=1 11j 7j + = 8 + 7. atunci q | py. 2 Atunci. 11 − 1 7 − 1 · = 5 · 3 = 15 = 2 2 Rezult˘. ˆ final. 1≤y≤ . a 2 2 de unde q | y. ˆ artim aceste perechi ˆ dou˘ grupe ca mai sus. Astfel. S˘ ne ˆ a ıntoarcem acum la demonstratia teoremei. 4). 5). prima grup˘ este format˘ din a a j=1 . perechile c˘utate sunt exact cele pentru care 1 ≤ x ≤ a 1≤y ≤ qx . 1 ≤ x ≤ p−1 q−1 . 1≤y≤ . (1. Deci. y). qx = py. Form˘m perechi ¸ a (x. Imp˘ ¸ ın a Astfel. 1 ≤ x ≤ Sunt ˆ total ın p−1 q−1 .˘¸ ˘ 7. pentru fiecare pereche (x. Astfel. (1. 4). 2 2 p−1 . prima grup˘ este format˘ din perechile a a (x. 3). Pentru o valoare fixat˘ a lui x sunt a p p−1 2 qx p qj p valori posibile perechi. (2. pentru y. y). (2. Grupa este format˘ din a 5 j=1 123 7j = 7 perechi care sunt: 11 (1.

este num˘r impar. p) + 2 2 (−1)T (q. Rezult˘. p q j=1 j=1 Folosind notatiile lemei 7. a S˘ observ˘m c˘ a a a (−1) p−1 q−1 2 · 2 = 1. y) este egal cu: a p−1 q−1 · = 2 2 p−1 2 q−1 2 qj pj + . 2 2 Atunci. a dac˘ p ≡ q ≡ 3 (mod 4).  p dac˘ p ≡ 1 (mod 4) sau q ≡ 1 (mod 4). a Obtinem: ¸   q  .1.2. putem scrie: ¸ T (p. ˆ caz a a ın 2 contrar. aceast˘ grup˘ este format˘ din a a a q pj perechi. −1. a p−1 q−1 · = T (q. Obtinem astfel ¸ p−1 este num˘r par dac˘ p ≡ 1 (mod 4) iar. Pentru o valoare fixat˘ a lui y a 2 q py valori posibile pentru x. 1 ≤ x ≤ . qx < py. ¸ a q p ¸i (−1)T (p.124 ˘ ˘ CAPITOLUL 7.1.q) = s p q p−1 q−1 2 · 2 . a . 1 ≤ y ≤ sunt q−1 2 q−1 py . dac˘ p ≡ 1 (mod 4) sau q ≡ 1 (mod 4). Deci. RECIPROCITATE PATRATICA A doua grup˘ cuprinde perechile pentru care a 1≤x≤ p−1 q−1 . 1≤y≤ .p) · (−1)T (p. (−1)T (q. q j=1 Num˘rul total de perechi (x. a dac˘ p ≡ q ≡ 3 (mod 4). .q) = (−1) Din lema 7.p) = relatia dorit˘.p)+T (p.q) = (−1)T (q.  p p = q   − q .2. q). Astfel.

de unde: 31 1009 17 31 14 2 7 = = = = = · . rezult˘: a 1009 217 31 7 = · 1009 1009 1009 1009 ≡ 1 (mod 4).1 Fie n = pα1 pα2 . consider˘m p = 11. unde ¸ m 2 1 pi sunt numere prime distincte. . = 217 1009 1009 7 = = 13 = 1.3. SIMBOLUL JACOBI 125 Spre exemplu. ¸ ¸ . a 19 11 11 Folosind teorema 7.3 Simbolul Jacobi Simbolul Jacobi4 este o generalizare a simbolului Legendre.7. a rezult˘: a 3 11 19 2 =− =− = −(−1)3 = 1. pentru c˘ 11 ≡ 3 (mod 8). 7 1009 8 7 = 2 7 ¸i obtinem s ¸ 3 Proced˘m analog pentru a 7 1009 Deci. q = 19. pαm un num˘r compus impar. 1009 31 31 17 17 17 17 2 Din 17 ≡ 1 (mod 8). 7. a Definitie 7. αi ≥ 1. = (−1) · 1 = −1.6). pentru fiecare 1 ≤ i ≤ m.1. 4 Carl Gustav Jacob Jacobi (1804-1851) are contributii importante ˆ teoria nu¸ ın merelor. ˆ studiul functiilor eliptice cˆt ¸i al ecuatiilor cu ın ¸ a s ¸ diferentiale partiale. din 217 = 31 · 7. Pentru .2. putem calcula acum anumite simboluri 217 Legendre. El este folositor ˆ evaluarea acestuia ¸i apare ˆ definirea unui tip de numere pseuın s ın doprime (vezi capitolul 10. . = 1. ¸ = = = = − = − = 1009 17 7 7 3 3 − 2 3 2 = −1. legate de resturi cubice. Din 11 ≡ 19 ≡ 3 (mod 4).3. 17 31 7 17 3 7 4 Obtinem.

cu (a. s s ¸ De exemplu. 2 1001 = 2 7 · 2 11 · 2 13 = 1 · (−1) · (−1) = 1..1 Fie n num˘r natural impar ¸i a. Din modul de definire al simbolului Jacobi. Definim simbolul Jacobi a a n a p1 α1 = · a p2 α2 · . este posibil ca x2 ≡ a (mod n) s˘ nu aib˘ solutii. Atunci: 1) Dac˘ a ≡ b (mod n) atunci. a a n = b n . Astfel. n a Dar. · a pm αm . Deci. Trebuie s˘ remarc˘m faptul c˘.. pentru fiecare 1 ≤ i ≤ m.3. pentru toti ¸ pi divizorii primi pi ai lui n. . simbolul coincide cu simbolul a Legendre.126 ˘ ˘ CAPITOLUL 7. RECIPROCITATE PATRATICA a n prin: Consider˘m a ∈ Z cu (a. congruenta initial˘ nu are solutii. dac˘ a = 1. a (b. n) = 1. cu toate ¸ ¸ a ¸ 11 2 c˘ a = (−1)(−1) = 1. ¸ ¸ = 1. Deoarece pentru n num˘r prim. congruenta x ≡ 2 (mod 55) este echivalent˘ cu sistemul ¸ a de congruente: ¸ x2 ≡ 2 (mod 5) x2 ≡ 2 (mod 11) Cele dou˘ congruente care formeaz˘ sistemul nu au solutii pentru c˘ a ¸ a ¸ a 2 = = −1. n) = 1. a obtinem ¸ = 1. valoarea a a a a simbolului Jacobi nu precizeaz˘ dac˘ congruenta x2 ≡ a (mod n) are a a ¸ solutii. a ¸ ¸ a congruenta x2 ≡ a (mod pi ) are solutii. atunci. 55 2 5 a s Teorem˘ 7. pentru n num˘r compus. n) = 1. ¸ Dac˘ congruenta are solutii. se folose¸te aceea¸i notatie. a a ¸ n 2 Spre exemplu. b ∈ Z.

. n2 −1 8 . .. . Fiecare pi − 1 fiind un num˘r par. .. (1 + (pm − 1))αm . . (1 + αi (pi − 1)) · (1 + αj (pj − 1)) ≡ 1 + αi (pi − 1) + αj (pj − 1) (mod 4). = (−1) = (−1) . . pαm descompunerea ˆ factori primi ¸ ın m 1 2 a lui n. ¸ a −1 pi Astfel. pi pi αi αi m m a a b b Rezult˘ a = = = . pentru fiecare a 1 ≤ i ≤ m.3. 1) Fie n = pα1 pα2 . n pi pi pi n n i=1 i=1 i=1 3) Din criteriul lui Euler obtinem c˘.+αm pm −1 2 2 . Deci. b a = . Din a ≡ b (mod n). rezult˘: a a (1 + (pi − 1))αi ≡ 1 + αi (pi − 1) (mod 4). pentru fiecare i. n ≡ 1 + α1 (p1 − 1) + α2 (p2 − 1) + . (7. rezult˘ a ≡ b (mod pi ). n pi pi n i=1 i=1 αi αi αi m m m ab ab a b a b 2) = = · = · . + αm (pm − 1) (mod 4). Astfel. obtinem ¸ n = (1 + (p1 − 1))α1 (1 + (p2 − 1))α2 .17) Din descompunerea lui n. pentru fiecare 1 ≤ i ≤ m.16) = i=1 −1 pi αi = (−1)α1 p1 −1 +. SIMBOLUL JACOBI 2) 3) 4) ab n −1 n 2 n = a n · b n n−1 2 127 .7. −1 n m = (−1) pi −1 2 . (7. . Demonstratie.

21) . 2 n = i=1 m = (−1) p2 −1 i 8 . α1 (p2 − 1) α2 (p2 − 1) αm (p2 − 1) n2 − 1 1 2 m ≡ + +. + αm (p2 − 1) (mod 64).18) 2 2 2 2 ¸i astfel. .+ (mod 8). 2 pi = (−1)α1 p2 −1 p2 −1 1 +. ¸ s ¸ ¸ a Teorem˘ 7. a n m · m n = (−1) n−1 m−1 2 · 2 .19) ¸i ( 7. r r s β α β n n i pj j i = = m qi qi i=1 i=1 j=1 (7. Atunci. pαs ¸i m = q1 1 q2 2 . obtinem relatia cerut˘.19) Ca la subpunctul precedent. pentru fiecare 1 ≤ i ≤ m. ˘ ˘ CAPITOLUL 7. RECIPROCITATE PATRATICA n−1 α1 (p1 − 1) α2 (p2 − 1) αm (pm − 1) ≡ + + .128 Atunci. 2 pi αi 4) Conform lemei lui Gauss. s s 1 2 Atunci. . i i de unde: n2 ≡ 1 + α1 (p2 − 1) + α2 (p2 − 1) + . relativ prime... n dou˘ numere naturale impare. (7. obtinem ¸ i (1 + (p2 − 1))αi ≡ 1 + αi (p2 − 1) (mod 64)..2 (Legea de reciprocitate pentru simbolul Jacobi) a Fie m. Demonstratie.20) 8 8 8 8 Din relatiile ( 7. (7. 1 2 m Cum fiecare p2 − 1 ≡ 0 (mod 8).. . ..3. 1 2 m De aici.+αm m 8 8 . . Atunci. qr r . s −1 n = (−1) n−1 2 . . Consider˘m descompunerile canonice: ¸ a β β β n = pα1 pα2 .. . .20). (1 + (p2 − 1))αm . + (mod 2) (7. n2 = (1 + (p2 − 1))α1 (1 + (p2 − 1))α2 .

3. SIMBOLUL JACOBI ¸i s m n Astfel.1.25).25) αj j=1 r pj − 1 2 qi − 1 2 qi − 1 2 ≡ ≡ ≡ n−1 (mod 2) 2 (7.27) βi i=1 m−1 (mod 2). n m · m n = i=1 j=1 129 s = j=1 m pj r αj s r = j=1 i=1 s qi pj qi pj αj β i (7. r s i=1 j=1 αj pj − 1 2 βi = αj pj − 1 2 · r i=1 βi qi − 1 2 (7.23) Dar. n m · m n r s · qi pj = (−1) pj −1 2 ·( qi −1 2 ). (7. obtinem: ¸ ¸ s i=1 j=1 αj pj −1 2 βi ( qi −1 2 . 2 2 ˆ Inlocuind aceast˘ ultim˘ relatie ˆ ( 7.2. pj qi Deci. rezult˘: a a ¸ ın a n m · m n = (−1) n−1 m−1 2 · 2 . .22) pj qi αj β i · (7.24) = (−1) i=1 j=1 r αj pj −1 2 βi ( qi −1 2 )= ) s = (−1) Din relatia ( 7.7. (7.18).28) n−1 m−1 · (mod 2).26) (7. din teorema 7. 2 s j=1 Astfel.

130 ˘ ˘ CAPITOLUL 7.30) (7. Presupunem a > n.32) (7.3. punˆnd ˆ evident˘ a a ın ¸a puterea maxim˘ a lui 2 din fiecare rest. ˆ final un algoritm eficient de determinare a simbolurilor ın Jacobi. r1 r2 . toti sj ∈ N . n = 407. r1 −1 r2 −1 r2 r1 = (−1) 2 · 2 · . RECIPROCITATE PATRATICA Stabilim. rj impari ¸i rj < rj−1 . dac˘ alegem a = 3027. Obtinem astfel.34) rn−3 rn−2 = rn−1 qn + 2sn−1 · 1 unde pentru 1 ≤ j ≤ n − 1.3 Fie a > n numere naturale relativ prime.3.+ n−2 · 8 8 2 2 . r2 r1 Demonstratie. Folosind rezultatele teoremei 7.1.+sn−1 n−1 + 12 · 22 +. Teorem˘ 7. a ¸ r0 = r1 q2 + 2s1 r2 r1 = r2 q3 + 2s2 r3 r2 = r3 q4 + 2s3 r4 ··· sn−2 = rn−2 qn−1 + 2 rn−1 (7.. Aplic˘m algoritmul lui Euclid. obtinem ¸ ¸ s1 2 r1 −1 a r0 2s1 r2 2 r2 = = = · = (−1)s1 8 · n r1 r1 r1 r1 Din teorema 7. sima a bolul Jacobi este egal cu: n (−1)s1 2 r2 −1 r −1 rn−1 −1 r1 −1 r −1 r −1 +. n numere naturale.2. obtinem relatiile: a ¸ ¸ 3027 = 407 · 7 + 2 · 89 407 = 89 · 4 + 20 · 51 89 = 51 · 1 + 2 · 19 51 = 19 · 2 + 20 · 13 19 = 13 · 1 + 2 · 3 13 = 3 · 4 + 20 · 1. r1 = n.29) (7. Atunci.. Fie a. ¸ s De exemplu.31) (7.3.. . relativ prime.. Not˘m a r0 = a.33) (7.

2.1. SIMBOLUL JACOBI Deci. (7.36) ˆ Inlocuind relatiile ( 7. 2 2 2 2 3027 Atunci. v ← u. n) = 1 ¸i a a s se opre¸te. u ← (v − u)/2. atunci returneaz˘ (a. s 2 2.1.1. = (−1)31369 = −1. Dac˘ u = v. atunci u ← u/2. k ← k · (−1)(v −1)/8 a 2. Dac˘ u > v atunci u ← (u − v)/2.3.3. folosind celelalte relatii din algoritmul lui Euclid penIn ¸ tru 2 ≤ j ≤ n − 2. 407 1· Algoritm 7. a OUTPUT: n 1. Cˆt timp u > 1 calculeaz˘: a a 2 2. a . n. k ← 1. 2 k ← k · (−1)(v −1)/8 3. u ← a mod n.35) vom obtine rezultatul dorit. rezult˘: a rj−1 rj = (−1)sj 2 rj −1 −1 r −1 r + j2 · j+1 8 2 · rj rj+1 . Dac˘ u este par.7. k ← k · (−1)(u−1)·(v−1)/4 . ¸ ın ¸ Pentru exemplul anterior. Returneaz˘ k.2.1 (Simbolul Jacobi) INPUT: numerele naturale a. k ← k · (−1)(v −1)/8 a 2. 2. (7.1. a n = (−1)s1 2 r1 −1 r −1 r −1 + 12 · 22 8 131 · r1 r2 . v ← n.36) ˆ ( 7.35) ˆ mod analog. vom obtine exponentul lui −1 egal cu: ¸ 4072 − 1 892 − 1 512 − 1 192 − 1 132 − 1 +0· +1· +0· +1· + 8 8 8 8 8 2 3 − 1 407 − 1 89 − 1 89 − 1 51 − 1 51 − 1 19 − 1 0· + · + · + · + 8 2 2 2 2 2 2 19 − 1 13 − 1 13 − 1 3 − 1 · + · = 31369.

97 101 . Dac˘ a = 0. Ar˘tati c˘ 5 este rest p˘tratic modulo p. a OUTPUT: n 1. atunci returneaz˘ s ¸i se opre¸te. Dac˘ e este par. Calculati ¸ 5 Fn ¸i s 7 Fn . a a s s 3. a s 6. 4. s a 5. Ar˘tati c˘: a ¸ a i) −3 este rest p˘tratic modulo p.132 ˘ ˘ CAPITOLUL 7. returneaz˘ 1 ¸i se opre¸te. 27 101 . Altfel. dac˘ n ≡ ±1 (mod 8) a a pune s ← 1 ¸i dac˘ n ≡ ±3 (mod 8) pune s ← −1. . pune s ← 1. returneaz˘ s · J(n1 . 1801 8191 . as a 4. 111 1001 . a a s s 2. a a 3.Dac˘ a = 1. unde Fn este un num˘r prim Fermat. a 5. a . −5 nu este ¸ a rest p˘tratic modulo p. cu p num˘r prim impar. n) INPUT: numerele naturale a < n. atunci returneaz˘ 0 ¸i se opre¸te. unde a1 este impar.2 J(a. a ¸ a a a dac˘ ¸i numai dac˘ p ≡ ±1 (mod 20) sau p ≡ ±9 (mod 20).3. un num˘r prim impar. cu n ≥ 3 impar. Dac˘ n ≡ 3 (mod 4) ¸i a1 ≡ 3 (mod 4). pune s ← −s. Calculati urm˘toarele simboluri Legendre: ¸ a 11 37 ¸i simbolurile Jacobi: s 5 21 2. dac˘ ¸i a a a s numai dac˘ p ≡ 1 (mod 3). Scrie a = 2e a1 . Pune n1 ← n mod a1 7. a1 ) a Exercitii propuse ¸ 1. RECIPROCITATE PATRATICA Algoritmul poate fi propus ¸i sub forma: s Algoritm 7. Stabiliti pentru ce valori ale num˘rului prim impar p. 31 167 . a a s s altfel. a ii) 3 este non-rest p˘tratic modulo orice num˘r prim Mersenne > 3. Dac˘ a1 = 1.

se aplic˘ la fel de bine pentru securizarea fluxului de date ˆ a ıntre 1 Provine 2 Provine din cuvintele grece¸ti kryptos-a ascunde ¸i graphein-a scrie. Istoria criptografiei ˆ ıncepe ˆ a de acum 4000 de ani (la egipteni). ın diplomatic ¸i guvernamental. s s 3 Provine din cuvintele grece¸ti krypos-a ascunde ¸i logos-cuvˆnt. ¸ Criptanaliza 2 studiaz˘ redobˆndirea informatiei din textul cifrat. conceput˘ initial pentru a secretiza mesaje a ¸ scrise. Principiile criptografiei. ın s ¸ Odat˘ cu dezvoltarea ˆ anii 60 a sistemelor de comunicatie ¸i a coma ın ¸ s puterelor. apare cerinta de a oferi sectorului privat mijloace de protejare ¸ a informatiei ˆ form˘ digital˘ ¸i de asigurare a serviciilor de securi¸ ın a a s tate. s s din cuvintele grece¸ti kryptos-a ascunde ¸i analyein-a dezlega. s s a 133 .CAPITOLUL 8 Criptografie cu cheie secret˘ a Criptografia 1 este studiul principiilor ¸i tehnicilor prin care informatia s ¸ poate fi ascuns˘ ˆ texte cifrate ¸i mai tˆrziu este dezv˘luit˘ de persoane a ın s a a a avizate folosind chei secrete (pentru persoane neautorizate este imposibil sau computational imposibil). rezultatele acesteia erau folosite ˆ domeniul militar. Criptografia a fost folosit˘ ca un instrus a ment important ˆ protejarea secretelor ¸i strategiilor nationale. f˘r˘ a a ¸ aa a cunoa¸te cheia. s Criptologia 3 este ¸tiinta ce ˆ s ¸ ınglobeaz˘ cele dou˘ domenii mai sus a a definite. De ınc˘ cele mai multe ori.

Ea trebuie s˘ previn˘ ¸i s˘ ¸ a ın a s ın a a a s a detecteze furtul ¸i alte actiuni ilegale. a comunicatiilor de voce digitale cˆt ¸i la cifrarea de facsimile ¸ a s ¸i a semnalelor de televiziune. s ¸ ¸ Cˆteva dintre principalele scopuri urm˘rite ˆ criptografie sunt: a a ın 1. De exemplu. s . ˆ arınt ¸ ıntˆ zieri sau substituiri. Criptografia trebuie s˘ acopere. ¸ s a De exemplu. Confidentialitatea. aceste patru a ın a directii. CRIPTOGRAFIE CU CHEIE SECRETA computere. Trebuie s˘ remarc˘m c˘ orice s a a a alfabet. definim urm˘toarele notiuni: a ¸ ¸ ¸ a 1. cˆt ¸i ˆ practic˘. care presupune posibilitatea de identificare a informatiei ¸i a entit˘¸ii (o persoan˘. care poate fi diferit de A. un text ˆ englez˘ s ın a sau ˆ alt˘ limb˘.134 ˘ CAPITOLUL 8. Non-repudierea. Alfabet de definitie A care este o multime finit˘. realizeaz˘ protejarea datelor la alterare sau a manipulare de c˘tre persoane neautorizate. Spatiul de mesaje M este format din ¸iruri de simboluri ale unui ¸ s alfabet de definitie. fiind doar una dintre tehnicile de s ¸ asigurare a securit˘¸ii informatiei. 2. Integritatea datelor . M poate fi format din ¸iruri binare. ın a a 3. 1} se nume¸te alfabet binar. Autentificarea. spre exemplu alfabetul englezesc. atˆt ˆ teorie. care previne negarea unor angajamente sau actiuni ¸ anterioare. Un element al lui M se nume¸te text de baz˘. ¸a ¸ ¸ a a 2. De exemplu. Literele vor deveni ¸iruri de cˆte cinci cifre s a binare. a Prin manipularea datelor ˆ ¸elegem procese cum ar fi insertii. care presupune p˘strarea secret˘ a informatiei ¸ a a ¸ fat˘ de toti cei care nu sunt autorizati s˘ o cunoasc˘. poate fi scris ˆ functie ın ¸ de alfabetul binar. codul unui computer. etc. Spatiul de text cifrat C este alc˘tuit din ¸iruri de simboluri ale unui ¸ a s alfabet de definitie. ˆ mod corespunz˘tor. 4. 3. majoritatea satelitilor cis ¸ freaz˘ ˆ mod curent fluxul de date c˘tre ¸i de la statiile terestre pentru a ın a s ¸ a furniza securitate ¸i confidentialitate abonatilor. un terminal de computer. at ¸ Pentru ˆ ınceput. Un element al lui C ¸ se nume¸te text cifrat. A = {0. o carte ¸ s at a de credit).

a ¸ 5. Procesul (algoritmul) de decriptare D este procesul de aplicare a transform˘rii Dd lui C. numit˘ cheie secret˘.135 4. numite ¸i criptosisteme simetrice. pentru fiecare pereche de chei (e. Spatiul cheilor K este o multime de ¸iruri (chei ) peste un alfabet. ¸ a a a . s ¸ ˆ mod analog. aplicatia bijectiv˘ Ee : M → C. sau un cifru. De aceea aceste sisteme poart˘ numele de a s a sisteme simetrice. 4 Alti termeni folositi ˆ literatura de specialitate pentru aceste sisteme sunt: ¸ ¸ ın criptare traditional˘. determinat˘ de In ¸ a a d ∈ K. se nume¸te functie sau transformare de criptare. 2. Astfel. determinat˘ ¸ a a de e. Deci. 7. Sisteme criptografice cu cheie public˘. cu cheie secret˘. Ee (M) = C. Pentru a construi o schem˘ de criptare avem a a nevoie de toate notiunile definite anterior. s a s De cele mai multe ori. O schem˘ de criptare. a a Un sistem de criptare se nume¸te simetric 4 dac˘. ¸ Criptosistemele pot fi clasificate ˆ ın: a s 1. este format˘ dintr-o multime a a ¸ de transform˘ri de criptare {Ee } ¸i din multimea corespunz˘toare a s ¸ a {Dd }. functia bijectiv˘ Dd : C → M. d) se poate determina ¸ u¸or d cunoscˆnd doar pe e ¸i invers. Procesul (algoritmul) de criptare E este procesul de aplicare a transform˘rii Ee lui M. Cheile a ıncˆ e ¸i d cu aceast˘ proprietate se numesc pereche de chei ¸i de multe s a s ori se noteaz˘ (e. ¸ ¸ s Pentru fiecare e ∈ K. Sisteme criptografice cu cheie secret˘. este folosit˘ atˆt la a a a a a criptare cˆt ¸i la decriptare. poart˘ numele de functie sau transformare de decriptare. ˆ ıntr-un sistem cu cheie secret˘. cu cheie unic˘. din punct de vedere s a computational. cheile e ¸i a s d coincid. de transform˘ri de decriptare cu proprietatea c˘. numite ¸i criptosisteme asia s metrice. d). pentru a a −1 fiecare e ∈ K. Subliniem fapa tul c˘ algoritmii D ¸i E trebuie s˘ aib˘ proprietatea Dd (C) = a s a a Dd (Ee (M)) = M. Dd (C) = M. Criptografia cu cheie secret˘ se ocup˘ de primul tip de criptosisteme. a 6. exist˘ un unic d ∈ K astfel ˆ at Dd = Ee . Cheia comun˘ k.

a ın a a a poart˘ numele de sisteme de criptare caracter. de cele mai multe ori numit Alice ¸i destinatarul B. substitutie sau monoa ¸ grafice. Vom considera ˆ toate exemplele c˘ A este alfabetul limbii engleze. . Cheia este ˆ arcat˘ ˆ ınc˘ a ıntr-un generator aleator de biti pentru a ¸ crea un ¸ir lung de semnale binare. Astfel a a ¸ de cifr˘ri. ¸i a a s obtine Dk (C) = Dk (Ek (M )) = M. vom atribui fiec˘reia un echivaa . Textul de baz˘ este criptat bit a cu bit. Bob decripteaz˘ textul cifrat prin transformarea invers˘. pe care ˆ trimite lui Bob ıl printr-un canal nesigur (persoane neautorizate pot citi..136 ˘ CAPITOLUL 8.. ın a Cum acesta este format din 26 de litere. unit˘¸ile de mesaj sunt cifre binare ¸i cheia este produs˘ In a at s a de obicei de un generator aleator binar. dar printr-un canal ¸ s a sigur. Cheia ¸ir k este aplicat˘ apoi textului s s a de baz˘ M. pentru C ∈ C.1 Cifr˘ri flux (binar) a ˆ cifr˘rile flux... schimba. se folose¸te aceea¸i cheie. Cheia k trebuie ¸i ea trimis˘ lui Bob. ¸ 8. numit s uzual Bob. De exemplu: M k C 0 1 1 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 .2 Criptosisteme caracter Primele sisteme de criptare erau bazate pe transformarea fiec˘rei litere a din textul initial ˆ ¸ ıntr-o liter˘ diferit˘ pentru a obtine textul cifrat. adic˘ reconstituie ¸ a textul initial. . Dk . ˆ care unitatea de mesaj este format˘ dintr-o singur˘ liter˘. s s 8. Pentru decriptare. Alice aplic˘ functia bijectiv˘ Ek pentru a realiza un text cifrat a ¸ a prin C = Ek (M ).. pentru fiecare M ∈ M.. (de obicei se face adunare modulo 2) pentru a obtine textul a ¸ cifrat C. Astfel. ¸terge s informatia). CRIPTOGRAFIE CU CHEIE SECRETA Vom studia cum se pot transmite mesaje ˆ ıntre dou˘ persoane: exa peditorul A.

cheia este k = 3 ¸i transformarea de criptare este s C = E3 (M ) ≡ M + 3 (mod 26).8. ın ın ın Presupunem c˘ textul initial este: a ¸ T HIS M ESSAGE IS T OP SECRET Pentru ˆ ınceput. Y ˆ B. Fiecare echivalent numeric este transformat dup˘ regula precizat˘: a a 22 10 11 21 15 7 21 21 3 9 7 11 21 22 17 18 21 7 5 20 7 22 ¸i apoi se ˆ s ınlocuie¸te cu litera corespunz˘toare. un sistem de criptare care se presupune c˘ a fost inventat ¸i folosit de Iulius Cezar. el este ˆ artit ˆ blocuri de 5 litere pentru a preveni ımp˘ ¸ ın recunoa¸terea unor cuvinte particulare s T HISM ESSAG EIST O P SECR ET ¸i fiecare liter˘ este ˆ s a ınlocuit˘ cu echivalentul s˘u numeric a a 19 7 8 18 12 4 18 18 0 6 4 8 18 19 14 15 18 4 2 17 4 19. X se transform˘ ¸ ¸ a a ˆ A. CRIPTOSISTEME CARACTER lent numeric de la 0 la 25 dup˘ cum urmeaz˘: a a A 0 N 13 B 1 O 14 C 2 P 15 D 3 Q 16 E 4 R 17 F 5 S 18 G 6 T 19 H 7 U 20 I 8 V 21 J 9 W 22 K 10 X 23 L 11 Y 24 M 12 Z 25 137 Din considerente istorice. fiecare liter˘ este deplasat˘ la dreapta cu trei pozitii fat˘ a a ¸ ¸a de pozitia initial˘ din alfabet. De exemplu. 0 ≤ M ≤ 25. Textul cifrat rezuls a tat este: W KLV P HV V DJ HLV W R SV HF U HW.2. alegem ca prim sistem caracter. . Cu alte cuvinte. a s Aici. A devine D. Z ˆ C.

0 ≤ M ≤ 25 iar cea de decriptare este D(a. Astfel. se folose¸te transformarea s M = D3 (C) ≡ C − 3 (mod 26). dac˘ aplic˘m o transformare afin˘ textului SECU RIT Y a a a folosind cheia (7. E. 0 ≤ C ≤ 25. De exemplu. CRIPTOGRAFIE CU CHEIE SECRETA Pentru decifrare.b) (M ) ≡ aM + b (mod 26). O. B). a ¸ s In a cele mai frecvente litere dintr-un text sunt E. b) cu 0 ≤ a. functia de criptare este ¸ Ek (M ) ≡ M + k (mod 26). N.138 ˘ CAPITOLUL 8. T. iar transformarea de decriptare este dat˘ de a Dk (C) ≡ C − k (mod 26). 0 ≤ C ≤ 25. 0 ≤ C ≤ 25. 0 ≤ M ≤ 25. obtinem criptosistemele afine unde cheia este a ¸ perechea (a. punˆnd ˆ corespondent˘ cea a a a ın ¸a . 10) obtinem: GM Y U ZON W dup˘ cum se remarc˘ mai ¸ a a jos: S 18 6 G E 4 12 M C 2 24 Y U 20 20 U R 17 25 Z I 8 14 O T 19 13 N Y 24 22 W Pentru criptanaliza sistemelor caracter trebuie f˘cut˘ o analiz˘ a a a a frecventei de aparitie a literelor ˆ textul cifrat. Transformarea de criptare a este dat˘ de functia a ¸ E(a. Acest cifru face parte din categoria criptosistemelor de deplasare. ele ar fi I. Observ˘m a c˘ putem construi 12 · 26 = 312 astfel de chei. A (pentru limba romˆn˘. b ≤ 25 iar a este relativ prim cu 26.b) (C) ≡ a(C − b) (mod 26). Dac˘ vom generaliza. ˆ In acest caz. R. cheia este 0 ≤ k ≤ 25. I. A. Aceasta este com¸ ¸ ın parat˘ cu frecventa literelor dintr-un text obi¸nuit. ˆ limba englez˘.

inclusiv cea idena a tic˘. a fost criptat a ın a printr-un sistem de deplasare. se pot dobˆndi informatii legate de cheia de criptare. consider˘m dou˘ situatii: a a ¸ 1. In s 2. 19). Atunci. 5 Au fost prezentate de Hill.3 Criptosisteme bloc Pentru a evita faptul c˘ primele criptosisteme prezentate sunt mult prea a vulnerabile.19) (M ) ≡ 11M + 19 (mod 26). a 8. a a ˆ concluzie. vedem c˘ cele mai des folosite litere sunt L ¸i U. Presupunem c˘ un text. putem presupune c˘ ea corespunde ın a literei E. Atunci. Observ˘m c˘ litera care apare cel mai a a des ˆ textul cifrat este P. Rezolvˆnd sis¸ s a temul de congruente. penıntˆ a a ¸a tru a realiza o cˆt mai corect˘ corespondent˘ ˆ a a ¸a ıntre literele cu frecvent˘ ¸a maxim˘) cu litera care apare de cele mai multe ori ˆ a ıntr-un text arbitrar. litera cu cea mai mare frecvent˘ ˆ ¸a ıntr-un text scris ˆ limba ın englez˘. a Cum exist˘ doar 26 de transform˘ri de deplasare. Pentru decriptare. se folose¸te D(11. Rezult˘ a ın ¸a a relatiile 11 ≡ 4a + b (mod 26) ¸i 20 ≡ 19a + b (mod 26). Deci. obtinem relatia 15 ≡ 4 + k (mod 26). CRIPTOSISTEME BLOC 139 mai des ˆ alnit˘ liter˘ din textul cifrat (de preferint˘ mai lung. putem prea s supune c˘ L este ˆ corespondent˘ cu E iar U corespunde lui T. scris ˆ limba englez˘. o posibil˘ cheie este (11. a s ın s Aceste sisteme se numesc sisteme bloc 5 sau poligrafice. Consider˘m textul initial a a ¸ T HE GOLD IS BU RIED IN ORON O. ˆ anul 1930. Analizˆnd frecventa literelor din textul a a ¸ cifrat. ıntˆ Aici blocurile sunt formate din dou˘ cifre.19) (C) ≡ 19(C − 19) ≡ 19C + 3 (mod 26) unde am ¸inut s t cont c˘ a ≡ 19 (mod 26). ın .8. Tinˆnd cont de echivalentii numerici corespunz˘tori acestor a ¸ a ¸ a litere. Presupunem acum c˘ un text. determinarea cheii nu presupune un volum foarte mare de munc˘. de unde k = 11 este o ¸ ¸ posibil˘ cheie de cifrare. scris ˆ limba englez˘. s-a preferat ˆ artirea textului de baz˘ ˆ blocuri de o anuımp˘ ¸ a ın mit˘ lungime ¸i transformarea acestora ˆ blocuri cu aceea¸i lungime. a fost cripa ın a tat printr-o transformare afin˘. acest sistem este u¸or de criptanalizat.3. Studiem mai ˆ ai cazul cifrului diagrafic pe un exemplu concret. a ¸ De exemplu. transformarea ¸ a de criptare ar fi E(11.

Transformarea de criptare este EA (M ) ≡ AM (mod 26) iar pentru decriptare se folose¸te s   C1  . Obtinem pentru exemplul nostru.  cazul anterior. Procesul de cifrare se realizeaz˘ la fel cu ¸ ¸ a   M1  . unitatea este un bloc M =  . In (det A.  functia DA (C) ≡ AC (mod 26). a ın Trecem acum la cazul general. numai c˘. ¸ T H EG OL DI SB U R IE DI N O RO N O.  cu a . Mn ˆ acest caz cheia este A ∈ Mn (Z ). Cn De exemplu. matricea a a invers˘ intervenind ˆ procesul de decriptare. Acest criptosistem este mult mai u¸or de descris matriceal. ¸ . a a a de exemplu. textul initial se ˆ ıntˆ ¸ ımparte ˆ blocuri de 2 litere. pentru 0 ≤ i ≤ n. cu 0 ≤ Mi ≤ 25. s˘ vedem cum cript˘m mesajul a a ST OP P AY M EN T . ¸i anume: s s C1 C2 ≡ 5 4 17 15 · M1 M2 (mod 26). Se observ˘ c˘ matricea care intervine are invers modulo 26. Fiecare liter˘ din bloc este ˆ a ınlocuit˘ cu echivalentul s˘u numeric: a a 19 7 4 6 14 11 3 8 18 1 20 17 8 4 3 8 13 14 17 14 13 14. 26) = 1. Dac˘ ın a num˘rul de litere este impar. 0 ≤ Ci ≤ 25.140 ˘ CAPITOLUL 8. ˆ care blocurile ˆ care este ˆ artit ın ın ımp˘ ¸ textul initial contin n litere. C =  . . X. deci matricea A are invers modulo 26. Fiecare bloc de numere M1 M2 din textul initial este ˆ ¸ ınlocuit cu blocul C1 C2 dup˘ transformarea: a C1 ≡ 5M1 + 17M2 (mod 26) C2 ≡ 4M1 + 15M2 (mod 26). CRIPTOGRAFIE CU CHEIE SECRETA Mai ˆ ai. se completeaz˘ ultimul bloc cu o liter˘. aici.

CRIPTOSISTEME BLOC folosind un astfel de algoritm. ˆ ¸irul rezultat ¸ ın s 8 19 13 13 4 15 0 2 22 20 11 0 ˆ ınlocuim echivalentii numerici cu litere corespunz˘toare: ¸ a IT N N EP ACW U LA. calcul˘m a         C1 11 2 19 18 8  C2  ≡  5 23 25  ·  19  ≡  19  (mod 26). F˘cˆnd analiza corespunz˘toare. ıntˆ a a a putem g˘si cheia. matricea este inversabil˘ modulo 26.  141  11 2 19 a Alegem n = 3 iar cheia A =  5 23 25  .3. De exemplu. pentru primul bloc. C3 20 7 1 14 13 Pentru obtinerea textului cifrat.8. a . −7 3 7 Acest tip de criptosistem este ¸i el vulnerabil la frecventa blocurilor s ¸ de litere. De exems a a at plu. cele mai frecvente perechi de ın a litere dintr-un text sunt T H ¸i HE iar T HE. din det A ≡ 5 (mod 26). a   6 −5 11 A =  −5 −1 −10  . ˆ limba englez˘. a a Textul initial este ˆ artit ˆ blocuri de trei litere. A este corect aleas˘ 20 7 1 pentru c˘. ad˘ugˆnd pentru ¸ ımp˘ ¸ ın a a blocul final un X pentru ca ¸i acest bloc s˘ aib˘ num˘rul corespunz˘tor s a a a a de litere: ST O P P A Y M E N T X. La decriptare. AN D ¸i T HA sunt cele s s mai des ˆ alnite blocuri de trei litere. ˆ Inlocuim literele cu echivalentii lor numerici ¸ 18 19 14 15 15 0 24 12 4 13 19 23 ¸i aplic˘m fiec˘rei unit˘¸i de mesaj transformarea de criptare. vom folosi matricea invers˘ modulo 26 a lui A.

Astfel. ˆ cazul nostru o liter˘. ˆ Inlocuind literele cu echivalentii lor nu¸ 10 21 19 7 merici. s ın Se alege p un num˘r prim. Fiecare unitate de mesaj. s . din relatia ¸ ≡ A· (mod 26) rezult˘ a 23 25 7 4 10 21 4 19 23 17 A = · ≡ (mod 26) ca posibil˘ a 23 25 19 19 21 2 cheie. De exemplu. ın a se ˆ ınlocuie¸te cu echivalenti numerici alc˘tuiti toti din dou˘ cifre. ¸i un num˘r natural e. scris ˆ limba englez˘ cele mai ın a frecvente grupe de dou˘ litere sunt KX ¸i V Z. din 2525 < p < 252525 rezult˘ m = 2. s ¸ a ¸ ¸ a de exemplu echivalentul lui A este 00. etc. dac˘ ˆ a ıntr-un text cifrat.4 Criptare exponential˘ ¸ a Acest criptosistem a fost inventat de Pohlig ¸i Helmann ˆ anul 1976. a a ¸ Alegem p = 2633 ¸i e = 29.142 ˘ CAPITOLUL 8. consider˘m mesajul a a a T HIS IS AN EXAM P LE OF AN EXP ON EN T IAT ION CIP HER pe care vrem s˘-l cript˘m folosind un algoritm exponential. presupunˆnd c˘ algorita s a a mul folosit este de tipul celui prezentat. Mesajul se ˆ ımparte ˆ blocuri de 2m cifre zecimale unde 2m este ın cel mai mare num˘r par cu proprietatea c˘ toate numerele de 2m cifre a a alc˘tuite din echivalentii numerici ai celor m litere sunt mai mici decˆt a ¸ a p. prim cu p − 1. deci fiecare bloc din textul cifrat va fi un num˘r mai mic decˆt p. CRIPTOGRAFIE CU CHEIE SECRETA De exemplu. am ad˘ugat la finalul ultimului bloc un X pentru a avea In a aceea¸i dimensiune. C va avea echivalentul numeric egal cu 02. Transform˘m literele ˆ echivalenti numerici s a ın ¸ ¸i form˘m blocuri de cˆte 4 cifre: s a a 1907 0818 0818 0013 0423 0012 1511 0414 0500 1304 2315 1413 0413 1908 0019 0814 1302 0815 0704 1723 ˆ acest caz. care a s a este cheia de criptare. putem pune ˆ corespondent˘ ın ¸a KX cu T H iar V Z cu HE. 8. dac˘ p = 2633. a a Fiec˘rui bloc M cu 2m cifre zecimale i se aplic˘ transformarea de a a criptare C = Ee (M ) ≡ M e (mod p). Astfel.

respectiv algoritmul lui Euclid a a s extins. criptanaliza nu mai poate fi f˘cut˘ rapid. arbitrar ales. reg˘sind a a mesajul initial. CRIPTARE EXPONENTIALA ¸ 143 Aplic˘m transformarea C ≡ M 29 (mod 2633) pentru fiecare bloc ˆ a ın parte. ace¸ti algoritmi. fat˘ de celelalte criptosisa a ¸a teme prezentate. ın Pentru decriptare.˘ 8. unde d este inversul modulo s p − 1 al cheii e. s a . ¸i obtinem: s ¸ 2199 1745 1745 1206 2437 2425 1729 1619 0935 0960 1072 1541 1701 1553 0735 2064 1351 1704 1841 1459 care constituie mesajul criptat. rezult˘ e · d = k(p − 1) + 1. num˘r prim a unde q este ¸i el un num˘r prim mare.4. sunt s foarte lenti.3. congruenta are ¸a ¸ solutie unic˘). M ≡ C 2269 (mod 2633) ¸i. ˆ general. e este atunci logaritmul lui C0 ˆ baza M0 modulo p. De obicei. folosind algoritmul de ridicare ¸ a repetat˘ la p˘trat ¸i reducere modulo p. Pentru a decripta mesajul secret. Pentru a verifica dac˘ cheia d este cea corect˘. Presupunem In a a c˘ se ¸tie num˘rul prim p folosit ¸i s-a stabilit c˘ blocul C0 corespunde a s a s a e a blocului M0 . ¸ Procesul de criptare ¸i cel de decriptare pentru criptosistemul de s exponentiere modular˘ se face rapid. Pentru un a aa a a bloc C. Atunci. pentru p convenabil ales. obtinem d ≡ −363 ≡ 2269 (mod 2632) ¸ rezolvˆnd ecuatia 29d − 2632k = 1 cu ajutorul algoritmului extins al a ¸ lui Euclid. de exemplu C ≡ 190729 ≡ 2199 (mod 2633). Pentru exemplul anterior. Oricum. ˆ forma criptat˘ mesajul nu mai poate fi transformat ın a ˆ litere. avem de rezolvat aceast˘ a congruent˘ pentru a afla cheia e (conform teoremei 6. Vom ¸ a ın discuta despre algoritmii folositi pentru calculul logaritmului discret ˆ ¸ ın capitolul 12. adic˘ C0 ≡ M0 (mod p). a a a s˘ ar˘t˘m c˘ transformarea Dd este inversa transform˘rii Ee . p = 2q + 1. a cu k. obtinem: a ¸ k d e·d k(p−1)+1 Dd (C) ≡ C ≡ Dd (Ee (M )) ≡ M ≡ M ≡ M · M p−1 ≡ M (mod p). num˘r natural. fiecare echivalent s numeric de dou˘ cifre va fi ˆ a ınlocuit cu litera corespunz˘toare. Din e · d ≡ 1 (mod p − 1).1. se aleg numere prime p cu proprietatea c˘ p − 1 ¸ a nu are numai factori primi mici: de exemplu. apoi. folosind mica teorem˘ a lui Fermat. Remarc˘m c˘. vom calcula pentru fiecare bloc 0 ≤ C ≤ 2633. se folose¸te cheia d.

k < p. y < p lui Alice care afl˘ cheia a comun˘ prin k ≡ y e1 ≡ ae1 e2 (mod p). . un num˘r prim mare ¸i un ˆ a s ıntreg a cu (a. DES a fost proiectat de IBM ¸i aprobat ˆ anul 1977 s ın de U. dup˘ cum urmeaz˘: a a Se aplic˘ la ˆ a ınceput o permutare de biti. CRIPTOGRAFIE CU CHEIE SECRETA Criptosistemele exponentiale pot fi utilizate ¸i pentru a stabili chei ¸ s comune. M devenind M .S. Pentru a determina cheia comun˘. 16}: Li = Ri−1 . (jum˘tatea din ın a ¸ a a stˆnga) ¸i R0 . Cheia secret˘ folosit˘ este format˘ din ın ¸ a a a 56 biti ale¸i dintr-o cheie cu 64 biti. 32 de biti. Fiecare au deci. National Bureau of Standards (NBS) care acum se nume¸te U. DES execut˘ operatiile urm˘toare de 16 ori. s National Institute of Standards and Technology (NIST). . cealalt˘ jum˘tate. . . se alege p.S. 2}. Ele se aplic˘ ˆ 16 iteratii fiec˘rui bloc al unui mesaj. Als goritmul folose¸te transform˘ri de transpozitie. . p − 1) = 1. atˆt de guverne cˆt ¸i de coma ın a a s panii particulare. Ri = Li−1 ⊕ f (Ri−1 .144 ˘ CAPITOLUL 8. El este cel mai r˘spˆndit sistem cripa a tografic cu cheie secret˘ folosit ˆ prezent. s a Standardul este public ¸i toate caracteristicile sale sunt fixate. Acest standard (algoritm) a fost publicat prima dat˘ ˆ anul 1977 (FIPS 46. DES ˆ ımparte M ˆ jum˘tate obtinˆnd L0 . Bob trimite y ≡ ae2 (mod p). a 8. Pentru a aceasta. a s a a ¸ ˆ a treia etap˘. a s a a Analog. Aceast˘ ¸ a permutare nu are o semnificatie criptografic˘ aparent˘. prezent˘m cˆteva informatii generale despre aa ın a a a ¸ Data Encryption Standard (DES). p) = 1. substitutie ¸i operatii s a ¸ ¸ s ¸ neliniare.5 DES F˘r˘ a intra ˆ am˘nunte. Mesajul a ın ¸ a se ˆ ımparte ˆ blocuri de 64 biti. 2. cu (ei . i ∈ {1. a a Fiecare alege o cheie ei . chei ce pot fi folosite de dou˘ sau mai multe persoane. Alice trimite lui Bob x ≡ ae1 (mod p).Federal a ın Information Proccesing Standard 46 ) ¸i este rev˘zut la fiecare 5 ani. ki ). pentru In a a ¸ a i ∈ {1. a Bob g˘se¸te cheia comun˘ k calculˆnd k ≡ xe2 ≡ ae1 e2 (mod p). Consider˘m cazul a dou˘ persoane. ¸ a a Apoi. 1 ≤ x ≤ p − 1. Fiecare unitate de mesaj M de 64 ¸ s ¸ biti este transformat˘ ˆ ¸ a ıntr-o unitate de aceea¸i dimensiune C a textului s cifrat.

8.5. DES

145

unde ⊕ este operatorul sau exhaustiv, iar f este o functie care transform˘ ¸ a o jum˘tate dreapt˘ de 32 biti cu ajutorul unei chei ki , de fiecare dat˘ a a ¸ a diferit˘, pentru a rezulta tot un bloc de 32 biti. a ¸ ˆ final, textul pre-cifrat C = (R16 , L16 ) este permutat cu inversa In permut˘rii initiale pentru a obtine textul cifrat C. a ¸ ¸ Pentru decriptare, algoritmul este parcurs ˆ sens invers. ın Toate aceste vaste actiuni binare pot fi ˆ ¸ ıncorporate ˆ ıntr-un singur microcip construit special ˆ acest scop. Astfel, DES se poate implementa ın ˆ ıntr-un mod foarte eficient. Deoarece s-a ar˘tat c˘ o criptanaliz˘ a acestui sistem poate fi realia a a zat˘ relativ u¸or, se prefer˘ sistemul Triple DES (TDES) care presupune a s a criptare multipl˘. Astfel, mesajului i se aplic˘ de trei ori cˆte un DES a a a diferit. Dac˘ Ek , Dk reprezint˘ transform˘rile de criptare ¸i decriptare a a a s pentru un DES cu cheia k, pentru criptarea mesajului M cu ajutorul lui TDES, transformarea este dat˘ de C = Ek3 (Dk2 (Ek1 (M ))). Pentru a decriptare, aplic˘m M = Dk1 (Ek2 (Dk3 (C))). a Pentru mai multe informatii, cei interesati pot consulta [25]. ¸ ¸ Exercitii propuse ¸ Consider˘m c˘, pentru toate exercitiile urm˘toare, alfabetul este cel a a ¸ a al limbii engleze, format din 26 de litere. 1. Decriptati textul cifrat RT OLK T OIK, ¸tiind c˘ a fost criptat ¸ s a folosind transformarea afin˘ C ≡ 3M + 24 (mod 26). a 2. Dac˘ cea mai des folosit˘ liter˘ dintr-un text lung cifrat este Q ¸i a a a s presupunem c˘ pentru criptarea mesajului initial s-a folosit o transfora ¸ mare de deplasare, aflati valoarea plauzibil˘ a cheii de criptare. ¸ a 3. Folosind o transformare afin˘ ¸i cheia de criptare (a, b) = (13, 9), as criptati textul HELP M E. ¸ 4. Presupunem c˘ studiem un text lung cifrat, criptat cu ajutorul a unei transform˘ri afine. Dac˘ literele Y ¸i V, ˆ aceast˘ ordine, prezint˘ a a s ın a a cea mai mare frecvent˘ ˆ text, g˘siti o posibil˘ valoare a cheii de ¸a ın a ¸ a criptare. 5. Presupunem c˘ un text a fost criptat folosind un cifru diagrafic. a Perechile de litere care apar cel mai des ˆ textul cifrat sunt KH ¸i XW. ın s Stabiliti o posibil˘ matrice de criptare, folosit˘ ˆ aceast˘ situatie. ¸ a a ın a ¸

146

˘ CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRETA

6. Determinati cifrul produs, obtinut prin folosirea transform˘rii C ≡ ¸ ¸ a 17M +3 (mod 26) urmat˘ apoi de transformarea C ≡ 5M +13 (mod 26). a 7. Cˆte perechi de litere r˘mˆn neschimbate dac˘ criptarea mesajului a a a a se face folosind transformarea: C1 ≡ 7M1 + 17M2 (mod 26) C2 ≡ M1 + 6M2 (mod 26) ? 8. Presupunem c˘ realiz˘m produsul unui cifru de tip Hill cu blocuri a a de lungime n cu un cifru de acela¸i tip, dar pentru blocuri de lungime s m. Ar˘tati c˘ cifrul produs este tot un cifru Hill cu blocuri de lungime a ¸ a [m, n]. 9. Folosind o criptare exponential˘ cu p = 101, e = 3 criptati mesajul ¸ a ¸ W E ARE T HE CHAM P ION S. 10. Textul 1213 0902 0539 1208 1234 1103 1374 este obtinut printr-o ¸ criptare exponential˘ unde p = 31 ¸i e = 11. Determinati textul initial. ¸ a s ¸ ¸ 11. Mesajul 04 19 19 11 04 24 09 15 15 este obtinut printr-o criptare ¸ exponential˘. Se presupune c˘ se cunoa¸te p = 29 ¸i faptul c˘ blocul ¸ a a s s a 24 corespunde literei U din mesajul de baz˘. Stabiliti care este mesajul a ¸ initial. ¸

CAPITOLUL 9

Criptografie cu cheie public˘ a
ˆ criptarea traditional˘, cheile de criptare ¸i decriptare trebuie p˘strate In ¸ a s a secrete. Cum ˆ trecut criptografia era folosit˘ cel mai des ˆ scopuri ın a ın militare sau diplomatice, exista de fiecare dat˘ un grup restrˆns, bine a a definit, de utilizatori care puteau u¸or ˆ arti ¸i distribui periodic cheile. s ımp˘ ¸ s Generarea, transmiterea ¸i stocarea acestor chei se nume¸te managemens s tul cheilor. Criptarea cu cheie secret˘ are deseori probleme ˆ a oferi o a ın gestionare securizat˘ de chei, mai ales pentru sisteme deschise, cu un a mare num˘r de utilizatori. a ˆ prezent, aplicatiile criptografiei s-au extins ¸i includ multe alte In ¸ s domenii ˆ care sistemele de comunicatii joac˘ un rol esential (colectarea ın ¸ a ¸ ¸i stocarea de informatii confidentiale, tranzactii financiare electronice). s ¸ ¸ ¸ De multe ori exist˘ o retea mare de utilizatori ˆ care un grup restrˆns a ¸ ın a trebuie s˘ p˘streze secretul comunicatiei atˆt fat˘ de ceilalti din retea, a a ¸ a ¸a ¸ ¸ cˆt ¸i fat˘ de persoane din afar˘. La fel, este posibil ca ˆ urma unei a s ¸a a ın comunic˘ri avute, unul dintre parteneri trebuie s˘ transmit˘ o parte a a a a informatiei secrete unei terte persoane. ¸ ¸ ˆ loc s˘ rezolve problema managementului de chei, Whitfield Diffie In a ¸i Martin Hellman au introdus conceptul de criptografie cu cheie public˘ s a ˆ anul 1976 ˆ lucrarea New Directions in Cryptography. Astfel, ei ın ın furnizeaz˘ o metod˘ nou˘, ingenioas˘, pentru schimbul de chei la care a a a a 147

148

˘ CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLICA

securitatea se bazeaz˘ pe imposibilitatea de a rezolva problema logaa ritmilor discreti. Chiar dac˘ cei doi nu au realizat la acel moment, ˆ ¸ a ın mod practic, un criptosistem cu cheie public˘, ideea a generat un interes a deosebit ¸i o activitate intens˘ ˆ domeniu. ˆ anul 1977, Rivest, Shamir s a ın In ¸i Adleman au descoperit prima schem˘ practic˘ de criptare cu cheie s a a public˘ ¸i de semn˘tur˘, RSA, bazat˘ tot pe o problem˘ dificil˘ din a s a a a a a punct de vedere computational, problema factoriz˘rii numerelor mari. ¸ a Cu toate c˘ anii 80 au adus noi metode de factorizare, acestea nu au a sl˘bit securitatea criptosistemului RSA. O alt˘ clas˘ de scheme practice a a a cu cheie public˘, bazat˘ pe problema logaritmului discret, este g˘sit˘ de a a a a ElGamal ˆ anul 1985. ın Criptosistemele cu cheie public˘ au dou˘ utiliz˘ri principale: criptarea a a a ¸i autentificarea (semn˘tura digital˘). Fiecare persoan˘ prime¸te o peres a a a s che de chei format˘ dintr-o cheie public˘ care este f˘cut˘ cunoscut˘ ¸i a a a a as o cheie privat˘ care este p˘strat˘ secret˘. Astfel, necesitatea ˆ artirii a a a a ımp˘ ¸ informatiei secrete de c˘tre dou˘ persoane care comunic˘ este eliminat˘. ¸ a a a a Toate comunicatiile implic˘ doar cheile publice; nici o cheie privat˘ nu se ¸ a a transmite sau se ˆ ımparte cu cineva. Deci, nu mai este nevoie s˘ folosim a un canal sigur de comunicatie. Singura cerint˘ este ca aceste chei publice ¸ ¸a s˘ fie asociate cu utilizatorii lor ˆ a ıntr-un mod autentificat (de ˆ ıncredere). Oricine poate trimite un mesaj confidential, dar mesajul poate fi decrip¸ tat cu o cheie privat˘, care este ˆ posesia unic˘ a destinatarului dorit. a ın a Astfel, cu ajutorul cript˘rii cu cheie public˘, este posibil s˘ se realizeze a a a o comunicatie secret˘ ˆ ¸ a ıntre dou˘ persoane f˘r˘ ca acestea s˘ aib˘ un a aa a a contact initial, f˘r˘ s˘ stabileasc˘ dac˘ au ˆ ¸ aa a a a ıncredere unul ˆ cel˘lalt. ın a ˆ criptosistemele cu cheie public˘, cheia privat˘ este mereu legat˘ In a a a matematic de cheia public˘. De aceea, este ˆ a ıntotdeauna posibil s˘ ataci a un sistem cu cheie public˘ dobˆndind cheia privat˘ din cheia public˘. a a a a ˆ mod natural, pentru a putea s˘ ap˘r˘m sistemul, trebuie s˘ facem In a aa a ca problema obtinerii cheii private s˘ fie cˆt mai dificil˘ posibil. Astfel, ¸ a a a criptosistemele cu cheie public˘ se bazeaz˘ pe probleme care, din anumite a a puncte de vedere sunt greu de rezolvat. Dificultatea se refer˘ mai mult la a cerintele computationale necesare g˘sirii unei solutii, decˆt la conceperea ¸ ¸ a ¸ a problemei. Aceste probleme se numesc probleme dificile. Procesul de criptare se realizeaz˘ sub urm˘toarea form˘, indiferent de a a a criptosistemul folosit: Alice trimite lui Bob un mesaj secret, criptˆndu-l a cu cheia public˘ a lui Bob. Acesta folose¸te cheia sa privat˘ pentru a a s a decripta mesajul primit ¸i ˆ cite¸te. s ıl s

prescris˘. a s acest ultim caz poate deveni impracticabil dac˘ num˘rul utilizatorilor a a cre¸te. astfel de limit˘ri nu sunt necesare ˆ criptarea cu cheie public˘. Bob. G˘sirea de noi criptosisteme cu cheie public˘ ¸i ˆ a a s ımbun˘t˘¸irea mecaa at nismelor criptografice existente continu˘ ˆ a ıntr-un ritm alert. In criptarea cu cheie public˘ nu este necesar˘. Oricum. semn˘tura este fals˘ sau a a In a a mesajul a fost alterat. nu mai are rost ca unele s˘ fie publice ¸i altele secrete. pentru a verifica semn˘tura. Cum acesta cunoa¸te deja toate s cheile. semn˘tura ¸i cheia public˘ a lui Alice. cu un mare num˘r s a de utilizatori. Cele mai mari avantaje ale cript˘rii cu cheie public˘ sunt cre¸terea a a s securit˘¸ii ¸i posibilitatea de a furniza semn˘turi digitale care nu pot at s a fi repudiate. sunt situatii ˆ care utilizatorii se ˆ alnesc ˆ a ¸ ın ıntˆ ın particular sau o singur˘ autoritate cunoa¸te ¸i administreaz˘ toate cheile. Alice realizeaz˘ un calcul ce folose¸te cheia a s ei privat˘ ¸i mesajul.149 Pentru a semna un mesaj. De exemplu. ˆ caz contrar. ¸ a a a semn˘tura este cea original˘. efectueaz˘ un s a a a calcul ce implic˘ mesajul. a un astfel de protocol numindu-se criptosistem hibrid. Un mare dezavantaj al ei este viteza. Rezultatul este numit semn˘tur˘ digital˘ ¸i se a s a a a s ata¸eaz˘ mesajului. multe sisteme cu cheie secret˘ fiind mult mai rapide decˆt cele cu cheie public˘. ci de a m˘ri securitatea acesteia. Dac˘ a a s a a rezultatul este corect conform cu o relatie matematic˘ simpl˘. Ele pot fi folosite ¸i ˆ a a s ımpreun˘. Dar. fiind suficient˘ criptarea cu a a a cheie secret˘. . a a a criptarea cu cheie public˘ nu are rolul de a ˆ a ınlocui criptarea cu cheie secret˘. a s s a ca de exemplu un sistem bancar ˆ ınchis. ˆ unele cazuri. s a ın a care se potrive¸te cel mai bine unui mediu deschis.

CRIPTOGRAFIE CU CHEIE PUBLICA 9. altfel exist˘ metode rapide de a factorizare. e) iar cheia privat˘ este (n. ˆ anul 1977. numerele prime p ¸i q sunt alese astfel ˆ at p ± 1 ¸i q ± 1 s ıncˆ s sunt divizibile cu numere prime mari. De exemplu. Israel. Ele se pot genera aleator. metoda Pollard rho (vezi 11. a at Activitatea sa principal˘ se desf˘¸oar˘ ˆ domeniul informaticii teoretice. 2 Profesor la Departamentul de Matematici Aplicate ¸i Informatic˘ la Institutul s a de Stiinte Weizmann. A studiat diferite tipuri de atacuri pe criptosisteme ¸ diferite. Se alege e. e < n ¸i prim s s a s cu (p − 1)(q − 1) = φ(n). a a RSA − 100 este un num˘r RSA cu 100 de cifre zecimale. . Ele sunt listate ˆ Factoring Challenge of RSA Security 4 ¸i sunt alese pentru ın s proprietarea de a fi greu de factorizat. e poart˘ numele de exponent public iar d se nume¸te exponent privat. Factorii a a p ¸i q pot fi distru¸i sau p˘strati cu cheia secret˘. Adi Shamir2 ¸i s Leonard Adleman3 . criptanaliz˘ s a diferential˘. cˆt ¸i autentificare (semn˘tur˘ a a a s a a digital˘).4). El este un criptosistem cu cheie public˘ ın a care realizeaz˘ atˆt criptare de mesaje. conduc˘torul laboratorului Cryptography and Information Security a Group. Dac˘ el este par. a a s-a trecut la indicarea numerelor ˆ functie de scrierea lor binar˘. s s a ¸ a Numerele folosite ca modul n = pq se numesc numere RSA. a De obicei. a Algoritmul RSA functioneaz˘ astfel: se aleg dou˘ numere prime mari. De ın ¸ a exemplu. a s Cheia public˘ este perechea (n. Mai tˆrziu. A fondat RSA Data Security. Fie d acesta. Atunci e are invers modulo φ(n). numit modul. Aceste numere au fost denumite la ˆ ınceput dup˘ num˘rul de cifre zecimale pe care le au.1 RSA Criptosistemul RSA a fost realizat de Ronald Rivest1 .150 ˘ CAPITOLUL 9. a as a ın 4 RSA Security Data a ˆ ınceput s˘ sponsorizeze ˆ martie 1991 RSA Factoring a ın Challenge pentru a ˆ ıncuraja cercetarea ˆ teoria computational˘ a numerelor ¸i ˆ ın ¸ a s ın studierea dificult˘¸ilor practice a factoriz˘rii numerelor mari. RSA − 576 are 576 de cifre binare. adic˘ 174 de cifre zecimale. Cu ajutorul testului probabilistic a 1 Profesor de inginerie electronic˘ ¸i informatic˘ la Institutul de Tehnologie Masas a sachussets (MIT). scheme ¸i tehnici criptografice. ca de exemplu. De exemplu. se alege m + 1. cum ar fi criptosistemul rucsac. se poate porni de la un num˘r aleator mare a m. ¸ a 3 Coleg cu Rivest la MIT. d). ¸ a a p ¸i q ¸i se calculeaz˘ n = pq. El a reu¸it s˘ sparg˘ primele 42 de criptosisteme realizate s a a de Rivest ¸i Shamir. Acum s s este profesor la Departamentul de Informatic˘ al Universit˘¸ii California de Sud. Doar al 43-lea a rezistat ¸i a fost considerat optim. Acest lucru este foloat a sitor utilizatorilor algoritmului RSA ˆ alegerea unei chei de lungime corespunz˘toare ın a cu nivelul de securitate dorit.

Novell.S. dar. Este normal s˘ ne asigur˘m c˘ o cheie a unui utilizator expir˘ dup˘ o a a a a a anumit˘ dat˘. ˆ reteaua a s ın ın ¸ de carduri Ethernet. Fiecare unitate de mesaj M este transformat˘ dup˘ regula C ≡ M e (mod n) pentru a a a rezulta mesajul cifrat. Pˆn˘ ˆ prezent s-au mai ın a a a ın factorizat RSA − 160. s˘ zicem doi ani. q trebuie alese astfel ˆ at s˘ aib˘ o m˘rime aproa ıncˆ a a a ximativ egal˘. dac˘ alegem n = 43 · 59 = 2537 ¸i e = 13. El se ın ın reg˘se¸te ˆ multe produse comerciale software. utilizˆnd 300 de In a statii de lucru ¸i PC-uri. ın ¸ ¸ laboratoare nationale ¸i universit˘¸i.A. De exemplu. cu atˆt securitatea este mai mare. a a ¸ Cu cˆt modulul este mai mare. este utilizat at ¸ ˆ interiorul unor institutii cum ar fi guvernul U. un grup condus de Herman te Riele. folosind ın s datele furnizate de Laboratoarele RSA. pentru a a s cripta mesajul P U BLIC KEY CRY P T OGRAP HY . a a a a M˘rimea unei chei ˆ algoritmul RSA se refer˘ la m˘rimea lui n.7) vedem dac˘ num˘rul convine. m + 4. Sun. RSA − 200. Aceasta ofer˘ posibilitatea de a schimba a a a a chei ˆ mod regulat ¸i de a asigura nivelul dorit de securitate. repet˘m a a a a pentru m + 2. M˘rimea modulului depinde de cerintele de securitate. . Apple.9. algoritmul RSA se reg˘se¸te ˆ securizarea telefoanelor. scade viteza de operare. marile corporatii. ¸ a ¸a ˆ anul 1999. Cele a ın a a dou˘ numere prime p. Lungimea modulului trebuie aleas˘ s a ˆ functie de valoarea datelor ce trebuie protejate. de cˆt de puternice pot fi posibilele amenint˘ri. Criptosistemul RSA este folosit ˆ mod curent peste tot ˆ lume. Presupunem c˘ mesajul este deja transformat ca ˆ cazul cript˘rii a ın a exponentiale. de timpul necesar de ın ¸ protectie. ˆ a a ın acela¸i timp. este construit ˆ sisteme a s ın ın operationale curente de c˘tre Microsoft. . cum ar fi cheia pentru ¸ a autentificare. pˆn˘ g˘sim primul num˘r prim ≥ m. ¸ s at S˘ vedem acum cum functioneaz˘ acest algoritm pentru criptarea a ¸ a mesajelor.. a factorizat dup˘ ¸apte luni num˘rul RSA−155 ¸ s as a ˆ dou˘ numere prime cu 78 cifre binare. De aceea Laboratoarele RSA recomand˘ chei de m˘rime de 1024 de biti pentru corporatii ¸i chei a a ¸ ¸ s de 2048 de biti pentru chei de valoare deosebit˘. Dac˘ nu. Algoritmul este inclus ˆ toate protocoalele imporın tante pentru asigurarea securit˘¸ii comunicatiilor Internet. . RSA 151 Miller-Rabin (vezi 10. doar c˘ de aceast˘ dat˘ p este ˆ ¸ a a a ınlocuit cu n. ˆ hard¸ a In ware.1. RSA − 576.

1. De asemenea. Obtinem astfel. a ¸ 1520 0111 0802 1004 2402 1724 1519 1406 1700 1507 2423. sistemul RSA este des folosit ˆ In a ımpreun˘ cu DES. este nevoie de d. 2. din relatiile: a a ¸ p + q = n − φ(n) + 1 p − q = (p + q)2 − 4n. format din 0095 1648 1410 1289 0811 2333 2132 0370 1185 1457 1084. CRIPTOGRAFIE CU CHEIE PUBLICA grup˘m ˆ blocuri de dou˘ litere pe care le transform˘m ˆ echivalenti a ın a a ın ¸ numerici de dou˘ cifre. folosind o cheie aleas˘ aleator. care ˆ acest caz este d = 937. rezult˘ a p= 1 1 [(p + q) + (p − q)] . Fiecare bloc este transformat prin C ≡ M 13 (mod 2537) ¸i vom obtine s ¸ textul cifrat. cum problema factoriz˘rii lui n ˆ acest caz este a ın echivalent˘ cu cea a cunoa¸terii lui φ(n). O variant˘ este aceea de a ˆ a ıncerca factorizarea lui n prin diverse metode. Acesta decripteaz˘ cheia DES cu cheia sa privat˘ ¸i apoi utia as lizeaz˘ cheia DES pentru a decripta mesajul. a a s a a ımp˘ ¸ sunt folosite doar cheile publice ale unei alte persoane ¸i cheile private s ale persoanei ˆ discutie. ın ¸ ˆ final. ın ˆ practic˘. Mesajul criptat DES ¸i cheia a s DES criptat˘ RSA formeaz˘ un criptosistem hibrid. a Atˆt criptarea cˆt ¸i autentificarea au loc f˘r˘ a ˆ arti chei private. Atunci a cˆnd Alice dore¸te s˘ trimit˘ un mesaj lui Bob. q = [(p + q) − (p − q)] . Pentru decifrare. putem ˆ a s ıncerca s˘ afl˘m valoarea a a lui φ(n). mai ˆ ai cripteaz˘ a s a a ıntˆ a mesajul cu DES. ˆ acest fel se combin˘ a In a viteza ridicat˘ a DES -ului cu managementul de chei al sistemului RSA. Presupunem acum c˘ putem determina d astfel ca ade ≡ a (mod n). prezent˘m cˆteva din variantele de a ˆ In a a ıncerca criptanaliza acestui sistem.152 ˘ CAPITOLUL 9. Dac˘ aceasta este cunoscut˘. Acest lucru ˆ ¸ ınseamn˘ c˘ de − 1 este multiplu a a . care este transmis a a lui Bob. a pentru toti a primi cu n. 2 2 3. apoi folose¸te cheia pua s blic˘ a lui Bob pentru a cripta cheia DES.

m Cˆnd am aflat un astfel de a. A cunoa¸te s m = de − 1 este un rezultat mai slab decˆt dac˘ l-am cunoa¸te pe φ(n). Acum apar dou˘ posibilit˘¸i: a at m este multiplu de unul din numerele p − 1.9. q − 1.1). Astfel. a 2 ≡ 1 (mod p) ¸i a 2 ≡ −1 (mod q). Continu˘m acest a 2 m procedeu. exist˘ o metod˘ prin care n poate fi s ın a a factorizat. dar nu 2 m m de ambele. nu s-au g˘sit metode de a criptanaliza un astfel de a a ın a sistem f˘r˘ a factoriza num˘rul n. ¸i ˆ acest caz. Presupunem c˘ a este multiplu de p − 1. dac˘ pentru o multime suficient de mare de a ¸ valori ale lui a. congruenta a ¸ proprietate cu m.1. sau invers. m. vom g˘si cu mare probabilia a m tate un a pentru care a 2 − 1 este multiplu de p dar nu de q. 2 m a a 2 ≡ 1 (mod n) se verific˘ pentru exact un sfert din valorile lui a. RSA 153 al celui mai mic multiplu comun al numerelor p − 1.1. q − 1. aa a (i) . Dac˘ nu. Pˆn˘ ˆ prezent. a 2 ≡ −1 (mod q) (vezi teorema 7. caz ˆ care ˆ ın ınlocuim m cu 2 m a 2 ≡ 1 (mod n) nu este verificat˘ pentru cel putin jum˘tate din valorile a ¸ a lui a modulo φ(n). pentru exact jum˘tate din a a a m valorile lui a. a a s Cu toate acestea. alegˆnd aleator valori pentru a. prim a a cu n. produsul a dou˘ numere prime mari. pˆn˘ cˆnd congruenta nu se mai verific˘ pentru a a a ¸ a de la acel 2 pas. sau a s invers. din (n. m (ii) nu este multiplu nici de p − 1. congruenta se verific˘. Observ˘m c˘ m trebuie s˘ fie num˘r par deoarece relatia trebuie a a a a ¸ m s˘ se verifice ¸i pentru a = −1. Mai ˆ ai verific˘m dac˘ a s ıntˆ a a are aceea¸i s 2 m . Astfel. nici de q − 1. Pentru cealalt˘ s a a m m jum˘tate de valori a lui a. m a 2 ≡ −1 (mod n) pentru acela¸i num˘r de valori. a 2 − 1) = p rezult˘ un factor al lui a a n. pentru orice a. presupunem n = pq. dar. alese aleator. cu o mare probabilitate. a 2 ≡ 2 1 (mod p) este adev˘rat˘ pentru orice a. Atunci. putem presupune ¸ a m (cu probabilitate mare) c˘ m poate fi ˆ a ınlocuit cu . Atunci. Deci. un a num˘r natural cu proprietatea c˘ am ≡ 1 (mod n).

b este p˘strat ¸i el s a s 5 Inginer la Sun Microsystems ˆ Palo Alto. exponentierea ax a a a a ¸ nu este mult mai u¸oar˘ decˆt operatia invers˘. poart˘ numele de problema logaritmului a a discret: cunoscˆnd b. ˆ 1992. a este p˘strat secret. s ¸ a a a a ın Sistemul de schimbare de chei Diffie-Hellman-Merkle Datorit˘ faptului c˘ criptosistemele cu cheie public˘ sunt relativ a a a mai ˆ ıncete decˆt criptosistemele clasice (cel putin ˆ stadiul actual de a ¸ ın cunoa¸tere tehnologic˘ ¸i teoretic˘). ın 6 Este considerat tat˘l criptografiei (cu cheie public˘) moderne. care ¸tim c˘ este de forma ax . Alice alege aleator un a. se poate folosi criptarea cu cheie public˘ pentru secretizarea cheii a ¸i criptosistemul DES pentru transmiterea mesajelor. dac˘ dou˘ persoane trebuie s˘ se pun˘ de a a a a acord asupra unei chei comune secrete. 1 ≤ b ≤ q − 1. Este cunoscut ˆ special ın ın pentru c˘ a descoperit ˆ anul 1975 conceptul de criptare cu cheie public˘ pentru a ın a care i s-a decernat titlul de Doctor Honoris Causa de c˘tre Swiss Federal Institute a of Technology. calculeaz˘ s ın a g b (mod q) ¸i transmite valoarea aceasta lui Alice. este o alt˘ as a problem˘ dificil˘. un generator al grupului finit a s Z ∗ . printr-o retea public˘. a q 2. Se aleg q. a . Bob alege ¸i el. un num˘r prim ¸i g. California. premiul RSA ˆ ın ın ın matematic˘. ˆ 1998 i s ın In s-a decernat premiul Feyman ˆ nanotehnologie iar ˆ anul 2000. cunoscut˘ ¸i sub forma DLP. a a Rivest ¸i Shamir a primit premiul ACM Kenellakis Award ˆ anul 1977. Martin Hellman6 ¸i Ralph Merkle7 . este bine s˘ le folosim ˆ s a s a a ımpreun˘ a cu acestea. ˆ mod aleator b. De exemplu. cu ajutorul metodei de ridicare repetat˘ la p˘trat. cum determin˘m a s a a x = loga b? Cuvˆntul discret face distinctia dintre cazul grupurilor finite a ¸ ¸i situatia clasic˘. CRIPTOGRAFIE CU CHEIE PUBLICA 9. Dac˘ lucr˘m cu numere reale. s Primul astfel de protocol a fost realizat de Whitfield Diffie5 . Dac˘ presupunem c˘ s a a ¸ a a a lucr˘m ˆ a ˆ a ıns˘ ıntr-un grup finit. Acestea sunt f˘cute publice. Al˘turi de Adleman. 1 ≤ a ≤ q − 1. Aceast˘ problem˘ va fi tratat˘ pe larg ˆ capitolul 12. profesorul ˆ ındrum˘tor fiind Hellman. calculeaz˘ g a (mod q) a ¸i ˆ trimite lui Bob.2 Criptosisteme bazate pe DLP Problema logaritmului discret. cum ar fi U (Z n ). Authentification and Public Key Systems. s ıl a 3. Helmann.154 ˘ CAPITOLUL 9. El functioneaz˘ astfel: s ¸ a 1. a a 7 Teza sa de doctorat a avut tema Secrecy. Problema invers˘. pentru ¸ a a fi folosit˘ apoi ˆ schimbul de mesaje realizate cu criptosisteme claa ın sice. se poate calcula rapid ax pentru valori mari a a ale lui x. Diffie.

Presupunem c˘ Bob dore¸te s˘-i trimit˘ lui Alice un mesaj M a s a a format cu echivalenti numerici mod q. q. San-Diego.2. El alege aleator b. Teoretic. Alice alege un a. Securitatea a a a sistemului se bazeaz˘ pe presupunerea Diffie-Helman-Merkle. inginerie structurat˘. 1 ≤ a ≤ q − 1. Cum Alice cunoa¸te a. Astfel. ea poate reg˘si M. s a a 3. 155 4. g b (mod q) ¸i trebuie s˘ a s s a determine g ab (mod q). ElGamal8 a propus un criptosistem cu cheie public˘. a criptosistemul ElGamal este echivalent cu sistemul de schimbare de chei Diffie-Hellman. a 2. Alice ¸i Bob calculeaz˘ amˆndoi g ab (mod q) care va fi cheia s a a secret˘ pe care o vor folosi ˆ urm˘toarele comunicatii. ¸i calculeaz˘ g a (mod q). 4. s ımp˘ ¸ Oricine poate rezolva problema logaritmului discret ˆ corpul finit cu ın q elemente.9. cu ajutorul logaritmului discret. ın a a . 1 ≤ b ≤ q − 1 ¸ ¸i trimite lui Alice perechea de elemente s g b (mod q). care este cheia public˘ de criptare. a ın a ¸ O a treia persoan˘ cunoa¸te g. M g ab (mod q) . Se aleg q. 8 Ahmed ElGamal este profesor conduc˘tor al Departamentului de Inginerie Struca turat˘ al Universit˘¸ii California. care este cheia secret˘ de a decriptare. ¸ a s Pˆn˘ ˆ prezent nu s-a determinat o metod˘ prin care s˘ se afle g ab a a ın a a f˘r˘ a calcula a ¸i b. studiu seismologic. In a bazat pe logaritmi discreti. dar ea nu a fost g˘sit˘ ˆ a. a s q care sunt f˘cute publice. CRIPTOSISTEME BAZATE PE DLP secret. un num˘r prim mare ¸i un generator g pentru Z ∗ . o alt˘ aa s a cale ar exista. Este imposibil din punct de vedere computational s˘ se calculeze g ab din g a ¸i g b . Securitatea sistemului se bazeaz˘ pe urm˘toarea a a presupunere: Presupunerea Diffie-Helman-Merkle. a a ınc˘ Criptosistemul ElGamal ˆ anul 1985. Activitatea sa de cercetare se desf˘¸oar˘ a at as a ˆ domenii ca tehnologie informatic˘. calculˆnd g ab (mod q) s a a ¸i apoi ˆ artind al doilea element din pereche la acesta. g a (mod q). pentru a asigura securizarea comunicatiilor: ¸ ¸ 1. poate g˘si cheia secret˘ a din cheia public˘ g a .

a ıntˆ a Aceast˘ problem˘ presupune alegerea unui num˘r de obiecte cu greua a a tate cunoscut˘ dintr-o multime mare de astfel de obiecte a¸a ˆ at suma a ¸ s ıncˆ greut˘¸ilor lor s˘ fie egal˘ cu o valoare stabilit˘ initial. q − 1) = 1 ¸i calculeaz˘ d ≡ e (mod q − 1). El returneaz˘ lui Alice M eA eB (mod q) care ˆ trimite ınc˘ a ıi ˆ ınapoi M eA eB dA ≡ M eB (mod q). o cheie e. atunci problema se reduce la scrierea lui S ˆ a ın baza 2. a2 . .3 Criptosisteme knapsack Criptosistemul rucsac (knapsack) Merkle-Hellman a fost publicat ˆ anul ın 1978. ai < aj . 1 ≤ i ≤ n. sau problema rucsacului. 3. ˆ mod aleator. pentru care a a a n ˆ anumite situatii. In ¸ s dac˘ ai = 2i−1 . folosit pentru transmiterea mesajelor. folosind ıncˆ s a algoritmul lui Euclid extins. . S˘ se determine dac˘ exist˘ xi ∈ {0. Fiecare utilizator ˆsi alege. an } o multime de numere naturale ¸i S. Se alege q. 9. a ın Sub form˘ matematic˘. Pentru ca Alice s˘ trimit˘ un mesaj M lui Bob. Tratat˘ pe caz at a a a ¸ a general. De exemplu. Cˆnd prime¸te mesajul. . cum mai este ˆ alnit˘. deci vom lucra ˆ a ıntr-un corp finit cu q elemente. Bob nu ˆ s ıl a s ıl poate citi ˆ a. Bob descifreaz˘ mesajul prin M ≡ a M eB dB (mod q). 1}. 2. o putere a unui num˘r prim. a Spunem c˘ ¸irul de numere naturale (ai )i≥1 este supercresc˘tor dac˘ as a a j−1 i=1 i=1 xi ai = S. problema s-ar putea transcrie astfel: a a Fie {a1 . 1 ≤ e ≤ ı¸ ın q − 1 astfel ˆ at (e. 1. problema se poate rezolva u¸or. ea calculeaz˘ a a a M eA (mod q) ¸i ˆ trimite acestuia. un num˘r natu¸ s a ral. . . CRIPTOGRAFIE CU CHEIE PUBLICA Criptosistemul Massey-Omura Acest criptosistem este un alt sistem foarte cunoscut. 1 ≤ i ≤ n. El se bazeaz˘ pe problema sumei unei submultimi din combinaa ¸ toric˘. ea este inclus˘ ˆ categoria problemelor dificile. Un caz particular al problemei rucsacului este problema rucsac supercresc˘toare.156 ˘ CAPITOLUL 9. pentru j ≥ 2.

cum 25 = (11001)2 . ¸inˆnd cont c˘ fiecare liter˘ este substituit˘ cu un bloc t a a a a de 5 cifre). Rezult˘ 2x1 + 3x2 + 6x3 + 12x4 + 25x5 = 17 ¸i a a a s relu˘m procedeul. S˘ ¸a a a rezolv˘m problema: a 2x1 + 3x2 + 6x3 + 12x4 + 25x5 + 51x6 = 68. se a s a 1. xn−2 . De exemplu. an (n este 5 sau a un multiplu de 5. . 2. . . . . a ¸ a S˘ vedem acum cum functioneaz˘ criptosistemul Merkle-Hellman. ca ¸i pˆn˘ acum. x1 = 1. Pentru aceasta. Determin˘m xn prin: a xn = 1. . problema rucsacului pentru ¸iruri supercresc˘toare. Z − (11001)2 . x1 folosind relatiile: a ¸  n  1. ea este unic˘. .9. . Mai ˆ ai. .  i=j+1 xj = n  0. CRIPTOSISTEME KNAPSACK 157 De exemplu. din In 2x1 + 3x2 + 6x3 = 5 rezult˘ x3 = 0. c˘ a a s a a a alfabetul este format din 26 de litere. un modul m > 2an ¸i un num˘r natural w. Se alege un n−uplu supercresc˘tor a1 . Aceste alegeri se fac prin procese aleatoare. Trebuie remarcat faptul c˘. de unde x4 = 1 (altfel. fiecare liter˘ a va avea un echivalent numeric format din 5 cifre binare: A − (00000)2 . x6 = 1. S −  xi ai < aj .3. S ≥ an . obtinem x5 = 0. x2 = 1. 2x1 + 3x2 + a ¸ 6x3 + 12x4 = 17. an } formeaz˘ un ¸ir supercresc˘tor. . mesajul este transformat ˆ ıntˆ ınlocuind fiecare liter˘ cu a echivalentul s˘u numeric binar. prim cu m. 1}. rezolv˘ astfel: a 2. . . a ¸ a 1. dac˘ aceast˘ a a a problem˘ are solutie. 6.  i=j+1 pentru j ∈ {n − 1. . a n i=1 Pe caz general. a2 . altfel suma este mai mic˘ decˆt 51. . s a xi ai = S unde {a1 . numit s a multiplu. n − 2. . 2. Din 25 > 17. 12. 0. . suma ar fi < 12). 3. ˆ final. . . Dac˘ presupunem. a2 . . 25. Determin˘m xn−1 . S −  xi ai ≥ aj . Astfel. B − (00001)2 . 51 este o secvent˘ supercresc˘toare. S < an . . cum 2 + 3 + 6 + 12 + 25 < 51. .

pe baza c˘ruia se poate a a a a construi a1 = l1 . a a 3. l2 . este (w. se obtine u¸or din b1 . 11. ¸ s ¸ 4. xn . ˆ Intreg mesajul este reg˘sit ˆ a ınlocuind echivalentii binari ¸ cu literele corespunz˘toare. . a a Cheia de decriptare. Pentru fiecare astfel de unitate ¸ s a de mesaj. . Determin˘m n−uplul bi ≡ wai (mod m). 959. 241. ln+1 . . Aceast˘ ecuatie se poate rezolva a ¸ u¸or pentru c˘ ¸irul {a1 . 480. se completeaz˘ ultimul bloc cu cifre de 1 a a pentru a obtine acela¸i num˘r de cifre). ˆ ımparte mesajul format din echivalentii numerici binari ai literelor ˆ blocuri de n cifre binare ¸ ın x1 x2 . de numere mai ¸a a mici decˆt o anumit˘ valoare convenabil aleas˘. aj = lj + aj−1 + aj−2 + . CRIPTOGRAFIE CU CHEIE PUBLICA se poate considera o secvent˘ arbitrar˘ l1 . n i=1 xi ai < m. el reprezentˆnd cheia de criptare. prim cu m. . + a1 . pentru a aplica sistemul la criptarea mesajului: REP LY IM M EDIAT ELY Form˘m unit˘¸i de mesaj alc˘tuite din 10 cifre binare (echivalentii a a at a ¸ dou˘ litere): a 1000100100 0111101011 1100001000 0110001100 0010000011 0100000000 1001100100 0101111000 . . Bob calculeaz˘ pentru fiecare sum˘: a a S0 ≡ wS ≡ Din n i=1 n i=1 i=1 xi bi . Pentru w. 0 < S0 < m. se calculeaz˘ suma S = a n i=1 ai . a2 . m = 3837 (m > 2a10 ). . Pentru a decripta mesajul. a 5. . m poate fi ales de forma m = ln+1 + n iar w va fi primul num˘r mai mare decˆt w0 . alegem aleator un w0 < m formeaz˘ mesajul cifrat. folosim un 10−uplu supercresc˘tor: a (2. xn (dac˘ este nevoie. . . Acesta este f˘cut public. 2 ≤ j ≤ n. . 29. a De exemplu. . 119. . . Alice. . Cu ajua a a torul ei. bn n−uplul initial. . . 0 < bi < m pentru a 1 ≤ i ≤ n. rezult˘ S0 = a xi ai .158 ˘ CAPITOLUL 9. . 1917). w = 1001. care trebuie p˘strat˘ secret˘. Sirul format cu aceste sume ¸ wbi xi ≡ n i=1 xi ai (mod m). Rezult˘ astfel s as a a M = x1 x2 . m). an } este supercresc˘tor. pentru a trimite mesajul lui Bob. b2 . . 14. 58.

De obicei. 172. a ¸ g˘sind un algoritm de rezolvare a acestuia. [15]. a a Un criptosistem rucsac. Verific˘m a tot pentru primul bloc: 3360 · 23 ≡ 540 (mod 3837). criptosistemul Merkle-Hellman nu mai este ast˘zi considerat a sigur. adic˘ 1000100100. Shamir a spart acest criptosistem rucsac (ˆ ıntr-o singur˘ iteratie). pena ıi tru a fi mai sigur. pentru primul bloc 3360 12986 8686 10042 3629 3337 5530 9729 Pentru decriptare. din congruenta 1001w ≡ 1 (mod 3837) rezult˘ w = ¸ a 23.4. Astfel. ˆ anul s a s In 1982. a ¸ a este sistemul Chor-Rivest. Pentru mai multe informatii. El utilizeaz˘ polinoame cu coeficienti ˆ a ¸ ıntr-un corp finit. Chiar dac˘ Merkle a dezvoltat a a un alt astfel de criptosistem cu multiple iteratii. Brickell fiind cel care a oferit un algoritm pentru acest caz.4 Semn˘tur˘ digital˘ a a a Presupunem c˘ Alice ˆ trimite un mesaj criptat lui Bob. a fost publicat ˆ anul 1984 ¸i a fost revizuit ˆ a ın s ın 1988. ¸ 9. el fiind vulnerabil la o criptanaliz˘ eficient˘. 2170. acesta nu are ˆ ¸eles. ınt . 2503. Prima dat˘. Din 540 = 480 + 58 + 2. 417). unul din blocurile mesajului este blocul de semn˘tur˘. 503.˘ ˘ ˘ 9. acest sistem a fost considerat sigur. 1 ≤ i ≤ 10 ¸i obtinem a s ¸ (2002. care nu se bazeaz˘ pe exponentiere modular˘. 709. Pentru fiecare bloc rezolv˘m 23S ≡ a 10 i=1 xi ai (mod 3837). Dar. Astfel. rezult˘ x1 = x5 = x8 = 1 iar restul nuli. a a Pentru un timp. la decriptare. ˆ prezent. se poate studia [12]. SEMNATURA DIGITALA 159 Form˘m 10−uplul bi ≡ 1001ai (mod 3837). ¸ Mesajul cifrat este 10 i=1 xi bi . 855. 3347. 3337. a a Bob poate identifica acest bloc deoarece. acesta este singurul criptosistem rucsac care ˆ a nu a In ınc˘ fost spart. Pentru fiecare bloc determinat anterior calcul˘m sumele a obtinem S = b1 + b5 + b8 = 3360. tipul de problem˘ rucsac pe care se bazeaz˘ acest sistem este tot un caz partia a cular: se obtine din problema supercresc˘toare prin transform˘ri simple ¸ a a (multiplicarea ¸i reducerea modulo m a fiec˘rui element din ¸ir). nici acesta nu s-a dovedit ¸ imposibil de criptanalizat.

a s ın a Schem˘ bazat˘ pe criptosistemul ElGamal a a 1. Institutul National de Standarde ¸i Tehnologie al guIn ¸ s vernului U. DSA a devenit Standard pentru semn˘turi digitale. DSS. face public (y. 2. ˆ ambele In situatii. pentru cazul nA > nB . Alice alege aleator k. inegalitatea precizat˘ ne asigur˘ c˘ expresia din parantez˘ nu ¸ a a a a este mai mare decˆt cheia care reprezint˘ modulul ˆ raport cu care se a a ın face calculul. eB ) cea a lui Bob. Presupunem c˘ (nA . Algoritmul este cunoscut sub numele DSA. b). dar ˆ ordine invers˘. Ea calculeaz˘ y ≡ g x (mod p). prim cu p − 1 ¸i calculeaz˘: s a a ≡ g k (mod p).S. Alice alege un num˘r prim p ¸i dou˘ numere naturale aleatoare a s a g. distributie software. p) ¸i p˘streaz˘ a s a a secret x. a at s . Bob poate verifica autenticitatea mesajului In ridicˆnd la puterea dB modulo nB ¸i apoi la puterea eA modulo nA . transfer˘ri electronice de bani. a propus un algoritm pentru semn˘turi digia tale. eA ) este cheia public˘ a lui Alice iar a a (nB . Pentru a verifica semn˘tura. 3. stocare de date ¸i alte aplicatii ¸ s ¸ care necesit˘ asigurarea integrit˘¸ii datelor ¸i autentificarea acestora. Cheile secrete de decriptare sunt dA . b ≡ k(M − xa) (mod p − 1).A. N IST. CRIPTOGRAFIE CU CHEIE PUBLICA Prezent˘m ˆ continuare cˆteva scheme de semn˘tur˘: a ın a a a Schem˘ bazat˘ pe criptosistemul RSA a a 1. Pentru ca Alice s˘-i trimit˘ lui Bob semn˘tura sa. Acum Alice a generat semn˘tura (a. Bob vede dac˘ y a ab ≡ g M (mod p) a a este adev˘rat˘. g. Ea trebuie s˘ p˘streze secret ¸i a a a s pe k. a a Semn˘tura digital˘ standard a a ˆ anul 1991. a s Pentru cel˘lalt caz. El este destia a a a nat a fi folosit ˆ po¸ta electronic˘.. Apoi. dac˘ nA < nB sau a d SA ≡ (M eB (mod nB )) A (mod nA ).160 ˘ CAPITOLUL 9. Digital Signature Algorithm. schimb ın s a a electronic de date. ˆ primul caz. x < p. ea calculeaz˘: a a a a eB SA ≡ M dA (mod nA ) (mod nB ). el va face acela¸i calcul. 2. respectiv. dB . fiind a prima schem˘ de semn˘tur˘ recunoscut˘ de orice guvern. Ea trimite apoi SA ca unitate de mesaj cifrat lui Bob.

Cu ajutorul acestuia ˆsi ı¸ construie¸te semn˘tura (r. O functie hash este o aplicatie u¸or de calculat. De exemplu. 0 < k < q. ales a a p = 1 (mod p). folosind un generator aleator de numere ¸i un test de ¸ s primalitate. g p−1 q .1.˘ ˘ ˘ 9.2.1.2. Alice trebuie s˘ foloseasc˘ o functie a a a a ¸ hash. nu se poate obtine a a ¸ ¸ f (x) = f (x ). mult mai scurt˘. a a a a DSA/DSS const˘ ˆ dou˘ procese principale: generarea semn˘turii. 0 < x < q. Pentru a realiza aceasta. a ¸ ¸ 2. ¸ 1. Fiecare expeditor. f : x → h care ¸ ¸ s transform˘ ¸iruri binare de lungime arbitrar˘ foarte mare ˆ ¸iruri binare as a ın s de lungime fixat˘. 2.4. care este cheia ei secret˘ a ¸i ˆsi calculeaz˘ cheia public˘ y ≡ g x (mod p). Generarea cheii DSA 1. g este generator. adic˘ trebuie s˘ furnizeze o a a a a metod˘ standard de semn˘tur˘ care s˘ fie folosit˘ atˆt de guvern cˆt ¸i a a a a a a a s de organizatii comerciale. N IST a ales ca schema de a a semn˘tur˘ digital˘ s˘ se bazeze pe problema logaritmului discret. s) prin: s a r ≡ g k (mod p) (mod q) s ≡ k(h + xr) (mod q). numit˘ valoare hash. ¸i verificarea acesteia cu ajutorul unei chei puba s lice. Alice alege aleator k. Ea alege un al doilea num˘r prim p. alege un num˘r prim q de aproxia mativ 160 biti. Alice alege aleator x. p ≡ 1 (mod q). verific˘ dac˘ pentru un g. SEMNATURA DIGITALA 161 Rolul lui DSS este asem˘n˘tor lui DES. aleator. a 1. Generarea semn˘turii DSA a Pentru a realiza aceast˘ etap˘. a ın a a folosind o cheie privat˘. 1. a a a ¸iruri de 106 biti pot fi transformate ˆ ¸iruri de 150 biti. Deoarece. s ı¸ a a 2.4. Ea aplic˘ o functie hash mesajului pentru a obtine h < q. este necesar˘ criptarea cu cheie public˘. Functia trebuie s ¸ ın s ¸ ¸ s˘ mai verifice proprietatea c˘. Alice alege un generator al unicului subgrup ciclic de ordin q al grupului Z ∗ .3. Algoritmul functioneaz˘ astfel: ¸ a 1. Alice. pentru a construi semn˘turi digi¸ a tale. x diferiti. de a aproximativ 512 biti. Dac˘ da. pentru x.

sau dealer ¸i n participanti. a ¸ a securitatea sistemului depinde de imposibilitatea de a rezolva problema logaritmului discret ˆ grupul multiplicativ Z ∗ . ¸ O schem˘ general˘ de ˆ artire a secretelor specific˘ num˘rul minim a a ımp˘ ¸ a a de umbre necesare la reconstituirea cheii secrete. a a ıntˆ a Dac˘ r ≡ (g u1 y u2 (mod p)) (mod q). a a Cea mai simpl˘ schem˘ threshold este bazat˘ pe teoria congruentelor a a a ¸ ¸i pe teorema chinezeasc˘ a resturilor. independent. atunci toate fi¸ierele a s sunt inaccesibile. CRIPTOGRAFIE CU CHEIE PUBLICA Pentru a verifica semn˘tura: a Bob calculeaz˘ u1 ≡ sh (mod q) ¸i u2 ≡ sr (mod q). Ideea de baz˘ ˆ ˆ artirea de secrete este de a diviza a ın ımp˘ ¸ cheia secret˘ ˆ mai multe p˘rti. cu p suficient de mare. g u1 y u2 = g s(h+xr) ≡ g k (mod p). atunci mesajul a fost semnat incorect sau a ¸ a a fost semnat de un impostor. Pe de alt˘ parte. a s S˘ observ˘m mai ˆ ai c˘. de ımp˘ ¸ Blakley ¸i Shamir. mesajul nu este considerat In valid. Aceast˘ schem˘ de semn˘tur˘ are avantajul c˘ semn˘turile sunt destul a a a a a a de scurte. persoana care cunoa¸te cheia nu este disponibil˘ a s a sau computerul care depoziteaz˘ cheia este distrus).5 ˆ artirea secretelor Imp˘ ¸ Schemele de ˆ artire a secretelor au fost descoperite. Dac˘ o astfel de cheie este s a pierdut˘ (de exemplu. ın p 9. Principalul scop al acestora este gestionarea securis zat˘ a cheilor. a a a Dac˘ congruenta nu se verific˘. fiind formate din dou˘ numere de 160 biti. dar orice k − 1 p˘rti nu sunt suficiente pentru a¸ a-l determina. O astfel de schem˘ se nume¸te perfect˘ dac˘ orice grup a s a a de cel mult k − 1 participanti nu poate afla mai multe informatii despre ¸ ¸ secret decˆt o persoan˘ din exteriorul grupului. numite umbre care sunt distribuite a ın a¸ la persoane diferite a¸a ˆ at cheia secret˘ s˘ poat˘ fi reg˘sit˘ dintr-o s ıncˆ a a a a a submultime de umbre. atunci semn˘tura este corect˘. Un exemplu clasic de ˆ artire a secretelor este schema k din n sau ımp˘ ¸ schema (k. ˆ unele situatii exist˘ o singur˘ cheie secret˘ care permite a In ¸ a a a accesul la mai multe fi¸iere importante.162 ˘ CAPITOLUL 9. ˆ Intr-o astfel de schem˘. exist˘ a a un expeditor. n)−threshold cu 1 < k < n. Dealer-ul ˆ s ¸ ımparte secretul ˆ ın n p˘rti ¸i d˘ fiec˘rui participant cˆte o parte astfel ˆ at orice k p˘rti a¸ s a a a ıncˆ a¸ pot reconstitui secretul. Pentru a construi o astfel de s a . ˆ acest caz.

M ). . Fiecare persoan˘ Pi va primi a . . . a a Administratorul schemei alege ¸irul de numere: s m1 = 11. . Se observ˘ c˘ 475 < S < 2244. 5)−threshold. S˘ vedem acum dac˘ am definit o schem˘ (k. mi . mji . pentru i = j. s˘ construim o schem˘ (3. Not˘m cu S secretul (este un num˘r) ¸i cu s1 . El calculeaz˘ M = 1065900. m3 = 17. mn−k+2 este cea mai mare valoare obtinut˘ calculˆnd ¸ a a produsul a k −1 numere din ¸ir. a a folosind cheia sa secret˘ (sji . . . . m5 = 25. Spre exemplu. g˘sim s ≡ a a k i=1 Iji (mod Mj ).5. m4 = 19. . unde Mj = mj1 mj2 . a a ˆ final. mn−k+2 . s5 = 11. . a a a Consider˘m umbrele sj1 . mjk . ˆ ARTIREA SECRETELOR IMP ˘ ¸ 163 schem˘ (k. sj2 . . . sjk cunoscute. . M ). Nji ≡ M ji (mod mji ) ¸i. obtinˆnd: In a ¸ a s1 = 21. mj ) = 1. . . . ˆ final Iji = sji Mji Nji . . mji Folosind teorema chinezeasc˘ a resturilor. Fiecare participant Pi va primi (si . . Dar. . m2 = 12. mk > mn mn−1 .9. am reconstituit secretul. . m1 m2 m3 = 2244. s2 . unde M = m1 m2 . format din a a dou˘ etape principale: construirea umbrelor ¸i reconstituirea secretului a s din k umbre. calculeaz˘ umbrele si ≡ S (mod mi ). mk reprezint˘ cea mai mic˘ s a a valoare obtinut˘ dintre produsele de k numere. Fiecare persoan˘ Pji . unde mn mn−1 . m1 m2 . . . . s4 = 4. 2. asta s fel. Alegem secventa m1 . rezult˘ S = s ¸i. Determin˘m secretul S astfel ˆ at a ıncˆ mn mn−1 . 1. . . . mn−k+2 < S < m1 m2 . calculeaz˘: a a M Mji = s ın . ¸ a Construim umbrele prin si ≡ S (mod mi ). iar m1 m2 . 1 ≤ i ≤ n. . . mn de numere naturale care verific˘ ¸ a conditiile: ¸ (mi . m2 . n)−threshold. . m4 m5 = 475 ¸i define¸te a s s secretul S = 1011. s3 = 8. mk . din 0 < S < Mj . s2 = 3. mn . sn uma a s brele care trebuie create. n)−threshold putem folosi urm˘torul algoritm.

. de unde N1 = 1 m1 ¸i I1 = 2034900. unde yj = f (xj ). mi . rezult˘ S ≡ I1 + I3 + I4 = 10350900 ≡ 1011 (mod 3553) In a unde m1 m3 m4 = 3553. folosim formula de interpolare Lagrange: k f (x) = j=1 yj 1≤l≤k l=j x − xl . N4 ≡ M 4 (mod 19). ¸ a 1. Fiecare participant Pj prime¸te s (sj . Dealer-ul define¸te polinomul ıncˆ s f= k−1 i=0 ai X i . define¸te a0 = S ¸i a ¸ s s alege ˆ mod aleator k − 1 coeficienti independenti a1 . Dac˘ ˆ a ıncerc˘m s˘ reg˘sim secretul folosind doar umbrele s1 . num˘rul de participanti. ˆ Incheiem acest subcapitol cu prezentare schemei de ˆ artire a seımp˘ ¸ cretelor a lui Shamir. P4 secretul S. 2. Consider˘m c˘ un grup de k sau mai multi participanti vor s˘ detera a ¸ ¸ a mine secretul. . Pentru a determina functia polinomial˘ al c˘rei ¸ a a grafic trece prin aceste puncte. xj − xl . a ¸ M P1 calculeaz˘ M1 = a = 96900. S˘ vedem cum obtin persoanele P1 . de unde N3 = 13 P3 calculeaz˘ M3 = a m3 ¸i I3 = 6520800. cu p > max{S. Umbrele secretului S vor fi create prin sj ≡ f (j) (mod p). Aceasta este o schem˘ perfect˘ care se bazeaz˘ pe a a a interpolarea polinomial˘ ¸i pe faptul c˘ un polinom de gradul k − 1 este as a unic determinat de cei k coeficienti ai s˘i. N3 ≡ M 3 (mod 17). ceea ce nu este corect.164 ˘ CAPITOLUL 9. Administratorul alege un num˘r prim p. . n} unde S a este secretul iar n. CRIPTOGRAFIE CU CHEIE PUBLICA (si . Reconstituirea secretului. care este de fapt un polinom cu coeficienti ˆ ¸ ıntr-un corp finit cu p elemente. Apoi. printr-un canal sigur. obtia a a ¸ nem S ≡ I1 + I3 = 8555700 ≡ 76 (mod 187). 1 ≤ j ≤ p − 1. j). s M = 62700. Construirea umbrelor. N1 ≡ M 1 (mod 11). s ˆ final. ak−1 astfel ın ¸ ¸ ˆ at 1 ≤ ai ≤ p − 1. . Fiecare pereche (j. M ). de unde N4 = 8 m4 ¸i I4 = 1795200. P3 . yj ). s3 . s M P4 calculeaz˘ M4 = a = 56100. 1 ≤ i ≤ k − 1. pentru n valori diferite j. sj ) este considerat˘ ca fiind un punct a (xj .

unde cj = 1≤l≤k l=j xl xl −xj . a a Dac˘ consider˘m orice dou˘ puncte. s . 45) ¸i S = 67. secretul poate fi In orice punct de pe axa Oy. 19. Din S = f (0). pentru orice divizor prim p al lui n (de ıncˆ exemplu. 10. coeficientii cj nefiind secreti. deci nu ˆ putem afla. 36). prin a a a acesta pot trece o infinitate de drepte. Fie n > 1 un num˘r liber de p˘trate. 15. ˆ ARTIREA SECRETELOR IMP ˘ ¸ Cum S = a0 = f (0). 3. iar d ¸i e numere naturale a a s astfel ˆ at p − 1 | de − 1. Dac˘ consider˘m un singur punct. Fie A = {2. 3. 4. 49) ¸i S = 73 s iii) (1. 16}. 7. ¸ a ¸ ¸ Un caz simplu de vizualizat este pentru k = 2. Fiecare umbr˘ este de fapt un punct pe dreapt˘. 2. ıl Exercitii propuse ¸ 1.9. Punctul A. 40) ii) (2. Determinati toate submultimile B ¸ ¸ ale multimii A cu proprietatea c˘ suma tuturor elementelor din B este ¸ a egal˘ cu 18. 20. Graficul functiei ¸ polinomiale este o dreapt˘. 22. Precizati care dintre urm˘toarele 5−upluri sunt supercresc˘toare: ¸ a a i) (3. 9. ˆ care dreapta intersecteaz˘ axa a ın a Oy. acesta poate fi cazul cˆnd de ≡ 1 (mod φ(n))). 4. are coordonatele (0. deci g˘sim secretul. 35. 69) ¸i S = 45 s ii) (1. fiecare grup de k participanti va determina secretul calculˆnd ¸ a o combinatie liniar˘ a umbrelor. 11. Fie i) (2. acestea determin˘ ˆ mod unic a a a a ın dreapta. putem scrie S = k j=1 165 cj yj . rezult˘ c˘ secretul este a a ordonata punctului A. 12. Determinati numerele prime p ¸i q dac˘ n = pq = 14647 iar ¸ s a φ(n) = 14400. 20. ˆ acest caz. 7. 7. 9. 13. 2.5. 5. f (0)). 5. 6. Deci. a 5. pentru orice ˆ ıntreg a. Ar˘tati c˘ a a ¸ a ade ≡ a (mod n). 3. 3.

Determinati secventa ce se obtine din 7−uplul (1. 3. este supercresc˘tor. . . reconstituiti mesajul ¸tiind c˘ mesajul cifrat are unit˘¸ile ¸ s a at 14 25 89 3 65 24 3 49 89 24 41 25 68 41 71. a2 . 3. a2 . ¸ a a 6. 14. Cunoscˆnd ¸i cheia privat˘ b = 23. . dac˘ acestea exist˘. G˘siti. 20. . 24. Ar˘tati c˘: a ¸ a i) Pentru un n−uplu supercresc˘tor. stabiliti care dintre pros ¸ blemele rucsac sunt supercresc˘toare. 80) ¸ ¸ ¸ pentru multiplul w = 17 ¸i modulul m = 162. 5. 8). an ) care verific˘ aj+1 ≥ 2aj . a a s a m = 61. 41. . a 7. s 8. pentru 1 ≤ j ≤ n. . . pentru a 1 < j < n.166 ˘ CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLICA Pentru fiecare dintre aceste 6−upluri ¸i S. . Presupunem c˘ un mesaj a fost criptat folosind un sistem rucsac a cu cheia public˘ (57. ii) Orice n−uplu (a1 . toate solutiile. an ) se verific˘ a a aj ≥ 2j−1 . pentru fiecare problem˘ a a ¸ a rucsac. . (a1 . 10.

O problem˘ de baz˘ ce se refer˘ la numerele prime este aceea de a a a a stabili dac˘ un anumit num˘r este prim sau nu. Testele a a ın probabilistice de primalitate folosesc pe lˆng˘ num˘rul n care este testat a a a ¸i alte numere alese aleator dintr-o multime de probe. ın Testele de primalitate pot fi deterministice sau probabilistice.CAPITOLUL 10 Teste de primalitate ˆ a din antichitate. Numerele care trec a un test de primalitate probabilistic vor fi numite probabil prime pˆn˘ a a cˆnd primalitatea lor este demonstrat˘ ˆ mod deterministic. mai a a mare decˆt 3 ). Aceste a teste sunt mult mai rapide decˆt cele deterministice. Ele sunt importante ¸i a s ˆ prezent. Probabilitatea erorii poate fi mic¸orat˘ repetˆnd testul a 2 s a a pentru mai multe valori prob˘ independente. mai ales din punct de vedere practic. Un test care realizeaz˘ a a a acest lucru poart˘ numele de test de primalitate. Orice astfel de test s ¸ trebuie s˘ dea r˘spunsul corect cu o mare probabilitate (de exemplu. matematicienii au fost fascinati de probleme ce Inc˘ ¸ implicau numere prime. a 167 . ¸inˆnd cont de utilizarea ın t a acestor numere ˆ criptografie. Cele deterministice stabilesc cu certitudine dac˘ un num˘r este prim a a pe cˆnd testele probabilistice pot identifica ˆ mod fals (cu o mic˘ probaa ın a bilitate) un num˘r compus ca fiind prim (invers nu este posibil).

Repet˘m pasul 1 pˆn˘ se obtine certitudinea dorit˘.3. 10. testul oprindu-se. mai r˘mˆne s˘ aplic˘m a s a a a a procedeul doar pentru 7. Cele care r˘mˆn ˆ list˘ sunt toate numere prime. list˘m ˆ ai numerele impare de la 3 la 100. ap˘rut ˆ jurul a ın anului 240 ˆ ı. a 1 Eratostene (276-194 ˆ ı. Cum 11 > 100. vedem dac˘ a a a unul dintre numerele 2. num˘rul testat. s a ¸ a a . astronomiei. trial division. geografiei. prim. ıntˆ a 2. TESTE DE PRIMALITATE Un test probabilistic de primalitate are urm˘toarea structur˘ de baz˘: a a a 1.7. Pentru s a a 5.e. el este declarat ¸ a s probabil prim. De exemplu. pentru a testa dac˘ 211 este num˘r prim. pentru a testa dac˘ este prim.) a studiat la ¸coala lui Platon ˆ Atena. criticii a ın literare.1. ˆ atur˘m din ¸ir toti a Inl˘ a s ¸ multiplii lui 3 ¸i primul num˘r r˘mas este √ care este deci. ¸ a Considerat un num˘r n. n este compus ¸i b poart˘ numele de martor a a s a al lui n.1 Ciurul lui Eratostene Acesta este cel mai vechi test de primalitate cunoscut. dup˘ a a a ¸ a a a mai multe iteratii. Primul num˘r din list˘ a ıntˆ a a este 3. verificˆnd dac˘ el are divizori primi ≤ n conform a a a teoremei 1. astfel el este primul num˘r prim impar. 10. Aleg la ˆ amplare un num˘r b. stabile¸te dac˘ a a √ s num˘rul n este prim. pentru a g˘si numerele prime impare.5.11 sau 13 este divizor al s˘u. el aplic˘m acela¸i procedeu. Toate numerele r˘mase ˆ list˘ sunt numere a ın a prime.1. filozofiei.n. num˘rul n nu se dovede¸te compus.e. Verific o egalitate ce implic˘ numerele b ¸i n.1 El functioneaz˘ corect pentru orice numere prime. ˆ a a ıntocmim o list˘ a cu toate numerele naturale pornind de la 2 pˆn˘ la n.168 CAPITOLUL 10. El este cunoscut pentru m˘sur˘torile sale geografice printre care se num˘r˘ a a a a ¸i faimoasa m˘surare a circumferintei p˘mˆntului. Dac˘ a s a a egalitatea nu este adev˘rat˘. a a ın a De exemplu. El a scris multe s ın lucr˘ri ˆ domeniul matematicii.n. 3.2 C˘utare de divizori prin ˆ a ıncerc˘ri a Testul de c˘utare de divizori prin ˆ a ıncerc˘ri. Din√ se ˆ atur˘ a a ea ınl˘ a toate numerele care sunt multiplii de numerele prime ≤ n. mai mici decˆt a a 100. Dac˘. istoriei.

3 Teste n-1. anume. . pentru rezolvarea unor probleme de teoria a s numerelor. Lucas2 a transformat mica teorem˘ a lui Fermat ˆ In a ıntr-un test practic de primalitate. Dac˘ pentru orice factor prim p al lui a a n − 1 exist˘ un ˆ a ıntreg a astfel ˆ at: ıncˆ 1. p − 1 sau p + 1 se pot descompune foarte repede. Acest fel de factorizare e uneori a numit˘ factorizare circular˘. profesor la Berkeley. tehnici computationale.1 Fie n > 1. Testul Pepin Dac˘ vom studia cu atentie o list˘ format˘ din cele mai mari numere a ¸ a a prime cunoscute.10. p. n este prim. Ea necesit˘ mai multe ˆ artiri (unii dia a a ımp˘ ¸ vizori vor fi numere compuse). a a 3 Derrick Norman Lehmer (1905-1991).5 iar apoi s˘ a ımp˘ ¸ a vedem dac˘√ a numere congruente cu 1.11. Astfel. a obtinut rezultate ¸ importante referitoare la functiile Lucas.3.17. e mai practic s˘ facem ˆ artirile pentru 2. avem nevoie de teste mai rapide. atunci. TESTE N-1. dac˘ n are mai mult de 25 cifre. incluzˆnd ¸i computerul. ecuatii ¸ ¸ ¸ diofantice. TESTUL PEPIN 169 Pentru a ˆ ımbun˘t˘¸i aplicarea practic˘ a acestei metode. a Acest rezultat nu este nea¸teptat pentru c˘ exist˘ teste deterministice s a a care verific˘ primalitatea numerelor de aceast˘ form˘. ˆ ımbun˘t˘¸it de Kraitchik ¸i Lehmer3 : a at s Teorem˘ 10. dar are avantajul c˘ nu trebuie s˘ avem a a la dispozitie o list˘ de numere prime. fractii continue. facem obsera at a vatia urm˘toare: toate numerele prime. El este considerat un pionier ˆ aplicarea metode¸ ın lor mecanice. a a a ˆ 1891.19. a s s s El a inventat metode de testare a primalit˘¸ii numerelor cu ajutorul c˘rora.7. sunt divizori pentru n. ˆ 1876 at a ın a ar˘tat c˘ M127 este prim. cele dou˘ teste prezentate nu se aplic˘ decˆt pentru numere a a a mici. mai putin 2 ¸i 3 sunt de forma ¸ a ¸ s 6k ± 1.3. teste de primalitate. mai mici decˆt n. vom observa u¸or c˘ majoritatea acestora au o form˘ s a a particular˘. 2 Fran¸ois Edouard Anatole Lucas (1842-1891) este cunoscut ˆ special pentru c ın studiul f˘cut asupra ¸irului Fibonacci ¸i a ¸irurilor Lucas pe care le-a asociat acestuia.13. an−1 ≡ 1 (mod n) ¸i s 2.3. a 10.23. Acest num˘r este cel mai mare num˘r prim descoperit a a a a f˘r˘ ajutorul computerelor.29 modulo 30. a n−1 p = 1 (mod n). ¸ a Oricum.

obtinˆnd testul: ¸ a √ Teorem˘ 10. Dac˘ exist˘ un ˆ a a a ıntreg a astfel ˆ at: ıncˆ s 1. m | n − 1 iar din a doua. . fiind necesar˘ doar factorizarea unui divizor al lui a a n − 1. Dac˘ pentru fiecare i = 1. Pentru acest p exist˘ a care verific˘ cele dou˘ s a a a conditii din enuntul teoremei. Atunci. Fie m = ordn (a). Atunci. ˆ aceast˘ demonstratie. a a Putem generaliza teorema Poklington. Teorema are un inconvenient: necesit˘ factorizarea complet˘ a lui a a n − 1. k exist˘ bi astfel ˆ at: a a ıncˆ 1 2 k 1. r > 0 astfel ˆ at a a a ıncˆ pr | n − 1 ¸i pr φ(n). De fapt. Fie q un divizor al lui n ¸i m = ordq (a). a F = pα1 pα2 . ar˘t˘m c˘ n − 1 | φ(n). bn−1 ≡ 1 (mod n). . n = 1. aa a Dac˘ presupunem contrariul. bi n−1 pi − 1. Din m | q − 1 rezult˘ q de forma cerut˘. sau mai complicate. demonstr˘m c˘ φ(n) = ¸ a a a a n − 1. Poklington a stabilit un rezultat care ˆ are¸te ınt˘ s teorema anterioar˘.2 (Teorema Poklington) Fie n−1 = pk R unde p este a num˘r prim. (a n−1 p − 1. Pentru a ar˘ta c˘ n este prim. Demonstratie. .170 CAPITOLUL 10. se arat˘ c˘ grupul U (Z n ) are orın a ¸ a a dinul n − 1. p R. exist˘ p num˘r prim. deci n este num˘r prim. pentru a simplifica. Din acest motiv. n) = 1. . atunci fiecare factor prim al lui n are forma pk r + 1. atunci n este prim. . ca a testul ˆ discutie. Acest procedeu st˘ la baza tuturor a a testelor moderne de primalitate indiferent dac˘ acestea sunt simple.3. p m = pk l. an−1 ≡ 1 (mod n) ¸i 2. pαk . Din prima ¸ s n−1 conditie. . pk | m. i 2. R < n. m | n − 1 dar ¸ ¸ n−1 m . pr | m ¸i din m | φ(n) ajungem la o contradictie. TESTE DE PRIMALITATE Demonstratie. m ¸ . Teorem˘ 10. Astfel.3. Astfel. .3 Fie n − 1 = F · R unde F > R. s ¸ p De fapt. cum ar fi teste ce folosesc curbele ın ¸ eliptice sau corpuri de numere.

poliıncˆ nomul X 2 − pX + q are r˘d˘cini distincte: a a a= √ √ 1 1 p+ d .10.3. Dac˘ 3 2 ≡ −1 (mod Fn ). 2 2 Prin inductie. pentru n ≥ 0: ¸ Un = an − bn . a Fn −1 Fn este prim dac˘ ¸i numai dac˘ 3 2 ≡ −1 (mod Fn ). V0 = 2. dac˘ consider˘m Fn prim. prezent˘m urm˘toarele a a dou˘: a Teorem˘ 10. = = = −1. Dac˘ exist˘ a. luˆnd ¸ a b = 3. ıncˆ atunci n este prim. U1 = 1. Um = pUm−1 − qUm−2 . ≡ 3 2 (mod Fn ).3. Fn −1 n 10. se arat˘ c˘: ¸ a a Lem˘ 10.4. V1 = p. Fn 3 Fn 2 Dar. as a a Demonstratie. Vm sunt definite s 2 (10. TESTE N+1.1) (10.3. Vm = pVm−1 − qVm−2 . Obtinem.4.2) U0 = 0.1 a a recursiv prin: m √ Vm + Um d = unde ¸irurile Um . Testul Lucas-Lehmer Pentru ˆ ınceput. a−b .4 (Testul Pepin (1877)) Fie Fn = 22 + 1 al n−lea a num˘r Fermat cu n > 1.5 (Teorema Proth (1878)) Fie n = h · 2k + 1 cu a n−1 2k > h. ¸ a a a Fn −1 3 Atunci.3. Atunci. b= p− d . Vn = an + bn . num˘r ˆ a a a ıntreg. TESTUL LUCAS-LEHMER 171 Dintre cazurile clasice ale teoremei 10. m ≥ 2.3. Reciproc. s Fie p ¸i q numere ˆ s ıntregi astfel ˆ at d = p2 − 4q > 0. de fapt. din teorema 10. Fn 3 3 Teorem˘ 10. astfel ˆ at a 2 ≡ −1 (mod n). obtinem Fn num˘r prim.3. definim ¸irurile Lucas.4 Teste n+1. m ≥ 2.

U2n+2 = (p2 − 2q)U2n − q 2 U2n−2 .1) ¸i obtinem: ¸ a ¸ s ¸ U2n+2 = pU2n+1 − qU2n = p (pU2n − qU2n−1 ) − qU2n = (p2 − q)U2n − pqU2n−1 = (p2 − 2q)U2n + q (U2n − pU2n−1 ) = (p2 − 2q)U2n − q 2 U2n−2 . Atunci. U1 ≡ pU2 ≡ pp ≡ 1 (mod m). Un s s s caz particular cunoscut se obtine pentru p = 1. pentru orice n ≥ 1. Pentru ¸ aa as a ¸ aceasta. V1 ≡ p (mod m). calculate modulo m. Vn+1 = p Vn − Vn−1 .3) (10. Folosind lema 10. Un este ¸ ¸irul numerelor Fibonacci. q = −1.3 Fie m un num˘r natural. (10.2 Sirurile Lucas verific˘ urm˘toarele relatii: a ¸ a a ¸ V2n+2 = (p2 − 2q)V2n − q 2 V2n−2 . s Demonstratie. Aplic˘m relatia ( 10. se arat˘ c˘ In a a V0 ≡ 2 (mod m). Atunci. Ar˘t˘m c˘ ¸irul (Un )n≥0 verific˘ relatia ( 10. relativ prim cu p ¸i cu q. pentru n ≥ 1 obtinem: ¸ Un+1 ≡ pq n U2n+2 ≡ pq n (p2 − 2q)U2n − pq 2−n U2n−2 ¯¯ ¯¯ ¯ 1−n 2 2−n ≡ pq ¯ U2n q (p − 2q) − pq ¯ ¯ U2(n−1) ≡ p Un − 1 · Un−1 . Demonstratie. ¸irurile (Un )n≥0 .172 CAPITOLUL 10.4.4) Cealalt˘ relatie se obtine ˆ acela¸i mod.2. TESTE DE PRIMALITATE Aceste ¸iruri se numesc ¸irurile Lucas asociate numerelor p ¸i q. (10.5) (10.4. a ¸ ¸ ın s Lem˘ 10. ¯ Vn = q n V2n (mod m). s Lem˘ 10. Not˘m a a s a p ≡ q (p2 − 2q) (mod m).4. (Vn )n≥0 definite prin ¯ s ¯ Un = pq 1−n U2n (mod m). ˆ mod analog. .6) pentru orice n ≥ 0.1). ¯ ¯ ¯ U0 ≡ pqU0 = 0 (mod m). sunt ¸irurile Lucas. asociate s numerelor p ¸i 1.

De mentionat c˘ putem folosi valori diferite pentru p.4.7) (10.4.8) (10.3. mai ales dac˘ ˆ descompunerea lui n apar multi factori pari. 2 Vn (10. Observ˘m c˘ lema a a a a s a a afirm˘ cu necesitate c˘ an este conjugatul complex al lui a modulo n.4. Pentru orice factor prim r al lui n + 1. t √ numere ˆ ıntregi cu aceea¸i s paritate. q cˆt timp valoarea ¸ a a lui d nu se modific˘. r atunci n este prim. dp) = 1. a ın ¸ Lem˘ 10. Un+1 ≡ 0 (mod n) 2. dac˘ n este prim. a. a . a S˘ reformul˘m aceast˘ lem˘ folosind ¸irul Un .9) (10. q ca mai sus. atunci a a Un+1 ≡ 0 (mod n). definiti anterior ¸i d care nu este p˘trat a ¸ s a √ modulo n. n = 1. Folosind aceste rezultate putem enunta teorema corespunz˘toare teo¸ a remei 10. (n. q.10. a a Din acest motiv.5 Cu p.1 Fie n > 1 un num˘r impar. TESTUL LUCAS-LEHMER 173 Se poate stabili u¸or c˘ ¸irurile Lucas verific˘ urm˘toarele identit˘¸i: s as a a at U2n = Un Vn U2n+1 = Un+1 Vn − q n 2 V2n = Vn − 2q n . le ˆ ınmultim ¸i rezult˘: ¸ s a Lem˘ 10. TESTE N+1. atunci 2an ≡ s − t d (mod n).4. d n = −1.11) = 2 dUn n Aceste formule permit calculul elementelor din ¸ir pentru valori mari s ale lui n.10) (10. fie 2a ≡ s + t d (mod n) pentru s. Dac˘ n este prim. U n+1 .1: Teorem˘ 10.4 Pentru p. Dac˘ exist˘ un ¸ir Lucas a a a a s astfel ˆ at sunt verificate conditiile: ıncˆ ¸ 1. n ≥ 1 V2n+1 + 4q = Vn+1 Vn − pq n .

1. a al n− lea num˘r Mersenne. ˆ teorema 10. Mn = 1. 3 Calcul˘m mai ˆ ai simbolul a ıntˆ . ın Alegem p = 2. k Pentru n ≥ 3 num˘r prim. Prima conditie implic˘ s a ¸ a 2 2 atunci.7).174 CAPITOLUL 10. prima conditie este imediat˘.1. Atunci. Folosind legea reciprocit˘¸ii at Mn p˘tratice ¸i lema lui Gauss.12) Presupunem c˘ cele dou˘ conditii ale testului se verific˘. specific numerelor a Mersenne: Teorem˘ 10. dac˘ ( 10. Vom aplica testul corespunz˘tor ¸irurilor Lucas enuntat ¸ a s ¸ ˆ teorema 10. rezult˘ c˘ U Mn +1 are invers modulo Mn . 2 (10.4. d = 12. cele dou˘ conditii din enuntul teoremei devin: a ¸ ¸ 1. ¸ a a 2 Din ( 10.4. ¸tim c˘ UMn +1 = U Mn +1 V Mn +1 . Mn este num˘r prim Mersenne dac˘ ¸i numai a a as dac˘ sn−2 ≡ 0 (mod Mn ).12) se verific˘. k ≥ 1. q = −2. t este num˘r impar. a a ¸ a Fie t un divizor al lui Mn . a Demonstratie.4. alegem pentru n num˘rul Mersenne In ın ın a Mn . U Mn +1 . sk+1 ≡ s2 − 2 (mod Mn ). d 3 = = −1. V Mn +1 ≡ 0 (mod Mn ).2 (Testul Lucas-Lehmer(1930)) Fie Mn = 2n − 1. S˘ presupunem a a . TESTE DE PRIMALITATE Un caz particular al acestui test este urm˘torul. Atunci. obtinem: a s ¸ 3 Mn Obtinem ¸ =− Mn 3 = 2 3 = −1. UMn +1 ≡ 0 (mod Mn ) 2. 2 Reciproc. Consider˘m ¸irul sk definit recurent: a a s s0 = 4. din a a ¸ a a doua relatie. Atunci. 2 Ar˘t˘m c˘ acestea sunt echivalente cu conditia aa a ¸ V Mn +1 ≡ 0 (mod Mn ). Mn Mn ˆ cazul ˆ care.

9).1 (Algoritmul Lucas-Lehmer) INPUT: un num˘r Mersenne Mn = 2n − 1 cu n ≥ 3. s ımp˘ ¸ Spre exenplu. s4 ≡ 111 (mod 127). cele dou˘ conditii din testul de primalitate 10. .3 pen¸ a tru p = 2. Valoarea sn−2 poart˘ numele de reziduu Lucas-Lehmer al lui n.4. Dac˘ not˘m sj = V2j . Sirul este dat de ¸ s0 = 4. Mn | 12U 2 n +1 + 4(−2) a s M Mn +1 2 2 . s1 ≡ 14 (mod 127). Atunci.4.12) ¸i astfel. obtinem ¸irul: a a ¸ s 2 s0 = V1 = p = −4. p = −4 ¸i (−2)n Vn ≡ V2n (mod Mn ). V2n = Vn2 − 2. a a In a Aceast˘ contradictie arat˘ c˘ Mn ¸i U Mn +1 sunt prime ˆ a ¸ a a s ıntre ele. sj+1 = V2j+1 = V2·2j = V2j − 2 = s2 − 2. pentru j ≥ 0. q = −2. Astfel. m = Mn . pentru n = 7. pentru n > 0. Dac˘ exist˘. M7 = 27 − 1 = 127. adic˘ t este num˘r par.10) arat˘ c˘ In ¸ a a 2 V Mn +1 = dU 2 n +1 + 4q M 2 2 Mn +1 2 175 . aplic˘m lema 10. s Astfel. relatia ( 10. j > 0. a 2 ˆ cazul nostru. TESTUL LUCAS-LEHMER c˘ t | U Mn +1 . s3 ≡ 42 (mod 127). 2 Obtinem V Mn +1 − 12U 2 n +1 = 4(−2) ¸ M 2 2 Mn +1 2 . TESTE N+1. Se verific˘ prin metoda obi¸nuit˘ dac˘ n are un divizor d cu s a a √ a 2 ≤ d ≤ n. a a a a s s 2. s2 ≡ 67 (mod 127). Deci. j De aici. Astfel. Algoritm 10.1 sunt echivaa ¸ lente cu sn−2 ≡ 0 (mod Mn ). Mn +1 2 Aplic˘m (10. se returneaz˘ num˘r compus ¸i se opre¸te. s5 ≡ 0 (mod 127). s ← 4. a 1. 2 V2n = (−2)−2n V4n ≡ (−2)−2n V2n − 2(−2)2n ≡ Vn2 − 2 (mod Mn ).4.12) este echivalent˘ cu ¸ a V2n−1 = V2·2n−2 = (−2)2 n−2 V2n−2 = (−2)2 n−2 sn−2 . relatia ( 10. a Acest test este deosebit de rapid deoarece nu folose¸te ˆ artiri.4. ˆ final rezult˘ t | 4(−2) .10. folosind ( 10. M7 este prim. a OUTPUT: un r˘spuns referitor la primalitatea lui Mn . 2 Pentru a ˆ ıncheia demonstratia acestui test.

atunci s a a a s bn ≡ b (mod n). Altfel.14) ¸i ( 10.5.14) (10.17) (10. s Tabelul B.5 Testul Fermat Din teorema 3.15) = 2 10 34 ≡ 1 (mod 11) 2340 = 2 5 68 = 3268 ≡ 1 (mod 31) Din ( 10. Definitie 10.16) .13) (10. chiar dac˘ s a a a 341 este compus.176 CAPITOLUL 10. 2341 ≡ 2 (mod 341).1.4. TESTE DE PRIMALITATE 3. n) = 1.15) rezult˘ c˘ 2340 ≡ 1 (mod 341). Pentru k de la 1 la n − 2 calculeaz˘: a 3. a 10. congruenta ( 10. Dac˘ s = 0 returneaz˘ num˘r prim. Observatie 10. pentru num˘rul compus n = 341 = 11 · 31 obtinem: a ¸ 210 ≡ 1 (mod 11) 2 340 (10. Dar.1 Fie b ≥ 2 un num˘r natural. Un num˘rul natural ¸ a a compus n care verific˘ relatia: a ¸ bn ≡ b (mod n) se nume¸te pseudoprim cu baza b. returneaz˘ a a a a num˘r compus. Astfel. dac˘ exist˘ un ˆ a a ıntreg b pentru care bn = b (mod n).4 ¸tim c˘.16) este echiva¸ a ¸ lent˘ cu a bn−1 ≡ 1 (mod n) (10. pentru n = 129 ¸i b = 2 obtinem 2129 = 27 s ¸ ·8 = 18 18 128 · 8 ≡ (−1) 8 ≡ 8 (mod 129). s ← (s2 − 2) mod Mn . 4. a 18 De exemplu. De a a exemplu.5. atunci n este num˘r compus. Cu alte cuvinte. dac˘ n este num˘r prim ¸i b ∈ Z . ˆ China antic˘ numerele n pentru care 2n ≡ 2 (mod n) se considerau In a prime.1 (vezi Anexa B) prezint˘ cele mai mici numere pseudoa prime cu primele 100 de baze. reciproca micii teoreme a lui Fermat nu este adev˘rat˘.1 Dac˘ (b.

Spre exemplu. dac˘ alegem n = 561 = 3 · 11 · 17 a . Din 2n ≡ 2 (mod n) obtinem 2n − 2 = kn pentru un k natural.18) (10.17).10. Dar. n poate fi num˘r prim sau pseudoprim cu baza a a 2. Dac˘ demonstr˘m ¸ a a a aceast˘ afirmatie. 177 Teorem˘ 10.1 Exist˘ o infinitate de numere pseudoprime cu baza 2. Atunci.5. Ar˘t˘m c˘ pentru n. a Presupunem c˘ relatia 2n−1 ≡ 1 (mod n) este verificat˘ pentru a ¸ a num˘rul impar n. 2m−1 ≡ 1 (mod m). Astfel.1 Fie d.5. cum 341 este pseudoprim cu baza 2. atunci n este compus ¸i verific˘ ( 10.17) este verificat˘ pentru b = 7.17). pentru care bn−1 = 1 (mod n). m este compus. 341 este compus. Aplic˘m din nou lema ¸i obtinem 2n − 1 | 2kn − 1 a s ¸ adic˘ m | 2m−1 − 1. pentru a a ¸ orice baze b prime cu n. a ıncˆ 2d − 1 | 2n − 1. Din lema anterioar˘ rezult˘ a a a c˘ 2d − 1 este divizor al lui m ¸i se observ˘ c˘ el este diferit de 1 ¸i m. ¸ 7340 = 73 113 (10. nk = 2nk−1 −1 pentru k ≥ 1. exist˘ numere compuse n care verific˘ relatia ( 10. Observ˘m c˘: ¸ a a a 73 = 343 ≡ 2 (mod 341) 210 = 1024 ≡ 1 (mod 341) Din aceste relatii.19) 7 ≡ 2113 · 7 = 210 11 · 23 · 7 ≡ 8 · 7 ≡ 56 = 1 (mod 341). Pentru a stabili cu exactitate natura sa. Atunci. Dac˘ g˘sim un b. n numere naturale astfel ˆ at d | n. num˘r pseudoprim impar cu baza ¸ aa a a 2. ¸ n 2m−1 = 22 −2 = 2kn . a a Demonstratie.5. trebuie testat n ˆ raport cu ın alte baze. Deci. Dac˘ n este pseudoprim impar. ¸ a toate numerele g˘site sunt diferite ˆ a ıntre ele. TESTUL FERMAT Lem˘ 10. a s a Consider˘m d un divizor netrivial al lui n. putem construi a ¸ o infinitate de numere pseudoprime impare cu baza 2 formˆnd ¸irul de a s numere n0 = 341. pentru 341 care este pseudoprim cu baza 2. prim cu n. Atunci. De exemplu. a s a a s Deci. Sirul fiind strict cresc˘tor. test˘m dac˘ a a relatia ( 10. obtinem m = 2n − 1 num˘r pseudoprim cu baza 2. a a atunci n este compus.

Atunci.5.2.3. sunt mentionate ¸i numerele Carmichael a ¸ s existente pˆn˘ la aceast˘ limit˘. (b. a 2) Dac˘ n este liber de p˘trate. ordp2 b = p(p − 1) implic˘ a a . 11) = 1. TESTE DE PRIMALITATE ¸i o baz˘ b unde (b. sistemul a x ≡ r (mod p2 ) x ≡ 1 (mod n1 ) are solutie unic˘ pe b. unde p este un num˘r prim.5. obtinem: a ¸ b560 = b2 b560 = b b 560 280 ≡ 1 (mod 3) (10. obtinem c˘ (b.4. ordp2 r = p(p − 1). Dar. s a Demonstratie. (b. Not˘m cu a a a a n1 produsul tuturor numerelor prime diferite de p care divid n. a din p2 | n. din cadrul Anexei B. 17) = 1.17) pentru orice b num˘r relativ prim cu n. adic˘ bn−1 ≡ 1 (mod n). deci nu va fi num˘r a a a Carmichael.21) (10.1 Fie n un num˘r natural impar. Atunci. ¸ a 1) Dac˘ n se divide cu p˘tratul unui num˘r natural > 1. atunci n este num˘r Carmichael dac˘ a a a a ¸i numai dac˘ p − 1 | n − 1 pentru fiecare divizor prim p al lui n. n) = 1.22) 10 56 16 35 ≡ 1 (mod 11) ≡ 1 (mod 17) = b de unde b560 ≡ 1 (mod 561). ˆ tabelul B. Vom ar˘ta c˘ n nu este pseudoprim cu baza b. al˘turi de numerele pseudoprime cu In a baza 2 mai mici decˆt 41041. presupunem contrariul. a a a a Propozitie 10. 1) Presupunem c˘ p2 | n.2 Un num˘r natural compus n care verific˘ relatia ¸ ( 10.20) (10. Atunci. se nume¸te num˘r a s a Carmichael. Pentru aceasta. rezult˘ bn−1 ≡ 1 (mod p2 ). a a ¸ Definitie 10. Aplicˆnd a teorema chinezeasc˘ a resturilor. b este r˘d˘cin˘ primitiv˘ modulo p2 ¸i ¸ a a a a a s este prim cu n deoarece nu este divizibil cu p sau cu alt factor prim care divide n1 . atunci n nu a a a este un num˘r Carmichael. Fie ¸ a a r o r˘d˘cin˘ primitiv modulo p2 . 3) = 1. s a ¸ a Aplicˆnd teorema 3.178 CAPITOLUL 10.

Din p | n rezult˘ p = 1 ce ¸ a contrazice faptul c˘ p este prim. a a a a Ca ˆ demonstratia primului punct. prim cu n. q sunt prime. Din corolarul 3. (b. a 2) ˆ acest caz.1. rn−1 = 1 (mod pj ). Propozitie 10. rezult˘ bn−1 ≡ 1 (mod n). a obtinem n − 1 ≡ p − 1 (mod q − 1). ¸ ¸ Demonstratie. a a . ıntˆ a pentru fiecare i exist˘ ti astfel ˆ at n−1 = ti (pi −1).2 In anul 1992. 1 ≤ a ≤ n − 1. fals. ca ¸i ˆ s ınainte. g˘sim un ˆ ın ¸ a ıntreg b. fie n = pq a unde p. . atunci an−1 ≡ 1 (mod n). pk unde pi sunt numere prime distincte. Pentru aceasta. Dar. n) = 1 ¸i bn−1 ≡ rn−1 (mod pj ). In Presupunem mai ˆ ai c˘ pi − 1 | n − 1 pentru fiecare 1 ≤ i ≤ k. din n − 1 = p(q − 1 + 1) − 1. presupunem c˘ n este num˘r Carmichael dar exist˘ un pj a a a pentru care pj − 1 n − 1.2 Un num˘r Carmichael trebuie s˘ fie produsul a cel ¸ a a putin trei factori primi distincti. Atunci. Alegem p < q. Alford. a a reciproca teoremei lui Fermat nu este adev˘rat˘.5. Ar˘t˘m c˘ un astfel de num˘r nu poate fi un a aa a a produs de dou˘ numere prime distincte. Dac˘ n este un num˘r a a Carmichael. ¸ ˆ Observatie 10. Gran¸ ville ¸i Pomerance au demonstrat c˘ exist˘ o infinitate de numere s a a Carmichael (vezi [1]). ¸ n − 1 ≡ 0 (mod q − 1). . Astfel. Dup˘ cum am v˘zut. pj −1 n−1 s de unde.4.5.10.2. a Reciproc. Pe de alt˘ parte. Fie b un ˆ a ıncˆ ıntreg prim pi −1 ti n−1 cu n. bn−1 = 1 (mod pj ) ceea ce arat˘ c˘ a a bn−1 = 1 (mod n). TESTUL FERMAT 179 p(p − 1) | n − 1 de unde obtinem p | n − 1. Propozitia anterioar˘ a stabilit c˘ orice num˘r Carmichael ¸ ¸ a a a este liber de p˘trate. distincte. conform propozitiei anterioare. n = p1 p2 . care verific˘ a   b ≡ r (mod pj ) n  b ≡ 1 mod pj Atunci. din 0 < p − 1 < q − 1 rezult˘ n − 1 = 0 (mod q − 1). deci suficient de recent. fie r o r˘d˘cin˘ primitiv˘ modulo pj . Mica teorem˘ a lui Fermat afirm˘ c˘ pentru un num˘r prim n ¸i a un a a a a s ˆ ıntreg . Atunci. ¸ Dar. Aplic˘m teorema 3.5. q − 1 | n − 1. Aceast˘ a a contradictie ˆ ¸ ıncheie demonstratia.3 ¸i obtinem b a s ¸ = b ≡ 1 (mod pi ). Deci. atunci.

s s a Dac˘ este egal cu 1.1. a OUTPUT: un r˘spuns referitor la primalitatea lui n.1 (Algoritm Fermat) INPUT: un num˘r n > 2 impar. El nu a este cu adev˘rat un test probabilistic deoarece el nu poate distinge ˆ a ıntre numerele prime ¸i numerele Carmichael. p Deci. (10. care verific˘ congruenta ¸ b n−1 2 ≡ b n (mod n). Calculeaz˘ r = bn−1 mod n folosind algoritmul 3. Alege aleator un ˆ ıntreg b cu 2 ≤ b ≤ n − 2.1. obtinem 2170 ≡ 1 (mod 341). atunci n este prim sau pseudoprim cu baza b. Returneaz˘ num˘r prim.5. Dac˘ r = 1. Pentru i de la 1 la t : 1.2. de unde.3.1. a s p−1 Conform criteriului lui Euler. 2170 = 2 341 (mod 341). a c˘rui primalitate o cercet˘m. 341 Deci.6 Testul Solovay-Strassen Fie p num˘r prim impar ¸i b ∈ Z . dac˘ dorim s˘ test˘m dac˘ un num˘r natural n este prim. s Algoritm 10.6. atunci num˘rul este a a a compus ¸i b se nume¸te martor Fermat al faptului c˘ n este compus. atunci n este compus. pentru n = 341 ¸i b = 2. un parametru de securitate t > 1. b 2 ≡ b (mod p). Dac˘ rezultatul nu este 1. a a a a a n−1 putem alege un b. 341 este compus. s ¸ 2 Din 341 ≡ −3 (mod 8). TESTE DE PRIMALITATE Ideea testului Fermat este urm˘toarea: a Pentru num˘rul n.180 CAPITOLUL 10. a ¸ a De exemplu.23) . cu p b. alegem b > 1 ¸i cala a a s cul˘m bn−1 (mod n).1 Un num˘r natural compus n. a a 10. prim cu n ¸i verific˘m dac˘ b 2 ≡ b (mod n). a 1. a 1. rezult˘ a = −1. 1. a a ¸ Definitie 10. atunci returneaz˘ num˘r compus ¸i a a a s se opre¸te s 2. a Acest test st˘ la baza testelor probabilistice de primalitate. s a a n Dac˘ congruenta nu se verific˘.

1 < b < n.6.1. a ¸ a ¸ Folosind teorema chinezeasc˘ a resturilor. din exemplul anterior. (b. Cum n este Euler pseudoprim cu baza b. cu p prim impar. nu este Euler pseudoprim cu baza s a 2. Dac˘ n este num˘r prim. unde a a (r. Dar.1). n = 1105 este Euler pseudoprim cu baza b = 2 deoarece 2 ≡ 1 (mod 1105) ¸i. a num˘r impar. putem scrie n = r · s. pentru a ¸ a b care = −1.1 Trebuie s˘ remarc˘m faptul c˘ nu orice num˘r pseu¸ a a a a doprim este Euler pseudoprim. Lem˘ 10. aceea c˘ n nu este p˘trat perfect. ¸ Consider˘m acum c˘ n este compus. de Observatie 10. = ±1. Astfel. propozitia 7. s a De exemplu. prim cu n a a care verific˘ a b ≡ t (mod r) b ≡ 1 (mod s) . s) = 1 ¸i r = pa .1.10. exist˘ 1 < b < n. 341. TESTUL SOLOVAY-STRASSEN 181 pentru b ∈ Z. Astfel. se nume¸te num˘r Euler pseudoprim cu baza b.1 Fie n num˘r impar care nu este p˘trat perfect.6. relativ prim cu n.1 Dac˘ n este Euler pseudoprim cu baza b. bn−1 ≡ a unde bn−1 ≡ 1 (mod n). Demonstratie. n) = 1. din 1105 ≡ 1 (mod 8). rezult˘ s a = 1. Atunci a a a exist˘ cel putin un num˘r natural b. atunci n este a a pseudoprim cu baza b. congruenta ¸ ¸ b n−1 2 ≡ b n b n 2 (mod n) b n este verificat˘. 1105 2 552 Teorem˘ 10.1 ne asigur˘ de ¸ a a ¸ a existenta unui astfel de b.6. (mod n).6. Fie t un nons a rest p˘tratic modulo p (existenta lui este asigurat˘ de propozitia 7. n Demonstratie. Tinˆnd cont de conditia impus˘ a a ¸ a ¸ a lui n. despre care ¸tim c˘ este pseudoprim cu baza 2.

rezultat ce contrazice presupunerea f˘cut˘ a a la ˆ ınceputul demonstratiei. a s n−1 Deci. pk ) Rezult˘ a 2 ≡ b 2 ≡ −1 (mod p1 ) ¸i a 2 ≡ 1 (mod p2 . 2 n−1 n−1 n−1 . Aplic˘m teorema chinezeasc˘ a a prim cu n. TESTE DE PRIMALITATE = b p a = (−1)a = −1 ¸i s b s = 1. pentru fiecare astfel de b. b n = b r b r = · b s b pa CAPITOLUL 10. adic˘. . n Demonstratie. obtinem: ¸ n bn−1 ≡ b n 2 = (±1)2 = 1 (mod n). De aici. exist˘ cel putin un a a a ¸ n−1 b 1 < b < n. ¸ n−1 Astfel. De aici. . . n−1 Vom ar˘ta c˘ b 2 ≡ 1 (mod n). ¸ a Teorem˘ 10. ˆ raport cu care n este Euler a ın φ(n) pseudoprim este mai mic decˆt a . n pentru orice 1 < b < n. rezult˘ c˘ n este num˘r Carmichael. pentru care b 2 = (mod n).1. . b 2 ≡ 1 (mod n).6. obtinem b 2 ≡ t a ¸ = 1 (mod n).6. n−1 b ¸inˆnd cont de ipoteza de lucru. pentru orice 1 < b < n. prim cu n. Atunci. avem b 2 ≡ a s b (mod n). . Vom presupune c˘ nu exist˘ un astfel de b. pk . prime cu n. prim cu n. s a a n−1 2 = 1 (mod n). care verific˘ ¸ a a sistemul: a ≡ b (mod p1 ) a ≡ 1 (mod p2 . a 2 = ±1 (mod n).2 Fie n num˘r compus impar. pentru orice 1 < b < n. prim cu n. pentru care b a resturilor pentru a obtine un num˘r 1 < a < n. Lem˘ 10.182 Atunci. Astfel. Atunci. . a a a unde pi sunt numere prime distincte. De aici. Num˘rul nua a a merelor mai mici decˆt n. pk ). deci pre¸ a a ın supunerea f˘cut˘ la ˆ a a ınceputul demonstratiei este fals˘. prim cu n.6. pen¸ a a a n−1 tru toate numerele b mai mici decˆt n ¸i prime cu n. reducem la absurd ¸i presupunem c˘ exist˘ un 1 < b < n. Acest rezultat contrazice afirmatia f˘cut˘ ˆ lema 10.2 (Solovay) Fie n num˘r compus impar. n = p1 p2 . prim cu n. a a Pentru aceasta. = −1.

Din lema 10. cum ar fi a a ¸ testarea primalit˘¸ii. prim cu n. . de unde m ≤ . rm resturile modulo n ale numerelor ba1 . at 5 Volker Strassen. n−1 rj Deci.6. . am toate numerele mai mici care b 2 = n dacˆt n. TESTUL SOLOVAY-STRASSEN 183 Demonstratie. r2 . Am obtinut astfel 2m numere mai mici decˆt n ¸i prime ¸ a s φ(n) cu n. .6. . obtinem b 2 ≡ ¸ ¸ n alegerea lui b. ba2 . bam .2 Dac˘ n este num˘r compus ¸i se alege aleator un ¸ a a s num˘r 1 < b < n. ¸ a ın a criptosistemului RSA. . exist˘ un 1 < b < n. n Cum pentru fiecare j. numerele aj verific˘ congruentele ( 10.2. ˆ particular.10. 2m ≤ φ(n). Se verific˘ u¸or c˘ rj sunt distincti ¸i primi cu n. a2 . care. Association for at ın Computing Machinery.24). n n n n−1 b (mod n).24). g˘sind solutii decisive pentru probleme dificile de interes general. a a 2 Testul probabilistic de primalitate Solovay4 -Strassen5 a fost primul test popularizat la aparitia criptografiei cu cheie public˘. rj 2 = (mod n). . .6. pentru munca sa ˆ studiul test˘rii ın a primalit˘¸ii. matematician german. Deci. a as ¸ a 4 Robert Solovay. .24) pentru 1 ≤ j ≤ m. pentru ¸ a n−1 b (mod n). pentru orice 1 ≤ j ≤ m. ceea ce contrazice Din relatia ( 10. . Fie r1 . . Fie a1 . probabilitatea ca n s˘ fie Euler pseudoprim a a 1 cu baza b este mai mic˘ decˆt . profesor la Berkeley. . prime cu n pentru care a aj 2 ≡ n−1 aj n (mod n) (10. pentru a s a ¸ s 1 ≤ j ≤ m. are multe contributii remarcabile ˆ mate¸ ın matic˘. deoarece testul MillerRabin este o alternativ˘ mai eficient˘ ¸i cel putin la fel de corect˘. b 2 ·aj 2 ≡ · j (mod n). Astfel. . 2 Observatie 10. ˆ a ¸ ın timp ce rj nu le verific˘. a primit ˆ anul 2003 premiul Paris Kanellakis al ACM. cele dou˘ multimi formate cu aceste elemente a a ¸ sunt disjuncte. n−1 rj Dac˘ pentru un j ar avea loc congruenta rj 2 ≡ a ¸ (mod n). atunci n n−1 n−1 n−1 baj a b (baj ) 2 ≡ (mod n). . El nu mai este folosit. prim cu n.

6.1 1. d | a 2 (mod n). num˘rul este compus a n iar a se nume¸te martor Euler (pentru faptul c˘ num˘rul este compus) s a a pentru n. atunci returneaz˘ a s a num˘r compus ¸i se opre¸te. aplicat pentru t baze diferite. dac˘ pentru un ¸a a a n−1 a a obtinem (a.2. Calculeaz˘ r = a 2 mod n folosind algoritmul 3.3 Fie n un num˘r compus impar. avem a 2 ≡ n cu n. n−1 1. pentru orice ˆ ıntreg a relativ prim prim n. ˆ caz contrar. returneaz˘ num˘r compus ¸i a a a s se opre¸te. n) = 1 sau a 2 = ¸ (mod n).3. n−1 . Alege aleator un ˆ ıntreg a cu 2 ≤ a ≤ n − 2. ¸i r = n − 1. 2 Algoritm 10. Dac˘ r = s mod n. Returneaz˘ num˘r prim. n) = 1. Astfel. s 2. Testul de fat˘ se bazeaz˘ pe acest criteriu. Dac˘ r = 1.6. n este prim sau Euler pseudoprim cu baza a.1.3. a a Observ˘m c˘. a 1. a s s a 1. In Teorem˘ 10. a OUTPUT: un r˘spuns referitor la primalitatea lui n. teorema 7. atunci. elimin˘m necesitatea de a verifica dac˘ a a a a (a.1. Pentru i de la 1 la t : 1.1 (Test Solovay-Strassen) INPUT: un num˘r n > 2 impar. Calculeaz˘ simbolul Jacobi s = n folosind a algoritmul 7. Astfel. dac˘ r = 1.5. a 1.184 CAPITOLUL 10.1.1.1. TESTE DE PRIMALITATE Criteriul lui Euler. dac˘ d = (a. a a a testˆnd la pasul 1. precizeaz˘ c˘. n) > 1. un parametru de securitate t > 1. s˘ declare num˘rul n a a t 1 ca fiind prim este mai mic˘ decˆt a a .3. Probabilitatea ca tesa a tul Solovay-Strassen. pentru un num˘r a a a n−1 a (mod n).4.

1 Fie n > 2 num˘r natural impar cu n − 1 = 2s t unde ¸ s. . Deci. n trece testul Miller pentru baza b. b 2 t j (10. n trece testul Miller pentru baza b. In ¸ ın a ¸ a atunci n este compus. ˆ cazul ˆ care n este prim. obtinem xk ≡ 1 (mod n) pentru orice k sau exist˘ a ¸ a un j pentru care xj ≡ −1 (mod n). .3. de unde x2 ≡ a 2 ±1 (mod n). Pe caz general.7 Testul Miller-Rabin S˘ presupunem c˘ n verific˘ congruenta ( 10. a Definitie 10. putem vedea dac˘ a ¸ a a n−1 ˆ situatia ˆ care aceast˘ relatie nu se verific˘. 2 b ≡ ±1 (mod n). Spre exemplu. s ¸ k+1 Continuˆnd procedeul. Teorem˘ 10. a a a ¸ n−1 n−1 Putem lua ˆ considerare restul lui b 2 modulo n. TESTUL MILLER-RABIN 185 10. dac˘ este verificat˘ una a a a dintre urm˘toarele conditii: a ¸ bt ≡ 1 (mod n) ∃ 0 ≤ j ≤ s − 1. dac˘ am g˘sit a a x0 ≡ x1 ≡ x2 ≡ . Demonstratie.17) este verificat˘.26) ≡ −1 (mod n). deci 561 este ¸ compus. cum n este prim. Deci.7. dac˘ x = b 2 . k < s.10. dac˘ congruenta ( 10. Pentru fiecare 0 ≤ k ≤ s ¸ consider˘m a n−1 s−k xk = b 2k = b2 t . prim cu n. Spunem c˘ n trece testul Miller a pentru baza b. Astfel. ¸ In ın x ≡ ±1 (mod n). de unde x1 ≡ ±1 (mod n). Dac˘ x1 ≡ 1 (mod n). . un num˘r natural. atunci x2 = x1 ≡ 1 (mod n). x2 = b 1 n−1 2 2 = x0 ≡ 1 (mod n).7. Din teorema 3. prim cu a a s a n.7.25) (10. Atunci. ın a 2 atunci congruenta devine x ≡ 1 (mod n).17) pentru b prim cu n.4. Atunci. t sunt numere naturale cu t impar. atunci x2 ≡ 1 (mod n) ¸i obtinem xk+1 ≡ ±1 (mod n). Fie n − 1 = 2s t cu t impar. a a 561−1 pentru b = 5 obtinem 5 2 = 5280 ≡ 67 (mod 561). dac˘ alegem cel mai mic num˘r Carmichael n = 561.1 Fie n un num˘r prim ¸i b un num˘r natural. ≡ xk ≡ 1 (mod n). x0 = bn−1 ≡ 1 (mod n).

atunci bn−1 = (bt ) ≡ 1 (mod n). a Spre exemplu. Ar˘t˘m c˘ dac˘ n este pseudoprim impar cu baza 2.1. ¸i astfel obtinem o infinitate s ¸ de numere tari pseudoprime cu baza 2.2 Spunem c˘ un num˘r compus n este tare pseudoprim ¸ a a cu baza b unde (b. k Astfel.186 CAPITOLUL 10. Atunci. el este ¸ a pseudoprim cu baza b. 2n−1 − 1 = kn.7. TESTE DE PRIMALITATE Propozitie 10. Presupunem acelea¸i notatii. cu t impar ¸i s natural nenul.5. 2047 este tare pseudoprim cu baza 2. n) = 1 dac˘ el trece testul Miller pentru baza b.3 Dac˘ n este tare pseudoprim cu baza b. Fie n − 1 = 2s · t. Din teorema 10. ın 2 m−1 2 = 2nk = (2n ) = (m + 1)k ≡ 1 (mod m). a a Observ˘m c˘ a a 2 2046 2 = 21023 = (211 )93 ≡ 1 (mod 2047). Deci. Deci. ˆ acest caz. dac˘ consider˘m n = 2047 = 23 · 89. atunci el este a a Euler pseudoprim cu baza b. Teorem˘ 10. m − 1 = 2n − 2 = 2(2n−1 − 1) = 2kn. Demonstratie. ¸ aa a a atunci m = 2n − 1 este tare pseudoprim cu baza 2. ¸ s Fie n = m i=1 pαi . Dac˘ n verific˘ conditia ¸ s ¸ a a ¸ 2s ( 10. Teorem˘ 10. Demonstratie.1 Dac˘ n trece testul Miller pentru baza b. Fie n num˘r compus impar ¸i 2n−1 ≡ 1 (mod n). exist˘ o a infinitate de numere pseudoprime cu baza 2. bn−1 = b2 ¸ j t 2s−j ≡ (−1)2 s−j ≡ 1 (mod n).7. a s cu k impar. t = kn impar. Demonstratie. s = 1.26). n − 1 = 2 · 1023. ˆ cazul ˆ care este verificat˘ In ın a conditia ( 10.25). Definitie 10.7.2 Exist˘ o infinitate de numere tari pseudoprime cu a a baza 2. descompunerea sa canonic˘ ˆ factori primi.7. a ın i . m trece testul Miller pentru baza 2.

Atunci. aplicˆnd criteriul lui Euler. 2 i=1 Deci. 2s−1 t = .10. a m m n = i=1 pαi i = i=1 m j+1 2 j+1 di + 1 αi m ≡ i=1 1 + 2j+1 αi · di ≡1+2 di αi (mod 2j+2 ). exist˘ d ∈ Z . avem ordp b = 2j+1 c. a 2j+1 | ordp b ¸i ordp b | p − 1. cu c num˘r impar. de unde p−1 b ≡ (−1) 2j+1 ≡ (−1)d (mod p). bt ≡ 1 (mod p). Deci. ¸ a j+1 Ridicˆnd la p˘trat. pentru fiecare 1 ≤ i ≤ m. pentru orice divizor prim p al lui n. a a a j Din ordp b 2 t. Atunci. astfel ca a a a divizorii pi s˘ fie de forma pi = 2j+1 di + 1. de unde ordp b | t. ıntˆ a Fie p un divizor prim al lui n. (−1)c ≡ −1 (mod p). ın a j obtinem c˘ b2 t ≡ −1 (mod p). rezult˘ b2 t ≡ 1 (mod p). j Pentru cazul ˆ care exist˘ 0 ≤ j ≤ s − 1 astfel ca b2 t ≡ −1 (mod n).7. Atunci. p αi m b b pentru orice divizor prim p al lui n. n i=1 pi Din bt ≡ 1 (mod n) rezult˘ b a n−1 2 = (bt ) 2s−1 ≡ 1 (mod n). a Cum t este impar. p−1 Cum c este impar. Astfel. de unde ordp b | 2j+1 t. ordp b | φ(p) = p − 1. b 2 ≡ 1 (mod p) ¸i. exist˘ di ∈ Z . s a a astfel ˆ at p = 2j+1 d + 1. = = 1. ıncˆ ordp b Din b 2 ≡ −1 (mod p). TESTUL MILLER-RABIN 187 Presupunem ˆ ai cazul cˆnd bt ≡ 1 (mod n). de unde ordp b | p−1 . p Am ar˘tat c˘. rezult˘ ordp b num˘r impar. 2 p−1 b s a = 1. implic˘ 2j+1 | p − 1. rezult˘ a b p ≡b p−1 2 = b ordp b 2 p−1 ordp b ≡ (−1) 2j+1 c (mod p). a Dar. i=1 m n−1 ≡ 2j di αi (mod 2j+1 ).

m b n−1 2 = b2 j t ≡ (−1)2 s−j−1 = (−1)i=1 di αi (mod n). unde t este ¸ n−1 b impar.7. TESTE DE PRIMALITATE m i=1 2s−j−1 Astfel. deci bt = b 2 ≡ (mod n). am v˘zut c˘ 1105 este Euler a a pseudoprim cu baza 2. rezult˘ bt ≡ ±1 (mod n). a s Propozitie 10. Din n ≡ 3 (mod 4).7. obtinem t · 2s−j−1 ≡ ¸ di αi (mod 2). s ın Observatie 10. Cu toate acestea. ¸i ˆ acest caz. cele dou˘ tipuri de ın a numere coincid.188 CAPITOLUL 10.7. Pe de alt˘ parte.2 Dac˘ n ≡ 3 (mod 4) ¸i n este Euler pseudoprim cu ¸ baza b. n . 2552 ≡ 1 = −1 (mod 1105). Demonstratie. 2276 ≡ 781 (mod 1105). De aici. Propozitie 10. 1105 nu este tare pseudoprim cu baza 2. adic˘ n este tare pseudoprim cu a a n baza b. 1104 = 24 · 69. atunci n este tare pseudoprim cu baza b. Cum n b = ±1. ˆ anumite cazuri particulare.3 Dac˘ n este Euler pseudoprim cu baza b ¸i ¸ a s b = −1. putem scrie n − 1 = 2 · t. De exemplu. Calculˆnd.1 Nu orice num˘r Euler pseudoprim cu baza b este ¸ a tare pseudoprim cu baza b. De aici. n este Euler pseudoprim cu baza b. atunci el este tare pseudoprim cu baza b. 2138 ≡ 259 (mod 1105). Deci. obtinem: a ¸ 269 ≡ 138 = ±1 (mod 1105). n este Euler pseudoprim. a b n m = i=1 b pi αi m = i=1 (−1) di αi m m = (−1) i=1 αi d i = (−1) αi d i i=1 .

Deci. el a ar˘tat c˘ exist˘ 101 numere tari pseudoprime cu a a a bazele 2. pentru 5 ≤ k ≤ 8 ¸i a dat In s margini superioare pentru 9 ≤ k ≤ 11. 5. 3. rezultatele anterioare pera a ın s s mit verificarea primalit˘¸ii tuturor numerelor ≤ 3. 5. el este prim. 1 < b < n. 4 · 1014 . n este tare ipotez˘. TESTUL MILLER-RABIN 189 Demonstratie. 3. dac˘ aplic˘m un test ˆ ¸apte pa¸i. Not˘m cu Ψk cel mai mic num˘r tare pseudoprim cu primele k nua a mere prime alese ca baze. dac˘ aplic˘m testul Miller a a a pentru un num˘r ≤ 2. Altfel. Fie n − 1 = 2s t. unde t este impar ¸i s natural. La fel. ˆ anul 1993. scriem ˆ ai n − 1 = 2s t unde t este impar ¸i alegem la ıntˆ s ˆ amplare o baz˘ b. . Din ¸ s n−1 s−1 b ≡ −1 (mod n). n este prim sau tare a a pseudoprim cu baza b. atunci el este compus. nu exist˘ nici unul. at Testul Miller-Rabin se bazeaz˘ pe notiunea de num˘r tare pseudoa ¸ a prim. Dac˘ ad˘ug˘m ¸i baza 7 sunt 9 iar s a a a a s ˆ cazul ˆ care ¸i 11 este ales drept baz˘. Jaeschke a calculat Ψk . prezentat˘ anterior.7. Dac˘ n nu trece testul Miller penıntˆ a a tru aceast˘ baz˘. ¸i acesta trece a s testul pentru bazele 2. Ψ1 = 2047 Ψ2 = 1373653 Ψ3 = 25326001 Ψ4 = 3215031751 Ψ5 = 2152302898747 Ψ6 = 3474749660383 Ψ7 = 341550071728321 Ψ8 = 341550071728321 Ψ9 ≤ 41234316135705689041 Ψ10 ≤ 1553360566073143205541002401 Ψ11 ≤ 56897193526942024370326972321 De asemenea.3 ¸i 5 mai mici decˆt 1012 . Putem concluziona acum c˘. Astfel. diferit de 3215031751. 7. a Pentru a verifica dac˘ un num˘r impar n este prim sau nu. obtinem b2 t = b 2 ≡ a ¸ n pseudoprim cu baza b. 5 · 1010 . folosind a a acest test. 7 este a a a 3215031751. ın ın s a a Observ˘m c˘ primul num˘r tare pseudoprim cu bazele 2.10.

cu t impar.190 CAPITOLUL 10. folosind teorema chinezeasc˘ a resturilor. Astfel. acesta a a a n−1 trece testul Miller-Rabin pentru cel mult baze b cu 1 ≤ b ≤ n − 1.7. pi − 1) solutii necongruente ale congruentei xn−1 ≡ 1 (mod n). Demonstratia teoremei. ¸ ¸ Consider˘m dou˘ cazuri: a a 1. Dup˘ o eventual˘ ¸ a a . pkm un num˘r compus ¸ a m 1 2 care trece testul Miller pentru baza b. Conform lemei anterioare. Atunci. Fie n − 1 = 2s · t. pentru 1 ≤ i ≤ m.1 Fie p un num˘r prim impar ¸i k. pi − 1) ≤ (pi − 1) ≤  pi  · ≤ · n. pm . . . 9 j 9 i=1 i=1 i=j Deci. 9 1 2 a Observ˘m c˘ pentru n ≥ 9. ın 4 n−1 2. ¸ Astfel. indiferent de conditia din definitia testului ¸ ¸ Miller care se verific˘. obtinem c˘ exist˘ a ¸ a a m i=1 (n − 1. a congruenta xn−1 ≡ 1 (mod pki ) are (n − 1. 4 Pentru a demonstra teorema. a Congruenta xt ≡ 1(mod pk ) are exact (t. cu 1 ≤ j ≤ m. Fie n = pk1 pk2 . ˆ raport cu care n este tare pseudoprim. TESTE DE PRIMALITATE Teorem˘ 10. . exist˘ cel mult a a 9 4 n−1 baze 1 ≤ b ≤ n. Pentru fiecare i.7. fie pi − 1 = 2si · ti . Mai ˆ ai. ¸ a s   m m 2 2 kj ·p (n − 1. avem nevoie de urm˘torul rezultat care a este un caz particular al teoremei 6.1: a s Lem˘ 10. presupunem c˘ exist˘ j. pki −1 (pi − 1)) = (n − 1. Presupunem acun n = p1 p2 . valorile cele mai a k 9 pj j pj pj mari ale expresiei se obtin cˆnd pj = 3 ¸i kj = 2. . t numere naturale. cu toti ti impari. · n ≤ · (n − 1).4 (Rabin) Dac˘ n este nu num˘r impar compus. bn−1 ≡ 1 (mod n). ıntˆ a a pj − 1 1 1 2 Observ˘m c˘ a a = kj −1 − kj ≤ pentru c˘. Atunci. pentru care kj ≥ 2. num˘rul de solutii necongruente modulo n ale congruentei a ¸ ¸ 2 x ≡ 1 (mod n) este ≤ · n.3. pi − 1) ¸ i i solutii necongruente. pk−1 (p − 1)) solutii necongru¸ ¸ ente modulo pk .

3. atunci (2j · t.. a s ın a ¸ Am obtinut urm˘torul rezultat: ¸ a pentru congruenta xt ≡ 1 (mod n) exist˘ T = T1 T2 .. . Tm solutii necon¸ a ¸ gruente ¸i s j pentru x2 ·t ≡ −1 (mod n). 2ms1 − 1 φ(n) ≤ . TESTUL MILLER-RABIN renumerotare. ¸ Dac˘ 0 ≤ j ≤ si − 1.7.. . (10. ¸ ˆ total. .+sm . nu exist˘ solutii. ti ) solutii ¸a ¸ necongruente. Tm ≤ t1 t2 . ın ˆ acest caz. (pm − 1) = t1 t2 . ¸ a (n − 1. . 191 Conform lemei. 2 · Ti Ti Rezult˘ (−1) Ti ≡ −1 (mod pi ) ¸i astfel. . tm · 2s1 +s2 +. 1 ≤ i ≤ m. ti ). stabilim ˆ ce conditii aceste congruente au ın ¸ ¸ solutii. ≤ sm . tm .1. In φ(n) = (p1 − 1)(p2 − 1) . pentru fiecare i.+sm ≤ . pentru 1 ≤ i ≤ m. . . congruenta are 2j · Ti solutii a ¸ ¸ necongruente. Folosind teorema 6.si ) (t. . . cu 0 ≤ j ≤ s1 − 1 exist˘ 2jm · T1 T2 . ˆ acest caz. . . Tm a solutii necongruente. cum T = T1 T2 . . vor exista In   s1 −1 2ms1 − 1 T 1 + 2jm  = T 1 + m 2 −1 j=0 baze b ≤ n − 1 ˆ raport cu care n este tare pseudoprim. p −1 t Dac˘ j ≥ si . fiecare congruent˘ xt ≡ 1 (mod pi ) are Ti = (t..10. pi − 1) = 2min(s. 2m − 1 4 Pentru aceasta. Cu notatiile f˘cute. Consider˘m acum congruentele a ¸ x2 j ·t ≡ −1 (mod pi ). .27) 2 −1 4 2 Ar˘t˘m c˘ T aa a 1+ ti . r˘mˆne de demona a strat c˘ a 2ms1 − 1 1 1 1+ m · s1 +s2 +. vom avea s1 ≤ s2 ≤ . . pi − 1) = 2si · Ti ¸i si a s i = i este impar.

a 3 Dac˘ presupunem p1 < p2 ¸i refacem rationamentul anterior. 3 t t Deci. unde d > 1. atunci p1 − 1 | n − 1. din ( 10. rezult˘ d ≥ 3. a a 3 22s1 − 1 1 1 rezult˘ 1 + a · 2s1 ≤ . a a t Dar. ≤ sm .29) 2 3 6 4 2 Astfel.27) se verific˘ ¸i ˆ acest caz. 3 2 2 Astfel.27).28) rezult˘ ( 10. ( 10. p2 > p1 . 3 6 6 6 4 . indiferent de presupunerea f˘cut˘. obtinem a s ¸ ¸ t2 T2 = t2 . rezult˘ a 2ms1 − 1 2ms1 − 1 1 1 · s1 +s2 +. a a Pentru m = 2. T1 T2 ≤ 1 2 . rezult˘ s a p2 ≡ 1 (mod p1 − 1). TESTE DE PRIMALITATE Din s1 ≤ s2 ≤ . t1 ). a a ın Presupunem p1 > p2 . Deci. obtinem: ¸ 22s1 − 1 t t · 22s1 φ(n) n−1 n−1 T1 T2 1 + ≤ 1 2 = ≤ < .(10. (10.+sm ≤ 1 + m · ms1 = m 2 −1 2 −1 2 2 1 2ms1 − 1 1 1 1 = ms1 + ms1 m = ms1 + m − = 2 2 (2 − 1) 2 2 − 1 2ms1 (2m − 1) 1 2m − 2 1 2m − 2 + ms1 m ≤ m + m m = = m 2 −1 2 (2 − 1) 2 − 1 2 (2 − 1) 1 2 1 1 = m + − m = m−1 . ¸ a 22s1 − 1 3 = 1 2 s1 +s2 1+ · = 1+ 1 1 + 3 3 · 22s1 −1 22s1 − 1 1 · 2s1 s2 −s1 = 3 2 ·2 1 1 1 1 1 · s2 −s1 ≤ · + = . a Astfel. . a s ın R˘mˆne cazul ˆ care s1 = s2 .192 CAPITOLUL 10. de fapt. Dac˘ T1 = t1 . rezult˘ t1 = T1 · d.. T1 ≤ 1 . Pentru c˘ T1 = (t. ceea ce contrazice alegerea noastr˘. obtinem n = p1 p2 . a Din n ≡ 1 (mod p1 − 1) ¸i n = p1 p2 ≡ p2 (mod p1 − 1). t1 . T2 ≤ . Astfel. T1 fiind impari. T1 = t1 . .28) 2 − 1 2m 2 −1 2 1+ Dac˘ m ≥ 3. Cum s1 ≥ 1. Dac˘ s1 < s2 ..

Cu aceea¸i probabilitate. nu este total sigur s˘ ne sprijinim pe un test probabilistic. probabilitatea ca acesta s˘ nu fie compus este mai mic˘ decˆt a a a a 2−50 . nu va fi observat. exist˘ o baz˘ b < B a ıncˆ a a a pentru care n nu trece testul Miller. O astfel de a a . Aceast˘ probabilitate arat˘ c˘ n poate a a a a a a fi folosit sigur ˆ scopuri criptografice. utilizatorul poate muri de inim˘ ˆ timpul rul˘rii progras a ın a mului. De exemplu. a a 4 Astfel.10.5 (Rabin (1980)) Dac˘ n este nu num˘r impar coma a a pus. cred c˘ merit˘ s˘ fie mentionat˘ ¸ a a a a a ¸ a ˆ acest cadru: ın Un fenomen a c˘rui probabilitate de a nu se ˆ ampla este de 10−50 . de obicei. a ´ O afirmatie f˘cut˘ de Emile Borel.5. s Din p˘cate. cel putin. a a chiar dac˘ acesta este rapid ¸i probabilitatea ca el s˘ e¸ueze este foarte a s a s mic˘. dac˘ n trece testul pentru bazele mentionate ¸i este a ¸ s diferit de acesta. am declara. se testeaz˘ ˆ ın a ın general 6 valori diferite pentru baz˘ pentru a garanta aceast˘ probabilia a tate. Oricum. ¸ (Les Probabilit´e et la vie) e Dac˘ am presupune c˘ exist˘ un num˘r destul de mic B (depinde de a a a a m˘rimea lui n) astfel ˆ at. Acest lucru subliniaz˘. pentru a verifica ˆ mod sigur dac˘ num˘rul ın a a este prim. Astfel.3. TESTUL MILLER-RABIN 193 Teorem˘ 10. ar trebui s˘ aplic˘m testul pentru primele B baze. am spune cu sigurant˘ c˘ num˘rul ¸a a a n este compus.7.7.7. a ınc˘ a ˆ practic˘. Dac˘ consider˘m un num˘r impar de 1024 cifre binare ¸i s-ar folosi a a a s 44 de valori diferite ale bazei b. probabilitatea ca acesta s˘ treac˘ testul Miller-Rabin pentru k baze a a 1 b cu 1 ≤ b ≤ n − 1 este mai mic˘ decˆt k . c˘ num˘rul este prim. 5 · 1010 este a a 3215031751. avantajul folosirii testului. singurul a num˘r tare pseudoprim cu bazele 2. cu o probabilitate mai mic˘ a decˆt 2−80 . el este prim. dac˘ n este compus. nu avem de ales un num˘r mare de baze b pentru a fi In a a aproape siguri c˘ n este prim. spre deosebire de 90 de iteratii necesare testului Solovay-Strassen ¸ pentru a asigura aceea¸i probalilitate. a ıntˆ nu se va produce de loc sau. mai mic decˆt 2. cum am stabilit deja. ˆ a o dat˘. Astfel. viru¸ilor. dac˘ alegem 25 de iteratii pentru testul Miller aplicat unui a ¸ num˘r. calculatorul poate da erori datorate hardwares ului.

bazat pe In ¸ a GRH. ˆ iunie 2004. Alege aleator un ˆ ıntreg b cu 2 ≤ b ≤ n − 2. ea spune c˘ numerele prime sunt distribuite a a a cˆt de regulat posibil.2. ¸i anume: s Teorem˘ 10. returneaz˘ num˘r compus a a a ¸i se opre¸te. fiecare. 7 Pentru a s˘rb˘tori matematicienii acestui mileniu.1 (Miller-Rabin) INPUT: un num˘r n > 2 impar. atunci n nu trece testul Miller pentru o baz˘ b < 2 lg2 n.3. j ← 1. G˘sirea unei demonstratii este r˘spl˘tit˘ cu cˆte a a a ¸ a a a a un milion de dolari.7.2. a nominalizat ¸apte probleme importante care nu au s putut fi demonstrate pˆn˘ acum.3. s s 3. dar care nu este conditionat de nici o afirmatie nedemonstrat˘. a Modificarea f˘cut˘ de Rabin a transformat testul ˆ a a ıntr-un test probabilistic. atunci b2j r ≡ 1 (mod n). Dac˘ y = 1.2.1. sub o form˘ echivalent˘. 2. Cˆt timp j ≤ s − 1 ¸i y = n − 1 execut˘: a s a 2. a s ıncˆ 2. y ← y 2 mod n. Massachusetts.3.6 (Miller) Dac˘ GRH este adev˘rat˘ ¸i n este num˘r a a a as a compus impar. Dac˘ y = 1 ¸i y = n − 1. 2.2.3. Pentru i de la 1 la r: 2.7.2.1. atunci: a s 2. atunci returneaz˘ a a num˘r compus ¸i se opre¸te. Cum In a j−1 acesta este cazul cˆnd b2 r = ±1 (mod n). ınc˘ .3.6 ¸ a a a o problem˘ de un milion de dolari a Institutului de Matematic˘ Clay. Dac˘ y = n − 1. 7 a a ˆ forma sa initial˘.3. un parametru de securitate r > 1. testul Miller era un test deterministic.3. Calculeaz˘ y = bt mod n folosind algoritmul 3. Louis DeBranges de Bourcia a afirmat c˘ In a a demonstrat GRH. dac˘ y = 1.3. ¸inˆnd cont de aparitia lor. ce pare aleatoare ˆ ¸irul numerelor a t a ¸ ın s naturale.1. De fapt. fapt care ˆ a nu este confirmat. TESTE DE PRIMALITATE afirmatie exist˘. Determin˘ s ¸i t astfel ˆ at n − 1 = 2s t cu t impar.. Returneaz˘ num˘r prim. a OUTPUT: un r˘spuns referitor la primalitatea lui n.1.194 CAPITOLUL 10.3. dar se bazeaz˘ pe Ipoteza generalizat˘ Rieman (GRH). a a ˆ a 5-a linie a pasului 2. a 2.1. a 1. a 6 Ipoteza Riemann este o conjectur˘ care a fost enuntat˘ prima dat˘ ˆ 1859 de a ¸ a a ın Bernhard Riemann ˆ lucrarea sa On the Number of Primes Less Than a Given Magın nitude De fapt.3. 2. n este compus. Institutul de Matematic˘ Clay a a a din Cambridge. j ← j + 1 2. a s s 2.2. ¸ ¸ a Algoritm 10.

P2 sunt rationale (au coordos a a ¸ natele rationale). se poate studia [12]. fiind mai dificil de implementat ¸i s s necesitˆnd mai multe calcule.. dac˘ dou˘ puncte P1 . atunci P1 + P2 = P2 . Teoria curbelor eliptice. aceea de a determina a ordinul grupului U (Zn ) ¸i de a vedea dac˘ acesta este n − 1. de exemplu P1 = O. va fi prezentat˘ doar ideea de baz˘ a acestui algoritm. a a O curb˘ eliptic˘ este o multime de puncte (x. putem renunta la testul a ın a ¸ Solovay-Strassen ˆ favoarea lui Miller-Rabin.3. studiat˘ ˆ teoria nunerelor cˆt ¸i ˆ geomea ın a s ın tria algebric˘. n este un divizor propriu al lui n. folosim tangenta ˆ P1 la curb˘. Dac˘ punctele nu sunt ¸ a a a distincte. Goldwasser ¸i Kilian au propus un algoritm bazat pe ın s curbele eliptice. Pentru mai a a ın ¸ a¸ multe informatii legate de aceast˘ teorie. Din acest motiv. spre deosebire de testul Millers Rabin. atunci b este un martor al faptului c˘ n este compus. Cohen ¸i Lenstra au ˆ s ımbun˘t˘¸it acest test care a at lucreaz˘ cu numere de 100 cifre ˆ cˆteva secunde. Adleman. nu se va reg˘si ˆ continutul acestei c˘rti.8 Primalitate folosind curbele eliptice ˆ anii 70 s-a ˆ In ıncercat ˆ ımbun˘t˘¸irea testele n + 1 ¸i n − 1. ˆ con¸ a In tinuare. ˆ ultima linie a pasului In 2. ¸ Astfel. Acesta este considerat ca fiind ˆ ın ınceputul erei moderne a testelor de primalitate. a a Testul Solovay-Strassen folose¸te. Astfel. b) : y 2 = x3 + ax + b unde 4a3 + 27b2 = 0 ¸i un singur punct O. ¸inˆnd cont ¸i de faptul a t a s c˘ probabilitatea ˆ acest caz este mai mic˘. ın 10. ˆ 1986. s numit punctul de la infinit. dreapta determinat˘ de acestea intersecteaz˘ curba tot ¸ a a ˆ ıntr-un punct rational pe care ˆ vom nota −(P1 + P2 ) (Semnul negativ ¸ ıl este necesar pentru ca operatia s˘ fie asociativ˘). PRIMALITATE FOLOSIND CURBELE ELIPTICE 195 j−1 b2 r − 1. dac˘ y = n−1. a at s Pomerance ¸i Rumely au fost cei care au introdus testul de primalitate s APR.10. .8. a ın a Pornind de la ideea de baz˘ a testului Fermat. ¸i calculul unui simbol Jacobi. y) care verific˘ ecuatia a a ¸ a ¸ E(a. Dac˘ unul dintre puncte este ın a a O. Punctele rationale de pe o astfel de curb˘ ¸ a formeaz˘ un grup ˆ care adunarea este definit˘ prin metoda tangentei a ın a ¸i a coardei. pasul s a urm˘tor f˘cut ˆ vederea obtinerii de noi teste de primalitate a fost de a a ın ¸ a modifica grupul initial. ˆ 1979.

¸ ˆ aceast˘ form˘ este dificil s˘ folosim algoritmul. p | Cp . m) ˆ ınseamn˘ c˘ a − b este suma dintre un multiplu a a de n ¸i un multiplu de m. Agrawal. p − 1}. S-a ˆ ınlocuit astfel un grup de ordin n−1 sau n+1 cu √ √ un altul al c˘rui ordin se afl˘ ˆ intervalul p + 1 − 2 p. . p + 1 + 2 p a a ın (teorema Hasse). f˘r˘ demonstratie pˆn˘ acum. . (x − a) ≡ (x − a ) (mod n) dup˘ care nu mai avem decˆt s˘ a a a aplic˘m mica teorem˘ a lui Fermat pentru a obtine congruenta final˘. p) = 1. relativ prim cu p. s Congruenta trebuie s˘ se verifice dac˘ p este prim. ˆ final. acest grup este finit generat. el are un divizor prim a a q.196 CAPITOLUL 10. p este prim dac˘ ¸i numai dac˘ (x − a)p ≡ (xp − a) (mod p). . ap−q ) = 1. ceea ce este fals.1 Fie p > 1 ¸i a un ˆ a s ıntreg. obtinem c˘ xq are ˆ membrul stˆng In ¸ a ın a al congruentei coeficientul nenul. p) unde a ≡ b (mod n. . Deci. Dac˘ p este prim. Urm˘tor pas f˘cut a fost acela ¸ a a a a de a g˘si o conditie mai simpl˘ ¸i anume: a ¸ as (x − a)p ≡ (xp − a) (mod xk − 1. a Ideea pentru AKS rezult˘ dintr-o alt˘ versiune simpl˘ a micii teoreme a a a a lui Fermat: Teorem˘ 10. (q k . Fie k astfel ˆ at q k este cea mai mare putere a lui q care divide p. atunci p este prim a s ¸ a a . se reduce acest grup modulo un num˘r a prim p ¸i obtinem un grup al c˘rui ordin va fi folosit aproape la fel ca ˆ s ¸ a ın teorema Poklington. pentru k ∈ {1. precizeaz˘ urm˘toarele: ¸ aa ¸ a a a a dac˘ k > 1 nu divide p ¸i congruenta este adev˘rat˘. as a k Demonstratie. a a s fals. rezult˘ q | a ¸i astfel (a.9. care nu se bazeaz˘ pe nici o presupunere nedemona strat˘. Kayal ¸i Saxena au g˘sit un algoritm determiIn s a nistic. Atunci. ¸ a a O afirmatie. fiind prea multi In a a a ¸ coeficienti pe care trebuie s˘-i verific˘m. Dac˘ (q k . q k Cp . Pentru a aplica algoritmul. relativ simplu. TESTE DE PRIMALITATE Conform unei teoreme datorate lui Mordell. a a ¸ ¸ a Reciproc. ıncˆ q Atunci.9 Algoritmul AKS ˆ anul 2002. ¸ a p p p Atunci. 10. ap−q ) = 1. dac˘ presupunem c˘ p este compus.

r) = 1. ALGORITMUL AKS 197 sau p2 ≡ 1 (mod k). M5 . a 3. Folosind testul Pepin. s s 2. execut˘: a a Fie q cel mai mare factor al lui r − 1. s .9. stabiliti care dintre numerele ¸ Mersenne M3 . Dac˘ (x − a)n = (xn − a) (mod xr − 1. returneaz˘ num˘r compus ¸i a a a s se opre¸te. s 3. Folosind testul Lucas-Lehmer. Pentru a de la 1 la 2 r lg n execut˘: a 4. a s atunci salt la 4. 3. ar˘tati c˘ 3 este r˘d˘cin˘ primitiv˘ a ¸ a a a a a pentru orice num˘r prim Fermat. Odat˘ rezolvat˘ aceast˘ problem˘. execut˘: a a 3. a a Exercitii propuse ¸ 1. Dac˘ n este de forma ab cu b > 1.2. se va putea da a a a a o versiune mai eficient˘ acestui test. r ← r + 1 √ 4. a 1. Dac˘ (n. Explicati de ce nu trebuie verificat cu ajutorul testului Fermat ¸ dac˘ un num˘r Fermat sau un num˘r Mersenne este prim.9. ar˘tati c˘ urm˘toarele numere Fermat sunt a ¸ a a prime: F1 = 5. a OUTPUT: un r˘spuns referitor la primalitatea lui n.10.3. F4 = 65537. M11 . Cˆt timp r < n. r ← 2 3. M13 sunt prime. Dac˘ r ≥ 2 este prim. n).1 (AKS) INPUT: un num˘r n > 2. 2. a atunci returneaz˘ num˘r compus ¸i se opre¸te. Cu ajutorul testului Pepin.1. returneaz˘ num˘r compus a a a ¸i se opre¸te.1. 4. a a s s 5. a Algoritm 10. Ar˘tati c˘ 91 este pseudoprim cu baza 3 iar 45 este pseudoprim a ¸ a cu bazele 17 ¸i 19. F3 = 257. r−1 √ Dac˘ q > 4 r lg n ¸i n q = 1 (mod r). a a a 5. Returneaz˘ num˘r prim.

Ar˘tati c˘ n este pseudoprim cu baza b dac˘ ¸i a ¸ a as numai dac˘ bd ≡ 1 (mod n). 14. Determinati cel mai mic pseudoprim cu baza 5. 2465 = 5 · 17 · 29 sunt numere Carmichael. Ar˘tati c˘ n este Euler s a ¸ a pseudoprim cu bazele b1 b2 . ¸ 9.198 CAPITOLUL 10. 5. 1729 = 7 · 13 · 19. fie n = . a ¸ a a 13. 16. Folosind acest rezultat. Fie m num˘r natural astfel ˆ at 6m + 1. 12m + 1. Ar˘tati c˘ dac˘ g˘sim b astfel ˆ at n este pseudoprim dar nu a ¸ a a a ıncˆ tare pseudoprim cu baza b. Ar˘tati c˘: a ¸ a i) 561 este tare pseudoprim cu baza 101. s iii) 1387 este pseudoprim cu baza 2 dar nu este tare pseudoprim cu baza 2. Fie n ≡ 5 (mod 8) un num˘r Euler pseudoprim cu baza 2. respectiv 21 este pseudoprim. ¸ . Explicati ¸ cum se poate proteja criptosistemul RSA. q numere prime impare. Fie d = (p − 1. ii) 65 este tare pseudoprim cu bazele 8 ¸i 18. a 7. 12. prin alegerea lui n. 18m + 1 sunt a ıncˆ toate numere prime. Fie n = pq cu p. Ar˘tati c˘ n = (6m + 1)(12m + 1)(18m + 1) este a ¸ a num˘r Carmichael. a ¸ 8. ar˘tati c˘ nu a ¸ a exist˘ un num˘r pseudoprim cu baza 2. Fie n un num˘r impar compus ¸i (b. a 15. a 11. a 10. n) = 1. Ar˘tati c˘ 561 este cel mai mic num˘r Carmichael. sau 7 care s˘ fie de forma a a a n = 3p cu p num˘r prim > 3. Dac˘ p este un divizor a s a n prim al lui n. Ar˘tati a a ¸ c˘ n este tare pseudoprim cu baza 2. Fie n Euler pseudoprim cu bazele b1 ¸i b2 . Ar˘tati c˘ urm˘toarele numere a ¸ a a 1105 = 5 · 13 · 17. G˘siti toate bazele b pentru care 15. TESTE DE PRIMALITATE 6. atunci putem factoriza rapid n. q − 1). de aceast˘ a situatie. Ar˘tati c˘ n este pseudoprim cu baza b dac˘ a ¸ a a p n −1 ¸i numai dac˘ b s a ≡ 1 (mod p).

care sunt eficienti ˆ factorizarea nu¸ ın merelor cu divizori mici. Astfel de algoritmi sunt: metoda Pollard rho. Ele sunt cele mai importante ˆ domeniul sisa ın temelor criptografice ¸i al securit˘¸ii acestora. filtrul p˘tratic polinomial a multiplu (MPQS). Factorizarea a a a presupune determinarea tuturor divizorilor primi ai unui num˘r ˆ a ıntreg compus. cel mai des folosit al¸ goritm de factorizare la acest moment. cˆt ¸i pentru informaticieni. metoda curbelor eliptice. a c˘ror eficient˘ depinde de num˘rul a ¸a a care se factorizeaz˘. metoda Pollard p-1. Dintre ele putem s at mentiona filtrul corpului numerelor (NFS). atˆt pentru matematicieni. Algoritmii a a s de factorizare pot fi ˆ artiti ˆ dou˘ categorii: ımp˘ ¸ ¸ ın a 1) algoritmi cu scop special. Problema factoriz˘rii a devenit mai u¸oar˘ ˆ ultimii 15 ani datorit˘ a s a ın a faptului c˘ num˘rul computerelor. 2) algoritmi cu scop general. el se nume¸te num˘r cu form˘ special˘.CAPITOLUL 11 Problema factoriz˘rii a Problema factoriz˘rii este cea mai cunoscut˘ problem˘ dificil˘ . Dac˘ un num˘r are ın a a o form˘ u¸oar˘ de reprezentare. Problema factoriz˘rii reprezint˘ un domeniu de cercetare foarte a a activ. Un num˘r general este un num˘r care nu are o form˘ particular˘ ce ar a a a a putea conduce u¸or la determinarea divizorilor s˘i. Am a a a a v˘zut c˘ ea este ideea ce st˘ la baza criptosistemului RSA. numerele Fermat sunt astfel de numere. Astfel de numere sunt s a folosite la crearea modulului ˆ criptosistemul RSA. puterea de procesare ¸i performantele a a s ¸ 199 . a s a s a a a De exemplu.

y astfel ˆ at n = x2 − y 2 . multe cazuri pot fi eliminate. este a a ın cea mai simpl˘ metod˘ de determinare a divizorilor primi ai unui num˘r a a a ¸i mai poate fi ˆ alnit˘ sub denumirea de trial division. 11.1 Fie n un num˘r natural impar. metoda este recomandat˘ ˆ cazul ˆ care n are doi factori a ın ın de m˘rime similar˘. Pentru un num˘r natural n. Atunci. a = x + y. s˘ presupunem a a a ¸ a a a n c˘ m = este compus. y sunt numere s a naturale. ˆ 10. s ıntˆ a La informatiile furnizate anterior. 11. Atunci n = (x − y)(x + y) ¸i se obtine o prim˘ ıncˆ s ¸ a descompunere a lui n.2. Test˘m dac˘ x2 − n este p˘trat a a 1 perfect. pornind cu x1 = [ n] + 1. b ≥ p. u¸or de demonstrat: a a ¸ s Propozitie 11. La baza acestui ın rezultat st˘ urm˘toarea propozitie. Cum exist˘ doar 22 de combinatii pentru ultimele dou˘ cifre ale a ¸ a unui num˘r p˘trat perfect.1 Factorizare prin c˘utare direct˘ a a Metoda de c˘utare a divizorilor prin ˆ a ıncerc˘ri. c˘ut˘m p˘trate perfecte de ¸ a In a a a a forma x2 − n. prezentat˘ ˆ 10.2 Metoda Fermat De obicei. ¸ s Deci. ˆ care un factor este foarte mic. mai facem doar o scurt˘ ¸ ın a observatie care poate simplifica testul: ¸ √ n Dac˘ cel mai mic factor prim p al lui n este > 3 n. y va fi un num˘r mic iar a s √ a x putin mai mare decˆt n. cu a ¸i b de valori apropiate. a a p Astfel. PROBLEMA FACTORIZARII acestora au crescut foarte mult ¸i au fost g˘siti algoritmi superiori de s a ¸ factorizare. ˆ √acest caz. y= . 2 2 Dac˘ n = ab. a a . m = a · b. Corespondenta este dat˘ de relatiile: ¸ a ¸ x= a+b a−b . Putem presupune c˘ a. ¸i anume n = pm = pab ≥ p3 > n. Exist˘ o corespon¸ a a dent˘ bijectiv˘ ˆ ¸a a ıntre descompunerile lui n de forma n = ab cu a ≥ b > 0 ¸i reprezent˘rile lui n de forma n = x2 − y 2 unde x.2. Pentru a ar˘ta c˘ aceast˘ afirmatie este adev˘rat˘. m este prim. se caut˘ ˆ a a a a ıntregi x. atunci este num˘r a a p prim. b = x − y. ajungem la o contradictie.200 ˘ CAPITOLUL 11.2.

= 69.nu este p˘trat perfect. = 71. a 682 − n = 195 . METODA FERMAT 201 Dac˘ x2 − n nu este p˘trat perfect.1 (Fermat generalizat˘) a INPUT: un num˘r n. = 70. N ← [ kn]. Presupunem x2 − kn = y 2 . = 73. a ¸ s Aceast˘ factorizare poate fi ineficient˘ dac˘ cei doi factori a ¸i b nu a a a s n+1 √ au valori apropiate: este posibil s˘ fie necesare a a − n verific˘ri 2 pentru a testa dac˘ numerele generate sunt p˘trate perfecte. b cu n = ab. ¸ Procesul se opre¸te pentru c˘ descompunerea trivial˘ n = n · 1 conduce s a a 2 2 n+1 n−1 la n = − . a 692 − n = 332 .nu este p˘trat perfect. Atunci. relu˘m procesul a pentru factorii g˘siti. se alege k num˘r ¸ a ın a √ √ mic ¸i x va lua succesiv valorile s kn + 1.2. 68987) = 463. = 72. a 702 − n = 471 .nu este p˘trat perfect.nu este p˘trat perfect. √ 1. . i ← 1. alegem x2 = x1 + 1 ¸i refacem a 1 a s rationamentul.11. .este p˘trat perfect. alegem k = 3. . La noi. a 732 − n = 900 . 2 2 Spre exemplu. Apoi. s˘ aplic˘m metoda pentru n = 4429. (x + y.nu este p˘trat perfect. 4429 = (73 − 30)(73 + 30) = 43 · 103. a a ˆ aceast˘ situatie se poate folosi o metod˘ Fermat generalizat˘ care In a ¸ a a actioneaz˘ mai bine ˆ astfel de cazuri. ca s˘ factoriz˘m u¸or n = 68987 folosind metoda Fermat a a s generalizat˘. a s OUTPUT: doi factori a. factor de apropiere.nu este p˘trat perfect. pornim cu x1 = 67. Ne vom opri cˆnd x2 − kn este p˘trat perfect. a a √ Din 66 < 4429 < 67. . a Deci. 672 − n = 60 . a a Algoritm 11. adic˘ 3n = 4552 − 82 . a √ Atunci 454 < 3n < 455. Pentru aceasta. a 712 − n = 612 . rezult˘ 68987 = 463 · 149. a 722 − n = 755 . Obtinem: ¸ x1 x2 x3 x4 x5 x6 x7 = 67. din a a (x + y)(x − y) = kn. kn + 2.2. De exemplu. a Calculˆnd (455 + 8. ace¸tia sunt primi. n) este un divizor propriu al lui n. t ← 0. . = 68. impar compus ¸i k. Chiar la prima iteratie obtinem: ¸ ¸ 4552 − 3 · 68987 = 64.

s s ¸ a sau (a − c)(a + c) = (d − b)(d + b). ˆ Inlocuind. atunci returneaz˘ a = (x + y. k este par ¸i a − c = kl. a . = 4 4 = 11. y ← (N + i) 2. Dac˘ t = 1.202 ˘ CAPITOLUL 11. 2. mult mai rapid decˆt metoda ˆ artirilor. b + d) este num˘r a par. obtinem l(a + c) = m(b + d). d − b = km. El poart˘ numele de metoda rho. este datorat lui J.3. Tinˆnd cont de toate aceste rezultate. M. obtinem: ¸ a ¸ 2 2 k r 1 2 + l 2 + m2 = k + r 2 l 2 + m2 = 2 2 4 1 (km)2 + (kl)2 + (mr)2 + (lr)2 = 4 1 = (d − b)2 + (a − c)2 + (a + c)2 + (b + d)2 = 4 1 1 2a2 + 2b2 + 2c2 + 2d2 = (2n + 2n) = n. t ← 1. 3. sau metoda Monte Carlo. Astfel. a 2. a a a ın a n = a2 + b2 = c2 + d2 unde a ¸i c sunt pare iar b ¸i d impare.2. m | a + c. Atunci. Deci. ¸ Fie a + c = mr. efectueaz˘: a s a 2 − kn. de exemplu. Not˘m k = (a − c. s 4. b = n/a ¸i se a a s opre¸te. Obtinem c˘ a2 − c2 = d2 − b2 . b + d = lr unde r = (a + c. Cˆt timp i ≤ N ¸i t = 0. a Acest test este un test cu scop special folosit pentru a g˘si factori primi a mici pentru un num˘r compus. a ımp˘ ¸ Pollard. d − b). atunci x ← N + i. Dac˘ y = [y].3 Metoda Euler Metoda Euler de factorizare se poate aplica pentru numere n impare care se pot scrie ca sum˘ de dou˘ p˘trate ˆ dou˘ feluri diferite. m) = 1. Cel mai simplu ın test. a s cu (l.4 Metoda Pollard-rho Presupunem c˘ un num˘r mare n este compus. n).1. a s 11. nu a trecut a a un test de primalitate prezentat ˆ capitolul anterior. De aici. i ← i + 1. PROBLEMA FACTORIZARII 2. Returneaz˘ mesaj de e¸ec.

dar sunt congruenti modulo un divizor al lui n. Fie S o multime finit˘ ¸i f : S → S o functie oarecare. METODA POLLARD-RHO 203 Algoritmul Pollard-rho prezint˘ dou˘ aspecte care trebuie subliniate. . . a Compar˘m diferiti xi pentru a obtine doi care sunt resturi diferite a ¸ ¸ modulo n. Numele algoritmului provine din forma pe a care o are ¸irul de numere. f este de obicei o functie polinomial˘. . pentru toti r ≥ p. Iterˆnd xk+1 ≡ x2 + a (mod n) (sau orice alt˘ formul˘ polinomial˘). fiecare x (mod n) corespunde a perechii (x (mod α). ın ¸ ¸ Cel mai mic p pentru care xp se repet˘ se nume¸te pre-perioada M. ˆ acest caz. x3 = 26. Cantitatea mare de stocare a numerelor xi necesar˘ a obtinerii unei coliziuni. / Fie n = αβ unde α. (xi − xj . S = Z n ). Din xk+1 ≡ x2 + a (mod α) ¸i xk+1 ≡ x2 + a (mod β). obtinem xr+q = xr . Cum S este finit˘. de f s ¸i S. xM se numesc coada ¸i punctele xM +r cu r ≥ 0 s s poart˘ numele de ciclul lui ρ. 91) = 7. ¸ Din teorema chinezeasc˘ a resturilor. x1 = 2. Definim xk+1 = f (xk ) pentru k ≥ 0. a a Primul const˘ ˆ ideea de a itera o formul˘ pˆn˘ se cade ˆ a ın a a a ıntr-un ciclu. x (mod β)) . Se obtine rapid. rezult˘ c˘ ¸irul s a as k k modulo α intr˘ ˆ a ıntr-un ciclu de lungime mai mic˘. cˆt ¸i lungimea a s ciclului sunt proportionale cu n. s Consider˘m c˘ multimea S are n elemente (se poate alege. Ele depind de alegerea lui x0 . β sunt divizori relativi primi necunoscuti ai lui ¸ n. de exemplu ¸ a f (x) = x2 + a unde a ∈ {0.11. n) este egal cu un divizor propriu al lui n. Aplicˆnd ˆ mod a a a ın repetat pe f ˆ ambii membri. Timpul pˆn˘ cˆnd xi vor intra ˆ a a a √ ıntr-un ciclu. a In a Atunci. Fie x0 ∈ S ¸ as ¸ punctul de plecare. a fost eliminat˘ de Pollard care a folosit algorit¸ a mul lui Floyd de g˘sire a unui ciclu. a a a a k pentru orice valoare initial˘ x0 . . pentru factorizarea lui n = 91 alegem f (x) = x2 + 1 ¸i s x0 = 1. a Al doilea aspect const˘ ˆ detectarea faptului c˘ ¸irul de numere a ın a s devine periodic. x2 = 5. folosind s a ¸ . se obtine un ¸ir de numere care va intra ¸ a ¸ s ˆ ıntr-un ciclu. Cel a s mai mic q se nume¸te perioada T. De exemplu. Astfel. Nu mai continu˘m pentru c˘ a a am g˘sit un divizor propriu (26 − 5. −2}. Fie xi ¸i ¸ s xj dou˘ astfel de elemente. Punctele x0 . exist˘ o pereche (p. Atunci. a a ¸ Functia f trebuie s˘ fie aleas˘ astfel ˆ at valorile ei s˘ poat˘ fi u¸or ¸ a a ıncˆ a a s calculate. spunem c˘ avem o coliziune.4. q) pentru care xp+q = xp . ˆ aceast˘ metod˘ se porne¸te cu a In a a s y0 = x0 ¸i se calculeaz˘ yk+1 = f (f (yk )) .

n) = 1. n) = 1. execut˘: a 2. n) = 1. pentru n = 455459 ¸i x0 = 2 obtinem: s ¸ x1 x2 x3 x4 x5 x6 x7 x8 x9 = 5. = 179685. (y8 − x8 . putem pierde mult timp. y9 ≡ 68343 (mod 455459). . Atunci. n) = 1.204 ˘ CAPITOLUL 11. a 2. Dac˘ 1 < d < n. y2 ≡ 2871 (mod 455459). Dac˘ M ¸i T sunt de m˘rime comparabil˘. n) = 743. = 26.4. (y2 − x2 . b ← 2. 2. (y1 − x1 . y8 ≡ 247944 (mod 455459). y6 ≡ 43670 (mod 455459). dac˘ k este multiplu de T. a a ¸ a De exemplu. (y7 − x7 . a b ← b2 + 1 mod n. Mai ˆ ai s˘ presupunem c˘ M ¸i T au m cifre binare. la fiecare pas este necesar s˘ aplic˘m a ın a ¸ a a de trei ori functia. = 44380. Deoarece T ≤ 2m − 1. (y5 − x5 . = 2871. ¸ Pentru c˘ ˆ aceast˘ situatie. Calculeaz˘ d = (a − b. 2. atunci returneaz˘ mesaj de e¸ec a a s ( trebuie aleas˘ o alt˘ functie polinomial˘). Pentru i = 1.3. n) = 1. n) = 1. Calculeaz˘ a ← a2 + 1 mod n.4. (y6 − x6 . Dac˘ d = n. . b ← b2 + 1 mod n. ar ıntˆ a a s trebui s˘ g˘sim o repetitie pentru k = 2m − 1. = 44567. = 677. a Algoritm 11. 1. y4 ≡ 155260 (mod 455459).2. = 121634. yk = x2k . a a s s 2. PROBLEMA FACTORIZARII inductia matematic˘. a OUTPUT: un divizor propriu al lui n. y5 ≡ 416250 (mod 455459). 743 este un divizor netrivial al lui 455459. 2.1 (Pollard-rho) INPUT: un num˘r n > 2 compus. = 155260. (y3 − x3 . ¸ a a obtinem yk = xk . a a ¸ . y3 ≡ 179685 (mod 455459). ultima parte a ¸ algoritmului a fost modificat˘ de c˘tre Brent care a ˆ a a ınlocuit algoritmul lui Floyd cu un altul. Verificˆnd la fiecare pas dac˘ se obtine identitatea ¸ a a ¸ vom g˘si un multiplu de T. n) = 1.1. . (y9 − x9 . y7 ≡ 164403 (mod 455459). Obtinem 455459 = 743 · 613. care nu este putere a unui a num˘r prim. a a s a a atunci vom g˘si chiar un multiplu mic al lui T. y1 = f (f (x1 )) ≡ 26 (mod 455459). (y4 − x4 . De aceea. Pune a ← 2. n). n) = 1. atunci returneaz˘ d ¸i se opre¸te. Astfel. Deci.

execut˘: a a 3. Dac˘ p este un factor prim al lui n astfel ˆ at p−1 are toti factorii primi a ıncˆ ¸ ≤ B. care nu este putere a unui a num˘r prim. Este posibil ca d = n. n). un a. Alege o margine B. M este aproape a a a a dublat. a a obtinem p | d. din mica teorem˘ a lui Fermat. ¸ ın s a Oricum. se aplic˘ f o singur˘ dat˘. 1.5. Pentru fiecare num˘r prim q ≤ B. Dac˘ q l ≤ n. fiind folosit˘ pentru faca a a a torizarea numerelor n care au un factor prim p cu proprietatea c˘ p − 1 a este produs de factori primi mai mici dacˆt un num˘r relativ mic B. aceast˘ situatie este putin probabil s˘ apar˘ dac˘ n are doi a ¸ ¸ a a a factori primi mari distincti. deci facem aproape un num˘r dublu de test˘ri fat˘ de cazul a a ¸a initial Pollard. pentru orice a (a. ¸ Algoritm 11.5. m = q≤B a q [ ln q ] unde produsul se face dup˘ toate numerele prime ln n q ≤ B. Astfel. a a Ideea este urm˘toarea: a Fie m cel mai mic multiplu comun al tuturor puterilor de numere prime ln n ≤ B care sunt ≤ n. a a s s 3. n). De aici. 2.11. a . returneaz˘ d ¸i se opre¸te. a l 3. Alege.5 Metoda Pollard p-1 Aceast˘ metod˘ este o metod˘ cu scop special. Astfel vom stoca a ym = x2m −1 ¸i ˆ vom compara cu xk pentru 2m ≤ k ≤ 2m+1 − 2.2. Este evident c˘ alegerea ˆ ¸ a ıntre cele dou˘ versiuni se va a face ¸inˆnd cont de care dintre urm˘toarele dou˘ procese este mai mare t a a a consumatoare de timp: calcularea functiei sau compararea. p) = 1 avem am ≡ 1 (mod p). METODA POLLARD P-1 205 k + T = 2m + T − 1 este mai mic decˆt 2m+1 − 2. ¸ 11.1. atunci p−1 | m.1 (Pollard p-1) INPUT: un num˘r n > 2 compus. caz ˆ care algoritmul e¸ueaz˘. dac˘ not˘m d = (am − 1. aleator. deci l ≤ a s . s a Dac˘ d ≥ 2. La s ıl fiecare pas. atunci l ln q ≤ ln n ¸i. ln q Astfel. 2 ≤ a ≤ n − 1 ¸i calculeaz˘ d = (a. Calculeaz˘ l = [ln n/ ln q]. Pe de alt˘ parte. a OUTPUT: un divizor propriu al lui n. Calculeaz˘ a ← aq mod n.

altfel. a a s returneaz˘ d. al c˘rui a ın a a p ordin este p − 1 (p este prim) este ˆ ınlocuit cu grupul unei curbe eliptice aleatoare peste Z p . a ≡ 2293244 (mod 19048567). trebuie ales un alt grup. = 11. returneaz˘ mesaj de e¸ec. a De exemplu. 3606 = 3607 − 1 = 2 · 3 · 601. In Se obtine 19048567 = 5281 · 3607. = 17. l = 15. Dac˘ ordinul grupului ales are toti factorii primi a ¸ mai mici decˆt un num˘r initial considerat. acest algoritm este folosit pentru a determina factori In a primi cu mai putin de 40 cifre zecimale pentru numere mari compuse. l = 10. n). Trebuie remarcat c˘: a 5280 = 5281 − 1 = 25 · 3 · 5 · 11.6 Factorizare folosind curbele eliptice Ca ¸i ˆ cazul testului de primalitate ce utilizeaz˘ teoria curbelor eliptice. a 11. In ˆ practic˘. 19048567) = 5281. a ≡ 13271154 (mod 19048567). = 3. Deci.206 ˘ CAPITOLUL 11. Calculeaz˘ d = (a − 1. Algorits a mul generalizeaz˘ algoritmul Pollard p−1 ˆ sensul c˘ grupul Z ∗ . = 5. a ≡ 554506 (mod 19048567). a 5. a ≡ 16937223 (mod 19048567). el este considerat un algoritm cu scop special. l = 5. a ≡ 13555889 (mod 19048567). l = 24. PROBLEMA FACTORIZARII 4. ¸ Astfel. l = 8. l = 6. Dac˘ d = 1 sau d = n. B = 19. l = 6. 5280 are factorii primi mai mici decˆt 19. atunci algoritmul furnizeaz˘ a a ¸ a un divizor propriu al lui n. = 13. . s ın a ¸i aici vom prezenta doar ideea ce st˘ la baza acestui algoritm. (554506 − 1. a ≡ 15214586 (mod 19048567). a ≡ 11406961 (mod 19048567). ˆ caz contrar. l = 5. pentru n = 19048567. care este chiar descompunerea ˆ ¸ ın factori primi a lui n. a ≡ 9685355 (mod 19048567). a = 3 obtinem: ¸ q q q q q q q q = 2. ˆ acest caz. = 7. = 19. ˆ timp ce cel˘lalt num˘r a ın a a nu are aceast˘ proprietate.

s Consider˘m n natural ¸i B o baz˘ factor format˘ din k numere. 532 ≡ 108 ≡ 22 · 33 (mod 2701). relativ la a num˘rul n. s Fie ej = (ej1 . 0. In ıi acela¸i vector. p2 . 2 2 Definitie 11. . ek ) unde ei ∈ {0. dac˘ αi este par ¸i ei = 1. pentru n = 2701 ¸i B = {−1.7. obtinem c˘ ¸ a 522 ¸i 532 sunt B−numere. ¸i a un num˘r ˆ s a ıntreg. . . ˆ exemplul nostru.7 Metoda bazei factor Ideea ce se afl˘ la baza acestei metode de factorizare este de fapt comun˘ a a tuturor metodelor de factorizare cu p˘trate aleatoare. . ıncˆ s atunci am aflat de fapt un divizor netrivial al lui n. eventual. . .11. anume (x + y. a a atunci produsul tuturor aj este un produs de puteri pare ale numerelor . mai putin.7. ın a a j Dac˘ suma vectorilor este vectorul nul (suma se calculeaz˘ modulo 2). n). Astfel. 2. pentru 1 ≤ j ≤ s. . dac˘ cel mai mic rest ˆ valoare absolut˘ al lui b2 (mod n) a a ın a se poate scrie ca un produs de numere din B. e2 . De exemplu. p1 care poate fi −1. s a s pentru αi impar. . METODA BAZEI FACTOR 207 11. ej2 . ¸i anume: a s Dac˘ g˘sim ˆ a a ıntregi x. 3} : s Din 522 ≡ 3 (mod 2701). n) sau (x − y. . vom spune c˘ a0 este a cel mai mic rest ˆ valoare absolut˘ al lui a dac˘ a ≡ a0 (mod n) ¸i ın a a s n n − ≤ a0 ≤ . a s a a Fiec˘rui B−num˘r b2 ˆ vom pune ˆ corespondent˘ un vector a a ıi ın ¸a e = (e1 . y astfel ˆ at x2 ≡ y 2 (mod n) ¸i x = ±y (mod n). Aceasta se obtine ¸inˆnd cont c˘ n x ± y ¸i n | (x − y)(x + y). 1) iar lui 532 . lui 522 ˆ corespunde vectorul (0.1 O baz˘ factor este o multime B = {p1 . . 1}. ejk ) vectorul corespunz˘tor lui aj . ei = 0. . pk } de ¸ a ¸ numere prime distincte. pentru fiecare i. ¸ t a a s Pentru un modul n. cel mai mic a rest ˆ valoare absolut˘ al B− num˘rului b2 (mod n). . ¸ Spunem c˘ p˘tratul unui num˘r ˆ a a a ıntreg b este B− num˘r. dup˘ cum urmeaz˘: a a Scriem cel mai mic rest ˆ valoare absolut˘ b2 (mod n) sub forma ın a k i=1 pαi i ¸i definim ei ≡ αi (mod 2).

de exemplu. 0. pentru multiplii mici a ¸ hn. Atunci. eventual ¸i −1. ın ın j S˘ rezum˘m acum modul de factorizare a unui num˘r mare n prin a a a alegerea aleatoare a numerelor bj . baza factor ¸i numerele bj se aleg prin diverse metode. de exemplu. y) care ne a a a a 2 furnizeaz˘ un divizor propriu al lui n. Numerele bj se aleg aleator a pˆn˘ se g˘sesc cˆteva ale c˘ror p˘trate sunt B−numere. a ˆ exemplul considerat. ¸ Cum n este compus. B este format˘ din -1 ¸i din toate numerele prime ≤ c. 1) = (0. a s . putem alege c un num˘r cu 5 sau 6 ın a a cifre zecimale. Am g˘sit astfel x. In a s O alegere este de a porni cu B format˘ din primele k sau k − 1 numere a prime. 1) + (0. s ˘ CAPITOLUL 11. unul ca produs de bj . Dac˘ x ≡ ±y (mod n). B va fi format˘ din numerele prime mici. 2701) = 73 ¸i rezult˘ 2701 = 73 · 37. cel˘lalt ca a a a produs de pi . PROBLEMA FACTORIZARII k aj = j=1 i=1 pi j=1. 0.208 prime din B. Atunci.s αji 2 . Se alege un num˘r c de m˘rime intermediar˘. dac˘ n a a a a are 50 de cifre ˆ scrierea zecimal˘. 0).s (mod n) ale c˘ror p˘trate sunt congruente modulo n.s αji k = i=1 pi 1 2 j=1. Va trebui continuat pˆn˘ cˆnd g˘sim o pereche (x. Calcul˘m (55 + 18. Obtinem: In ¸ 52 · 532 ≡ 3 · 108 ≡ (2 · 32 )2 (mod 2701). x ≡ 52 · 53 ≡ 55 (mod 2701). a s a 2 ˆ practic˘. a a a a a a O alt˘ cale de lucru const˘ ˆ a ˆ a a ın ıncepe cu alegerea unor bj pentru ın care cel mai mic rest ˆ valoare absolut˘ b2 (mod n) este mic (ˆ valoare ın a j √ absolut˘). care a s apar ˆ descompunerea ˆ factori primi a mai multor b2 (mod n). j=1 i=1 pi 2 αji j=1. 0. Trebuie s˘ observ˘m faptul a a a a c˘ fiecare num˘r este construit altfel. Astfel. y cele mai mici resturi ˆ valoare absolut˘ pentru a ın a numerele 1 s k bj (mod n). dup˘ cum alegem p1 = −1 sau nu. probabilitatea s˘ ˆ alnim o astfel de situatie a ıntˆ ¸ 1 este de . (0. y ≡ 18 (mod 2701). alegem bj apropiati de hn. trebuie s˘ relu˘m rationamentul pentru alt˘ a a a ¸ a multime de B− numere pentru care suma vectorilor este vectorul nul.

11.8. METODA FRACTIILOR CONTINUE ¸

209

deci va avea π(c) + 1 elemente. Se caut˘ aleator mai multe numere bj ¸i a s se calculeaz˘ cel mai mic rest ˆ valoare absolut˘ pentru b2 (mod n). Se a ın a j verific˘ dac˘ acesta se poate scrie ca produs de primi din B. C˘utarea se a a a opre¸te cˆnd am g˘sit suficiente B− numere b2 (mod n) (π(c) + 2 sunt s a a j de ajuns). Pentru fiecare dintre ele se scrie vectorul corespunz˘tor ¸i se a s formeaz˘ o submultime de numere bj care au proprietatea c˘ suma vectoa ¸ a β rilor este zero. Apoi se calculeaz˘ x = bj (mod n), y = pj j (mod n) a
j j

care ¸tim c˘ verific˘ x2 ≡ y 2 (mod n). Dac˘ x = ±y (mod n), am g˘sit s a a a a un divizor propriu al lui n, calculˆnd (x + y, n). a

11.8

Metoda fractiilor continue ¸

Am v˘zut c˘ metoda bazei factor se aplic˘ cel mai bine dac˘ exist˘ a a a a a o metod˘ avantajoas˘ de a g˘si ˆ a a a ıntregi b astfel ˆ at cel mai mic rest ıncˆ ˆ valoare absolut˘ al lui b2 (mod n) s˘ fie produs de numere prime ın a a mici. Aceast˘ situatie apare ˆ mod sigur dac˘ valoarea absolut˘ a lui a ¸ ın a a b2 (mod n) este mic˘. Prezent˘m ˆ cele ce urmeaz˘ o metod˘ de a g˘si a a ın √ a a a ˆ ıntregi b pentru care | b2 √ (mod n) |< 2 n. Pentru aceasta, este necesar s˘ reprezent˘m num˘rul n sub forma unei fractii continue. a a a ¸ Propozitie 11.8.1 Fie α > 1 un num˘r real a c˘rui fractie continu˘ ¸ a a ¸ a pk are convergentele . Atunci, pentru orice k ≥ 0, qk
2 p2 − α2 qk < 2α. k

Demonstratie. Stim c˘ ¸ ¸ a

pk p < α < k+1 ¸i, din corolarul 2.1.2, s qk qk+1

p pk 1 − k+1 = . De aici, qk qk+1 qk qk+1
2 2 p2 − α2 qk = qk α − k

pk qk

α+

1 pk 2 < qk qk qk qk+1

α+ α+

1 qk qk+1

.

Astfel,
2 p2 − α2 qk − 2α < 2α −1 + k

< 2α −1 +

qk 1 + qk+1 qk+1

1 qk + 2 qk+1 2αqk+1 q < 2α −1 + k+1 qk+1

< = 0.

210

˘ CAPITOLUL 11. PROBLEMA FACTORIZARII Aceast˘ propozitie conduce la urm˘torul rezultat: a ¸ a

Propozitie 11.8.2 Fie n num˘r natural, care nu este p˘trat perfect. ¸ a a √ pk Fie convergentele fractiei continue simple a lui n. Atunci, pentru ¸ qk orice k ≥ 0, cel √ mic rest ˆ valoare absolut˘ al lui p2 (mod n) este mai ın a k mai mic decˆt 2 n. a √ Demonstratie. Folosim rezultatul demonstrat anterior pentru α = n. ¸ √ 2 Astfel, p2 ≡ p2 − nqk (mod n), de unde p2 (mod n) < 2 n. k k k Acest rezultat st˘ la baza algoritmului fractiilor continue. Astfel, se a ¸ precizeaz˘ c˘, alegˆnd num˘r˘torii pk ai convergentelor fractiei continue a a a aa ¸ √ a lui n, se poate obtine un ¸ir de numere ale c˘ror p˘trate au resturi ¸ s a a mici. Pe lˆng˘ faptul c˘ ne intereseaz˘ doar num˘r˘torii acestor fractii, a a a a aa ¸ se opereaz˘ doar cu resturi modulo n, deci, nu vom lucra cu numere a foarte mari. Vom preciza acum modul de realizare a algoritmul de factorizare folosind fractiile continue utilizˆnd o baz˘ factor. De aceast˘ dat˘, nu ¸ a a a a mai alegem aleator elementele bj . Astfel, ˆ ıncepem prin a initializa: ¸ √ √ b−1 = 1, b0 = [ n] = a0 , x0 = n − a0 . Calcul˘m b2 (mod n). a 0 Pentru j = 1, 2, . . . execut˘m: a 1 1 ¸i apoi xj = s − aj . xj−1 xj−1 2. bj ≡ aj bj−1 + bj−2 (mod n). 3. Calcul˘m b2 (mod n). a j 1. aj = Dup˘ ce realiz˘m aceste calcule pentru mai multe valori ale lui j, a a vedem care numere de la punctul 3. se scriu ca ± produse de numere mici prime. Alegem ˆ functie de acestea baza B care va fi format˘ din ın ¸ a −1 ¸i din numerele prime mici ce apar ˆ scrierea mai multor b2 (mod n). s ın j Apoi, proced˘m ca ˆ cazul metodei bazei factor. a ın De exemplu, pentru n = 9509, b0 = 97, x0 = 0, 514101, b2 ≡ −100 (mod 9509). 0 Obtinem: ¸ 1 1 a1 = = 1, b1 = 1 · 97 + 1 = 98, x1 = − a1 = 0, 945143, x0 x0

11.8. METODA FRACTIILOR CONTINUE ¸

211

b2 = 9604 ≡ 95 (mod 9509); 1 1 1 a2 = = 1, b2 = 1 · 98 + 97 = 195, x2 = − a2 = 0, 0580409, x1 x1 b2 = 38025 ≡ −11 (mod 9509); 2 1 1 a3 = = 17, b3 = 17 · 195 + 98 = 3413, x3 = − a3 = 0, 229229, x2 x2 b2 = 11648569 ≡ 44 (mod 9509). 3 Observ˘m c˘ −100 = −1 · 22 · 52 , 95 = 5 · 19, −11 = −1 · 11, 44 = 22 · 11. a a Alegem B = {−1, 2, 5, 11} ¸i numerele b0 , b2 , b3 . Vectorii corespunz˘tori s a sunt (1, 0, 0), (1, 0, 1), (0, 0, 1) a c˘ror sum˘ vedem c˘ este vectorul nul. a a a Atunci, x = 97 · 195 · 3413 = 64556895 ≡ 294 (mod 9509) ¸i y = 22 · 5 · 11 = 220. s Calcul˘m (294 + 220, 9509) = 257 ¸i (294 − 220, 9509) = 37. a s ˆ final, prezent˘m o variant˘ a metodei de factorizare cu ajutorul In a a fractiilor continue ˆ care nu folosim o baz˘ factor. ¸ ın a Pentru aceasta, s˘ facem mai ˆ ai urm˘toarea observatie: ˆ cazul a ıntˆ a ¸ ın metodei Fermat se c˘utau numere naturale x, y cu proprietatea c˘ a a n = x2 − y 2 ¸i x − y = 1. s Factorizarea lui n este posibil˘ ¸i ˆ cazul ˆ care impunem ni¸te a s ın ın s conditii mai slabe asupra numerelor x, y ¸i anume: ¸ s n = x2 − y 2 , 0 < y < x < n, x + y = n.

Din aceste relatii obtinem n x ± y ¸i n | (x − y)(x + y). Atunci, (x − y, n) ¸ ¸ s ¸i (x + y, n) sunt divizori netriviali ai lui n. s Pentru a determina solutiile congruentei se poate folosi reprezentarea ¸ ¸ √ lui n sub form˘ de fractie continu˘. a ¸ a Propozitie 11.8.3 Fie n num˘r natural, care nu este p˘trat perfect. ¸ a a Definim: √ √ Pk + n α0 = n, αk = , ak = [αk ] , Pk+1 = ak Qk − Pk , Qk 2 n − Pk+1 Qk+1 = , pentru k ≥ 0. Qk √ p Fie k k−convergenta fractiei continue simple a lui n. Atunci, ¸ qk
2 p2 − nqk = (−1)k−1 Qk+1 . k

212

˘ CAPITOLUL 11. PROBLEMA FACTORIZARII

√ Demonstratie. Fie n = α0 = [a0 ; a1 , a2 , . . . , αk ] . √ ¸ √ α p + pk−1 P + n Astfel, n = k+1 k . Cum αk+1 = k+1 , rezult˘ a αk+1 qk + qk−1 Qk+1 √ √ Pk+1 + n pk + Qk+1 pk−1 √ n= . Pk+1 + n qk + Qk+1 qk−1 Obtinem astfel, ¸ √ √ nqk + (Pk+1 qk + Qk+1 qk−1 ) n = (Pk+1 pk + Qk+1 pk−1 ) + pk n. De aici, nqk pk = Pk+1 pk + Qk+1 pk−1 = Pk+1 qk + Qk+1 qk−1 (11.1) (11.2)

ˆ Inmultim prima relatie cu qk , a doua cu pk ¸i sc˘dem. Dac˘ ¸inem cont ¸ ¸ s a at ¸i de propozitia 2.1.1, rezult˘: s ¸ a
2 p2 − nqk = (pk qk−1 − pk−1 qk ) Qk+1 = (−1)k−1 Qk+1 . k

Cu ajutorul acestei propozitii s˘ vedem cum functioneaz˘ algoritmul, ¸ a ¸ a f˘r˘ a mai alege o baz˘ factor. aa a Conform propozitiei, p2 ≡ (−1)k−1 Qk+1 (mod n), pentru fiecare k. ¸ k Presupunem k impar ¸i Qk+1 ≡ s2 (mod n), un p˘trat perfect. Atunci s a p2 ≡ s2 (mod n). Astfel, vom c˘uta p˘trate perfecte s2 ˆ ¸irul Qj pentru a a ın s k indici j pari. Atunci, pentru fiecare pj−1 vedem dac˘ (pj−1 + s, n) este a divizor propriu al lui n. α0 P1 α1 P2 α2 De exemplu, pentru n = 9509, obtinem: ¸ √ √ = 9509, P0 = 0, Q0 = 1, a0 = 9509 = 97; 2 9509 − 97 = 97 · 1 − 0 = 97, Q1 = = 100, 1 √ 9509 + 97 = , a1 = [α1 ] = 1; 100 9509 − 32 = 100 · 1 − 97 = 3, Q2 = = 95, 100 √ 9509 + 3 = , a2 = [α2 ] = 1; 95

METODA FILTRULUI PATRATIC P3 = 95 · 1 − 3 = 92. 67 9509 − 532 = 67 · 2 − 81 = 53. Q3 = √ α3 = P4 α4 P5 α5 P6 α6 9509 − 922 = 11. 67 √ 9509 + 53 . a a a Filtrul p˘tratic este o variant˘ a metodei bazei factor. = 4 · 3413 + 195 = 13847. a5 = [α5 ] = 2. Atunci. 9509) = 37. = 2 · 13847 + 3413 = 31107 ≡ 2580 (mod n). ¸ s Deci. = 100 Calcul˘m acum p5 . 9509) = 257 ¸i (2580 + 10. a4 = [α4 ] = 4. a fost mult timp mai performant˘ decˆt alte metode de factorizare de a a tip general. 44 9509 − 812 = 67. = 44 · 4 − 95 = 81. Q5 = 44 √ 9509 + 81 = . realizat˘ de Pomerance. 11. Q4 = = 44. p1 = a0 a1 + 1 = 98 = 1 · 98 + 97 = 195. 11 9509 − 952 = 17 · 11 − 92 = 95. Prin calcul. obtinem (2580 − 10. a3 = [α3 ] = 17. 9509 = 257 · 37. 95 213 9509 + 92 .˘ 11. a p0 p2 p3 p4 p5 = a0 = 97. a6 = [α6 ] = 1. Q6 = = 100. 11 √ 9509 + 95 = . Ea este folosit˘ pentru a factoriza numere mari n care nu a √ au factori primi de m˘rime mult mai mic˘ decˆt n. a a a vom alege ˆ acest caz toate numerele prime p ≤ P (P este un num˘r ın a .9.9 Metoda filtrului p˘tratic a Metoda filtrului p˘tratic. la ˆ a a ınceputul anilor 80. = 17 · 195 + 98 = 3413. Ca baz˘ B. 25802 ≡ 102 (mod 9509).

Mai departe. ˆ mod automat. 5. 1. A este ales mai mare decˆt P. 4. b1 ≡ a2 − 24961 ≡ 3 (mod 24961). verific˘m mai ˆ ai dac˘ a ıntˆ a = 1. 1. Ea va fi aceea¸i multime ca cea folosit˘ a a s ¸ a ˆ metoda Fermat. p este eliminat din baz˘. p Dac˘ relatia nu se √ a ¸ verific˘. . a √ a √ 3. . 0. a a Ideea principal˘ a acestei metode const˘ ˆ a a ıntr-o filtrare asem˘n˘toare a a ciurului lui Eratostene pentru elementele bazei alese initial. De exemplu. a1 = 158. ambele de m˘rime apropiat˘ cu e ln n ln ln n . [ n] + A. 19}.214 ˘ CAPITOLUL 11. Deci. factoriz˘m n = 24961 folosind a a a cea mai simpl˘ variant˘ de filtru p˘tratic. Vom nota cu S multimea de s ın a ın ¸ B− numere pe care le c˘ut˘m. p = 2 p va fi ¸i el inclus ˆ baz˘. Alegem din coloana de la punctul 3. [ n] ± 1. b0 ≡ a2 − 24961 ≡ −312 (mod 24961). Pentru fiecare prim p ≤ P. se procedeaz˘ ca ˆ metoda bazei factor. a √ 1. v0 = (1. . PROBLEMA FACTORIZARII n = 1 pentru p impar. ele se elimin˘ din baz˘. vom alege pentru ¸ √a √ √ t valorile [ n] . doar numerele t2 − n care sunt B− numere. . Alegem marginile P ¸i A. 2. 3. dar nu mai mare decˆt o putere In a a mic˘ a lui P. o limit˘ potrivit aleas˘. Pentru simplificarea aplicatiei. 17. s a a ˆ general. . trebuie s˘ determin˘m cel putin 7 B− numere a a a ¸ din care s˘ putem alege pe cele pentru care aplic˘m metoda bazei factor. realiz˘m o coloan˘ de a a numere t2 − n. n nu este rest p p˘tratic. a a a ¸ Baza avˆnd 6 elemente. 0 −312 = −1 · 23 · 3 · 13. 0). 5. . [ n] + 2. ¸ Fie n un num˘r compus impar. 23}. ¸i anume: ın s √ √ S = {t2 − n | n ≤t≤ n + A} limit˘ ales ˆ a ıntr-un fel optim) pentru care cu A. n Calculˆnd a . 11. . 1. [ n] ± 2. 1 . pentru numerele prime p ∈ {7. a ın Pentru a exemplifica aceast˘ metod˘. Pentru t = [ n] + 1. P < A < P 2 . a a Obtinem: ¸ a0 = 157. 13. a n 2. Obtinem B = {−1. a a a Consider˘m P = 23. .

Observ˘m v0 + v1 + v4 = (0. 0. 215 ˆ aceast˘ situatie. a4 = 155. 0). a6 = 151. 0. 0. 1. v2 = (1. 1. 6 −2160 = −1 · 24 · 33 · 5. b6 ≡ a2 − 24961 ≡ −2160 (mod 24961). 0). 2 −625 = −1 · 54 . 0. 0. 1. 1. 0. 0. De asemenea. v3 = (0. 1. y ≡ −1 · 23 · 32 · 13 ≡ 24025 (mod 24961). rezult˘: a x ≡ 23405 (mod 24961). 0. 0. 1. 1. 0). 24962) = 109. b3 ≡ a2 − 24961 ≡ 320 (mod 24961). 0. 0. 0. ¸i calcul˘m: s a (23405 − 13922. alte variante folosesc mai multe polinoame ˆ ın ın selectarea B− numerelor (noi am folosit doar f = X 2 − n). 0). 5 960 = 26 · 3 · 5. fiind aplicabil proces˘rii paralele. 0). 24961) = (9483. 1. a3 = 159. b5 ≡ a2 − 24961 ≡ 960 (mod 24961). y ≡ −1 · 25 · 32 · 53 ≡ 13922 (mod 24961). b4 ≡ a2 − 24961 ≡ −936 (mod 24961). 4 −936 = −1 · 23 · 32 · 13. 0. Atunci. cu ajutorul c˘ruia a a a factorizat num˘rul RSA-130. a2 = 156. 0. a 11. O situatie mai complex˘ de tratare a acestei metode poate fi ˆ alnit˘ ¸ a ıntˆ a ˆ [12]. a . 0. 3 320 = 26 · 5. Acum 23405 = ±13922 (mod 24961). 0. 0). deci trebuie s˘ c˘ut˘m alt˘ In a ¸ a a a a combinatie. 0. ¸ Din v2 + v5 + v6 = (0.11. pentru a asigura o mai mare ¸ans˘ de factorizare ¸i un interval de filtrare mai s a s scurt. v6 = (1. 0). v4 = (1. 0). 0. FILTRUL CORPULUI DE NUMERE v1 = (0. 0. a x ≡ 157 · 158 · 155 ≡ 936 (mod 24961).10 Filtrul corpului de numere Problema factoriz˘rii nu a cunoscut ˆ a ımbun˘t˘¸iri majore pˆn˘ ˆ anul a at a a ın 1990 cˆnd Pollard a realizat un algoritm foarte rapid. a5 = 161. 0. b2 ≡ a2 − 24961 ≡ −625 (mod 24961). 0. x ≡ −y (mod 24961). v5 = (0. 0. 0.10. 0.

s a i) f (x) = x2 − 1. Exercitii propuse ¸ 1. iii) f (x) = x2 − 1. fiind considerat cel mai complicat algoritm a cunoscut. el detine locul ˆ ai ˆ ierarhia algoritmilor de factorizare cu a ¸ ıntˆ ın scop general. s S-a dovedit c˘ acest algoritm este mult mai rapid decˆt filtrul p˘tratic a a a ˆ factorizarea numerelor de aproximativ 115 cifre zecimale. Astfel. n = 91. Aplicati metoda rho pentru a obtine o descompunere ˆ factori ¸ ¸ ın primi pentru urm˘toarele situatii. algoritmul folose¸te a a a s teoria algebric˘ a numerelor. ¸ a 2. se folosesc dou˘ baze factor. x0 = 1. din inelul de ˆ a ıntregi al unui corp de numere algebrice potrivit ales. folosind numerele 68. algoritmul este asem˘n˘tor cu cele anterioare. a . n = 8051. el In ¸ a a c˘utˆnd ˆ a a ıntregi x. Factorizati numerele 1046603 ¸i 998771 folosind metoda filtrului ¸ s p˘tratic. y astfel ˆ at x2 ≡ y 2 (mod n) ¸i x = ±y (mod n). x0 = 5. comparati xk numai a ¸ a ¸ cu xj unde j = 2h − 1 ¸i k este un num˘r cu (h + 1) cifre binare. ıncˆ s Pentru a realiza acest lucru. ii) f (x) = x2 + 1. ¸ 6. Factorizati n = 4633. Factorizati numerele 13561. 3.216 ˘ CAPITOLUL 11. 14429. n = 7031. PROBLEMA FACTORIZARII ˆ unele privinte. una este fora mat˘ din toate numere prime mai mici decˆt o anumit˘ limit˘ ¸i cealalt˘ a a a as a baz˘ este format˘ din toate idealele prime de norm˘ mai mic˘ decˆt o a a a a a valoare considerat˘. avˆnd la baz˘ tehnica filtrului p˘tratic. 12403. 152. De fiecare dat˘. Factorizati numerele: 8633. 4. a a 5. 809009 folosind metoda Fer¸ mat. 153 ˆ ¸ ımpreun˘ cu a o baz˘ factor B potrivit aleas˘. La ora ın actual˘. 8777. Pentru 68987 aplicati metoda Fermat generalizat˘. x0 = 2. 197209 prin metoda ¸ fractiilor continue. 200819. O versiune special˘ a algoritmului este folosit˘ pentru a factoriza a a numere de forma n = re − s pentru valori mici ale lui r ¸i |s| (vezi [14]). Ar˘tati c˘ num˘rul 23360947609 nu poate fi folosit ˆ a ¸ a a ıntr-un criptosistem RSA.

GDLP. definim logg b a logaritmul discret al lui b ˆ baza g ca fiind unicul num˘r 1 ≤ x ≤ n − 1 ın a care verific˘ b = g x . DLP. ˆ acest caz. spunem c˘ am a ın a p enuntat problema generalizat˘ a logaritmului discret. ¸ Problema logaritmului discret. De exemplu. o alt˘ problem˘ considea a a rat˘ ˆ prezent ca fiind dificil˘ . Pentru b ∈ G. Deoarece a a a a 34 = 81 ≡ 13 (mod 17). este formulat˘ astfel: a Dac˘ consider˘m un num˘r prim p. s˘ se determine a a a a s a p 1 ≤ x ≤ p − 1 pentru care b ≡ g x (mod p). . a Un caz particular a fost deja studiat ˆ capitolul 6. iar logaritmul discret a fost numit index a a a aritmetic. atunci G = {1. un generator al grupuın In lui este r˘d˘cina primitiv˘ r. de ordin n. . ¸ a 217 . . Dac˘ ˆ locul lui Z ∗ alegem un grup ciclic oarecare. .CAPITOLUL 12 Problema logaritmului discret Dup˘ cum am v˘zut ˆ capitolul 9. obtinem log3 13 = 4. U (Z 17 ) este un grup ciclic de ordin 16. a ın a Dac˘ consider˘m un grup ciclic G. ¸i anume situatia ın s ¸ ˆ care grupul U (Z n ) este ciclic. cu g un generator a a al s˘u. g n−1 }. g 2 . 3 este un generator sau. Cum ord17 3 = 16. r˘d˘cin˘ primitiv˘ modulo 17. g. securitatea multor criptosisteme se a a ın bazeaz˘ pe problema logaritmului discret. g un generator al grupului Z ∗ a a a p (r˘d˘cin˘ primitiv˘ modulo p) ¸i un element b ∈ Z ∗ .

iar b ∈ G obtinem: ¸ ¸ b = g1 logg1 b = g2 logg2 b = g1 logg1 g2 logg2 b . a a strˆns legate de algoritmii filtrului p˘tratic ¸i cel al filtrul corpua a s lui numerelor. unde b ∈ G. Exist˘ dou˘ metode clasice. cu g un generator oarecare al grupului. metode de calculare a indexului. logg1 b ≡ logg2 b · logg1 g2 (mod n). Grupul ciclic G va fi grupul multiplicativ al unui corp finit cu p elemente. Astfel. numit˘ ¸i algoritmul babya a as step giant-step. ace¸ti algoritmi sunt ˆ artiti ˆ dou˘ clase: s ımp˘ ¸ ¸ ın a 1. s 12. cu a c 0 ≤ c. aplicate ˆ cazuri generale. a Vom prezenta ˆ continuare cei mai cunoscuti algoritmi de rezolvare ın ¸ a DLP. Dac˘ consider˘m g1 ¸i g2 a a a s doi generatori diferiti ai grupului G. Aceast˘ observatie a a ¸ arat˘ c˘ dificultatea problemei logaritmului discret nu depinde de genea a ratorul ales. b = g x = g cm g d . Atunci. care sunt asem˘n˘toare cu cele a a mai rapide metode de factorizare. ciclic de ordin n. Dac˘ b = g x ∈ G. PROBLEMA LOGARITMULUI DISCRET Trebuie s˘ subliniem un fapt important. fiind ın necesar s˘ se verifice anumite propriet˘¸i matematice. Generatorul acestui grup va fi notat cu g ¸i vom avea de calculat logg b. Cea mai a ın performant˘ dintre acestea este metoda Pollard-rho. De cele mai a multe ori. d ≤ m − 1. Ele sunt eficiente numai ˆ anumite grupuri.218 CAPITOLUL 12. a at 2. . de unde bg −d = (g m ) . Pornind de la aceast˘ observatie. metode de g˘sire de coliziuni. algoritmii de calcul a logaritmilor discreti au o perioad˘ ¸ a mult mai scurt˘ de cercetare. deci un grup de ordin p − 1. Spre deosebire de algoritmii de factorizare care au fost studiati timp ¸ de sute de ani. atunci putem scrie x = cm + d. De aici rezult˘ c˘ un algoritm a a care calculeaz˘ logaritmi relativ la baza g1 poate calcula logaritmi ˆ a ın orice baz˘ g. anume ˆ a ıncepˆnd cu anul 1970. Shanks a propus o metod˘ de a ¸ a c˘utare succesiv˘ pentru a determina logg b.1 Algoritmul Shanks √ Fie m = p − 1 .

a a a 3. . a a s s 4. Algoritm 12. b cu semnificatiile anterioare. Pentru c = 0. m ← [ p − 1] 2. . Vrem s˘ aplic˘m a In a a algoritmul pentru a determina log2 30. p. 213 ia valorile ˆ ınscrise ˆ tabel: ın c 0 1 2 3 4 5 213c 1 47 37 110 102 88 6 7 8 9 10 11 154 179 87 107 142 158 c 2 13c 12 5 Din 2180 ≡ 1 (mod 181). ALGORITMUL SHANKS Se creeaz˘ dou˘ liste : a a Giant step 1 gm g 2m . . . c Pentru 0 ≤ c ≤ 12. care s se ordoneaz˘ dup˘ a doua component˘. m − 1. Atunci. s s ¸ logg b = cm + d. de ordin 180. dac˘ alegem grupul ciclic G = Z ∗ . bg −(m−1) 219 ¸i vedem pentru ce valori ale lui c ¸i d obtinem g cm = bg −d .3. m = 13. . ¸ OUTPUT: logg b. a s 4. ˆ acest caz. . a a a a a . execut˘: a 4. Verific˘ dac˘ a este a doua component˘ a a a a unui element din tabel. g (m−1)m Baby step b bg −1 bg −2 .12.1 (Shanks) INPUT: g.1. g mc ). . Pune a ← ag −1 . . Dac˘ a = g mc . . returneaz˘ x = cm + d ¸i se opre¸te.1. Calculeaz˘ g −1 ¸i pune a ← b.2. Pentru d = 0. . a Calcul˘m b2−d . . construie¸te un tabel cu (c. 4. m − 1. Spre exemplu. rezult˘ 2−1 ≡ 2179 ≡ 91 (mod 181). pˆn˘ g˘sim o valoare egal˘ cu un 213c anterior calculat. . √ 1.1. a 181 un generator al s˘u este g = 2.

i ≡ αi (mod p) de ordin q. vom compara b q cu toate elementele rq. αq ≡ 1 (mod p). Acest algoritm este utilizabil dac˘ ordinul grupului ciclic are factori primi a mici. pentru fiecare a a 1 ≤ i ≤ m. vom calcula apoi x (mod p − 1). pentru 0 ≤ i ≤ q − 1. . p−1 Deci. . + ak−1 q k−1 (mod q k ).220 CAPITOLUL 12. Lucrˆnd ˆ ipoteza c˘ divizorii primi ai lui p − 1 a ın a sunt mici. Presupunem c˘ p − 1 = a Fie g x ≡ b (mod p). Vom determina toate elementele rq.j ¸i a0 va fi egal cu valoarea j pentru care obtinem egalitate. . s ¸ Pentru aceasta. Folosind teorema chinezeasc˘ a a a ki resturilor. dimensiunea tabelului este rezonabil˘. Din capitolul 6. ¸ Rezult˘ log2 30 = 2 · 13 + 7 = 33. Vom determina succesiv ace¸ti coeficienti. Astfel. s ¸ Pentru a determina a1 ..a0 = αa0 ≡ b q (mod p). adic˘: a a g x−a0 ≡ b1 (mod p). este suficient s˘ determin˘m xi ≡ x (mod qi ). fie α ≡ g p−1 q i=1 (mod p). cu qi numere prime distincte.. ≡ g a0 p−1 q ≡ αa0 (mod p). Pentru a calcula ıncˆ xq ≡ x (mod q k ). consider˘m x ≡ a0 + a1 q + . folosind metoda ridic˘rii succesive la p˘trat ¸i le vom a a s p˘stra ˆ a ıntr-un tabel. a cu 0 ≤ ai ≤ q − 1. consider˘m b1 ≡ bg −a0 (mod p). Atunci. PROBLEMA LOGARITMULUI DISCRET Pentru d ≤ 7 valorile obtinute sunt: ¸ d 30 · 2−d 0 30 2 1 15 2 98 3 49 4 115 5 148 6 74 7 37 Am obtinut 213 ≡ 30 · 2−7 (mod 181). Fie q un divizor prim al lui p−1 astfel ˆ at q k p−1.2 Algoritmul Pohlig-Hellman m k qi i . Cu aceste valori. a 12. rq. ¸tim c˘ aceast˘ congruent˘ este s a a ¸a echivalent˘ cu x ≡ logg b (mod p − 1). Astfel.3. c = 2 iar d = 7. a Congruenta g x ≡ b (mod p) devine: ¸ b p−1 q ≡ (g x ) p−1 q ≡ g a0 p−1 p−1 q +a1 (p−1)+.

1 ≤ i ≤ m. b cu semnificatiile anterioare. a−1 ← 0. 3. 2. 2. Calculeaz˘ b1 ← b1 g a .2. b1 ← 1. Algoritm 12. s i=1 k qi i . efectueaz˘: a aj−1 q j−1 2. k ← ki .4. p. ALGORITMUL POHLIG-HELLMAN Atunci: b1q p−1 2 221 ≡ (g x−a0 ) ≡ g a1 p−1 q p−1 q2 ≡ g a1 p−1 q +a2 (p−1)+. .2. 5}. ≡ αa1 ≡ rq. Atunci. Aplic˘ algoritmul Gauss pentru a rezolva sistemul a k x ≡ xi (mod qi i ). s˘ recalcul˘m log2 30 ˆ grupul G = Z ∗ .. bi q ≡ 1 (mod p) ¸i biq s ≡ rq. + ak−1 q k−1 .12. 3.4. obtinem s a ¸ x = logg b. Aplicˆnd procedeul pentru fiecare diIn ¸ a vizor q | p − 1 ¸i folosind teorema chinezeasc˘ a resturilor. a ¸ Proced˘m inductiv. . ˆ final.1..4.5.ai . Returneaz˘ x. Pentru i 2. a De exemplu. m de la 1 la m efectueaz˘: a q ← qi . Vom nota: a ¸ ¸ ¸ bi = bg −(a0 +a1 q+. ¸ OUTPUT: logg b.a1 (mod p).2. Factorizeaz˘ p − 1 = a 2. b = 30 ¸i q ∈ {2. 2. g = 2.3. 2. Vom compara b1q cu elementele din multimea {rq. xi ← a0 + a1 q + .+ai−1 q p−1 i p−1 i+1 i−1 p−1 2 ) . 1 2. j+1 b ← (bb−1 )(p−1)/q . .1 (Pohlig-Hellman) INPUT: g. Calculeaz˘ aj ← logα b folosind a algoritmul Shanks.. Calculeaz˘ α ← g (p−1)/q a Pentru j de la 0 la k − 1. Vom avea p = 181. pentru a obtine toti coeficientii ai . de ordin a a ın 181 180 = 22 · 32 · 5.1. obtinem x (mod q k ). 1. 4..2.j }0≤j<q dup˘ care ¸ a identific˘m a1 cu indicele j pentru care se obtine egalitatea.

rezult˘ a a1 = 2. a1 ∈ {0. x ≡ a0 (mod 5).3 Algoritmul Pollard rho Algoritmul Polard rho pentru calculul logaritmului discret este preferat algoritmului Shanks datorit˘ faptului c˘ acesta necesit˘ o cantitate mai a a a mic˘ de date ce trebuie stocate.222 CAPITOLUL 12.4 ≡ α4 ≡ 135 (mod 181). a a 2. q = 2. Deci.0 (mod 181). pentru x ≡ a0 +a1 ·3 (mod 9). r2. r5.0 ≡ 1 (mod 181). 180 b 5 ≡ 3036 ≡ 125 ≡ r5.3 (mod 181). Astfel. q = 3. 3. 180 30 3 = 3060 ≡ 1 ≡ r3. 1}. x ≡ 1 (mod 4). a s ¸ Deci. Din b122 ≡ 1545 ≡ 1 (mod 181). Relu˘m procedeul anterior.0 (mod 181).0 = α0 = 1. Din b132 ≡ 3020 ≡ 132 ≡ r3. a 1.1 ≡ α ≡ 2 5 ≡ 236 ≡ 59 (mod 181).3 ≡ α3 ≡ 125 (mod 181).2 (mod 181). rezult˘ b122 ≡ r2. ˆ acest caz. PROBLEMA LOGARITMULUI DISCRET Calcul˘m pentru fiecare q valorile rq. log2 30 = 33. a s cu 0 ≤ a0 . r3. a0 = 3 ¸i x ≡ 3 (mod 5). 0 ≤ a0 ≤ 4. deci x ≡ 6 (mod 9). a1 ≤ 2. 2 r5. 180 α = 2 2 = 290 ≡ 180 ≡ −1 (mod 181). r2.0 ≡ 1 (mod 181). s Rezolv˘m sistemul: a   x ≡ 1 (mod 4) x ≡ 6 (mod 9)  x ≡ 3 (mod 5) 180 180 180 folosind teorema chinezeasc˘ a resturilor ¸i obtinem x ≡ 33 (mod 180). ¸i. Fie b1 = bg −1 ≡ 30 · 91 ≡ 15 (mod 181).j pentru 0 ≤ j ≤ q − 1. 12. b1 = b = 30. r5. In 180 r5. deci a0 = 1. adic˘ a1 = 0. Atunci. Acum. q = 5. cu p num˘r ın a p prim. rezult˘: a 180 r3. . r5.1 ≡ α ≡ 2 3 ≡ 260 ≡ 48 (mod 181). x ≡ a0 + a1 · 2 (mod 4). Pentru a simplifica prezentarea acestui a algoritm vom considera cazul ˆ care grupul ciclic G este Z ∗ . a0 .2 ≡ α2 ≡ 132 (mod 181). r3.2 ≡ α ≡ 42 (mod 181).1 = α = −1. 180 b 2 = 3090 ≡ 180 (mod 181). deci a0 = 0.

xi ∈ S 3 . xi ∈ S2 . de cardinale ¸ ın ¸ aproximativ egale. Algoritmul lui Floyd de ciclare. Cele mai ¸ a ¸ a ¸ s simple ¸i mai des ˆ alnite moduri de partitionare sunt urm˘toarele: s ıntˆ ¸ a S1 S2 S3 sau S1 S2 S3 = = = {x ∈ G | x ≡ 1 (mod 3)} {x ∈ G | x ≡ 0 (mod 3)} {x ∈ G | x ≡ 2 (mod 3)} ale grupului G prin x0 = 1 ¸i. s x i ∈ S1 . ¸i s di+1   di + 1 (mod p − 1). ALGORITMUL POLLARD RHO 223 Grupul G este partitionat ˆ trei multimi S1 .  ci . xi ∈ S1 . S2 . x2 . prezentat ˆ 11. Astfel. Alegerea celor trei submultimi trebuie f˘cut˘ cu grij˘: ¸ a a a s a ın 1 ∈ S2 ¸i criteriul dup˘ care se face distribuirea elementelor grupului ˆ / fiecare multime trebuie s˘ contin˘ conditii u¸or de verificat. x i ∈ S2 . c0 = 0.3. =  di . = = = p } 3 2p p } {x ∈ G | < x < 3 3 2p {x ∈ G | < x < p} 3 {x ∈ G | 0 < x < Definim ¸irul (xi )i≥0 de elemente s pentru i > 0:   bxi . xi ∈ S3 . 2di (mod p − 1). xi ∈ S3 .  xi ∈ S 1 . d0 = 0 ¸i pentru s a s i > 0. ci+1 =  ci + 1 (mod p − 1). xi ∈ S2 . Sirul astfel construit determin˘ alte dou˘ ¸iruri de numere naturale ¸ a as (ci )i≥0 ¸i (di )i≥0 care verific˘ xi = g ci bdi . .12. 2ci (mod p − 1). xi+1 =  i gxi . este folosit ˆ conın ın tinuare pentru a determina o coliziune xi = x2i . S3 .2.

Obtinem: ¸ a ¸ bd ≡ beu bp−1 v (12. a rezult˘ d | f u ¸i astfel. a . deducem g d logg b ≡ g f u (mod p) ¸i.1) ≡ beu ≡ g f u (mod p). (12. s Fie d = (e. g ci bdi ≡ g c2i bd2i (mod p). Dac˘ not˘m e ≡ d2i − di (mod p − 1) ¸i f ≡ ci − c2i (mod p − 1). Din congruenta ( 12. pˆn˘ se verific˘ a a a a a a congruenta g logg b ≡ b (mod p). un a ¸ a num˘r prim ¸i e = 0 (mod n). dˆnd valori lui k. e logg b ≡ f (mod p − 1). obtinem a s ¸ logg b ≡ ef (mod p − 1). ¸ a atunci trebuie c˘utat˘ o alt˘ variant˘ de lucru datorit˘ volumului mare a a a a a de verific˘ri ce trebuie f˘cute. d0 ¸i repetat procedeul. f ≤ p − 2. p−1) ¸i u. PROBLEMA LOGARITMULUI DISCRET Atunci. trebuie alese alte In ın valori pentru c0 . se calculeaz˘ logg b. a a s 0 ≤ e. s ın d logg b ≡ f u (mod p − 1). ˆ final. d = 1 ¸i determinarea logaritmului a s s discret se simplific˘. Din d | p−1. v numerele ˆ s ıntregi pentru care d = eu+(p−1)v.224 CAPITOLUL 12. a a Putem face urm˘toarea observatie: dac˘ grupul G are ordinul n. e are invers modulo p − 1 ¸i. atunci. Cum b ≡ g logg b (mod p).2) Aceast˘ congruent˘ ofer˘ o posibilitate de a determina logg b dac˘ a ¸a a a e = 0 (mod p − 1). ˆ cazul ˆ care e ≡ 0 (mod p − 1). Dac˘ valoarea lui d este foarte mare.1) rezult˘ beu ≡ g f u (mod p). din ( 12. Fie k num˘r natural pentru care d logg b = f u+k(p−1). a s logg b = k(p − 1) + f u d pentru un k. 0 ≤ k ≤ d − 1. Dac˘ d = 1.2). Dac˘ d = 1. de unde g ci −c2i ≡ bd2i −di (mod p). obtinem ¸ be ≡ g f (mod p) de unde.

egal cu ordinul grupului G.2. ALGORITMUL POLLARD RHO Pentru acest caz. Calcul˘m a ¸ a a log2 153 ˆ Z ∗ . Folosind xi−1 . c2i . cum functioneaz˘ algoritmul. Rezultatele sunt cuprinse ˆ urm˘torul tabel: a ın a i 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 xi 153 60 161 141 152 123 106 109 25 24 33 3 9 81 45 ci 0 0 0 1 2 3 6 6 6 6 12 24 48 96 12 di 1 2 4 4 8 8 16 17 18 19 38 76 152 124 68 x2i 60 141 123 109 24 3 81 34 87 19 22 80 45 134 148 c2i 0 1 3 6 6 24 96 24 25 50 51 102 103 26 54 d2i 2 4 8 17 19 76 124 136 137 95 96 14 15 31 62 . efectueaz˘: a 2. di ¸i x2i . . pe un caz concret. S˘ vedem. a s ¸ 2. x0 ← 1. d0 ← 0. propunem urm˘torul algoritm: a 225 Algoritm 12. c0 ← 0. b cu semnificatiile anterioare ¸i ¸ s n num˘r prim. c2i−2 . altfel calculeaz˘ ¸i returneaz˘ s s as a logg b = e(ci − c2i ) (mod n). 2. Dac˘ xi = x2i atunci: a 2. a OUTPUT: logg b.2. d2i−2 s calculeaz˘ xi . .12. ci . di−1 ¸i x2i−2 . .1 (Polard-rho) INPUT: g.2.1. Dac˘ e ≡ 0 (mod n). Pentru i = 1. 1. returneaz˘ mesaj de e¸ec a a s ¸i se opre¸te. ci−1 .3. a doua variant˘ ın 181 ¸ a prezentat˘.1.3.2. 2. d2i folosind relatiile anterioare. Alegem pentru partitionare grupului. e ← d2i − di (mod n) 2.

vom stua a ∗ dia doar cazul lui G = Z ∗ . k < 36. trebuie mai ˆ ai studiate propriet˘¸ile corpurilor ıntˆ at finite. ¸ a log2 153 = 107. Pentru cazul G = Fpn unde Fpn este un corp p n finit cu p elemente. Pentru k = 21 obtinem y = 107 care verific˘ 2107 ≡ 153 (mod 181). Ea este echivalent˘ cu 72y ≡ −36 (mod 180).7. a a y = 2 + 5k.4 Algoritmul index-calculus Acest algoritm reprezint˘ cea mai puternic˘ metod˘ cunoscut˘ pentru a a a a determinarea logaritmului discret. Deci. prezentat˘ ˆ capitolul 11. adic˘ y ≡ 2 (mod 5). Doar a ın dup˘ aceea se poate ˆ ¸elege algoritmul prezentat ˆ [12]. a ınt ın . Atunci. 12. Deci. a a a ın Pentru o prezentare cˆt mai simplificat˘ a acestui algoritm.226 CAPITOLUL 12. avem de rezolvat congruenta a ¸ (168 − 96)y ≡ 51 − 87 (mod 180). unde p este num˘r prim. algoritmul Berlekamp de factorizare a poli¸ noamelor cu coeficienti ˆ ¸ ıntr-un corp finit (ce pot fi g˘site ˆ [9]). Ea este ˆ a aplicabil˘ doar unor ıns˘ a grupuri. cum ar fi Z ∗ sau pentru grupul multiplicativ al unui corp finit cu p pn elemente. Algoritmul este ˆ multe privinte a ın ¸ asem˘n˘tor cu metoda bazei factor. constructia acestora. PROBLEMA LOGARITMULUI DISCRET i 16 17 18 19 17 18 19 20 21 22 xi 34 134 87 148 134 87 148 19 11 22 ci 24 24 25 50 24 25 50 50 50 51 di 136 137 137 94 137 137 94 95 96 96 x2i 11 108 160 34 108 160 34 87 19 22 c2i 54 55 111 42 55 111 42 43 86 87 d2i 64 65 130 82 65 130 82 83 167 168 Am g˘sit o coliziune x22 = x44 .

Se alege mai ˆ ai o baz˘ B ⊂ Z ∗ . ¸i se calculeaz˘ g k (mod p). ˆ acest moment. aplic˘m logaritmul ˆ a ın i ambii membri ai congruentei ¸i obtinem valoarea dorit˘ ¸ s ¸ a logg b ≡ i=1 bi logg pi − k (mod p − 1). de obicei ıntˆ a p In se aleg primele t numere prime avˆnd grij˘ ca majoritatea elementelor a a grupului s˘ poat˘ fi exprimate ˆ functie de acestea. . bi ≥ 0. dac˘ t este prea mic. pt }. ALGORITMUL INDEX-CALCULUS Algoritmul este format din dou˘ etape importante: a Preg˘tirea calcului. Pentru a aceasta. s a Vedem dac˘ a t gk ≡ i=1 pai (mod p). Dac˘ relatia nu se verific˘. exist˘ riscul ca relatiile ce trebuie In s a a ¸ aflate s˘ nu se g˘seasc˘ u¸or. . i unde ai ≥ 0.12. a a a s Calculul logaritmului discret. a a a ¸ a a pentru ca sistemul de congruente ce trebuie rezolvat s˘ nu fie prea mare. Dac˘ bg k ≡ a t i=1 t pbi (mod p). adic˘ determinantul matricei sistemului este num˘r prim ¸ a a a cu p − 1. 2. se alege aleator k. se alege alt˘ valoare pentru k. Baza trebuie s˘ contin˘ un num˘r redus de elemente. Se alege aleator k. 1. ¸ a ˆ acela¸i timp. 2. rezult˘ a ¸ a t k≡ i=1 ai logg pi (mod p − 1).4. . 0 ≤ k ≤ p − 2. p2 . a ¸ a a Dac˘ congruenta are loc. cu 0 ≤ k ≤ p − 2 ¸i se calculeaz˘ s a bg k (mod p). . a ın a Tinˆnd cont de cele prezentate. a 227 1. . Se determin˘ logg pi pentru fiecare element al bazei. rezult˘ c˘ dimensiunea bazei trebuie ¸ a a a aleas˘ cu grij˘. rezolvˆnd sistemul obtinem o baz˘ de date ce In a ¸ a este folosit˘ ˆ etapa urm˘toare. ˆ cazul nostru. a a ın ¸ Fie B = {p1 . Se repet˘ acest procedeu pˆn˘ obtinem un sistem liniar de congruente cu a a a ¸ ¸ solutie unic˘.

obtinem ¸ log2 62 + 8 ≡ 3 log2 5 (mod 180). rezult˘ log2 5 = 156. log2 3 = 56. 3. se repet˘ calculul pentru o alt˘ valoare a lui k. log2 62 = 100.228 CAPITOLUL 12. Aplicati algoritmul Pollard-rho pentru a afla ¸ log2 228 (mod 191) 4. ¸ . ˆ Inlocuind. log2 5 = 156. ¸ ¸ ii) aflati valoarea lui log6 13 (mod 229). Folosind algoritmul index-calculus: i) rezolvati congruenta 3x ≡ 76 (mod 89). Din 62 · 28 ≡ 53 (mod 181). a Deci. a 290 ≡ 180 ≡ 22 · 32 · 5 (mod 181) conduce la congruenta ¸ 90 ≡ 2 + log2 3 + log2 5 (mod 180). Cu ajutorul algoritmului Pohlig-Hellman. log11 8 (mod 41). Exercitii propuse ¸ 1. Alegem baza B = {2. Atunci. Folosind algoritmul Shanks determinati: ¸ log11 14 (mod 23). In a a Spre exemplu. 5}. log3 57 (mod 113). 3. a a ın 181 Din 256 ≡ 3 (mod 181) rezult˘ log2 3 = 56. log2 2 = 1. log2 62 ≡ 468 ≡ 100 (mod 180). s˘ calcul˘m log2 62 ˆ Z ∗ . PROBLEMA LOGARITMULUI DISCRET ˆ caz contrar. 2. calculati: ¸ log2 28 (mod 37). Deci.

S-a demonstrat c˘ aceast˘ problem˘ este computational a a a ¸ echivalent˘ cu problema factoriz˘rii (vezi [15]).3. aici stabilirea dac˘ a este rest p˘tratic modulo a a n este mult mai complicat˘.CAPITOLUL 13 Problema r˘d˘cinilor a a p˘trate modulo n a Folosind algoritmul 7. putem determina u¸or dac˘ un ˆ s a ıntreg a cu 1 < a < p. n. a a 229 . atunci este simplu. stabilirea dac˘ a este rest In a Problema apare cˆnd a n p˘tratic sau nu modulo n este considerat˘ o problem˘ dificil˘. adic˘ stabilim dac˘ congruenta a a a ¸ x2 ≡ a (mod p) are solutii. Aceasta a a a a poart˘ numele de problema resturilor p˘tratice ¸i st˘ la baza secua a s a rit˘¸ii unor scheme criptografice cu cheie public˘. a este non-rest n p˘tratic modulo n. a s s ın este foarte dificil s˘ determin˘m r˘d˘cini p˘trate modulo n. a a = 1.1. ¸ Dac˘ consider˘m acum un num˘r compus. Aceast˘ a a a a a a problem˘ este cunoscut˘ sub numele de problema r˘d˘cinilor p˘trate a a a a a modulo n. ˆ acest caz. at a Functiile criptografice folosesc frecvent operatii de ridicare la p˘trat ¸ ¸ a modulo n sau de extragere a r˘d˘cinii p˘trate modulo n. este rest p˘tratic modulo p. a a a a dac˘ n este compus ¸i nu i se cunoa¸te descompunerea ˆ factori primi. a a Dac˘ simbolul Jacobi a = −1. Din p˘cate. spre deosebire de cazul a a a precedent(n = p prim).

3. Ar˘t˘m c˘ c are ordinul egal cu 2s modulo p.1 R˘d˘cini p˘trate mod p a a a Pentru a determina solutiile congruentei x2 ≡ a (mod p) unde a este un ¸ ¸ rest p˘tratic modulo p. pentru c˘ a a ¸ ıns˘ a a a t c b t = = (−1) = −1. unde s1 < s. a a a a a pentru care x = cj r este r˘d˘cina p˘trat˘ modulo p a lui a. Am v˘zut c˘ p˘tratul acestei exa a a presii este 1 (mod p). unde t este impar. cu 0 ≤ j < 2s . Prin ˆ ınlocuirea lui j cu 2s−1 . Rezult˘ c = ξ 2k1 ¸i c devine a a a a s p˘trat modulo p. In p−1 s−1 2s−1 a Observ˘m c˘ r2 a−1 a a ≡ a2 t = a 2 ≡ ≡ 1 (mod p). un non-rest p˘tratic modulo a a p. 2s−s1 t | k deci. aa a s s Observ˘m c˘ c2 ≡ b2 t ≡ bp−1 ≡ 1 (mod p). Deci.230 ˘ ˘ ˘ CAPITOLUL 13. Prea a supunem ordp c = 2s1 . p p ˆ concluzie. obtinem un alt j pentru care ¸ cj r este cealalt˘ r˘d˘cin˘ p˘trat˘ modulo p a lui a. ne vom folosi de b. subliniem c˘ putem presupune j < 2s−1 deoarece c2 a ≡ −1 (mod p). r < p. k este num˘r par. ˆ s a a Inainte de a realiza s−1 acest lucru. scriem j ˆ baza 2 astfel ın j = j0 + 2j1 + 4j2 + . vom obtine ±1 (mod p). . a a a a Pentru aceasta. a Mai ˆ ai scriem p − 1 = 2s t. Fie ξ o r˘d˘cin˘ primitiv˘ modulo a a a a p. p Vom ˆ ınlocui r cu un element x de ordin 2s modulo p astfel ca x2 a−1 ≡ 1 (mod p). Dac˘ valoarea g˘sit˘ ¸ a a a 2s−2 . R˘mˆne s˘ g˘sim o putere convenabil˘ cj . Deci. rezult˘ 2s t | k2s1 . Din presupunerea a f˘cut˘. RADACINI PATRATE 13. Din ξ k2 ≡ 1 (mod p). ordp c | 2s .1. r ≡ a t+1 2 (mod p). Facem notatiile: ıntˆ ¸ c ≡ bt (mod p). Atunci. pe care ˆ determin˘m prin ˆ ıl a ıncerc˘ri. ordp c = 2s . exist˘ k cu 1 ≤ k ≤ φ(p) astfel ¸ a s1 ca c = ξ k . a a a a a a Procedeul inductiv de determinare a cifrelor binare ale lui j const˘ a ˆ ın: 1) Calcul˘m r2 a−1 a (mod p). Aceast˘ afirmatie nu este ˆ a adev˘rat˘. conform propozitiei 6. . cu c. + 2s−2 js−2 ¸i s˘ vedem cum determin˘m cifrele sale binare.

j = 1 + 2 · 0 + a a ¸ s 4 · 1 = 5.1. jk = 1. obtinem j1 = 0 ¸i j2 = 1.˘ ˘ ˘ 13. cj0 +2j1 +. alegem jk = 0 iar pentru -1. Pentru a determina jk .+2 k−1 231 2 a−1 jk−1 ·r 2 · a−1 s˘ aib˘ ordinul 2s−k−1 modulo p. rezult˘ j0 = 1. num˘rul va fi 1. s Aplic˘m algoritmul de determinare al inversului lui a modulo 401 ¸i a s obtinem a−1 ≡ 235 (mod 401). . a a 2) Presupunem c˘ am determinat j0 . ¸ Calcul˘m r2 a−1 ≡ 98 (mod 401) cu ord401 98 = 8. a a c ≡ 325 ≡ 268 (mod 401) ¸i r ≡ a13 ≡ 103 (mod 401). lu˘m j0 = 0.2k−1 jk−1 ·r 2 2s−k−2 ·a −1 ≡ ±1 (mod p).. R˘d˘cina p˘trat˘ c˘utat˘ este c5 r ≡ 304 (mod 401). Obtinem astfel.. altfel j0 = 1. la a p˘trat. a a a a a a a Primul non-rest p˘tratic g˘sit este b = 3. Astfel. Avem p−1 = 24 ·25.. a a a a a a . .. a Din 984 ≡ −1 (mod 401). . jk−1 astfel ca a cj0 +2j1 +.. j0 este ales astfel ˆ at cj0 r a ıncˆ s˘ aib˘ ordinul modulo p egal cu 2s−2 . . a S˘ g˘sim o r˘d˘cin˘ p˘trat˘ a lui a = 186 modulo p = 401.+2 k jk ·r 2 · a−1 va avea ordinul 2s−k−2 modulo p. Deci. de unde cj r este cel c˘utat.. ridic˘m acest a a a num˘r la o putere egal˘ cu jum˘tate din ordinul s˘u. Cˆnd ajungem la j = s − 2. vom avea a cj0 +2j1 +.. Cum. a a a a ¸ c j0 +2j1 +. Pentru valoarea 1. Astfel. Atunci. RADACINI PATRATE MOD P este 1.. a Calcul˘m apoi (cr)2 a−1 ≡ (268 · 103)2 · 235 ≡ −1 (mod 401).+2 s−2 js−2 ·r 2 · a−1 ≡ 1 (mod p).

x ≡ ±r ≡ ±a 4 (mod p) sunt r˘d˘cinile p˘trate pentru a modulo a a a p. prim ¸i a un rest p˘tratic s a modulo p.1) 7. Returneaz˘ r. Calculeaz˘ a (mod p). s = 1.1.1. . d ← (r2 · a)2 ¯ (mod p) 7. p ≡ 3 (mod 4)) a a a INPUT: numerele naturale p ≡ 3 (mod 4). Calculeaz˘ r ≡ a 4 (mod p) folosind algoritmul 3.1. a a a a p+1 1. . RADACINI PATRATE Algoritm 13. . c ← c2 (mod p) 8. pˆn˘ cˆnd p = −1. OUTPUT: Dou˘ r˘d˘cini p˘trate ale lui a mod p. presupunˆnd c˘ a a a p este rest p˘tratic modulo p. cu p prim impar. a .2.1. a 2. a p+1 Deci.1. Astfel. Atunci. a Cea mai simpl˘ situatie ce poate apare pentru acest algoritm este cea a ¸ t+1 p+1 ˆ care p ≡ 3 (mod 4).-r. Calculeaz˘ a a p folosind algoritmul 7. atunci r ← r · c (mod p). Dac˘ d ≡ −1 (mod p). unde t este impar. a a a a 4.3.3. Scrie p − 1 = 2s t.1 (R˘d˘cini p˘trate mod p prim) a a a INPUT: numerele naturale a < p. a a a a 1.2. a¯ 6. −r. OUTPUT: Dou˘ r˘d˘cini p˘trate ale lui a mod p. folosind algoritmul 3.232 ˘ ˘ ˘ CAPITOLUL 13.1. Pentru i = 1.1. 2 4 2 p+1 p+1 p−1 a ±a 4 = a 2 = a 2 ·a ≡ · a ≡ a (mod p). Dac˘ a = −1. atunci returneaz˘ a nu are r˘d˘cini p˘trate a p a a a a ( mod p) ¸i se opre¸te. 2. . de unde ın = . Pune c ← bt (mod p). Returneaz˘ r.1. s s b 3.Caut˘ 1 ≤ b ≤ p − 1. p − 1 execut˘: a s−i−1 7. a 7. Atunci. algoritmul precedent cap˘t˘ urm˘toarea form˘ simplificat˘: aa a a a Algoritm 13.2 (R˘d˘cini p˘trate mod p prim. 5. r ← a(t+1)/2 (mod p) (algoritmul 3.

Dac˘ d = 1.1 pentru cazul s = 2 ¸i ne a a s folosim de faptul c˘ 2 este non-rest p˘tratic modulo un num˘r prim a a a p ≡ 5 (mod 8). RADACINI PATRATE MOD N 233 Dac˘ particulariz˘m algoritmul 13.˘ ˘ ˘ 13. a a a Astfel. prim ¸i a un rest p˘tratic s a modulo p.3 (R˘d˘cini p˘trate mod p ≡ 5 (mod 8)) a a a INPUT: numerele naturale p ≡ 5 (mod 8). obtinem o form˘ simplificat˘. consultˆnd [15]. congruenta ¸ x2 ≡ a (mod p) (13. fie x1 ≡ x0 (mod p). Calculeaz˘ d ← a 4 (mod p). Returneaz˘ r.2.1. a Dac˘ p − 1 = 2s t cu s mare. −r. Pentru aceasta.1.2 R˘d˘cini p˘trate mod n a a a Vom studia doar cazul ˆ care n este produs de dou˘ numere prime imın a pare diferite p ¸i q. a a a 13.1. 0 < x1 < p x2 ≡ x0 (mod q).1. a a adic˘ congruenta a ¸ x2 ≡ a (mod n) (13. Cei interesati pot g˘si mai multe date referitoare la ¸ a aceast˘ problem˘.2) (13. dup˘ care aplic˘m teorema chinezeasc˘ a resturilor pentru a afla a a a r˘d˘cinile p˘trate modulo n ale lui a. este preferabil s˘ se foloseasc˘ un alt a a a algoritm. a a 4. Ar˘t˘m c˘ ea are exact 4 solutii ¸ ¸ aa a ¸ necongruente modulo n.Dac˘ d = p − 1. 0 < x2 < q Atunci. ˆ locul celui initial. afl˘m mai ˆ ai r˘d˘cinile p˘trate ale lui a modulo p ¸i modulo a ıntˆ a a a s q. Fie x0 o solutie a acesteia. a 2.3) . Acesta utilizeaz˘ polinoame cu coeficienti ın ¸ a ¸ ˆ ıntregi modulo p.1) are solutii. calculeaz˘ r ← a(p+3)/8 (mod p). OUTPUT: Dou˘ r˘d˘cini p˘trate ale lui a mod p. a a a a p−1 1. calculeaz˘ r ← 2a(4a)(p−5)/8 (mod p). folosind algoritmul 3. a a 3.4) (13. Pentru a g˘si r˘d˘cinile p˘trate ale lui a modulo s a a a a n = pq. ¸i anume: ¸ a a s Algoritm 13. presupunem c˘ 1 ≤ a ≤ n − 1 este un rest p˘tratic modulo n.

5) va avea solutiile ±x2 ≡ ±a 4 (mod q). q prime impare cu n = pq ¸i a un rest p˘tratic modulo n. ¸ dup˘ cum se poate verifica u¸or.234 ˘ ˘ ˘ CAPITOLUL 13.2 pentru a determina c. pe x1 ¸i p − x1 iar a ¸ s x2 ≡ a (mod q) (13. 5.4) are solutiile ±x1 ≡ ±a 4 (mod p).1 (R˘d˘cini p˘trate mod n = pq) a a a INPUT: numerele naturale p.4) ¸i ( 13. d s astfel ca cp + dq = 1. s Astfel. ( 13. s a OUTPUT: Cele patru r˘d˘cini p˘trate ale lui a mod n.1.1. Folose¸te algoritmul 1.2. a 3. y ← rdq − scp (mod n). dup˘ cum am ¸ ¸ a v˘zut mai ˆ a ınainte. determin˘ cele dou˘ r˘d˘cini a a a a p˘trate ±s ale lui a mod q.1) este echivalent˘ cu sistemul format din congruentele ¸ a ¸ ( 13. atunci a a ¸ s ¸ solutia sistemului (S3 ) este n − y iar cea a ultimului sistem este n − x. congruenta ( 13. 4. a Dac˘ consider˘m acum cazul particular a a n = pq. a q+1 La fel. a s Algoritmul urm˘tor realizeaz˘ cele prezentate: a a Algoritm 13.2. Returneaz˘ ±x (mod n).1.5) pe x2 ¸i q − x2 . Folosind algoritmul 13. exist˘ exact 4 solutii a a ¸ necongruente modulo n = pq. ce se obtin rezolvˆnd urm˘toarele sisteme: ¸ a a (S1 ) (S3 ) x ≡ x1 (mod p) x ≡ x2 (mod q) x ≡ p − x1 (mod p) x ≡ x2 (mod q) (S2 ) (S4 ) x ≡ x1 (mod p) x ≡ q − x2 (mod q) x ≡ p − x1 (mod p) x ≡ q − x2 (mod q) Dac˘ not˘m solutia sistemului (S1 ) cu x ¸i solutia lui (S2 ) cu y. Folosind algoritmul 13. folosind teorema chinezeasc˘ a resturilor. RADACINI PATRATE are exact dou˘ solutii necongruente. Pune x ← rdq + scp (mod n).1. ¸ p+1 . a a a 1. determin˘ cele dou˘ r˘d˘cini a a a a p˘trate ±r ale lui a mod p. cˆnd modulul era prim. s Congruenta ( 13. ±y (mod n).5). p ≡ q ≡ 3 (mod 4). a 2.

Alice g˘se¸te cele 4 solutii necongruente x. S˘ rezolv˘m congruenta x2 ≡ 860 (mod 11021). a 3. (x + y. ˆ caz contrar. Deci. a s a 1. obtinem pentru a a ¸ congruenta initial˘ solutiile: ¸ ¸ a ¸ x ≡ ±212 (mod 11021) ¸i x ≡ ±109 (mod 11021). Bob alege aleator un num˘r x < n. Aplicˆnd acum teorema chinezeasc˘ a resturilor. n) = p. s˘ consider˘m un caz numeric a a unde a = 860. s ˆ final. a s calculeaz˘ n = pq ¸i trimite rezultatul n lui Bob. y. Alice alege dou˘ numere prime mari p ¸i q cu p ≡ q ≡ 3 (mod 4). n − y.˘ ˘ ˘ 13. ¸ s 4. s ˆ mod analog. a a . pentru cealalt˘ situatie se obtine (x + (n − y). RADACINI PATRATE MOD N 235 Pentru a exemplifica cele prezentate. Dac˘ Bob prime¸te y sau n − y el va putea descompune ˆ factori a s ın num˘rul n astfel: a x + y ≡ 2x1 = 1 (mod p) ¸i x + y ≡ 0 (mod q). solutiile sunt ¸a ¸ ±4 107+1 4 = ±427 ≡ ±2 (mod 107). In a a Presupunem c˘ Alice ¸i Bob comunic˘ electronic. d˘m un exemplu de metod˘ flip coin. n) = q. Ea este echivalent˘ cu a a ¸ a sistemul: x2 ≡ 860 ≡ 36 (mod 103) x2 ≡ 860 ≡ 4 (mod 107) Solutiile primei congruente din sistem sunt ¸ ¸ ±36 103+1 4 = ±3626 ≡ ±6 (mod 103) iar pentru a doua congruent˘. a s 2. calculeaz˘ x2 ≡ a (mod n) ¸i a a s trimite num˘rul a < n lui Alice. Tinˆnd cont de observatiile anterioare. sau o solutie care s˘ nu ˆ fie util˘. a s ın ˆ consecint˘.2. exist˘ ın ¸ a ¸ a ¸anse egale ca Bob s˘ primeasc˘ o solutie a congruentei care s˘-l ajute s a a ¸ ¸ a s˘ factorizeze rapid pe n. el nu poate factoriza ˆ timp util pe n. de unde. n = 11021 = 103 · 107. n − x ale a s ¸ congruentei x2 ≡ a (mod n) ¸i trimite una dintre ele lui Bob. Bob cˆ¸tig˘ flip coin dac˘ poate factoriza pe n ¸i In ¸a as a a s pierde. In a ¸ ¸ Dac˘ Bob prime¸te x sau n − x. aceast˘ a ¸ a ıi a a metod˘ flip coin este corect˘.

RADACINI PATRATE 1. a a Aflati b ¸i. ¸ a a a a a 3. 2.236 Exercitii propuse ¸ ˘ ˘ ˘ CAPITOLUL 13. folosind metoda prezentat˘. Determinati o r˘d˘cin˘ p˘trat˘ a lui 55 modulo 89. Fie p = 2081. Not˘m cu b cel mai mic non-rest p˘tratic modulo p. iii) x2 ≡ 16 (mod 105). Rezolvati urm˘toarele congruente: ¸ a ¸ i) x2 ≡ 1 (mod 15). ii) x2 ≡ 31 (mod 75). determinati o r˘d˘cin˘ p˘trat˘ ¸ s a ¸ a a a a a a lui 302 modulo p. .

nr. 1 2 3 4 5 6 7 8 9 10 11 12 13 p 2 3 5 7 13 17 19 31 61 89 107 127 521 cif reMp 1 1 2 3 4 6 6 10 19 27 33 39 157 Observatii ¸ antichitate antichitate antichitate antichitate Reguis. Seelhof f (1883) P owers (1911) P owers (1913) Lucas (1876) Robinson (1952) 237 . Cataldi (1461) Cataldi (1588) Cataldi (1588) Euler (1750) P ervouchine.1: Numerele prime Mersene cunoscute.ANEXA A Numere prime Mersene Tabel A.

N ickel (1978) N oll (1979) N elson. Gage (1994) Slowinski. Gage (1996) Armengaud/GIM P S (1996) Spence/GIM P S (1997) Clarkson/GIM P S (1998) Hajratwala/GIM P S (1999) Cameron/GIM P S (2001) Shaf er/GIM P S (2003) F indley/GIM P S (2004) N owak/GIM P S (2005) . 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40? 41? 42? p 607 1279 2203 2281 3217 4253 4423 9689 9941 11213 19937 21701 23209 44497 86243 110503 132049 216091 756839 859433 1257787 1398269 2976221 3021377 6972593 13466917 20996011 24036583 25964951 cif reMp 183 386 664 687 969 1281 1332 2917 2993 3376 6002 6533 6987 13395 25962 33265 39751 65050 227832 258716 378632 420921 895832 909526 2098960 4053946 6320430 7235733 7816230 Observatii ¸ Robinson (1952) Robinson (1952) Robinson (1952) Robinson (1952) Riesel (1957) Hurwitz (1961) Hurwitz (1961) Gillies (1963) Gillies (1963) Gillies (1963) T uckerman (1971) N oll.238 ANEXA A. Gage (1992) Slowinski. NUMERE PRIME MERSENE nr. Slowinski (1979) Slowinski (1982) Colquitt. W elsh (1988) Slowinski (1983) Slowinski (1985) Slowinski.

b 2 3 4 5 6 7 8 9 10 11 12 13 14 n 341 91 15 124 35 25 9 28 33 15 65 21 15 b 15 16 17 18 19 20 21 22 23 24 25 26 27 n 341 51 45 25 45 21 55 69 33 25 28 27 65 b 28 29 30 31 32 33 34 35 36 37 38 39 40 n 45 35 49 49 33 85 35 51 91 45 39 95 91 b 41 42 43 44 45 46 47 48 49 50 51 52 53 n 105 205 77 45 76 133 65 49 66 51 65 85 65 b 54 55 56 57 58 59 60 61 62 63 64 65 66 n 55 63 57 65 133 87 341 91 63 341 65 112 91 239 .ANEXA B Numere pseudoprime Tabel B.1: Cele mai mici numere pseudoprime n cu primele 100 de baze b.

a a 1 2 3 4 5 6 7 8 9 10 11 12 13 n 341 561 645 1105 1387 1729 1905 2047 2465 2701 2821 3277 4033 a 14 15 16 17 18 19 20 21 22 23 24 25 26 n 4369 4371 4681 5461 6601 7957 8321 8481 8911 10261 10585 11305 12801 a 27 28 29 30 31 32 33 34 35 36 37 38 39 n 13741 13747 13981 14491 15709 15841 16705 18705 18721 19951 23001 23377 25761 a 40 41 42 43 44 45 46 47 48 49 50 n 29341 30121 30889 31417 31609 31621 33153 34945 35333 39865 41041 .240 ANEXA B. NUMERE PSEUDOPRIME b 67 68 69 70 71 72 73 n 85 69 85 169 105 85 111 b 74 75 76 77 78 79 80 n 75 91 77 247 341 91 81 b 81 82 83 84 85 86 87 n 85 91 105 85 129 87 91 b 88 89 90 91 92 93 94 n 91 99 91 115 93 301 95 b 95 96 97 98 99 100 n 141 133 105 99 145 153 Tabel B.2: Numerele pseudoprime cu baza 2 ¸i numerele Carmichael s (cele boldate) mai mici dacˆt 41041.

Bucure¸ti. 140 (1994).. s 1979. 1984. C... D. Bucure¸ti. 703-722.. [4] Bobancu. F. Ion. Caleidoscop matematic. Granville.. Aritmetic˘ ¸i teoria numerelor. A Course in Computational Algebric Number Theory. I. 1952.. November. Itinerar elementar ˆ algebra superioar˘.Bibliografie [1] Alford. Craiova.. K. Craiova. 241 .. Din istoria matematicii. Editura Cartea Rus˘.D. s [3] Albu. Ediın a tura All. [10] Kiran. Editura Academiei. Berkeley Math Circle. Lectii de algebr˘. 2002. Al. Annals Math. Algebric Aspects of Cryptography. 1988. s as Editura Universitaria. Springer-Verlag. Springer-Verlag. [6] Cohen. [5] Bu¸neag. W. Ion. Piciu. N.... [11] Koblitz. 1976. V. T. Probleme de aritmetic˘ ¸i teoria numerelor. A. a s [8] Depman. Capitole speciale de teoria numerelor. D.. 2000... Bucure¸ti. [2] Albu. Editura Albatros. Boboc..R. J. I. H. Berlin. 1997.. [7] Cucurezeanu. 1995. Is this number prime?. There are Infinitely Many Carmichael Numbers. Edia s tura Tehnic˘. Editura Universitaria. I. Pomerance. Bua cure¸ti. 1999.. s a ¸ a [9] Dinc˘.D. T..

D. a II-a. CRC Press. Pollard.. Editura Didactic˘ ¸i Pedagogic˘. Boca Raton. Lectures notes in Computer Sci.I. 1966. Elements of Number Theory. Proceedings of Eurocrypt 84.. W. 1991... The Developement of the Number Field Sieve. 1964. J. Advances in Cryptology. W. [15] Menezes. The Art of Computer Programming.. Elementary Number Theory and Cryptography. Manasse. Mathematique et Applications. Paris.. Algorithmique et Criptographie. vol. Ce ¸tim ¸i ce nu ¸tim despre numerele prime. A. P. The Number Field Sieve. as a Bucure¸ti. 1998.. 2002. 1984.242 BIBLIOGRAFIE [12] Koblitz. Teoria numerelor. H. C. [24] Stinson. Ellipses. 2003.. 1993. 1995. Edis s s tura Stiintific˘. Handbook of Applied Cryptography. Vraciu. Cryptography: Theory and Practice. Berlin. 209 (1985). ed.. Warsaw. as a s [17] Pomerance. 1994. 1993..E... Elementary Theory of Numbers. [25] Yan Song. Addison-Wesley. Editura a a ¸a as a Didactic˘ ¸i Pedagogic˘. Florida. Springer-Verlag. C. 1973. N. Nit˘.. S. a II-a. A Course in Number Theory and Cryptography.H. 1993. Springer-Verlag. ed. A. [21] Sierpinski.M. CRC Press. ¸ ¸ a s [23] Stillwell.P. C.. K. Vanstone. Bucure¸ti. [20] Rosen. . Addison-Wesley. The Quadratic sieve factoring algorithm.. Boca Raton. Polski Academic Nauk. Bucure¸ti. [13] Knuth. SpringerVerlag. Springer-Verlag. Lenstra.. Oorschot.S. D. 169-182. Y.. s [19] Robin.W. M. [16] N˘st˘sescu. a II-a. C. Aritmetic˘ ¸i algebr˘. ed.... C.R. [18] Popovici. [22] Sierpinski.K.. 1973. jr. J. [14] Lenstra. NewYork. Number Theory for Computing. G. Florida.

Index
alfabet de definitie, 134 ¸ algoritm AKS, 196 cu scop general, 199, 213, 216 cu scop special, 199, 202, 205, 206 de criptare, 135 de decriptare, 135 DSA, 160 Euclid, 15 Euclid extins, 20 Floyd de ciclare, 203, 223 index-calculus, 226 Pohlig-Hellman, 220 Pollard rho, 222 Shanks, 218 asociere ˆ divizibilitate, 13 ın autentificare, 134, 148 B-num˘r, 207 a B´zout e coeficienti, 18 ¸ relatii, 19 ¸ teorem˘, 19 a baby-step giant-step, 218 baz˘ factor, 207 a metod˘, 207 a 243 c.m.m.d.c., 13 c.m.m.m.c., 22 cˆturi partiale, 34 a ¸ calendar, 85 Gregorian, 86 Iulian, 86 Carmichael, num˘r, 178 a cel mai mic rest ˆ valoare absoın lut˘, 207 a cheie de criptare, 135 de decriptare, 135 pereche, 135 privat˘, 148 a public˘, 148 a secret˘, 135 a ciclu, 203 cifru, 135 ciurul lui Eratostene, 168 coeficienti B´zout, 18 ¸ e coliziune, 223 confidentialitate, 134 ¸ congruente, 57 ¸ liniare, 60 sistem, 63, 65, 67 conjectura lui Goldbach, 26 conjugatul unui irational, 43 ¸ convergent˘, 36 a criptanaliz˘, 133 a

244 criptare cheie, 135 functie, 135 ¸ criptografie, 133 cu cheie public˘, 148, 150, a 154–156 cu cheie secret˘, 135, 136, a 138, 139, 142, 144 criptologie, 133 criptosistem afin, 138 asimetric, 135 bloc, 139 caracter, 136 Cezar, 137 cu cheie public˘, 135 a cu cheie secret˘, 135 a de deplasare, 138 DES, 144 Diffie-Hellman, 154 ElGamal, 155 exponential, 142 ¸ hibrid, 149 Hill, 139 Massey-Omura, 156 Merkle-Hellman, 157 monografic, 136 poligrafic, 139 RSA, 150 simetric, 135 structur˘, 135 a curbe eliptice, 195 metod˘ de factorizare, 206 a test de primalitate, 196 decriptare cheie, 135 functie, 135 ¸ DES, 144 Diffie-Hellman criptosistem, 154 presupunere, 155 divizor, 11 netrivial, 11 propriu, 11 DSA, 160

INDEX

ecuatie diofantic˘, 30 ¸ a ElGamal criptosistem, 155 semn˘tur˘ digital˘, 160 a a a Euclid algoritm, 15 algoritm extins, 20 Euler criteriu, 116 functie φ, 70 ¸ martor, 184 metod˘ factorizare, 202 a pseudoprimi, 181 teorem˘, 70 a exponent ±1, 108 maximal, 108 exponent universal, 105 minimal, 106 Fermat metod˘ de factorizare, 200 a metod˘ generalizat˘, 201 a a mica teorem˘, 69 a numere, 27 test, 180 Fibonacci ¸ir, 17 s filtru al corpurilor de numere, 216 p˘tratic, 213 a

INDEX fractie continu˘ ¸ a cˆturi partiale, 34 a ¸ convergent˘, 36 a finit˘, 33 a infinit˘, 39 a metod˘ de factorizare, 210, a 211 periodic˘, 43 a pur periodic˘, 48 a simpl˘, 34 a functie ¸ π, 23 σ, 76 τ , 76 pn , 23 aritmetic˘, 73 a de criptare, 135 de decriptare, 135 Euler φ, 70 hash, 161 multiplicativ˘, 73 a Gauss, lem˘, 117 a hash functie, 161 ¸ valoare, 161 hibrid, criptosistem, 149 Hill, criptosistem, 139 index aritmetic, 102 index-calculus, 226 inegalit˘¸i Cebˆsev, 25 at ı¸ integritatea datelor, 134 invers mod n pentru un element, 62 algoritm, 62 pentru matrice, 66

245 ipoteza Riemann generalizat˘, 194 a irational p˘tratic, 43 ¸ a conjugatul unui, 43 redus, 48 Jacobi, simbol, 126 Lagrange,teorem˘, 46, 95 a legea reciprocit˘¸ii p˘tratice, 120, at a 122, 128 Legendre,simbol, 115 lema lui Gauss, 117 logaritm discret, 217 algoritm index-calculus, 226 algoritm Pohlig-Hellman, 220 algoritm Pollard rho, 222 algoritm Shanks, 218 problem˘, 217 a Lucas, ¸iruri, 171 s Lucas-Lehmer, test primalitate, 174 managementul cheilor, 147 martor, 168 Euler, 184 Massey-Omura, criptosistem, 156 Mersenne num˘r, 78 a num˘r prim, 78, 174 a test primalitate, 174 metoda bazei factor, 207 curbelor eliptice pentru factorizare, 206 de calculare a indexului, 218 de g˘sire de coliziuni, 218 a Euler, 202 Fermat, 200

246 Fermat generalizat˘, 201 a filtrului corpului de numere, 216 filtrului p˘tratic, 213 a fractiilor continue, 210, 211 ¸ Pollard p-1, 205 Pollard-rho, 202 ridic˘rii succesive la p˘trat, a a 59 Miller, test, 186, 189, 194 Miller-Rabin, test primalitate, 189, 194 non-repudiere, 134 non-rest p˘tratic, 114 a numere Carmichael, 178 compuse, 11 cu form˘ special˘, 199 a a Euler pseudoprime, 181 Fermat, 27, 171 generale, 199 Mersenne, 78, 174 perfecte, 77 prime, 11 prime pereche, 25 pseudoprime, 176 relativ prime, 13 RSA, 150 tari pseudoprime, 186 ordin al unui element mod n, 93 al lui n la p, 21 Pepin, test primalitate, 171 pereche de chei, 135 perioad˘, 203 a

INDEX Pohlig-Hellman, algoritm, 220 Poklington, teorem˘, 170 a Pollard p-1, 205 rho algoritm DLP, 222 metod˘ de factorizare, 202 a pre-perioad˘, 203 a prim, 11 Mersenne, 78 pereche, 25 teorem˘, 25 a probabil prim, 167 problema factoriz˘rii, 199 a logaritmului discret, 217 logaritmului discret generalizat˘, 217 a r˘d˘cinilor p˘trate, 229 a a a resturilor p˘tratice, 229 a rucsac supercresc˘toare, 156 a rucsacului, 156 sumei unei submultimi, 156 ¸ probleme dificile, 148, 154, 156, 199, 217, 229 pseudoprim, 176 Euler, 181 tare, 186 putere rezidual˘, 104 a r˘d˘cini a a p˘tratice, 230 a primitive, 94 relatie ¸ asociere ˆ divizibilitate, 13 ın B´zout, 19 e de congruent˘, 57 ¸a de divizibilitate, 11

68 test de primalitate folosind curbe eliptice . 14 ımp˘ ¸ B´zout. 25 Euler. 156 a TDES. 46. 134 de text cifrat. 170 Proth. 156 s problem˘ rucsac. 194 Solovay-Strassen. 162 ımp˘ ¸ Shamir. ¸ 67 redus de resturi. 164 treshold. 134 de baz˘. 171. 194. 115 sistem complet de resturi. 185. 194 Miller-Rabin. 149. 160 standard. 95 Lam´. 70 Fermat. 167. 145 247 teorema ˆ artirii cu rest. 152 semn˘tur˘ digital˘. 183. 194 numerelor prime. 135 de mesaje. 171 probabilistic. 135 semn˘tur˘ digital˘. 182 Wilson. 183 text cifrat. 160 RSA. 128 Miller. 63 a criteriul Euler. 167. 17 e legea reciprocit˘¸ii p˘tratice. 25 Poklington. test primalitate. 114 a RSA criptosistem. 180 Lucas-Lehmer. 134 supercresc˘tor a ¸ir. 189. 193 Solovay. 171 Rabin. 70 Solovay-Strassen. 116 Dirichlet. 150 problema. 196 de divizibilitate. 65. 69 fundamental˘ a aritmeticii. 83–85 de primalitate. 174 Miller.INDEX rest cel mai mic ˆ valoare absoın lut˘. 169. 134 a . 160 a a a ElGamal. 63. 207 a p˘tratic. 160 simbol Jacobi. 183 spatiu ¸ pentru chei. 162 de criptare. 19 e chinezeasc˘ a resturilor. 167 deterministic. at a 120. 126 Legendre. 150 numere. a 21 Lagrange. 194 Pepin. 58 congruente liniare. 12. 160 a a a schem˘ a de ˆ artire a secretelor. 196 Fermat.

135 de decriptare. 68 a INDEX . teorem˘. 200 unitate de text.248 transformare de criptare. 168. 135 trial division. 134 Wilson.