import pyDes
import base64
# data = '+8618320815114'
def encrypt(data):
key = '12345678898' # 密钥,一般是8位或16位
# key = "kkk11111" # 加密key,加密方式ECB秘钥必须是八位字节
# mode = pyDes.ECB # 加密方式 默认是ECB,也可以不填写
# IV = "00000000" # 偏移量,加密方式不是ECB的时候加密key字段必须是16位字节,秘钥不够用0补充
k = pyDes.des(key[:-3], pad=None, padmode=pyDes.PAD_PKCS5) # 传入秘钥,加密方式
d = k.encrypt(data) # 加密数据
base = str(base64.b64encode(d), encoding="utf-8") # 指定输出格式为base64
print(base)
def decrypt_py(data, secretkey):
des_obj = pyDes.des(secretkey, secretkey, padmode=pyDes.PAD_PKCS5)
decodebs64data = base64.b64decode(data)
print( des_obj.decrypt(decodebs64data).decode('utf-8'))
if __name__ == '__main__':
encrypt('+8611320815114')
decrypt_py('cl4EO0IPr10V6CyWEtvp8w==','12345678')