from Crypto.PublicKey import RSA from Crypto.Signature import pss from Crypto.Hash import SHA256 key = RSA.generate(2048) # Generate / write alice pub key with open("alice_public.pem", "wb") as file: file.write(key.publickey().export_key()) m = input("Message: ").encode() h = SHA256.new(m) signer = pss.new(key) signature: bytes = signer.sign(h) print(f'Signature: {signature}') with open("sigtext", 'wb') as file: file.write(m + signature)