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 03 Python
解决python删除文件的权限错误问题
Apr 24 Python
PyTorch学习笔记之回归实战
May 28 Python
对python3新增的byte类型详解
Dec 04 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
Python中Numpy ndarray的使用详解
May 24 Python
详解Python3 pandas.merge用法
Sep 05 Python
python 使用事件对象asyncio.Event来同步协程的操作
May 04 Python
Python 解析简单的XML数据
Jul 24 Python
容易被忽略的Python内置类型
Sep 03 Python
Python基于opencv的简单图像轮廓形状识别(全网最简单最少代码)
Jan 28 Python
使用numpy nonzero 找出非0元素
May 14 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+mysql事务rollback&commit示例
2010/02/08 PHP
php提示Warning:mysql_fetch_array() expects的解决方法
2014/12/16 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
2015/10/22 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
2017/05/29 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
2021/03/09 PHP
jQuery中的常用事件总结
2009/12/27 Javascript
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
js 动态修改css文件的方法
2014/08/05 Javascript
JavaScript实现将数组数据添加到Select下拉框的方法
2015/08/21 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
jQuery仿IOS弹出框插件
2017/02/18 Javascript
详解React Native顶|底部导航使用小技巧
2017/09/14 Javascript
js监听html页面的上下滚动事件方法
2018/09/11 Javascript
浅谈开发eslint规则
2018/10/01 Javascript
RxJS的入门指引和初步应用
2019/06/15 Javascript
[05:31]DOTA2上海特级锦标赛主赛事第三日RECAP
2016/03/05 DOTA
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
Python从MP3文件获取id3的方法
2015/06/15 Python
python数组过滤实现方法
2015/07/27 Python
python 读写中文json的实例详解
2017/10/29 Python
django 邮件发送模块smtp使用详解
2019/07/22 Python
django+echart数据动态显示的例子
2019/08/12 Python
详解python tkinter模块安装过程
2020/01/06 Python
python 录制系统声音的示例
2020/12/21 Python
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
New Balance法国官方网站:购买鞋子和服装
2019/09/01 全球购物
大学生毕业求职找工作的自我评价
2013/09/29 职场文书
优秀求职自荐信怎样写
2013/12/18 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
党在我心中演讲稿
2014/09/02 职场文书
人工作失职检讨书
2015/05/05 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android