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
评论

所有评论

推荐阅读

  • EXOR集团 :拒绝Tether公司收购尤文图斯股份的提议

    EXOR集团 :拒绝Tether公司收购尤文图斯股份的提议,重申无意出售尤文图斯股份。 此前报道,加密货币巨头Tether公司对于收购尤文图斯俱乐部的计划非常认真,他们准备再次开出一份超过20亿欧元的新报价。

  • Tether 开出总估价超过 20 亿欧元的新报价收购尤文图斯

    加密货币巨头 Tether 公司对于收购尤文图斯俱乐部的计划非常认真,他们准备再次开出一份超过 20 亿欧元的新报价。昨天 Tether 已经向 Exor 董事会提交了一份报价,意图收购阿涅利家族控股公司所持有的尤文图斯 65.4% 股份,这一消息由首席执行官保罗-阿尔多伊诺通过社交媒体公布,但这仅仅是谈判的开始。

  • American Bitcoin比特币储备过去7天增加约623枚,现仓位达4941枚BTC

    此前曾披露分析“1011内幕巨鲸”的链上分析师Emmett Gallic在X平台发文披露特朗普家族支持的加密矿企American Bitcoin比特币储备更新数据,过去七天增加约623枚BTC,其中约80枚来自于挖矿收入,542枚来自于公开市场的战略收购,截至目前其比特币总持有量增至4941枚,当前市值约合4.5亿美元。

  • 美国现货以太坊ETF昨日净流出1940万美元

    据TraderT监测,美国现货以太坊ETF昨日净流出1940万美元

  • 华夏基金香港在Solana上推出亚洲最大代币化货币市场基金

    12月12日消息,华夏基金香港(ChinaAMC HK)产品与策略负责人 Katie He 在 Solana Breakpoint 大会上表示,将推出亚洲首个且规模最大的代币化货币市场基金,涵盖港币(HKD)、美元(USD)和人民币(RMB)计价,将传统货币市场工具代币化,为投资者提供安全、链上访问稳定收益的机会,具有完全透明度和实时结算。经过数月与监管机构及 OSL 等伙伴的合作,这一创新将自香港扩展至更广阔地区,并原生部署到 Solana 区块链上。

  • 加拿大皇家银行已购入77,700股American Bitcoin股票

    据市场消息:价值1万亿美元的加拿大皇家银行已购入77,700股American Bitcoin ($ABTC)股票,价值约15万美元。该比特币矿企由特朗普家族成员Eric Trump支持。

  • 中国人民银行:继续实施适度宽松的货币政策,推进人民币国际化

    中国人民银行党委召开会议,会议纪要第三点指出:继续实施适度宽松的货币政策,加快推进金融供给侧结构性改革。把促进经济稳定增长、物价合理回升作为货币政策的重要考量,灵活高效运用降准降息等多种货币政策工具,把握好政策实施的力度、节奏和时机,保持流动性充裕,促进社会综合融资成本低位运行,加强对实体经济的金融支持。畅通货币政策传导机制,优化结构性货币政策工具运用,加强与财政政策的协同,激励和引导金融机构加力支持扩大内需、科技创新、中小微企业等重点领域。保持人民币汇率在合理均衡水平上的基本稳定。会议纪要第五点指出:稳步推进金融高水平开放,维护中国国家金融安全。践行全球治理倡议,积极参与和推进全球金融治理改革完善。务实开展金融外交和多双边货币金融合作。推进人民币国际化。持续建设和发展多渠道、广覆盖的人民币跨境支付体系。稳步发展数字人民币。

  • 日本央行据悉将进行更多加息 部分官员认为中性利率高于1%

    据知情人士透露,日本央行官员认为,在本轮加息周期结束前,利率很可能升至0.75%之上,这表明在下周加息之后,可能还会有更多次加息。这些人士称,官员认为,即使加息至0.75%,日本央行仍未达到中性利率水平。部分官员已认为1%仍低于中性利率水平。知情人士表示,即便日本央行根据最新数据更新中性利率估算,目前也并不认为该区间会显著收窄。目前日本央行对名义中性利率区间的估计约为1%至2.5%。知情人士称,日本央行官员认为该区间上下限本身也可能存在误差。(金十)

  • Nexus 启动“节点之光·先锋理财周”,打造节点用户专属通道

    Nexus 12月12日宣布即将启动为期五天的 “节点之光·先锋理财周”,以“节点身份金融特权” 为核心理念,为生态核心参与者开启一段独立于全平台的专属理财周期。此次活动仅限节点用户参与专属理财包认购,并为随后上线的全平台理财与 NexSwap 注入市场期待。

  • 美 SEC 主席:DTC 参与者可将代币化证券转入其他参与者的注册钱包

    美国证券交易委员会(SEC)主席 Paul Atkins 在 X 平台发文表示,美国金融市场即将向链上转型并将优先考虑创新并积极采用新技术,SEC 已向美国存托信托与清算公司(DTC)发布了一封不采取行动的信函,链上市场将为投资者带来更高的可预测性、透明度和效率,现在 DTC 参与者可以直接将代币化证券转入其他参与者的注册钱包,这些交易将被 DTC 官方记录跟踪。