没有合适的资源?快使用搜索试试~ 我知道了~
python加密解密库cryptography使用openSSL生成的密匙加密解密
9 下载量 2 浏览量
2020-09-17
23:38:44
上传
评论
收藏 58KB PDF 举报
温馨提示


试读
5页
主要介绍了python加密解密库cryptography使用openSSL生成的密匙加密解密,需要的朋友可以参考下
资源推荐
资源详情
资源评论














python加密解密库加密解密库cryptography使用使用openSSL生成的密匙加生成的密匙加
密解密密解密
主要介绍了python加密解密库cryptography使用openSSL生成的密匙加密解密,需要的朋友可以参考下
密匙使用步骤一般是:
1. 私匙签名,发送签名后的数据, 公匙验证。
2.公匙加密,发送加密后的数据,私匙解密。
一般使用情景是通过 openssl 生成密匙后再操作的。Linux下生成密匙也很简单。
yum 安装安装 openssl
yum -y install openssl
生成三个密匙文件。
rsa_private_key.pem 私匙文件
rsa_private_key_pkcs8.pem pkcs8格式私匙,
rsa_public_key.pem 公匙
openssl genrsa -out rsa_private_key.pem 1024
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
导入私匙:导入私匙:
序列化密钥可以选择使用密码在磁盘上进行加密。在这个例子中,我们加载了一个未加密的密钥,因此我们没有提供密码。如
果密钥被加密,我们可以传递一个bytes对象作为 password参数。
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives import serialization
# 已有sar私匙, 导入
with open('Key.pem', 'rb') as key_file:
private_key = serialization.load_pem_private_key(
key_file.read(),
password=None,
backend=default_backend()
)
签名:
私钥可用于签署消息。这允许任何拥有公钥的人验证该消息是由拥有相应私钥的人创建的。RSA签名需要特定的散列函数,
并使用填充。以下是message使用RSA 进行签名的示例,带有安全散列函数和填充:
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import padding
# 已有sar私匙, 导入
with open('Key.pem', 'rb') as key_file:
private_key = serialization.load_pem_private_key(
key_file.read(),
password=None,
backend=default_backend()
)
message = b"aaaa, bbbb, cccc"
# 签名操作
signature = private_key.sign(
message,
padding.PSS(
mgf=padding.MGF1(hashes.SHA256()),
salt_length=padding.PSS.MAX_LENGTH
),
资源评论


weixin_38705252
- 粉丝: 6
- 资源: 931
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基础算法-python爬楼梯问题
- 某音Web端参数X-Bogus获取算法(逆向分析)
- 头歌答案 C语言程序设计实践 实验二 数据类型与基本操作(1)
- java高校实习生管理系统设计和实现springboot+vue毕业设计源码+数据库mysql代码.rar
- springboot+vue.js辽B代驾管理系统java毕业设计源码+数据库代码.rar
- OceanBase OBCA初级考试认证资料
- java可信捐赠管理系统的设计与开发springboot+vue毕业设计源码+数据库代码.rar
- vue基于Springboot的网上宠物店系统的设计与实现java毕业设计源码+数据库代码.rar
- OceanBase OBCA 部分题目
- vue基于springboot的七彩云南文化旅游网站的设计与实现java毕业设计源码代码+数据库.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
