▪ Hệ mật mã khóa đối xứng không đáp ứng được 2 mục tiêu an toàn • Xác thực Alice và Bob trao đổi thông tin bí mật Alice cần phải biết thông tin chắc chắn đến từ Bob, và ngược lại • Chống phủ nhận Alice và Bob trao đổi thông tin bí mật Nếu Alice đã gửi thông tin nào đó cho Bob thì Alice không thể chối bỏ thông tin đó là của mình ▪ Quản lý khóa đối xứng là một vấn đề nan giải • Trong các hệ khóa đối xứng, mỗi cặp người dùng phải có khóa riêng • N người dùng cần N (N1)2 khóa • Việc quản lý khóa trở nên phức tạp khi số lượng người dùng tăng
Trang 137 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
1
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CÔNG NGHỆ THÔNG TIN
Giảng Viên: ThS.Dương Minh Tuấn
dmtuan@ntt.edu.vn
Trang 237 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Các giải thuật mã hóa KHÓA BẤT ĐỐI XỨNG
Chương V.
1 Tổng quan
2 Lý thuyết nền tản hệ mật mã công khai
3 Các giải thuật mã hóa khóa bất đối xứng
4 RSA
Trang 337 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
1 Tổng quan
▪ Hệ mật mã khóa đối xứng không đáp ứng được 2 mục
tiêu an toàn
• Xác thực
- Alice và Bob trao đổi thông tin bí mật
- Alice cần phải biết thông tin chắc chắn đến từ Bob, và ngược lại
• Chống phủ nhận
- Alice và Bob trao đổi thông tin bí mật
- Nếu Alice đã gửi thông tin nào đó cho Bob thì Alice không thể chối bỏ
thông tin đó là của mình
▪ Quản lý khóa đối xứng là một vấn đề nan giải
• Trong các hệ khóa đối xứng, mỗi cặp người dùng phải có khóa riêng
• N người dùng cần N * (N-1)/2 khóa
• Việc quản lý khóa trở nên phức tạp khi số lượng người dùng tăng
3
Trang 437 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
• N người dùng cần N khóa công khai được xác thực
• Hạ tầng khóa công khai PKI
Khái niệm
Trang 537 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Trang 637 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Trang 737 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
1 Tổng quan
Khóa bí mật & khóa công khai
7
Trang 837 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
2 Lý thuyết nền tản Hệ mật mã khóa công khai
•Số trường hợp phải xét đến là hàm lũy thừa
“Các hệ mật mã khóa công khai dựa trên độ khó/phức tạp của
giải thuật bẻ khóa”
Trang 937 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
• Giải thuật Euclide mở rộng
2 Lý thuyết nền tản Hệ mật mã khóa công khai
9
Trang 1037 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
• a^(10000+1000+1) = a^10000 * a^1000 * a^1
• a^10000 * a^1000 * a^1 = a^16 * a^8 * a^1
Độ phức tạp (O(logb*(logs)^2))
Hiệu quả hơn phương pháp tính lũy thừa bằng phép
nhân đồng dư (O(b*(logs)^2))
Trang 1137 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Thủ tục bình phương
2 Lý thuyết nền tản Hệ mật mã khóa công khai
ModExp1(a,b, s)
Vào:
• 3 số nguyên dương a,b,s sao cho a < s
• bn-1 ···b1b0 là biểu diễn nhị phân của b, n = [logb]
Ra: a^b mod s
11
Trang 1237 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Trang 1337 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
3.Các giải thuật mã hóa khóa bất đối xứng
❖Các giải thuật mã hóa khóa bất đối
xứng ( asymmetric key encryption )
▪ Còn gọi là mã hóa khóa công khai
( public key encryption ):
▪ Sử dụng một cặp khóa (key pair):
• một khóa (public key) cho mã hóa
• một khóa (private key) cho giải mã.
13
Trang 1437 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
3 Các giải thuật mã hóa khóa bất đối xứng
▪ Thuận lợi trong quản lý và phân phối khóa:
• Do khóa mã hóa là công khai và có thể trao đổi dễ dàng.
❖ Các giải thuật mã hóa khóa bất đối xứng điển hình:
Trang 1537 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
❖ Giải thuật mã hóa RSA được 3 nhà khoa học Ronald Rivest ,
▪ Tên giải thuật RSA lấy theo chữ cái đầu của tên 3 ông.
❖ Độ an toàn của RSA dựa trên tính khó của việc phân tích số
nguyên rất lớn:
▪ Khóa RSA là số nguyên rất lớn có hàng trăm chữ số thập phân
❖ RSA sử dụng một cặp khóa:
▪ Khóa công khai (Public key) dùng để mã hóa;
▪ Khóa riêng (Private key) dùng để giải mã.
▪ Chỉ khóa riêng cần giữ bí mật Khóa công khai có thể công bố rộng rãi.
15
Trang 1637 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
❖ Kích thước khóa của RSA:
▪ Khóa < 1024 bít không an toàn hiện nay.
▪ Khuyến nghị dùng khóa >= 2048 bít với các ứng dụng mật mã dân sự hiện nay.
▪ Tương lai nên dùng khóa >=3072 bít.
▪ Tạo 2 số nguyên tố p và q ;
▪ Tính n = p x q
▪ Tính (n) = (p-1) x (q-1)
▪ Chọn số nguyên tố e sao cho 0 < e < (n) và
▪ Chọn số d sao cho d e -1 mod (n), hoặc (d x e) mod (n) = 1
( d là molulo nghịch đảo của e )
❖Ta có (
Trang 1737 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Trang 1837 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình
Trang 1937 Địa vị a Bấp bê nh b Bập bùng c Bập bềnh d Bậ p bẹ 38 Lửa cháy a Bấp bênh b Bập bùng c Bậ p bềnh d Bập bẹ 39 Sóng nước a Bấ p bên h b Bập bùng c Bập bềnh d Bậ p bẹ 40 Tiếng nói a Bấp bênh b Bập bùng c Bậ p bề nh phẩm a Bất hảo b Bất kha m c Bất h ủ d Bất minh 43 P hần tử a Bất hả o b
d Bất mi nh 45 Bàn tay a Êm ấ m b Ê m dịu c Êm ái d Ê m đềm 4 6 Dòng sông lòng a Hào hùng b Hà o hiệ p c Hà o phóng d Hà o hoa 5 0 Khí phách a Hào hiệp c Hà o phóng d Hào hoa 52 Ăn tiêu a Hà o hùng b Hào hiệp c Hào phóng d Hào hoa 53 Ăn nói 54 Bệnh dịch 55 Đá nh bằ ng 56 Tính tình