Sơ đồ ký RSA
Trang 1AN TOÀN VÀ BẢO MẬT THÔNG TIN
ĐỀ TÀI:
Sơ đồ ký RSA
Nhóm thực hiện:
Vũ Lan Hương
Đàm Thu Phương
Lớp CT702.
Trang 2AN TOÀN VÀ BẢO MẬT THÔNG TIN
1 Định nghĩa sơ đồ ký RSA
Sơ đồ chữ ký RSA được cho bởi bộ 5: ς(P,A,K,S,V).Trong đó:
•P là một tập hữu hạn các văn bản có thể có
•A là một tập chữ ký có thể có
P = A = Zn với n là tích của 2 số nguyên lớn p và q, (n = p.q)
•K là tập các cặp khoá K = (K1, K2)
K1 = a là khoá bí mật dành cho việc ký
K2 =(n,b) là khoá công khai dùng cho việc kiểm thử chữ ký Với a , b ∈ Z và thoả mãn : a.b ≡ 1(mod∅(n))
Trang 3AN TOÀN VÀ BẢO MẬT THÔNG TIN
•S là tập hữu hạn các hàm ký, trong S có một thuật toán ký :
sigk1:P → A với sigk1(x) = xa mod n
•V là tập hữu hạn các hàm kiểm thử, trong S có mộtthuật toán kiểm thử:
verk2:P × A với verk2(x,y) = {đúng, sai}
verk2(x,y) = đúng ⇔ x ≡ yb (mod n) (x ∈ P, ∀ y ∈ A)
•Định nghĩa trên là hợp thức tức là ∀x ∈ P và mọi chữ ký y ∈ A,
ta có:
verk2(x,y) = đúng ⇔ y = sigk1(x)
1 Định nghĩa sơ đồ ký RSA
Trang 4AN TOÀN VÀ BẢO MẬT THÔNG TIN
2.Xây dựng chương trình chữ ký số.
IntPut: 2 số nguyên tố p,q, thông báo x OutPut: Chữ kí số y=xa(mod n)
Kiểm thử chữ kí x=yb(mod n)
Chương trình chạy
Mã nguồn
Trang 5AN TOÀN VÀ BẢO MẬT THÔNG TIN
3.Ký và kiểm thử.
Mỗi chủ thể sở hữu một bộ khoá K(K1,K2) Trong đó:
•Khoá K1 được giữ bí mật để thực hiện chữ ký trên các thông báo mà mình muốn gửi đi
•Khoá K2 được công khai để mọi người có thể kiểm thử chữ ký của mình
•Việc bảo đảm tính bí mật cho việc ký thể hiện ở chỗ: Khó có thể tính được hàm y = sigk1(x) nếu không biết K1 Điều này cũng đảm bảo chống giả mạo chữ ký
Trang 6AN TOÀN VÀ BẢO MẬT THÔNG TIN
3.Ký và kiểm thử.
•Giả sử có 2 hệ mật mã: hệ mật mã khoá công khai (S1) và
hệ xác nhận bằng chữ ký (S2)
•Giả sử bên nhận có bộ khoá mật mã Ks(K1s,K2s) trong hệ S1 Bên gửi có bộ khoá chữ ký K(K1,K2) trong hệ S2
•Bên nhận có thể nhận được một văn bản từ bên gửi vừa có
tính bảo mật,vừa có chữ ký để xác nhận thông báo đó của đúng bên gửi
Trang 7AN TOÀN VÀ BẢO MẬT THÔNG TIN
Để có kết quả trên:
• Bên gửi ký trên văn bản (bản rõ) nhưng thay vì gửi bản rõ cùng chữ ký cho bên nhận, bên gửi sẽ gửi đi bản mật mã của văn bản đó (được lập theo khoá công khai của bên nhận)
• Bên nhận sẽ dùng thuật toán giải mã của mình để thu được bản rõ và thuật toán ký của bên gửi Sau đó bên nhận sẽ phải dùng thuât toán kiểm thử chữ ký công khai của bên gửi để xác nhận chữ ký đúng là của bên đối tác
3.Ký và kiểm thử.