Chương 4 giới thiệu với người học về mã hóa công khai RSA. Nội dung chính trong chương này gồm: Mô hình mã hóa công khai; mã hóa công khai RSA; bảo mật, chứng thực, không thể từ chối trong RSA; phương pháp trao đổi khóa. Mời các tham khảo.
Trang 1Ch ươ ng 4
Mã hóa công khai RSA
Trang 3 Mã hóa đ i x ng dù phát tri n t c đi n đ n ố ứ ể ừ ổ ể ế
hi n đ i, v n t n t i 2 đi m y u sau:ệ ạ ẫ ồ ạ ể ế
◦ V n đ trao đ i khóa gi a ng ấ ề ổ ữ ườ ở i g i và ng ườ i nh n: ậ
c n có m t kênh an toàn đ trao đ i khóa bí m t ầ ộ ể ổ ậ
Trang 4 Khóa mỗi người dùng được chia ra làm hai phần:
◦ Khoa chung: để mã hóa công khai với mọi người
◦ Khóa bí mật: để giải mã thì được giữ bí mật chỉ được biết bởi chủ nhân của nó.
Nếu khóa bí mật ở người nhận thì bộ sinh khóa nằm ở người nhận
Ý t ưở ng
Trang 6 Các giai đo n mã hóa công khaiạ
Trang 7Đ nh nghĩa h mã công khai ị ệ
Trang 8 Là PP mã hóa công khai được xây d ng b i Ron ự ởRivest, Adi Shamir và Len Adleman t i vi n MIT ạ ệnăm 1977.
Là PP mã hóa theo kh i, b n rõ M và b n mã C là ố ả ảcác s nguyên t 0 đ n 2i v i I là s bit c a kh i ố ừ ế ớ ố ủ ố(i thường là 1024)
S d ng hàm m t chi u: phân tích m t s ử ụ ộ ề ộ ố
thành th a s nguyên t ừ ố ố
PP mã hóa RSA
Trang 9Nguyên t c th c hi n RSA ắ ự ệ
Trang 10Ví d RSA ụ
Trang 11Ví d mã RSA (tt) ụ
Trang 12 Phép mã hóa/gi i mã: dùng phép lũy th a ả ừ
modular. Đ an toàn, ch n N, e, M l n.ể ọ ớ
Dùng phép “bình phương liên ti p” tránh vi c tính ế ệlũy th a l n, nâng cao t c đ tính toán.ừ ớ ố ộ
Phép tính sinh khóa: ch n p và q đ l n đ vi c ọ ủ ớ ể ệ
th là không kh thiử ả
Đ ph c t p tính toán trong ộ ứ ạ
RSA
Trang 13Ví d sinh khóa trong RSA ụ
Trang 141. Vét c n khóa: th t t c các khóa d có th đ ạ ử ấ ả ể ể
tìm b n rõ có nghĩa, N l nả ớ b t kh thi.ấ ả
2. Phân tích N thành th a s nguyên t ừ ố ố p.q : vi c ệ
phân tích này là b t kh thi vì đây là hàm m t ấ ả ộchi u, là nguyên t c ho t đ ng c a RSA.ề ắ ạ ộ ủ
3. Đo th i gian: đây là PP phá mã không d a vào ờ ự
toán h c mà d a vào “hi u ng l ” sinh ra b i ọ ự ệ ứ ề ởquá trình gi i mã RSAả
Đ an toàn c a RSA ộ ủ
Trang 16 Đ đ m b o tính ch ng th c, Alice không t ch i ể ả ả ứ ự ừ ốtránh nhi m g i d li u, Alice dùng khóa riêng đ ệ ở ữ ệ ể
mã hóa
C=E(M, KRA)M=D(C, KUA)
Trang 17 N u b n gi i mã có nghĩa, t c Alice là ngế ả ả ứ ườ ở ữi g i d
li u. N u Trudy can thi p ch nh s a thì b n gi i mã ệ ế ệ ỉ ử ả ảkhông có nghĩa, n u Trudy có khóa KRA thì Alice ếkhông th thoái tránh nhi m làm l khóa.ể ệ ộ
Tuy nhiên mô hình CT không b o m t. Đ gi i ả ậ ể ả
quy t, ngế ười ta đ a ra mô hình:ư
Trang 18 Khi hai người dùng mu n truy n d li u cho nhau ố ề ữ ệ
b ng mã hóa công khai, trằ ước tiên h ph i trao ọ ả
Trao đ i khóa công khai ổ
Trang 19Trao đ i khóa công khai dùng ổ CA
Trang 20 Do đ c đi m toán h c c a mã hóa công khai ặ ể ọ ủ
ch m h n so v i mã hóa đ i x ng nên trong th c ậ ơ ớ ố ứ ự
t , đ đ m b o bí m t, ngế ể ả ả ậ ười ta dùng mã hóa đ i ố
x ng, mã hóa công khai đứ ược dùng đ thi t l p ể ế ậkhóa bí m t cho m i phiên trao đ i d li u.ậ ỗ ổ ữ ệ
Dùng khóa công khai trao đ i ổ
khóa bí m t ậ
Trang 21 A trao đ i khóa phiên Ks mã hóa b ng khóa riêng, ổ ằsau đó mã hóa b ng khóa công khai c a Bằ ủ
K t th c phiên trao đ i DL, Ks đế ứ ỗ ược h y đ đ m ủ ể ả
b o tính bí m t.ả ậ
Dùng khóa công khai trao đ i ổ
khóa bí m t (tt) ậ
Trang 22 Dùng đ thi t l p khóa bí m t gi a ngể ế ậ ậ ữ ườ ởi g i và
người nh n mà không c n đ n gi i pháp mã hóa ậ ầ ế ảcông khai hay chuy n chìa trên kênh truy n an ể ềtoàn
Ph ươ ng pháp trao đ i khóa ổ
Diffie – Hellman
Trang 23Alice Bob
Gi i pháp c a DiffieHellman ả ủ
Trang 24 thu t toán DiffieHellman l i th t b i đ i v i cách ậ ạ ấ ạ ố ớ
t n công k đ nggi a.ấ ẻ ứ ữ
Đ an toàn, quá trình thi t l p khóa DiffieHellman ể ế ậ
v n ph i đẫ ả ược mã hóa b ng m t khóa công khai.ằ ộ
N u đã đế ược b o v b ng khóa công khai, thì ả ệ ằ
ch n khóa đ i x ng b t k , c n gì ch n khóa ọ ố ứ ấ ỳ ầ ọ
DiffieHellman???
Nh n xét ậ
Trang 25B o v khóa DiffieHellman ả ệ
b ng khóa công khai ằ