当前位置:首页 > python > 正文内容

python简单的加密解密

root5年前 (2021-02-04)python1462

rsa 是非对称加密

公钥加密,私钥解密

pip install rsa

import rsa
from binascii import b2a_hex, a2b_hex

class rsacrypt():
    def __init__(self):
        ''''''

    def encrypt(self, text):
        #加密文本
        self.ciphertext = rsa.encrypt(text.encode(),self.pubkey)
        return b2a_hex(self.ciphertext)

    def decrypt(self, text):
        #解密文本
        decrypt_text = rsa.decrypt(a2b_hex(text),self.prikey)
        return decrypt_text

    def create_key(self):
        #获取一对秘钥
        pubkey, prikey = rsa.newkeys(256)
        pub = pubkey.save_pkcs1()
        pri = prikey.save_pkcs1()
        return (pub,pri)

    def load_pub_key(self,pub):
        #导入公钥,为加密准备
        self.pubkey = rsa.PublicKey.load_pkcs1(pub)

    def load_pri_key(self,pri):
        #导入私钥,为解密准备
        self.prikey = rsa.PrivateKey.load_pkcs1(pri)

if __name__ == '__main__':
    my_rsacrypt = rsacrypt()
    pub,pri=my_rsacrypt.create_key()
    print(pub,pri)
    my_rsacrypt.load_pub_key(pub)
    my_rsacrypt.load_pri_key(pri)
    a = my_rsacrypt.encrypt("123")
    print(a)
    b = my_rsacrypt.decrypt(a)
    print(b)

b'5e1ed0b7583e9cdb3f9161fd6e045c29458f703cabb91a848a84e95cab35a113'

b'123'



扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://www.zhiqiu.top/?id=77

分享给朋友:

相关文章

Python eventlet 模块,Timeout() 控制子程序运行时间

pip install  eventlet #安装依赖包# -*- coding:utf-8 -*- import eventlet import time e...

selenium控制webdriver  设置请求头。只能设置简单的。自定义和固定的格式无法修改成功

selenium控制webdriver 设置请求头。只能设置简单的。自定义和固定的格式无法修改成功

time selenium webdriver options webdriver.() options.() options.( options.() browser webdriver....

python3.5.2版本不支持的语法格式

在使用geoip2的时候,运行被告知包中语法错误查看详情发现在python 3.5中不支持注释var类型如下语法 _buffer: Union[bytes, FileBuffer, "mma...

获取大文件的MD5值

(, )os.path.(, )logger.()         os.path.(, )logger.()  &...

flask 服务添加ssl 证书

flask 服务添加ssl 证书

1、利用openssl生成自用的ssl证书利用openssl 生成证书openssl genrsa -des3 -out server.key 2048不要密码:再执行 一下:openssl rsa -in server.key -out...

python跟pip不是同一个版本的坑

python执行默认是Python2.7但是pip默认确实pip3的用pip install 安装包只会安装到python3环境里面指回pip vim /usr/local/bin/pip把 第一行的#!/usr/bin...