Python生成rsa密钥对操作示例


Posted in Python onApril 26, 2019

本文实例讲述了Python生成rsa密钥对操作。分享给大家供大家参考,具体如下:

# -*- coding: utf-8 -*-
import rsa
# 先生成一对密钥,然后保存.pem格式文件,当然也可以直接使用
(pubkey, privkey) = rsa.newkeys(1024)
pub = pubkey.save_pkcs1()
pubfile = open('public.pem','w+')
pubfile.write(pub)
pubfile.close()
pri = privkey.save_pkcs1()
prifile = open('private.pem','w+')
prifile.write(pri)
prifile.close()
# load公钥和密钥
message = 'lovesoo.org'
with open('public.pem') as publickfile:
  p = publickfile.read()
  pubkey = rsa.PublicKey.load_pkcs1(p)
with open('private.pem') as privatefile:
  p = privatefile.read()
  privkey = rsa.PrivateKey.load_pkcs1(p)
# 用公钥加密、再用私钥解密
crypto = rsa.encrypt(message, pubkey)
message = rsa.decrypt(crypto, privkey)
print message
# sign 用私钥签名认证、再用公钥验证签名
signature = rsa.sign(message, privkey, 'SHA-1')
rsa.verify('lovesoo.org', signature, pubkey)

对文件进行RSA加密解密

from rsa.bigfile import *
import rsa
with open('public.pem') as publickfile:
  p = publickfile.read()
  pubkey = rsa.PublicKey.load_pkcs1(p)
with open('private.pem') as privatefile:
  p = privatefile.read()
  privkey = rsa.PrivateKey.load_pkcs1(p)
with open('mysec.txt', 'rb') as infile, open('outputfile', 'wb') as outfile: #加密输出
  encrypt_bigfile(infile, outfile, pubkey)
with open('outputfile', 'rb') as infile2, open('result', 'wb') as outfile2: #解密输出
  decrypt_bigfile(infile2, outfile2, privkey)
Python 相关文章推荐
压缩包密码破解示例分享(类似典破解)
Jan 17 Python
python循环监控远程端口的方法
Mar 14 Python
Python实现简单多线程任务队列
Feb 27 Python
Python实现的线性回归算法示例【附csv文件下载】
Dec 29 Python
手把手教你使用Python创建微信机器人
Apr 29 Python
python 多线程对post请求服务器测试并发的方法
Jun 13 Python
从列表或字典创建Pandas的DataFrame对象的方法
Jul 06 Python
pytorch 自定义参数不更新方式
Jan 06 Python
python 弧度与角度互转实例
Apr 15 Python
Python发送邮件封装实现过程详解
May 09 Python
详解Python自动化之文件自动化处理
Jun 21 Python
Matplotlib绘制条形图的方法你知道吗
Mar 21 Python
python利用Opencv实现人脸识别功能
Apr 25 #Python
Python OpenCV利用笔记本摄像头实现人脸检测
Aug 20 #Python
python使用KNN算法识别手写数字
Apr 25 #Python
Python3.5运算符操作实例详解
Apr 25 #Python
Python对象转换为json的方法步骤
Apr 25 #Python
Python+PyQt5实现美剧爬虫可视工具的方法
Apr 25 #Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
Apr 25 #Python
You might like
简化php模板页面中分页代码的解析
2009/02/06 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
2015/03/19 PHP
详解PHP中的PDO类
2015/07/06 PHP
PHP关键特性之命名空间实例详解
2017/05/06 PHP
javascript之dhDataGrid Ver2.0.0代码
2007/07/01 Javascript
分析 JavaScript 中令人困惑的变量赋值
2007/08/13 Javascript
自制的文件上传JS控件可支持IE、chrome、firefox etc
2014/04/18 Javascript
基于jQuery代码实现圆形菜单展开收缩效果
2017/02/13 Javascript
基于Vue2.0的分页组件
2017/03/16 Javascript
JS判断Android、iOS或浏览器的多种方法(四种方法)
2017/06/29 Javascript
js实现鼠标拖拽多选功能示例
2017/08/01 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
2017/09/11 Javascript
解决vue中虚拟dom,无法实时更新的问题
2018/09/15 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
JavaScript的级联函数用法简单示例【链式调用】
2019/03/26 Javascript
微信小程序缓存支持二次开发封装实现解析
2019/12/16 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
vue.js实现照片放大功能
2020/06/23 Javascript
[04:03]DOTA2英雄梦之声_第02期_风暴之灵
2014/06/30 DOTA
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python饼状图的绘制实例
2019/01/15 Python
PyCharm MySQL可视化Database配置过程图解
2020/06/09 Python
详解python中的lambda与sorted函数
2020/09/04 Python
python 装饰器的基本使用
2021/01/13 Python
Aosom西班牙:家具在线商店
2020/06/11 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
教学实习自我评价
2014/01/28 职场文书
2014年关于两会精神的心得体会
2014/03/17 职场文书
《四季》教学反思
2014/04/08 职场文书
竞选大学学委演讲稿
2014/09/13 职场文书
依法行政工作汇报
2014/10/28 职场文书
趣味运动会开幕词
2015/01/28 职场文书
2019安全宣传标语大全
2019/08/14 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书
python爬取某网站原图作为壁纸
2021/06/02 Python
Python 数据可视化工具 Pyecharts 安装及应用
2022/04/20 Python