RGB
最后更新于
最后更新于
RGB协议最初由Giacomo Zucco在2016年设计,作为基于Peter Todd的“客户端验证”设计的非区块链资产系统,名为BHB Network。该项目的原型在2017年在Poseidon Group的支持下推出。
到2019年,Pandora Prime AG的Maxim Orlovsky博士成为该项目的主要设计师和主要贡献者,影响了它从BHB Network资产系统转变为当前状态的RGB协议,该协议允许项目计算机实现机密智能合约。
同年,Giacomo和Orlovsky创建了闪电网络协议/比特币协议标准协会(LNP/BP Standards Association),以监督RGB协议的开发,并带头创建和管理闪电网络和比特币网络的标准、注册表、库、节点、命令行工具和文档。该协会得到了风投机构的资助,如iFinex Inc.,Fulgur Ventures,Pandora Prime AG,Maxim Orlovsky博士的个人资金,Hojo基金会,DIBA Inc.,甚至是匿名社区捐款。
目前的RGB协议由一个包含50多人和企业的技术和财务贡献支持开发。.
作为一个去中心化的协议,没有正式的团队结构。因此,对该项目的贡献来自全球开发者和研究人员的网络。该项目由Giacomo Zucco共同创立,他是一位意大利企业家,自2012年以来一直是比特币至上主义者(Bitcoin maximalist)。他建立了第一个意大利比特币专注平台Bitcoin.it,他的目标是发展比特币网络以与以太坊等区块链竞争。
Maxim Orlovsky是一位研究人员和工程师,他将BHB网络转化为RGB协议。他还是LNP / BP标准协会的首席工程师。他为比特币生态系统的多个项目做出了贡献,如闪电网络、隐私保护网络、函数式编程和确定性计算。
该项目的其他知名贡献者还包括AJ Town、Christian Bacher和一位匿名的“ZmnSCPxj”。正如前面所述,这个开源项目是由一群研究人员和比特币社区的成员共同开发。
图片来源: RGB 官网
RGB 协议采用 Peter Todd 的“客户端验证”技术设计,可以在不过多负担比特币区块链的情况下验证合约状态和交易。
这种验证和验证依赖于发布证明(PoP),它类似于数字报纸剪报,与交易参与者共享更新,确保所有相关人员接收并确认更新的变化。
与其他需要全球网络验证的共识机制不同,PoP 使用三个底层概念来运作。首先是接收证明 (proof of receipt),允许参与者确认交付收件人。这类似于在更新文档后发送确认电子邮件。
其次是非发布证明 (proof of non-publication),允许网络确认更新是否已发布。这可以防止协议中的篡改或未经验证的更改。最后是成员证明 (proof of membership),确保所有参与方被授权接收更新。这保持了项目或网络的透明度。
支持出版证明共识机制时,彼得·托德提出了一次性密封概念,这是一种加密承诺,确保将来无法创建重复的承诺。
最初在2016年引入的一次性密封的概念,确保了比特币承诺的创建,使得比特币区块链上的项目可以在不需要相互了解的情况下使用相同的交易。该密封的封条包括了一个SHA-256交易标识符和一个32位交易输出编号,承诺一个特定的消息,类似于一个秘密代码,即使参与者知道消息的内容,也无法逆向工程。
一次性密封类似于航运集装箱的标识符,它确保每个交易都有一个标识符,附带了只能花费一次资产的智能合约,从而保护网络免受双花攻击的同时,保持分散化的无信任结构。
在密码学中,承诺与锁定的箱子类似,用于存放信息。只有在特定条件下才能访问这些信息,在分散式通信中非常重要。
在RGB协议中,比特币承诺是一种确定性的承诺,包括三种形式:Tapret、Operet和多协议(Multi-protocol)承诺。Tapret承诺基于区块链的Taproot功能,用于创建安全、可验证的承诺。
Operet承诺基于OP Return输出(OP_RETURN)。OP Return输出是一种允许包含任意数据的输出,适用于无法使用Taproot功能的旧设备。多协议承诺足够灵活,可用于多个协议。
底层是比特币的区块链,它作为项目中所有交易和承诺的基石。客户端验证层建立在其之上,包括确定性比特币承诺(Taproot和Oprev)和AluVM,这是一个针对在客户端验证期间进行智能合约验证所需的算术和逻辑操作进行优化的虚拟机。
在其之上构建的是非共识关键层。该层包括一次次使用的密封,为RGB项目提供了额外的安全层,多协议承诺以及为客户端验证定义验证规则、状态类型和逻辑类型的RGB模式。
最后,RGB合约和闪电网络包括创世状态、有向无环图(DAG)状态转换以及用于智能合约协调和交互的Bifrost协议。
图片来源:RGB 官网
RGB协议使用客户端验证和链下数据来执行比特币区块链上的智能合约。这种与一般执行模型的偏离为合约和其状态在区块链上引入了一种新的操作。
RGB协议使用Key、身份或值等元素来表示网络上的资产所有权,可以使用特定的操作进行转移或修改。与传统协议不同,这些数据存储在链下,以减轻区块链的负担。为了避免权力集中,网络成员定义并执行合约的规则,确保平台具有抗审查性。
该协议使用客户端验证,依赖于个体参与者使用密码工具。因此,RGB只公开了交易的状态。实际内容是保密的,这提高了隐私性。该协议还使用了双重所有权结构,用于管理全局(公共)数据,该数据对网络的每个成员都是可访问的,并且拥有(私有)数据由特定方控制。
RGB协议使用创世操作(Genesis Operation)来定义合约的初始状态所有权,其分配条款和所有者权利。在转移发生时,该操作更新状态,执行指导交易的逻辑或规则。更新后的状态被发送给涉及的各方或社区,以维护其分散化的设计。
使用RGB协议的离链基础设施来执行智能合约,集成钱包无需直接在链上操作。相反,它使用API集成来获取合约数据,跟踪合约状态,并在用户的钱包界面内启动验证。
为了支持客户端验证,钱包设计包括一些功能,允许用户在熟悉的界面内验证交易,这需要集成加密证明工具。一些功能还将使用户能够选择性地披露数据或请求盲签名,以保护用户的数据。
这些功能旨在简化用户与RGB协议和比特币区块链的交互,促进更广泛的采用。它还有助于提高使用敏感数据进行交易的安全性和隐私性。
RGB协议作为比特币区块链上智能合约的解决方案具有一些关键优势。首先是可扩展性和效率。RGB协议利用客户端验证和链下数据来减轻在比特币上进行交易的负担,同时实现更快的处理时间。
它还具有提高用户隐私和对数据的控制的功能,通过将这些加密工具集成到一个易于使用的界面中。最后,该协议利用了比特币区块链的安全性,这是全球最安全的公链之一。
RGB协议的一个重大缺点是需要大量参与者进行客户端验证。与需要整个网络验证交易的链上交易不同,RGB协议的链下设计依赖于服务器或云基础设施,这可能导致集中化或通过妥协服务器进行潜在审查。
RGB的链下设计还给区块链基础设施引入了更多复杂性,可能导致可扩展性问题。
一个主要的挑战是在协议中达成一致的争议解决。与整个网络参与的链上验证不同,链下设计在合约升级和争议解决上面临更多挑战,可能会采用中心化的第三方或信任模型来实现共识。
用户也被要求更加警惕保护他们的私钥,这对于不够谨慎的用户来说可能会很困难。