Tải bản đầy đủ (.pdf) (53 trang)

Bài giảng An toàn máy tính: Bài 5 - ThS. Tô Nguyễn Nhật Quang

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.88 MB, 53 trang )

Trường Đại Học Cơng Nghệ Thơng Tin
Khoa Mạng Máy Tính và Truyền Thơng

AN TỒN
MẠNG MÁY TÍNH
ThS. Tơ Nguyễn Nhật Quang


NỘI DUNG MÔN HỌC
1.
2.
3.
4.
5.
6.
7.
8.
9.

Tổng quan về an ninh mạng
Các phần mềm gây hại
Các giải thuật mã hoá dữ liệu
Mã hoá khố cơng khai và quản lý khố
Chứng thực dữ liệu
Một số giao thức bảo mật mạng
Bảo mật mạng không dây
Bảo mật mạng ngoại vi
Tìm kiếm phát hiện xâm nhập
ATMMT - TNNQ

2




BÀI 5

MÃ HỐ
KHỐ CƠNG KHAI
& QUẢN LÝ KHỐ


Mã hố khố cơng khai và quản lý khố
1. Số ngun tố
2. Hệ mã hố khố cơng khai
3. Giao thức trao đổi khoá Diffie-Hellman
4. Hệ RSA
5. Quản lý khoá

6. Bài tập

ATMMT - TNNQ

4


1. Số nguyên tố


Giới thiệu
– Bất kỳ số nguyên a > 1 đều có thể viết dưới
dạng:
a = p1a1p2a2p3a3…ptat

trong đó p1 < p2 < … < pt là các số nguyên tố.
Ví dụ:
85
= 5 x 17
91
= 7 x 13
1200 = 24 x 3 x 52
11011 = 7 x 112 x 13

ATMMT - TNNQ

5


1. Số nguyên tố


Giới thiệu
– Một số nguyên p> 1 là số nguyên tố nếu và
chỉ nếu ước duy nhất của nó là ± 1 và ± p.
– Số nguyên tố đóng vai trị quan trọng trong lý
thuyết số và trong các kỹ thuật mã hố khố
cơng khai thảo luận trong chương này.
– Bảng dưới đây trình bày các số nguyên tố
nhỏ hơn 2000.

ATMMT - TNNQ

6



1. Số nguyên tố

ATMMT - TNNQ

7


1. Số ngun tố
Thuật tốn tìm dãy số ngun tố nhỏ hơn n - dùng
thuật toán của nhà toán học Hy lạp Eratosthenes.



-

Liệt kê tất cả các số nguyên từ 2 đến n.

-

Số đầu tiên (2) là số nguyên tố.

-

Loại tất cả các bội của 2 ra khỏi bảng.

-

Số nguyên ngay sau số 2 sau khi loại (sàng) là số
nguyên tố (số 3).


-

Loại bỏ tất cả các bội của 3.

-

...

-

Khi tìm được một số nguyên tố lớn hơn căn bậc 2 của
n, tất cả các số cịn lại khơng bị loại ra đều là số
nguyên tố.
ATMMT - TNNQ

8


1. Số ngun tố


Thuật tốn tìm dãy số ngun tố nhỏ hơn n:

L = {2, 3, ..., n};
i = 1;
While (L[i]2 <= n) Do {
If (L[i] <> 0)
k = i2 + 2i;
While (k <= n) Do {

L[k] = 0;
k = k + i;
}
i++;
}
ATMMT - TNNQ

9


2. Hệ mã hố khố cơng khai


Được xây dựng trên ý tưởng hàm một chiều.

ATMMT - TNNQ

10


2. Hệ mã hố khố cơng khai
Các bước chủ yếu khi thực hiện mã hố khố cơng
khai:
1.

Mỗi user tạo ra một cặp khoá được sử dụng cho việc mã
hoá và giải mã thơng điệp.

2.


Mỗi user đặt một trong hai khố trong một đăng ký cơng
cộng. Đây là khố cơng khai. Khố cịn lại được giữ kín.

3.

Nếu Bob muốn gửi một tin nhắn bí mật cho Alice, Bob mã
hố tin nhắn này bằng cách sử dụng khố cơng khai của
Alice.

4.

Khi Alice nhận được tin nhắn, cơ giải mã nó bằng cách sử
dụng khố riêng của mình. Khơng có ai khác có thể giải mã
thơng điệp bởi vì chỉ có Alice biết khoá riêng của Alice.
ATMMT - TNNQ

11


2. Hệ mã hố khố cơng khai


Lịch sử hình thành:
 Năm 1976, Whitfield Diffie và Martin
Hellman công bố một hệ thống mật mã
hố khố bất đối xứng trong đó nêu ra
phương pháp trao đổi khóa cơng khai.

 Trao đổi khố Diffie-Hellman là phương
pháp có thể áp dụng trên thực tế đầu tiên

để phân phối khố bí mật thơng qua một
kênh thơng tin khơng an tồn.
ATMMT - TNNQ

12


2. Hệ mã hố khố cơng khai


Lịch sử hình thành:


Thuật tốn đầu tiên được Rivest, Shamir và
Adleman tìm ra vào năm 1977 tại MIT. Cơng
trình này được cơng bố vào năm 1978 và thuật
toán được đặt tên là RSA.



RSA sử dụng phép tốn tính hàm mũ mơđun
(mơđun được tính bằng tích số của 2 số ngun
tố lớn) để mã hóa và giải mã cũng như tạo chữ
ký số. An toàn của thuật tốn được đảm bảo
với điều kiện là khơng tồn tại kỹ thuật hiệu quả
để phân tích một số rất lớn thành thừa số
nguyên tố.
ATMMT - TNNQ

13



2. Hệ mã hố khố cơng khai
 Ứng dụng:
– Ứng dụng thơng dụng nhất của mật mã
hố khố cơng khai là bảo mật (mã
hoá/giải mã): một văn bản được mã hố
bằng khố cơng khai của một người sử
dụng thì chỉ có thể giải mã với khố bí
mật của người đó.

ATMMT - TNNQ

14


2. Hệ mã hố khố cơng khai

Encryption
ATMMT - TNNQ

15


2. Hệ mã hố khố cơng khai

Y = E(PUb, X)
X = D(PRb, Y)
Secrecy
ATMMT - TNNQ


16


2. Hệ mã hố khố cơng khai


Ứng dụng:
– Các thuật tốn tạo chữ ký số khố cơng
khai có thể dùng để chứng thực: Một
người sử dụng có thể mã hố văn bản
với khố bí mật của mình. Nếu một
người khác có thể giải mã với khố
cơng khai của người gửi thì có thể tin
rằng văn bản thực sự xuất phát từ người
gắn với khố cơng khai đó.

ATMMT - TNNQ

17


2. Hệ mã hố khố cơng khai

Authentication
ATMMT - TNNQ

18



2. Hệ mã hố khố cơng khai

Authentication
ATMMT - TNNQ

19


2. Hệ mã hố khố cơng khai


Ứng dụng:


Trao đổi khố: Hai bên hợp tác để trao đổi session
key. Có một số phương pháp tiếp cận khác nhau liên
quan đến các khóa bí mật của một hoặc cả hai bên.
Trước tiên, mã hố thơng điệp X sử dụng khố
secret của người gởi (cung cấp chữ ký số) để được
Y.
Kế đó, mã hố tiếp Y với khố public của người
nhận.
Chỉ có người nhận đã xác định trước mới có khố
secret của người nhận và khoá public của người
gởi để giải mã hai lần để được X.
ATMMT - TNNQ

20



2. Hệ mã hố khố cơng khai

Z = E(PUb, E(PRa, X))
X = D(PUa, D(PRb, Z))
Authentication và Secrecy
ATMMT - TNNQ

21


2. Hệ mã hố khố cơng khai


Một số giải thuật hệ mã hố khố cơng khai
Algorithm

Encryption/

Digital

Key

Decryption

Signature

Exchange

RSA


x

x

x

Elliptic Curve

x

x

x

Diffie-Hellman

x

DSS

x
ATMMT - TNNQ

22


2. Hệ mã hố khố cơng khai


Định nghĩa:

Cho các tập hữu hạn S và T.
Hàm một chiều f: S T là hàm khả nghịch thoả:


f dễ thực hiện; cho x  S, dễ dàng tính được y =
f(x).



f-1 là hàm ngược của f, khó thực hiện; cho y  T,
rất khó tính được x = f-1(y).



f-1 chỉ có thể tính được khi biết thêm một số
thông tin cần thiết.

ATMMT - TNNQ

23


2. Hệ mã hố khố cơng khai


Ví dụ:
f: pq  n là hàm một chiều với p và q là
các số nguyên tố lớn.
 Có thể dễ dàng thực hiện phép nhân pq
(độ phức tạp đa thức).

 Tính f-1 (phân tích ra thừa số nguyên tố độ phức tạp mũ) là bài tốn cực kỳ khó.

ATMMT - TNNQ

24


3. Giao thức trao đổi khố Diffie-Hellman
Mục đích của thuật tốn là cho phép hai
người dùng trao đổi khóa bí mật dùng
chung trên mạng cơng cộng, sau đó có thể
sử dụng để mã hóa các thơng điệp.
Thuật tốn tập trung vào giới hạn việc trao
đổi các giá trị bí mật, xây dựng dựa trên
bài tốn khó logarit rời rạc.

ATMMT - TNNQ

25


×