python生成RSA签名
2021/6/1 1:21:34
本文主要是介绍python生成RSA签名,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
# -*- coding: utf-8 -*- # Auth :yuyu # pip install -i https://pypi.douban.com/simple/ pycryptodome from Crypto.Cipher import PKCS1_v1_5 from Crypto.PublicKey import RSA import base64 import os '''不分段''' def get_sgin(out_trade_no=None,type=None,price=None,pay_password=None,phone=None,public_data=None): if out_trade_no: msg = "out_trade_no={}&price={}&pay_password={}".format(out_trade_no, price, pay_password) else: msg = "type={}&info=2&phone={}&app_id=com.jiutongfuwu.wantcashier".format(type, phone) # 读取文件中的公钥 key = open(public_data).read() #文件的公钥 publickey = RSA.importKey(key) # 进行加密 pk = PKCS1_v1_5.new(publickey) encrypt_text = pk.encrypt(msg.encode()) # 加密通过base64进行编码 result = base64.b64encode(encrypt_text) result = str(result, encoding="utf-8") # byte类型转换为str return result # if __name__ == '__main__': # public_data ='public.pem' # res =get_sgin(type=1,public_data =public_data) # print(res) '''分段''' def join_sgin(data,public_data): # data 是参数 key =open(public_data).read() publickey =RSA.importKey(key) #分段 pk = PKCS1_v1_5.new(publickey) encrypt_text =[] for i in range(0,len(data),100): context = data[i,i+100] encrypt_text.append(pk.encrypt(context.encode())) cipher_text = b''.join(encrypt_text) #加密通过base64 result = base64.b64encode(cipher_text) result =str(result,encoding= 'utf-8') return result
这篇关于python生成RSA签名的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程