Binance Square
UTXO
7,816 次浏览
11 个内容
热门
最新内容
LIVE
LIVE
CKB 中文
--
Nervos CKB 投研报告前言 第 4 轮比特币减半周期中,#Ordinals 协议以及类似协议的爆发式采用,让加密行业意识到基于比特币 L1 层发行资产与交易资产对比特币主网共识安全和生态发展的正外部性价值,可谓是比特币生态的 “Uniswap 时刻”。 比特币可编程性的进化与迭代,是比特币社区意见市场治理的结果,而非为了 BTC 的 Holder、为了区块空间的 Builder 等目的论所驱动的。 当下,通过增强比特币的可编程性进而增加比特币主网区块空间的使用率,成为比特币社区共识的新设计空间。 与以太坊和其它高性能公链不同,为了保证 UTXO 集的简洁性和轻量化,比特币可编程性的设计空间是高度受限的,基本约束在如何使用脚本和 OP Code 操作 UTXO。 经典的比特币可编程性方案有状态通道(闪电网络)、客户端验证(RGB)、侧链(Liquid Network、Stacks、RootSock等)、CounterParty、Omni Layer、Taproot Assets、DLC 等等。2023 年以来新兴的比特币可编程性方案有 Ordinals、BRC20、Runes、Atomicals、Stamps 等等。 在铭文第二波浪潮结束之后,新一代比特币可编程性方案等等纷纷涌现,如 #CKB 的 #UTXO #同构绑定 方案、EVM 兼容比特币 L2 方案、DriveChain 方案等等。 与 EVM 兼容比特币 L2 方案相比,CKB(Common Knowledge Base)的比特币可编程性方案,是比特币可编程性现代设计空间中一个原生的、安全的、不引入社会信任假设的解决方案。而与 DriveChain 方案相比,它不要求比特币协议级别的任何变动。 在可预计的未来,比特币可编程性的成长曲线将经历一个加速增长阶段,比特币生态的资产、用户、应用将随之迎来一波玄武纪大爆发,CKB 生态的 UTXO Stack 将为新涌入的比特币开发者提供利用模块化堆栈构建协议的能力。另外,CKB 正在探索将闪电网络与 UTXO Stack 集成,利用比特币的原生可编程性实现新协议之间的互操作性。 比特币可编程性的命名空间 区块链是创造信任的机器,比特币主网是其中的 0 号机。像西方所有哲学都是对柏拉图的注脚一样,加密世界里的一切事物(资产、叙事、区块链网络、协议、DAO 等等)都是比特币的派生物和衍生品。 在比特币 Maxi 与扩容主义者的协同进化过程中,从比特币主网是否支持图灵完备之争到隔离见证方案与大区块扩容方案之争,比特币在不断分叉。这既在创生新的加密项目和加密社区共识,也在强化和巩固比特币自身的社区共识,这是一个在他者化的同时完成自我确认的过程。 由于中本聪的神秘消失,比特币社区治理并不存在以太坊那样的 “开明君主专制” 的治理结构,而是由矿工、开发者、社区和市场进行开放博弈达到均衡的治理模型。这赋予比特币的社区共识一旦形成、异常稳固的特性。 目前比特币社区共识的特性有:共识不是命令和控制、信任最小化、去中心化、抗审查性、伪匿名性、开源、开放协作、免许可、法律中立、同质化、向前兼容性、资源使用最小化、验证 > 计算、收敛、交易不可变性、抗 DoS 攻击、避免争抢进入、稳健性、激励一致、固化、不该篡改的共识、冲突性原则、协同推进等。[1] 目前的比特币主网形态,可以看作是以上比特币社区共识特性的实例化结果。而比特币可编程性的设计空间,也是由比特币社区共识特性所定义的。 比特币可编程性的经典设计空间 在其他公链尝试模块化、并行化等等方案探索区块链不可能三角解决方案的设计空间时,比特币协议的设计空间一直聚焦在脚本、OP Code 和 UTXO。 典型的两个实例,分别是 2017 年以来比特币主网的两次重大升级:Segwit 硬分叉和 Taproot 软分叉。 2017 年 8 月的 Segwit 硬分叉,在 1M 的主区块外新增 3M 的区块专门保存签名(见证,Witness),并在计算矿工费时将签名数据的权重设为主区块数据的 1/4,以保持花费一个 UTXO 输出和创建一个 UTXO 输出成本的一致性,防止出现滥用 UTXO 找零增加 UTXO 集膨胀速度的情况。 2021 年 11 月的 Taproot 软分叉,则通过引入 Schnorr 多重签名方案,节省 UTXO 的验证时间和多重签名所占的区块空间。 1 个 UTXO 的键值组(图源:learnmeabitcoin.com) UTXO(未花费的交易输出)是比特币主网的基础数据结构,它具有原子性、非同质性、链式耦合的特性。比特币主网上的每一笔交易,都会消耗掉 1 笔 UTXO 作为输入,同时创建整数 n 个新的 UTXO 输出。通俗点理解,UTXO 可以视作运行在链上的美元、欧元等纸币,它可以花费、找零、拆分、组合等等,只不过它的最小原子单位是聪(sats)。1 笔 UTXO 就代表某个特定时间的 1 个最新状态。UTXO 集,即代表某个特定时间比特币主网的最新状态。 通过保持比特币 UTXO 集的简洁性、轻量化和易验证性,比特币主网的状态膨胀速度成功稳定在与硬件摩尔定律相适应的水平,从而保障比特币网主网全节点的可参与性和交易验证的鲁棒性。 与之相应的,比特币可编程性的设计空间同样受到比特币社区共识特性的约束。例如,为了防范潜在的安全风险 ,中本聪在 2010 年 8 月决定将 OP-CAT 操作码移除,而该操作码是实现比特币图灵完备级别可编程性的关键逻辑。 比特币可编程性的实现路径,没有采用以太坊、Solana 那样的链上虚拟机(VM)方案,而是选择利用脚本和操作码(OP Code)对 UXTO、交易的输入字段、输出字段和见证数据(Witness)等进行编程操作。 比特币可编程性的主要工具箱有:多重签名、时间锁、哈希锁、流程控制(OP_IF,OP_ELIF)。[2] 经典设计空间下,比特币可编程性是非常有限的,仅仅支持几种验证程序,而不支持链上状态存储和链上计算,而链上状态存储和链上计算恰恰是实现图灵完备级可编程性的核心功能组件。 比特币可编程性的文艺复兴 但比特币可编程性的设计空间,并不是一个固定不变的状态。相反,它更接近一种随着时间变化的动态光谱。 与外界对比特币主网开发陷入停滞状态的刻板印象不同,在各种共识向量局限设计空间的情况下,比特币主网新脚本和新操作码的开发、部署、采用、推广始终处在进行时态,并在某些时间甚至引发过加密社区的分叉战争(如 Segwit 硬分叉)。 以比特币主网脚本类型采用度变迁为例,我们可以清晰地感知到其中的变化。比特币主网输出类型使用的脚本,我们可以划分为3大类: 原初脚本:pubkey、pubkeyhash增强脚本:multisig、scripthash见证脚本:witness_v0_keyhash、witness_v0_scripthash、witness_v1_taproot 比特币主网全历史输出类型;来源:Dune 从比特币主网全历史输出类型的变化趋势图中,我们观察一个基本的事实:比特币主网可编程性增强是长期历史趋势,增强脚本在吞噬原初脚本的份额,而见证脚本在吞噬增强脚本的份额。基于 Segweit 增强脚本和 Taproot 见证脚本的 Ordinals 协议所开启比特币 L1 资产发行浪潮,既是比特币主网可编程性历史趋势的延续,也是比特币主网可编程性的新阶段。 比特币主网操作码也有着与比特币主网脚本类似的演进过程。 例如 Ordinals 协议,就是通过结合比特币主网脚本 taproot script-path spend 和操作码(OP_FALSE、OP_IF、OP_PUSH、OP_ENDIF)实现其功能设计。 Ordinals 协议的 1 次铭刻实例 在 Ordinals 协议正式诞生之前,比特币可编程性的经典方案,主要有状态通道(闪电网络)、客户端验证(RGB)、侧链(Liquid Network、Stacks、RootSock等)、CounterParty、Omni Layer、DLC 等等。 Ordinals 协议将 UXTO 的最小原子化单位聪(Satoshi)序列化,再将数据内容铭刻在 UTXO 的 Witness 字段,并与序列化后的某一特定聪相关联,然后由链下索引器负责索引和执行这些数据状态的可编程性操作。这种新的比特币可编程性范式,被形象地比喻为 “黄金上雕花”。 Ordinals 协议的新范式,激发了更大范围的加密社区使用比特币主网区块空间发行、铸造和交易 NFT 收藏品和 MeMe 类型 Token(可统称为铭文)的热情,其中有很多人在人生中第一次拥有自己的比特币地址。 但 Ordinals 协议的可编程性,继承了比特币的可编程性的有限性,仅支持 Deploy、Mint 和 Transfer 三种功能方法。这让 Ordinals 协议以及它的跟随者 BRC20、Runes、Atomicals、Stamps 等等协议,只适用于资产发行的应用场景。而对需要状态计算和状态存储的交易和借贷等 DeFi 应用场景的支持,则比较乏力。 Ordinals 协议 3 种类型的 TX 数量(图源:Dune) 流动性是资产的生命力来源。由于 Ordinals 类型比特币可编程性协议的天然特性,导致铭文资产重发行而轻流动性提供,进而影响到一个铭文资产全生命周期产生的价值。 而且 Ordinals、BRC20 协议还有滥用见证数据空间的嫌疑,并在客观上造成比特币主网状态爆炸。 比特币区块空间大小变化(图源:Dune) 作为参照系,以太坊主网 Gas 费的主要来源为 DEX 交易 Gas 费、L2 的数据可用性费和稳定币转账 Gas 费等。与以太坊主网相比,比特币主网的收入类型单一、周期性强、波动率大。 比特币主网的可编程性能力,尚不能满足比特币主网区块空间供给侧的需求。而达到以太坊主网稳定且可持续的区块空间收入状态,需要比特币生态原生的 DEX、稳定币和 L2。而实现这些协议和应用的前提条件,是比特币可编程协议需要提供图灵完备的编程能力。 因此,如何原生地实现比特币图灵完备的可编程性,同时约束对比特币主网状态规模的负面影响,成为比特币生态的当前一个显学。 比特币可编程性的CKB方案 目前实现比特币原生的图灵完备的可编程性的方案要有:BitVM、RGB、CKB、EVM 兼容 Rollup L2、 DriveChain 等等。 BitVM 使用比特币的一组 OP Code 构建与非逻辑门,再通过与非逻辑门构建其他基础逻辑门,最终由这些基础逻辑门电路构建出一个比特币原生的 VM。这个原理,有点类似著名科幻小说《三体》的秦王阵列图。Netflix 改编的同名电视剧里有具体的场景呈现。BitVM 方案的论文已经完全开源,备受加密社区的期待。但它的工程实现难度非常大,遇到链下数据管理成本、参与方数量限制、挑战-响应交互次数、哈希函数复杂度等等问题,短期内很难落地。 RGB 协议使用客户端验证和一次性密封技术来实现图灵完备的可编程性,核心设计思想是将智能合约的状态和逻辑存储在比特币交易(Transaction)的输出(Output)上,将智能合约代码的维护和数据存储放在链下执行,由比特币主网作为最终状态的承诺层。 EVM 兼容 Rollup L2,是快速复用成熟的 Rollup L2 堆栈构建比特币 L2 的方案。但鉴于比特币主网目前无法支持欺诈证明/有效性证明,Rollup L2 需要引入社会信任假设(多签)。 DriveChain 是一种侧链扩展方案,基本设计思想是将比特币作为区块链的底层,通过锁定比特币来创建侧链,从而实现比特币和侧链之间的双向互操作性。DriveChain 工程的实现,需要对比特币进行协议级别改动,即将开发团队提议的 BIP300、BIP301 部署到主网。 以上比特币可编程性方案要么工程难度极大短期难以落地,要么引入过多社会信任假设,要么需要对比特币进行协议级别改动。 比特币 L1 资产协议:RGB++ 针对以上比特币可编程性协议存在的不足和问题,CKB 团队给出了一个相对均衡的解决方案。该解决方案由比特币 L1 资产协议 RGB++、比特币 L2 Raas 服务商 UTXO Stack 和与闪电网络集成的互操作协议组成的。 UXTO 原生的原语:同构绑定 RGB++,是基于 RGB 设计思想开发的比特币 L1 资产发行协议。RGB++ 的工程实现,同时继承了 CKB 和 RBG 的技术原语。它有使用 RGB 的 “一次性密封” 和客户端验证技术,同时通过同构绑定将比特币 UTXO 映射到 CKB 主网的 Cell(扩展版的 UTXO),并使用 CKB 和比特币链上的脚本约束来验证状态计算的正确性和所有权变更的有效性。 换言之,RGB++ 是用 CKB 链上的 Cell 表达 RGB 资产的所有权关系。它把原本存放在 RGB 客户端本地的资产数据,挪到 CKB 链上用 Cell 的形式表达出来,与比特币 UTXO 之间建立映射关系,让 CKB 充当 RGB 资产的公开数据库与链下预结算层,替代 RGB 客户端,实现更可靠的数据托管与 RGB 合约交互 RGB++ 的同构绑定(图源:RGB++ Protocol Light Paper ) Cell 是 CKB 的基本数据存储单元,可以包含各种数据类型,如 CKBytes、代币、TypeScript 代码或序列化数据(如 JSON 字符串)。每个 Cell 都包含一个小程序,称为 Lock Script,它定义了 Cell 的所有者。Lock Script 既支持比特币主网的脚本,如多签、哈希锁、时间锁等,也允许包含一个 Type Script 来执行特定的规则,以控制其使用。这使开发人员能够根据不同的用例定制智能合约,例如发行 NFT,空投代币、AMM Swap 等等。 RGB 协议通过使用 OP RETURN 操作码将链下交易的状态根附加到一个 UTXO 的 output,将该 UTXO 作为状态信息的容器。然后,RGB++ 将这个由 RGB 构建的状态信息容器映射到 CKB 的 Cell 上,将状态信息保存在 Cell 的 type 和 data 中,将这个容器 UTXO 作为 Cell 状态所有者。 RGB++ 交易生命周期(图源:RGB++ Protocol Light Paper ) 如上图所示,一个完整的 RGB++ 交易生命周期如下: 链下计算。当发起 1 笔同构绑定的 Tx 时,要首先选择比特币主网的一个新的 UTXO btc_utxo#2 作为一次性密封的容器,再在链下对原 Cell 同构绑定的 UTXO btc_utxo#1、新 Cell 同构绑定的 btc_utxo#2、以原 Cell 作为输入新 Cel 作为输出的 CKB TX 进行哈希计算生成一笔承诺。提交比特币交易。RGB++ 发起一笔比特币主网的 Tx,将与原 Cell 同构绑定的 btc_utxo#1 作为输入,使用 OP RETURN 将上一步生成的那笔承诺作为输出。提交 CKB 交易。在 CKB 主网执行之前链下计算生成的 CKB Tx。链上验证。CKB 主网运行一个比特币主网轻客户端验证整个系统的状态变更。这点与 RGB 非常不同,RGB 的状态变更验证采用的 P2P 机制,需要 Tx 的发起方与接收方同时在线且只对相关的 TX 图谱进行交互式验证。 基于以上同构绑定逻辑实现的 RGB++,与 RGB 协议相比,在让渡部分隐私性的同时,获得了一些新特性:区块链增强的客户端验证、交易折叠、无主合约的共享状态和非交互式转账。 区块链增强的客户端验证。RGB++ 允许用户选择采用PoW维持共识安全 CKB 验证状态计算和 URXO-Cell 的所有权变更。交易折叠。RGB++ 支持将多笔 Cell 映射到单笔 UTXO 上,从而实现 RGB++ 的弹性扩展。无主智能合约和共享状态。UTXO 状态数据结构实现图灵完备智能合约的一大困难,就是无主智能合约和共享状态。RGB++ 可以利用 CKB 的全局状态 Cell 和意图 Cell 解决这一问题。非交互式转账。RGB++ 将 RGB 的客户端验证流程变成可选项,不再强制要求交互式转账。用户选择 CKB 验证状态计算和所有权变更的话,交易的交互体验与比特币主网保持一致。 此外,RGB++还继承了 CKB 主网 Cell 的状态空间私有化特性,RGB++ 每笔 TX 除了支付使用比特币主网区块空间的矿工费之外,还需要额外支付租赁 Cell 状态空间的费用(这部分费用在 Cell 消费之后原路返回)。Cell 的状态空间私有化,是 CKB 发明的一种应对区块链主网状态爆炸的防御机制,Cell 状态空间的租赁者在使用期间需要持续的付费(以被 CKB 流通代币通胀的形式稀释价值)。这使得 RGB++ 协议是一种负责任的比特币主网可编程性扩展协议,在一定程度上能够限制对比特币主网区块空间的滥用现象。 去信任的 L1<>L2 互操作:Leap RGB++ 的同构绑定,是一种共时性的原子实现逻辑,要么同时发生,要么同时翻转,不存中间状态。所有的 RGB++ 交易都会在 BTC 和 CKB 链上同步各出现一笔交易。前者与 RGB 协议的交易兼容,后者则取代了客户端验证的流程,用户只需要检查 CKB 上的相关交易即可验证这笔 RGB++ 交易的状态计算是否正确。但用户也可以不使用 CKB 链上的交易作为验证依据,利用 UTXO 的局部相关 Tx 图谱,独立地对 RGB++ 交易进行验证(交易折叠等部分功能仍然需要依赖 CKB 的区块头哈希做防双花验证)。 因此,RGB++ 与 CKB 主网之间的资产跨链,并不依赖引入额外的社会信任假设,如跨链桥的中继层、EVM 兼容 Rollup 的中心化多签金库等等。RGB++ 资产可以原生的、去信任的从比特币主网转移到 CKB 主网,或者从 CKB 主网转移到比特币主网。CKB 将这个跨链工作流称之为 Leap。 RGB++ 与 CKB 之间是松耦合的关系。除了支持比特币 L1 层的资产(不限于 RGB++ 协议原生资产,包括采用 Runes、Atomicals、Taproot Assets 等协议发行的资产)Leap 到 CKB 之外,RGB++ 协议还支持 Leap 到 Cardano 等其他 UTXO 图灵完备链。同时,RGB++ 还支持比特币 L2 资产 Leap 到比特币主网。 RGB++ 的扩展功能和应用实例 RGB++ 协议原生支持发行同质化代币和 NFT。 RGB++ 的同质化代币标准是 xUDT ,NFT 标准是 Spore 等。 xUDT 标准支持多种同质化代币发行方式,包括但不限于集中分发、空投、订阅等。代币总量还可以在无上限和预设上限之间进行选择。对于预设上限的代币,可以使用状态共享方案来验证每次发行的总数是否小于或等于预设上限。 NFT 标准中的 Spore,会在链上存储所有元数据,实现了 100% 的数据可用性安全。Spore 协议发行的资产 DOB(Digital Object,数码物),类似于 Ordinals NFT,但是有更加丰富的特性和玩法。 作为客户端验证协议,RGB 协议天然支持状态通道和闪电网络,但受限于比特币的脚本计算能力,把 BTC 之外的资产去信任引入进闪电网络非常困难。但 RGB++ 协议可以利用 CKB 的图灵完备脚本系统,实现基于 CKB 的 RGB++ 资产的状态通道和闪电网络。 有了以上标准和功能,RGB++ 协议的用例不像其他比特币主网可编程协议那样局限在简单的资产发行场景,而支持资产交易、资产借贷、CDP 稳定币等复杂应用场景。例如,RGB++ 同构绑定逻辑结合比特币主网原生的 PSBT 脚本,可以实现一种订单簿网格形态的 DEX。 比特币 L2 RaaS 服务商:UTXO Stack UTXO 同构比特币 L2 vs EVM 兼容比特币 Rollup L2 在图灵完备的比特币可编程性实现方案市场竞争中,DriveChain、恢复OPCAT 操作码等方案由于需要比特币协议层的变更,需要的时间和成本具有非常大的不确定性和不可预测性, 现实主义路线中的 UTXO 同构比特币 L2 和 EVM 兼容比特币 Rollup L2 更受到开发者和资本的认可。UTXO 同构比特币 L2,以 CKB 为代表。EVM 兼容比特币 Rollup L2,以 MerlinChain 和 BOB 为代表。 实事求是地讲,比特币 L1 资产发行协议在比特币社区中刚刚开始形成局部共识,比特币 L2 的社区共识度则处在更早期。但在这个前沿领域,《比特币杂志》和 Pantera 已经尝试通过借鉴以太坊 L2 的概念结构为比特币 L2 设定定义范围。 在他们眼中,比特币 L2 应该具有以下 3 点特性: 使用比特币作为原生资产。比特币L2必须将比特币作为其主要的结算资产。使用比特币作为结算机制来强制执行交易。比特币L2的用户必须能够强制返回其在一层资产控制权(可信或不可信)。展示对比特币的功能依赖性。如果比特币主网失效但比特币L2系统仍然可保持运行,那么该系统不是比特币的L2。[4] 换言之,他们认为的比特币 L2 应该具有基于比特币主网的数据可用性验证、逃生舱机制、BTC 作为比特币 L2 Gas 代币等。这样看来,在他们潜意识中,是将 EVM 兼容 L2 范式作为比特币 L2 的标准模板。 但比特币主网薄弱的状态计算和验证能力在短期内无法实现特性 1 和特性 2,在这种情况情况下 EVM 兼容 L2 属于完全依赖社会信任假设的链下扩展方案,尽管它们在白皮书写着未来集成 BitVM 进行数据可用性验证和与比特币主网联合挖矿增强安全性。 当然,这并不意味着这些 EVM 兼容 Rollup L2 是假的比特币 L2,而是它们没有在安全性、去信任性和可扩展性之间做到很好的平衡。而且比特币生态引入以太坊的图灵完备解决方案,易被比特币 Maxi 视作对扩容主义路线的绥靖。 因此,UTXO 同构比特币 L2 天然在正统性和比特币社区共识程度上优于 EVM 兼容 Rollup L2。 UTXO Stack 的特性:分形比特币主网 如果说以太坊 L2 是以太坊的分形,那么比特币 L2 理应是比特币的分形。 CKB 生态的 UTXO Stack 为开发者一键启动 UTXO 比特币 L2,并原生集成 RGB++ 协议能力。这使得比特币主网和使用 UTXO Stack 开发的 UTXO 同构比特币 L2 之间,可以通过 Leap 机制实现无缝互操作。UTXO Stack 支持质押 BTC、CKB 以及 BTC L1 资产来保障 UTXO 同构比特币 L2 的安全。 UTXO Stack 架构(图源:Medium) UTXO Stack 目前支持 RGB++ 资产在比特币闪电网络——CKB 闪电网络——UTXO Stack 平行 L2 们之间自由流转和互操作。除此之外,UTXO Stack 还支持 Runes、Atomicals、Taproot Assets、Stamps 等基于 UTXO 的比特币 L1 可编程性协议资产在 UTXO Stack 平行 L2 们——CKB 闪电网络——比特币闪电网络之间自由流转和互操作。 UTXO Stack 将模块化范式引入到比特币 L2 的构建领域中,用同构绑定巧妙绕过了比特币主网状态计算和数据可用性验证问题。在这个模块化堆栈中,比特币的角色是共识层和结算层,CKB 的角色是数据可用性层,而 UTXO Stack 平行 L2 们的角色是执行层。 比特币可编程性的成长曲线与CKB的未来 比特币可编程性的成长曲线与 CKB 的未来 事实上,比特币的数字黄金叙事与比特币的可编程叙事之间内在的紧张关系,比特币社区中一些 OG 将 23 年以来兴起的比特币 L1 可编程协议视作对比特币主网的新一轮粉尘攻击热潮。某种程度上,比特币核心开发者 Luke 与 BRC20 粉丝之间的口水战,是继支持图灵完备与否之争、大小区块之争之后,比特币 Maxi 与扩容主义者的第三次世界大战。 但其实存在另一种视角,将比特币视作数字黄金的 APP Chain。在这种视角下,正是数字黄金的底层去中心化账本这一定位,形塑了如今的比特币主网 UTXO 集形态和可编程协议特性。但如果我没记错的话,中本聪愿景是想让比特币成为一种 P2P 电子货币。数字黄金对可编程性的需求是保险箱和金库,货币对可编程性的需求是中央银行-商业银行的流通网络。所以说比特币的可编程性增强协议并不是离经叛道的行为,而是回归中本聪愿景。 比特币是第一个 AppChain (图源:@tokenterminal) 我们借鉴 Gartner Hype Cycle 的研究方法,可以将比特币可编程性方案们划分为 5 个阶段 技术萌芽期:DriveChain、UTXO Stack、BitVM 等期望膨胀期:Runes、RGB++、EVM Rollup 比特币 L2 等泡沫破灭期:BRC20、Atomicals 等稳步复苏期:RGB、闪电网络、比特币侧链等成熟高原期:比特币脚本、Taproot 脚本、哈希时间锁等 CKB 的未来:比特币生态的 OP Stack+EigenLayer 无论是 EVM 兼容比特币 Rollup L2,还是 UTXO 同构比特币 L2,亦或者是 DriveChain 等新范式,图灵完备可编程性的诸种实现方案,最终都指向比特币主网作为共识层和结算层。 正如趋同进化在自然界一再发生那样,可以预期比特币生态图灵完备可编程性的发展趋势将在某些方面与以太坊生态呈现一定程度的一致性。但这个一致性,又不会是简单复刻以太坊的技术堆栈到比特币生态,而是利用比特币原生的技术栈(以 UTXO 为基础的可编程性)实现相似的生态结构。 CKB 的 UTXO Stack 与 Optimism 的 OP Stack 的定位非常相似,OP Stack 是在执行层保持与以太坊主网的强等效性和一致性,UTXO Stack 则是在执行层保持与比特币主网的强等效性和一致性。同时,UTXO Stack 与 OP Stack 结构一样,都是平行结构。 CKB 生态现状(图源:CKB 社区) 未来 UTXO Stack 将推出共享序列器、共享安全性、共享流动性、共享验证集等 RaaS 服务,进一步降低开发者启动 UTXO 同构比特币 L2 的成本和难度。目前已经有一大批去中心化稳定币协议、AMM DEX、 借贷协议、自主世界等项目,计划采用 UTXO Stack 构建 UTXO 同构比特币 L2 作为其底层共识基础设施。 与其他比特币安全性抽象协议不同,CKB 的共识机制是与比特币主网一致的 PoW 共识机制,由机器算力维持共识账本的一致性。但 CKB 的代币经济学与比特币存在一些区别。为保持区块空间生产和消耗行为激励的一致性,比特币选择引入权重和 vByte 机制计算状态空间使用费,CKB 则选择将状态空间私有化。 CKB 的代币经济学由基础发行和二级发行两部分组成。基础发行的所有 CKB 完全奖励给矿工,二级发行的 CKB 的目的收取状态租金,二级发行的具体分配比例取决于当前流通的 CKB 在网络中的使用方式。 举个例子,假设所有流通的 CKB 中,有 50% 用于存储状态,30% 锁定在 NervosDAO 中,20% 完全保持的流动性。那么,二级发行的 50% (即存储状态的租金)将分配给矿工,30% 将分配给 NervosDAO 储户,剩余的 20% 将分配给国库基金。 这种代币经济模型能够约束全局状态的增长,协调不同网络参与者(包括用户、矿工、开发者和代币持有者)的利益,创建一个对每个人都有利的激励结构,这与市场上其他 L1 的情况有所不同。 此外,CKB 允许单个 Cell 占用最大 1000 字节的状态空间,这赋予了 CKB 上的 NFT 资产一些其他区块链同类资产不具有奇异特性,比如原生携带 Gas 费、状态空间的可编程性等等。这些奇异特性,使得 UTXO Stack 非常适合作为自主世界项目的基础设施来构建数字物理现实。 UTXO Stack 允许比特币 L2 开发者使用 BTC、CKB 以及其他比特币 L1 资产质押参与其网络共识。 总结 比特币发展到图灵完备的可编程方案阶段,是不可避免的。但图灵完备的可编程性,不会发生在比特币主网,而是发生在链下(RGB、BitVM)或者比特币 L2 上(CKB、EVM Rollup、DriveChain)。 按照历史经验,这些协议上将有 1 条协议最终发展成为垄断性的标准协议。 决定比特币可编程性协议竞争力的关键因子有二:1. 不依赖额外社会信任假设的实现 BTC 在 L1<>L2 之间的自由流转;2. 吸引足够规模的开发者、资金和用户进入其 L2 生态。 CKB 作为比特币可编程性解决方案,利用同构绑定+CKB 网络替代客户端验证的解决方案,实现了比特币 L1 层资产在 L1<>L2 之间的自由流转,且不依赖额外社会信任假设。而且受益处于 CKB Cell 的状态空间私有化特性,RBG++ 并没有像其他比特币可编程性协议那样给比特币主网带来状态爆炸的压力。 近期,通过 RGB++ 首批资产发行初步完成了生态的热启动,为 CKB 生态成功 onboard 了约 15 万新用户和一批新开发者。如比特币 L1 可编程性协议 Stamps 生态的一站式解决方案 OpenStamp,已选择使用 UTXO Stack 构建服务于 Stamps 生态的 UTXO 同构比特币 L2。 下一阶段,CKB 将重点放在生态应用建设、实现 BTC 在 L1<>L2 之间的自由流转、集成闪电网络等方面,力争成为未来的比特币的可编程性层。 文章中提到的部分链接: [1] https://nakamoto.com/what-are-the-key-properties-of-bitcoin/ [2] https://www.btcstudy.org/2022/09/07/on-the-programmability-of-bitcoin-protocol/#一-引言 [3] https://medium.com/@ABCDE.com/cn-abcde-我们为什么要投资utxo-stack-91c9d62fa74e [4] https://bitcoinmagazine.com/technical/layer-2-is-not-a-magic-incantation 

Nervos CKB 投研报告

前言

第 4 轮比特币减半周期中,#Ordinals 协议以及类似协议的爆发式采用,让加密行业意识到基于比特币 L1 层发行资产与交易资产对比特币主网共识安全和生态发展的正外部性价值,可谓是比特币生态的 “Uniswap 时刻”。
比特币可编程性的进化与迭代,是比特币社区意见市场治理的结果,而非为了 BTC 的 Holder、为了区块空间的 Builder 等目的论所驱动的。
当下,通过增强比特币的可编程性进而增加比特币主网区块空间的使用率,成为比特币社区共识的新设计空间。
与以太坊和其它高性能公链不同,为了保证 UTXO 集的简洁性和轻量化,比特币可编程性的设计空间是高度受限的,基本约束在如何使用脚本和 OP Code 操作 UTXO。
经典的比特币可编程性方案有状态通道(闪电网络)、客户端验证(RGB)、侧链(Liquid Network、Stacks、RootSock等)、CounterParty、Omni Layer、Taproot Assets、DLC 等等。2023 年以来新兴的比特币可编程性方案有 Ordinals、BRC20、Runes、Atomicals、Stamps 等等。
在铭文第二波浪潮结束之后,新一代比特币可编程性方案等等纷纷涌现,如 #CKB#UTXO #同构绑定 方案、EVM 兼容比特币 L2 方案、DriveChain 方案等等。
与 EVM 兼容比特币 L2 方案相比,CKB(Common Knowledge Base)的比特币可编程性方案,是比特币可编程性现代设计空间中一个原生的、安全的、不引入社会信任假设的解决方案。而与 DriveChain 方案相比,它不要求比特币协议级别的任何变动。
在可预计的未来,比特币可编程性的成长曲线将经历一个加速增长阶段,比特币生态的资产、用户、应用将随之迎来一波玄武纪大爆发,CKB 生态的 UTXO Stack 将为新涌入的比特币开发者提供利用模块化堆栈构建协议的能力。另外,CKB 正在探索将闪电网络与 UTXO Stack 集成,利用比特币的原生可编程性实现新协议之间的互操作性。

比特币可编程性的命名空间

区块链是创造信任的机器,比特币主网是其中的 0 号机。像西方所有哲学都是对柏拉图的注脚一样,加密世界里的一切事物(资产、叙事、区块链网络、协议、DAO 等等)都是比特币的派生物和衍生品。
在比特币 Maxi 与扩容主义者的协同进化过程中,从比特币主网是否支持图灵完备之争到隔离见证方案与大区块扩容方案之争,比特币在不断分叉。这既在创生新的加密项目和加密社区共识,也在强化和巩固比特币自身的社区共识,这是一个在他者化的同时完成自我确认的过程。
由于中本聪的神秘消失,比特币社区治理并不存在以太坊那样的 “开明君主专制” 的治理结构,而是由矿工、开发者、社区和市场进行开放博弈达到均衡的治理模型。这赋予比特币的社区共识一旦形成、异常稳固的特性。
目前比特币社区共识的特性有:共识不是命令和控制、信任最小化、去中心化、抗审查性、伪匿名性、开源、开放协作、免许可、法律中立、同质化、向前兼容性、资源使用最小化、验证 > 计算、收敛、交易不可变性、抗 DoS 攻击、避免争抢进入、稳健性、激励一致、固化、不该篡改的共识、冲突性原则、协同推进等。[1]
目前的比特币主网形态,可以看作是以上比特币社区共识特性的实例化结果。而比特币可编程性的设计空间,也是由比特币社区共识特性所定义的。
比特币可编程性的经典设计空间

在其他公链尝试模块化、并行化等等方案探索区块链不可能三角解决方案的设计空间时,比特币协议的设计空间一直聚焦在脚本、OP Code 和 UTXO。
典型的两个实例,分别是 2017 年以来比特币主网的两次重大升级:Segwit 硬分叉和 Taproot 软分叉。
2017 年 8 月的 Segwit 硬分叉,在 1M 的主区块外新增 3M 的区块专门保存签名(见证,Witness),并在计算矿工费时将签名数据的权重设为主区块数据的 1/4,以保持花费一个 UTXO 输出和创建一个 UTXO 输出成本的一致性,防止出现滥用 UTXO 找零增加 UTXO 集膨胀速度的情况。
2021 年 11 月的 Taproot 软分叉,则通过引入 Schnorr 多重签名方案,节省 UTXO 的验证时间和多重签名所占的区块空间。

1 个 UTXO 的键值组(图源:learnmeabitcoin.com)
UTXO(未花费的交易输出)是比特币主网的基础数据结构,它具有原子性、非同质性、链式耦合的特性。比特币主网上的每一笔交易,都会消耗掉 1 笔 UTXO 作为输入,同时创建整数 n 个新的 UTXO 输出。通俗点理解,UTXO 可以视作运行在链上的美元、欧元等纸币,它可以花费、找零、拆分、组合等等,只不过它的最小原子单位是聪(sats)。1 笔 UTXO 就代表某个特定时间的 1 个最新状态。UTXO 集,即代表某个特定时间比特币主网的最新状态。
通过保持比特币 UTXO 集的简洁性、轻量化和易验证性,比特币主网的状态膨胀速度成功稳定在与硬件摩尔定律相适应的水平,从而保障比特币网主网全节点的可参与性和交易验证的鲁棒性。
与之相应的,比特币可编程性的设计空间同样受到比特币社区共识特性的约束。例如,为了防范潜在的安全风险 ,中本聪在 2010 年 8 月决定将 OP-CAT 操作码移除,而该操作码是实现比特币图灵完备级别可编程性的关键逻辑。
比特币可编程性的实现路径,没有采用以太坊、Solana 那样的链上虚拟机(VM)方案,而是选择利用脚本和操作码(OP Code)对 UXTO、交易的输入字段、输出字段和见证数据(Witness)等进行编程操作。
比特币可编程性的主要工具箱有:多重签名、时间锁、哈希锁、流程控制(OP_IF,OP_ELIF)。[2]
经典设计空间下,比特币可编程性是非常有限的,仅仅支持几种验证程序,而不支持链上状态存储和链上计算,而链上状态存储和链上计算恰恰是实现图灵完备级可编程性的核心功能组件。

比特币可编程性的文艺复兴
但比特币可编程性的设计空间,并不是一个固定不变的状态。相反,它更接近一种随着时间变化的动态光谱。
与外界对比特币主网开发陷入停滞状态的刻板印象不同,在各种共识向量局限设计空间的情况下,比特币主网新脚本和新操作码的开发、部署、采用、推广始终处在进行时态,并在某些时间甚至引发过加密社区的分叉战争(如 Segwit 硬分叉)。
以比特币主网脚本类型采用度变迁为例,我们可以清晰地感知到其中的变化。比特币主网输出类型使用的脚本,我们可以划分为3大类:
原初脚本:pubkey、pubkeyhash增强脚本:multisig、scripthash见证脚本:witness_v0_keyhash、witness_v0_scripthash、witness_v1_taproot

比特币主网全历史输出类型;来源:Dune
从比特币主网全历史输出类型的变化趋势图中,我们观察一个基本的事实:比特币主网可编程性增强是长期历史趋势,增强脚本在吞噬原初脚本的份额,而见证脚本在吞噬增强脚本的份额。基于 Segweit 增强脚本和 Taproot 见证脚本的 Ordinals 协议所开启比特币 L1 资产发行浪潮,既是比特币主网可编程性历史趋势的延续,也是比特币主网可编程性的新阶段。
比特币主网操作码也有着与比特币主网脚本类似的演进过程。
例如 Ordinals 协议,就是通过结合比特币主网脚本 taproot script-path spend 和操作码(OP_FALSE、OP_IF、OP_PUSH、OP_ENDIF)实现其功能设计。

Ordinals 协议的 1 次铭刻实例

在 Ordinals 协议正式诞生之前,比特币可编程性的经典方案,主要有状态通道(闪电网络)、客户端验证(RGB)、侧链(Liquid Network、Stacks、RootSock等)、CounterParty、Omni Layer、DLC 等等。
Ordinals 协议将 UXTO 的最小原子化单位聪(Satoshi)序列化,再将数据内容铭刻在 UTXO 的 Witness 字段,并与序列化后的某一特定聪相关联,然后由链下索引器负责索引和执行这些数据状态的可编程性操作。这种新的比特币可编程性范式,被形象地比喻为 “黄金上雕花”。
Ordinals 协议的新范式,激发了更大范围的加密社区使用比特币主网区块空间发行、铸造和交易 NFT 收藏品和 MeMe 类型 Token(可统称为铭文)的热情,其中有很多人在人生中第一次拥有自己的比特币地址。
但 Ordinals 协议的可编程性,继承了比特币的可编程性的有限性,仅支持 Deploy、Mint 和 Transfer 三种功能方法。这让 Ordinals 协议以及它的跟随者 BRC20、Runes、Atomicals、Stamps 等等协议,只适用于资产发行的应用场景。而对需要状态计算和状态存储的交易和借贷等 DeFi 应用场景的支持,则比较乏力。

Ordinals 协议 3 种类型的 TX 数量(图源:Dune)
流动性是资产的生命力来源。由于 Ordinals 类型比特币可编程性协议的天然特性,导致铭文资产重发行而轻流动性提供,进而影响到一个铭文资产全生命周期产生的价值。
而且 Ordinals、BRC20 协议还有滥用见证数据空间的嫌疑,并在客观上造成比特币主网状态爆炸。

比特币区块空间大小变化(图源:Dune)
作为参照系,以太坊主网 Gas 费的主要来源为 DEX 交易 Gas 费、L2 的数据可用性费和稳定币转账 Gas 费等。与以太坊主网相比,比特币主网的收入类型单一、周期性强、波动率大。
比特币主网的可编程性能力,尚不能满足比特币主网区块空间供给侧的需求。而达到以太坊主网稳定且可持续的区块空间收入状态,需要比特币生态原生的 DEX、稳定币和 L2。而实现这些协议和应用的前提条件,是比特币可编程协议需要提供图灵完备的编程能力。
因此,如何原生地实现比特币图灵完备的可编程性,同时约束对比特币主网状态规模的负面影响,成为比特币生态的当前一个显学。
比特币可编程性的CKB方案
目前实现比特币原生的图灵完备的可编程性的方案要有:BitVM、RGB、CKB、EVM 兼容 Rollup L2、 DriveChain 等等。
BitVM 使用比特币的一组 OP Code 构建与非逻辑门,再通过与非逻辑门构建其他基础逻辑门,最终由这些基础逻辑门电路构建出一个比特币原生的 VM。这个原理,有点类似著名科幻小说《三体》的秦王阵列图。Netflix 改编的同名电视剧里有具体的场景呈现。BitVM 方案的论文已经完全开源,备受加密社区的期待。但它的工程实现难度非常大,遇到链下数据管理成本、参与方数量限制、挑战-响应交互次数、哈希函数复杂度等等问题,短期内很难落地。
RGB 协议使用客户端验证和一次性密封技术来实现图灵完备的可编程性,核心设计思想是将智能合约的状态和逻辑存储在比特币交易(Transaction)的输出(Output)上,将智能合约代码的维护和数据存储放在链下执行,由比特币主网作为最终状态的承诺层。
EVM 兼容 Rollup L2,是快速复用成熟的 Rollup L2 堆栈构建比特币 L2 的方案。但鉴于比特币主网目前无法支持欺诈证明/有效性证明,Rollup L2 需要引入社会信任假设(多签)。
DriveChain 是一种侧链扩展方案,基本设计思想是将比特币作为区块链的底层,通过锁定比特币来创建侧链,从而实现比特币和侧链之间的双向互操作性。DriveChain 工程的实现,需要对比特币进行协议级别改动,即将开发团队提议的 BIP300、BIP301 部署到主网。
以上比特币可编程性方案要么工程难度极大短期难以落地,要么引入过多社会信任假设,要么需要对比特币进行协议级别改动。
比特币 L1 资产协议:RGB++
针对以上比特币可编程性协议存在的不足和问题,CKB 团队给出了一个相对均衡的解决方案。该解决方案由比特币 L1 资产协议 RGB++、比特币 L2 Raas 服务商 UTXO Stack 和与闪电网络集成的互操作协议组成的。
UXTO 原生的原语:同构绑定
RGB++,是基于 RGB 设计思想开发的比特币 L1 资产发行协议。RGB++ 的工程实现,同时继承了 CKB 和 RBG 的技术原语。它有使用 RGB 的 “一次性密封” 和客户端验证技术,同时通过同构绑定将比特币 UTXO 映射到 CKB 主网的 Cell(扩展版的 UTXO),并使用 CKB 和比特币链上的脚本约束来验证状态计算的正确性和所有权变更的有效性。
换言之,RGB++ 是用 CKB 链上的 Cell 表达 RGB 资产的所有权关系。它把原本存放在 RGB 客户端本地的资产数据,挪到 CKB 链上用 Cell 的形式表达出来,与比特币 UTXO 之间建立映射关系,让 CKB 充当 RGB 资产的公开数据库与链下预结算层,替代 RGB 客户端,实现更可靠的数据托管与 RGB 合约交互

RGB++ 的同构绑定(图源:RGB++ Protocol Light Paper )

Cell 是 CKB 的基本数据存储单元,可以包含各种数据类型,如 CKBytes、代币、TypeScript 代码或序列化数据(如 JSON 字符串)。每个 Cell 都包含一个小程序,称为 Lock Script,它定义了 Cell 的所有者。Lock Script 既支持比特币主网的脚本,如多签、哈希锁、时间锁等,也允许包含一个 Type Script 来执行特定的规则,以控制其使用。这使开发人员能够根据不同的用例定制智能合约,例如发行 NFT,空投代币、AMM Swap 等等。
RGB 协议通过使用 OP RETURN 操作码将链下交易的状态根附加到一个 UTXO 的 output,将该 UTXO 作为状态信息的容器。然后,RGB++ 将这个由 RGB 构建的状态信息容器映射到 CKB 的 Cell 上,将状态信息保存在 Cell 的 type 和 data 中,将这个容器 UTXO 作为 Cell 状态所有者。

RGB++ 交易生命周期(图源:RGB++ Protocol Light Paper )

如上图所示,一个完整的 RGB++ 交易生命周期如下:
链下计算。当发起 1 笔同构绑定的 Tx 时,要首先选择比特币主网的一个新的 UTXO btc_utxo#2 作为一次性密封的容器,再在链下对原 Cell 同构绑定的 UTXO btc_utxo#1、新 Cell 同构绑定的 btc_utxo#2、以原 Cell 作为输入新 Cel 作为输出的 CKB TX 进行哈希计算生成一笔承诺。提交比特币交易。RGB++ 发起一笔比特币主网的 Tx,将与原 Cell 同构绑定的 btc_utxo#1 作为输入,使用 OP RETURN 将上一步生成的那笔承诺作为输出。提交 CKB 交易。在 CKB 主网执行之前链下计算生成的 CKB Tx。链上验证。CKB 主网运行一个比特币主网轻客户端验证整个系统的状态变更。这点与 RGB 非常不同,RGB 的状态变更验证采用的 P2P 机制,需要 Tx 的发起方与接收方同时在线且只对相关的 TX 图谱进行交互式验证。
基于以上同构绑定逻辑实现的 RGB++,与 RGB 协议相比,在让渡部分隐私性的同时,获得了一些新特性:区块链增强的客户端验证、交易折叠、无主合约的共享状态和非交互式转账。
区块链增强的客户端验证。RGB++ 允许用户选择采用PoW维持共识安全 CKB 验证状态计算和 URXO-Cell 的所有权变更。交易折叠。RGB++ 支持将多笔 Cell 映射到单笔 UTXO 上,从而实现 RGB++ 的弹性扩展。无主智能合约和共享状态。UTXO 状态数据结构实现图灵完备智能合约的一大困难,就是无主智能合约和共享状态。RGB++ 可以利用 CKB 的全局状态 Cell 和意图 Cell 解决这一问题。非交互式转账。RGB++ 将 RGB 的客户端验证流程变成可选项,不再强制要求交互式转账。用户选择 CKB 验证状态计算和所有权变更的话,交易的交互体验与比特币主网保持一致。

此外,RGB++还继承了 CKB 主网 Cell 的状态空间私有化特性,RGB++ 每笔 TX 除了支付使用比特币主网区块空间的矿工费之外,还需要额外支付租赁 Cell 状态空间的费用(这部分费用在 Cell 消费之后原路返回)。Cell 的状态空间私有化,是 CKB 发明的一种应对区块链主网状态爆炸的防御机制,Cell 状态空间的租赁者在使用期间需要持续的付费(以被 CKB 流通代币通胀的形式稀释价值)。这使得 RGB++ 协议是一种负责任的比特币主网可编程性扩展协议,在一定程度上能够限制对比特币主网区块空间的滥用现象。
去信任的 L1<>L2 互操作:Leap
RGB++ 的同构绑定,是一种共时性的原子实现逻辑,要么同时发生,要么同时翻转,不存中间状态。所有的 RGB++ 交易都会在 BTC 和 CKB 链上同步各出现一笔交易。前者与 RGB 协议的交易兼容,后者则取代了客户端验证的流程,用户只需要检查 CKB 上的相关交易即可验证这笔 RGB++ 交易的状态计算是否正确。但用户也可以不使用 CKB 链上的交易作为验证依据,利用 UTXO 的局部相关 Tx 图谱,独立地对 RGB++ 交易进行验证(交易折叠等部分功能仍然需要依赖 CKB 的区块头哈希做防双花验证)。
因此,RGB++ 与 CKB 主网之间的资产跨链,并不依赖引入额外的社会信任假设,如跨链桥的中继层、EVM 兼容 Rollup 的中心化多签金库等等。RGB++ 资产可以原生的、去信任的从比特币主网转移到 CKB 主网,或者从 CKB 主网转移到比特币主网。CKB 将这个跨链工作流称之为 Leap。
RGB++ 与 CKB 之间是松耦合的关系。除了支持比特币 L1 层的资产(不限于 RGB++ 协议原生资产,包括采用 Runes、Atomicals、Taproot Assets 等协议发行的资产)Leap 到 CKB 之外,RGB++ 协议还支持 Leap 到 Cardano 等其他 UTXO 图灵完备链。同时,RGB++ 还支持比特币 L2 资产 Leap 到比特币主网。

RGB++ 的扩展功能和应用实例

RGB++ 协议原生支持发行同质化代币和 NFT。
RGB++ 的同质化代币标准是 xUDT ,NFT 标准是 Spore 等。
xUDT 标准支持多种同质化代币发行方式,包括但不限于集中分发、空投、订阅等。代币总量还可以在无上限和预设上限之间进行选择。对于预设上限的代币,可以使用状态共享方案来验证每次发行的总数是否小于或等于预设上限。
NFT 标准中的 Spore,会在链上存储所有元数据,实现了 100% 的数据可用性安全。Spore 协议发行的资产 DOB(Digital Object,数码物),类似于 Ordinals NFT,但是有更加丰富的特性和玩法。
作为客户端验证协议,RGB 协议天然支持状态通道和闪电网络,但受限于比特币的脚本计算能力,把 BTC 之外的资产去信任引入进闪电网络非常困难。但 RGB++ 协议可以利用 CKB 的图灵完备脚本系统,实现基于 CKB 的 RGB++ 资产的状态通道和闪电网络。
有了以上标准和功能,RGB++ 协议的用例不像其他比特币主网可编程协议那样局限在简单的资产发行场景,而支持资产交易、资产借贷、CDP 稳定币等复杂应用场景。例如,RGB++ 同构绑定逻辑结合比特币主网原生的 PSBT 脚本,可以实现一种订单簿网格形态的 DEX。

比特币 L2 RaaS 服务商:UTXO Stack

UTXO 同构比特币 L2 vs EVM 兼容比特币 Rollup L2
在图灵完备的比特币可编程性实现方案市场竞争中,DriveChain、恢复OPCAT 操作码等方案由于需要比特币协议层的变更,需要的时间和成本具有非常大的不确定性和不可预测性, 现实主义路线中的 UTXO 同构比特币 L2 和 EVM 兼容比特币 Rollup L2 更受到开发者和资本的认可。UTXO 同构比特币 L2,以 CKB 为代表。EVM 兼容比特币 Rollup L2,以 MerlinChain 和 BOB 为代表。
实事求是地讲,比特币 L1 资产发行协议在比特币社区中刚刚开始形成局部共识,比特币 L2 的社区共识度则处在更早期。但在这个前沿领域,《比特币杂志》和 Pantera 已经尝试通过借鉴以太坊 L2 的概念结构为比特币 L2 设定定义范围。
在他们眼中,比特币 L2 应该具有以下 3 点特性:
使用比特币作为原生资产。比特币L2必须将比特币作为其主要的结算资产。使用比特币作为结算机制来强制执行交易。比特币L2的用户必须能够强制返回其在一层资产控制权(可信或不可信)。展示对比特币的功能依赖性。如果比特币主网失效但比特币L2系统仍然可保持运行,那么该系统不是比特币的L2。[4]

换言之,他们认为的比特币 L2 应该具有基于比特币主网的数据可用性验证、逃生舱机制、BTC 作为比特币 L2 Gas 代币等。这样看来,在他们潜意识中,是将 EVM 兼容 L2 范式作为比特币 L2 的标准模板。
但比特币主网薄弱的状态计算和验证能力在短期内无法实现特性 1 和特性 2,在这种情况情况下 EVM 兼容 L2 属于完全依赖社会信任假设的链下扩展方案,尽管它们在白皮书写着未来集成 BitVM 进行数据可用性验证和与比特币主网联合挖矿增强安全性。
当然,这并不意味着这些 EVM 兼容 Rollup L2 是假的比特币 L2,而是它们没有在安全性、去信任性和可扩展性之间做到很好的平衡。而且比特币生态引入以太坊的图灵完备解决方案,易被比特币 Maxi 视作对扩容主义路线的绥靖。
因此,UTXO 同构比特币 L2 天然在正统性和比特币社区共识程度上优于 EVM 兼容 Rollup L2。
UTXO Stack 的特性:分形比特币主网
如果说以太坊 L2 是以太坊的分形,那么比特币 L2 理应是比特币的分形。
CKB 生态的 UTXO Stack 为开发者一键启动 UTXO 比特币 L2,并原生集成 RGB++ 协议能力。这使得比特币主网和使用 UTXO Stack 开发的 UTXO 同构比特币 L2 之间,可以通过 Leap 机制实现无缝互操作。UTXO Stack 支持质押 BTC、CKB 以及 BTC L1 资产来保障 UTXO 同构比特币 L2 的安全。

UTXO Stack 架构(图源:Medium)

UTXO Stack 目前支持 RGB++ 资产在比特币闪电网络——CKB 闪电网络——UTXO Stack 平行 L2 们之间自由流转和互操作。除此之外,UTXO Stack 还支持 Runes、Atomicals、Taproot Assets、Stamps 等基于 UTXO 的比特币 L1 可编程性协议资产在 UTXO Stack 平行 L2 们——CKB 闪电网络——比特币闪电网络之间自由流转和互操作。
UTXO Stack 将模块化范式引入到比特币 L2 的构建领域中,用同构绑定巧妙绕过了比特币主网状态计算和数据可用性验证问题。在这个模块化堆栈中,比特币的角色是共识层和结算层,CKB 的角色是数据可用性层,而 UTXO Stack 平行 L2 们的角色是执行层。

比特币可编程性的成长曲线与CKB的未来
比特币可编程性的成长曲线与 CKB 的未来
事实上,比特币的数字黄金叙事与比特币的可编程叙事之间内在的紧张关系,比特币社区中一些 OG 将 23 年以来兴起的比特币 L1 可编程协议视作对比特币主网的新一轮粉尘攻击热潮。某种程度上,比特币核心开发者 Luke 与 BRC20 粉丝之间的口水战,是继支持图灵完备与否之争、大小区块之争之后,比特币 Maxi 与扩容主义者的第三次世界大战。
但其实存在另一种视角,将比特币视作数字黄金的 APP Chain。在这种视角下,正是数字黄金的底层去中心化账本这一定位,形塑了如今的比特币主网 UTXO 集形态和可编程协议特性。但如果我没记错的话,中本聪愿景是想让比特币成为一种 P2P 电子货币。数字黄金对可编程性的需求是保险箱和金库,货币对可编程性的需求是中央银行-商业银行的流通网络。所以说比特币的可编程性增强协议并不是离经叛道的行为,而是回归中本聪愿景。

比特币是第一个 AppChain (图源:@tokenterminal)

我们借鉴 Gartner Hype Cycle 的研究方法,可以将比特币可编程性方案们划分为 5 个阶段
技术萌芽期:DriveChain、UTXO Stack、BitVM 等期望膨胀期:Runes、RGB++、EVM Rollup 比特币 L2 等泡沫破灭期:BRC20、Atomicals 等稳步复苏期:RGB、闪电网络、比特币侧链等成熟高原期:比特币脚本、Taproot 脚本、哈希时间锁等
CKB 的未来:比特币生态的 OP Stack+EigenLayer
无论是 EVM 兼容比特币 Rollup L2,还是 UTXO 同构比特币 L2,亦或者是 DriveChain 等新范式,图灵完备可编程性的诸种实现方案,最终都指向比特币主网作为共识层和结算层。
正如趋同进化在自然界一再发生那样,可以预期比特币生态图灵完备可编程性的发展趋势将在某些方面与以太坊生态呈现一定程度的一致性。但这个一致性,又不会是简单复刻以太坊的技术堆栈到比特币生态,而是利用比特币原生的技术栈(以 UTXO 为基础的可编程性)实现相似的生态结构。
CKB 的 UTXO Stack 与 Optimism 的 OP Stack 的定位非常相似,OP Stack 是在执行层保持与以太坊主网的强等效性和一致性,UTXO Stack 则是在执行层保持与比特币主网的强等效性和一致性。同时,UTXO Stack 与 OP Stack 结构一样,都是平行结构。

CKB 生态现状(图源:CKB 社区)
未来 UTXO Stack 将推出共享序列器、共享安全性、共享流动性、共享验证集等 RaaS 服务,进一步降低开发者启动 UTXO 同构比特币 L2 的成本和难度。目前已经有一大批去中心化稳定币协议、AMM DEX、 借贷协议、自主世界等项目,计划采用 UTXO Stack 构建 UTXO 同构比特币 L2 作为其底层共识基础设施。
与其他比特币安全性抽象协议不同,CKB 的共识机制是与比特币主网一致的 PoW 共识机制,由机器算力维持共识账本的一致性。但 CKB 的代币经济学与比特币存在一些区别。为保持区块空间生产和消耗行为激励的一致性,比特币选择引入权重和 vByte 机制计算状态空间使用费,CKB 则选择将状态空间私有化。
CKB 的代币经济学由基础发行和二级发行两部分组成。基础发行的所有 CKB 完全奖励给矿工,二级发行的 CKB 的目的收取状态租金,二级发行的具体分配比例取决于当前流通的 CKB 在网络中的使用方式。
举个例子,假设所有流通的 CKB 中,有 50% 用于存储状态,30% 锁定在 NervosDAO 中,20% 完全保持的流动性。那么,二级发行的 50% (即存储状态的租金)将分配给矿工,30% 将分配给 NervosDAO 储户,剩余的 20% 将分配给国库基金。
这种代币经济模型能够约束全局状态的增长,协调不同网络参与者(包括用户、矿工、开发者和代币持有者)的利益,创建一个对每个人都有利的激励结构,这与市场上其他 L1 的情况有所不同。
此外,CKB 允许单个 Cell 占用最大 1000 字节的状态空间,这赋予了 CKB 上的 NFT 资产一些其他区块链同类资产不具有奇异特性,比如原生携带 Gas 费、状态空间的可编程性等等。这些奇异特性,使得 UTXO Stack 非常适合作为自主世界项目的基础设施来构建数字物理现实。
UTXO Stack 允许比特币 L2 开发者使用 BTC、CKB 以及其他比特币 L1 资产质押参与其网络共识。
总结

比特币发展到图灵完备的可编程方案阶段,是不可避免的。但图灵完备的可编程性,不会发生在比特币主网,而是发生在链下(RGB、BitVM)或者比特币 L2 上(CKB、EVM Rollup、DriveChain)。
按照历史经验,这些协议上将有 1 条协议最终发展成为垄断性的标准协议。
决定比特币可编程性协议竞争力的关键因子有二:1. 不依赖额外社会信任假设的实现 BTC 在 L1<>L2 之间的自由流转;2. 吸引足够规模的开发者、资金和用户进入其 L2 生态。
CKB 作为比特币可编程性解决方案,利用同构绑定+CKB 网络替代客户端验证的解决方案,实现了比特币 L1 层资产在 L1<>L2 之间的自由流转,且不依赖额外社会信任假设。而且受益处于 CKB Cell 的状态空间私有化特性,RBG++ 并没有像其他比特币可编程性协议那样给比特币主网带来状态爆炸的压力。
近期,通过 RGB++ 首批资产发行初步完成了生态的热启动,为 CKB 生态成功 onboard 了约 15 万新用户和一批新开发者。如比特币 L1 可编程性协议 Stamps 生态的一站式解决方案 OpenStamp,已选择使用 UTXO Stack 构建服务于 Stamps 生态的 UTXO 同构比特币 L2。

下一阶段,CKB 将重点放在生态应用建设、实现 BTC 在 L1<>L2 之间的自由流转、集成闪电网络等方面,力争成为未来的比特币的可编程性层。

文章中提到的部分链接:
[1] https://nakamoto.com/what-are-the-key-properties-of-bitcoin/
[2] https://www.btcstudy.org/2022/09/07/on-the-programmability-of-bitcoin-protocol/#一-引言
[3] https://medium.com/@ABCDE.com/cn-abcde-我们为什么要投资utxo-stack-91c9d62fa74e
[4] https://bitcoinmagazine.com/technical/layer-2-is-not-a-magic-incantation 
Jan:CKB 是理想的比特币二层以下内容来自 Nervos 首席架构师 Jan Xie 发表在 X(Twitter)上的推文,原文链接: https://twitter.com/busyforking/status/1739957462751690783?s=20 作为一种货币系统,比特币本质上是分层的。比特币货币系统的二层应该是什么样子呢?它应该是让整个系统和谐完整的一部分,与一层有相同的理念和价值取向。它应该与一层相互联通,让 BTC 可以在各层之间自由流动,并为用户和开发者提供一致的使用体验。  #CKB 就是比特币货币体系理想的二层。#CKB 遵循与比特币完全一致的价值观,例如 #PoW 而非 #PoS 、#UTXO 而非账户、去中心化先于 TPS、不可操纵的发行规则等等。通过 Cell 这种扩展后的 UTXO 模型,CKB 可以为 Bitcoiners 提供更多去中心化应用场景的同时,保持对用户和开发者一致性体验。在 CKB 上你一样可以用比特币钱包操作 CKB 应用,默认进行地址轮换保护隐私,研究如何在尘埃限制/最小容量约束下管理 UTXOs - 因为所有这些都建立在相同的基础原则之上。  此外,CKB 也给比特币提供了一个极好的实验场地,因为 CKB 在提供增强版 UTXO 模型和更强大编程能力的同时,坚持了 Bitcoin 的核心价值观和设计哲学。这意味着 CKB 面临的挑战与比特币类似,而最优解决方案基本上对两者都有效。在 CKB 上使用定制的密码原语使开发人员和研究人员能够探索他们最具创新性的想法。在 CKB 上,测试像 covenant (CTV)、PSBT 和 Intents 这样的新想法更容易,如果成功,它们可以被整合回比特币第一层(也能为它们进入一层提供有力的论据)。  值得指出的是, 比特币货币系统的二层不需要与比特币共享安全性。多个二层可以形成一个以比特币为核心, 去中心化、有弹性和松散连接的货币系统。这样一个系统在安全方面没有单点问题,能够提供各处一致的用户体验而无需担心流动性碎片化问题。因为比特币就是钱,所以它只需要提供货币功能,而不是其他所有东西。因为 UTXO是这里的头等公民,账户被抽象出来在链外处理。CKB 完美地契合比特币作为新货币系统的愿景, 可以成为理想的 Bitcoin Layer2。 (end)

Jan:CKB 是理想的比特币二层

以下内容来自 Nervos 首席架构师 Jan Xie 发表在 X(Twitter)上的推文,原文链接:
https://twitter.com/busyforking/status/1739957462751690783?s=20

作为一种货币系统,比特币本质上是分层的。比特币货币系统的二层应该是什么样子呢?它应该是让整个系统和谐完整的一部分,与一层有相同的理念和价值取向。它应该与一层相互联通,让 BTC 可以在各层之间自由流动,并为用户和开发者提供一致的使用体验。 
#CKB 就是比特币货币体系理想的二层。#CKB 遵循与比特币完全一致的价值观,例如 #PoW 而非 #PoS#UTXO 而非账户、去中心化先于 TPS、不可操纵的发行规则等等。通过 Cell 这种扩展后的 UTXO 模型,CKB 可以为 Bitcoiners 提供更多去中心化应用场景的同时,保持对用户和开发者一致性体验。在 CKB 上你一样可以用比特币钱包操作 CKB 应用,默认进行地址轮换保护隐私,研究如何在尘埃限制/最小容量约束下管理 UTXOs - 因为所有这些都建立在相同的基础原则之上。 
此外,CKB 也给比特币提供了一个极好的实验场地,因为 CKB 在提供增强版 UTXO 模型和更强大编程能力的同时,坚持了 Bitcoin 的核心价值观和设计哲学。这意味着 CKB 面临的挑战与比特币类似,而最优解决方案基本上对两者都有效。在 CKB 上使用定制的密码原语使开发人员和研究人员能够探索他们最具创新性的想法。在 CKB 上,测试像 covenant (CTV)、PSBT 和 Intents 这样的新想法更容易,如果成功,它们可以被整合回比特币第一层(也能为它们进入一层提供有力的论据)。 
值得指出的是, 比特币货币系统的二层不需要与比特币共享安全性。多个二层可以形成一个以比特币为核心, 去中心化、有弹性和松散连接的货币系统。这样一个系统在安全方面没有单点问题,能够提供各处一致的用户体验而无需担心流动性碎片化问题。因为比特币就是钱,所以它只需要提供货币功能,而不是其他所有东西。因为 UTXO是这里的头等公民,账户被抽象出来在链外处理。CKB 完美地契合比特币作为新货币系统的愿景, 可以成为理想的 Bitcoin Layer2。
(end)
底层公链minima最佳投资标的本轮牛市最出彩的莫过于depin,minima已经进军depin,本轮牛市最最精彩的高潮将会以minima的到来而升华 ,minima将会载入史册,创造币圈最大的奇迹,第一个移动端全节点公链,主网已稳定运行一年有余,错过了pc第一代的btc,千万别在错过移动端的第一个全节点底层公链minima,天大的机会只有一次 #minima #depin #btc #UTXO

底层公链minima最佳投资标的

本轮牛市最出彩的莫过于depin,minima已经进军depin,本轮牛市最最精彩的高潮将会以minima的到来而升华 ,minima将会载入史册,创造币圈最大的奇迹,第一个移动端全节点公链,主网已稳定运行一年有余,错过了pc第一代的btc,千万别在错过移动端的第一个全节点底层公链minima,天大的机会只有一次 #minima #depin #btc #UTXO
UTXO 本身是可以在一个 BTC 交易中被组合的,这让 atomicals 代币的可编程性更好。 BTC 本质上也是由 utxo 组成,因此 atomicals 代币与 BTC 的转化是无缝的,一个简单的 swap 只需要调换 UTXO 的输入与输出即可实现。 不需要任何额外的链、L2、基础设施,这可能是 BTC DeFi 的真正雏形。 #BTC #UTXO #atomicals #swap
UTXO 本身是可以在一个 BTC 交易中被组合的,这让 atomicals 代币的可编程性更好。

BTC 本质上也是由 utxo 组成,因此 atomicals 代币与 BTC 的转化是无缝的,一个简单的 swap 只需要调换 UTXO 的输入与输出即可实现。

不需要任何额外的链、L2、基础设施,这可能是 BTC DeFi 的真正雏形。

#BTC #UTXO #atomicals #swap
铭文在某种程度上可视为符文的试验田 在某种程度上,铭文可视为符文的实验场。铭文引发了轩然大波,其大文件和大量“无意义”的BRC-20留痕信息出现在比特币的Taproot数据中,因此被CVE漏洞编号。尽管存在争议,但铭文带来了暴力美学,话题性十足。相比之下,符文基于UTXO模型,数据存放在OP_RETURN里,更为简洁,但空间有限,功能也受到限制,主要用于发行加密货币。因此,铭文在一定程度上可视为符文的试验台,特别是在处理BRC-20这种“别扭”的形式时。无论热度和争议如何,能够促进比特币网络发展都是积极的,而时间将为我们提供选择。#符文 #brc-20 #Taproot #UTXO
铭文在某种程度上可视为符文的试验田

在某种程度上,铭文可视为符文的实验场。铭文引发了轩然大波,其大文件和大量“无意义”的BRC-20留痕信息出现在比特币的Taproot数据中,因此被CVE漏洞编号。尽管存在争议,但铭文带来了暴力美学,话题性十足。相比之下,符文基于UTXO模型,数据存放在OP_RETURN里,更为简洁,但空间有限,功能也受到限制,主要用于发行加密货币。因此,铭文在一定程度上可视为符文的试验台,特别是在处理BRC-20这种“别扭”的形式时。无论热度和争议如何,能够促进比特币网络发展都是积极的,而时间将为我们提供选择。#符文 #brc-20 #Taproot #UTXO
ICP 的比特币集成如何保护私钥ICP 上的直接比特币集成使容器(高级智能合约)能够在协议级别与比特币网络进行交互,这使得容器可以直接在比特币主网上接收、持有和发送 BTC,而无需使用存在大量安全问题的中介机构和第三方区块链桥。 全球Web3 安全报告显示,到 2022 年,仅 12 起涉及这些链桥的事件就造成了近 18.9 亿美元的损失。 通过比特币集成,ICP 上的容器可以安全地读取和写入比特币账本。 1. 容器可以通过运行在互联网计算机协议上的比特币轻节点读取比特币区块链的状态,为此,ICP 网络中的节点直接从比特币网络获取区块并提取和处理其中包含的交易,这使他们能够及时了解完整比特币网络当前未花费的交易输出(UTXO)集。 该 UTXO 信息通过 API 提供给容器,从而使容器能够访问比特币地址的余额和 UTXO 等信息,换句话说,容器可以查询任何比特币地址的余额和 UTXO,包括它们控制的地址,这使得他们能够通过查看区块链的状态来确定比特币地址的可支出余额(和 UTXO)。 2. 为了写入比特币网络,容器可以安全地签署比特币交易并将其提交到比特币网络,安全签名是通过一种新颖的阈值 ECDSA 协议(称为链密钥 ECDSA)完成的,签名交易通过协议级集成提交,这会导致 ICP 副本将交易提交给许多连接的比特币节点。 ICP 上的私钥存储在哪里? 现在容器也可以写入(签名和提交)交易,这是否也意味着它们存储私钥? 将私钥保存在容器状态中可能会将其暴露给 ICP 网络中的恶意节点,从而授予对用户数字资产的访问权限,为了防止这种情况,ICP 使用阈值加密技术,以便私钥永远不会完全存储在任何单个节点或容器上。 阈值加密允许将秘密(如私钥)分为多个部分,称为秘密共享或共享,需要一定数量(至少阈值)的这些份额来重建秘密或使用它来签署消息。 因此,不是将整个私钥存储在一个位置,而是将其分为多个部分,即秘密共享,由高复制子网(即比常规应用程序子网具有更多节点的子网)内的所有节点持有。 此外,这些秘密共享会定期在节点之间重新共享,以防止可能的共享泄露,重新共享意味着使用加密协议从当前共享创建新共享,一旦重新共享,以前有效的共享就会过时,使得它们对于任何可能获得它们的恶意行为者来说毫无用处。 当写入比特币网络时,比特币交易使用阈值签名进行签名,这意味着如果子网中有足够数量的节点同意签名,每个节点将使用各自的密钥共享来帮助共同签署交易,计算签名至少需要与阈值一样多的密钥共享。 这确保了密钥对于任何整体实体以及控制少于阈值的节点的攻击者来说都是不可用的,就 ICP 而言,根据容器交易请求,节点使用其份额共同签署比特币交易,而不是重新创建原始私钥,该签名协议假设超过三分之二的节点是诚实的,并且不到三分之一的节点受到损害。 ICP 用于 ckBTC 和比特币集成的非托管方法 大多数设计用于使用参与者之间分布的密钥共享来协作计算 ECDSA 签名的协议都假设零稳健性或活跃性、同步网络或两者兼而有之,如果没有健壮性,当单个节点崩溃或不参与时,该协议可能会失去生成数字签名的能力。 因此,假设同步网络意味着简单的消息延迟可能会导致签名协议失败并且无法生成签名,因此该协议容易受到可用性攻击。 ICP 被设计为容错的,确保该协议在异步通信网络中工作,即它可以容忍消息延迟而不会失败,只要不到三分之一的节点受到损害、出现故障或崩溃,整个系统就保持有效运行,即以降低的吞吐量继续运行。 如果子网中的某个节点发生故障,ICP 会选择一个备用节点来替换故障节点。 进一步阅读: 比特币集成:技术概述ckBTC 是 Web3 上的比特币认真对待安全性:Trail of Bits 评估的两项顶级 ICP 功能 #内容挖矿 #BTC #ICP #UTXO 你关心的 IC 内容 技术进展 | 项目信息 | 全球活动 收藏关注 IC 币安频道 掌握最新资讯

ICP 的比特币集成如何保护私钥

ICP 上的直接比特币集成使容器(高级智能合约)能够在协议级别与比特币网络进行交互,这使得容器可以直接在比特币主网上接收、持有和发送 BTC,而无需使用存在大量安全问题的中介机构和第三方区块链桥。
全球Web3 安全报告显示,到 2022 年,仅 12 起涉及这些链桥的事件就造成了近 18.9 亿美元的损失。
通过比特币集成,ICP 上的容器可以安全地读取和写入比特币账本。
1. 容器可以通过运行在互联网计算机协议上的比特币轻节点读取比特币区块链的状态,为此,ICP 网络中的节点直接从比特币网络获取区块并提取和处理其中包含的交易,这使他们能够及时了解完整比特币网络当前未花费的交易输出(UTXO)集。
该 UTXO 信息通过 API 提供给容器,从而使容器能够访问比特币地址的余额和 UTXO 等信息,换句话说,容器可以查询任何比特币地址的余额和 UTXO,包括它们控制的地址,这使得他们能够通过查看区块链的状态来确定比特币地址的可支出余额(和 UTXO)。
2. 为了写入比特币网络,容器可以安全地签署比特币交易并将其提交到比特币网络,安全签名是通过一种新颖的阈值 ECDSA 协议(称为链密钥 ECDSA)完成的,签名交易通过协议级集成提交,这会导致 ICP 副本将交易提交给许多连接的比特币节点。

ICP 上的私钥存储在哪里?
现在容器也可以写入(签名和提交)交易,这是否也意味着它们存储私钥?
将私钥保存在容器状态中可能会将其暴露给 ICP 网络中的恶意节点,从而授予对用户数字资产的访问权限,为了防止这种情况,ICP 使用阈值加密技术,以便私钥永远不会完全存储在任何单个节点或容器上。
阈值加密允许将秘密(如私钥)分为多个部分,称为秘密共享或共享,需要一定数量(至少阈值)的这些份额来重建秘密或使用它来签署消息。
因此,不是将整个私钥存储在一个位置,而是将其分为多个部分,即秘密共享,由高复制子网(即比常规应用程序子网具有更多节点的子网)内的所有节点持有。
此外,这些秘密共享会定期在节点之间重新共享,以防止可能的共享泄露,重新共享意味着使用加密协议从当前共享创建新共享,一旦重新共享,以前有效的共享就会过时,使得它们对于任何可能获得它们的恶意行为者来说毫无用处。
当写入比特币网络时,比特币交易使用阈值签名进行签名,这意味着如果子网中有足够数量的节点同意签名,每个节点将使用各自的密钥共享来帮助共同签署交易,计算签名至少需要与阈值一样多的密钥共享。
这确保了密钥对于任何整体实体以及控制少于阈值的节点的攻击者来说都是不可用的,就 ICP 而言,根据容器交易请求,节点使用其份额共同签署比特币交易,而不是重新创建原始私钥,该签名协议假设超过三分之二的节点是诚实的,并且不到三分之一的节点受到损害。

ICP 用于 ckBTC 和比特币集成的非托管方法
大多数设计用于使用参与者之间分布的密钥共享来协作计算 ECDSA 签名的协议都假设零稳健性或活跃性、同步网络或两者兼而有之,如果没有健壮性,当单个节点崩溃或不参与时,该协议可能会失去生成数字签名的能力。
因此,假设同步网络意味着简单的消息延迟可能会导致签名协议失败并且无法生成签名,因此该协议容易受到可用性攻击。
ICP 被设计为容错的,确保该协议在异步通信网络中工作,即它可以容忍消息延迟而不会失败,只要不到三分之一的节点受到损害、出现故障或崩溃,整个系统就保持有效运行,即以降低的吞吐量继续运行。
如果子网中的某个节点发生故障,ICP 会选择一个备用节点来替换故障节点。

进一步阅读:
比特币集成:技术概述ckBTC 是 Web3 上的比特币认真对待安全性:Trail of Bits 评估的两项顶级 ICP 功能

#内容挖矿 #BTC #ICP #UTXO

你关心的 IC 内容
技术进展 | 项目信息 | 全球活动

收藏关注 IC 币安频道
掌握最新资讯
- 什么是 UTXO? - 你是一个富豪,有一个鼓鼓的钱包( BTC 钱包总额 ),钱包里面装着 N 张银行卡( N 个 UTXO )。 你计划包养 N 个情妇/夫(要交易的项目),那得准备 N 张银行卡给 ta 们一人一张最合理。 总不能给情人 B 说:你等下,A 刷完了卡再给你... 这样,情妇就会跟别人跑了(项目被抢) - 一个 UTXO 拆多少? - 那自然是你觉得这个情人(项目)需要花多少钱(mint+fee成本),你就存多少钱在卡里(单个 UTXO 价值)。 存少了,人家看不上,你还要从其他卡里挪钱(用多个 UTXO),银行卡相互转账有手续费不划算(多个 UTXO 支付的时候 fee 更贵)。 存多了,影响不大。就是资金利用率低了,本来可以一次性包养 5 个,现在只能 3 个了。 所以到底包养多少个(项目),大家看着钱包量力而行。 #UTXO
- 什么是 UTXO?

- 你是一个富豪,有一个鼓鼓的钱包( BTC 钱包总额 ),钱包里面装着 N 张银行卡( N 个 UTXO )。

你计划包养 N 个情妇/夫(要交易的项目),那得准备 N 张银行卡给 ta 们一人一张最合理。

总不能给情人 B 说:你等下,A 刷完了卡再给你...

这样,情妇就会跟别人跑了(项目被抢)

- 一个 UTXO 拆多少?

- 那自然是你觉得这个情人(项目)需要花多少钱(mint+fee成本),你就存多少钱在卡里(单个 UTXO 价值)。

存少了,人家看不上,你还要从其他卡里挪钱(用多个 UTXO),银行卡相互转账有手续费不划算(多个 UTXO 支付的时候 fee 更贵)。

存多了,影响不大。就是资金利用率低了,本来可以一次性包养 5 个,现在只能 3 个了。

所以到底包养多少个(项目),大家看着钱包量力而行。

#UTXO
符文狂热导致了比特币交易费用的上升。 除了即将到来的比特币减半事件之外,一项名为符文的新协议也引起了市场的关注。该协议由比特币开发者Casey Rodarmor推出,旨在通过UTXO模型实现更高效的令牌发行。预计符文将成为下一个热门话题,已有代币PUPS在BRC-20市场上的交易额激增。然而,符文狂热活动也导致了比特币交易费用的上涨。在过去7天内,平均交易费用从4.11美元上升至12.17美元,甚至超过了以太坊的费用水平。这一趋势显示了市场对新技术和协议的追捧,以及对比特币网络拥堵的担忧。#符文 #BTC🔥🔥🔥🔥🔥🔥 #UTXO #PUPS #BRC_20
符文狂热导致了比特币交易费用的上升。

除了即将到来的比特币减半事件之外,一项名为符文的新协议也引起了市场的关注。该协议由比特币开发者Casey Rodarmor推出,旨在通过UTXO模型实现更高效的令牌发行。预计符文将成为下一个热门话题,已有代币PUPS在BRC-20市场上的交易额激增。然而,符文狂热活动也导致了比特币交易费用的上涨。在过去7天内,平均交易费用从4.11美元上升至12.17美元,甚至超过了以太坊的费用水平。这一趋势显示了市场对新技术和协议的追捧,以及对比特币网络拥堵的担忧。#符文 #BTC🔥🔥🔥🔥🔥🔥 #UTXO #PUPS #BRC_20
直播回顾|UTXO 如何焕发新生:老炮 CKB 的耕耘与探索2 月 17 日,CKB Co-founder/Khalani Network CEO Kevin、CKB 生态基金 CMO/SeeDAO 发起人 Baiyu 以及 CKB 社区大使 CyberOrange,在 X Space 直播时分享了他们对 UTXO 模型及其生态的看法。 这场直播持续了 1 小时 40 分钟,信息量非常大,以下是根据音频整理的重点内容: 1. UTXO 模型和账户模型的区别 关于 UTXO 模型,主持人 Baiyu 用了一个非常通俗易懂的比喻:你走在大街上,你是无法知道这条街上的人他们口袋里一共有多少钱,除非你挨个去翻他们的口袋。相比之下,使用账户模型的以太坊,有世界状态树,它保存了全球所有以太坊账户的状态(比如账户余额、合约信息等)。 Kevin 补充说,在以太坊出来之前,其实只有 UTXO。最早期的时候,无论是 UTXO 还是账户模型,都是围绕着资产来进行解读的。即便发展到现在,UTXO 仍然是一个更纯正的以资产为核心的一种理念或者说编程意图, 因为每个 UTXO 都是一种资产,一种可携带的资产,用 script 定义了它完全属于谁。账户模型发展到后来,转变成资产为合约服务, 而且从根本上也不再是 UTXO 那样的点对点,而是点对池,智能合约从资产的角度看就是 smart custody(智能托管),所有的人和这个智能托管进行交互。 CyberOrange 接着介绍了 UTXO 模型的几大优势:首先,UTXO 天然支持并行交易处理,所以它的性能上限更高。其次,在 UTXO 链上发行的资产,其安全等级和原生 coin 的安全等级是一样的,因为它也是在一个 UTXO 里面。作为对比,以太坊上发行的其他资产(比如 ERC-20),全部都被托管在智能合约里,其安全等级远不如原生代币 ETH。第三,UTXO 的隐私性会更好,钱包每用一次就可以换一个地址(账户模型这样做的成本很高),还可以借助 Mimblewimble 等协议进一步提升隐私性。第四,账户模型会在链上同时做计算和验证,而 UTXO 模型在链上只做验证,更适合成为结算层。此外,性能最高的扩容方案是通道网络(Channel),它必须基于 UTXO 模型来做,如果在账户模型上做会极其困难。 2. Cell 模型 CKB 对 UTXO 模型进行了一般化处理,并取名为 Cell 模型。跟 UTXO 一样,Cell 也是交易输出,只不过 Cell 把 UTXO 中的 amount 进行了一般化处理,对应出了 capacity 和 data 两项内容,这样就把原本的一个存放整数的空间变成一个可以存放任意数据的空间。 同时,Cell 的数据结构中还有 LockScript 和 TypeScript,前者主要体现所有权,而后者可以自定义很多丰富的功能,甚至是绝大部分 BIP(比特币改进提案)所提到的功能。在 Cell 的脚本中,开发者还可以根据自己的需求指定密码学原语,非常灵活。 简而言之,Cell 模型延续了比特币 UTXO 的基本哲学,让 CKB 这条链很容易去继承比特币的简单和安全的特性,同时通过巧妙的修改,让 Cell 有了支持智能合约的能力。 3. 为何 UTXO 生态发展缓慢? Kevin 认为,区块链发展了这么多年,核心还是为资产服务的一种去中心化技术,大家围绕着资产做应用。 UTXO 是一种可编程的资产,用 script 来定义这个资产的用途和转让条件,但在 UTXO 模型的链上做 DeFi 应用,如何解决链上流动性是一个相对比较困难的点,因为 UTXO 是一种可携带的资产,大家点对点交易,找到正好可以满足需求的交易对手不太容易。 采用账户模型的区块链,大家把资产放到智能合约里,DeFi 应用通过智能合约来聚合链上流动性,解决了交易对手的问题。当然,这样做也带来了一些风险,比如智能合约有 bug 可能会导致整个资金池被 rug。 Kevin 认为,流动性就是怎么针对未来去编程,是时间轴上的一个概念,所以 UTXO 也需要这种能跨越时间的编程范式。UTXO 是一种 sovereign asset,即持有者完全掌控其所有权,那如何保持 UTXO 这个特性的同时,能够跨越时间,解决流动性问题呢?Kevin 认为,这就需要 UTXO 的资产表达不仅仅只是 ownership,而且还可以表达比如未来怎么撮合或者把资产带去哪里。他认为 Partially Signed Transactions 就是一种解决方案。目前,比特币社区也在研究 Partially Signed Bitcoin Transactions (PSBT,部分签名的比特币交易)。 另外,UTXO 的编程模型要比账户模型更复杂。账户模型的编程方式非常友好,开发者只要把链上的逻辑理清楚,部署好智能合约,就不用管了,链下的部分都是标准接口去对接智能合约。所以,账户模型的区块链生态发展比较快,应用多,而 UTXO 模型或者泛 UTXO 模型的区块链生态发展缓慢。 4. Partially Signed Transactions Partially Signed Transactions 可以帮助 UTXO 模型的区块链实现以太坊上那些金融类应用的功能。 以兑换为例,用户持有 UTXO 资产,然后通过 Partially Signed Transactions 拼出一个还没有上链的交易,这个交易表达了他的意图,比如说想用 1 BTC 换取 10 ETH 和 59 BNB。只有当他的这个意图得到满足时,交易才会上链;没满足之前,资产(这个例子中是 1 BTC)永远在自己的手里。 CyberOrange 提到,Partially Signed Transactions 允许用户的交易在链下想怎么拼就怎么拼,而且还可以实现全链的意图。 在 CKB 上,用的是名为 Open Transaction 的方案,它是一种构建交易的链外协调机制,交易发起人可以通过链外协作完成有趣且复杂的任务,还可以将交易的结构分成多个小步骤,每个步骤都对应不同的模块化解决方案。点此阅读 Open Transaction 的科普介绍。 5. “链上验证,链下计算” 的好处 关于 “链上验证,链下计算”,Baiyu 给了一个非常通俗易懂的比喻:你去商店买 20 块钱的东西,你兜里有一张 10 块钱、2 张 5 块钱、5 张 1 块钱的纸币,你自己算好 20 块钱(可以是一张 10 块钱,2 张 5 块钱;也可以是一张 10 块钱,一张 5 块钱,5 张 1 块钱)递给老板,老板核对一下是否总计 20 元。 链上验证其实很简单,但链下计算要复杂得多,消耗的资源也更多。Kevin 认为,UTXO 模型链上只做验证,链下去计算和解决问题,这样做至少有三点好处: 1、应用可以实现非常简洁的清算逻辑或者验证逻辑,而且因为简洁,实现起来也容易得多。 2、应用不需要在链上(协议层)考虑优化的事情。 这个世界总有更聪明的人提出更好的交易撮合机制、更适用的价格曲线等,由于寻找交易对手和撮合交易等步骤都是链下计算实现的,链上只做验证,所以应用不需要在链上考虑优化的事情。如果是在账户模型上,使用优化版的交易撮合机制或者价格曲线,就需要重新部署一个智能合约,同时让用户把资产迁移过去(比如从 Uniswap v2 迁移到 Uniswap v3)。换句话说,在 UTXO 模型上只做验证的应用,是 future proof(防过时)的。 3、不需要考虑互操作性的问题。 因为链上只管验证,计算都在链下,而这里的 “链下” 既可以是其他区块链的链上,又可以是非区块链。不管一笔交易的计算来自哪里,提交到链上,应用就会去做验证。 另外,Kevin 还提到,最新一代的应用,很多也在转向链上以验证为主的范式,在链下做撮合,有协议平台化的趋势。 6. 泛 UTXO 生态大有前景 在直播的过程中,Kevin 提到,目前以太坊生态最火的几个创业赛道(比如隐私、意图、账户抽象、并行处理等),如果从 UTXO 的角度来看,这些创业机会其实都是账户模型的弊端带来的。 而 UTXO 模型本身就拥有这些特性,或者是在 UTXO 模型上很容易实现。 在直播的最后,Kevin 表达了他对泛 UTXO 生态的强烈看好。 铭文火了之后,大家把目光重新聚焦到比特币上,开发者也开始涌入,大家开始琢磨如何在 UTXO 模型上做开发。无论是 Cardano 还是 CKB,其记账模型都是在 UTXO 模型的基础上做的改进,所以很容易和比特币打通,打通之后,这些泛 UTXO 区块链将会迎来非常多的机会,泛 UTXO 生态也会更加繁荣。 #CKB #UTXO #BTC‬ $CKB

直播回顾|UTXO 如何焕发新生:老炮 CKB 的耕耘与探索

2 月 17 日,CKB Co-founder/Khalani Network CEO Kevin、CKB 生态基金 CMO/SeeDAO 发起人 Baiyu 以及 CKB 社区大使 CyberOrange,在 X Space 直播时分享了他们对 UTXO 模型及其生态的看法。

这场直播持续了 1 小时 40 分钟,信息量非常大,以下是根据音频整理的重点内容:

1. UTXO 模型和账户模型的区别
关于 UTXO 模型,主持人 Baiyu 用了一个非常通俗易懂的比喻:你走在大街上,你是无法知道这条街上的人他们口袋里一共有多少钱,除非你挨个去翻他们的口袋。相比之下,使用账户模型的以太坊,有世界状态树,它保存了全球所有以太坊账户的状态(比如账户余额、合约信息等)。
Kevin 补充说,在以太坊出来之前,其实只有 UTXO。最早期的时候,无论是 UTXO 还是账户模型,都是围绕着资产来进行解读的。即便发展到现在,UTXO 仍然是一个更纯正的以资产为核心的一种理念或者说编程意图, 因为每个 UTXO 都是一种资产,一种可携带的资产,用 script 定义了它完全属于谁。账户模型发展到后来,转变成资产为合约服务, 而且从根本上也不再是 UTXO 那样的点对点,而是点对池,智能合约从资产的角度看就是 smart custody(智能托管),所有的人和这个智能托管进行交互。
CyberOrange 接着介绍了 UTXO 模型的几大优势:首先,UTXO 天然支持并行交易处理,所以它的性能上限更高。其次,在 UTXO 链上发行的资产,其安全等级和原生 coin 的安全等级是一样的,因为它也是在一个 UTXO 里面。作为对比,以太坊上发行的其他资产(比如 ERC-20),全部都被托管在智能合约里,其安全等级远不如原生代币 ETH。第三,UTXO 的隐私性会更好,钱包每用一次就可以换一个地址(账户模型这样做的成本很高),还可以借助 Mimblewimble 等协议进一步提升隐私性。第四,账户模型会在链上同时做计算和验证,而 UTXO 模型在链上只做验证,更适合成为结算层。此外,性能最高的扩容方案是通道网络(Channel),它必须基于 UTXO 模型来做,如果在账户模型上做会极其困难。
2. Cell 模型
CKB 对 UTXO 模型进行了一般化处理,并取名为 Cell 模型。跟 UTXO 一样,Cell 也是交易输出,只不过 Cell 把 UTXO 中的 amount 进行了一般化处理,对应出了 capacity 和 data 两项内容,这样就把原本的一个存放整数的空间变成一个可以存放任意数据的空间。
同时,Cell 的数据结构中还有 LockScript 和 TypeScript,前者主要体现所有权,而后者可以自定义很多丰富的功能,甚至是绝大部分 BIP(比特币改进提案)所提到的功能。在 Cell 的脚本中,开发者还可以根据自己的需求指定密码学原语,非常灵活。
简而言之,Cell 模型延续了比特币 UTXO 的基本哲学,让 CKB 这条链很容易去继承比特币的简单和安全的特性,同时通过巧妙的修改,让 Cell 有了支持智能合约的能力。
3. 为何 UTXO 生态发展缓慢?
Kevin 认为,区块链发展了这么多年,核心还是为资产服务的一种去中心化技术,大家围绕着资产做应用。
UTXO 是一种可编程的资产,用 script 来定义这个资产的用途和转让条件,但在 UTXO 模型的链上做 DeFi 应用,如何解决链上流动性是一个相对比较困难的点,因为 UTXO 是一种可携带的资产,大家点对点交易,找到正好可以满足需求的交易对手不太容易。
采用账户模型的区块链,大家把资产放到智能合约里,DeFi 应用通过智能合约来聚合链上流动性,解决了交易对手的问题。当然,这样做也带来了一些风险,比如智能合约有 bug 可能会导致整个资金池被 rug。
Kevin 认为,流动性就是怎么针对未来去编程,是时间轴上的一个概念,所以 UTXO 也需要这种能跨越时间的编程范式。UTXO 是一种 sovereign asset,即持有者完全掌控其所有权,那如何保持 UTXO 这个特性的同时,能够跨越时间,解决流动性问题呢?Kevin 认为,这就需要 UTXO 的资产表达不仅仅只是 ownership,而且还可以表达比如未来怎么撮合或者把资产带去哪里。他认为 Partially Signed Transactions 就是一种解决方案。目前,比特币社区也在研究 Partially Signed Bitcoin Transactions (PSBT,部分签名的比特币交易)。
另外,UTXO 的编程模型要比账户模型更复杂。账户模型的编程方式非常友好,开发者只要把链上的逻辑理清楚,部署好智能合约,就不用管了,链下的部分都是标准接口去对接智能合约。所以,账户模型的区块链生态发展比较快,应用多,而 UTXO 模型或者泛 UTXO 模型的区块链生态发展缓慢。
4. Partially Signed Transactions
Partially Signed Transactions 可以帮助 UTXO 模型的区块链实现以太坊上那些金融类应用的功能。
以兑换为例,用户持有 UTXO 资产,然后通过 Partially Signed Transactions 拼出一个还没有上链的交易,这个交易表达了他的意图,比如说想用 1 BTC 换取 10 ETH 和 59 BNB。只有当他的这个意图得到满足时,交易才会上链;没满足之前,资产(这个例子中是 1 BTC)永远在自己的手里。
CyberOrange 提到,Partially Signed Transactions 允许用户的交易在链下想怎么拼就怎么拼,而且还可以实现全链的意图。
在 CKB 上,用的是名为 Open Transaction 的方案,它是一种构建交易的链外协调机制,交易发起人可以通过链外协作完成有趣且复杂的任务,还可以将交易的结构分成多个小步骤,每个步骤都对应不同的模块化解决方案。点此阅读 Open Transaction 的科普介绍。
5. “链上验证,链下计算” 的好处
关于 “链上验证,链下计算”,Baiyu 给了一个非常通俗易懂的比喻:你去商店买 20 块钱的东西,你兜里有一张 10 块钱、2 张 5 块钱、5 张 1 块钱的纸币,你自己算好 20 块钱(可以是一张 10 块钱,2 张 5 块钱;也可以是一张 10 块钱,一张 5 块钱,5 张 1 块钱)递给老板,老板核对一下是否总计 20 元。
链上验证其实很简单,但链下计算要复杂得多,消耗的资源也更多。Kevin 认为,UTXO 模型链上只做验证,链下去计算和解决问题,这样做至少有三点好处:
1、应用可以实现非常简洁的清算逻辑或者验证逻辑,而且因为简洁,实现起来也容易得多。
2、应用不需要在链上(协议层)考虑优化的事情。 这个世界总有更聪明的人提出更好的交易撮合机制、更适用的价格曲线等,由于寻找交易对手和撮合交易等步骤都是链下计算实现的,链上只做验证,所以应用不需要在链上考虑优化的事情。如果是在账户模型上,使用优化版的交易撮合机制或者价格曲线,就需要重新部署一个智能合约,同时让用户把资产迁移过去(比如从 Uniswap v2 迁移到 Uniswap v3)。换句话说,在 UTXO 模型上只做验证的应用,是 future proof(防过时)的。
3、不需要考虑互操作性的问题。 因为链上只管验证,计算都在链下,而这里的 “链下” 既可以是其他区块链的链上,又可以是非区块链。不管一笔交易的计算来自哪里,提交到链上,应用就会去做验证。
另外,Kevin 还提到,最新一代的应用,很多也在转向链上以验证为主的范式,在链下做撮合,有协议平台化的趋势。
6. 泛 UTXO 生态大有前景
在直播的过程中,Kevin 提到,目前以太坊生态最火的几个创业赛道(比如隐私、意图、账户抽象、并行处理等),如果从 UTXO 的角度来看,这些创业机会其实都是账户模型的弊端带来的。 而 UTXO 模型本身就拥有这些特性,或者是在 UTXO 模型上很容易实现。
在直播的最后,Kevin 表达了他对泛 UTXO 生态的强烈看好。 铭文火了之后,大家把目光重新聚焦到比特币上,开发者也开始涌入,大家开始琢磨如何在 UTXO 模型上做开发。无论是 Cardano 还是 CKB,其记账模型都是在 UTXO 模型的基础上做的改进,所以很容易和比特币打通,打通之后,这些泛 UTXO 区块链将会迎来非常多的机会,泛 UTXO 生态也会更加繁荣。

#CKB #UTXO #BTC‬ $CKB
#SRC20 邮票全球🌍速递📰 趋势一旦来临,势不可挡🌊 今天有多少机构提到#Stamps 1/17 @star_okx 回复了 #SRC20 开发者的推特,归纳总结大概意思 a、@okx看好src20标准协议 b、新索引公布和开源是前提条件 c、交易所托管交易模式需要摒弃,换成安全的点对点交易 d、基础设施稳,才能走更远,耐心期待#src20 #stamp #UTXO #kevin #BTC
#SRC20 邮票全球🌍速递📰

趋势一旦来临,势不可挡🌊
今天有多少机构提到#Stamps

1/17 @star_okx 回复了 #SRC20 开发者的推特,归纳总结大概意思

a、@okx看好src20标准协议
b、新索引公布和开源是前提条件
c、交易所托管交易模式需要摒弃,换成安全的点对点交易
d、基础设施稳,才能走更远,耐心期待#src20

#stamp #UTXO #kevin #BTC
比特币生态 #src20 现在市值洼地,大家可以去潜伏龙一 #STAMP 龙二 #kevin 龙三 #UTXO 😀😀😀😀😀😀
比特币生态 #src20 现在市值洼地,大家可以去潜伏龙一 #STAMP 龙二 #kevin 龙三 #UTXO 😀😀😀😀😀😀
浏览最新的加密货币新闻
⚡️ 参与加密货币领域的最新讨论
💬 与喜爱的创作者互动
👍 查看感兴趣的内容
邮箱/手机号码