当前位置:脚本大全 > > 正文

python怎么给rsa加密(Python生成rsa密钥对操作示例)

时间:2021-10-15 00:48:31类别:脚本大全

python怎么给rsa加密

Python生成rsa密钥对操作示例

本文实例讲述了python生成rsa密钥对操作。分享给大家供大家参考,具体如下:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • # -*- coding: utf-8 -*-
  • import rsa
  • # 先生成一对密钥,然后保存.pem格式文件,当然也可以直接使用
  • (pubkey, privkey) = rsa.newkeys(1024)
  • pub = pubkey.save_pkcs1()
  • pubfile = open('public.pem','w+')
  • pubfile.write(pub)
  • pubfile.close()
  • pri = privkey.save_pkcs1()
  • prifile = open('private.pem','w+')
  • prifile.write(pri)
  • prifile.close()
  • # load公钥和密钥
  • message = 'lovesoo.org'
  • with open('public.pem') as publickfile:
  •   p = publickfile.read()
  •   pubkey = rsa.publickey.load_pkcs1(p)
  • with open('private.pem') as privatefile:
  •   p = privatefile.read()
  •   privkey = rsa.privatekey.load_pkcs1(p)
  • # 用公钥加密、再用私钥解密
  • crypto = rsa.encrypt(message, pubkey)
  • message = rsa.decrypt(crypto, privkey)
  • print message
  • # sign 用私钥签名认证、再用公钥验证签名
  • signature = rsa.sign(message, privkey, 'sha-1')
  • rsa.verify('lovesoo.org', signature, pubkey)
  • 对文件进行rsa加密解密

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • from rsa.bigfile import *
  • import rsa
  • with open('public.pem') as publickfile:
  •   p = publickfile.read()
  •   pubkey = rsa.publickey.load_pkcs1(p)
  • with open('private.pem') as privatefile:
  •   p = privatefile.read()
  •   privkey = rsa.privatekey.load_pkcs1(p)
  • with open('mysec.txt', 'rb') as infile, open('outputfile', 'wb') as outfile: #加密输出
  •   encrypt_bigfile(infile, outfile, pubkey)
  • with open('outputfile', 'rb') as infile2, open('result', 'wb') as outfile2: #解密输出
  •   decrypt_bigfile(infile2, outfile2, privkey)
  • ps:关于加密解密感兴趣的朋友还可以参考本站在线工具:

    md5在线加密工具:https://tool.zzvips.com/t/md5/

    希望本文所述对大家python程序设计有所帮助。

    原文链接:https://blog.csdn.net/xuezhangjun0121/article/details/84388840

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐