Tải bản đầy đủ (.doc) (13 trang)

Giới thiệu thuật toán tính ứng dụng để cài đặt hệ bảo mật RSA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (215.15 KB, 13 trang )

ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN
------------o0o-----------
ĐỀ TÀI:
GIỚI THIỆU MỘT THUẬT TOÁN TÍNH ỨNG
DỤNG ĐỂ CÀI ĐẶT HỆ BẢO MẬT RSA
NHÓM HỌC VIÊN :
- PHẠM QUỐC HƯNG
- LÊ VIỆT ĐỨC
LỚP CH K8 – KHOA CÔNG NGHỆ THÔNG TIN
GV HƯỚNG DẪN : NGUYỄN XUÂN HUY
THÁI NGUYÊN - NĂM 2010
ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN
------------o0o-----------
ĐỀ TÀI:
GIỚI THIỆU MỘT THUẬT TOÁN TÍNH ỨNG
DỤNG ĐỂ CÀI ĐẶT HỆ BẢO MẬT RSA
BÁO CÁO MÔN HỌC
GV HƯỚNG DẪN: NGUYỄN XUÂN HUY
THÁI NGUYÊN - NĂM 2009
MỤC LỤC
1. L ược sử RSA
1.1 Mã hóa dữ liệu và giải mã
1.2 Hệ bảo mật khóa công khai và hệ bảo mật RSA
2. Hoạt động của RSA
2.1 Mô tả sơ lược
2.2 Thuật toán RSA
2.2.1 Tạo khóa
2.2.2 Mã hóa
2.2.3 Giải mã


2.2.4 Ví dụ
2.2.5 Chuyển đổi văn bản rõ
2.2.6 Tạo chữ ký số cho văn bản
2.2.7 An ninh
3. Các vấn đề đặt ra trong thực tế
4.1 Quá trình tạo khóa
4.2 Tốc độ
4.3 Phân phối khóa
4.4 Tấn công dựa trên thời gian
4.5Tấn công lựa chọn thích nghi bản mã
1. LƯỢC SỬ VỀ RSA
1.1 Khái niệm mã hóa dữ liệu và giải mã
Mã hóa dữ liệu là tiến trình che dấu dữ liệu thật (plaintext), nghĩa là
chuyển dữ liệu thật thành dữ liệu không có ý nghĩa hoặc có ý nghĩa
khác xa với dữ liệu thật. Tiến trình đó gọi là mã hóa (encrytion). Kết
quả của tiến trình gọi là bản mã (ciphertext). Từ “encrytion” được tạo
ra từ “cryptography” (mật mã) xuất phát từ tiếng Hi Lạp cổ xưa
“Kryptos” (Che dấu) và từ “graphia” (viết). Tiến trình mã hóa dữ liệu
có thế được thực hiện bằng cách hoán vị dữ liệu thật hoặc thay thế
chúng bằng dữ liệu khác.
Tiến trình ngược với tiến trình mã hóa tức là chuyển từ bản mã thành
dữ liệu ban đầu gọi là giải mã.
Mã hóa và giải mã là hai thành phần của mật mã học.
1.2 Hệ bảo mật khóa công khai và hệ bảo mật RSA
Một hệ f=<M, C, K> trong đó:
M là một tập các không gian bản rõ. C là tập các không gian bản rõ.
K là tập hợp các không gian khóa.
Được gọi là một hệ mã mật nếu thỏa mãn các tính chất sau:
- Với mỗi kẻ K cho ta hai ánh xạ Ek: M → C (gọi là ánh xạ
mã hóa với khóa k) và ánh xạ Dk: C → M được gọi là ánh xạ giải mã.

- Hai cặp ánh xạ trên thỏa mãn tính chất Dk (Ek(M)) = M.
Người ta chia các hệ mã làm hai loại chính là hệ mã cổ điển và hệ mã hiện
đại (hay hệ mã khóa công khai). Các hệ mã cổ điển thực hiện việc bảo mật
đều dựa trên cơ sở là có một khóa dùng chung cho cả việc lập mã và việc giải
mã.
Các hệ mã hóa công khai được nghiên cứu và phát triển từ những năm
1970. Ý tưởng cơ bản của các hệ mã này là xây dựng những hệ thống sao cho
mỗi người tham gia vào quá trình truyền tin (người nhận tin và người gửi tin)
sẽ có hai khóa khác nhau: Một khóa công khai dùng để lập mã và một khóa
bảo mật dùng để giải mã. Khóa công khai được công khai hóa cho mội người,
còn khóa bảo mật của mỗi người thì được giữ bí mật.
Thông tin trước khi được gửi đi được mã hóa bằng khóa công khai của
người nhận. Chỉ có người nhận mới có khả năng giải mã bản mã bằng khóa bí
mật của mình, bởi vì thời gian giải mã sẽ tốn hàng tỉ năm nếu chỉ biết khóa
công khai. Độ bảo mật của các hệ mã công khai được bảo đảm bằng độ phức
tạp tính toán rất cao của thao tác tìm số nguyên tố lớn nhất và phân tích một
số nguyên tố lớn thành tích các thừa số. Ta giả sử trong hệ mã mật khóa công
khai, khóa mã hóa là E và khóa giải mã là D, thông điệp cần gửi là M. Để hệ
thống mã hóa hoạt động được, các điều kiện sau đây phải được thõa mãn:
- Dk(Ek(M)) = M đối với mọi thông điệp M
- Tất cả các cặp (D,E) là phân biệt.
- Việc phát sinh D từ E là khó ngang với việc đọc M.
- Cả D và E đều được tính dễ dàng.
Điều kiện đầu tiên là tính chất mật mã căn bản, hai điều kiện sau cung cấp
tính an toàn và điều kiện cuối cùng làm cho hệ thống trở nên dễ dùng.
Hệ bảo mật khóa công khai RSA được phát triển tại học viện kỹ thuật
Massachusetts (MIT) vào năm 1977, đặt theo tên các tác giả Ronal Rivest, Adi
Shamir và Leonard Adleman thỏa mãn được các điều kiện trên và đã được ứng
dụng nhiều vào việc mã hóa và bảo mật dữ liệu do tính năng vượt trội của nó
về mã hóa bảo mật dữ liệu so với nhiều thuật toán khác. Thực ra trước đó vài

năm, Clifford Cox, chuyên gia mã hoá người Anh, đã phát triển riêng một biến
thể RSA. Tuy nhiên, chính phủ Anh xem đây là vấn đề mật và đã không công
bố.
Thuật toán RSA gần như gặp chung số phận. Khi Rivest, Shamir và
Adleman công bố RSA trong ấn phẩm Scientific American tháng 9/1977, họ
tự nguyện cung cấp toàn bộ thông tin cho bất kỳ ai gửi đến một phong bì có
dán tem và ghi sẵn địa chỉ (người nhận). Cơ quan an ninh quốc gia Mỹ (NSA)
đã không đồng ý về việc phổ biến rộng rãi RSA và ra lệnh cấm - tuy nhiên
lệnh cấm này không có cơ sở pháp lý. Năm 1978, các tác giả đã công bố thuật
toán trong ấn phẩm nổi tiếng Communications of the Association for
Computing Machinery (ACM).
Trong môi trường Internet hiện nay, các thuật toán bảo mật như RSA và
các hậu duệ của nó có vai trò rất quan trọng. Các thuật toán này tạo nên cơ sở
cho thương mại điện tử an toàn bằng cách cho phép thực hiện các giao dịch
trực tuyến trong định dạng mã hoá.
2. HOẠT ĐỘNG CỦA RSA
2.1 Mô tả sơ lược:

×