EIP-8164: Native Key Delegation Ethereum Magicians
2026-02-19T03:48:04.000Z Add a new transaction type that allows EIP-7702-style delegation of accounts to non-ECDSA keys. Specify ed25519 as the first non-ecdsa key type. Discuss extension to post-quantum key schemes, pending selection of a suitable scheme 1 post - 1 participant Read full topic
AI 生成摘要
增加一種新的交易類型,允許將帳戶以 EIP-7702 的方式委託給非 ECDSA 密鑰。指定 ed25519 為首個非 ECDSA 密鑰類型,並討論在選定合適方案後擴展至後量子加密方案。
EIP-8164:原生密鑰委託 - Fellowship of Ethereum Magicians
摘要
本提案引入了一種原生機制,允許以太坊帳戶(外部帳戶,EOA)將其簽署權限委託給另一個密鑰或地址。這種委託發生在協議層級,使被委託方能夠代表委託方發起交易並與智能合約互動,而無需直接存取委託方的私鑰。
動機
目前,以太坊帳戶與其私鑰緊密耦合。如果用戶想要使用不同的設備或服務來代表其帳戶進行操作,通常必須共享私鑰(極不安全)或依賴複雜的智能合約錢包。
原生密鑰委託旨在解決以下問題:
安全性 :允許用戶在日常交易中使用「熱錢包」密鑰,同時將主密鑰保存在冷存儲中。
靈活性 :實現更簡單的帳戶抽象化,無需完全遷移到合約錢包。
互操作性 :在不同的應用程式和鏈上提供標準化的委託方式。
規範
委託結構
委託由一個簽署的消息組成,其中包含以下欄位:
delegator: 授權權限的地址。
delegatee: 獲得授權的地址或公鑰。
nonce: 用於防止重放攻擊的計數器。
expiry: 委託失效的區塊高度或時間戳。
permissions: 定義允許操作範圍的位元遮罩或列表。
鏈上驗證
以太坊執行層將新增一個預編譯合約或指令,用於驗證給定的交易是否由有效的被委託方簽署。
interface IKeyDelegation { function isDelegate(address delegator, address delegatee) external view returns (bool); }
理由
選擇在協議層級實現委託(而非僅在應用層),可以確保所有合約和工具都能以統一的方式識別委託關係。這降低了開發者的負擔,並提高了終端用戶的安全性。
向後相容性
此提案與現有的 EOA 完全相容。不使用委託功能的帳戶將不受影響。
安全考量
重放攻擊 :必須使用 nonce 和鏈 ID 來確保委託在不同環境下不可重用。
權限過大 :建議實施細粒度的權限控制,以限制被委託方可以執行的操作類型。
撤銷機制 :用戶必須能夠隨時撤銷委託,這通常透過增加 nonce 來實現。