2025-10-27 14:32:30 -05:00

26 lines
468 B
Python

from Crypto.PublicKey import RSA
from Crypto.Signature import pss
from Crypto.Hash import SHA256
with open("alice_public.pem", 'rb') as file:
alice_pub = RSA.import_key(file.read())
with open('sigtext', 'rb') as file:
data = file.read()
m = data[:18]
sig = data[18:]
h = SHA256.new(m)
verifier = pss.new(alice_pub)
try:
verifier.verify(h, sig)
print("Signature is valid")
except (ValueError, TypeError) as e:
print("Signature is invalid")