3. 每个区块可以承载多少条交易数据?
问题
Kaspa 目前每秒 10 个区块。那么,每个区块可以承载多少条交易数据? TPS 的理论最高值是多少?
问题回答
Kaspa 核心开发 Ori Newman 给了一个详细的讲解:https://x.com/OriNewman/status/1974829990882553925
重要概念: mass,是区块可以承载的数据的单位,根据 KIP-9 和 KIP-13 标准,Kaspa 每个区块的 mass 上限为 500,000 mass
不同的交易,占用的 mass 数量是不一样的。有如下三种交易类型:
最小交易(1输入,0输出): 一般用于代币销毁、UTXO 合并清理等。使用场景很少。
每条交易占用 584 mass
每个区块可以承载 500,000 / 584 = 856 笔这种交易。
常见交易(1输入,2输出): 典型的转账交易,花费一个输入并创建两个输出(发送到两个地址)。
每条交易占用 2036 mass
每个区块可以承载 500,000 / 2036 = 245 笔这种交易。
Layer 2 交易(1输入,1输出): 适用于Layer2应用(如状态通道或智能合约),交易携带有效负载。
每条交易占用 1452 mass
每个区块可以承载 500,000 / 1452 = 344 笔这种交易。
总结
按最小交易来算,每个区块可以承载 856 笔,每秒交易量可以达到 8560 TPS(每秒 10 个区块)。但这种交易场景本来就很少,没有实际意义
按普通常见交易和 L2 交易来算,每个区块的承载区间是 245 - 344,每秒交易量的范围是 2450 TPS ~ 3440 TPS 之间。这是一个合理的,有意义的 TPS 值。
实际场景
真实的交易场景更加复杂,可能会有更多的交易类型。在 kas.fyi 网站上,可以查看每笔交易的 Mass 的值,如:
