RSA密码解密(RSA Cipher Decryption)
本章是前一章的延续,我们使用RSA算法逐步实现加密,并详细讨论它。
用于解密密文的函数如下 -def decrypt(ciphertext, priv_key):
cipher = PKCS1_OAEP.new(priv_key)
return cipher.decrypt(ciphertext)
对于公钥加密或非对称密钥加密,重要的是保持两个重要的功能,即Authentication和Authorization 。
授权 (Authorization)
授权是确认发件人是唯一传送邮件的人的过程。 以下代码解释了这一点 -def sign(message, priv_key, hashAlg="SHA-256"):
global hash
hash = hashAlg
signer = PKCS1_v1_5.new(priv_key)
if (hash == "SHA-512"):
digest = SHA512.new()
elif (hash == "SHA-384"):
digest = SHA384.new()
elif (hash == "SHA-256"):
digest = SHA256.new()
elif (hash == "SHA-1"):
digest = SHA.new()
else:
digest = MD5.new()
digest.update(message)