Tải bản đầy đủ (.pptx) (26 trang)

Bài giảng an toàn và bảo mật thông tin chương 4 mã hóa công khai 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 (754.95 KB, 26 trang )

Chương 4
Mã hóa công khai RSA


Nôậi dung
 Mô hình mã hóa công khai
 Mã hóa công khai RSA
 Baảo mậật, chưứng thưậc, không thểả tưừ chôứi trong RSA
 Phương pháp trao đôải khóa


Đăật vậứn đểừ
 Mã hóa đôứi xưứng dù phát triểản tưừ côả điểản đểứn hiểận đaậi, vậẫn tôừn taậi 2 điểảm yểứu
sau:

 Vậứn đểừ trao đôải khóa giưẫa ngươừi gơải và ngươừi nhậận: cậừn có môật kểnh an toàn đểả trao
đôải khóa bí mậật.
Tính bí mậật cuảa khóa: không có cơ sơả đểả quy trách nhiểậm nểứu khóa biậ tiểứt lôậ.



 Năm 1976 Whitfield Diffie và Martin Hellman đưa ra giaải pháp giaải quyểứt vậứn đểừ
trển: mã hóa công khai


Ý tươản g
 Khóa mỗi người dùng được chia ra làm hai phần:

 Khoa chung: để mã hóa công khai với mọi người
 Khóa bí mật: để giải mã thì được giữ bí mật chỉ được biết bởi chủ nhân của nó.
 Nếu khóa bí mật ở người nhận thì bộ sinh khóa nằm ở người nhận.





 Các giai đoaận mã hóa công khai


Điận h nghĩa hểậ mã công khai


PP mã hóa RSA
 Là PP mã hóa công khai đươậc xậy dưậng bơải Ron Rivest, Adi Shamir và Len
Adleman taậi viểận MIT năm 1977.

 Là PP mã hóa theo khôứi, baản rõ M và baản mã C là các sôứ nguyển tưừ 0 đểứn 2i vơứi
I là sôứ bit cuảa khôứi (i thươừng là 1024).

 Sưả duận g hàm môật chiểừu : phận tích môật sôứ thành thưừa sôứ nguyển tôứ


Nguyển tăức thưậc hiểận RSA


Ví duậ RSA


Ví duậ mã RSA (tt)


Đôậ phưức taập tính toán trong RSA
 Phép mã hóa/giaải mã: dùng phép lũy thưừa modular. Đểả an toàn, choận N, e, M

lơứn.

 Dùng phép “bình phương liển tiểứp” tránh viểậc tính lũy thưừa lơứn, nậng cao tôức
đôậ tính toán.

 Phép tính sinh khóa: choận p và q đuả lơứn đểả viểậc thưả là không khaả thi


Ví duậ sinh khóa trong RSA


Đôậ an toàn cuảa RSA
1.
2.
3.

Vét caận khóa: thưả tậứt caả các khóa d có thểả đểả tìm baản rõ có nghĩa, N
lơứnbậứt khaả thi.
Phận tích N thành thưừa sôứ nguyển tôứ p.q : viểậc phận tích này là bậứt khaả thi vì
đậy là hàm môật chiểừu, là nguyển tăức hoaật đôậng cuảa RSA.
Đo thơừi gian: đậy là PP phá mã không dưậa vào toán hoậc mà dưậa vào “hiểậu
ưứng lểừ” sinh ra bơải quá trình giaải mã RSA


Tính baảo mậật , chưứn g thưậc , không tưừ chôứi
trong mã hóa công khai
 Giaả sưả Alice và Bob dùng mã hóa công khai đểả gơải dưẫ liểậu cho nhau, khóa (KRA ,
KUA), (KRB, KUB)

 Gơải dưẫ liểậu cho Bob: C=E(M, KUB)

Bob giaải mã: M= D(C, KRB)


 Đểả đaảm baảo tính chưứng thưậc, Alice không tưừ chôứi tránh nhiểậm gơải dưẫ
liểậu, Alice dùng khóa riểng đểả mã hóa
C=E(M, KRA)
M=D(C, KUA)


 Nểứu baản giaải mã có nghĩa, tưức Alice là ngươừi gơải dưẫ liểậu. Nểứu Trudy
can thiểập chiảnh sưảa thì baản giaải mã không có nghĩa, nểứu Trudy có
khóa KRA thì Alice không thểả thoái tránh nhiểậm làm lôậ khóa.

 Tuy nhiển mô hình CT không baảo mậật. Đểả giaải quyểứt, ngươừi ta đưa ra
mô hình:


Trao đôải khóa công khai
 Khi hai ngươừi dùng muôứn truyểừn dưẫ liểậu cho nhau băừng mã hóa công khai,
trươức tiển hoậ phaải trao đôải khóa vơứi nhau.

 Khóa có thểả truyểừn công khai trển đươừng truyểừn thươừng.
Vậứn đểừ: tính chưứn g thưậc cuảa khóa K U mô hình chưứn g chiả khóa công
khai –CA (certificate Authority )


Trao đôải khóa công khai dùng CA


Dùng khóa công khai trao đôải khóa bí mậật

 Do đăậc điểảm toán hoậc cuảa mã hóa công khai chậậm hơn so vơứi mã hóa đôứi xưứng
nển trong thưậc tểứ, đểả đaảm baảo bí mậật, ngươừi ta dùng mã hóa đôứi xưứng, mã
hóa công khai đươậc dùng đểả thiểứt lậập khóa bí mậật cho môẫi phiển trao đôải dưẫ
liểậu.


Dùng khóa công khai trao đôải khóa bí mậật (tt)

 A trao đôải khóa phiển Ks mã hóa băừng khóa riểng, sau đó mã hóa băừng khóa
công khai cuảa B

 Kểứt thưức phiển trao đôẫi DL, Ks đươậc huảy đểả đaảm baảo tính bí mậật.


Phương pháp trao đôải khóa Diffie – Hellman
 Dùng đểả thiểứt lậập khóa bí mậật giưẫa ngươừi gơải và ngươừi nhậận mà không cậừn
đểứn giaải pháp mã hóa công khai hay chuyểản chìa trển kểnh truyểừn an toàn.


Giaải pháp cuảa Diffie-Hellman
Alice

Bob

1. Choận sôứ ngto p và sôứ g nhoả hơn p và là primitive root cuảa p. hai sôứ p và g không cậừn giưẫ
bí mậật.
2. Choận và giưẫ bí mậật sôứ a

Choận và giưẫ bí mậật sôứ b


a
3. Tính A= g mod p

b
Tính B = g mod p

4. Alice và Bob trao đôải A và B vơứi nhau
ba
ab
5. Tính (g ) mod p = g
mod p

ab
ab
Tính (g ) mod p = g
mod p

Giá triậ này đươậc dùng làm khóa cho mã hóa đôứi xưứng


Nhậận xét

 thuậật toán Diffie-Hellman laậi thậứt baậi đôứi vơứi cách tậứn công keả-đưứng-giưẫa.
 Đểả an toàn, quá trình thiểứt lậập khóa Diffie-Hellman vậẫn phaải đươậc mã hóa băừng
môật khóa công khai.

 Nểứu đã đươậc baảo vểậ băừng khóa công khai, thì choận khóa đôứi xưứng bậứt kỳ, cậừn
gì choận khóa Diffie-Hellman???



Baảo vểậ khóa Diffie-Hellman băừn g khóa công
khai


×