def encrypt(self, xml):
"""???????
@param text: ???????
@return: ????????
"""
# 16?????????????
xml = xml.encode('utf-8')
if PY2:
text = self.get_random_str() +\
struct.pack("I", socket.htonl(len(xml))) + xml + self.appid
else:
text = self.get_random_str().encode('utf-8') +\
struct.pack("I", socket.htonl(len(xml))) +\
xml + self.appid.encode('utf-8')
# ???????????????????
pkcs7 = PKCS7Encoder()
text = pkcs7.encode(text)
# ??
cryptor = AES.new(self.key, self.mode, self.key[:16])
try:
ciphertext = cryptor.encrypt(text)
# ??BASE64????????????
result = base64.b64encode(ciphertext).decode("utf8")
return Crypt_OK, result
except Exception:
return Crypt_EncryptAES_Error, None
评论列表
文章目录