1. Trang chủ
  2. » Tất cả

Chữ ký mù và ứng dụng trong thương mại điện tử

42 0 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

Tiêu đề Chữ ký mù và ứng dụng trong thương mại điện tử
Người hướng dẫn Phan Tấn Toàn
Trường học Học viện Kỹ thuật Mật mã
Chuyên ngành An Toàn Thương Mại Điện Tử
Thể loại Luận văn
Định dạng
Số trang 42
Dung lượng 336,13 KB

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

Nội dung

HỌC VIỆN KỸ THUẬT MẬT MÃ CHỮ KÝ MÙ VÀ ỨNG DỤNG TRONG THƯƠNG MẠI ĐIỆN TỬ Môn An Toàn Thương Mại Điện Tử Giáo viên hướng dẫn Phan Tấn Toàn 3 Mục Lục DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT 3 MỞ ĐẦU 4 Chương[.]

Trang 1

HỌC VIỆN KỸ THUẬT MẬT MÃ

CHỮ KÝ MÙ VÀ ỨNG DỤNG TRONG

THƯƠNG MẠI ĐIỆN TỬ

Môn: An Toàn Thương Mại Điện Tử

Giáo viên hướng dẫn:

Phan Tấn Toàn

Trang 2

Mục Lục

DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT 3

MỞ ĐẦU 4

Chương - 1 CHỮ KÝ SỐ, CHỮ KÝ MÙ SỐ 5

1.1 Chữ ký số 6

1.2 Sơ đồ chữ ký số RSA (Đề xuất năm 1978) 17

1.3 Chữ ký mù 19

1.4 Kết luận chương 25

Chương - 2 TỔNG QUAN VỀ TIỀN ĐIỆN TỬ 26

2.1 Tiền Điện Tử 26

2.1 Một Số Bài Toán An Toàn Thông Tin Trong Giai Đoạn Rút Tiền Điện Tử 32

2.2 Phương Pháp Giải Quyết 32

Chương 3 - THỬ NGHIỆM CHƯƠNG TRÌNH CHỮ KÝ MÙ 34

3.1 Bài toán lập trình 34

3.2 Cấu hình hệ thống 35

3.3 Các thành phần của chương trình 35

KẾT LUẬN 36

TÀI LIỆU THAM KHẢO 37

Trang 3

DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT

CNTT-TT Công nghệ thông tin và truyền thông

MD5 Message Digest algorithm 5 - giải thuật của hàm băm

PKI Public Key Infrastructure – Cơ sở hạ tầng khóa công khai

RSA Rivest, Shamir and Adleman - Giải thuật mã hóa công khai

Server Máy chủ, cung cấp các dịch vụ, ứng dụng

SHA Secure Hash Algorithm – Giải thuật băm an toàn

Website Một loại siêu văn bản (tập tin dạng HTML hoặc XHTML) trình

bày thông tin trên mạng Internet, tại một địa chỉ nhất định

Trang 4

MỞ ĐẦU

Ngày nay với sự phát triển mạnh mẽ của Công nghệ thông tin và Truyềnthông, Internet đã thâm nhập vào tất cả mọi lĩnh vực hoạt động của con người.Trong thực tế các hacker, các dạng virus luôn tấn công và là mối đe dọa của cácnguồn tài nguyên thông tin Như vậy những vấn đề đảm bảo an toàn thông tin trongcác hệ thống máy tính là rất quan trọng

Mật mã học [1] là một trong kỹ thuật bảo mật thông tin và đảm bảo an toànthông tin trong truyền thông Nó không chỉ dừng lại trong lĩnh vực bảo mật thôngtin mà còn phục vụ nhu cầu xác thực thông tin trên mạng Một trong những giảipháp được đưa ra đó là “Chữ ký điện tử”, chữ ký số và đang được sử dụng để đảmbảo an toàn cho các giao dịch trên mạng như: Thương mại điện tử, Chính phủ điện

tử, Hành chính công điện tử, bỏ phiếu điện tử…

Trang 5

Chương - 1 CHỮ KÝ SỐ, CHỮ KÝ MÙ SỐ Đặt vấn đề:

An toàn thông tin nghĩa là thông tin được bảo vệ từ các hệ thống và dịch vụhoạt động trên môi trường mạng có khả năng chống lại những can thiệp bất hợppháp hay những tai họa không mong đợi; các thay đổi tác động đến độ an toàn của

hệ thống là nhỏ nhất Hệ thống không an toàn là hệ thống tồn tại những điểm như:thông tin bị rò rỉ ra ngoài - dữ liệu trong hệ thống bị người không được quyền truynhập và lấy sử dụng, các thông tin trong hệ thống bị thay thế hoặc sửa đổi làm sailệch một phần hoặc hoàn toàn nội dung…

Giá trị thực sự của thông tin chỉ đạt được khi thông tin được cung cấp chínhxác, kịp thời, đầy đủ, do đó hệ thống phải hoạt động chuẩn xác thì mới có thể đưa ranhững thông tin có giá trị cao Mục tiêu của an toàn bảo mật trong công nghệ thôngtin là đưa ra một số tiêu chuẩn an toàn và áp dụng các tiêu chuẩn an toàn này vàochỗ thích hợp để giảm bớt và loại trừ những nguy hiểm có thể xảy ra [1],[3]

Ngày nay, với sự phát triển rất nhanh của khoa học công nghệ, các biện pháptấn công của các tin tặc ngày càng tinh xảo hơn, độ an toàn của thông tin có thể bị

đe dọa từ nhiều nơi, nhiều cách khác nhau, do đó chúng ta cần phải đưa ra các chínhsách đề phòng thích hợp

Các yêu cầu cần thiết của việc bảo vệ thông tin và tài nguyên:

- Đảm bảo tính bí mật (Security) thông tin không bị lộ đối với người không

được phép

- Đảm bảo tính tin cậy (Confidentiality): Thông tin và tài nguyên mà người

nhận xác nhận chỉ có duy nhất của người gửi nó

- Đảm bảo tính toàn vẹn (Integrity): Thông tin và tài nguyên không thể bị sửa đổi, thay thế bởi những người không có quyền hạn

- Đảm bảo tính sẵn sàng (Availability): Thông tin và tài nguyên luôn sẵn sàng

để đáp ứng sử dụng cho người có quyền hạn

Trang 6

- Đảm bảo tính không thể chối bỏ (Non-Repudiation): Thông tin và tài nguyênđược xác nhận về mặt pháp luật của người cung cấp

1.1 Chữ ký số

1.1.1 Một số khái niệm trong số học

1.1.1.1 Số nguyên tố và số nguyên tố cùng nhau.

* Khái niệm

Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có hai ước số là 1 và chính nó

Tức là số nguyên p>1 là số nguyên tố nếu p có các ước là ± 1 và ± p [2]

* Ví dụ:

Các số 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37 là số nguyên tố.

Số 2 là số nguyên tố chẵn duy nhất.

Số nguyên tố có vai trò và ý nghĩa to lớn trong số học và lý thuyết mật mã Bài

toán kiểm tra tính nguyên tố của một số nguyên dương n và phân tích một số n ra

thừa số nguyên tố là các bài toán rất được quan tâm

Nếu Ước số chung lớn nhất của a

1 , a2 , , a n , ký hiệu gcd( a1 , a2 , , a n ) = 1, thì

các số

a1 , a2 , ,

a n

gọi là nguyên tố cùng nhau.

Ví dụ: Hai số 8 và 13 là nguyên tố cùng nhau, vì gcd(8, 13) = 1.

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

* Khái niệm: Cho a  Z n , nếu tồn tại b  Z n sao cho ab  1 (mod n), ta nói b

là phần tử nghịch đảo của a trong Z và ký hiệu a 1 .

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

Một phần tử có phần tử nghịch đảo gọi là khả nghịch

Trang 7

- Nhóm là một bộ (G, *) trong đó:

Trang 8

+ * là phép toán hai ngôi+ G  Ø, trên G thỏa mãn các tính chất

(x*y)*z = x*(y*z) với mọi x, y, z  G

Có phần tử trung lập e  G: x*e = e*x = x

Có phần tử nghịch đảo x’ G: x*x‟ = x‟*x = e với mọi x  G

- Cấp của nhóm, ký hiệu |G| là số phần tử của nhóm (có thể G có vô hạn các

phần tử, cấp của G là vô cùng)

* Định lí cơ bản của số học: Mọi số nguyên n > 1 đều có thể được phân tích

một cách duy nhất dưới dạng các lũy thừa của các số nguyên tố khác nhau

n = pi

 p 1 p 2 p k ,   0

i i1

1 2 k i

Trong đó p i (i=1, 2, , k) là các số nguyên tố, từng đôi một khác nhau.

Ví dụ: n= 2, n= 3, n= 4= 2.2, n= 5, n= 6= 2.3

* Hệ quả:

Nếu a là một số nguyên tố và a là ước số của b* c, ký hiệu a|(b*c) thì

ít nhất một trong 2 số b, c phải chia hết cho a.

+ Ước chung lớn nhất của 2 số tự nhiên a và b được kí hiệu là gcd(a,b) c là

ước chung lớn nhất của a và b, ký hiệu c= gcd(a,b) nếu:

+ c là ước số của a và b

+ Bất kì một ước số chung nào của a và b đều nhỏ hơn hoặc bằng c

Tất cả các số nguyên khác 0 đều là ước của số 0.

Suy ra: gcd(a,0) = a.

* Một số định lý về số nguyên tố (đã được chứng minh)

- Định lý Mersenne:

Trang 9

- Định lý Trung Quốc về số dư: [16]

Cho tập số nguyên tố cùng nhau từng đôi một m 1 , m 2 ,…m k Với mỗi bộ số

nguyên bất kỳ a 1 , a 2 ,…a k , hệ phương trình dạng:

x ≡ a i (mod m i ), (i =1, 2, …, k), luôn có nghiệm duy nhất theo modulo m,

Định lý số dư Trung Quốc cho phép tính đồng dư theo modulo của một số

lớn (tích của nhiều số nguyên tố cùng nhau), thông qua tính toán đồng dư theo

Vì các số 3, 5, 7 nguyên tố cùng nhau, nên theo định lý Trung Quốc về số dư,

hệ có nghiệm duy nhất theo modulo M = 3.5.7 = 105,

Để tìm x mod m ta tính:

Trang 10

M 1 = M/3 = 35 → y 1 = 35 -1 mod 3 = 2

Trang 11

3

M = M/5 = 21 → y = 21 -1 mod 5= 1

M = M/7 = 15 → y = 15 -1 mod 7 = 1

x = 2.35.2 + 3.21.1 + 5.15.1 (mod m) = 278 (mod 105)=68 (mod 105)

Như vậy x có dạng x= 68 + k.105 (k là số nguyên hoặc số nguyên thích hợp

nếu tìm nghiệm tự nhiên)

Tập các số nguyên không âm nhỏ hơn 7 là Z 7 = {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à Z 7 * = {1, 2, 3, 4, 5, 6}.

Khi đó |Z| = (p) = p - 1 = 7 - 1 = 6

+ Định lý về hàm Euler: Nếu n là tích của hai số nguyên tố p, q thì

(n) = (p) (q) = (p-1).(q-1) 1.1.1.3 Quan hệ Đồng dư

* Khái niệm

Cho hai 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).

* Ví dụ:

17  5 (mod 3) vì chia 17 và 5 cho 3, được cùng số dư là 2.

* Tính chất của quan hệ đồng dư

Trang 12

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

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)

1.1.1.4 Tập thặng dư thu gọn theo modulo

* Khái niệm

Kí hiệu Z n = {0, 1, 2, , n-1} là tập các số nguyên không âm < n.

Z n và phép cộng (+) lập thành nhóm Cyclic có phần tử sinh là 1, phần tử trung lập e = 0, (Z n , +) gọi là nhóm cộng, đó là nhóm hữu hạn có cấp n.

Với phép (+) là phép cộng thông thường của các số nguyên

Kí hiệu Z

* = {x  Z

n

, x là nguyên tố cùng nhau với n} Tức là x phải  0.

* được gọi là Tập thặng dư thu gọn theo mod n, có số phần tử là (n).

* với phép nhân mod n lập thành một nhóm (nhóm nhân), phần tử trung lập e = 1.

Tổng quát (Z * , phép nhân mod n) không phải là nhóm Cyclic.

Nhóm nhân Z * là Cyclic chỉ khi n có dạng: 2 , 4, p k hay 2p k với p là nguyên tố lẻ

* Ví dụ: Cho n = 21, Z* = {1, 2, 4, 5, 8, 10, 11, 13, 16, 17, 19, 20}.

Z

Z

Trang 13

1.1.1.6 Độ phức tạp của thuật toán

* Bài toán được diễn đạt bằng hai phần:

Đầu vào: Các dữ liệu vào của bài toán

Đầu ra: Các dữ liệu ra của bài toán (kết quả)

* 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:

- 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 đầu vào ta nhậnđược kết quả đầu ra của bài 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

* Khái niệm: Độ phức tạp của thuật toán

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 một quá trình tính toán Với thuật toán tựa Algol: Chi phí thời gian là số cácphé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à thuật toán, e là dữ liệu vào của bài toán đã được

mã hóa 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à I A (e) là giá bộ nhớ.

1.1.2 Khái niệm chữ ký số:

Để chứng thực nguồn gốc hay hiệu lực của một tài liệu văn bản (ví dụ như:Quyết định, công văn, ), người ta dùng chữ ký “bằng tay” vào phía dưới của mỗitài liệu Như vậy người ký phải trực tiếp “ký bằng tay” vào tài liệu

Với các tài liệu được số hóa, người ta cũng có nhu cầu chứng thực nguồn gốchay hiệu lực của các tài liệu này Rõ ràng không thể “ký bằng tay” vào tài liệu, vì

Trang 14

chúng không được in ấn trên giấy Tài liệu “số” (hay tài liệu “điện tử”) là một xâu

các bít (0 hay 1), xâu bít có thể rất dài (nếu in trên giấy có thể hàng nghìn trang).

“Chữ ký” để chứng thực một xâu bít tài liệu cũng không thể là một xâu bít nhỏ đặtphía dưới xâu bít tài liệu Một “chữ ký” như vậy chắc chắn sẽ bị kẻ gian sao chép đểđặt dưới một tài liệu khác bất hợp pháp

Các nhà khoa học đã phát minh ra “chữ ký số” để chứng thực một “tài liệu số”vào những năm 80 của thế kỷ 20 Đó chính là “bản mã” của xâu bít tài liệu

Người ta tạo ra “chữ ký số” (chữ ký điện tử) trên “tài liệu số” giống như tạo ra

“bản mã” của tài liệu với “khóa lập mã”

Như vậy “ký số” trên “tài liệu số” là “ký” trên từng bít tài liệu Kẻ gian khóthể giả mạo “chữ ký số” nếu nó không biết “khóa lập mã”

Để kiểm tra một “chữ ký số” thuộc về một “tài liệu số”, người ta giải mã “chữ

ký số” bằng “khóa giải mã” và so sánh với tài liệu gốc

Ngoài ý nghĩa để chứng thực nguồn gốc hay hiệu lực của các tài liệu số hóa.Mặt mạnh của “chữ ký số” hơn “chữ ký tay” là ở chỗ người ta có thể “ký” vào tàiliệu từ xa trên mạng công khai Hơn thế nữa, có thể “ký” bằng các thiết bị cầm tay(ví dụ điện thoại di động) tại khắp mọi nơi (Ubiquitous) và di động (Mobile), miễn

là kết nối được vào mạng

“Ký số” thực hiện trên từng bít tài liệu, nên độ dài của “chữ ký số ” ít nhấtcũng bằng độ dài tài liệu Do đó thay vì ký trên tài liệu dài, người ta thường dùng

“hàm băm” để tạo “đại diện” cho tài liệu, sau đó mới “Ký số” lên “đại diện” này

Chúng ta có thể hiểu nôm na về chữ ký số như sau: là những thông tin đi kèmvới dữ liệu nhằm xác định chủ của người gửi nó

Chữ ký số bao gồm 3 thành phần:

Thuật toán tạo ra khóa, hàm tạo chữ ký và hàm kiểm tra chữ ký

Hàm tạo ra chữ ký là hàm tính toán chữ ký trên cơ sở khóa mật và dữ liệu cần ký

Trang 15

Hàm kiểm tra chữ ký là hàm kiểm tra xem chữ ký đã cho có đúng với khóacông cộng không Khóa này mọi người có quyền truy cập cho nên mọi người đều cóthể kiểm tra được chữ ký.

Sơ đồ chữ ký số bao gồm các thành phần sau:

Sơ đồ chữ ký là bộ năm (P, A, K, S, V), trong đó:

P là tập hữu hạn các văn bản có thể

A là tập hữu hạn các chữ ký có thể

K là tập hữu hạn các khóa có thể

S là tập các thuật toán ký

V là tập các thuật toán kiểm thử

Với mỗi khóa k  K, có thuật toán ký Sig k  S, Sig k : P  A, có thuật toán kiểm tra chữ ký Ver k  V, Ver k : P x A  {đúng, sai}, thỏa mãn điều kiện sau với mọi x  P, y  A:

Đúng, nếu y = Sig k (x) Ver k (x, y) = Sai, nếu y  Sig k (x)

Người ta thường dùng hệ mã hóa khóa công khai để lập “Sơ đồ chữ ký số” Ởđây khóa bí mật a dùng làm khóa “ký”, khóa công khai b dùng làm khóa kiểm tra

“chữ ký”

Ngược lại với việc mã hóa, dùng khóa công khai b để lập mã, dùng khóa bí mật a để giải mã Do “ký” cần giữ bí mật nên phải dùng khóa bí mật a để “ký”, còn

“chữ ký” là công khai cho mọi người biết, nên dùng khóa công khai b để kiểm tra.

1.1.3 Phân loại chữ ký theo đặc trưng kiểm tra chữ ký

* Chữ ký khôi phục thông điệp:

Là loại chữ ký, trong đó người gửi chỉ cần gửi “chữ ký”, người nhận có thểkhôi phục lại được thông điệp, đã được “ký” bởi “chữ ký” này

Trang 16

Ví dụ: Chữ ký RSA là chữ ký khôi phục thông điệp.

* Chữ ký đi kèm thông điệp:

Là loại chữ ký, trong đó người gửi không chỉ cần gửi “chữ ký” mà phải gửikèm cả thông điệp đã được “ký” bởi “chữ ký” này Ngược lại, người nhận sẽ không

có được thông điệp gốc

Ví dụ: Chữ ký Elgamal là chữ ký đi kèm thông điệp

1.1.4 Phân loại chữ ký theo mức an toàn

1/ Chữ ký “không thể phủ nhận”:

Nhằm tránh việc nhân bản chữ ký để sử dụng nhiều lần, tốt nhất là người gửitham gia trực tiếp vào việc kiểm thử chữ ký Điều đó được thực hiện bằng một giaothức kiểm thử, dưới dạng một giao thức mời hỏi và trả lời

Ví dụ: Chữ ký không phủ định (Chaum- van Antverpen)

2/ Chữ ký “một lần”:

Để bảo đảm an toàn, “khóa ký” chỉ dùng 1 lần (one-time) trên 1 tài liệu

Ví dụ: Chữ ký một lần Lamport Chữ ký Fail - Stop (Van Heyst & Pedersen)

1.1.5 Phân loại chữ ký theo ứng dụng đặc trưng

Chữ ký “mù” (Blind Signature)

Chữ ký “nhóm” (Group Signature)

Chữ ký “bội” (Multy Signature)

Chữ ký “mù nhóm” (Blind Group Signature)

Chữ ký “mù bội” (Blind Multy Signature)

1.1.6 Thuộc tính của chữ ký số.

- Chữ ký phải có độ tin cậy (xác thực)

Trang 17

- Chữ ký không thể giả mạo: Chữ ký chứng minh chỉ có người ký đã ký vào

tài liệu một cách chủ định mà không phải ai khác

- Chữ ký không thể được dùng lại: Chữ ký phải là một phần của tài liệu và

không thể chuyển chữ ký sang tài liệu khác

- Tài liệu đã ký không thể thay đổi được nội dung

- Chống từ chối Chỉ người ký mới có khóa bí mật để ký lên m

Các khả năng tấn công đối với chữ ký điện tử:

1 Tin tặc có thể giả mạo chữ ký tương ứng với văn bản đã chọn

2 Tin tặc thử chọn thông điệp mà tương ứng với chữ ký đã cho

3 Tin tặc có thể ăn trộm khóa mật và có thể ký trên bất kỳ một bức điện nào

nó muốn giống như chủ của khóa mật

4 Tin tặc có thể giả mạo người ký và ký một bức điện nào đó

5 Tin tặc có thể đổi khóa công cộng bởi khóa của mình

1.1.7 Một số vấn đề với chữ ký số

- Ký số thực hiện trên từng bít của tài liệu Trong thực tế, ta cần ký vào các tàiliệu số có kích thước lớn Như vậy tốn nhiều bộ nhớ để lưu trữ chữ ký, mặt khác tốnnhiều vấn đề khác…

- Một sơ đồ chữ ký "an toàn" thì tốc độ ký chậm vì phải dùng nhiều phép toán

số học phức tạp như số mũ modulo

- Sử dụng hệ mã hóa sơ đồ ký giống nhau (hoặc có thể khác nhau) nhưng thực

tế lại cho ra bản mã hay chữ ký giống nhau Điều này sẽ dẫn đến phức tạp cho việcxác thực

Để giải quyết các tình trạng trên người ta thường sử dụng "hàm băm" để tạo

"đại diện" (hay bản tóm lược, thu gọn) cho tài liệu Sau đó ký số lên "đại diện" này

Trang 18

h(x) 1.1.8.1. Hàm băm: (Hash function)

* Hàm băm (h) Là hàm một chiều (One-way Hash) với các đặc tính sau:

- Với tài liệu đầu vào (thông điệp gốc) x, chỉ thu được giá trị băm duy nhất z =

- Nếu dữ liệu trong thông điệp x bị thay đổi hay bị xóa để thành thông điệp x‟, thì giá trị băm h(x‟)  h(x).

- Dù chỉ là một sự thay đổi nhỏ, ví dụ chỉ thay đổi 1 bit dữ liệu của thông điệp gốc x, thì giá trị băm h(x) của nó cũng vẫn thay đổi Điều này có nghĩa là: hai

thông điệp khác nhau, thì giá trị băm của chúng cũng khác nhau

- Nội dung của thông điệp gốc “khó” thể suy ra từ giá trị hàm băm của nó

Nghĩa là: với thông điệp x thì “dễ ” tính được z = h(x), nhưng lại “khó” tính

ngược lại được x nếu chỉ biết giá trị băm h(x) (kể cả khi biết hàm băm h).

* Tính chất của hàm băm

- Hàm băm không va chạm yếu.

Hàm băm h được gọi là không va chạm yếu, nếu cho trước bức điện x,

Ví dụ hàm băm MD5 biến đổi một thông điệp bất kỳ có chiều dài bất kỳ thành một khối có kích thước cố định 128 bits.

MD5("cộng hòa xã hội chủ nghĩa việt nam")

= 7b8e76fac176d53c53cb24843e31e759

Ngay cả khi một chuỗi rỗng cũng trả về một chuỗi số thập lục phân gồm 32 sốliên tiếp: MD5("")

= d41d8cd98f00b204e9800998ecf8427e

Trang 19

1.1.8.2 Lược đồ ký số và thẩm định ký số:

Hình 1.1 Lược đồ ký số và kiểm tra chữ ký sốChữ ký số được tạo ra bằng cách mã hóa chuỗi băm (được tạo ra từ thông báoban đầu bằng cách sử dụng hàm băm) với khóa riêng của người gửi Quá trình kiểmtra chữ ký số gồm các bước: sử dụng hàm băm để tạo ra một chuỗi băm tính được từthông báo nhận được, giải mã chữ ký số với khóa công khai của người gửi để thuđược chuỗi băm, so sánh chuỗi băm mong muốn và chuỗi băm tính được, nếu trùngnhau thì chữ ký số là hợp lệ, người nhận có thể tin cậy vào thông báo nhận được,xác định thông báo không bị làm giả trong quá trình trao đổi và có nguồn gốc từngười gửi

1.2 Sơ đồ chữ ký số RSA (Đề xuất năm 1978)

Sơ đồ chữ ký RSA được Diffie-Hellman đề xuất và được Ronald Linn Rivest,Adi Shamir và Leonard Adleman thực hiện [14],[15]

Trang 20

d

* Sơ đồ chữ ký RSA

Tạo khóa:

Quá trình tạo khóa cho sơ đồ chữ ký RSA giống như quá trình hình thành khóa

của hệ mật RSA, tức là: Người ký chọn cặp số nguyên tố đủ lớn p và q, với

q  p ,

tính N=pq;  (N ) =(p-1)(q-1) Chọn số nguyên e thỏa mãn UCLN(e,(N))  1 Người

ký đi xác định số nguyên d, thỏa mãn phương trình

Verify(N,e)(m,s)=TRUE, nếu như m  s e (mod N)

Rõ ràng chúng ta thấy rằng quá trình tạo chữ ký và thẩm tra chữ ký giống vớiquá trình mã và giải mã của hệ mật RSA chỉ khác là quá trình tạo chữ ký Người kýdùng khóa mật còn quá trình thẩm tra thì Người nhận dùng khóa công cộng

Ví dụ:

Chữ ký trên x = 2

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

Chọn bí mật số nguyên tố p = 3, q = 5, tính n = p*q = 3*5 = 15, công khai n.

Đặt P = C

= Z n Tính bí mật (n) = (p-1).(q-1) = 2*4 = 8.

Chọn khóa công khai b = 3 < (n), nguyên tố với (n) = 8.

Trang 21

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

1.3.1 Khái niệm chữ ký mù (giao thức ký mù):

Chữ ký mù (Blind Signature) được David Chaum giới thiệu vào năm 1983, nó

là một loại chữ ký số, trong đó nội dung của thông điệp bị "che" đi trước khi nóđược ký [5], [7] Chữ ký thu được có thể được xác thực như là đối với chữ ký sốthông thường Chữ ký mù thường được dùng trong các vấn đề đòi hỏi sự nặc danhnhư trong các ứng dụng tiền điện tử, bỏ phiếu điện tử … Một trong các sơ đồ nổitiếng là sơ đồ chữ ký mù Chaum Sơ đồ này hình thành trên cơ sở sơ đồ chữ kýRSA (như đã trình bày ở trên)

* Các bước xây dựng chữ ký mù:

- Nếu người ký có khóa công khai RSA(n,e) và khóa bí mật d thì:

- Người yêu cầu ký sẽ làm "mù" thông điệp m được

m'  m  r e (mod n) , với r

- Người ký, ký vào thông điệp đã được làm mù m' và cho chữ ký s'=m' d mod n

đến người yêu cầu ký

- Người yêu cầu lấy lại được chữ ký S của thông điệp m bằng cách tính toán: S

= s'/r = m' d /r = m d r ed /r = m d r/r = m d

* Mô hình chung của chữ ký mù

Ngày đăng: 26/02/2023, 15:07

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Phan Đình Diệu, Lý thuyết mật mã và an toàn thông tin, Đại học Quốc gia Hà Nội, 1999 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: Đại học Quốc gia Hà Nội
Năm: 1999
[2]. Phạm Huy Điển, Hà Duy Khoái, Mã hoá thông tin: Cơ sở toán học và ứng dụng, nhà xuất bản Đại Học Quốc Gia Hà Nội, 2003 Sách, tạp chí
Tiêu đề: Mã hoá thông tin: Cơ sở toán học và ứng dụng
Tác giả: Phạm Huy Điển, Hà Duy Khoái
Nhà XB: Nhà xuất bản Đại Học Quốc Gia Hà Nội
Năm: 2003
[3]. Nguyễn Xuân Dũng, Bảo mật thông tin - mô hình và ứng dụng, NXB Thống kế, 2007 Sách, tạp chí
Tiêu đề: Bảo mật thông tin - mô hình và ứng dụng
Tác giả: Nguyễn Xuân Dũng
Nhà XB: NXB Thống kê
Năm: 2007
[4]. Trịnh Nhật Tiến, Trương Thị Thu Hiền, về một quy trình bỏ phiếu từ xa - Tạp chí Khoa học ĐHQGHN, KHTN &amp;CN, T.XXI, Số 2PT.2005 Sách, tạp chí
Tiêu đề: về một quy trình bỏ phiếu từ xa
Tác giả: Trịnh Nhật Tiến, Trương Thị Thu Hiền
Nhà XB: Tạp chí Khoa học ĐHQGHN, KHTN & CN
Năm: 2005
[5]. Trịnh Nhật Tiến, Chữ ký: mù, nhóm, mù nhóm và ứng dụng. Kỷ yếu HN KH FAIR lần 2 tại TP Hồ Chí Minh 9/2005 Sách, tạp chí
Tiêu đề: Chữ ký: mù, nhóm, mù nhóm và ứng dụng
Tác giả: Trịnh Nhật Tiến
Nhà XB: Kỷ yếu HN KH FAIR lần 2 tại TP Hồ Chí Minh
Năm: 2005
[9]. Foteini Baldimtsi and Anna Lysyanskaya, On the Security of One- Witness Blind Signature Schemes Sách, tạp chí
Tiêu đề: On the Security of One-Witness Blind Signature Schemes
Tác giả: Foteini Baldimtsi, Anna Lysyanskaya
[10]. Ming-Hsin Chang, T-Te Chen, I-Chen Wo and Yi-Shiung Yeh. Schonorr Blind Signature Base on Elliptic Curver, 2003 Sách, tạp chí
Tiêu đề: Schonorr Blind Signature Base on Elliptic Curver
Tác giả: Ming-Hsin Chang, T-Te Chen, I-Chen Wo, Yi-Shiung Yeh
Năm: 2003
[11]. Zuzana Rjaskova, Electronic Voting Schemes, pages (5-18), 2002 Sách, tạp chí
Tiêu đề: Electronic Voting Schemes
Tác giả: Zuzana Rjaskova
Năm: 2002

TRÍCH ĐOẠN

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