Sunteți pe pagina 1din 15

Metoda Curbelor Eliptice

Introducere
Criptografia reprezinta studiul tehnicilor matematice cu privire la
securitatea informatiei cum ar fi confidentialitatea, integritatea datelor,
autenticitatea entitatilor si originea autenticitatii datelor.
In anul 1985, Neal Koblitz si ictor !uler, au introdus , independent,
sistemul de criptare cu a"utorul curbelor eliptice ca a alternativa la sistemul
de criptare cu cheie publica. #ecuritatea $siguranta% sa consta in dificultatea
problemei logaritmului discret a curbelor eliptice care permite generarea
celei mai mari puteri &per bit' dintre toate sistemele de criptare cu cheie
publica cunoscute. Nivelul de securitate este determinat de dimensiunea si
structura grupului de puncte rationale de pe curba eliptica definit de un camp
finit.
Problema logaritmului discret la curbele eliptice: (ECDLP)
(ie ) o curba eliptica peste un camp finit (*+. ,resupunem , un punct
ce apartine curbei ) $(*+% si fie - un punct in .,/. 0rebuie sa se gaseasca
un intreg t astfel incat - 1 2t3 ,.
#e considera in mod unanim ca problema logaritmului discret a
curbelor eliptice este greu de rezolvat in cazul in care punctul , are un ordin
primalitate mare.
!etode cunoscute pentru a rezolva )C45, sunt6
7lgoritmul ,ohlig89ellman $ care reduce problema la subgrupuri de
de ordine de primalitate%
!etoda lui #han: &Baby-step-giant-step
!etoda lui ,ollard
7tacul !enezes8;:amoto8anstone $!;%.
7tacurile asupra curbelor eliptice considerate anomalii $ de e<emplu
curbele eliptice peste (*p care au p puncte % create de #emaev, #atoh8
7ra:i si #mart.
7tacul (re=8>uec:.
In prezent e<ista doar trei clase de sisteme de criptare cu cheie publica
care sunt considerate a fi atat eficiente cat si sigure. #unt clasificate mai "os
in functie de problema matematica pe care sunt bazate6
#istemul de factorizare a numerelor intregi.
#istemul logaritmului discret.
#istemul curbelor eliptice.
Descompunerea in factori
primi
,roblema descompunerii in factori primi consta in6 fiind dat un numar
intreg pozitiv , sa se scrie ca un produs de numere prime.4e e<emplu6 fiind dat
numarul ?5 , descompunerea lui in factori primi este6 @
A
B5.4escompunerea este
intotdeauna unica conform teoremei fundamentale aritmetice.
(iind date doua numere prime mari, este usor sa le gasesti produsul. Insa,
fiind dat produsul lor este mai dificil sa le gasesti factorii. 7cest lucru este
relevant pentru multe sisteme moderne in criptografie. 4aca o metoda rapida
pentru problema descompunerii in factori primi este gasita , atunci numeroase
sisteme in criptografie vor fi CsparteD, inclusiv alogoritmul >#7, cu cheie
publica si generatorul de numere aleatoare Elum Elum #hub.
Chiar daca descompunerea in factori primi este o metoda de a CspargeD
aceste sisteme e<ista si alte metode de a le sparge fara a fi folosita
descompunerea. 7stfel este posibil ca problema descompunerii in factori primi
sa fie grea dar sistemele sa fie totusi sparte rapid. ; e<ceptie este generatorul
Elum Elum #hub. 7 fost demonstrat faptul ca aceste este la fel de dificil ca si
descompunerea in factori primi. Nu e<ista nici o metoda de a8l sparge fara a
rezolva rapid descompunerea in factori primi.
,rincipalele metode dezvoltata pana astazi pentru descompunerea in
factori primi a numerelor sunt6 )C!$)lliptic Curve !ethod%, !,-# $!ultiple
,ol=nomial -uadratic #ieve%, N(# $Number (ield #ieve%.
Ce este o curba eliptica?
; curba eliptica ) definita pe un camp finit (
p
, unde p/@, poate fi data
sub forma6
)$(
p
%6 =
A
1<
@
FaB<Fb , a,b G $(
p
% $1%
impreuna cu un punct special numit punct de infinit.)cuatia este numita
&eliptica' deoarece este folosita in calcularea lungimilor de arc ale elipselor.
7sociate curbei eliptice sunt doua entitati importante6
discriminantul6
H1 81I $?a
@
FAJb
A
% $A%
"8invariant6
"11JA8$?a
@
%KH , unde HLM. $@%
Lema1:. (iind dat "
M
G (
p
e<ista o curba eliptica ) definita pe (
p
astfel
incat "$)%1 "
M
.
; curba eliptica cu un "8invariabil , "
M
, dat, se poate construi usor.
Consideram "
M
care nu apartine NM,1JA8O, aceste cazuri speciale sunt de
asemenea usor de rezolvat. (ie :1 "
M
K$1JA88 "
M
%, "
M
P$(
p
% atunci ecuatia6
)6 =
A
1<
@
F@:<FA:. $?%
determina o curba eliptica cu "8invariant "$)%1 "
M
.
Teorema 1: Curbele eliptice izomorfe au acelasi "8invariant.
Teorema : (!"##E) (ie Q )$(
p
% numarul punctelor pe curba eliptica
)$(
p
%. 4aca Q )$(
p
% 1 pF18t , atunci R t R.1 ABs+rt$p%.
De$initia 1: (Torsiunea) (iind data )6 =
A
1<
@
FaB<Fb , a,b G $(
p
% ,
torsiunea elipsei in punctul c este curba eliptica daca de )
c
6 =
A
1<
@
FaBc
A
B<FbBc
@
,
unde cP$(
p
%.
Teorema %: (ie ) definita pe $(
p
% si ordinul sau Q )$(
p
% 1pF18t.
;rdinul torsiunii este dat de6
Q )
c
$(
p
B
% 1 p F 1 S t , daca c este patrat perfect in $(
p
% $I%
1 p F 1 F t, in caz contrar
Teorema &: ("t'in-(orain) (ie p un numar prim astfel incat ?Bp1tF4Bs
A
$J%, oricare ar fi t,s P T. 7tunci e<ista o curba eliptica ) definita pe $(
p
% astfel
incat Q )$(
p
% 1 p F 1 S t.
!etoda de generare a curbelor eliptice poarta numele de Comple)
(ultiplcation (C() . 7ceasta metoda consta in6
(iind dat un numar prim p se gaseste cel mai mic 4 in $J% si t asociat
acestuia.
;rdinele curbelor eliptice care pot fi construite este Q )$(
p
% 1 p F 1 U t.
#e verfica daca unul din ordine are o factorizare admisibila $prin
factorizare admisibila se intelege un numar prim sau aproape prim%. In
cazul in care nu este indeplinita aceasta conditie se cauta un alt 4 si un t
corespunzator acestuia. #e repeta acest pas pana cand se gaseste o
factorizare admisibila.
#e construieste o clasa polinomiala 9
s
$<% utilizand formulele
corespunzatoatre.
#e gaseste un "
M
P 9
s
$<% $mod p%. 7cest "
M
este "8invariantul al curbei ce
trebuie construita.
(ie :1 "
M
K $1JA8 8 "
M
% $mod p% si curba va fi6
)6 =
A
1<
@
F@B:B<FAB:.
#e verifica ordinul curbei. 4aca este nu este p F 1 S t atunci se
construieste torsiunea folosind un c P $(
p
% la alegere.

7cest algoritm de generare a curbelor eliptice a fost testat pe un ,entium II
la ?5M8 !hz. #8a ales t 1 ABv F 1 si s 1 ABV F 1, unde v,V P T. Numerele prime
gasite sunt de forma p 1 v
A
F v F $ V
A
F V % 4 F $4F1%K? $8% , iar 4 1 @ $mod
?%.
7ceste diagrame arata activitatea metodei in functie de clasele de numere
obtinute.
Curbele eliptice sunt folosite in demonstrarea ultimei teoreme a lui
(ermat si au numeroase aplicatii in criptografie.
Intre punctele unei curbe eliptice se pot defini operatii binare intr8un mod
natural, ceea ce face ca aceste puncte sa formeze un grup abelian.
Curbele eliptice tipice pentru multimea numerelor reale sunt date prin
ecuatiile6
=W1<X8< si =W1<X8<F1.
Curbele eliptice pot fi definite peste orice multime K,definitia formala a
unei curbe eliptice spune ca acestea sunt ecuatii algebrice proiective non8
singulare peste K de tipul 1.4aca caracteristica lui K nu este A sau @,curba
eliptica peste K poate fi scrisa sub forma6 y=x-px-q ,unde p si + apartin lui K ,
iar ecuatia nu are nici o radacina dubla.
0oate punctele $<,=% care satisfac relatia data au pe < si = elemente ale lui
K.,unctele de pe curba ale caror coordonate apartin lui K sunt numite K8puncte
rationale.
,rin adaugarea unui punct la infinit obtinem versiunea proiectiva a
acestei curbe.,roprietatea matematica care face ca aceste curbe sa fie folosite in
criptografie este aceea ca6 luand doua puncte distincte de pe curba,dreapta care
trece prin ele va intersecta curba in al treilea punct$deoarece avem o ecuatie
cubica%.
(ie , si - doua puncte distincte de pe curba., are coordonatele $<1,=1%. S
, are coordonatele $<1,8=1% ,deoarece curba eliptica este simetrica fata de a<a
;Y. 7stfel, cel de8al treilea punct de pe curba este ,F-. In acest fel se
dovedeste ca aceasta corespondenta satisface proprietatile algebrice uzuale pe
care le asociem numerelor intregi.
In termeni matematici 6 putem defini un grup abelian finit din punctele de
pe curba, ; fiind punctul la infinit. In particular , daca lasam ca punctele , si -
sa coincida , putem defini ,F, ,notat A,.)<tinzand ideea, putem defini :,
$ pentru orice intreg : % si ordinul lui , ,ca fiind cel mai mic intreg : astfel incat
:,1; $punctul la infinit % .
Zrupul poate fi descris si algebric ,nu doar geometric. (iind data curba 6
=W1<X8p<8+ peste multimea K $ale carei caracteristici nu sunt A sau @%, si
punctele ,$<p,=p% , -$<+,=+% pe curba , presupunem mai intai ca <+L<p. (ie
s1$=p8=+%R$<p8<+%. 4in moment ce K este o multime , s este bine definit. 7poi
se poate defini >1,F- $>$<r,=r%% prin 6
<r1sW8<p8<+, =r18=pFs$<p8<r%.
4aca <p1<+ , atunci avem doua optiuni 6
a% daca =p18=+ ,atunci suma este definita ca M.7stfel, punctul invers al
fiecarui punct de pe curba este simetricul fata de a<a ;Y.
b% 4aca =p1=+LM, atunci >1,F,1A, , >$<r,=r% date prin 6
s1$@<pW8p%R$A=p%
<r1sW8A<p
=r18=pFs$<p8<r%.
4aca =p1=+1M atunci ,F,1M.
0eorema lui !ordell8[eil afirma ca daca multimea K este multimea
numerelor rationale, atunci grupul K8puncte rationale este finit.
)ste relativ usor sa determini torsiunea subgrupului )$K%, insa nici un
algoritm general nu este cunoscut pentru a8i afla rangul. ; formula pentru acest
punct este data de ipoteza la Eirch si #Vinnerton84=er.
4emonstratia recenta a ultimei teoreme a lui (ermat gaseste solutia unui
caz special al presupunerii lui 0ani=ama8#himura, folosind curbele eliptice
peste multimea numerlor rationale.
4aca multimea K este o multime de numere comple<e , atunci orice
curba eliptica poate fi parametrizata printr8o functie eliptica. !ai precis, pentru
fiecare curba eliptica ) e<ista o latice 5 si o functie eliptica [ierstrass specifica
astfel incat 6
\6CR5]) cu \$z%1C$^$z%, ^D$z%% este un grup izomorf
al suprafetelor >iemann.
Metoda curbelor eliptice
!etoda curbelor eliptice este un algoritm probabilistic rapid pentru
descompunerea numerelor intregi care implica folosirea curbelor eliptice. )l a
fost inventat in 1985 de 9endri: 5enstra _r. . 7ceasta metoda a fost cel mai bun
algoritm pentru descompunerea numerelor intregi pana ce N(# a fost
descoperit. !etoda este inca buna pentru a gasi factori a caror dimensiune nu
depaseste AM de cifre$I? de biti%, deoarece timpul algoritmului depinde de
dimensiunea factorului p.
)C! este o imbunatatire a vechii metode de descompunere ,ollard p81.
In metoda lui ,ollard s8a presupus ca un numar dat n are un divizor prim p daca
p81 are numai factori primi mici. 7poi , prin mica teorema a lui (ermat $a
e
11
mod p, unde p81 divide pe e si p nu divide pe a%, luand pe e ca un produs de
numere prime mici ridicate la puteri mici si a sa fie un rest aleator mod n ,
putem descompune numarul n prin aflarea celui mai mare divizor comun a lui n
si a
n81
, asa cum alti divizori + ai lui n nu au proprietatea ca +81 sa divida pe e.
;ricum noi nu vom putea descompune pe n daca n nu are un factor prim p cu p8
1 &fin'.
!etoda curbelor eliptice a lui 5enstra trece peste acest obstacol
considerand un grup de curbe eliptice aleatoare peste grupul finit T
n
,mai
degraba decat a considera grupul multiplicativ a lui T
n
care are intotdeauna
ordinul n81.Numarul de ordine al grupului de curbe eliptice aleatoate peste T
n
este intre p si Ap ceea ce este convenabil pentru anumite curbe eliptice.
)C! pentru un numar n functioneaza astfel6
8 se alege o curba eliptica peste T si un punct 7 pe ea. 7poi , se
considera legea grupului pe aceasta curba mod n$acest lucru este posibil
deoarece toate resturile obtinute mod n au invers care poate fi gasit folosind
algoritmul lui )uclid%`
8 se calculeaza e7 in acest grup, unde e este un produs de numere mici
ridicate la puteri mici la fel ca in metoda ,ollard p81. ,entru eficienta se poate
da un numar prim`
8 din fericire , e7 este un element M al grupului de curbe eliptice in T
n
si
nu in T
+
pentru un alt divizor prim + a lui n$la fel ca in metoda ,ollard p81 nu
este de preferat ca ambele grupuri sa aiba numarul de ordine un divizor a lui e%`
8 apoi sa afla un divizor a lui n prin gasirea celui mai mare divizor
comun dintre prima coordonata a lui 7 si n , coordonata va fi M in T
+
`
8 daca nu merge algoritmul , se va incerca o alta curba si un alt punct.
Factorizarea
!etoda curbelor eliptice propusa de 5enstra este o generalizare a asa8
numitului $p81% algoritm de factorizare a lui ,ollard.
Algoritmul lui Lenstra
7lgoritmul lui 5enstra functioneaza astfel6 pentru inceput alegem
aleator elemente aPTaN, ,
M
1$<M,=M%P$TaN%
A
si determinam o valoare b care
apartine lui $TaN% astfel incat =M
A
1<M
@
Fa<MFb mod N.
In putine cazuri vom avea gcd$?a
@
FAJb
A
, N%L1. 7poi vom gasi un
divizor netrivial al lui N si putem opri algoritmul sau altfel6N divide ?a
@
FAJb
A
,
ceea ce inseamna ca trebuie sa incepem din nou cu alegerea aleatoare a valorilor
a,<M,=M.4aca gcd$?a
@
FAJb
A
, N%11 consideram ecuatia =
A
1<
@
Fa<Fb.
,entru fiecare divizor prim a lui N, vom defini grupul Z$p%1
)
a,b
$Tap% ca o curba eliptica definita prin aceasta ecuatie modulo p si avand
Z$N%1 b
paN
)
a,b
$Tap%. ;momorfismele c
p
6Z$N%]Z$p% sunt proiectii naturale.
4aca deducem ca Z$p%D1Z$p%aNMO este o parte afina a lui Z$p%,
atunci Z$N%D1b
paN
Z$p%D este complementul lui d
paN
Kerf$c
p
%. ,unctele lui Z$N%D
pot fi reprezentate prin perechi $<,=% de intregi care satisfac ecuatia aleasa
modulo N.
7stfel, am construit de"a un punct ,
M
1$<M,=M% a lui Z$N%D.(olosind
principiul general al algoritmului de factorizare prezentat anterior, vom calcula
multiplul -$E%B

,
M
$pentru o alegere potrivita a lui E%. 7ceste lucru se poate
face in ;$log$-$E%%% pasi prin dublare repetata si adunare.
Zrupul permite sa adaugam6 ,
1
si ,
A,
punctul ,
@
1 ,
1
F ,
A
fiind dat
de formula6
<@1e
A
8<18<A , =@1e$<18<@%8=1, unde e1$=A8=1%K$<A8<1%, daca <1L<A si
e1$@<1
A
Fa%K$A=1% daca ,
1
1 ,
A
.
#ingura problema in efectuarea acestei operatii in TaN este calculul
elementelor inverse. 7ceste elemente , daca e<ista in TKN, pot fi calculate
folosind algoritmul lui )uclid pentru a calcula gcd8ul dintre elementul ce
trebuie inversat si N. 4aca gcd11 , inversul poate fi calculat si putem continua
algoritmul.
Cazul e<ceptional este atunci cand gcd este un numar dL1. 4aca d
diferit de N , suntem in cazul norocos pentru ca am gasit un divizor al lui N.
4aca una din curbele eliptice Z$p% are un ordin ce divide -$E%, un caz
e<ceptional oricum apare in timpul calculului lui -$E%B ,
M
, deoarece atunci
-$E%B ,
M
nu este un element din Z$N%D.
4aca nu gasim un caz norocos nu suntem complet pierduti ,
deoarece putem incepe din nou cu o noua alegere aleatoare a parametrilor
aM,<M,=M astfel incat curbele eliptice Z$p% sa aiba alte ordine.
; parte draguta a alogoritmului de factorizare folosind metoda
curbelor eliptice este aceea ca ele pot fi usor puse in paralel , pentru ca putem
lasa multe calculatoare sa factorizeze acelasi numar N folosind curbe eliptice
diferite.
CONCLUZII
1.Comple<itatea algoritmului depinde este ;$e<p$c$ln$p%ln$ln$p%%%
1KA
%
$ln$n%%
A
%, unde c este apro<imativ A $valoarea lui este constanta% , n este numarul
ce trebuie descompus, p este un factor nontrivial al lui n. )ste un timp sub8
e<ponential care depinde de lungimea factorului p.
A.,roiectul )C!N)0 ,inceput in 1998 ,pentru a gasi factori mari folosind
)C! a avut succes,gasindu8se factori cu 5M de cifre$1II de biti% si mai mult.
Cel mai mare factor prim gasit folosind )C! are 5? de cifre$18M de biti%
si este6 ?8?MI1A5?AJI8J8@I81A5JAI8JMJ8918MA@19959I?8JMM9?91I9@J,
adica $I
?@
81%
?
BAF1 si a fost gasit de Nic: 5=geros si !ichael !izon= cu
programul Z!,8)C! al lui ,aul Timmermann in decembrie 1999.
@.In 1995 a fost descoperita descompunerea numarului lui (ermat
(
1M
1A
AM
F1 de @M9 cifre$1MA5 biti%.
(
1M
1?559A5JJBI?8JM@18M9B?I59JJ5J85AAMM185?@AI?5IMJ?@MJIJJ81
9A89JBp
A5A
, unde ?I59f9A89J are ?M de cifre.4escompunerea a luat A?M
!ips8ani.dn !ips8an este multimea de descompuneri ce pot fi facute intr8un an de un singur 4)Ca7Y11a8M.
In cadrul proiectului )C!N)0 sSau gasit urmatorii factori6

digits
factor from E1 sigma date Vho
II
JM9IM1I@5M8AAIJ@AM9II?A?M8?955JJIJ89
JJM8I?JA5I?@99I885?15IJII8AA9J
@
?II
F1 11MMMMMMM 18J5@JJ8A? MI 7pr AMM5 E. 4odson
IA
@1MI915M@J88J@J9M895AM8M?
I895JJ1@IM9?9?I@A9@5?I?1A1M5951??9?A9
A
AM@?
F1 11eJ 15MJ?IJ?5J 1M 7pr AMM5 E. 4odson
59
AM1@1?9A1AM8A891981??8?85JA988J?IJ?15
5A98J111?A@9JJI9181@?J
1M
A@@
81 AIMMMMMMM ?11?IMM819 AM (eb AMM5 E. 4odson
5J
1M5JJ89??1?A1189MMJJJ5MM898JM8@J858I1?
5M9@@1@JI5J98M58M9J
@J19
@J
81 11eI AM5@8J8M AA 7pr AMM5 ,. ;chem
5I
1A5JJ?A88A8JJ@1M5JA1@5A89MA58M@@M??A9@J
@?MJ1M19JJM@855?J
1MMI?8118M?1
1@
81 5eJ @A9?558@JI 1A 7pr AMM5 ,. ;chem
5?
1?M18@I1??8A?5M@?II@A@8?9@198?
51A181@?MMA159J81?18IMJ9
A
1M8@
81 ?@MMMMMM ?AIAJ5A89 A8 _an AMM5 K. 7o:i
5?
1AI5A?@AM1M99I5M88?A?8958I8811
J
AJA
F1 ?@eI A89581M1MA A1 7pr AMM5 E. 4odson
J9I@?IAM9J@5189???85?M1J
5?
11M995M9I5@?M55M@@JJ581A?5I8JJ81
M@5?8MI?9M?998@95@8J?1
@
1I8@
F1 11eJ @9?158M8J1 M@ !a= AMM5 _. Eec:er
51
A858M899A19IJJMAM1?@MJ955JJIIIMII
511M9I88M15M??M1M1
9,@MM$95% ?@eI A9JI5JII@A AM !ar AMM5 7. !ichon
51
1551@J81I9JJ18M9?J15AJ855IAIM15MA
5AI@@M@18J?@AJ?151
A
11M5
81 ?@MMMMMM A895?1?AA5 M9 !a= AMM5 K. 7o:i

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