forked from zhouxinfei/iaoAndroid
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path用药助手aes解密测试01.py
52 lines (42 loc) · 26.5 KB
/
用药助手aes解密测试01.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import base64
import json
from Crypto.Cipher import AES
# 用药助手
class Aes_ECB(object):
def __init__(self):
self.key = "ie7Tl[I(NNmGpSHlcXe2Z^sCqNNfgkBh"
self.MODE = AES.MODE_ECB
self.BS = AES.block_size
self.pad = lambda s: s + (self.BS - len(s) % self.BS) * chr(self.BS - len(s) % self.BS)
self.unpad = lambda s: s[0:-ord(s[-1])]
# str不是16的倍数那就补足为16的倍数
def add_to_16(value):
while len(value) % 16 != 0:
value += '\0'
return str.encode(value) # 返回bytes
# 加密
def AES_encrypt(self, text):
aes = AES.new(Aes_ECB.add_to_16(self.key), self.MODE) # 初始化加密器
encrypted_text = str(base64.encodebytes(aes.encrypt(Aes_ECB.add_to_16(self.pad(text)))),
encoding='utf-8')#.replace('\n', '') # 这个replace大家可以先不用,然后在调试出来的结果中看是否有'\n'换行符
# 执行加密并转码返回bytes
return encrypted_text
# 解密
def AES_decrypt(self, text):
# 初始化加密器
aes = AES.new(Aes_ECB.add_to_16(self.key), self.MODE)
# 优先逆向解密base64成bytes
base64_decrypted = base64.decodebytes(text.encode(encoding='utf-8'))
decrypted_text = self.unpad(aes.decrypt(base64_decrypted).decode('utf-8'))
decrypted_code = decrypted_text.rstrip('\0')
return decrypted_code
if __name__ == '__main__':
aes = Aes_ECB()
# data = "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"
data = "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"
deciphering = aes.AES_decrypt(data)
print(deciphering)
print("完成")
# print(aes.AES_encrypt(deciphering))