中级
实现传感器上报防重放检测
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
import pandas as pd
devs_csv = open_url(____).read()
devs = pd.read_csv(StringIO(____))
NONCE_TTL = ____
seen_nonces = {}
def check_replay(____):
if abs(____) > NONCE_TTL:
return False, '____'
key = device_id + '____' + str(____)
if key in seen_nonces:
return False, '____'
seen_nonces[key] = server_ts
return True, '____'
now = ____
requests = [
(____),
(____),
(____),
(____),
]
print(____)
for did, ts, nonce, server_ts in requests:
ok, msg = check_replay(____)
print("____"+did+"____"+str(____)+"____"+nonce+"____"+str(____)+"____"+msg)
示例
输入
solve()
期望输出
Anti-replay check: SOIL-A01 ts=1748736000 nonce=nonce_abc123: ok=True ok SOIL-A01 ts=1748736000 nonce=nonce_abc123: ok=False replay_detected SOIL-B01 ts=1748735000 nonce=nonce_xyz789: ok=False timestamp_expired SOIL-B02 ts=1748736100 nonce=nonce_fresh01: ok=True ok
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199