Cointime

扫码下载App
iOS & Android

EIP 4844 初学者指南

个人专家

作者:Samuel Okediji 编译:Cointime.com 237

在区块链技术领域,以太坊一直致力于解决其不断扩大的用户基础、提高交易吞吐量和降低成本的问题。为了实现长期可扩展性,以太坊采用了数据分片的概念。作为全面实施分片的过渡性步骤,引入了以太坊改进提案4844(EIP-4844)。该提案旨在使以太坊实现每秒约10万笔交易(TPS)的更高吞吐量,同时保持安全性和去中心化。

理解EIP标准及EIP-4844的重要性:

以太坊改进提案(EIP)是正式文件,概述了对以太坊协议的改进、新功能或变更。它们为以太坊社区成员提出和讨论潜在的增强功能提供了一种方式。

EIP-4844主要关注将分片blob交易集成到以太坊网络中。分片是将数据库划分为较小的分区(即分片),以提高效率和性能。通过实施分片blob交易,以太坊旨在提高交易成本并增加整体吞吐量。尽管EIP-4844不是完整的分片解决方案,但它代表了朝着实现必要的可扩展性和成本效益以促进更广泛采用的重要一步。

本文将深入探讨EIP-4844及其对以太坊可扩展性的影响。我们将解释分片的概念,提供关于EIP标准的作用的见解,并阐明在以太坊生态系统中分片blob交易的重要性。此外,我们还将探讨EIP-4844引入的关键功能和机制,包括携带blob的交易、gas计费以及EIP-4844与全面分片之间的关系。通过阅读本文,您将全面了解EIP-4844及其对以太坊持续改进可扩展性和降低交易成本的努力的贡献。

通过这次探索,您将获得以下见解:

分片的概念及其对提升以太坊可扩展性的重要性

EIP-4844作为向全面分片迈进的中间步骤的角色。

EIP-4844引入的功能和机制,如携带blob的交易和gas计费。

EIP-4844如何与以太坊的可扩展性和成本降低路线图相一致。

用户可以从实施EIP-4844中期待更快的交易和更低的费用。

通过阅读本文,您将能够全面理解和欣赏EIP-4844的重要性,以及它对以太坊实现更大规模可扩展性和广泛采用的影响。

什么是EIP-4844?

EIP-4844专注于在以太坊网络中集成分片blob交易。分片涉及将数据库划分为较小的分区(即分片),以提高效率和性能。在以太坊的背景下,分片旨在改善交易成本并增加吞吐量。以太坊计划实施dank sharding(一种特定类型的分片),预计可以将以太坊的TPS显著提高到约100,000。

与以前的以太坊和非以太坊分片提案相比,dank sharding引入了几个创新。它着重于为数据的blob提供更多空间,而不仅仅是交易。此外,dank sharding实现了合并收费市场,一个提议者为所有分片选择交易,消除了每个分片都需要有自己的提议者的需求。为了解决最大可提取价值(MEV)的问题,还引入了提议者/构建者分离方法。

EIP-4844(Proto-Danksharding)

EIP-4844,也称为proto-dank sharding,是实现全面dank sharding的中间步骤。它旨在将TPS提高到约1,000,并引入了一种名为“blob-carrying transactions”的新事务类型。这些交易包括“blob”数据,这是实现全面dank sharding的关键要素。预计EIP-4844的实施将在2023年下半年进行,但可能会有延迟。

EIP-4844如何工作?

EIP-4844引入了携带blob的交易,与常规交易类似,但额外添加了被称为“blob”的二进制大对象。这些blob附加在区块上,增加了携带blob的区块的数据容量。值得注意的是,与简单增加区块大小不同,包含blob的方式避免了以太坊因中心化和计算要求等问题而增加区块大小的做法。

相比区块,blob具有不同的特性。区块被无限期地存储并对以太坊虚拟机(EVM)可见,而blob的寿命有限且对EVM不可见。Blob存在于以太坊共识层,而不是执行层,从而降低了存储成本。EIP-4844还包含执行层逻辑、验证规则、多维度收费市场和其他对未来全面dank sharding必需的系统变化。

需要注意的是,EIP-4844并未实际实施分片,但使以太坊更接近实现广泛采用所需的可扩展性和成本水平。尽管未实现全面dank sharding,EIP-4844仍提供了可扩展性和节省成本的好处。

EIP-4844将如何使用户受益?

EIP-4844是与以太坊的Rollup为中心的路线图相一致的协议升级。其实施准备工作进展迅速,已经在运行开发网络,并且升级的规范接近最终确定。

在EIP-4844实施后,用户可以期待明显的改进,主要体现在更快的交易和更低的费用上。成功实施还将增强以太坊在加密货币领域的竞争力。

对于关心访问已删除的旧blob数据的用户,重要的是要注意,尽管blob在几周后被删除,它们的数据仍应该在由以太坊共识层维护的长期存储中可用。

Blob交易

EIP-4844引入了一种新的事务类型,“blob交易”,基于EIP-2718标准。blob交易的TransactionType为BLOB_TX_TYPE,TransactionPayload是TransactionPayloadBody的RLP序列化,其中包括chain_id、nonce、max_priority_fee_per_gas、max_fee_per_gas、gas_limit、to、value、data、access_list、max_fee_per_data_gas、blob_versioned_hashes、y_parity、r和s等各种字段。

与常规的创建交易不同,blob交易的“to”字段必须表示一个20字节地址,而不能为nil。

blob交易的EIP-2718 ReceiptPayload由status、cumulative_transaction_gas_used、logs_bloom和logs组成,编码为RLP。

Blob交易格式:

签名

blob交易的y_parity、r和s签名值是通过对特定摘要构建secp256k1签名来计算的。摘要是通过使用keccak256哈希算法对BLOB_TX_TYPE和chain_id、nonce、max_priority_fee_per_gas、max_fee_per_gas、gas_limit、to、value、data、access_list、max_fee_per_data_gas和blob_versioned_hashes的RLP序列化进行串联并进行哈希得到的。

签名计算:

digest = keccak256(BLOB_TX_TYPE || rlp([chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, to, value, data, access_list, max_fee_per_data_gas, blob_versioned_hashes]))

signature = secp256k1_sign(digest, private_key)

y_parity, r, s = extract_signature_parts(signature)头部扩展

EIP-4844通过引入两个新的64位无符号整数字段来扩展当前的头部编码:data_gas_used和excess_data_gas。data_gas_used字段表示区块内交易消耗的数据gas总量。excess_data_gas字段跟踪超出目标值的数据gas的累计值,最小为0。超出目标数据gas消耗的区块增加了excess_data_gas的值,而低于目标值的区块则减少它。

头部编码:

获取版本哈希的操作码

EIP-4844引入了一个名为BLOBHASH的新操作码(使用HASH_OPCODE_BYTE作为操作码字节),用于获取版本化哈希。该操作码从堆栈中读取一个大端序的uint256索引,如果索引在blob_versioned_hashes列表的范围内,则将其替换为tx.blob_versioned_hashes[index]。否则,将索引替换为零值的bytes32。该操作码产生的消耗gas由HASH_OPCODE_GAS定义。

BLOBHASH操作码:

点评估预编译

引入了一个新的预编译,位于POINT_EVALUATION_PRECOMPILE_ADDRESS地址,用于验证KZG证明。该证明表明由一个承诺表示的blob在特定点上评估为给定值。该预编译使用POINT_EVALUATION_PRECOMPILE_GAS成本执行,验证承诺与提供的versioned_hash的关联,并使用承诺、点和证明值验证KZG证明。

点评估预编译:

def point_evaluation_precompile(input: Bytes) -> Bytes:

    versioned_hash = input[:32]

    z = input[32:64]

    y = input[64:96]

    commitment = input[96:144]

    proof = input[144:192]

    assert kzg_to_versioned_hash(commitment) == versioned_hash

    assert verify_kzg_proof(commitment, z, y, proof)

    return Bytes(U256(FIELD_ELEMENTS_PER_BLOB).to_be_bytes32() + U256(BLS_MODULUS).to_be_bytes32())Gas计算

EIP-4844引入了数据gas作为独立于普通gas的新类型。类似于EIP-1559,数据gas遵循自己的目标规则。excess_data_gas头字段存储计算数据gas价格所需的持久化数据。目前,只有blob的价格使用数据gas。

Gas计算公式:

data_fee = calc_data_fee(header, tx)

total_data_gas = get_total_data_gas(tx)

data_gasprice = get_data_gasprice(header)

calc_data_fee(header, tx) = get_total_data_gas(tx) * get_data_gasprice(header)

get_total_data_gas(tx) = DATA_GAS_PER_BLOB * len(tx.blob_versioned_hashes)

get_data_gasprice(header) = fake_exponential(MIN_DATA_GASPRICE, header.excess_data_gas, DATA_GASPRICE_UPDATE_FRACTION)共识层验证

在共识层中,blob被引用,但不在beacon块体内完全编码。而是以“旁路”形式传播。共识层确保blob的可用性,并处理更新的beacon块的处理、传播和同步beacon块类型和新的blob旁路,以及生成带有相关blob旁路的beacon块。

执行层验证

执行层强制执行块的有效条件,包括更新excess_data_gas、blob交易的足够余额,至少存在一个blob,校验版本化blob哈希,确认满足当前数据gas价格,跟踪总数据gas消耗,并强制执行每个块的最大数据gas限制。

网络

blob交易有两种网络表示方式:PooledTransactions和BlockBodies。PooledTransactions使用包装格式,包括EIP-2718 TransactionPayload、blob、commitments和proofs。这些元素封装了验证blob交易所需的必要数据。用于内容检索响应的BlockBodies遵循标准的EIP-2718 blob交易TransactionPayload格式。

节点不会自动向对等节点广播blob交易。相反,这些交易将使用NewPooledTransactionHashes消息进行通告,并可以使用GetPooledTransactions手动请求。

结论

EIP-4844是实现全面分片的重要一步,与以太坊提供对rollup进行临时扩展的目标相一致。通过引入符合最终分片规范预期格式的blob交易,EIP-4844允许rollup在每个slot上扩展到0.375 MB。它建立了一个独立的费用市场,在系统有限使用时保持低费用。

EIP-4844的设计在实现成果和减少未来开发负担之间取得了平衡。它显著推进了实现全面分片所需的工作,包括新的事务类型、执行层逻辑、共识交叉验证、beacon块逻辑以及blob的自适应独立gas定价。

实现全面分片的进一步工作包括2D采样扩展、数据可用性采样实施、提议者/构建者分离,以及验证器的托管证明要求。

EIP-4844还为未来的协议增强和清理铺平了道路,如将其gas价格更新规则应用于主要basefee计算。

ETH
评论

所有评论

推荐阅读

  • Nexus Chain × Ant.fun:共建社交化链上交易新范式

    作为 Nexus Chain 的生态战略伙伴,Ant.fun 正在以“社交 + 交易”的创新模式,推动链上交易与用户增长的结构性升级。Ant.fun 是领先的社交化去中心化交易平台,Web 端全面免手续费,App 端通过交易挖矿驱动增长,并深度集成信息流、直播与超大规模聊天室,帮助用户在同一平台内完成信息捕捉、交易决策与执行。

  • BTC跌破86000美元

    行情显示,BTC跌破86000美元,现报85992.01美元,24小时跌幅达到1.87%,行情波动较大,请做好风险控制。

  • 美联储正式取消2023年限制银行与比特币合作的政策

    据 The Bitcoin Historian 披露,美国联邦储备委员会已正式取消一项于2023年出台的政策,该政策此前对银行与比特币相关业务的参与设置了限制。

  • Coinbase推出股票交易、预测市场等服务,力图成为“万能交易所”

    据周三发布的一篇博客文章称,在美国上市的加密货币交易所 Coinbase (COIN) 正在引入股票交易并整合预测市场,以及一系列其他新产品和资产,旨在巩固该平台作为“万能交易所”的地位。Coinbase 表示,它正在大幅扩展其平台上可交易的资产种类,包括新型加密货币、永续期货、股票和预测市场,首先是与 Kalshi 合作,之后还将整合更多资产。

  • BTC跌破86500美元

    行情显示,BTC跌破86500美元,现报86498.99美元,24小时跌幅达到1.73%,行情波动较大,请做好风险控制。

  • ETH跌破2900美元

    行情显示,ETH跌破2900美元,现报2899.63美元,24小时跌幅达到2.02%,行情波动较大,请做好风险控制。

  • BTC突破90000美元

    行情显示,BTC突破90000美元,现报90001.81美元,24小时涨幅达到3.3%,行情波动较大,请做好风险控制。

  • BTC突破89000美元

    行情显示,BTC突破89000美元,现报89005.05美元,24小时涨幅达到1.92%,行情波动较大,请做好风险控制。

  • BTC突破88000美元

    行情显示,BTC突破88000美元,现报88001美元,24小时涨幅达到0.46%,行情波动较大,请做好风险控制。

  • “1011内幕巨鲸”今日解质押270,959枚ETH,并转至新地址

    据 Arkham监测,“1011 内幕巨鲸”今日已通过三个地址解质押 270,959 枚 ETH 数量,价值 7.95 亿美元,随后将所有 ETH 转移到三个新地址。