python简单的加密解密

root1个月前python16

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'



相关文章

自定义logger 模块使调用打印日志的文件为调用文件而不是logger模块

更新logging 源码1248行f f f.f_back替换为f f f.f_back     f_2 f...

父进程退出后如何退出子进程

我们知道当子进程推出的时候,父进程会收到 SIGCHLD 信号,从而可以采取相应的操作。但是当父进程退出的时候,系统会把子进程的父进程更改为pid=0的 init 进程,而且子进程不会收到任何信号。而...

python 连接rabbitmq出现的诡异进程盗取消息

python 连接rabbitmq出现的诡异进程盗取消息

本文在py2下执行,由来:    因业务需要,python创建子线程后再次创建子进程(用于执行shell命令)。没错就是在子线程里面创建子进程。都知道py2的坑...

python 的configparser 读取配置文件遇到%特殊符号

test.ini 配置文件中有mysql的密码,且密码含有“%”这个特殊符号因为%在py是转义符的含义需要对该字符转义即修改  %  为 %%用%对%进行转义...

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

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

falsk &django +uwsgi 的配置文件

flask的uwsgi配置文件[uwsgi]pythonpath=/usr/bin/python3  #uwsgi采用的py版本,如果项目采用的py版本跟系统默认一直可以不用写base=/*...