我需要一个函数来生成一个新的RSA私钥,然后可以将其存储为字符串到Django模型字段中。
我正在使用cryptography==2.1.4。
我认为我已经通过以下方式实现了这一点:
我认为我已经通过以下方式实现了这一点:
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives.asymmetric import rsa
from cryptography.hazmat.backends import default_backend
KEY_SIZE = 2048
PUBLIC_EXP = 65537
private_key = rsa.generate_private_key(
public_exponent=PUBLIC_EXP,
key_size=KEY_SIZE,
backend=default_backend()
)
private_key_str = private_key.private_bytes(
encoding=serialization.Encoding.PEM,
format=serialization.PrivateFormat.TraditionalOpenSSL,
encryption_algorithm=serialization.NoEncryption()
).decode()
但显然我在这里缺少了一些东西或者一些步骤(虽然我应该知道为什么...)因为private_key_str
总是有相同的值。
这里有什么建议吗?
openssl asn1parse
,可能带有“dump”选项。 - Maarten Bodewes