Encode all str keys passed to Crypto #332
parent
130a974629
commit
f2499d24f4
|
@ -113,7 +113,7 @@ class JSONHandler(tornado.web.RequestHandler):
|
|||
print(self.request.headers)
|
||||
if payload:
|
||||
try:
|
||||
decrypted_payload = unpad(AES.new(options.secKey, AES.MODE_ECB).decrypt(binascii.unhexlify(payload))).decode()
|
||||
decrypted_payload = unpad(AES.new(options.secKey.encode(), AES.MODE_ECB).decrypt(binascii.unhexlify(payload))).decode()
|
||||
if decrypted_payload[0] != "{":
|
||||
raise ValueError("payload is not JSON")
|
||||
print("payload", decrypted_payload)
|
||||
|
|
|
@ -21,8 +21,8 @@ iot:
|
|||
from Crypto.Cipher import AES
|
||||
pad = lambda s: s + (16 - len(s) % 16) * chr(16 - len(s) % 16)
|
||||
unpad = lambda s: s[:-ord(s[len(s) - 1:])]
|
||||
encrypt = lambda msg, key: AES.new(key, AES.MODE_ECB).encrypt(pad(msg))
|
||||
decrypt = lambda msg, key: unpad(AES.new(key, AES.MODE_ECB).decrypt(msg))
|
||||
encrypt = lambda msg, key: AES.new(key.encode(), AES.MODE_ECB).encrypt(pad(msg))
|
||||
decrypt = lambda msg, key: unpad(AES.new(key.encode(), AES.MODE_ECB).decrypt(msg))
|
||||
|
||||
def iot_dec(message, local_key):
|
||||
message_clear = decrypt(base64.b64decode(message[19:]), local_key)
|
||||
|
|
Loading…
Reference in New Issue