Tải bản đầy đủ

Chữ ký số trong quản lý, điều hành văn bản nội bộ cơ quan tỉnh yên bái

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN ĐOẠT

CHỮ KÝ SỐ TRONG QUẢN LÝ, ĐIỀU HÀNH VĂN BẢN NỘI BỘ
CƠ QUAN TỈNH YÊN BÁI

THÁI NGUYÊN 2015
Số hóa bởi Trung tâm Học liệu ĐHTN

tnu.edu.vn/


LỜ

ƠN

Trong thời gian hai năm của chương trình đào tạo thạc sỹ, trong đó gần một
nửa thời gian dành cho các môn học, thời gian còn lại dành cho việc lựa chọn đề
tài, giáo viên hướng dẫn, tập trung vào nghiên cứu, viết, chỉnh sửa và hoàn thiện

đề tài. Với quỹ thời gian như vậy và với vị trí công việc đang phải đảm nhận,
không riêng bản thân em mà hầu hết các sinh viên cao học muốn hoàn thành tốt
luận văn của mình trước hết đều phải có sự sắp xếp thời gian hợp lý, có sự tập
trung học tập và nghiên cứu với tinh thần nghiêm túc, nỗ lực hết mình; tiếp đến
cần có sự ủng hộ về tinh thần, sự giúp đỡ về chuyên môn một trong những điều
kiện không thể thiếu quyết định đến việc thành công của đề tài.
Để hoàn thành được đề tài này trước tiên em xin gửi lời cảm ơn đến thầy
giáo hướng dẫn TS. Nguyễn Văn Tảo, người đã có những định hướng cho em về
nội dung và hướng phát triển của đề tài, người đã có những đóng góp quý báu
cho em về những vấn đề chuyên môn của đề tài, giúp em tháo gỡ kịp thời những
vướng mắc trong quá trình làm luận văn.
Em cũng xin cám ơn các thầy cô giáo Trường Đại học Công nghệ thông
tin và Truyền thông Thái Nguyên cũng như bạn bè cùng lớp đã có những ý kiến
đóng góp bổ sung cho đề tài luận văn của em. Xin cảm ơn gia đình, người thân
cũng như đồng nghiệp luôn quan tâm, ủng hộ hỗ trợ về mặt tinh thần trong suốt
thời gian từ khi nhận đề tài đến khi hoàn thiện đề tài này.
Em xin hứa sẽ cố gắng hơn nữa, tự trau dồi bản thân, tích cực nâng cao
năng lực chuyên môn của mình để sau khi hoàn thành đề tài này sẽ có hướng tập
trung nghiên cứu sâu hơn, không ngừng hoàn thiện hơn nữa đề tài của mình để có
những ứng dụng thực tiễn cao trong thực tế.
Thái Nguyên, tháng 4 năm 2015
Sinh viên

Số hóa bởi Trung tâm Học liệu ĐHTN

tnu.edu.vn/


Nguyễn Đoạt

MỤC LỤC
LỜ

....................................................................................................... iii

Số hóa bởi Trung tâm Học liệu ĐHTN

tnu.edu.vn/



MỤC LỤC............................................................................................................. iv
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT....................................... vii
DANH MỤC CÁC HÌNH VẼ............................................................................... ix
MỞ ĐẦU ................................................................................................................ 1
1.

: .................................................................................... 1

2. Mục tiêu nghiên cứu:.......................................................................................... 4
3. Phương pháp nghiên cứu:................................................................................... 4
ứu: ......................................................................................... 4
4.1. Lý thuyết: .................................................................................................... 4
4.2. Thực nghiệm: .............................................................................................. 5
4.1.1 Thiết kế Modul ký số trên phần mềm quản lý, điều hành của các cơ quan
tỉnh Yên Bái. .......................................................................................................... 5
4.1.2. Cài đặt Modul ký số và thực hiện ký số trên phần mềm.............................. 5
: .......................................................................... 5
: ............................................................................................... 5
CHƯƠNG 1.

............................. 7

1.1. Một số khái niệm và thuật ngữ liên quan. ....................................................... 7
1.1.1. Một số khái niệm. .................................................................................... 7
1.1.2. Các thuật ngữ liên quan. .......................................................................... 8
1.2. Giới thiệu về các hệ mật mã. ........................................................................... 9
1.3. Hàm băm (Hash Funtion). ............................................................................. 10
1.3.1. Hàm băm SHA – 1. ................................................................................ 12
1.3.2. Hàm băm MD5. ..................................................................................... 13
1.4. Một số lược đồ ký số. .................................................................................... 16
1.4.1. Lược đồ cơ sở - LD 1.01........................................................................ 16
1.4.2. Lược đồ chữ ký số đơn - LD 1.02.......................................................... 20
1.5. Kết luận Chương 1 ....................................................................................... 23
CHƯƠNG 2. MÔ HÌNH CHỮ KÝ SỐ TRONG QUẢN LÝ VĂN BẢN NỘI BỘ
CƠ QUAN TỈNH YÊN BÁI. ............................................................................... 24
2.1. Mô hình phần mềm quản lý văn bản nội bộ cơ quan nhà nước tỉnh Yên Bái.24
2.1.1. Quản lý công văn đến của một cơ quan. ................................................ 24


2.1.2. Quản lý công văn đi trong một cơ quan................................................. 26
2.1.3. Mô hình quản lý văn bản liên thông giữa các cơ quan trên địa bàn
tỉnh Yên Bái. ........................................................................................... . 28
2.2. Sơ đồ tích hợp ký số trên phần mềm quản lý văn bản nội bộ cơ quan tỉnh
Yên Bái. ...................................................................................................... . 29
2.2.1. Sơ đồ tích hợp chữ ký số trên phần mềm quản lý, điều hành tỉnh Yên
Bái.29
2.2.2. Quy trình ký số và xác thực chữ ký số. ................................................. 30
2.3. Thiết kế Modul ký số và tích hợp trên Hệ thống. ......................................... 32
2.3.1. Thiết kế Modul ký số: ............................................................................ 32
2.3.2. Tích hợp hệ thống: ................................................................................. 37
2.4. Tính pháp lý và mô hình ký số trong và ngoài nước. ................................... 38
2.4.1. Tính pháp lý của chữ ký số: ................................................................... 38
2.4.2. Tình hình sử dụng chữ ký số ở nước ngoài: .......................................... 38
2.4.3. Tình hình sử dụng chữ ký số ở trong nước:........................................... 39
2.4.4. Tính pháp lý trong việc thực hiện ký số trên phần mềm quản lý, điều
hành văn bản nội bộ tỉnh Yên Bái.................................................................... 40
2.5. Kết luận chương 2. ........................................................................................ 41
CHƯƠNG 3. CÀI ĐẶT, THỬ NGHIỆM CHƯƠNG TRÌNH ỨNG DỤNG CHỮ
KÝ SỐ TRÊN PHẦN MỀM QUẢN LÝ, ĐIỀU HÀNH VĂN BẢN NỘI BỘ
TỈNH YÊN BÁI. .................................................................................................. 42
3.1. Mô tả hệ thống phần mềm............................................................................. 42
3.1.1. Đặc tả chức năng.................................................................................... 42
3.1.2. Biểu đồ Use Case. .................................................................................. 43
3.2. Cài đặt, cấu hình chương trình. ..................................................................... 43
3.2.1. Cài đặt trên máy chủ: ............................................................................. 43
3.2.2. Cài đặt tại máy trạm:.............................................................................. 44
3.2.2.1. Cài đặt DotNet Frame Work:.............................................................. 44
3.3. Ký số trên phần mềm điều hành.................................................................... 44
3.4. Bảo mật chương trình.................................................................................... 45
3.4.1. Bảo mật trong chữ ký số: ....................................................................... 45
3.4.2. Bảo mật phía sever:................................................................................ 48


3.4.3. Bảo mật phía Client: .............................................................................. 50
3.5. Một số kết quả đạt được. ............................................................................... 50
3.5.1. Thiết kế Modul ký số và tích hợp trên phần mềm quản lý điều hành tỉnh
Yên Bái. ........................................................................................................... 50
3.5.2. Mô tả kết quả kí số và liên thông văn bản: ............................................ 50
3.5.3. Triển khai thí điểm trong ngành thông tin và truyền thông tỉnh Yên Bái.
.... 57
3.6. Đánh giá của người sử dụng. ........................................................................ 57
3.6.1. Về ưu điểm:............................................................................................ 58
3.6.2. Về hạn chế và kiến nghị......................................................................... 58
3.7. Kết luận Chương 3 ....................................................................................... 59
KẾT LUẬN .......................................................................................................... 60
TÀI LIỆU THAM KHẢO.................................................................................... 62
PHỤ LỤC 1 .......................................................................................................... 63
PHỤ LỤC 2 .......................................................................................................... 66
PHỤ LỤC 3 .......................................................................................................... 69
PHỤ LỤC 4 .......................................................................................................... 73

DANH 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

H(.)

Hàm băm

||

Toán tử nối/trộn 2 xâu

a|b

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

IDi

Thông tin nhận dạng thực thể cuối Ui


M

Thông điệp dữ liệu

xi

Khóa bí mật của thực thể ký Ui

yi

Khóa công khai của thực thể ký Ui

Các chữ viết tắt
CA

Certificate Authority

CRL

Certificate Revocation List

DSA

Digital Signature Algorithm

DSS

Digital Signature Standard

EE

End Entity

LDAP

Lightweight Directory Access Protocol

ITU

Internet Telecommumications Union

ISO

International Organization for Standardization

PKC

Public Key Certificate

PKC

1

Public Key

Cryptography PKI

Public Key

Infrastructure RA
Registration Authority
RSA
SHA

Rivest Shamir Adleman
Secure Hash Algorithm

CNTT

Công nghệ thông tin


DANH MỤC CÁC HÌNH VẼ
Hình 2.1. Quy trình giải quyết một văn bản thủ công.......................................... 25
Hình 2.2. Quy trình giải quyết một văn bản trên phần mềm. .............................. 26
Hình 2.3. Quy trình phát hành Văn bản đi thủ công ............................................ 27
Hình 2.4. Quy trình quản lý công văn đi trên phần mềm..................................... 28
Hình 2.5. Mô hình trao đổi văn bản liên thông trên phần mềm quản lý, điều hành
tỉnh Yên Bái. ........................................................................................................ 29
Hình 2.6. Mô hình chữ ký số tổng quát trên phần mềm QLĐH tỉnh Yên Bái ..... 30
Hình 2.7. Qui trình ký chữ ký số.......................................................................... 30
Hình 2.8: Quy trình xác thực chữ ký số. .............................................................. 31
Hình 2.9: Sơ đồ chức năng của phần mềm quản lý, điều hành văn bản nội bộ cơ
quan tỉnh Yên Bái................................................................................................. 42
Hình 2.10: Biểu đồ use Case của Phần mềm quản lý, điều hành văn bản nội bộ cơ
quan tỉnh Yên Bái................................................................................................. 43


1


2

MỞ ĐẦU
1.

:


, từ năm 2009, các

cơ quan Nhà nước tỉnh Yên Bái đã xây dựng và phát triển phần mề
ằm thực hiện việc quản lý, điều hành văn bản nội bộ trong cơ quan.
Qua từng năm, phần mềm này đã được nâng cấp giúp cho các cơ quan
điều hành công việc và giao dịch văn bản trong nội bộ các đơn vị có hiệu quả
thiết thực, giúp cải cách hành chính và tạo phong cách làm việc hiện đại cho cán
bộ, công chức. Phần mềm chạy trên nền web, các cán bộ công chức, viên chức
của các cơ quan, đơn vị được cấp tài khoản truy nhập để sử dụng. Phần mềm có 2
chức năng cơ bản đó là: Chức năng quản lý văn bản đến và chức năng quản lý
văn bản đi.
Chức năng quản lý văn bản đi là việc cán bộ soạn thảo một văn bản, sau
đó trình lãnh đạo phòng, lãnh đạo phòng sửa, cho ý kiến và trình lên lãnh đạo
cơ quan, lãnh đạo cơ quan xem, sửa, cho ý kiến và chuyển văn thư phát hành văn
bản.
Chức năng quản lý văn bản đến là: hàng ngày các công văn, tài liệu gửi
đến cơ quan sẽ được văn thư scan và trình lãnh đạo đơn vị, lãnh đạo đơn vị sẽ xử
lý văn bản bằng việc cho ý kiến và giao cho các phòng, bộ phận trực thuộc xử lý,
lãnh đạo các phòng, bộ phận trực thuộc sẽ tiếp tục cho ý kiến và giao cho cán bộ
thuộc phòng, bộ phận mình xử lý.
Ban đầu, mỗi cơ quan có một phần mềm riêng, chỉ tiếp nhận và chuyển
văn bản trong nội bộ cơ quan mình. Sau một thời gian hầu hết các cơ quan tại
Yên Bái đã sử dụng phần mềm này, lúc này nảy sinh nhu cầu liên thông văn bản
từ cơ quan này sang cơ quan khác, liên thông văn bản vừa nhanh lại vừa không
phải scan, văn bản đi của cơ quan này là văn bản đến của cơ quan kia và ngược
lại. Vì vậy, Yên Bái đã nâng cấp phần mềm và liên thông văn bản giữa các cơ
quan lại với nhau.
Tuy nhiên, trong quá trình liên thông văn bản lại phát sinh nhưng khó
khăn đó là: các văn bản giao dịch, trao đổi trên phần mềm chưa có tính pháp lý


và tính bảo mật chưa cao, mặc dù đã dùng biện pháp các văn bản đi văn thư lấy
chữ ký, con dấu và scan gắn vào phần mềm và gửi đi nhưng độ tin tưởng không
cao. Chính vì vậy, đòi hỏi văn bản phải được ký số và lưu chuyển trên phần mềm
đáp ứng yêu cầu xác định tính đúng đắn và toàn vẹn của văn bản khi nhận.
Xuất phát từ lý do đó, đề tài đặt vấn đề nghiên cứu về Chữ ký số và ứng
dụng chữ ký số trên phần mềm quản lý điều hành văn bản nội bộ của các cơ quan
tỉnh Yên Bái để xác thực nguồn gốc, tính toàn vẹn của dữ liệu nhận được trên
phần mềm quản lý, điều hành của các cơ quan tỉnh Yên Bái.
Với ý tưởng trên, em cũng đã nghiên cứu mô hình ký số của các tỉnh Quảng
Ninh, Thái Bình, Quảng Ngãi và của Hệ thống quản lý Thuế, cụ thể như
sau:
* Mô hình ký số của tỉnh Quảng Ninh:
UBND tỉnh đề nghị Ban cơ yếu Chính phủ cấp chữ ký số cho các cán bộ
lãnh đạo và các cơ quan nhà nước mỗi cá nhân, tổ chức. Các cán bộ và tổ chức
này sẽ ký văn bản tại máy clien sau đó mở thư điện tử mail.quangninh.gov.vn
gắn kèm văn bản đã ký và gửi cho người nhận.
Ưu điểm: Văn bản ký này có thể gửi cho bất kỳ ai, trên bất kỳ phương
thức nào đều được, giúp cho người nhận biết văn bản đó chính là của cá nhân, tổ
chức đã ký số.
Nhược điểm: Người dùng mất nhiều thao tác, phải ký trên máy trạm rồi
gắn kèm văn bản đó vào hệ thống thư mới thực hiện gửi nhận được, dẫn đến
người dùng ngại sử dụng và trên thực tế ít người sử dụng.
* Mô hình ký số của tỉnh Thái Bình:
UBND tỉnh Thái Bình cũng đề nghị Ban cơ yếu chính phủ cấp chữ ký số
cho các cán bộ lãnh đạo và các cơ quan nhà nước trên địa bàn tỉnh. Các cán bộ,
công chức và các tổ chức sẽ ký số văn bản tại máy clien sau đó gắn vào phần
mềm quản lý văn bản của tỉnh để gửi văn bản đi. Sau một thời gian triển khai,
các cá nhân hầu như không sử dụng vì việc ký số riêng không được thực hiện
trực tiếp trên phần mềm nên ngại sử dụng mà chỉ chữ ký số của các tổ chức là
thường xuyên được sử dụng.


Ưu điểm: Việc Thái Bình sử dụng ký số rồi gửi nhận trên phần mềm quản lý
văn bản của tỉnh mang lại hiệu quả khá cao, giúp giảm chi phí và tiết kiệm thời
gian.
Nhược điểm: Vẫn chưa xây dựng được modul ký số trên phần mềm vì vậy
vẫn phải sử dụng nhiều thao tác tạo cho người dùng ngại sử dụng.
* Mô hình ký số của tỉnh Quảng Ngãi:
Tỉnh đã cấp hơn 1000 chữ ký số cho cán bộ, công chức và các cơ quan
nhà nước, các cán bộ, công chức và cơ quan nhà nước chưa sử dụng phổ biến
phần mềm quản lý văn bản và thư điện tử nên việc cấp chữ ký số trở thành hình
thức không mang lại hiệu quả thiết thực.
* Sử dụng chữ ký số trong kê khai thuế và nộp thuế:
Thông tư 180/2010/TT-BTC của Bộ Tài Chính công nhận tính pháp lý của
hình thức giao dịch điện tử sử dụng chữ ký số giữa người nộp thuế và cơ quan
Thuế.
Theo hình thức này, các tổ chức, cá nhân đăng ký với các doanh nghiệp
được Bộ Thông tin và Truyền thông cho phép cung cấp chữ ký số như Vietel,
VNPT, FPT, BKV…để được cấp chữ ký số và thực hiện việc nộp tờ khai, kê khai
trực tuyến với các cơ quan thuế qua mạng.
Việc kê khai và ký số được thực hiện trên phần mềm kê khai

điện tử

của ngành thuế, người kê khai chỉ cần thực hiện công việc kê khai và nhấn nút ký
điện tử trên phần mềm tờ khai sẽ được ký và chuyển đến cơ quan thuế.
Việc ký trên phần mềm giúp người sử dụng dễ dàng hơn, tiết kiệm thời
gian và kinh phí đi lại, giao dịch, tránh được tiêu cực phát sinh.
Qua nghiên cứu mô hình triển khai của các tỉnh Quảng Ninh, Thái Bình,
Quảng Ngãi và của ngành Thuế, em đưa ra mô hình ký số của Yên Bái là:
Đề nghị với Ban Cơ yếu chính phủ cấp chữ ký số cho các cơ quan nhà
nước trên địa bàn tỉnh để ký trực tiếp trên phần mềm quản lý văn bản tại tài
khoản của văn thư các cơ quan, đơn vị trước khi phát hành công văn đi, văn bản
trước khi ký sẽ được conver từ file word sang pdf để tránh việc sửa chữa văn bản
đã ký trên phần mềm.


Với mô hình trên sẽ giúp người dùng thuận tiện khi sử dụng, khắc phục
được các nhược điểm, đồng thời phát huy được ưu điểm của các đơn vị đã triển
khai như đã phân tích ở trên.
Đối tượng và phạm vi nghiên cứ
:
+ Chữ ký số.
+ Quy định về cấp, quản lý, sử dụng Chữ ký số.
+ Mô hình phần mềm quản lý, điều hành tỉnh Yên Bái.
+ Ngôn ngữ lập trình c#.
2. 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ố
.
-

.

3. Phương pháp nghiên cứu:
- Phương pháp nghiên cứu lý thuyết: Tìm hiểu tài liệu, đọc hiểu các kiến
thức cơ bản, đề xuất các phương pháp tích hợp chữ ký số trên phần mềm.
- Phương pháp nghiên cứu thực nghiệm: Cài đặt thử nghiệm ký số tại một
số cơ quan, đơn vị tại tỉnh Yên Bái.
- Phương pháp trao đổi khoa học: Trao đổi hướng nghiên cứu với người
hướng dẫn, các đồng nghiệp để đề xuất và giải quyết các nội dung luận văn đề ra.
:
4.1. Lý thuyết:
- Các thuật toán ký số điện tử.
- Các hàm băm (Hash funtion).
- Mô hình ký số và xác thực chữ ký số trên phần mềm quản lý điều hành
tỉnh Yên Bái.
- Quy trình cấp và quản lý chữ ký số theo quy định của cơ quan Nhà nước.


4.2. Thực nghiệm:
4.2.1 Thiết kế Modul ký số trên phần mềm quản lý, điều hành của các cơ
quan tỉnh Yên Bái.
- Input:
+ File văn bản dạng words cần ký số .
+ Bộ công cụ ký số gồm: Phần mềm vSign 2.0 và chứng thư số do Ban cơ
yếu chính phủ cấp cho tổ chức hoặc cá nhân để ký số.
- Processed:
+ Tìm URL file vắn bản cần ký trên server cài đặt phần mềm quản lý điều
hành tỉnh Yên Bái.
+ Convert file văn bản này từ .doc sang pdf.
+ Downloat file văn bản này về máy client.
+ Kích hoạt phần mềm vSign 2.0 và chứng thư số thực hiện ký số lên file
văn bản cần ký.
+ Chuyển file văn bản đã ký về server phần mềm quản lý điều hành tỉnh
Yên Bái, đồng thời xóa file này trên máy clien.
- Output:
+ File văn bản đã được ký số.
+ Các thông tin xác thực tổ chức, cá nhân đã ký file văn bản.
4.2.2. Cài đặt Modul ký số và thực hiện ký số trên phần mềm.
:
Đây là một hướng nghiên cứu ứng dụng chữ ký số vào thực tiễn công việc
của cơ quan, đơn vị nhà nước trên địa bàn tỉnh Yên Bái nhằm xây dựng chính
quyền điện tử, cải cách hành chính nhà nước với tác phong làm việc hiện đại,
hiệu quả.
:
Dự kiến nội dung báo cáo của luận văn gồm: Phần mở đầu, 3 chương
chính, phần kết luận, tài liệu tham khảo, phụ lục. Bố cục được trình bày như sau:
Phần mở đầu: Nêu lý do chọn đề tài và hướng nghiên cứu chính.


Chương 1: Các kiến thức cơ bản về Chữ ký số.
Chương 2: Mô hình chữ ký số trong quản lý văn bản nội bộ cơ quan tỉnh
Yên Bái.
Chương 3: Cài đặt và thử nghiệm chương trình ứng dụng chữ ký số trên
phần mềm quản lý, điều hành văn bản nội bộ cơ quan tỉnh Yên Bái.
Phần kết luận: Tóm tắt các kết quả đã đạt được và hướng phát triển tiếp
theo của đề tài.


CHƯƠNG 1
Nộ

, từ đó

có hướng tìm ra mô hình ứng dụ
văn bản nội bộ

ợp với thực tế

ển 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.

1.1.1. Một
niệm.

số

khái


[2] là một bộ 5 (P, C, K, E, D) thoả

Định nghĩa 1.1: Một hệ
mãn các điều kiện sau:
1. P là một tập hữu hạn
2.

các

C là một tập hữu hạn

.
các

.
3.

K là tập hữu hạn các khoá

4. E
Đối với mỗi k
tương ứng d k

.

à tập
giải mã.
K có một quy tắc mã hóa ek E và một quy tắc giải mã

D , mỗi ek : P

C và d k :
C

P thỏa mãn: d k (ek (
x))

x với

x P.

(1.1)

Hoặc là:
Đối với mỗi cặp (kp,
ks)
giải mã tương ứng

K có một quy tắc mã hóa ekp

d ks D , mỗi ekp : P

C

và d ks :

E và một quy tắc
P

thỏa mãn:

C
d ks (ekp (x)) x với

x P.

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.

(1.2)



Đị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.
Với mỗi k

K tồn tại một thuật toán ký sig k

minh verk V tương ứng, mỗi sig k : M

S

A và một thuật toán xác

và verk : M

{true, false} là

S

những hàm sao cho với mỗi m M và s S thoả mãn phương trình sau:
verk (s, m)

true, s sigk (m)
false, s sigk (m)

Định nghĩa 1.3: 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:
H (M )

H (M ' ) .

Chú ý:
- Hàm băm có các tính chất 1 và 2 được gọi là hàm băm kháng va chạm yếu.
- Hàm băm có các tính chất 1 và 3 được gọi là hàm băm kháng va chạm
mạnh.

1.1.2. Các thuật ngữ liên quan.
Định nghĩa 1.4: 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.5: 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.6: 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.7: 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ý.
1.2. Giới thiệu về các hệ mật mã.
Sự xuất hiện của Mật mã máy tính (từ nhưng năm 70 của thế kỷ XX) có
quan hệ đến thiết bị tính toán với hiệu suất đủ để thực hiện các hệ thống mật mã,
bảo đảm tốc độ mã hóa lơn hơn mấy bậc và độ bền bảo mật cao hơn so với các
mã pháp “thủ công” và “cơ khí”.
Lớp đầu tiên các hệ thống mật mã mà việc ứng dụng chúng có khả năng
cũng với sự xuất hiện các phương tiện tính toán gọn và rất mạnh, là các mã pháp
khối. Vào những năm 70, đã khởi tạo chuẩn mã DES của Mỹ (đã được chấp nhận
vào năm 1977), còn một trong các tác giả là Horst Feistel (cộng tác viên của
IBM) đã mô tả mô hình mã pháp khối mà dựa vào đó đã xây dựng các hệ mật đối
xứng khác bền vững, trong đó có chuẩn GOST 28147 – 89 của Nga.
Việc thám mã đã được làm phong phú thêm sự xuất hiện DES, để tấn
công thuật toán của Mỹ người ta đã đề xuất một số dạng thám mã mới (tuyến
tính, vi sai, v.v…), mà việc thực hiện chúng cũng chỉ có thể sau khi ra đời các hệ
thống tính toán cực mạnh.
Vào giữa những năm 70 đã xảy ra bước đột phá thực sự trong mật mã hiện


đại – xuất hiện của hệ thống mật mã phi đối xứng mà với chúng, không đòi hỏi
chuyển giao khóa bí mật giữa các phía liên lạc. Điểm xuất phát ở đay được coi là
bài báo “những xu hứng mới trong mật mã” của Whitfield Diffie và Martin E.
Hellman, đã công bố vào năm 1976. Trong công trình nghiên cứu đó, lần đầu tiên
đã trình bày các nguyên tắc trao đổi thông tin dược mã hóa mà không đòi hỏi trao
đổi khóa bí mật. Ralf Merkle cũng đã đi tới ý tưởng các hệ thống mật mã phi đối
xứng một cách độc lập. Vài năm sau. Ron Rivest, Adi Shamir và Leonard
Adleman đã phát hiện ra hệ REA – hệ thống mật mã phi đối xứng thực tế đầu
tiên, độ bền của nó dựa trên bài toán phân tích các số lớn thành thừa số nguyên
tố. Mật mã phi đối xứng đã mở ra cùng lúc một xu hướng ứng dụng mới, trong
đó có các hệ thống chữ ký số điện tử và tiền điện tử.
Vào những năm 80 – 90 của thế kỷ XX, đã xuất hiện các xu hướng hoàn
toàn mới của mật mã: mã xác suất, mật mã lượng tử…Việc hiểu rõ giá trị thực
hành của chúng còn ở phía trước. Nhiệm vụ cải tiến các hệ thống mật mã đối
xứng vẫn còn thiết thực. Năm 2000 sau khi mở cuộc thi quốc tế công khai, Mỹ đã
chấp nhận chuẩn mã quốc gia mới với tên viết tắt là AES.
Mật mã hiện đại gồm:
1. Các hệ thống mật mã đối xứng.
2. Các hệ thống mật mã với khóa công khai.
3. Các hệ thống chữ ký số điện tử.
4. Quản lý các khóa.
* Hệ mật mã khóa công khai RSA.
Hệ mật Rivest – Shamir – Adleman (Hệ mật RSA) có độ bền dựa trên tính
phức tạp giải bài toán phân tích một số thừa số nguyên tố. Có thể mô tả thuật
toán đó một cách ngắn gọn như sau:
Người dùng chọn A chọn cặp số nguyên tố khác nhau
1.3. Hàm băm (Hash Funtion).
Hàm băm hay (hàm hash) H là ánh xạ mà trên đầu vào của nó nhập bản tin
M với độ dài thay đổi, còn trên đầu ra là một dòng ký tự với độ

định H(M)


[4] Trong trường hợp tổng quát, H(M) sẽ bé hơn rất nhiều so với M, ví dụ H(M)
có thể là 128 hoặc 256 bít trong khi M có thể có độ dài cữ Mbyte hoặc lớn hơn.
Hàm băm có thể được sử dụng để phát hiện sự thay đổi của bản tin - sử
dụng ở dạng tổng kiểm tra mật mã hay mã phát hiện thay đổi MDC
(Manipulation Detection Code), kiểm tra sự nguyên vẹn của bản tin MIC
(Message Integrity Check).
Về mặt lý thuyết có khả năng hai bản tin khác nhau được nén lại (tóm
lược) thành cùng một dòng (tình huống này được gọi là “va chạm”). Vì vậy, để
đảm bảo độ an toàn của hàm băm lược cần phải xem xét trước cách thức loại bỏ
các va chạm. Không thể loại bỏ hoàn toàn các va chạm vì trong trường hợp
chung luôn luôn có số lượng các bản tin lớn hơn rất nhiều so với số lượng các giá
trị đầu ra có thể của hàm tóm lược. Nhưng xác suất va chạm cần phải thấp.
Để có thể được sử dụng một cách thiết thực trong quá trình nhận dạng,
hàm băm H cần phải có những tính chất sau đây:
Hàm H có thể được áp dụng cho đối số với kích thước bất kỳ;
Giá trị ra của H có kích thước cố định;
Tính H(x) tương đối đơn giản đối với X bất kỳ, tốc độ tính toán H phải đạt
được giá trị để sao cho tốc độ tạo và xác minh chữ ký số khi có sử dụng hàm tóm
lược lớn hơn đáng kể so với trường hợp không sử dụng H;
Đối với y bất kỳ, không thể tìm được X về mặt tính toán để sao cho H(x) =
y; Với giá trị X cho trước bất kỳ, không thể tìm được về mặt tính toán x’ ≠
x
thoả mãn H(x’) = H(x).
Tính chất 5 đảm bảo rằng, không thể tìm được một bản tin khác có cùng giá
trị hàm tóm lược. Điều này phòng ngừa sự giả mạo cũng như cho phép sử dụng H
làm tổng kiểm tra mật mã để giám sát tính nguyên vẹn của nội dung bản tin.
Tính chất 4 tương đương với điều khẳng định rằng, H là hàm một phía. Độ
bền của các hệ thống với khoá công khai phụ thuộc vào thuộc tính “một phía cửa sập” của biến đổi mật mã được sử dụng đại chúng. Ngược lại. các hàm tóm
lược là những hàm một phía không có “cửa sập”.


Hàm tóm lược cổ điển là một biến đổi công khai. Trong trường hợp đặc
biệt, khi hàm đó phụ thuộc vào khoá thì kết quả tính toán nó có tên gọi là mã xác
thực bán till MAC (Massage Authentication Code).

1.3.1. Hàm băm SHA –
1.
Thuật toán tóm lược an toàn SHA-1 (Secure Hash Algorithm) đã được
thông qua làm chuẩn của Mỹ vào năm 1992 và được sử dụng cùng với thuật toán
chữ ký số được xác định trong chuẩn DSS. Khi nhập bản tin M, thuật toán sẽ tạọ
ra dãy ký tự nhị phân 160 bit, được gọi là bàn tóm lược và được sử dụng khi hình
thành chữ ký số. Dưới đây sẽ xem xét thuật toán tóm lược một cách tỷ mỷ hơn.
Trước hết, bản tin ban đầu được phụ thêm để nó có độ dài là bội số của
512 bit. Lưu ý là bản tin có thể vẫn được bổ sung thêm ngay cả khi độ dài của nó
đã là bội số như vậy. Quá trình diễn ra khá đơn giản: thêm một ký tự 1, tiếp đến
thêm một số tối thiểu các ký tự 0 để nhận được văn bản với độ dài ít hơn 64 so
với bội số 512 và sau đó bổ sung đoạn biểu diễn nhị phân 64 bit của độ dài bản
tin ban đầu.
Xa hơn, 5 biến số 32 bit được khởi tạo bằng các hằng sau đây theo cơ số
16[4]: A = 67452301;
B = efcdab89;
C = 98badcfe;
D = 10325476;
E =c3d2elf0.
Năm hằng số trên đây được sao vào các tham số a, b, c. d và e một cách
tương ứng.
Chu trình chính có thể được mô tả một cách khá đơn giản thông qua tựa
mã như sau:
for (t = 0; t < 80; t++){
temp = (a˂˂˂ 5) + ft(b, c, d) + e + Wt + Kt;
e = d; d = c; c = b ˂˂< 30; b = a; a = temp;
}


1.3.2. Hàm băm MD5.
Giả thiết rằng, cho bản tin với độ dài b bit, ở đây b - số nguyên không âm
tuỳ ý; giả sử các bit của bản tin được viết theo thứ tự m0,m1,… mb-1. Để tính
gói tóm lược của bản tin, cần thực hiện 5 giai đoạn sau đây [4].
Giai đoạn 1 – bổ sung các bit thiếu
Bản tin được bổ sung (mở rộng) để sao cho độ dài bít của nó trở thành
đồng dư với 448 theo môđun 512. Việc mớ rộng luôn được thực hiện ngay cả
trong trường họp độ dài của bản tin đã đồng dư với 448 theo môđun 512.
Việc bổ sung được thực hiện như sau: trước tiên thêm một bít bằng 1, số
bit còn lại được lấy bằng 0. Như vậy, số bit được bổ sung có thể nằm trong
khoảng 1-512.
Giai đoạn 2 - bổ sung độ dài
Ghi thêm 64 bít biểu diễn độ dài b của bản tin (trước khi nó được mở
rộng) vào kết quả của giai đoạn đầu. Trong trường hợp ít xảy ra, khi độ dài của
bản tin vượt quá 264 thì chỉ sử dụng 64 bit thấp của biểu diễn. Các bit này được
bổ sung ở dạng hai từ 32 hàng số, lưu ý là từ sau được ghi vào trước. Kết quả
thực hiện bước 2 làm cho độ dài của bản tin mở rộng trở thành bội số của 512 bít
và cũng là bội số của 16 (512 bit được chia thành 16 từ 32 hàng số). Ký hiệu các
từ của bản tin mở rộng là M[0...N-l].
Giai đoạn 3 - khởi đầu bộ đệm.
Bộ đệm chứa 4 từ (A, B, c, D), nó được sử dụng để tính gói tóm lược của
bản tin. Các thanh ghi đó được khởi đầu bằng cấc giá trị ở dạng cơ số 16 sau đây:
A = 01234567;
B = 89abcdef;
c = fedcba98;
D = 76543210
Giai đoạn 4 - xử lý bản tin bằng các khối 16 từ Đầu tiên cần xác định 4
hàm bổ trợ mà đối số và kết quả của mỗi hàm từ chúng là các từ 32 bit. Đó là các
hàm:
F(X, Y, Z) = XY V -|(X)Z:


G(X, Y, Z) = xz V Y -i(Z);
H(X, Y, Z) = X © Y © Z;
I(X, Y, Z) = Y © (X V -,(Z)).
Tại bước này có sử dụng bảng 64 từ T[1 ... 64], được xây dựng trên cơ sở
hàm sin. Giả sử T[i] ký hiệu cho phần tử thứ i của bảng, nó bằng phần nguyên
của số 4294967296 x abs(sin(i)), ở đây i được biểu diễn bằng đơn vị radian.
Cần thực hiện các phép toán sau đây:
// Xử lý mỗi khối 16 từ for i = 0 to N/16 - 1 do
// Sao khối i vào X
for j = 0 to 15 do
X[j] = M[i*16 + j].
// Bảo lưu A vào AA, B vào BB, C vào CC và D vào DD
AA = A
BB = B
CC = C
DD = D
// Bước 1
// Ký hiệu [abcd ksi] cho phép toán
// a = b + ((a + F(b, c, d) + X[k] + T[i]) « s).
// Thực hiện 16 phép toán sau đây:
[ABCD 0 7 1] [DABC 1 12 2] [CDAB 2173] [BCDA 3 22 4]
[ABCD 4 7 5] [DABC 5 12 6] [CDAB 6 17 7] [BCDA 7 22 8]
[ABCD8 7 9] [DABC9 12 10] [CDAB 10 17 11] [BCDA 11 22 12]
[ABCD 12 7 13] [DABC 13 12 14] [CDAB 14 17 15] [BCDA 15 22 16]
// Bước 2
// Ký hiệu [abed k s i] cho phép toán
// a = b + ((a + G(b, c, d) + X[k] + [Ti]) « s).
// Thực hiên 16 phép toán sau đây:
[ABCD 1 5 17] [DABC 6 9 18] [CDAB 11 14 19] [BCDA 0 20 20]


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×