您当前的位置:首页 > 计算机 > 编程开发 > Python

python --des加密

时间:08-15来源:作者:点击数:

本文介绍了使用Python的pyDes库进行DES加密和解密的方法。示例代码中定义了两个函数,des_encrypt用于加密,des_decrypt用于解密,通过指定的密钥和CBC模式进行加解密操作。示例字符串为'hello',加密后输出16进制表示的加密字符串,解密后返回原始字符串。

安装

pip instll pyDes

from pyDes import des, CBC, PAD_PKCS5
import binascii

KEY = 'dsj2020q'

def des_encrypt(s):
    """
    DES 加密
    :param s: 原始字符串
    :return: 加密后字符串,16进制
    """
    secret_key = KEY
    iv = secret_key
    k = des(secret_key, CBC, iv, pad=None, padmode=PAD_PKCS5) # 初始化一个des对象,参数是秘钥,加密方式,偏移, 填充方式
    en = k.encrypt(s, padmode=PAD_PKCS5)
    return binascii.b2a_hex(en).decode()

def des_descrypt(s):
    """
    DES 解密
    :param s: 加密后的字符串,16进制
    :return:  解密后的字符串
    """
    secret_key = KEY
    iv = secret_key
    k = des(secret_key, CBC, iv, pad=None, padmode=PAD_PKCS5)
    de = k.decrypt(binascii.a2b_hex(s), padmode=PAD_PKCS5)
    return de.decode()

s = 'hello'
enc = des_encrypt(s)
print(enc)
dec = des_descrypt(enc)
print(dec)
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐