SUS是什么?一次性密封是RGB/RGB++协议的基石

时间:2024-07-09  分类:电子


SUS是什么?一次性密封是RGB/RGB++协议的基石!一次性密封是RGB/RGB++协议的基石,它拓展了比特币的能力。但究竟什么是一次性密封(Single-Use-Seals,SUS)?我们如何在区块链上实现它?你知道一次性密封在RGB++协议提出之前就已经存在于CKB的技术架构之中了吗?


今天非常好学习小编就给大家详细介绍一些基于一次性密封理念的CKB脚本设计。需要的朋友一起看看吧!


什么是SUS?


为了实现一次性密封,我们建议矿工证明一系列关于键值对集的真值表达式的内容。键是表达式,值是声明,它们与(可丢弃的)witness一起组成了表达式的参数。一旦一个表达式被加入了封条集,与它相关联的值就不能被改变。


PeterTodd-ClosedSealSetsandTruthListsforBetterPrivacyandCensorshipResistance


下面这张图来自PeterTod的SUS实用例子,它生动而准确地描述了SUS:就像现实生活中的封条一样,它们封上就不能再打开,且每个都有唯一标识。


想象一下,在数字世界,你可以拥有独一无二且不可摧毁的封条来封印任何数据,而任何人(包括你自己)都无法伪造这些印章,这就是SUS。


简单易懂SUS


当我们花费一笔输出时,我们的目标是让花费的资金流向另一组输出上,通过将这组输出的分配提交到这些一次性密封上的方式。


PeterTodd-ClosedSealSetsandTruthListsforBetterPrivacyandCensorshipResistance


在区块链世界中,UTXO(UnspentTransactionOutputs)是用户储存资产的地方。用户通过交易转移他们的资产的过程,基本上就是消耗UTXO,并为其他人创建新的UTXO。


SUS和UTXO的天然一致性,使得一次性密封在UTXO模型上的设计上直接而又简单。我们可以将TXO(TransactionOutputs)视为我们的封条,而在区块链上提交的的每笔交易都可以被视为将其数据封入所有的输入TXO。这么一来,我们就完成了UTXO模型上的一次性密封设计:交易的输出满足我们对一次性密封的所有要求:



封条链和TypeID


TypeID描述了一种通过使用特殊的typescript来创造单例类型的方式即在这个Type下只有一个LiveCell。


CKBRFC0022-CKBTransactionStructure


我们可以通过在关闭一个封条时将新封条连接到其上,从而创建封条链。这种方法简化了验证过程,因为验证者只需要在初始封条上达成共识,就可以通过封条链来获取最新的封条。尽管,这同样意味着验证者必须检索整个封条链来验证最新的数据。


得益于CKB的图灵完备虚拟机和它的扩展UTXO模型Cell模型,我们可以在封条中包含更多信息。CKB上的Cell与BTC上的UTXO的不同之处在于,Cell可以存储任意数据,这些数据的转换受到TypeScript的限制。


在CKB的TypeID方案中,我们要求封条链上的每个封条都必须包含第一个封条的ID作为起始信息。TypeID意味着TypeScript赋予了Cell唯一的ID,并限制其在封条链的开始到结束的过程中ID都不能被更改。这个ID允许验证者仅通过CKB上的通用索引器就可以检索最新的封条。


更多CKB上的SUS



资产发行权限控制是这两种Script的一个实际应用场景。在CKB的xUDT协议中,发行者可以在证明他们能够解锁Ownerlock时铸造新代币。仅使用简单的基于签名的Lock,我们无法确定发行者是否仍然拥有他们的私钥,这意味着他们总是可以铸造新代币,使得每种资产都可以无限增发。


在这里,SingleUseLock为我们提供了解决方案。消耗指定Cell后,由于没有人能够解锁Ownerlock来铸造新代币,我们可以相信代币供应量确实有上限。


作为一种更灵活的解决方案,代币发行者可以使用TypeProxyLock将铸造权限绑定到TypeIDCell。它就像一把无法被伪造的钥匙,可以交给其他人,或是被销毁。


以上就是SUS是什么?一次性密封是RGB/RGB++协议的基石的全部内容,望能这篇SUS是什么?一次性密封是RGB/RGB++协议的基石可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。