Luận văn Nghiên cứu, tìm hiểu và trình bày về chữ ký số trên đường cong elliptic, ứng dụng của đường cong elliptic trong hệ thống bỏ phiếu điện tử và hệ thống tiền điện tử

TRƯNG………………………  
KHOA……………………………..  
LUẬN VĂN TỐT NGHIP  
NGHIÊN CU, TÌM HIU VÀ TRÌNH BÀY VCHSTRÊN  
ĐƯỜNG CONG Elliptic, NG DNG CỦA ĐƯỜNG CONG Elliptic TRONG  
HTHNG BPHIẾU ĐIỆN THTHNG TIỀN ĐIỆN T.  
1
LI CẢM ƠN  
Lời đầu tiên, em xin được gi li cảm ơn sâu sắc ti PGS.TS. Trnh Nht  
Tiến, người thầy đã giúp đỡ em trong sut quá trình làm khóa luận, đồng thi cũng  
là người thầy đã hướng dn em những bước đi đầu tiên để khám phá mt lĩnh vực  
đầy bí n và thách thc – lĩnh vực an toàn và bo mt dliu.  
Em xin được cảm ơn các thầy, các cô đã ging dy em trong sut bốn năm  
qua. Nhng kiến thc mà các thầy, các cô đã dy smãi là hành trang giúp em vng  
bước trong tương lai .  
Em cũng xin được cảm ơn tập thlp K50CC, mt tp thlớp đoàn kết vi  
những người bn không chhc gii mà còn luôn nhit tình giúp đỡ mọi người,  
những người bạn đã giúp đỡ em trong sut bốn năm học tp trên giảng đường Đại  
hc.  
Cuối cùng, em xin được gi li cảm ơn sâu sc ti gia đình em, những người  
luôn kp thời động viên, khích lệ em, giúp đỡ em vượt qua những khó khăn trong  
cuc sng.  
ni, tháng 05 năm 2009  
Sinh viên  
Nguyn Minh Hải  
2
TÓM TT NI DUNG KHÓA LUN  
Khóa lun là snghiên cu, tìm hiu và trình bày vchữ ký số trên đường  
cong Elliptic, ng dụng của đường cong Elliptic trong Hthng bỏ phiếu điện tvà  
Hthng tiền điện t. Khóa luận được trình bày thành bốn chương với ni dung  
như sau:  
Chương 1 : Tóm tt các khái niệm cơ bản trong số học và trong đại số hc.  
Chương 2 : Trình bày về khái niệm đường cong Elliptic, các dạng đường cong  
và các phép toán trên đường cong Elliptic.  
Chương 3 : Trình bày mt schữ ký số trên đường cong Elliptic và phương  
pháp tn công hệ mã hóa đường cong Elliptic.  
Chương 4 : Trình bày ng dụng của đường cong Elliptic trong Hthng bỏ  
phiếu đin tử và Hthng tiền đin t.  
3
CÁC KÝ HIU VIT TT  
Tom  
Ngưi gi tin hoặc người thc hin vic ký  
Ban đăng ký  
BĐK  
BKP  
Ban kim phiếu  
Jerry  
Ngưi nhn tin hoặc người yêu cu ký  
Đường cong Elliptic (Elliptic Curve)  
Mã hóa đường cong Elliptic (Elliptic Curve Cryptosystem)  
Thut toán ký trên EC  
EC  
ECC  
ECDSA  
EDLP  
E-Voting  
gcd  
Bài toán Logarith ri rc trên EC  
Bphiếu đin t(Electronic Voting)  
Ước schung ln nht (Greatest Common Divisor)  
Trưng hu hn (Galois Field)  
GF  
IEEE  
IETF  
IFP  
Institute of Electrical and Electronics Engineers  
Internet Engineer Task Force  
Bài toán ước snguyên (Integer Factorization Problem)  
Bi schung nhnht (Least Common Multiple)  
Phương pháp tấn công Menezes – Okamoto - Vanstone  
National Institute of Standards  
lcm  
MOV  
NIST  
RFC  
Request For Comments  
RIPEMD-160  
RSA  
Hàm băm 160 bit  
Hmã hóa khóa công khai Rivest – Shamir – Adleman  
Hàm ca sp mt chiu (Trapdoor One-way Function)  
TOF  
4
CÁC KÝ HIU TOÁN HC  
< g >  
#E  
C
Nhóm cyclic được sinh bi g  
Sphn tcủa đưng cong elliptic  
Tp các bn mã có thể  
dK  
Thut toán gii mã  
E
Đường cong elliptic  
eK  
Thut toán mã hóa  
F*  
Fq  
Nhóm nhân trên trường F  
Trưng hu hn vi q phn tử  
Điểm cơ sở ca E  
G
K
Không gian các khóa  
O
Phn ttrung hòa ca E  
sigK  
verK  
Zp  
Thut toán ký số  
Thut toán kim tra chký  
Vành các số nguyên dương p  
Hàm phi Euler các snguyên trong Zn nguyên tcùng nhau vi n.  
φ(n)  
5
DANH MỤC CÁC HÌNH VẼ TRONG KHÓA LUN  
Hình 1: Mt ví dụ về đường cong Elliptic....................................... Error! Bookmark not defined.  
Hình 2: Điểm vô cc................................................................... Error! Bookmark not defined.  
Hình 3: Phép cộng trên đường cong elliptic.................................... Error! Bookmark not defined.  
Hình 4: Phép nhân đôi trên đường cong elliptic.............................. Error! Bookmark not defined.  
6
MỤC LỤC  
LI MỞ ĐẦU ..............................................................................................................................1  
Chương 1 : CÁC KHÁI NIỆM CƠ BẢN ..................................................................................11  
1.1. KHÁI NIM TRONG SỐ HỌC ..........................................................................................11  
1.1.1. Ước chung ln nht và bi chung nhỏ nht .......................................................................11  
1.1.2. Quan hệ đồng dư ................................................................................................................12  
1.1.3. Snguyên t.....................................................................................................................13  
1.2. KHÁI NIỆM TRONG ĐẠI S............................................................................................15  
1.2.1. Nhóm................................................................................................................................15  
1.2.2. Vành ..................................................................................................................................17  
1.2.3. Trường..............................................................................................................................18  
1.2.4. Không gian vector ............................................................................................................22  
Chương 2. ĐƯỜNG CONG ELLIPTIC....................................................................................23  
2.1. CÔNG THC WEIERSTRASSE VÀ ĐƯỜNG CONG ELLIPTIC.......................................24  
2.2. ĐƯỜNG CONG ELLIPTIC TRÊN TRƯỜNG R2 .................................................................24  
2.2.1. Phép cng ..........................................................................................................................25  
2.2.2. Phép nhân đôi.....................................................................................................................28  
2.3. ĐƯỜNG CONG ELLIPTIC TRÊN TRƯỜNG HU HẠN ...................................................29  
2.3.1. Đường cong elliptic trên trường Fp (p là số nguyên tố)........................................................29  
m
2.3.2. Đường cong elliptic trên trường F2 ....................................................................................30  
2.3.3. Các phép toán trên đường cong elliptic trong hệ tọa độ Affine ............................................30  
2.3.4. Các phép toán trên đường cong elliptic trong hệ tọa độ chiếu..............................................32  
2.3.5. Chuyển đổi gia hệ tọa độ Affine và hệ tọa độ chiếu ..........................................................33  
2.3.6. Các phép toán đưng cong trong hệ tọa độ chiếu ................................................................33  
2.3.6. Phép nhân đường cong .......................................................................................................34  
2.4 BÀI TOÁN LOGARIT RI RẠC TRÊN ĐƯỜNG CONG ELLIPTIC...................................36  
Chương 3. CHỮ KÝ STRÊN ĐƯỜNG CONG ELLIPTC....................................................37  
3.1. CHỮ KÝ S........................................................................................................................37  
3.1.1. Khái nim chữ ký s.........................................................................................................37  
3.1.2. Sơ đồ chữ ký s................................................................................................................38  
3.2. MT SỐ SƠ ĐỒ CHỮ KÝ STRÊN ĐƯỜNG CONG ELLIPTIC......................................41  
3.2.1. Sơ đồ chữ ký ECDSA......................................................................................................41  
3.2.2. Sơ đồ chữ ký Nyberg- Rueppel........................................................................................43  
3.2.3. Sơ đồ chữ ký mù Harn trên EC .........................................................................................44  
7
3.2.4. Sơ đồ đa chữ ký mù của Harn trên EC .............................................................................47  
3.3. MT SỐ PHƯƠNG PHÁP TN CÔNG HECC ................................................................49  
3.3.1. Phương pháp tn công “baby - step giant - step” ...............................................................49  
3.3.2. Phương pháp tn công MOV ............................................................................................50  
Chương 4 . NG DỤNG CHỮ KÝ STRÊN ĐƯỜNG CONG ELLIPTIC ..........................53  
4.1.NG DỤNG TRONG BỎ PHIẾU ĐIỆN T.........................................................................54  
4.1.1. Quy trình bỏ phiếu điện t................................................................................................54  
4.1.2. Sử dụng ECC trong bỏ phiếu điện t.................................................................................55  
4.2. NG DỤNG TRONG HTHNG TIỀN ĐIỆN T..........................................................57  
4.2.1. Tạo tin ecash ...................................................................................................................57  
4.2.2 Tiêu tiền ecash ..................................................................................................................58  
4.2.3 Đổi tiền ..............................................................................................................................58  
4.2.4 Kết thúc giao dịch .............................................................................................................58  
KT LUN ................................................................................................................................59  
TÀI LIU THAM KHẢO .........................................................................................................61  
8
LI MỞ ĐẦU  
Mục tiêu cơ bản ca mt mã học là đm bo tính bí mật. Nó cho phép 2 đối tác  
trao đổi thông tin vi nhau mt cách an toàn trên nhng kênh truyn thông công  
khai. Hmt mã khóa bí mt có thể định nghĩa như sau: Giả ský hiu M là tp tt  
ccác bn rõ có th. C là tp tt ccác bn mã có th. K là tp các khóa có th. Hệ  
mt mã khóa bí mt gm 2 hàm: ek : M C , dk : C M ,  
sao cho  
k K  
dk (ek (m)) m vi mi  
và  
. Trong hmt mã này, người gi (gislà  
k K  
mM  
Tom)và người nhn (Jerry) cùng tha thun mt khóa bí mt, bng cách gp mt  
nhau trc tiếp hoc nhmt trung tâm tin cy phân phi khóa. Nếu Tom mun gi  
cho Jerry một thông điệp  
, cô y sgi bn mã c e (m) cho Jerry. Jerry sẽ  
mM  
k
khôi phc bn rõ m bng vic dùng hàm gii mã dk . Hmt mã khóa bí mt phi  
đảm bo rng các hàm ek dk phi dáp dụng nhưng vẫn an toàn trước ktn  
công, khi có bn mã c vẫn khó tính được m (hoc khóa k). Dù hmt mã khóa bí  
mt vẫn đang được dùng trong nhiu ng dụng, nhưng vẫn còn mt số nhược điểm  
như vấn đề phân phi khóa, vấn đề qun lý khóa và nó không htrvic to chký  
điện t.  
Ý tưởng chính ca các thut toán khóa công khai là sdng 2 khóa khác nhau  
cho 2 quá trình mã hóa và gii mã. Ý tưởng này được phát minh bi Whitfield  
Diffie và Martin Hellman (1976), độc lp vi Ralph Merkle (1978). Từ đó, nhiều hệ  
mt mã khóa công khai được đưa ra, nhưng hầu hết chúng đều hoc không an toàn  
hoc không khthi. Các thuật toán khóa công khai đều chậm hơn rất nhiu so vi  
các thut toán khóa bí mt.  
Thut toán RSA chậm hơn 1000 lần so vi các thut toán khóa bí mt phổ  
biến như DES khi triển khai trong các thiết bphn cng; và chậm hơn 100 lần  
trong các phn mm mã hóa khi mã hóa cùng mt khối lưng dliệu như nhau. Tuy  
nhiên, hmt mã khóa công khai có một ưu điểm ni tri là cho phép to chký  
điện tử. Khóa riêng được người shu gibí mật và nó được sdụng để to chký  
điện thoặc để gii mã các thông điệp đã được mã hóa bng khóa công khai. Khóa  
công khai không cn thiết phi gibí mt do tính chất “khó tính được khóa riêng từ  
khóa công khai” ca cp khóa. Vì vậy, người dùng có thcông bkhóa công khai  
9
trên các kênh công cng cho nhng ai mun gi thông tin cho hhoc xác minh  
chký ca h.  
Trong lch sử hơn 20 năm của mt mã khóa công khai, đã có nhiu bài toán  
“khó” được đưa ra xem xét để ứng dng cho các vấn đề mt mã học. Trong đó có 2  
bài toán ni bt nht là bài toán logarith ri rạc trên trường hu hn và bài toán tìm  
ước snguyên tố. Năm 1985, Neal Koblitz và V.S.Miller đã độc lp nhau cùng đề  
xutvic sdụng các đường cong elliptic cho các hmã hóa khóa công khai. Họ  
không phát minh ra thut toán mã hóa mi với các đường cong elliptic trên trường  
hu hn, mà hdùng nhng thuật toán đã có như Diffie – Hellman, sdng các  
đường cong elliptic. Các đường cong Elliptic có thdùng trong nhiu ng dụng như  
kim thsnguyên thoc bài toán tìm ước snguyên t. Các hmt mã trên  
đường cong elliptic (ECC) được dbáo là sphbiến hơn RSA do khóa nhỏ gn  
hơn nhiều (khong 163 bit) so vi RSA (1024 bit). Vì vy, tốc độ mã hóa nhanh  
hơn so với RSA. Như vậy ECC có thể được dùng trên các thiết bị cm tay (có bộ  
nhớ nh, và tốc độ nh toán không cao) .  
Việc thương mại hóa ECC đã được mt số nơi thực hiện như công ty Certicom  
và công ty RSA đã htrmã hóa ECC trong các bcông cphát trin. Tuy nhiên,  
mt vấn đề có thể ảnh hưởng đến schp nhn ECC rng rãi như một phn của cơ  
shtng khóa công khai là các kthut thực thi đường cong elliptic, thói quen,  
các thut toán, và các giao thức. ECC đòi hi các thtc toán hc phc tp trong  
vic khi tạo các đường cong. Các chuyên gia công nghthông tin vẫn chưa hiểu  
thấu đáo để thiết kế các hthng bo mt da trên mt mã hc, trong khi hRSA  
thì không quá phc tp và khó hiu.  
10  
Chương 1. CÁC KHÁI NIỆM CƠ BẢN  
1.1. KHÁI NIM TRONG SỐ HC  
1.1.1. Ước chung ln nht và bi chung nhỏ nht  
a. Khái nim  
Cho hai snguyên a và b, b ≠ 0. Nếu có mt snguyên q sao cho a = b*q, thì  
ta nói rng a chia hết cho b, kí hiu b\a. Ta nói b là ước ca a và a là bi ca b.  
Snguyên d được gi là ước chung ca các snguyên a1, a2, …, an , nếu nó  
là ước ca tt ccác số đó.  
Snguyên m được gi là bi chung ca các snguyên a1, a2, …, an , nếu nó  
bi ca tt ccác số đó.  
Một ước chung d >0 ca các snguyên a1, a2, …, an , trong đó mọi ước  
chung ca a1, a2, …, an đều là ước ca d, thì d được gi là ước chung ln nht  
ca a1, a2, …, an . Ký hiu d = gcd (a1, a2, …, an) hay d = UCLN(a1, a2, …, an).  
Nếu gcd(a1, a2, …, an) = 1,thì a1, a2, …, an được gi là nguyên tcùng nhau.  
Mt bi chung m >0 ca các snguyên a1, a2, …, an , trong đó mọi bi  
chung ca a1, a2, …, an đều là bi ca m, thì m được goi là bi chung nhnht  
ca a1, a2, …, an . Ký hiu m = lcm(a1, a2, …, an) hay m = BCNN(a1, a2, …, an).  
b. Ví dụ  
Cho a =12, b =15, gcd(12,15) = 3,  
Hai s8 và 13 là nguyên tcùng nhau, vì gcd(8, 13) = 1.  
c. Tính cht  
lcm(12,15) = 60.  
1. d = gcd(a1, a2, …, an) tn ti x1, x2,…, xn sao cho: d = a1x1+a2x2+…+anxn  
a1,a2,..an nguyên tcùng nhautn ti x1,x2,.. xn sao cho: 1 = a1x1+a2x2+…+anxn  
2. d = gcd(a1, a2, …, an) gcd(a1/d, a2/d,…, an/d) =1.  
3. m = lcm(a1, a2, …, an) gcd(m/a1, m/a2,…, m/an) =1.  
4. gcd(m a1, m a2, …, m an) = m * gcd(a1, a2, …, an) (vi m ≠ 0).  
5. Nếu gcd(a, b) =1  
thì lcm(a, b) = a * b  
6. Nếu b>0, a = bq+r thì gcd(a,b) = gcd(b, r).  
11  
1.1.2. Quan hệ đồng dư  
a. Khái nim  
Cho các snguyên a, b, m (m > 0). Ta nói rng a b “đồng dư” với  
nhau theo modulo m, nếu chia a và b cho m, ta nhận đưc cùng mt số dư.  
Ký hiu: a ≡ b (mod m).  
b. Ví dụ  
17 ≡ 5 (mod 3) vì chia 17 và 5 cho 3, được cùng số dư  2.  
c. Tính cht  
1. Quan hệ “đồng dư” là quan hệ tương đương trong Z:  
Vi mi số nguyên dương m ta có:  
a ≡ a (mod m) vi mi a Z;  
(tính cht phn x).  
a ≡ b (mod m) thì b ≡ a (mod m); (tính chất đối xng).  
a ≡ b (mod m) b ≡ c (mod m) thì a ≡ c (mod m); (tính cht bc cu).  
2. Tng hay hiu các “đồng dư ”:  
(a+b) (mod n) [(a mod n) + (b mod n)] (mod n)  
(a- b) (mod n) [(a mod n) - (b mod n)] (mod n)  
Tng quát:  
Có thcng hoc trtng vế nhiều đồng dư thức theo cùng mt modulo m,  
ta đưc một đồng dư thức theo cùng modulo m, tc là:  
k
k
Nếu ai ≡ bi (mod m) , i = 1...k, thì  
t a t b (mod m) vi ti = ± 1.  
i i i  
i
i1  
i1  
3.. Tích các “đồng dư”:  
(a* b) (mod n) [(a mod n) * (b mod n)] (mod n)  
Tng quát:  
Có thnhân tng vế nhiều đồng dư thức theo cùng mt modulo m, ta được mt  
đồng dư thức theo cùng modulo m, tc là:  
k
k
Nếu ai ≡ bi (mod m) vi i=1..k, thì ta có:  
a b (mod m)  
   
i
i
i1  
i1  
12  
1.1.3. Snguyên tố  
a. Khái nim  
Snguyên tlà stnhiên lớn hơn 1 và chỉ có hai ước là 1 và chính nó.  
b. Ví dụ  
10 snguyên tlớn đã được tìm thy :  
rank Prime  
Digits  
Who when reference  
232582657-1  
1
2
3
4
5
6
7
8
9
10  
9808358  
9152052  
7816230  
7235733  
6320430  
4053946  
3918990  
2759677  
2357207  
2116617  
G9  
G9  
G8  
G7  
G6  
G5  
2006 Mersenne 44??  
2005 Mersenne 43??  
2005 Mersenne 42??  
2004 Mersenne 41??  
2003 Mersenne 40??  
2001 Mersenne 39  
230402457-1  
225964951-1  
224036583-1  
220996011-1  
213466917-1  
19249·213018586+1  
27653·29167433+1  
28433·27830457+1  
33661·27031232+1  
SB10 2007  
SB8 2005  
SB7 2004  
SB11 2007  
c. Định lý  
1. Định lý: vsố nguyên dương > 1.  
Mi số nguyên dương n > 1 đu có thbiu diễn đưc duy nht dưới dng:  
n1  
n2  
nk  
.
...  
, trong đó:  
n =P1 P2 Pk  
k, ni ( i =1,2,..,k) là các stnhiên, Pi là các snguyên t, từng đôi một khác nhau.  
2. Định lý Mersenne.  
Cho p = 2k -1, nếu p là snguyên t, thì k phi là snguyên t.  
13  
Chng minh  
Bng phn chng, gisk không là nguyên tố. Khi đó k = a.b với 1< a, b < k.  
Như vậy :  
p = 2k -1 = 2ab -1 = (2a)b -1= (2a -1).E  
(Trong đó E là một biu thc nguyên - áp dng công thc nhthc Niu-tơn).  
Điều này mâu thun githiết p là nguyên t. Vy gissai, hay k là snguyên t.  
3. Hàm Euler:  
Cho snguyên dương n, số lượng các số nguyên dương bé hơn n và nguyên  
tcùng nhau với n được ký hiu (n) và gi là hàm Euler.  
Nhn xét: Nếu p là snguyên t, thì (p) = p-1  
Ví d:  
Tp các snguyên không âm nhỏ hơn 7 là Z 7 = {0, 1, 2, 3, 4, 5, 6, 7}.  
Do 7 snguyên t, nên Tp các số nguyên dương nhỏ hơn 7 và nguyên tố  
cùng nhau vi 7 là Z 7 * ={1, 2, 3, 4, 5, 6, 7}. Khi đó /Z/ = (p) = p-1 =8-1 = 7.  
Định lý hàm Euler.  
Nếu n là tích ca hai snguyên tn = p.q, thì (n) = (p).(q) = (p-1).(q-1).  
14  
1.2. KHÁI NIỆM TRONG ĐI SỐ  
1.2.1. Nhóm  
a. Khái nim  
Nhóm là mt b(G, *), trong đó G  , * phép toán hai ngôi trên G  
thomãn ba tính cht sau:  
+ Phép toán có tính kết hp: (x*y)* z = x*(y*z) vi mi x, y, z G.  
+ Có phn tphn ttrung lp e G: x*e = e*x = x vi mi x G.  
+ Vi mi xG, có phn tnghịch đo x’G: x * x’ = x’ * x = e.  
Cp ca nhóm G được hiu là sphn tca nhóm, ký hiu là G .  
Cp ca nhóm có thnếu G có vô hn phn t.  
Nhóm Abel là nhóm (G, *), trong đó phép toán hai ngôi * có tính giao hoán.  
Tính cht:  
Nếu a * b = a * c, thì b = c.  
Nếu a * c = b * c, thì a = b.  
* Tp hp các snguyên Z cùng vi phép cộng (+) thông thường là nhóm giáo  
hoán, có phn tử đơn vị là s0. Gi là nhóm cng các snguyên.  
* Tp Q* các shu tkhác 0 (hay tp R* các sthc khác 0), cùng vi phép  
nhân (*) thông thường là nhóm giao hoán. Gi là nhóm nhân các shu t(số  
thc) khác 0.  
* Tập các vectơ trong không gian với phép toán cộng vectơ là nhóm giao hoán.  
b. Nhóm Cyclic  
Nhóm (G, *) được gi là Nhóm Cyclic nếu nó được sinh ra bi mt trong  
các phn tca nó.  
Tc là có phn tg G mà vi mi a G, đều tn ti sn N để  
g n = g * g * … * g = a. (Chú ý g * g * … * g g * g vi n ln).  
Khi đó g được gi là phn tsinh hay phn tnguyên thuca nhóm  
G. Nói cách khác: G được gi là Nhóm Cyclic nếu tn ti g G sao cho mi  
phn ttrong G đều là mt lutha nguyên nào đó của g.  
Nhóm (Z+ , +) gm các số nguyên dương là Cyclic vi phn tsinh g = 1.  
15  
Cho (G, *) Nhóm Cyclic vi phn tsinh g. và phn ttrung lp e.  
n
Nếu tn ti stnhiên nhnht n g = e, thì G schgm có n  
phn tkhác nhau: e, g, g2 , g3 , . . . , g n - 1 . Khi đó G được gi là nhóm Cyclic  
hu hn cp n.  
Nếu không tn ti stnhiên n để g n = e, thì G cp .  
*
c. Nhóm (Zn , phép nhân mod n)  
* Kí hiu Zn = 0, 1, 2, .. . , n-1là tp các snguyên không âm < n.  
Zn và phép cng (+) lp thành nhóm Cyclic có phn tsinh là 1, pt trung lp e = 0.  
(Zn , + ) gi là nhóm cộng, đó là nhóm hữu hn có cp n.  
*
* Kí hiu Zn = x Zn , x là nguyên tcùng nhau vi n. Tc là x phi 0.  
*
Zn được gi là Tp thặng dư thu gọn theo mod n, có sphn t(n).  
*
Zn vi phép nhân mod n lp thành mt nhóm (nhóm nhân), pt trung lp e = 1.  
*
Tng quát (Zn , phép nhân mod n ) không phi là nhóm Cyclic.  
*
Nhóm nhân Zn là Cyclic chkhi n có dng: 2,4, pk, hay 2pk vi p là nguyên tl.  
* Định lý Lagrange: Nếu G là nhóm cp n G, thì Cp ca ước ca n.  
* Hqu: GisZn* Cp m, thì m ước ca (n).  
* Định lý: Nếu p là snguyên tthì Z *p là nhóm Cyclic.  
Nếu b Zn* thì b (n) 1 (mod n). Nếu p là snguyên tthì (p) = p-1.  
Do đó với b Z *p (tc b nguyên tvi p), thì b(p) 1 (mod n), hay bp -1 1(mod n).  
d. Phn tử nghịch đảo đối vi phép nhân  
* Đnh nghĩa  
Cho a Zn , nếu tn ti b Zn sao cho a b 1 (mod n), ta nói b phn  
tnghịch đo ca a trong Zn và ký hiu a -1.  
Mt phn tcó phn tnghịch đo, gi là khnghch.  
* Đnh lý: UCLN (a, n) = 1 Phn ta Zn có phn tnghịch đo.  
Chng minh  
Nếu a a-1 ≡ 1 (mod n) thì a a-1 = 1 + kn ↔ a a-1 - kn = 1 → (a, n) =1.  
Nếu (a, n) = 1, ta có a a-1 + kn = 1 → a a-1 = 1+kn, do đó a a-1 ≡ 1 (mod n).  
16  
*
* Hqu: Mi phn ttrong Zn đều có phn tnghịch đo.  
1.2.2. Vành  
Vành là mt tp R vi 2 toán t+ và . với các điều kin sau:  
R,là mt nhóm Abel  
a . (b . c) = (a . b) . c vi mi a, b, c R.  
a . (b + c) = a . b + a . c và (a + b) . c = a . c + b . c vi mi a, b, c R.  
Vành tuyến tính  
F là mt vành. Một đa thức bc n trên F có dng:  
n
f (x) a xi a a x ... a xn  
i
0
1
n
i0  
vi n là số nguyên dương, các hệ sa F (  
).  
0 i n  
i
n
n
Cho 2 đa thức f (x) a xi g(x) b xi  
i
i
i0  
i0  
n
Ta đnh nghĩa tng ca f(x) và g(x) là f (x) g(x) (a b )xi  
i
i
i0  
n
m
Cho 2 đa thức f (x) a xi g(x) b x j  
i
j
i0  
j0  
mn  
Ta đnh nghĩa tích ca f(x) và g(x) là f (x)g(x) c xk vi c  
a b  
k
k
i
j
k 0  
ijk  
0i n,0jm  
Vành được to thành bi tt cả các đa thức trên F vi toán tử thông thường là cng  
và nhân được gọi là vành đa thức trên F và ký hiu là F[x].  
Định lý  
(Thut toán chia cho F[x])  
Gisf(x) và g(x) F[x] có bậc nguyên dương, tồn ti duy nhất đa thức q(x),  
r(x) F[x] tha mãn f(x) = g(x) . q(x) + r(x) vi bc ca r(x) nhỏ hơn bậc ca g(x).  
Nếu r(x) là đa thức 0 thì g(x) được gọi là ước ca f(x). Đa thức bất định f(x)  
trong F[x] là ti gin nếu nó không có ước có bc thấp hơn f(x) trong F[x]. a F là  
nghim ca f(x) F[x] nếu f(a) = 0.  
Hquả  
Mt phn ta F là nghim của đa thức f(x) F[x] khi và chkhi x a là ước  
ca f(x) trong F[x].  
17  
Chng minh  
a là nghim nên f(a) = 0. Vì f(x) = (x a).g(x) + r(x) nên bc ca r(x) nhỏ  
hơn 1, tức là r(x) = c F. Vì vy, c = f(a) = 0. Ngược li, nếu f(x) = (x a). q(x) thì  
f(a) = 0.  
Hquả  
Một đa thức khác không f(x) F[x] bc n có nhiu nht n nghim trong F.  
1.2.3. Trường  
Trưng F là mt vành vi phn tử đơn vị e 0 sao cho F* = {a F | a 0 }  
là mt nhóm nhân.  
Định lý  
Vành Zp là một trưng khi và chkhi p là snguyên tố  
Chng minh  
Vi a, b Z, ta p là snguyên tố  
p|ab tc là p|a hoc p|b  
Nếu Zp là một trưng thì Z *p to thành mt nhóm nhân. Nếu p a thì a 0 mod p.  
Điều này nghĩa là a Z *p và tn ti a-1. Do đó nếu p|ab p a thì p|(ab)-1 = b. Vy  
p là snguyên t.  
Ngưc li, gisp là snguyên tố. Để chra rng Z *p là mt nhóm nhân ta  
chcn chra rng vi mi xZ *p sluôn tn ti nghịch đảo x-1. Vi a, b Zp và  
xZ * , nếu xa xb mod p thì a b mod p  
a b 0 mod p.  
p
p|x(ab) p|x hoc p|a b xZ * tc là p x. Điều này suy ra  
p
xZp = {xa | a Zp} = Zp trong đó xa = 1 vi a Zp vì luôn tn ti phn t1 trong Zp.  
Vy mi xZ *p luôn có phn tnghịch đo.  
Định nghĩa  
F là một trưng. Mt tp con K ca F cũng là một trường vi các toán tca  
F được gọi là trường con ca F. Hay F là một trường mrng ca K. Nếu K F  
thì K được gi là một trường con hp lca F. Trường là ti gin nếu không có  
trường con hp lnào.  
Với trường F bt k, giao F0 ca tt cả các trường con hp lệ là trưng ti gin.  
18  
Trưng F được gọi là có đặc s0 nếu F0 Q nghĩa là F cha Q như một  
trường con. Trường F được gọi là có đặc sp nếu F0 Zp.  
Trưng hu hạn là trường cha hu hn các phn t. Mọi trường hu hn có  
mt snguyên tố là đc scủa trưng. Một trường F có đc sthì vi mi a F,  
p
  
a a  
pa =  
= 0  
Định nghĩa  
Trưng K vi phn tử đơn vị nhân là 1. Vi p tha mãn 11...1 0 được  
  
p
gọi là đặc sca K. [5]  
(Các trường hu tQ, sthc R, sphc C có đặc slà 0 )  
Vi p là nguyên tthì GF(pn) có đc sp.  
Nếu H là trưng con ca K thì H K có cùng đặc s.  
F là trường mrng của trường K. Ký hiu F = K() nếu F là trường mở  
rng nhnht ca K cha . Nếu F là trường hu hạn đc sp thì nhóm nhân F* =  
F \ {0} là nhóm cylic và F = Zp() vi là phn tsinh ca nhóm F* được  
gi là phn tnguyên thy ca F.  
Vi 2 toán tnhnguyên * và trên các tp A B, mt ánh xf : A B nếu  
vi mi a, b A ta có:  
f(a * b) = f(a)  
f(b)  
GisA B là 2 nhóm (hoặc 2 trường), ta gi h: A B là một đẳng cu  
A đến B nếu h đảm bo các tính cht ca toán tnhóm ca A.  
Trường hu hạn  
Trưng hu hạn là trường có hu hn các phn tký hiu là Fq hoc GF(q)  
vi q là scác phn t.  
Định lý  
F là trường mrng bc n trên trường hu hn K. Nếu K q phn tthì F có  
qn phn t.  
Chng minh  
Gis{1 ,...,n }là cơ sở ca F như là một không gian vector trên K.  
MiF scó dng c11 ... cnn trong đó ci K (i = 1,…, n). Vì mi ci có  
thlà mt trong q phn tca K nên scác thp tuyến tính là qn.  
19  
Định lý  
Nếu F là một trưng hu hn có đc sp thì F pn phn tvi n nguyên dương.  
Vì vy, mọi trường hu hn là mt mrng của trường đẳng cu Zp vi p là  
đặc sca F.  
Định lý  
Trưng hu hn F = Fpn là một trường mrng ca Zp bc n và mi phn tử  
n
x p x  
ca Fpn là mt nghim của đa thức  
Chng minh  
trên Z .  
p
Đặc sca Fpn p. Tp hp F* = F \ {0} to thành nhóm nhân bc  
pn -1. Vi , bc ca trong nhóm chia hết cho bc ca F*, pn – 1. Vì vy, vi  
F *  
n
n
n 1  
có nhiu nht pn  
F *  
p 1  
p   
x p x  
mi  
, chúng ta có  
hay  
. Vì  
n
x p x  
nghim, Fpn gm tt ccác nghim ca  
Ví dụ  
trên Z .  
p
Trưng F2r cha F2(hoc Z2).Nếu viết toán tcng trong F2r như là phép cộng  
vector và viết phép nhân k v(k,vF2r )là một tích vô hướng ca kF2 v  
F 2r .Khi đó F2r được xem là không gian vector trên F2 vi chiu r. Ký hiu d là  
chiu ca không gian vector này. Có ththc hin ánh x1 – 1 gia các phn tử  
trong không gian vector d chiu và các d-tuple ca các phn ttrong F2. Vì  
vy,có2d phn ttrong không gian vector này.Vì d = r, F2r là không gian vector r  
chiu.  
Fqm là mt mrng ca Fq. 2 phn t, Fqm là liên hp trên Fq nếu và  
2
m1  
là các nghim ca cùng một đa thức ti gin bc m trên Fq. ,q ,q ,...,q là  
các liên hp ca Fqm vi Fq.  
Fqm là mt mrng ca Fq. Một cơ sở ca Fqm (không gian vector trên Fq)  
2
m1  
ca {,q ,q ,...,q } gm Fqm và các liên hp ca nó vi Fq , được gi là cơ  
strc giao ca Fqm trên Fq. Mọi trường mrng bc hu hn ca một trường hu  
hn có một cơ strc giao.  
Không gian chiếu  
20  
Xét L = Kn+1 \{0} vi K là một trưng. Vi A = (a0, a1, …, an), B = {b0, b1, …,  
bn}L, định nghĩa một quan hA ~ B gm A, B và gc O = (0, 0,…,0) là cng  
tuyến, nghĩa là tn ti  
tha mãn : ai bi , (i = 0, 1, …, n).  
K  
Quan h~ là quan hệ tương đương và định nghĩa một phân hoch ca L. Tp  
thương số là không gian chiếu ký hiu là Pn(K).  
Mt phng chiếu là tp các lớp tương đương của bba (X, Y, Z) vi  
((X,Y,Z) ) ~ (X, Y, Z) (  
). Mi lớp tương đương (X, Y, Z) được gi là mt  
K  
điểm chiếu trên mt phng chiếu. Nếu một điểm chiếu có Z 0, thì (x, y, 1) là mt  
X
Z
Y
thhin ca lớp tương đương với x =  
, y = . Mt phng chiếu có thể được  
Z
định nghĩa là tp tt cả các điểm(x, y)ca mt phngAffine cng với các đim Z = 0.  
21  
1.2.4. Không gian vector  
K là một trường và V là mt nhóm cng Abel. V được gi là không gian vector  
trên trường K nếu mt toán tK x V V được định nghĩa thỏa mãn các điều kin  
sau:  
a(u + v) = au + av  
(a + b)u = au + bu  
a(bu) = (ab)u  
1u = u  
Các phn tca V được gi là các vector và các phn tca K được gi là  
các vô hướng. V là một không gian vector trên trường K và các v1, …, vm V.  
Vector trong V có dng c1v1 + c2v2 + …+ cmvm vi ci K (i = 1, …, m) là mt tổ  
hp tuyến tính ca v1, …, vm. Tp hp tt ccác thp tuyến tính gi là span ca v1,  
…,vmvà ký hiu là span(v1, …, vm). v1, …, vm được gi là span nếu ca V nếu  
V = span(v1, …, vm).  
V là không gian vector trên trường K. Các vector v1, …, vm V được gi là  
độc lp tuyến tính trên K nếu không có các vô hướng c1,…, cm K tha mãn:  
c1v1 + c2v2 + …+ cmvm = 0  
Tp S = {u1, u2,…,un} ca các vector tạo thành cơ sở ca V khi và chkhi  
u1, u2,…,un là độc lp tuyến tính là span ca V. Nếu S là một cơ sở ca V thì mi  
phn tca V được biu din duy nhất dưới dng thp tuyến tính ca các phn tử  
ca S. Nếu không gian vector V có cơ sở là mt shu hn các vector thì bt kỳ cơ  
snào ca V cũng sẽ có cùng sphn tử. Khi đó nó chính là chiều ca V trên K.  
Nếu F là một trường mrng của trường K thì F là mt không gian vector  
trên K. Chiu ca F trên K được gi là bc mrng ca F trên K.  
22  
Chương 2. ĐƯỜNG CONG ELLIPTIC  
Hthng mã khóa khóa công khai da trên vic sử dụng các bài toán khó giải  
quyết. Vn đề khó ở đây chính là vic slượng phép tính cn thiết để tìm ra mt li  
giải cho bài toán là rt ln. Trong lịch s20 năm của ngành mã hóa bất đối xứng đã  
có nhiu đề xut khác nhau cho dạng bài toán như vậy, tuy nhiên chỉ có hai trong số  
các đề xuất đó còn tn tại đến ngày nay. Hai bài toán đó bao gm : bài toán logarit  
ri rạc (discrete logarithm problem) và bài toán phân tích tha số của snguyên.  
Cho đến năm 1985, hai nhà khoa học Neal Koblitz và Victor S.Miller đã độc  
lp nghiên cu và đưa ra đề xut ng dụng lý thuyết toán học đường cong elliptic  
(elliptic curve ) trên trường hu hạn.  
Đường cong elliptic cũng như đi số hình học- được nghiên cu rng rãi trong  
vòng 150 năm trở lại đây đã đạt được mt skết quả lý thuyết có giá trị. Đường  
cong elliptic được phát hin lần đầu tiên vào thế kỷ 17 dưới dạng công thc  
Diophantine :  
y2 – x3 = c  
vi c  
Z
Tính bảo mt của hthng mã hóa sử dụng đường cong elliptic dựa trên điểm  
mu cht là độ phc tạp của bài toán logarit ri rạc trong hthống đại s. Trong  
sut 10 năm gần đây, bài toán này nhận được squan tâm chú ý rng rãi của các  
nhà toán học hàng đầu trên thế gii. Không giống như bài toán logarit ri rạc trên  
trường hu hạn hoc bài toán phân tích tha số của snguyên, bài toán logarit ri  
rạc trên đường cong elliptic chưa có thut toán nào có thi gian thc hin nhỏ hơn  
cp y tha. Thut toán tt nhất được biết đến hôm nay tn thi gian thc hin cp  
y tha.  
23  
2.1. CÔNG THC WEIERSTRASSE VÀ ĐƯỜNG CONG  
ELLIPTIC  
Gọi K là trường hu hạn hoc vô hạn. Một đường cong elliptic được định  
nghĩa trên trường K bng công thc Weierstrasse :  
y2 + a1xy + a3y = x3 + a2x2 + a4x + a6  
(1)  
Trong đó a1 , a2 , a3 , a4 , a5 , a6  
K
Đường cong elliptic trên trường k được ký hiu E(K). Slượng các điểm  
nguyên trên E ký hiu là #E(K) , có khi chỉ đơn giản là #E. Đối vi tng trường  
khác nhau, công thc Weierstrasse có thể được biến đổi và đơn giản hóa thành các  
dạng khác nhau. Một đường cong elliptic là tp hp các điểm thỏa mãn công thc  
trên.  
Hình 1: Mt ví dụ về đường cong Elliptic  
2.2. ĐƯỜNG CONG ELLIPTIC TRÊN TRƯỜNG R2  
Đường cong elliptic E trên trường sthc R là tp hp các điểm (x,y) thỏa  
mãn công thc:  
y2 = x3 + a4x + a6 vi a4 , a6  
R
(2)  
cùng vi một điểm đặc biệt O được gọi là điểm tại vô cc (ng là phn tử  
identify). Cp giá trị (x,y ) đại din cho một điểm trên đường cong elliptic và tạo  
nên mt phng tọa độ hai chiu (Affine) R x R . Đường cong elliptic E trên R2  
24  
được gọi là định nghĩa trên R , ký hiu là E (R). Đường cong elliptic trên sthc có  
thể dùng để thhin mt nhóm (E(R), +) bao gm tp hp các đim (x ,y) thuc R x  
R vi phép công + trên E(R).  
2.2.1. Phép cng  
Hình 2: Điểm vô cc  
Phép cộng điểm (ESUM) được định nghĩa trên tp E(R) của các điểm (x, y).  
Điểm tại vô cc 0 là điểm cng vi bt kỳ điểm nào ng sẽ ra chính điểm đó.  
Như vậy,  
P x, y E R , P O O P P  
   
P x, y E R , y x3 a a  
   
(3)  
4
6
Như vậy , tương ứng vi mt giá trị x ta sẽ có hai giá trị tọa độ y.  
Điểm (x , -y ) ký hiu là –P E(R), được gọi là điểm đối của P vi :  
P + (-P) = (x , y) + (x ,- y) = 0  
(4)  
Phép cng trên E(R) được định nghĩa theo phương diện hình học . Giả sử có  
hai đim phân bit P Và Q , P, Q E(R). Phép cng trên nhóm đưng cong elliptic  
P +Q = R ,R E(R).  
25  
Hình 3: Phép cộng trên đường cong elliptic  
Để tìm ra điểm R , ta ni P và Q bằng đường thng L. Đường thảng L sẽ ct E  
tại ba điểm P , Q -R(x , y). Điểm R (x , -y) sẽ có tung độ là giá trị đối của y.  
Thhiện đưng cong elliptic dưới dạng đại s, ta có:  
P = (x1 , y1)  
Q = (x2 , y2)  
R= P + Q = (x3 , y3)  
Trong đó P , Q , R E (R) và :  
x3 = θ2 – x1 – x2  
(5)  
y3 = θ(x1 + x3) – y1  
(6)  
(7)  
y2 y1  
  
nếu P ≠ Q  
x2 x1  
3x12 a4  
2y1  
  
Hoc  
nếu P = Q  
(8)  
26  
Thut toán cộng trên đường cong elliptic  
Input:  
Đường cong elliptic E(R)với các tham số a4, a6 E(R) ,  
Điểm P = (x1, y1) E(R) và Q = (x2, y2) E(R)  
Output: R = P + Q, R = (x3, y3) E(R)  
If P = O then R ← Q và trả về giá trị R  
If Q = O then R ← P và trả về giá trị R  
If x1 = x2 then  
If y1 = y2 then  
3x12 a4  
  
2y1  
else if y1 = −y2 then  
R ← O và trả về R,  
y2 y1  
x2 x1  
  
else  
end if  
x3 = θ2 – x1 – x2  
y3 = θ(x1 + x3) – y1  
Trả về (x3, y3) = R  
27  
2.2.2. Phép nhân đôi  
Hình 4: Phép nhân đôi trên đường cong elliptic  
Xét phép nhân đôi (EDBL): nếu cộng hai điểm P, Q  
E(R) vi P = Q thì  
đường thng L slà tiếp tuyến của đường cong elliptic tại điểm P. Trường hp này  
điểm –R sẽ là giao điểm còn li ca L với E. Lúc đó R = 2P.  
28  
2.3. ĐƯỜNG CONG ELLIPTIC TRÊN TRƯỜNG HU HẠN  
Đường cong elliptic được xây dựng trên các trường hu hạn. Có hai trường  
hu hạn thường được sdụng: trường hu hn Fq vi q là snguyên thoc q là 2m  
(m là snguyên).  
Tùy thuộc vào trường hu hn Fq, vi mi bc ca q, tn ti nhiều đường  
cong elliptic. Do đó, với một trường hu hn cố định có q phn tvà q ln, có  
nhiu sla chọn nhóm đường cong elliptic.  
2.3.1. Đường cong elliptic trên trường Fp (p là snguyên t)  
Cho p là snguyên t(p>3), Cho a,b  
Fp sao cho 4a3 + 27b2 0 trong  
trường Fp . Một đường cong elliptic E(Fp) trên Fp (được định nghĩa bi các tham số  
a và b) là tp hp các cp giá trị (x ,y) (x, y Fp) thỏa công thc:  
y2 = x3 + ax + b  
(9)  
cùng vi một điểm 0 – gọi là điểm tại vô cc. Slượng điểm của E(Fp) là #E(Fp)  
thỏa định lý Hasse:  
p 12 p # E(Fp ) p 12 p  
(10)  
Các phép toán của đường cong elliptic trên Fp cũng tương tự vi E(R). Tp  
hợp các đim trên E(Fp) to thành mt nhóm tha các tính cht sau:  
Tính đóng: a, b G, a + b G.  
Tính kết hp: Các phép toán trong nhóm có tính kết hp  
Do đó, (a + b) + c = a + (b + c).  
Phn ttrung hòa: có mt giá tr0 G sao cho a + 0 = 0 + a = a,  
Phn tử đối: , a G , -a G gi là số đối ca a, sao cho  
-a + a = a + (-a) = 0  
a
G.  
Bc ca một điểm A trên E(Fp) là mt số nguyên dương r sao cho:  
AA....A 0  
  
(11)  
r
29  
m
2.3.2. Đường cong elliptic trên trường F2  
m
m
Một đưng cong elliptic E(F2 ) trên F2 được đĩnh nghĩa bi các tham sa , b  
m
m
m
F2 (vi b 0 ) là tp các đim (x,y) vi các x F2 , y F2 thỏa công thc:  
y2 + xy = x3 + ax2 + b  
(12)  
m
cùng với điểm 0 là điểm tại vô cc . Slượng các đim thuc E(F2 ) ký hiu  
m
# E(F2 ) thỏa định lý Hasse :  
p 12 p # E(Fp ) p 12 p  
(13)  
m
Trong đó q = 2m . Ngoài ra # E(F2 ) là schn  
m
Tp hợp các đim thuc E(F2 ) to thành mt nhóm tha các tính cht sau:  
0 + 0 = 0  
m
(x , y) + 0 = (x , y) , (x ,y) E(F2 )  
m
(x , y) + (x, x + y) = 0 , (x ,y) E(F2 ) Khi đó (x, x + y) điểm đối của  
m
(x , y) trên E(F2 )  
Vic xử lý được thc hin trên hai htọa độ khác nhau: htọa độ Affine và  
htọa độ quy chiếu. Vi các htọa độ khác nhau, việc tính toán trên đường  
cong cũng khác nhau.  
2.3.3. Các phép toán trên đường cong elliptic trong hệ tọa độ Affine  
m
Hhóa đường cong elliptic da trên bài toán logarit ri rc trên E(F2 ) và  
các tính toán cơ bản trên đường cong elliptic. Phép nhân được thhin là mt dãy  
các phép cộng và phép nhân đôi các điểm của đường cong elliptic. Giống như các  
phép tính trên đường cong elliptic trên sthc, phép cộng và phép nhân đôi được  
định nghĩa trên htọa đ.  
m
t đưng cong elliptic E trên F2 trong hệ tọa đAffine. Cho P = (x1 , y1) ,  
m
Q = (x2 , y2) hai điểm trên đường cong elliptic E(F2 ) . Điểm đối của P là:  
m
–P = (x1 , y1+x1)  
E(F2 ).  
30  

Tải về để xem bản đầy đủ

pdf 61 trang yennguyen 01/05/2025 120
Bạn đang xem 30 trang mẫu của tài liệu "Luận văn Nghiên cứu, tìm hiểu và trình bày về chữ ký số trên đường cong elliptic, ứng dụng của đường cong elliptic trong hệ thống bỏ phiếu điện tử và hệ thống tiền điện tử", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfluan_van_nghien_cuu_tim_hieu_va_trinh_bay_ve_chu_ky_so_tren.pdf