Tạo khóa Bước này bao gồm quá trình tạo ra cặp khóa gồm khóa công khai (public key) và khóa bí mật (private key). Đầu tiên, chọn hai số nguyên tố lớn p và q. Tính toán modulus (n) bằng cách nhân p và q: n = p * q. Tính toán hàm Euler (phi) của n: phi = (p – 1) * (q – 1). Chọn một số nguyên e sao cho 1 < e < phi và e là số nguyên tố cùng nhau với phi. Tính toán khóa bí mật d bằng cách tìm nghịch đảo modular của e theo modulo phi: d = e^(-1) mod phi. Khóa công khai là cặp (n, e) và khóa bí mật là cặp (n, d).
Tạo chữ ký Người ký sử dụng khóa bí mật của mình để mã hóa thông điệp hoặc băm (hash) thông điệp. Quá trình mã hóa được thực hiện bằng cách áp dụng phép tính mũ modulo n: signature = plaintext^d mod n. Kết quả là chữ ký số RSA (signature).
Xác minh chữ ký Người nhận sử dụng khóa công khai của người ký để giải mã chữ ký số RSA (signature). Quá trình giải mã được thực hiện bằng cách áp dụng phép tính mũ modulo n: decrypted_signature = signature^e mod n. Kết quả là decrypted_signature (giải mã chữ ký).
So sánh chữ ký Người nhận so sánh decrypted_signature với thông điệp hoặc băm (hash) của thông điệp ban đầu. Nếu decrypted_signature trùng khớp với thông điệp hoặc băm (hash), chữ ký được xác minh là hợp lệ.
Hướng dẫn cài đặt
Các bạn cài đặt eclipse trước nhé để chạy java.
Dùng eclipse mở tệp vừa tải về.
Nhấn Run là chạy được rồi 😎
Các bước thao tác trên phần mềm các bạn xem video hướng dẫn chạy nhé.
Chúc bạn thành công 👍✨
Hình ảnh demo
Các bạn cài đặt eclipse trước nhé để chạy java.
Dùng eclipse mở tệp vừa tải về.
Nhấn Run là chạy được rồi 😎
Các bước thao tác trên phần mềm các bạn xem video hướng dẫn chạy nhé.