Trong lược đồ chữ ký số RSA phiên bản giáo dục (không dùng padding), khóa công khai là cặp (n,e), khóa bí mật là d (với e⋅d≡1(modφ(n))). Người ký tạo chữ ký cho giá trị băm thông điệp m (biểu diễn dưới dạng số nguyên, 0≤m<n) bằng:
s=mdmodn
Người xác thực, chỉ biết khóa công khai (n,e), kiểm tra chữ ký s có hợp lệ với thông điệp m hay không bằng cách kiểm tra:
semodn=?mmodn
Cho bốn số nguyên n,e,m,s (đều không âm, n có thể rất lớn, tới hàng trăm chữ số), hãy xác định chữ ký có hợp lệ hay không.
Ví dụ: n=3233, e=17, m=65, s=588. Vì 58817mod3233=65 nên chữ ký hợp lệ, in ra VALID.
Một dòng chứa 4 số nguyên không âm, cách nhau bởi khoảng trắng: n e m s.
In VALID nếu semodn=mmodn, ngược lại in INVALID.
Ví dụ:
Đầu vào:
3233 17 65 588
Đầu ra:
VALID
Đầu vào:
3233 17 65 589
Đầu ra:
INVALID
Đang tải editor...