实际上,完全阻止两个程序间的非法通信几乎是不可能的
查看原帖
实际上,完全阻止两个程序间的非法通信几乎是不可能的
365654
封禁用户楼主2025/5/13 00:11

本题存在传输 21 bit(比题目中的限制多一个 bit)就能 AC 的错误做法(见这篇题解的第二段),但以下作弊方式几乎不可能被侦察到:

  • Ailce 读取当前系统时间,不妨设为 23:46:49.833
  • Alice 按照合法方式传输前 20 bit。
  • Ailce 根据最后一个 bit 决定运行时间:如果是 0 则在下一个 XX.000 终止程序(23:46:50.000,167 ms),否则在下一个 XX.500 终止程序(23:46:50.500,667 ms)。
  • Bob 启动时读取当前系统时间,若在前半秒则认为最后一个 bit 是 0,否则认为最后一个 bit 是 1。
  • Bob 结合 Alice 以合法方式传来的 20 bit 给出答案。
  • 由于 Grader 在二者之间的运行事件显然远小于 500 ms,因此这么做的成功率极高。

综上所述,完全阻止两个程序间的非法通信几乎是不可能的,这需要做题人自觉。

2025/5/13 00:11
加载中...