Bài giảng Nhập môn An toàn thông tin - Chương III: Các hệ mật khóa công khai - Nguyễn Linh Giang

Nhập môn An toàn thông tin  
PGS. Nguyễn Linh Giang  
Bộ môn Truyền thông và  
Mạng máy tính  
Nội dung  
I.  
Nhập môn An toàn thông tin  
II.  
Đảm bảo tính mật  
I.  
Các hệ mật khóa đối xứng (mã hóa đối xứng)  
Các hệ mật khóa công khai ( mã hóa bất đối xứng )  
Bài toán xác thực  
II.  
III.  
IV.  
I.  
Cơ sở bài toán xác thực  
Xác thực thông điệp  
Chữ ký số và các giao thức xác thực  
Các cơ chế xác thực trong các hệ phân tán  
An toàn an ninh hệ thống  
II.  
III.  
IV.  
I.  
Phát hiện và ngăn chặn xâm nhập ( IDS, IPS )  
II.  
Lỗ hổng hệ thống  
2
Nội dung  
l Tài liệu môn học:  
W. Stallings Networks and Internetwork security”  
W. Stallings Cryptography and network security”  
Introduction to Cryptography – PGP  
D. Stinson – Cryptography: Theory and Practice  
3
Chương III. Các hệ mật khóa công khai  
l Nguyên lý hệ mật khoá công khai  
l Thuật toán RSA  
l Sơ đồ trao đổi khoá Diffie-Hellman  
l Một số hệ mật khóa công khai khác  
4
Nguyên lý hệ mật khoá công khai  
l Đặc điểm  
Mật mã công khai dựa trên cơ sở của các hàm  
toán học.  
Không dựa trên phép thay thế và đổi chỗ như  
trong phương pháp mã hoá đối xứng.  
Mã mật công khai là bất đối xứng.  
l Trong cơ chế mã mật khoá công khai sử dụng hai khoá:  
khoá mật và khoá công khai.  
l Các hệ quả của việc sử dụng hai khoá bất đối xứng:  
tính toàn vẹn, tính xác thực, phân phối khoá.  
5
Nguyên lý hệ mật khoá công khai  
l Xuất xứ:  
Hệ mã mật khoá công khai được phát triển nhằm  
giải quyết hai vấn đề phức tạp nảy sinh từ  
phương pháp mã hoá đối xứng:  
l Vấn đề thứ nhất: bài toán phân phối khoá;  
l Vấn đề thứ hai: chữ ký số.  
6
Nguyên lý hệ mật khoá công khai  
l Hệ mật khoá công khai.  
Sơ đồ mã mật khoá công khai sử dụng một khoá  
để mã hoá và một khoá khác có liên quan để giải  
. Các thuật toán mã hoá và giải mã có một số  
đặc điểm quan trọng sau:  
l Không thể xác định được khoá giải mã nếu chỉ biết  
thuật toán mã hoá và khoá mã hoá.  
l Một số hệ mã mật khoá công khai ( như RSA ) còn  
cung cấp khả năng sử dụng bất kỳ một khoá trong cặp  
khoá làm khoá mã hoá thì khoá còn lại sẽ được dùng  
làm khoá giải mã.  
7
Nguyên lý hệ mật khoá công khai  
Sơ đồ mã hoá công khai:  
l A và B có các cặp khóa (KRA, KPA), (KRB, KPB). Các khóa này dùng để mã  
hoá và giải mã các thông điệp.  
l A và B công bố khoá công khai KPA, KPB trong cặp khoá, khoá còn lại được  
giữ mật.  
l Khi gửi thông điệp cho B, A sẽ mã hoá văn bản bằng khoá công khai KPB  
của B.  
l Khi nhận được thông điệp, B sẽ giải mã bằng khoá mật KRB. Bên thứ ba  
không giải mã được thông điệp vì chỉ có B biết khoá mật KRB của B.  
Khóa công khai của B  
Khóa riêng của B  
Văn bản rõ  
Mã hóa  
Mã mật  
Giải mã  
Văn bản rõ  
A
B
Đảm bảo tính mật  
8
Nguyên lý hệ mật khoá công khai  
Sơ đồ xác thực:  
l Nếu A muốn gửi thông điệp được xác thực cho B, A sẽ  
mã hoá văn bản bằng khoá riêng của A.  
l Khi B nhận được thông điệp, B sẽ giải mã bằng khoá  
công khai của A. Không một bên thứ ba có thể giải mã  
được thông điệp vì chỉ có B biết khoá mật của B.  
Khóa riêng của A  
Khóa công khai của A  
Văn bản rõ  
Mã hóa  
Mã mật  
Giải mã  
Văn bản rõ  
A
B
Đảm bảo tính xác thực  
9
Nguyên lý hệ mật khoá công khai  
l Các yêu cầu đối với hệ mật khóa công khai  
Quá trình sinh cặp khóa KP, KR là dễ trên phương diện tính toán;  
Quá trình mã hóa bản tin bằng khóa công khai KP ở bên gửi là dễ:  
Y = EKP(M);  
Quá trình giải mã ra văn bản rõ khi biết khóa riêng KR và bản tin mật Y  
là dễ:  
M = DKR(Y);  
Đối với thám mã, nếu chỉ biết KP sẽ rất khó trên phương diện tính toán  
để tính ra KR;  
Đối với thám mã, nếu chỉ biết KP và bản tin mật Y sẽ rất khó trên  
phương diện tính toán để tính ra bản tin rõ M;  
Nguyên lý đối xứng: quá trình mã hóa – giải mã có thể áp dụng theo  
hai chiều: M = DKP[EKR(M)]  
10  
Nguyên lý hệ mật khoá công khai  
l Các ứng dụng của hệ mật khóa công khai  
Ứng dụng trong mật mã – mã hóa, giải mã (RSA):  
l Bên gửi mã hóa bằng khóa công khai của bên nhận;  
l Bên nhận giải mã bằng khóa riêng.  
Ứng dụng trong phân phối khóa(RSA, Diffie-Helman):  
duy trì kênh mật phân phối khóa đối xứng bằng cơ sở  
mã mật công khai;  
Ứng dụng trong chữ ký số (RSA, DSS):  
l Bên gửi ký bằng khóa riêng.  
l Bên nhận xác thực chữ ký bằng khóa công khai của bên gửi.  
11  
Thuật toán mã hoá công khai RSA  
l Cơ sở lý thuyết số  
l Sơ đồ thuật toán  
l Thám mã RSA  
12  
Sơ đồ thuật toán RSA  
l Xuất xứ  
RSA do Ron Rivest, Adi Shamir và Len Adlenman  
phát minh năm 1977;  
Hệ thống mã khoá công khai phổ biến và đa năng:  
l Được sử dụng trong các ứng dụng mã hóa/giải mã;  
l Chứng thực;  
l Phân phối và trao đổi khoá.  
13  
Sơ đồ thuật toán RSA  
l Thuật toán RSA:  
Phương pháp mã hóa khối;  
Văn bản rõ và văn bản mật là các số nguyên có giá trị  
từ 0 đến n-1, n – số nguyên lớn;  
Mỗi khối có giá trị nhỏ hơn n.  
Kích thước của khối (số bít) nhỏ hơn hoặc bằng log2(n).  
Thực tế, kích thước của khối là k bit với  
2k < n ≤ 2k+1.  
14  
Sơ đồ thuật toán RSA  
Cặp khóa: (e, d)  
Mã hoá  
Bản rõ  
M < n  
Mã mật  
C = Me mod n  
Giải mã  
Mã mật  
Bản rõ  
C
M = Cd mod n =  
(Me)d mod n  
15  
Sơ đồ thuật toán RSA  
Bên gửi và bên nhận phải biết sn.  
Bên gửi biết khóa công khai là cặp (e, n).  
Bên nhận có khóa riêng là cặp (d, n).  
Các yêu cầu:  
l Có thể tìm được các số e, d, n sao cho:  
Med = M mod n " M < n.  
l Thực hiện tính Me và Cd một cách đơn giản " M < n.  
l Không thể xác định được d nếu biết e và n  
16  
Sơ đồ thuật toán RSA  
l Tạo khoá  
Tìm các số e, d sao cho:  
Med=M mod n  
Hệ quả của định lý Euler: cho p và q là số nguyên tố,  
n và m là hai số nguyên sao cho: n=pq và 0 < m < n,  
k là số nguyên bất kỳ. Đẳng thức sau nghiệm đúng:  
mkf(n)+1=mk(p-1)(q-1)+1ºm mod n  
Như vậy: ed = kf(n)+1, tức là:  
ed º1 mod f(n) hay d ºe-1 mod f(n) có nghĩa là  
gcd(f(n), d) = 1 và gcd(f(n), e) = 1  
17  
Sơ đồ thuật toán RSA  
Sơ đồ tạo khóa RSA  
18  
Sơ đồ thuật toán RSA  
Ví dụ  
l p = 7, q = 17  
l n = pq = 119; f(n)=(p-1)(q-1)=96  
l Chọn e nguyên tố cùng nhau với f(n), nhỏ hơn f(n),  
Chọn e = 5;  
l Tìm d: dºe-1 mod f(n)  
d=77 => cặp khóa: e=(5, 119); d=(77, 119)  
19  
Sơ đồ thuật toán RSA  
l Mã hoá và giải mã  
Vấn đề trong thuật toán mã hoá và giải mã RSA là việc thực hiện phép  
toán luỹ thừa và phép toán đồng dư với số nguyên lớn.  
Giải quyết dựa trên tính chất của phép toán mođun:  
[(a mod n) x (b mod n)] mod n = (a x b) mod n  
Tính am với m lớn.  
l Biểu diễn nhị phân của m =bkbk-1…b0=åbi≠02i  
l Do đó:  
æ
ö
÷
2i  
ç
ç å  
÷
ø
i
b ¹0  
am = aè i  
= a2  
Õ
bi ¹0  
m
2i  
2i  
(
)
a mod n = a mod n = a mod n  
Õ
Õ
bi ¹0  
bi ¹0  
20  
Tải về để xem bản đầy đủ
pdf 46 trang yennguyen 08/04/2022 3100
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn An toàn thông tin - Chương III: Các hệ mật khóa công khai - Nguyễn Linh Giang", để 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:

  • pdfbai_giang_nhap_mon_an_toan_thong_tin_chuong_iii_cac_he_mat_k.pdf