Giáo trình An toàn và bảo mật thông tin - Trường Đại học Hàng Hải
BỘ GIAO THÔNG VẬN TẢI
TRƯỜNG ĐẠI HỌC HÀNG HẢI
́ ́
BỘ MÔN: KHOA HOC MAY TINH
̣
KHOA: CÔNG NGHỆ THÔNG TIN
Giáo trình
AN TOÀN VÀ BẢO MẬT THÔNG TIN
TÊN HỌC PHẦN : An toàn và bảo mật Thông tin
MÃ HỌC PHẦN : 17212
TRÌNH ĐỘ ĐÀO TẠO : ĐẠI HỌC CHÍNH QUY
DÙNG CHO SV NGÀNH : CÔNG NGHỆ THÔNG TIN
HẢI PHÒNG - 2008
Tên học phần: An toan bao mât
̣
thông tin
Loại học phần: II
̉
̀
Bộ môn phụ trách giảng dạy: Khoa học máy tính.
Khoa phụ trách: Công nghệ thông tin
Mã học phần:
Tổng số TC: 3
TS tiết
Lý thuyết Thực hành/ Xemina Tự học Bài tập lớn Đồ án môn học
45 30
75
0
0
0
Điều kiện tiên quyết:
Sinh viên cân hoc
trinh hương đô
̀
̣ ̣
xong cac hoc phần:
́
-
-
-
Lâp
Câu truc dư liêu
̣
Phân tich, thiêt kế va đanh gia thuât toan.
̀ ́ ́ ́
̣
́
i tươn
̣
g
́
̀
́
̣
́
̃
́
́
Mục đích của học phần:
Truyền đạt cho sinh viên những kiến thức cơ bản về các lĩnh vực riêng trong an
toàn bảo mật máy tính:
-
-
-
-
Các giải thuật mã hóa trong truyền tin.
Các thuật toán tạo hàm băm và chữ ký điện tử.
Các mô hình trao chuyển khóa.
Các mô hình chứng thực và các giao thức mật mã.
Nội dung chủ yếu:
Gôm 2 phân:
Phân ly thuyê
Phân lâp
̀
̀
-
-
̀
́
t: cung câ
́
p cac ly thuyê
́
t vê
̣ ̣ ̣ ̣
t cac ưng dung sư dung cac hê ma mât
̉
̃
́
̀ thuât toan ma hoa, các giao thức.
̣
́
́
́
́
̃
́
̀
̣
trinh: cài đꢀt các hệ mã, viê
́
́
́
̀
Nội dung chi tiết của học phần:
Phân phối số tiết
Tên chương mục
TS
4
LT Xemine BT
KT
0
3
1
0
Chương I. Giới thiệu nhiệm vụ của an toàn và bảo
mật thông tin.
1.1. Các khái niệm mở đầu.
1
1.1.1. Thành phần của một hệ thống thông tin
1.1.2. Những mối đe dọa và thiệt hại đối với hệ thống
thông tin.
1.1.3. Giải pháp điều khiển kiểm soát an toàn bảo mật
1.2. Mục tiêu và nguyên tắc chung của ATBM.
1.2.1. Ba mục tiêu.
1.2.2. Hai nguyên tắc
1.3. Giới thiệu chung về các mô hình mật mã.
1.3.1. Mô hình cơ bản trong truyền tin và luật Kirchoff.
1.3.2. Những giai đoạn phát triển của lý thuyết mã hóa.
1
1
1
13
5
2
5
2
2
1
1
Chương II. Một số phương pháp mã hóa cổ điển.
2.1. Phương pháp mã đơn giản.
2.1.1. Mã hoán vị trong bảng Alphabet.
2.1.2. Mật mã cộng tính.
2.2.3. Mật mã nhân tính.
2.1.4. Phân tích mã theo phương pháp thống kê.
2.2. Phương pháp mã bằng phẳng đồ thị tần xuất.
2.2.1. Mã với bảng thế đồng âm.
3
3
1
2.2.2. Mã đa bảng thế: giải thuật mã Vigenre và One time
pad.
2.2.3. Lý thuyết về sự bí mật tuyệt đối.
2.2.4. Đánh giá mức độ bảo mật của một phương pháp
mã hóa.
̉
Kiêm tra
1
0
16
8
1
7
3
1
Chương III. Mật mã khối.
3.1. Khái niệm.
3.1.1. Điều kiện an toàn cho mật mã khối
3.1.2. Nguyên tắc thiết kế.
̉
3.2. Chuân ma hoa dư liêu
̣
DES
3
0,5
̃
́
̃
3.2.1. Lịch sử của DES
3.2.2. Cấu trúc vòng lꢀp DES.
3.2.3. Thuật toán sinh khóa con
3.2.4. Cấu trúc hàm lꢀp.
3.2.5. Thuật toán giải mã DES.
3.2.6. Đánh giá mức độ an toàn bảo mật của DES.
3.2.7. TripleDES
̉
3.3. Chuân ma hoa cao câ
́
p AES
3
1
3
0,5
̃
́
3.3.1. Giơi thiêu
̣
về AES
́
3.3.2. Thuât
3.3.3. Thuât
3.3.4. Cài đꢀt AES
3.4 Một số chế độ sử dụng mã khối.
3.4.1. Chế độ bảng tra mã điện tử
3.4.2. Chế độ mã móc xích
̣
toan ma hoa
́
̃
́
̣
toan giai ma
̉
̃
́
1
7
3.4.3. Chế độ mã phản hồi
16
6
1
2
2
1
Chương IV. Hệ thống mã với khóa công khai.
4.1. Khái niệm khóa công khai.
4.1.1. Đꢀc trưng và ứng dụng của hệ mã khóa công khai.
4.1.2. Nguyên tắc cấu tạo hệ khóa công khai
4.2. Giới thiệu một số giải thuật PKC phổ biến.
4.1.1. Hệ mã Trapdoor Knapsack.
1
2
1
3
4.1.2. Hệ mã RSA
4.1.3. Hệ mã ElGamal
Kiểm tra
2
3
5
1
0
12
7
0
Chương V. Chữ ký điện tử và hàm băm.
5.1. Chữ ký điện tử.
0,5
5.1.1. Định nghĩa.
5.1.2. Ứng dụng của chữ ký điện tử
5.2. Giơi thiêu
̣
môt
̣
số
hê
̣
chư ky điên
̣
tư
̉
3
́
̃
́
5.2.1. Hê
5.2.2. Hê
̣
̣
chư ky điên
̣
tư RSA
tư ElGamal
̉
2
̃
́
̉
chư ky điên
̣
̃
́
̉
̣
5.2.3. Chuân chư ky điên tư DSA
̉
̃
́
5.3. Hàm băm.
5.3.1. Định nghĩa.
5.3.2. Sinh chữ ký điện tử với hàm băm
5.4. Môt sô ham băm thông dun
0,5
3
̣
́
̣
g
̀
5.4.1. Hàm băm MD5
5.4.2. Hàm băm SHA1
1,5
1,5
8
6
5
1
3
0
0
0
1
Chương VI. Quản lý khóa trong hệ thống mật mã
6.1. Quản lý khóa đối với hệ SKC
6.1.1. Giới thiệu phương pháp quản lý khóa.
6.2. Quản lý khóa trong các hệ PKC
1
1
1
1
6.2.1. Giao thức trao chuyển khóa Needham – Schoeder
̉
6.2.2. Giao thưc trao đôi khoa Diffie-Hellman
1
2
́
́
6.2.3. Giao thưc Kerberos
́
3
1
2
Chương VII. Giao thức mật mã
7.1. Khái niệm giao thức mật mã
7.1.1. Định nghĩa giao thức mật mã
7.1.2. Mục đích giao thức mật mã.
7.1.3. Các bên tham gia vào giao thức mật mã
7.2. Tìm hiểu thiết kế các giao thức mật mã điển hình
7.2.1. Một số dạng tấn công đối với giao thức mật mã.
7.2.2. Giới thiệu một số giao thức mật mã.
7.3. Kiểm tra.
2
2
1
Nhiệm vụ của sinh viên: Lên lớp đầy đủ và chấp hành mọi quy định của Nhà trường.
Tài liệu học tập:
1. Phan Đình Diệu. Lý thuyết mật mã và An toàn thông tin. Đại học Quốc Gia Hà
Nội.
2. Douglas R. Stinson. Cryptography Theory and practice. CRC Press. 1995.
3. A. Menezes, P. VanOorschot, and S. Vanstone. Handbook of Applied
Cryptography. CRC Press. 1996.
4. William Stallings. Cryptography and Network Security Principles and Practices,
Fourth Edition. Prentice Hall. 2005.
5. MichaelWelschenbach. Cryptography in C and C++. Apress. 2005.
Hình thức và tiêu chuẩn đánh giá sinh viên:
- Sinh viên phải làm các bài kiểm tra trong quá trình học và thực hành. Thi vấn đáp.
- Sinh viên phải bảo đảm các điều kiện theo Quy chế của Nhà trường và của Bộ.
Thang điểm : Thang điểm 10.
Điểm đánh giá học phần: Z = 0,3 X + 0,7 Y.
MꢀC LꢀC
I ĐÂU....................................................................................................................1
I THIÊU..................................................................................................2
2. Khꢀi niꢁm hꢁ thꢂng vꢃ tꢃi sꢄn cꢅa hꢁ thꢂng ..............................................................2
5. Mât ma hoc (cryptology) ............................................................................................4
6. Khꢀi niꢁm hꢁ mꢌ mꢋt (CryptoSystem) .......................................................................4
7. Mô hinh truyên tin cơ ban cua mât ma hoc va luât Kirchoff .......................................5
1. Lꢏ thuyꢐt thông tin ................................................................................................... 10
1.1. Entropy............................................................................................................. 10
1.2. Tốc độ cua ngôn ngƣ. (Rate of Language) ....................................................... 11
1.3. Tꢑnh an toꢃn cꢅa hꢁ thꢂng mꢌ hoꢀ ................................................................... 11
2. Lꢏ thuyꢐt đꢈ phꢔc tꢆp.............................................................................................. 13
2.1. Đꢈ an toꢃn tꢑnh toꢀn ......................................................................................... 14
2.2. Đꢈ an toꢃn không điều kiꢁn .............................................................................. 14
3.3. Hꢁ mꢋt tꢑch ....................................................................................................... 16
3. Lꢏ thuyꢐt toꢀn hꢕc ................................................................................................... 17
3.4. Vꢃnh ZN (vꢃnh đꢖng dƣ module N)................................................................... 18
3.5. Phân tƣ nghich đao .......................................................................................... 18
3.6. Hꢃm phi Ơle ..................................................................................................... 19
3.7. Thăng dƣ bâc hai.............................................................................................. 19
3.8. Thuât toan luy thƣa nhanh................................................................................ 20
́ .................................................................................................... 17
chung lơn nhất..................................................................................... 17
4. Cꢀc thuꢋt toꢀn kiꢘm tra sꢂ nguyên tꢂ. ..................................................................... 23
4.1. Môt sô ky hiêu toan hoc.................................................................................... 23
4.2. Thuât toan Soloway-Strassen........................................................................... 25
toan Rabin-Miller..................................................................................... 26
toan Lehmann......................................................................................... 26
5. Bꢃi tꢋp..................................................................................................................... 26
CHƢƠNG III: CꢍC Hꢙ Mꢚ KHꢛA Bꢜ MꢝT ...................................................................... 28
1. Cꢀc hꢁ mꢌ cꢞ điꢘn................................................................................................... 28
ma Caesar .................................................................................................. 28
ma Affine..................................................................................................... 29
ma Vigenere................................................................................................ 30
ma Hill......................................................................................................... 30
ma đôi chỗ (transposition cipher)................................................................. 32
2. Cꢀc hꢁ mꢌ khꢂi ....................................................................................................... 34
2.5. Chuân ma hoa cao câp AES............................................................................. 54
3. Bꢃi tꢋp..................................................................................................................... 72
1. Khꢀi niꢁm hꢁ mꢌ mꢋt khóa công khai...................................................................... 77
ma knapsack............................................................................................... 78
̣ ma khoa công khai.................................................................................. 78
ma RSA....................................................................................................... 79
ma El Gamal ............................................................................................... 83
4. Bꢃi tꢋp..................................................................................................................... 96
CHƢƠNG V: CHƢ̃ KÝ ĐIÊṆ TƢ VÀ HÀ M BĂM............................................................ 101
1. Chƣ ky điên tƣ....................................................................................................... 101
1.1. Khꢀi niꢁm về chữ kꢏ điꢁn tử ........................................................................... 101
1.2. Hꢁ chữ kꢏ RSA............................................................................................... 102
1.3. Hꢁ chữ kꢏ ElGammal...................................................................................... 103
1.5. Mô hinh ƣng duṇ g cua chƣ ky điêṇ tƣ................................................................ 108
2. Hꢃm Băm (Hash Function) .................................................................................... 109
2.1. Khꢀi niꢁm ....................................................................................................... 109
2.2. Đặc tꢑnh cꢅa hꢃm Băm ................................................................................... 109
2.3. Birthday attack................................................................................................ 110
2.4. Mꢈt sꢂ hꢃm Băm nꢞi tiꢐng .............................................................................. 111
2.5. Mꢈt sꢂ ƣng duṇ g cua hꢃm Băm...................................................................... 118
3. Bꢃi tꢋp................................................................................................................... 119
CHƢƠNG VI: QUꢠN Lꢡ KHꢛA..................................................................................... 120
1. Quꢄn ly khoꢀ trong cꢀc mꢆng truyền tin ................................................................ 120
2. Mꢈt sꢂ hꢁ phân phꢂi khoꢀ ..................................................................................... 120
2.1. Sơ đꢖ phân phꢂi khoꢀ Blom ........................................................................... 120
2.2. Hꢁ phân phꢂi khoꢀ Kerberos .......................................................................... 122
2.3. Hꢁ phân phꢂi khoa Diffe-Hellman ................................................................... 123
3. Trao đꢞi khoꢀ vꢃ thoꢄ thuꢋn khoꢀ ......................................................................... 124
3.1. Giao thꢔc trao đꢞi khoꢀ Diffie-Hellman ........................................................... 124
3.4. Giao thꢔc Girault trao đꢞi khoꢀ không chꢔng chỉ............................................ 127
4.Bꢃi tꢋp.................................................................................................................... 128
CHƢƠNG VII: GIAO THƢ́ C MẬT MÃ ........................................................................... 130
1. Giao thꢔc .............................................................................................................. 130
2. Mꢉc đꢑch cꢅa cꢀc giao thꢔc................................................................................... 130
3. Cꢀc bên tham gia vꢃo giao thꢔc (the players in protocol) ...................................... 131
4. Cꢀc dꢆng giao thꢔc ............................................................................................... 132
4.1. Giao thꢔc có trꢕng tꢃi ..................................................................................... 132
4.2. Giao thꢔc có ngƣꢓi phân xử........................................................................... 133
4.3. Giao thꢔc tƣ̣ phân xƣ ..................................................................................... 134
Danh mục hình vẽ
DANH MU
Hình 1.1: Mô hình cơ bꢄn cꢅa truyền tin bꢄo mꢋt..............................................................5
Hình 3.1: Chuân ma hoa dƣ liêu DES ............................................................................. 36
̣C HÌNH VẼ
Hình 3.2: Sơ đꢖ mꢌ hoꢀ DES.......................................................................................... 38
Hình 3.3: Sơ đꢖ mꢈt vòng DES ....................................................................................... 39
Hình 3.4: Sơ đꢖ tꢆo khoꢀ con cua DES.......................................................................... 41
Hình 3.5: Sơ đꢖ hꢃm f..................................................................................................... 43
Hình 3.6: Sơ đꢖ hꢃm mở rꢈng (E)................................................................................... 44
Hình 3.7: Triple DES ....................................................................................................... 53
Hình 3.8: Cꢀc trꢆng thꢀi cꢅa AES.................................................................................... 56
Hình 3.9: Thuâṭ toꢀn mꢌ hóa vꢃ giꢄi mꢌ cꢅa AES ........................................................... 59
Hình 3.10: Hꢃm ShifftRows()........................................................................................... 62
Hình 3.11: Hꢃm MixColumns cꢅa AES ............................................................................ 63
Hình 3.12: Hꢃm AddRoundKey cꢅa AES......................................................................... 63
Hình 3.13: Hꢃm InvShiftRows() cꢅa AES......................................................................... 66
ECB................................................................................................... 69
̣ CBC................................................................................................... 70
Hình 3.16: Chꢐ đꢈ CFB................................................................................................... 71
Hình 4.5: Hình biꢘu diꢣn E2 (g4, 1) .................................................................................. 92
Hình 5.2: Sơ đꢖ chữ kꢏ sử dꢉng hꢃm Băm ................................................................... 109
Hình 5.3: Sơ đꢖ vòng lặp chꢑnh cꢅa MD5...................................................................... 112
Danh mục bảng
DANH MỤC BANG
̉
Bꢄng 2.1: Bꢄng bꢋc cꢅa cꢀc phꢤn tử trên Z*21 ................................................................. 19
Bꢄng 2.2: Bꢄng lꢥy thꢦa trên Z13 ..................................................................................... 20
Bꢄng 3.1: Bꢄng đꢀnh sꢂ cꢀc chữ cꢀi tiꢐng Anh............................................................... 29
Bꢄng 3.2: Mꢌ hoꢀ thay đꢞi vꢧ trꢑ cꢈt ................................................................................. 32
Bꢄng 3.3: Mꢌ hóa theo mꢨu hình hꢕc.............................................................................. 33
Bꢄng 3.4: Vꢑ dꢉ mꢌ hóa theo mꢨu hình hꢕc .................................................................... 33
Bꢄng 3.5: Mꢌ hóa hoꢀn vꢧ theo chu kꢩ ............................................................................ 34
Bꢄng 3.6: Bꢄng hoꢀn vꢧ IP............................................................................................... 39
Bꢄng 3.7: Bꢄng hoꢀn vꢧ ngƣꢪc IP-1 ................................................................................. 39
Bꢄng 3.8: Bꢄng PC-1 ...................................................................................................... 41
Bꢄng 3.9: Bꢄng dꢧch bit tꢆi cꢀc vòng lặp cꢅa DES........................................................... 42
Bꢄng 3.10: Bꢄng PC-2 .................................................................................................... 42
Bꢄng 3.11: Bꢄng mô tꢄ hꢃm mở rꢈng E.......................................................................... 44
Bꢄng 3.12: Hꢈp S1........................................................................................................... 45
Bꢄng 3.13: Hꢈp S2........................................................................................................... 45
Bꢄng 3.14: Hꢈp S3........................................................................................................... 45
Bꢄng 3.15: Hꢈp S4........................................................................................................... 46
Bꢄng 3.16: Hꢈp S5........................................................................................................... 46
Bꢄng 3.17: Hꢈp S6........................................................................................................... 46
Bꢄng 3.18: Hꢈp S7........................................................................................................... 46
Bꢄng 3.19: Hꢈp S8........................................................................................................... 46
Bꢄng 3.20: Bꢄng hoꢀn vꢧ P.............................................................................................. 47
Bꢄng 3.21: Vꢑ dꢉ về cꢀc bƣꢇc thꢟc hiꢁn cꢅa DES .......................................................... 50
Bꢄng 3.22: Cꢀc khóa yꢐu cꢅa DES ................................................................................. 51
Bꢄng 3.23: Cꢀc khóa nửa yꢐu cꢅa DES.......................................................................... 51
Bꢄng 3.24: Qui ƣơc môṭ số tƣ viết tắt va thuâṭ ngữ cꢅa AES .......................................... 54
Bꢄng 3.25: Bꢄng biꢘu diꢣn cꢀc xâu 4 bit ......................................................................... 56
Bꢄng 3.26: Bꢄng đꢈ dꢃi khóa cꢅa AES............................................................................ 57
Bꢄng 3.27: Bꢄng thꢐ S-Box cua AES .............................................................................. 61
Lơi noi đầu
̀
́
̀
I NÓ I ĐÂU
LƠ
̀
Tꢦ trƣꢇc công nguyên con ngƣꢓi đꢌ phꢄi quan tâm tꢇi viꢁc lꢃm thꢐ nꢃo đꢘ đꢄm
bꢄo an toꢃn bꢑ mꢋt cho cꢀc tꢃi liꢁu, văn bꢄn quan trꢕng, đặc biꢁt lꢃ trong lĩnh vꢟc quân
sꢟ, ngoꢆi giao. Ngꢃy nay vꢇi sꢟ xuất hiꢁn cꢅa mꢀy tꢑnh, cꢀc tꢃi liꢁu văn bꢄn giấy tꢓ vꢃ
cꢀc thông tin quan trꢕng đều đƣꢪc sꢂ hóa vꢃ xử lꢏ trên mꢀy tꢑnh, đƣơ
mꢈt môi trƣꢓng mꢃ mặc đꢧnh lꢃ không an toàn. Do đó yêu cꢤu về viꢁc có mꢈt cơ chꢐ, giꢄi
phꢀp đꢘ bꢄo vꢁ sꢟ an toꢃn vꢃ bꢑ mꢋt cꢅa cꢀc thông tin nhꢆy cꢄm, quan trong ngày càng
trở nên cấp thiꢐt. Mꢋt mꢌ hꢕc chꢑnh lꢃ ngꢃnh khoa hꢕc đꢄm bꢄo cho mꢉc đꢑch nꢃy. Khó
có thꢘ thấy mꢈt ꢔng dꢉng Tin hoc có ích nào lꢆi không sử dꢉng cꢀc thuꢋt toꢀn mꢌ hóa
̣c truyền đi trong
̣
̣
thông tin. Tꢃi liꢁu nꢃy dꢟa trên những kinh nghiꢁm vꢃ nghiên cꢔu mꢃ tꢀc giꢄ đꢌ đúc rút,
thu thꢋp trong quꢀ trình giꢄng dꢆy môn hꢕc An toꢃn vꢃ Bꢄo mꢋt Thông tin tꢆi khoa Công
nghꢁ Thông tin, Đꢆi hꢕc Hꢃng hꢄi Viꢁt nam. Vꢇi bꢄy chƣơng đƣꢪc chia thꢃnh cꢀc chꢅ đề
khꢀc nhau tꢦ cơ sở toꢀn hꢕc cꢅa mꢋt mꢌ hꢕc cho tꢇi cꢀc hꢁ mꢌ, cꢀc giao thꢔc mꢋt mꢌ,
hy vꢕng sẽ cung cấp cho cꢀc em sinh viên, cꢀc bꢆn đꢈc giꢄ mꢈt tꢃi liꢁu bꢞ ꢑch. Mặc dù đꢌ
rất cꢂ gꢊng song vꢨn không trꢀnh khỏi mꢈt sꢂ thiꢐu sót, hy vꢕng sẽ đƣꢪc cꢀc bꢆn bè
đꢖng nghiꢁp, các em sinh viên, cꢀc bꢆn đꢈc giꢄ góp ꢏ chân thꢃnh đꢘ tôi có thꢘ hoꢃn thiꢁn
hơn nữa cuốn sach này.
́
Xin gửi lꢓi cꢄm ơn chân thꢃnh tꢇi cꢀc bꢆn bè đꢖng nghiꢁp , nhƣng ngƣơi thân đa
̃
̀
̃
luôn đô
Nguyên Đinh Dƣơng, ngƣơi đa đoc
vê hê ma khoa công khai dƣ
Thꢆc sꢒ Phꢆm Tuấn Đꢆt, ngƣơi đa hiêu
̣ng viên, góp ꢏ cho tôi trong quꢀ trình biên soꢆn . Xin gƣi lơi cam ơn tơi Thac̣ sy
̉
̀
̉
́
̃
̃
̣ va cho nhƣng nhâṇ xet , góp ꢏ quꢑ bꢀu cho phꢤn viꢐt
̀ ̃ ́
̀
̀
̃
̀
̣
̣a trên cac đƣơng cong Elliptic. Xin gƣi lơi cam ơn sâu sắc tơi
́ ̀ ̀ ́
̉ ̉
̃
́
̣
đinh môt
̣
cach ky cang va cho râ
́
t nhiều nhâṇ xet
́
̀
̃
́
́
̃
̀
̀
có giꢀ trꢧ cho bꢄn thꢄo cꢅa cuꢂn sꢀch nꢃy . Cuô
nhiꢁm khoa Công nghꢁ Thông tin, đăc biêt la Tiên sy Lê Quô
luôn tꢆo điều kiꢁn tôt nhât, giúp đỡ đꢘ cuô
́i cung xin gƣi lơi cam ơn tơi Ban chꢅ
̀
̉
̀
̉
́
̣
̣
́
́
c Điṇ h – chꢅ nhiꢁm khoa, đꢌ
̀
̃
́
́
́n sach nꢃy có thꢘ hoꢃn thꢃnh.
́
Hải phòng, tháng 12 năm 2007
Tác giả
Nguyꢣn Hữu Tuân
1
Chƣơng I: Giơi thiêu
̣
́
CHƢƠNG I: GIƠ
́
I THIÊU
thông tin va mâṭ ma hoc̣
̃
̣
1. An toan bao mât
̣
̀
̉
̀
Trꢄi qua nhiều thꢐ kꢫ hꢃng loꢆt cꢀc giao thƣc (protocol) vꢃ cꢀc cơ chꢐ (mechanism)
́
đa đƣơ
̣
c tao
̣
ra đê
̉
đap ƣng nhu câ
̀
u an toan bao mât
̣
thông tin khi ma no đƣơ
̣
c truyê
vâṭ ly (giấy, sꢀch, bꢀo …). Thƣơng thi cac muc̣ tiêu cua an toan bao
́ ̀ ̀ ́
̀n tai
̃
́
́
̀
̉
̀
́
̉
trên cac phƣơng tiên
̣
́
̉
̀
̉
mât
cꢀc giao thꢔc, mꢃ đꢘ đꢆt đƣꢪc điều nꢃy đòi hỏi cꢤn có cꢀc kꢒ thuꢋt mang tꢑnh thꢅ tꢉc vꢃ
sƣ tôn trong cac điêu luât . Chăng han sƣ bi mât cua cac bƣc thƣ tay la do sƣ phân phat
cꢀc lꢀ thƣ đꢌ có đóng dấu bởi mꢈt dꢧch vꢉ thƣ tꢑn đꢌ đƣꢪc chấp nhꢋn . Tꢑnh an toꢃn về
măt vât ly cua cac la thƣ la han chê (nó có thꢘ bꢧ xem trꢈm ) nên đê đam bao sƣ bi mâ
cꢅa bꢔc thƣ phꢀp luꢋt đꢌ đƣa ra qui đꢧnh : viêc xem thƣ ma không đƣơ
chꢅ nhân hoặc những ngƣꢓi có thꢗm quyền lꢃ phꢆm phꢀp vꢃ sẽ bꢧ trꢦng phꢆt
mꢉc đꢑch cꢅa an toꢃn bꢄo mꢋt thô ng tin lai đat đƣơc nhơ chꢑnh phƣơng tiên
chúng, chăng han nhƣ tiên giây đoi hoi phai đƣơc in bă
bꢧ lꢃm giꢄ.
̣ thông tin không thê đaṭ đƣợc nếu chi đơn thuần dƣ̣a vao cac thuâṭ toan toan hoc̣ va
̉
̉
̀
́
́
́
̀
̣
̣
̀
̣
̉
̣
̣
̣
̣
́
́
̉
́
́
̀
́
̣
̣
̣
́
̉
̣
̣ t
́
̉
́
́
̀
̉
̉
́
̣
̣c sƣ̣ đồng y cua
́
̉
̀
. Đôi khi
̣
̣
̣
̣
vât
̣
ly mang
́
̀
̉
̣
̀
́
̣
̀
ng loai
̣
mƣ
̣
c va giâ
́
y tô
́
t đê
̉
không
̀
̉
̉
̀
Vê măṭ y tƣơng viêc̣ lƣu giƣ thông tin la không co nhiều thay đôi đang kê qua thơi
̀
̉
̉
́
̉
̃
̀
́
́
̀
gian. Ngꢃy xƣa thông tin thƣꢓng đƣꢪc lƣu vꢃ vꢋn chuyꢘn trên giấy tꢓ , trong khi giơ đây
̀
chúng đƣꢪc lƣu dƣꢇi dꢆng sꢂ hóa vꢃ đƣꢪc vꢋn chuyꢘn bꢬng cꢀc hꢁ thꢂng viꢣn thông
hoăc
̣
cac hê
̣
thô
́
ng không dây . Tuy nhiên sƣ
̣
thay đô
tao
vꢃ không thꢘ phân biꢁt đƣꢪc nó vꢇi bꢄn gꢂc . Vơi cac tai liêu
̉
i đang kê
̉
đê
́
n ơ đây chinh la kha
́ ̀
̉ ̉
́
́
năng sao chep va thay đô
̉
i thông tin. Ngƣơi ta co thê
̉
̣
ra hang ngan mâ
̉
u tin giô
lƣu trƣ va vân chuyê
u. Vꢃ điều cꢤn thiꢐt đꢂi vꢇi mꢈt xꢌ hꢈi mꢃ thông tin hꢤu
n trên cac phƣơng tiên điên tƣ chinh la cac phƣơng tiên
́
ng nhau
́
̀
̀
́
̀
̀
̣
̣
̉
n trên
́
́
̀
̃
̀
giâ
hêt đƣơ
đam bao an toan bao mât
́y điều nay kho khăn hơn nhiề
̀
́
́
̣
c lƣu trƣ va vân
̣
chuyê
thông tin đôc
đo chinh la mât
̉
̣
̣
̣
̃
̀
́
̉
́
̀
́
̣
̣
lâp
̣ vơi cac phƣơng tiêṇ lƣu trƣ vꢃ vꢋn chuyꢘn vꢋt
́ ́ ̃
̉
̉
̀
̉
lꢏ cꢅa nó . Phƣơng tiên
̣
̣
ma hoc
̣
, môt
̣ nganh khoa hoc̣ co lic̣ h sƣ lâu đơi
̀ ́ ̀
̉
́
́
̀
̃
dƣa trên nên tang cac thuât
̣
̀
̣
toan toan hoc
̣
, sô
́
hoc, xꢀc suất vꢃ cꢀc môn khoa hꢕc khꢀc.
̣
̉
́
́
́
2. Khái niꢁm hꢁ thꢂng vꢃ tꢃi sản cꢄa hꢁ thꢂng
Khꢀi niꢁm hꢁ thꢂng : Hê thông la môt tâp hơ
n cƣng, phân mêm va dƣ liêu lam viêc đƣơc tich luy qua thơi gian.
Tꢃi sꢄn cꢅa hꢁ thꢂng bao gꢖm:
̣
́
̣
̣
̣p cac may tinh gồm cac thanh phần
́ ́ ́ ́ ̀
̀
phâ
́
̀
̀
̣
̣
̣
́
̀
̃
̀
́
̃
̀
Phâ
Phân mê
Dƣ liêu
̀
n cƣng
́
̀
̀m
̣
̃
Cꢀc truyền thông giữa cꢀc mꢀy tꢑnh cꢅa hꢁ thꢂng
Môi trƣơng lam viêc
̣
̀
̀
Con ngƣơi
̀
3. Các mꢂi đe doꢅ đꢂi vꢆi mꢇt hꢁ thꢂng vꢃ các biꢁn pháp ngăn chꢈn
Cꢉ 3 hꢊnh thꢋc chꢄ yꢌu đe dꢍa đꢂi vꢆi hꢁ thꢂng:
2
Chƣơng I: Giơi thiêu
̣
́
Phꢀ hoꢆi: kꢭ thù phꢀ hỏng thiꢐt bꢧ phꢤn cꢔng hoặc phꢤn mềm hoꢆt đꢈng trên hꢁ
thống.
Sƣa đô
̉
i: Tꢃi sꢄn cꢅa hꢁ thꢂng bꢧ sửa đꢞi trꢀi phꢮp. Điê
ng không lam đung chƣc năng cua no . Chăng han
không thê truy câp
̀
u nay thƣơng lam cho hê
̣
̉
̀
̀
̀
thô
́
̉
̣
nhƣ thay đô
̉
i mât
̣
khâ
̉
u,
̀
́
́
̉
́
quyê
̀
n ngƣơi dung trong hê
̣
thô
́
ng lam ho
̣
̉
̣
vao hê
̀
̣
thông đê
́
̉
̀
̀
̀
lꢃm viꢁc.
Can thiêp
̣
: Tꢃi sꢄn bꢧ truy cꢋp bởi những ngƣꢓi không có thꢗm quyền
c hiên trên hê thông bi ngăn chăn, sƣa đôi.
. Cꢀc
truyên thông thƣ
̀
̣
̣
̣
́
̣
̣
̉
̉
Cꢀc đe dꢕa đꢂi vꢇi mꢈt hꢁ thꢂng thông tin có thꢘ đꢐn tꢦ nhiều nguꢖn vꢃ đƣꢪc thꢟc
bơi cac đôi tƣơng khac nhau . Chúng ta có thꢘ chia thꢃnh 3 loꢆi đꢂi tƣꢪng nhƣ sau :
cꢀc đꢂi tƣꢪng tꢦ ngay bên trong hꢁ thꢂng (insider), đây la nhƣng ngƣơi co quyê
hiên
̣
́
̣
̉
́
́
̀
n truy câp
(hacker, cracker),
i tƣơ thông nhƣ Internet
̉
, vꢃ thƣ ba la cac phần mềm (chăng haṇ nhƣ spyware, adware …) chꢆy trên hꢁ
̣
̀
̃
̀
́
hơ
̣
p phap đô
́
i vơi hê
̣
thô
́
ng , nhƣng đô
́
i tƣơ
̣
ng bên ngoai hê
̣
thô
́ng
́
́
̃
̀
thƣơng cac đô
́
̣
ng nay tâ
́
n công qua nhƣng đƣơng kê
́
t nô
́
i vơi hê
̣
́
̀
́
̀
̃
̀
́
chă
̉
ng han
̣
́
̀
́
thông.
́
Các biꢁn pháp ngăn chꢈn:
Thƣơng co 3 biên phap ngăn chăṇ :
̣
̀
́
́
Điê
̀
u khiê
̉
n thông qua phâ
̀n mềm : dƣ̣a vao cac cơ chế an toan bao mâṭ cua hệ
̀ ́ ̀
̉ ̉
thông nê
́
̀
n (hê
̣
điêu hanh), cꢀc thuꢋt toꢀn mꢋt mꢌ hꢕc
̀
̀
Điêu khiê
hꢕc đƣꢪc cꢔng hóa đꢘ sử dꢉng
Điêu khiên thông qua cac chinh sach cua tô
chƣc nhă
̉
̀
̉
n thông qua phần cƣng : cꢀc cơ chꢐ bꢄo mꢋt , cꢀc thuꢋt toꢀn mꢋt mꢌ
́
̀
̉
̉
chƣc : ban hanh cac qui điṇ h cꢅa tꢞ
́ ̀ ́
́
́
́
̉
̀
m đam bao tinh an toan bao mât
̣
cua hê
̣
thô
́
ng.
toan mâṭ ma hoc̣ nhƣ la
̃ ̀
́
̉
̉
́
̀
̉
Trong môn hoc
̣
nay chung ta tâp
̣
trung xem xet cac thuât
̣
̀
́
́
́
́
môt
̣
phƣơng tiên cơ ban, chꢅ yꢐu đꢘ đꢄm bꢄo an toꢃn cho hꢁ thꢂng.
̣
̉
4. Mục tiêu vꢃ nguyên tă
́
c chung cua an toan bao mât
̣
thông tin
̉
̀
̉
Ba muc tiêu cua an toan bao mât
̣
̣
thông tin:
̉
̀
̉
Tꢑnh bꢑ mꢋt: Tꢃi sꢄn cꢅa hꢁ thꢂng chỉ đƣꢪc truy cꢋp bởi những ngƣꢓi có thꢗm
n. Cꢀc loꢆi truy cꢋp gꢖm có : đoc (reading), xem (viewing), in ân (printing), sƣ dun
chƣơng trinh, hoăc hiêu biêt vê sƣ tôn tai cua môt đôi tƣơng trong tô
nhơ viêc kiêm soat truy câp (theo nhiêu kiêu khac nhau ) hoăc
toan mꢌ hóa dữ liꢁu. Kiê chi co thê đƣơc thƣ
quyê
̀
̣
́
̣ g
̉
̣
̉
́
̀
̣
̀
̣
̣
́
̣
̉
chƣc .Tꢑnh bꢑ mꢋt có
́
̀
̉
thê
thuât
phân cƣng vât
cꢀc phƣơng phꢀp cꢅa mꢋt mꢌ hꢕc.
̉
đƣơ
̣
c bao vê
̣
̣
̉
̣
̀
̉
̣
nhơ cac
̉
̀
́
́
̀
́
̣
́
m soat truy câp
̣
̉
̣
̣
c hiên
̣
vơi cac hê
̣
thô
́
ng
́
́
̉
́
́
́
̀
̣ ly. Còn đꢂi vꢇi cꢀc dữ liꢁu công cꢈng thì thƣꢓng phƣơng phꢀp hiꢁu quꢄ lꢃ
́
́
Tꢑnh toꢃn vꢯn dữ liêu: tꢃi sꢄn cꢅa hꢁ thꢂng chỉ đƣꢪc thay đꢞi bởi những ngƣꢓi
̣
có thꢗm quyền.
Tꢑnh sꢰn dùng: tꢃi sꢄn luôn sꢰn sꢃng đƣꢪc sử dꢉng bởi những ngƣꢓi có thꢗm
quyê
̀
n.
Hai nguyên tắc cua an toan bao mâṭ thông tin:
̀
̉ ̉
3
Chƣơng I: Giơi thiêu
̣
́
Viêc
̣
thâ
̉
m đi n
̣
h vê
̀
bao mât
̣
phꢄ i la kho va câ
̀
n tinh tơi tâ
́
t ca cac tinh huô
́
ng
,
̉
̀
́
̀
́
́
̉
́
̀
khꢄ năng tấn công có thꢘ đƣꢪc thꢟc hiꢁn.
Tꢃi sꢄn đƣꢪc bꢄo vꢁ cho tꢇi khi hꢐt gꢑa trꢧ sử dꢉng hoặc hꢐt ꢏ nghĩa bꢑ mꢋt.
5. Mât
̣
ma hoc
̣
(cryptology)
̃
Mât
̣
mꢌ hꢕc bao gꢖm hai lĩnh vꢟc
: mꢌ hóa (cryptography) vꢃ thꢀm mꢌ
(cryptanalysis-codebreaking) trong đo:
́
Mꢌ hóa: nghiên cƣu cac thuâṭ toan va phƣơng thƣc đê đam ba o tinh bi mâṭ va
̉
́ ́ ́ ̀ ́ ́ ́ ̀
̉ ̉
xꢀc thꢟc cꢅa thông tin (thƣơng la dƣơi daṇ g cac văn ban lƣu trƣ trên may tinh ). Cꢀc sꢄn
́ ̃ ́ ́
̉
̀
̀
́
phâ
̉
m cua linh vƣ
̣
c nay la cac hê
̣
ma mât
̣
, cꢀc hꢃm băm, cꢀc hꢁ chữ kꢏ điꢁn tử , cꢀc cơ
̉
̃
̀
̀
́
̃
chê
́
phân phối, quꢄn lꢏ khóa vꢃ cꢀc giao thꢔc mꢋt mꢌ.
Thꢀm mꢌ: Nghiên cƣu cac phƣơng phap phꢀ mꢌ hoặc tꢆo mꢌ giꢄ . Sꢄn phꢗm
́
́
́
cꢅa lĩnh vꢟc nꢃy lꢃ cꢀc phƣơng phꢀp thꢀm mꢌ , cꢀc phƣơng phꢀp giꢄ mꢆo chữ kꢏ , cꢀc
phƣơng phap tân công cac ham băm va cac giao thƣc mât ma.
́
̣
́
́
̀
̀
́
́
̃
Trong giơi han
̣
cua môn hoc
̣
nay chung ta chu yê
́
u tâp̣ trung vao tim hiêu cac vấn đề
̉
̀ ̀ ́
́
̉
̀
́
̉
mꢌ hóa vꢇi cꢀc hꢁ mꢌ mꢋt, cꢀc hꢃm băm, cꢀc hꢁ chữ kꢏ điꢁn tử, cꢀc giao thꢔc mꢋt mꢌ.
Mꢀ hꢁa (cryptography) là một ngành khoa học của các phương pháp truyền tin bảo
mật. Trong tiếng Hy Lạp, “Crypto” (krypte) cꢁ nghĩa là che dấu hay đảo lộn, còn “Graphy”
(grafik) cꢁ nghĩa là từ. [3]
Ngƣꢓi ta quan niꢁm rꢬng: những tꢦ, những kꢏ tꢟ cꢅa bꢄn văn ban gꢂc có thꢘ hiꢘu
̉
đƣꢪc sẽ cấu thꢃnh nên bꢄn rõ (P-Plaintext), thƣơng thi đây la cac đoaṇ văn ban trong
̉
̀
̀
̀
́
môṭ ngôn ngƣ nao đo; còn những tꢦ, những kꢏ tꢟ ở dꢆng bꢑ mꢋt không thꢘ hiꢘu đƣꢪc thì
̃ ̀ ́
đƣꢪc gꢕi lꢃ bꢄn mꢌ (C-Ciphertext).
Có 2 phƣơng thꢔc mꢌ hoꢀ cơ bꢄn: thay thꢐ vꢃ hoꢀn vꢧ:
Phƣơng thꢔc mꢌ hoꢀ thay thꢐ lꢃ phƣơng thꢔc mꢌ hoꢀ mꢃ tꢦng kꢏ tꢟ gꢂc hay
mꢈt nhóm kꢏ tꢟ gꢂc cꢅa bꢄn rõ đƣꢪc thay thꢐ bởi cꢀc tꢦ, cꢀc kꢏ hiꢁu khꢀc hay kꢐt hꢪp
vꢇi nhau cho phù hꢪp vꢇi mꢈt phƣơng thꢔc nhất đꢧnh vꢃ khoꢀ.
Phƣơng thꢔc mꢌ hoꢀ hoꢀn vꢧ lꢃ phƣơng thꢔc mꢌ hoꢀ mꢃ cꢀc tꢦ mꢌ cꢅa bꢄn
rõ đƣꢪc sꢊp xꢐp lꢆi theo mꢈt phƣơng thꢔc nhất đꢧnh.
Cꢀc hꢁ mꢌ mât thƣơng sƣ dung kêt hơp ca hai ky thuâṭ nay.
̣
̣
́
̣
̀
̉
̉
̃
̀
6. Khái niꢁm hꢁ mꢎ mꢏt (CryptoSystem)
Một hệ mꢀ mật là bộ 5 (P, C, K, E, D) thoả mꢀn các điều kiện sau:
1)
2)
3)
Plà không gian bản rõ: là tập hữu hạn các bản rõ cꢁ thể cꢁ.
Clà không gian bản mꢀ: là tập hữu hạn các bản mꢀ cꢁ thể cꢁ.
K là kkhông gian khoá: là tập hữu hạn các khoá cꢁ thể cꢁ.
4)
Đối với mỗi k
K, cꢁ một quy tắc mꢀ hoá ek Evà một quy tắc giải mꢀ
tương ứng dk
D. Với mỗi ek: P →Cvà dk: C →Plà những hàm mà dk(ek(x)) = x cho mọi
bản rõ x
P. Hàm giải mꢀ dk chꢂnh là ánh xạ ngưꢃc của hàm mꢀ hꢁa ek [5]
4
Chƣơng I: Giơi thiêu
̣
́
Thƣơng thi không gian cac ban ro va không gian cac ban ma la cac văn ban đƣợc
̀
̀
́
̉
̃
̀
́
̉
̃
̀
́
̉
tꢆo thꢃnh tꢦ mꢈt bꢈ chữ cꢀi Anꢃo đó. Đo co thê la bộ chƣ cai tiếng Anh, bộ ma ASCII, bộ
̉
̀ ̃ ́ ̃
́
́
mꢌ Unicode hoặc đơn giꢄn nhất lꢃ cꢀc bit 0 vꢃ 1.
Tꢑnh chất 4 lꢃ tꢑnh chất quan trꢕng nhất cꢅa mꢌ hoꢀ. Nꢈi dung cꢅa nó nói rꢬng nꢐu
mꢌ hoꢀ bꢬng ek vꢃ bꢄn mꢌ nhꢋn đƣꢪc sau đó đƣꢪc giꢄi mꢌ bꢬng hꢃm dk thì kꢐt quꢄ nhꢋn
đƣꢪc phꢄi lꢃ bꢄn rõ ban đꢤu x. Rõ rꢃng trong trƣꢓng hꢪp nꢃy, hꢃm ek(x) phꢄi lꢃ mꢈt đơn
ꢀnh, nꢐu không thì ta sẽ không giꢄi mꢌ đƣꢪc. Vì nꢐu tꢖn tꢆi x1 và x2 sao cho y = ek(x1) =
ek(x2) thì khi nhꢋn đƣꢪc bꢄn mꢌ y ta không biꢐt nó đƣꢪc mꢌ tꢦ x1 hay x2.
Trong mꢈt hꢁ mꢋt bất kꢩ ta luôn có |C| ≥ |P| vì mỗi quy tꢊc mꢌ hoꢀ lꢃ mꢈt đơn ꢀnh.
Khi |C| = |P| thì mỗi hꢃm mꢌ hoꢀ lꢃ mꢈt hoꢀn vꢧ.
7. Mô hinh truyê
̀
n tin cơ ban cua mât
̣
ma hoc
̣
vꢃ luꢏt Kirchoff
̀
̉
̉
̃
Mô hinh truyê
̀
n tin thông thƣơng : Trong mô hinh truyên tin thông thƣơng thông tin
̀
̀
̀
̀
̀
đƣơ
̣
c truyê
̀
n (vân
̣
chuyê
gƣi thƣ) đƣợc coi la an toan.
̀ ̀
̉
n) tƣ ngƣơi gƣi đê
́
n ngƣơi nhân
̣
đƣợc thƣ̣c hiêṇ nhơ môṭ kênh vâṭ
̀
̀
̀
̉
̀
lꢏ (chă
̉
ng han
̣
nhƣ viêc
̣
̉
Mô hình truyên tin cơ bꢄn cua mâṭ ma hoc̣ :
̀
̉
̃
K1
K2
Insecured
Channel
Encrypt
Decrypt
Sender
Receiver
X
Y
Y
X
Enemy
Hình 1.1: Mô hình cơ bꢄn cꢅa truyền tin bꢄo mꢋt
Đây lꢃ mô hình cơ bꢄn cꢅa truyền tin bꢄo mꢋt. Khꢀc vꢇi truyền tin thông thƣꢓng, có
cꢀc yꢐu tꢂ mꢇi đƣꢪc thêm vꢃo nhƣ khꢀi niꢁm kꢭ đꢧch (E-Enemy), các khoá mã hoá và
giꢄi mꢌ K đꢘ đꢄm bꢄo tinh bao mꢋt cꢅa thông tin cꢤn truyền đi.
́
̉
Trong mô hinh nay ngƣꢓi gƣi S (Sender) muꢂn gửi mꢈt thông điêp
̣
X (Message – lꢃ
̀
̀
̉
môt
̣ ban ro) tꢇi ngƣꢓi nhꢋn R (Receiver) qua mꢈt kênh truyền không an toan (Insecured
̉
̃
̀
Channel), kꢭ đꢧch E (Enemy) có thꢘ nghe trꢈm, hay sửa đꢞi thông tin X. Vì vꢋy, S sử dꢉng
phꢮp biꢐn đꢞi, tꢔc mꢌ hoꢀ (E-Encryption) lên thông tin X ở dꢆng đꢕc đƣꢪc (Plaintext) đꢘ
tꢆo ra mꢈt đoꢆn văn ban đƣơ
̣
c mã hoá Y (C-Ciphertext) không thꢘ hiê
quy luꢋt thông thƣơng sƣ dung môt thông tin bi mât đƣꢪc gꢕi lꢃ khoꢀ K1 (Key), khoá K1
chꢑnh lꢃ thông sꢂ điều khiꢘn cho phꢮp biꢐn đꢞi tꢦ ban ro X sang ban mã Y (chỉ các bên
̉
u đƣꢪc theo mꢈt
̉
̣
̣
̣
̀
̉
́
̉
̃
̉
tham gia truyền tin S vꢃ R mơi có thꢘ biết khoa nay). Giꢄi mꢌ (D-Decryption) là quá trình
́ ̀
́
ngƣꢪc lꢆi cho phꢮp ngƣꢓi nhꢋn thu đƣꢪc thông tin X ban đꢤu tꢦ đoꢆn mꢌ hoꢀ Y sƣ dun
̣
g
̉
khóa giꢄi mꢌ K2 (chú ꢏ lꢃ khóa giꢄi mꢌ vꢃ khóa mꢌ hóa có thꢘ khꢀc nhau hoăc
̣
la môt
̣
tùy
̀
thuôc
̣
vao hê
̣
ma sƣ dun
̣
g).
Cꢀc phꢮp biꢐn đꢞi đƣꢪc sử dꢉng trong mô hình truyền tin trên thuꢈc về mꢈt hꢁ mꢌ
̣ (Cryptosytem) nꢃo đó.
̀
̃
̉
mât
5
Chƣơng I: Giơi thiêu
̣
́
Quꢀ trình mꢌ hóa vꢃ giꢄi mꢌ yêu cꢤu cꢀc quꢀ trình biꢐn đꢞi dữ liꢁu tꢦ dꢆng nguyên
thuꢫ thꢃnh in put cho viêc
Cꢀc quꢀ trình nꢃy lꢃ cꢀc quꢀ trình biꢐn đꢞi không khóa vꢃ đƣꢪc gꢕi lꢃ cꢀc quꢀ trình
encode va decode.
̣
ma hoa va chuyê
̉
n output cua qua trinh giai ma thanh ban ro .
̃
́
̀
̉
́
̀
̉
̃
̀
̉
̃
̀
Theo luât
̣
Kirchoff (1835 - 1903) (mꢈt nguyên tă
́
c cơ bꢄn trong mã hoá) thì: toàn bộ
cơ chế mꢀ/giải mꢀ trừ khoá là không bꢂ mật đối với kẻ địch [5]. Rõ rꢃng khi đꢂi phƣơng
không biꢐt đƣꢪc hꢁ ma mꢋt đang sử dꢉng thuât toan ma hoa gi thì viꢁc tham mꢌ sẽ rất
̣
̃
́
̃
́
̀
́
khó khăn. Nhƣng chúng ta không thꢘ tin vꢃo đꢈ an toꢃn cꢅa hꢁ ma mꢋt chỉ dꢟa vꢃo mꢈt
̃
giꢄ thiꢐt không chꢊc chꢊn lꢃ đꢂi phƣơng không biꢐt thuât
trình bꢃy mꢈt hꢁ mꢋt bất kꢩ , chúng ta đều giꢄ thiꢐt hꢁ mꢋt đó đƣꢪc trình bꢃy dƣꢇi luât
Kirchoff.
̣ toan đang sử dꢉng . Vì vꢋy, khi
́
̣
ꢐ nghꢑa cꢄa luꢏt Kirchoff : sꢟ an toꢃn cꢅa cꢀc hꢁ mꢌ mꢋt không phꢄi dꢟa vꢃo sꢟ
phƣc tap cua thuât toan ma hoa sƣ dung.
̣
̣
̣
́
̉
́
̃
́
̉
8. Sơ lƣơ
Mât
cꢅa ngꢃnh khꢄo cô
̣
̀ lic̣ h sƣ mâṭ ma hoc̣
̉
̃
̣
̣
la môt
̣
nganh khoa hoc
̣
co môt
̣
lic
̣
h sƣ khoang
4000 năm. Cꢀc cꢞ vꢋt
cô đai đa sƣ
̃
̀
̀
́
̉
̉
̉
hoc
̣
thu đƣơ
̣
c đa cho thâ
́
y điêu nay. Nhƣng ngƣơi Ai câp
̀
̣
̉
̣
̃
̀
̃
̀
̃
̉
dꢉng cꢀc chữ tƣꢪng hình nhƣ lꢃ mꢈt dꢆng mꢌ hóa đơn giꢄn nhất trên cꢀc bia mꢈ cꢅa hꢕ .
Cꢀc tꢃi liꢁu viꢐt tay khꢀc cꢥng cho thấy cꢀc phƣơng phꢀp mꢌ hóa đơn giꢄn đꢤu tiên mꢃ
loꢃi ngƣꢓi đꢌ sử dꢉng lꢃ cꢅa ngƣꢓi Ba Tƣ cꢞ vꢃ ngƣꢓi Do Thꢀi cꢞ.
Tuy vây
̣
co thê
̉
chia lic
n khoa hoc
nꢃy mꢋt mꢌ hꢕc đƣꢪc coi lꢃ mꢈt nghꢁ thuꢋt nhiều hơn lꢃ mꢈt môn khoa hꢕc mặc dù đꢌ
đƣơc ƣng dung trong thƣc tê
Lꢧch sử cꢅa mꢋt mꢌ hꢕc đƣꢪc đꢀnh dấu vꢃo năm 1949 khi Claude Shannon đƣa ra
lꢏ thuyꢐt thông tin . Sau thơi ky nay môt loat cac nghiên cƣu quan trong cua nghanh mât
mꢌ hꢕc đꢌ đƣꢪc thꢟc hiꢁn chꢱng hꢆn nhƣ cꢀc nghiên cꢔu về mꢌ khꢂi , sƣ
hê ma mât khoa công khai va chƣ ky điên tƣ.
̣ h sƣ mâṭ ma hoc̣ thanh hai thơi ky nhƣ sau:
́
̉
̃
̀
̀
̀
Thơi ky tiê
̀
̣ : Tƣ trƣơc công nguyên cho tơi năm 1949. Trong giai đoaṇ
̀ ́ ́
̀
̀
̣
̣
̣
́.
́
̣
̣
̣
̣
̀
̀
̀
́
́
̉
̀
̣
ra đơi cua cac
̀ ́
̉
̣
̣
̣
̃
́
̀
̃
́
̉
Qua nhiê
đich quân sƣ (giꢀn điꢁp, ngoꢆi giao, chiê
trƣơc đây hoang đê La ma Julius Caesar đa tƣng sƣ dun
̀
u thê
́
ky phat triê
̉
n cua mât
̣
ma hoc
̣
chu yê
́
u đƣơ
n tranh …). Môt vi du
g môt
giꢄn mꢃ ngꢃy nay đƣꢪc mang tên ông trong cuꢈc chiꢐn tranh Gallic.
̣
c phuc
điên hinh la 2000 năm
thuât
̣ vụ cho cac muc̣
̉
́
̉
̃
̉
́
̣
́
̣
̣
̉
́
́
̀
̀
́
̣
̣
̣ toan thay thế đơn
́
́
̀
̃
̃
̀
̉
Tꢀc phꢗm “A manuscript on Deciphering Cryptography Messages” cꢅa Abu al -Kindi
đƣꢪc viꢐt vꢃo thꢐ kꢫ thꢔ 9 đƣơc tim thây tai Istabul vao năm 1987 đa cho thây nhƣng nha
khoa hoc râp la nhƣng ngƣơi đâu tiên đa phat triê
phân tich tâ
̣
́
̣
́
̀
̀
̃
̃
̀
̣
A
̉
̣
̀
̉
n cac phƣơng phap tham ma dƣ̣a vao
́ ́ ́ ̃ ̀
̀
̃
̀
̃
́
̀
n sô
́
xuâ
́
t hiên
̣
cua cac ky tƣ
̣
đô
́
i vơi cac hê
̣
ma thay thê
́
đơn âm (môṭ phƣơng
́
̉
́
́
́
́
̃
phꢀp đƣꢪc sử dꢉng rꢈng rꢌi trong thơi ky Trung cô
̉
do đơn gian va kha hiêu qua).
̣
̀
̀
̉
̀
́
̉
ꢲ châu Âu thꢓi kꢩ Trung cꢞ lꢃ mꢈt khoꢄng thꢓi gian u ꢀm vꢃ tăm tꢂi cꢅa lꢧch sử nên
không co nhiêu phat triên manh vê văn hoa noi chung va mât ma hoc noi riêng . Mꢈt vꢃi
̀
̉
̣
̀
̣
̣
́
́
́
́
̀
̃
́
sꢟ kiꢁn đƣꢪc ghi lꢆi bởi cꢀc vꢧ linh mꢉc nhƣng chỉ có Roger Bacon lꢃ ngƣꢓi thꢟc sꢟ đꢌ
viꢐt về mꢋt mꢌ hꢕc trong tꢀc phꢗm “Secret Work of Art and the Nullity of Magic” vꢃo giữa
những năm 1200. Vꢃo thꢓi Trung cꢞ mꢈt trong những cꢀi tên nꢞi tiꢐng nhất lꢃ Chaucer,
ngƣơi đꢌ đƣa ra cꢀc công trình nghiên cꢔu nghiêm túc đꢤu tiên về mꢋt mꢌ hꢕc trong cꢀc
̀
6
Chƣơng I: Giơi thiêu
̣
́
tꢀc phꢗm cꢅa mình chꢱng hꢆn nhƣ “Treatise on the Astrolabe”. Trong thơi ky Trung cô ơ
̉
̉
̀
̀
phƣơng Tây cuꢂn sꢀch cꢅa Blaise De Vegenere (ngƣơi phat minh ra thuât
̣
t oꢀn mꢌ hóa
thay thế đa âm tiết ) đƣợc xem nhƣ la môṭ tꢞng kꢐt cꢀc kiꢐn thꢔc về mꢋt mꢌ hꢕc cho tꢇi
̀
̀
́
thꢓi điꢘm bấy giꢓ, bao gꢖm cꢄ thuꢋt toꢀn thay thꢐ đa âm tiꢐt vꢃ mꢈt vꢃi sơ đꢖ khóa tꢟ
đꢈng.
Blaise De Vegenere cung la tac gia cua hệ ma mang t ên ông, hệ ma nay đa tƣng
̃ ̃ ̀ ̃ ̀
̃
̀
́
̉
̉
đƣơ
Babbages đꢌ thꢟc hiꢁn thꢀm mꢌ thꢃnh công vꢃo năm 1854 nhƣng điều nꢃy đƣꢪc giữ bꢑ
mꢋt. Môt thuꢋt toꢀn thꢀm mꢌ đƣꢪc phꢀt hiꢁn đꢈc lꢋp bởi mꢈt nhꢃ khoa hꢕc ngƣꢓi Phô
(thuôc nƣơc Đƣc ngay nay ) có tên là Friedrich Kasiski . Tuy vây do viꢁc thiꢐu cꢀc thiꢐt bꢧ
̣c xem la an toan tuyêṭ đối va đƣợc sƣ duṇ g trong môṭ thơi gian dai, tuy nhiên Charles
̀
̀
̀
̉
̀
̀
̣
̉
̣
̣
́
́
̀
cꢄi tiꢐn nên cꢀc biꢐn thꢘ cꢅa thuꢋt toꢀn mꢌ hóa nꢃy vꢨn còn đƣꢪc sử dꢉng trong những
năm đꢤu cꢅa thꢐ kꢫ 20 mꢃ tiêu biꢘu nhất lꢃ viꢁc thꢀm mꢌ thꢃnh công mꢀy điꢁn tꢑn
Zimmermann cua quân Đƣc (môt
̣
trong cac sƣ
̣
kiêṇ tiêu biêu cua mâṭ ma hoc̣ ) trong thꢐ
̉
̉
̃
̉
́
́
chiꢐn thꢔ nhất vꢃ kꢐt quꢄ lꢃ sꢟ tham gia cꢅa Mꢒ vꢃo cuꢈc chiꢐn.
Vơi sƣ xuât hiên cua cac hê thông may tinh cꢀ nhân vꢃ mꢆng mꢀy tꢑnh cꢀc thông tin
̣
́
̣
̣
́
́
̉
́
́
́
văn ban ngay cang đƣơc lƣu trƣ va xƣ ly nhiê
̣
̀u hơn trên cac may tinh do đo nay sinh yêu
́ ́ ́ ́
̉
̉
̀
̀
̃
̀
̉
́
câ
̀
u vê
̀
an toan bao mât
̣
đô
́
i vơi cac thông tin đƣơ
̣
c lƣu trƣ , xƣ ly va truyê
̀
n giƣa cac may
̀
̉
́
́
̃
̉
́
̀
̃
́
́
tꢑnh.
Vꢃo đꢤu những năm 1970 lꢃ sꢟ phꢀt triꢘn cꢅa cꢀc thuꢋt toꢀn mꢌ hóa khꢂi đꢤu tiên :
Lucipher và DES . DES sau đo đa co môt sƣ phat triên ƣng dung rƣc rơ cho tơi đâ
̣
̣
̉
̣
̣
̀u
́
̃
́
́
́
̃
́
nhƣng năm 90.
̃
Vꢃo cuꢂi những năm 1970 chꢔng kiꢐn sꢟ phꢀt triꢘn cꢅa cꢀc thuꢋt toán mã hóa
khóa công khai sau khi Whitfield Diffie va Martin Hellman công bô bai bao “New Directions
́
̀
̀
́
in Cryptography” lꢃm nền tꢄng cho sꢟ ra đꢓi cꢅa cꢀc hꢁ mꢌ khóa công khai vꢃ cꢀc hꢁ
chƣ ky điên tƣ.
̣
̃
́
̉
Do nhƣơ
p tuc đƣơc phat triê
kꢫ 20 nhƣ IDEA, AES hoăc
̣
c điê
̉
m cua cac hê
̣
ma mât
̣
khoa công khai la châm
̣
nên cac hê
̣
ma khô
́
i vâ
̃n
̉
́
̃
́
̀
́
̃
tiế
̣
̣
̉
n vơi cac hê
̣
ma khô
́
i mơi ra đơi đê
̉
thay thê
́
cho DES vao cuôi thê
́
́
́
́
́
̃
́
̀
̀
̣
3DES (môṭ cai tiến cꢅa DES).
̉
Gân đây nhât lꢃ cꢀc sꢟ kiꢁn liên quan tꢇi cꢀc hꢃm băm MD5 (môt
hꢕ MD do Ron Rivest phꢀt triꢘn ) vꢃ SHA 1. Môt nhom cac nhꢃ khoa hꢕc ngƣꢓi Trung
Quôc (Xiaoyun Wang, Yiqun Lisa Yin, Hongbo Yu) đa phat triê
phꢮp phꢀt hiꢁn ra cꢀc đꢉng đꢈ cꢅa cꢀc hꢃm băm đƣꢪc sử dꢉng rꢈng rꢌi nhất trong sꢂ cꢀc
hꢃm băm nꢃy. Đây la môt sƣ kiên lơn đôi vơi nganh mât ma hoc do sƣ ƣng dung rông rai
vꢃ có thꢘ xem lꢃ còn quan trꢕng hơn bꢄn thân cꢀc hê cua cac ham băm . Do sƣ
kiên nay cac hang viêt phân mêm lơn (nhƣ Microsoft) vꢃ cꢀc nhꢃ mꢋt mꢌ hꢕc đꢌ khuyꢐn
̀
́
̣ ham băm thuôc̣
̀
̣
́
́
́
̉
n cꢀc phƣơng phꢀp cho
̃
́
̣
̣
̣
́
̣
̣
̣
̣
̣
̀
́
́
̀
̃
́
̃
̣
ma mât
̣
̣
̃
̉
́
̀
̣
́
̀
̀
̀
́
̃
́
cꢀo cꢀc lꢋp trình viên sử dꢉng cꢀc hꢃm băm mꢆnh hơn (nhƣ SHA-256, SHA-512) trong
cꢀc ꢔng dꢉng.
Bruce Schneier (môt
̣
trong nhƣng nha mât
̣
ma hoc
̣
hang đâ
̀
u
, tꢀc giꢄ cꢅa hꢁ mꢌ
̃
̀
̃
̀
Blowfish) đa tƣng noi răng cac hinh thƣc tâ
̀
́
n công đô
́
i vơi cac hê
̣
ma mât noi riêng va tấn
̣
̃
̀
́
́
̀
́
́
́
̃
́
̀
công đô
́
i vơi cac hê
̣
thô
́
ng may tinh noi chung se ngay cang t
rơ nên hoan thiên
̣
hơn
́
́
́
́
́
̃
̀
̀
̉
̀
“Attacks always get better ; they never get worse .” va lic
̣
h sƣ phat triê
̉
n cua mât
̣
ma hoc
̣
̀
̉
́
̉
̃
chꢑnh lꢃ lꢧch sử phꢀt triꢘn cꢅa cꢀc hình thꢔc tấn công đꢂi vꢇi cꢀc hꢁ mꢌ mꢋt đang đƣꢪc
sƣ dung.
̣
̉
7
Chƣơng I: Giơi thiêu
̣
́
9. Phân loaị cac thuâṭ toan mâṭ ma hoc̣
́ ́ ̃
Có nhiều cꢀch khꢀc nhau đꢘ chúng ta có thꢘ phân loꢆi cꢀc thuꢋt toꢀn mꢋt mꢌ hꢕc
sẽ đƣꢪc hꢕc trong chƣơng trình. ꢲ đây chúng ta sẽ phân loꢆi cꢀc thuꢋt toꢀn mꢋt mꢌ hꢕc
dƣ̣a vao hai loaị tiêu chi.
̀ ́
Tiêu chi thƣ nhâ
́
t la dƣ
̣
a vao cac dic
̣
h vu
cấp, dƣ̣a vao số lƣợng khoa sƣ duṇ g (0, 1, 2) chúng ta có cꢀc thuꢋt toꢀn mꢌ hóa sau:
̀ ́
̉
̣ an toan bao mâṭ ma cac thuâṭ toan cung
́
́
̀
̀
́
̀
̉
̀
́
́
1. Cꢀc thuꢋt toꢀn mꢌ hóa khóa bꢑ mꢋt tƣơng ꢔng vꢇi cꢀc h ꢁ mꢌ mꢋt khóa bꢑ mꢋt
hay khoa đôi xƣng SKC (Symmetric Key Cryptosytems), do vai tro cua ngƣơi nhân va
́
̣
́
́
̀
̉
̀
̀
ngƣơi gƣi la nhƣ nhau , cꢄ hai đều có thꢘ mꢌ hóa vꢃ giꢄi mꢌ thông điꢁp , nhƣ Caesar,
̀
̉
̀
DES, AES … Khoa sƣ duṇ g cho cac thuâṭ toan nay la 1 khóa cho cꢄ viꢁc mꢌ hóa vꢃ giꢄi
́ ́ ̀ ̀
́
̉
mꢌ.
2. Cꢀc thuꢋt toꢀn mꢌ hóa khóa công khai tƣơng ꢔng vꢇi cꢀc hꢁ mꢌ khóa công
khai PKC (Public Key Cryptosystems). Đôi khi cac hê ma nꢃy còn đƣꢪc gꢕi lꢃ cꢀc hꢁ mꢌ
̣
́
̃
khóa bất đꢂi xꢔng (Asymmetric Key Cryptosytems). Khóa sử dꢉng cho cꢀc thuꢋt toꢀn nꢃy
lꢃ 2 khóa, môt cho viêc ma hoa va môt cho viêc giai ma , khóa mꢌ hóa đƣꢪc công khai
hóa.
̣
̣
̣
̣
̃
́
̀
̉
̃
3. Cꢀc thuꢋt toꢀ n taọ chƣ ky điêṇ tƣ (Digital Signature Algorithms). Cꢀc thuꢋt
̃ ́
̉
toꢀn tꢆo chữ kꢏ điꢁn tử tꢆo thꢃnh cꢀc hꢁ chữ kꢏ điꢁn tử . Thông thƣơng mô
̃
i hê
̣ chƣ ky
̃ ́
̀
điên
̣
tƣ co cung cơ sơ ly thuyê
́
t vơi môt
̣
hê
dꢉng khꢀc nhau. Trong chƣơng trinh hoc chung ta se hoc̣ môṭ số hệ chƣ ky điêṇ tƣ phô
̉
̃ ́
̉
̣ ma mâṭ khoa công khai nhƣng
vơi cach ap
̉
́
̀
̉
́
́
̃
́
́
́
́
̣
̀
́
̃
biến la RSA, ElGammma…
̀
4. Cꢀc hꢃm băm (Hash functions). Cꢀc hꢃm băm lꢃ cꢀc thuꢋt toꢀn mꢌ hóa không
khóa hoặc có khóa vꢃ thƣꢓng đƣơc sƣ dung trong cac hê chƣ ky điên tƣ hoăc cac hê ma
khóa công khai.
̣
̣
̣
̣
̣
̣
̉
́
̃
́
̉
́
̃
Tiêu chi thƣ hai phân loaị cac thuâṭ toan ma hoa dƣ̣a trên cach thƣc xƣ ly input cua
́ ́ ̃ ́ ́ ́ ́
̉ ̉
́
́
thuât
̣
toan (tƣc la ban ro ), dƣ
̣
a trên tiêu chi nay chung ta co hai loai
̣
thuât
̣
toan ma hoa
́
́
̀
̉
̃
́
̀
́
́
́
̃
́
sau:
̉
1. Cꢀc thuꢋt toꢀn mꢌ hóa khꢂi (chăng haṇ nhƣ DES , AES …) xƣ ly ban ro dƣơi
́ ̃ ́
̉ ̉
cꢀc đơn vꢧ cơ bꢄn lꢃ cꢀc khꢂi có kꢑch thƣꢇc giꢂng nhau.
2. Cꢀc thuꢋt toꢀn mꢌ hóa dòng (RC4 …) coi ban ro la môṭ luồ ng bit, byte liên tuc̣ .
̉
̃
̀
10. Môṭ số ƣng duṇ g cua mâṭ ma hoc̣
́ ̃
̉
Ngꢃy nay khó có thꢘ tìm thấy cꢀc ꢔng dꢉng trên mꢀy tꢑnh lꢆi không sƣ dun
̣
g tơi cac
́ ́
̉
thuât
̣
toan va cac giao thƣc mât
̣
ma hoc
̣
. Tƣ cac ƣng duṇ g cho cac may tinh cꢀ nhân
̀ ́ ́ ́ ́ ́
́
̀
́
́
̃
(Desktop Applications ) cho tơi cac chƣơng trinh hê
̣
thô
g nhƣ Yahoo Messenger hoăc
toan ma hoa mât khâu ngƣ ꢓi dùng bꢬng mꢈt hꢁ mꢌ
̣ ham băm nao đo . Đặc biꢁt vꢇi sꢟ phꢀt triꢘn mꢆnh mẽ cꢅa thƣơng mꢆi điꢁn tử
́ng nhƣ cac hệ điều hanh
́
́
̀
́
̀
(Operating Systems) hoăc
dƣ liêu đêu co sƣ dung cac thuât
môt
cꢀc mô hình chữ kꢏ điꢁn tử ngꢃy cꢃng đóng vai trò tꢑch cꢟc cho mꢈt môi trƣꢓng an toꢃn
cho ngƣơi dung. Tuy vây chúng ta vꢨn có thꢘ chia cꢀc lĩnh vꢟc ꢔng dꢉng cꢅa mꢋt mꢌ hꢕc
thꢃnh cꢀc lĩnh vꢟc nhỏ nhƣ sau:
̣
cac ƣng dun
̣
g man
̣
̣ cac hệ cơ sơ
́
́
́
̉
̣
̀
̣
̣
̣
̉
̃
́
̉
́
́
̃
́
hoăc
̣
̀
̀
́
̣
̀
̀
8
Chƣơng I: Giơi thiêu
̣
́
Bꢄo mꢋt (Confidentiality): che dâ
phiên truyên thông hoăc giao dich hoăc
tꢑnh (cꢀc file, cꢀc dữ liꢁu trong mꢈt cơ sở dữ liꢁu …).
́
u nôi
̣
dung cua cac thông điêp
̣
đƣơ
̣
c trao đô
̉
i
̉
́
trong môt
̣
̀
̣
̣
̣
cac thông điêp
̣
trên môt
̣
hê thô
̣
́
ng may
́
́
Xꢀc thꢟc hóa (Authentication): đam bao nguồn gốc cua môṭ thông điêp̣ , ngƣơi
̉ ̉ ̉
̀
dùng.
Toꢃn vꢯn (Integrity): đam bao chi co cac tô chƣc đa đƣợc xac thƣ̣c hoa mơi co
̉
́ ̃ ́ ́ ́ ́
̉
̉
̉
́
́
thê
̉
thay đô
Dꢧch vꢉ không thꢘ chꢂi tꢦ
không thꢘ phꢅ nhꢋn viꢁc tham gia vꢃo mꢈt giao dꢧch hꢪp lꢁ.
Ngoꢃi ra còn cꢀc dꢧch vꢉ quan trꢕng khꢀc chꢱng hꢆn nhƣ chữ kꢏ điꢁn tử , dꢧch
̉
i cac tai san cua hê
̣
thô
́
ng cung nhƣ cac thông tin trên đƣơng truyê
̀
n.
́
̀
̉
̉
̃
́
̀
(Non-Repudiation): Cꢀc bên đꢌ đƣꢪc xꢀc thꢟc
vꢉ chꢔng thꢟc danh tꢑnh (Identification) cho phep thay thê
́
hinh thƣc xac thƣ
̣
c hoa ngƣơi
́
̀
́
́
́
̀
dùng dƣ
̣
a trên cac mât
̣
khâ
̉
u bă
̀
ng cac ky thuât
̣
man
h an toan trên cac kênh truyền thông không an toan
̀
̣
h hơn hoăc
̣
dic
̣
h vụ thƣơng maị điêṇ
́
́
̃
tƣ cho phep tiê
̉
́
n hanh cac giao dic
̣
́
̀
́
̀
́
nhƣ Internet.
9
Chƣơng II: Cơ sơ toán hꢍc
̉
CHƢƠNG II: CƠ SƠ
Đê hiêu đƣơc nhƣng thuât
tƣ cung nhƣ cac giao thƣc mâṭ ma , chúng ta phꢄi có những kiꢐn thꢔc nền tang cơ
̃
̉
̉
TOꢒN HꢓC
toan sƣ duṇ g trong cac hệ ma mâṭ , trong cac hệ chƣ ky
́ ̃ ́ ̃ ́
̉
̉
̣
̣
̃
́
̉
điên
̣
̉
̃
́
́
bꢄn về toꢀn hꢕc, lꢏ thuyꢐt thông tin … đƣơ
bꢃy nhƣng khai niêm cơ ban vê ly thuyêt thông tin nhƣ Entropy , tô
cua thuât toan , đô an toan cua thuât
̣c sƣ duṇ g trong mâṭ ma hoc̣ . Chƣơng nay trinh
̉
̃
̀
̀
̣
̀
́
́
c đô
̣ cua ngôn ngƣ
̉
̃
̃
́
̉
́
(Rate of Language), đô
kiên thƣc toꢀn hꢕc: đông dƣ sô
đinh ly Fermat . . . vꢃ cꢀc thuꢋt toꢀn kiê
̣
phƣc tap
̣
̣
̣
̣
toan , vꢃ mꢈt sꢂ
́
̉
́
̀
̉
́
́
̀
́
hoc
̣
(modulo), sô
́
nguyên tô
́
, đin
̣
h ly phâ
̀
n dƣ trung hoa ,
́
́
̣
̉
m tra sô nguyên tô
́
́
. Nhƣng vâ
́
n đê chinh se đƣơ
̀
̣c
́
̃
́
̃
trình bꢃy trong chƣơng nꢃy gꢖm :
Lꢔ thuyꢌt thông tin
Lꢔ thuyꢌt đꢇ phꢋc tꢅp
Lꢔ thuyꢌt sꢂ hꢍc.
1. Lꢔ thuyꢌt thông tin
Nhƣng khai niêm
̣
mơ đâ
̀
u cua lꢏ thuyꢐt thông tin đƣꢪc đƣa ra lâ
̀
n đâ
c coi la cha đê cua ly thuyết
̉
̉
́
̀u tiên vao năm
̃
́
̉
̉
̀
1948 bơi Claude Elmwood Shannon (môt
̣
nha khoa hoc
̣
đƣơ
sô chu đề quan troṇ g cua ly thuyết
̉
́
̣
̉
̀
̀
thông tin). Trong phâ
̀
n nay chung ta chi đê
̀
câp
̣
tơi môt
̣
́
̀
́
̉
́
̉
thông tin.
1.1. Entropy
Lꢏ thuyꢐt thông tin đꢧnh nghĩa khô
́
i lƣơ
̣
ng thông tin trong môṭ thông bao lꢃ sꢂ bꢑt nhỏ
́
nhâ
́
t cân thiêt đê ma hoa tât ca nhƣng nghia co thê
̀
́
̉
́
̉
cua thông bao đo.
̃
́
̉
̃
̃
́
̉
́
́
Vꢑ dꢉ, trƣơng ngay_thang trong môṭ cơ sơ dƣ liêụ chƣa không qua 3 bꢑt thông tin,
̉
̃ ́ ́
̀
bơi vi thông tin ngay có thꢘ mꢌ hoꢀ vꢇi 3 bꢑt dữ liꢁu:
̉
̀
̀
000 = Sunday
001 = Monday
010 = Tuesday
011 = Wednesday
100 = Thursday
101 = Friday
110 = Saturday
111 is unused
Nếu thông tin nay đƣợc biêu diễn bơi chuỗi ky tƣ̣ ASCII tƣơng ƣng , nó sẽ chiꢐm
̉
̀ ́ ́
̉
nhiê
̀
u không gian nhơ hơn , nhƣng cung không chƣa nhiê
̀
u thông tin hơn . Tƣơng tƣ
cơ sơ dƣ liêụ chỉ chꢔa 1 bꢑt thông tin, nó có thꢘ lƣu trữ nhƣ mꢈt
̉
̃
̣ nhƣ
́
̃
́
trƣơng gioi_tinh cua môt
̣
̀
̉
trong hai xâu ky tƣ̣ ASCII : Nam, Nƣ.
̃
́
Khối lƣợng thông tin trong môṭ thông bao M đo bơi Entropy cua thông bao đo, kꢏ
́ ́ ́
̉ ̉
hiêu
̣ la H(M). Entropy cua thông bao gioi _tinh la 1 bꢑt, kꢏ hiꢁu H (gioi_tinh) = 1, Entropy
̀
̉
́
̀
cꢅa thông bꢀo sꢂ ngꢃy trong tuꢤn lꢃ nhỏ hơn 3 bits.
10
Chƣơng II: Cơ sơ toán hꢍc
̉
Trong trƣơng hơ
̣
p tô
̉
ng quꢀt, Entropy cꢅa mꢈt thông bꢀo lꢃ log n, vơi n la sô
́
kha
2
̉
̀
́
̀
năng co thê
̉
(ꢏ nghĩa) cꢅa thông bꢀo.
́
H(M) = log2n
1.2. Tô
́
c độ cua ngôn ngƣ. (Rate of Language)
̉
̃
Đꢂi vꢇi mꢈt ngôn ngữ, tô
́
c đô
̣
thƣ
̣
c tê
́
(actual rate) cꢅa ngôn ngữ lꢃ:
r = H(M)/N
trong trƣơng hợp nay N la độ dai cua thông bao vꢃ M lꢃ mꢈt thông điꢁp có đꢈ dꢃi N.
̀ ̀ ̀ ́
̉
̀
Tô
́
c đô
̣
cua tiê
́
ng Anh binh thƣơng lꢃ 0.28 do đo mô
̃
i chƣ cai tiê
́
ng Anh co 1.3 bit nghĩa.
̉
̀
̀
́
̃
́
́
Tô
́
c đô
̣
tuyêt
̣
đô
́
i (absolute rate) cꢅa môt t câ
̣
ngôn ngƣ la sô
́
bits lơn nhâ
́
̀n thiết đê
̉
̃
̀
́
mꢌ hóa cꢀc kꢏ tꢟ cꢅa ngôn ngữ đó . Nê
́
u co L ky tƣ̣ t rong môṭ ngôn ngƣ, thì tꢂc đꢈ tuyꢁt
́
́
̃
đôi la :
́
̀
R = log2L
i ky tƣ đơn le . Đꢂi vꢇi tiꢐng Anh gꢖm 26 chƣ cai,
Đây la sô
́
Entropy lơn nhâ
́
t cua mô
̃
̣
̀
́
̉
́
̉
̃
́
tốc độ tuyêṭ đối la log 226 = 4.7bits/chƣ cai. Sẽ không có điều gì lꢃ ngꢆc nhiên đối vơi tất
̀ ̃ ́ ́
cꢄ mꢕi ngƣꢓi rꢬng thꢟc tꢐ tꢂc đꢈ cꢅa tiꢐng Anh nhỏ hơn nhiề u so vơi tô
́
c đô
chúng ta vꢨn thấy rꢬng đꢂi vꢇi mꢈt thông bꢀo bꢬng tiꢐng Anh có thꢘ loꢆi bỏ mꢈt sꢂ
cꢀi nhƣng ngƣꢓi đꢕc vꢨn có thê hiêu đƣơc. Hiên tƣơng nay đƣơc goi la đô dƣ thƣa cua
ngôn ngƣ (Redundancy) tƣ nhiên.
̣
tuyêt
̣
đô
́
i , vꢃ
́
chƣ
̃
̉
̉
̣
̣
̣
̣
̣
̣
̀
̀
̀
̉
̣
̃
Không chi đô
́
i vơi tiê
́
ng Anh ma vơi hâ
̀
u hê
ngôn ngƣ, do viêc̣ sƣ duṇ g ngôn ngƣ dẫn tơi co m ꢈt sꢂ chữ cꢀi đƣꢪc sử dꢉng vꢇi tꢤn
̉
̃
́t cac ngôn ngƣ tƣ̣ nhiên , do cấu truc cua
̉
́
̀
́
́
̃
́
̉
̃
́
́
suâ
́
t không đô
̀
ng đê
̀
u hoăc
̣
chi co thê
̉
xuâ
́
t hiên
̣
vơi môt
̣
cấu truc nao đo lam cho chung ta
́ ̀ ́ ̀ ́
̉
́
́
vân co thê
̃
̉
đoan đƣơ
̣
c nghia cua cac thông bao nê
́
u loai bo cac chƣ cai nay.
̣
́
́
̃
̉
́
́
̉
́
̃
́
̀
Đꢈ dƣ thꢦa (Redundancy) cꢅa mꢈt ngôn ngữ kꢏ hiꢁu lꢃ D vꢃ D = R – r. Đꢂi vꢇi
́ng Anh:
tiê
D = 1 - .28 = .72 letters/letter
D = 4.7 – 1.3 = 3.4 bits/letter
Nhƣ vâỵ mỗi chƣ cai co 1.3 bit nghia vꢃ 3.4 bit dƣ thƣa (xấp xi 72%).
̃ ́ ́ ̃ ̀
̉
1.3. Tꢕnh an toan cua hê
̣
thố ng ma hoa
̃ ́
̀
̉
Shannon điṇ h nghia rất ro rang , tỉ mỉ cꢀc mô hình toꢀn hꢕc đꢘ đꢀnh giꢀ đꢈ an toan
̃ ̃ ̀ ̀
cꢅa cꢀc hꢁ mꢌ mꢋt sử dꢉng . Mꢉc đꢑch cꢅa ngƣꢓi thꢀm mꢌ lꢃ phꢀt hiꢁn ra khoꢀ sƣ dun
̣
g
̉
cꢅa hꢁ mꢌ (K-Key), bꢄn rõ (P-PlainText), hoăc
môt vai thông tin co kha năng vê ban ro P chăng han
lꢃ mꢈt văn ban tiê bꢄng tꢑnh dữ liꢁu, v. v . . .
̣ ca hai . Hơn nƣa họ co thê hai long vơi
̉
̉
̃
́
̀
̀
́
̣
̀
̉
̣ nhƣ đo la âm thanh dꢆng số, hoăc̣
́ ̀
̀
́
̉
̉
̃
́
ng Đƣc, hoăc
̣
lꢃ môt
̣
̉
́
Trong hâ
̀
u hê
́
t cac lâ
̀
n thꢀm mꢌ, ngƣơi thꢀm mꢌ thƣơng cô
́
gắng thu thâp̣ môṭ số
́
̀
̀
thông tin co kha năng vê
̀
bꢄn rõ P trƣơc khi bă
́
t đâ
n co sƣ dƣ thƣa kết hợp vơi chinh ngôn ngƣ đo.
́ ́ ̃ ́
̀u. Hꢕ có thꢘ biꢐt ngôn ngữ đꢌ đƣꢪc sƣ
́
̉
́
̉
dꢉng đꢘ mꢌ hoꢀ. Ngôn ngƣ nay chă
́
c chă
́
̣
̃
̀
́
̀
Nê
́
u no la môt
̣
thông bao gƣi tơi Bob, nó có thꢘ bꢊt đꢤu vꢇi "Dear Bob". Đoan
̣
văn ban
̉
́
̀
́
̉
́
11
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình An toàn và bảo mật thông tin - Trường Đại học Hàng Hải", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- giao_trinh_an_toan_va_bao_mat_thong_tin_truong_dai_hoc_hang.pdf