Python解决RSA加密
2024-08-31 14:18:43
最近爬个网站需要用发现密码是通过RSA加密的,因此找网上python加密例子,发现都没有一个比较完整的demo
so,自己写一个吧~
首先,安装相应的库:
1. pyCrypto : pip install pyCrypto
2.pycryptodome: pip install pycryptodome
ps:安装的pyCrypto是会自动安装Crypto的,然后你的C是小写的,手动改成大写~
然后就没啥好讲的了,贴上代码:(注意事项在底下说)
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5 as Cipher_pkcsl_v1_5
import base64 msg = 'm123456'
public_key = '''-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2GdFVfnjmqWNfN3m2Hml4pMcm
o66ltA2NHiG0DWuEs2XWVaNL8dAc6/Z/qA2nBXfKg/W/nEzJr6bbSm3oxlGm+AOA
Ennra+YPnS1ocoMbXwM1JUwjH5GbO93xfSDBGvOUE7c30zVkRkasN0vzG0WnoSTR
ErSrz0laLtVq1a980wIDAQAB
-----END PUBLIC KEY-----
'''
a = bytes(msg, encoding="utf8") rsakey = RSA.importKey(public_key)
cipher = Cipher_pkcsl_v1_5.new(rsakey)
cipher_text = base64.b64encode(cipher.encrypt(a))
print(cipher_text) 注意事项:1. pulic_key格式一定不能错,必须!!!一定!!!一定要按照上边那个格式,换行也不行!!!
2. 要加密的明文必须得转为字节类型哇。
最新文章
- Percona XtraBackup User Manual 阅读笔记
- HDU 5973 Game of Taking Stones 威佐夫博弈+大数
- Oracle 生成随机密码
- poj 2987 最大闭合子图
- iOS开发——毛玻璃透明
- PAT乙级真题1005. 继续(3n+1)猜想 (25)(解题)
- 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名 .
- 用C++进行函数式编程
- 03-树1. List Leaves (25)
- 数据结构-B树
- 弹出框插件layer使用
- Android Multimedia框架总结(二十四)MediaMuxer实现手机屏幕录制成gif图
- 利用MAT玩转JVM内存分析(一)
- IP保留地址
- (转)Word插入图片显示不全怎么办
- PC滚动条样式
- 获取CPU序列号、网卡MAC地址、硬盘序列号
- Linux-(type,vim)
- Spring: 读取 .properties 文件地址,json转java对象,el使用java类方法相关 (十三)
- 写高并发程序时慎用strncpy和sprintf