前言使用python代码实现 DES/CBC/pkcs5padding加解密 DES加密模式加密模式:DES/CBC/pkcs5padding 加解密在线工具:http://tool./cryptdes 需知道加密的密码(8位):yoyo1234 IV偏移量(8位):12345678 输出编码格式(16进制):hex 在线加密结果 输入:yoyo 得到16进制:d50d7e20173f0e27
pyDes库先安装pyDes库Version: 2.0.1 > pip install pyDes python代码实现DES加解密 from pyDes import des, CBC, PAD_PKCS5 import binascii """ 加密模式:DES/CBC/pkcs5padding 需pip先安装依赖包 > pip install pyDes """
def des_encrypt(s, key='yoyo1234'): """ DES 加密 :param s: 原始字符串 :param key: 加密密钥8位 :return: 加密后字符串,16进制 """ secret_key = key iv = '12345678' # 偏移量8位 k = des(secret_key, CBC, iv, pad=None, padmode=PAD_PKCS5) en = k.encrypt(s, padmode=PAD_PKCS5) return binascii.b2a_hex(en)
def des_descrypt(s, key='yoyo1234'): """ DES 解密 :param s: 加密后的字符串,16进制 :return: 解密后的字符串 """ secret_key = key iv = '12345678' # 偏移量8位 k = des(secret_key, CBC, iv, pad=None, padmode=PAD_PKCS5) de = k.decrypt(binascii.a2b_hex(s), padmode=PAD_PKCS5) return de
if __name__ == '__main__': s = 'yoyo' encry_s = des_encrypt(s) print(encry_s) descry_s = des_descrypt(encry_s) print(descry_s) 运行结果 b'd50d7e20173f0e27' b'yoyo' 加解密AES/CBC/pkcs7padding加解密参考https://www.cnblogs.com/yoyoketang/p/11717282.html
2021年第 9 期《python接口web自动化+测试开发》课程,10月17号开学! 加量不加价(新增postman, 赠送selenium和python基础2个课)
本期上课时间:10月17号-1月9号,每周六、周日晚上20:30-22:30
|