[duongtran] public key_&_rsa_v2
TRANSCRIPT
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TINKHOA KỸ THUẬT MÁY TÍNH
---o0o---
HỆ THỐNG CHỨNG THỰC SỐ
KHÓA CÔNG KHAI & RSATRẦN ĐẠI DƯƠNG
VŨ MẠNH CƯỜNG
PHAN TRẦN NHƯ NGỌC
11520537 ©
11520525
11520253
11/10/2014
Mục tiêu
• Phân biệt được bảo mật và chứng thực
•Hiểu cách sử dụng khóa công khai
• Sử dụng giải thuật RSA cho bảo mật và chứng thực
11/10/2014 2Hệ thống chứng thực số
Nội dung
• Tại sao phải bảo mật?
• Tại sao phải chứng thực?
•Mở đầu về “Bất đối xứng”
• Từ bài toán N = f(p,q) = p*q đến bài toán cho N tìm lại p, q
• Thuật toán RSA
• Ví dụ
11/10/2014 Hệ thống chứng thực số 3
Mở đầu về “Bất đối xứng !!!”
• Mã hóa và giải mã dùng chung một khóa?
Thế giới không chỉ có người tốt!!!
• Mã hóa và giải mã dùng hai khóa khác nhau?• Tồ (người gửi) giữ khóa bí mật? => mô hình chứng thực
• Tũn (người nhận) giữ khóa bí mật? => mô hình bảo mật
11/10/2014 Hệ thống chứng thực số 6
Mô hình khóa công khai
• Mô hình bảo mật• C = E(M, KU)
• M = D(C, KR)
• Mô hình chứng thực• C = E(M, KR)
• M = D(C, KU)
• KR = f(KU)• Yêu cầu: bất khả thi để tính KR = f(KU)
11/10/2014 Hệ thống chứng thực số 7
Từ bài toán N = f(p,q) = p*q đến bài toáncho N tìm lại p, q (1/2)
• Bài toán thuận• p, q là 2 số nguyên tố
• N = p*q
• p = 2, q = 5 => N = 10
• Bài toán nghịch• N = 21 => (p; q) = {(3; 7), (7; 3)}
• N rất lớn ?
11/10/2014 Hệ thống chứng thực số 8
Từ bài toán N = f(p,q) = p*q đến bài toáncho N tìm lại p, q (2/2)
11/10/2014 Hệ thống chứng thực số 9
RSA Số bit của N Số chữ số của N Tiền thưởng Năm phá mã
RSA-100 330 100 $1,000 1991
RSA-576 576 174 $10,000 2003
RSA-640 640 193 $20,000 2005
RSA-704 704 212 $30,000 2012
RSA-768 768 232 $50,000 2009
RSA-896 896 270 $75,000 ????
RSA-1024 1024 309 $100,000 ????
RSA-1536 1536 463 $150,000 ????
RSA-2048 2048 617 $200,000 ????
Thuật toán RSA (1/2)
1. Chọn 2 số nguyên tố p, q và tính N = p*q, thỏa M < N
2. Tính n = (p-1)(q-1)
3. Chọn e thỏa “e và n là nguyên tố cùng nhau”
4. Tìm d thỏa e*d ≡ 1 mod n
5. KU = (e, N); KR = (d, N)
11/10/2014 Hệ thống chứng thực số 10
Thuật toán RSA (2/2)
6. Mã hóa
Mô hình bảo mật: C = E(M, KU) = Me mod N
Mô hình chứng thực: C = E(M, KU) = Md mod N
7. Giải mã
Mô hình bảo mật: M = D(C, KR) = Cd mod N
Mô hình chứng thực: M = D(C, KR) = Ce mod N
11/10/2014 Hệ thống chứng thực số 11
Ví dụ (thực hiện trên lớp)
• Yêu cầu mã hóa theo giải thuật 6 bit – RSA
• M = 15
11/10/2014 Hệ thống chứng thực số 12