使http传输更加安全,c/s b/s架构的加密通信。

PySecureHTT的Python项目详细描述


通过使用RSA+AES让HTTP传输更加安全,即C/S架构的加密通信!(Make HTTP transmissions more secure via RSA+AES, encrypted communication for C/S architecture.)

Build StatusDocumentation StatuscodecovPyPIPyversionsImplementation996.ICU

使用概述(Overview)

安装(Installation):

# 正式版(Release)
$ pip install -U PySecureHTTP
# 开发版(Dev)
$ pip install -U git+git+https://github.com/cisco08/PythonWeb-SecureHTTP@master

示例代码(Examples):

  1. AES加密、解密

    fromSecureHTTPimportAESEncrypt,AESDecrypt# 加密后的密文ciphertext=AESEncrypt('ThisIsASecretKey','Hello World!')# 解密后的明文plaintext=AESDecrypt("ThisIsASecretKey",ciphertext)
  2. RSA加密、解密

    fromSecureHTTPimportRSAEncrypt,RSADecrypt,generate_rsa_keys# 生成密钥对(pubkey,privkey)=generate_rsa_keys(incall=True)# 加密后的密文ciphertext=RSAEncrypt(pubkey,'Hello World!')# 解密后的明文plaintext=RSADecrypt(privkey,ciphertext)
  3. C/S加解密示例:

    # 模拟C/S请求fromSecureHTTPimportEncryptedCommunicationClient,EncryptedCommunicationServer,generate_rsa_keyspost={u'a':1,u'c':3,u'b':2,u'data':["a",1,None]}resp={u'msg':None,u'code':0}# 生成密钥对(pubkey,privkey)=generate_rsa_keys(incall=True)# 初始化客户端类client=EncryptedCommunicationClient(pubkey)# 初始化服务端类server=EncryptedCommunicationServer(privkey)# NO.1 客户端加密数据c1=client.clientEncrypt(post)# NO.2 服务端解密数据s1=server.serverDecrypt(c1)# NO.3 服务端返回加密数据s2=server.serverEncrypt(resp)# NO.4 客户端获取返回数据并解密c2=client.clientDecrypt(s2)# 以上四个步骤即完成一次请求/响应

说在后面(END)

欢迎提交PR、共同开发!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java什么会导致程序在它似乎拥有的监视器上被阻止?   java Android studio设置视图的背景色   java我可以保存一个文本文件而不给用户修改它的能力吗?   pdfbox PDFBOX2。0:java堆堆栈错误   java是维护和操作AllowList的有效方法   JAVAsql。SQLException:找不到适合jdbc的驱动程序:mysql://localhost:3306/asd性爱   如何使用java。lang.NullPointerException:void 安卓。支持v7。应用程序。ActionBar。setElevation(float)“”在空对象引用上'   java调试空指针异常   java正则表达式,以按令牌的特定匹配项拆分,同时忽略其他匹配项   java为JPanel设置边框上的笔划   并发@Schedule方法的java行为   如何在Java中使用泛型与语言运算符和泛型类扩展数   java Rhino Javascript如何为异常堆栈跟踪标记字符串源   运行可执行jar时发生java错误,无法找到或加载主类