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')