You are on page 1of 24

BẢO MẬT THÔNG TIN

BÁO CÁO ĐỒ ÁN
RSA CRYPTOSYSTEM
Nguyễn Văn Trường
Lê Đức Hoàng Anh
Nhóm thực hiện Nguyễn Nhật Lâm
Nguyễn Võ Minh Khang
Trần Công Danh
Giảng viên phụ trách
& Hướng dẫn ThS. N.V.Vịnh

1
BẢO MẬT THÔNG TIN

BÁO CÁO ĐỒ ÁN
RSA CRYPTOSYSTEM
Nguyễn Văn Trường
Lê Đức Hoàng Anh
Nhóm thực hiện Nguyễn Nhật Lâm
Nguyễn Võ Minh Khang
Trần Công Danh
Giảng viên phụ trách
& Hướng dẫn ThS. Nguyễn Văn Vịnh

2
RSA CRYPTOSYSTEM

NỘI DUNG TRÌNH BÀY

(1) Giới thiệu (3) Ứng dụng


về mã hóa của RSA
công khai

(2) Giới thiệu (4) Cài đặt


về RSA thuật toán

3
RSA CRYPTOSYSTEM

ĐẶT VẤN ĐỀ

• Vấn đề trao đổi khóa giữa người gửi và người


nhận: Cần phải có một kênh an toàn để trao đổi
khóa sao cho khóa phải được giữ bí mật chỉ có
người gửi và người nhận biết. Điều này tỏ ra
không hợp lý khi mà ngày nay, khối lượng
thông tin luân chuyển trên khắp thế giới là rất
lớn. Việc thiết lập một kênh an toàn như vậy sẽ
tốn kém về mặt chi phí và chậm trễ về mặt thời
gian.

• Tính bí mật của khóa: không có cơ sở quy


trách nhiệm nếu khóa bị tiết lộ.

4
RSA CRYPTOSYSTEM

Ý TƯỞNG

Vào năm 1976 Whitfield Diffie


và Martin Hellman đã tìm ra
một phương pháp mã hóa
khác mà có thể giải quyết
được hai vấn đề trên, đó là
mã hóa khóa công khai
(public key cryptography) hay
còn gọi là mã hóa bất đối
xứng (asymetric
cryptography).

5
GIỚI THIỆU MÃ HÓA CÔNG KHAI

MÃ HÓA CÔNG KHAI

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

6
GIỚI THIỆU MÃ HÓA CÔNG KHAI

MÔ TẢ

7
GIỚI THIỆU MÃ HÓA CÔNG KHAI

ĐẶC ĐIỂM

• Không thể tính toán để tìm


khóa giải mã (decryption key)
khi chỉ biết thuật toán và khóa
mã hóa (encryption)

• Một trong hai khóa có thể dùng


cho việc mã hóa (encryption),
khóa còn lại dung cho giải mã
(đối với thuật toán RSA)

8
GIỚI THIỆU MÃ HÓA CÔNG KHAI

AN NINH

• An toàn của hệ mã hóa khóa công khai dựa


trên độ khó của việc giải bài toán ngược.

• Tính bền của sự an toàn này còn


phụ thuộc vào phương pháp tấn
công của các thám mã.

9
GIỚI THIỆU MÃ HÓA CÔNG KHAI

ƯU ĐIỂM MÃ HÓA KHÓA CÔNG


KHAI
• Đơn giản trong việc lưu chuyển khóa: Chỉ cần đăng ký một khóa
công khai -> mọi người sẽ lấy khóa này để trao đổi thông tin với
người đăng ký -> không cần them kênh bí mật truyền khóa.

• Mỗi người chỉ cần một căp khóa


(PR,KU) là có thể trao đổi thông tin
với tất cả mọi người.

• Là tiền đề cho sự ra đời của chữ ký số


và các phương phá chứng thực điện tử.

10
GIỚI THIỆU MÃ HÓA CÔNG KHAI

HẠN CHẾ MÃ HÓA KHÓA CÔNG


KHAI
• Tốc độ xử lý
• Các giải thuật khóa công khai chủ yếu dung các phép
nhân chậm hơn nhiều so với các giải thuật đối xứng
• Không thích hợp cho mã hóa thông thường
• Thường dung trao đổi khóa bí mật đầu phiên truyền
tin
• Tính xác thực của khóa công khai
• Bất cứ ai cũng có thể tạo ra một khóa công khai
• Chừng nào việc giả mạo chưa bị phát hiện có thể
đọc được nội dung các thông báo gửi cho người
kia
• Cần đảm bảo những người đăng ký khóa là đáng
tin
11
GIỚI THIỆU VỀ RSA

RSA
• RSA là một thuật toán mật mã hóa khóa công khai.
• Đề xuất bởi RonRivest, Shamir và Adleman – MIT, 1977.
• 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).
• Là cơ chế mã hóa khối, plaintext và ciphertext là các số nguyên từ
0 đến n-1. Kích cỡ n thường là 1024 bits, hoặc 309 chữ số thập
phân (nghĩa là n <21024)

• Dựa trên hàm mũ (exponentiation) trong trường hữu hạn (finite field)

• Bảo mật cao vì chi phí phân tích thừa số của một số nguyên lớn là
rất lớn

12
GIỚI THIỆU VỀ RSA

PHẠM VI ỨNG DỤNG CỦA HỆ


MÃ HÓA RSA
• Mạng hành chính công, E-Business, E-Government
• Kinh doanh thương mại điện tử: Thanh toán điện tử,
bảo mật các dữ liệu điện tử, chứng thực chữ ký điện
tử…
• Đào tạo, thi cử từ xa, bảo mật dữ liệu tuyển sinh.
• Ngân hàng thương mại: Giao dịch, thanh toán qua
mạng.
• Xuất nhập cảnh
• …..

13
GIỚI THIỆU VỀ RSA

ĐỘ DÀI KHÓA
• Độ dài khóa được dung để đánh giá kích thước khóa có
thể sử dụng trong một hệ thống mã hóa (theo bit hoặc
byte).
NIST:
Cipher key-size Modulus size
 64 bits 512 bits.
80 bits 1024 bits
128 bits 3072 bits.
256 bits (AES) 15360 bits

• Modulus size càng lớn thì độ bảo mật càng cao

14
GIỚI THIỆU VỀ RSA

15
GIỚI THIỆU VỀ RSA

THUẬT TOÁN RSA PHÁT SINH KHÓA

16
GIỚI THIỆU VỀ RSA

THUẬT TOÁN RSA


THỰC HIỆN RSA

17
GIỚI THIỆU VỀ RSA

PHÁ MÃ HỆ MÃ HÓA RSA


Bốn hướng có thể để tấn công RSA:
• Vét cạn (Brute force attacks): Thử tất cả các khóa private
key có thể. Điều này phụ thuộc vào độ dài khóa. -> dùng
khóa đủ lớn
• Phân tích toán học (Mathematical attacks): Có vài hướng,
nhưng tất cả đều tập trung vào việc phân tích thừa số tích
của hai số nguyên tố.
• Phân tích thời gian (Timing attacks): Cách này tùy thuộc
vào thời chạy của thuật toán giải mã.
• Phân tích bản mã được chọn (Chosen ciphertext attacks):
khám phá các thuộc tính của thuật toán RSA. -> ngăn ngừa
bằng cách làm nhiễu

18
GIỚI THIỆU VỀ RSA

AN NINH CỦA HỆ MÃ HÓA RSA


• An ninh của RSA dựa trên độ khó của việc phân tích ra
thừa số nguyên tố các số nguyên tố lớn.
• Thời gian cần thiết để phân tích thừa số một số lớn tăng
theo hàm mũ với số bit của số đó
+ Mất nhiều năm khi số chữ số thập phân của n vượt
quá 100 (giả sử làm 1 phép tính nhị phân mất 1 s)
• Kích thước khóa lớn đảm bảo an ninh cho RSA
+ Từ 1024 bit trở lên
+ Gần đây nhất năm 1999 đã phá mã được 512 bit
(155 chữ số thập phân)

19
ỨNG DỤNG CỦA RSA

ỨNG DỤNG CỦA HỆ MÃ HÓA RSA

Bảo mật thông điệp


Sử dụng khóa công khai của bên nhận để mã hóa, khó
riêng của bên nhận để giải mã

20
ỨNG DỤNG CỦA RSA

ỨNG DỤNG CỦA HỆ MÃ HÓA RSA


Xác thực thông điệp
Dùng khóa cá nhân của bên gửi để mã hóa, khóa công
khai của bên gửi để giải mã

21
CÀI ĐẶT THUẬT TOÁN

22
RSA CRYPTOSYSTEM

TÀI LIỆU THAM KHẢO

1. Cryptography and Network Security – Principles and


Pratice – Sixth Edittion (William Stallings).
2. Volume 1/Fundamental Algorithms – The Art
Computer Programming – Third Edition.
3. https://vi.wikipedia.org/wiki/RSA.
4. http://actvn.tailieu.vn/tag/mat-ma-rsa.html.

23
Cảm ơn
Thầy và các bạn đã chú ý lắng nghe

2425

You might also like