0% found this document useful (0 votes)
11 views2 pages

Aalgorithm Rsa

ATTT

Uploaded by

Như Linh Phạm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views2 pages

Aalgorithm Rsa

ATTT

Uploaded by

Như Linh Phạm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

-Giải thuật mã hoá RSA

Thuật toán RSA (Rivest-Shamir-Adleman) là một thuật toán mã hóa bất đối xứng, sử
dụng hai khóa khác nhau: một khóa công khai (public key) để mã hóa dữ liệu và một
khóa riêng tư (private key) để giải mã dữ liệu. Nó dựa trên độ khó của việc phân tích một
số nguyên lớn thành các thừa số nguyên tố, một bài toán rất khó giải khi kích thước của
các số nguyên lớn.
Bước 1: Khởi tạo khoá
1.1: Chọn hai số nguyên tố lớn p và q
1.2: Tính n=p*q ( n sẽ được dùng làm module trong cả khoá công khai và khoá bí mật, n
có độ dài bit bằng tổng độ dài bit của p và q)
1.3: Tính hàm Euler ϕ(n)= (p-1)*(q-1) ( Hàm Euler đại diện cho số lượng các số nhỏ hơn
n mà nguyên tố cùng nhau với n )
1.4: Tính giá trị d, là nghịch đảo của e modulo ϕ(n), sao cho d*e=1 mod ϕ(n) . d là thành
phần của khoá bí mật
 Khoá công khai (n,e)
 Khoá bí mật (n,d)
Bước 2: Mã hoá
Để mã hoá thông điệp m( thường là một số nguyên hoặc chuỗi dữ liệu đã được chuyển
đổi thành số nguyên bằng khoá công khai (n,e))
2.1: Chuyển đổi thông điệp thành một số nguyên M sao cho 0 <= M <= n
2.2: Tính bản mã C= Me mod n
Bản mã C là kết quả của phép toán luỹ thừa môđun và sẽ được gửi đến người nhận
Bước 3: Gỉai mã
Để giải mã bản mã C và khôi phục thông điệp M, người nhận sử dụng khoá riêng tư (n,d)
bằng công thức : M= Cd mod n ( M là thông điệp ban đầu được gửi)
Ví du:
Bước 1: Sinh khoá
Chọn hai số nguyên tố p=3,q=7
Tính n= p*q= 3*7=21
Tính ϕ(n) = (p-1) *(q-1)= 2*6=12
Tìm e sao cho 0<e<12 và e,n,ϕ(n) là các số nguyên tố cùng nhau => e=5
Tìm d sao cho d.e=1 mod ϕ(n) => d.5 =1 mod 12 => d=17 ( d=5 không được vì trùng với
e)
Bước 2: Mã hoá
Giả sử muốn gửi mã M=2
Tính bản mã C= Me mod n = 25 mod 21=11
Gửi bản mã C=11 cho người nhận
Bước 3: Giải mã
Với bản mã C=11 ta có M= Cd mod n= 1117 mod 21=2
Vậy bản rõ m=2
-Tài liệu tham khảo 521306924-Cơ-Sở-an-Toan-Thong-Tin-Bai-Giảng-4.pdf

You might also like