在中本聪将一个未完成的扑克界面埋藏在比特币原始软件中近18年后,研究员罗宾·莱纳斯(Robin Linus)开发了一种加密协议,使这款游戏成为可能。他设计的“比特币扑克”(Bitcoin Poker)允许两人无需发牌员即可进行德州扑克对局,私下生成牌面,并通过比特币现有的规则执行派彩。 但问题在于,准备一场游戏需要超过56,000个交易树节点、大约8.4 MB的设置数据,以及一些相当复杂的加密操作。
中本聪搁置扑克实验重启 加入比特币元素

关键要点:
- 罗宾·莱纳斯于9月6日发布了“比特币扑克”,将中本聪2008年提出的扑克概念转化为一项协议。
- “比特币扑克”利用56,132个交易树节点来实现双人德州扑克。
- Linus的设计无需修改比特币共识机制,但其安全性仍需在2026年接受独立审查。
早在2008年,当中本聪正准备发布白皮书时,这位神秘的发明者显然抽空在比特币的代码库中勾勒出了一间扑克室。隐藏在比特币最早期的源代码中,有发牌、弃牌、跟注和加注的按钮。 但有一个问题:这些功能实际上根本无法进行扑克游戏。
该软件虽然具备了牌桌的雏形,但背后并没有可运行的游戏机制。 快进18年,斯坦福大学研究员罗宾·莱纳斯(Robin Linus)攻克了中本聪留下的这一难题。本周四,莱纳斯推出了“比特币扑克”(Bitcoin Poker)——这一协议允许两人进行一场真正的德州扑克对决,利用比特币来执行规则、结算赌注并处理拒绝配合的玩家。
“亲爱的中本聪,首个BitVM争议、SHA2-ECDSA多语言支持、Binohash的疯狂——这些不过是用比特币脚本写就的粉丝来信。在我实现你最初的愿景之前,这一切都无关紧要,”莱纳斯在X上写道。“所以我终于完成了你在比特币v0.1中未完成的扑克客户端。 找我打几把吧。”
中本聪被遗忘的扑克室重获新生
原始比特币源代码中包含一个名为 uibase.cpp 的文件,其中包含扑克大厅和牌桌的图形组件。 该界面的生成日期为2008年4月16日,大约比中本聪发布《比特币白皮书》早了六个月。标有“发牌”、“弃牌”、“跟注”和“加注”的按钮暗示着这不仅仅是一个简单的支付应用程序,尽管中本聪从未公开解释过他打算用这些按钮做什么。

这些早期的代码片段并非一个可运行的扑克客户端,更遑论是基于区块链的赌博系统。其中既没有分发底牌的机制,也没有追踪下注或确定赢家应如何领取奖金的机制。 莱纳斯在其《比特币扑克》白皮书中明确指出了这一区别,写道:“这些界面片段并非完整的扑克协议。”莱纳斯并没有试图复活中本聪被弃用的软件,而是着手从零开始构建缺失的机制。

这一历史背景使得这一发现更加引人入胜。2006年10月,美国国会通过了《非法互联网赌博执法法案》,旨在打击与非法互联网赌博相关的金融交易。 数年后,在2011年4月那场被称为“黑色星期五”的打击行动中,联邦当局查封了多家大型在线扑克运营商所属的域名,此事广为人知。虽然尚不清楚在线赌博限制是否影响了中本聪的思路,但不依赖中心化支付处理器的扑克玩法这一构想,无疑与比特币的初衷相契合。
九张牌、两名玩家,且没有发牌员掌控全局
斯坦福大学博士生莱纳斯(Linus)最广为人知的成就是开发了BitVM——这是一项2023年的提案,旨在通过比特币验证复杂计算,且无需更改其共识规则。他后来的研究还包括BitVM2、BitVM3、Zerosync及其他密码学系统。 “比特币扑克”将这一富有创意的思路应用到了比区块链计算更为人熟知的领域。
“我们描述了一种基于比特币的限注德州扑克双人协议,”莱纳斯的论文中解释道。该游戏涉及两名参与者,每人获得两张底牌,随着下注进程的推进,五张公共牌依次出现。与传统的在线扑克不同,没有赌场服务器或可信发牌员来决定玩家获得哪些牌。
取而代之的是,双方参与者共同提供秘密信息来生成牌面。正如林纳斯所解释的:“只需九张不同的牌。”该系统并非对整副52张牌进行洗牌,而是利用密码学承诺和零知识证明来确保发牌公平,从而精确生成单局所需的九张牌。
这种安排确保了任何参与者都无法暗中操控结果。论文在描述设置阶段使用的联合加密信息时指出:“任何单个玩家都无法单独解密。”在游戏开始前,该协议还会在不暴露牌面信息的情况下检查是否存在重复牌。如果两张牌相同,则整个发牌过程将被废弃,并重新开始发牌。
这里存在一个奇特的数学悖论。随机生成的九张牌组合通过重复牌测试的概率仅约为48%。这意味着该系统平均需要2.08次尝试才能生成一副合格的牌。 虽然这种洗牌方式成本较高,但其结果是实现了一种私密发牌机制,无需信任对桌的玩家。
当有人拒不配合时,比特币便成为裁判
发牌是一回事,确保赢家能拿到奖金则是完全另一回事,尤其是当双方都没有理由信任对方时。Linus 通过在首笔下注前预先准备一组代表游戏可能结果的比特币交易来解决这个问题。
“规则定义了一棵有限树,”白皮书解释道。每个分支代表一种允许的操作,包括弃牌、过牌、跟注、加注、亮牌或结算底池。玩家会预先授权这些可能的操作,而比特币现有的交易规则则能防止他们即兴进行未经授权的操作。
“无效操作没有预先授权的交易,”Linus写道。该协议还使用了适配器签名,这使得在特定交易签名时能够恢复所需的牌面信息。这防止了玩家利用某些披露要求来获得不公平的优势。
但如果有人觉得玩够了,拒绝继续游戏,会发生什么呢?莱纳斯对此也有解答。 “每个等待玩家的状态都提供对手超时支出机制,”论文中指出。经过指定的延迟时间后,剩余的参与者可以收取已投入的底池,而离场的玩家其未使用的余额将被退还。
该研究人员指出了一个重要区别:“该协议可以强制结算,但无法强制某人亮出底牌。”换言之,比特币无法强迫某人完成游戏,但可以执行中途退出的经济后果。
一场拥有56,132个节点的扑克游戏暗藏玄机
该设计虽巧妙,但切勿将其误认为是一款轻量级的移动扑克应用。 Linus 的参考配置中,每位玩家有 100 个大盲注,每轮下注 4 次,包含 56,132 个逻辑节点、54,855 个普通签名以及 1,306 个亮牌包。每个亮牌包还包含另外 52 个适配器签名。
完整的准备快照大小为8,416,186字节,约8.4 MB。在三次桌面浏览器测试中,准备并保存交易树耗时在26.39至27.26秒之间。Linus提醒道:“这些是固定环境下的测量结果,并非启动时的性能保证。” 这些数据描述的是参考实现,而非用户对成品应有的性能预期。
幸运的是,普通游戏玩法并不需要广播如此庞大的交易集合。“预期的游戏模式是链下进行的,”论文解释道。玩家私下交换消息,仅在合作破裂时才动用比特币交易作为后备。区块链实际上充当了场边的裁判,随时准备在必要时解决纠纷。
近十八年后,中本聪的扑克构想有了真正的规则
目前仍存在一些局限性。比特币扑克仅支持两名参与者,因为额外的玩家可能会秘密分享手牌信息。公开摊牌可能会暴露双方的手牌,而且在将其视为可投入生产之前,该加密构造仍需经过独立的安全分析。
Linus 并未试图掩饰这些缺陷。论文中承认:“这并非针对完整恶意方协议的正式证明。”现有基于 Bitcoin Core 的测试虽然验证了包括支付和超时路径在内的关键组件,但“测试覆盖率并不等同于安全证明。”
尽管如此,这一成就的意义已超越扑克游戏本身。Linus 展示了如何利用比特币现有的脚本和签名功能,在不改变网络底层规则的情况下,实现一种涉及隐藏信息、复杂决策和资金支付的游戏。
比特币那位神秘的发明者留下的是一张扑克桌,上面那些按钮几乎没什么用处。十八年后,莱纳斯开发出了发牌、打牌和结算彩池所需的加密规则。剩下的问题是,这一精心设计的架构能否足够实用,让普通玩家也能尝试一下。
一项最新调查显示,估计有3300万尚未持有加密货币的美国人今年可能会购买加密货币。
立即阅读: 调查显示:3300万美国人关注加密货币,下一波热潮将不同本文由人工智能从英文翻译而来。英文原版为权威来源;自动翻译可能存在不准确之处,尤其是在法律和监管术语方面。

















