Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
LỜI CAM ĐOAN
T i xin
m o n ề t i nghi n ứu ủ t i ho n to n o t i tự l m ƣ i sự hƣ ng
n ủ thầy giáo PGS - TS Nguyễn Linh Gi ng Những kết qu nghi n ứu, thử nghiệm
ƣ
tr nh
thự hiện t i Trung tâm Kỹ thuật t i liệu nghiệp vụ - Bộ C ng n C
y trong luận v n l ho n to n trung thự v
hƣ t ng ƣ
số liệu, kết qu
ng ố trong
t ứ
ng tr nh n o.
C
k
t i liệu th m kh o sử ụng trong luận v n ều ƣ
t i liệu th m kh o) hoặ
Nếu x y r
to n tr h nhiệm trƣ
ƣ
sự ồng ý trự tiếp ủ t
t ứ iều kh ng úng nhƣ những lời
n nguồn ( ó
ng thống
gi
m o n tr n, t i xin hịu ho n
Viện v Nh trƣờng
H Nội, ng y 20 th ng 08 n m 2013
T
gi
Vũ Huy Hùng
1/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
LỜI CẢM ƠN
Để hoàn thành Luận văn “Nghiên cứu thử nghiệm bài toán xác thực sử dụng chữ
ký số”, tôi xin tỏ lòng biết ơn sâu sắc đến PGS - TS. Nguyễn Linh Giang đã tận tình hướng
dẫn trong suốt quá trình viết luận văn tốt nghiệp.
Tôi cũng xin chân thành cảm ơn quý Thầy, Cô Viện Công nghệ Thông tin & Truyền
thông, Trường Đại học Bách Khoa
à N i, đ c biệt là các thầy cô trong b môn Truyền
thông & Mạng máy tính đã tận tình truyền đạt kiến thức trong thời gian học tập và nghiên
cứu tại đây. Với vốn kiến thức được tiếp thu trong quá trình học tập và nghiên cứu không
chỉ là nền tảng cho quá trình nghiên cứu khóa luận mà còn là hành trang quí báu để tôi
bước vào đời m t cách vững chắc và tự tin.
Tôi cũng thầm biết ơn sự ủng h của Ban Giám đốc trung tâm Trung tâm kỹ thuật
Tài liệu nghiệp vụ, đồng nghiệp, gia đình và bạn bè – những người thân yêu luôn là chỗ
dựa vững chắc cho tôi.
Trong phạm vi luận văn tốt nghiệp cao học khó có thể diễn đạt hết ý về m t lý
thuyết cũng như kỹ thuật, m c dù đã cố gắng hoàn thành luận văn với tất cả sự nỗ lực của
bản thân, xong luận văn khó có thể tránh khỏi những thiếu sót. Kính mong nhận được
những ý kiến đóng góp để tác giả tiếp tục hoàn thiện kiến thức cũng như giải pháp của
mình.
Cuối cùng, tôi xin kính chúc Quý Thầy cô, Đồng nghiệp, Gia đình dồi dào sức khỏe
và thành công trong sự nghiệp cao quý.
Xin trân trọng cảm ơn!
ọc viên
Vũ uy ùng
2/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................... 1
LỜI CẢM ƠN ............................................................................................................. 2
MỤC LỤC ................................................................................................................... 3
DANH MỤC BẢNG VẼ VÀ HÌNH VẼ .................................................................... 5
DANH SÁCH THUẬT NGỮ VIẾT TẮT .................................................................. 6
DANH SÁCH KÝ HIỆU DÙNG TRONG LUẬN VĂN ........................................... 7
LỜI NÓI ĐẦU ............................................................................................................ 8
NHIỆM VỤ CỦA LUẬN VĂN.................................................................................. 9
CHƢƠNG I: TỔNG QUAN VỀ CHỮ KÝ SỐ ........................................................ 12
1 1 Một số kh i niệm ơ n về n to n th ng tin ........................................................... 12
1 2 Kh i qu t hung về hữ ký số .................................................................................... 13
1 2 1 Kh i niệm về hữ ký số ...................................................................................... 15
1 2 2 So s nh hữ ký số v i hữ ký th ng thƣờng ( hữ ký viết t y) tr n v n n ..... 15
1 2 3 Vị trí, v i trò ủ hữ ký số iện tử ................................................................... 15
1.2.4 Sơ ồ tổng qu n ủ một hệ thống hữ ký số iện tử ........................................ 16
1 2 5 Thuật to n hữ ký số RSA .................................................................................. 17
1 2 6 Thuật to n hữ ký DSA ...................................................................................... 18
1.3 Cơ sở h nh th nh hữ ký số ....................................................................................... 20
1.3.1 Cơ sở to n họ .................................................................................................... 20
1 3 2 H m m mật mã ............................................................................................... 20
1 3 3 V n ề x thự ................................................................................................. 27
1.3.4 Lƣ
ồ hữ ký số .............................................................................................. 29
1 4 C kiểu t n ng v o lƣ
ồ hữ ký ....................................................................... 36
1 5 Thự tr ng về n to n th ng tin trong
ơ quan nhà nƣ .................................... 37
1 6 Tính ph p lý v ứng ụng hữ ký số trong v ngo i nƣ ........................................ 38
CHƢƠNG II: CƠ SỞ HẠ TẦNG KHÓA CÔNG KHAI ......................................... 41
2.1 Cơ sở h tầng khó công khai .................................................................................... 41
2 1 1 Kh i niệm ............................................................................................................ 41
2.1.2 Cơ sở h tầng khó
ng kh i ............................................................................. 41
2 1 3 C u trú phân tầng ủ hệ thống PKI ................................................................. 42
2. 2 Mã khóa công khai .................................................................................................... 44
2.2.1 Mã khóa công khai .............................................................................................. 44
2 2 2 Sự ần thiết ủ việ hứng thự trong hệ thống khó
ng kh i ...................... 46
2 3 Thiết lập, qu n lý v hứng thự khó ....................................................................... 47
2 3 1 Qu n lý khó th ng qu kỹ thuật khó ối xứng ................................................ 48
2 3 2 Qu n lý khó th ng qu kỹ thuật khó
ng kh i............................................... 49
2 4 Y u ầu kỹ thuật hệ thống CA ................................................................................... 52
2 4 1 Mụ ti u y u ầu ..................................................................................................... 52
2 4 2 Thiết kế kỹ thuật ho hệ thống................................................................................ 54
2 4 3 Thiết kế kỹ thuật hệ thống CA ................................................................................ 56
2.5 Chứ n ng v qu tr nh khởi t o
th nh phần trong hệ thống ung p hứng hỉ số 56
2.5.1 Certificate Authority – CA: .................................................................................... 56
2.5.2 Registration Authority – RA ................................................................................... 58
3/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
2.5.3 RAO: (Registration Authorities Operator) ............................................................. 58
2.5.4 LDAP và Public Database Server ........................................................................... 59
2 6 Ứng ụng ủ h tầng khó
ng kh i ....................................................................... 60
CHƢƠNG III: XÂY DỰNG QUY TRÌNH ÁP DỤNG XÁC THỰC CHỮ KÝ SỐ
................................................................................................................................... 62
3 1 Xây ựng i to n ...................................................................................................... 62
3 1 1 M h nh hệ thống .................................................................................................... 62
3 1 2 Một số ặ t ủ hệ thống ..................................................................................... 62
3 2 Quy tr nh ng ký, p ph t v hủy ỏ hứng hỉ ..................................................... 63
3 2 1 Quy tr nh ng ký v
p hứng hỉ ....................................................................... 63
3 2 2 Quy tr nh hủy ỏ hứng hỉ .................................................................................... 65
3 3 Thử nghiệm ................................................................................................................ 66
3 3 1 Gi i quyết v n ề ................................................................................................ 66
3 3 2 Một số v n ề lƣu ý khi ký v nhận .................................................................... 69
3 3 3 Kết qu thử nghiệm............................................................................................ 71
KẾT LUẬN ............................................................................................................... 73
C kết qu
t ƣ : .............................................................................................. 73
Hƣ ng ph t triển: ..................................................................................................... 74
TÀI LIỆU THAM KHẢO......................................................................................... 75
4/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
DANH MỤC BẢNG VẼ VÀ HÌNH VẼ
Hình 1.1: Ảnh minh họ l m việ
ủ một h m
m .................................................... 21
Hình 1.2: Gi i thuật MD5 .............................................................................................. 25
Hình 1.3: M t việ tính ƣ
trong SHA-1 ............................................................... 27
Hình 1.4: Hàm MAC ...................................................................................................... 28
Hình 1.5: Sơ ồ quy trình ký .......................................................................................... 30
Hình 1.6: Sơ ồ quy tr nh x
minh hữ ký ................................................................... 31
Hình 1.7: Tổng qu n về hữ ký số v i kh i phụ th ng iệp ........................................ 32
Hình 1.8: Lƣ
ồ tổng qu n ủ
hữ ký số v i kh i phụ th ng iệp ......................... 32
Hình 2.1: M h nh xây ựng PKI ơ
Hình 2.2: M h nh phân
p ........................................................................................... 43
Hình 2.3: M h nh sử ụng khó
Hình 2.4: Lƣ
n ....................................................................... 41
ng kh i ................................................................... 45
ồ sử ụng mã hó khó
Hình 2.5: Một kiểu t n
ng m o
Hình 2.6: Sự tr o ổi khó
ng kh i ...................................................... 46
nh .......................................................................... 47
í mật .................................................................................. 48
Hình 2.7: Qu n lý khó
ùng TTP ................................................................................. 49
Hình 2.8: Qu n lý khó
ùng kỹ thuật mã khó
ng kh i ............................................ 50
Hình 2.9: Sự gi m o ủ A6 ủ
ối phƣơng v i khóa công khai e* ............................ 51
Hình 2.10: Sự hứng thự khó
ng kh i ởi TTP ...................................................... 51
Hình 2.11: Entrust AuthorityTM Security Manager ........................................................ 54
Hình 2.12: Hệ thống CA thiết kế ................................................................................... 56
Hình 2.13: M h nh m phỏng hệ thống CA phân
Hình 2.14: M h nh qu n hệ v tr o ổi ữ liệu giữ
Hình 3.1: M h nh hệ thống ung
Hình 3.2: M h nh
ng ký v
p 2 tầng ....................................... 57
th nh phần trong hệ thống... 59
p hứng hỉ số ...................................................... 62
p hứng hỉ số ........................................................... 64
Hình 3.3: M h nh hủy ỏ hứng hỉ số......................................................................... 66
Hình 3.4: Sơ ồ ký v n
n ............................................................................................ 67
Hình 3.5: Sơ ồ x
hữ ký số ............................................................................... 68
thự
B ng 1: M h nh sử ụng x
thự ................................................................................ 42
5/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
DANH SÁCH THUẬT NGỮ VIẾT TẮT
T n viết tắt
T n tiếng nh
T n tiếng việt
Advanced Encrytion Standard
American Standard Code for
Infornation Interchange
Chuẩn mã hó nâng
Certificate Authority
Cơ qu n hứng thự số
ANSI
American National Standards Institute
Viện Ti u huẩn Quố gi Ho Kỳ
FIPS
Federal Information Processing Standard 46
DES
Data Encryption Standard
Chuẩn mã hó
IDEA
International Data Encryption Algorithm
Ti u huẩn mã hó
IEEE
Institute of Electrical and Electronic
Engineers
Viện kỹ thuật iện v
ITU
International Telecommunication Union
Li n minh viễn th ng quố tế
ISO
International Organization for
Standardization
Tổ hứ ti u huẩn quố tế
MAC
Message Authentication Code
Mã x
MARS
Multicast Address Resolution Server
NIST
National Institute Of Standards and
Technology
Viện ti u huẩn v
quố gi
ng nghệ
MD5
Message Digest algorithm 5
Gi i thuật ủ h m
m
PKI
Public Key Infrastructure
Cơ sở h tầng khó
ng kh i
RSA
Rivest, Shamir and Adleman
Gi i thuật mã hó
OCSP
Online Certificate Status Protocol
Chứng thự khó
SHA
Secure Hash Algorithm
Gi i thuật
Transmission Control Protocol/Internet
Một hệ thống
Protocol
việ truyền th ng tin tr n m ng
URL
CNTT
ATTT
RA
Uniform Resource Locator
Định vị t i nguy n về mặt ị
C ng nghệ th ng tin
An toàn thông tin
RAO
Registration Authorities Operator
RFC
Request For Comments
AES
ASCII
CA
TCP/IP
LDAP
Registration Authorities
Lightweight Directory Access Protocol
6/76
o
Chuẩn mã tr o ổi th ng tin Ho
Kỳ
ữ liệu
ữ liệu
iện tử
thự
ng kh i
m n to n
gi o thứ hỗ tr
hỉ
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
DANH SÁCH KÝ HIỆU DÙNG TRONG LUẬN VĂN
C
B n mã
X
Kh ng gi n
D, Dk
H m gi i mã, h m gi i mã v i khó k
d, dA
Số mũ gi i mã, số mũ gi i mã ủ
E, Ek
H m mã hó , h m mã hó v i khó k
e, eA
Số mũ mã hó , số mũ mã hó
IDA
Định
k
Khóa mã
M
Không gian
P
B n tin rõ
P
H m số hó
(n; e)
Cặp số: n, e l
(e, d)
Ứơ
nh ủ
n mã
ủ
thể A
thể A
thể A
n rõ
n rõ P: M -> Zn
số nguy n ƣơng
hung l n nh t ủ h i số nguy n ƣơng e v
7/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
LỜI NÓI ĐẦU
Mật mã họ l một trong những v n ề qu n trọng trong lĩnh vự
an toàn th ng tin Tr n thế gi i, mật mã họ
ng y
ng ƣ
nghi n ứu, ph t triển
mã họ , v n ề
ã ƣ
t ƣ
ng kh i v n ề x
v n ề tr n ngƣời t
ƣ r một
ời t thời L Mã ổ
iv
những th nh tựu to l n Trong mật
o mật lu n i ối v i v n ề x
thống mã hó khó
r
o mật v
thự l v
thự th ng tin, ặ
iệt trong hệ
ùng qu n trọng Để gi i quyết
h gi i quyết hiệu qu , ó l
hữ ký số
V i sự ùng nổ ủ m ng Internet hiện n y, m ng m y tính
ng ng y
ng
óng v i trò thiết yếu trong mọi lĩnh vự ho t ộng ủ to n xã hội, v khi nó trở
th nh phƣơng tiện iều h nh
hệ thống th nhu ầu
o mật th ng tin ƣ
l n h ng ầu Việ sử ụng hữ ký số l một gi i ph p hữu hiệu, ng y
ứng ụng nhiều trong thự tế, kh ng hỉ gi i h n trong ng nh
mật mã họ m
òn ƣ
ặt
ng ƣ
ng nghệ th ng tin,
p ụng nhiều trong những lĩnh vự kh
nhƣ ngân h ng,
viễn th ng…
Mật mã họ khó
mã hóa RSA – hệ mã hó
ng kh i t o r
hữ ký số v ứng ụng v o
iển h nh ủ mật mã
mã họ một hiều hính l những
ng kh i ùng v i h m
ng ụ hính trong việ t o r
8/76
t i liệu Hệ
m mật
hữ ký số iện tử
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
NHIỆM VỤ CỦA LUẬN VĂN
Internet ng y n y ã trở th nh m ng truyền ữ liệu ƣ
tr n to n thế gi i Nó ƣ
nối t i
trƣờng họ ,
sử ụng phổ iến
sử ụng ể truyền thƣ iện tử, truy ập
we site, kết
ng sở, gi m s t hệ thống t x , truyền tệp
Trong tƣơng
l i, Internet sẽ trở th nh m i trƣờng truyền th ng phổ ập ho to n thế gi i
Rõ r ng tiềm n ng ủ m ng Internet l r t l n nhƣng nó l i ị h n hế ởi
thiết kế mở ủ m nh Nhƣ t
iết gi o tiếp qu Internet hủ yếu sử ụng gi o thứ
TCP/IP C
iểm nguồn t i iểm í h sẽ i qu r t nhiều máy tính
gói tin truyền t
trung gi n, v vậy nó r t ễ ị xâm ph m,
n thiệp, theo õi v gi m o tr n ƣờng
truyền v
iện ph p
o mật ằng mật khẩu l kh ng
trộm hoặ
ị ò r nh nh hóng; v thế ã huyển s ng xu hƣ ng mã ho
Nhờ th ng tin ƣ
ngƣời gửi mã ho trƣ
m
ov
ó thể ị nghe
khi truyền qu m ng Internet
n n ù kẻ trộm ó “ hặn” ũng kh ng thể ọ Khi t i í h, ngƣời nhận sẽ sử ụng
một
ng ụ ặ
ng ƣ
iệt ể gi i mã Phƣơng ph p mã ho v
thế gi i p ụng l
hữ ký số (Digit l sign ture) V i hữ ký số, ngƣời
sử ụng ó thể mã ho th ng tin một
tính ngƣời gửi Ngo i r
o mật phổ iến nh t
h hiệu qu , hống gi m o, x
hữ ký số òn l
thự
nh
ằng hứng giúp hống hối ãi nguồn
gố , ng n hặn ngƣời gửi hối ãi nguồn gố t i liệu m nh ã gửi
Đối v i
ho t ộng tr n m i trƣờng m ng ng y
n y, hữ ký số l một h nh thứ
ể
o
ng ph t triển nhƣ hiện
m tính ph p lý ủ
m kết Mặt khác,
việ gi o ị h ằng
th ng iệp iện tử nói hung v gi o ị h ở
ri ng ã ƣ
ằng Luật Gi o ị h iện tử; V vậy, ần t m hiểu, nghi n
luật ho
ứu về hữ ký số ể tham mƣu ho lãnh
Nhận th y tính thiết thự
hƣ ng
o trong việ
ủ v n ền yv
o mật v n
ƣ
ng số nói
n iện tử
sự g i ý ủ gi o vi n
n, em ã họn ề t i “Nghiên cứu thử nghiệm bài toán xác thực sử dụng
chữ ký số”
Nghi n ứu
gi i ph p mã ho
ph p, kỹ thuật t o hữ ký số tr n
t i liệu h y v n
ể
o mật th ng tin v những phƣơng
t i liệu, v n
n ủ ngƣời gửi
9/76
n iện tử ể x
thự nguồn gố
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
Xây ựng một hƣơng tr nh ứng ụng ó kh n ng
tin dƣ i
thự
ng v n
n iện tử, t o hữ ký tr n v n
hữ ký số tr n v n
o mật nội ung th ng
n iện tử ần thiết v
hứng
n iện tử góp phần phụ vụ những ngƣời qu n lý ơn vị
tr o ổi th ng tin mật v i
ối t , iều h nh
ng việ t x
Hai mục tiêu trên được thực hiện cụ thể bằng các công việc sau:
T m hiểu những ơ sở to n họ , ộ phứ t p ủ thuật to n v
thƣờng ƣ
sử ụng trong
hệ mật mã kho
thuật toán
ng kh i
Nghi n ứu t m hiểu lý thuyết hung về nguy n lý, ho t ộng v ứng ụng
ủ hệ mật mã kho
ng kh i
Nghiên ứu ơ sở h tầng khó
ng kh i
Nghi n ứu t m hiểu ụ thể
hệ mật kho
nhiều nh t hiện n y
o gồm
ng kh i
ng ƣ
sử ụng
hệ s u:
Hệ mật mã í mật
Hệ mật mã
ng kh i RSA
Nghi n ứu t m hiểu m h nh hữ ký số v ứng ụng trong việ ký
liệu, v n
t i
n iện tử
T m hiểu
ng n ngữ lập tr nh Visu l C# net phụ vụ ho
ng việ lập
tr nh ứng ụng
Tr n ơ sở
mã kho
ó
nghi n ứu ó,
ng kh i, t
nh gi , so s nh ộ n to n ủ
ó xây ựng một hƣơng trình thử nghiệm ứng ụng
hứ n ng t o khó , mã ho hoặ t o hữ ký, gi i mã th ng iệp ự
tr n hệ mật mã RSA ó ộ n to n v hiệu xu t thự thi
ụng v o thự tiễn nhƣ
tr n
hệ mật
t i liệu, v n
o, ó kh n ng ứng
o mật nội ung th ng tin thƣ tín iện tử, t o hữ ký
n iện tử ần thiết tr o ổi th ng qu m ng
Nghi n ứu về mật mã kho
ng kh i RSA, hữ ký số v ứng ụng thuật
toán RSA
Luận v n sẽ tập trung nghi n ứu v l m rõ hơn về ý tƣởng, ơ sở to n họ ,
thuật to n v
ộ phứ t p ủ mã ho nói hung v
khai nói riêng.
10/76
ủ mã hoá khoá công
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
Luận v n tập trung nghi n ứu
t
gi trong v ngo i nƣ
,
i
t i liệu về mã ho , hệ mật mã ủ
o, th ng tin tr n m ng, … Nghi n ứu
ng n ngữ lập tr nh hƣ ng ối tƣ ng Visu l C# net ể viết một ứng ụng thử
nghiệm nhỏ về hữ ký số
Luận v n ƣ
tr nh
y theo h nh thứ t tr n xuống Bắt ầu ủ mỗi phần
ều ƣ r những kh i niệm ơ
mụ
í h giúp ễ
y tiếp s u nhằm
ng trong khi ọ , ần ần i sâu v o ể th o luận rõ hơn những
v n ề li n qu n,
mã kho
n v quy ịnh ho phần tr nh
o gồm việ
ng kh i RSA v
Luận v n ƣ
o vệ n to n th ng tin ữ liệu ùng mật mã, mật
hữ ký số
tr nh
y trong 3 chƣơng v phần kết luận
Chương 1 Tổng quan về các hệ mật mã khóa thông dụng và chữ ký số
Tập trung t m hiểu một số kh i niệm về n to n th ng tin, gi i thiệu về hệ
mật mã khó
thuật to n v
ng kh i
nguy n lý ủ nó; phƣơng ph p xây ựng, ý tƣởng,
ộ phứ t p ủ thuật to n Kh i niệm về hữ ký số, sơ ồ hữ ký số;
Các phƣơng ph p x
thự v h m
m mật mã,
h nh thứ ký, x
thứ
hữ ký
số
Chương 2 Cơ sở hạ tầng khóa công khai
Trong hƣơng n y tr nh
y
nội ung hính về ơ sở h tầng khó
kh i nhƣ: Kh i niệm, th nh phần, hứ n ng v
ị h vụ, m h nh kiến trú Qu
trò,
h thứ tổ hứ v
ây húng t
h thứ ho t ộng,
ó thể hiểu ƣ
h thứ ho t ộng ủ h tầng khó
t ng ể xây ựng ị h vụ hứng thự
ng
tiến tr nh,
tổng qu n về v i
ng kh i Đó l nền
hữ ký số
Chƣơng 3 Xây dựng quy trình thử nghiệm xác thực sử dụng chữ ký số
Áp ụng lý thuyết nghi n ứu ở h i hƣơng tr n ể phân tí h, xây ựng quy
tr nh p ụng x
thự
hữ ký số
Kết luận
Tóm tắt những kết qu
t ƣ
v n v hƣ ng ph t triển ó thể ƣ
ồng thời n u r những h n hế ủ luận
theo hƣ ng nghi n ứu ủ luận v n trong
tƣơng l i
11/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
CHƢƠNG I: TỔNG QUAN VỀ CHỮ KÝ SỐ
1 1 Một số kh i niệm ơ
n về n to n th ng tin
a. Khái niệm về an toàn thông tin
Th ng tin ƣ
lƣu trữ ởi
nguy n qu n trọng ho sự th nh
tổ hứ C
th ng tin
s n phẩm v hệ thống CNTT l một t i
ng ủ tổ hứ
thống CNTT thự hiện
m
nhân h y
nhân lƣu trữ trong hệ thống th ng tin ần ƣ
o vệ v kh ng ị th y ổi khi kh ng ƣ
ể
ó, l t i s n ủ một
o húng ƣ
hứ n ng ủ
phép Trong khi
húng,
o vệ hống l i
giữ í mật,
s n phẩm v hệ
th ng tin ần ƣ
kiểm so t
nguy ơ, ví ụ nhƣ việ phổ iến v
th y ổi th ng tin kh ng mong muốn v tr i phép, nguy ơ m t m t th ng tin
An to n th ng tin l
n to n kỹ thuật ho
ho t ộng ủ
ơ sở h tầng
thông tin, trong ó
o gồm n to n phần ứng v phần mềm theo
thuật o nh nƣ
n h nh; uy tr
ti u huẩn kỹ
tính h t í mật, to n vẹn, hính x , sẵn
sàng phụ vụ ủ th ng tin trong lƣu trữ, xử lý v truyền t i trên.
Thuật ngữ n to n CNTT thƣờng sử ụng ể hỉ việ ng n hặn v l m gi m
nhẹ
mối nguy h i tƣơng ối v i
s n phẩm v hệ thống CNTT
b. Khái niệm về đảm bảo an toàn thông tin
Mụ ti u hƣ ng t i ủ ngƣời ùng l
o vệ
t i s n nói tr n Tuy nhi n
s n phẩm v hệ thống thƣờng lu n tồn t i những iểm yếu
ó thể x y r , l m tổn h i ến gi trị t i s n th ng tin C
tặ ) ó hủ tâm
kh i th
nh ắp, l i ụng hoặ ph ho i t i s n ủ
iểm yếu ể t n
ng, t o r
nguy ơ v
n ến những rủi ro
ối tƣ ng t n
ng (tin
hủ sở hữu, t m
rủi ro ho
hệ
thống
V i
nhận thứ
iện ph p n to n th ng tin ngƣời ùng ó ƣ
ƣ
iểm yếu, gi m thiểu
ng, l m gi m
iểm yếu, ng n hặn
yếu tố rủi ro Nhƣ vậy,
o n to n th ng tin l
ơ sở h tầng th ng tin, trong ó
m
m
o n
s n phẩm v hệ thống
o n to n kỹ thuật ho ho t ộng ủ
o gồm
12/76
nguy ơ t n
iện ph p v kỹ thuật
to n th ng tin hính l m ng l i sự tin ậy ho
Đ m
ng ụ trong t y ể
m
o n to n ho
phần ứng
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
v phần mềm ho t ộng theo
ng n ng
ti u huẩn kỹ thuật o nh nƣ
kh n ng l i ụng m ng v
n h nh;
ơ sở h tầng th ng tin ể thự hiện
h nh vi tr i phép gây h i ho ộng ồng, ph m ph p h y khủng ố;
m
o
tính h t í mật, to n vẹn, hính x , sẵn sàng phụ vụ ủ th ng tin trong
lƣu trữ, xử lý v truyền t i tr n m ng
Nhƣ vậy kh i niệm
m
o n to n th ng tin
phần ứng v phần mềm An to n phần ứng l
tầng th ng tin An to n phần mềm gồm
vệ hệ thống th ng tin,
úng ối tƣ ng một
m
m
o ho
oh m
o
o n to n ho
m ho t ộng ho ơ sở h
ho t ộng qu n lý, kỹ thuật nhằm
o
hệ thống thự hiện úng hứ n ng, phụ vụ
sẵn s ng, hính x , tin ậy An to n
o n to n kỹ thuật ho
m
ng nghệ th ng tin l
s n phẩm, ị h vụ v hệ thống
ng nghệ th ng
tin.
c. Khái niệm về đánh giá an toàn thông tin
Một nhu ầu thự tế ặt r l l m thế n o ể iết
o tin ậy h y kh ng, ó p ụng
kh ng, mứ
iện ph p v kỹ thuật n to n phù h p hay
ộ n to n nhƣ thế n o? Đ nh gi
nhu ầu ó, nhằm ung
s n phẩm về hệ thống
n to n th ng tin hính l
p ằng hứng về việ
m
o n to n ho
ể
p ứng
s n phẩm
v hệ thống
Mặt kh , nhiều ngƣời ti u ùng CNTT kh ng ó ủ kiến thứ , huy n m n
và tài nguy n ần thiết ể ph t xét về sự n to n ủ
CNTT ó phù h p h y kh ng, v
ũng kh ng thể hỉ ự v o
ph t triển Bởi vậy, ngƣời ti u ùng ó thể nâng
nh gi
m kết ủ
o tin ậy trong
to n ủ một s n phẩm hoặ hệ thống CNTT ằng
to n ho húng, nghĩ l
s n phẩm v hệ thống
nh
iện ph p n
h ặt h ng phân tí h về n
n to n
1.2 Kh i qu t hung về hữ ký số
Trong ời sống h ng ng y hữ ký (viết t y) tr n một v n
hứng về “ n quyền” hoặ ít nh t ũng l sự “t n ồng, th
trong v n
ồng mu
n l một minh
nhận”
nội ung
n Chẳng h n nhƣ tr n việ ký v o phiếu nhận tiền t ngân h ng, h p
n, huyển nhƣ ng, th
kế, tố tụng
13/76
Chữ ký viết t y ƣ
hính t y
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
ngƣời ký n n kh ng thể s o hụp ƣ
th
ƣ
phụ
ung ể x
Th ng thƣờng hữ ký viết t y tr n v n
nhận ngƣời ký nó Những yếu tố n o l m n n “sứ thuyết
ủ nó”? Về mặt lý tƣởng th :
-
Chữ ký l
-
Chữ ký thể hiện “ hủ quyền”, nó l m ho ngƣời nhận v n
ằng hứng thể hiện ngƣời ký ó hủ ịnh khi ký v n
í h thị l ngƣời ký v n
-
n
v n
n m kh ng thể
n kh
-
V n
-
Chữ ký kh ng thể gi m o v
v n
n iết rằng ai
n
Chữ ký kh ng thể “t i sử ụng”, v nó l một phần ủ v n
s o hép s ng
n
n ã ký kh ng thể th y ổi ƣ
ũng l thứ kh ng thể hối ỏ (ngƣời ã ký
n kh ng thể phủ ịnh việ m nh ã ký v n
thể t o r
n v ngƣời kh
kh ng
hữ ký ó)
Trong uộ sống ời thƣờng việ t o một m h nh “lý tƣởng” nhƣ tr n l
kh ng ễ v việ ký tr n v n
n gi y ó thể gi m o hữ ký, nhƣng v i kh n ng
kiểm ịnh s t s o th việ l m th y ổi kh ng ph i ễ Tuy nhi n trong thế gi i m y
tính th v n ề ký nhƣ trong thự tế sẽ gặp ph i nhiều khó kh n:
tr n m y tính ó thể th y ổi ễ
ho “s ng - truyền” t một v n
ung một v n
òng th ng tin
ng, h nh nh hữ ký t y ủ một ngƣời ễ
n n y s ng một v n
ng
n kh , v việ th y ổi nội
n iện tử (s u khi ký) ũng hẳng ể l i
u vết g về phƣơng iện
“tẩy, xó ”
Để ó ƣ
những ặ tính nhƣ tr n, gi o thứ “ký trong thế gi i iện tử”
ần ph i ó sự hỗ tr
một th ng
o ƣ
ủ
ng nghệ mã hó
lƣu ƣ i
Sơ ồ hữ ký số l phƣơng ph p ký
ng iện tử Gi o thứ
ơ
n ủ
hữ ký số ự tr n
ý tƣởng ủ Diffie v Hellm n:
-
Ngƣời gửi ( hủ nhân ủ v n
n) ký v n
n ằng
h mã hó nó v i khó
í mật ủ m nh
-
Ngƣời gửi huyển v n
-
Ngƣời nhận v n
n ã ký ho ngƣời nhận
n kiểm tr
ủ ngƣời gửi ể gi i mã v n
hữ ký ằng việ sử ụng h
n
14/76
khó
ng kh i
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
1.2 1 Kh i niệm về hữ ký số
Chữ ký số (khó
ng kh i) l m h nh sử ụng
v i mỗi ngƣời sử ụng một ặp khó
n iện tử ũng nhƣ tr o ổi
phối th ng qu
vẹn ủ
v n
ng kh i thƣờng ƣ
phân
o gồm 2
hữ ký
thuật to n hữ ký số ho phép x
ữ liệu ƣ
ó ó thể ký
ng kh i Qú tr nh sử ụng hữ ký số
quá trình: t o hữ ký v kiểm tr
C
ng kh i - í mật v qu
th ng tin mật Khó
hứng thự khó
kỹ thuật mật mã ể gắn
ịnh nguồn gố ,
truyền i, ồng thời nó ũng
m
o
m tính to n
o tính kh ng thể phủ nhận
ủ thự thể ã ký th ng tin
1.2 2 So s nh hữ ký số v i hữ ký th ng thƣờng ( hữ ký viết t y) tr n v n
Chữ ký số v
-
hữ ký thƣờng ó nhiều iểm kh
Về t i liệu ƣ
liệu Ngƣ
nh u:
ký: V i t i liệu th ng thƣờng, nó l một phần vật lý ủ t i
l i, hữ ký số kh ng ph i theo kiểu vật lý gắn v o th ng
không nhìn th y tr n ứ
-
hữ ký: Chữ ký th ng thƣờng ƣ
s nh nó v i
hữ ký x
thự kh
th ng thƣờng l kh ng n to n v
ằng
h so
( hữ ký m u) Điểm yếu ủ
hữ ký
ƣ
Việ
kiểm tr
ễ ó thể gi m o Ngƣ
kiểm tr nhờ ung thuật to n kiểm tr
kiểm tr
on n
iện
V n ề kiểm tr
ƣ
n.
ng kh i,
l i, hữ ký số l i
t kỳ i ũng ó thể
ung một sơ ồ hữ ký n to n ó thể ng n hặn ƣ
gi m o
1.2 3 Vị trí, v i trò ủ
-
hữ ký số iện tử
Xu hƣ ng quố tế hó v to n ầu hó
ãv
ng nh hƣởng ến sự ph t
triển ủ thế gi i Việ tr o ổi th ng tin ũng t
hính x
v
ặ
tin theo phong
iệt ph i n to n Việ tr o ổi th ng tin, hứng thự th ng
h truyền th ng l m gi m tố
ủ th ng tin Những
hễ v thiếu hính x
-
ó y u ầu nh nh gọn,
ng việ
ộ, ũng nhƣ sự hính x
ó m ng tính h t thủ
trong tr o ổi
Chính khó kh n ã n y sinh sự ph t triển m nh mẽ ủ
v
ng nghệ mã hó
ng gây r sự hậm
Hiện n y ở t t
15/76
nƣ
ng nghệ th ng tin
ph t triển ũng nhƣ
ng
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
ph t triển, m ng m y tính
ng ng y
ng óng v i trò thiết yếu trong mọi
lĩnh vự ho t ộng ủ to n xã hội v nhu ầu
h ng ầu Điển h nh l việ mã hó
nghiệp, ung hữ ký số x
v o
-
o mật
m v i trò hủ yếu l
hiện n y nhiều nƣ
o nh
hữ ký số iện tử
thự hiện ho
gi o ị h iện tử
òn qu hệ thống m ng viễn th ng i ộng Đặ
iệt,
tr n thế gi i kh ng hỉ triển kh i ứng ụng hữ ký số
tr n m ng m y tính m
hiện
th ng tin số ủ
ơn ặt h ng, ngân h ng iện tử, mu
Tr n thự tế, hữ ký số kh ng hỉ ƣ
tr n m ng Internet m
ặt l n
thự em il tr o ổi th ng tin, kiểm so t truy ập
s n thƣơng m i iện tử v
sắm trự tuyến
o mật th ng tin ƣ
òn p ụng tr n m ng iện tho i i ộng ể thự
gi o ị h iện tử Hƣ ng i n y giúp ẩy nh nh gi o ị h, ơn gi n
hó mu sắm trự tuyến v giúp ngƣời ùng ó thể truy ập mọi lú , mọi nơi
-
Sự r
ời ủ
ồng thời
hữ ký số khẳng ịnh ƣ
l i í h to l n về hiến lƣ
v n ề li n qu n ến hữ ký số ũng l
kinh tế,
hủ ề qu n trọng nh t
ủ mật mã họ
1.2.4 Sơ ồ tổng qu n ủ một hệ thống hữ ký số iện tử
Một sơ ồ hữ ký số thƣờng
ký v thuật to n x
o gồm h i th nh phần hủ hốt l thuật to n
minh Một sơ ồ hữ ký số l một ộ 5 (P, A, K, S, V) thỏ
mãn
iều kiện s u:
-
P l một tập h p
n rõ ó thể
-
A l tập hữu h n
hữ ký ó thể
-
K l tập hữu h n
-
S l tập
thuật to n ký
-
V l tập
thuật to n x
khó
ó thể
minh
V i mỗi k thuộ K, tồn t i một thuật to n ký sigk thuộ S v một thuật to n
x
minh verk thuộ V, trong ó sigk v verk l
nh x : Si k l một nh x t P
s ng A v Verk l một nh x t A s ng tập iểu iễn {True, F lse} thỏ mãn v i
mọi x ϵ P, y ϵ A, ver(x,y) = true nếu y=sig(x) v ver(x,y) = f lse nếu y kh
16/76
sig(x)
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
V i mỗi k ϵ K, h m sigk v verk l
h m thời gi n
thứ , verk l h m
ng
kh i òn sigk l h m mật
Ý nghĩ
ủ sơ ồ: Khi một ngƣời ùng muốn ký l n một th ng
ngƣời ó ung thuật to n n to n ể t o r
hữ ký y = sig(x) nhận ƣ
ngƣời nhận Ngƣời nhận nhận ƣ
hữ ký sig(x) th
ver(x,y) ể x
hữ ký số (tr về true hoặ f lse)
ịnh tính úng ắn ủ
o x th
v gửi ho
ùng thuật to n x
minh
1.2.5 Thuật to n hữ ký số RSA
- Phƣơng ph p hữ ký số RSA ƣ
khó
xây ựng ự tr n thuật to n mã hó
ng kh i RSA Để t o một ặp khó , RSA thự hiện
ƣ
s u:
Chọn 2 số nguy n tố l n ng u nhi n p, q Nhằm ó sự n to n tối
n n họn p v q ó ộ
i ằng nh u
Tính n=pq và φ=(p−1)(q−1)
Chọn ng u nhi n một số nguy n e (1
v ig
l ƣ
số hung l n nh t
Tính: d=e−1 mo φ.
- Kết quả là ta có đƣợc cặp khóa: khó
(n, ) H i ngƣời sẽ sử ụng hung một h m
m ℋ n to n trƣ
ột Để ký một th ng iệp m, ngƣời ký thự hiện
Dùng h m
mℋ ể
ng kh i (n,e) v khó
ƣ
í mật
hiện tƣ ng xung
s u:
m th ng iệp m: h=ℋ(m).
Tạo chữ ký số sử ụng khó
í mật (n, ) ể tính:
s=h d mod n.
- Chữ ký ủ m là s v
ƣ
gửi kèm v i th ng iệp m ến ngƣời nhận Để
xác nhận chữ ký, ngƣời nhận thực hiện các bƣớc sau:
Sử ụng khó
ng kh i (n,e) ủ ngƣời ký ể gi i mã hữ ký:
h=s e mod n.
m ℋ v i ngƣời ký ể
Sử ụng ùng h m
h′=H(m)
Ch p nhận hữ ký nếu h′=h Ngƣ
l it
17/76
hối hữ ký
m th ng iệp m:
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
1.2.6 Thuật to n hữ ký DSA
- Thuật to n hữ ký số DSA (Digit l Sign ture Algorithm) ƣ
ề nghị ởi
NIST v o th ng 8/1991 ể sử ụng trong huẩn hữ ký số DSS (Digit l Sign ture
St n r ), ƣ
ƣ
ƣ
lự
hỉ r trong FIPS 186, ƣ
h p nhận n m 1993 Một sử
ƣ r ng y n m 1996 trong FIPS 186-1, huẩn ƣ
mở rộng hơn n m 2000,
xem nhƣ xem nhƣ FIPS 186-2 Việ t o khó gồm h i ƣ
họn
th m số ho thuật to n ƣ
hi sẻ giữ
ổi nhỏ
Bƣ
thứ nh t l
ngƣời sử ụng kh
nh u
trong ùng hệ thống:
Chọn một h m
SHA-1, nhƣng
ƣ
m mã hó ℋ Trong DSS huẩn ℋ luôn là
h m
m tốt hơn trong nhóm SHA ũng
sử ụng Đ i khi ầu r
rút ngắn kí h thƣ
so v i
ủ một thuật to n
thuật to n
ng
m m i hơn ị
m m i ũ ể tƣơng
tí h v i ặp khó hiện ó
Chọn kí h thƣ
m nh mã hó
khó L Đây l thƣ
o hính quyết ịnh sứ
ủ khó DSS huẩn r ng uộ L l
ội số ủ 64
v 512≤L≤1024 S u ó, FIPS 186-2 x
ịnh L lu n l 1024
Không lâu sau, NIST 800-57 ề nghị ộ
i khó l 2048 (hoặ
3072) ể thời gi n n to n ến n m 2010 (hoặ 2030), sử ụng
tƣơng ứng v i
ũng tính ến
gi trị
h m
mv q
i hơn B n th o FIPS 186-3
ms un yv
khó
i hơn
Chọn một số nguy n tố q ùng số it v i ầu r
ủ ℋ.
Chọn một số nguy n tố p ộ
i L it s o ho p–1 l
ội ủ q
Tứ l p=qz–1 v i số nguy n z n o ó
Chọn g = h ( p1) / q mo p v i h
kết qu l 1 Hầu hết
h họn h ều nhận ƣ
ụng, th ng thƣờng họn h=2
18/76
t kỳ (1
họn l i nếu
g ó thể sử
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
-C
th m số thuật to n (p,q,g) ó thể hi sẻ giữ những ngƣời kh
trong hệ thống Bƣ
thứ h i tính
khó
í mật v khó
nh u
ng kh i ủ t ng
ngƣời:
Chọn x ng u nhi n s o ho 0
Tính y=g x mod p.
Khó
- Phi n
ng kh i l (p,q,g,y), khó
í mật l x
n FIPS 186-3 sắp t i sử ụng SHA-224/256/384/512 là các hàm
m, kí h thƣ
ủ q l 224 (hoặ 256 it), v L ằng 2048 (hoặ 3072)
- Để ký một th ng iệp m, ngƣời ký thự hiện
ƣ
s u:
Ph t sinh một số ng u nhi u k (0
Tính r=(g k mod p) mod q.
Tính s = k 1 (ℋ(m) + xr)) mod q.
Tính to n l i hữ ký trong trƣờng h p kh ng hắ
hắn r=0 hoặ
s=0.
Chữ ký l (r,s)
- Để x
nhận hữ ký, ngƣời nhận thự hiện
ƣ
s u:
Lo i ỏ hữ ký nếu 0
Tính w=s 1 mod q.
Tính u 1 =(ℋ(m)×w) mod q.
Tính u 2 =(r×w) mod q.
Tính v=( (g u ×y u )mod p) mod q
1
2
Chữ ký ó hiệu lự nếu v=r
- Tính úng ắn ủ gi i thuật ƣ
hứng minh nhƣ s u:
/q
Đầu ti n, nếu g = h ( p1) mod p suy ra gp=h p1 −1=1 (mo p) theo
ịnh lý Ferm t nhỏ Bởi v g>1 v q l số nguy n tố n n g ó ậ
q.
Ngƣời ký tính s = k 1 (ℋ(m) + xr)) mod q.
Nhƣ vậy k=ℋ(m)s 1 +xrs 1 =ℋ(m)w+xrw (mod q).
19/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
Bởi v g ó ậ q n n t
ó:
g k =g H ( m ) w .g xrw =g H ( m ) w y rw =g u y u (mod p).
1
2
Cuối ùng, tính úng ắn ủ DSA suy r t :
r= (g k mod p) mod q= (g u y u mod p) mod q=v.
1
2
- Phƣơng ph p DSA ã gi i quyết v n ề n y ằng
it ho v n
n 160 it v i
phép tính ƣ
h sử ụng hữ ký 320
thự hiện tr n tập on ó 2160 phần
tử v i p l số nguy n tố 512 it
1.3 Cơ sở h nh th nh hữ ký số
1.3 1 Cơ sở to n họ
Số họ l một nh nh ủ to n họ , nhƣng nó l i trở th nh một trong những
công ụ hữu hiệu nh t ủ ng nh n ninh m y tính Nhƣ l sự khởi ầu, số họ giúp
o vệ những ữ liệu nh y
m nhƣ số thẻ tín ụng khi giúp ngƣời ùng mu sắm
trự tuyến Đó hính l kết qu
ủ một số th nh tựu nghi n ứu
những n m 1970 t i n y, ã ƣ
mã hó
ặ
iệt l
ng ghi nhận t
p ụng rộng rãi tr n thế gi i Những gi o thứ
hữ ký số iện tử ều ự tr n lý thuyết số họ
ể t o khó , mã
hó v gi i mã An tò n ủ những gi o thứ n y ều li n qu n t i v n ề trong số
họ : gi i thuật
1.3 2 H m
ng kh i v phân tí h th
số nguy n tố
m mật mã
a) Giới thiệu:
Trong ngành mật mã họ , một h m
fun tion) l một h m
m v i một số tính h t
sử ụng trong nhiều ứng ụng
thự
( uthenti tion) v
integrity) Một h m
m mật mã họ (cryptographic hash
o mật nh t ịnh ể phù h p việ
o mật th ng tin
kiểm tr
ng, hẳng h n nhƣ hứng
tính nguy n vẹn
m nhận ầu v o l một xâu ký tự
i tùy ý v t o r kết qu l một xâu ký tự ó ộ
ủ
th ng
iệp (message
i (h y th ng iệp) ó ộ
i ố ịnh,
i khi ƣ
gọi l
tóm tắt thông điệp (mess ge igest) hoặ chữ ký số (digital fingerprint).
C
h m
m nhận một huỗi it ó hiều
ầu v o v t o r một huỗi it ó hiều
20/76
i tùy ý ( hữu h n) l m ữ liệu
i ố ịnh ằng n it, gọi l mã
m Sự
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
th y ổi nhỏ ủ
x
huỗi ầu v o ũng l m th y ổi gi trị
ịnh, R l miền gi trị ủ h m
m Ký hiệu D l miền
m h(x)
h(x) : D R
T
ó số lƣ ng phần tử ủ tập D l n hơn gi trị ủ tập R h m
kh ng ph i l
ơn nh Lu n tồn t i ặp ầu v o kh
Gi sử h n hế h m h(x) tr n miền x
hiều
nh u ó ùng gi trị
ịnh hỉ
i t ( t>n) Nếu h(x) l ng u nhi n v i t t
o gồm
gi trị ầu r
ủ nó ó x
m nhƣng ể t m một ầu v o ó ùng gi trị
m v i gi trị
ù iết trƣ
gi trị
m ã iết l r t khó
h(x) thí h h p v n ủ l n
Trong lĩnh vự mã hó th ng tin, mã
ủ một huỗi it tùy ý v
ểt or
su t ể h i
i ằng nh u) ầu v o nh x v o ùng một gi trị l 2-n(không
phụ thuộ v o t) Nếu n lơn th 2-n sẽ r t nhỏ Nhƣ vậy mặ
nếu họn ƣ
m
huỗi it ó
su t ằng nh u th ó kho ng 2(t-n) ầu nh x v o mỗi gi trị ầu r X
gi trị( ó hiều
m h(x)
hữ ký số v
m
ùng ể nhận r
m ƣ
xem nhƣ ặ trƣng thu gọn
huỗi it ó H m
m hính l
ng ụ
o n to n ữ liệu
b) Khái niệm và định nghĩa:
H m
m l một gi i thụât nhằm sinh r
khối ữ liệu Gi trị
gi trị
m óng v i trò gần nhƣ một khó
m tƣơng ứng v i mỗi
ể phân iệt
liệu
Hình 1.1: Ảnh Minh họ l m việ
21/76
ủ một h m
m
khối ữ
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
Phân lo i:
H m
m một hiều: (one – way hash functions) : L h m
v i mọi mã
m iết trƣ , kh ng thể tính to n ể t m ƣ
huỗi it
n
m kh ng xung ột : ( ollision resist nt h sh funtions) l h m
m
ầu v o ó mã
H m
m m ng h t :
m ằng v i mã
m ã ho
m ng tính h t : kh ng thể tính to n ể t m r h i huỗi it ó ùng gi trị
m
Một số tính h t ơ
n ủ h m
m:
-
Có thể p ụng v i th ng
o ầu v o ó ộ
-
T o r gi trị
-
h(x) ễ
-
Tính một hiều: V i mọi ầu r y ho trƣ
m y = h(x) ó ộ
ng tính ƣ
v i
i
t kỳ
i ố ịnh
t kỳ x n o
kh ng thể t m ƣ
x’ s o
Tính hống xung ột yếu: V i mọi ữ liệu ầu v o x1 ho trƣ
kh ng
cho h(x’) ằng gi trị y ho trƣ
-
thể t m ƣ
t kỳ gi trị x2 nào (x2 khác x1) mà h(x2) = h(x2).
Tính h ng xung ột m nh: Kh ng thể tính to n ể t m ƣ
-
h i ữ
liệu ầu vào x1 và x2 phân iệt s o ho húng ó ùng gi trị
m
(h(x1) =h(x2)).
c) Cấu trúc cơ bản của thuật toán băm:
Khối ữ liệu ầu v o x ó hiều
khối on li n tiếp ó hiều
nhi n o hiều
liệu
i ố ịnh r, gi sử ƣ
i ủ khối ữ liệu
phân th nh
nh số l x1,x2,...,xm. Tuy
n ầu x l tùy ý, o ó ần ph i th m v o ữ
n ầu một số it phụ s o ho tổng số it ủ khối ữ liệu x’ s u khi th m
v o sẽ l
hiều
i hữu h n tùy ý sẽ ƣ
ội số ủ r Ngo i r khối it th m v o thƣờng hứ một khối it (có
i ố ịnh trƣ
ữ liệu khi hƣ th m
, thƣờng l 64 it) x
nhận ữ liệu
i thự sự ủ khối t
it phụ
Tiếp theo, lần lƣ t ắt
bit xi lần lƣ t ƣ
ịnh hiều
khối on r it t khối mở rộng x’ Mỗi khối on r
qu một h m nén f ủ h m
m h(x) T i ƣ
u v o l xi v kết qu trung gi n ủ
22/76
ƣ
trƣ
thứ i, h m nén f
ó( ƣ
i – 1) ể
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
t o ầu r l kết qu trung gi n ƣ
t i mỗi ƣ
thứ i, ƣ
Hi l một huỗi it ó ộ
Kết qu ký hiệu IV l gi trị
khối on x1,x2, ,xm ƣ
ký hiệu l Hi Kết qu trung gi n
i ố ịnh ằng n > 0
n ầu ( ho H0 ), th qu tr nh lặp xử lý ãy
m t :
H0 = IV
Hi = f(Hi-1,xi) (i = 1,2,..,m)
h(x) = g(Hm)
-
C
iến Hi l
iến ây huyền
-
H m g(x) l y iến ây huyền uối ùng ể t o r mã
ần t m Trong hầu hết
m uối ùng
thuật to n g(x) thƣờng ƣ
họn l
nh x
ồng nh t tứ l g(Hm) = Hm
-
Khâu then hốt trong xây ựng h m
-
Gi trị ủ h m
m l thiết kế h m nén f
m mật mã ủ một th ng iệp ƣ
gọi l Mess ge
Digest (MD).
Một số h m
m mật mã th ng ụng : MD4,MD5 và SHA-1
d) Giải thuật MD4:
MD4 (Message-Digest thuật to n 4) l một th ng iệp ti u hó thuật to n
(thứ tƣ trong lo t ) ƣ
thiết kế ởi Gi o sƣ Ronald Rivest ủ MIT v o n m
1990 Nó thự hiện một h m
th ng iệp Chiều
m mật mã ể sử ụng trong kiểm tr tính to n vẹn
i ủ gi trị
m l 128 it
Thuật to n MD4 nhận ữ liệu ầu v o l một huỗi it x ó hiều
tùy ý v sinh r mã
ƣ
ịnh
m ủ x ó hiều
ng l i ằng
huỗi it m i l
’=
S u ó hi
+rl
i ố ịnh 128 it Trƣ
i
>= 0
ti n huỗi it x
h th m r > 0 it phụ thuộ v o x s o ho hiều
i ủ
ội số ủ 512
huỗi it m i n y th nh m khối, mỗi khối ó ộ
512 it Mỗi khối it n y l i hi th nh 16 t , mỗi t
i úng ằng
ó 32 it
Thuật to n MD4 tuần tự xử lý ãy m khối trong m lƣ t tính to n Dữ liệu ầu
v o t i lƣ t tính to n thứ k (1 <= k <= m) l khối thứ k trong ãy v mã
23/76
m nhận
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
ƣ
s u (k-1) lƣ t tính to n trƣ
t o t trƣ
ó ( mã
m ầu v o ứng v i k = 1 ã ƣ
khởi
)
T i lƣ t tính to n thứ k n y, khối ữ liệu ầu v o 512 it li n tiếp i qu 3
vòng tính to n, trong mỗi vòng gồm ó 16 ƣ , mỗi ƣ
ữ liệu l một t trong ãy v
kết qu nhận ƣ
khi qu 3 vòng tính to n tr n sẽ ƣ
thự hiện tính to n v i
s u ƣ
kết h p v i mã
trƣ
m trƣ
Kết qu s u
ó ể sinh r mã
m m i ( ho lƣ t tính to n thứ k) S u khi ã xử lý hết m khối, mã
s u ùng l kết qu t
m nhận ƣ
ần t m
e) Giải thuật MD5:
MD5 (Message-Digest lgorithm 5) l một h m
m l 128 it T ng ƣ
r ng r i trong
m ể mã hó v i gi trị
xem l một huẩn tr n Internet, MD5 ã ƣ
hƣơng tr nh n ninh m ng, v
ũng thƣờng ƣ
sữ ụng
ùng ể kiểm
tr tính nguy n vẹn ủ tập tin
MD5
m trƣ
ƣ
thiết kế ởi Ron l Rivest v o n m 1991
ó, MD4 ( ũng o ng thiết kế, trƣ
ể th y thế ho h m
ó nữ l MD2)
MD5 có 2 ứng dụng quan trọng:
-
MD5 ƣ
sử ụng rộng r i trong thế gi i phần mềm ể
m
o rằng
tập tin t i về kh ng ị hỏng Ngƣời sử ụng ó thể so s nh giữ th ng số
kiểm tr phần mềm ằng MD5 ƣ
ng ố v i th ng số kiểm tr phần
mềm t i về ằng MD5
-
MD5 ƣ
ùng ể mã hó mật khẩu Mụ
í h ủ việ mã hó n y l
iến ổi một huổi mật khẩu th nh một o n mã kh , s o ho t
o n
mã ó kh ng thể n o lần trở l i mật khẩu Có nghĩ l việ gi i mã l
kh ng thể hoặ ph i m t một khoãng thời gi n v tận
Thuật giải
MD5 iến ổi một th ng iệp ó hiều
ố ịnh 128 its Th ng iệp ƣ v o sẻ ƣ
ƣ
ƣ v o ộ ệm ể hiều
i
t k th nh một khối ó kí h thƣ
ắt th nh
khối 512 its Th ng iệp
i ủ nó sẻ hi hết ho 512 Bộ ệm ho t ộng nhƣ
sau:
24/76
Luận văn thạc sỹ kỹ thuật máy tính và truyền thông
-
Trƣ
ti n nó sẻ hèn it 1 v o uối th ng iệp
-
Tiếp ó l h ng lo t it Zero ho t i khi hiều
i ủ nó nhỏ hơn ội số
ủ 512 một kho ng 64 it
-
Phần òn l i sẻ ƣ
l p ầy ởi một số nguy n 64 it iểu iển hiều
i
n ầu ủ th ng iệp
Thuật to n hính ủ MD5 ho t ộng tr n một ộ 128 it Chi nhỏ nó r
th nh 4 t 32 it, kí hiệu l A,B,C v D C
gi trị n y l
ó thuật to n hính sẻ luân phi n ho t ộng tr n
hằng số ố ịnh S u
khối 512 it Mỗi khối sẻ phối
h p v i một ộ Qu tr nh xữ lý một khối th ng iệp
o gồm 4 ƣ
tƣơng tự
nh u, gọi l vòng (“roun ”) Mỗi vòng l i gồm 16 qu tr nh tƣơng tự nh u ự tr n
h m một hiều F, phép ộng mo ule v phép xo y tr i…
H nh
n ƣ i m t một qu tr nh trong một vòng Có 4 h m một hiều F ó
thể sử ụng Mỗi vòng sử ụng một h m kh
nh u
Hình 1.2: Gi i thuật MD5
25/76