中级
实现设备上报数据XOR解密(模拟AES)
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
import pandas as pd, json
keys_csv = open_url(____).read()
keys = pd.read_csv(StringIO(____))
KEY = 0x5A
def xor_encrypt(____):
return bytes([b ^ KEY for b in data_str.encode()]).hex()
def xor_decrypt(____):
data = bytes.fromhex(____)
return bytes(____).decode(____)
payload = json.dumps(____)
encrypted = xor_encrypt(____)
decrypted = xor_decrypt(____)
print(____)
print(____)
print("____" + str(____))
tampered = encrypted[:____] + '____' + encrypted[____:]
decrypted_tampered = xor_decrypt(____)
try:
json.loads(____)
print(____)
except:
print(____)
示例
输入
solve()
期望输出
Original: {"id": "ESP-001", "ts": 1748736000, "t": 22.5, "h"...
Encrypted (hex, first 32): 2178333e78607a781f090a776a6a6b78...
Decrypted matches: True
Tampered: invalid JSON (detected)
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199