Thành viên :
TRƯỜNG
TRƯỜNG
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
MÔN AN TOÀN BẢO MẬT THÔNG TIN
Đề Tài : Cài đặt thuật toán mã công khai RSA
∗
Giới thiệu về mã hóa công khai
∗
Giới thiệu về RSA
∗
Thuật Toán RSA
∗
Cài Đặt Thuật Toán
2/31
NỘI DUNG TRÌNH BÀY
NỘI DUNG TRÌNH BÀY
∗
Sử dụng : Public key và Private Key
∗
Public Key
∗
Dùng để mã hóa thông tin
∗
Khóa này được chia sẻ công khai
∗
Private key
∗
Dùng để giải mã thông tin
∗
Người nhận thông tin dùng key này để giải mã
∗
Khóa này được giữ bí mật
3/31
Giới thiệu về mã hóa công khai
3/31
4/31
Mô Tả
4/31
Bản rõ
Bản rõ
Mã Hóa
Public
Key
Bản Mã
Giải Mã
Private
Key
Bản rõ
Bản rõ
∗
RSA là một thuật toán mật mã hóa khóa công khai.
∗
Thuật toán RSA được Ron Rivest, Adi Shamir và Len
Adleman mô tả lần đầu tiên vào năm 1977 tại Học viện
Công nghệ Massachusetts (MIT).
∗
Thuật toán RSA có hai khóa: khóa công khai (hay khóa
công cộng) và khóa bí mật (hay khóa cá nhân).
5/31
Giới thiệu về RSA
1. Thuật toán tạo khoá
Bước 1: B (người nhận) tạo hai số nguyên tố lớn ngẫu nhiên p
và q
Bước 2: B tính n=p*q và phi(n) = (p-1)(q-1)
Bước 3: B chọn một số ngẫu nhiên e (0 < e < (n)) sao cho
ƯCLN(e, (n))=1
Bước 4: B tính d=e
-1
bằng cách dùng thuật toán Euclide
Bước 5: B công bố n và e trong danh bạ làm khoá công khai
(public key), còn d làm khoá bí mật (private key).
6/31
Thuật Toán RSA
7/31
Thuật Toán RSA
2. Thuật toán mã hoá và giải mã
+ Mã hoá:
Bước 1: A nhận khoá công khai của B.
Bước 2: A biểu diễn thông tin cần gửi thành số m (0 <=
m <= n-1)
Bước 3: Tính c= m
e
mod n
Bước 4: Gửi c cho B.
+ Giải mã: B giải mã bằng cách tính m=c
d
mod n
8/31
Cài Đặt Thuật Toán
Xin chân thành cảm ơn đã lắng nghe !
Xin chân thành cảm ơn đã lắng nghe !