BSV技术标准委员会发布《封装规范》以优化数据型交易

By Jamie McKane Published: 9月 8, 2021

BSV技术标准委员会(TSC)在经过一段时间的全面公开审核后,发布了交易封装规范标准。封装规范的发布对于提升BSV区块链上数据型交易的有效处理能力至关重要,使用户可以轻松识别和解码写入交易的各类文件和数据格式。这是通过将写入公共账本(BSV区块链)的每个数据记录包装在一个标准化的“信封”或“封装器”协议里来实现的,该协议能让软件轻松地确定数据格式,以及确定应如何处理数据或如何向用户展示数据。

TSC旨在通过与开发者和利益相关方共同合作,开发可使应用相互兼容的通用标准,从而提高BSV生态系统内的互操作性。需要注意的是,TSC并不直接决定标准,而是以提升互操作性为目标,提供出制定技术标准的框架和流程,从而促进BSV区块链被商业企业采用。

TSC发布的每个技术标准都经过严格的标准化过程,包括审议、起草、内部审核和公开审核阶段,最后公开发布以供外界采用。封装规范也不例外,根据评审员、开发人员和行业利益相关者反馈的建议,这个标准在制定过程中的每个阶段,都进行了大量修改。

封装规范虽然已经发布,但是之后的工作也会持续进行:我们将对该标准的采用和现实世界的适用性定期进行评估,随后TSC可能会向外部建议广泛采用该标准。

 

什么是封装规范?

创建封装规范符合TSC的核心原则之一,即提升使用BSV区块链的不同实体之间的互操作性。它旨在解决两个简单但普遍存在的问题:写入公共账本上的数据类型是多样化的;我们需要识别不同的数据类型。

“比特币最有价值的功能之一是能够在带有时间戳的公共账本上永久记录数据。这提供了可审计能力以及各种类型数据的存在性证明,从金融交易记录到书籍手稿、数学公式,甚至数字艺术品。”TSC解释说,“但问题是数据文件有很多不同的格式,每种格式都需要可与其兼容的软件来解码、打开和处理。这意味着如果你试图在区块链上找到特定类型的数据,你必须通过访问所有不相关的数据文件来找到你正在寻找的数据。”

TSC封装规范通过定义数据应如何被封装在一个“信封”里来解决这一问题,该“信封”允许用户轻松确定数据格式并对其进行解读。由于数据通常通过“OP_FALSE”和“OP_RETURN”两个操作码写入BSV区块链,因此本标准旨在与这些命令和一系列比特币固有脚本操作码集成,这些操作码在通过不可花费的输出写入区块链之前将一定数量的数据推送到堆栈。

 

协议标识符和数据格式

封装规范使用比特币脚本语言固有的推送数据操作码来识别写入区块链的数据,因为使用封装协议允许其他人轻松解读“信封”中包含的数据。

根据该标准,非可执行数据按以下格式进行存储:以一个两字节的推送数据值开始,用于标识信封协议和所使用的版本。其后是数据的各个部分,这些部分还可能包括它们自己的子协议。这些数据段中的每一段都以一个首标开始,它向用户提供被封装在这一段的数据的有关信息。

一个封装规范的首标包含以下字段:

  • 表示协议标识符数量的数字
  • 推送数据,它指定了用于存储在各段的数据分别使用的协议标识符
  • 一个表示数量的数字,告诉解码器使用上述协议编码了多少操作码。
  • 如果有剩余数据,解码器将通过检查上述字段来解析信封里的另一段数据。

这一规范允许在每个信封中包含多个子协议;能高效地将多种类型的数据写入区块链;与此同时还支持快速正确地解码。使用上面描述的“信封”来封装的数据,虽然写入BSV区块链的方式与以往无异,但现在这些数据因为采用了封装规范标准,其他人可以更加容易识别和处理这些数据了。

 

使用封装规范的好处

封装规范标准有许多好处,其中最重要的是,它有望极大地提高BSV区块链上各应用的互操作性,这对于在BSV平台上构建应用的生态公司大有裨益。

例如,某些类型的数字令牌,例如代表数字艺术的NFT,当它们封装在上述协议中时,可以被交易所一类的服务商轻松地识别,而无需在这些平台上手动识别和列示。通过检查封装规范首标中包含的协议和子协议,就可以轻松过滤和管理区块链数据、使检查各类BSV链上数据变得非常简单。

封装规范已经尽可能地设计成简单和轻量级的模式,它的效能并不取决于比特币脚本中存储数据的方式,而只需要数据被装在标准化的封装协议中即可。这意味着它可以支持所有类型的协议和协议标识符,包括将来的数据存储协议,并且在各种区块链服务之间实现简单易用集成的能力始终存在。

该规范通过使扩大支持附加协议及组合协议变得简单,从而有助于开发者构建与数据存储相关的应用程序和平台。

“举个例子,如果你已经定义了一个数据格式协议,但又希望支持加密或Metanet,您可以简单地使用此规范将这些协议组合到你的协议之上,你的协议无需悉知Metanet或加密。”TSC表示,“这对双方都有好处。它既有助于协议开发者专注于他们想要支持的特定功能,也有助于软件开发者支持更多的功能,如Metanet、加密、压缩和许多其它功能,他们无须为自己需要的组合功能开发单一协议,而是直接将协议组合起来即可。”

如您想要参与BSV技术标准的制定,请访问TSC网站,您可以提出新标准,在公共审核中提交标准草案反馈,或提交路线图草案建议。