Kaspa 敲定原生代币与契约应用三项标准

KAS
开发者工具同质化代币KCC 标准契约生态系统Kaspa
1 小时前来源: crypto.news
Kaspa 敲定原生代币与契约应用三项标准

Kaspa 的 KCC 协调论坛已最终确定三项标准,涵盖契约接口、授权和同质化代币,为在该网络上构建应用的开发者建立了共享规范。

摘要

  • KCC-1 定义了钱包、编译器、索引器及其他处理契约的工具所共享的接口。
  • KCC-2 规定了五种标准授权方案,包括公钥、脚本和契约标识符。
  • KCC-20 设定了代币转移规则,并支持通过现有的兼容输出接收代币。
  • 最终确定建立了生态系统约定,但不改变共识规则,也不要求每个参与者都采用它们。

KCC 协调论坛在 10 月 21 日的一份公告中表示,KCC-1、KCC-2 和 KCC-20 已最终确定,可供整个生态系统采用。该论坛邀请构建者加入其公共频道,以提出问题、讨论实现并获得支持。

Kaspa 的规范标准仓库将这三份文件均列为最终版本。其索引将 KCC-1 标识为契约规范,KCC-2 标识为授权规范,KCC-20 标识为同质化代币契约的应用标准。

该仓库将 KCC 描述为独立实现的共享约定。其文档将这些约定与共识或核心节点行为的变更区分开来,后者属于 Kaspa 改进提案的范畴。

Kaspa 标准涵盖应用开发的不同部分

KCC-1 定义了通用术语、数据布局以及契约的应用二进制接口(ABI)。该规范描述了软件如何编码信息、调用程序函数,以及识别交易之间传递的状态。

其作者 Romain Billot、Michael Sutton 和 Ori Newman 指出,编译器、钱包、索引器和交易构建器等工具需要就这些细节达成一致。该文件表示,独立实现需要共同的格式,而不仅仅是生成能通过共识检查的脚本。

KCC-1 规范让开发者可以自由选择其编程语言、编译器和框架。其共享接口涵盖程序入口点、状态模板以及处理涉及多个输入的交易的规则。

在同一份文件中,作者将基本接口规则与依赖契约标识符的功能区分开来。没有契约绑定的程序可以遵循 KCC-1,但该规范表示,它们无法获得 KIP-20 所提供的谱系和授权保证。

KCC-2 定义了谁可以授权某项操作

KCC-2 由 Billot 和 Sutton 编写,规定了程序如何识别授权方以及确立其批准所需的最低检查。授权方可以是公钥、对密钥的承诺、脚本或延续的契约谱系。

该规范为五种授权方案分配了标准标识符。其公钥选项涵盖 Schnorr 和 ECDSA 签名,而其他选项允许脚本或契约谱系作为授权方参与。

对于公钥哈希授权,KCC-2 要求交易揭示相应的公钥,将其哈希与存储的授权值进行匹配,并提供有效签名。更高层级的规范定义了签名消息及任何进一步的条件。

授权注册表为标准方案和自定义方案保留了各自的范围。KCC-2 允许参与者采用自定义方案而无需等待标准化,前提是其定义明确了格式、含义和批准检查。

根据其契约标识符方案,批准需要来自所标识契约谱系的输入。KCC-2 表示,更高层级的约定可以对该输入的程序和状态施加进一步检查。

KCC-20 规定代币转移和接收规则

KCC-20 建立在前两个标准之上,定义了代币数量、所有权和转移接口。该文件将 Sivan Helfer、Sutton、Newman 和 Billot 列为作者。

其规范要求每个代币契约发布程序信息,软件可使用这些信息来解码状态并构造转移。配置必须披露支持的所有权方案以及对代币输入和输出的限制。

一项名为借用接收的功能允许发送方使用接收方现有的兼容代币输出作为目标。KCC-20 表示,该交易会用更多代币重新创建该输出,保留其所有权和扩展状态,并且不能降低其 KAS 价值。

安全部分警告称,替换输出会改变其交易引用,从而使花费先前引用的未确认交易失效。根据该文件,钱包必须在花费之前发现替换。

该标准链接了一个 Argent 参考实现,以及生成的 SilverScript 合约和 Rust 一致性测试。

最终状态带有实现要求

KCC-0 是管理标准流程的文件,它要求的不仅仅是完成最终审查期。它表示,标准轨道约定需要人类可读和机器可读的测试向量,以及至少一个通过机器可读检查的公开实现。

根据同样的规则,对于其他 KCC,依赖项必须为 Final;对于 KIP,依赖项必须为 Active。KCC-0 表示状态变更通过拉取请求进行,并且仓库索引必须随之更新。

KCC-0 将机器可读测试向量描述为:当它们伴随人类可读示例时,是自动化测试的权威形式。其提交规则要求安全考虑事项在标准轨道文件能够进入 Last Call 之前,必须处理威胁、信任假设和潜在重放问题。

该管理文件指出,最终化并不要求每个生态系统参与者都实现某一约定。实质性变更通常需要替代性的 KCC,而更正和澄清则遵循该文件的修订规则。

Kaspa 的应用开发此前已包含独立的 Layer 2 基础设施。据 crypto.news 报道,Gate 在 4 月宣布了 Kasplex Layer 2 集成,使 KAS 能够通过兼容 EVM 的网络进行充值和提现。

在此前的集成公告中,Gate 表示客户可以将 KAS 从基础网络转移到 Kasplex 钱包。Kasplex 的项目材料描述了一个双向桥,并表示熟悉以太坊工具的开发者可以通过更改其远程过程调用端点来部署合约。

Kasplex 将其设计描述为一种轻量级 rollup,它将 EVM 字节码放入 Kaspa 交易中并在链下执行。其文档称,Kaspa 提供交易排序和数据可用性,而桥接的 KAS 则作为 Layer 2 的 gas 代币。