Chương 3. Mật mã khoá công khai, chương học này trình bày nội dung kiến thức thành 3 phần: Phần 1 Giới thiệu, phần 2 Một số kiến thức toán học, phần 3 Một số hệ mật khoá công khai.
Chương Mật mã khố cơng khai Hồng Thu Phương - Khoa ATTT Nội dung Giới thiệu Một số kiến thức toán học Một số hệ mật khố cơng khai Hồng Thu Phương - Khoa ATTT Giới thiệu Trong hệ mật khóa đối xứng khóa phải chia sẻ hai bên kênh an toàn trước gửi mã Trên thực tế điều khó đảm bảo Ý tưởng hệ mật khố cơng khai Diffie Hellman đưa vào năm 1976 Rivesrt, Shamir Adleman thực hóa ý tưởng vào năm 1977, họ tạo nên hệ mật tiếng RSA Hoàng Thu Phương - Khoa ATTT Giới thiệu Đặc điểm hệ mật KCK: – - Mỗi bên có khố cơng khai khố bí mật Bên gửi dùng khố cơng khai bên nhận để mã hố Bên nhận dùng khố bí mật để giải mã Hoàng Thu Phương - Khoa ATTT Giới thiệu Hệ mật RSA: – Hệ mật xếp ba lô Merkle - Hellman: – Độ bảo mật hệ RSA dựa độ khó việc phân tích thừa số nguyên lớn Hệ hệ liên quan dựa tính khó giải tốn tổng tập (bài toán toán NP đầy đủ) Hoàng Thu Phương - Khoa ATTT Giới thiệu Hệ mật McEliece: – Hệ mật ElGamal: – Hệ dựa lý thuyết mã đại số cịn coi an tồn Hệ mật McEliece dựa toán giải mã cho mã tuyến tính (cũng tốn NP đầy đủ) Hệ mật ElGamal dựa tính khó giải toán logarithm rời rạc trường hữu hạn Hoàng Thu Phương - Khoa ATTT Giới thiệu Hệ mật Chor-Rivest: – Hệ mật đường cong Elliptic: – Hệ mật Chor-Rivest xem mọt hệ mật xếp ba lơ Tuy nhiên coi an toàn Các hệ mật biến tướng hệ mật khác (chẳng hạn hệ mật ElGamal), chúng làm việc đường cong Elliptic trường hữu hạn Hệ mật đảm bảo độ mật với số khố nhỏ hệ mật khố cơng khai khác Hoàng Thu Phương - Khoa ATTT Giới thiệu Một ý quan trọng hệ mật khố cơng khai khơng đảm bảo độ mật tuyệt đối (an tồn vơ điều kiện) Ta nghiên cứu độ mật mặt tính tốn hệ mật Hồng Thu Phương - Khoa ATTT Giới thiệu Một số khái niệm hệ mật KCK: – Đặc tính chiều: Hàm mã khố cơng khai ek Bob phải hàm dễ tính tốn Song việc tìm hàm ngược (hàm giải mã) khó khăn (đối với khơng phải Bob) – 10 Ví dụ: Giả sử n tích hai số nguyên tố lớn p q, giả sử b số nguyên dương Khi hàm f(x) = xb mod n hàm chiều Hàm cửa sập chiều: thông tin bí mật cho phép Bob dễ dàng tìm hàm ek Hoàng Thu Phương - Khoa ATTT Một số kiến thức toán học 11 Cấu trúc đại số Số học modulo Hoàng Thu Phương - Khoa ATTT Một số kiến thức toán học 77 Thuật tốn nhân bình phương có lặp để lấy lũy thừa Zn: Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học ki Ví dụ: Tính 5596 mod 1234 =? i ki 0 1 0 A 25 625 681 1011 369 421 779 947 925 b 1 625 625 67 67 1059 1059 1059 1013 Vậy 5596 mod 1234 = 1013 - Tính 968 mod 78=? 78 Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học ĐN kí hiệu Legendre: p số nguyên tố lẻ, a số nguyên Kí hiệu Legendre xác định sau: 0 a p 79 p a a Q p a Q p Hoàng Thu Phương - Khoa ATTT Một số kiến thức toán học 80 Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học 81 Hồng Thu Phương - Khoa ATTT Một số kiến thức toán học ĐN kí hiệu Jacobi Cho n số ngun lẻ có phân tích n p 1e p e2 p ek k Khi kí hiệu Jacobi định nghĩa là: a a n p1 82 e1 e2 a a p2 pk ek Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học 83 Hồng Thu Phương - Khoa ATTT Một số kiến thức tốn học 84 Hồng Thu Phương - Khoa ATTT Một số kiến thức tốn học 85 Hồng Thu Phương - Khoa ATTT Một số kiến thức tốn học 86 Hồng Thu Phương - Khoa ATTT Một số kiến thức toán học 87 Thuật tốn (Tính tốn ký hiệu Jacobi (và ký hiệu Legendre) Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học 88 Hồng Thu Phương - Khoa ATTT Một số kiến thức toán học 89 Từ ví dụ ta thấy Q21={1,4,16}; thấy 1 21 5Q21 Hoàng Thu Phương - Khoa ATTT Một số kiến thức tốn học 90 Hồng Thu Phương - Khoa ATTT Một số kiến thức toán học Số Blum n số có dạng n p.q p, q số nguyên tố khác thoả mãn: p mod q mod Định lí: n số Blum, a Qn a có bậc modulo n có bậc thuộc Qn (căn bậc a mod n) 91 Hoàng Thu Phương - Khoa ATTT ... khác Các số nguyên tố trung tâm lý thuyết số Số số nguyên tố vơ hạn – 44 Ví dụ: Danh sách số nguyên tố nhỏ 200: 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 1 03 107 109 1 13. .. return A3 = gcd(m, b); no inverse if B3 = return B3 = gcd(m, b); B2 = b–1 mod m Q = A3 div B3 (T1,T2,T3)=(A1 – Q*B1,A2 – Q*B2, A3 – Q*B3) (A1, A2, A3)=(B1, B2, B3) (B1, B2, B3)=(T1, T2, T3) goto Hoàng. .. Ví dụ Ta có phân tích: 30 0=22 × 31 × 52 18=21? ?32 Vậy GCD(18 ,30 0)=21? ?31 ×50=6 Hoàng Thu Phương - Khoa ATTT Một số kiến thức toán học Định lý Ferma (Định lý Ferma nhỏ) ap-1 mod p = plà số nguyên