Tải bản đầy đủ (.pdf) (61 trang)

Tìm hiểu, nghiên cứu một số bài toán về an toàn thông tin trong giai đoạn rút tiền điện tử

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 (960.89 KB, 61 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

----------  ----------

KIỀU MINH NGUYỆT

TÌM HIỂU, NGHIÊN CỨU MỘT SỐ BÀI TOÁN VỀ AN TOÀN
THÔNG TIN TRONG GIAI ĐOẠN RÚT TIỀN ĐIỆN TỬ

LUẬN VĂN THẠC SỸ

Hà Nội - 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

----------  ----------

KIỀU MINH NGUYỆT

TÌM HIỂU, NGHIÊN CỨU MỘT SỐ BÀI TOÁN VỀ AN TOÀN
THÔNG TIN TRONG GIAI ĐOẠN RÚT TIỀN ĐIỆN TỬ

Ngành:
Chuyên ngành:
Mã số:

Công Nghệ Thông Tin
Hê ̣Thố ng Thông Tin


60.48.05

LUẬN VĂN THẠC SỸ

Cán bộ hƣớng dẫn: PGS.TS Trịnh Nhật Tiến

Hà Nội - 2015

2


LỜI CẢM ƠN
Sau hơn năm tháng nghiên cứu và tìm hiểu, luận văn “Nghiên cứu mô ̣t số bài toán
về an toàn thông tin trong giai đoa ̣n rút tiề n điê ̣n tử” đã cơ bản hoàn thành. Để đạt được
kết quả này, em đã hết sức nỗ lực đồng thời cũng nhận được rất nhiều sự quan tâm, giúp
đỡ và ủng hộ của thầy cô, gia đình và bạn bè.
Em xin chân thành cảm ơn các thầy cô trong bô ̣ môn Hê ̣ thố ng Thông tin trường
Đại Học Công nghê ̣, ĐH Quố c gia Hà Nô ̣i đã tạo điều kiện tốt cho em để thực hiện đề tài
luận văn tốt nghiệp này. Và đặc biệt em xin chân thành cảm ơn thầy Trịnh Nhật Tiến đã
tận tình hướng dẫn, giúp đỡ, chỉ bảo và đóng góp ý kiến cho em trong suốt thời gian thực
hiện đề tài.
Xin cảm ơn các anh chị và bạn bè đã ủng hộ, giúp đỡ và động viên em trong thời
gian học tập và nghiên cứu.
Mặc dù đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép
nhưng chắc chắn sẽ không tránh khỏi những thiếu sót. Em kính mong nhận được sự cảm
thông và tận tình chỉ bảo của quý thầy cô và các bạn để có thể hoàn thiê ̣n và phát triể n đề
tài này tốt hơn.

3



TÓM TẮT NỘI DUNG

Ở nước ta t hương ma ̣i điê ̣n tử nói chung và tiề n điê ̣n tử nói riêng vẫn còn là liñ h
vực mới mẻ đòi hỏi phải có quá trình nghiên cứu và phát triển.
Luận văn sau đây trình bày những kiến thức khái quát, tổng quan về tiề n điê ̣n
tử và thanh toán bằng tiền điện tử, sau đó tập trung nghiên cứu sâu hơn về mô ̣t số vấn
đề nảy sinh trong quá trình sử dụng tiền điện tử, cụ thể là trong quá trình rút tiền điện tử
như vấ n đề ẩ n danh người sử du ̣ng đồ ng tiề n và vấ n đề gian lâ ̣n giá tri ̣đồ ng tiề n .
Ngoài ra, luận văn sẽ Demo một chương trình thử nghiệm mô phỏng giải quyết
vấn đề về ẩn danh, gian lận giá trị đồng tiền, dựa trên lược đồ Chaum-Fiat-Naor.

4


MỤC LỤC

CHƢƠNG 1. TỔNG QUAN VỀ TIỀN ĐIỆN TỬ ............................................................................................... 11
1.1. KHÁI NIỆM THANH TOÁN ĐIỆN TỬ.................................................................................................... 11
1.1.1. Các mô hình thanh toán điện tử............................................................................................................ 11
1.1.1.1. Mô hình trả tiền sau. ................................................................................................................................ 11
1.1.1.2. Mô hình trả tiền trước. .............................................................................................................................. 11

1.2. KHÁI NIỆM TIỀN ĐIỆN TỬ ..................................................................................................................... 12
1.2.1. Khái niệm.............................................................................................................................................. 12
1.2.2. Mô hình giao dịch mua bán bằng tiền điện tử ...................................................................................... 13
1.2.3. Cấu trúc của Tiền điện tử ..................................................................................................................... 14
1.2.4. Tính chất của tiền điện tử ..................................................................................................................... 15
1.2.4.1. Tính an toàn (Security) ............................................................................................................................ 15
1.2.4.2. Tính xác thực ........................................................................................................................................... 15

1.2.4.3. Tính riêng tƣ (Privacy) ............................................................................................................................ 15
1.2.4.4. Tính độc lập (Portability) ......................................................................................................................... 16
1.2.4.5. Tính chuyển nhƣợng đƣợc (Ttransferrability) ........................................................................................ 16
1.2.4.6. Tính phân chia đƣợc (Divisibility)........................................................................................................... 17

CHƢƠNG 2. CÁC KHÁI NIỆM CƠ BẢN.......................................................................................................... 18
2.1. MỘT SỐ KHÁI NIỆM TOÁN HỌC. ......................................................................................................... 18
2.1.1. Khái niệm trong số học. ........................................................................................................................ 18
2.1.1.1. Số nguyên tố và số nguyên tố cùng nhau. ............................................................................................... 18
2.1.1.2. Đồng dƣ thức. .......................................................................................................................................... 18
2.1.1.3. Phần tử nghịch đảo. ................................................................................................................................. 20
2.1.1.4. Logarit rời rạc. ......................................................................................................................................... 20

2.1.2. Khái niệm trong đại số. ........................................................................................................................ 20
2.1.2.1. Nhóm. ....................................................................................................................................................... 20
2.1.2.2. Nhóm con của nhóm (G,*). ..................................................................................................................... 21
2.1.2.3. Nhóm Cyclic. ............................................................................................................................................ 22

2.1.3. Khái niệm độ phức tạp. ......................................................................................................................... 22
2.1.3.1. Thuật toán. ............................................................................................................................................... 22
2.1.3.2. Độ phức tạp của thuật toán. .................................................................................................................... 23

2.2. MÃ HÓA. ..................................................................................................................................................... 25
2.2.1. Khái niệm về mã hóa. ........................................................................................................................... 25
2.2.1.1. Hệ mã hóa khóa công khai RSA.............................................................................................................. 26

2.3. CHỮ KÝ. ...................................................................................................................................................... 28
2.3.1. Giới thiệu về chữ ký. ............................................................................................................................. 28
2.3.1.1. Sơ đồ ký số RSA. ...................................................................................................................................... 29
2.3.1.2. Sơ đồ ký số Schnoor. ................................................................................................................................ 29

2.3.1.3. Chữ ký mù. ............................................................................................................................................... 30
2.3.1.4. Sơ đồ chữ ký mù RSA. ............................................................................................................................. 31
2.3.1.5. Sơ đồ chữ ký mù Schnorr. ....................................................................................................................... 32
2.3.1.6. Chữ ký dùng một lần................................................................................................................................ 33
2.3.1.7. Chữ ký không thể phủ định. .................................................................................................................... 34

2.4. CHIA SẺ BÍ MẬT CÓ THỂ XÁC MINH. ................................................................................................. 37
2.4.1. Sơ đồ chia sẻ bí mật. ............................................................................................................................. 37
2.4.2. Sơ đồ chia sẻ bí mật có thể xác minh. ................................................................................................... 38
2.5. HÀM BĂM. .................................................................................................................................................. 38
2.5.1. Hàm một chiều (One-way Hash). ......................................................................................................... 38
2.5.2. Tính chất của hàm băm......................................................................................................................... 39
CHƢƠNG 3. MỘT SỐ VẤN ĐỀ TRONG RÚT TIỀN ĐIỆN TỬ ..................................................................... 40
3.1. VẤN ĐỀ PHÁT SINH TRONG RÚT TIỀN ĐIỆN TỬ ............................................................................. 40
3.1.1. Vấn đề ẩn danh người sử dụng đồng tiền ............................................................................................. 40
3.1.2. Vấn đề gian lận giá trị đồng tiền .......................................................................................................... 40
3.2. GIẢI PHÁP CHO BÀI TOÁN “ẨN DANH” VÀ “CHỐNG GIAN LẬN GIÁ TRỊ ĐỒNG TIỀN”[4]... 41
3.2.1. Giới thiệu giải pháp cho bài toán “Ẩn danh ngƣời sƣ̉ dụng đồ ng tiền”: .......................................... 41
3.2.1.1. Giải pháp của Lƣợc đồ Chaum-Fiat-Naor: ............................................................................................ 41

5


3.2.1.2. Giải pháp của Lƣợc đồ Brand ................................................................................................................. 45

3.2.2. Giới thiê ̣u giải pháp cho bài toán “Chố ng gian lận giá tri ̣đồ ng tiền” .............................................. 53
3.2.2.1. Phƣơng pháp thứ nhất: Với mỗ i giá tri ̣ đồ ng tiền, ngân hàng dùng một khóa ký riêng. ...................... 53
3.2.2.2. Phƣơng pháp thứ hai: Dùng phƣơng pháp xác suất: ............................................................................. 53

CHƢƠNG 4. CHƢƠNG TRÌNH DEMO ............................................................................................................... 54

4.1 GIớI THIệU ....................................................................................................................................................... 54
4.2 TÍNH NĂNG CủA PHầN MềM DEMO .................................................................................................................... 54
4.3 Sử DụNG .......................................................................................................................................................... 55
KẾT LUẬN ............................................................................................................................................................ 60

6


MỞ ĐẦU
1. Tính cấp thiết của luận văn:
Sự phát triể n nhanh chóng của công nghê ̣ thông tin cũng như sự bùng nổ của
internet đã mang la ̣i những thay đổ i

lớn, tác động mạnh mẽ đến lĩnh vực ngân hàng

truyề n thố ng, thúc đẩy sự phát triể n của thương ma ̣i điê ̣n tử và làm xuấ t hiê ̣n nhiề u các
sản phẩm mới có liên quan như thẻ tín dụng, giao dich
̣ qua điê ̣n thoa ̣i di đô ̣ng…Tiề n điê ̣n
tử hay ví điê ̣n tử cũng trở thành hiê ̣n thực . Trên thế giới tiề n điê ̣n tử đã và đang được ứng
dụng thành công, nhưng ở nước ta thương ma ̣i điê ̣n tử nói chung và tiề n điê ̣n tử nói riêng
vẫn còn là lĩnh vực mới mẻ đòi hỏi phải có quá trình nghiên cứu và phát triể n .
Trong quá triǹ h sử du ̣ng , tiề n điê ̣n tử cũng nảy sinh mô ̣t số vấ n đề như : ẩn danh
đồ ng tiề n, khai man giá tri ̣đồ ng tiề n , tiêu mô ̣t đồ ng tiề n nhiề u lầ n .
Luận văn trình bày những kiến thức khái quát, tổng quan về tiề n điê ̣n tử và
thanh toán bằng tiền điện tử, sau đó tập trung nghiên cứu sâu hơn về mô ̣t số vấn đề nảy
sinh trong quá trình sử du ̣ng tiền điện tử, cụ thể là trong quá trình rút tiền điê ̣n tử như
vấ n đề ẩ n danh người sử du ̣ng đồ ng tiề n và vấ n đề gian lâ ̣n giá tri ̣đồ ng tiề n .
2. Mục đích của luận văn:
Nghiên cứu bản chấ t và quá trin
̀ h thanh toán bằ ng tiề n điê ̣ n tử và mô ̣t số giải pháp

khoa học cho một số bài toán nảy sinh trong quá trình rút tiề n điê ̣n tử.
3. Đối tƣợng nghiên cứu:
Đối tượng nghiên cứu là các bài toán phát sinh trong quá trình rút tiền điện tử
4. Phƣơng pháp nghiên cƣ́u:
Để nghiên cứu về những vấn đề nêu trên, đầu tiên, luận văn tổng hợp lại những khái
niệm liên quan đến vấn đề thanh toán hiện đang được sử dụng, về thanh toán điện tử. Sau
đó đi sâu nghiên cứu về tiền điện tử. Từ đó, phân tích các bài toán phát sinh trong quá
trình rút tiền điện tử và đưa ra các giải pháp phù hợp cho các bài toán trên.
5. Kế t cấ u của luâ ̣n văn:
Luâ ̣n văn gồ m 4 chương:
Chương 1: Trình bày tổng quan về tiền điện tử bao gồ m các khái niê ̣m về tiề n điê ̣n

7


tử và thanh toán điê ̣n tử.
Chương 2: Trình bày các khái niệm cơ bản về toán học , lý thuyết cơ bản về mật mã
học như: mã hóa, chữ ký, chia sẻ bí mâ ̣t, hàm băm.
Chương 3: Trình bày về mô ̣t số vấ n đề phát sinh trong quá trin
̀ h sử du ̣ng tiề n điê ̣n
tử, cụ thể là trong quá trình rút tiền điện tử và chỉ ra hướng giải quyết .
Chương 4: Demo chương trình thử nghiệm về hệ thống tiền điện tử, mô phỏng vấn
đề về ẩn danh, gian lận giá trị đồng tiền, dựa trên lược đồ Chaum-Fiat-Naor.

8


DANH MỤC HÌNH VẼ
Hình 1:


Mô hiǹ h giao dich
̣ cơ bản của hê ̣ thố ng Tiề n điê ̣n tử

Hình 2:

Mô hiǹ h phương thức thanh toán

Hình 3:

Mô hình giao dich
̣ có tính chuyể n nhươ ṇ g

Hình 4:

Mô hình khái quát lươ ̣c đồ Chaum – Fiat – Naor

Hình 5:

Mô hình quá trình khởi ta ̣o tài khoản của lươ ̣c đồ Brand

Hình 6:

Mô hình quá trình chứng minh đa ̣i diê ̣n tài khoản của lươ ̣c đồ Brand

Hình 7:

Mô hiǹ h giao thức rút tiề n trong lươ ̣c đồ Brand

Hình 8:


Mô hiǹ h giao thức thanh toán

9


BẢNG CHỮ VIẾT TẮT

TT

Ký hiệu

1

TMĐT

Chú giải cho ký hiệu sử dụng
Thương mại điện tử
Hệ mã hóa khóa công khai được đề xuất bởi

2

RSA

Ron Rivest, Adi Shamir, Len Adlemon năm
1977.

3

SSS


5

VSS

Sơ đồ chia sẻ bí mật - Secret Sharing Schemes
Sơ đồ chia sẻ bí mật có thể xác minh - Verify
Secret Sharing

10


Chƣơng 1. TỔNG QUAN VỀ TIỀN ĐIỆN TỬ
1.1. KHÁI NIỆM THANH TOÁN ĐIỆN TỬ
Khâu quan trọng nhất của Thương mại điện tử (TMĐT) là việc thanh toán, vì mục
tiêu cuối cùng của cuộc trao đổi thương mại là người mua nhận được những cái gì cần
mua và người bán nhận được số tiền thanh toán.
Thanh toán là một trong những vấn đề phức tạp nhất của TMĐT. Hoạt động TMĐT
chỉ phát huy được tính ưu việt của nó khi áp dụng được hình thức thanh toán điện tử
(TTĐT).
TTĐT là việc thanh toán tiền thông qua các thông điệp điện tử (Electronic message)
thay cho việc thanh toán bằng tiền Sec hay tiền mặt. Bản chất của mô hình TTĐT cũng
là mô phỏng lại mô hình thanh toán truyền thống, nhưng các thủ tục giao dịch, các thao
tác xử lý dữ liệu, quá trình chuyển tiền… tất cả đều được thực hiện thông qua mạng máy
tính, được nối bằng các giao thức chuyên dụng.
1.1.1. Các mô hình thanh toán điện tử.
Hệ thống TTĐT thực hiện thanh toán cho khách hàng theo một số cách, mà tiền
mặt và séc thông thường không thể làm được. Hệ thống thanh toán cũng cung cấp khả
năng thanh toán hàng hóa và dịch vụ qua thời gian, bằng cách cho phép người mua trả
tiền ngay, trả tiền sau hay trả tiền trước.
1.1.1.1. Mô hình trả tiền sau.

Trong mô hình này, thời điểm tiền mặt được rút ra khỏi tài khoản bên mua để
chuyển sang bên bán, xảy ra ngay (pay-now) hoặc sau (pay-later) giao dịch mua bán.
Hoạt động của hệ thống dựa trên nguyên tắc Tín dụng (Credit crendental). Nó còn được
gọi là mô hình mô phỏng Séc (Cheque-like model).
1.1.1.2. Mô hình trả tiền trƣớc.
Trong mô hình này, khách hàng liên hệ với ngân hàng (hay công ty môi giới –
Broker) để có được chứng từ do ngân hàng phát hành. Chứng từ hay Đồng tiền số này
mang dấu ấn của ngân hàng, được đảm bảo bởi ngân hàng và do đó có thể dùng ở bất cứ
nơi nào đã có xác lập hệ thống thanh toán với ngân hàng này.
Để đổi lấy chứng từ của ngân hàng, tài khoản của khách hàng bị chiết khấu đi
tương ứng với giá trị của chứng từ đó. Như vậy, khách hàng đã thực sự trả tiền trước khi
sử dụng chứng từ này để mua hàng và thanh toán.Chứng từ ở đây không phải do khách
hàng tạo ra, không phải dành cho một cuộc mua bán cụ thể, mà do ngân hàng phát hành

11


và có thể sử dụng vào mọi mục đích thanh toán. Vì nó có thể sử dụng giống như tiền
mặt, do đó mô hình này còn được gọi là mô hình mô phỏng tiền mặt (Cash-like model).
Khi có người mua hàng tại cửa hàng và thanh toán bằng chứng từ như trên, cửa
hàng sẽ kiểm tra tính hợp lệ của chúng, dựa trên những thông tin đặc biệt do ngân hàng
tạo ra trên đó.
Cửa hàng có thể chọn một trong hai cách: Hoặc là liên hệ với ngân hàng để chuyển
vào tài khoản của mình số tiền trước khi giao hàng (deposit-now), hoặc là chấp nhận và
liên hệ chuyển tiền sau vào thời gian thích hợp (deposit-later).
Trường hợp riêng của mô hình mô phỏng tiền mặt là mô hình “tiền điện tử”
(Electronic Cash).

1.2. KHÁI NIỆM TIỀN ĐIỆN TỬ
1.2.1. Khái niệm

Tiền điện tử (E-money, E-currency, Internet money, Digital money, Digital cash) là
thuật từ vẫn còn mơ hồ và chưa được định nghĩa đầy đủ. Tuy nhiên có thể hiểu Tiền điện
tử là loại tiền trao đổi theo phương pháp “điện tử”, liên quan đến mạng máy tính và
những hệ thống chứa giá trị ở dạng số (Digital stored value Systems).
Tiền điện tử cho phép người dùng có thể thanh toán khi mua hàng, hay sử dụng các
dịch vụ, nhờ truyền đi các “dãy số” từ máy tính (hay thiết bị lưu trữ như Smart Card) này
tới máy tính khác (Smart Card).
Cũng như dãy số (Serial) trên tiền giấy, dãy số của tiền điện tử là duy nhất. Mỗi
"đồng tiền điện tử” được phát hành bởi một tổ chức (ngân hàng) và biểu diễn một lượng
tiền thật nào đó.
Tiền điện tử có loại ẩn danh (identified e-money), có loại định danh (anonymous
identified e-money).
Tiền ẩn danh không tiết lộ thông tin định danh của người sử dụng. Tính ẩn danh của
tiền điện tử tương tự như tiền mặt thông thường. Tiền điện tử ẩn danh được rút từ một tài
khoản, có thể được tiêu xài hay chuyển cho người khác mà không để lạidấuvết.
Có nhiều loại tiền ẩn danh, có loại ẩn danh đối với người bán, nhưng không ẩn danh
với ngân hàng. Có loại ẩn danh hoàn toàn, ẩn danh với tất cả mọi người.
Tiền điện tử định danh tiết lộ thông tin định danh của người dùng. Nó tương tự như
thẻ tín dụng, cho phép ngân hàng lưu dấu vết của tiền khi luân chuyển.

12


Mỗi loại tiền trên lại chia thành 2 dạng: trực tuyến (online) và không trực tuyến
(offline).
Trực tuyến: nghĩa là cần phải tương tác với phía thứ ba để kiểm soát giao dịch.
Không trực tuyến: nghĩa là có thể kiểm soát được giao dịch, mà không cần liên
quan trực tiếp đến phía thứ ba (ngân hàng).
Hiện nay có 2 hệ thống tiền điện tử chính: Thẻ thông minh (Smart Card) hay phần
mềm. Tuy nhiên chúng có chung các đặc điểm cơ bản sau: Tính an toàn, tính riêng tư,

tính độc lập, tính chuyển nhượng, tính phân chia.

1.2.2. Mô hình giao dịch mua bán bằng tiền điện tử

Ngân hàng
Gửi tiền
Rút tiền

Ông A

Thanh toán

Ông B

Hình 1: Mô hình giao dịch cơ bản của hệ thống Tiền điện tử.

Mô hình giao dịch mua bán bằng tiền điện tử có 3 giao dịch với 3 đối tượng:
Ngân hàng, Người trả tiền A (người mua), Người được trả tiền B (người bán).
* Rút tiền: Ông A chuyển tiền từ tài khoản ở ngân hàng vào „Túi‟ của mình („Túi‟
có thể là Smart Card hay máy tính) .
* Thanh toán: Ông A chuyển tiền từ „Túi‟ của mình đến „Túi‟ ông B.
* Gứi tiền: Ông B chuyển tiền nhận được vào tài khoản của mình ở ngân hàng.
Mô hình này có thể thực hiện bằng 2 cách: trực tuyến, không trực tuyến.

13


Trực tuyến:
Ông B liên lạc với ngân hàng để kiểm tra tính hợp lệ của đồng tiền trước khi thanh
toán và phân phối hàng. Thanh toán và Gửi tiền được tiến hành đồng thời.

Thanh toán trực tuyến cần thiết cho giao dịch có giá trị lớn. Hệ thống yêu cầu
phải liên lạc với ngân hàng trong suốt mỗi lần giao dịch, vì thế chi phí nhiều hơn (tiền và
thời gian).
Không trực tuyến: ông B liên lạc với ngân hàng để kiểm tra tính hợp lệ của đồng
tiền được tiến hành sau quá trình thanh toán. Nó phù hợp cho những giao dịch có giá trị
thấp.

TIỀN ĐIỆN TỬ
(E-MONEY)

trực tuyến
(online)
Định danh
(Identified)

0 trực tuyến
(offline)

trực tuyến
(online)
Ẩn danh
(Anonymous)

0 trực tuyến
(offline)

Hình 2: Mô hình phƣơng thức thanh toán

1.2.3. Cấu trúc của Tiền điện tử
Với mỗi hệ thống thanh toán điện tử, tiền điện tử có có cấu trúc và định dạng khác

nhau nhưng đều bao gồm các thông tin chính như sau.
Số sê-ri của đồng tiền: Giống như tiền mặt, số sê-ri được dùng để phânbiệt các
đồng tiền khác nhau. Mỗi đồng tiền điện tử sẽ có một số sê-ri duy nhất.Tuy nhiên,
khác với tiền mặt, số sê-ri trên tiền điện tử thường là một dãy số được sinh ngẫu
nhiên. Điều này có liên quan tới tính ẩn danh của người sử dụng.
Giá trị của đồng tiền: Mỗi đồng tiền điện tử sẽ có giá trị tương đương với một
lượng tiền nào đó. Trong tiền mặt thông thường, mỗi tờ tiền có một giá trị nhất
định (1$, 10$,…), trong tiền điện tử, giá trị này có thể là một con số bất kỳ (9$,
17$,…).
Hạn định của đồng tiền: Để đảm bảo tính an toàn của đồng tiền và tính hiệu

14


quả của hệ thống, các hệ thống thường giới hạn ngày hết hạn của đồng tiền. Một đồng
tiền điện tử sau khi phát hành sẽ phải gửi lại ngân hàng trước thời điểm hết hạn.
Các thông tin khác: Đây là các thông tin thêm nhằm phục vụ cho mục đích đảm
bảo an toàn và tính tin cậy của đồng tiền điện tử, ngăn chặn việc giả mạo tiền điện tử
và phát hiện các vi phạm (nếu có). Trong nhiều hệ thống, các thông tin này giúp truy
vết định danh người sử dụng có hành vi gian lận trong thanh toán tiền điện tử.
Các thông tin trên tiền điện tử được ngân hàng ký bằng khóa bí mật của mình.
Bất kỳ người sử dụng nào cũng có thể kiểm tra tính hợp lệ của đồng tiền bằng cách sử
dụng khóa công khai của ngân hàng.

1.2.4. Tính chất của tiền điện tử
Tiền điện tử cũng có một số đặc điểm tương tự như tiền giấy: dùng để biểu diễn
một lượng tiền nào đó, có thể chuyển nhượng được, không để lại dấu vết, có tính
ẩn danh, có thể mang đi mang lại và đặc biệt có thể đổi được.
1.2.4.1. Tính an toàn (Security)
* Đảm bảo đồng tiền điện tử không bị sao chép, không bị sử dụng lại.

* Sự giả mạo (forgery).
Các gian lận thường gặp trong hệ thống thanh toán là sự giả mạo. Tương tự như
tiền giấy, có hai loại giả mạo đối với tiền điện tử.
+ Giả mạo đồng tiền: tạo ra đồng tiền giả giống như thật, nhưng không có
xác nhận rút tiền của ngân hàng.
+ Tiêu một đồng tiền nhiều lần: là sử dụng cùng một đồng tiền nhiều lần (thuậtngữ
tương đương như double spending, hay multiple spending, hay repeat spending)
1.2.4.2. Tính xác thực
Do luôn có sự giả mạo, nên ta cần phải xác lập được các mức khác nhau về cách
đánh giá tính xác thực.
+ Nhận dạng người dùng: Người dùng cần phải biết mình đang giao dịch với ai.
+ Xác thực tính toàn vẹn thông điệp: đảm bảo bản copy của thông điệp hoàn toàn
giống bản ban đầu.
1.2.4.3. Tính riêng tƣ (Privacy)
Chưa thể định nghĩa một cách rõ ràng tính chất này của Tiền điện tử. Đối với một
số người, tính riêng tư có nghĩa là sự bảo vệ chống lại “eavesdropping”. Đối với một số

15


người khác như David Chaum, “tính riêng tư” có nghĩa là trong quá trình thanh toán,
người trả tiền phải được ẩn danh, không để lại dấu vết, ngân hàng không nói được tiền
giao dịch là của ai.
Tính chất này nhằm bảo vệ người dùng, khó có thể truy vết, chấp nối mối quan hệ
giữa người dùng với các giao dịch hay chi tiêu mà người đó thực hiện. Tính chất này
cũng có thể thấy rõ trong các giao dịch bằng tiền mặt. Sau khi thanh toán, việc chứng
minh người nào đã sở hữu số tiền đó trước đây là rất khó.
1.2.4.4. Tính độc lập (Portability)
Tính chất này có nghĩa là sự an toàn của Tiền điện tử không phụ thuộc vào vị trí địa
lý. Tiền có thể được chuyển qua mạng máy tính hoặc lưu trữ vào các thiết bị nhớ khác

nhau.
1.2.4.5. Tính chuyển nhƣợng đƣợc (Ttransferrability)
Người dùng Tiền điện tử có thể chuyển giao quyền sở hữu đồng tiền điện tử cho
nhau. Tính chuyển nhượng được là một tính chất rất quan trọng cho việc tiêu tiền điện
tử, thực sự giống với tiêu tiền mặt thông thường.

Hình 3: Mô hình giao dịch có tính chuyển nhƣợng
Tuy vậy, có một số vấn đề nảy sinh mà hệ thống vẫn cần phải giải quyết:
Kích thước dữ liệu tăng lên sau mỗi lần chuyển nhượng. Vì vậy, cần giới hạn số lần
chuyển nhượng tối đa cho phép.
Phát hiện giả mạo và tiêu một đồng tiền nhiều lần có thể quá trễ, khi đồng tiền đã
được chuyển nhượng nhiều lần.

16


Người dùng có thể nhận ra đồng tiền của mình, nếu nó lại xuất hiện trong một lần
giao dịch khác.

1.2.4.6. Tính phân chia đƣợc (Divisibility)
Người dùng có thể phân chia đồng tiền của mình thành những mảnh có giá trị nhỏ
hơn, với điều kiện tổng giá trị các mảnh nhỏ bằng giá trị đồng tiền ban đầu. Tiền điện tử
thực chất là một dãy số bị mã hóa, nên không phải hệ thống nào cũng thực hiện được
việc chia dãy số này thành các đồng tiền có giá trị nhỏ hơn.

17


Chƣơng 2. CÁC KHÁI NIỆM CƠ BẢN
2.1. MỘT SỐ KHÁI NIỆM TOÁN HỌC.

2.1.1. Khái niệm trong số học.
2.1.1.1. Số nguyên tố và số nguyên tố cùng nhau.
1/. Khái niệm.
Số nguyên tố là số chỉ chia hết cho 1 và chính nó.
Hai số m và n được gọi là nguyên tố cùng nhau nếu ước số chung lớn nhất của
chúng bằng 1.
Ký hiệu: gcd(m, n) = 1
2/. Ví dụ.
2, 3, 5, 7, 11… là những số nguyên tố.
15 và 16 là hai số nguyên tố cùng nhau.

2.1.1.2. Đồng dƣ thức.
1/. Khái niệm.
Cho các số nguyên a, b, m (m>0). Ta nói rằng a và b “đồng dư” với nhau theo
modulo m, nếu chia a và b cho m, ta nhận được cùng một số dư.
Ký hiệu: a ≡ b (mod m)
2/. Ví dụ.
17 ≡ 5 (mod 3) vì chia 17 và 5 cho 3, được cùng số dư 2.
Nhận xét: Các mệnh đề sau đây là tương đương.
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ó:

18


a ≡ a (mod m) với mọi a  Z;

(tính chất phản xạ)

a ≡ b (mod m) thì b ≡ a (mod m);

(tính chất đối xứng)

a ≡ b (mod m) và b ≡ c (mod m) thì a ≡ c (mod m);

(tính chất bắc cầu)

Tổng hay hiệu 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 lớp thặng dƣ:
Quan hệ “đồng dư” theo modulo m trên tập Z (tập các số nguyên) là một quan hệ
tương đương (vì có tính chất phản xạ, đối xứng, bắc cầu), do đó nó tạo ra trên tập Z một
phân hoạch gồm các lớp tương đương: hai số nguyên thuộc cùng một lớp tương đương
khi và chỉ khi chúng có cùng một số dư khi chia cho m.
Mỗi lớp tương đương đại diện bởi một số trong tập Zm ={0, 1,…, m-1} là số dư khi

chia các số trong lớp cho m, ký hiệu một lớp được đại diện bởi số a là [a]m
Như vậy, [a]m = [b]m  a ≡ b (mod m)
Vì vậy ta có thể đồng nhất Zm với tập các lớp tương đương theo modulo m.
Zm ={0, 1, 2,…, m-1} được gọi là tập các “thặng dư đầy đủ” theo modulo m. Mọi số
nguyên bất kỳ đều có thể tìm được trong Zm một số đồng dư với mình theo modulo m.

19


2.1.1.3. Phần tử nghịch đảo.
1/. Khái niệm.
Cho a  Zn , nếu tồn tại b  Zn sao cho a b  1 (mod n), ta nói b là phần tử nghịch
đảo của a trong Zn và ký hiệu a -1.
Một phần tử có phần tử nghịch đảo, gọi là khả nghịch.
2/. Định lý.
UCLN (a, n) = 1  Phần tử a  Zn có phần tử nghịch đảo.
3/. Tính chất.
Cho a, b  Zn, phép chia của a cho b theo modulo n là tích của a và b-1 theo modulo
n, và chỉ được xác định khi b có nghịch đảo theo modulo n.
Cho a  Zn. Khả nghịch khi và chỉ khi gcd(a,n) = 1
Giả sử d = gcd(a,n). Phương trình đồng dư ax ≡ b mod n có nghiệm x khi và chỉ khi
d chia hết cho b, trong trường hợp các nghiệm d nằm trong khoảng 0 đến n-1 thì các
nghiệm đồng dư theo modulo n/d.
2.1.1.4. Logarit rời rạc.
Cho p là số nguyên tố, g là phần tử nguyên thủy của Zp ,   Z *p
“Logarit rời rạc” chính là việc giải phương trình x = log g  (mod p) với ẩn x. Hay
phải tìm số x duy nhất sao cho: g x   (mod p).

2.1.2. Khái niệm trong đại số.
2.1.2.1. Nhóm.

1/. Khái niệm.
Nhóm là một bộ (G, *), trong đó G  , * là phép toán hai ngôi trên G thoả mãn
ba tính chất sau:
+ Phép toán có tính kết hợp: (x*y)* z = x*(y*z) với mọi x, y, z  G.
+ Có phần tử phần tử trung lập e  G: x*e = e*x = x với mọi x  G.

20


+ Với mọi x G, có phần tử nghịch đảo x‟ G: x * x‟ = x‟ * x = e.
Cấp của nhóm G được hiểu là số phần tử của nhóm, ký hiệu là G .
Cấp của nhóm có thể là  nếu G có vô hạn phần tử.
Nhóm Abel là nhóm (G, *), trong đó phép toán hai ngôi * có tính giao hoán.
Tính chất:
Nếu a * b = a * c, thì b = c.
Nếu a * c = b * c, thì a = b.
2/. Ví dụ.
+ Tập hợp các số nguyên Z cùng với phép cộng (+) thông thường là nhóm giao
hoán, có phần tử đơn vị là số 0, gọi là nhóm cộng các số nguyên.
+ Tập Q* các số hữu tỷ khác 0 (hay tập R * các số thực khác 0), cùng với phép nhân
(*) thông thường là nhóm giao hoán. Gọi là nhóm nhân các số hữu tỷ (số thực) 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.

2.1.2.2. Nhóm con của nhóm (G,*).
1/. Khái niệm.
Nhóm con của G là tập S  G, S  , và thỏa mãn các tính chất sau:
+ Phần tử trung lập e của G nằm trong S.
+ S khép kín đối với phép tính (*) trong G, tức là x*y  S với mọi x, y S.
+ S khép kín đối với phép lấy nghịch đảo trong G, tức x -1  S với mọi xS.
2/. Ví dụ.

Xét nhóm cộng theo modulo 6 các số tự nhiên nhỏ hơn 6.
Z6= {0, 1, 2, 3, 4, 5}
Ta có các nhóm con sinh bởi các phần tử 2,3 là:
<2> = {0, 2, 4}

21


<3> ={0, 3}

2.1.2.3. Nhóm Cyclic.
1/. Khái niệm.
Nhóm (G, *) được gọi là Nhóm Cyclic nếu nó được sinh ra bởi một trong các phần
tử của nó.
Tức là có phần tử g  G mà với mỗi a  G, đều tồn tại số n  N để
g n = g * g * … * g = a. (Chú ý g * g * … * g là g * g với n lần).
Khi đó g được gọi là phần tử sinh hay phần tử nguyên thuỷ của nhóm G.
Nói cách khác: G được gọi là Nhóm Cyclic nếu tồn tại g  G sao cho mọi phần tử
trong G đều là một luỹ thừa nguyên nào đó của g.
2/. Ví dụ.
Nhóm (Z + , +) gồm các số nguyên dương là Cyclic với phần tử sinh g = 1.
2.1.3. Khái niệm độ phức tạp.
2.1.3.1. Thuật toán.
1/. Khái niệm Bài toán.
Bài toán được diễn đạt bằng hai phần:
Input: Các dữ liệu vào của bài toán.
Output: Các dữ liệu ra của bài toán (kết quả).
Không mất tính chất tổng quát, giả thiết các dữ liệu trong bài toán đều là số nguyên.

2/. Khái niệm Thuật toán.

”Thuật toán” được hiểu đơn giản là cách thức để giải một bài toán. Cũng có thể
được hiểu bằng hai quan niệm: Trực giác hay Hình thức, như sau:
 Quan niệm trực giác về ”Thuật toán”.

22


Một cách trực giác, Thuật toán được hiểu là một dãy hữu hạn các qui tắc (chỉ thị,
mệnh lệnh) mô tả một quá trình tính toán, để từ dữ liệu đã cho (Input) ta nhận được kết
quả (Output) của bài toán.
 Quan niệm toán học về ”Thuật toán”.
Một cách hình thức, người ta quan niệm thuật toán là một máy Turing.
Thuật toán được chia thành hai loại: Đơn định và không đơn định.
Thuật toán đơn định (Deterministic):
Là thuật toán mà kết quả của mọi phép toán đều được xác định duy nhất.
Thuật toán không đơn định (NonDeterministic):
Là thuật toán có ít nhất một phép toán mà kết quả của nó là không duy nhất.
3/. Hai mô hình tính toán
Hai quan niệm về thuật toán ứng với hai mô hình tính toán.
Ứng với hai mô hình tính toán có hai cách biểu diễn thuật toán:
 Mô hình ứng dụng:
Thuật toán được biểu diễn bằng ngôn ngữ tựa Algol.
+ Đơn vị nhớ: Một ô nhớ chứa trọn vẹn một dữ liệu.
+ Đơn vị thời gian: Thời gian để thực hiện một phép tính cơ bản trong số học hay
logic như cộng, trừ, nhân, chia, ...
 Mô hình lý thuyết:
Thuật toán được biểu diễn bằng ngôn ngữ máy Turing.
+ Đơn vị nhớ: 1 ô nhớ chứa một tín hiệu. Với mã nhị phân thì đơn vị nhớ là 1 bit.
+ Đơn vị thời gian: Thời gian để thực hiện một bước chuyển hình trạng.


2.1.3.2. Độ 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):
Chi phí phải trả cho một quá trình tính toán gồm chi phí về thời gian và bộ nhớ.

23


Chi phí thời gian của một quá trình tính toán là thời gian cần thiết để thực hiện quá
trình tính toán đó.
Với thuật toán tựa Algol: Chi phí thời gian là số các phép tính cơ bản thực hiện
trong quá trình tính toán .
Chi phí bộ nhớ của một quá trình tính toán là số ô nhớ cần thiết để thực hiện một
quá trình tính toán.
Gọi A là một thuật toán, e là dữ liệu vào của bài toán đã được mã hoá bằng cách
nào đó. Thuật toán A tính trên dữ liệu vào e phải trả một giá nhất định. Ta ký hiệu:
t A (e) là giá thời gian và l A(e) là giá bộ nhớ.
2/. Độ phức tạp về bộ nhớ (Trong trường hợp xấu nhất):
LA(n) = max{ l A (e), với |e|  n}, n là “kích thước” đầu vào của thuật toán.
3). Độ phức tạp thời gian (Trong trường hợp xấu nhất):
TA(n) = max { t A (e), với |e|  n}.
4). Độ phức tạp tiệm cận:
Độ phức tạp PT(n) được gọi là tiệm cận tới hàm f(n),
ký hiệu O(f(n)) nếu  các số n0 , c mà PT(n)  c.f(n ,n  n0.
5). Độ phức tạp đa thức:
Độ phức tạp PT(n) được gọi đa thức, nếu nó tiệm cận tới đa thức p(n).
6). Thuật toán đa thức:
Thuật toán được gọi là đa thức, nếu độ phức tạp về thời gian (trong trường hợp xấu
nhất) của nó là đa thức.
- Nói cách khác:
+ Thuật toán thời gian đa thức là thuật toán có độ phức tạp thời gian O(n t ),

trong đó t là hằng số.
+ Thuật toán thời gian hàm mũ có độ phức tạp thời gian O(t f (n) ), trong đó t là
hằng số và f(n) là đa thức của n.

24


- Thời gian chạy của các lớp thuật toán khác nhau:
Độ phức tạp

Số phép tính(n=106)

Thời gian(106ptính/s)

O(1)

1

1micro giây

O(n)

106

1 giây

O(n2)

1012


11,6 ngày

O(n3)

1018

32 000 năm

O(2n)

10301 030

10301 006 tuổi của vũ trụ

2.2. MÃ HÓA.
2.2.1. Khái niệm về mã hóa.
* Mã hóa là quá trình chuyển thông tin có thể đọc được

(gọi là Bản rõ ) thành

thông tin “khó” thể đo ̣c được theo cách thông thường (gọi là Bản mã).
Đó là mô ̣t trong những kỹ thuâ ̣t để bảo mâ ̣t thông tin .
* Giải mã là quá trình chuyển thông tin ngược lại: từ Bản mã thành Bản rõ.
* Thuật toán mã hóa hay giải mã là thủ tục tính toán để thực hiện mã hóa hay giải
mã.
* Khóa mã hóa là một giá trị làm cho thuật toán mã hóa thực hiện theo cách

riêng

biê ̣t và sinh ra bản rõ riêng . Thông thường khóa càng lớn thì bản mã càng an toàn . Phạm

vi các giá tri ̣có thể có của khoá được gọi là Không gian khóa.
* Hê ̣ mã hóa là tập các thuật toán, các khóa nhằm che giấu thông tin , cũng như làm
cho rõ nó.
Phân loại: Phân loại mã hóa theo đặc trưng của khóa
Có 2 loại:
+ Hệ mã hóa khóa đối xứng
+ Hệ mã hóa khóa công khai
Hệ mã hóa.
Việc mã hoá phải theo quy tắc nhất định, quy tắc đó gọi là Hệ mã hóa.

25


×