Tải bản đầy đủ (.docx) (17 trang)

TIỂU LUẬN AN NINH CƠ SỞ DỮ LIỆU CHỮ KÝ MÙ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (665.36 KB, 17 trang )

AN NINH CƠ SỞ DỮ LIỆU
CHỮ KÝ MÙ
Giảng viên: PGS TS. Trịnh Nhật Tiến
Học viên: Nguyễn Xuân Minh
1
MỤC LỤC
2
1. GIỚI THIỆU CHỮ KÍ MÙ
Chữ ký số lần đầu tiên được Chaum giới thiệu vào năm 1983, cho phép khách
hàng mua hàng nặc danh trong các hệ thống thương mại điện tử. Ở đây người ký văn
bản không biết được nội dung văn bản mà mình ký, ký cho ai (dù rằng anh ta xác thực
được chữ ký của mình). Điều này đồng nghĩa với việc chúng ta ký mà không biết nội
dung của nó. Nhưng nó lại rất hữu ích trong các vấn đề đòi hỏi sự nặc danh trong
thương mại điện tử, đấu giá điện tử và bỏ phiếu điện tử.
Định nghĩa: Chữ ký mù là chữ ký mà người không biết mình đang ký trên nội
dung gì. Vì vậy người ta gọi là Mù. Làm được như vậy vì nội dung X khi ký đuợc làm
mù thành X’. Người ký, ký trên X’chứ không phải ký trên X. A cần B ký cho một chữ
ký trên nội dung X, A không đưa X cho B ký mà làm mù X thành X’. Sau đó đưa X’
cho B ký. Sau khi nhận được chữ trên X’. A xóa mù để thu được chữ ký trên X. Như
vậy vẫn có chữ ký trên X mà B không biết thông tin gì về X cả.
2. CHỮ KÝ MÙ CỦA CHAUM
2.1. Sõ ðồ chữ ký số RSA
Cho n = p * q với p và q là số nguyên tố lớn ( tối thiểu cỡ 10150), ta tính giá trị
φ(n ) = (p – 1).(q – 1 ).
Đặt P =A = Zn
Chọn khóa kiểm tra chữ ký là b: 1<b <φ (n ), b nguyên tố cùng nhau với
φ(n) (UCLN ( b, φ(n) = 1).
Chọn khóa ký là a: a là phần tử nghịch đảo của b theo φ (n)
K = {( n, p, q, a, b ) / n = p * q là các số nguyên tố, a * b ≡ 1 ( mod φ (n) )} k’ =
(n, b) là khóa công khai và giá trị k’’ = (a, p, q )là giá trị khóa bí mật.
Với mỗi K = (n, p, q, a, b ), x∈P ta định nghĩa:


Ký: y = sigk(x, y) = x
a
mod n, y ∈ A
Kiểm thử chữ ký: Ver (x, y) = đúng ⇔ x ≡ y
b
( mod n )
Ví dụ về sơ đồ chữ ký số RSA:
Ký : y = Sig
k
(x ) = x
a
mod n, y ∈ A
Dùng sơ đồ chữ ký số RSA với K = {n, p, q, a, b} trong đó :
P = 113, q = 139, n =q. p =15707, φ (n) = ( p-1) * (q-1) = 15456.
Chọn b = 1627 ( nguyên tố cùng nhau với φ(n)), a = 19 là nghịch đảo của b theo
φ(n). Khi đó: ta ký lên thông điệp x = 100:
Ký: y = Sig
k
(x) = x
a
mod n = 100
19
mod 15707 = 1731.
3
Kiểm thử: Ver
k
(x,y) = đúng ⇔ x ≡ y
b
(Mod n)
Thật vậy: 1731

1627
mod 15707 = 100
2.2. Sõ ðồ chữ ký mù dựa trên giao thức ký RSA
Giả sử A yêu cầu B ký một số tài liệu, nhưng lại không muốn B biết nội dung
của các tài liệu đó.
Mục đích của chúng ta là có được chữ ký của B trên văn bản X, theo sơ đồ chữ
ký RSA chữ ký đó là giá trị x
a
mod n.
Lúc này A và B phải thực hiện một số bước sau:
Bước 1. A làm mù x (che x):
Blind (x) = x.r
b
( Mod n) = u, với r là ngẫu nhiên ∈ Z
n
, n và b được lấy từ khóa
công khai của B.
Bước 2. A gửi u cho B
Khi B ký trên u sẽ nhận được chữ ký là v = Sig (z), sau đó gửi lại cho A:
v = Sig (Blind (x)) = sig(x

* r
b
) = x
a.
. (r
b
)
a
= x

a.
. r (mod n)
Bước 3. A xóa mù trên v, sẽ nhận được chữ ký trên x
z = Unblind (v) = v/r mod n = x
a
. r/r mod n = x
a
(mod n)
Như vậy ta đã đạt được mục đích là nhận đươc chữ ký B: x
a
mod n mà B không
hay biết nội dung của văn bản x. Bởi vì nội dung của thông điệp đã được che mù thông
qua việc nhân với r
b
, cho dù b là số công khai lấy từ B, nhưng r là số ngẫu nhiên mà B
không thể biết được. Sau khi B ký xong A xóa mù (nhân với r
-1
) để nhận được chữ ký
của B. Thực tế thì khi nhận được thông điệp B có thể kiểm thử được chữ ký của mình,
tuy nhiên B không thể xác định được mình đã ký cho ai.
Ví dụ cho sơ đồ chữ ký mù dựa trên giao thức ký RSA
Sơ đồ chữ ký mù RSA với K= (n, p, q, b, a )trong đó :
P = 113, q = 139, n=p * q= 15707, φ(n) = (p-1)
*
(q-1) = 15456
Chọn b=1627 (nguyên tố cùng φ(n)); a=19 (phần tử nghịch đảo của b theo φ (n)).
Giả sử thông điệp cần ký x=100 . Nếu theo sơ đồ chữ ký RSA thì sẽ nhận được chữ là
E (x)=x
a
(mod n )=100

19
mod 15707 = 1731.
Nhưng với sơ đồ chữ ký mù ta không làm như vậy!
Bước 1. Che dấu số định danh x bằng bí danh u:
u= Blind (x) = x
*
r
b
(mod n)=100
*
17
1627
(mod 15707) = 3075
(r = 17 được chọn vì tồn tại phần tử nghịch đảo r
–1
(mod 15707 ) = 924). Bài
toán tìm phần tử nghịch đảo ta sử dụng thuật toán Euclid mở rộng.
Bước 2. Gửi bí danh u cho người ký nhận được chữ ký v:
v = E(y)=u
a
mod n = 3075
19
(mod 15707)=13720
Bước 3. Người gửi nhận được chữ ký trên số định danh x:
Người nhận “xóa mù” trên v sẽ nhận được chữ ký trên số định danh:
4
Unblind (v) = v * r
–1
mod n= 13720 * 924 (mol 15707 )=1731.
3. ỨNG DỤNG CHỮ KÝ MÙ

3.1. Ứng dụng chữ ký mù trong đấu giá điện tử
Một qui trình đấu giá điện tử bao gồm bốn giai đoạn chính:
Giai đoạn đăng ký: Ban đăng ký xác nhận quyền đấu giá của người tham gia
và ký ;
- Mỗi người tham gia có một định danh riêng;
- Ban đăng ký, ký vào số định danh, gửi chữ ký cho người tham gia.
Giai đoạn đặt giá: Người tham gia ghi nội dung phiếu đặt giá, mã hóa phiếu
đặt giá, gửi tới ban duyệt giá.
Giai đoạn kiểm tra: Kiểm tra chữ ký cấp quyền trên phiếu đặt giá xem có hợp
lệ hay không nếu hợp lệ thì chuyển đến ban duyệt giá.
Giai đoạn duyệt giá: Chọn ra giá cao nhất và thông báo kết quả.
3.1.1. Giai đoạn đăng ký
a. Công việc:
* Người đấu giá:
- Người đấu giá chọn bí mật số định danh x, giấy chứng minh thư điện tử (CMT),
thông tin nhận dạng. Người đấu giá "làm mù" x thành y = Blind(x).
- Người đấu giá gửi tới ban đăng ký thông tin nhận dạng của mình CMT, số y
(định danh x được người đấu giá làm mù thành y).
* Ban đăng ký:
- Ban đăng ký nhận dạng người đấu giá, kiểm tra CMT của người đấu giá.
- Nếu hồ sơ của người đấu giá hợp lệ, khớp với danh sách người đấu giá của Ban
điều hành, người đấu giá chưa xin cấp chữ ký lần nào, thì ra lệnh cho Hệ thống "ký"
lên y. Đó là chữ ký z = sign(y).
- Ban đăng ký ghi số CMT của người đấu giá vào danh sách người đấu giá đã
được cấp chữ ký (để tránh việc người đấu giá xin cấp chữ ký nhiều lần).
- Ban đăng ký gửi chữ ký z về cho người đấu giá.
* Người đấu giá:
- Khi nhận được chữ ký này, người đấu giá "xoá mù" trên z, họ sẽ nhận được chữ
ký sign(x) trên định danh thật x. Phiếu đặt giá có gắn chữ ký sig(x) được xem như đã
có chữ ký của Ban đăng ký. Đó là phiếu đặt giá hợp lệ để người đấu giá ghi giá của

mình.
- Người đấu giá có thể kiểm tra chữ ký của Ban đăng ký trên phiếu đặt giá của
mình có hợp lệ hay không bằng cách dùng hàm kiểm tra chữ ký và khoá công khai của
Ban đăng ký. (Chú ý: khoá ký trên định danh của người đấu giá được chia sẻ cho mọi
5
thành viên của Ban đăng ký và Ban kiểm tra, nhờ đó sau này Ban kiểm tra có thể phát
hiện ra những người đấu giá giả mạo chữ ký của Ban đăng ký.)
b. Kỹ thuật sử dụng:
Kỹ thuật "chia sẻ khoá bí mật":
Hệ thống phân phối khoá tin cậy đã chia sẻ khoá ký cho các thành viên Ban đăng
ký và ban kiểm tra trước đó. Sau khi xét duyệt hồ sơ xin chữ ký của người đấu giá, nếu
mọi thành viên của Ban đăng ký đều nhất trí cho ký thì họ sẽ khớp các mảnh khoá
riêng để nhận được khoá ký.
- Mục đích của kỹ thuật: từng thành viên của Ban đăng ký không thể tuỳ tiện cấp chữ
ký.
Kỹ thuật "chữ ký mù":
- Ban đăng ký sử dụng kỹ thuật ký "mù" để ký tên lên định danh "mù" của người đấu
giá.
Mục đích của kỹ thuật: Ban đăng ký không thể biết được ai đã ghi thông tin về
giá vào phiếu đặt giá tức là bảo đảm không lộ danh tính người đấu giá.
3.1.2. Giai đoạn đấu giá
a. Công việc:
Sau khi phiếu đặt giá có chữ ký của Ban đăng ký, người đấu giá ghi giá (đặt giá)
của mình vào phiếu đặt giá ;
Người đấu giá mã hoá phiếu đặt giá bằng khoá công khai của Ban duyệt giá.
Người đấu giá gửi tới Ban duyệt giá: phiếu đặt giá đã mã hoá, định danh thật
(không bị làm mù) của họ, chữ ký của Ban đăng ký trên phiếu đặt giá, "chứng minh
không tiết lộ thông tin" về phiếu đặt giá ;
Chú ý rằng phiếu đặt giá không được chuyển thẳng tới ban duyệt giá, mà trước
đó phải qua Ban kiểm tra. Tại đây họ kiểm tra chữ ký cấp quyền bỏ phiếu có bị giả

mạo không, họ xác minh tính hợp lệ của phiếu đặt giá.
b. Kỹ thuật sử dụng:
Kỹ thuật "chứng minh không tiết lộ thông tin"
Mục đích của kỹ thuật: ở giai đoạn sau, ban kiểm tra có cơ sở để xác minh tính
hợp lệ của phiếu đặt giá (vì ở dưới dạng mã hoá, nên không thể biết phiếu đặt giá có
hợp lệ không).
3.1.3. Giai đoạn kiểm tra
a. Công việc:
Kiểm tra chữ ký, cấp quyền trên phiếu đặt giá (Liên hệ với Ban đăng ký) ;
Mã hoá lại phiếu đặt giá, gửi về ban duyệt giá ;
6
Ban kiểm tra đứng trung gian giữa Người đấu giá và Ban duyệt giá để
ngăn chặn một số tình huống thiếu an toàn hay vi phạm luật đấu giá, ví dụ trường hợp
thông đồng giữa những người đấu giá.
b. Kỹ thuật sử dụng:
Kỹ thuật ký số
Mục đích của kỹ thuật: kiểm tra chữ ký cấp quyền đấu giá trên phiếu đặt giá.
Kỹ thuật mã hoá:
Mục đích của kỹ thuật: mã hoá lại phiếu đặt giá và gửi ban duyệt giá
3.1.4. Yêu cầu
Trong thực hành, qui trình đấu giá điện tử phải thỏa mãn vài yêu cầu:
- Tính hợp pháp: Chỉ có những người đấu giá hợp lệ được phép đặt giá.
- Tính bí mật: Không có sự liên hiệp nào của những người tham gia. Không
người đấu giá nào có thể biết được bất kỳ thông tin phiếu đặt giá của người đấu giá
khác.
- Tính cá nhân: Mỗi người đấu giá hợp pháp có thể kiểm tra rằng phiếu đặt giá
của anh ta thật sự được duyệt.
- Tính xác minh phổ thông: Bất kỳ người đấu giá nào hoặc người quan sát có thể
kiểm tra phiên đấu giá rõ ràng, chung cuộc được công bố thật sự là giá cao nhất (hoặc
thấp nhất) trong số các phiếu đặt giá.

- Tính rõ ràng: Không có người tham gia nào có thể biết được bất kỳ thông tin
nào quanh Bộ phận duyệt giá trước Giai đoạn duyệt giá.
- Tính trung thực: Không có sự liên hiệp nào của những người đấu giá có thể phá
vỡ phiên đấu giá và bất kỳ hành vi gian lận nào cũng sẽ được phát hiện ra.
3.2. Ứng dụng chữ ký mù trong bỏ phiếu điện tử
Một qui trình bỏ phiếu điện tử thường bao gồm bốn giai đoạn chính: Giai đoạn
đăng ký, giai đoạn bỏ phiếu. giai đoạn kiểm tra và giai đoạn kiểm phiếu.
3.2.1. Giai đoạn đăng ký
a. Công việc
Cử tri:
- Cử tri chọn bí mật số định danh x, giấy chứng minh thư điện tử (CMT), thông
tin nhận. Cử tri “làm mù” x thành y = Blind(x).
- Cử tri gửi tới Ban đăng ký thông tin nhận dạng của mình, CMT, số y (định
danh x đã được họ làm mù thành y).
Ban đăng ký:
- Ban ĐK nhận dạng cử tri, Kiểm tra CMT của cử tri.
7
- Nếu hồ sơ của cử tri hợp lệ, khớp với danh sách cử tri của Ban điều hành, cử
tri chưa xin cấp chữ ký lần nào, thì ra lệnh cho Hệ thống “ký” lên y. Đó là chữ ký z =
sign(y).
- Ban đăng ký ghi số CMT của cử tri vào danh cử tri đã được cấp chữ ký (để
tránh việc cử tri đăng ký bỏ phiếu nhiều lần).
- Ban đăng ký gửi chữ ký z về cho cử tri.
Cử tri:
- Khi nhận được chữ ký này, cử tri “xóa mù” trên z, họ sẽ nhận được chữ ký
sign(x) trên định danh thật x. Lá phiếu có gắn chữ ký sign(x) được xem như đã có chữ
ký của Ban đăng ký, đó là lá phiếu hợp lệ để cử tri ghi ý kiến của mình.
Cử tri có thể kiểm tra chữ ký của Ban điều hành trên lá phiếu của mình có hợp
lệ hay không bằng cách dùng hàm kiểm tra chữ ký và khóa công khai của Ban điều
hành.

Chú ý rằng khóa ký trên định danh của cử tri được chia sẻ cho mọi thành viên
của Ban đăng ký và Ban kiểm tra, nhờ đó sau này Ban kiểm tra có thể phát hiện ra
những cử tri giả mạo chữ ký của Ban đăng ký.
b. Kỹ thuật sử dụng
Kỹ thuật “Chia sẻ khóa bí mật” (Secret Sharing):
Hệ thống phân phối khóa tin cậy đã chia sẻ khóa ký cho các thành viên Ban
đăng ký và Ban kiểm tra trước đó. Sau khi xét duyệt hồ sơ xin chữ ký của cử tri, nếu
mọi thành viên của Ban đăng ký đều nhất trí cho ký thì họ sẽ khớp các mảnh khóa
riêng để nhận được khóa ký.
Mục đích của kỹ thuật: Từng thành viên của Ban đăng ký không thể tùy tiện
cấp chữ ký.
Kỹ thuật “Chữ ký mù”(Blind Signature):
Ban đăng ký sử dụng kỹ thuật ký “mù” để ký lên định danh “mù” của cử tri.
Mục đích của kỹ thuật: Ban đăng ký không thể biết được ai đã ghi ý kiến vào lá
phiếu, tức là bảo đảm không lộ danh tính cử tri.
3.2.2. Giai đoạn bỏ phiếu
a. Công việc:
- Sau khi lá phiếu có chữ ký của Ban ĐK, cử tri ghi ý kiến (lựa chọn) của mình
vào lá phiếu.
- Cử tri mã hoá lá phiếu bằng khoá công khai của Ban kiểm phiếu (KP).
- Cử tri gửi tới Ban kiểm tra: Lá phiếu đã mã hoá, Định danh thật x (không bị
làm mù) của họ, Chữ ký của Ban đăng ký trên lá phiếu, “Chứng minh không tiết lộ
thông tin” về lá phiếu.
8
Chú ý rằng lá phiếu không được chuyển thẳng tới hòm phiếu, mà trước đó
phải qua Ban kiểm tra. Tại đây họ kiểm tra chữ ký cấp quyền bỏ phiếu có bị giả mạo
không, họ xác minh tính hợp lệ của lá phiếu.
b. Kỹ thuật sử dụng
Kỹ thuật “Mã hóa đồng cấu” (Homomorphism Cryptography):
Mã hoá đồng cấu có tính chất đặc biệt: tích của các “bản tin” (message) được

mã hoá bằng tổng các “bản tin” được mã hoá.
Điều này rất thích hợp cho loại bỏ phiếu điện tử khi mà các “bản tin” được mã
hoá thành 0 hay 1.
Mục đích của kỹ thuật: Ban kiểm phiếu không cần giải mã từng lá phiếu, vẫn có
thể kiểm phiếu được.
3.2.3. Giai đoạn kiểm tra
a. Công việc:
- Kiểm tra chữ ký cấp quyền bỏ phiếu trên lá phiếu. (liên hệ với Ban đăng ký).
- Kiểm tra tính hợp lệ của lá phiếu. (Xác nhận với Cử tri).
- Mã hóa lại lá phiếu, gửi về hòm phiếu.
- Khi gửi lá phiếu (đã mã hoá) về Ban kiểm tra, cử tri phải gửi kèm theo định
danh thật x (không bị làm mù). Như vậy Ban kiểm tra biết được chữ ký thật Sign(x)
của Ban đăng ký trên lá phiếu và định danh thật x của cử tri, nhưng không biết danh
tính thật của cử tri. Ban đăng ký biết các thông tin này, nhưng lại không biết định danh
thật x của cử tri (vì nó đã bị làm mù trước khi gửi tới họ).
Như trên đã nói, khóa ký vào định danh của cử tri được chia sẻ cho mọi thành
viên của Ban đăng ký và Ban kiểm tra. Vì vậy trong giai đoạn này, Ban kiểm tra dùng
khóa ký đó để ký lên định danh thật x của cử tri, kiểm tra xem có giống như chữ ký
Sign(x) mà cử tri đã gửi tới họ. Nếu hai chữ ký không khớp nhau, họ xem chữ ký trong
lá phiếu trên là giả mạo, lá phiếu này sẽ không được gửi tiếp tới hòm phiếu.
- Ban kiểm tra thực hiện các giao thức tương tác với cử tri để kiểm tra tính hợp
lệ của lá phiếu.
- Sau khi xác minh tính hợp lệ của lá phiếu, Ban kiểm tra gửi nó về hòm phiếu.
Ban kiểm tra đứng trung gian giữa Cử tri và Ban Kiểm phiếu để ngăn chặn một số tình
huống thiếu an toàn hay vi phạm luật bỏ phiếu, ví dụ trường hợp mua bán phiếu bầu
cử.
b. Kỹ thuật sử dụng:
Kỹ thuật “ Ký số ” ( Digital Signature):
- Mục đích của kỹ thuật: kiểm tra chữ ký cấp quyền bỏ phiếu trên lá phiếu.
Kỹ thuật “Chứng minh không tiết lộ thông tin”( Zero_knowledge proof)

- Mục đích của kỹ thuật: để kiểm tra tính hợp lệ của lá phiếu.
9
Kỹ thuật “Mã hoá” (Cryptography):
- Mục đích của kỹ thuật: Mã hóa lại lá phiếu, gửi về hòm phiếu.
3.2.4. Giai đoạn Kiểm phiếu
a. Công việc:
- Các lá phiếu sẽ được “trộn” nhờ kỹ thuật “trộn” trước khi chúng được chuyển
về Ban KP, nhằm giữ bí mật danh tính cho các cử tri.
- Ban kiểm phiếu tính kết quả dựa vào các lá phiếu (đã mã hoá) gửi về.
Chú ý là theo phương pháp mã hóa đồng cấu, Ban KP không cần giải mã từng
lá phiếu, vẫn có thể kiểm phiếu được.
- Khi kiểm phiếu, các thành viên Ban KP dùng các mảnh khóa riêng của mình
để khôi phục khóa bí mật (khóa này đã bị chia sẻ qua một sơ đồ chia sẻ bí mật).
Ban kiểm phiếu dùng khóa bí mật này để tính kết quả cuộc bầu cử.
- Ban kiểm phiếu thông báo kết quả lên Bảng niêm yết công khai.
b. Kỹ thuật sử dụng:
Kỹ thuật “Trộn” (Mixing)
Ban kiểm phiếu gồm m thành viên, để họ không thể biết được lá phiếu nào là
của ai, người ta xây dựng hệ thống mã hoá m tầng và phải giải mã m lần mới biết
được nội dung của các lá phiếu.
Đầu tiên người thứ nhất trong Ban kiểm phiếu biết được từng lá phiếu là của ai,
nhưng lại không biết nội dung của chúng. Anh ta giải mã lần 1, vẫn không biết nội
dung của chúng, người này“trộn” theo trật tự khác. Mọi người tiếp theo trong Ban
KP thực hiện các công việc như người thứ nhất. Sau khi người cuối cùng trong Ban
kiểm phiếu giải mã lần thứ m thì nội dung các lá phiếu đã rõ ràng, nhưng các thành
viên trong Ban kiểm phiếu thì không thể biết được “tác giả” của từng lá phiếu vì
chúng đã được“trộn” m-1 lần.
Kỹ thuật “Chia sẻ khóa bí mật” (Secret Sharing)
Kỹ thuật “Mã hóa đồng cấu” (Homomorphism Cryptography)
Kỹ thuật “Chứng minh không tiết lộ thông tin”

- Mục đích của kỹ thuật: ở giai đoạn sau, Ban kiểm tra có cơ sở để xác minh
tính hợp lệ của lá phiếu. Vì dưới dạng mã hoá, nên không thể biết lá phiếu có hợp lệ
không.
3.3. Ứng dụng chữ ký mù trong thương mại điện tử
Các bước của quá trình thanh toán điện tử dưới hình thức sử dụng tiền điện tử,
có chữ ký của đơn vị phát hành tiền điện tử. Quy trình thanh toán điện tử gồm 4 pha
sau:
Pha 1. Tạo tiền điện tử (tương ứng với giao thức rút tiền)
Phía A (người rút tiền):
10
- Sinh số ngẫu nhiên N làm số Serial của đồng tiền các số này phải đủ dài và
đảm bảo tính duy nhất, tránh việc hai serial trùng nhau.
- Gắn mỗi Serial với một giá trị đồng tiền
- Làm mù giá trị N trên một số ngẫu nhiên bí mật r, mã hóa bằng khóa công
khai của ngân hàng và gửi cho ngân hàng giá trị của đồng tiền và Serial đã được mù
hóa.
Ngân hàng:
- Sau khi nhận được các thông tin từ A sẽ thực hiện
- Kiểm tra tài khoản của A có đủ để rút đồng tiền anh ta yêu cầu hay không?
- Nếu tài khoản của A còn đủ tiền, ký mù lên Serial đã được làm mù với khóa bí
mật tương ứng với giá trị đồng tiền.
- Trừ đi một khoản tiền tương ứng trong tài khoản của A.
- Mã hóa đồng tiền đã được ký mù mới khóa công khai của A và gửi cho A.
- A khử mù đồng tiền và thu được đồng tiền có chữ ký hợp lệ của ngân hàng.
Pha 2. Tiêu tiền điện tử (tương ứng giao thức trả tiền)
- A gửi yêu cầu mua hàng đến B
- B gửi trả về thông tin sản phẩm, số tiền cần thanh toán cho A
- Sau khi A chấp nhận giao dịch, A gửi các đồng tiền điện tử cho B.
Pha 3. Đổi tiền điện tử (tương ứng giao thức gửi tiền)
- Trước khi chấp nhận thanh toán, B gửi đồng tiền nhận được đến ngân hàng để

kiểm tra tính hợp lệ.
- Ngân hàng kiểm tra chữ ký trên đồng tiền và xem nó đã được tiêu chưa. Nếu
tất cả chúng hợp lệ ngân hàng chấp nhận những đồng tiền và tăng tài khoản của B
tương ứng với đồng tiền đồng thời lưu dãy số Serial trên đồng tiền vào danh sách
những đồng tiền đã tiêu.
Pha 4. Kết thúc giao dịch
Sau khi tất cả đã được kiểm tra hợp lệ, B gửi sản phẩm và biên nhận đến A và
giao dịch kết thúc.
4. XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM CHỮ KÝ MÙ TRONG
THANH TOÁN ĐIỆN TỬ SỬ DỤNG TIỀN ĐIỆN TỬ
Chương trình thử nghiệm Pha 1 trong các pha của quá trình thành toán điện tử
bằng đồng tiền điện tử
4.1. Chương trình mô phỏng cách thức sử dụng tiền điện tử trong thanh toán
Hệ thống gồm có các thành phần: Khách (Client), Ngân hàng (Server) và cơ sở
dữ liệu DBMS.
Ứng dụng phát triển dựa trên mô hình Client/Server, được cấu hình chạy trên
Web Server IIS của Microsoft. Xây dựng Server ngân hàng là một Web Services.
11
Sử dụng ngôn ngữ kịch bản ASP, chạy trên môi trường Windows và cơ sở dữ
liệu Access.
4.2. Các thành phần của chương trình
Bao gồm chức năng:
Rút tiền:
Chon phép khách hàng rút tiền điện tử trong định mức tài khoản của mình tại
ngân hàng về ví tiền điện tử của mình. Ngân hàng sẽ trừ vảo tài khoản của khách hàng
tương ứng với số tiền đã rút
Các bước thực hiện chương trình
- Đăng nhập hệ thống
Hiển thị đồng tiền điện tử mà ngân hàng đang phát hành, cho phép người dung
rút tiền.

12
- Hiển thị thông tin về ví tiền điện tử và số tiền trong tài khoản. Tại đây người
sử dụng chọn đồng tiền tiện tử cần rút về.
Chọn đồng tiền điện tử muốn rút về ví
13
- Thông báo nhập tham số lien quan của đồng tiền
14
- Nhập giá trị làm mù r
15
- Đồng tiền được ký mù và được nhận về và xóa mù
16
Đồng tiền được cập nhật vào trong ví tiền điện tử của khách hàng, đồng thời tài
khoản của khách hàng bị trừ đi một khoản tương ứng với số tiền rút.
17

×