posts

在线联机原型全集第 8 章导读:战舰与隐藏信息下的服务器保密

《在线联机原型全集》第 8 章的章节导读。本章用战舰(Battleship)与 UNO 简版验证信息不对称类游戏:服务端持有完整状态却必须对客户端隔离保密、动作的哈希签名与防重放、回合限时与超时处理、断线重连的快照恢复,以及基于哈希链的确定性回放与审计完整性。本页给出本章定位、核心验证目标、技术栈建议、文章清单与相邻章节关系,是「服务器权威」向「服务器保密」演进的关键一章。

前面几章里,服务器权威的含义是「由我判定」。第 8 章给它加了一个更苛刻的约束:由我判定,同时由我保密。战舰里每方布阵对敌人不可见,UNO 里手牌只对自己可见,服务器必须持有完整真相,却要把这份真相切片后分别下发,任何一个客户端的视角里都不能泄露对手的隐藏状态。这条约束把「权威性(Authority)」推进到「保密性(Confidentiality)」,也第一次让对局日志变成需要密码学保护的对象。

本章定位

核心验证目标

  1. 服务端保密状态:完整状态仅存于服务端,客户端只能看到自己视角的切片,任何接口都不得泄露对手布阵或手牌。
  2. 回合状态控制:轮流机制与回合计时,超时自动跳过或弃权,避免一方挂机卡死整局。
  3. 动作验证与防作弊:提交动作携带哈希签名,防篡改、防重放,服务端校验后才生效。
  4. 状态快照与断线重连:重连玩家通过 Snapshot 恢复到自己视角的正确状态,且不得借此窥探对手。
  5. 确定性回放:从动作日志重放完整对局过程,重放结果必须与当时逐帧一致。
  6. 哈希链审计:日志按哈希链串联,任何事后篡改都会破坏链条,为争议仲裁提供依据。
  7. 双模式复用:战舰与 UNO 共用同一套房间、保密与审计框架,验证框架的通用性。

技术栈建议

本章文章

文章标题核心内容
在线联机原型全集:第 8 章 战舰(Battleship) / UNO 简版完整 PRD:GameRoom、保密状态层、动作校验、Snapshot 恢复与哈希链审计,含战舰 10×10 布阵规则与 UNO 简版牌型判定

本章只有一篇 PRD;反作弊的信号体系在游戏服务端实战专题中有更完整的讨论。

与相邻章节的关系

相关专题

全部文章 Game Golang Saas Rust 游戏开发 客户端开发 GameDev Products Lua 写作