我找到了这段代码片段,这里是将RSA私钥序列化为加密的密文。我想知道此代码 serialization.BestAvailableEncryption(b'mypassword')
中的哪种算法将用于执行此操作。
from cryptography.hazmat.primitives import serialization
pem = private_key.private_bytes(
encoding=serialization.Encoding.PEM,
format=serialization.PrivateFormat.PKCS8,
encryption_algorithm=serialization.BestAvailableEncryption(b'mypassword')
)
最佳答案
这取决于 private_key
对象的实现。 BestAvailableEncryption
只是表示您没有特定的首选项,并且希望库为您选择 key 的加密类型。
在 OpenSSL 后端(似乎是唯一的)中,选择了最佳加密 here ,当前选择 'aes-256-cbc'
密码。这可能会在未来的版本中发生变化。将选择留给实现是拥有 BestAvailableEncryption
类的原因。
关于python - 在 python 加密库中,serialization.BestAvailableEncryption(b'mypassword') 使用哪种加密算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61166493/