以太坊中calldata的永久存储特性与费用计算
以太坊中calldata是永久存储在区块链上的数据,费用为每字节约15.95 gas,适用于长期保存但无需直接链上访问的数据。
calldata的永久存储特性
calldata是交易中发送的字节数据,存储在区块链的区块中,属于永久存储方式。其数据一旦被写入区块,就成为区块链不可更改的一部分。这与资料中提到的‘calldata是永久存储在区块链上的数据方式’一致。
calldata的费用计算方式
calldata的费用为每字节4 gas(若字节为零)或16 gas(若字节非零)。由于数据通常压缩,每字节的平均费用约为15.95 gas。资料中明确指出‘平均成本约为15.95 gas每字节’,因此该计算方式是基于实际数据得出的。
calldata的适用场景
calldata适用于需要长期保存但无需直接链上访问的数据。例如,乐观汇总(Optimistic Rollups)使用calldata存储交易信息,这些信息在挑战期内需要可用,但一旦挑战期结束,其主要用途是复制链的当前状态。资料中也提到‘rollups使用calldata存储交易信息,这些信息需要在挑战期内可用’。
calldata与其他存储方式的对比
与EIP-4844 blobs相比,calldata的费用更高,但其数据是永久存储在区块链中的。与合同代码相比,calldata更适合存储一次性写入的数据,而合同代码更适合存储需要多次读取的数据。资料中也指出‘calldata是永久存储在区块链上的数据方式’,因此该对比是基于资料内容得出的。
资料与延伸阅读
你可以通过以下原始资料核对文中概念,并继续深入阅读。