作者 ripple0129 (perry tsai)
標題 Re: [閒聊] 合約錢包的運作及安全性?
時間 Fri Sep  1 23:19:20 2023






原本要推文的
打一打覺得蠻多字的還是改用回覆

測試了一下OKX的AA錢包
的確如yhes923427大所述
從OKX AA錢包發出後就會變為Contract地址
這個實在蠻有趣的
OKX的實作似乎是你先把錢給合約建立者
合約建立者把你地址弄成Contract後剩的gas費再還你
當然整個是一次交易
OKX合約建立者地址是0xdc5319815CdAaC2d113f7F275bc893ed7D9cA469
在EIP4337中合約建立者的定義叫Entry Point

這個顛覆了傳統上的認知
Contract Address基本上是無法推測的
現在是可以直接把Address轉換為Contract
應該主要是EIP4337上線的關係

不過也因為需要Entry Point來創立合約錢包
甚至也需要Entry Point來做transfer
所以基本上合約錢包是使用哪家的服務就會很清楚了
如果不想洩漏自己用哪家錢包
可能要自行部署entrypoint並且自寫錢包
到時候看哪家錢包開源
就修改原始碼的entrypoint地址應該就行了

另外第一次使用OKX AA錢包轉出時
因為要有足夠的gas來生成合約
所以開頭會鎖你一定量的ETH不能轉出
等合約建立完成才可以全部轉出

至於OKX AA錢包有什麼特別功能
我就不清楚了

參考

https://www.blocktempo.com/ethereum-eip-4337-account-abstraction/

 

https://eips.ethereum.org/EIPS/eip-4337
ERC-4337: Account Abstraction Using Alt Mempool
An account abstraction proposal which completely avoids consensus-layer protocol changes, instead relying on higher-layer infrastructure. ...

 

--
Sent from nPTT on my iPhone 13 Pro Max

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.136.31 (臺灣)
※ 作者: ripple0129 2023-09-01 23:19:20
※ 文章代碼(AID): #1ayW3xHv (DigiCurrency)
※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1693581563.A.479.html
※ 同主題文章:
Re: [閒聊] 合約錢包的運作及安全性?
09-01 23:19 ripple0129
Staker: 樓主對 AA 概念蠻清楚的,但補充一下幾點細節,大家一起交流:(1) 合約地址是可以預先計算出來的,可以看看 CREATE2 這個概念
(2) 確實可以透過 entrypoint 部署合約,但 entrypoint 合約實際上是去呼叫另一個叫做 account factory 的合約來幫你創建 AA 錢包。每家 AA 錢包商理論上都有自己的 account factory, 理論上也可以透過直接呼叫 account factory 來創建錢包,不一定要透過 entrypoint 在繞一層。不過合約錢包商當然也可以把 account factory 設計成只有 entrypoint 能夠呼叫它。1F 09/02 00:17
yhes923427: 推原po和1樓 另外我也有測試Argent 這個也是AA錢包,也一樣一開始是EOA地址,然後從Argent轉幣出去就變合約地址了
搭配1樓大大的補充求處許多,可以在鏈上看到argent 的 wallet factory 創建合約的紀錄
0x4555727a83b8217ad2c966dd5aadda921c7afa8d11F 09/02 00:45
yahooyamgoog: 從合約錢包發起交易的那個EOA是誰,怎麼管理的?17F 09/02 09:26
wlsh5701: 推這篇和推文18F 09/02 11:08
Staker: 回y大,你問到了一個關鍵,既然 AA 錢包是合約錢包,代表它不能像 EOA 自己主動發起交易,必須透過一個第三方來觸發他。在 eip-4337 的設計裡是透過 entrypoint 來觸發 AA錢包,但 entrypoint 也是個合約,誰來觸發 entrypoint?目前的設計是透過一個叫 bundler 的角色,bundler 會負責收集和相關 entrypoint 的交易,把這些交易壓縮成指定的tx data,bundler 拿著這些 tx data 就能直接去呼叫 entrypoint 。
當然,如果你是科學家有能力自己組這個 tx data, 用自己的 EOA 帶著這個 tx data 也可以直接和 entrypoint 互動19F 09/02 13:07
yahooyamgoog: 一樣的問題啊 那bundler是誰管理私鑰的?會被作惡嗎?29F 09/02 14:54
john371911: 樓上,那算是介於礦工跟用戶間的新腳色,任何人都可以做。如你上面抵押者最後兩個推文所述。我另外有個問題最後還是要有EOA的集束者來打包用戶操作嗎?不然如果集束者用合約帳戶,他們"打包"的這個用戶操作,還是要等其他集束者打包,應該就吃不到MEV吧?31F 09/02 20:40

--
作者 ripple0129 的最新發文:
點此顯示更多發文記錄