跳至內容
0%

什麼是 Ethereum Pectra 升級?11 個 EIP 開發者指南

發布於 2025年5月7日閱讀時間 3 分鐘

Pectra升級(Prague + Electra)是Ethereum下一次重大硬分叉,也是就納入的EIP數量而言規模最大的升級,已於2025年5月7日上線。它一次包含11個EIP,涵蓋範圍從智慧錢包功能到質押機制,再到rollup資料效率。以下我們逐一拆解每項改進,說明改變了什麼,以及對你這位開發者的影響——無論你部署的是應用程式、智慧合約,還是自己的鏈。

重點EIP一覽

Pectra中即將推出哪些EIP?我們逐一說明。

EIP
Description

EIP-7702

Upgrades EOAs into smart wallets, enabling transaction bundling, gas sponsorship, session keys, asset recovery, passkeys

EIP-7691

Increases blob capacity, boosting rollup scalability and reducing transaction fees by doubling the max blob count from 3/6 to 6/9

EIP-7251

Raises the max stake/validator from 32 to 2048 ETH, enabling auto-compounding rewards, reducing network load & improving staking efficiency

EIP-7623

Increases calldata costs for rollups, encouraging exclusive use of blobs while keeping costs stable for regular L1 users.

EIP-7002

Enables validator withdrawals via the execution layer, allowing trustless staking pools and removing reliance on intermediaries for withdrawals and rewards

EIP-7685

enables direct communication between the execution layer consensus, smart contracts can now directly interact

EIP-2537

making operations like BLS signatures & zk proofs faster/cheaper, lowering gas costs for rollups, bridges, and privacy apps

EIP-2935

extends on-chain block history to 8,192 blocks, enabling stateless clients & improving trustless access for rollups & cross-chain apps

EIP-6110

speeds up validator activation by recording deposits directly in blocks, reducing wait times and making staking more efficient

EIP-7549

optimizes validator signature aggregation, drastically reducing verification costs, enabling efficient light clients, and improving zk-proof generation

EIP-7840

improves blob configurability by formalizing blob capacity in execution layer configs, enabling accurate fee predictions and smoother future upgrades.

智慧EOA(EIP-7702):錢包獲得「超能力」

EIP-7702讓一般的外部帳戶(Externally Owned Account, EOA)能在一筆交易中暫時執行智慧合約程式碼。實際上,這引入了一種新的交易類型,讓EOA能夠附加並執行位元組碼(bytecode),而不會永久變成合約。可以想像成你的一般錢包突然能在單筆交易中表現得像完整的智慧合約錢包一樣。這項升級被稱為Ethereum錢包的「iPhone時刻」——大幅擴展了錢包的能力,遠不止傳送ERC-20代幣或呼叫合約而已。它與主流的帳戶抽象化(account abstraction, AA)標準ERC-4337相容,因此既有錢包可以在不建立新地址、不轉移資產的情況下變成智慧錢包

對應用程式與錢包開發者的影響

對於已有使用者的應用程式與錢包開發者來說,EIP-7702的影響非常大。它在協議層級直接開啟了更好的UX流程(批次交易、免gas費UX、社交復原邏輯、多簽驗證等)。錢包供應商可能需要整合這種新的交易類型,並為這些「智慧帳戶」功能提供UI。

對於要面向全新使用者推出的應用程式,建議選擇ERC-4337以取得最佳的安全性與功能。詳細建議請參考這篇指南

說明 EIP-7702 如何讓 EOA 執行智能合約程式碼的資訊圖表
Ethereum Pectra EIP-7702 摘要

對智慧合約開發者的影響

對於智慧合約開發者來說,需要注意有些舊有假設已經失效。原本依賴tx.origin來確認呼叫者是EOA(一種防止重入或防機器人的模式)的合約,將不再有效。

在7702之下,一個EOA既是tx.origin可以執行內部呼叫——這代表tx.origin == msg.sender檢查已無法可靠地區分「外部呼叫」與「內部呼叫」。如果你的程式碼使用了這種模式,應考慮更新。另一方面,你現在可以設計合約,預期EOA會執行更複雜的交易邏輯——例如,一個dApp可以假設使用者會把授權(approval)與動作綁在一起批次執行,並針對這點進行優化。

另外,如果你打算使用EXTCODESIZE==0EXTCODESIZE是一個回傳帳戶程式碼大小的操作碼),請記住在7702之後EXTCODESIZE會回傳非零值,因此強制執行EXTCODESIZE==0檢查會封鎖任何使用7702的錢包。

提醒:早在此之前,就已經可以透過合約建構子(constructor)中的外部呼叫來繞過合約大小檢查,因為在合約建立流程完成之前,該合約地址上不存在任何程式碼,因此回傳值為零。

我們可以協助你整合EIP-7702。歡迎了解智慧錢包功能、閱讀EIP-7702實作指南,若有整合相關問題可與我們聯繫

資料可用性與rollup可擴展性(EIP 7691、7623、7840)

Rollup開發者,這部分是為你準備的。Pectra包含對Ethereum資料可用性層的升級,這將直接影響L2的吞吐量與成本。整體主題是「使用blob,而非calldata,並且用更多blob!」——延續自proto-danksharding(Dencun中的EIP-4844)的動能,讓rollup更便宜、更有效率。

EIP-7691:每個區塊的blob容量翻倍

改變了什麼:

EIP-7691提高了Ethereum每個區塊可承載的blob容量,將目標blob數量從3個翻倍到6個,並將允許的最大值從6個提高到9個。它也微調了與blob相關的手續費機制:當區塊滿載時,blob基礎費用上升幅度會稍微放緩(上升約8.2%),而當blob稀缺時則下降得更劇烈(下降約14.5%)。這確保即使blob容量擴大,手續費仍能維持穩定且可預測。

影響:

這直接使rollup受益,讓它們能在每個Ethereum區塊中放入兩倍的資料。實際上,rollup可以選擇提升交易吞吐量、降低手續費,或兩者兼顧。與樂觀(optimistic)或ZK rollup等L2方案互動的使用者,應該會看到明顯較低的交易手續費或更高的效能,因為資料可用性成本對整體交易費用有很大影響。

EIP-7623:提高calldata成本以促使rollup轉向blob

改變了什麼:

EIP-7623策略性地提高了交易calldata的gas成本。在blob出現之前,rollup通常直接把壓縮資料存放在calldata中,這種做法曾一度受到Ethereum的鼓勵。現在,Ethereum透過讓calldata相對變貴,來鼓勵rollup完全把資料儲存遷移到blob上。

影響:

這種經濟誘因意在促使rollup從低效率的calldata使用方式,轉向專用的blob儲存層。可以把Ethereum區塊想像成行李箱:一般交易是普通行李,而大量calldata則像是塞進保齡球。EIP-7623意味著攜帶重物的人必須支付更多費用,藉此鼓勵使用blob這個Ethereum專用的資料艙。

Rollup開發者必須相應更新其系統。仍在使用calldata作為資料可用性方式的舊有rollup,需要完全轉換到blob,否則將面臨顯著更高的營運成本。一般智慧合約與標準Ethereum交易由於calldata用量極少,基本上不受影響。

EIP-7840:可設定的blob參數(面向未來)

改變了什麼:

EIP-7840在客戶端設定中引入了一個新的「blob schedule」物件。過去每次分叉都需要為blob相關參數(如每個區塊的目標與最大blob數)寫死程式碼,現在這些設定可以透過設定檔調整,讓網路調校更容易、也更可預測。

在客戶端設定檔中,加入具有以下結構的blobSchedule物件:

json
Copied
"blobSchedule": { "cancun": {"target": 3,"max": 6,} "prague": { "target": 6, "max": 9 }, "osaka": { "target": 12, "max": 16}, ... }

若目前分叉沒有明確設定,則沿用上一個分叉指定的數值。若沒有前一個數值,則兩者都設為零。

影響:

這項改變簡化了未來的調整流程。舉例來說,未來升級要再次提高blob容量時,不再需要大幅修改程式碼——只要簡單調整設定即可。這為rollup與Ethereum核心開發者提供更大的彈性,也讓Ethereum的擴展路徑更透明、更易維護。

營運節點或基礎設施的開發者應確保其執行客戶端在升級後正確納入這些blob參數。應用程式開發者不會立即感受到直接影響,但會間接受益於Ethereum資料可用性層更平順、更可預測的擴展結果。

若你有興趣部署rollup,或對相關效益有疑問,歡迎與我們聯繫

質押與驗證者升級(EIP 7251、7002、6110、7549、7685)

改變了什麼:

Pectra升級為Ethereum質押帶來了關鍵改進。驗證者現在每個驗證者最多可持有2048 ETH(EIP-7251),降低了複雜度並讓獎勵可以自動複利成長。驗證者可以直接從執行層發起退出(EIP-7002),由於處理流程更簡化,存款啟用速度更快(約13分鐘,從原本的數小時縮短,EIP-6110),證明(attestation)簽章的效率大幅提升(驗證次數減少約60倍,EIP-7549),並且執行層與共識層之間建立了標準化的通訊管道(EIP-7685)。

為什麼重要:

這些改變共同提升了質押體驗,讓驗證者的操作變得更簡單、更安全,也更具擴展性。更少的驗證者管理更大的質押量,代表更低的營運負擔與更高的網路效率。執行層發起的退出提升了驗證者的安全性與去中心化程度,而更快的存款處理則改善了使用者體驗。跨層通訊的標準化也為未來更順暢的升級奠定了基礎。

對開發者的影響:

基礎設施與質押池開發者必須調整其工具與流程,以因應更大的驗證者質押量、由執行層觸發的退出,以及簡化後的證明機制。客戶端與節點營運者將受益於降低的複雜度與提升的網路效率,但必須相應更新軟體。一般dApp開發者受到的直接影響很小,但會間接受益於網路效能與穩定性的提升。

加密學與歷史資料強化(EIP 2537與2935)

改變了什麼:

EIP-2537為Ethereum新增了針對BLS12-381橢圓曲線的原生預編譯(precompile),讓BLS簽章驗證與zk-SNARK證明等運算的成本大幅降低。過去,這類複雜的加密學檢查在智慧合約中的成本高得令人卻步。EIP-2935將Ethereum的BLOCKHASH歷史紀錄範圍從約1小時(256個區塊)延伸至約27小時(8192個區塊),讓合約可以直接在鏈上參照較近期的過去區塊。

為什麼重要:

EIP-2537讓開發者能直接在Ethereum上打造進階的加密學應用——例如zk-rollup、鏈上輕客戶端證明、無需信任的橋接,以及隱私保護型合約——且gas成本大幅降低。同時,EIP-2935解決了Ethereum「短期記憶」的限制,支援需要可靠鏈上歷史參照的使用情境,例如強化的隨機數產生、可驗證證明,以及rollup詐欺證明。

對開發者的影響:

智慧合約開發者將獲得強大且高效的鏈上加密學工具(EIP-2537),以及更廣泛存取近期歷史資料以供合約邏輯使用的能力(EIP-2935)。涉及進階加密方案的應用——例如使用聚合BLS簽章的DAO、以zk為基礎的隱私應用,或鏈上驗證系統——將變得更容易實作。此外,依賴近期區塊雜湊值來產生隨機數或進行驗證的合約,現在能可靠地存取鏈上資料,簡化了其設計並降低對外部依賴。

常見問題

Ethereum Pectra升級何時發生?

Pectra升級已於2025年5月7日上線。如同過去的Ethereum硬分叉,確切時間點取決於區塊產生速率,但生態系參與者與開發者應在此目標日期之前做好系統準備。

Pectra升級的主要功能是什麼?

Pectra的重點功能包括:

  • 為一般錢包提供暫時的智慧合約能力(EIP-7702),被稱為Ethereum錢包的「iPhone時刻」
  • 將每個區塊的blob容量從3個翻倍到6個,讓rollup更有效率、更節省成本
  • 將最大驗證者容量從32提高到2048 ETH,簡化驗證者操作
  • 新增對BLS12-381加密學的原生支援,讓進階加密應用得以在鏈上實現
  • 將區塊歷史參照範圍從約1小時延伸到約27小時,強化智慧合約功能

Pectra升級對Ethereum開發者有何影響?

Pectra的影響因開發者的關注領域而異:

  • 應用程式與錢包開發者透過EIP-7702的智慧帳戶功能,獲得強大的UX能力
  • 智慧合約開發者需要檢視依賴tx.origin檢查或EXTCODESIZE==0假設的程式碼
  • Rollup開發者應完全從calldata遷移到blob,以取得最佳成本效益
  • 基礎設施供應商需要更新客戶端,以因應新的blob參數與驗證者操作
  • 加密學應用開發者現在可以實作先前不切實際的zk-SNARK與BLS簽章方案

Pectra與Dencun等先前的Ethereum升級有何不同?

Pectra建立在Dencun的proto-danksharding基礎上,但採取了更廣泛的做法。Dencun主要聚焦於引入blob以提升資料可用性(EIP-4844),而Pectra則同時處理Ethereum協議的多個面向。它大幅強化了錢包功能、優化了質押經濟模型、讓blob容量翻倍,並引入原生加密運算。這種全面的範圍,使Pectra成為就納入EIP數量而言Ethereum規模最大的升級,觸及的協議層面比Dencun、Shanghai或Paris等先前升級都更廣。

為每個人打造更好的鏈上未來

Pectra升級為Ethereum帶來了實質性的改進,提供更智慧的錢包、可擴展的質押機制、強大的加密學能力,以及增強的資料可用性。對開發者來說,這代表更穩健的工具、更簡化的操作流程,以及在打造下一代去中心化應用時擁有更大的彈性。這是重要的一步——讓你能打造更好的使用者體驗、更強大的解決方案,最終促成更健全的Ethereum生態系

探索相關資源

我們隨時準備協助你善用所有升級,打造成功的鏈上應用。

與我們的團隊聯繫,一起打造吧!

Background gradient

打造區塊鏈魔法

Alchemy 結合最強大的 Web3 開發者產品與工具,並提供資源、社群與卓越的支援。