CKB Stablecoin Payment 的实现

行业速递
2024-10-31 11:27:01
收藏
CKB是Nervos Network的Layer 1区块链,其主要功能可以总结为 共识与执行(Consensus & Execution) 以及 数据可用性(Data Availability),通过建立在其之上的支付通道、RGB++提升可扩展性

1. 概述

  • CKB stablecoin payment 是一种基于 CKB 网络的去中心化稳定币支付解决方案,允许用户通过 CKB 和比特币的联合网络,利用如 RGB++ 和 Fiber Network 等 Layer 2 扩展,生成并管理与美元挂钩的稳定币 RUSD,实现快速、低成本、安全的跨链稳定币支付

2. 核心组件介绍

2.1 CKB(Common Knowledge Base)

2.1.1 CKB是什么

  • CKB是Nervos Network的Layer 1区块链,其主要功能可以总结为 共识与执行(Consensus & Execution) 以及 数据可用性(Data Availability),通过建立在其之上的支付通道、RGB++提升可扩展性
  • 它基于PoW共识机制,类似于BTC,并采用了升级版的BTC算法NC-MAX该算法通过加快交易确认时间和降低孤块率,提升了网络的效率和响应能力与BTC每10分钟一个区块的固定间隔不同,CKB会根据网络活动动态调整区块间隔(大约每四小时调整一次),从而优化性能
  • CKB采用了Eaglesong哈希函数,这是一个专门为Nervos Network 定制的哈希函数,作为SHA-256的替代,它提供了相同的安全性
  • CKB采用了Cell模型作为其数据结构的核心,是BTC的UTXO记账模型的改进版本
    • 通过双脚本系统,允许更灵活的数据存储和验证,支持资产发行和智能合约执行
    • 提供数据存储和状态管理功能,确保所有链上资产和数据的长期可用性

2.1.2 Cell 模型

    • Cell模型&特点
      • Cell 模型类似于BTC的 UTXO 模型,但通过引入双脚本实现了智能合约脚本的链上数据存储和验证
      • 存储任意类型的数据或资产:在BTC的 UTXO 模型中,每个交易输出只能包含简单的金额信息和所有权;而CKB的每个 Cell 都可以存储智能合约代码),并在交易中通过外部调用触发这些脚本执行,这意味着每个Cell都能够独立执行与其相关的智能合约逻辑,具有可编程性
      • 状态与计算分离:因为 Cell 存储了智能合约的代码和状态,允许每个 Cell 独立执行合约逻辑复杂的计算任务可以在 Layer 2 或链下执行,执行结果则通过交易同步回 Layer 1,确保网络的安全性和数据的一致性
  • 并行执行&打包交易:通过Cell模型,不同Cell中的智能合约可以实现并行执行,而同时,不同Cell的交易结果可以打包更新上链,这种方式是特计算更加高效并且降低交易费用

    • Cell模型的工作原理

      • Cell 是由输入和输出组成的:类似于BTC的 UTXO 模型,Cell 通过输入和输出来执行交易和状态更新每个 Cell 可以作为交易的输入被花费,并生成新的输出,创建新的 Cell
      • Cell的组成元素:每一个Cell 包含Capacity,Updated Data,Lock Scripti,Type Script
  • Capacity(容量):Capacity 记录了 Cell 储存空间的大小,也代表了 CKByte 代币的存储价值用户创建的 Cell 需要根据数据量分配一定的 Capacity,确保链上存储空间得到有效利用
      • Data(数据):它是 Cell 模型的核心特性之一,可以存储从简单数字到复杂智能合约状态的任意信息,允许在区块链上存储多样化的数据
      • 双脚本系统:
  • Lock 脚本:用于身份验证,类似于BTC的签名机制,防止未授权用户访问或修改 Cell 中的数据用户必须提供正确的签名或多重签名才能解锁并使用 Cell
        • Type 脚本:定义了 Cell 的数据验证逻辑,用于设定在未来交易中如何使用或更改 Cell 的规则,通过执行智能合约或规则验证来决定交易或状态的合法性
  • Live Cell & Dead Cell:
  • Live Cell指的是当前仍然未被花费的 Cell,仍然可以用作输入进行下一笔交易或状态更新

2.1.3 可编程性 & CKB-VM

  • Cell 模型 是 CKB 可编程性的基础:支持在每个 Cell 中存储智能合约的状态和执行脚本,使合约的执行和资产的管理紧密结合
  • 通过图灵完备的 RISC-V 虚拟机(CKB-VM),开发者可以在链上执行自定义的智能合约。RISC-V 指令集的灵活性赋予开发者更多编写合约的自由,使 CKB 能够支持复杂的合约逻辑
  • CKB-VM支持多种语言:包括 C 和 Rust 等流行语言。这种广泛的兼容性使 CKB-VM 有别于通常仅限于特定语言的其他区块链的虚拟机,向更广泛的开发者社区开放。CKB 网络还支持 JavaScript、Rust、Go 和 Java 等主流语言的 SDK,方便开发者使用熟悉的工具进行开发
  • 兼容性与扩展性:CKB-VM 的设计确保了与BTC的 UTXO 模型和其他区块链兼容,同时支持高度扩展的智能合约和复杂应用
  • 资料来源:

2.1.4 PoW共识机制

    • CKB采用类似于BTC的PoW共识机制,保障网络的安全性和去中心化,与BTC类似,矿工通过竞争计算哈希值来打包区块,从而保障网络的不可篡改性和抗审查性
    • NC-MAX 算法:相比BTC,CKB 引入了改进的 NC-MAX 算法。这个改进允许更高的吞吐量并优化了区块打包效率,降低了孤块率,并提升了交易确认速度,使其适合大规模的应用场景,如资产存储和支付结算。
    • Eaglesong 哈希函数:Eaglesong 哈希函数的定制设计通过 ASIC 中立性高效性安全性网络公平性,为 Nervos CKB 网络提供了性能和安全方面的优势,确保去中心化的同时,提升了挖矿效率和网络扩展性
  • 资料来源:
    • https://docs.nervos.org/docs/tech-explanation/consensus#nc-max-consensus-algorithm

2.1.5 多层次安全架构

  • CKB采用了多层次的安全架构: Layer 1专注于数据的最终结算和状态的安全保存,Layer 2则用于扩展交易处理能力
  • 分离的架构确保了主链(Layer 1)的安全性: 减少了处理交易时的负载,提高了整体网络的稳定性

2.1.6 与BTC的联系及正统性

  • UTXO模型的跨链互操作性:
    • CKB 的 Cell 模型 是BTC UTXO 模型的扩展,这种相似性使得BTC UTXO 模型上的资产可以通过 Force Bridge 等跨链桥接工具在 CKB 上进行跨链操作。BTC用户能够将其资产映射到 CKB 网络,借助 CKB 网络的灵活性进行存储、智能合约操作和去中心化金融(DeFi)应用
    • 由于 Cell 与BTC UTXO 在结构上相似,且 CKB 可以兼容BTC签名算法,用户可以用BTC钱包操纵CKB链上资产,对于其他UTXO公链同理
  • 正统性:CKB通过采用NC-Max(Nakamoto Consensus Max)与BTC保持理念上的一致性,NC-Max 是中本聪共识的改进版本,提供了更好的安全性和性能
  • 社区支持:Nervos社区由众多区块链技术爱好者、开发者和矿工组成,并得到了部分BTC社区的支持正统性在于它继承了BTC的去中心化思想,并通过扩展功能满足了更广泛的需求
  • 资料:
    • https://medium.com/@NervosCN/%E7%A7%91%E6%99%AE-%E4%BB%80%E4%B9%88%E6%98%AF%E4%B8%AD%E6%9C%AC%E8%81%AA%E5%85%B1%E8%AF%86-92ffe0886104

2.1.7 CKB在稳定币支付中的角色

  • 存储与管理稳定币余额:CKB 的 Cell 模型 是稳定币存储的基础,用户的 RUSD 等稳定币余额存储在链上的 Cell 中。每个 Cell 包含完整的余额信息,确保了资产的安全性和可追踪性。
  • 记录交易状态:CKB 支持在链上记录交易的每一个状态变化,所有的支付流程都可以通过 Cell 模型透明化地记录并追踪。这种机制在稳定币支付中至关重要,确保了交易的安全性和可验证性。
  • 智能合约的执行:稳定币支付过程中的条件支付、锁定等复杂操作都可以通过 CKB-VM 支持的智能合约实现。

2.2 RGB++

2.2.1 RGB++是什么

2.2.2 基本功能

  • 通过RGB++,将CKB 作为BTC的影子链(Shadow Chain):作为BTC的补充链,承担BTC原生无法处理的包括在图灵机中的复杂逻辑和智能合约操作
  • 与BTC网络交互
      • 交易发生:在BTC网络中,用户通过常规的 UTXO 模型完成交易,而涉及智能合约执行的部分则通过 RGB++ 将合约状态和数据绑定到 CKB 上
      • 验证逻辑:在BTC网络上进行的交易记录将通过RGB++与 CKB 上存储的合约状态同步,通过特定的验证逻辑来确保交易的合法性,每当网络发生交易,RGB++ 会触发 CKB 上的合约执行,通过链上合约逻辑检查交易是否符合预定的规则,例如余额是否充足、签名是否有效、合约条件是否满足等
  • RGB++ 使用客户端验证(Client-Side Validation)的模式来确保链下数据的私密性和完整性,只有在链下验证通过时才会将数据提交至 CKB 进行最终结算
    • 资产发行与管理:RGB++ 允许用户通过链下协议发行资产(如稳定币、代币等),并使用 CKB 来管理这些资产的生命周期(不仅包括资产的发行和流通,还包括更复杂的操作,如时间锁、条件支付等功能)
  • RGB++ 实现了BTC的高安全性与 CKB 的可编程性结合

2.2.3 同构绑定(Isomorphic Binding)

  • 资产&状态跨链同步:同构绑定是指在BTC和 CKB(或其他 UTXO 公链,如 Cardano)之间,将资产和状态通过一种绑定机制保持同步。每当BTC链上发生资产交易时,RGB++ 会在 CKB 上映射出与之对应的合约状态或资产变动
    • 扩展UTXO:在同构绑定中,BTC链上的每个 UTXO 会在 CKB 上有对应的 Cell(UTXO 容器),并记录与之对应的资产状态和智能合约条件
    • 资产绑定:当用户在BTC链上持有某种 RGB++ 资产时,CKB 上的 Cell 会存储相应的资产状态,两条链之间通过同构绑定确保这些资产信息的一致性
  • 交易的同步:当RGB++代币交易发生时,同构绑定机制会在BTC网络生成Commitment,在CKB链上,对应的Cell会被消耗,而新的Cells会生成用来分配资产
  • 同构绑定的优点 - 赋能BTCFi
    • 智能合约支持:BTC无法原生支持图灵完备的智能合约,而通过同构绑定,CKB 可以作为智能合约的执行层,管理BTC资产的复杂交易条件,如时间锁、条件支付等
    • 资产管理的灵活性:同构绑定允许在 CKB 上管理BTC网络中流通的资产,用户可以通过 CKB 的灵活编程能力执行复杂的金融操作,而无需改变BTC的底层协议

2.2.4 Leap

  • RGB++ Layer 升级提出: 将CKB与BTC之间的绑定关系扩展到所有UTXO链,通过“换绑”实现资产跨链
    • BTC与其他UTXO链之间的无桥跨链:它的核心目的是让BTC链上的RGB++资产能够无缝转移到其他UTXO链上,它通过切换资产绑定的 UTXO,支持在多个区块链上管理和转移资产
  • 无桥技术:Leap 通过同构绑定(Isomorphic Binding)技术,以及切换不同链上的 UTXO,而不依赖传统的 Lock-Mint 跨链桥,实现资产的跨链转移
  • 操作流程:例. 用户可以通过 Cardano 链来控制原本在BTC链上的 RGB++ 资产,并在 Cardano 链上进行资产的拆分和转移
      • 发布 Commitment:首先,用户需要在BTC链上发布一个 Commitment,声明要将 BTC UTXO 绑定的资产解除绑定
      • Cardano 链绑定:接下来,在 Cardano 链上发布一个新的 Commitment,将该 RGB++ 资产与 Cardano 的 eUTXO 绑定
      • 修改锁定脚本:然后,修改 RGB++ 资产在 CKB 链上的锁定脚本,将解锁条件从BTC UTXO 切换为 Cardano 链上的 eUTXO。这一步允许资产持有人通过 Cardano 链控制原本在BTC链上的资产
  • CKB在Leap中的作用:
    • CKB 扮演了类似 索引器数据可用性(DA)层 的角色。所有的 RGB++ 资产数据仍然存储在 CKB 链上,CKB 作为第三方见证人来处理 Leap 请求,并确保跨链资产的安全性
    • CKB提供了安全性和可信度:相比传统跨链桥中常见的多签或 MPC(多方计算)机制,CKB 的安全性和去中心化属性更为可靠
    •  

2.2.5 RGB++在稳定币支付中的角色

  • 稳定币的发行和流通:通过RGB++ 在BTC链上发行稳定币,借助 CKB 实现资产的智能管理。
  • 跨链资产管理:通过 RGB++ Layer和 CKB 的结合,确保稳定币支付在不同UTXO链上无缝操作
  • 智能合约支持:为稳定币支付提供复杂的支付条件、时间锁等功能,提升支付的灵活性和安全性
  • 桥梁作用:RGB++ Layer 充当BTC(以及其他 UTXO 链)和 CKB 之间的桥梁,扩展了BTC的可编程性和资产管理能力,使BTC的稳定币支付功能更加多样化和灵活。

2.3 Fiber Network

2.3.1 Fiber Network简介

  • Fiber Network 是 CKB 上类似于BTC闪电网络的 Layer 2 扩展方案:它专门为提升 CKB 的链下支付能力设计,允许用户在链下进行快速、低成本地支付。通过支付通道实现链下交易,减少主链的压力,提升交易速度
  • 链下支付的特点:Fiber Network 通过支付通道实现了链下的快速转账,降低了对 CKB 主链的依赖,并提升了交易的吞吐量
  • 现状:截止2024年9月,根据mempool的数据,当前BTC闪电网络中安置了3亿多美元的资金,节点数量约为1.2万个,彼此之间构建了近5万条支付通道
  • 资料:

2.3.2 技术要点

  • 链下支付通道(Fiber Channels):Fiber Network 通过创建支付通道,允许用户在链下直接交换资产,直到通道关闭时才将最终状态提交到 CKB 主链进行结算
  • 链上合约(HTLC)
    • 类似于BTC闪电网络,Fiber Network 现在也使用哈希时间锁合约(HTLC) 来保障链下交易的安全性;如果链下交易在约定时间内没有被确认,可以通过 HTLC 自动退回资产
    • PTLC:Fiber Network 在HTLC的基础上改良,避免整条支付路径图使用同一加密值,将使用PTLC来防止对交易关联性的隐私泄漏
  • 多跳路由(Multi-Hop Routing)
    • Fiber Network和BTC闪电网络一样,支持通过多个节点进行支付路径的跳转,基于Dijkstra算法来搜索支付路径,从而降低路由费用并提高多跳路径支付的成功率
  • 监控服务-瞭望塔(Watchtower Service)
    • 用户可以利用全天候监控服务来监控支付通道的状态,防止恶意节点尝试进行双重支付或作弊行为(防止交易参与者把过期的Commit提交上链),该服务可以自动追踪交易并报警

2.3.3 Fiber Network 与 BTC闪电网络的不同

  • 多资产支持:
  • BTC 闪电网络仅支持BTC的链下支付,未来可能通过 Taproot Asset 升级支持其他资产,但目前只能原生支持BTC;
  • Fiber Network 支持多种资产,包括 CKB、BTC、RGB++ 稳定币等
  • 手续费和交易速度:
  • BTC 闪电网络由于在BTC链上运行,打开和关闭通道时需要支付较高的BTC手续费,尤其当 BTC 交易费用上涨时,通道操作成本大幅增加;
  • Fiber Network 由于依赖 CKB,拥有更高的 TPS 和更低的交易费用,这使得打开和关闭通道的操作成本更低,提供了更好的用户体验
  • 跨链互操作性:
    • BTC闪电网络主要用于BTC网络内的支付,尚不支持其他 UTXO 链的跨链支付
    • Fiber Network 支持多种资产的流通包括:BTC 原生资产(包括铭文、符文等)、CKB 、RGB++ 原生资产(包括RUSD等)
    • 跨链资产链下支付:借助 RGB++ Layer,所有 UTXO 链的资产,都可以进入闪电网络
    • Fiber Network 与BTC闪电网络可以互联:实现跨链支付(只能Fiber Network发出,BTC闪电网络接收),用户可以通过 Fiber Network 使用 CKB 或 RGB++ 资产购买 BTC闪电网络上的资产,并确保跨链交易的原子性​(不会出现部分资产成功/失败跨链的情况)

2.3.4 Fiber Network在稳定币支付中的角色

  • Fiber Network 用于支持链下的稳定币转账,确保支付的即时性和低成本
  • Fiber Network通过创建链下支付通道,让用户能够在链下进行高频交易,减少对主链的压力
  • Fiber Network 支持跨链原子支付,使得稳定币支付可以安全地跨越多个链

2.4 Stable++

2.4.1 Stable++简介

    • 一个CKB生态的去中心化的超额抵押稳定币协议,允许用户通过抵押BTC或CKB来铸造与美元挂钩的RUSD
    • RUSD 理论上是第一个基于 RGB++ 协议直接在比特币网络上发行的稳定币,利用 CKB 的能力提供更本地化和高效的解决方案(有疑问)
  • 手续费:用户抵押BTC/CKB铸造RUSD和归还RUSD赎回BTC/CKB都需要收取手续费
  • RUSD质押:用户可以通过借出的质押RUSD获得治理代币STB
  • 治理代币STB
  • 用户可以通过质押STB参与抵押物的清算获得收益
      • 用户可以通过质押STB参与手续费分成
  • 跨链互操作性:RUSD可以通过RGB++的同构绑定和Leap功能实现UTXO链账户之间的转账
  • 较低的最低质押比例(MCR):得益于高效清算,降低了协议和稳定性提供者面临潜在损失的风险,从而降低了对于抵押物价值的需求
  • 去中心化:Stable++ 是完全去中心化、独立运行的协议,无需任何实体的控制或许可,用户可自由、安全地与系统交互

2.4.2 清算机制 - 双重保险

  • 概述:清算机制是在抵押品价值下降至某个临界点(最低质押比例*借出RUSD)时触发的保护措施,确保生成的 RUSD 稳定币始终有足够的抵押品支持,系统会自动清算那些抵押不足的用户,以维持整体系统的稳定性
  • 稳定池(Stability Pool)
      • 为解决发生大面积清算时效率低下的问题,Stable++使用稳定池来代替大多数借贷协议通用的拍卖方式进行清算,无需在市场上寻找清算人
      • 自动清算:稳定池需要LPs(用户)预先存入RUSD来作为储备,当清算发生时,稳定池中与坏账等额的RUSD会被直接销毁,于此同时抵押物会直接分配给LPs
      • 通过稳定池自动清算的能力,用直接分配超额抵押物来代替传统拍卖,提升了稳定币在出现大面积清算是的运行效率和稳定性
  • 重分配
      • 概述:当稳定池没有足够的储备来完成坏账清算时,坏账与抵押物将通过充分配机制在借款人之间分配
  • 债务重分配:当清算池无法覆盖全部坏账时,剩余的债务会在所有借款人之间按比例重分配
  • 抵押物分配:所有借款人共同消化坏账的同时,也会获得按比例分配超额抵押无作为奖励
  • 通过让所有借款人共同承担坏账,这个机制确保了系统中没有未覆盖的债务,避免了系统性风险的积累

2.4.3 Stable++在稳定币支付中的角色

  • Stable++协议生成稳定币RUSD,作为支付中使用的主要稳定币
  • Stable++通过创新的清算机制,改进了传统的超额抵押方式,保证了RUSD价格的稳定性
  • Stable++借助RBG++的同构绑定和Leap能力,使RUSD成为第一个真正能够在任何支持 UTXO 的链上自由流通的稳定币,进一步拓宽了稳定币的流通性

2.5 JoyID

2.5.1 JoyID是什么

2.5.2 主要功能

    • 无需密码和助记词:通过生物识别即可访问钱包,实现无私钥登陆
  • 支持BTC和Fiber Network:用户可以更快、更高效地交易,并且可以帮助拓展CKB地应用场景
    • 多链支持:不仅支持 BTC 和 Nervos CKB,JoyID 也支持 ETH 和一系列 EVM 链
  • 通过Passkey获得额外安全性:Passkey通过与硬件设备相关联的secp256r1 签名生成区块链交易所需的secp256k1 签名,因为secp256r1签名不会在交易中暴露只会通过生物信息生成,所以给钱包增加了额外的安全性
  • 安全和易用的结合
    • 安全性:硬钱包 > Passkey钱包 > 软件非托管钱包 > 托管钱包
    • 易用性:Passkey钱包 > 托管钱包 > 软件非托管钱包 > 硬钱包

2.5.3 JoyID在稳定币支付中的角色

  • JoyID作为用户接口,允许用户在CKB网络中进行稳定币支付,管理他们的RUSD资产和支付通道
  • JoyID通过其优秀的能力组合(安全性,易用性,多练支持),可以进一步赋能基于CKB的稳定币支付与其他交易

3. 支付链路

  • 支付发起与接受:用户可以通过JoyID钱包开设支付通道,进行稳定币支付
  • 稳定币发行:RGB++ 和 Stable++ 协同工作,Stable++ 通过超额抵押 BTC 或 CKB 生成 RUSD,然后通过RGB++在链上发行
  • 跨链交易&流通:RGB++ 通过同构绑定和Leap,将 BTC 链(以及其他UTXO链)和 CKB 链无缝连接,允许 RUSD 以及其他资产在多个 UTXO 链上进行跨链操作,扩展了资产流通范围 ,并保证数据同步
  • 交易记录与结算:Fiber Network 与 CKB 的结合,支持了链下支付的快速处理,并且CKB 作为L1链保障了交易的最终结算,确保所有交易状态和资产的安全性
  • 复杂交易的基础:CKB 的虚拟机和 Cell 模型提供智能合约的执行环境,支持复杂的支付条件和自定义合约逻辑,同时也保证了Stable++协议的去中心化
链捕手ChainCatcher提醒,请广大读者理性看待区块链,切实提高风险意识,警惕各类虚拟代币发行与炒作, 站内所有内容仅系市场信息或相关方观点,不构成任何形式投资建议。如发现站内内容含敏感信息,可点击“举报”,我们会及时处理。
banner
ChainCatcher 与创新者共建Web3世界