Giới thiệu
2. Lịch sử phát triển
3. Các khái niệm cơ sở
4. Mã hóa đối xứng
5. Mã hóa bất đối xứng
6. Chữ ký điện tử
81 trang |
Chia sẻ: Mr Hưng | Lượt xem: 872 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu An ninh bảo mật - Chương 3: Lý thuyết mật mã, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ất khoảng
0,06 đến 0,09
D, L : mỗi ký tự có xác suất chừng 0,04
C, U, M, W, F, G, Y, P, B: mỗi ký tự có xác suất
khoảng 0,015 đến 0,023
V, K, J, X, Q, Z mỗi ký tự có xác suất nhỏ hơn 0,01
Truyền và bảo mật thông tin 58
Phân tích của Beker và Peper
30 bộ đôi thông dụng nhất ( theo hứ tự giảm dần )
là: TH, HE, IN, ER, AN, RE, ED, ON, ES, ST, EN,
AT, TO, NT, HA, ND, OU, EA, NG, AS, OR, TI, IS,
ET, IT, AR, TE, SE, HI và OF
12 bộ ba thông dụng nhất (theo thứ tự giảm dần ) là:
THE, ING, AND, HER, ERE, ENT, THA, NTH,
WAS, ETH, FOR và DTH.
Truyền và bảo mật thông tin 59
Ví dụ thám mã bảng mã đơn
UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESX
UDBMETSXAIZVUEPHZHMDZSHZOWSFPAPPDT
SVPQUZWYMXUZUHSXEPYEPOPDZSZUFPOUDT
MOHMQ
- Tính tần suất các chữ
- Đoán P và Z là e và t.
- Khi đó ZW là th và ZWP là the.
- Suy luận tiếp tục ta có bản rõ:
“it was disclosed yesterday that several informal but
direct contacts have been made with
politicalrepresentatives in moscow”
Truyền và bảo mật thông tin 60
Bài tập thám mã sử dụng bảng tần suất
“
YIFQFMZRWQFYVECFMDZPCVMRZWNMDZV
EJBTXCDDUMJ
NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZRE
XCHZUNMXZ
NZUCDRJXỷYMTMEYIFZWDYVZVYFZUMRZCR
WNZDZJT
XZWGCHSMRNMDHNCMFQCHZJMXJZWIEJYU
CFWDINZDIR ”
Truyền và bảo mật thông tin 61
Mã thay thế - Mã Playfair
Một trong các hướng khắc phục của phương pháp
mã bằng bảng mã đơn là mã bộ các chữ, tức là mỗi
chữ sẽ được mã bằng một số chữ khác nhau tùy
thuộc vào các chữ mà nó đứng cạnh. Playfair là một
trong các mã như vậy, được sáng tạo bởi Charles
Wheastone vào năm 1854 và mang tên người bạn là
Baron Playfair. Ở đây mỗi chữ có thể được mã bằng
một trong 7 chữ khác nhau tùy vào chữ cặp đôi
cùng nó trong bản rõ.
Truyền và bảo mật thông tin 62
Mã thay thế - Mã Playfair
Phương pháp là lập ma trận 5x5 dựa trên từ khóa cho trước và các ký tự
trên bảng chữ cái
- Trước hết viết các chữ của từ khoá vào các hàng của ma trận bắt từ hàng thứ
nhất.
- Nếu ma trận còn trống, viết các chữ khác trên bảng chữ cái chưa được sử
dụng vào các ô còn lại. Có thể viết theo một trình tự qui ước trước, chẳng
hạn từ đầu bảng chữ cái cho đến cuối.
- Vì có 26 chữ cái tiếng Anh, nên thiếu một ô. Thông thuờng ta dồn hai chữ
nào đó vào một ô chung, chẳng hạn I và J.
- Giả sử sử dụng từ khoá MORNACHY. Lập ma trận khoá Playfair tương
ứng như sau:
MONAR
CHYBD
EFGIK
LPQST
UVWXZ
Truyền và bảo mật thông tin 63
Quy tắc mã hóa và giải mã
Chia bản rõ thành từng cặp chữ. Nếu một cặp nào đó có hai
chữ như nhau, thì ta chèn thêm một chữ lọc chẳng hạn X. Ví
dụ, trước khi mã “balloon” biến đổi thành “ba lx lo on”.
Nếu cả hai chữ trong cặp đều rơi vào cùng một hàng, thì mã
mỗi chữ bằng chữ ở phía bên phải nó trong cùng hàng của
ma trận khóa (cuộn vòng quanh từ cuối về đầu), chẳng hạn
“ar” biến đổi thành “RM”
Nếu cả hai chữ trong cặp đều rơi vào cùng một cột, thì mã
mỗi chữ bằng chữ ở phía bên dưới nó trong cùng cột của ma
trận khóa (cuộn vòng quanh từ cuối về đầu), chẳng hạn
“mu” biến đổi thành “CM”
Trong các trường hợp khác, mỗi chữ trong cặp được mã bởi
chữ cùng hàng với nó và cùng cột với chữ cùng cặp với nó
trong ma trận khóa. Chẳng hạn, “hs” mã thành “BP”, và
“ea” mã thành “IM” hoặc “JM” (tuỳ theo sở thích)
Truyền và bảo mật thông tin 64
Bài tập
Hãy tìm hiểu quá trình mã hóa và giải mã bằng
phương pháp mã Playfair
Bản rõ P= “Dai hoc su pham”
Khóa K=tinhoc
Truyền và bảo mật thông tin 65
Các mã đa bảng
Một hướng khác làm tăng độ an toàn cho mã trên
bảng chữ là sử dụng nhiều bảng chữ để mã. Ta sẽ gọi
chúng là các mã thế đa bảng. Ở đây mỗi chữ có thể
được mã bằng bất kỳ chữ nào trong bản mã tùy
thuộc vào ngữ cảnh khi mã hoá. Làm như vậy để
trải bằng tần suất các chữ xuất hiện trong bản mã.
Do đó làm mất bớt cấu trúc của bản rõ được thể hiện
trên bản mã và làm cho thám mã đa bảng khó hơn.
Ta sử dụng từ khoá để chỉ rõ chọn bảng nào được
dùng cho từng chữ trong bản tin. Sử dụng lần lượt
các bảng theo từ khóa đó và lặp lại từ đầu sau khi
kết thúc từ khoá. Độ dài khoá là chu kỳ lặp của các
bảng chữ. Độ dài càng lớn và nhiều chữ khác nhau
được sử dụng trong từ khoá thì càng khó thám mã
Truyền và bảo mật thông tin 66
Mã Vigenere
Mã thế đa bảng đơn giản nhất là mã Vigenere. Thực
chất quá trình mã hoá Vigenere là việc tiến hành
đồng thời dùng nhiều mã Ceasar cùng một lúc trên
bản rõ với nhiều khoá khác nhau. Khoá cho mỗi chữ
dùng để mã phụ thuộc vào vị trí của chữ đó trong
bản rõ và được lấy trong từ khoá theo thứ tự tương
ứng.
Giả sử khoá là một chữ có độ dài d được viết dạng
K = K1K2Kd, trong đó Ki nhận giá trị nguyên từ
0 đến 25. Khi đó ta chia bản rõ thành các khối gồm
d chữ. Mỗi chữ thứ i trong khối chỉ định dùng bảng
chữ thứ i với tịnh tiến là Ki giống như trong mã
Ceasar.
Truyền và bảo mật thông tin 67
Quá trình mã hóa và giải mã Vigenere
Để sử dụng mã Vigenere với từ khóa và bản rõ cho
trước ta có thể làm như sau:
- Viết bản rõ ra
- Viết từ khoá lặp nhiều lần phía trên tương ứng của nó
- Sử dụng mỗi chữ của từ khoá như khoá của mã
Ceasar
- Mã chữ tương ứng của bản rõ với bước nhảy tương
ứng.
- Chẳng hạn sử dụng từ khoá deceptive
plaintext: wearediscoveredsaveyourself
key: deceptivedeceptivedeceptive
ciphertext:ZICVTWQNGRZGVTWAVZHCQYGL
Truyền và bảo mật thông tin 68
Bài tập
Thực hiện mã hóa và giải mã đoạn văn bản sau:
Tuyen chong chat luong
Luong thang khong tieu
Khong duoc noi nhieu
Khong duoc cai vo
Phai biet di cho
Nau nuong quet nha
Khong duoc la ca
Ruoc che co bac
Truyền và bảo mật thông tin 69
Mã hóa đối xứng
Symmetric cryptography
Mã hóa đối xứng, tức là cả hai quá trình
mã hóa và giải mã đều dùng một chìa
khóa. Để đảm bảo tính an toàn, chìa
khóa này phải được giữ bí mật. Vì thế
các thuật toán loại này còn có tên gọi
khác là secret key cryptography (hay
private key cryptography)
Các thuật toán thông dụng: DES,
TripleDES, Rijndael,
Truyền và bảo mật thông tin 70
Mô hình mã hóa đối xứng
Truyền và bảo mật thông tin 71
Phân loại
a. Block cipher
Block cipher là một giải pháp hoạt dộng chống lại sự hạn chế
của dữ liệu tĩnh. Dữ liệu được chia ra thành các blocks với
size cụ thể và mỗi blocks được mã hoá một cách khác nhau.
.
b. Stream cipher
Stream cipher là giải pháp hoạt động chống lại dữ liệu luôn
luôn sử dụng một phương thức để truyền. Một vùng đệm, ít
nhất bằng một block, đợi cho toàn bộ thông tin của block đó
được chứa trong vùng đệm sau đó block đó sẽ được mã hoá
rồi truyền cho người nhận
Truyền và bảo mật thông tin 72
Giới thiệu một số thuật toán
DES (Data Encryption Standard)
Triple DES
AES (Advanced Encryption Standard)
RC 4, RC 5, RC 6 (Rivest Cipher 4,5,6 )
Skipjack
Blowfish
CAST-128
Truyền và bảo mật thông tin 73
DES (Data Encryption Standard )
Với DES, Bản tin hay mẫu thư được mã hóa
theo từng khối 64 bits và sử dụng một khóa
là 64 bits.
Truyền và bảo mật thông tin 74
Là một thuật toán được sử dụng rộng rãi nhất trên
thế giới với bề dày lịch sử hơn 20 năm, được phát
triển bởi IBM Team vào những năm 1970, sau đó
được phát triển bởi NIST (National Institute of
Standard and Technology) cho các ứng dụng
thương mại..
DES (Data Encryption Standard )
Truyền và bảo mật thông tin 75
Khóa dùng trong DES có độ dài toàn bộ là 64 bit.
Tuy nhiên chỉ có 56 bit thực sự được sử dụng; 8 bit
còn lại chỉ dùng cho việc kiểm tra. Vì thế, độ dài
thực tế của khóa chỉ là 56 bit.
Nó dễ dàng bị phá vỡ chỉ trong vòng 24 tiếng đồng
hồ
DES
Truyền và bảo mật thông tin 76
Triple DES (3DES)
Thực hiện DES ba lần
Truyền và bảo mật thông tin 77
AES
AES là thuật toán mã hóa đối xứng dạng khối
128-bit
Được phát triển bởi Vincent Rijmen và được sự
hỗ trợ của chính phủ Mỹ xem như một thuật toán
thay thế DES.
AES cũng được gọi là Rijndael “Rhine-dale”
phát âm theo tên người tạo ra.
Truyền và bảo mật thông tin 78
RC 4, 5, 6
Thuật toán RC bao gồm một series được phát triển
bởi Ronald Rivest.
Tất cả có chiều dài khóa khác nhau.
RC5 và RC6 là các mã hóa dạng khối với các kích
cỡ khác nhau
Truyền và bảo mật thông tin 79
Skipjack
Skipjack là một thuật toán mã hóa khối được
thiết kế bởi Cơ quan bảo mật quốc gia Hoa kỳ
- US National Security Agency (NSA) được
sử dụng trong chip Clipper Fortezza PC card
Truyền và bảo mật thông tin 80
Blowfish
Blowfish là một thuật toán mã hóa miễn phí
dùng block 64-bit sử dụng khóa có độ dài
khác nhau.Được phát triển bởi Bruce
Schneier.
Truyền và bảo mật thông tin 81
CAST-128
CAST-128, được đặt theo tên người phát triển là
Carlisle Adams và Stafford Tavares, là một thuật
toán mã hóa đối xứng có chiều dài khóa 128-bit.
Là một trong những đối thủ cạnh tranh chính của
AES.
Các file đính kèm theo tài liệu này:
- baigianglythuyetmatma_7212.pdf