其他
打破 Nervos DAO 的流动性限制
Nervos DAO 的流动性限制
不知道 Nervos DAO 是什么的小伙伴可以先看看这里👇
Nervos DAO 是一个内置合约,可以让人们将 CKB 存入其中并获得补贴(以抵御部分稀释),并且通过对存储数据的用户收取「利息」来控制链上数据(不被任意)的占用。
https://docs.ckb.dev/docs/rfcs/0015-ckb-cryptoeconomics/0015-ckb-cryptoeconomics.zh
将 CKB 存入 Nervos DAO 并获得补贴,但用户在 Nervos DAO 锁定期内不能使用或花费 CKB 在链上存储一些数据,每字节数据占用 1 个 CKB 什么都不做,让代币稀释 寻找其他方式赚取更多的 CKB:投资、借贷......
但 Nervos DAO 有一个恼人的设计,就是限制了币的流动性:必须在存入 CKB 后的 N*180 个 Epoch 才能取出代币,也就是第 180 个 Epoch(约 30 天)、360 个 Epoch(约 60 天)、540 个 Epoch(约 90 天)……以此类推。
不幸的是(或者应该说「幸运的是」),CKB 是一个强大的编程平台。在这样一个强大的平台上,我们甚至可以写一个合约来打破 Nervos DAO 的流动性限制。
让我们来打破它👊
DCKB 合约的运作模式如下:
Alice 在 Nervos DAO 中存入了 X 个 CKB,则该合约就会同样给 Alice 创建 X 个 DCKB Alice 可以发送任何 DCKB 给任何人,就像发送其它 UDT 一样 该合约在每一个新的区块高度创建 Y 个 DCKB(对应于 Nervos DAO 的补贴)给 Token 所有者 Alice 或其他任何人都可以通过销毁 X+Y 个 DCKB,来从 Nervos DAO 中提取 X+Y 个 CKB
https://github.com/jjyr/DCKB
谁是 DCKB 的用户
Nervos 的经济模型已被打破?
从某种角度来说,我们确实打破了最初设计中的一些假设。DCKB 实现之后,加密货币交易者可以在不牺牲流动性的情况下获得补贴,这消除了一些原本交易者应该承担的稀释(译注:交易者可以获得 Nervos DAO 中的 CKB 补贴,但同时也可以通过 DCKB 进行交易确保流动性)。
但同时,我们也给了 Layer 2、DeFi 的用户提供了更多的益处。在我看来,对于一个打着「Layer 1 for Layer 2」口号的区块链来说,Layer 2 的用户是系统的重要贡献者,系统应该激励他们。
从另一个角度来看,DKCB 并没有打破经济模型的核心理念。CKB 经济模型的核心思想是限制对链上数据的占用,DCKB 并不会影响这一点。当用户创建 DCKB 时,同样数量的 CKB 将会被存入到 Nervos DAO 中,所以很明显,一个 DCKB 所有者不会占用新发行的 CKB,从而也不会存储链上数据。
我认为 DCKB 保留了 CKB 经济模型的核心理念,同时也扩展了它的潜力。
DCKB 是如何工作的
本文并不讨论 DCKB 合约的实现细节,所以我只对其中的核心部分进行说明。想要了解更多信息,可以查阅 DCKB 源码。
u128
数字来代表 Token 的数量。DCKB 使用一个额外的 u64
数字来代表一个区块高度。所以一个 DCKB cell 中包含了 amount
和 block number
,代表我们在区块高度 N 处有 X 个 DCKB。N1
处包含 X1
数量的 DCKB,第二个 cell 在区块高度 N2
处包含 X2
数量 DCKB,且 N2
大于 N1
。DCKB 合约加载 N1
和N2
区块的区块头应用 Nervos DAO 公式重新计算 N2
处的X1
:dao_formula(X1, N1_header, N2_header)
最后,验证在 N2
时的输出 cell 是dao_formula(X1, N1_header, N2_header) + X2
现 状
现在,DCKB 已经可以在 Aggron Testnet 上运行啦!
DCKB GitHub repo https://github.com/jjyr/DCKB 您可以使用分叉版本的 ckb-cli 来运行 DCKB,这里有一个快速启动文档 https://github.com/jjyr/ckb-cli/tree/DCKB/src/subcommands/dckb DCKB Wiki、文件和测试网部署情况 https://github.com/jjyr/DCKB/wiki 如果你是开发人员,可以看这里的合约部署状态 https://github.com/jjyr/DCKB/wiki/Deployment-Status
https://talk.nervos.org/t/dckb-is-available-on-the-aggron-testnet/4713