首页 资讯 正文

ZK技术破局“Play to Earn”

odaily 2024年02月03日 20:01

在"玩赚钱"的理念下,玩家希望在享受游戏的同时获得收益。但?GameFi?受限于较高的?GAS?成本和并不完善的区块链游戏开发生态,其安全性和透明度均难以得到玩家认可。这使?GameFi?走向另一个极端——不断优化经济模型和收益,收益周期不断缩短,最终造成踩踏。在新的周期,L2、全链游戏引擎和?ZK?技术的普及将为用户带来链上隐私和更复杂的链上游戏机制。这同时解决了性能、隐私和可信的问题,将焦点从庞氏游戏转移到更可信和复杂的链上游戏中。利用应用层?ZK?技术游戏开发者可以轻易建立对交互式隐私场景有明确需求的链上战略游戏,也为更复杂的可信(链上)游戏场景带来新的希望。Salus?将通过本文探讨新的应用层?ZK?技术如何帮助游戏完成场景创新。

zk-SNARK?是一种加密证明系统,在这种结构中,证明者可以证明拥有某些信息,而不泄露该信息,并且证明者和验证者之间没有任何交互。

递归?zkSNARK?意味着开发者可以在 zkSNARK?证明内部验证另一个 zkSNARK 证明,并生成 zkSNARK 证明的陈述。递归允许 zkSNARK 证明者将更多知识压缩到他们的证明中的同时保持简洁,且递归验证过程不会明显减慢。

与一般 zkSNARK 相比,递归 zkSNARK 通过允许将多个证明压缩为单个证明来提供增强的可扩展性和效率。这种递归组合减少了复杂或多步骤过程的计算负载和证明大小,使它们特别有利于发生大量交互和交易的区块链游戏等应用程序。这将为用户和开发人员带来更高的性能并降低成本。

ZK技术破局“Play to Earn”

递归 zkSNARK 允许证明者将“更多知识”放入证明中,同时确保这些证明仍然可以由验证者在恒定或多对数时间内进行验证。使用递归 zkSNARK 作为信息的“rollup”,可以独立地“卷起”比最大的(非递归)电路更多的计算。

使用递归 zkSNARK,可以创建一个证明链,在每一步中,证明都会传递给一个新的参与者,每个参与者在其中添加自己的知识声明,但无需了解链中其他部分的详细信息。

单对友好曲线的椭圆曲线运算。

第一种方法,配对友好椭圆曲线的循环,尽管众多研究者还在探索,但目前想要实现同时满足配对友好和循环这两个特性的曲线还很困难。以下内容定义了什么是配对友好椭圆曲线循环。

定义?1: 椭圆曲线的循环是在有限域上定义的椭圆曲线的列表,其中一条曲线上的点的数目循环地等于下一条曲线的定义域的大小。

椭圆曲线的?m-cycle?是由?m?条不同的椭圆曲线ZK技术破局“Play to Earn”,其中ZK技术破局“Play to Earn”是素数,使得这些曲线上的点个数满足公式:ZK技术破局“Play to Earn”

高效的?zkSNARK?方案一般由配对友好型椭圆曲线去构建,而等式中的循环条件使得它们之间可以递归组合,并且避免产生在跨不同特征的有限域时所产生的昂贵的模运算。

定义?2: 椭圆曲线的配对友好型?m-循环是一个满足循环中每条椭圆曲线都是基础且具有较小嵌入度的?m-循环。

第二种方法是强行通过,并在证明系统本身中简单地实现单对友好曲线的椭圆曲线运算)。你可以将配对电路移植到BN?254?曲线上,然后在?Circom?中组装一个生长验证器。

以?groth?16?证明系统为例,groth?16 具有两个阶段的可信设置,第二阶段的设置是电路特定的。这意味着,当你在 SNARK 内部验证证明时,它将需要独立于外层 SNARK 的受信任设置。

因此最适合递归 groth?16 SNARK 的是那些递归到自身的应用,即在电路中验证的证明是同一电路本身的证明。这意味着我们只需要一个可信设置。如图展示了自递归?SNARK?的思路:

ZK技术破局“Play to Earn”

在每一步,你都有一个电路来证明计算

ZK技术破局“Play to Earn”的有效性 ( 可能?i?是对?SNARK?的公开输入),并且在第 i?个这样的证明中,您验证另一个计算有效性的证明 ZK技术破局“Play to Earn”的有效性。还有步骤ZK技术破局“Play to Earn”的有效性,在每次递归时,您的?SNARK?电路将保持不变。以Isokratia为例,每个ZK技术破局“Play to Earn”都是?ECDSA?签名验证。

总的来说,递归 zkSNARK?提供了更强的扩展性:减少多步骤游戏或动作所需的数据和计算,使它们在链上更加可行,确保复杂的游戏逻辑和状态转换快速、安全地验证。

ZK Hunt 是一款类 RTS 的链上 PvP 游戏,探索了使用?ZK?技术实现复杂链上游戏机制和信息不对称。ZK Hunt 允许玩家在完全隐私的情况下执行动作,可以在不泄露任何基础数据的情况下验证每个动作。

ZK技术破局“Play to Earn”

在?ZK Hunt?平原上的移动是公开的,玩家 B 可以看到玩家 A 在移动时的位置更新。进入丛林也是公开的,但在丛林中移动是不可见的,因此玩家 A 无法确定玩家 B 在丛林中的位置,而只能模拟一组不断增长的潜在位置,这些位置用问号显示。离开丛林回到平原用户位置会再次公开,所以这个潜在的位置集合就消失了。

这种信息隐藏行为是 ZK Hunt 的基础;单位有一个状态(它们的位置),可以从公共状态变为私有状态,然后根据游戏中的动作再次变回来。这增强了游戏的策略性。

ZK技术破局“Play to Earn”

如图所示:ZK Hunt?的状态验证过程主要为以下步骤:

承诺是一种工具,ZK 证明可以使用它来验证引用用户之前“承诺”的一些私有状态,而无需向验证者透露该状态。用户将承诺 C 作为公共输入提供给证明,将私有状态 s 作为私有输入,证明在内部计算 s 将产生的承诺,并检查它是否与 C 匹配:

ZK技术破局“Play to Earn”

尽管 ZK 证明验证的成本被认为是恒定的(至少对于某些证明系统,如 groth?16 等),实际上这个验证成本会根据公共输入的数量而增加,这在进行链上验证时可能很重要。同时,ZK Hunt?使用了poseidon hash 作为承诺方案,因为它在电路内计算比其他常见哈希函数效率高得多,每个消息位的约束更少。如果私有状态是从足够大的范围(例如私钥或随机种子)中随机选择的值,那么只需获取该值的哈希值就足以作为承诺。

类似的?ZK?技术可以实现的游戏创新场景还有很多,例如资产隐藏、决策隐私和进度保密。

通过采用零知识证明技术,ZK Hunt?允许玩家在保持隐私的同时进行游戏操作。这不仅是技术上的创新,更是链上游戏的一次规则变革。通过这种方式,游戏行动在不透露敏感数据的情况下得到验证,增强了策略的隐蔽性,并丰富了游戏的策略深度和惊喜元素。

如果您对在链上游戏中集成?ZK?技术以增强隐私和扩展性、实现游戏创新感兴趣,Salus提供相关服务和解决方案。通过与?Salus?合作,您可以探索?ZK?技术在游戏领域的广泛应用,为玩家提供更丰富、更安全、更具策略性的游戏体验。