今日运势评分

10

本月运势

丙子月

己土比肩,丑未相冲
戊不受田田主不祥
午不苫盖屋主更张

破屋,坏垣,祭祀,沐浴,馀事勿取

诸事不宜

月相

更待

底部反弹

日冲

Powered by RitMEX

PEPE0.00 11.45%

SUI4.58 16.08%

TON5.29 2.98%

TRX0.24 2.64%

DOGE0.32 7.43%

XRP2.23 2.40%

SOL185.53 -0.72%

BNB661.56 1.52%

ETH3383.41 3.14%

BTC97125.31 2.11%

ETH Gas10.55 Gwei

贪婪
74

零知识证明能否通过减少全链游戏与区块链交互次数,提升用户体验?

游戏领域 ZKP 适合做哪些事?

撰文:Yooma

图片来源:https://unsplash.com/photos/people-inside-library-1mwPOXb_pB8

遇到的问题

PopCraft 是一款全链上的消除游戏,每局游戏时长 4 分钟,玩家在规定时间内消除棋盘上所有元素,会获得代币奖励。

由于全链上的特性,玩家在游戏过程中的每次操作都需要跟区块链交互。以太坊二层的区块时间通常为 2 秒,导致玩家在游戏中每次操作需要至少等待 2 秒才能完成,这远远超过同类 Web2 游戏中的等待时间,从而使 PopCraft 游戏体验欠佳

PopCraft 游戏主界面

设想的方案

我们设想在 PopCraft 中利用零知识证明技术(以下简称 ZKP),减少玩家在游戏过程中与区块链的交互次数。

预期的方式是:游戏过程不上链,但有机制可以确保无作弊风险。玩家在游戏中每一步操作都会生成 ZKP,后一步操作的 ZKP 基于前一步的 ZKP 来生成,从而形成一种类似区块链结构的自包含 ZKP,游戏结束时将最后一步操作的 ZKP 发送到链上,交由智能合约验证其结果

方案调研与推导

1. 游戏过程与结果的防作弊:仅对游戏结果生成 ZKP 是不够的,因为游戏的过程同样存在作弊可能。因此,既要对游戏结果生成 ZKP,也要对游戏过程进行验证。

2. 逐步生成 ZKP 的技术挑战:为了防作弊,需要对玩家在游戏中的每一个操作都生成 ZKP,在游戏结束时将最后一个 ZKP 上链进行验证。这个过程中,每一步的 ZKP 都会依赖于前一步的 ZKP,直到游戏结束为止。

但难点是:

1> 新的 ZKP 生成需要依赖前一步的 ZKP,这使得验证过程复杂且不确定能否可实现。此外, ZKP 验证通过智能合约(链上)来做,后一步生成 ZKP 时该如何去验证前一步的 ZKP 是正确的。

2> 在通过智能合约验证每一步的 ZKP 是否正确时,如何确保每个 ZKP 与前一个 ZKP 的连贯性,该问题不确定是否有方案可以解决。

3. 公开游戏数据的问题:PopCraft 的游戏数据是公开的,因此通过 ZKP 做信息隐藏没必要。如果上述验证步骤均可实现的话,下一步需要考虑在合约端保存游戏数据。然而问题在于 ZKP 的性质无法解出具体的游戏数据,此时也不可直接相信客户端传给智能合约的游戏结果数据,这意味着智能合约无法直接存储这些数据

4. PopCraft 中消耗游戏道具(消耗 Token)的问题:当游戏过程涉及到通过游戏道具完成孤立元素的消除时,本质上对应的是 Token 消耗,需要将用户钱包中对应的 Token 转移,如何处理这一步 ZKP 生成和验证也是一个问题。

1> 一个可能的解决方案是:这一步继续按照之前的流程生成 ZKP,验证消耗的 Token 数量并最终发送给智能合约。然而,由于智能合约无法通过 ZKP 得到具体游戏数据,因此无法判断应该转移的 Token 数量。

此外,假设玩家拥有 3 个 Token A,却尝试在游戏中消耗 4 个 Token A,这种错误会在游戏结束时才被发现,而不是在用户操作实时被发现。

2> 另一个可能的解法是:在使用 Token 完成孤立元素的消除时,直接与智能合约交互完成消除,然后更新玩家的 Token 余额。生成的 ZKP 只负责保存此时游戏操作和状态的证明。

那么此时在转移 Token 成功之后,还需要像前面操作一样继续生成 ZKP,如果不生成,那么在转移 Token 操作的上一步生成的 ZKP 与下一次生成的 ZKP 中间,多了一次与智能合约交互的步骤,那么 ZKP 中的游戏状态就会冲突,这样游戏结束时生成的 ZKP 是否有效也是一个悬而未决的问题。

5. ZKP 的数据隐藏问题:对于 PopCraft 这种不需要隐藏游戏数据的场景来说,通过 ZKP 做数据隐藏是多余的,且增加了游戏数据获取的难度以及工程实现方案的不确定性。PopCraft 只需确保游戏过程和结果无作弊风险即可,并不需要隐藏游戏过程数据。

结论

在 PopCraft 这样的游戏中,游戏数据不需要隐藏,因此通过 ZKP 做信息隐藏没有必要。为了通过缩短响应时间来提升游戏体验,可以考虑游戏过程不上链,仅将最终结果上链。关键在于找到一种方法,可以确保从玩游戏的第一步到最后一步都没有作弊可能,最后将正确的结果上链验证即可

如果通过 ZKP 进行信息隐藏,反倒是增加了工程实现难度。其次是如何确保游戏过程无作弊风险,使用 ZKP 能确保单个游戏操作无作弊风险,但为了减少跟区块链的交互次数,又不能生成一次 ZKP 就提交一次。所以从游戏开始的第一步操作到游戏结束整个过程,又该如何保证无作弊风险,目前看来 ZKP 无法解决该问题。

从我们的调研来看,游戏领域 ZKP 适合做两类事情:

  1. 非完全信息博弈类游戏的信息隐藏,比如:黑暗森林、德州扑克、狼人杀、炉石传说等。

  2. 游戏过程为单步的游戏结果证明,比如:彩票、猜数字、石头剪刀布、骰子游戏等。

由于我们在零知识证明技术上的储备有限,本文内容可能存在事实性错误或不合理的工程设想,恳请具备丰富经验的零知识证明领域专家批评指正。

欢迎加入深潮TechFlow官方社群

Telegram订阅群:https://t.me/TechFlowDaily
Twitter官方账号:https://x.com/TechFlowPost
Twitter英文账号:https://x.com/TechFlow_Intern
作者MetaCat
相关文章
2024.08.23 - 120 天前
从理论到实践,解锁 ZK 的无限可能
本文带你共探零知识证明,发现 ZK 的新潜能。
2023.08.24 - 485 天前
斯坦福区块链俱乐部:零知识证明也有摩尔定律,每秒生成证明逐年翻倍
未来几年内,每秒生成的证明数量将增加一倍以上,然后渐近地接近底层通用计算增益。
2023.02.24 - 666 天前
一览零知识证明的 Web3 用例:除了扩展性之外,还有哪些值得我们关注?
一文概览零知识证明在加密领域中的应用前景。
2023.01.10 - 711 天前
零知识证明、OpFi、AI...在流动性质押之外还有哪些叙事值得关注?
5 个可能在 2023 年初以类似方式起飞的 DeFi 叙事。
2024.12.20 - 昨天
2024 链上用户报告:月度新增用户数最高达 1940 万,Base 链贡献近 7 成增量
大多数区块链在将普通用户转化为高价值贡献者方面仍处于起步阶段。
2024.12.20 - 昨天
市场恐慌升级,关注转向 DeFi 与 AI Agent 赛道
临近圣诞假期,市场流动性预计将有所下降,建议投资者采取防御性配置策略。
2024.12.20 - 昨天
加密创始人必读:风投在意的不仅是你的项目, 更重要的是你自己
展示你自己,而不仅仅是你的公司。
2024.12.20 - 昨天
Coinbase 2025 展望:新技术、新格局、新机遇,加密市场将迎来变革性增长
涵盖加密领域的深度研究,从山寨币到 ETF、从质押到游戏等。
2024.12.20 - 昨天
国际清算银行最新提出的央行数字货币框架究竟是什么?
‍中央银行保留对 CBDC 发行和基础管理,将面向用户的职责下放给私营中介机构。
2024.12.20 - 昨天
加密企业影响力扩圈三板斧:上市、纳指 100 与标普 500?
从纳斯达克上市再到入选指数 100,加密企业正不断扩圈影响力。