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 相关文章推荐
python根据日期返回星期几的方法
Jul 06 Python
Python语法快速入门指南
Oct 12 Python
python中os模块详解
Oct 14 Python
Django入门使用示例
Dec 12 Python
解析Python中的eval()、exec()及其相关函数
Dec 20 Python
Python get获取页面cookie代码实例
Sep 12 Python
windows下numpy下载与安装图文教程
Apr 02 Python
python自定义时钟类、定时任务类
Feb 22 Python
python 画3维轨迹图并进行比较的实例
Dec 06 Python
Django自定义全局403、404、500错误页面的示例代码
Mar 08 Python
浅谈python处理json和redis hash的坑
Jul 16 Python
python中doctest库实例用法
Dec 31 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
基于递归实现的php树形菜单代码
2014/11/19 PHP
php常用字符串比较函数实例汇总
2014/11/24 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
joomla实现注册用户添加新字段的方法
2016/05/05 PHP
php二维数组按某个键值排序的实例讲解
2019/02/15 PHP
laravel在中间件内生成参数并且传递到控制器中的2种姿势
2019/10/15 PHP
javaScript 简单验证代码(用户名,密码,邮箱)
2009/09/28 Javascript
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
2010/09/19 Javascript
HTTP 304错误的详细讲解
2013/11/13 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
javascript字符串循环匹配实例分析
2015/07/17 Javascript
jquery插件uploadify实现带进度条的文件批量上传
2015/12/13 Javascript
JavaScript中子对象访问父对象的方式详解
2016/09/01 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
Vue组件化开发思考
2018/02/02 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
js实现轮播图的完整代码
2020/10/26 Javascript
Vue CLI3中使用compass normalize的方法
2019/05/30 Javascript
Vue.js递归组件实现组织架构树和选人功能案例分析
2019/07/03 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
[51:00]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python正则匹配抓取豆瓣电影链接和评论代码分享
2013/12/27 Python
在Python中处理字符串之isdigit()方法的使用
2015/05/18 Python
Python列表和元组的定义与使用操作示例
2017/07/26 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
儿童python练习实例
2018/05/27 Python
Python使用numpy模块创建数组操作示例
2018/06/20 Python
Python3随机漫步生成数据并绘制
2018/08/27 Python
python绘制直方图和密度图的实例
2019/07/08 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
2020/02/17 Python
建筑实习自我鉴定
2013/10/18 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
社区植树节活动总结
2015/02/06 职场文书
民事二审代理词
2015/05/25 职场文书
JavaWeb实现显示mysql数据库数据
2022/03/19 Java/Android