CYC

狼羊游戏是在我个人看来非常非常经典的一款纯链上博弈游戏。不止是资产上链,就连整个游戏的交互机制也是链上的。虽然本质上还是staking, trading一类的东西。但是其展现形式,尤其是一直在根据市场博弈进行调整的机制,非常值得我们复盘。

  • 看下链上非常原生的游戏
  • 通过白皮书的进化来看下这个项目的博弈进化

因为我本人没有对链游进行过多的研究,所以借此机会来看下这个堪称链游博弈之王的东西是什么。那么,我们开始吧。

V1版本白皮书 — -奠定链上博弈基调

狼羊游戏的V1版本奠定了整个游戏的基调。总的来说,用不确定性来引导整个游戏的动态博弈。确切的说,博弈从第零代狼羊的mint就开始了。

一开始的gen0 mint的时候就是随机产生狼羊。90%的概率是羊,10%的概率是狼。羊本身的作用就是staking产生羊毛(ERC-20),也就是常规的staking NFT→earn ERC20。但是这个游戏最精髓的部分在于引入狼这个不确定因素,就开始充满了变数。不过在此之前,我们先来看下狼羊各自的特点:

由于gen0的狼羊都是一定的(一共有10,000只),并且羊毛的总量是5,000,000,000。一旦staking产出的羊毛数量超过2,400,000,000,就会停止新的质押。给予开发者600,000,000的羊毛奖励,同时分配给社区2,000,000,000奖励。当然,不止如此,为了消耗羊毛,会开启用羊毛mint新的羊的开关。具体羊的可以采用的行动和导致的结果和承担的风险可以用下表来表示:

图片来源:https://wolf.game/

再来看狼的属性,就比较简单了。

alpha:5~8. 根据数值不同,获得奖励越多,获得NFT概率越大。其行动结果风险表如下:

因为以太坊的高费用和拥堵问题,使得二层一直是一个被大多数人关注的领域,并且相继出现了很多方案来缓解以太坊所面临的这些问题,本篇文章就以太坊的几种扩容方案进行梳理和讨论。

目前针对以太坊的问题出现了很多种扩容方案,比如以太坊自己推出的beacon chain将交易分片放在链下处理,near夜影协议的扩容思路和以太坊的beacon链思路相似,但是更为简洁,被称为最优雅的分片协议;Flow将区块链中出块的参与者进行角色分类,分离了共识层和计算层,充分利用计算资源提高计算层效率;还有从根本框架改变了区块链结构的图形区块链DAG,例如avalanche和algorand。除了这些公链,在二层上也有很多优秀的扩容方案:Plasma,Rollup(这里主要是zk-rollup和op-rollup),Validium,下面这张图可以通过两个特点将这些方案进行简单的区分,Zk-rollup和Validium主要是依据产生的密码学零知识证明来证明各批次交易,而Op-rollup和Plasma主要是将每个批次的交易结果上传,里面包含了交易哈希等。

图片来源:vitalik medium

Plasma

Plasma其实是一种框架,很多人把Plasma当成侧链,它们其实是不同的,具体可以阅读Vitalik写过的一篇关于Plasma和侧链的文章,文章中提到Plasma相当于非托管的侧链,当Plasma上的错误被检测出来时是可以保证用户安全的退出Plasma。Plasma是乐观型,默认所有行为都是正确的,不过在每个新区块上主链时,需要提交该资产最近一次交易所对应的merkle分支,智能合约会留一段时间给用户提交欺诈证明,用户需要等待一个挑战期(7–14天)并且支付高额的费用,如果在这期间没有人提交挑战,那么就会被验证为正确区块。

标准流程是在进出(存款和退出)Plasma chain的时候才需要和主链上的智能合约交互一次,资产转到链下进行时就会有状态确认,用来保证用户的资金不会受到损失。取款(退出)时,跟这个取款操作相关的账号或交易都会被禁止。取款分为三种:简单取款(simple withdrawal),快速取款(fast withdrawal)和批量取款(Mass Withdrawal)。简单取款会有个challenge period,如果没有异议,取款成功,资产回到主链;快速取款会引入一个中间人(liquidity provider),用户从LP这里直接取款,但需要支付给LP一定的费用,同时LP和用户会有个liquidity contract。比如A要快速取款,B是LP,A想取出10个eth,先存进合约中,子链上打包了这笔交易以后,A调用合约中的退出函数,获得一个token(该token代表10个eth),B检查子链之后用9个eth购买这个token。A取出9个eth,B赚1个eth。但快速取款的条件是没有拜占庭行为;剩下最后一种批量取款,也会有个节点(exit processor)去处理取款,并且收取一定的报酬。

Rollup

Rollup是根据Plasma改进而来,解决了Plasma暴露的问题。核心理念也是把分散的交易浓缩打包成一笔交易发布到链上。先出现的是Zk-rollup,后出现的是Op-rollup,Op-rollup和Plasma的框架更相似。zk和op是两个完全相反的解决方案(悲观和乐观),两个方案都在做不同的取舍。

  • Zk-rollup:简单来说就是 交易压缩+零知识证明(zk-snark),来提供有效性证明,在打包的每个批次中包含一个zk的密码学证明来保证真实性。有两个角色:transactor(交易者)和relayer(中继者)。

transactor就是普通用户(以太坊的外部用户),将交易发给中继者,其中包含相应的手续费给中继者。

relayer负责验证收集到的交易,并将交易打包,生成zksnark中的证明,再将证明和核心数据以及最新全局状态的默克尔根一起提交到链上的智能合约,过程需要gas fee。

zk-rollup用了零知识证明,但不支持通用型的智能合约(但随着技术发展,zk-rollup兼容EVM已经是可以实现的),并且生成snark的过程过长,因为QAP问题带来的缺点就是可扩展性差,验证人需要的计算量非常大,该方案费用较高。随后就出现了Op-rollup。

  • Op-rollup:Rollup+Plasma 的方式结合了zk的数据可用性和Plasma的惩罚机制。舍去了零知识证明,所以支持通用型智能合约。在主链的Rollup合约中记录了内部状态根的转换和每个批次的哈希值,折合Plasma很相似,但相比Plasma,提款时间有所减少(1–7天),并且相比Zk-rollup,费用也比较低,不过按照Vitalik的话来说,Op-rollup只适用于短期,长期来看还是Zk-rollup更有前途。

Validium

和Zk-rollup很像,唯一区别就是数据可用性。Zk-rollup的数据可用性在链上,而Validium则是在链下,这样就获得了更高的吞吐量,同时也牺牲了安全性,运营者可以冻结用户资金,具体方法如下图:运营者在用户不知情的情况下对默克尔树进行改动,使用户无法创建默克尔证明来证明所有权;Validium里有个数据可用性委员会(DAC),如果DAC中有一定比例的成员私钥泄漏,攻击者就可以更改状态,冻结所有资产,所以安全性有待提高。

目前加密货币行业使用的货币计价单位多为对标中心化的美元的稳定币,The Unit的设立初衷是为元宇宙寻求一个不受任何中心化的世界货币影响的记账单位。The Unit认为只有起作用的去中心化指数能实现这样的记账单位。因此The Unit决定先建立一个由去中心化社区管理指数标准的包罗各大加密货币的去中心化指数 — — The Unit index。The Unit认为The Unit index之于加密货币可以类比 S&P 500之于美国股票市场。

技术特点

The Unit对于The Unit index的算法设计如1 UNIT 的计算公式所示。

The Unit index — — 1 UNIT 的计算公式

图片来源:https://docs.theunit.one/theunit/the-unit/algorithm

其中S_1表示选中的加密货币1的总供应,S_2表示挑选的加密货币2的总供应,P_2,1表示 以加密货币1计价的加密货币2的价格,S_n表示挑选的加密货币n的总供应,P_n,1表示以加密货币1计价的加密货币n的价格。S_1 + S_2P_2,1 + ··· + S_nP_n,1 为该市场总市值。N表示现有人类的总数量,Y表示出生时的平均预期寿命。The Unit index — — 1 UNIT的公式含义为该市场总市值除以现有人类的总数量乘以出生时的平均预期寿命的积。

1. 估值。币的市值和180天日平均市值同时大于“某值”。

币的该市值以The Unit排行第一的货币作为单位计价,当前以BTC作为单位计价。“某值”等于当前排行第一的货币(当前为BTC)的总供应除以((1+5⁰.5)/2)¹²(黄金比例的十二次方,约322)的商。

2. 交易量。币至少公开交易了1年,且180天日平均交易量大于“某值”除以“R”的商。“R”的计算公式如图所示:

CYC

CYC

独立的区块链研究组织,专注底层技术研究与实践,探索共识、跨链、隐私、密码学、代币经济等硬核方向。