Bài giảng Mạng máy tính - Chương 7: Bảo mật mạng
Chương 7
Bảo mật mạng
Computer Networking:
A Top Down Approach
Featuring the Internet,
3rd edition.
Jim Kurose, Keith Ross
Addison-Wesley, July
2004.
Slide này được biên dịch sang tiếng Việt theo
sự cho phép của các tác giả
All material copyright 1996-2006
J.F Kurose and K.W. Ross, All Rights Reserved
Bảo mật mạng
1
Chương 7: Bảo mật mạng
Mục tiêu:
hiểu các nguyên lý của bảo mật mạng:
mật mã
chứng thực
tính toàn vẹn
khóa phân bố
bảo mật trong thực tế:
các firewall
bảo mật trong các lớp application, transport,
network, link
Bảo mật mạng
2
7.1 Bảo mật mạng là gì?
Bảo mật mạng
3
Bảo mật mạng là gì?
Sự bảo mật: chỉ có người gửi, người nhận mới “hiểu”
được nội dung thông điệp
người gửi mã hóa thông điệp
người nhận giải mã thông điệp
Chứng thực: người gửi, người nhận xác định là nhận ra
nhau
Sự toàn vẹn thông điệp: người gửi, người nhận muốn
bảo đảm thông điệp không bị thay đổi (trên đường
truyền hoặc sau khi nhận) mà không bị phát hiện
Truy cập & tính sẵn sàng: các dịch vụ phải có khả năng
truy cập và sẵn sàng đối với các user
Bảo mật mạng
4
Bạn và kẻ thù: Alice, Bob, Trudy
Bob, Alice (bạn bè) muốn truyền thông “an toàn”
Trudy (kẻ xâm nhập) có thể ngăn chặn, xóa, thêm các
thông điệp
Alice
Bob
dữ liệu, các thông
điệp điều khiển
kênh
truyền
an toàn
nhận
an toàn
dữ liệu
dữ liệu
Trudy
Bảo mật mạng
5
Bob, Alice có thể là những ai?
trình duyệt Web/server cho các giao dịch
điện tử
client/server ngân hàng trực tuyến
DNS servers
các router trao đổi thông tin cập nhật bảng
routing
.v.v.
Bảo mật mạng
6
Bạn và kẻ thù
Hỏi: Kẻ xấu có thể làm những việc gì?
Đáp: rất nhiều!
nghe lén: ngăn chặn các thông điệp
kích hoạt chèn các thông điệp vào trong kết nối
(ghiảoặdcanbhấ:tckóỳtthrểườginảgmnạàoo đtrịaoncghỉđnóg)uồn trong gói
ncưgướờp:i “gtửiếi photặụcc”ngkưếtờinnốhi ậhniệbnằhnàgnchhnínhhưnhgọthay
tdừùncgh(ốđiồdnịcghnvgụh:ĩadịqcuhávtụảih)iện tại bị người khác
.v.v.
Bảo mật mạng
7
7.2 Các nguyên lý mã hóa
Bảo mật mạng
8
Ngôn ngữ mã hóa
khóa mã
của Alice
khóa mã
của Bob
K
K
A
B
giải thuật
giải thuật
giải mã
văn bản đã mã hóa
văn bản gốc
văn bản gốc
mã hóa
khóa đối xứng: khóa bên gửi và bên nhận giống nhau
khóa công cộng: khóa mã chung, khóa giải mã bí mật
(riêng)
Bảo mật mạng
9
Mã hóa khóa đối xứng
mật mã thay thế: thay thứ này thành thứ khác
mã hóa ký tự đơn: thay thế từng ký tự một
văn bản gốc: abcdefghijklmnopqrstuvwxyz
văn bản đã mã hóa: mnbvcxzasdfghjklpoiuytrewq
ví dụ:
văn bản gốc: bob. i love you. alice
mã hóa thành: nkn. s gktc wky. mgsbc
Hỏi: Bẻ khóa kiểu mã hóa đơn giản này dễ không?
❑ brute force (khó như thế nào?)
❑ khác?
Bảo mật mạng
10
Mã hóa khóa đối xứng
K
K
A-B
A-B
giải thuật
mã hóa
giải thuật
giải mã
văn bản đã mã
văn bản gốc
văn bản gốc, m
K (m)
KA-B(m)
m = KA-B(
)
A-B
khóa đối xứng: Bob và Alice cùng biết (đối xứng)
A-B
khóa: K
vd: khóa được biết trong mẫu mã hóa ký tự
đơn
Hỏi: Làm thế nào Bob và Alice thỏa thuận giá
Bảo mật mạng
11
trị khóa?
Mã hóa khóa đối xứng: DES
DES: Data Encryption Standard
chuẩn mã hóa của Hoa Kỳ [NIST 1993]
khóa đối xứng 56-bit, văn bản gốc vào 64-bit
Bảo mật trong DES như thế nào?
chưa có cách tiếp cận “backdoor-cửa sau” để giải mã
làm cho DES bảo mật hơn:
dùng 3 khóa tuần tự (3-DES) trong mỗi datum
dùng cơ chế liên kết khối mã
Bảo mật mạng
12
Mã hóa khóa
đối xứng: DES
DES hoạt động
hoán vị đầu tiên
16 vòng giống nhau, mỗi
vòng dùng khóa 48
bit khác nhau
hoán vị cuối cùng
Bảo mật mạng
13
AES: Advanced Encryption Standard
chuẩn NIST khóa đối xứng mới (tháng 11-
2001) thay thế cho DES
dữ liệu xử lý từng khối 128 bit
các khóa 128, 192, hoặc 256 bit
giải mã brute force (thử sai) tốn 1s với
DES, tốn 149 tỷ tỷ năm với AES
Bảo mật mạng
14
Mã hóa khóa công cộng
khóa đối xứng
Mã hóa khóa công cộng
yêu cầu người gửi,
người nhận phải biết
khóa công cộng
Hỏi: làm sao biết khóa
công cộng đó trong lần
đầu tiên (đặc biệt với
những người chưa bao
giờ gặp trước)?
tiếp cận khác hoàn
toàn
người gửi, người nhận
không chia sẻ khóa
công cộng
khóa công cộng cho
mọi người đều biết
khóa giải mã riêng chỉ
có người nhận biết
Bảo mật mạng
15
Mã hóa khóa công cộng
KB+
khóa công
cộng của Bob
K B-
khóa riêng của
Bob
encryption
algorithm
decryption
algorithm
văn bản gốc
văn bản gốc
văn bản đã mã
KB+(m)
m
m = KB-(K+(m))
B
Bảo mật mạng
16
Giải thuật mã hóa khóa công cộng
Yêu cầu:
+
-
B
.
.
1 cần K ( ) và K ( ) như sau:
B
-
+
K (K (m)) = m
B
B
+
2
cho khóa công cộng K , nó phải
B
không thể tính toán ra được
-
khóa riêng K
B
giải thuật RSA: Rivest, Shamir, Adelson
Bảo mật mạng
17
RSA: chọn các khóa
1. Chọn 2 số nguyên tố lớn p, q (mỗi số có thể đến 1024 bit)
2. Tính n = pq, z = (p-1)(q-1)
3. Chọn e (với e<n) sao cho không có thừa số chung với z.
(e, z là nguyên tố cùng nhau).
4. Chọn d sao cho ed-1 chia hết cho z.
(nói cách khác: ed mod z = 1 ).
5. khóa công cộng là (n,e). khóa riêng là (n,d).
-
B
+
B
K
K
Bảo mật mạng
18
RSA: mã hóa, giải mã
0. Cho (n,e) và (n,d) theo tính toán ở trên
1. Để mã hóa mẫu bit, m, tính:
e
c = m mod n
2. Để giải mã mẫu bit, c, tính:
d
m = c mod n
d
e
m = (m mod n) mod n
c
Bảo mật mạng
19
RSA ví dụ:
Bob chọn p=5, q=7. Thì n=35, z=24.
e=5 (vì e, z nguyên tố cùng nhau).
d=29 (vì ed-1 chia hết cho z)
e
e
m
m
c = m mod n
ký tự
mã hóa:
l
1524832
17
12
d
d
c
17
c
ký tự
m = c mod n
giải mã:
481968572106750915091411825223071697
12
l
Bảo mật mạng
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Mạng máy tính - Chương 7: Bảo mật mạng", để 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:
bai_giang_mang_may_tinh_chuong_7_bao_mat_mang.ppt