1
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
---------- ----------
Nguyễn Thị An
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Ử
KHOÁ LUẬN TỐT NGHIỆP HỆ ĐẠI HỌC CHÍNH QUY
Ngành: Công Nghệ Thông Tin
HÀ NỘI - 2009
2
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
---------- ----------
Nguyễn Thị An
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Ử
KHOÁ LUẬN TỐT NGHIỆP HỆ ĐẠI HỌC CHÍNH QUY
Ngành: Công Nghệ Thông Tin
Cán bộ hướng dẫn: PGS.TS Trịnh Nhật Tiến
HÀ NỘI - 2009
LỜI CẢM ƠN
!"#!
#$%&'#()#*+,-./0(123456
$.789$3:'5*/;<='"
>9#*?+9.@/A*/B$.789$3
:'5A$CA:?+&2"&D;(19*+$*EAF@
$=GD$.="
H9-AIJKL###@5.3D28M
-9G3.;<='"?9-A-NO=3@+9
=P4563$.7QRA:8="
?7S.-(T7UD
$.=3D+/..3*EV.
$.789$3:'5"
Hà nội, tháng 5 năm 2009
!
&*W#%X
3
TÓM TẮT NỘI DUNG
#A2<E2<$=YVZ[
\"]3'*G E2<G[['5.V7$P
V51=.928Y^5<89$3159
$G"
I<='F$3-*D;(1;989 E#E2=<'5
$1=E2=_$=7E2`E a/=
/bER_/bVc#E2E
"I<='d25eV727E22=*$
(E21/bE2A]2="&.$=;<='F
f.V$3^EV27E2-g+D?hh"
4
MỤC LỤC
Chương 1. CÁC KHÁI NIỆM CƠ BẢN..................................................................10
i"j"j"?9+3=.92""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""kl
i"i"ILmn&nop#nq&Cno&#r""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""ks
i"i"j"p+3=./%=-9-gE2"""""""""""""""""""""""""""""""""""""""""""""""kt
k"j"j"]Ea/=/bcE"""""""""""""""""""""""""""""""""""""""""""""""""""""QJ
k"j"i"]E='9$%cE""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""QJ
5
DANH MỤC CÁC KÝ KIỆU
TT Ký hiệu Chú giải cho ký hiệu sử dụng
j I] cI]u(O==9
f"I$L"].v
i w!X L2@<=;<=+;=E-Pw.
wX/!=$X/.Rjtxx"
k !!! !c=\-e')!$!=$!
Q ## T1-='*)#$/#$/=$*
J ]!! !c=\-e'<G9)]$y*
!$!=$
DANH MỤC BẢNG BIỂU
6
Hình 1: Mô hình giao dịch cơ bản của hệ thống Tiền điện tử.
Hình 2: Mô hình phương thức thanh toán
Hình 3: Mô hình giao dịch có tính chuyển nhượng
Hình 4: Khái quát lược đồ Fair tracing
Hình 5: Quá trình khởi tạo tài khoản của lược đồ Brand
Hình 6: Quá trình chứng minh đại diện tài khoản của lược đồ Brand"
Hình 7: Giao thức rút tiền trong lược đồ Brand
Hình 8: Giao thức thanh toán
Hình 9: Tóm tắt lược đồ KV
Hình 10: Giai đoạn chuẩn bị trong lược đồ Fair tracing.
Hình 11: Giao thức rút tiền trong lược đồ Fair tracing.
Hình 12: Giai đoạn chuẩn bị với TTP.
MỞ ĐẦU
7
1. Tính cấp thiết của khóa luận.
![P$V5z-(O=n$@4a*[59$GO=#A
2"pV* thanh toán “điện tử”, =
-9=.98=-g\e/b2"L31=.9*
=''2"pV31=.9@2`=.9-gE
2"
#$.(E2@=1/b+A
e./S"#*$.89$3/bE2@*V7
E98=`/S='9$%cEEV
cE=*9%/=ePDcE"
]3'*;<='.1V7-.9$.27E2
$3-*D98*(5S5.9E$"
2. Mục đích của khóa luận.
pbeO=;<='1V7595;.=:.9-.9
59$.89$3/bE2.999GO=9
595,${595.5S5|.AE2"
3. Đối tượng nghiên cứu.
C719-.959;/SE2"
4. Phương pháp nghiên cứu.
CG19-.9E25;<='z5A
D;92.9:D;(1-EM*('@<
8="!=<1EE2,${$4e9.AE
2@=/b$("#|<5eG*${9-.9
@59(.$.89$3/bE29595
5S5.|-.9"
5. Kết cấu của khóa luận.
8
I<='cQ"
?j`#$3-*AV7;92.9:M*(-E'@
:"
?i`#$3-*;92EE2$4e+3=.
/%O=E2"
?k`&V7-.959$.89$3/SE2"C7
B-.9$=95955e${GO=9595"
?Q` 2V727E2O=9$(
/.27E2I]"
?7S;('ADGeD<<5eO=;<='
c,$=DG;5b%59$G(5..;<=
'"
9
Chương 1. CÁC KHÁI NIỆM CƠ BẢN
1.1. MỘT SỐ KHÁI NIỆM TOÁN HỌC.
.1.1. Khái niệm trong số học"
.1.1.1. Số nguyên tố và số nguyên tố cùng nhau.
1/. Khái niệm.
!7*77,=(.je<"
L=7:*7S=(7O=
4-gj"
IM2`/uv}j
2/. Ví dụ.
ikJxjj~D7*7"
jJjl=7*7S="
.1.1.2. Đồng dư thức.
1/. Khái niệm.
?.97*=-u•Kv"#=<$g=-€c/•=.
./.(==-.='SV7/"
IM2`=‚-u./v
2/. Ví dụ.
jx‚Ju./kv3=jxJ.kS7/i"
Nhận xét:?92E=*"
1) a ≡ b (mod m)
2) m \ (a - b)
3) Tồn tại số nguyên t sao cho a = b + mt
3/. Các tính chất của quan hệ “đồng dư”.
Với mọi số nguyên dương m ta có:
=‚=u./v:=
∈
ƒ„ utính chất phản xạv
=‚-u./v3-‚=u./v„utính chất đối xứngv
=‚-u./v-‚u./v3=‚u./v„ utính chất bắc cầuv
10
Tổng hay hiệu các đồng dư:
u=h-vu./v‚…u=./vhu-./v†u./v
u=‡-vu./v‚…u=./v‡u-./v†u./v
Tích các đồng dư:
u=ˆ-vu./v‚…u=./vˆu-./v†u./v
4/. Các lớp thặng dư:
‰=2€c/•../.$'5ƒu'597*vV8=
2u3<e5A71-v/.<<A.$=$'5ƒ
V5.Ac95`=7*VSV5
;,;4<SV7/;=."
pB5A/2-PV7$.'5ƒ
}ŠKj~‡j‹7/;
=97$.5.;M2V5A/2-P7=…=†
"
&'*…=†
}…-†
⇔=‚-u./v
]3'*=<Gcƒ
'595../."
ƒ
}ŠKji~‡j‹:'59€thặng dư đầy đủ•../."p:7
*-;ŒE<G3$.ƒ
V7c/3../."
.1.1.3. Phần tử nghịch đảo.
1/. Khái niệm.
?.=∈ƒ
(cA-∈ƒ
=..=-≡ju./nv=<bphần tử
nghịch đảoO==$.
ƒ
;M2=
‡j
"
pV5<5%.:;%"
2/. Định lý"
•?&u=v}j⇔=∈ƒ
<5%."
3/. Tính chất.
11
?.=-∈ƒ
5Ž5=O==.-../.eO==-
‡j
../.
,9%;-<%.../."
?.=∈ƒ
"
I%;,;/u=v}j
/}/u=v"$3c/=‚-./<2;,
;/=(.-$.$592/g$.;.K(‡j39
2c/../.•/"
.1.1.4. Khái niệm Logarit rời rạc.
?.57*75*•O=ƒ
5
β∈
ˆ
p
Z
“Logarit
rời rạc•e25$3}.
βu./5va"
L=*537/*=..`
≡βu./5v"
.1.2. Khái niệm trong đại số"
12
.1.2.1. Khái niệm nhóm.
1/. Khái niệm.
Nhóm V-VuGˆv$.<G≠∅ˆphép toán hai ngôi $G
.@-=e=`
hŽ5.9<e;(5`uˆ*vˆ‘}ˆu*ˆ‘v:*‘∈ "
h?<55trung lậpe∈ `ˆe}eˆ}:∈ "
h]:∈ <5%.’∈ `ˆ’}’ˆ}"
Cấp của nhómGG75O=<;M2
G
"
?5O=<<G∞(G<+A5"
Nhóm Abel <uGˆv$.<5Ž5.9=+ˆ<e=..9"
Tính chất:
&(=ˆ-}=ˆ3-}"
&(=ˆ}-ˆ3=}-"
2/. Ví dụ.
h#'5597*ƒS5Ž5Vuhv+<=.
.9<5%7K:nhóm cộng97*"
h#'5‰
ˆ
97D•;9Ku=*'5w
ˆ
97[;9KvS5Ž5
uˆv+<=..9" :nhóm nhân97D•u7[v
;9K"
h#'59$.;+=5Ž5.9V<=..9"
.1.2.2. Nhóm con của nhóm (G,*).
1/. Khái niệm.
&<.O= '5!⊂ !≠φ^=@9e=`
h$'5O= g$.!"
h!;Ž5;e75Ž5euˆv$. 1ˆ*∈!:*∈!"
h!;Ž5;e75Ž5*%.$. 1
‡j
∈!:∈!"
2/. Ví dụ.
13
HŽ<V../.l97[^l"
ƒ
l
}ŠKjikQJ‹
#=<9<.-P95ik`
“i•}ŠKiQ‹
“k•}ŠKk‹
.1.2.3. Nhóm Cyclic.
1/. Khái niệm.
&<uGˆv:Nhóm Cyclic(<$=-PV$.
95O=<"
#1<5g∈GBa∈GEcA7n∈&G
g
n
}gˆgˆ~ˆg}a"u?4Mˆˆ~ˆgˆgnv"
I<g:phần tử sinh=*phần tử nguyên thuỷ O=<G"
&<9;9`G:&<?*(cAg∈G=..:
5$.GEVluỹ thừa nguyên .<O=g"
2/. Ví dụ.
&<uZ
h
+vc97*/Cyclic5g}1"
.1.3. Khái niệm độ phức tạp"
14
.1.3.1. Khái niệm Thuật toán.
1/. Khái niệm Bài toán.
T.9/WA-g=5`
Input`?9/D2.O=-.9"
Output`?9/D2$=O=-.9u;(8v"
I+ez89(9/D2$.-.9E7*"
2/. Khái niệm Thuật toán.
•Thuật toán•G91GV-.9"?d<G
G-g=8=2`#$[9=*L31=`
• Quan niệm trực giác về •Thuật toán•"
pV9$[9#'.9GV/@*DA98u?,%
22v+V89$3e.9G|/D2@.un5v='
;(8u”5vO=-.9"
• Quan niệm toán học về •Thuật toán•"
pV931=8=2'.9V9*#$"
Thuật toán ==.A`C%;+%"
Thuật toán đơn địnhuDeterministicv`
'.9;(8O=:5Ž5.9E9%/*"
Thuật toán không đơn địnhuNonDeterministicv`
'.9<eV5Ž5.9;(8O=<;+/*"
15
3/. Hai mô hình tính toán
L=8=2E'.91=+3e.9"
•=+3e.9<=9-G/W'.9`
• Mô hình ứng dụng:
#'.9-G/W-g+D[=X."
hC%`pV+1=$:UV/D2"
hC%=`#=G[2V5Ž5e-$.7:=*
.V$|="""
• Mô hình lý thuyết:
#'.9-G/W-g+D9*#$"
hC%`j+1=Ve2"]@%53%j-"
hC%=`#=G[2V-*G3$A"
.1.3.2. Khái niệm độ phức tạp của Thuật toán.
1/. Chi phí của thuật toán (Tính theo một bộ dữ liệu vào):
?5e5$.V89$3e.9c5eE=-V"
Chi phí thời gianO=V89$3e.9=(G[2
89$3e.9<"
]'.9[=X.`?5e=795Ž5e-[2
$.89$3e.9"
Chi phí bộ nhớ O=V89$3e.97+(G[2V
89$3e.9"
:XV'.9/D2.O=-.9@@.9-g9
.<"#'.9Xe$/D2.5$V9%"#=;M2`
X
uv9=l
A
uv9-V"
2/. Độ phức tạp về bộ nhớ uTrong trường hợp xấu nhấtv`
X
uv}=Š
X
uv––≤‹ n €;e•.O='.9"
16
3). Độ phức tạp thời gian uTrong trường hợp xấu nhấtv`
#
X
uv}=Š
X
uv––≤‹"
4). Độ phức tạp tiệm cận:
CV51A5#uv:tiệm cận tới hàm f(n)
ký hiệu O(f(n)) nếu
∃
các số n
0
, c mà PT(n)
≤
c.f(n) ,
∀
n
≥
n
0
.
5). Độ phức tạp đa thức:
CV51A5#uv:đa thức(<tiệm cận tới đa thức p(n).
6). Thuật toán đa thức`
#'.9:đa thức(V51A5E=u$.$5
vO=<đa thức"
‡Nói cách khác:
h#'.9thời gian đa thức'.9<V51A5=O(n
t
),
$.<tg7"
h#'.9thời gian hàm mũ <V51A5=O(t
f (n)
)$.<t
g7f(n)=1O="
‡Thời gian chạy của các lớp thuật toán khác nhau:
CV
51A5
!75Ž5eu}jK
l
v #=ujK
l
5e•v
”ujv j j$.*
”uv jK
l
j*
”u
i
v jK
ji
jjl*
”u
k
v jK
js
kiKKKR
”ui
v jK
kKjKkK
jK
kKjKKl
zO=d$b
"i" MÃ HÓA.
17
.2.1. Khái niệm về mã hóa.
* Ma
̃
hóa =
—
8=
˜
$™
—
*
š
+.
˜
š
.
›
›
u.
›
=
—
Ba
̉
n ro
̃
v=
—
+€khó”
š
.
›
›
.=
˜
+
—
u.
›
=
—
Ba
̉
n ma
̃
v"
C.
˜
=
—
+
›
$.
œ
;*
œ
›
š
-=
š
.
›
+"
* Gia
̉
i mã =
—
8=
˜
$™
—
*
š
+
›
=
›
n`
—
Ba
̉
n ma
̃
=
—
Ba
̉
n ro
̃
"
* Thuâ
̣
t toa
́
n ma
̃
hoa
́
=* gia
̉
i ma
̃
=
—
š
›
™
˜
.=
˜
š
›
›
=
œ
.
˜
==*
=
š
=
œ
"
* Kho
́
a ma
̃
ho
́
a =
—
+
›
=
˜
$
›
=
—
.
›
.=
˜
=
œ
.=
˜
›
›
.=
˜
$-
›
=
—
$=-=
š
$.
œ
$"#+
—
;.=
˜
=
—
˜
™
—
-=
š
=
œ
=
—
=.=
—
"
=
›
=
˜
=
˜
$
›
.
˜
š
.
˜
š
=;.=
˜
›
.
›
=
—
Không gian khoa
́
.
* Hê
̣
ma
̃
ho
́
a =
—
›
5=
˜
›
.=
˜
=
˜
;.
˜
=g
˜
+
œ
=
—
.$.
œ
.
˜
"
Phân loại:.A@<=._$O=;<=
?<i.A`
hL2@<=;<=71
hL2@<=;<=+;=
.2.2. Hệ mã hóa.
18
]2@.95.8*%8*<:Hệ mã hóa"
L2@<=%Z=-VRuPCKEDv$.<`
P '5DA9bản rõ<G.
C '5DA9bản mã <G"
K '5DA9khoá<G.
E '59'5@.
D '59@.
];<='5@ke ∈ K, <'5@e
ke
∈ Ee
ke
` P→C,
];<=@kd∈ K,<@d
kd
∈ Dd
kd
` C
→
P
=.. d
kd
(e
ke
(x)) = x,∀x∈P"
•*x:bản rõe
ke
(x) :bản mã"
.2.3. Mã hóa và giải mã.
& →→e
ke
uTv→→&'&
u<;<='5@kevu<;<=@
kdv
↑
#_<G$V-@e
ke
uTv
1.2.4. Hệ mã hóa khóa công khai RSA.
1). Sơ đồuw!=$X/=ERjtxxv
19
- Tạo cặp khóa ubí mật, công khaiv (ab) `
?:-e'7*758e}5ˆ8+;=_}?}ƒ
#e-e'φuv}u5‡jv"u8‡jv"?:;<=+;=-“φuv*7φuv"
I<=-e'a5%.O=-../φuv`=ˆ-≡j./φuv"
#'5_5;<=u-e'+;=vI}{u=-v•=-∈ƒ
=ˆ-≡j./φuv}"
] Bản rõ∈ Bản mã*∈?%Z=`
Hàm Mã hoá`*}
;
uv}
-
./
Hàm Giải mã`}/
;
u*v}*
=
./
2). Ví dụ .
Bản rõ chữ:R E N A I S S A N C E
ˆSinh khóa`
?:-e'7*75}Jk8}lje}5ˆ8}kikk+;="
C_}?}ƒ
e-e'φuv}u5‡jv"u8‡jv}JiˆlK}kjiK"
h?:;<=+;=-*7φuv1ž?&u-φuvv}j
e/b:-}xj"
hI<=-e'=5%.O=-../φuv`=ˆ-≡ju./φuvv"
#| =ˆ-≡ju./φuvv=';<=-e'=}xtj"
ˆBản rõ số:
w>&Xn!!X&?>uf9v
jxKQjkKKKsjsjsKKjkKiKQil
j
i
k
Q
J
l
#.5Ž5'5@`
}
-
./}
xj
./kikk='`
ˆBản mã số`
j
i
k
Q
J
l
kjKlKjKKKtkjiltjjtsQitix
20
#.5Ž5@`
}
=
./}
xtj
./kikk='A-${"
3). Độ an toàn
‡L2@<=w!X%1V-${V;<=-e'=3
,<V-@y"
‡L2'w!X=.;D-e';.9@=58φuv"
&(-(5839@/W/eφuv}u8‡jvˆu5‡jv"
&(-(φuv39@Fea.'.9>/P$V"
&5eeO=58-.9€;<•"
CV=.O=L2'w!X/[=.;R-.95e7*
/eO=i7*758"
.3. CHỮ KÝ.
.3.1. Giới thiệu về chữ ký.
21
IM75595;MV+25//A€7•u2v"#+25
;MD;MS$*E$A'"
&=A.$=€chữ ký số•uD;M2v$€tài liệu số•7A.$=
€bản mã•O=2€;<='5@•"
&'*€ký số•$€tài liệu số•€ký•$|-2"I\=;<G
A.€D;M7•(<;+-(€;<='5@•"
CG;G$=V€chữ ký số•VEV€tài liệu số•=@
€chữ ký số•-g€;<=@•".927"
&.MZ=G1[c7=*2[O=927<=
p_AO=€chữ ký số•€D;M=*•PB=<G€ký•.
2|$=$A+;="L(D=<G€ký•-g9(-%
=*ue/b`2.A/VvA;5:W;(7.A"C6
7-=.=1[5e~
€IM7•[2$|-2V/O=€chữ ký số•ed
-gV/O=2"f.<=*3;M$2/=/S€hàm
băm•GA.€đại diện•.2=<n€IM7•€đại diện•*
1). Sơ đồ chữ ký số
!cD;M-VRuPAKSV v$.<`
P '5DA9R-<G"
A '5DA9D;M<G"
K '5DA9;.9<G"
S'59'.9;M"
V '59'.9;G"
Với mỗi khóa k ∈ K có`
22
#'.9;M!
;
∈!!
;
`→X
#'.9;G$=D;M]$
;
∈]]$
;
`×X→{4=}.@E
;2=:∈*∈X
C4(y}Sig
k
uxv
Ver
k
uxyv}
!=(y≠Sig
k
uxv
.3.2. Một số sơ đồ chữ ký .
23
1.3.2.1. Sơ đồ ký số RSA.
1/. Sơ đồ uCERjtxsv
ˆTạo cặp khóa ubí mật, công khaiv uabv `
?:-e'7*758e}5ˆ8+;=_}?}ƒ
#e-e'φuv}u5‡jv"u8‡jv"?:;<=+;=-“φuv *7φuv
I<=-e'=5%.O=-../φuv`=ˆ-≡ju./φuv"
#'5_5;<=u-e'+;=vI}{u=-v•=-∈ƒ
=ˆ-≡ju./φuvv}"
ˆKý số`?D;M$∈ *}!
;
uv}
=
u./v*∈X" uwjv
ˆKiểm tra chữ ký`]$
;
u*v}4⇔ ≡*
-
u./v"uwiv
1.3.2.2. Sơ đồ ký số Schnoor.
1/. Sơ đồ:
* <.58O=Z
n
* với q là số nguyên tố.
?:5∈ =..-.9.=$$ ;<"
?:ŸK;<=-e'
#e*}
;<=+;=
*L-R;+=A"
* Ký:
;M$R-
?:$0Vƒ
8
#e}Lu
$
v
#e}u$hv./8
?D;M!.$$_5uv
* Kiểm tra chữ ký:
]VR-.$V_5uv:VD;M!.$$5
2(^=@5$3"
}Lu
ˆ*
v
1.3.2.3. Chữ ký mù.
24
?D;MS?=2.Rjtsk"pbeO=D;MS
.;M$R-;+-(V/R-"
Ứng dụng trong hệ thống tiền điện tử: Mua bán hàng trên mạng.
X7=V8*(9T9jKK |T.-" =
E/b/%bO=V" =.1=./%Fck=.A"
Rút tiền:
XA.E2?uD+`7$9$%O=?e/bjKK v
X*;MS?"
=.1;M+F$|jKK $.;.O=X"
Tiêu tiền:
X=.T.-E?@<D;MO=*T.-=.
8*G9T"
T.-;G$=D;M$?"&(;+52T.-F/|=*=./%"
Gửi tiền:
T.-*?|X."
&9[D;M$?`
h&(52;G$=?@$<=*="
h&(?=3V?.;.O=T.-"
h&(2E+T.-F8*G9T.X"
T.-;<G-($g?|;.."IT.-?3d
€;<•G-($g?*$=|;.O=X3<@;MS"&'*
E2?;+A/(O=D=@<"
1/. Sơ đồ chữ ký mù RSA:
25