Mục tiêu của đề tài Luận án là nghiên cứu, phát triển một số lược đồ chữ ký số theo mô hình ứng dụng mới đề xuất nhằm bảo đảm các yêu cầu chứng thực về nguồn gốc và tính toàn vẹn cho
Trang 1HỌC VIỆN KỸ THUẬT QUÂN SỰ
Trang 2HỌC VIỆN KỸ THUẬT QUÂN SỰ
LUẬN ÁN TIẾN SỸ KỸ THUẬT
NGƯỜI HƯỚNG DẪN KHOA HỌC
1 TS Vũ Minh Tiến
2 TS Nguyễn Văn Liên
HÀ NỘI - 2011
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các kết quả trình bày trong Luận án là trung thực và chưa từng được công bố ở bất kỳ công trình nghiên cứu nào khác
Trang 4MỤC LỤC
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT iv
DANH MỤC CÁC BẢNG v
DANH MỤC CÁC HÌNH VẼ v
MỞ ĐẦU 1
CHƯƠNG 1 KHÁI QUÁT VỀ MÔ HÌNH CHỮ KÝ SỐ TẬP THỂ VÀ HƯỚNG NGHIÊN CỨU CỦA ĐỀ TÀI 5
1.1 Một số khái niệm và thuật ngữ liên quan 5
1.1.1 Một số khái niệm 5
1.1.2 Các thuật ngữ liên quan 7
1.2 An toàn thông tin trong các hệ thống truyền tin 9
1.2.1 Các hệ thống truyền tin và một số vấn đề về an toàn thông tin… 9
1.2.2 Giải pháp an toàn thông tin trong các hệ thống truyền tin 10
1.3 Hướng nghiên cứu của đề tài luận án 11
1.3.1 Các vấn đề thực tế và những hạn chế của mô hình hiện tại 11
1.3.2 Mô hình chữ ký số tập thể 12
1.4 Kết luận Chương 1 21
CHƯƠNG 2 XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ DỰA TRÊN HỆ MẬT RSA 22
2.1 Cơ sở toán học 22
2.1.1 Bài toán khai căn trên vành số nguyên Zn 22
2.1.2 Hệ mật RSA 2 3 2.2 Xây dựng lược đồ cơ sở 23
2.2.1 Lược đồ cơ sở dạng tổng quát…… 24
2.2.2 Lược đồ cơ sở LD 1.01 25
2.3 Xây dựng lược đồ chữ ký số tập thể 32
2.3.1 Lược đồ chữ ký tập thể LD 1.02 32
Trang 52.3.2 Lược đồ chữ ký tập thể LD 1.03 45
2.4 Kết luận Chương 2 50
CHƯƠNG 3 XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ DỰA TRÊN HỆ MẬT ELGAMAL 51
3.1 Cơ sở toán học 51
3.1.1 Bài toán logarit rời rạc trên trường hữu hạn nguyên tố Zp 51
3.1.2 Hệ mật ElGamal 5 2 3.2 Xây dựng lược đồ cơ sở 52
3.2.1 Lược đồ cơ sở dạng tổng quát 53
3.2.2 Lược đồ cơ sở LD 2.01 54
3.3 Xây dựng lược đồ chữ ký số tập thể 60
3.3.1 Lược đồ chữ ký tập thể LD 2.02 60
3.3.2 Lược đồ chữ ký tập thể LD 2.03 69
3.4 Kết luận Chương 3 72
KẾT LUẬN 73
DANH MỤC CÁC CÔNG TRÌNH CỦA TÁC GIẢ 75
TÀI LIỆU THAM KHẢO 76
Trang 6DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
Các ký hiệu
gcd(a,b) Ước số chung lớn nhất của a và b
[a/b] Phần nguyên của kết quả phép chia a cho b
IDi Thông tin nhận dạng thực thể/đối tượng ký Ui
xi Khóa bí mật của thực thể/đối tượng ký Ui
yi Khóa công khai của thực thể/đối tượng ký Ui
Các chữ viết tắt
DSS Digital Signature Standard
Trang 7chỉ khóa công khai
Hình 1.9 Cơ chế kiểm tra tính hợp lệ của chữ ký cá nhân 20
Trang 8MỞ ĐẦU
1 Tính cấp thiết của đề tài
Hiện nay, khi mà Chính phủ điện tử và Thương mại điện tử đã trở thành
xu hướng tất yếu của hầu hết các quốc gia trên thế giới và đã bước đầu được triển khai ở Việt Nam, thì chứng thực số [6] sẽ là một yếu tố không thể thiếu được và ngày càng trở nên quan trọng Việc ra đời chứng thực số không những đảm bảo cho việc xây dựng thành công Chính phủ điện tử và Thương mại điện tử theo nhu cầu phát triển của xã hội mà còn có tác dụng rất to lớn trong việc phát triển các ứng dụng trên mạng Internet Hạ tầng công nghệ của chứng thực số là Hạ tầng cơ sở khoá công khai (PKI - Public Key Infrastructure) [1],[2] với nền tảng là mật mã khoá công khai (PKC2 - Public Key Cryptography) [11] và chữ ký số (Digital Signature) [4],[7]
Trong các giao dịch điện tử, chữ ký số được sử dụng nhằm đáp ứng yêu cầu chứng thực về nguồn gốc và tính toàn vẹn của thông tin Chứng thực về nguồn gốc của thông tin là chứng thực danh tính của những thực thể (con người, thiết bị kỹ thuật, ) tạo ra hay có mối quan hệ với thông tin được trao đổi trong các giao dịch điện tử Các mô hình ứng dụng chữ ký số hiện tại cho phép đáp ứng tốt các yêu cầu về chứng thực nguồn gốc thông tin được tạo ra bởi những thực thể có tính độc lập Tuy nhiên, trong các mô hình hiện tại khi
mà các thực thể tạo ra thông tin là thành viên hay bộ phận của một tổ chức (đơn vị hành chính, hệ thống kỹ thuật, ) thì nguồn gốc thông tin ở cấp độ
tổ chức mà thực thể tạo ra nó là một thành viên hay bộ phận lại không được chứng thực Nói cách khác, yêu cầu về việc chứng thực đồng thời danh tính của thực thể tạo ra thông tin và danh tính của tổ chức mà thực thể tạo ra thông tin là một thành viên hay bộ phận của nó không được đáp ứng trong
Trang 9các mô hình ứng dụng chữ ký số hiện tại Trong khi đó, các yêu cầu như thế ngày càng trở nên thực tế và cần thiết để bảo đảm cho các thủ tục hành chính trong các giao dịch điện tử Mục tiêu của đề tài Luận án là nghiên
cứu, phát triển một số lược đồ chữ ký số theo mô hình ứng dụng mới đề
xuất nhằm bảo đảm các yêu cầu chứng thực về nguồn gốc và tính toàn vẹn cho các thông điệp dữ liệu trong các giao dịch điện tử mà ở đó các thực thể
ký là thành viên hay bộ phận của các tổ chức có tư cách pháp nhân trong xã
hội Trong mô hình này, các thông điệp điện tử sẽ được chứng thực ở 2 cấp
độ khác nhau: thực thể tạo ra nó và tổ chức mà thực thể tạo ra nó là một thành viên hay bộ phận của tổ chức này Trong Luận án, mô hình ứng dụng
chữ ký số với các yêu cầu đặt ra như trên được gọi là mô hình chữ ký số tập
thể và các lược đồ chữ ký số xây dựng theo mô hình như thế được gọi là các lược đồ chữ ký số tập thể
Một hướng nghiên cứu như vậy, có thể hiện tại chưa được đặt ra như một yêu cầu có tính cấp thiết, nhưng trong một tương lai không xa, khi Chính phủ điện tử và Thương mại điện tử cùng với hạ tầng công nghệ thông tin và truyền thông đã phát triển mạnh mẽ thì nhu cầu ứng dụng chữ ký số tập thể trong các dịch vụ chứng thực điện tử sẽ là tất yếu Trước tình hình nghiên cứu trong và ngoài nước về chữ ký tập thể thì việc nghiên cứu, phát triển và từng bước đưa chữ ký tập thể ứng dụng vào thực tiễn xã hội là rất cần thiết
Xuất phát từ thực tế đó, NCS đã chọn đề tài “Nghiên cứu, phát triển các lƣợc đồ chữ ký sô tập thể” với mong muốn có những đóng góp vào sự phát
triển khoa học và công nghệ chung của đất nước
2 Đối tƣợng và phạm vi nghiên cứu
Đối tượng nghiên cứu của Luận án bao gồm:
- Cơ sở của các hệ mật khóa công khai và các lược đồ chữ ký số
Trang 10- Nguyên lý xây dựng các hệ mật khóa công khai và lược đồ chữ ký số
- Các mô hình ứng dụng mật mã khóa công khai và chữ ký số
Phạm vi nghiên cứu của Luận án bao gồm:
- Các chuẩn chữ ký số DSS của Hoa Kỳ [21] và GOST R34.10-94 của Liên bang Nga [10] và các cơ sở toán học liên quan
3 Mục tiêu nghiên cứu
Mục tiêu nghiên cứu của Luận án bao gồm:
- Đề xuất mô hình ứng dụng chữ ký số nhằm đáp ứng các yêu cầu đặt ra khi triển khai một Chính phủ điện tử trong thực tế xã hội, áp dụng phù hợp cho đối tượng là các tổ chức, cơ quan hành chính, các doanh nghiệp,
- Phát triển một số lược đồ chữ ký số có độ an toàn và hiệu quả thực hiện cao theo mô hình đã đề xuất
4 Phương pháp nghiên cứu
- Phát triển một số lược đồ cơ sở dựa trên các chuẩn chữ ký số được đánh giá có độ an toàn và hiệu quả thực hiện cao
- Xây dựng một số lược đồ chữ ký số theo mô hình ứng dụng mới đề xuất có khả năng ứng dụng trong thực tiễn
5 Nội dung nghiên cứu
Nội dung nghiên cứu của Luận án bao gồm:
- Các chuẩn chữ ký số DSS của Hoa Kỳ và GOST R34.10-94 của Liên bang Nga
- Phát triển một số lược đồ cơ sở dựa trên các lược đồ chữ ký RSA, DSA và
GOST R34.10-94
- Xây dựng một số lược đồ chữ ký số từ các lược đồ cơ sở theo mô hình ứng dụng mới đề xuất
Trang 116 Ý nghĩa khoa học và thực tiễn
- Đề xuất mô hình ứng dụng chữ ký số nhằm đáp ứng các yêu cầu đặt ra cho việc chứng thực các văn bản, tài liệu,… khi triển khai một Chính phủ điện
tử trong thực tế xã hội Mô hình mới đề xuất áp dụng phù hợp cho đối tượng là các tổ chức, cơ quan hành chính, các doanh nghiệp, hoàn toàn phù hợp với các thủ tục hành chính trong thực tế hiện nay
- Một số lược đồ chữ ký số được đề xuất có tính mới về nguyên lý xây dựng,
có tính ứng dụng thực tế, khả thi và không vi phạm về vấn đề bản quyền
7 Bố cục của luận án
Luận án bao gồm 3 chương cùng với các phần Mở đầu, Kết luận và Danh mục các công trình, bài báo đã được công bố của tác giả liên quan đến các vấn đề nghiên cứu của Luận án
Chương 1 Khái quát về mô hình chữ ký số tập thể và hướng nghiên cứu của đề tài
Trình bày một số khái niệm và thuật ngữ liên quan đến các nội dung nghiên cứu và được sử dụng trong Luận án Định hướng nghiên cứu của đề tài
Luận án Đề xuất mô hình ứng dụng chữ ký số áp dụng phù hợp cho đối
tượng là các tổ chức có tư cách pháp nhân trong xã hội
Chương 2 Xây dựng lược đồ chữ ký số tập thể dựa trên hệ mật RSA Trình bày cơ sở toán học của hệ mật RSA, từ đó đề xuất xây dựng một
dạng lược đồ chữ ký số làm cơ sở để phát triển các lược đồ chữ ký số tập thể
theo mô hình ứng dụng đã đề xuất ở Chương 1
Chương 3 Xây dựng lược đồ chữ ký số tập thể dựa trên hệ mật ElGamal
Đề xuất xây dựng một lược đồ chữ ký số theo cùng nguyên tắc với các thuật toán chữ ký số họ ElGamal như DSA, GOST R34.10-94, từ đó phát
triển 2 lược đồ chữ ký số tập thể theo mô hình mới đề xuất
Trang 12CHƯƠNG 1 KHÁI QUÁT VỀ MÔ HÌNH CHỮ KÝ SỐ TẬP THỂ VÀ HƯỚNG
NGHIÊN CỨU CỦA ĐỀ TÀI
Nội dung Chương 1 phân tích các yêu cầu của thực tế, từ đó đề xuất mô
hình ứng dụng chữ ký số nhằm đáp ứng các yêu cầu thực tế đặt ra Mô hình
này được sử dụng để phát triển các lược đồ chữ ký số trong các chương tiếp theo Nội dung Chương 1 cũng thống nhất một số khái niệm và thuật ngữ liên quan được sử dụng trong Luận án
1.1 Một số khái niệm và thuật ngữ liên quan
Mục này thống nhất một số khái niệm và thuật ngữ liên quan được sử dụng trong Luận án
4 E là tập hữu hạn các qui tắc mã hóa
5 D là tập hữu hạn các qui tắc giải mã
6 Đối với mỗi kK có một quy tắc mã hóa e kE và một quy tắc giải mã tương ứng d kD, mỗi e k:PC và d k :CP thỏa mãn: d k(e k(x)) x
với xP (1.1) Hoặc là:
Đối với mỗi cặp (kp,ks) K có một quy tắc mã hóa e E và một quy
Trang 13tắc giải mã tương ứng d ksD, mỗi e kp:PC và d ks:C P thỏa mãn:
x x e
d ks( kp( )) với xP (1.2)
Chú ý:
- Hệ mật thỏa mãn điều kiện ( 1 1 ) được gọi là hệ mật khóa bí mật
- Hệ mật thỏa mãn điều kiện ( 1 2 ) được gọi là hệ mật khóa công khai
Định nghĩa 1.2: Một lược đồ chữ ký số là bộ 5 (M,A,K,S,V) thoả mãn các điều kiện sau:
1 M là tập hữu hạn các thông điệp dữ liệu
2 S là tập hữu hạn các chữ ký
3 K là tập hữu hạn các khoá bí mật
4 A là tập hữu hạn các thuật toán ký
5 V là tập hữu hạn các thuật toán xác minh
6 Với mỗi kK tồn tại một thuật toán ký sig kA và một thuật toán xác minh ver kV tương ứng, mỗi sig k:M S và ver k:MS {true,false}
là những hàm sao cho với mỗi mM và sS thoả mãn phương trình sau:
) ( ,
) , (
m sig s false
m sig s true m
s ver
k
k k
x
3 1
f có thể dễ dàng tính được khi có thêm một số thông tin
Trang 14Định nghĩa 1.4:
Hàm băm (Hash function) là hàm một chiều có các tính chất sau:
1 Khi cho trước bản tóm lược m của thông điệp dữ liệu M thì rất khó thực
hiện về mặt tính toán để tìm được M sao cho mH (M)
2 Cho trước thông điệp dữ liệu M rất khó tìm được một thông điệp dữ liệu M’ thỏa mãn: H(M) H(M' )
3 Rất khó để tìm được 2 thông điệp dữ liệu bất kỳ M và M’ thỏa mãn:
) ' ( )
Chữ ký số (Digital signature) là một dạng dữ liệu số được sinh ra bởi một
lược đồ chữ ký số, có chức năng liên kết một thông điệp dữ liệu (bản tin, thông báo, tài liệu, ) với thực thể (con người, thiết bị kỹ thuật, ) tạo ra nó, nhằm đáp ứng các yêu cầu xác thực về nguồn gốc và tính toàn vẹn của thông điệp dữ liệu
Định nghĩa 1.6:
Chữ ký số cá nhân là (một dạng) chữ ký số mà thực thể tạo ra nó là một
hoặc một nhóm đối tượng ký) có tính chất độc lập, nó được tạo ra từ khóa bí mật của đối tượng ký và thông điệp dữ liệu cần ký nhằm đáp ứng các yêu cầu
xác thực tính toàn vẹn về nội dung và nguồn gốc của thông điệp dữ liệu ở cấp
độ cá nhân của đối tượng ký
Trang 15Định nghĩa 1.7:
Chữ ký số tập thể là (một dạng) chữ ký số được tạo ra từ chữ ký cá nhân
của một hoặc một nhóm đối tượng ký là thành viên hay bộ phận của một tổ
chức (đơn vị hành chính, hệ thống kỹ thuật, ) với sự chứng nhận về tính hợp pháp của tổ chức này, nhằm đáp ứng các yêu cầu xác thực tính toàn vẹn về nội dung và nguồn gốc của một thông điệp dữ liệu ở 2 cấp độ: cá nhân của đối
tượng ký và tổ chức mà đối tượng ký là một thành viên hay bộ phận của nó
Định nghĩa 1.8:
Chứng chỉ số (Digital Certificate) là tài liệu của một tổ chức được tin cậy
phát hành, nhằm chứng thực tính hợp pháp của một đối tượng (con người, thiết bị kỹ thuật, quyền sở hữu của một thực thể, ) bằng việc sử dụng chữ ký
số của tổ chức đó
Định nghĩa 1.9:
Chứng chỉ khóa công khai (Public Key Certificate) là một dạng chứng chỉ
số, nhằm chứng thực quyền sở hữu đối với một khóa công khai của đối tượng (con người, thiết bị kỹ thuật, ) là chủ thể của một khóa bí mật tương ứng với khóa công khai đó và đồng thời cũng là chủ thể sở hữu chứng chỉ khóa công khai này
Định nghĩa 1.10:
Thuật toán hình thành khóa công khai (Public key generation algorithm) là
phương pháp tạo ra khóa công khai từ khóa bí mật của thực thể/đối tượng ký Định nghĩa 1.11:
Thuật toán hình thành chữ ký số (Digital signature generation algorithm)
là phương pháp tạo lập chữ ký số từ một thông điệp dữ liệu và khóa bí mật của thực thể/đối tượng ký
Định nghĩa 1.12:
Thuật toán kiểm tra chữ ký số (Digital signature verification algorithm) là
Trang 16phương pháp kiểm tra tính hợp lệ của chữ ký số tương ứng với một thông điệp dữ liệu, dựa trên khóa công khai của thực thể/đối tượng ký để khẳng định tính xác thực về nguồn gốc và tính toàn vẹn của một thông điệp dữ liệu cần thẩm tra
1.2 An toàn thông tin trong các hệ thống truyền tin
1.2.1 Các hệ thống truyền tin và một số vấn đề về an toàn thông tin
Cấu trúc của một hệ thống truyền tin với các thành phần chức năng cơ bản được chỉ ra trên Hình 1.1 như sau:
Trong mô hình trên, nguồn tin là nơi sản sinh ra thông tin hay tin tức Tin
tức ở dạng nguyên thủy như: âm thanh, hình ảnh, thường là các đại lượng vật lý biến đổi liên tục theo thời gian và không thích hợp cho việc truyền tin ở
những khoảng cách xa Ở phía phát, khối điều chế có chức năng biến đổi tin
tức sang một dạng tín hiệu thích hợp với kênh truyền, nhờ đó tin tức có thể
truyền đi xa Ở phía thu, khối giải điều chế biến đổi tín hiệu nhận được để khôi phục lại tin tức ban đầu Nhận tin là nơi mà tin tức có thể được xử lý hay
lưu trữ dưới một dạng thích hợp nào đó
Nguồn
tin
Điều chế
Giải điều chế
Nhận tin
Hình 1.1 Cấu trúc của một hệ truyền tin cơ bản
Kênh truyền
Trang 17Đứng về quan điểm an toàn thông tin, một hệ thống như thế có thể tiềm ẩn
nhiều nguy cơ gây mất an toàn, như:
- Lộ bí mật thông tin
- Thông tin có thể bị mất mát, sai lệch
- Thông tin có thể bị giả mạo
1.2.2 Giải pháp an toàn thông tin trong các hệ thống truyền tin
Trên thực tế, kỹ thuật mật mã là một giải pháp hiệu quả cho việc bảo đảm
an toàn thông tin trong các hệ truyền dẫn và xử lý thông tin phân tán Mô hình chung của một hệ thống truyền tin an toàn sử dụng mật mã được chỉ ra trên Hình 1.2
Nguồn
tin
Mã mật
Điều chế
Kênh truyền
Giải điều chế
Mã mật
Nhận tin
Hình 1.2 Cấu trúc của một hệ truyền tin an toàn
Bên phát
Bên thu
Trang 18Trong hệ thống truyền tin an toàn [27], khối mã mật được sử dụng với vai
trò bảo đảm các yêu cầu về:
- Bảo mật thông tin
- Xác thực về nguồn gốc và tính toàn vẹn của thông tin
Trong đó, các yêu cầu về bảo mật thông tin được đảm bảo bởi các thuật toán mật mã, còn giải quyết các yêu cầu về xác thực thông tin thường được thực hiện bởi các thuật toán chữ ký số Nói cách khác, khối mã mật trong một
hệ truyền tin an toàn có thể thực hiện chức năng của một thuật toán mật mã hoặc thuật toán chữ ký số hay đồng thời cả hai tùy theo các yêu cầu sử dụng thực tế Trong các lĩnh vực an ninh – quốc phòng, mật mã và vấn đề bảo mật thông tin được đặc biệt quan tâm, còn trong các hoạt động ở lĩnh vực dân sự thì chữ ký số và vấn đề xác thực thông tin lại vô cùng quan trọng, nó là sự bảo đảm cho các giao dịch điện tử được an toàn
Hướng nghiên cứu của đề tài Luận án tập trung chủ yếu trong phạm vi các
vấn đề về xác thực nguồn gốc và tính toàn vẹn của thông tin
1.3 Hướng nghiên cứu của đề tài Luận án
1.3.1 Các vấn đề thực tế và những hạn chế của mô hình hiện tại
Hiện tại, các dịch vụ chứng thực số được thực hiện trên nền tảng là Hạ
tầng cơ sở khóa công khai và chữ ký số, trong đó 2 thành phần cơ bản của hệ thống là người ký với vai trò khách hàng và cơ quan chứng thực (CA -
Certificate Authority) đóng vai trò của nhà cung cấp dịch vụ
Trong mô hình này, chữ ký của đối tượng ký lên 1 thông điệp dữ liệu chỉ
được hình thành từ thông điệp dữ liệu cần chứng thực và khóa bí mật của đối
tượng ký Mặc dù khóa công khai của người ký đã được chứng thực bởi CA, tuy nhiên mô hình này đã không có một cơ chế nào để CA kiểm soát việc ký
các thông điệp dữ liệu của các thực thể cuối trong hệ thống.Vì thế, trong các
mô hình hiện tại chữ ký số chỉ là sự chứng thực cá nhân của đối tượng ký với
Trang 19thông điệp dữ liệu được ký, còn CA chỉ đóng vai trò trung gian tin cậy trong các dịch vụ chứng thực số
Trên thực tế, nhiều khi một thực thể ký (con người, thiết bị kỹ thuật, ) là thành viên hay bộ phận của một tổ chức (đơn vị hành chính, hệ thống kỹ thuật, ) và thông điệp dữ liệu (bản tin, thông báo, tài liệu, ) được thực thể
ký tạo ra với tư cách là một thành viên hay bộ phận của tổ chức đó Vấn đề ở đây là, thông tin cần phải được chứng thực về nguồn gốc và tính toàn vẹn ở 2
cấp độ: cấp độ cá nhân thực thể ký và cấp độ tổ chức mà thực thể ký là một
thành viên hay bộ phận của nó Các mô hình ứng dụng chữ ký số hiện tại mới chỉ đảm bảo tốt cho nhu cầu chứng thực thông tin ở cấp độ cá nhân của thực thể ký, còn việc chứng thực đồng thời ở cả 2 cấp độ như thế vẫn chưa được đáp ứng trong thực tế Có thể là, một yêu cầu như vậy chưa thực sự cấp thiết ở thời điểm hiện tại, nhưng rõ ràng đó sẽ là nhu cầu thực tế và ngày càng trở nên cần thiết trong bối cảnh Chính phủ điện tử, Thương mại điện tử hay nói chung là các giao dịch điện tử đang được phát triển với qui mô toàn cầu
Từ những phân tích trên đây, hướng nghiên cứu của đề tài Luận án là đề
xuất mô hình ứng dụng chữ ký số, được gọi là mô hình chữ ký số tập thể,
nhằm đáp ứng cho các yêu cầu chứng thực nguồn gốc và tính toàn vẹn thông tin ở nhiều cấp độ khác nhau, từ đó xây dựng các lược đồ chữ ký số theo mô
hình mới đề xuất nhằm đáp ứng tốt các yêu cầu mà thực tiễn đặt ra
tượng ký là một hay một nhóm thành viên của một tổ chức và được phép ký
lên các thông điệp dữ liệu với danh nghĩa thành viên của tổ chức này Cũng
Trang 20trong mô hình này, CA là bộ phận có chức năng bảo đảm các dịch vụ chứng thực số, như: chứng nhận một thực thể là thành viên của tổ chức, chứng thực các thông điệp dữ liệu được ký bởi các thực thể là thành viên trong một tổ chức, mà CA là cơ quan chứng thực thuộc tổ chức này Tính hợp lệ về nguồn gốc và tính toàn vẹn của một thông điệp dữ liệu ở cấp độ của một tổ chức chỉ
có giá trị khi nó đã được CA thuộc tổ chức này chứng thực, việc chứng thực được thực hiện bằng chữ ký của CA tương tự như việc CA chứng thực khóa công khai cho các thực thể cuối trong các mô hình PKI truyền thống Trong
mô hình này, chữ ký của CA cùng với chữ ký cá nhân của các thực thể ký hình thành nên chữ ký tập thể cho một thông điệp dữ liệu Nói cách khác, chữ
ký tập thể trong mô hình này bao hàm chữ ký với tư cách cá nhân của thực thể
ký và chữ ký của CA với tư cách của tổ chức mà đối tượng ký là thành viên
thuộc tổ chức này Nói chung, một CA trong mô hình được đề xuất có những chức năng cơ bản như sau:
- Chứng nhận tính hợp pháp của các thành viên trong một tổ chức: thực
chất là chứng nhận khóa công khai và danh tính (các thông tin nhận dạng)
của các thành viên trong tổ chức bằng việc phát hành Chứng chỉ khóa công
khai (PKC - Public Key Certificate) Ngoài ra, CA còn có trách nhiệm thu
hồi PKC hết hạn lưu hành hoặc vi phạm chính sách an toàn của tổ chức
- Chứng thực nguồn gốc và tính toàn vẹn của các thông điệp dữ liệu được
ký bởi các đối tượng là thành viên của tổ chức mà CA là cơ quan chứng
thực của tổ chức này
Một hệ thống cung cấp dịch vụ chứng thực số xây dựng theo mô hình mới
đề xuất sẽ bao gồm các hoạt động cơ bản như sau:
a) Phát hành, quản lý Chứng chỉ khóa công khai
Trong mô hình chữ ký tập thể, chứng chỉ khóa công khai được sử dụng để một tổ chức chứng nhận các đối tượng ký là thành viên của nó Một chứng chỉ
Trang 21khóa công khai bao gồm những thông tin cơ bản và cơ chế hình thành được chỉ ra trên Hình 1.3
Cấu trúc cơ bản của một PKC bao gồm khóa công khai của chủ thể chứng chỉ và các thông tin khác như: Thông tin nhận dạng của chủ thể, Trạng thái hoạt động của chứng chỉ, Số hiệu chứng chỉ, Thông tin nhận dạng của CA, Không làm mất tính tổng quát, trong Luận án sử dụng thuật ngữ Thông tin nhận dạng (IDi) của đối tượng ký để đại diện cho các thành phần thông tin nói
Hình 1.3 Cấu trúc cơ bản và cơ chế hình thành
của một Chứng chỉ khóa công khai
Trang 22Kiểm tra tính hợp pháp của đối tượng ký là kiểm tra tính hợp lệ của chứng chỉ khóa công khai mà đối tượng ký được cấp, thực chất là kiểm tra tính hợp
lệ chữ ký của CA trên chứng chỉ khóa công khai của thực thể này Dữ liệu đầu vào của thuật toán là chữ ký của CA, khóa công khai của chủ thể chứng chỉ và
các thông tin khác như: Thông tin nhận dạng của chủ thể, Kết quả đầu ra của thuật toán là sự khẳng định về nguồn gốc và tính toàn vẹn của khóa công khai được sở hữu bởi chủ thể chứng chỉ
Cơ chế kiểm tra tính hợp lệ của một chứng chỉ khóa công khai hay kiểm
tra tính hợp pháp của một đối tượng ký là thành viên của một tổ chức được
chỉ ra trên Hình 1.4 như sau:
tra
Trang 23b) Hình thành và kiểm tra chữ ký số tập thể
Chữ ký tập thể được hình thành trên cơ sở chữ ký cá nhân của thực thể ký (một hoặc một nhóm đối tượng ký) và chứng nhận của CA với vai trò chứng thực của tổ chức đối với thông điệp dữ liệu cần ký Có thể hình thành chữ ký
tập thể ở 2 dạng như sau:
- Chữ ký tập thể dạng kết hợp: ở dạng này CA ký trực tiếp lên thông điệp
dữ liệu như các thành viên khác, chữ ký của CA và chữ ký cá nhân của
các đối tượng ký được kết hợp với nhau theo một qui tắc nhất định để hình thành chữ ký tập thể
- Chữ ký tập thể dạng phân biệt: ở dạng này chữ ký tập thể bao gồm chữ ký cá nhân của thực thể ký và chữ ký của CA là 2 thành phần phân biệt
hay tách biệt nhau
Trong Luận án, chữ ký tập thể dạng phân biệt được sử dụng do có khả
năng chống lại các kiểu tấn công tập thể từ bên trong hệ thống Cơ chế hình thành chữ ký số tập thể dạng phân biệt được chỉ ra trên Hình 1.5
Chữ ký cá nhân của thực thể ký (SU)
Chứng nhận của CA
(S
CA)
Trang 24Chữ ký cá nhân hình thành từ khóa bí mật của thực thể ký và thông điệp
dữ liệu cần ký theo cơ chế được chỉ ra trên Hình 1.6 như sau:
Ở các lược đồ chữ ký tập thể xây dựng theo mô hình mới đề xuất, thuật
toán ký được phát triển trên cơ sở các hệ mật được đánh giá có độ an toàn cao
và hiện đang được sử dụng rộng rãi trong thực tế
Có 2 dạng thuật toán ký được đề xuất trong Luận án, dạng thứ nhất được
xây dựng trên cơ sở bài toán khai căn trên vành số nguyên Zn=p.q, với {p, q} là
các số nguyên tố phân biệt Đây là một dạng thuật toán chữ ký số được xây
dựng mới về nguyên tắc so với các dạng thuật toán đã được biết trong thực tế Dạng thuật toán thứ hai được xây dựng trên cơ sở bài toán logarit rời rạc trong trường hữu hạn nguyên tố Fp theo cùng nguyên tắc với các thuật toán
chữ ký số họ ElGamal như: DSA, GOST R34.10-94,
Thông điệp dữ liệu cần ký (M )
Khóa bí mật của thực thể ký (x 1 ,x2,…,x n)
Trang 25Trong mô hình chữ ký tập thể dạng phân biệt, chứng nhận của CA được tạo ra từ khóa bí mật của CA, thông điệp dữ liệu được ký và khóa công khai của thực thể ký (một hay một nhóm các đối tượng ký)
Cơ chế hình thành chứng nhận của CA được chỉ ra trên Hình 1.7
Ở các lược đồ chữ ký tập thể mới đề xuất, chứng nhận của CA về việc một hay một nhóm đối tượng ký lên một thông điệp dữ liệu được thực hiện qua
các bước:
- Kiểm tra tính hợp pháp của các đối tượng ký
- Kiểm tra tính hợp lệ của chữ ký cá nhân
- CA ký lên bản tin được tạo ra từ thông điệp dữ liệu cần ký và khóa công khai của các đối tượng ký
Bằng cách đó, các lược đồ chữ ký tập thể mới đề xuất có khả năng ngăn
chặn hiệu quả các dạng tấn công tập thể từ bên trong hệ thống do các đối
Thông điệp dữ liệu cần ký (M)
Chứng nhận của CA S
CA = f(M; y1, ,yn; x
CA)
Trang 26tượng ký là thành viên của chính tổ chức đó gây ra
Kiểm tra tính hợp lệ của chữ ký tập thể được thực hiện qua các bước:
- Kiểm tra tính hợp pháp của các đối tượng ký
- Kiểm tra chứng nhận của CA
- Kiểm tra tính hợp lệ của chữ ký cá nhân
Bước đầu tiên trong các bước kiểm tra tính hợp lệ của chữ ký tập thể là kiểm tra tính hợp pháp của đối tượng ký Kiểm tra tính hợp pháp của đối tượng ký thực chất là kiểm tra tính hợp lệ của chứng chỉ khóa công khai đã cấp cho đối tượng đó, nhằm đảm bảo đối tượng ký là thành viên của tổ chức
Cơ chế kiểm tra tính hợp pháp của đối tượng ký được chỉ ra trên Hình 1.4
Cơ chế kiểm tra chứng nhận của CA về việc một hay một nhóm đối tượng
ký lên một thông điệp dữ liệu được chỉ ra trên Hình 1.8, kết quả kiểm tra là cơ
sở để khẳng định thông điệp dữ được ký bởi các đối tượng là thành viên của
tổ chức và tính toàn vẹn của thông điệp dữ liệu được đảm bảo
Thông điệp dữ liệu cần thẩm tra (M)
Khóa công khai của
thực thể ký
(y1, y2,…,yn)
Công nhận/Từ chối
Hình 1.8 Cơ chế kiểm tra chứng nhận của CA
Thuật toán kiểm tra
Trang 27Cơ chế kiểm tra chữ ký cá nhân được chỉ ra trên Hình 1.9 Kiểm tra chữ ký
cá nhân cần phải được thực hiện sau khi kiểm tra chứng nhận của CA, nếu
chứng nhận của CA và chữ ký cá nhân được công nhận hợp lệ thì tính toàn
vẹn của thông điệp dữ liệu cần thẩm tra được bảo đảm, đồng thời khẳng định
thông điệp dữ liệu này được ký bởi các đối tượng đã được CA chứng nhận là
thành viên của tổ chức
Ở các lược đồ chữ ký tập thể mới đề xuất, thuật toán kiểm tra chữ ký cá nhân cũng là một bộ phận quan trọng của thuật toán hình thành chữ ký tập thể Trong cơ chế hình thành chữ ký tập thể, thuật toán kiểm tra chữ ký cá nhân được sử dụng để ngăn chặn các hành vi giả mạo chữ ký cá nhân của các đối tượng ký.
Thông điệp dữ liệu cần thẩm tra (M)
Khóa công khai của thực thể ký (y1,…yn)
Trang 281.4 Kết luận Chương 1
Các kết quả đã đạt được ở Chương 1 bao gồm:
- Thống nhất một số khái niệm và thuật ngữ liên quan được sử dụng trong Luận án
- Đề xuất mô hình ứng dụng chữ ký số có thể áp dụng cho các tổ chức xã hội như: các cơ quan hành chính nhà nước, các doanh nghiệp, nhằm bảo đảm việc chứng thực cho các thông điệp dữ liệu trong các giao dịch điện tử (Chính phủ điện tử, Thương mại điện tử, ) phù hợp với việc chứng thực các văn bản, tài liệu, trong các thủ tục hành chính thực tế hiện nay
Trang 29CHƯƠNG 2 XÂY DỰNG LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ DỰA TRÊN
HỆ MẬT RSA
Nội dung Chương 2 đề xuất xây dựng lược đồ chữ ký số dựa trên hệ mật
RSA theo mô hình chữ ký tập thể đã được trình bày trong Chương 1
2.1 Cơ sở toán học
2.1.1 Bài toán khai căn trên vành số nguyên Zn
Cho cặp các số nguyên dương {n,t} với n là tích của hai số nguyên tố p và
q, còn t được chọn trong khoảng: 1 < t < (p1).(q1) Khi này bài toán khai căn trên vành số nguyên Zn hay còn gọi là bài toán RSA(n,t) được phát biểu như sau:
Bài toán RSA (n,t): Với mỗi số nguyên dương y ℤn
*
, hãy tìm x thỏa mãn phương trình sau:
Thuật toán để giải bài toán RSA(n,t) có thể được viết như một thuật toán
tính hàm RSA(n,t)(.) với biến đầu vào là y còn giá trị hàm là nghiệm x của
phương trình (2.1):
x = RSA(n,t)(y)
Trong một hệ thống giao dịch điện tử với dịch vụ chứng thực số dùng
chung bộ tham số {n,t}, bài toán RSA(n,t) là khó theo nghĩa không thể thực hiện được trong thời gian thực Ở đó, mỗi thành viên U của hệ thống tự chọn cho mình khóa bí mật x thỏa mãn: 1 < x < n, tính và công khai tham số:
y = xt mod n (2.2)
Trang 30Chú ý:
(i) Mặc dù bài toán RSA(n,t) là khó, tuy nhiên không phải với mọi yℤn*
thì việc tính RSA(n,t)(y) đều khó, chẳng hạn những y = xt mod n với x không
đủ lớn thì bằng cách duyệt dần x = 1, 2, cho đến khi tìm được nghiệm của
(2.2) ta sẽ tìm được khóa bí mật x, do đó các tham số mật x phải được lựa
chọn sao cho việc tính RSA(n,t)(y) đều khó
(ii) Với lựa chọn x nêu trên thì rõ ràng không có ai ngoài U biết được giá trị x, vì vậy việc biết được x đủ để xác thực đó là U
2.1.2 Hệ mật RSA
Hệ mật RSA là hệ mật khóa công khai đầu tiên được đề xuất và công bố bởi Ron Rivest, Adi Shamir và Len Adleman [23] vào năm 1977 tại Viện Công nghệ Massachusetts Hoa Kỳ Hệ mật này được xây dựng dựa trên tính khó giải của các bài toán phân tích một số nguyên lớn ra các thừa số nguyên
tố, bài toán logarit rời rạc trong modulo hợp số và bài toán RSA(n,t) trên đây,
nó bao gồm một thuật toán mật mã khóa công khai và một thuật toán chữ ký
số mà việc thực hiện một trong 2 thuật toán này chỉ là sự hoán đổi vai trò của khóa công khai hay khóa bí mật Hiện tại, hệ mật RSA vẫn đang được sử dụng phổ biến trong các giao dịch điện tử (Chính phủ điện tử, Thương mại điện tử, ) do tính khả thi và hiệu quả thực hiện cao, nó được đánh giá là an toàn khi các tham số {p,q} được lựa chọn hợp lý [14],[16],[17],[19] Trên thực tế, chưa có phương pháp tấn công hiệu quả nào phá vỡ được hệ mật này [3],[13],[15],[31] Như vậy, có thể coi hệ mật RSA là một đánh giá thực tế
cho tính khó giải của bài toán RSA(n,t) nêu trên
2.2 Xây dựng lƣợc đồ cơ sở
Lược đồ cơ sở ở đây xây dựng trên bài toán RSA(n,t) và được sử dụng để
phát triển các lược đồ chữ ký tập thể theo mô hình đề xuất ở Chương 1
Trang 312.2.1 Lược đồ cơ sở dạng tổng quát
Lược đồ cơ sở dạng tổng quát bao gồm các phương pháp hình thành các
tham số hệ thống và khóa, phương pháp hình thành chữ ký và phương pháp
kiểm tra tính hợp lệ của chữ ký Từ dạng tổng quát này, bằng cách lựa chọn các tham số cụ thể sẽ cho phép tạo ra các lược đồ cơ sở phù hợp cho việc xây
(i) p, q: các số nguyên tố phân biệt
(ii) x: khóa bí mật có giá trị trong khoảng: 1 < x < n
(iii) t: số mũ có giá trị trong khoảng: 1 < t < (p - 1).(q - 1)
Phương pháp hình thành chữ ký
Dữ liệu vào: n, t, x, k, M – thông điệp dữ liệu cần ký
Kết quả: (r,s) – chữ ký của U lên M
Trang 32Kết quả: Khẳng định (r,s) là chữ ký hợp lệ ((r,s) = true) hay (r,s) là giả
mạo và/hoặc M không còn toàn vẹn ((r,s) = false)
Lược đồ cơ sở - ký hiệu LD 1.01, được hình thành từ lược đồ dạng tổng
quát với lựa chọn: f1(M,r) = 1, f2(M,r) = H(r||M))
2.2.2.1 Thuật toán hình thành tham số và khóa
Thuật toán 1.1: Hình thành tham số và khóa
Trang 332.2.2.2 Thuật toán hình thành và kiểm tra chữ ký
[3] s ← k xe
mod n; (2.6) [4] return (e,s);
Thuật toán 1.3: Kiểm tra chữ ký
Input: n, t, y, H(.), M, (e,s)
Output: (e,s) = true / false
[1] u ← st
ye mod n ; (2.7) [2] v ← H(u||M); (2.8)
[3] if (v = e) then {return true;}
else {return false;}
2.2.2.3 Tính đúng đắn của lược đồ cơ sở LD 1.01
Trang 34v = H(r||M) (2.12)
Từ (2.5) và (2.12) suy ra:
v = e
Đây là điều cần chứng minh
2.2.2.4 Mức độ an toàn của lược đồ cơ sở LD 1.01
Mức độ an toàn của một lược đồ chữ ký số được đánh giá qua các khả
năng sau:
- Chống tấn công làm lộ khóa mật
- Chống tấn công giả mạo chữ ký
Đánh giá mức độ an toàn của lược đồ cơ sở LD 1.01 qua một số phương
pháp tấn công làm lộ khóa mật và tấn công giả mạo chữ ký, từ đó thiết lập
một số điều kiện an toàn cho lược đồ như sau:
Trang 35a) Tấn công khóa mật bằng phương pháp “vét cạn”
Nhận xét: Nếu giá trị của x không đủ lớn thì việc tấn công làm lộ khóa
mật bằng Thuật toán 1.4 là hoàn toàn có thể thực hiện được
Điều kiện 1.1: Khóa bí mật x phải được chọn để việc tính: x = RSA (n,t) (y)
là khó
b) Tấn công khóa mật khi giá trị của k bị lộ
Thuật toán 1.5:
Input: n, t, (e,s), k, gcd(k,n) = 1, gcd (e, –t) = 1
Output: x – khóa bí mật của đối tượng ký
[1] w ← s k-1 mod n;
[2] Euclid (e,t; a,b): a.e + b.( –t) = 1 ; (2.13) [3] x ← wa yb mod n;
[4] return (x);
Chú thích: Euclid (e,t; a,b) là thuật toán Euclid mở rộng [18] để giải
phương trình (2.13): a.e + b.( –t) = 1 với e, t cho trước và a, b là nghiệm
Trang 36Điều kiện 1.2b: Giá trị của k cần chọn thỏa mãn: gcd(k,n) ≠ 1
c) Tấn công khóa mật khi giá trị của k bị sử dụng lặp lại
Nhận xét: Khi giá trị của k bị sử dụng lại thì việc tấn công làm lộ khóa mật
bằng Thuật toán 1.6 là hoàn toàn có thể thực hiện được
Điều kiện 1.3: Giá trị của k không được phép lặp lại ở các lần ký khác
nhau
Trang 37d) Tấn công giả mạo chữ ký khi lựa chọn tham số t không hợp lý
cho kết quả là một giá trị nguyên thì việc tính s* theo
(2.14) và do đó việc tạo chữ ký giả mạo (e*,s*) bằng Thuật toán 1.7 là hoàn
toàn có thể thực hiện được
Trang 38việc tạo cặp chữ ký giả mạo (e*,s*) bằng Thuật toán 1.8 là có thể thực hiện
Điều kiện 1.5: Cần chọn {p,q} để bài toán phân tích một số nguyên lớn ra
các thừa số nguyên tố là khó giải
Trong ứng dụng thực tế, các tham số {p,q} có thể chọn theo Chuẩn X9.31 hay FIPS 186-3 [19] của Hoa Kỳ cho hệ mật RSA như sau:
- Các ước nguyên tố của p±1 và q±1 (các số nguyên tố bổ trợ), ký
hiệu là: p1, p2 và: q1, q2 phải thỏa mãn các thông số kỹ thuật được
cho trong Bảng 2.1 dưới đây:
Bảng 2.1: Tiêu chuẩn an toàn đối với các số nguyên tố bổ trợ
nlen Độ dài tối thiểu của p 1 ,
- Các ước nguyên tố của p±1 và q±1 (các số nguyên tố bổ trợ), ký
hiệu là: p1, p2 và: q1, q2 phải thỏa mãn các thông số kỹ thuật được
Trang 39cho trong Bảng 2.2 dưới đây:
Bảng 2.2: Tiêu chuẩn an toàn đối với các số nguyên tố bổ trợ
Độ dài của
modulo n
(nlen)
Độ dài tối thiểu của p 1 ,
p 2 , q 1 , q 2
Độ dài tối đa của len(p 1 ) + len(p 2 )
và len(q 1 ) + len(q 2 ) Các số nguyên tố
xác xuất
Các số nguyên tố chứng minh được
1024 bit > 100 bit < 496 bit < 239 bit
2048 bit > 140 bit < 1007 bit < 494 bit
3072 bit > 170 bit < 1518 bit < 750 bit
Những phân tích trên đây cho thấy, mức độ an toàn của lược đồ mới đề xuất phụ thuộc vào mức độ khó của 2 bài toán: Bài toán phân tích số nguyên lớn ra các thừa số nguyên tố và Bài toán khai căn trên vành số nguyên Zn Lược đồ sẽ an toàn trước các dạng tấn công làm lộ khóa mật và tấn công giả
mạo chữ ký nếu tuân thủ các điều kiện an toàn đã được chỉ ra
2.3 Xây dựng lƣợc đồ chữ ký số tập thể
Hai lược đồ chữ ký số tập thể được đề xuất ở đây cho phép một hay một
nhóm đối tượng ký lên một thông điệp dữ liệu với tư cách thành viên của một
tổ chức Điểm khác nhau giữa hai lược đồ là việc qui định thứ tự ký của các thành viên trong quá trình hình thành chữ ký tập thể
2.3.1 Lược đồ chữ ký tập thể LD 1.02
Lược đồ chữ ký tập thể, ký hiệu: LD 1.02 được phát triển từ lược đồ chữ
ký cơ sở LD 1.01 với các chức năng:
- Chứng nhận và kiểm tra tính hợp pháp của các đối tượng ký
- Hình thành chữ ký tập thể từ chữ ký cá nhân của một hay một nhóm đối tượng ký và chữ ký của CA Kích thước của chữ ký không phụ thuộc vào số
Trang 40lượng thành viên nhóm ký
- Kiểm tra chữ ký tập thể của một nhóm đối tượng được thực hiện tương
tự như chữ ký do một đối tượng ký tạo ra
2.3.1.1 Thuật toán hình thành các tham số hệ thống và khóa
Giả sử nhóm ký gồm m-thành viên: U = {Ui| i=1,2, ,m} Các thành viên
nhóm ký có khóa bí mật là: KS = {xi| i=1,2, ,m} và các khóa công khai tương