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

yipeiwu_com7年前Python基础

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 WXPY实现微信监控报警功能的代码

Python WXPY实现微信监控报警功能的代码

概述: 本文主要分享一下博主在学习wxpy 的过程中开发的一个小程序。博主在最近有一个监控报警的需求需要完成,然后刚好在学习wxpy 这个东西,因此很巧妙的将工作和学习联系在一起。 博文...

Python 16进制与中文相互转换的实现方法

Python中编码问题:u'\xe6\x97\xa0\xe5\x90\x8d' 类型的转为utf-8的解决办法 相信小伙伴们遇到过类似这样的问题,python2中各种头疼的转码,类似u'...

python django框架中使用FastDFS分布式文件系统的安装方法

python django框架中使用FastDFS分布式文件系统的安装方法

一、安装FastDFS 1-1:执行docker命令安装 # 安装tracker docker run -dti --network=host --name tracker -v /...

python实现复制大量文件功能

本文实例为大家分享了python实现复制大量文件的具体代码,供大家参考,具体内容如下 本来是去项目公司拷数据,结果去了发现有500G,靠系统的复制功能怕是得好几个小时,于是回来学一手操作...

通过shell+python实现企业微信预警

通过shell+python实现企业微信预警

一 注册企业微信 本文所有内容是基于2018年12月26日时的企业微信版本所做的教程。后面可能由于企业微信界面规则更改导致部分流程不一致。(大家看文章时请注意这一点) 注册企业微信必备条...