Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 62

N TT NGHIP

H mt trn ng cong Elliptic

MC LC
MC LC...................................................................................................................................1
DANH MC HNH V V BNG...........................................................................................5
DANH SCH CC T VIT TT...........................................................................................5
Chng I : GII THIU V MAPLE........................................................................................8
Gii thiu chung..........................................................................................................................8
1.1. Gii thiu chung...................................................................................................................8
Hnh 1.1: Gii thiu v phn mm Maple...................................................................................8
1.1.1. Lch s pht trin..............................................................................................................9
1.1.2. Cc tnh nng c bn ca Maple.....................................................................................10
1.1.3. Cu trc v giao din......................................................................................................11
Hnh 1.2: Giao din ca maple..................................................................................................11
1.2. Lp trnh tnh ton vi Maple............................................................................................11
1.3. Lu gi v trch xut d liu..............................................................................................12
1.4. Cc mi trng lm vic trong Maple...............................................................................12
1.5. Lnh ca Maple..................................................................................................................12
1.6. Cc du php ton, hm v hng s c bn.......................................................................13
Hnh 1.3: V th bng phn mm Maple..............................................................................21
Chng II : H MT TRN NG CONG ELLIPTIC......................................................22
2.1. ng cong Elliptic...........................................................................................................22
2.1.1. M u v t bi ton....................................................................................................22
2.1.2. nh ngha.......................................................................................................................22
2.1.3. Tnh cht ca ng cong elliptic...................................................................................23
2.1.4. ng cong elliptic trn trng hu hn........................................................................24
2.1.5. Cc php ton trn ng cong Elliptic..........................................................................24
2.1.5.1. Php cng.....................................................................................................................25
Hnh 2.1: php cng trn ng cong Elliptic.........................................................................26
2.1.5.2. Php nhn.....................................................................................................................27
2.1.6. m s im trn ng cong elliptic trn trng Fq....................................................27
2.1.7. Trng K.........................................................................................................................28
2.1.8. Dng ca ng cong elliptic.........................................................................................28
2.1.9. Phng php la chn....................................................................................................29
Hnh 2.2: ng cong Elliptic..................................................................................................30
2.1.10. Cc ng cong elliptic................................................................................................30
Hnh 2.3: th phng trnh y2 = x3 6x..............................................................................31
Hnh 2.4:phn t nghch o ca P...........................................................................................32
Hnh 2.5: PQ ct th ti mt im duy nht R......................................................................32

HC VIN K THUT MT M

-1-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 2.6: Trng hp PQ l tip tuyn ca th ti P...........................................................33


Hnh 2.7: th minh ha P+P=-R............................................................................................33
Hnh 2.8: th minh ha P+P=-P...........................................................................................34
2.2. H mt trn ng cong elliptic.........................................................................................34
2.2.1. M u v t bi ton....................................................................................................34
2.2.2. Nhng bn r ln ng cong.........................................................................................35
2.2.3. Logarit ri rc trn ng cong Elliptic( Discrete logarithm on Elliptic)......................37
2.2.4. Vn trao i kho Diffie- Hellman(D- H) trn Elliptic..............................................37
2.2.5. H mt Elgamal trn ng cong Elliptic.......................................................................38
2.2.6. H mt m da trn ng cong elliptic.........................................................................39
2.2.7. Giao thc SSL (Secure Sockets Layer)...........................................................................39
2.2.7.1. Qu trnh bt tay y da vo m ho RSA............................................................40
Hnh 2.9 : Qu trnh bt tay da vo RSA................................................................................40
2.2.7.2. Qu trnh bt tay y da vo m ho ECC............................................................41
Hnh 2.10: Qu trnh bt tay da vo EEC...............................................................................41
2.2.7.3. M ha cng khai trong SSL trong hai ch .............................................................42
2.2.7.4. So snh.........................................................................................................................42
Bng 1: So snh s dng RSA v ECC trong qu trnh bt tay ca SSL..................................43
Chng III. MT VI NG DNG H MT TRN NG CONG ELLIPTIC............44
3.1. Lc ch k s trn ng cong elliptic (Elliptic Curve Signature Algorithm ) ECDSA 44
3.1.1. Lc k ECDSA........................................................................................................44
3.1.2. an ton ca s ch k ECDSA.............................................................................45
3.2. Mt s chun s dng h mt ECC....................................................................................46
Chng IV : DEMO TRN MAPLE........................................................................................49
4.1. V d 1: M ha v gii m Elgamal trn Elliptic.............................................................49
4.1.1. M t...............................................................................................................................49
Hnh4.1: th y2 = x3 + x + 6................................................................................................49
4.1.2. M ha v gii m...........................................................................................................49
4.1.2.1. M ha thng tin..........................................................................................................49
4.1.2.2. Gii m.........................................................................................................................53
4.2. V d v k v kim tra ch k Elgamal............................................................................55
4.2.1. K ln thng bo.............................................................................................................55
Hnh4.1: th y2 = x3 + x + 6................................................................................................58
4.2.2. Kim tra ch k...............................................................................................................59
KT LUN...............................................................................................................................60
TI LIU THAM KHO.........................................................................................................62

HC VIN K THUT MT M

-2-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

DANH MC HNH V V BNG


MC LC...................................................................................................................................1
DANH MC HNH V V BNG...........................................................................................5
DANH SCH CC T VIT TT...........................................................................................5
Chng I : GII THIU V MAPLE........................................................................................8
Gii thiu chung..........................................................................................................................8
1.1. Gii thiu chung...................................................................................................................8
Hnh 1.1: Gii thiu v phn mm Maple...................................................................................8
1.1.1. Lch s pht trin..............................................................................................................9
1.1.2. Cc tnh nng c bn ca Maple.....................................................................................10
1.1.3. Cu trc v giao din......................................................................................................11
Hnh 1.2: Giao din ca maple..................................................................................................11
1.2. Lp trnh tnh ton vi Maple............................................................................................11
1.3. Lu gi v trch xut d liu..............................................................................................12
1.4. Cc mi trng lm vic trong Maple...............................................................................12
1.5. Lnh ca Maple..................................................................................................................12
1.6. Cc du php ton, hm v hng s c bn.......................................................................13
Hnh 1.3: V th bng phn mm Maple..............................................................................21
Chng II : H MT TRN NG CONG ELLIPTIC......................................................22
2.1. ng cong Elliptic...........................................................................................................22
2.1.1. M u v t bi ton....................................................................................................22
2.1.2. nh ngha.......................................................................................................................22
2.1.3. Tnh cht ca ng cong elliptic...................................................................................23
2.1.4. ng cong elliptic trn trng hu hn........................................................................24
2.1.5. Cc php ton trn ng cong Elliptic..........................................................................24
2.1.5.1. Php cng.....................................................................................................................25
Hnh 2.1: php cng trn ng cong Elliptic.........................................................................26
2.1.5.2. Php nhn.....................................................................................................................27
2.1.6. m s im trn ng cong elliptic trn trng Fq....................................................27
2.1.7. Trng K.........................................................................................................................28
2.1.8. Dng ca ng cong elliptic.........................................................................................28
2.1.9. Phng php la chn....................................................................................................29
Hnh 2.2: ng cong Elliptic..................................................................................................30
2.1.10. Cc ng cong elliptic................................................................................................30
Hnh 2.3: th phng trnh y2 = x3 6x..............................................................................31
Hnh 2.4:phn t nghch o ca P...........................................................................................32
Hnh 2.5: PQ ct th ti mt im duy nht R......................................................................32

HC VIN K THUT MT M

-3-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 2.6: Trng hp PQ l tip tuyn ca th ti P...........................................................33


Hnh 2.7: th minh ha P+P=-R............................................................................................33
Hnh 2.8: th minh ha P+P=-P...........................................................................................34
2.2. H mt trn ng cong elliptic.........................................................................................34
2.2.1. M u v t bi ton....................................................................................................34
2.2.2. Nhng bn r ln ng cong.........................................................................................35
2.2.3. Logarit ri rc trn ng cong Elliptic( Discrete logarithm on Elliptic)......................37
2.2.4. Vn trao i kho Diffie- Hellman(D- H) trn Elliptic..............................................37
2.2.5. H mt Elgamal trn ng cong Elliptic.......................................................................38
2.2.6. H mt m da trn ng cong elliptic.........................................................................39
2.2.7. Giao thc SSL (Secure Sockets Layer)...........................................................................39
2.2.7.1. Qu trnh bt tay y da vo m ho RSA............................................................40
Hnh 2.9 : Qu trnh bt tay da vo RSA................................................................................40
2.2.7.2. Qu trnh bt tay y da vo m ho ECC............................................................41
Hnh 2.10: Qu trnh bt tay da vo EEC...............................................................................41
2.2.7.3. M ha cng khai trong SSL trong hai ch .............................................................42
2.2.7.4. So snh.........................................................................................................................42
Bng 1: So snh s dng RSA v ECC trong qu trnh bt tay ca SSL..................................43
Chng III. MT VI NG DNG H MT TRN NG CONG ELLIPTIC............44
3.1. Lc ch k s trn ng cong elliptic (Elliptic Curve Signature Algorithm ) ECDSA 44
3.1.1. Lc k ECDSA........................................................................................................44
3.1.2. an ton ca s ch k ECDSA.............................................................................45
3.2. Mt s chun s dng h mt ECC....................................................................................46
Chng IV : DEMO TRN MAPLE........................................................................................49
4.1. V d 1: M ha v gii m Elgamal trn Elliptic.............................................................49
4.1.1. M t...............................................................................................................................49
Hnh4.1: th y2 = x3 + x + 6................................................................................................49
4.1.2. M ha v gii m...........................................................................................................49
4.1.2.1. M ha thng tin..........................................................................................................49
4.1.2.2. Gii m.........................................................................................................................53
4.2. V d v k v kim tra ch k Elgamal............................................................................55
4.2.1. K ln thng bo.............................................................................................................55
Hnh4.1: th y2 = x3 + x + 6................................................................................................58
4.2.2. Kim tra ch k...............................................................................................................59
KT LUN...............................................................................................................................60
TI LIU THAM KHO.........................................................................................................62

HC VIN K THUT MT M

-4-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

DANH SCH CC T VIT TT


TT

T VIT TT

TING ANH

THUT NG MT M

DHP

Diffie-Helman Problem

Bi ton Diffie-Hellman

DLP

Discrete Logarithm
Problem

Bi ton logarithm ri
rc trn trng hu hn

EC

Elliptic Curve

ng cong elliptic

ECC

Elliptic Curve
Cryptosystem

H mt Elliptic

ECDLP

Elliptic Curver Discrete


Logarithm Problem

Bi ton logarithm ri
rc trn ng cong
elliptic

MOV

Menezes-OkamotoVanstone attack

Tn cng MOV

SSL

SSLHP

SSL Handshake protocol Giao thc bt tay

SSLRP

SSL Record Layer


protocol

HC VIN K THUT MT M

-5-

Giao thc lp ghi

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

LI NI U
Ngy nay vi s pht trin mnh m ca cng ngh thng tin, truyn
thng ni chung v Internet ni ring gip cho vic trao i thng tin nhanh
chng, d dng, E-mail cho php ngi ta nhn hay gi th ngay trn my tnh
ca mnh, E-business cho php thc hin cc giao dch trn mng. Do vy mt
vn pht sinh l thng tin c th b trm cp, c th b sai lch, hoc b gi
mo. iu c th nh hng ti cc t chc, cc cng ty hay an ninh ca mt
quc gia. Nhng b mt kinh doanh, ti chnh l mc tiu ca cc i th cnh
tranh. Nhng tin tc v an ninh quc gia l mc tiu ca cc t chc tnh bo
trong v ngoi nc.
gii quyt tnh hnh trn an ton thng tin c t ra cp thit v k
thut mt m l mt trong nhng gii php ca an ton truyn thng. K thut
ny c t ngn xa nhng n n gin, ngy nay khi c mng my tnh ngi ta
dng mt m hin i. Cc nh khoa hc pht minh ra nhng h mt m nh
cc h mt: RSA, Elgamal, nhm che du thng tin cng nh l lm r chng
trnh s nhm ng ca nhng k c tnh ph hoi. Mc d rt an ton nhng
c di kho ln nn trong mt s lnh vc khng th ng dng c. Chnh
v vy ngi ta pht minh mt h mt l h mt trn ng cong elliptic,
h mt ny c nh gi l h mt c bo mt an ton cao v hiu qu hn
nhiu so vi h mt cng khai khc, n c ng dng trn nhiu lnh vc v
c s dng nhiu ni trn th gii tuy nhin cn mi m Vit Nam. Trong
tng lai gn H mt trn ng cong Elliptic s c s dng mt cch ph
bin v thay th nhng h mt trc n. V l do , em chn ti Tm
hiu H mt trn ng cong elliptic v kh nng ng dng nghin cu.
n ca em gm 4 chng:
Chng I: Gii thiu v Maple
Chng ny gii thiu tng quan v phn mm Maple, lch s pht trin,
cc tnh nng c bn, giao din ca Maple,mi trng lm vic,cc hm s,
hng s v cc cu lnh c bn trong Maple

HC VIN K THUT MT M

-6-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Chng II: H mt trn ng cong Elliptic


Trong chng 2 trnh by mt cch tng quan v ng cong Elliptic v
h mt trn ng cong Elliptic
Chng III: Mt vi ng dng h mt trn ng cong Elliptic
Trong chng 3 nu ra mt vi ng dng h mt trn ng cong Elliptic
nh lc ch k s trn ng cong Elliptic v mt s chun s dng h mt
ECC
Chng IV: Demo trn Maple
Chng cui cng trnh by mt s v d v h mt trn ng cong
Elliptic bng phn mm Maple
Sau mt thi gian tm hiu v nghin cu cng vi s gip ca cc thy
c trong khoa An ton thng tin v c bit l C gio Trn Th Lng Ging
vin Khoa An ton thng tin Hc vin K thut Mt M, cui cng em hon
thnh n ca mnh.
Em xin chn thnh cm n cc thy c !
H Ni, ngy 08 thng 06 nm 2011
Sinh vin
Phm Th Yn

HC VIN K THUT MT M

-7-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Chng I : GII THIU V MAPLE


1.1. Gii thiu chung

Hnh 1.1: Gii thiu v phn mm Maple


Maple l mt h thng tnh ton trn cc biu thc i s v minh ha ton
hc mnh m ca cng ty Warterloo Maple, ra i khong nm 1991, n nay
pht trin n phin bn 14. Maple c cch ci t n gin, chy trn tt c
cc h iu hnh, c cu trc linh hot s dng ti u cu hnh my v c
bit c trnh tr gip (Help) rt d s dng. T phin bn 7, Maple cung cp
ngy cng nhiu cc cng c trc quan, cc gi lnh t hc gn lin vi ton ph
thng v i hc. u im lm cho nhiu nc trn th gii la chn s dng
Maple cng cc phn mm ton hc khc trong dy hc ton trc i hi ca
thc tin v s pht trin ca ngnh gio dc.

HC VIN K THUT MT M

-8-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

1.1.1. Lch s pht trin


Maple l gi phn mm ton hc thng mi phc v cho nhiu mc ch.
Tn Maple n gin l ch hnh tng L Phong (trong ting anh gi l
Maple) trn quc k Canada.
Thng 11/1980, khi nim u tin v Maple xut pht t mt cuc hp ti
i hc Waterloo. Nhng nh nghin cu ti i hc mun mua mt my tnh
mnh chy Macsyma nhng chi ph tn km. Thay vo , ngi ta quyt
nh h s pht trin h thng i s my tnh ring c th chy c nhng
my tnh c gi thnh hp l hn. Do , d n bt u vi mc tiu l to ra
mt h thng i s hnh thc m cc nh nghin cu v sinh vin c th truy
cp c.
Nhng nh nghin cu th nghim v loi b nhiu tng khc nhau
to ra mt h thng lin tc ci tin. Maple c trnh din u tin ti nhng
hi ngh bt u vo nm 1982.
n cui nm 1983, trn 50 trng i hc ci Maple trn my ca h.
Do s lng h tr v yu cu giy php ln, vo nm 1984, nhm nghin cu
sp xp vi WATCOM Products Inc cp php v phn phi Maple.
Vo nm 1988, do s lng h tr ngy cng tng, Waterloo Maple Inc.
c thnh lp. Mc tiu u tin ca cng ty l qun l nhng bn phn phi
phn mm. Cui cng, cng ty cng phi m ra phng R&D kh nhiu s
pht trin cho Maple c thc hin n ngy nay. S pht trin ng k ca
Maple tip tc din ra ti nhng phng th nghim trng i hc, bao gm:
Phng th nghim Tnh ton hnh thc ti i hc Waterloo; Trung tm nghin
cu Tnh ton hnh thc Ontario ti i hc Ty Ontario; v nhng phng th
nghim khp ni trn th gii.
Vo nm 1989, giao din ha ngi dng u tin ca Maple c pht
trin v bao gm trong bn 4.3 dnh cho Macintosh. Nhng phin bn trc ca
Maple ch gm giao din dng lnh vi ng ra hai chiu. Bn X11 v Windows
vi giao din mi tip bc vo nm 1980 vi Maple 5.
Vo nm 1999, vi vic pht hnh Maple 6, Maple a vo mt s Th
vin S hc NAG, c m rng chnh xc ngu nhin.

HC VIN K THUT MT M

-9-

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Vo nm 2003, giao din "chun" hin nay c gii thiu trong Maple 9.
Giao din ny c vit ch yu bng Java (mc d c nhiu phn, nhng lut
cho vic g cng thc ton hc, c vit bng ngn ng Maple). Giao din
Java b ph phn l chm; nhng s pht trin c thc hin trong cc bn sau,
mc d ti liu Maple 11 documentation khuyn co giao din (c in) trc
y dnh cho ngi vi b nh vt l t hn 500 MB. Giao din c in ny
khng cn c bo tr.
Gia 1995 v 2005 Maple mt kh nhiu th phn vo tay i th do c
giao din ngi dng yu hn. Nhng vo nm 2005, Maple 10 gii thiu mt
ch vn bn mi, nh mt phn ca giao din chun. Tnh nng chnh ca
ch ny l php ton c a vo bng ng nhp hai chiu, do n xut
hin tng t nh cng thc trong sch. Vo nm 2008, Maple 12 thm
nhng tnh nng giao din ngi dng ging nh Mathematica, gm c nhng
kiu trnh by theo mc ch c bit, qun l phn u v cui trang, s trng
m ng ngoc, vng thc hin t ng, mu hon thnh lnh, kim tra c php
v vng t ng khi to. Nhng tnh nng khc c thm lm cho Maple
d dng hn nh mt hp cng c Maple.
Phin bn hin ti l Maple 14 c pht hnh nm 2010 .i th cnh
tranh chnh ca n l Mathematica.
Maple 14 l mt phn mm tnh ton k thut cn thit cho cc k s v
cc nh khoa hc ngy nay. Khi cn thc hin tnh ton tht nhanh,trnh by
bng tnh v cho ra nhng kt qu c tnh chuyn mn vi chnh xc cao th
Maple 14 c y nhng cng c cn thit thc hin c iu v gip
gim bt nhng li sai cho nhng ngi khng chuyn v tnh ton thng qua
nhng mu cu trc c Maple thit k sn.

1.1.2. Cc tnh nng c bn ca Maple.


C th nu vn tt cc chc nng c bn ca Maple nh sau:
L mt h thng tnh ton trn cc biu thc i s:
C th thc hic c hu ht cc php ton c bn trong chng trnh
ton i hc v ph thng.

HC VIN K THUT MT M

- 10 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Cung cp cc cng c minh ha hnh hc thun tin gm: v th tnh v


ng ca cc ng v mt c cho bi cc hm ty trong nhiu h
ta khc nhau.
L mt ngn ng lp trnh n gin v mnh m c kh nng tng tc vi
cc ngn ng lp trnh khc.
Cho php trch xut ra cc nh dng khc nhau nh LaTex,Word,
HTML,...
Mt cng c bin son gio n v bi ging in t, thch hp vi cc lp
hc tng tc trc tip.

1.1.3. Cu trc v giao din


Khi khi ng Maple, chng trnh ch t ng kch hot nhn ca
Maple bao gm cc php ton v chc nng c bn nht. Phn nhn chim
khong 10% dung lng ca ton chng trnh.
Cc d liu v chng trnh cn li ca Maple c lu gi trong th
vin Maple v c chia ra 2 nhm: nhm cc lnh c bn v nhm cc gi
lnh.

Hnh 1.2: Giao din ca maple

1.2. Lp trnh tnh ton vi Maple

HC VIN K THUT MT M

- 11 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Maple l mt ngn ng lp trnh hng chu trnh (procedure). Chng ta


c th lm vic vi Maple bng hai ch khc nhau: Ch tng tc trc tip
thng qua vic nhp tng lnh n l ngay ti du nhc lnh ca Maple v nhn
c ngay kt qu ca lnh . Ch chu trnh c thc hin bng cch ng
gi mt dy cc lnh x l cng mt cng vic vo trong mt chu trnh
(procedure) duy nht, sau ta ch cn gi chu trnh ny v Maple t ng thc
hin cc lnh c trong chu trnh mt cch tun t v sau tr li kt qu
cui cng.
Maple cha mt lng rt ln cc hm to sn p ng cho nhng yu cu
tnh ton khc nhau trong nhiu lnh vc. Cc hm ny c lu tr trong cc
gi chu trnh (package) v ngi s dng c th d dng gi n mi khi cn
thit. Tuy nhin, ngi dng Maple c th t to cho ring mnh nhng gi chu
trnh cng nh c th trao i dng chung nhng gi chu trnh no y, phc v
cho cng vic mang tnh c th ring ca mnh.

1.3. Lu gi v trch xut d liu


Trang lm vic ca Maple s c lu gi bng file c ui ".mws".
File c lu gi bng trnh File|Save. Mt file c c m bng File|Open.
Ngoi vic lu gi bng nh dng ca Maple nh trn, d liu c th
c trch xut thnh cc nh dng khc nh Word,LaTex hay HTML. Trch
xut bng File|Export.

1.4. Cc mi trng lm vic trong Maple


Maple c 2 mi trng: lm vic l ton v vn bn. Sau khi khi ng,
Maple t ng bt mi trng ton. Mun chuyn sang mi trng vn bn,
kch chut vo biu tng T trn thanh cng c hay vo trnh Insert->Text.
Ngc li, t mi trng vn bn, kch chut vo du "[>" trn thanh cng c
hay vo Insert chuyn sang mi trng ton.

1.5. Lnh ca Maple


Lnh c g vo trang lm vic (worksheet) ti du nhc lnh ">" v
theo ngm nh c hin th bng font Courier mu . Mt lnh c kt

HC VIN K THUT MT M

- 12 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

thc bi du ":" hoc du ";" v c ra lnh thc hin bng vic nhn Enter
khi con tr ang trn dng lnh.
> factor(2*x^102+x^100-2*x^3-x+60*x^2+30);
Kt qu ca lnh c hin th ngay bn di dng lnh nu dng du ";". C
th d dng dng chut v bn phm thc hin cc chc nng bi en, copy,
paste, cut, delete...i vi d liu trn dng lnh hay kt qu thc hin.
S dng dch v tr gip (Help) trong Maple: Maple c dch v tr gip
kh y v thun li, bao gm c php, gii thch cch dng v cc v d i
km. nhn c tr gip, c th n F1 hoc bi en vo cu lnh n
SHIFT+F2
Nu bit tn lnh th t du nhc g vo
> ?factor
Nu dng mt gi lnh th khi np gi lnh, Maple s hin th ton
b lnh trong gi .
Mt cch thng dng na l dng trnh Help|Topic Search ri g
vo t kha cn tm.

1.6. Cc du php ton, hm v hng s c bn


Cc php ton v du php ton
C php
!

Gii thch
Giai tha

Ly tha

a^2

Cng

a+b

Tr hoc s m

x-y

Nhn

2*x

Chia

10/5

>

Ln hn

a>10

<

Nh hn

b<10

>=

Ln hn hoc bng

x>=10

<=

Nh hn hoc bng

x<=10

HC VIN K THUT MT M

- 13 -

V d
10!

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Bng

a=b

:=

Php gn

x:=10

C php

Gii thch

V d

sin, cos, tan,

Cc hm lng gic

sin(x)

arcsin, arccos, arctan

Cc hm lng gic ngc

arcsin

abs

Hm tr tuyt i

abs(x)

exp

Hm m c s e

exp(x) hay e^x

log hay ln

Hm logarit c s e

log(x) hay ln(x)

log[10]

Hm logarit c s 10

log[10](x)

sqrt

Khai cn bc 2

sqrt(3)

Cc hm thng dng:

Cc hng s thng dng:


C php

Hng s

Pi

exp

infinity

Cc tnh ton s hc
Maple c th lm vic nh mt my tnh b ti hin i
>5*3
Kh nng tnh ton s hc ca Maple l rt ln, c th lm vic vi nhng con
s c n 228 = 268435456 ch s

HC VIN K THUT MT M

- 14 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Cc ton t logic: and, or, not

HC VIN K THUT MT M

- 15 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Kt qu ca cc php ton quan h l:


True

ng

False

sai

FAIL

khng so snh c

Ch : Cc thnh phn trn c th c xp vo nhng mc (section) cho


d tm hoc mc con (subsection) trong worksheet
Cu trc d liu:
Tp hp (Set)
Tp hp l dy c bao trong cp du ngoc nhn {...}.
Trong tp hp th t cc phn t khng quan trng.
Cc php ton trn tp hp nh union (hp), intersect (giao), minus
(tr).
> s:=sin,cos,tan;

> a:= {exp,sin,cos};

> b:= {s};

> a union b;

> a intersect b;

Kim tra phn t c trong tp hp hay khng?


> member (sin,b);

HC VIN K THUT MT M

- 16 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Danh sch (List)


Danh sch l dy c bao trong cp du ngoc vung [..].
Cc phn t ca danh sch c th l bt c g.
> c := [1, 2, 3, 2, 1];

Tm s phn t ca list bng nops(L);


> nops (c);

Truy cp cc phn t ca list


> op (2,c);

Tnh ton vi cc s thp phn


Ta c th thc hin cc php tnh s hc trn cc s thp phn vi du
chm ng hoc vi chnh xc theo mun. Trong thc t, Maple c th x
l cc s vi chnh xc hng trm nghn ch s thp phn bng hm evalf (f,
m)
V d: Ta tnh gi tr ca s vi chnh xc 20 ch s thp phn
> evalf(Pi,20);

Tnh ton theo Modul


Tnh modul m trn tp s nguyn
C php: e mod m vi cc dng ring:

modp (e, m): Ly biu din dng ca e theo modul m (trong


tp gi tr t 0 n 1 - m ).
mods (e, m): Ly biu din i xng ca e theo modul m
(trong tp (|m-1|)/2..(|m|/2))

Vi e l biu thc i s, m l mt s nguyn khc 0.


HC VIN K THUT MT M

- 17 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Ton t mod tnh gi tr biu thc e trn tp s nguyn modul m. N hp


nht vic tnh ton trn trng s hu hn v cc php ton s hc i vi a
thc, ma trn trn trng hu hn, k c php phn tch ra tha s. Vic n nh
mod p hay mod s c thc hin thng qua bin mi trng mod (gi tr modp
c xem l mc nh). Khi ta cn tnh q mod m vi q l mt s nguyn th
khng nn s dng c php hin nhin nh q^n mod m, bi v php ly tha s
chuyn s th nht thnh s nguyn (c th l rt ln) trc khi rt gn theo
modul m. Thay vo nn dng ton t tr &^ ngha l q&^n mod m. Trong
dng ly tha s c bin i kho lo theo php ly mod. Tng t,
Powmod (a,n,b,x) mod m tnh Rem (a^n,b,x) mod m (a v b l nhng a thc
ca x) khng cn tnh a^n mod m.
Nhng php ton modul s hc khc c biu din di dng t nhin ca
chng:
j + i mod m;
j - i mod m;
j * i mod m;
i / j mod m;
j^(-1) mod m;
V d: Tnh
> 12 mod 7;
modp(12,7);

> mods(12,7);

> 5*3 mod 7;

> 11+5*3 mod 7;

HC VIN K THUT MT M

- 18 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

> (11+5*3)^(-1) mod 7;

> 5 &^1000 mod 31;

Tnh modul khi e khng l s


Khi biu thc e khng l mt s m l mt a thc th php ly modul ca
n c hiu l php ly modul ca tt c cc h s ca a thc.
V d: Tnh
> a:=15*x^2+4*x-3 mod 11;

V php ly modul mc nh s dng biu din dng (modp). Mun


chuyn sang dng i xng th ta dng lnh:
> mod`:=mods:
b:=3*x^2+8*x+9 mod 11;

i vi cc php ton khc nh tm c chung ln nht, phn tch ra tha


s nguyn t (vi c s v a thc), cng c thc hin theo phng thc
thng thng ngoi tr mt khc bit nh l cc lnh trong php tnh modul
c bt u bng ch hoa.
V d:
> Gcd(a,b) mod 11;

Gii phng trnh vi modul


C php: msolve (eqns, vars, q) hoc msolve (eqns, q)

Trong :

eqns: Tp cc phng trnh.

HC VIN K THUT MT M

- 19 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

vars: Tp cc bin.

q: S nguyn.

Lnh msolve thc hin vic gii phng trnh trong Z theo m. Lnh
msolve gii cc phng trnh eqns trn cc s nguyn (theo mod q). N gii theo
mi n bt nh c trong cc phng trnh. Nu l nghim v nh, th h cc
nghim c biu din thng qua cc bin c tn c cho trong tp bin vars,
nu nh vars c b qua th c thay th bng cc tn mc nh ton cc
_Z1~, _Z2~, _Z3~,Nhng tn ny khng trng vi cc n v nh v c
php ly mi gi tr nguyn.
V d:
> restart:
> msolve({3*x-4*y=1, 7*x+y=2},19);

> msolve(8^i=2,17);

> msolve(3*x=6,12);

Nu phng trnh khng c nghim trn cc s nguyn (mod m) th Maple


s khng cho kt qu no.
V th
C php: plot(biu thc)
V d: v th hm s y2=x3+2x+5
> p1:= plot
> p2:= plot(-

x 2 + 2x + 5 ;

x 2 + 2x + 5

);

> plots[display](p1,p2);

HC VIN K THUT MT M

- 20 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 1.3: V th bng phn mm Maple


Maple l mt phn mn tnh ton kh phong ph, h tr hu ht cc lnh
vc ca ton hc. Do , ng dng Maple vo t hc , t nghin cu c th
kim tra c kin thc ton hc ca mnh v to ra nhng t duy mi v ton
hc

HC VIN K THUT MT M

- 21 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Chng II : H MT TRN NG CONG ELLIPTIC


2.1. ng cong Elliptic
2.1.1. M u v t bi ton
L thuyt ng cong Elliptic c xc nh trn trng s hu hn c
ng dng ng lu trong lnh vc mt m. L do c bn l ng cong Elliptic
trn trng hu hn cung cp cho chng ta mt c s xy dng thut ton m
khng th dng thut ton vt cn thm m ca nhm Abelian ngay c khi
nhm c cp khng ln lm.
ng cong elliptic l tp hp cc im c to (x, y) tho mn phng trnh
c dng sau y:
Y2 + a1xy + a3y = x3 + a2x2 + a4x + a6
Trn trng s phc C, phng trnh y ca ng cong Elliptic gi l
phng trnh Weiretrass c dng
Y2 + a1xy + a3y =x3 + a2x2 + a4x + ai (*)

vi ai C

Xt ng cong E trn trng nguyn t hu hn Fp (p nguyn t, p>3 ) vi


cng thc bin i nh sau:
XX

a2
b

, Y Y

a1x + a3
2

Khi phng trnh Weierstrass c dng:


X3 + aX + b
Vy trong trng Fp (*) tr thnh:
Y2 = X3 + aX + b

2.1.2. nh ngha
Gi s K l mt trng c c s khc 2 v khc 3 ta xt a thc
X3 + aX + b (vi a, b K)
Khi ng cong elliptic trn trng K: Y 2 = X3 + aX +b (1) l tp hp tt c
cc im (x, y) vi x, y K sao cho (1) khng c cc nghim bi tc l
4a3 + 27b2 0 mod p cng vi phn t O - im O ny c gi l im v hn.
HC VIN K THUT MT M

- 22 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Tc l ng cong Elliptic l tp hp S:
S = { (x, y) : y2 = x3 + ax + b, x, y K } {O} .
Vi a, b K cho trc sao cho 4a3 + 27b2 0 theo mod p.
Nu K l trng c s 2 th ta nh ngha:
S = { (x, y) : y-2 + y = x3 + ax +b} {O} (2)
Nu K l trng c s 3 th ta nh ngha:
S = { (x, y) : y-2 + y = x3 + ax +bx + c } {O} (3)

2.1.3. Tnh cht ca ng cong elliptic


Nu hai im P1(x1, y1 ) v P2(x2, y2) vi x1 x2 nm trn cng mt ng
cong elliptic E, th ng thng qua hai im P1 v P2 s ct mt im duy
nht P3(x3, y3) c th xc nh thng qua P1 v P2 nm trn ng cong E.
Tip tuyn ca ng cong ti im bt k P(x, y) trn ng cong E ct
ng cong elliptic E ti mt im duy nht nm trn ng E, im ny cng
c th xc nh c thng qua P.
Da vo nhng tnh cht ngi ta nghin cu v pht hin ra mt kh
nng mi cho k thut m ho ni chung v chng thc ni ring, k thut m
ho da trn ng cong elliptic.
Ngi ta ch ra rng cc h m ho bng ng cong elliptic c bo
mt cao hn nhiu so vi cc h m ho cng khai khc nh RSA, Elgamal
bo mt da trn kh phn tch s nguyn thnh cc tha s nguyn t
cng nh bi ton logarit ri rc, di kho gim i nhiu ln v do tc
thc hin cng s nhanh hn rt nhiu. Chnh v vy ngi ta p dng k
thut m ho bng ng cong elliptic vo nhiu lnh vc khc nhau. Cc k
thut m ho bng phng php ng cong elliptic c s dng hiu qu nht
trong vic xy dng cc gii php bo mt thng tin cho cc th thng
minh(Smart Card), cc thit b in t c kh nng tnh ton v khng gian b
nh hn ch.

HC VIN K THUT MT M

- 23 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

2.1.4. ng cong elliptic trn trng hu hn


Xt trng hu hn Fq ca q = pr phn t trn trng hu hn K. Gi s E l
ng cong elliptic c nh ngha trn Fq. Nu c s ca trng p=2 hoc
p=3 th E c cho bi phng trnh (2) v (3) .
D dng thy rng mt ng cong nh vy c th c nhiu nht l 2p+1
im trong Fq, ngha l im v cng vi 2q cp (x, y) trong x, y Fq tho
mn (1) (2) (3) (nu p=2 hoc 3), tc l vi mi q gi tr x c th c tn ti nhiu
nht 2 gi tr y tho mn (1). Nhng v ch c mt na cc phn ca Fq c cn
bc 2 ngi ta k vng (nu x 3 + ax + b l cc phn t ngu nhin ca trng )
ch c khong mt na s cc im ca F q. Chnh xc hn, gi s c trng
ton phng ca Fq (ly (0) = 0).
V d: Nu q = p l 1 s nguyn t th (x) =(x/p ) l k hiu Legedre Symbol).
Do trong tt c mi trng hp s cc nghim y Fq tho mn phng trnh
y2 = u l bng 1 + (u). V vy s cc nghim phng trnh 1 v im v hn
l:
1 + x
(1+ (x3 + ax + b)) = q + 1 + x
(1 + (x3 + ax + b))
Fq
Fq

(6)

Ta hy vng rng ( x3 + ax + b) bng +1 v -1.


Ly tng ngu nhin: tung ng xu q ln. Ngi ta thy rng x
(x3+ax+b) b
Fq
chn bi 2

chnh l nh l Hasses c pht trin nh sau:

nh l: Gi N l s cc im trn ng cong elliptic c nh ngha trn Fq.


Khi | N(q + 1) | 2 q

2.1.5. Cc php ton trn ng cong Elliptic


Gi s p l mt s nguyn t >3. Ngi ta chng minh c rng bng
php bin i tuyn tnh, ta c th quy phng trnh ng cong elliptic v dng
Weierstrass nh sau:
Y2 = X3 + aX + b
ng cong elliptic Y2 = X3 + aX + b trn Zp c nh ngha l tp hp tt c
cc im (x, y) ZpZp tho mn phng trnh:

HC VIN K THUT MT M

- 24 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Y2 = X3 + aX + b mod p
Cng vi mt phn t c bit k hiu l O l phn t trung ho. Tp hp
c k hiu l E.
2.1.5.1. Php cng
Gi s P= (x1, y1) v Q (x2, y2) l hai im ca E.
Nu x1= x2 v y1 = - y2 th ta nh ngha P + Q = O
Ngc li th : P + Q = (x3, y3) E trong
x3= 2 - x1 x2 ; y3 = (x1 x3 ) y1
Vi
= (y2 - y1) / (x2 x1), khi P # Q (nu x1 = x2 th l h s gc ng thng
qua P v Q (*)
(3x2 + a) / 2y1, , khi P = Q ( l o hm ca ng cong ti P)

(**)

Vy nu P Q tc l x1 x2
x3 = 2 x1 x2

(*)

y3 = (x1 x3) y1

Nu P =Q
X3 = 2 2x1

(**)

Y3 = (x1 x3) y1

HC VIN K THUT MT M

- 25 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 2.1: php cng trn ng cong Elliptic


Ch rng cc im (x3, y3), (x3, -y3) cng nm trn ng cong E v xt
v mt hnh hc, th cc im (x1, y1), (x2, y2), (x3, -y3) cng nm trn mt ng
thng.
Ngoi ra ta nh ngha thm: P + O = O + P = P.
Tnh cht:
D thy rng tp E vi php ton cng to thnh mt nhm Abelian:
Tnh ng: Nu P, Q

E th P + Q E.

Tnh kt hp: Nu P, Q, R

E th P + ( Q + R ) = R + ( Q + P ).

Tn ti phn t trung ho O: vi mi P

E th P + O = O + P = P (theo

nh ngha).
Tn ti phn t nghch o: vi mi P(x, y)

E th lun tn t phn t

-P(x, -y) E P + (-P) = O.


Tnh cht giao hon Nu P, Q

HC VIN K THUT MT M

E th P + Q = Q + P.
- 26 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

2.1.5.2. Php nhn


Php nhn mt s nguyn k vi mt im P thuc ng cong elliptic E
l im Q c xc nh bng cch cng k ln im P v d nhin Q E: k P
= P + P + P+ P ( k php cng im P).
V vy nu G l mt im thuc ng cong elliptic E th vi mi s
nguyn dng k lun d dng xc nh c im Q = k G
MNH : Cho E l mt ng cong elliptic xc nh bi phng trnh
y2 = x3 + Ax + B. Gi P1(x1,y1) v P2(x2,y2) l cc im trn E vi P1,P2 # 0. Khi
P1 + P2 = P3 = (x3,y3) vi x3,y3 c tnh nh sau :
1) (Cng thc cng im) Nu x1 # x2 th
x3 = 2 x1 x2
y3 = (x1 - x3) y1
Vi = (y2-y1)/(x2-x1)
2) Nu x1 = x2 nhng y1 # y2, th P1 + P2 = 0
3) (Cng thc nhn i im) Nu P1 = P2 v y1 # 0, th
x3 = 2 2x1
y3 = (x1 - x3) y1
Vi = (3x12 + A)/2y1
4) Nu P1 = P2 v y1 = 0, P1 + P2 = 0

2.1.6. m s im trn ng cong elliptic trn trng Fq


Vic xy dng cc h mt m trn ng cong elliptic bao gm vic la
chn ng cong E thch hp v mt im G trn E gi l im c s. Xt
trng K l Fq . c lng th s im ca E (k hiu l #E) l p

nh l Hasse

N l s im ca E trn trng Fq (trng hu hn q phn t). Khi :


|N (q +1)| 2

T nh l Hasse suy ra #E(Fq) = q +1 t trong |t| 2

HC VIN K THUT MT M

- 27 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

nh ngha

Bc ca im G thuc E l s k dng b nht sao cho kG = O; Khi


k = #E(Fq) th G l im c s ca E.
Phng php chn ng cong Elliptic ph hp v im c s :
Vic chn mt ng cong elliptic th no nh hng n tc , tnh hiu qu,
di kho v tnh an ton ca h mt m trn ng cong ny. D E, K v
im c s B E c nh v cng khai nhng vic chn cc tham s ny ph
hp l bc quan trng nht.

2.1.7. Trng K
Trc ht chng ta xem xt s nh hng ca trng K n cu trc
nhm ca E(K) v cc h mt m trn E(K).
Mt ng cong elliptic trn mt trng hu hn to thnh nhm Abelian
c s dng trong mt m hc. Mt v d l vic chn trng F 2T gip thc
hin cc php tnh nhanh v d dng trin khai c trn cc thit b cng. Cc
ng cong elliptic trn trng s nguyn t Fp v trn trng Fqn c cc tnh
cht gip chng c th thc thi c trn cc thit b m vn m bo an ton.
Mt ch na l vic tnh s im trn #E(K). Vi #E(K) thch hp c
th l iu kin cho php thc hin tn cng Pohlig Hellman. C th dng
thut ton n nh thi gian a thc Shoof tnh trn trng hu hn F q vi
c s khc 2 hoc 3. Tc ca thut ton Shoof ph thuc vo kch thc v
c s ca trng K. V d vi r nh, tnh # E(F2T) c th nhanh hn mt cht so
vi tnh # E(Fp), trong p ln hn ng k so vi 2r, nhng khi r tng th tnh
# E(F2T) mt nhiu thi gian hn tnh # E(Fp).

2.1.8. Dng ca ng cong elliptic


Trc ht, chng ta cn xem cc dng ng cong elliptic. Trn trng F q c
hai lp ng cong elliptic c dng trong cc h m ho l supersinggular.
Xt Fq c c s l 2 (g = 2m). Khi :
Tp tt c cc cp nghim (x, y) ca phng trnh y 2 + ax = x3 + bx + c vi

a, b, c Fq v a = 0 (mod q) cng vi im trung ho O to thnh mt


ng cong elliptic dng supersingular.

HC VIN K THUT MT M

- 28 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Tp tt c cc cp nghim (x, y) ca phng trnh y 2 + ax = x3 + bx + c vi

a, b, c Fq v b = 0 (mod q) cng vi im trung ho O to thnh mt


ng cong elliptic dng non-supersingular.

Supersingular Curve: Menezes v Vanstone tm ra cc u im ca cc


ng cong elliptic supersingular cho cc h mt m, c bit trn trng F 2T.
Nonsupersingular Curve: u im ca cc ng cong nonsupersingular l n
cung cp bo mt tng ng nh cc ng cong supersingular nhng vi
cc trng nh hn. di kho ngn gip chng c th trin khai trn cc thit
b nh smart card. Hn na, cc ng cong nonsupersingular c th chng li
tn cng MOV

2.1.9. Phng php la chn


C nhiu cch chn cc ng cong elliptic v im c s B thuc ng
cong . Mt cch chn in hnh l:
Phng php- Phng php chn ngu nhin Kobliz:
1. Chn ngu nhin 3 phn t t Fq l x, y, a
2. Tnh b = y2 (x3 + ax)
3. Kim tra 4a3 + 27b2 0 m bo phng trnh x 3+ ax + b =0 khng c
nghim kp.
4. Nu iu kin trn khng tho mn quay li bc 1.
5. Cn li, t P = (x, y) v ng cong y2 = x3+ ax + b l ng cong cn chn.
Tuy nhin phng php ny c th to ra cc ng cong khng m bo
mt s yu cu nh trc. Mt k thut ci tin l xy dng cc ng cong vi
cc tnh cht cho trc. Cng c th chn nhng ng cong to cc h m
ho khng ph thuc vo bi ton EDLP, chng hn cc h elliptic da trn
RSA.
Cc h mt m elliptic lm vic vi cc nhm con cylic ca E vi phn t
sinh l im P. V vy, vic la chn P ph hp l rt quan trng. m bo
vic chn im thch hp ta hy chn ng cong elliptic ca chng ta v
trng hu hn sao cho s N cc im ca ng cong l mt s nguyn t. Nu
chn c nh vy th mi im B 0 u l phn t sinh.

HC VIN K THUT MT M

- 29 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Tm li: Mt ng cong elliptic l mt vt th vi mt tnh cht kp:

Mt mt, n l mt ng cong, mt vt th hnh hc.

Mt khc, chng ta c th "thm vo" cc im trn ng cong nh th


nu chng l nhng con s, do , n l mt i tng i s.
Ngoi ra theo lut trn mt ng cong elliptic c th c m t:

V mt hnh hc bng cch s dng nt giao nhau ca ng cong

V mt i s bng cch s dng cc phng trnh a thc

V mt phn tch bng cch s dng cc chc nng vi cc bin s phc

tp

Hnh 2.2: ng cong Elliptic


ng cong elliptic xut hin trong cc lnh vc a dng ca ton hc, t
l thuyt s n phn tch phc tp, v t mt m hc n vt l ton hc.
Mt ng cong Elliptic l mt ng cong to ra bi mt phng trnh dng
mu E : y2 = x3 + Ax + B

2.1.10. Cc ng cong elliptic


D thy rng cc ng cong elliptic c miu t trong nhiu loi bi ton
khc nhau. Ta c th a ra mt v d l vic chng minh l thuyt Ferma
ca An-drew s dng cc ng cong elliptic. Cc ng cong elliptic c
mt vai tr quan trng trong vic tm cc tha s nguyn, kim tra tnh nguyn
thy, v gn y nht chng c s dng trong h m ha cng khai. tng

HC VIN K THUT MT M

- 30 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

s dng cc ng cong elliptic trong m ha cng khai do N. Koblitz v V.


Miller xut u tin nm 1985.
Ta nh ngha mt ng cong elliptic nh sau: l mt ng cong trn
trng F - mt trng khng c c tnh 2 hoc 3, v gi s a, b F x3+ax+b
khng c cc nghim bi iu ny cng tng ng vi iu kin 4a 3+27b2 #
0
ng thi, mi cp im (x, y) F F u tha mn phng trnh sau:
y2 = x3+ax+b mod p (1)
cng vi mt phn t c bit O c gi l im v cc.
Ch rng, mt ng cong elliptic nu kt hp vi mt php ton c
nh ngha c bit s tr thnh mt nhm Abel. Ban u, c th quan st php
ton ny mt cch tt nht v phng din hnh hc khi p dng n vi ng
cong elliptic trn tp cc s thc.
V d ta c th quan st th sau vi cc cp c sp (x, y) tho mn
phng trnh y2 = x3 6x trn tp s thc. Ch rng th ny i xng qua
trc x.

Hnh 2.3: th phng trnh y2 = x3 6x


By gi ta s xy dng php ton khi p dng vi nhng im thuc
th trn v im v cc O ta s thu c ng cong elliptic E c cu trc
ca mt nhm Abel. Php ton l mt php cng vi cc c im sau:
1. im v cc l phn t trung ho ca nhm. V vy ta nh ngha:

HC VIN K THUT MT M

- 31 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

P+ O = O +P = P vi mi im P E
2. Vi mi im P = (x, y) trong th y 2 = x3 6x, chng ta nh ngha
phn t ph nh (hay phn t nghch o) ca P l P = (x, -y). iu
ny c minh ho hnh sau:

Hnh 2.4 : Phn t nghch o ca P


3. Gi s P v Q l hai im trong th y2 = x3 6x vi P # Q, v ng
ni PQ khng phi l ng tip tuyn ca th ti P hoc Q. Tuy nhin, s
kh khn ch ra rng PQ ct th ti mt im duy nht R. Ta nh ngha
P+Q = -R. Minh ho trn hnh sau:

Hnh 2.5: PQ ct th ti mt im duy nht R


3. Gi s rng P v Q nm trn th y2 = x3 6x vi P # Q, v PQ l
tip tuyn ca th ti im P. Ta nh ngha P+Q = - P.
HC VIN K THUT MT M

- 32 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 2.6: Trng hp PQ l tip tuyn ca th ti P


4. Gi s P nm trn th y2 = x3 6x vi x # 0 v P khng phi l im
trong phn cong bn phi ca th. Tuy nhin s kh khn ch ra
ng tip tuyn ca th ti P ct th ti mt im R duy nht. Ta
nh ngha P + P = -R

Hnh 2.7: th minh ha P+P=-R


5. Gi s im P nm trn th y2 = x3 6x v P l mt im trong phn
cong bn phi ca th. Ta nh ngha P + P = - P.

HC VIN K THUT MT M

- 33 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hnh 2.8: th minh ha P+P=-P


Php ton ny r rng l c tnh giao hon. V ta gi s rng n c tnh kt
hp.

2.2. H mt trn ng cong elliptic


Hin nay, h mt RSA l gii thut kho cng khai c s dng nhiu
nht, nhng h mt da trn ng cong Elliptic (ECC) c th thay th cho RSA
bi mc an ton v tc x l cao hn. u im ca ECC l h mt m ny s
dng kho c di nh hn so vi RSA. T lm tng tc x l mt cch
ng k, do s php ton dng m ho v gii m t hn v yu cu cc thit
b c kh nng tnh ton thp hn, nn gip tng tc v lm gim nng lng
cn s dng trong qu trnh m ho v gii m. Vi cng mt di kho th
ECC c nhiu u im hn so vi cc gii thut khc, nn trong mt vi nm ti
c th ECC s l gii thut trao i kho cng khai c s dng ph bin nht.

2.2.1. M u v t bi ton
Nm 1976, Diffie v Hellman gii thiu h m ho kho cng khai u
tin m s an ton ca n da trn kh ca bi ton DLP. Nm 1985, Lenstra
thnh cng trong vic s dng cc ng cong elliptic cho cc s nguyn. Kt
qu ny mang li kh nng p dng cc ng cong elliptic trong cc h mt m
kho cng khai. Miller v Kobliz gii thiu nhng h mt m elliptic. H khng
pht minh ra cc thut ton mi nhng c ng gp ln l ch ra vic p dng

HC VIN K THUT MT M

- 34 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

elliptic cho cc h kho cng khai. Miller xut mt giao thc trao i kho
ta nh Diffie Hellman vo nm 1985 (nhanh hn 20% so vi giao thc Diffie
- Hellman). Kobliz a ra thut ton m ho tng t nh h Elgamal v
Massey Omura vo nm 1987. S u tin tng t nh s RSA v 3
hm mt chiu (c ca sp) mi da trn ng cong Elliptic c a ra nm
1991 bi Koyama, Maurer, Okamoto v Vanstone (thut ton ny tc thc
hin nhanh gp 6 ln so vi RSA). Cng thi im , Kaliski chng minh rng
cc hm ca sp mt chiu i hi thi gian l hm m thc hin php tnh
nghch o. Menezes, Okamoto v Vanstone a ra mt phng php tn
cng MOV gii bi ton EDLP trong mt s trng hp ring. Ngay sau ,
Miyaji xut mt ng dng thc t ca cc ng cong elliptic cho cc s
ch k v nh danh trn Smart Card. Nm 1993, Demytko a ra mt thut
ton mi tng t nh RSA cho cc ng cong Elliptic trn vnh Z vt qua
cc hn ch ca cc phin bn trc, v Menezes v Vanstone a ra phng
php thc thi trn cc thit b cng c th ci thin cc tnh ton trn elliptic trn
mt trng hu hn.
Nhng nm 1997, 1998 vic tm ra cc h mt m trn cc ng cong
Elliptic ngy cng thu ht nhiu s ch v mt s thut ton c a
thnh cc chun

2.2.2. Nhng bn r ln ng cong


Nhng mt bn r ln E l biu din li bn r nh l cc im trn E
m nh chng ta c th thc hin c cc tnh ton trn E. C mt s
phng php thc hin vic ny. Trong c 2 phng php chnh l
imbedding v mask.
Mun m ho bn r m trn mt ng cong elliptic cho trc c nh
ngha trn trng Fq trc ht ta phi tm cch nhng n ln E. Gi s m c
coi l mt s nguyn dng no . Bn r m c ng vi im Pm trn E.
Trc khi thc hin nhng im m ln E ta cn lu :
Sau khi nhn c bn m, ngi ta nhn ch thc phi c th gii c
bn m mt cch d dng.

HC VIN K THUT MT M

- 35 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Khng c mt thut ton tt nh vi thi gian a thc (trong log q)


bit c mt s ln cc im trn ng cong elliptic tu trn E c
trng Fq. Tuy nhin li tn ti mt thut ton xc sut m i vi n xc
sut sai l rt b.
Vic to ra cc im ngu nhin ca E l khng m ho mt s
lng ln tu cc bn r m. Trong lc bn r m ta cn nhng li c
th rt ln.
Do , mt phng php xc sut c th cho php nhng (imbed) cc bn r
m c coi l mt im trn ng cong elliptic E c nh ngha trn trng
Fq vi q = pn c gi thit l ln.
Gi k l mt s nguyn dng ln sao cho tho mn xc sut sai xp x 1/2k.
Gi s khi chng ta mun nhng mt bn r m, gi s k l mt s no (k =20,
30 hoc k = 50 l ). Vi m k mt s nguyn sao cho 0 m M (M l s
nguyn dng ln hn mi khi r m cn nhng )
Trng hu hn chn sao cho q > Mk .Biu din cc s nguyn t 1 n Mk
di dng:
{mk + j}

1 j k

Ta lp mt nh x 1- 1 tng ng gia cc s nguyn trn vi tp hp cc phn


t ca Fp. V d c th vit mt s nguyn nh l mt s nguyn c s p c
di r v coi r nh l mt phn t ca Z/pZ , l h s ca mt a thc cp r 1
tng ng vi mt phn t ca Fq. Ngha l s nguyn (ar-1, ar-2,.a1, a0 )p
t tng ng vi a thc

m n c xem nh modulo a thc bt

kh quy cp r c nh trn Fp, cho mt phn t ca Fq. Do cho trc m vi j =


1, 2,3..k s nhn c mt phn t ca Fq tng ng vi mk + j
i vi s x ta tnh: Y 2 = f(x) = x3 + ax + b v tm cn bc 2 ca gi tr
f(x) Nu tm c mt s y sao cho y 2 = f(x) th ly Pm = (x, y). Nu kt qu
f(x) l khng bnh phng th tng x thm 1 v tip tc tnh ton t u cho n
khi tm c mt s x sao cho f(x) l mt bnh phng cho n khi j nhn gi tr
ln k

HC VIN K THUT MT M

- 36 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

2.2.3. Logarit ri rc trn ng cong Elliptic( Discrete logarithm


on Elliptic)
nh ngha: Nu E l ng cong Elliptic trn trng F q v B l mt im
trn E. Khi bi ton logarit ri rc trn E (theo c s B) l mt bi ton, cho
trc mt im P E, tm s nguyn x Z sao cho xB = P (nu s x nh vy
tn ti)
Hu nh bi ton tnh logarit ri rc trn ng cong elliptic s kh hn
bi ton logarit ri rc trn trng hu hn. Cc k thut mnh nht c
pht trin s dng trong cc trng hu hn dng nh khng c gi tr i
vi ng cong elliptic. Kt qu ny c bit ng trong trng hp trng c
c s 2. Nh c chng t bi Odlzko rng c mt s phng php c
bit gii bi ton logarit ri rc trong G*2r vi chng d dng tnh c logarit
ri rc v do ph v c h mt m, tr ra trng hp s r c chon
ln. Dng nh cc h thng tng t s dng ng cong elliptic c nh
ngha trn trng F2r s m bo an ton k c trong trng hp gi tr r kh b.

2.2.4. Vn trao i kho Diffie- Hellman(D- H) trn Elliptic


Gi s A v B mun thng nht mt kho chung lin lc c bo mt
gia hai ngi bng mt m truyn thng. Trc ht hai bn thng nht cng
khai chn mt trng hu hn Fq v mt ng cong elliptic trn n kho chung
ca h s c xy dng t mt im ngu nhin P ca ng cong va cho, h
lm cch ny bng cch chn to x ca P l ngu nhin trong F q. Sau n
c chuyn i thnh s nguyn c s P c r s( q = pr) c coi l kho i
vi h m truyn thng ca h. C th nh sau:
Trc ht A, B chn cng khai mt im B E. B ng vai tr nh l
phn t sinh g trong trng hu hn ca h thng Diifie-Hellman. Chng ta
mun c mt nhm con c sinh ra bi B l ln, tt nht l c cng cp nh E.
By gi gi s B l cng khai v c nh trn E m cp ca n l ln (chng
hn hoc l N hoc l mt nhn t ln ca N).
to ra kho, trc ht A chn ngu nhin mt s nguyn a c cp q
(n xp x nh s N). S a c gi b mt. Trn c s , A tnh aB E, aB l
cng khai. n lt B cng lm nh vy, anh ta chn ngu nhin s b v tnh

HC VIN K THUT MT M

- 37 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

bB E, bB cng c cng khai. Kho b mt m ch c hai ngi A, B mi c


l: P =abB E. Ngi th ba bt k khng th suy ra abB t aB v bB nu
khng gii bi ton logarit ri rc trn E ca trng Fpr

2.2.5. H mt Elgamal trn ng cong Elliptic


H mt Elgamal lm vic vi nhm Cyclic hu hn. Nm 1978, Kobliz
a mt h trn ECC da trn h Elgamal. xy dng h m ho da trn
ng cong elliptic ta chn ng cong E(a,b) v mt im G trn ng cong
lm im c s. Mi ngi dng A mt kho b mt nA l mt s nguyn, v
sinh kho cng khai PA = nA * G.
Khi h m ho ng cong elliptic c xy dng tng t h m ho
ElGamal, trong thut ton m ho v gii m c xc nh nh sau:

Thut ton m ho

Gi s ngi dng A mun gi thng ip cn m ho Pm ti ngi dng B,


chn mt s ngu nhin k v gi thng ip m ho Cm c tnh nh sau:
Cm = {k * G, Pm + k * PB }
(PB l kho cng khai ca B)

Thut ton gii m

gii m thng ip Cm = { k * G, Pm + k * PB }, ngi dng B thc hin tnh


nh sau:
Pm + k * PB nB * k * G = Pm + k * PB k * nB * G = Pm + k * PB - k * PB = Pm
Ch c B mi c th gii m v B c n B (l kho b mt). Ch rng y P m l
mt im thuc ng cong elliptic, qu trnh m ho gii m c thc hin
trn cc im thuc ng cong E. Trong thc t, s dng c ngi ta phi
tng ng mt s vi mt im thuc ng cong elliptic. Khi mi thng
ip cn m ho s tng ng vi mt dy s. Mi s s tng ng vi mt
im trn ng cong elliptic.
Tnh bo mt : Nu k tn cng gia ng, Oscar, c th gii bi ton
EDLP th anh ta c th bit c kho b mt t n B ca B t cc thng tin cng

HC VIN K THUT MT M

- 38 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

khai G v nBG, v c th gii m thng ip m A gi. Nh vy an ton (bo


mt) ca thut ton trn da vo kh ca bi ton EDLP.

2.2.6. H mt da trn ng cong elliptic


ECC thc hin vic m ho v gii m da trn to ca cc im da
trn ng cong Elliptic. Xt ng thc Q=kP, vi Q,P l cc im nm trn
ng cong Elliptic. C th kh d dng tnh Q nu bit k v P, nhng rt kh
xc nh k nu bit Q v P. (Php nhn c xc nh bng cch cng lin tip
cng im P. V d: 4P = P+P+P+P ; 9P = 2(2(2P)) + P). H mt da trn ng
cong Elliptic da trn kh khi bit c im P v Q v phi tm ra gi tr k.
Bn cnh cng thc ca ng cong Elliptic, th mt thng s quan trng khc
ca ng cong Elliptic l im G (cn gi l im c s), im G i vi mi
ng cong elliptic l c nh, trong h mt m ECC th mt s nguyn ln k
ng vai tr nh mt kho ring, trong khi kt qu ca php nhn gia k vi
im G c coi nh l kho cng khai tng ng.
Vic trao i kho theo Diffie Hellman da trn ng cong Elliptic
(ECDH Elliptic Curve Diffie Hellman) v thut ton ch k s da trn ng
cong Elliptic (ECDSA - Elliptic Curve Digital Signature Algorithm) l nhng
ng dng c th ca ng cong Elliptic trong lnh vc mt m. Trong trao i
kho ECDH, hai bn A v B s dng cc tham s ng cong Elliptic ging
nhau. Mi bn to ra kho ring kA v kB v to ra cc kho cng khai QA=kAG
v QB=kBG. hai bn trao i kho cng khai v nhn kho ring ca n vi kho
cng khai ca bn kia, iu ny dn n thng tin mt c chia s
kAQB = kBQA = kAkBG. Cn ECDSA hon ton tng t nh DSA.

2.2.7. Giao thc SSL (Secure Sockets Layer)


Giao thc SSL (Secure Sockets Layer) l giao thc an ton c s dng
rng ri nht trn Internet hin nay. SSL l giao thc dng thit lp bo mt
gia server v client. SSL m ho tt c d liu truyn qua li gia ch v khch
mc IP sockets.
SSL thc hin m ho, xc nh quyn v bo v thng tin ton vn khi
trao i d liu trong mt mi trng mng vn c nhiu ngi dng v khng
an ton.

HC VIN K THUT MT M

- 39 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hai thnh phn chnh ca ECC l giao thc bt tay SSLHP (SSL
Handshake protocol) v giao thc lp ghi SSLRP (SSL Record Layer protocol).
SSLHP cho php server v client thc hin tho thun v b m s dng, xc
nhn ln nhau v thit lp mt kho chnh chia s (thng s dng cc thut
ton m ho cng khai). SSLRP c xut pht t kho chnh chia s v s
dng chng cng vi cc thut ton cng khai m ho cc d liu.

2.2.7.1. Qu trnh bt tay y da vo m ho RSA

Hnh 2.9 : Qu trnh bt tay da vo RSA


Qu trnh bt tay da vo RSA ca n c m t qua Hnh 2.3
u tin, client gi mt bn tin ngu nhin ti server tho thun b
mt m ho thng qua vic trao i cc bn tin ClientHello v ServerHello.Sau
, server s gi li kho cng khai RSA cho client trong bn tin
ServerCertificate. Do client cng c kho cng khai ca server; n s kim tra
kho cng khai ny. Nu ph hp, client s dng chnh kho cng khai ny

HC VIN K THUT MT M

- 40 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

m ho mt s ngu nhin 48 byte (cn c gi l premaster). S sau khi c


m ho s c gi km bn tin ClientKeyExchange ti server. Server s dng
kho mt RSA gii m bn tin premaster ny. C hai pha s s dng bn tin
premaster to ra bn tin master ng thi vi vic trao i bn tin lc u
trc s c dng trao i kho m ho; vector khi u v kho MAC
(Message Authentication Code) nhm phc v cho m ho v chng thc bi
SSLRP.

2.2.7.2. Qu trnh bt tay y da vo m ho ECC

Hnh 2.10: Qu trnh bt tay da vo EEC


Qu trnh bt tay da vo ECC c th hin thng qua Hnh 2.
Thng qua hai bn tin u (c x l ging nh RSA); client v server
tho thun b kho mt ECC. Bn tin ServerCertificate cha kho ECDH cng
khai ca server c xc nhn bi mt nh cp quyn ECDSA. Sau khi
chng thc ch k ECDSA, client s chuyn kho chung ECDH ca n ti
server thng qua bn tin ClientKeyExchange. Tip theo, mi bn li s dng

HC VIN K THUT MT M

- 41 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

kho ring ECDH ca chnh n v kho chung ca bn kia thc hin m ho


v gii m ECDH v t n vic chia s mt kho mt premaster secret. Vic
k tha kho mt chnh v kho i xng khng thay i so vi RSA.

2.2.7.3. M ha cng khai trong SSL trong hai ch


Hot ng m ho cng khai trong SSL c thc hin bi mt client v
server trong cc ch khc nhau ca qu trnh bt tay SSL nh sau:
Bt tay da vo RSA: client thc hin hai hot ng m ho cng khai:
mt kim chng vic chng thc ca server v mt m ho cc kho mt
premaster vi kho cng khai ca server. Server thc hin mt hot ng vi
kho mt RSA gii m bn tin ClientKeyExchange v khi phc li
premaster.
Bt tay da vo ECDH-ECDSA: client thc hin chng thc ECDSA
kim chng li chng thc ca server v sau thc hin ECDH bng vic
s dng kho ring ECDH v kho chung ECDH ca server tnh ra
premaster chia s. Tt c cc server cn thc hin cng mt hot ng ECDH
thu c m mt tng ng.

2.2.7.4. So snh
tay

thc hin vic so snh vic s dng RSA v ECC trong qu trnh bt
ca SSL, ngi ta s dng hai b m khc nhau

TLS_RSA_WITH_RC4_128_SHA v
TLS_ECDH_ECDSA_WITH_RC4_128_SHA. Vi mi b m ngi ta s
dng ba cp an ninh khc nhau. i vi RSA ngi ta s dng kho c
di 1024 bit, 1536 bit v 1048 bit, Vi ECC s dng kho c di 160 bit, 192
bit v 224 bit. Ngi ta s dng mt cng c thc hin nhiu phin giao dch
ng thi mt lc nhm o hai thng s trn mt server. V kt qu c th
hin bng 1.

HC VIN K THUT MT M

- 42 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Bng 1: So snh s dng RSA v ECC trong qu trnh bt tay ca SSL

Thi gian(ms)

ECC160

RSA1024

ECC192

RSA1536

ECC224

RSA2048

3.69

8.75

3.87

27.47

5.12

56.18

114.3

258.1

36.4

195.5

17.8

S lnh thc hin / s 271.3


So snh thi gian
2.4:1
thc hin

7.1:1

11:1

So snh di kho 1:6.4

1:8

1:9.1

Vic s dng ECC mang li nhng hiu qu sau: tng tc , yu cu kh


nng tnh ton thp hn, tit kim di thng ng truyn, tng hiu qu lu tr,
gim di cc chng nhnCc u im trn ca h mt ECC c th pht huy
hiu qu trong cc ng dng m ng truyn, kh nng tnh ton, tc v lu
tr b hn ch. V cc ng dng c th hin rt hiu qu trong thng mi
in t, web servers

HC VIN K THUT MT M

- 43 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Chng III. MT VI NG DNG H MT TRN NG


CONG ELLIPTIC
3.1. Lc ch k s trn ng cong elliptic (Elliptic Curve
Signature Algorithm ) - ECDSA
3.1.1. Lc k ECDSA
S ch k ECDSA c xy dng tng t nh s ch k ElGamal
tuy nhin cc thut ton k v thut ton kim th c xy dng da trn
ng cong Elliptic. thit lp s ch k ECDSA, cn xc nh cc tham
s: la chn ng cong E trn trng hu hn Fq vi c s p sao cho ph hp
v cng khai cho tt c mi ngi, im c s G E(Fq).
Mt s khuyn ngh khi la chn cc tham s:
Kch thch q ca trng, hoc q = p (p>2) hoc q= 2m.
Hai phn t a, b thuc Fq xc nh phng trnh ng cong Elliptic: y 2
= x3 + ax + b (p>2) hoc y2 +xy = x3 +ax2 + b (p = 2).
Hai phn t xG v yG thuc Fq xc nh im c s G = (xG, yG).

Bc n ca im G vi n> 2160 v n > 4

Sinh kho
Chn s ngu nhin d trong khong [2, n-1 ] lm kho b mt
Tnh Q = dG lm kho cng khai.
Thut ton k trn bn r m
Ngi dng A k ln thng ip m theo cc bc sau:
1. Chn mt s ngu nhin k, 2 k n 1
2. Tnh kG = (x1, y1).
3. Tnh r = x1 mod n. Nu r =0, quay li bc 1.
4. Tnh k-1 mod n.
5. Tnh s = k-1 (m +dr) mod n. Nu s = 0, quay li bc 1.

HC VIN K THUT MT M

- 44 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

6. Ch k trn thng ip m l ( r, s ).
Thut ton kim tra ch k
Ngi dng B kim tra ch k (r, s ) trn thng ip m theo cc bc sau:
1. Kim tra r v s c l cc s t nhin trong khong [ 2, n-1 ] khng.
2. Tnh w = s-1 mod n.
3. Tnh u1 = mw mod n v u2 = rw mod n.
4. Tnh X = u1G + u2Q = (xx, yy).
5. Nu X = O th ph nhn ch k. Ngc li tnh v = xx mod n.
6. Ch k ch c chp nhn nu v = r.

3.1.2. an ton ca s ch k ECDSA


Cc h m ho ng cong elliptic u tin c pht minh nm 1985 bi
Neal Kobliz v Victor Miller. Tuy nhin s ch k ECDSA do Scott
Vanstone a ra nm 1992, c chp nhn l chun ISO vo nm 1998, l
chun ANSI vo nm 1999, v l chun IEEE vo nm 2000.
an ton ca s k ECDSA da trn bi ton logarit ri rc ng
cong elliptic. Cho n nay an ton ca cc h m ho ng cong elliptic
c ch ra l rt an ton v hiu qu. i vi bi ton logarit ri rc ng
cong elliptic th c nhiu thut ton gii n. Tuy nhin cha c thut ton no c
phc tp tnh ton trong thi gian a thc.
Thut ton gii bi ton logarit ri rc ng cong elliptic tt nht hin
nay l thut ton Pollards Rho, phin bn thit k theo hng tnh ton song
song. Theo vi nhm ng cong elliptic cp n v c r my tnh cng tnh
ton th phi mt .n /2.r php ton.
Mt khc ngi ta phn tch v ch ra rng vi h m ho da trn bi
ton logarit ri rc ng cong elliptic c cng bo mt vi h m ho da
trn bi ton phn tch s nguyn thnh cc tha s nguyn t (nh RSA) th
di kho ca h m ho da trn ng cong elliptic c chiu di kho ngn hn
rt nhiu . Chng hn vi h m ho RSA c chiu di kho l 1024 bit th h
m ho bng ng cong elliptic ch cn di kho 163 bit s c bo mt

HC VIN K THUT MT M

- 45 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

tng ng. V do vic tnh ton cc tin trnh i vi cc h m ho ng


cong elliptic l nhanh hn rt nhiu.

3.2. Mt s chun s dng h mt ECC


Vic a ra mt s chun chung cho cc h thng mt m, cc giao thc, cc
giao din l mt vic quan trng. Vic chun ho mng li 3 li ch chnh:
Cho php kt hp phn cng v phn mm ca nhiu nh cung cp khc
nhau.
a ra chun cho vic m bo an ton cc h thng di kha cnh mt
m hc.
Cho php c thit k chun cho cc mi trng ng dng khc nhau.
Cc ng cong Elliptic c xem xt v nghin cu k lng bi cc nh
ton hc trong hn 10 nm v c kho st k bi cc t chc chun ho t
nm 1995. iu ny m bo rng tnh tin cy ca n c kim chng. N
lc c th chun ho cc h mt m kho cng khai c bt u t nhiu
nm trc bi Vin nghin cu in v in t IEEE(Institute of the Electrical
and Electronics Engineers) vi phin bn P1363. N a ra nh dng v th tc
cho 3 h thng m ho kho cng khai khc nhau bao gm xc thc, ton vn v
tin cy. ISO/IEC SC27 cng bt u xem xt cc chun cho ECC. Trong ANSI
X9.25 c s ch k ECC l ECDSA( Elliptic Curve Digital Signature
Algorithm) v trong ANSI X9.63 c cc chun v tho thun v truyn kho.
ECC cng c h tr trong cc chun mi ca Internet v bo mt cho tng
IP(IPSEC, ISAKMP, Oakley). Trong cc chun lin quan n cng nghip c
SET(Secure Electronic Transaction).
ANSI X9. ECC c th nghim trong 2 lnh vc bi ANSI ASC
X9(dch v ti chnh). ANSI X9.62, ch k s ECDSA, ANSI X9.63, giao thc
tho thun kho ECC ECKA(Elliptic Curve Key Agrement) v giao thc giao
vn ECTP (Transport Protocols). ANSI TG-17 (Technical Guideline on
Mathematical Background for Elliptic Curve Cryptosystems) cha cc thng tin
m rng v mt ton hc cho ECC, bao gm cc thut ton m s cc im
trn ng cong Elliptic.

HC VIN K THUT MT M

- 46 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

ATM Forum. Cung cp c ch bo mt cho cc mng ATM (ch


truyn thng khng ng b Asynchronous Transfer Mode). Cc dch v bo
mt bao gm tnh tin cy, chnh xc thc, ton vn d liu, iu khin truy cp.
ECC l mt trong cc h thng c h tr.
Certicom. Certicom xut bn cc ti liu v ECC. ECC trong X.509
m t c ch s dng cc kho ECC trong X.509 framework. V d n nh
ngha cc nh dng chng ch v nh dng danh sch thu hi chng ch. Cc
chun cho m ho ECC(SEC 1 Standards for Efficient Cryptography): ECC, cc
s m ho kho cng khai trn ECC. c bit l cc s ch k in t, cc
s m ho v cc s tho thun kha. SEC.2 bao gm cc tham s c
khuyn ngh cho m ho ECC, danh sch cc tham s ECC c yu cu tng
ng vi cc cp bo mt khc nhau.
FSTC. FSTC (Financial Services Technology Consortium) lin quan n
cc h thng thanh ton in t v cc dch v ti chnh khc. Cc thanh ton
in t c th s dng rt nhiu thit b khc nhau nh my tnh c nhn, in
thoi mn hnh, my ATM, hoc cc h thng kim ton. ECC c s dng
m ho Email truyn gi cc sec in t.
IEEE P1363. ECC c a ra trong chun phc tho IEEE
P1363(c t cc chun cho mt m kho cng khai), bao gm m ho, ch k
s, cc c ch tho thun kho. Cc ng cong Elliptic c th nh ngha theo
modulo p hoc trn trng F2m, trng c 2m phn t.
IETF.(Internet Engineering Task Force). M t giao thc tho thun kho
l bin th ca giao thc tho thun kho Diffie-Hellmal. N cho php s dng
cc nhm khc nhau, bao gm c nhm ng cong Elliptic. Cc nhm trn
ng cong Elliptic c khuyn ngh dng l cc trng F2m v F2210.
ISO/IEC. Bn phc tho ISO/IEC 14888, cc c ch da trn chng ch,
cc thut ton k tng t nh DSA.
NIST. (Vin nghin cu chun quc t- National Institute of Standards).
NIST cng c cc c t cho ECC trong MISPC.
SET. Chun SET(Secure Electronic Transactions) c pht trin cho cc
giao dch th tn dng trn Internet. ECC c xem xt nh mt chun SET mi

HC VIN K THUT MT M

- 47 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

cho thng mi in t trn Internet. Nhng li ch m ECC mang li cho cc


ng dng quan trng ng c nh gi k lng.
WAP. Wireless Application Protocol, cung cp c ch truy cp Internet
an ton cho cc thit b khng dy nh in thoi, thit b khng dy u cui.
Cc c t gii thiu trong kin trc mng cho php cc ng dng s dng cc
la chn giao thc truyn khc nhau v gia cc thit b khc nhau. ECC cng
c h tr trong tng bo mt WAP WTLS(Wireless Transport Layer
Security).

HC VIN K THUT MT M

- 48 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Chng IV : DEMO TRN MAPLE


4.1. V d 1: M ha v gii m Elgamal trn Elliptic
4.1.1. M t
Cho ng cong Elliptic E: y2 x3 +ax + b mod p. vi a=1, b=6, p=11
phn t sinh =(2,7). Kha b mt ca Allice l ka=5, kha cng khai ca Alice
l = 5 =5(2,7)=(3, 6). Alice mun gi thng bo x=(10,9) n Bob. Alice s
phi m ha thng bo trn ri mi tin hnh gi i cho Bob. Khi Bob nhn
c thng bo ca Alice, Bob mun c c thng bo Bob phi tin hnh
gii m. Ta s thc hin cc bc m Alice v Bob phi lm trn phn mm
Maple
V th y2 = x3 + x + 6 mod 11 bng phn mm Maple

Hnh 4.1: th y2 = x3 + x + 6

4.1.2. M ha v gii m
4.1.2.1. M ha thng tin
Alice thc hin m ha thng tin
Phng trnh ng cong Elliptic
>

HC VIN K THUT MT M

- 49 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Gn cc gi tr a=1, b=6, p=11


>

>

>

Phng trnh Elliptic sau khi gn cc gi tr


>

Gn phn t sinh = (2,7), v kha b mt Ka = 5


>

>

By gi ta kim tra xem phng trnh Eliptic c suy bin khng


>
4a3 + 27b2 mod 11= 8 0 --> phng trnh Eliptic khng suy bin
Alice chn r = 3
Thun ton m ha : Ek(x,r) = (y1, y2)
Vi Y1= r = 3, Y2= x + r =(10,9) + 3(3,6)
* Tnh Y1
Tnh 2 = + = (2,7) + (2,7)

HC VIN K THUT MT M

- 50 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

>

>

>

>

>

Ta c :2 = + = (2,7) + (2,7) = (5,2)


V 3 = 2 + = (5,2) + (2,7)
>>

>

>

--> Y1 = 3 = (8,3)
* Tnh Y2
Trc tin ta tnh 3 = 3(3,6)
2 = + = (3,6) + (3,6)
>

>

HC VIN K THUT MT M

- 51 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

>

>

>

2 = (3,6) + (3,6) = (8,8)


3 = 2 + = (8,8)+ (3,6)
>

>

>

--> 3 = 2 + = (8,8) + (3,6) = (5,2)


Y2 = x + r = (10,9) + 3(3,6) = (10,9) + (5,2)
>
>
>

>

HC VIN K THUT MT M

- 52 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

>

>

>

--> Y2 = x + r = (10,9) + 3(3,6) = (10,9) + (5,2) = (5,9)


--->Bn m m Alice mun gi cho Bob l :X = (Y1,Y2) = ((8,3),(5,9))

4.1.2.2. Gii m
Bob nhn c bn m Alice gi, Bob tin hnh gii m nh sau
X=Y2-Ka*Y1=(5,9)-5(8,3)
Ta tnh 5=5(8,3)
2=(8,3)+(8,3)
>

>

>

>

>

2 = (8,3) + (8,3) = (7,9)

HC VIN K THUT MT M

- 53 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

3 = 2 + = (7,9) + (8,3)
>

>

>

3 = 2 + = (7,9) + (8,3) = (10,9)


4 = 3 + = (10,9) + (8,3)
>

>

>

4 = 3 + = (10,9) + (8,3) = (2,4)


5 = 4 + = (2,4) + (8,3)
>

>

>

-->5 = 4 + = (2,4) + (8,3) = (5,2)

HC VIN K THUT MT M

- 54 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

X = Y2 Ka * Y1 = (5,9) - 5(8,3) = (5,9) - (5,2)


V : -(x,y) = (x,-y) --> -(5,2) = (5,-2) = (5,9)
X = Y2 Ka * Y1= (5,9) - 5(8,3) = (5,9) - (5,2) = (5,9) + (5,9)
>
>

>

>

>

--->X = (10,9)
Nh vy php gii m cho bn r ng

4.2. V d v k v kim tra ch k Elgamal


Tip tc v d trn : Cho ng cong Elliptic E: y2

x3 +ax + b mod p.

vi a=1, b=6, p=11 phn t sinh =(2,7). Kha b mt ca Allice l ka=5, kha
cng khai ca Alice l = 5 =5(2,7)=(3, 6). By gi Alice mun k ln thng
bo m=9 v gi cho Bob. Khi Bob nhn c thng bo c k ca Alice,
Bob tin hnh kim tra ch k. Ta s thc hin cc bc m Alice v Bob phi
lm trn phn mm Maple

4.2.1. K ln thng bo
Ta tin hnh gn cc gi tr a=1, b=6, p=11, =(2,7), ka=5
>

HC VIN K THUT MT M

- 55 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

>

>

>

>
>
By gi ta kim tra xem phng trnh Eliptic c suy bin khng?
>
4a3 + 27b2 mod 11 = 8 0 --> phng trnh Eliptic khng suy bin
Tip theo, ta s lu v phi ca phng trnh trn vo eqn:
>

By gi chng ta sinh ra cc phn t trong E l cc cp (x, y) Zp Zp tha mn


phng trnh (1). sinh ra cc cp (x, y) tha mn phng trnh , ta phi
cung cp cho ngi s dng mt th tc epoints. Nu th tc ny c lu
trong mt file text epoints trong th mc ta chy Maple, khi ta c th chy
th tc ny bng cch g cu lnh:
>read epoints;

HC VIN K THUT MT M

- 56 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Tuy nhin, y ta th hin th tc epoints:

* Gii thch th tc sinh ng cong elliptic:


Hm Sub(x =a, bieu_thuc): thay x= a vo bieu_thuc.
pct: l bin m s phn t ca E.
u tin, vi cc gi tr k thuc Zp, k = 0,1,2,...,18 ta tnh z = x3+ax+b.
1. Ta thay k vo z tnh z tng ng
2. Kim tra:

HC VIN K THUT MT M

- 57 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Nu z =0, tm nghim ca pt: x3+ax+b = 0, khi E:=E (xi, 0), vi xi


l nghim ca phng trnh . Mi ln tm thy nghim xi l tng bin
m pct.
Nu z l thng d bnh phng (z(p-1)/2 mod p =0) khi E:= E (k,
z(p+1)/4mod p) & (k, -z(p+1)/4 mod p), sau tng pct ln 2 n v.
3. Hm seq(f(i), i = 1..n), l hm xy dng mt chui s f(1), f(2), ...f(n), v hin
th chng.
Nh vy seq(ecurve[i], i = 1..pct), s to ra mt chui phn t [a1,b1], [a2, b2]...
[an, bn], cc im ny thuc vo E.
Cc im trn ng cong Elliptic c phng trnh y2 = x3 + x + 6 l:
>

Ch rng cc cp c sp (x, y) tho mn (1) l tt c cc phn t


trong E tr im v cc

O.

Bng cch g cu lnh sau, ta c th biu din s 0

cho im v cc, v tp cc im ca ecurve nm trong E.


>

m s phn t trong E
>

Alice chn k=2 v tnh r=k=2(2,7)


>

>

HC VIN K THUT MT M

- 58 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

>

>

>

r=k=2(2,7)=(5,2)
Alice mun k ln thng bo m=9, ta gn m=9
>

Tnh f(r): theo bi ra f(x,y)=x-->f(r)=f(5,2)=5=


>

s:=k-1(m-a* ) mod N
>

-->Bn m c k m Alice gi cho Bob l:M(m,r,s)=(9,(5,2),5)

4.2.2. Kim tra ch k


Khi Bob nhn c bn m cua Alice gi Bob tin hnh kim tra ch k
V1=(f(r)* +s*r)mod N = (* +s*r)mod 13
V2=m
>

>

HC VIN K THUT MT M

- 59 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

V1= V2 --->M ng l bn m m Alice mun gi cho Bob

KT LUN
Cng ngh thng tin v ang l mt trong nhng lnh vc em li nhiu
li ch cho x hi, v khng th thiu trong nn kinh t hi nhp v ton cu
ho. An ton v bo mt thng tin l mt trong nhng yu t quan trng c
nhiu ng dng trong thc tin. Trong qut trnh nghin cu cc gii php bo
mt ngi ta pht minh h m ho cng khai trn ng cong elliptic. Cho
n nay h m ha ng cong elliptic c xem l h m ho an ton v hiu
qu nht. So vi cc h m ho cng khai khc, ECC c xem l u vit hn
bi cng bo mt nh nhau th di kho trong ECC nh hn nhiu so
vi cc h m ho khc. iu ny dn ti cc h m ho ECC c kh nng thc
thi nhanh hn, hiu qu hn cc h m ha cng khai khc.
Theo yu cu t ra ca ti Tm hiu v h mt trn ng cong Elliptic
v kh nng ng dng cho n thi im hin ti, n t c cc ni
dung sau y :
Gii thiu v phn mm ton hc Maple
Hiu v ng cong Elliptic v cc php ton trn ng cong Elliptic
Hiu v h mt trn ng cong Elliptic
Mt vi ng dng h mt trn ng cong Elliptic
Demo mt s v d v h mt trn ng cong Elliptic s dng phn mm
Maple.
Trong phm vi ca mt n tt nghip, n c bn t c nhng
yu cu t ra ban u.
Hn ch: Tuy nhin, cc kt qu trong n ca em cn kh khim tn do
hn ch v ti liu, thi gian kin thc cng nh kinh nghim thc t. n
cha i su nghin cu k v mt h mt c th.

HC VIN K THUT MT M

- 60 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

Hng pht trin: Hy vng rng trong tng lai, nu c iu kin em s i


su nghin cu v vn ny c th p dng vo thc t gip ch cho ngi
s dng cng nh cng ty, t chc...
Cui cng, em xin gi li cm n su sc ti cc thy, cc c trong khoa An
ton thng tin Hc vin K thut Mt M tn tnh ging dy v cung cp
nhng kin thc qu bu cho em trong sut nm nm hc qua. c bit em xin
chn thnh cm n C gio Trn Th Lng Ging vin khoa An ton thng
tin Hc vin K thut Mt M ginh nhiu thi gian qu bu tn tnh hng
dn v to mi iu kin thun li em c th hon thnh tt n ca mnh.
Do cn hn ch v kin thc v kinh nghim nn n cn nhiu thiu st,
em rt mong c s nhn xt, nh gi v gp ca cc thy c v cc bn.
Em xin chn thnh cm n !

HC VIN K THUT MT M

- 61 -

Phm Th Yn Lp AT3C

N TT NGHIP

H mt trn ng cong Elliptic

TI LIU THAM KHO


Ti liu ting vit
[1] TS. Trn Vn Trng v ThS. Trn Quang K, Gio trnh : Mt m hc
nng cao. Hc vin K Thut Mt M.
[2] Nguyn Hu in, Gio trnh Maple Trung tm khoa hc t nhin v cng
ngh quc gia
[3] GS. TS Nguyn Bnh v TS. Trn c S. Gio trnh: C s l thuyt mt
m. Hc Vin K Thut Mt M.
[4] Trn Quc Chin, Gio trnh phn mm ton hc, i hc nng (nm
2008)
[5] Phm Huy in, H Duy Khoi (2003), M ho thng tin: C s ton hc v
ng dng. NXB i Hc Quc Gia.
Ti liu ting anh
[1] Neal Kobliz: A Corse in Number Theory and Cryptography. SprirgerVerlag: Network, Berlin Heidelberg London, Paris, Tokyo 1987
[2] Stphen B. Wicker: Error Control Systems for Digital communication and
storage. Shool of electrical computer- Engineering. Georgra institute of
Technology, Prentice Hall NewJersey- 2003.
[3] A.j. Menzes: Elliptic curse public key crypto system, Klwer Academic
publishers, Massachusetts, USA -1993.

HC VIN K THUT MT M

- 62 -

Phm Th Yn Lp AT3C

You might also like