[持续更新] CKB Weekly 合集

在 Nervos 上遇见真正的 Metaverse|CKB Weekly #55

火花

​1、Nervos 为什么能够比以太坊有更大的弹性来设计 NFT ?

NFT 的概念最早起源于以太坊的 ERC 721,后来演绎到了 ERC 1155,同时其他链上也有各自的 NFT 。其中 Nervos 在基于 UTXO 编程模型下的 mNFT 协议可能会是一个很特别的存在,作者在本文中试着从 Nervos 和以太坊的底层公链设计出发,去探讨 NFT 在这两个公链上的设计边界,透过「如何自定义 NFT 分润」、「用 sUDT 代币交易 NFT 」、 「多个 NFT 合成特定 NFT 」等场景去讨论底层 NFT 协议的弹性,最后得出一个有趣的结论:Nervos 明显更偏向组合型,而以太坊则更偏向集成型。

也就是说,在以太坊上更偏向用一个协议尽可能地囊括所有的 NFT 设计协议的流程。相反的 Nervos 上则是能够让一个协议有最大的通用性,而 lock script 和 type script 既可以保留最小化的设计,让主要的逻辑交由某个代表规则的 Cell 去实现;也可以让 lock 和 type script 都展现最大程度的扩展性,例如在 lock/type script 指向的脚本中甚至还可以内嵌一个 JS/Lua 的虚拟机,实现定制化的智能合约脚本,并且带来更不可预期的发展边界。

原文:

2、要支持 sUDT 的充提币?这里有个不错的方案!

Nervos 的钱包如果要支持 sUDT 的转账,如果接收的地址是 anyone-can-pay 的短地址,可以使用 acp 方案,如果是原生的短地址,则能够使用 cheque 方案,但是这时候转账者就必须要有额外的 302 CKB 去创建 ACP cell 和 Cheque cell 。而 Mercury 是一个帮助中心化的平台的 sUDT 提供充提币接口,支持创建账户和构造转账,如此一来任何的中心化平台可以轻松地集成这个充提币方案。想了解更多请看下方原文。

原文:

CKB

  • (#2794) 为子命令 list-hashes 提供更好的错误信息

  • (#2792) 重构(硬分叉):更加严格地验证 epoch

  • (#2791) 重构:明确验证区块头中的 epoch

  • (#2790) ci:当 runner 没有足够的空间时,就会清理 cargo

  • (#2788) 自定义 opt-level 以避免重复建造

  • (#2789) ci:删除工作流程 remove-old-artifacts.yml

  • (#2779) 给每个全局运行时的线程一个唯一的 ID

Dev Tools

Godwoken-polyjuice [为 Godwoken 兼容以太坊]

  • (#45) 修复 creator_raw_args_seg_ptr 堆栈使用后的范围和错位的地址访问
  • (#44) creator_raw_args_seg_ptr stack-use-after-scope
  • (#46) 修复恢复账户预编译的合约
  • (#43) 上传 godwoken 和 godwoken-scripts
  • (#42) 修复错位的地址

跨链

force-bridge[通用的 force bridge 组件]

  • (#144) 修复:将名称标志改为符号,以修复 cli args 解析错误
  • (#142) 修复:增加分叉指标和删除服务器请求指标
  • (#143) 修复 cli args 解析错误
  • (#138) 增加了一个 keystore 模块
  • (#141) 修复 pubkeyToAddress 的 bug
  • (#136) 添加 bridge 费用索引器和 cli
  • (#137) 修复:为 ethHandler 和 ckbHandler 增加重试功能
  • (#139) 修复:更新服务器请求失败的处理程序
    生态系统

DAS [去中心化账户服务]