从文件加载RSA私钥,可以使用Python的cryptography
库。以下是一个示例代码:
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives.asymmetric import rsa
from cryptography.hazmat.backends import default_backend
# 从文件中加载私钥
with open("private_key.pem", "rb") as key_file:
private_key = serialization.load_pem_private_key(
key_file.read(),
password=None,
backend=default_backend()
)
# 使用私钥进行签名和验证
message = b"Hello, world!"
signature = private_key.sign(message, padding.PSS(
mgf=padding.MGF1(hashes.SHA256()),
salt_length=padding.PSS.MAX_LENGTH
))
public_key = private_key.public_key()
try:
public_key.verify(signature, message, padding.PSS(
mgf=padding.MGF1(hashes.SHA256()),
salt_length=padding.PSS.MAX_LENGTH
))
print("Signature is valid.")
except InvalidSignature:
print("Signature is not valid.")
在这个示例中,我们使用serialization.load_pem_private_key
函数从文件中加载私钥,并使用private_key.sign
函数对消息进行签名,然后使用public_key.verify
函数验证签名是否正确。
需要注意的是,这个示例中的代码仅供参考,实际应用中需要根据具体情况进行修改和调整。
领取专属 10元无门槛券
手把手带您无忧上云