An toàn mạng máy tính4.1 - An toàn mạng và các yêu cầu 4.2 - Mã hoá cryptography 4.3 - Chứng thực authentication 4.4 - Tính liêm chính và nguyên vẹn integrity 4.5 - Key Distribution and
Trang 1Chương 3:
AN TOÀN MẠNG MÁY TÍNH
Giáo viên: ThS Tạ Minh Thanh E-mail: taminhjp@gmail.com
Trang 2An ninh truyền tin người-người
??????
-Ăn trộm-Sửa đổi-Huỷ bỏ-…
-Kẻ trộm không hiểu được nội dung
-Thông điệp không bị sửa đổi
-Gửi đúng địa chỉ
-…
Trang 3An toàn mạng máy tính
4.1 - An toàn mạng và các yêu cầu
4.2 - Mã hoá (cryptography)
4.3 - Chứng thực (authentication)
4.4 - Tính liêm chính và nguyên vẹn (integrity)
4.5 - Key Distribution and Certification
4.6 - Kiểm soát truy cập (access control): firewalls 4.7 - Tấn công mạng (network attacks)
4.8 - An ninh tại các tầng mạng
Trang 4Truyền tin an toàn trong mạng máy tính
• Alice, Bob, Trudy: các máy tính cụ thể, các dịch vụ cụ thể (web, mail, DNS, bank…).
• Bob, Alice muốn “trò chuyện” bí mật; nạn nhân (victim) của Trudy
• Trudy (kẻ trộm) muốn và có thể nghe thấy, lưu lại, huỷ bỏ, sửa
đổi thông điệp, gửi thông điệp giả mạo.
Trang 5Các yêu cầu về an toàn truyền tin
• Bí mật (confidentiality): msg truyền đi chỉ có sender
(sndr) và receiver (rcvr) hiểu được.
• Tính liêm chính và nguyên vẹn (integrity): msg nhận
được không bị sửa đổi và nếu bị sửa đổi phải phát hiện
được; msg phải đảm bảo đến từ đúng sndr.
• Kiểm soát truy cập (access control):
– kiểm soát được sự truy nhập dịch vụ (firewalls).
Trang 6Mã hoá (cryptography)
• Mã hoá (encryption): chuyển msg thành dạng khác mà chỉ có sndr và rcvr hiểu được bằng cách giải mã (decryption)
• Khoá (key): thông tin sử dụng để mã hoá hay giải mã
– Khoá đối xứng (symmetric); khoá chia sẻ (shared): cả sndr và rcvr cùng biết – Khoá công khai (public): khoá dùng để mã hoá được công khai.
Trang 7Mã hoá đối xứng (SKC - Symmetric Key Cryptography)
• Mã Caesar: thay thế các ký tự của msg bởi ký tự đứng sau nó k vị trí.
– Vd: k=1 thì ab, bc,…,za.
• Phương pháp thế (substitution):
– thay thế ký tự theo bảng thay thế.
– mã Caecar là trường hợp đặc biệt.
Trang 8SKC: DES
• DES: Data Encryption Standard
• Đưa ra bởi NIST (National Institute of Standard and Technology, US).
• Khoá (key) là một số nhị phân 56-bit; dữ liệu (data) là số nhị phân 64-bit.
• Mức độ an toàn của DES:
– RSA Inc 1997, msg = “Strong cryptography makes the world a safer
place” , khoá 56-bit giải mã bằng brute-force: 4 tháng.
• Tăng độ an toàn của DES:
– cipher-block chaining: đầu ra của bộ 64-bit thứ j XOR với 64-bit vào kế tiếp.
– mã hoá nhiều lần liên tiếp (3 lần triple-DES: 3DES).
– Advanced Encryption Standard (AES):
• NIST cải tiến DES, 2001; Khoá: 128, 256, 512-bit;
• brute-force: 149 nghìn tỷ (trillion) năm đối với 1 giây để giải mã DES 56-bit key.
Trang 9Basic DES operation
Trang 10Public Key Cryptography (PKC)
• Sử dụng khoá đối xứng (SKC):
– khoá mã và khoá giải mã giống nhau (khoá bí mật).
– sndr và rcvr cần phải thoả thuận trước khoá bí mật – nếu khoá dùng chung được gửi qua mạng thì cũng có
khả năng bị “ăn cắp”.
• Mã hoá sử dụng khoá công khai:
– mỗi bên (sndr, rcvr) sử dụng một cặp khoá (khoá mã
và khoá giải mã).
– khoá mã được công khai (PK - public key).
– khoá giải mã là bí mật (SK - secret key; sndr không
Trang 11PKC (cont)
Trang 12PKC (cont)
• Yêu cầu đối với PKC:
– Cần có hai “hàm” KB+ ( ) và KB- ( ) sao cho:
– “Không thể” tìm ra KB- khi biết KB+
• Ví dụ:
– RSA (Rivest, Shamir, Adelson) algorithm
– Khoá công khai và khoá bí mật là các cặp
số nguyên.
m = KB- (KB+ ( m))
Trang 13RSA: Chọn khoá thế nào?
• Chọn hai số nguyên tố lớn p, q (vd: 1024-bits);
Trang 14RSA: Encryption, decryption
Trang 15RSA example
Bob chooses p=5, q=7 Then n=35, z=24
e=5 (so e, z relatively prime).
d=29 (so ed-1 exactly divisible by z)
Trang 17An toàn mạng máy tính
4.1 - An toàn mạng và các yêu cầu
4.2 - Mã hoá (cryptography)
4.3 - Chứng thực (authentication)
4.4 - Tính liêm chính và nguyên vẹn (integrity)
4.5 - Key Distribution and Certification
4.6 - Kiểm soát truy cập (access control): firewalls 4.7 - Tấn công mạng (network attacks)
4.8 - An ninh tại các tầng mạng
Trang 18Chứng thực
• Mục đích của chứng thực là đảm bảo chắc chắn đối
phương không bị giả mạo.
• Authentication Protocol – ap (textbook #1).
• ap1.0: Alice say “I’m Alice”
Failed
Bob không “nhìn thấy” Alice trong
Trang 20Authentication: ap3.0
• Alice gửi kèm password để chứng minh.
• Trudy có khả năng “nghe” được password của Alice.
– Trudy ghi lại password rồi dùng nó để gửi cho Bob khi
Failed
Trang 21Authentication: ap3.1
• Alice gửi kèm password đã được mã hoá (encrypted
password) để chứng minh.
• Trudy có khả năng “nghe” được password đã mã hoá của
Alice, nhưng không biết password là gì !!!
• Tuy nhiên, Trudy chẳng cần biết password của Alice làm gì, chỉ cần password đã mã hoá là đủ.
Trang 22Authentication: ap4.0
• Nonce: số ngẫu nhiên được Bob sử
dụng để “chứng thực” Alice.
• Mỗi lần cần chứng thực, Bob tạo ra một
nonce rồi gửi cho Alice, yêu cầu Alice
mã hoá (sử dụng khoá bí mật chung K
A-B) rồi gửi lại.
• Bob kiểm tra xem Alice mã hoá có đúng
không? để chứng thực.
• Trudy có thể ghi lại nhưng không thể
dùng lại do nonce là khác nhau với
mỗi lần chứng thực.
• Nhược điểm: khoá bí mật; liệu có thể
Trang 23Authentication: ap5.0
• Sử dụng nounce và mã hoá công khai.
Trang 24ap5.0: lỗ hổng (security hole)
• Trudy giả mạo Alice.
Trang 25Lỗ hổng ap5.0:
man-in-the-middle attack
• Trudy đứng ở
giữa, giả mạo Bob
với Alice và giả
mạo Alice với Bob.
Trang 264.4 - Tính liêm chính và nguyên vẹn (integrity)
4.5 - Key Distribution and Certification
4.6 - Kiểm soát truy cập (access control): firewalls 4.7 - Tấn công mạng (network attacks)
Trang 27• Để đảm bảo dữ liệu được nguyên vẹn, có thể sử dụng các phương pháp kiểm soát lỗi (checksum, CRC…).
• Để kiểm tra được dữ liệu nhận được đến từ một
sndr cụ thể nào đó, sử dụng chữ ký điện tử
(chữ ký số - digital signature).
• Chữ ký thông thường: giống nhau với mọi msg.
• Chữ ký điện tử: phải khác nhau với các msg
khác nhau.
4025285