1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu một số chữ ký đặc biệt và ứng dụng

73 239 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 73
Dung lượng 1,19 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hình 1.5 Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng Hình 1.6 Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng Hình 2.1 Quá trình tạo chữ ký Hình 2.2 Quá trình t

Trang 1

LỜI CAM ĐOAN

Tôi xin cam đoan toàn bộ nội dung bản luận văn “Nghiên cứu một số chữ ký đặc biệt và Ứng dụng” là do tôi tự làm trên cơ sở tìm hiểu giáo trình, tài liệu tham khảo và theo hướng dẫn của PGS TS Trịnh Nhật Tiến Các nguồn lấy từ giáo trình, tài liệu tham khảo đều được chú thích rõ ràng, đúng quy định

Nếu sai tôi xin hoàn toàn chịu trách nhiệm

Thái Nguyên, tháng 7 năm 2014

Người cam đoan

Trần Thị Hồng Dung

Trang 2

LỜI CẢM ƠN

Lời đầu tiên, tôi xin được gửi lời cảm ơn chân thành và sâu sắc tới PGS.TS Trịnh Nhật Tiến, người thầy đã cho tôi những định hướng và tận tình chỉ bảo giúp tôi trong quá trình hoàn thành luận văn và tôi xin bày tỏ lòng biết ơn sâu sắc đến các thầy trong Viện Công Nghệ Thông tin, cùng các thầy cô trong trường Công Nghệ Thông Tin & Truyền thông Thái Nguyên đã giảng dạy, truyền đạt cho tôi những kiến thức quý báu trong khóa học

Tôi xin chân thành cảm ơn Lãnh đạo trường Đại học Tân Trào đã tạo điều kiện thuận lợi, giúp đỡ tôi trong quá trình học tập, cảm ơn sự giúp đỡ của gia đình, bạn bè và các đồng nghiệp luôn động viên tôi vượt qua khó khăn

Trong quá trình học tập, tìm hiểu và nghiên cứu cùng với thời gian làm luận văn, tôi đã cố gắng tập trung tìm hiểu và tham khảo các tài liệu liên quan Tuy nhiên, do thời gian nghiên cứu cũng như năng lực có hạn nên khó tránh khỏi nhưng sai sót cần bổ sung, rất mong nhận được sự đóng góp ý kiến của các thầy, cô giáo

Thái Nguyên, tháng 07 năm 2014

Học viên

Trần Thị Hồng Dung

Trang 3

MỤC LỤC LỜI CAM ĐOAN I LỜI CẢM ƠN II DANH MỤC CÁC TỪ VIẾT TẮT VI DANH MỤC BẢNG VII DANH MỤC HÌNH ẢNH VIII DANH MỤC BIỂU ĐỒ IX

MỞ ĐẦU 1

CHƯƠNG 1 CÁC KHÁI NIỆM CƠ BẢN 3

1.1 TỔNG QUAN VỀ MẬT MÃ 3

1.1.1 Vấn đề Mã hóa 3

1.1.2 Hàm băm 4

1.2 CƠ SỞ TOÁN HỌC 5

1.2.1 Khái niệm 5

1.2.2 Quan hệ đồng dư 7

1.2.3 Số nguyên tố 9

1.2.4 Phần tử nghịch đảo đối với phép nhân 11

1.2.5 Một số Nhóm đặc biệt: 11

1.2.6 Các khái niệm về đường cong Elliptic 12

1.3 TỔNG QUAN VỀ THANH TOÁN ĐIỆN TỬ 16

1.3.1 Khái niệm thanh toán điện tử 16

1.3.2 Mô hình thanh toán điện tử 16

1.3.3 Hình thức thanh toán trong thanh toán điện tử 16

1.3.4 Các phương tiện thanh toán điện tử 16

1.3.5 Giao thức SET bảo mật trong thanh toán điện tử 18

1.3.6 Tiền điện tử 19

1.3.7 Một số lược đồ trong Hệ thống tiền điện tử 24

1.4 KẾT LUẬN CHƯƠNG I 29

CHƯƠNG 2 MỘT SỐ CHỮ KÝ ĐẶC BIỆT 30

2.1 GIỚI THIỆU CHỮ KÝ SỐ 30

2.1.1 Khái niệm về chữ ký số 30

Trang 4

2.1.2 Sơ đồ chữ ký số 30

2.1.3 Phân loại “Chữ ký số” 31

2.1.4 Hoạt động của chữ ký số 32

2.2 CHỮ KÝ “MÙ RSA” 35

2.2.1 Khái niệm Chữ ký “mù” (Blind Signature) 35

2.1.2 Lưu đồ thuật toán chữ ký mù RSA 37

2.1.3 Ứng dụng Chữ ký “mù” 38

2.3 CHỮ KÝ “MÙ NHÓM” 39

2.3.1 Sơ đồ chữ ký “mù nhóm” CS97 40

2.3.2 Ứng dụng Chữ ký “mù nhóm” 41

2.4 CHỮ KÝ “MÙ BỘI” (BLIND MULTI SIGNATURE) 43

2.4.1 Sơ đồ chữ ký bội trên ECC 43

2.4.2 Ứng dụng Chữ ký “mù bội” 44

2.5 CHỮ KÝ KHÔNG THỂ PHỦ ĐỊNH 46

2.5.1 Giới thiệu chữ ký không thể phủ định 46

2.5.2 Sơ đồ chữ ký không thể phủ định (Chaum – van Antverpen) 47

2.5.3 Ứng dụng chữ ký “ không thể phủ nhận” 50

2.6 KẾT LUẬN CHƯƠNG II 50

CHƯƠNG 3 THỬ NGHIỆM CHƯƠNG TRÌNH 51

3.1 BÀI TOÁN THỬ NGHIỆM CHƯƠNG TRÌNH 51

3.1.1 Bài toán thử nghiệm chương trình Ẩn danh đồng tiền điện tử 51

3.1.2 Mô hình thuật toán chữ ký mù RSA 52

3.2 CẤU HÌNH HỆ THỐNG 53

3.2.1 Yêu cầu phần cứng 53

3.2.2 Yêu cầu phần mềm 53

3.3 YÊU CẦU HỆ THỐNG 53

3.3.1 Yêu cầu chức năng 53

3.3.2 Yêu cầu giao diện 53

3.4 PHÂN TÍCH CHỨC NĂNG 53

Trang 5

3.4.1 Người gửi thông điệp 53

3.4.2 Người ký thông điệp 53

3.5 THIẾT KẾ HỆ THỐNG 53

3.5.1 Xác định các tác nhân và ca sử dụng 53

3.5.2 Biểu đồ người dùng 54

3.5.3 Biểu đồ trình tự 54

3.6 HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH 56

3.7 KẾT LUẬN CHƯƠNG III 61

KẾT LUẬN - KIẾN NGHỊ 62

TÀI LIỆU THAM KHẢO 63

Trang 6

DANH MỤC CÁC TỪ VIẾT TẮT

UCLN, gcd Ước số chung lớn nhất (Greatest Common Divisor)

EC Elliptic Curve

Blind(x) Thuật toán làm mù

UnBlind(x) Thuật toán xóa mù

Trang 7

DANH MỤC BẢNG

Bảng1.1 Tìm phần tử nghịch đảo của 3 trong Z7

Trang 8

DANH MỤC HÌNH ẢNH

Hình 1.1 Ví dụ đường cong Elliptic

Hình 1.2 Phép cộng

Hình 1.3 Cộng hai điểm trùng nhau

Hình 1.4 Phép “nhân” một điểm với một số nguyên

Hình 1.5 Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng Hình 1.6 Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng Hình 2.1 Quá trình tạo chữ ký

Hình 2.2 Quá trình tạo chữ ký

Hình 2.3 Lưu đồ thuật toán chữ ký mù RSA

Hình 3.1 Mô hình thuật toán chữ ký mù RSA

Hình 3.2 Giao diện Demo chương trình chữ ký mù

Trang 9

DANH MỤC BIỂU ĐỒ

Biểu đồ 3.1 Biểu đồ Người gửi thông điệp

Biểu đồ 3.2 Biểu đồ Người ký thông điệp

Biểu đồ 3.3 Tạo và làm mù thông điệp dành cho Người gửi thông điệp Biểu đồ 3.4 Khử mù thông điệp dành cho Người gửi thông điệp

Biểu đồ 3.5 Ký mù thông điệp dành cho Người ký thông điệp

Biểu đồ 3.6 Xác thực/ Giải mã thông điệp dành cho Người ký thông điệp

Trang 10

Vấn đề vô cùng quan trọng được đặt ra là sự bảo mật và an toàn trong việc trao đổi thông tin Các thông tin truyền đi phải đảm bảo tính chính xác, không bị sửa đổi và trong rất nhiều trường hợp cần được bảo đảm tính bí mật thông tin và cần xác thực đúng người gửi và người nhận Xuất phát từ thực tế này có nhiều biện pháp về an toàn thông tin ra đời

Một giải pháp hữu hiệu cho cho việc đảm bảo tính bí mật của thông tin là mã hóa thông tin với mục đích “che giấu” nội dung thông tin, chỉ những đối tượng có thẩm quyền mới có thể giải mã thông tin đã mã hóa để lấy lại thông tin ban đầu

Để xác thực thông tin, gắn trách nhiệm của một thực thể nào đó với một thông tin, cũng như đảm bảo tính toàn vẹn, thông tin truyền đi không bị sửa đổi ngoài ý muốn, con người đã sáng tạo ra chữ ký số để thực hiện được các yêu cầu trong lĩnh vực An toàn bảo mật thông tin

Xuất phát từ thực tế nêu trên, luận văn ghiên cứu các phương pháp an toàn thông tin nói chung, chữ ký số nói riêng để bảo vệ thông tin số là thiết thực và có ý nghĩa to lớn

2 Đối tượng phạm vi nghiên cứu

- Đối tượng nghiên cứu

Tìm hiểu một số chữ ký như chữ ký mù RSA, chữ ký mù nhóm, chữ ký mù bội và chữ ký không thể phủ định

- Phạm vi nghiên cứu

Tìm hiểu chữ ký số trong lĩnh vực thanh toán điện tử

Trang 11

3 Những nội dung nghiên cứu chính

Nội dung chính của Luận văn gồm có:

Chương 1: Các khái niệm cơ bản

Trong chương này sẽ trình bày cơ sở toán học, tổng quan về mã hóa, tổng quan về thanh toán điện tử trong thương mại điện tử, tiền điện tử và một số lược đồ dùng trong hệ thống tiền điện tử

Chương 2: Một số chữ ký đặc biệt

Trong chương này trình bày chi tiết về thuật toán, sơ đồ chữ ký mù RSA, chữ ký mù nhóm, chữ ký mù bội, chữ ký không thể phủ định và ứng dụng của các chữ ký số trên

Chương 3: Thử nghiệm chương trình

Tác giả đi vào phân tích bài toán ẩn danh đồng tiền điện tử và xây dựng chương trình Demo chữ ký mù cài đặt thuật toán để minh chứng cho kết quả của thuật toán giải quyết vấn đề ẩn danh trong thực tế

Trang 12

Chương 1 CÁC KHÁI NIỆM CƠ BẢN 1.1 TỔNG QUAN VỀ MẬT MÃ

1.1.1 Vấn đề Mã hóa

1.1.1.1 Khái niệm mã hóa

Để đảm bảo An toàn thông tin (ATTT) lưu trữ trong máy tính (giữ gìn thông tin cố định) hay đảm bảo An toàn thông tin trên đường truyền tin (trên mạng máy tính), người ta phải “Che giấu” các thông tin này

“ Che ” thông tin (dữ liệu) hay “ Mã hóa” thông tin là thay đổi hình dạng thông tin gốc, và người khác khó nhận ra

Hệ mã hóa được định nghĩa là một bộ năm (P, C, K, E, D), trong đó:

Với khóa lập mã keK có hàm lập mã ekeE eke P, : C

Với khóa giải mã kdK có hàm giải mã dkdE dkd P, : C sao cho: ( ( )) ,

dkd eke xx  x P

Ở đây x được gọi là bản rõ, eke x( ) được gọi là bản mã.[6]

Mã hoá nhằm đảm bảo các tính chất sau của thông tin:

Tính bí mật (Confidentiality): thông tin chỉ được tiết lộ cho những ai được phép Tính toàn vẹn (Integrity): thông tin không thể bị thay đổi mà không bị phát hiện Tính xác thực (Authentication): người gửi (hoặc người nhận) có thể chứng

minh đúng họ

Tính không chối bỏ (Non-repudiation): người gửi hoặc nhận sau này không

thể chối bỏ việc đã gửi hoặc nhận thông tin [5]

Trang 13

1.1.1.2 Phân loại hệ mã hóa

1/ Hệ mã hóa khóa đối xứng

Mã hóa khóa đối xứng là Hệ mã hóa mà biết được khóa lập mã thì có thể

“dễ” tính được khóa giải mã và ngược lại Đặc biệt một số Hệ mã hóa có khóa lập

mã (ke) và khóa giải mã trùng nhau (kd), như Hệ mã hóa “dịch chuyển” hay DES

2/ Hệ mã hóa khóa công khai

- Hệ mã hóa khóa công khai hay Hệ mã hóa phi đối xứng do Diffie và Hellman phát minh vào những năm 1970

- Hệ mã hóa khóa phi đối xứng là Hệ mã hóa có khóa lập mã và khóa giải mã

khác nhau (ke kd), biết được khóa này cũng “khó” tính được khóa kia

- Khóa lập mã cho công khai, gọi là khóa công khai (Public key)

- Khóa giải mã giữ bí mật, còn gọi là khóa riêng (Private key) hay khóa bí mật

Sơ đồ: ( Pivest, Shamir, Adleman đề xuất năm 1977)

- Tạo cặp khóa bí mật và khóa công khai (a, b):

Chọn bí mật số nguyên tố lớn p, q, tính n=p*q, công khai n đặt P= C= Z n

- Tính bí mật ( )n (p1) * (q1) Chọn khóa công khai b ( )n , nguyên tố cùng nhau ( )n

- Khóa bí mật a là phần tử nghịch đảo của b theo( ) : *n a b1(mod( ))n

- Tập cặp khóa ( bí mật, công khai)

Ka b a bZ n a b  n Với bản rõ xP và bản mã yC , định nghĩa:

- Hàm mã hóa:ye x k( ) x bmodn

- Hàm giải mã: xd k( )yy amodn [6]

1.1.2 Hàm băm

Hàm băm là thuật toán không dùng khóa để mã hóa ( Ở đây dùng thuật ngữ

“băm” thay cho “ mã hóa”, nó có nhiệm “ lọc” ( băm ) tài liệu ( bản tin) và cho kết quả là một giá trị băm có kích thước cố định, còn gọi là “đại diện tài liệu” hay “ đại diện bản tin”, “ đại diện thông điệp”

Trang 14

Hàm băm là hàm một chiều (One-way Hash) theo nghĩa giá trị hàm băm là duy nhất và từ giá trị băm này khó thể suy ngược lại được nội dung hay độ dài ban đầu của tài liệu gốc

Đặc tính của hàm băm

1/ Với tài liệu đầu vào ( Bản tin gốc) x, chỉ thu được giá trị băm duy nhất z = h(x) 2/ Nếu dữ liệu trong bản tin x bị thay đổi hay bị xóa thành bản tin x’ thì giá

trị băm ( ')h xh x( )

3/ Nội dung từ bản tin gốc khó thể suy ra từ giá trị băm của nó

Hai tính chất quan trọng nhấ của hàm băm là Tính một chiều và Tính duy nhất Hiện nay, một số kỹ thuật băm được sử dụng phổ biến như: SHA-1, SHA-

256, SHA-384, SHA-512; MD-4, MD-5…[1], [6]

1.2 CƠ SỞ TOÁN HỌC

1.2.1 Khái niệm

1.2.1.1 Ước số , bội số

Cho hai số nguyên a, b ( b  ) Nếu có một số nguyên q sao cho a=b*q, ta 0

nói rằng a chia hết cho b, kí hiệu b\a Ta nói b là ước của a và a là bội của b

1.2.1.2 Ước chung lớn nhất, bội chung nhỏ nhất

- Số nguyên d được gọi là ước chung của các số nguyên a 1 , a 2 ,…,a n , nếu nó

là ước của tất cả các số đó

- Số nguyên m được gọi là bội chung của các số nguyên a 1 , a 2 ,…,a n , nếu nó

là bội của tất cả các số đó

- Một ước chung d của tất cả các số nguyên a 1 , a 2 , …, a n trong đó mọi ước

chung của a 1 , a 2 , …, a n đều là ước của d, thì d được gọi là ước chung lớn nhất (UCLN) của a 1 , a 2 , …, a n

Ký hiệu d = gcd(a 1 , a 2 ,…, a n ) hay d= UCLN (a 1 , a 2 ,…, a n). Nếu gcd(a 1 , a 2 ,…, a n )

- Nếu gcd(a 1 , a 2 , …, a n ) =1 thì các số a 1 , a 2 , …, a n được gọi là nguyên tố cùng nhau

Trang 15

- Một bội chung m>0 của các số nguyên a 1 , a 2 , …, a n, trong đó mọi bội

chung của a 1 , a 2 , …, a n , đều là bội của m thì m được gọi là bội chung nhỏ nhất (BCNN) của a 1 , a 2 , …, a n

Ký hiệu m = lcm(a 1 , a 2 , …, a n ) hay m=BCNN(a 1 , a 2 , …, a n )

- Tập Zn và Zn*

+ Z n ={ 0, 1, 2, …, n-1} là tập các nguyên tố không âm < n

+ Z n * = { eZ n , e là nguyên tố cùng nhau với n} Tức e  0

1.2.1.3 Thuật toán Euclide tìm ước chung lớn nhất

Thuật toán Euclide mở rộng

Bài toán

- Input: Cho hai số nguyên không âm a, b ( ab)

- Output: d = gcd(a, b ) và hai số x, y sao cho ax + by = d

Thuật toán ( Mô phỏng ngôn ngữ Pascal)

Trang 16

x2:=1; x1:= 0; y2:=0; y1:=1;

While b>0 Do Begin

Ví dụ: 17 5 ( mod 3) vì chia 17 và 5 cho 3 được cùng số dư là 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

1.2.2.2 Các tính chất của quan hệ đồng dư

1/ Quan hệ đồng dư là qua hệ tương đương Z

Với mọi số nguyên dương m ta có

a a ( mod m) với mọi aZ; ( 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) 2/ 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)

Trang 17

Tổng quát

Có thể cộng hoặc trừ từng vế nhiều đồng dư thức theo cùng modulo m, ta

được một đồng dư thức theo cùng modulo m tức là:

Có thể nhân từng vế với đồng dư thức theo cùng một modulo m, ta được một

đồng dư thức theo cùng modulo m, tức là

Nếu a i b i ( mod m) với i= 1, …k, thì ta có

+ Có thể cộng hoặc trừ cùng một số vào hai vế của một đồng dư thức

+ Có thể chuyển vế các số hạng của đồng dư thức bằng cách đổi dấu các số

hạng đó

+ Có thể cộng vào một vế của đồng dư thức một bội của modulo

a b ( mod m) a + km b ( mod m) với mọi k  Z

+ Có thể nhân hai vế của một đồng dư thức cùng với một số:

a b ( mod m) ac bc ( mod m) với mọi c Z

+ Có thể nâng lũy thừa bậc nguyên không âm cho 2 vế của một đồng dư thức

a b ( mod m) a n b n ( mod m) với mọi n Z +

+ Có thể chia 2 vế đồng dư thức cho một ước chung nguyên tố với modulo

c\a, c\b, (c,m)=1, a b ( mod m) a/c b/c ( mod m)

+ Có thể nhân 2 vế đồng dư thức và modulo cùng với một số nguyên dương:

Nếu a b ( mod m), c>0 ac bc ( mod mc)

+ Có thể chia 2 vế đồng dư thức và modulo cho cùng một số nguyên dương

là ước chung của chúng:

Nếu c/( a, b, m)  a/c b/c ( mod m/c)

Trang 18

+ a b ( mod m ) a b ( mod k ) với k\ m

+ a b ( mod m ) gcd(a, m) = gcd( b,m)

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ặc chỉ gồm các 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ố duy nhất Z m = { 0, 1, 2, …, 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 Z m với tập các lớp tương đương theo modulo m

- Z m = {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 Z m một số đồng dư với mình theo

Cho số nguyên dương a, số lượng các số nguyên dương bé hơn n và nguyên

tố cùng nhau với n được ký hiệu ( )p và gọi là hàm Euler

Nhận xét: Nếu p là số nguyên tố, thì ( )pp 1

Trang 19

Ví dụ:

Tập các số nguyên không âm nhỏ hơn 7 là Z7 = { 0, 1, 2, 3, 4, 5, 6}

Do 7 là số nguyên tố, nên tập các số nguyên dương nhỏ hơn 7 và nguyên tố cùng nhau với 7 là Z7* ={ 1, 2, 3, 4, 5, 6} Khi đó | Z| = ( )pp =7 – 1 = 6 1

1.2.3.4 Định lý về hàm Euler

Nếu n là tích của hai số nguyên tố p, q thì ( )n  ( ) ( )pq (p1)(q1)

1.2.3.5 Định lý Ferma

- Nếu p là số nguyên tố, a là số nguyên thì a p a( mod p )

- Nếu p nguyên tố, p không chia hết cho a thì a p1 1(mod )p

Nếu gcd (c, m)=1 và a b ( mod (m)) với a,b là các số tự nhiên thì

c a = c b (mod m) và suy ra ca camod( )m (mod ).m

Nhận xét : Hệ quả trên giúp giảm nhẹ việc tính toán đồng dư của lũy thừa bậc cao

Trang 20

1.2.4 Phần tử nghịch đảo đối với phép nhân

Định nghĩa

Cho a Z n , 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 Z n và ký hiệu a -1

Ví dụ: Tìm phần tử nghịch đảo của 3 trong Z7

Tức là phải giải phương trình 3.x  1 ( mod 7), x sẽ là phần tử nghịch đảo của 3

Vậy 5 là phần tử nghịch đảo của 3 trong Z7

Định lý Euler tổng quát Nếu ( a,n) = 1 thì a( )n mod n = 1

- Hệ quả : Nếu p là số nguyên tố và ( a, p) = 1 thì ap-1(mod p) = 1

1.2.5 Một số Nhóm đặc biệt:

Ký hiệu: Z n = {0, 1, 2, 3, …, n-1}

Z n* = { x  Z n , x là nguyên tố cùng nhau với n }

1.2.5.1 Khái niệm Nhóm Cyclic:

Nhóm (G, *) được gọi là Nhóm Cyclic nếu nó được sinh ra bởi một phần

tử g  G Tức là với mỗi a  G, đều tồn tại số n  N để g n = g * … * g = a Khi đó g được gọi là phần tử sinh hay phần tử nguyên thuỷ của nhóm G

Trang 21

1.2.5.2 Cấp (Bậc) của Nhóm Cyclic:

Cho (G, *) là Nhóm Cyclic với phần tử sinh g và phần tử trung lập e

Nếu tồn tại số tự nhiên nhỏ nhất n mà g n = e, thì G sẽ chỉ gồm có n phần tử khác nhau: e, g, g 2 , g 3 , , g n – 1 Khi đó G được gọi là nhóm Cyclic hữu hạn cấp n Nếu không tồn tại số tự nhiên n để g n = e, thì G có cấp

Ví dụ: (Z + , +) gồm các số nguyên dương là Cyclic với phần tử sinh g =

1, e = 0 Đó là Nhóm Cyclic vô hạn, vì không tồn tại số tự nhiên n để g n = e,

1.2.5.3 Cấp (Bậc) của một phần tử trong Nhóm Cyclic:

Phần tử  G được gọi là có cấp d, nếu d là số nguyên dương nhỏ nhất

sao cho d = e, trong đó e là phần tử trung lập của G

1.2.5.4 Hàm song tuyến tính:

Cho số nguyên tố p Cho G 1 , G 2 là Nhóm cộng Cyclic (Cyclic additive group) cấp p

Cho G T là Nhóm nhân Cyclic (Cyclic multiplicative group) cấp p

Gọi g là phần tử sinh của G 1 , h là phần tử sinh của G 2

Ánh xạ e: G 1 x G 2 G T được gọi là Song tuyến tính (Bilinear pairing)

nếu thoả mãn các tính chất sau:

- Song tuyến tính: Với 2 phần tử tuỳ ý a, b Z p * , thoả mãn đẳng thức:

e(g a , h b ) = e(g, h) ab = e(h b , g a )

- Tính chất e(g , h ) ≠ 1 G T , 1 G T là phần tử đơn vị trong nhóm G T

1.2.6 Các khái niệm về đường cong Elliptic

1.2.6.1 Đường cong Elliptic

Một đường cong Elliptic E trên trường F (hữu hạn hay vô hạn) được biểu diễn bằng phương trình Weierstrass: y 2 + a 1 x y + a 3 y = x 3 + a 2 x 2 + a 4 x + a 6

trong đó a i F (1)

Đường cong Elliptic E trên trường F được ký hiệu là E(F)

Số các điểm nguyên trên E được ký hiệu là # E(F)

Đối với mỗi trường F khác nhau, phương trình Weierstrass (1) được biến

đổi thành những dạng khác nhau

Trang 22

Ví dụ : Đường cong Elliptic E trên trường R là tập các điểm (x, y) thỏa mãn phương trình : y 2 = x 3 + ax + b, với a, b R (2)

Trong đó 4a 3 + 27b 2 0, điều kiện để có các các nghiệm đơn riêng biệt

Hình 1.1 Ví dụ đường cong Elliptic

1.2.6.2 Phép “cộng” 2 điểm trên đường cong Elliptic

Cách tính cộng 2 điểm P và Q trên đường cong Elliptic E: (Hình 1.2) <1> Vẽ đường thẳng qua P và Q, cắt đuờng cong tại điểm thứ 3 là R’

<2> Vẽ đường thẳng đứng (//Oy) qua R’, cắt đường cong tại điểm R

Do  là vô cùng xa, nên đường thẳng trong <2> sẽ cắt đường cong lại tại

điểm P Như vậy P + ∞ = P Nói cách khác, ∞ là phần tử trung lập

Với P’(x,-y) = P(x,y), ta có P + P’ = ∞

Nói cách khác, mỗi phần tử trên đường cong Elliptic E: có phần tử nghịch đảo

Công thức Đại số cho phép toán cộng 2 điểm, P(x P , y P ) + Q (x Q , y Q ) :

Đường thẳng <1> là y = s -x – y 0 với s =

P Q

P Q

x x

y y

Trang 23

dy s

s y

x s

x

R R

R

Hình 1.3 Cộng hai điểm trùng nhau

1.2.6.3 Phép nhân một điểm với một số nguyên trên đường cong E

Định nghĩa: Phép “nhân” điểm P với số nguyên k là: k * P = P + P + … +

P Một số trường hợp kí hiệu là P k

Hình 1.4 Phép “nhân” một điểm với một số nguyên

Trang 24

1.2.6.4 Đường cong Elliptic trên trường hữu hạn Fq

Trường F, trên đó định nghĩa đường cong Elliptic, có thể hữu hạn hay vô hạn Trong mật mã người ta chỉ xét E trên trường hữu hạn F Có 2 trường hữu hạn

F thường sử dùng: Trường hữu hạn F q với q là số nguyên tố lớn, hoặc q = 2m

(m là số nguyên) Khi đó trên đường cong Elliptic chỉ tồn tại hữu hạn các điểm

thỏa mãn Y 2 = x 3 + ax + b mod p

Số hữu hạn này được gọi là bậc của đường cong Elliptic Tùy thuộc vào F q với mỗi bậc của q, có nhiều đường cong Elliptic Đường cong Elliptic E (trên trường hữu hạn F) với phép “cộng” (định nghĩa trên) tạo thành nhóm Abel:

Dễ dàng kiểm nghiệm được : P + P’ = O

- Tính giao hoán : PQQP, P,QE(F q)

1.2.6.5 Bậc và Điểm cơ sở

- Bậc của điểm PE ( Fq) là số nguyên dương r nhỏ nhất sao cho r * P = ∞

- G E Fq được gọi là Điểm cơ sở nếu bậc của nó là nhỏ nhất [6]

Trang 25

1.3 TỔNG QUAN VỀ THANH TOÁN ĐIỆN TỬ

1.3.1 Khái niệm thanh toán điện tử

Theo nghĩa rộng: Thanh toán điện tử là việc thanh toán tiền thông qua các thông điệp điện tử thay cho việc trao tiền mặt

Theo nghĩa hẹp: Thanh toán điện tử là việc trả tiền và nhận tiền hàng cho các hàng hóa và dịch vụ được mua bán trên Internet

1.3.2 Mô hình thanh toán điện tử

Có 2 mô hình thanh toán được sử dụng trong thanh toán điện tử là:

1.3.2.1 Mô hình trả 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 credential)

1.3.2.2 Mô hình trả trước

Trong mô hình này, khách hàng liên hệ với ngân hàng để 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

1.3.3 Hình thức thanh toán trong thanh toán điện tử

1.3.3.1 Thanh toán ngoại tuyến (Off-line payment)

Phiên giao dịch giữa người sử dụng và nhà cung cấp có thể diễn ra mà không cần đến sự tham gia của ngân hàng

1.3.3.2 Thanh toán trực tuyến (Online payment)

Trong mỗi lần giao dịch, nhà cung cấp sẽ yêu cầu ngân hàng kiểm tra tính hợp lệ của đồng tiền do người dùng chuyển trước khi chấp nhận thanh toán.Vì vậy,

hệ thống thanh toán trực tuyến có khả năng kiểm tra được tính tin cậy của đồng tiền

1.3.4 Các phương tiện thanh toán điện tử

1.3.4.1 Thẻ tín dụng

Để thực hiện giao dịch, người mua hàng chỉ việc cung cấp số hiệu thẻ và thời hạn sử dụng của tấm thẻ, người bán sẽ chuyển các thông tin này đến ngân hàng

Trang 26

1.3.4.3 Tiền điện tử (E-cash/Digital cash)

Tiền điện tử (E-moyney hay còn được gọi là Digital cash) Đây là phương tiện thanh toán được sử dụng trong thương mại điện tử, có các thông tin giống như trên tiền mặt thông thường: nơi phát hành, giá trị và số seri duy nhất

1.3.4.4 Séc điện tử

Bao gồm tất cả các thông tin trên séc giấy truyền thống nhưng có thể chuyển được bằng thư điện tử (E-mail)

1.3.4.5 Thẻ thông minh (Smart card)

Thẻ thông minh là thẻ được gắn một con chip – vi mạch điện tử Vi mạch điện tử này bao gồm một thiết bị ra vào đặc trưng, một bộ vi xử lý, một bộ nhớ Tất

cả những thiết bị này sẽ giúp lưu trữ rất nhiều loại thông tin khác nhau từ số thẻ tín dụng, hồ sơ sức khoẻ cá nhân, bảo hiểm y tế, hồ sơ công tác, bằng lái xe… với dung lượng gấp 100 lần so với dung lượng của các thông tin có thể lưu trữ trên thẻ tín dụng thông thường

1.3.4.6 Ví điện tử (Electronic wallets)

Một ví điện tử được thiết kế cố gắng mô phỏng lại các chức năng của một ví truyền thống Các chức năng quan trọng nhất của ví điện tử là:

+ Chứng minh tính xác thực của khách hàng thông qua việc sử dụng các chứng nhận số hoá hoặc bằng các phương pháp mã hoá thông tin khác

+ Lưu trữ và chuyển giá trị: Đảm bảo an toàn cho quá trình thanh toán giữa người bán và người mua trong các giao dịch thương mại điện tử

Trang 27

+ Định danh hay ID số hoá: Các mã bảo mật trên máy chủ, được biết đến như là các ID số hoá, được cung cấp bởi một số cơ quan chứng nhận thẩm quyền, là nơi cấp phép và bảo dưỡng các bản ghi diễn biến trên các ID số hoá này [2], [5], [10],[13]

1.3.5 Giao thức SET bảo mật trong thanh toán điện tử

1.3.5.1 Giao thức SET bảo mật trong thanh toán điện tử

Giao thức SET được thiết kế nguyên thuỷ bởi Visa và MasterCard vào năm

1997 và được phát triển lên từ đó Giao thức SET đáp ứng được 4 yêu cầu về bảo mật trong TMĐT giống như SSL: sự xác thực, mã hoá, tính chân thực, và không thoái thác

SET có liên quan đến SSL do nó cũng sử dụng khoá công cộng và khoá riêng với khoá riêng được giữ bởi một cơ quan chứng nhận thẩm quyền Không giống như SSL, SET đặt các khoá riêng trong tay cả người mua và người bán trong một giao dịch Điều đó có nghĩa là một người sử dụng thông thường cần các khoá riêng của họ và cần phải đăng ký các khoá này giống như các máy chủ phải làm

SET có các thực thể chính như sau:

o Chủ thẻ(CardHolder)

o Các điểm chấp nhận thẻ (Merchant)

o Tổ chức phát hành thẻ (Issuer)

o Tổ chức chấp nhận thẻ (Acquirer)

o Cổng thanh toán (Payment Gateway)

o Cơ quan cấp phép, chứng thực giao dịch (Certificate Authority)

1.3.5.2 Hoạt động của giao thức SET

Cả khách hàng và nhà cung cấp trước tiên phải đăng ký với cơ quan chứng thực (CA), sau đó họ có thể thực hiện được các giao dịch mua hay bán hàng hoá Sau khi đăng ký thành công với CA, khách hàng và nhà cung cấp có thể thực hiện được giao dịch Quá trình thực hiện giao dịch trải qua 9 bước:

Bước 1: Khách hàng truy nhập vào Website lựa chọn hàng hoá cần mua

Trang 28

Bước 8: Đại lý bán hàng lưu lại các thông tin giao dịch ngân hàng

Bước 9: Tổ chức phát hành in hoá đơn và gửi lại khách hàng [9]

1.3.6 Tiền điện tử

1.3.6.1 Giới thiệu về tiền điện tử

- Tiền điện tử (E-money, E-currency, Internet money, Digital money, Digital cash) có thể hiểu 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)

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 đó

1.3.6.2 Cấu trúc tiền điện tử

1/ Số sêri của đồng tiền: Mỗi đồng tiền điện tử có một số sêri duy nhất, số

sêri của 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

2/ Giá trị của đồng tiền: Mỗi đồng tiền điện tử có giá trị tương đương với

một lượng tiền thật nào đó, trong tiền điện tử, giá trị này có thể là một con số bất kỳ (11000VNĐ, 19000VNĐ,…)

Trang 29

3/ 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 quả của hệ thống, các hệ thống thường ghi thời hạn của đồng tiền Đồng tiền điện tử sau khi phát hành, phải gửi lại ngân hàng trước thời điểm hết hạn

4/ Các thông tin khác: Đây là 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 gian lận, 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 khoá bí mật Người 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 khoá công khai của ngân hàng

1.3.6.3 Phân loại tiền điện tử

Tiền điện tử có hai loại: ẩn danh và định danh

1/ Tiền ẩn danh: Tiền ẩn danh không tiết lộ thông tin định danh của người

sử dụng, hệ thống này dựa vào lược đồ chữ ký mù để ẩn danh người 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 hoặc chuyển cho người khác mà không để lại dấu vết

2/ Tiền định danh: Tiền điện tử ẩn 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

1.3.6.4 Tính chất của tiền điện tử

Điểm khác biệt lớn nhất giữa tiền điện tử và tiền mặt thông thường đó là: tiền điện tử chỉ đơn giản là một dãy các con số được biểu diễn theo một định dạng nào

đó mà máy tính có thể hiểu được và được trao đổi thông qua mạng máy tính Chính

vì chỉ là một dãy con số nên đồng tiền số rất dễ dàng bị sao chép, điều này dẫn đến hai tình huống: thứ nhất, đồng tiền số có thể được làm giả (bằng cách sinh ra dãy các con số theo đúng định dạng của đồng tiền đã được ngân hàng phát hành) Thứ hai, đồng tiền có thể bị sao chép để sử dụng nhiều lần (double-spending)

Trang 30

- 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

3/ Tính riêng tư (privacy): Đồng 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

4/ Tính độc lập (portability): 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

5/ Tính chuyển nhượng (transferrability): 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

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 [2], [5], [10],[13]

1.3.6.5 Các giao thức với tiền điện tử

- Giao thức 1: Các giao thức thanh toán cùng ngân hàng

Giả sử Alice và Bob cùng sử dụng dịch vụ của một ngân hàng Alice muốn mua hàng (ví dụ một quyển sách Q giá 100 VNĐ ) từ Bob Giao thức gồm ba giai đoạn sau:

Trang 31

Hình 1.5 Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng

1/ Rút tiền (Withdrawal)

- Alice tạo tiền điện tử C gồm số sêri và giá trị của C (Vídụ 100VNĐ)

- Alice yêu cầu ngân hàng ký “mù” lên C

- Giao thức ký thành công thì ngân hàng sẽ trừ 100VNĐ trong tài khoản của Alice và chuyển lại cho Alice đồng tiền đã được ký mù

2/ Thanh toán (Spending)

- Alice chuyển đồng tiền C đã có chữ ký của ngân hàng cho Bob và yêu cầu quyển sách Q

- Bob kiểm tra chữ ký trên C (dùng khoá công khai của ngân hàng) Nếu chữ Ký không hợp lệ thì Bob kết thúcgiao thức

3/ Gửi tiền (Deposit)

- Bob lấy đồng tiền C từ Alice và gửi cho ngân hàng

- Ngân hàng xác thực chữ ký trên đồng tiền C

Nếu chữ ký hợp lệ, ngân hàng kiểm tra C đã được tiêu trước đó chưa

Nếu C chưa được tiêu, ngân hàng cộng thêm vào tài khoản cho Bob với số tiền tương ứng là 100VNĐ

Nếu việc gửi tiền thành công, Bob sẽ gửi quyển sách Q cho Alice

Nhận xét:

Bob biết được C từ tài khoản nào và đồng tiền này do ngân hàng nào phát hành Khi Bob gửi C vào tài khoản của mình, ngân hàng cũng khó biết đồng tiền

Trang 32

đó nhận được từ Alice vì nó đã được ký “mù” Như vậy, tiền điện tử C không lưu lại dấu vết của những ai đã “tiêu” nó

- Giao thức 2: Các giao thức thanh toán trong liên ngân hàng

Trường hợp liên ngân hàng (các bên tham gia giao dịch sử dụng dịch vụ ở các ngân hàng khác nhau), người ta sử dụng chữ ký “mù nhóm” cho đồng tiền chung của liên ngân hàng

Hình 1.6 Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng

Thiết lập (Setup): Các ngân hàng trong một nhóm, trưởng nhóm là ngân

hàng trung tâm Nếu có ngân hàng muốn gia nhập nhóm thì chỉ cần thực hiện giao thức join với trưởng nhóm

1- Rút tiền (Withdrawal)

- Đầu tiên Alice tạo đồng tiền điện tử T với số seri và mệnh giá

- Alice yêu cầu ngân hàng A ký “mù nhóm” vào T

- Ngân hàng A ký mù nhóm vào T và rút số tiền tương ứng từ tài khoản của Alice

Bây giờ Alice sở hữu đồng tiền T có giá trị trong cả nhóm ngân hàng

2- Thanh toán (Spending)

- Alice đưa cho Bob tiền T đã có chữ ký “nhóm” của liên ngân hàng

- Bob dùng khoá công khai của nhóm kiểm tra và xác thực chữ ký “nhóm” của liên ngân hàng trên T

3- Gửi tiền (Deposit)

Nếu các bước trên được hoàn thành, Bob gửi tiền T cho ngân hàng B Ngân

Trang 33

hàng B nhận vì T là đồng tiền “chung” trong liên ngân hàng

- Ngân hàng B tiến hành xác thực chữ ký trên T Chú ý rằng, B không cần biết A là ai khi thực hiện việc này, mà chỉ cần sử dụng khoá công khai của nhóm

- Ngân hàng B kiểm tra T đã được tiêu chưa qua danh sách các đồng tiền

đã tiêu ở ngân hàng, để tránh tiêu tiền T hai lần

- Nếu kiểm tra hoàn tất, ngân hàng B nạp thêm vào tài khoản của Bob số

tiền T

- Bob gửi hàng cho Alice [10],[13]

1.3.6.6 Một số vấn đề đối với tiền điện tử

Các vấn đề lớn hiện nay đặt ra với tiền điện tử bao gồm:

1/ Vấn đề ẩn danh người dùng: Tính ẩn danh là yêu cầu đối với đồng tiền

nói chung và tiền điện tử nói riêng Hệ thống tiền điện tử ẩn danh tin cậy sẽ ngăn ngừa bên thứ ba (ngân hàng, nhà cung cấp) biết được thông tin định danh của người tham gia hệ thống Để đảm bảo yêu cầu này, ngân hàng dùng chữ ký mù ký lên đồng tiền Chữ ký mù đảm bảo ngân hàng không thể có được mối liên hệ nào giữa đồng tiền điện tử và chủ sở hữu của nó

2/ Vấn đề giả mạo và tiêu một đồng tiền nhiều lần: Tiền điện tử chỉ đơn

giản là một dãy các con số được biểu diễn theo một định dạng nào đó và được trao đổi thông qua mạng máy tính Chính vì chỉ là một dãy các con số nên nó rất dễ bị sao chép Điều này dẫn đến hai tình huống:

- Thứ nhất, đồng tiền có thể bị làm giả (bằng cách sinh ra dãy các con số theo đúng định dạng của đồng tiền thật)

- Thứ hai, đồng tiền có thể bị sao chép để sử dụng nhiều lần spending) [10],[13]

(double-1.3.7 Một số lược đồ trong Hệ thống tiền điện tử

1.3.7.1 Lược đồ CHAUM-FIAT-NAOR

Lược đồ Chaum-Fiat-Naor là lược đồ ẩn danh đơn giản, áp dụng cho hệ thống tiền điện tử có tính ẩn danh Lược đồ áp dụng kỹ thuật chữ ký mù RSA và giao thức cắt và chọn (Cut and choose) để ngăn ngừa người tạo tiền có hành vi gian

Trang 34

lận Để ngăn ngừa vấn đề “ tiêu xài hai lần”, lược đồ này dùng giao thức “hỏi-đáp”

để lấy một phần thông tin định danh gắn lên đồng tiền và như vậy nếu đồng tiền được “tiêu xài hai lần” thì thông tin trên cả hai trường hợp được kết hợp để truy vết tìm ra kẻ gian lận Ngân hàng công khai khóa mật mã RSA là (b, n) và chọn tham số

k Ngân hàng cũng công khai 2 hàm f và g (hàm không va chạm) Mỗi người sử dụng có số tài khoản u và ngân hàng sẽ giữ số đếm v liên quan đến số tài khoản này ( đếm số đơn vị Ui được tạo), ngân hàng dựa vào u để xác định ra kẻ gian lận

Trình tự thanh toán trong lược đồ CHAUM-FIAT-NAOR

1) Khách hàng gửi tiền ở dạng “mù” yêu cầu ngân hàng ký

2) Ngân hàng gửi trả tiền đã ký cho khách hàng ( Tiền vẫn còn “mù”)

3) Sau khi xóa “mù” tiền, khách hàng chuyển tiền cho người bán

4) Người bán tiến hành chuyển giao hàng

5) Người bán chuyển tiền đến ngân hàng để kiểm tra tính hợp lệ của tiền

1- Rút tiền

1) Ông A muốn có một đồng tiền điện tử ẩn danh thì cần phải tạo k đơn vị Ui

và chuyển nó đến ngân hàng, một đơn vị Ui được tạo ra từ những dãy số

ngẫu nhiên ai , ci , di , 1 i k , sao cho Ui độc lập và duy nhất Ui =f(xi ,

yi) với 1 i k, x ig a c( , ),i i y ig a X( i OR(u(vi)), )d i

2) Ông A làm mù k đơn vị Ui với những tham số mù ngẫu nhiên r r1, , ,2 r k

và gửi chúng đến ngân hàng Những tham số “mù” đó ngăn ngân hàng kiểm tra tức thì nội dung của những “đồng tiền” Ui

mod

i

i i

( Làm mù theo giao thức RSA: Blind x( )x r* bmodn )

3) Ngân hàng chọn ngẫu nhiên k/2 đơn vị để kiểm tra và yêu cầu ông A cung cấp các tham số ri, ai, ci, di tương ứng với những đơn vị Ui mà ngân hàng đã chọn

4) Ông A cung cấp cho ngân hàng các tham số ri, ai, ci, di theo yêu cầu xóa

Trang 35

5) Dựa vào các tham số do ông A cung cấp, ngân hàng xóa “mù” k/2 đơn vị đã chọn và kiểm tra để đảm bảo rằng ông A không có gian lận Nếu không có lỗi nào xảy ra, ngân hàng ký lên những đơn vị Ui còn lại (những đơn vị mà ngân hàng không xóa “mù”) và gửi cho ông A B a n

j mod (j là ngẫu nhiên ≤ k

và chỉ dùng k/2 phần tử B j)

Sau đó ngân hàng trừ khoản tiền tương ứng vào tài khoản của ông A

6) Ông A xóa “mù” đơn vị đã được ngân hàng ký bằng cách chia B j cho r j Lúc

này ông A có đồng tiền điện tử với giá trị thật sự

T = f(x j , y j ) a mod n

2- Thanh toán

1) Ông A gửi tiền T đến ông B

2) Ông B chọn chuỗi nhị phân ngẫu nhiên z 1 , z 2 , …,z k/2 và gửi nó đến cho ông A

3) Ông A phản hồi lại tùy theo từng trường hợp sau:

+ Nếu z i = 1 thì ông A sẽ gửi đến ông B: a i , c i và y i

+ Nếu z i = 0 thì ông A sẽ gửi đến ông B: xi, a i XOR(u (vi) và d i

4) Ông B kiểm tra T là hợp lệ trước khi chấp nhận thanh toán của ông A

3- Gửi tiền

1) Ông B gửi lịch sử thanh toán đến ngân hàng

2) Ngân hàng kiểm tra chữ ký số của ngân hàng

3) Ngân hàng kiểm tra tiền này thực sự chưa bị tiêu xài trước đó

4) Ngân hàng nhập vào cơ sở dữ liệu những tiền đã tiêu xài, đồng thời lưu giữ chuỗi nhị phân và những phản hồi tương ứng từ ông A (điều này sẽ giúp cho sau này phát hiện được những kẻ tiêu xài hai lần)

5) Ngân hàng cộng khoản tiền tương ứng vào tài khoản của ông B

- Đánh giá

Tại giao thức rút tiền, để ngăn ngừa khả năng gian lân của ông A, lược đồ sử dụng giao thức “Cut and choose” Ông A phải tiết lộ k/2 mẫu thông tin một cách ngẫu nhiên từ k mẫu Như vậy khả năng ông A có thể thực hiện được hành vi gian lận phụ thuộc vào độ lớn của số k

Trang 36

Nếu ông A tiêu đồng tiền T hai lần thì khả năng ngân hàng có thể lấy được

cả hai tham số a ia XOR u i ( (vi) để tính được u Đó là số tài khoản của ông

A tại ngân hàng, chính vì vậy từ u ngân hàng có thể truy ra được ông A là người có

hành vi tiêu một đồng tiền hai lần Vì khả năng để có một cặp bit khác nhau trong 2 chuỗi z1,z2, ,z k/2 và '

2 / ' 2 '

Trong lược đồ CHAUM-FIAT-NAOR, chi phí (thời gian, tính toán, ) phụ

thuộc vào độ lớn của k Tại giao thức rút tiền trong lược đồ, ông A phải gửi k packet

đến ngân hàng, tuy nhiên ngân hàng chỉ phải gửi trở lại một packet Việc tiến hành làm “mù” và xóa “mù” sẽ làm tăng sự tính toán, sự liên lạc

Tại giao thức thanh toán, sau khi ông A gửi tiền đến ông B, ông này gửi

chuỗi nhị phân đến ông A, sau đó ông A phải gửi k/2 phản hồi khác nhau, điều này

sẽ khiến cho việc tăng thời gian và sự tính toán, liên lạc và chi phí lưu trữ

Ngày đăng: 12/05/2016, 10:09

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Phan Đình Diệu (2006), Lý thuyết mật mã và An toàn thông tin, NXB Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: Lý thuyết mật mã và An toàn thông tin
Tác giả: Phan Đình Diệu
Nhà XB: NXB Đại học Quốc gia Hà Nội
Năm: 2006
[2] Nguyễn Đăng Hậu (2004), Kiến thức thương mại điện tử, Viện Đào tạo công nghệ và Quản lý Quốc tế Sách, tạp chí
Tiêu đề: Kiến thức thương mại điện tử
Tác giả: Nguyễn Đăng Hậu
Năm: 2004
[3] Trịnh Nhật Tiến, ThS Trương Thị Thu Hiền (2005), Chữ ký mù bội trên đường cong elliptic và ứng dụng, Trường Đại học công nghệ– ĐHQGHN Sách, tạp chí
Tiêu đề: Chữ ký mù bội trên đường cong elliptic và ứng dụng
Tác giả: Trịnh Nhật Tiến, ThS Trương Thị Thu Hiền
Năm: 2005
[4] Trịnh Nhật Tiến, Trương Thị Thu Hiền, Nguyễn Đình Nam (2005), “Một số kỹ thuật bỏ phiếu từ xa”, Kỷ yếu HT QG về CNTT tại Thái nguyên 8 / 2003, NXB Khoa học kỹ thuật, Trang 419 - 423 Sách, tạp chí
Tiêu đề: “Một số kỹ thuật bỏ phiếu từ xa”, Kỷ yếu HT QG về CNTT tại Thái nguyên 8 / 2003
Tác giả: Trịnh Nhật Tiến, Trương Thị Thu Hiền, Nguyễn Đình Nam
Nhà XB: NXB Khoa học kỹ thuật
Năm: 2005
[5] Trịnh Nhật Tiến, Đinh Vinh Quang (2006), Giải pháp và công nghệ sử dụng tiền điện tử , Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: Giải pháp và công nghệ sử dụng tiền điện tử
Tác giả: Trịnh Nhật Tiến, Đinh Vinh Quang
Năm: 2006
[6] Trịnh Nhật Tiến (2008), Giáo trình An toàn Dữ liệu, Hà Nội Sách, tạp chí
Tiêu đề: Giáo trình An toàn Dữ liệu
Tác giả: Trịnh Nhật Tiến
Năm: 2008
[7] Trịnh Nhật Tiến (2005) “Chữ ký mù, Chữ ký nhóm, Chữ ký mù nhóm” và ứng dụng, Báo cáo tại Hội nghị FAIR tại TP Hồ Chí Minh.Tiếng Anh Sách, tạp chí
Tiêu đề: “Chữ ký mù, Chữ ký nhóm, Chữ ký mù nhóm” và ứng dụng
[9] B.Schneier (1996), “Applied Cryptography” 2 nd edition, John wiley&amp;sons Sách, tạp chí
Tiêu đề: Applied Cryptography” 2 nd edition
Tác giả: B.Schneier
Năm: 1996
[10] D. O’Mahony, M.Peirce, H.Tewari (2001), “Electronic payment systems”, Artech House Sách, tạp chí
Tiêu đề: “Electronic payment systems”
Tác giả: D. O’Mahony, M.Peirce, H.Tewari
Năm: 2001
[11] David Chaum, van Heijst, Eugene and Pfitzmann, Birgit (1992), “Cryptographically strong undeniable signatures, unconditionally secure for the signer” (extended abstract), In CRYPTO 91 Sách, tạp chí
Tiêu đề: “Cryptographically strong undeniable signatures, unconditionally secure for the signer” (extended abstract)
Tác giả: David Chaum, van Heijst, Eugene and Pfitzmann, Birgit
Năm: 1992
[12] David Chaum (1983), Blind signatures for untraceable payments. New York. Plenum Press. In R.L. Rivest, A. Sherman, and D.Chaum, proc. 82 , pages 199 –203 Sách, tạp chí
Tiêu đề: Blind signatures for untraceable payments
Tác giả: David Chaum
Năm: 1983
[13] H.M. Deitel, P.J. Deitel, T.R. Nieto (2001), “E-Busines &amp; E-Commerce” How to Progarm, Prentice Hall, New Jersey Sách, tạp chí
Tiêu đề: “E-Busines & E-Commerce”
Tác giả: H.M. Deitel, P.J. Deitel, T.R. Nieto
Năm: 2001
[14] Using Elliptic Curve Cryptography (ECC) for Enhanced Embedded Security (Embedded Market Forecasters American Technology International, Inc.November 2004).Internet Sách, tạp chí
Tiêu đề: Using Elliptic Curve Cryptography (ECC) for Enhanced Embedded Security
[8] A.Lysyanskaya and Z. Ramzan (1998), Group Blind Digital Signatures: A scalable solution to electronic Cash Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.1   Ví dụ  đường cong Elliptic - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 1.1 Ví dụ đường cong Elliptic (Trang 22)
Hình 1.3 Cộng hai điểm trùng nhau - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 1.3 Cộng hai điểm trùng nhau (Trang 23)
Hình 1.4 Phép “nhân”  một điểm  với một số nguyên. - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 1.4 Phép “nhân” một điểm với một số nguyên (Trang 23)
Hình 1.5  Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 1.5 Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng (Trang 31)
Hình 1.6  Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 1.6 Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng (Trang 32)
Hình 2.1 Quá trình tạo chữ ký - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 2.1 Quá trình tạo chữ ký (Trang 41)
Hình 2.3 Lưu đồ thuật toán chữ ký mù RSA - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 2.3 Lưu đồ thuật toán chữ ký mù RSA (Trang 46)
Hình 3.1 Mô hình thuật toán chữ ký mù RSA - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.1 Mô hình thuật toán chữ ký mù RSA (Trang 61)
Hình 3.2 Giao diện Demo chương trình chữ ký mù - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.2 Giao diện Demo chương trình chữ ký mù (Trang 65)
Hình 3.3 Làm mù thông điệp - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.3 Làm mù thông điệp (Trang 66)
Hình 3.4  Ký mù thông điệp - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.4 Ký mù thông điệp (Trang 67)
Hình 3.5 Khử mù thông điệp - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.5 Khử mù thông điệp (Trang 68)
Hình 3.6  Xác thực/ Giải mã thông điệp - Nghiên cứu một số chữ ký đặc biệt và ứng dụng
Hình 3.6 Xác thực/ Giải mã thông điệp (Trang 69)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w