博客 · 公平与反作弊知识库

公共随机信标能让在线扑克洗牌更公平吗?

公平与验证 发布于 2026 年 10 月 9 日 · Fair Poker 研究团队

公共随机信标是一种按固定时间发布随机值的公共服务。它的吸引力很直观:如果一手牌的洗牌过程用到了大家都能查到、事前又无法知道的外部随机数,平台就更难偷偷挑一个对自己有利的牌序。

但它不是魔法。公共随机信标只能回答“有没有一个公开的外部随机输入”,不能单独证明整副牌怎样被洗、谁在什么时候承诺了输入、服务器有没有看过不该看的信息。对在线扑克来说,它可以是好材料,但不是完整答案。

什么是公共随机信标

NIST 的随机信标项目把随机输出称为 pulse,并提供按时间查询的接口。官方说明里还提到,信标随机性可用于抽样、审计、数字抽签等需要公开随机性的场景:NIST Interoperable Randomness Beacons。

另一个常被讨论的项目是 drand。它把多个节点连接起来,定期产生公开可验证、难以预测、抗偏置的随机值:drand。

放到扑克里,公共信标可以像“公开天气记录”一样被所有人查到。它不属于某一个扑克平台,也不只给某一个玩家看。这样的外部输入,可以降低平台单独控制全部随机来源的空间。

它怎样帮助扑克洗牌

一个合理的做法不是“信标一出来就直接当牌序”,而是把它和其他输入一起放进洗牌流程。例如,牌局开始前平台先提交承诺,玩家也可以提供客户端随机种子;到约定时间后,再加入某个公开信标值,最后用清楚的算法生成牌序。

这样做有几个好处:

这和扑克洗牌里的密码学熵是一件事:随机性不只要“足够乱”,还要来自不容易被单方控制的来源。

它不能解决什么

公共信标最大的局限是:它是公开的。公开随机数适合用于“大家同时看到的外部输入”,但不适合当作任何秘密密钥。信标值一旦发布,所有人都知道它。

所以扑克系统还需要承诺机制。平台或玩家必须在信标发布前锁定自己的输入,否则有人可能等信标出来以后再挑输入,造成结果偏向自己。这个问题不能靠信标本身解决。

它也不能解决玩家合谋、机器人、实时辅助、账号被盗或聊天诱导。公平洗牌只保证牌是按承诺流程生成的,不保证每个玩家都诚实。为什么可证明公平仍然需要反作弊,可以看可证明公平为什么还需要反作弊。

公共随机信标像一枚公开盖章的时间戳。它能证明某个外部随机值在某时出现过,但不能替你证明整份合同的每一页都没有被换。

玩家应该看哪些证据

普通玩家不需要自己写代码,也能问几个关键问题。平台是否说明使用哪个信标、哪个时间点或轮次?是否在信标发布前给出承诺?是否公开从输入到牌序的算法?是否允许玩家按步骤重算?是否解释信标失效、延迟或网络不可用时怎么办?

如果平台只说“我们用了公共随机数”,但不给承诺、不公开算法、不给牌局后的输入记录,那仍然只是口号。真正有用的是一整条证据链:承诺在前,随机输入在中间,牌局结束后能重放验证。具体过程可以参考一步步验证洗牌。

最后一句

公共随机信标可以让在线扑克洗牌更透明,特别是在它被用作外部熵来源时。但它不是公平系统的全部。可信的扑克洗牌还需要承诺、可重放算法、清楚日志和诚实的安全边界说明。玩家真正要找的,不是一个听起来高级的随机来源,而是一套能被复查的完整流程。

对可验证公平的实现方式感兴趣?

Fair Poker 是研究德州扑克可验证公平的非营利开源项目:牌堆由参与者浏览器共同加密洗牌,没有发牌服务器,每一手都可独立验证。项目不对公众提供游戏服务;全部源码公开,欢迎下载后在自己的电脑上搭建研究。

下载源码自行研究

本站为非营利开源研究项目,不对公众提供游戏服务;演示仅限研究测试且只用无价值测试筹码,非真钱赌博。本文为教育性内容,不构成任何投注建议。

← 返回文章列表