def de_json(self, msg):
        aes = AEScharp()
        msg = bytes.fromhex(msg)
        msg = aes.de_ECB(msg, self.key)

        if self.DEBUG == 1:
            print("未處理前: ", msg)

        msg = msg[:msg.find('\x00')]  # 除掉\x00

        if msg[-1] != "}":  # 有些}會不見 處理回來
            msg += "}"

        if self.DEBUG == 1:
            print("處理後: ", msg)
        msg = eval(msg)
        return msg
Exemplo n.º 2
0
def c(msg):
    print("資料來源端:")
    print("密文: ", msg)
    print(type(msg))

    aes = AEScharp()
    key = Y
    print("現在端口的key", key.hex())
    # 將STR 換成 BIN
    msg = bytes.fromhex(msg)
    print("現在端口轉換完MSG(整串)", msg, "長度:", len(msg))
    msg = aes.de_ECB(msg, key)

    print("結果:")
    a = "{\"_target\":\"456\",\"_key\":\"123\"}"
    print(msg.find('\x00'), msg[:msg.find('\x00')])
    msg = msg[:msg.find('\x00')]
    msg = eval(msg)
    print(type(msg), msg)