python 和C# DES加密 小记

业务处理过程中因为不同的服务编写的语言不同,对应的加密算法算是比较I头疼的!
以下仅作为笔记记录。

C#的DES加密:


image.png

对应的python版本为:

from pyDes import des, CBC, PAD_PKCS5
import binascii

# 秘钥
KEY = 'xxxxxxxxxxx'
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)
    en = k.encrypt(s, padmode=PAD_PKCS5)
    return binascii.b2a_hex(en)


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


print(des_encrypt('xxxxxxxxxxx))

你可能感兴趣的:(python 和C# DES加密 小记)