👨🚀 Glaze & Jasmine:un.Block 在 Snapshot 也有 Space 了。快来为你喜欢的周报主题投票!
如果你喜欢本期内容,不妨在阅读后给我们点个 ❤️ ,并在下方订阅 un.Block Weekly ⬇️
🚀 链圈热闻:Eden Bundle
在前几期中,我们介绍了 Eden Network,这一期我们为科学家介绍如何使用 Eden Bundle 来进行交易。
Eden
在之前的几期中,我们介绍了 Eden。直接使用 Eden RPC 进行交易有以下几个好处:
速度快
费用低,节省 Priority Fee
有奖励,Eden Network 会给奖励
对于科学家来说,可以使用 Eden Bundle 进行交易,有以下好处:
可以指定成交区块
如果失败,不收取手续费
多笔交易同时执行
Eden Bundle 的执行速度与 $Eden 质押数量无关
Eden Bundle
Eden Bundle 的代码逻辑和常规的机器人差不多。首先是订阅 RPC 推送新的区块。这样当新的区块产生时,机器人代码会被自动执行。常见的使用 provider.on
或者 while
。
使用 provider.on
消耗的计算资源少,RPC 也用的更少,但是延迟会大概高一倍。如果不是自建 RPC,或者 RPC 调用有次数限制的科学家,推荐使用 provider.on
。while
消耗的资源更多,但是延迟更低。在一些出块快的链,例如 BSC,这两种方法之间可能会差一个区块。
处理好新区块的触发机制后,便是主程序的编写。相信科学家们已经很熟悉 Provider
,Wallet
,Signer
的初始化了。但需要注意的是在 Eden Bundle 中,我们需要提供两个密钥。一个是我们主账户的密钥,所有的交易都发生在这个主账户中。主账户拥用交易所需要的资金。另一个密钥对应的账户负责对交易的担保。
我们前几期介绍过矿工是如何选择交易进行打包的。矿工会倾向于选择手续费更高的交易进行打包。但是根据 Eden Bundle 的特性,矿工是无法得知每个 Bundle 的具体手续费。只有当矿工执行 Bundle 之后,才能知道具体手续费是多少。担保账户的作用就是方便矿工选择 Bundle。如果担保者过去担保的 Bundle 都有很高的手续费,矿工会优先选择这个担保者担保的 Bundle。
在这之后便是大家熟悉的机器人编写环节了。这部分包含合约 ABI,构建合约调用数据,编码合约调用数据,构建交易数据,构建 Bundle,签名 Bundle,模拟运行 Bundle,提交 Bundle 至主网,处理 Bundle 执行状态。
在这之后
编写完主程序,测试网跑通之后,我们还可以做以下优化来保证 Bundle 被矿工打包:
拉高 Priority Fee
针对不同的 Target Block 提交多笔交易
同时使用 Flashbots 和 Eden Network 提交交易
为了写出这篇文章,我们花时间编写了不同的机器人,并在主网进行测试。如果觉得我们的文章有帮助,欢迎赞助。我们的 ETH,BSC 地址是 0x7B076d7BcdE88Ec322B2D01AA1ADc1997b7724f6。
🍼 保姆级教程:快照与 Snapshot.org
快照无处不在
What's 快照?
区块高度
在区块世界,和某时某刻对应的数字是区块高度,每一个区块高度就是一个瞬间,上一个块是过去,这一个块是现在,下一个块就是未来 🤔。通过特定的区块高度,我们可以查到在那一刻链上是怎样的情况,例如你手上持的有什么代币,截止到该块的交易记录,都能够通过特定区块查到。
快照
快照(Snapshot)就是在特定的区块高度,记录该链上所有钱包的代币持有记录。你可以理解为在指定的区块高度,拍下一张照片,或是进行一次屏幕截图。快照基于区块链的透明和可追踪性,完成数据和记录的采集,基于这些数据和记录,我们可以来做很多事情。
例如,进行空投的分发,截止到某一个时刻,我们给所有使用过产品的用户进行空投奖励;又例如 Binance Launchpad 的 BNB 持仓快照,在一定时间内,多次检查用户的 BNB 持仓总量,作为额度分发的依据;又又例如 Hacking Event 发生后,项目方对用户的赔偿...... 快照的用途多多,哪怕你不知道什么是快照,但你可能已经经历过很多次快照了 🤔
Snapshot.org
快照的英文是 Snapshot,而 Snapshot 则是一个基于快照技术并结合 IPFS 的实用的 DAO 管理工具。
Snapshot 简介
社区治理离不开议案和投票,最最简单的投票方式就是大家将转移治理代币到某一个地方来进行投票(就像我们将选票塞进信箱一样),但这样会产生交易手续费,尤其是在 Ethereum 主网上,1000 个人参与投票就需要 1000 笔转账交易,这是可怕的。
Snapshot 就通过快照技术解决了转账投票的大麻烦,基于快照技术,我们可以截取某一区块高度的,某代币的全网持币数据(或是NFT、POAP 等),根据这些数据,我们可以给各个社区成员分配投票权。投票权的分配可以基于各种规则,最简单的就是持币的数量,复杂一些可以设置阶梯规则,以及引入持币的时间,甚至是基于交易记录进行权力分配。
权力分配好后,参与投票的用户无需进行任何的链上操作,只需要在网页连接钱包,选择你要投的选项,完成数字签名,提交,整个过程不需要消耗任何的转账手续费,大大的降低了社区治理的成本,非常 Nice!
目前 Snapshot 上已经有 3.75k 个社区
在 Snapshot 上创建社区
假如你是一个项目开发团队,你希望将去中心化治理引入到项目当中,你可以在 Snapshot 创建一个 Space,供用户提出议案,并进行投票。
在创建 Space 之前,你需要先申请一个 ENS(Ethereum Name Service)然后将你的 ENS 和 Space 连接,完成社区创建。
社区创建后,你需要设置你的社区基本信息,同时比较关键的一点,你需要设置社区的权力方案(Strategies),Strategies 是一个 Javascript 函数,可以通过它来制定你的社区权力划分。
然后,你需要引入你的社区成员,并设置议案提出规则(至少需要多少权力才能提出议案),然后就可以开启社区治理啦!
在 Snapshot 上进行投票
作为一个用户,在 Snapshot 上可做的事情主要就是提出议案和针对特定议案进行投票。
假如你想提出议案,你必须先满足社区管理者设置的议案提出规则,如 ENS 社区要求持有 10k ENS 以上的用户才能提出议案。假如你满足了提出的要求,你就可以填写议案内容,可选项,开始/结束日期,并设置投票规则,完成议案的提出。
假如你想投票,首先你要有投票的权力,最简单的获取权力方式就是持有项目代币,然后你就可以去对各议案进行投票了。投票过程非常简单,选择,提交,签名,完成。
在提交之前,我们可以看到自己的选项、投票的权力以及快照时间,权力的大小,就是基于快照得到数据计算得出的。
总结
在未来,随着去中心化技术的发展和 DAO 的探索,和我们利益相关的快照会变得更频繁,Snapshot 这款开源实用的工具,将成为社区治理的基石。
un.Block 也创建了一个 Space,大家可以来试一试 Snapshot 的功能。我们创建了两个议题,大家可以尝试进行投票。
📔 相关阅读:
📘 附加题
年末研报,满满的财富密码,通向未来的快车道
🚏Find us
💻 Website: unblock256.com
✈️ Telegram: un.Block Weekly
🕊️ Twitter: @unBlock256
📧 Email:unblocketh@gmail.com
📤 分发渠道:知乎 | Notion | Substack | Medium | Mirror
视觉设计:Jenny
特别鸣谢:
本文非商业目的转载授权遵循 CC BY-NC 4.0 协议
版权所有 ©️un.Block 2021