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 Web开发框架Django
Jun 30 Python
python爬虫获取多页天涯帖子
Feb 23 Python
TensorFlow实现随机训练和批量训练的方法
Apr 28 Python
padas 生成excel 增加sheet表的实例
Dec 11 Python
python实现人工智能Ai抠图功能
Sep 05 Python
Python全栈之列表数据类型详解
Oct 01 Python
python获取引用对象的个数方式
Dec 20 Python
浅析NumPy 切片和索引
Sep 02 Python
Django缓存Cache使用详解
Nov 30 Python
Python基于爬虫实现全网搜索并下载音乐
Feb 14 Python
解决numpy和torch数据类型转化的问题
May 23 Python
Python学习之包与模块详解
Mar 19 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
PHP4(windows版本)中的COM函数
2006/10/09 PHP
PHP入门
2006/10/09 PHP
《PHP编程最快明白》第三讲:php数组
2010/11/01 PHP
php多文件上传实现代码
2014/02/20 PHP
php初始化对象和析构函数的简单实例
2014/03/11 PHP
PHP+iFrame实现页面无需刷新的异步文件上传
2014/09/16 PHP
PHP实现根据时间戳获取周几的方法
2016/02/26 PHP
PHP递归实现文件夹的复制、删除、查看大小操作示例
2017/08/11 PHP
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
2013/12/16 Javascript
php结合imgareaselect实现图片裁剪
2015/07/05 Javascript
JS如何实现文本框随文本的长度而增长
2015/07/30 Javascript
总结JavaScript中布尔操作符||与&&的使用技巧
2015/11/17 Javascript
使用Object.defineProperty实现简单的js双向绑定
2016/04/15 Javascript
JS实现的验证身份证及获取地区功能示例
2017/01/16 Javascript
react.js CMS 删除功能的实现方法
2017/04/17 Javascript
原生JS实现自定义滚动条效果
2020/10/27 Javascript
微信小程序用户自定义模版用法实例分析
2017/11/28 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
在Vue mounted方法中使用data变量详解
2019/11/05 Javascript
Vue动态加载图片在跨域时无法显示的问题及解决方法
2020/03/10 Javascript
[01:12:44]VG vs Mineski Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
[03:40]DOTA2抗疫特别篇《英雄年代》
2020/02/28 DOTA
Python实现统计英文单词个数及字符串分割代码
2015/05/28 Python
Django的URLconf中使用缺省视图参数的方法
2015/07/18 Python
python if not in 多条件判断代码
2016/09/21 Python
关于Python数据结构中字典的心得
2017/12/04 Python
Python eval函数介绍及用法
2020/11/09 Python
深入CSS3 动画效果的总结详解
2013/05/09 HTML / CSS
日本整理专家Marie Kondo的官方在线商店:KonMari
2020/06/29 全球购物
小学班主任寄语大全
2014/04/04 职场文书
机关领导干部作风整顿整改措施
2014/09/19 职场文书
2015年重阳节慰问信
2015/03/23 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
写给女朋友的保证书
2015/05/09 职场文书
2016初一新生军训心得体会
2016/01/11 职场文书
Ajax实现三级联动效果
2021/10/05 Javascript