Khóa luận Nghiên cứu một số giải pháp công nghệ thông tin trong việc sử dụng tiền điện tử

ĐẠI HC QUC GIA HÀ NI  
TRƯỜNG ĐẠI HC CÔNG NGHỆ  
---------- YZ ----------  
Nguyn ThAn  
NGHIÊN CU MT SGII PHÁP CÔNG NGHỆ  
THÔNG TIN TRONG VIC SDNG TIN ĐIN TỬ  
KHOÁ LUN TT NGHIP HỆ ĐẠI HC CHÍNH QUY  
Ngành: Công NghThông Tin  
HÀ NI - 2009  
1
ĐẠI HC QUC GIA HÀ NI  
TRƯỜNG ĐẠI HC CÔNG NGHỆ  
---------- YZ ----------  
Nguyn ThAn  
NGHIÊN CU MT SGII PHÁP CÔNG NGHỆ  
THÔNG TIN TRONG VIC SDNG TIN ĐIN TỬ  
KHOÁ LUN TT NGHIP HỆ ĐẠI HC CHÍNH QUY  
Ngành: Công NghThông Tin  
Cán bhướng dn: PGS.TS Trnh Nht Tiến  
HÀ NI - 2009  
2
LI CM ƠN  
Li đầu tiên, em xin được gi li cm ơn chân thành và sâu sc nht ti PGS.TS  
Trnh Nht Tiến – người Thy luôn chbo, hướng dn hết sc nhit tình, giúp đỡ em  
trong sut quá trình hc tp và xây dưng khóa lun.  
Em xin chân thành cm ơn các Thy, Cô giáo đã dy dem trong sut quá trình  
hc tp ti trường Đại hc Công Ngh. Nhng kiến thc các thy cô truyn đạt smãi  
là hành trang để em vng trong tương lai.  
Xin được cm ơn ti các bn K50HTTT đã cung cp cho mình nhng tài liu quý  
báu để mình hoàn thành khóa lun. Cm ơn ti tt ccác bn bè ca mình đã luôn sát  
vai, tin tưởng và giúp đỡ mình trong sut 4 năm đại hc qua.  
Cui cùng, con xin được gi li biết ơn sâu sc nht ti Bmvà nhng người  
thân trong gia đình, nhng người luôn dành cho con tình yêu, nim tin và động viên  
con trong sut quá trình hc tp.  
Hà ni, tháng 5 năm 2009  
Sinh viên  
Nguyn ThAn  
3
TÓM TT NI DUNG  
Thương mi đin tnói chung và tin đin tnói riêng đang còn là mt lĩnh  
vc mi m. Vì vy, để tin đin tcó ththc sthâm nhp vào cuc sng, trở  
thành mt phương thc thanh toán hiu quả đòi hi cn phi có quá trình nghiên cu  
và phát trin.  
Khóa lun strình bày nhng kiến thc khái quát vTin đin t, sau đó tp  
trung nghiên cu hai vn đề ln hin đang đặt ra đối vi tin đin t:vn đề ẩn danh  
người sdng và vn đề ngăn chn người sdng tiêu mt đồng Tin đin tử  
nhiu ln. Khóa lun cũng gii thiu và phân tích mt shthng tin đin thin  
nay trên thế gii, và đề xut vic ng dng tin đin tti Vit nam. Ngoài ra, khóa  
lun sDemo mt chương trình nhvmt hthng tin đin tbng ngôn ngC++.  
4
MC LC  
LI CM ƠN ................................................................................................................. 3  
TÓM TT NI DUNG.................................................................................................. 4  
MC LC ....................................................................................................................... 5  
DANH MC CÁC KÝ KIU........................................................................................ 8  
DANH MC BNG BIU ............................................................................................ 9  
MỞ ĐẦU........................................................................................................................ 10  
Chương 1. CÁC KHÁI NIM CƠ BN .................................................................... 12  
1.1. MT SKHÁI NIM TOÁN HC.............................................................. 12  
1.1.1.  
1.1.2.  
1.1.3.  
Khái nim trong shc.................................................................... 12  
Khái nim trong đại s..................................................................... 15  
Độ phc tp...................................................................................... 17  
1.2. MÃ HÓA. .......................................................................................................... 20  
1.2.1.  
1.2.2.  
1.2.3.  
1.2.4.  
Khái nim vmã hóa. ...................................................................... 20  
Hmã hóa. ....................................................................................... 21  
Mã hóa và gii mã............................................................................ 21  
Hmã hóa khóa công khai RSA...................................................... 22  
1.3. CHKÝ............................................................................................................ 24  
1.3.1.  
1.3.2.  
Gii thiu vchký......................................................................... 24  
Mt ssơ đồ chký ........................................................................ 26  
1.4. CHIA SBÍ MT CÓ THXÁC MINH. .................................................... 35  
1.4.1.  
1.4.2.  
Sơ đồ chia sbí mt......................................................................... 35  
Sơ đồ chia sbí mt có thxác minh............................................... 36  
1.5. HÀM BĂM........................................................................................................ 37  
1.5.1. Hàm băm h là hàm mt chiu (One-way Hash) vi các đặc tính sau:...... 37  
1.5.2. Tính cht ca hàm băm............................................................................... 37  
5
Chương 2: GII THIU VTIN ĐIN T.......................................................... 38  
2.1. KHÁI NIM THANH TOÁN ĐIN T. ...................................................... 38  
2.1.1. Các mô hình thanh toán đin t.................................................................. 38  
2.2. KHÁI NIM TIN ĐIN T......................................................................... 40  
2.2.1. Mô hình giao dch mua bán bng tin đin t. ........................................... 41  
2.2.2. Cu trúc ca Tin đin t............................................................................ 43  
2.2.3. Tính cht ca tin đin t: .......................................................................... 44  
Chương 3: MT SVN ĐỀ PHÁT SINH KHI DÙNG TIN ĐIN T........... 47  
3.1. MT SVN ĐỀ PHÁT SINH..................................................................... 47  
3.1.1. Vn đề ẩn danh người sdng đồng tin. .................................................. 47  
3.1.2. Vn đề gian ln giá trị đồng tin................................................................. 47  
3.1.3. Vn đề tiêu xài mt đồng tin hai ln......................................................... 48  
3.2. GII PHÁP CHO BÀI TOÁN “N DANH” VÀ “CHNG GIAN LN  
GIÁ TRỊ ĐỒNG TIN”. ........................................................................................ 49  
3.2.1. Gii thiu gii pháp. ................................................................................... 49  
3.2.2. Lược đồ Chaum-Fiat-Naor.......................................................................... 51  
3.2.3. Lược đồ Brand. ........................................................................................... 55  
3.3. GII PHÁP CHO BÀI TOÁN “TIÊU NHIU LN MT ĐỒNG TIN”  
..................................................................................................................... 64  
3.3.1. Gii thiu gii pháp..................................................................................... 64  
3.3.2. Lược đồ truy vết gian ln KV..................................................................... 65  
3.3.3. Lược đồ Fair tracing. .................................................................................. 69  
3.3.4. So sánh lược đồ KV và Fair tracing............................................................ 77  
Chương 4: MT SHTHNG TIN ĐIN T.................................................. 78  
4.1. HTHNG DIGICASH................................................................................. 78  
4.1.1. Phương thc hot động............................................................................... 79  
4.4.2. Nhn xét...................................................................................................... 81  
6
4.2. HTHNG PAYWORD................................................................................ 82  
4.2.1. Phương thc hot động............................................................................... 82  
4.2.2. Nhn xét..................................................................................................... 84  
4.3. VN ĐỀ DÙNG TIN ĐIN TỬ Ở VIT NAM.......................................... 85  
KT LUN ................................................................................................................... 88  
DANH MC TÀI LIU THAM KHO .................................................................... 89  
7
DANH MC CÁC KÝ KIU  
TT Ký hiu  
Chú gii cho ký hiu sdng  
1
KV  
Lược đồ KV (tên viết tt ca hai tác giả  
D.Kugler và H.Vogt )  
2
RSA  
Hmã hóa khóa công khai được đề xut bi  
Ron Rivest, Adi Shamir, Len Adlemon năm  
1977.  
3
4
5
SSS  
TTP  
VSS  
Sơ đồ chia sbí mt – Secret Sharing Schemes  
Bên thba tin cy – Trusted Third Party  
Sơ đồ chia sbí mt có thxác minh – Verify  
Secret Sharing  
8
DANH MC BNG BIU  
Hình 1:  
Hình 2:  
Hình 3:  
Hình 4:  
Hình 5:  
Hình 6:  
Hình 7:  
Hình 8:  
Hình 9:  
Hình 10:  
Hình 11:  
Hình 12:  
Mô hình giao dch cơ bn ca hthng Tin đin t.  
Mô hình phương thc thanh toán  
Mô hình giao dch có tính chuyn nhượng  
Khái quát lược đồ Fair tracing  
Quá trình khi to tài khon ca lược đồ Brand  
Quá trình chng minh đại din tài khon ca lược đồ Brand.  
Giao thc rút tin trong lược đồ Brand  
Giao thc thanh toán  
Tóm tt lược đồ KV  
Giai đon chun btrong lược đồ Fair tracing.  
Giao thc rút tin trong lược đồ Fair tracing.  
Giai đon chun bvi TTP.  
9
MỞ ĐẦU  
1. Tính cp thiết ca khóa lun.  
Smrng và phbiến ca Internet đã thúc đẩy sphát trin ca Thương mi  
đin t. Mt nhu cu ny sinh là thanh toán “đin t”, đơn gin là người mua và  
người bán thanh toán qua ngân hàng bng thtín dng đin t. Hình thc thanh toán  
này chưa tht thun tin. Mt hình thc thanh toán mi đã xut hin: thanh toán bng  
tin đin t.  
Trên toàn thế gii, tin đin tử đã và đang được ng dng thành công, đem li li  
ích cho người dùng.Tuy nhiên trong quá trình sdng tin đin tử đã ny sinh mt số  
vn đề đáng quan tâm như: người dùng gian ln giá trị đồng tin, tiêu nhiu ln mt  
đồng tin hay xác định danh tính người shu đồng tin.  
Vì vy, khóa lun đi vào nghiên cu mt sbài toán trong hthng tin đin tử  
và trình bày nhng cách gii quyết phù hp cho các vn đề trên.  
2. Mc đích ca khóa lun.  
Mc đích ca khóa lun là nghiên cu mt sgii pháp khoa hc cho các bài toán  
phát sinh trong quá trình sdng tin đin t, so sánh, đánh giá ưu nhược đim ca  
các gii pháp và chrõ gii pháp nào phù hp vi tng loi tin đin t.  
3. Đối tượng nghiên cu.  
Đối tượng nghiên cu là các bài toán phát sinh khi dùng tin đin t.  
4. Phương pháp nghiên cu.  
Để nghiên cu được các bài toán tin đin t, phn đầu khóa lun tng hp li  
nhng khái nim toán hc và nhng kiến thc cơ bn vlý thuyết mt mã có  
liên quan. Sau đó đi sâu nghiên cu vtin đin t, chrõ cu trúc, tính cht các loi  
tin đin tử đã và đang được sdng trên thế gii. Từ đó, phân tích để thy rõ các  
bài toán đã phát sinh như thế nào trong quá trình sdng tin đin t, và nêu lên các  
gii pháp phù hp cho tng bài toán.  
10  
5. Kết cu ca khóa lun.  
Khóa lun gm 4 chương.  
Chương 1: Trình bày li mt skhái nim toán hc, và lý thuyết cơ bn vmt  
mã hc.  
Chương 2: Trình bày khái nim vtin đin t, cu trúc, tính cht và mô hình  
giao dch ca tin đin t.  
Chương 3: Nêu mt sbài toán phát sinh trong quá trình dùng tin đin t. Đối  
vi mi bài toán, nêu ra các gii pháp, phân tích rõ ưu nhược đim ca các gii pháp.  
Chương 4: Gii thiu mt shthng tin đin tca các nước trên thế gii và  
demo hthng tin đin tKV.  
Cui cùng là kết lun li nhng đim chính, nhng đóng góp chính ca khóa  
lun, đồng thi chra nhng đim cn khc phc và định hướng phát trin tiếp theo  
cho khóa lun.  
11  
Chương 1. CÁC KHÁI NIM CƠ BN  
1.1. MT SKHÁI NIM TOÁN HC.  
1.1.1. Khái nim trong shc.  
1.1.1.1. Snguyên tvà snguyên tcùng nhau.  
1/. Khái nim.  
Snguyên tlà schchia hết cho 1 và chính nó.  
Hai sm và n được gi là nguyên tcùng nhau nếu ước schung ln nht ca  
chúng bng 1.  
Ký hiu: gcd(m, n)=1  
2/. Ví d.  
2, 3, 5, 7, 11…là nhng snguyên t.  
15 và 16 là hai snguyên tcùng nhau.  
1.1.1.2. Đồng dư thc.  
1/. Khái nim.  
Cho các snguyên a, b, m (m>0). Ta nói rng a và b “đồng dư” vi nhau theo  
modulo m, nếu chia a và b cho m, ta nhn được cùng mt sdư.  
Ký hiu: a b (mod m)  
2/. Ví d.  
17 5 (mod 3) vì chia 17 và 5 cho 3, được cùng sdư 2.  
Nhn xét: Các mnh đề sau đây là tương đương.  
1) a b (mod m)  
2) m \ (a - b)  
3) Tn ti snguyên t sao cho a = b + mt  
3/. Các tính cht ca quan hđồng dư”.  
Vi mi snguyên dương m ta có:  
a a ( mod m) vi mi a Z;  
(tính cht phn x)  
(tính cht đối xng)  
(tính cht bc cu)  
a b ( mod m) thì b a ( mod m);  
a b ( mod m) và b c ( mod m) thì a c ( mod m);  
12  
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)  
Tích các đồng dư:  
(a*b) (mod n) [(a mod n) * (b mod n)] (mod n)  
4/. Các lp thng dư:  
Quan hđồng dư” theo modulo m trên tp Z (tp các snguyên) là mt  
quan htương đương (vì có tính cht phn x, đối xng, bc cu), do đó nó to ra trên  
tp Z mt phân hoch gm các lp tương đương: hai snguyên thuc cùng mt lp  
tương đương khi và chkhi chúng có cùng mt sdư khi chia cho m.  
Mi lp tương đương đại din bi mt strong tp Zm ={0, 1,…, m-1} là sdư  
khi chia các strong lp cho m, ký hiu mt lp được đại din bi sa là [a]m .  
Như vy [a]m = [b]m a b (mod m)  
Vì vy ta có thể đồng nht Zm vi tp các lp tương đương theo modulo m.  
Zm ={0, 1, 2,…, m-1} được gi là tp các thng dư đầy đủ” theo modulo m. Mi  
snguyên bt kỳ đều có thtìm được trong Zm mt số đồng dư vi mình theo  
modulo m.  
1.1.1.3. Phn tnghch đảo.  
1/. Khái nim.  
Cho a Zn , nếu tn ti b Zn sao cho a b 1 (mod n), ta nói b phn tử  
nghch đảo ca a trong Zn và ký hiu a -1.  
Mt phn tcó phn tnghch đảo, gi là khnghch.  
2/. Định lý.  
UCLN (a, n) = 1 Phn ta Zn có phn tnghch đảo.  
13  
3/. Tính cht.  
Cho a, b Zn, phép chia ca a cho b theo modulo n là tích ca a và b-1 theo  
modulo n, và chỉ được xác định khi b có nghch đảo theo modulo n.  
Cho a Zn. Khnghch khi và chkhi gcd(a,n) = 1  
Gisd = gcd(a,n). Phương trình đồng dư ax b mod n có nghim x khi và  
chkhi d chia hết cho b, trong trường hp các nghim d nm trong khong 0 đến n-1  
thì các nghim đồng dư theo modulo n/d.  
1.1.1.4. Khái nim Logarit ri rc.  
Cho p là snguyên t, g là phn tnguyên thuca Zp , β ∈ Z*p  
Logarit ri rc” chính là vic gii phương trình x = log g β (mod p) vi n x.  
Hay phi tìm sx duy nht sao cho: g x ≡ β (mod p).  
14  
1.1.2. Khái nim trong đại s.  
1.1.2.1. Khái nim nhóm.  
1/. 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 tnghch đả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.  
2/. Ví d.  
+ Tp hp các snguyên Z cùng vi phép cng (+) thông thường là nhóm  
giao hoán, có phn tử đơn vlà 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.  
+ Tp các vectơ trong không gian vi phép toán cng vectơ là nhóm giao hoán.  
1.1.2.2. Nhóm con ca nhóm (G,*).  
1/. Khái nim.  
Nhóm con ca G là tp S G, S ≠ φ, và tha mãn các tính cht sau:  
+ Phn ttrung lp e ca G nm trong S.  
+ S khép kín đối vi phép tính (*) trong G, tc là x*y S vi mi x, yS.  
+ S khép kín đối vi phép ly nghch đảo trong G, tc x -1 S vi mi xS.  
15  
2/. Ví d.  
Xét nhóm cng theo modulo 6 các stnhiên nhhơn 6.  
Z6= {0, 1, 2, 3, 4, 5}  
Ta có các nhóm con sinh bi các phn t2,3 là:  
<2> = {0, 2, 4}  
<3> ={0, 3}  
1.1.2.3. Nhóm Cyclic.  
1/. Khái nim.  
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 đó ca g.  
2/. Ví d.  
Nhóm (Z+ , +) gm các snguyên dương là Cyclic vi phn tsinh g = 1.  
16  
1.1.3. Khái nim độ phc tp.  
1.1.3.1. Khái nim Thut toán.  
1/. Khái nim Bài toán.  
Bài toán được din đạt bng hai phn:  
Input: Các dliu vào ca bài toán.  
Output: Các dliu ra ca bài toán (kết qu).  
Không mt tính cht tng quát, githiết các dliu trong bài toán đều là snguyên.  
2/. Khái nim Thut toán.  
Thut toánđược hiu đơn gin là cách thc để gii mt bài toán. Cũng có thể  
được hiu bng hai quan nim: Trc giác hay Hình thc như sau:  
Quan nim trc giác vThut toán”.  
Mt cách trc giác, Thut toán được hiu là mt dãy hu hn các qui tc (Chth,  
mnh lnh) mô tmt quá trình tính toán, để tdliu đã cho (Input) ta nhn được  
kết qu(Output) ca bài toán.  
Quan nim toán hc vThut toán”.  
Mt cách hình thc, người ta quan nim thut toán là mt máy Turing.  
Thut toán được chia thành hai loi: Đơn định và không đơn định.  
Thut toán đơn định (Deterministic):  
Là thut toán mà kết quca mi phép toán đều được xác định duy nht.  
Thut toán không đơn định (NonDeterministic):  
Là thut toán có ít nht mt phép toán mà kết quca nó là không duy nht.  
17  
3/. Hai mô hình tính toán  
Hai quan nim vthut toán ng vi hai mô hình tính toán.  
ng vi hai mô hình tính toán có hai cách biu din thut toán:  
Mô hình ng dng:  
Thut toán được biu din bng ngôn ngta Algol.  
+ Đơn vnh: Mt ô nhcha trn vn mt dliu.  
+ Đơn vthi gian: Thi gian để thc hin mt phép tính cơ bn trong shc  
hay logic như cng, tr, nhân, chia, ...  
Mô hình lý thuyết:  
Thut toán được biu din bng ngôn ngmáy Turing.  
+ Đơn vnh: 1 ô nhcha mt tín hiu. Vi mã nhphân thì đơn vnhlà 1 bit.  
+ Đơn vthi gian: Thi gian để thc hin mt bước chuyn hình trng.  
1.1.3.2. Khái nim độ phc tp ca Thut toán.  
1/. Chi phí ca thut toán (Tính theo mt bdliu vào):  
Chi phí phi trcho mt quá trình tính toán gm chi phí vthi gian và bnh.  
Chi phí thi gian ca mt quá trình tính toán là thi gian cn thiết để thc hin  
quá trình tính toán đó.  
Vi thut toán ta Algol: Chi phí thi gian là scác phép tính cơ bn thc hin  
trong quá trình tính toán .  
Chi phí bnhca mt quá trình tính toán là sô nhcn thiết để thc hin mt  
quá trình tính toán.  
Gi A là mt thut toán, e là dliu vào ca bài toán đã được mã hoá bng cách  
nào đó. Thut toán A tính trên dliu vào e phi trmt giá nht định. Ta ký hiu:  
t A (e) là giá thi gian l A(e) là giá bnh.  
2/. Độ phc tp vbnh(Trong trường hp xu nht):  
LA(n) = max{ l A (e), vi |e| n}, n là “kích thước” đầu vào ca thut toán.  
18  
3). Độ phc tp thi gian (Trong trường hp xu nht):  
TA(n) = max { t A (e), vi |e| n}.  
4). Độ phc tp tim cn:  
Độ phc tp PT(n) được gi là tim cn ti hàm f(n),  
ký hiu O(f(n)) nếu các sn0 , c mà PT(n) c.f(n) , n n0.  
5). Độ phc tp đa thc:  
Độ phc tp PT(n) được gi đa thc, nếu nó tim cn ti đa thc p(n).  
6). Thut toán đa thc:  
Thut toán được gi là đa thc, nếu độ phc tp vthi gian (trong trường hp  
xu nht) ca nó là đa thc.  
- Nói cách khác:  
+ Thut toán thi gian đa thc là thut toán có độ phc tp thi gian O(n t ),  
trong đó t là hng s.  
+ Thut toán thi gian hàm mũ độ phc tp thi gian O(t f (n) ), trong đó  
t là hng sf(n) đa thc ca n.  
- Thi gian chy ca các lp thut toán khác nhau:  
Độ  
phc tp  
Sphép tính(n=106)  
Thi gian(106ptính/s)  
O(1)  
1
1micro giây  
1 giây  
O(n)  
106  
O(n2)  
O(n3)  
O(2n)  
1012  
1018  
10301 030  
11,6 ngày  
32 000 năm  
10301 006 tui ca vũ trụ  
19  
1.2. MàHÓA.  
1.2.1. Khái nim vmã hóa.  
* Mã hóa là quá trình chuyn thông tin có thể đọc được (gi là Bn rõ) thành  
thông tin “khó” thể đọc được theo cách thông thường (gi là Bn mã).  
Đó là mt trong nhng kthut để bo mt thông tin.  
* Gii mã là quá trình chuyn thông tin ngược lI: tBn mã thành Bn rõ.  
* Thut toán mã hoá hay gii mã là thtc tính toán để thc hin mã hóa hay  
gii mã.  
* Khóa mã hóa là mt giá trlàm cho thut toán mã hoá thc hin theo cách  
riêng bit và sinh ra bn rõ riêng. Thông thường khoá càng ln thì bn mã càng an toàn.  
Phm vi các giá trcó thcó ca khoá được gi là Không gian khoá.  
* Hmã hóa là tp các thut toán, các khóa nhm che giu thông tin, cũng như  
làm cho rõ nó.  
Phân loi: Phân loi mã hóa theo đặc trưng ca khóa  
Có 2 loi:  
+ Hmã hóa khóa đối xng  
+ Hmã hóa khóa công khai  
20  
1.2.2. Hmã hóa.  
Vic mã hoá phi theo quy tc nht định, quy tc đó gi là Hmã hóa.  
Hmã hóa được định nghĩa là bnăm (P, C, K, E, D), trong đó:  
P là tp hu hn các bn rõ có th.  
C là tp hu hn các bn mã có th.  
K là tp hu hn các khoá có th.  
E là tp các hàm lp mã.  
D là tp các hàm gii mã.  
Vi khóa lp mã ke K, có hàm lp mã eke E, eke: PC,  
Vi khóa gii mã kd K, có hàm gii mã dkd D, dkd: CP,  
sao cho dkd (eke (x)) = x, x P.  
Ở đây x được gi là bn rõ, eke (x) được gi là bn mã.  
1.2.3. Mã hóa và gii mã.  
Người gi G  
→ →  
eke (T)  
→ → Người nhn N  
(có khóa gii mã  
(có khóa lp mã ke)  
kd)  
Tin tc có thtrm bn mã eke (T)  
21  
1.2.4. Hmã hóa khóa công khai RSA.  
1). Sơ đồ  
(Rivest, Shamir, Adleman đề xut năm 1977)  
- To cp khóa (bí mt, công khai) (a, b) :  
Chn bí mt snguyên tln p, q, tính n = p * q, công khai n, đặt P = C = Zn  
Tính bí mt φ(n) = (p-1).(q-1). Chn khóa công khai b < φ(n), nguyên tvi φ(n).  
Khóa bí mt a là phn tnghch đảo ca b theo mod φ(n): a*b 1 mod φ(n).  
Tp cp khóa (bí mt, công khai) K = {(a, b)/ a, b Zn , a*b 1 mod φ(n)}.  
Vi Bn rõ x P và Bn mã y C, định nghĩa:  
Hàm Mã hoá: y = ek (x) = x b mod n  
Hàm Gii mã: x = dk (y) = y a mod n  
2). Ví d.  
Bn rõ ch:  
*Sinh khóa:  
R E N A I S S A N C E  
Chn bí mt snguyên tp= 53, q= 61, tính n = p * q = 3233, công khai n.  
Đặt P = C = Zn , tính bí mt φ(n) = (p-1). (q-1) = 52 * 60 = 3120.  
+ Chn khóa công khai b là nguyên tvi φ(n), tc là ƯCLN(b, φ(n)) = 1,  
ví dchn b = 71.  
+ Khóa bí mt a là phn tnghch đảo ca b theo mod φ(n): a*b 1(mod φ(n)).  
Ta*b 1 (mod φ(n)), ta nhn được khóa bí mt a = 791.  
* Bn rõ s:  
R E  
17 04 13 00  
m1 m2  
N A  
I
S
S
A
N C  
18 00 13 02  
m4 m5  
E
(Du cách)  
08 18  
04  
26  
m3  
m6  
b
Theo phép lp mã: ci = mi mod n = mi 71 mod 3233, ta nhn được:  
22  
* Bn mã s:  
c1  
c2  
0100  
c3  
c4  
c5  
c6  
3106  
0931  
2691  
1984  
2927  
a
Theo phép gii mã: mi = ci mod n = ci 791 mod 3233, ta nhn li bn rõ.  
3). Độ an toàn  
- Hmã hóa RSA là tt định, tc là vi mt bn rõ x và mt khóa bí mt a, thì  
chcó mt bn mã y.  
- Hmt RSA an toàn, khi giữ được bí mt khoá gii mã a, p, q, φ(n).  
Nếu biết được p và q, thì thám mã ddàng tính được φ(n) = (q-1)*(p-1).  
Nếu biết được φ(n), thì thám mã stính được a theo thut toán Euclide mrng.  
Nhưng phân tích n thành tích ca p và q là bài toán “khó”.  
Độ an toàn ca Hmt RSA da vào khnăng gii bài toán phân tích số  
nguyên dương n thành tích ca 2 snguyên tln p và q.  
23  
1.3. CHKÝ.  
1.3.1. Gii thiu vchký.  
Ký slà phương pháp ký mt thông đip lưu dưới dng “s”(đin t).Thông đip  
được ký và chký cùng truyn trên mng ti người nhn.  
Người ta to ra chký s” (chđin t) trên tài liu s” ging như to ra  
bn mã” ca tài liu vi “khóa lp mã”.  
Như vy “ký s” trên tài liu s” là “” trên tng bit tài liu. Kgian khó thể  
gimo “chký s” nếu nó không biết “khóa lp mã”.  
Để kim tra mt “chký s” thuc vmt “tài liu s”, người ta gii mã  
chký s” bng “khóa gii mã”., và so sánh vi tài liu gc.  
Ngoài ý nghĩa để chng thc ngun gc hay hiu lc ca các tài liu shóa,  
Mt mnh ca “chký s” hơn “chký tay” chngười ta có th”  
vào tài liu trt xa trên mng công khai. Hơn thế na, có th” bng các thiết bị  
cm tay (ví d: đin thoi di động) ti khp mi nơi min là kết ni được vào mng.  
Đỡ tn bao thi gian, sc lc, chi phí, …  
“Ký s” thc hin trên tng bit tài liu, nên độ dài ca “chký s” ít nht cũng  
bng độ dài ca tài liu. Do đó thay vì ký trên tài liu dài, người ta thường dùng “hàm  
bămđể to “đại din” cho tài liu, sau đó mI “Ký s” lên đại din” này  
1). Sơ đồ chký số  
Sơ đồ chký là bnăm (P, A, K, S, V ), trong đó:  
P là tp hu hn các văn bn có th.  
A là tp hu hn các chký có th.  
K là tp hu hn các khoá có th.  
S là tp các thut toán ký.  
V là tp các thut toán kim th.  
24  
Vi mi khóa k K có:  
Thut toán ký Sig k S, Sig k : PA,  
Thut toán kim tra chký Ver k V, Ver k : P × A→ {đúng, sai}, thomãn  
điu kin sau vi mi x P, y A  
Đúng, nếu y = Sig k (x)  
Ver k (x, y) =  
Sai, nếu y Sig k (x)  
25  
1.3.2. Mt ssơ đồ chký .  
1.3.2.1. Sơ đồ ký sRSA.  
1/. Sơ đồ (Đề xut năm 1978)  
*To cp khóa (bí mt, công khai) (a, b) :  
Chn bí mt snguyên tln p, q, tính n = p * q, công khai n, đặt P = C = Zn  
Tính bí mt φ(n) = (p-1).(q-1). Chn khóa công khai b < φ(n), nguyên tvi φ(n)  
Khóa bí mt a là phn tnghch đảo ca b theo mod φ(n): a*b 1 (mod φ(n).  
Tp cp khóa (bí mt, công khai) K = {(a, b)/ a, b Zn , a*b 1 (mod φ(n))}.  
* Ký s: Chký trên x P là y = Sig k (x) = x a (mod n), y A. (R1)  
* Kim tra ch: Verk (x, y) = đúng x y b (mod n). (R2)  
1.3.2.2. Sơ đồ ký sSchnoor.  
1/. Sơ đồ:  
Ly G là nhóm con cp q ca Zn* vi q là snguyên t.  
Chn phn tsinh g G sao cho bài toán logarit trên G là khó gii.  
Chn x 0 làm khóa bí mt  
Tính y = gx làm khóa công khai  
Ly H làm hàm băm không va chm.  
* Ký:  
Giscn ký trên văn bn m  
Chn r ngu nhiên thuc Zq  
Tính c = H (m,xr)  
Tính s = (r+xc) mod q  
Chký Schorr là cp (c,s)  
* Kim tra chký:  
Vi mt văn bn m cho trước, mt cp (c, s) được gi là mt chký Schnorr hp  
lnếu tha mãn phương trình.  
c = H (m, gs * ys)  
26  
1.3.2.3. Chký mù.  
Chký mù được Chaum gii thiu vào năm 1983. Mc đíchc ca chký mù là  
làm cho người ký trên văn bn không biết ni dung văn bn.  
ng dng trong hthng tin đin t: Mua bán hàng trên mng.  
GisAlice mun mua mt quyến sách B giá 100$ tBob. Gischai người  
đều sdng dch vca mt ngân hàng. Giao thc giao dch sgm 3 giai đon.  
Rút tin:  
Alice to tin đin tC (vi nhng thông tin : sseri, giá trca C, ví dlà 100$)  
Alice yêu cu ngân hàng ký mù lên C.  
Giao thc ký thành công, ngân hàng str100$ trong tài khon ca Alice.  
Tiêu tin:  
Alice đưa cho Bob tin C đã có chký ca ngân hàng, và yêu cu Bob đưa cho  
quyn sách B.  
Bob kim tra chký trên C. Nếu không hp l, Bob sdng ngay giao dch.  
Gi tin:  
Bob ly C tAlice và gi cho ngân hàng.  
Ngân hàng xác thc chký trên C:  
+ Nếu hp l, ngân hàng kim tra xem C đã được tiêu trước đó hay chưa.  
+ Nếu C chưa được tiêu thì ngân hàng cng thêm C vào tài khon ca Bob.  
+ Nếu vic gi tin thành công, Bob sgi quyn sách B cho Alice.  
Bob khó thbiết rng C là ttài khon nào. Khi Bob gi C thì ngân hàng cũng  
“khó” thbiết rng C được ly ra ttài khon ca Alice vì nó đã được ký mù. Như vy  
tin đin tC không lưu li du vết ca nhng ai đã tiêu nó.  
27  
1/. Sơ đồ chký mù RSA:  
Yêu cu bài toán là: A mun ly chký ca B trên x nhưng không mun B biết x.  
Quá trình thc hin như sau.  
+ Ly p, q là các snguyên tln, tính n = p*q  
+ Tính φ(n) = (p-1).(q-1), ab 1 mod φ(n)  
+ r là sngu nhiên Zn (chn r sao cho tn ti phn tnghch đảo r-1( mod n))  
Bước 1: A làm mù x bng mt hàm:  
Blind(x) = x*rb mod n = z, và gi z cho B  
Bước 2: B ký trên z bng hàm:  
Sign(z) = Sign(Blind (x)) = za mod n = y, và gi li y cho A.  
Bước 3: A tiến hành xóa mù y bng thut toán:  
UnBlind(y) = UnBlind( Sign( Blind( x))) = y/r mod n = sign(x)  
Ví d:  
Alice cn Bob ký lên thông đip x = 8.  
Nếu theo chký RSA, thì kết quthông đip sau khi ký là :  
Sign( x=8) = xa mod n = 87 mod 15 = 2 = y  
Nhưng Alice mun Bob ký mù lên x.  
Bước 1(làm mù): Alice tiến hành làm mù x = 8  
Blind (x) = x* rb mod n= 8 * 11 7 (mod 15)  
= 8 * 19487171 (mod 15)  
= 15589368 mod 15 = 13 = z.  
Vi r = 11 là sngu nhiên Z15 ( thoa: gcd(11, 15) = 1)  
Bước 2: Tiến hành ký trên z.  
y = Sign(z) = za mod n = 137 (mod 15) = 7  
Bước 3: Tiến hành xóa mù:  
UnBlind(y) = y/r (mod n) =7/11 (mod 15) = 7 * 11-1 mod 15 = 2  
28  
2/. Sơ đồ chký mù Schnorr:  
Sơ đồ chký Schnorr được xây dng bng cách mù hóa sơ đồ ký sSchnorr.  
Giao thc thc hin các bước sau:  
Chun b:  
Khóa bí mt ca ngân hàng là x, khóa công khai là y = g x mod n  
Alice cn ký lên đồng tin Cm  
Ký:  
Bước 1:  
Ngân hàng ly ngu nhiên r Zq  
Tính t = gr và gi t cho Alice  
Bước 2:  
Alice ly ngu nhiên γ, δ Zq  
Tính t’ = t gγ yδ mod n  
Tinh c = H (Cm, t’)  
Tính c’ = c- δ mod q = H(Cm,t’) – δ mod q.  
Gi c’ cho ngân hàng.  
Bước 3:  
Ngân hàng tính s = c’ – r x mod q  
Gi s cho Alice.  
Bước 4:  
Tính s’ = s + γ mod q. Chký là (c, s’)  
Kim tra chký:  
Chký (c, s) là hp lnếu: c = H(Cm, t’) = H(Cm. gs * yc).  
29  
1.3.2.4. Chký dùng mt ln:  
Sơ đồ chký dùng mt ln có nhiu ng dng, đặc bit là mt số ứng dng trong  
các mô hình tin đin t. Sau đây là sơ đồ chký dùng mt ln ca Schorr.  
Vi sơ đồ này, người dùng trong cùng mt hthng có thchia smt sngu  
nhiên và 2 snguyên tp và q sao cho: q | (p-1), q 1 và gq = 1 mod q  
Chun b:  
Người dùng, gisAlice chn Sk Zq ngu nhiên làm khóa bí mt.  
Tính Pt= g-sk mod p làm khóa công khai.  
Ký:  
GisAlice cn ký trên thông đip m  
Alice ly ngu nhiên r Zq*  
Tính x = gr mod p, c = H (m||x), y= ( r + cSk )mod q  
Chký trên thông đip m là (c, y)  
Kim tra:  
Ver = true Ù x = gr mod p và c = H (m || x)  
Nhn xét:  
Sr không được dùng quá mt ln để to ra các chký khác nhau.  
Alice sdng r để ký hai lân thông đip m và m’, to ra hai chký khác nhau là  
(c, y) và (c’, y’). Khi đó ta có:  
(y – y’) = [(r + cSk) – (r + c’Sk)] = Sk * (c – c’)  
Như vy, nếu Alice sdng r quá mt ln để ký cho hai thông đip khác nhau, thì  
bt kai có hai thông đip trên, đều có thgii mã được khóa bí mt Sk.  
Vì vy, sơ đồ chký này được gi là sơ đồ chký dùng mt ln.  
30  

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

pdf 89 trang yennguyen 16/04/2025 170
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Nghiên cứu một số giải pháp công nghệ thông tin trong việc sử dụ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:

  • pdfkhoa_luan_nghien_cuu_mot_so_giai_phap_cong_nghe_thong_tin_tr.pdf