unWeekly

By 0xJasmine

unWeekly #3 - ERC4626:為 Vault 設計的規範

#3・
70

subscribers

14

issues

Subscribe to our newsletter

By subscribing, you agree with Revue’s Terms of Service and Privacy Policy and understand that unWeekly will receive your email address.

A standard for tokenized Vaults with a single underlying ERC-20 token.

🧰 ERC-4626
概括
主要針對 Vault 進行優化,旨在將所有的 DeFi Vault 標準化,統一變成 ERC-20 形式的交易合約,提供鑄造、 存取、查詢餘額等功能;降低 Vault 的工作量,提高運作效率。
動機
當前的 Vault 缺乏標準化,借貸、聚合器等利息代幣有著不一樣的實施細節,這使得許多協議在聚合器或插件層的集成變得困難,協議開發者需要實現自己的適配器,這一過程容易出錯並且浪費開發資源。
詳敘
所有的 ERC-4626 代幣 Vault 都必須先實現 ERC-20 來作為股權代幣。如果一個 Vault 是不可轉帳的,它需要為 transfer 和 transferFrom 方法實現回滾 Revert 操作。和 ERC-20 代幣有關的操作如 balanceOf、 transfer、totalSupply 將在 Vault 的股份上進行操作,這代表了對 Vault 基礎持有量對一小部分的所有權需求。
所有的 ERC-4626 代幣 Vault 必須實現 ERC-20 的元數據拓展功能,name 和 symbol 需要反映出底層代幣的相關數據。
定義
  • 資產:Vault 管理的底層代幣,有 ERC-20 協議定義的精度
  • 股權:Vault 的代幣,有一個在鑄造/存款/取款/贖回時交換的基礎資產比率,這個比率由 Vault 去定義
  • 手續費:由 Vault 去向用戶收取的手續費,類型可以是資產或股權。手續費可以在任何的操作階段收取
  • 滑點:就是那個滑滑的點
方法
  • asset
  • totalAssets
  • convertToShares
  • convertToAssets
  • maxDeposit
  • previewDeposit:允許用戶去模擬在當前區塊下存入資產後 Vault 發生的變化
  • deposit:存入底層資產,鑄造股權代幣
  • maxMint
  • previewMint
  • mint
  • maxWithdraw
  • previewWithdraw
  • withdraw:燒掉股權代幣,取回底層資產
  • maxRedeem
  • previewRedeem
  • redeem
事件
  • Deposit
  • Withdraw
解釋&理由
Vault 的接口是為聚合器設計的,在具有完善功能的前提下盡量精簡接口。存放代幣的驗算和分配細節不做規定,因為 Vault 可以理解為鏈上的一個黑盒,在使用前可以進行相關檢查。
ERC-20 協議需要被強制實現,因為例如像 approve 和 balanceOf 運算和股權計算相關。這樣的要求使得 Vault 除了和 ERC-4626 兼容外,還可以和其他 ERC-20 的用例兼容。
Mint 方法的設計是為了功能的對稱和協議完整。目前大部分基於股權代幣的 Vault 的 use case 並沒有賦予股權代幣特殊的含義,例如,用戶通過鑄幣來優化特定股權數量,而不是特定基礎金額的存款。人們可以想像在未來的 Vault 策略會有獨特的和獨立的有意義的股權代幣用例。
convertTo 函數是一個粗略的估計,沒有考慮具體的細節操作,如引入取款手續費等。它們的主要是為需要展示平均價值的前端和程序設計的,而不是包括滑點和手續費,以及需要展示精確數字的前端設計的。對於那些嘗試收取手續費和存在滑點的 Vault,我們已經採取了一個對應的預覽函數來匹配各種情況,這些函數必須不考慮最大的存取款限制,來保證容易進行組合,max 函數的出現也是為了類似的目的。
向下兼容性
ERC-4626 將和 ERC-20 完全向下兼容,和其他標準沒有已知的兼容性問題,,對於不使用 ERC-4626 的 Vault 實現,可以考慮開發適配器。
安全考量
完全 permissionless 的用例可能會成為惡意實現的犧牲品,這有可能使產品只符合接口而不符合規範,建議所有開發者在完成開發之前,審查是否有可能導致用戶丟失存款。
…….(具體內容略)
🤔 個人評價
很好的一次升級,給 Vault 類產品塑造了一個協議規範,提高開放效率和合約安全性,同時也為更靈活多變的產品組合打下基礎,期待看到採用 ERC4626 的新產品或舊產品的重構造提升。
協議提案中提到 「人們可以想像在未來的 Vault 策略會有獨特的和獨立的有意義的股權代幣用例。」,說不定在 ERC4626 普遍採用後,又會有基於 share 的新 DeFi 樂高出現 。
ERC4626 主要是以 ERC20 作為底層資產,暫時沒有考慮到 ERC721 的 NFT,假如出現變體的 ERC4626 或以 NFT 作為底層資產的 Vault,又會有什麼發生呢?我說的 NFT 可能是加密藝術品,也可能是經 NFT 處理過的 Real asset, it will be interesting。
以上內容 NFA, LFG
Did you enjoy this issue? Yes No
0xJasmine

unWeekly,非週報(不是非洲豹🐆),不定期分享個人想法和工作生活點滴,Aloha, NFA, LFG, DYOR, HODL, GM, GN

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.