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

Một số loại chữ ký điện tử và ứng dụng

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 (589.66 KB, 22 trang )

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

NGUYỄN TRỊNH ĐOÀN

MỘT SỐ LOẠI CHỮ KÝ ĐIỆN TỬ VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ CHUYÊN NGÀNH: CÔNG NGHỆ
THÔNG TIN

NGƢỜI HƢỚNG DẪN: TRỊNH NHẬT TIẾN

NĂM 2007

1


DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ
Viết tắt Thuật ngữ tiếng Anh

Nghĩa tiếng Việt

BDS

Blind Digital Signature

Chữ ký số mù

CA

Certificate Authority



Nhà cung cấp chứng chỉ số

CTF

Central Tabulating Facility

Phƣơng tiện lập bảng trung tâm

DEA

Data Encryption Algorithm

Thuật toán mật mã dữ liệu

DES

Data Encryption Standard

Chuẩn mã hóa dữ liệu

DSS

Digital Signature Standard

Chuẩn chữ ký số

GDS

Group Digital Signature


Chữ ký số nhóm

GBDS

Group Blind Digital Signature

Chữ ký số mù nhóm

IDEA

International Data Encryption Thuật toán mật mã dữ liệu
Algorithm

Quốc tế

LRF

Local Registration Facility

Phƣơng tiện đăng ký địa phƣơng

MAC

Message Authentication Code

Mã xác thực thông điệp

MD5


Message Digest algorithm 5

Thuật toán hàm băm MD5

PKI

Public Key Infrastructure

Cơ sở hạ tầng khoá công khai

SHA-1

Secure Hash Algorithm

Thuật toán hàm băm SHA-1

SK

Signature of Knowledge

Chữ ký dựa trên tri thức

VSF

Vote Submission Facility.

Phƣơng tiện đệ trình phiếu

2



DANH MỤC CÁC HÌNH VẼ VÀ KÝ HIỆU
CÁC HÌNH VẼ
Hình 1: Minh họa mã hóa và giải mã ............... Error! Bookmark not defined.
Hình 2: Minh họa sinh và thẩm tra chữ ký ...... Error! Bookmark not defined.
Hình 3: Minh họa hàm băm và đại diện thông điệp ........Error! Bookmark not
defined.
Hình 4: Minh họa chữ ký số sử dụng hàm băm ..............Error! Bookmark not
defined.
Hình 5: Mô hình ngân hàng điện tử phân tán .. Error! Bookmark not defined.
CÁC KÝ HIỆU
a R A

Phần tử a đƣợc chọn ngẫu nhiên trong tập A.

Zn

Tập các số nguyên {0, 1,…, n-1}

Zn*

Tập các số nguyên trong Zn mà nguyên tố với n

Định nghĩa 3.5.2

Định nghĩa thứ 2 trong mục 3.5.

[2, 3, 5, 7, 33]

Tài liệu tham khảo [2], [3], [5], [7], [33]


3


MỞ ĐẦU
1. Lý do chọn đề tài
Trong cuộc sống và trong các hoạt động của con ngƣời, việc trao đổi
thông tin là một nhu cầu thiết yếu, con ngƣời trao đổi thông tin để tồn tại và
phát triển trong quy luật vận động của tự nhiên và xã hội. Thông tin thì đa
dạng, phong phú đƣợc thể hiện dƣới nhiều dạng thức khác nhau nhƣ văn bản,
hình ảnh, âm thanh, số liệu,…Mặt khác việc trao đổi thông tin cũng diễn ra
dƣới nhiều hình thức và bằng các phƣơng pháp khác nhau.
Cùng với sự phát triển của công nghệ thông tin, các phƣơng tiện và
công nghệ truyền thông tiên tiến ra đời, trong đó mạng máy tính và đặc biệt là
mạng Intenet đã giúp con ngƣời trao đổi thông tin hết sức thuận tiện, nhanh
chóng. Một 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. Mã hóa thông tin là sự biến đổi thông tin thành một dạng
khác 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 (hủy bỏ sự “che giấu”) để
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ố.
Vấn đề xƣng danh và xác nhận danh tính của các thực thể cũng là các
vấn đề rất cần thiết trong giao dịch điện tử.


4


Các yêu cầu về an toàn và bảo mật truyền thông gồm:
1) Đảm bảo tin cậy: Thông tin đƣợc bí mật, không sao chép trái phép.
2) Tính toàn vẹn: Nội dung thông tin không bị thay đổi.
3) Tính xác thực: Thông tin đƣợc gửi và nhận hợp pháp, đúng các chủ
thể giao dịch, không mạo danh.
4) Không thể chối bỏ trách nhiệm: Ngƣời gửi tin không thể chối bỏ
trách nhiệm về những thông tin đã gửi.
Bằng các công nghệ mã hóa và chữ ký số chúng ta có thể thực hiện
đƣợc các yêu cầu trên, sử dụng chữ ký số đảm bảo tốt ba yêu cầu sau cùng.
Hiện nay ngƣời ta đã sử dụng chữ ký số trong các công việc: giao dịch
các tài liệu điện tử, trao đổi thƣ tín, tiền điện tử, giao dịch ngân hàng,…, và
ứng dụng trong nhiều lĩnh vực khác nhau nhƣ: quản lý hành chính, giáo dục,
kinh tế, thƣơng mại điện tử… Ở Việt Nam, luật giao dịch điện tử đã đƣợc
Quốc hội khóa XI thông qua vào tháng 11 năm 2005 tại kỳ họp thứ 8 và có
hiệu lực từ 01/03/2006, do đó đã tạo hành lang pháp lý thuận lợi cho giao dịch
điện tử. Trong tƣơng lai không xa việc ứng dụng chữ ký điện tử sẽ trở thành
phổ biến và đóng một vai trò quan trọng thúc đẩy sự phát triển kinh tế xã hội
của đất nƣớc.
Xuất phát từ thực tế nêu trên, việc nghiê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 là thiết thực và có ý nghĩa to lớn.
Luận văn “MỘT SỐ LOẠI CHỮ KÝ ĐIỆN TỬ VÀ ỨNG DỤNG”
đƣợc nghiên cứu dựa trên các vấn đề thực tiễn cuộc sống đòi hỏi nhƣ việc trao
đổi thông tin hàng ngày giữa các tổ chức, cá nhân mà yêu cầu bảo mật và an
toàn thông tin đƣợc đề ra.

5



2. Nội dung nghiên cứu của luận văn
Luận văn tập trung nghiên cứu một số vấn đề chính sau đây:
1) Một số kiến thức toán học sử dụng trong khoa học mật mã
2) Tổng quan về mã hóa và chữ ký số (chữ ký điện tử).
3) Sơ đồ chữ ký RSA.
4) Các sơ đồ chữ ký số mù, chữ ký số nhóm, chữ ký số mù nhóm.
5) Ứng dụng của các sơ đồ chữ ký nói trên.
Sơ đồ chữ ký RSA là một sơ đồ chữ ký thông dụng hiện nay vì sự cài
đặt đơn giản và tính an toàn cao, làm cơ sở xây dựng nhiều loại chữ ký khác.
Các sơ đồ chữ ký số mù, chữ ký số nhóm và chữ ký số mù nhóm là các
sơ đồ chữ ký đặc biệt có nhiều ứng dụng trong các lĩnh vực: Tiền điện tử, giao
dịch ngân hàng, thƣơng mại điện tử, bỏ phiếu trực tuyến,…Các loại chữ ký
này đƣợc thiết kế để giải quyết các vấn đề: ẩn danh, làm việc theo nhóm và ký
đại diện cho nhóm trong giao dịch điện tử.

3. Phương pháp nghiên cứu
Luận văn đƣợc nghiên cứu dựa trên:
1) Học hỏi, xin ý kiến của thầy hƣớng dẫn và các đồng nghiệp.
2) Nghiên cứu các tài liệu chuyên môn liên quan bằng tiếng Việt,
tiếng Anh, tìm kiếm thông tin trên Internet.
3) Tìm hiểu và quan sát thực tiễn.
4) Thử nghiệm một số chƣơng trình đơn giản.

6


4. Tổ chức luận văn
Luận văn gồm 6 chƣơng nhƣ sau:

Chƣơng 1: Các kiến thức cơ sở.
Chƣơng 2: Tổng quan về mã hóa và chữ ký số.
Chƣơng 3: Chữ ký mù.
Chƣơng 4: Chữ ký nhóm.
Chƣơng 5: Chữ ký mù nhóm.
Chƣơng 6: Thử nghiệm chƣơng trình.
Vì thời gian có hạn, trong khi đề tài lại rất sâu rộng, mặt khác kiến thức
và kinh nghiệm của bản thân về lĩnh vực này còn hạn chế, bản luận văn không
thể tránh khỏi các khiếm khuyết. Rất mong nhận đƣợc sự góp ý và bổ xung
của các thầy cô, bạn bè đồng nghiệp. Hy vọng rằng đề tài này sẽ đƣợc tiếp tục
nghiên cứu và phát triển để hoàn thiện hơn.

7


Chương 1. CÁC KIẾN THỨC CƠ SỞ
Lý thuyết mật mã là một ngành khoa học đƣợc xây dựng dựa trên cơ sở
toán học, đặc biệt là lý thuyết số học. Chƣơng này tổng hợp một số kiến thức
toán học liên quan đƣợc sử dụng trong lý thuyết mật mã cũng nhƣ trong lĩnh
vực chữ ký số [2, 3, 5, 7, 33].
1.1. LÝ THUYẾT SỐ HỌC
1.1.1. Phép chia hết và chia có dư
1.1.1.1. Định nghĩa 1.1.1
1) Cho hai số nguyên a và b (b ≠ 0). Nếu có một số nguyên q sao cho a = b.q
thì ta nói rằng a chia hết cho b, kí hiệu b\a. Khi đó ta nói b là ƣớc của a hay
a là bội của b.
Ví dụ: a = 8, b = 2; ta có 8 = 2.4 do đó 2 là ƣớc của 8 và ký hiệu 2\8.
2) Cho các số nguyên a, b (b ≠ 0), tồn tại cặp số nguyên (q, r) duy nhất sao
cho a = b.q + r, 0  r < b , khi đó q gọi là thƣơng nguyên, r gọi là số dƣ của
phép chia a cho b. Nếu r = 0 thì ta có phép chia hết.

Ví dụ: a = 13, b = 5; 13 = 5.2 + 3 → q = 2, r = 3.
1.1.1.2. Một số tính chất
Với a, b, c là các số nguyên ta có:
1) ±1\a, với mọi a; a\0, a\a, với mọi a ≠ 0.
2) Nếu a\b và b\c thì a\c, với mọi a ≠ 0, b ≠ 0.
3) Nếu a\b thì a\b.c, với mọi a ≠ 0.
4) Nếu a\b và a\c thì a\(b+c) và a\(b-c), với mọi a ≠ 0.
5) Nếu a\b và c\d thì a.c\b.d, với mọi a ≠ 0, c ≠ 0.

8


1.1.2. Ước chung lớn nhất, bội chung nhỏ nhất
1.1.2.1. Định nghĩa 1.1.2
1) Một số nguyên d đƣợc gọi là ƣớc chung của các số nguyên a1, a2, …, an nếu
nó là ƣớc của tất cả các số đó.
2) Một số nguyên m đƣợc gọi là bội chung của các số nguyên a1, a2, …, an
nếu nó là bội của tất cả các số đó.
3) Một ƣớc chung d>0 của các số nguyên a1, a2, …, an sao cho mọi ƣớc chung
của a1, a2, …, an đều là ƣớc của d, thì d đƣợc goi là ƣớc chung lớn nhất của
a1, a2, …, an và ký hiệu là d = gcd(a1, a2, …, an). Để cho gọn trong trình
bày ta có thể ký hiệu là d = (a1, a2, …, an).
4) Nếu gcd(a1, a2, …, an) = 1 thì các số a1, a2, …, an đƣợc gọi là nguyên tố
cùng nhau.
5) Một bội chung m>0 của các số nguyên a1, a2, …, an sao cho mọi bội chung
của a1, a2, …, an đều là bội của m, thì m đƣợc goi là bội chung nhỏ nhất của
a1, a2, …, an và ký hiệu là m = lcm(a1, a2, …, an).
Ví dụ: gcd(12,18) = 6; lcm(12,18) = 36;
gcd(8,9) = 1 do đó 8 và 9 là hai số nguyên tố cùng nhau.
1.1.2.2. Tính chất

1) d = gcd(a1, a2, …, an) khi và chỉ khi tồn tại các số x1, x2,…, xn sao cho:
d = a1x1+a2x2+…+an .
2) m = lcm(a1, a2, …, an) khi và chỉ khi (m/a1, m/a2,…, m/an) =1.
3) Nếu d là một ƣớc chung của a1, a2, …, an thì:
d = gcd(a1, a2, …, an) khi và chỉ khi gcd(a1/d, a2/d,…, an/d) =1.
4) Nếu gcd(a,b) = 1 và b\ac thì b\c.

9


5) Nếu gcd(a,b) = 1 thì gcd(ac,b) = gcd(c,b).
6) Nếu gcd(a, b) =1 thì lcm(a, b) = ab.
7) Nếu b > 0, a = bq+r thì gcd(a,b) = gcd(b,r).
8) gcd(ma1, ma2, …, man) = m.gcd(a1, a2, …, an) (với m≠0).
9) lcm(a, b) = ab/gcd(a, b).
1.1.2.3. Thuật toán Euclide tìm ước chung lớn nhất
1) Bài toán
 Dữ liệu vào: Cho hai số nguyên không âm a, b, a ≥ b.
 Kết quả: gcd(a,b).
2) Thuật toán (mô phỏng bằng ngôn ngữ Pascal)
Readln(a, b);
While b > 0 do
Begin
r := a mod b; a := b; b := r;
End;
Writeln(a);
3) Ví dụ
Cho: a = 30, b = 18;
Ta có: gcd(30,18) = gcd(18,12) = gcd(12,6) = gcd(6,0) = 6.
a


b

r

a = b.q + r

30

18

12

30 = 18.1 + 12

18

12

6

18 = 12.1 + 6

12

6

0

12 = 6.2 + 0


10


TÀI LIỆU THAM KHẢO
Tiếng Việt
[1]

Đoàn Văn Ban, Võ Minh Đức, Chữ ký số RSA và ứng dụng xác thực đề
thi, cấp chứng chỉ số trong e-learning, Kỷ yếu hội thảo khoa học Quốc
gia về công nghệ phần mềm và phần mềm nhóm, Công nghệ tri thức và
giải pháp mã nguồn mở cho hệ thống e-learning, 2006.

[2]

Phan Đình Diệu, Giáo trình lý thuyết mật mã và an toàn thông tin, Nhà
xuất bản Đại học Quốc gia Hà Nội, 1999.

[3]

Phạm Huy Điển, Hà Huy Khoái, Mã hoá thông tin cơ sở toán học & ứng
dụng, Viện toán học, 2004.

[4]

Ngô Hoàng Huy, Nguyễn Thành Quang, Lập trình Windows với C++,
Nhà xuất bản giao thông vận tải, 2006.

[5]


Nguyễn Thành Nhân, RSA - tấn công và phòng chống, Nhà xuất bản
thanh niên, 2007.

[6]

Trịnh Nhật Tiến, Trƣơng Thị Thu Hiền, Nguyễn Đình Nam, Một số kỹ
thuật bỏ phiếu từ xa, Kỷ yếu hội thảo khoa học Quốc gia về Công nghệ
thông tin, Nhà xuất bản Khoa học kỹ thuật, 2005.

[7]

Trịnh Nhật Tiến, Giáo trình an toàn dữ liệu và mã hóa, Đại học Công
nghệ-Đại học Quốc Gia Hà Nội, 2006.

Tiếng Anh
[8]

G. Ateniese and G. Tsudik. A coalition-resistant group signature
scheme. Technical Report, In Submission, October 1998.

[9]

G. Ateniese and G. Tsudik. Some open issues and new directions in
group signature. Proceedings of the International Conference on
Financial Cryptography '99 (To Appear), November 1998.

11


[10] G. Ateniese and G. Tsudik. Group signatures a' la carte. In ACM

Symposium on Discrete Algorithms, January 1999.
[11] Mihir Bellare and Phillip Rogaway. Random oracles are practical: A
paradigmfor designing efficient protocols. In First ACM Conference on
Computer and Communications Security, pages 62-73, Fairfax, 1993.
ACM.
[12] Jan Camenisch. Efficient and generalized group signatures. In Proc.
EUROCRYPT97, pages 465-479. Springer-Verlag, 1997. Lecture Notes
in Computer Science No. 1233.
[13] Jan Camenisch, Ueli Maurer, and Markus Stadler. Digital payment
systems with passive anonymity-revoking trustees. Journal of Computer
Security, 5(1), 1997.82
[14] Jan Camenisch and Markus Stadler. Efficient group signatures for large
groups. In Proc. CRYPTO 97, pages 410-424. Springer-Verlag, 1997.
Lecture Notes in Computer Science No. 1294.
[15] D. Chaum, A. Fiat, and M. Naor. Untraceable electronic cash. In S.
Goldwasser, editor, Proc. CRYPTO 88, pages 319-327. SpringerVerlag, 1988. Lecture Notes in Computer Science No. 403.
[16] David Chaum. Blind signatures for untraceable payments. In R. L.
Rivest, A. Sherman, and D. Chaum, editors, Proc. CRYPTO 82, pages
199-203, New York, 1983. Plenum Press.
[17] David Chaum and Eugene van Heyst. Group signatures. In Proc.
EUROCRYPT91, pages 257-265. Springer-Verlag, 1991. Lecture Notes
in Computer Science No. 547.
[18] L. Chen and T. P. Pedersen. New group signature schemes (extended
abstract). In Proc. EUROCRYPT 94, pages 171-181. Springer-Verlag,
1994. Lecture Notes in Computer Science No. 547.
[19] A. Juels, M. Luby, and R. Ostrovsky. Security of blind digital
signatures. In Proc. CRYPTO 97, Lecture Notes in Computer Science,
12



pages 150-164. Springer-Verlag, 1997. Lecture Notes in Computer
Science No. 1294.
[20] A. Lysyanskaya and Z. Ramzan. Group blind digital signatures: A
scalable solution to electronic cash. In Proceedings of the International
Conference on Financial Cryptography, 1998.
[21] A. Menezes, P. Van Oorschot, and S. Vanstone, Handbook of Applied
Cryptography, CRC Press, 1996.
[22] T. Okamoto. Provable secure and practical identification schemes and
corresponding signature signature schemes. In CRYPTO92, pages 3153. SPVER, 1992. Lecture Notes in Computer Science No. 740.
[23] PKCS #1 v2.1: RSA Cryptography Standard (RSA LaboratoriesJune
14,2002) Copyright © 2002 RSA Security Inc.
[24] David Pointcheval and Jacques Stern. Provably secure blind signature
schemes. In M.Y. Rhee and K. Kim, editors, Advances in CryptologyASIACRYPT '96, pages 252-265. Springer-Verlag, 1996. Lecture Notes
in Computer Science No.1163.
[25] O’Reilly

&

Associates,

Inc,

Java

Security

2nd,

1995


See

/>[26] R. Rivest, A. Shamir, L. Adleman. A Method for Obtaining Digital
Signatures and Public-Key Cryptosystems. Communications of the
ACM, Vol. 21 (2), pp.120–126. 1978. Previously released as an MIT
"Technical Memo" in April 1977. Initial publication of the RSA scheme.
[27] B. Schneier. Applied Cryptography: Protocols, Algorithms, and Source
Code in C. John Wiley & Sons, New York, 1993.
[28] Douglas R. Stinson, Cryptography theory and practice- Second Edition,
It was published in March, 1995, by CRC Press, Inc
[29] C. P. Schnorr. Efficient identification and signatures for smart cards. In
G. Brassard, editor, Proc. CRYPTO 89, pages 239-252. SpringerVerlag, 1990. Lecture Notes in Computer Science No. 435.
13


[30] Jacque Traore. Weaknesses of the "coalition resistant" group signature
scheme. Unpublished Manuscript, November 1998.

Địa chỉ trên mạng INTERNET
[31]
[32]
[33] />[34] http:/www.plannetsourcecode.com
[35] />
14


15


MỤC LỤC

DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ .................................... 1
DANH MỤC CÁC HÌNH VẼ VÀ KÝ HIỆU ................................................... 3
MỞ ĐẦU ............................................................................................................ 4
Chương 1. CÁC KIẾN THỨC CƠ SỞ ........................................................... 8
1.1. LÝ THUYẾT SỐ HỌC ........................................................................ 8
1.1.1. Phép chia hết và chia có dƣ ........................................................... 8
1.1.1.1. Định nghĩa .............................................................................. 8
1.1.1.2. Một số tính chất ...................................................................... 8
1.1.2. Ƣớc chung lớn nhất, bội chung nhỏ nhất ...................................... 9
1.1.2.1. Định nghĩa .............................................................................. 9
1.1.2.2. Tính chất ................................................................................. 9
1.1.2.3. Thuật toán Euclide tìm ƣớc chung lớn nhất ......................... 10
1.1.2.4. Thuật toán Euclide mở rộng . Error! Bookmark not defined.
1.1.3. Số nguyên tố ................................ Error! Bookmark not defined.
1.1.3.1. Định nghĩa ............................ Error! Bookmark not defined.
1.1.3.2. Một số định lý ....................... Error! Bookmark not defined.
1.1.4. Đồng dƣ thức ............................... Error! Bookmark not defined.
1.1.4.1. Định nghĩa ............................ Error! Bookmark not defined.
1.1.4.2. Các tính chất ......................... Error! Bookmark not defined.
1.1.4.3. Các lớp thặng dƣ ................... Error! Bookmark not defined.
1.1.4.4. Các định lý ............................ Error! Bookmark not defined.
1.1.4.5. Tính toán đồng dƣ của các lũy thừa bậc lớn ................. Error!
Bookmark not defined.
1.1.5. Cấu trúc nhóm ............................. Error! Bookmark not defined.
1.1.5.1. Phép toán hai ngôi ................ Error! Bookmark not defined.
1.1.5.2. Nhóm .................................... Error! Bookmark not defined.
1.1.5.3. Nhóm con.............................. Error! Bookmark not defined.
1.1.5.4. Nhóm Cyclic ......................... Error! Bookmark not defined.
1.1.5.5. Nhóm cộng Zn và nhóm nhân Zn* .......Error! Bookmark not
defined.

1.2. LÝ THUYẾT ĐỘ PHỨC TẠP TÍNH TOÁN...Error! Bookmark not
defined.
1.2.1. Thuật toán của một bài toán ........ Error! Bookmark not defined.
1.2.1.1. Bài toán ................................. Error! Bookmark not defined.
1.2.1.2. Định nghĩa thuật toán ........... Error! Bookmark not defined.
1.2.1.3. Hai mô hình tính toán ........... Error! Bookmark not defined.
1.2.2. Độ phức tạp thuật toán................. Error! Bookmark not defined.
1.2.3. Phân lớp bài toán theo độ phức tạp ............Error! Bookmark not
defined.
16


1.2.3.1. Lớp bài toán P, NP................ Error! Bookmark not defined.
1.2.3.2. Lớp bài toán NP-Hard, NP-Complete .Error! Bookmark not
defined.
1.2.4. Hàm một phía và hàm một phía có cửa sậpError! Bookmark not
defined.
1.2.5. Một số bài toán khó đƣợc sử dụng trong lý thuyết mật mã . Error!
Bookmark not defined.
Chương 2. TỔNG QUAN VỀ MÃ HÓA VÀ CHỮ KÝ SỐ .................Error!
Bookmark not defined.
2.1. CÁC KHÁI NIỆM CƠ BẢN ............. Error! Bookmark not defined.
2.1.1. Lý thuyết mật mã và an toàn thông tin .......Error! Bookmark not
defined.
2.1.2. Hệ mã hóa .................................... Error! Bookmark not defined.
2.1.2.1. Định nghĩa ............................ Error! Bookmark not defined.
2.1.2.2. Các yêu cầu của một hệ mã hóa ..........Error! Bookmark not
defined.
2.1.2.3. Hệ mã hóa khóa đối xứng ..... Error! Bookmark not defined.
2.1.2.4. Hệ mã hóa khóa công khai ... Error! Bookmark not defined.

2.2. MỘT SỐ HỆ MÃ HÓA KHÓA CÔNG KHAI Error! Bookmark not
defined.
2.2.1. Hệ mã hóa RSA ........................... Error! Bookmark not defined.
2.2.1.1. Giới thiệu .............................. Error! Bookmark not defined.
2.2.1.2. Sơ đồ hệ mã hóa RSA ........... Error! Bookmark not defined.
2.2.1.3. Ví dụ ..................................... Error! Bookmark not defined.
2.2.2. Hệ mã hoá Elgamal ..................... Error! Bookmark not defined.
2.2.2.1. Sơ đồ hệ mã hóa Elgamal ..... Error! Bookmark not defined.
2.2.2.2. Đặc điểm của Hệ mã hoá Elgamal ......Error! Bookmark not
defined.
2.2.2.3. Ví dụ ..................................... Error! Bookmark not defined.
2.2.3. Tính hiệu quả và độ an toàn của hệ mã hóa ..... Error! Bookmark
not defined.
2.2.3.1. Hệ mã hóa khóa đối xứng ..... Error! Bookmark not defined.
2.2.3.2. Hệ mã hóa khóa công khai RSA..........Error! Bookmark not
defined.
2.2.3.3. Cơ sở hạ tầng khóa công khai KPI ......Error! Bookmark not
defined.
2.3. CHỮ KÝ SỐ....................................... Error! Bookmark not defined.
2.3.1. Khái niệm chữ ký ........................ Error! Bookmark not defined.
2.3.1.1. Chữ ký viết tay...................... Error! Bookmark not defined.
2.3.1.2. Chữ ký số .............................. Error! Bookmark not defined.
2.3.2. Sơ đồ chữ ký số ........................... Error! Bookmark not defined.
2.3.3. Phân loại các sơ đồ chữ ký số...... Error! Bookmark not defined.
17


2.3.3.1. Sơ đồ chữ ký số kèm theo thông điệp gốc . Error! Bookmark
not defined.
2.3.3.2. Sơ đồ chữ ký số có thể khôi phục thông điệp gốc ........ Error!

Bookmark not defined.
2.4. SƠ ĐỒ CHỮ KÝ RSA ....................... Error! Bookmark not defined.
2.4.1. Cơ sở toán học ............................. Error! Bookmark not defined.
2.4.2. Thuật toán sinh khoá ................... Error! Bookmark not defined.
2.4.3. Thuật toán sinh và xác thực chữ ký RSA ...Error! Bookmark not
defined.
2.4.3.1. Sinh chữ ký ........................... Error! Bookmark not defined.
2.4.3.2. Xác thực chữ ký .................... Error! Bookmark not defined.
2.4.4. Ví dụ ............................................ Error! Bookmark not defined.
2.4.5. Tính hiệu quả và bảo mật ............ Error! Bookmark not defined.
2.4.5.1. Tính hiệu quả ........................ Error! Bookmark not defined.
2.4.5.2. Tính bảo mật ......................... Error! Bookmark not defined.
2.5. HÀM BĂM VÀ ĐẠI DIỆN THÔNG ĐIỆP .....Error! Bookmark not
defined.
2.5.1. Đặt vấn đề .................................... Error! Bookmark not defined.
2.5.2. Đại diện thông điệp ..................... Error! Bookmark not defined.
2.5.3. Hàm băm mật mã ......................... Error! Bookmark not defined.
2.5.3.1. Định nghĩa ............................ Error! Bookmark not defined.
2.5.3.2. Các tính chất của hàm băm ... Error! Bookmark not defined.
2.5.3.3. Phân loại hàm băm ............... Error! Bookmark not defined.
2.5.3.4. Ý nghĩa của việc dùng hàm băm .........Error! Bookmark not
defined.
2.5.3.5. Một số thuật toán hàm băm mật mã thông dụng .......... Error!
Bookmark not defined.
2.6. PHƢƠNG PHÁP XÁC THỰC THÔNG ĐIỆP Error! Bookmark not
defined.
2.6.1. Xác thực thông điệp là gì? ........... Error! Bookmark not defined.
2.6.2. Một số phƣơng pháp xác thực thông điệp ..Error! Bookmark not
defined.
2.6.2.1. Mã hoá thông điệp bằng khóa riêng ....Error! Bookmark not

defined.
2.6.2.2. Dùng khoá bí mật chung....... Error! Bookmark not defined.
2.6.2.3. Dùng hàm băm...................... Error! Bookmark not defined.
2.7. CHỨNG MINH SỰ AN TOÀN CỦA SƠ ĐỒ CHỮ KÝ .......... Error!
Bookmark not defined.
2.7.1. Chứng minh dựa trên độ phức tạp tính toán ..... Error! Bookmark
not defined.
2.7.2. Chứng minh dựa trên mô hình Oracle ngẫu nhiên .............. Error!
Bookmark not defined.
Chương 3. CHỮ KÝ MÙ .............................. Error! Bookmark not defined.
18


3.1. GIỚI THIỆU ....................................... Error! Bookmark not defined.
3.2. CHỮ KÝ MÙ DỰA TRÊN CHỮ KÝ RSA .....Error! Bookmark not
defined.
3.2.1. Sơ đồ chữ ký RSA ....................... Error! Bookmark not defined.
3.2.2. Sơ đồ chữ ký mù Chaum ............. Error! Bookmark not defined.
3.3. CHỮ KÝ MÙ DỰA TRÊN CHỮ KÝ SCHNORR Error! Bookmark
not defined.
3.3.1. Sơ đồ chữ ký Schnorr .................. Error! Bookmark not defined.
3.3.2. Sơ đồ chữ ký mù Schnorr ............ Error! Bookmark not defined.
3.4. CÁC ỨNG DỤNG ............................. Error! Bookmark not defined.
3.4.1. Ứng dụng với tiền điện tử............ Error! Bookmark not defined.
3.4.1.1. Giới thiệu về tiền điện tử ...... Error! Bookmark not defined.
3.4.1.2. Giao thức giao dịch tiền điện tử cơ bản ..... Error! Bookmark
not defined.
3.4.1.3. Một số vấn đề an toàn với tiền điện tử ẩn danh ............ Error!
Bookmark not defined.
3.4.2. Ứng dụng với bỏ phiếu điện tử .... Error! Bookmark not defined.

3.4.2.1. Các yêu cầu với một cuộc bỏ phiếu .....Error! Bookmark not
defined.
3.4.2.2. Giao thức bỏ phiếu điện tử ... Error! Bookmark not defined.
3.5. CHỮ KÝ DỰA TRÊN TRI THỨC.... Error! Bookmark not defined.
3.5.1. Một số khái niệm toán học liên quan .........Error! Bookmark not
defined.
3.5.2. Chữ ký dựa trên tri thức .............. Error! Bookmark not defined.
3.6. CHỮ KÝ MÙ DỰA TRÊN TRI THỨC ...........Error! Bookmark not
defined.
3.6.1. Chữ ký mù dựa trên tri thức về Logarit rời rạc Error! Bookmark
not defined.
3.6.1.1. Giao thức chữ ký .................. Error! Bookmark not defined.
3.6.1.2. Phân tích chữ ký ................... Error! Bookmark not defined.
3.6.2. Chữ ký mù dựa trên tri thức về Logarit rời rạc kép ............ Error!
Bookmark not defined.
3.6.2.1. Giao thức chữ ký .................. Error! Bookmark not defined.
3.6.2.2. Phân tích chữ ký ................... Error! Bookmark not defined.
3.6.3. Chữ ký mù dựa trên tri thức về gốc của Logarit rời rạc ...... Error!
Bookmark not defined.
3.6.3.1. Giao thức chữ ký .................. Error! Bookmark not defined.
3.6.3.2. Phân tích chữ ký. .................. Error! Bookmark not defined.
Chương 4. CHỮ KÝ NHÓM ........................ Error! Bookmark not defined.
4.1. GIỚI THIỆU ....................................... Error! Bookmark not defined.
4.1.1. Các thủ tục của chữ ký nhóm ...... Error! Bookmark not defined.
4.1.2. Các yêu cầu với chữ ký nhóm ..... Error! Bookmark not defined.

19


4.1.3. Giới thiệu lịch sử nghiên cứu chữ ký nhóm ..... Error! Bookmark

not defined.
4.2. CHỮ KÝ NHÓM CHAUM VÀ HEYST ..........Error! Bookmark not
defined.
4.2.1. Sơ đồ chữ ký nhóm dạng 1 .......... Error! Bookmark not defined.
4.2.2. Sơ đồ chữ ký nhóm dạng 2 .......... Error! Bookmark not defined.
4.3. CHỮ KÝ NHÓM CAMENISCH VÀ STADLER (CS97) ........ Error!
Bookmark not defined.
4.4. MỘT BIẾN THỂ AN TOÀN HƠN CỦA CS97 ..... Error! Bookmark
not defined.
4.4.1. Sự liên minh tấn công chống lại CS97 .......Error! Bookmark not
defined.
4.4.2. Sửa đổi giao thức Join để ngăn chặn liên minh tấn công .... Error!
Bookmark not defined.
Chương 5. CHỮ KÝ MÙ NHÓM ................. Error! Bookmark not defined.
5.1. GIỚI THIỆU ....................................... Error! Bookmark not defined.
5.2. CÁC YÊU CẦU BẢO MẬT CỦA CHỮ KÝ MÙ NHÓM ....... Error!
Bookmark not defined.
5.3. CÁC THỦ TỤC CỦA CHỮ KÝ MÙ NHÓM ..Error! Bookmark not
defined.
5.4. CHỮ KÝ MÙ NHÓM LYSYANSKAYA VÀ RAMZAN ....... Error!
Bookmark not defined.
5.4.1. Giao thức chữ ký ......................... Error! Bookmark not defined.
5.4.2. Phân tích chữ ký .......................... Error! Bookmark not defined.
5.5. ỨNG DỤNG CỦA CHỮ KÝ MÙ NHÓM .......Error! Bookmark not
defined.
5.5.1. Ứng dụng với ngân hàng điện tử phân tán .Error! Bookmark not
defined.
5.5.1.1. Sơ đồ ngân hàng điện tử phân tán .......Error! Bookmark not
defined.
5.5.1.2. Thiết đặt và các giao thức ..... Error! Bookmark not defined.

5.5.2. Ứng dụng với tiền mặt điện tử ngoại tuyến Error! Bookmark not
defined.
5.5.2.1. Các yêu cầu ........................... Error! Bookmark not defined.
5.5.2.2. Thiết đặt và các giao thức ..... Error! Bookmark not defined.
5.5.3. Ứng dụng với bỏ phiếu trực tuyến..............Error! Bookmark not
defined.
5.5.3.1. Sơ đồ bỏ phiếu ...................... Error! Bookmark not defined.
5.5.3.2. Giao thức bỏ phiếu trực tuyến .............Error! Bookmark not
defined.
Chương 6. THỬ NGHIỆM CHƢƠNG TRÌNH ...........Error! Bookmark not
defined.
20


6.1. MỤC ĐÍCH ........................................ Error! Bookmark not defined.
6.2. GIỚI THIỆU MỘT SỐ CHƢƠNG TRÌNH ......Error! Bookmark not
defined.
6.2.1. Sinh số nguyên tố lớn, phép toán số lớn ....Error! Bookmark not
defined.
6.2.2. Sinh khóa RSA ............................ Error! Bookmark not defined.
6.2.3. Mã hóa, giải mã RSA .................. Error! Bookmark not defined.
6.2.4. Sử dụng hàm băm ........................ Error! Bookmark not defined.
6.2.5. Sinh và thẩm tra chữ ký, chữ ký mù ...........Error! Bookmark not
defined.
KẾT LUẬN ...................................................... Error! Bookmark not defined.
TÀI LIỆU THAM KHẢO................................................................................ 11

LỜI CẢM ƠN

Trước tiên tôi xin được bày tỏ lòng biết ơn chân thành, sâu sắc đến

PGS. TS. Trịnh Nhật Tiến, thầy đã định hướng, tận tâm hướng dẫn, cung cấp
tài liệu và những kiến thức quý báu, nhiệt tình giúp đỡ tôi trong quá trình học
tập và hoàn thành luận văn này. Tôi rất phấn khởi và vinh hạnh được làm việc
dưới sự hướng dẫn của thầy.
Tôi xin gửi lời cảm ơn đến Quý thầy cô công tác và giảng dạy tại
trường Đại học công nghệ, Đại học Quốc gia Hà Nội đã tận tình truyền đạt
cho tôi nhiều tri thức bổ ích, giúp tôi hoàn thành tốt nhiệm vụ khóa học.
Tôi xin gửi lời cảm ơn đến Qúy lãnh đạo Sở Giáo dục và Đào tạo tỉnh
Bắc Giang, trường THPT Chuyên Bắc Giang đã tạo điều kiện thuận lợi cho
tôi đi học cao học tại Đại học Quốc gia Hà Nội.
Cuối cùng, tôi không quên gửi lời cảm ơn gia đình, các đồng nghiệp và
bạn bè đã động viên, cổ vũ, tạo điều kiện giúp đỡ tôi về nhiều mặt trong cuộc
sống, học tập và công tác.

21


Đại diện
Giải mã
Y
Đại diện
Giải

Y
Giải mã
Đại diện
Giải mã
Y

Hà Nội, ngày 01 tháng 12 năm 2007

Tác giả

Đại diện
Giải

Y
Giải mã
Đại diện
Giải mã
Y

Nguyễn Trịnh Đoàn

Đại diện
Giải

Y
Giải mã
Đại diện
Giải mã
Y
Đại diện
Giải

Y
Giải mã
Đại diện
Giải mã
Y
Đại diện

Giải

Y
Giải mã
Đại diện
Giải mã
Y
Đại diện
Giải

Y
Đại diện
Y
Đại diện
Y
Đại diện
Y
Đại diện
Y
Đại diện

22



×