我正在尝试使用非对称加密来加密我的数据。我选择了 MD5 作为算法。PS:我知道 MD5 碰撞。
我正在关注这个博客来加密和解密我的数据。这使用 SHA256。我也可以使用 SHA1、SHA512 成功运行代码,但不能使用 MD5。
每当,我将算法更改为 MD5,它说
cryptography.exceptions.UnsupportedAlgorithm: This combination of padding and hash algorithm is not supported by this backend.
应该使用哪个填充来使用 MD5 加密数据?
我的代码:-
# ########## Encrypting and decrypting ##########
message = b'encrypt me!'
encrypted = public_key.encrypt(
message,
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.MD5()),
algorithm=hashes.MD5(),
label=None
)
)
original_message = private_key.decrypt(
encrypted,
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.MD5()),
algorithm=hashes.MD5(),
label=None
)
)