以太坊錢包可能很快就要迎來重大升級。一旦升級完成,普通賬戶即可發送批量事務、限期事務、無序事務等。
我與兩位同事@_SamWilsn_和@adietrichs正在研究如何改善以太坊的交互體驗。經過多次迭代后,我們提出了EIP3074:操作碼AUTH和AUTHCALL。
要想使用這兩個操作碼,外部賬戶需要在鏈下簽署一個消息,并將該消息發送給中繼者,再由中繼者將簽名和調用數據發送至一個鏈上合約。調用者合約會先使用操作碼AUTH來驗證簽名,再使用操作碼AUTHCALL中繼外部賬戶的調用。
AUTHCALL與普通調用只有一個區別:AUTHCALL將調用者設為使用操作碼AUTH恢復的外部地址。這樣一來,用戶不使用以太幣也可與以太坊交互。換言之,他們的事務是由中繼者“贊助”的。
你可能會覺得這個機制似曾相識。事實上,這與元事務的運作方式差不多。但是這里要強調一下,元事務是不能隨意設置消息發送方的。因此,合約必須明確支持元事務。EIP3074旨在淘汰元事務,降低合約的復雜性。
數據:以太坊市值占比為18.8%:金色財經報道,據CoinGecko數據顯示,當前加密貨幣市值為2.72萬億,比特幣市值占比為40.9%,以太坊市值占比為18.8%。[2021/11/20 7:00:50]
在深入闡述運作原理之前,我們先來介紹一下我們想要構建什么。我們想要構建一個讓普通用戶無需使用以太幣即可以免信任方式發送事務的機制。這里的關鍵詞是“免信任”,即,用戶不會授予中繼者任何可能會被利用的特權。
EIP3074通過謹慎選擇普通賬戶簽名中包含的參數來創建免信任系統。用戶簽署keccak。
“typebyte”是EIP2718的常量字節,值為0x03。這個字節的作用是避免與其它簽名機制發生沖突,例如,EIP2930的訪問列表事務、EIP1559的費用市場事務、EIP191的0x19簽名消息等。
以太坊基金會和Quilt提案請求對EIP-3074操作代碼進行安全審查:以太坊基金會和參與開發以太坊2.0智能合約執行環境的Quilt發起對EIP-3074操作代碼進行安全審查的提案請求。據介紹,EIP-3074提供了一個靈活的原語來開發新的錢包擴展,然而,這種靈活性增加了對用戶和現有應用程序產生意外后果的可能。審計應徹底審查EIP規范并探索發現的所有潛在安全問題,但應主要關注用戶資產的安全性、用戶及其錢包的新威脅模型,以及編寫安全調用方合約的可行性。[2021/4/8 19:57:52]
調用者地址將用戶的調用與特定合約綁定。用戶的簽名只對調用者合約有效。因此,用戶可以選擇自己信任的調用者,就像是選擇用來存放資產的智能合約錢包那樣。
我們預期只會有少量調用者存在,因為如果調用者合約的實現出錯,用戶就有可能蒙受損失。開發一個安全的調用者合約成本會很高,需要經過多方審計和靜態證明。
以太坊開發者:EIP-1559預計將于今年推出,對以太坊網絡非常有利:1月22日消息,以太坊開發者Danny Ryan表示,以太坊改進提案EIP-1559預計將于今年推出。他強調,這一改進方案對以太坊網絡非常有利。EIP-1559的收費機制將在eth2的分片數據層上實現。當試圖將數據放入以太坊網絡時,這將為以太坊的數據消費者提供更好的用戶體驗,幫助Rollup安全地將其區塊數據輸入信標鏈中。此前報道,EIP-1559在代碼方面已經基本完成,但是該提案遭到了礦工們的一些抵制。(TrustNodes)[2021/1/22 16:44:00]
不過這與如今的慣例沒什么太大的不同。在存放巨額資金之前,智能合約錢包也應該經過全面的審計和證明。很多大型DeFi項目也是如此。
最后一個簽名參數是commit_hash。這為調用者設計者帶來了更大的靈活性,可以讓他們開發出很多不同的方案。
觀點:以太坊2.0推出過程并不一定順利,用戶質押前需注意三點:11月24日消息,今日以太坊2.0存款合約地址余額成功達到524288枚ETH,達成啟動以太坊2.0創世區塊的最低要求,未來質押ETH變得更加有趣,外媒Cryptomode網站發文對此提出了三點注意事項:第一,質押資金將被長期鎖定,在第1階段啟動之前,將不可能移動任何抵押的ETH,可能需要幾個月甚至幾年的時間;第二,最高獎勵不會持續很長時間,隨著越來越多的驗證器在網絡上運行,獎勵將不斷減少,一旦投入一百萬個以太坊,獎勵將從每年22.95%下降到16.62%;第三,選擇信任第三方以太坊2.0驗證程序的用戶可能面臨更多問題,資金不受控制,加收服務費等。總而言之,即使達成創世區塊最低要求,以太坊2.0的推出過程并不一定像人們最初想象的那樣簡單。(Cryptomode)[2020/11/24 21:57:32]
這個commit限制調用者只能執行特定操作并創建特定的驗證要求來處理調用。用戶可以信任調用者會遵循這一流程,因為他們可以在鏈上驗證代碼。這就是區塊鏈的優點。
我們來看一個簡單的案例。用戶想要通過調用者發送一個調用。為了避免他們的調用被無限次中繼,他們需要提供一個nonce,另外還有其它不可更改的值。用戶對這些值進行哈希計算得到commit,并將該commit包含在簽名消息內,以便合約使用操作碼AUTH進行驗證。
調用者會使用傳入的值來重新生成commit哈希。這樣一來,如果代付者改變了其中一個值,調用者計算得到的commit哈希會與外部賬戶簽署的完全不同,導致AUTH恢復出一個垃圾地址,如下圖所示:
希望你現在已經相信,調用者就像任何普通賬戶都可以使用的智能合約錢包。現在我們來看看如何使用commit來構建更有趣的方案。
通常情況下,“一個操作對應一個簽名”已經成了經驗法則。這是一種比較簡單的理解。簽名是基于一個事務的哈希值創建的,為什么我們不將多個事務合并進行哈希計算呢?事實證明,EIP3074可以做到這點。
只要某個賬戶可以通過AUTH的驗證,調用者就可以按該賬戶的要求做任意多次AUTHCALL。這樣做是沒問題的,因為我們相信調用者會如實執行代碼。我們可以設計將多個調用合并哈希成commit的方案。
在上圖所示的方案中,調用者會將所有值合并進行哈希,生成commit。調用者將使用這個commit和用戶簽名來調用AUTH。AUTH會驗證用戶是否真的簽署了這些參數。
然后,調用者會遍歷每個調用并驗證nonce和其它參數,然后將經過認證的調用數據發送至被許可的地址。
在此基礎上,我們還可以構建更多方案。例如,假設你增加一個新的參數“保質期”。該參數會與其它參數一起經過哈希得到commit。另外,在驗證過程中,調用者會驗證expiration<block.number。現在,外部賬戶已經可以使用限期交易了!
EIP3074將帶來更多流暢的用戶體驗,同時不會引入額外的信任假設。如果你想要閱讀EIP3074的完整內容,請點擊這個鏈接:https://eips.ethereum.org/EIPS/eip-3074
go-ethereum的原型實現在此處維護:
https://github.com/quilt/go-ethereum/tree/eip-3074
我們正在與一些對該機制有興趣的團隊合作。如果你覺得這個機制有用的話,請告訴我們,讓我們一起努力!歡迎大家提供對該提案的反饋,非常感謝!點擊該鏈接,留下你的反饋:https://ethereum-magicians.org/t/eip-3074-auth-and-authcall-opcodes/4880/49。
最后,如果你對我們的工作感興趣,我們的團隊正在火熱招聘中。我們致力于對以太坊核心協議進行中長期改進。如需了解更多信息,請直接私信我@lightclients。
原文鏈接:https://twitter.com/lightclients/status/1371911245561917441作者:lightclients翻譯&校對:閔敏&阿劍
你可能還會喜歡:
賬戶抽象化:為什么&如何做
以太坊元交易
以太坊中的賬戶、交易、Gas和區塊GasLimit
尊敬的用戶: 幣虎將上線RISKMOON,并在DeFi專區開通RISKMOON/TCH,RISKMOON/sUSDT交易市場.
1900/1/1 0:00:00您好,加密貨幣愛好者! QDAODeFiRating和NOAH的ARK平臺不斷收集DeFi項目的有關的信息。我們對建立最佳的DeFi教育系統充滿信心,因此想介紹這種行業中最有前景的創業項目.
1900/1/1 0:00:00尊敬的中幣用戶: ??????中幣將于香港時間2021年5月12日15:00上線XCH,具體安排如下:1、5月12日15:00開放XCH充值;2、5月13日14:00開放XCH/USDT和XCH.
1900/1/1 0:00:00親愛的PandaFe熊貓用戶:“合約新人三重禮,熊貓五一送驚喜”活動開展以來,吸引了眾多新老用戶的積極參與.
1900/1/1 0:00:00尊敬的用戶: 由于當前部分ETF產品的單價均低于0.01USDT,為提高其價格變化的靈敏度,優化交易體驗,BitMec將在2021年5月13日21:00-23:00期間.
1900/1/1 0:00:00文章系金色財經專欄作者幣圈北冥供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別防上當.
1900/1/1 0:00:00