python下读取公私钥做加解密实例详解


Posted in Python onMarch 29, 2017

python下读取公私钥做加解密实例详解

在RSA有一种应用模式是公钥加密,私钥解密(另一种是私钥签名,公钥验签)。下面是Python下的应用举例。

假设我有一个公钥文件,rsa_pub.pem, 我要读取这个公钥并用它来加密。

from M2Crypto import RSA,BIO

  fp = file('rsa_pub.pem','rb');
  pub_key_str = fp.read();
  fp.close();

  mb = BIO.MemoryBuffer(pub_key_str);
  pub_key = RSA.load_pub_key_bio(mb);

  data = '12345678';
  en_data = pub_key.public_encrypt(data,RSA.pkcs1_padding);

  ...

私钥文件rsa_private.pem, 读取私钥并用来解密

from M2Crypto import RSA,BIO

  private_key_str = file('rsa_private.pem','rb').read();
  private_key = RSA.load_key_string(private_key_str);
  data = 'sdfdjslfjaskldfjdsklfjsd';
  de_data = private_key.private_decrypt(data,RSA.pkcs1_padding);

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Anaconda多环境多版本python配置操作方法
Sep 12 Python
Python实现的多线程同步与互斥锁功能示例
Nov 30 Python
利用python对Excel中的特定数据提取并写入新表的方法
Jun 14 Python
python实现自动发送报警监控邮件
Jun 21 Python
使用Python实现微信提醒备忘录功能
Dec 04 Python
浅谈python函数调用返回两个或多个变量的方法
Jan 23 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
Aug 06 Python
python分布式计算dispy的使用详解
Dec 22 Python
Python imutils 填充图片周边为黑色的实现
Jan 19 Python
pycharm激活码快速激活及使用步骤
Mar 12 Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
Jun 15 Python
浅谈优化Django ORM中的性能问题
Jul 09 Python
django开发之settings.py中变量的全局引用详解
Mar 29 #Python
深入理解Python3中的http.client模块
Mar 29 #Python
Python 中迭代器与生成器实例详解
Mar 29 #Python
Python利用Beautiful Soup模块搜索内容详解
Mar 29 #Python
windows系统下Python环境搭建教程
Mar 28 #Python
Python中Django 后台自定义表单控件
Mar 28 #Python
windows上安装Anaconda和python的教程详解
Mar 28 #Python
You might like
第十一节--重载
2006/11/16 PHP
PHP的几个常用数字判断函数代码
2012/04/24 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
兼容PHP和Java的des加密解密代码分享
2014/06/26 PHP
如何把php5.3版本升级到php5.4或者php5.5
2015/07/31 PHP
关于laravel 数据库迁移中integer类型是无法指定长度的问题
2019/10/09 PHP
一个多次搜索+多次传值的解决方案
2007/01/20 Javascript
IE浏览器打印的页眉页脚设置解决方法
2009/12/08 Javascript
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
在每个匹配元素的外部插入新元素的方法
2013/12/20 Javascript
js动态改变select选择变更option的index值示例
2014/07/10 Javascript
Js实现网页键盘控制翻页的方法
2014/10/30 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
canvas绘制表盘时钟
2017/01/23 Javascript
bootstrap weebox 支持ajax的模态弹出框
2017/02/23 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
微信小程序textarea层级过高(盖住其他元素)问题的解决办法
2019/03/04 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
vue中element 的upload组件发送请求给后端操作
2020/09/07 Javascript
[09:43]DOTA2每周TOP10 精彩击杀集锦vol.5
2014/06/25 DOTA
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
Python极简代码实现杨辉三角示例代码
2016/11/15 Python
利用Python爬取微博数据生成词云图片实例代码
2017/08/31 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
jupyter note 实现将数据保存为word
2020/04/14 Python
关于毕业的广播稿
2014/01/10 职场文书
联谊活动策划书
2014/01/26 职场文书
目标管理责任书
2014/04/15 职场文书
护士节策划方案
2014/05/19 职场文书
不服从公司安排检讨书
2014/09/24 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
导游词之蜀山胜景瓦屋山
2019/11/29 职场文书
Nginx域名转发使用场景代码实例
2021/03/31 Servers
python flask开发的简单基金查询工具
2021/06/02 Python