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ô
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
LƯƠNG CHÍ CHÂU
CHỮ KÝ SỐ TẬP THỂ ỨNG DỤNG TRONG CHỨNG THỰC TÀI LIỆU CHO CHÍNH PHỦ ĐIỆN TỬ
LUẬN VĂN KHOA HỌC MÁY TÍNH
Trang 3
LƯƠNG CHÍ CHÂU
CHỮ KÝ SỐ TẬP THỂ ỨNG DỤNG TRONG
CHỨNG THỰC TÀI LIỆU CHO CHÍNH PHỦ ĐIỆN TỬ
Chuyên ngành : KHOA HỌC MÁY TÍNH
Mã số: 60 48 01 01
LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN VĂN TẢO
THÁI NGUYÊN - 2014
Trang 4MỤC LỤC
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 6
1.1 Một số khái niệm và thuật ngữ liên quan 6
1.1.1 Một số khái niệm 6
1.1.2 Các thuật ngữ liên quan 8
1.2 An toàn thông tin trong các hệ thống truyền tin 10
1.2.1 Các hệ thống truyền tin và một số vấn đề về an toàn thông tin 10
1.2.2 Giải pháp an toàn thông tin trong các hệ thống truyền tin 11
1.3 Hướng nghiên cứu của đề tài luận văn 12
1.3.1 Đặt vấn đề 12
1.3.2 Mô hình chữ ký số tập thể 13
1.3.3 Lược đồ chữ ký số tập thể 2 5 CHƯƠNG 2 MỘT SỐ CÁC LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ DỰA TRÊN HỆ MẬT RSA 30
2.1 Hệ mật RSA 30
2.1.1 Thuật toán hình thành khóa 30
2.1.2 Thuật toán mật mã khóa công khai RSA 31
2.1.3 Thuật toán chữ ký số RSA 31
2.1.4 Cơ sở xây dựng hệ mật RSA 32
2.2 Lược đồ cơ sở dựa trên hệ mật RSA 33
2.2.1 Lược đồ cơ sở - LD 1.01 33
2.2.2 Tính đúng đắn của lược đồ cơ sở LD 1.01 35
2.2.3 Mức độ an toàn của lược đồ cơ sở LD 1.01 36
2.3 Lược đồ chữ ký số tập thể 38
2.3.1 Lược đồ chữ ký số đơn - LD 1.02 38
Trang 52.3.2 Lược đồ đa chữ ký song song - LD 1.03 47
2.3.3 Lược đồ đa chữ ký nối tiếp - LD 1.04 53
CHƯƠNG 3 THỬ NGHIỆM CHỮ KÝ SỐ TẬP THỂ CHO FILE PDF 62
3.1 Mô hình hệ thống chữ ký số tập thể 62
3.2 Quy trình thực hiện 65
3.3 Kết quả thử nghiệm 67
KẾT LUẬN 72
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
IDi Thông tin nhận dạng thực thể cuối Ui
Các chữ viết tắt
Standardization
Trang 7RSA Rivest Shamir Adleman
DANH MỤC CÁC HÌNH VẼ
Hình 1.3 Mô hình chữ ký số tập thể với cấu trúc cơ bản 14 Hình 1.4 Mô hình chữ ký số tập thể với cấu trúc phân cấp 15 Hình 1.5 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 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, trong đó có Việt Nam, thì chứng thực số 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) với nền tảng là mật mã khoá công khai (PKC1 - Public Key Cryptography) và chữ ký số (Digital Signature)
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 các mô hình ứng dụng chữ ký số hiện tại Trong khi đó, các yêu cầu như
Trang 9thế 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 văn là nghiên cứu một số lược đồ chữ ký số theo mô hình ứng dụng đề 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 vă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ế đó, học viên đã chọn đề tài “Chữ ký số tập thể ứng
dụng trong chứng thực tài liệu cho chính phủ điện tử” 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 Trong luận văn giới thiệu mô hình ứng dụng chữ ký số nhằm đáp ứng các yêu cầu về chứng thực các thong điệp dữ liệu trong các giao dịch điện tử, có thể áp dụng phù hợp trong các tổ chức xã hội, cơ quan hành chính nhà nước Tìm hiểu và ứng dụng 4 lược đồ chữ ký số, trong đó có lược đồ cơ sở được
Trang 10phát triển từ các hệ mật RSA và 3 lược đồ chữ ký số tập thể
Trên cơ sở tìm hiểu các lược đồ chữ ký số tập thể ở trên, xây dựng hệ thống thử nghiệp mô hình ký tập thể trong trao đổi file PDF
2 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của Luận vă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ố
- 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 văn bao gồm:
- Hệ mật khóa công khai RSA và các cơ sở toán học liên quan
- Phương pháp mã hóa và giải mã, phương pháp hình thành và kiểm tra chữ
ký số, chữ ký số tập thể
3 Mục tiêu nghiên cứu
Mục tiêu nghiên cứu của Luận vă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 ứng dụng một số lược đồ chữ ký số tập thể đã đề xuất
4 Phương pháp nghiên cứu
- Tìm hiểu lược đồ cơ sở dựa trên các hệ mật và các chuẩn chữ ký số được đánh giá có độ an toàn cao, sử dụng các lược đồ này làm cơ sở để xây dựng các lược đồ chữ ký số tập thể
- Tìm hiểu một số lược đồ chữ ký tập thể theo mô hình ứng dụng đề 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 văn bao gồm:
Trang 11- Hệ mật RSA
- Lược đồ cơ sở dựa trên hệ mật RSA
- Một số lược đồ chữ ký số dựa trên lược đồ cơ sở theo mô hình ứng dụng
đề xuất
6 Ý nghĩa khoa học và thực tiễn
- Mô hình chữ ký số tập thể được đề xuất trên cơ sở 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, trong các thủ tục hành chính ở các
tổ chức, cơ quan, các doanh nghiệp, khi triển khai một Chính phủ điện tử trong thực tế xã hội
- Các lược đồ chữ ký tập thể được đề xuất ở đây có tính ứng dụng thực tế và khả thi
7 Bố cục của luận văn
Luận văn bao gồm 3 chương cùng với các phần Mở đầu và Kết luậ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 văn Định hướng nghiên cứu của đề tài Luận văn Đề xuất mô hình ứng dụng chữ ký số phù hợp cho các yêu cầu thực tế đặt ra
Chương 2: Một số lược đồ chữ ký số tập thể dựa trên hệ mật RSA
Trình bày tổng quan về hệ mật RSA: phương pháp hình thành khóa, phương pháp mã hóa và giải mã thông tin, phương pháp hình thành và kiểm tra chữ ký, phân tích cơ sở xây dựng, mức độ an toàn của hệ mật RSA, từ đó
đề xuất lược đồ chữ ký số làm cơ sở để xây dựng và phát triển các lược đồ chữ ký số tập thể Giới thiệu 3 lược đồ chữ ký số tập thể theo mô hình chữ ký
số đã được đề xuất ở Chương 1
Trang 12Chương 3: Thử nghiệm chữ ký số tập thể cho file PDF
Trên cơ sở tìm hiểu các lược đồ chữ ký số tập thể ở 2 chương trước, xây dụng hệ thống thử nghiệm mô hình chữ ký tập thể trong trao đổi file PDF
Trang 13CHƯƠ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 cho các lược đồ chữ ký số phù hợp với thực tế Mô hình này sẽ được sử dụng để phát triển các lược đồ chữ ký số trong các chương tiếp theo của Luận văn 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 vă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 vă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 k K có một quy tắc mã hóa e k E và một quy tắc giải mã tương ứng d k D, mỗi e k :P C và d k :C P thỏa mãn: d k(e k(x)) x
với x P ( 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 kp E và một quy
Trang 14tắc giải mã tương ứng d ks D, mỗi e kp:P C và d ks :C P thỏa mãn:
x x e
d ks( kp( )) với x P ( 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 k K tồn tại một thuật toán ký sig k A và một thuật toán xác minh ver k V tương ứng, mỗi sig k:M S và ver k:M S {true, false}
là những hàm sao cho với mỗi m M và s S thoả mãn phương trình sau:
) ( ,
) ( ,
) , (
m sig s false
m sig s true m
s ver
k
k k
Trang 15Đị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 m H (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 (đố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 16Đị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 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 17phươ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 18Đứ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 19Trong hệ thống truyền tin an toàn, 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 văn tập trung chủ yếu trong phạm vi các vấn đề về xác thực thông tin và chữ ký số có sự kết hợp với các vấn đề về
mật mã và bảo mật thông tin
1.3 Hướng nghiên cứu của đề tài Luận văn
1.3.1 Đặt vấn đề
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 đó Trong trường hợp này, thông tin không chỉ có nguồn gốc từ thực thể (ký) tạo ra nó,
mà còn có nguồn gốc từ tổ chức mà ở đó thực thể ký là một thành viên hay bộ phận của tổ chức này 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
Trang 20ứng dụng chữ ký số hiện tại chủ yếu mới chỉ đảm bảo 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ế hiện tại vẫn chưa được đặt ra Có thể là, một yêu cầu như vậy chưa thực sự cần thiết được đặt ra cho các mô hình ứng dụng chữ ký số ở 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 vă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 và giới thiệu các lược đồ chữ ký số theo mô hình
đề xuất nhằm đáp ứng tốt các yêu cầu mà thực tiễn đặt ra
1.3.2 Mô hình chữ ký số tập thể
Mô hình chữ ký số tập thể được đề xuất có cấu trúc cơ bản của một PKI truyền thống với thiết kế bổ sung nhằm bảo đảm đồng thời các chức năng về
chứng thực số cho một tổ chức (đơn vị hành chính, hệ thống kỹ thuật, ) với
các hỗ trợ về an toàn bảo mật thông tin và khả năng liên kết các tổ chức với nhau trong các dịch vụ chứng thực số Mô hình chữ ký số tập thể có cấu trúc
cơ bản được chỉ ra như Hình 1.3 Trong mô hình này, thực thể ký là 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 Ngoài ra, các thực thể ký có thể hợp tác với nhau để hình thành các nhóm ký trong trường hợp một thông điệp dữ liệu cần được ký bởi một số thành viên của tổ chức đó Cũng trong mô hình này, cơ quan quản lý là bộ phận chức năng có nhiệm vụ 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 chữ ký số cá nhân của một thực thể hay đa chữ ký của một nhóm ký trong việc hình thành chữ ký tập thể
Trang 21Mô hình trên có thể mở rộng với cấu trúc phân cấp - gọi là mô hình chữ ký
số tập thể phân cấp, được chỉ ra trên Hình 1.4 Mô hình này tương ứng với
cấu trúc phân cấp cơ quan quản lý, bao gồm một cơ quan quản lý cao nhất và
các cơ quan quản lý cấp dưới Cơ quan quản lý cao nhất xác thực cho các cơ
quan quản lý cấp dưới, đến lượt các cơ quan quản lý cấp dưới lại xác thực cho
các thực thể cuối và cơ quan quản lý cấp thấp hơn Như vậy, trong mô hình
này một cơ quan quản lý vừa trực tiếp quản lý các thực thể cuối trong việc
hình thành chữ ký số tập thể, vừa quản lý các cơ quan cấp dưới nó
Cơ quan quản lý (CA, RA, )
CA: Cơ quan chứng thực y i : Khóa công khai của U i
U i : Thực thể/Đối tượng ký G j : Nhóm đối tượng cùng hợp tác để tạo đa chữ ký
x i : Khóa bí mật của U i Y j : Khóa công khai của G j
U i (x i ,y i )
Trang 22
1.3.2.1 Các thành phần chức năng của hệ thống
Một hệ thống cung cấp dịch vụ chứng thực số cho một tổ chức (đơn vị
hành chính, hệ thống kỹ thuật, ) theo mô hình chữ ký tập thể bao gồm các
thành phần chức năng cơ bản như sau:
Cơ quan quản lý cao nhất (Root CA, RA, )
Cơ quan quản lý cấp dưới (CA 1 , ) Cơ quan quản lý cấp dưới (CA i, )
Hình 1.4 Mô hình chữ ký số tập thể với cấu trúc phân cấp
Ký hiệu:
Root CA: Cơ quan chứng thực cao nhất CA i : Cơ quan chứng thực bộ phận thứ i
U ij : Đối tượng ký do CA i quản lý G ij : Nhóm đối tượng do CA i quản lý
x ij : Khóa bí mật của U ij Y ij : Khóa công khai của G ij
y ij : Khóa công khai của U ij
U 1j (x 1j ,y 1j )
U ij (x ij ,y ij )
Trang 23Cơ quan chứng thực - CA (Certification Authority)
Trong mô hình đề xuấ t, mộ t CA là mộ t thự c thể có trách nhiệ m cấ p chứ ng chỉ khóa công khai (PKC - Public Key Certificate) cho các thự c thể khác (các CA cấ p thấ p hơ n trong mô hình phân cấ p, các thự c thể cuố i, ) trong hệ thố ng, tư ơ ng tự như vai trò củ a mộ t CA trong mô hình PKI truyề n thố ng Điể m khác là, trong mô hình này CA còn có nhiệ m vụ 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à mộ t bộ phậ n có chứ c năng củ a mộ t 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ể 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:
Trang 24- 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 thự c thể là thành viên củ a tổ chứ c bằ ng việ c phát hành Chứ ng chỉ
khóa công khai (PKC) 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, dư ớ i dạ ng mộ t Thông báo chứ ng chỉ
bị thu hồ i (CRL - Certificate Revocation List)
- 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
Trung tâm đăng ký – RA (Registration Authority)
Ngoài chứ c năng củ a mộ t RA trong mô hình PKI truyề n
thố ng, ở mô hình đề xuấ t RA còn có nhiệ m vụ hỗ trợ CA
trong việc hình thành chữ ký tập thể để chứng thực các thông điệp dữ liệu
Nhìn chung, RA đả m nhiệ m việ c giao tiế p vớ i thự c thể cuố i trong các quá trình đăng ký, phân phố i và quả n lý vòng
đờ i chứ ng chỉ khoá công khai cũng như việ c hình thành và công khai chữ ký tậ p thể
Hệ thống lưu trữ (Repository)
Hệ thố ng lư u trữ là mộ t phư ơ ng tiệ n phân phố i Chứ ng chỉ khóa công khai và Thông báo chứ ng chỉ bị thu
hồ i đế n các thự c thể cuố i và nhữ ng ngư ờ i sử dụ ng
Trang 25khác Trong mô hình đề xuấ t, nó còn có chứ c năng lư u trữ các thông điệ p dữ liệ u cùng vớ i chữ ký số tậ p thể
tư ơ ng ứ ng cầ n đư ợ c công khai hay thông báo vớ i nhữ ng ngư ờ i sử dụ ng Mộ t hệ thố ng lư u trữ thự c chấ t là
mộ t hệ cơ sở dữ liệ u cho phép ngư ờ i sử dụ ng truy
cậ p thuậ n tiệ n Trên thự c tế , Hệ thố ng lư u trữ đư ợ c
sử dụ ng có thể là mộ t hệ thố ng thư mụ c trự c tuyế n công cộ ng theo chuẩ n X.500 đư ợ c phát triể n và chuẩ n hóa
bở i Liên hiệ p Viễ n thông Quố c tế - ITU (Internet Telecommumications Union) và Tổ chứ c Tiêu chuẩ n Quố c tế - ISO (International Organization for Standardization), hay hệ thố ng thư mụ c công cộ ng vớ i giao thứ c truy cậ p Internet
tư ơ ng thích vớ i mô hình X.500 như LDAP (Lightweight Directory Access Protocol)
Thực thể cuối – EE ( End Entity)
Ở mô hình đề xuấ t, thuậ t ngữ thự c thể cuố i hay thự c
thể ký đư ợ c sử dụ ng để chỉ các đố i tư ợ ng ký là thành viên củ a mộ t tổ chứ c (đơ n vị hành chính, hệ thố ng kỹ thuậ t, ) có thể là: con ngư ờ i, thiế t bị kỹ thuậ t, nhằ m phân biệ t vớ i mộ t đố i tư ợ ng ký khác là CA có chứ c năng củ a mộ t cơ quan chuyên trách về quả n lý và thự c
hiệ n các hoạ t độ ng chứ ng thự c số thuộ c tổ chứ c này
1.3.2.2 Hoạt động của hệ thống
Một hệ thống cung cấp dịch vụ chứng thực số xây dựng theo mô hình đề
Trang 26xuất sẽ bao gồm các hoạt động cơ bản như sau:
a) Phát hành, quản lý và thu hồi 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
Thời gian lưu hành hợp lệ
Trang 27công khai hay kiể m tra tính hợ p pháp đố i vớ i 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.6 như sau:
Khóa công khai của CA
Hình 1.6 Cơ chế kiể m tra tính hợ p lệ củ a
mộ t Chứ ng chỉ khóa công khai Chữ ký số của CA
Thời gian lưu hành hợp
lệ
Số hiệu của chứng chỉ
Công nhận/Từ chối Thuật toán kiểm
tra
Trang 28Thông báo chứ ng chỉ bị thu hồ i đư ợ c mộ t tổ chứ c sử
dụ ng khi mộ t đố i tư ợ ng không đư ợ c phép ký vớ i tư cách
là mộ t thành viên củ a tổ chứ c đó nữ a Cấ u trúc và cơ chế hình thành củ a mộ t Thông báo chứ ng chỉ bị thu hồ i
đư ợ c chỉ ra trên Hình 1.7
Trang 29Trong thự c tế , có thể sử dụ ng khuôn dạ ng chứ ng chỉ X.509 cho các Chứ ng chỉ khóa công khai và Thông báo chứ ng
chỉ bị thu hồ i trong mô hình đề xuấ t
Trang 30Chữ ký tập thể được hình thành trên cơ sở chữ ký cá nhân của thực thể ký
và chữ ký 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ơ chế hình thành chữ ký số tậ p thể đư ợ c chỉ ra trên Hình 1.8
Chữ ký cá nhân của thực thể ký hình thành theo cơ chế được chỉ ra trên Hình 1.9 như sau:
Trang 31Trong mô hình đề xuất, CA có thể hình thành chữ ký của mình bằng cách
ký lên chữ ký cá nhân của các thực thể ký hoặc ký trực tiếp lên thông điệp dữ liệu tương tự như các thực thể ký, phương pháp thứ hai được sử dụng trong các lược đồ chữ ký tập thể được đề xuất của Luận văn Cơ chế hình thành chữ
ký của CA được chỉ ra trên Hình 1.10, ở đây Thuật toán hình thành chữ ký cá
nhân cũng được sử dụng để hình thành chữ ký của CA tương tự như trong cơ
Trang 32Trước khi CA chứng thực về nguồn gốc và tính toàn vẹn của thông điệp
dữ liệu cần ký, cần thiết phải có sự kiểm tra về tính hợp lệ của chữ ký cá nhân
để tránh sự giả mạo thực thể ký và thông điệp dữ liệu cần ký, việc kiểm tra này có thể được thực hiện bởi vai trò của RA hoặc CA
Cơ chế kiểm tra tính hợp lệ của chữ ký cá nhân của thực thể ký được chỉ ra trên Hình 1.11 như sau:
Thông điệp dữ liệu cần ký Khóa bí mật của CA
Chữ ký của CA
Hình 1.10 Cơ chế hình thành chữ ký của CA
Thuật toán hình thành chữ ký cá nhân
Trang 33Người sử dụng có thể kiểm tra tính hợp lệ của chữ ký tập thể, từ đó xác định được nguồn gốc và tính toàn vẹn của thông điệp dữ liệu cần thẩm tra ở
cả 2 cấp độ: tổ chức và cá nhân thực thể ký là thành viên của tổ chức đó, theo
cơ chế được chỉ ra trên Hình 1.12 như sau:
Hình 1.11 Cơ chế kiểm tra tính hợp lệ của chữ ký cá nhân
Thuật toán kiểm tra chữ ký
cá nhân Chữ ký cá nhân
Trang 341.3.3 Lƣợc đồ chữ ký số tập thể
Một lược đồ chữ ký số xây dựng theo mô hình đề xuất bao gồm các thành phần cơ bản như sau:
- Thuật toán hình thành các tham số hệ thống và khóa
- Thuật toán chứng nhận và kiểm tra tính hợp pháp của đối tượng ký
- Thuật toán hình thành và kiểm tra chữ ký cá nhân
- Thuật toán hình thành và kiểm tra chữ ký tập thể
- Thuật toán mã hóa và giải mã thông tin
Hình 1.12 Cơ chế kiểm tra tính hợp lệ của chữ ký tập thể
Thuật toán kiểm tra chữ ký
tập thể Chữ ký tập thể
Trang 35Ở đây, thuật toán mã hóa và giải mã thông tin không phải là yêu cầu bắt buộc đối với các lược đồ chữ ký tập thể Nó chỉ cần thiết trong các ứng dụng
thực tế, mà ở đó vấn đề bảo mật cho các thông điệp dữ liệu được đặt ra
a) Thuật toán hình thành các tham số hệ thống và khóa
Yêu cầu đặt ra cho thuật toán hình thành các tham số hệ thống và khóa là tạo ra cặp khóa công khai/ bí mật cho thực thể ký, sao cho việc tính khóa bí mật từ khóa công khai là khó thực hiện Trên thực tế, các thuật toán hình thành cặp khóa thường sử dụng các hàm một chiều xây dựa trên tính khó giải của các bài toán như 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, để khi tính khóa công khai từ khóa bí mật thì hoàn toàn có thể thực hiện một cách dễ dàng, nhưng khi tính khóa bí mật từ khóa công khai thì lại gặp phải bài toán khó giải
b) Thuật toán chứng nhận đối tượng ký
Việc chứng nhận một đối tượng là thành viên của tổ chức thực chất là việc
CA thuộc tổ chức này cấp Chứng chỉ khóa công khai cho đối tượng đó Như vậy, thuật toán chứng nhận đối tượng ký sẽ cho kết quả là chữ ký của CA từ
dữ liệu đầu vào là 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ể, Thời gian hiệu lực, Số hiệu chứng chỉ, Thông tin nhận dạng của CA, tùy thuộc vào định dạng của PKC được sử dụng Không làm mất tính tổng quát, trong Luận vă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 nói trên
c) Thuật toán 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ý 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, nhằm
Trang 36khẳng định nguồn gốc và tính toàn vẹn của khóa công khai của đối tượng ký
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ỉ
d) Thuật toán hình thành chữ ký tập thể
Trong mô hình đề xuất, chữ ký tập thể được hình thành từ thông điệp dữ liệu cần ký, chữ ký cá nhân của đối tượng ký và chữ ký của CA thuộc tổ chức
mà đối tượng ký là một thành viên của nó, các thành phần trên cũng chính là
dữ liệu đầu vào của thuật toán Chữ ký số tập thể là kết quả đầu ra của thuật toán có thể có 2 dạng như sau:
- 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
- Chữ ký tập thể dạng kết hợp: ở dạng này chữ ký tập thể bao hàm bên
trong nó cả chữ ký cá nhân của thực thể ký và chữ ký của CA
Do cấu trúc và cách thức kiểm tra chữ ký tập thể dạng phân biệt khác với cấu trúc và cách thức kiểm tra của các dạng chữ ký số đã được sử dụng phổ biến trong thực tế, nên Luận văn chỉ nghiên cứu phát triển các lược đồ cho phép hình thành và kiểm tra chữ ký tập thể dạng kết hợp nhằm bảo đảm tính hiệu quả của chúng trong các ứng dụng thực tế
e) Thuật toán kiểm tra chữ ký tập thể
Kiểm tra tính hợp lệ của chữ ký tập thể sẽ khẳng định được nguồn gốc và tính toàn vẹn của thông điệp dữ liệu cần thẩm tra ở cả 2 cấp độ: cá nhân thực thể ký và tổ chức mà thực thể ký là một thành viên của nó Việc kiểm tra tính hợp lệ của chữ ký tập thể về cơ bản cũng thực hiện tương tự như việc kiểm tra
Trang 37tính hợp lệ của các dạng chữ ký số đơn thông thường (RSA, DSA, ) Cơ chế kiểm tra tính hợp lệ của chữ ký tập thể được chỉ ra trên Hình 1.12 cho thấy dữ liệu đầu vào của thuật toán bao gồm các thành phần như: chữ ký tập thể, khóa công khai của thực thể ký, khóa công khai của CA và thông điệp dữ liệu cần thẩm tra Kết quả ở đầu ra, là sự khẳng định về tính hợp lệ của chữ ký tập thể hay sự công nhận hoặc từ chối đối với nguồn gốc và tính toàn vẹn của thông điệp dữ liệu được thẩm tra
g) Thuật toán hình thành và kiểm tra chữ ký cá nhân
Thuật toán hình thành chữ ký cá nhân cho phép hình thành chữ ký của các thực thể ký và chữ ký của CA từ thông điệp dữ liệu cần chứng thực và khóa bí mật của các đối tượng ký Trong các lược đồ chữ ký tập thể được đề xuất ở đây, thuật toán hình thành chữ ký cá nhân thường là một bộ phận của thuật
toán hình thành chữ ký tập thể
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ể,
CA sử dụng thuật toán kiểm tra chữ ký cá nhân để ngăn chặn các hành vi giả
mạo chữ ký cá nhân của các thực thể ký
h) Thuật toán mã hóa và giải mã thông điệp dữ liệu
Các giao dịch điện tử được thực hiện trong môi trường Internet hay các mạng viễn thông, mà ở đó các thông điệp dữ liệu ngoài yêu cầu chứng thực về nguồn gốc và tính toàn vẹn, còn có thể phải được bảo mật trong quá trình truyền tin Vì vậy, các thuật toán mật mã cũng là một bộ phận cần thiết của các lược đồ chữ ký tập thể nhằm bảo vệ bí mật cho các thông điệp dữ liệu trong các giao dịch điện tử
Trong Luận văn, các thuật toán mật mã khóa công khai được sử dụng kết với các thuật toán chữ ký số để thực hiện nhiệm vụ này
Trang 381.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 văn
- Giới thiệu mô hình ứng dụng cho các lược đồ 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 39CHƯƠNG 2 MỘT SỐ LƯỢC ĐỒ CHỮ KÝ SỐ TẬP THỂ DỰA TRÊN HỆ MẬT
RSA
Nội dung Chương 2 trình bày các lược đồ chữ ký số dựa trên hệ mật khóa
công khai RSA theo mô hình ứng dụng được đề xuất trong Chương 1
2.1 Hệ mật RSA
bởi Ron Rivest, Adi Shamir và Len Adleman vào năm 1977 tại Viện Công
nghệ Massachusetts (MIT – Massachusetts Institus of Technology) Hoa Kỳ
Hệ mậ (RSA) được xây dựng dựa trên tính khó của bài toán phân tích
một số nguyên lớn ra các thừa số nguyên tố và bài toán khai căn trong modulo
hợp số, nó được đánh giá là an toàn khi các tham số được lựa chọn hợp lý
Trên thực tế, vẫn chưa có phương pháp tấn công hiệu quả nào phá vỡ được hệ
mật này Hiện tại, 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ả
của nó
2.1.1 Thuật toán hình thành khóa
Thuật toán hình thành khóa bao gồm các bước:
1- Sinh 2 số nguyên tố p và q lớn, mạnh
2- Tính n p q, n p 1 q 1
3- Chọn khóa công khai e là một giá trị ngẫu nhiên thỏa mãn: 1 e n và
1 ,
gcd e n
4- Tính khóa bí mật d theo công thức: d e 1mod n
Trang 402.1.2 Thuật toán mật mã khóa công khai RSA
a) Thuật toán mã hóa
Thuật toán mã hóa bao gồm các bước:
1- Biểu diễn thông điệp dữ liệu M cần mã hóa thành một giá trị tương ứng
m trong khoảng 0 n, 1
2- Người gửi sử dụng khóa công khai của người nhận (e) để mã hóa giá trị
m theo công thức:
C m emodn
b) Thuật toán giải mã
Thuật toán giải mã bao gồm các bước:
1- Người nhận dùng khóa bí mật của mình (d) để giải mã theo công thức:
m C d modn
2- Chuyển giá trị m thành thông điệp dữ liệu ban đầu (M)
2.1.3 Thuật toán chữ ký số RSA
a) Thuật toán hình thành chữ ký
Thuật toán hình thành chữ ký bao gồm các bước:
1- Tính giá trị đại diện m của thông điệp dữ liệu cần ký (M):
m H M , với H(.) là hàm băm H : 0 , 1 Z n
2- Hình thành chữ ký (S) theo công thức:
S m d modn
b) Thuật toán kiểm tra chữ ký
Thuật toán kiểm tra chữ ký bao gồm các bước:
1- Tính giá trị đại diện m của thông điệp dữ liệu cần thẩm tra (M):
m H M
2- Sử dụng khóa công khai của người ký để tính giá trị m theo công thức: