Standard della cassaforte tokenizzata ERC-4626
Introduzione
ERC-4626 è uno standard per ottimizzare e unificare i parametri tecnici delle cassaforti di resa. Fornisce un'API standard per le cassaforti di resa tokenizzate che rappresenta le quote di un singolo token ERC-20 sottostante. ERC-4626 delinea anche un'estensione facoltativa per le cassaforti tokenizzate usando ERC-20, offrendo le funzionalità di base per depositare e prelevare token e leggere i saldi.
Il ruolo dell'ERC-4626 nelle cassaforti di resa
I mercati di prestito, gli aggregatori e i token intrinsecamente fruttiferi di interessi aiutano gli utenti a trovare la miglior resa sui propri cripto-token eseguendo strategie differenti. Queste strategie sono create con lievi variazioni, che potrebbero essere incline a errore o potrebbero sprecare risorse di sviluppo.
L'ERC-4626 nelle cassaforti di resa ridurrà lo sforzo di integrazione e sbloccherà l'accesso alla resa in varie applicazioni con piccoli sforzi specializzati dagli sviluppatori, creando schemi d'implementazione coerenti e robusti.
Il token ERC-4626 è descritto nella sua interezza in EIP-4626.
Prerequisiti
Per comprendere meglio questa pagina, consigliamo innanzitutto di leggere standard per i token e ERC-20.
ERC-4626 Funzioni e caratteristiche:
Metodi
asset
1function asset() public view returns (address)2Copia
Questa funzione restituisce l'indirizzo del token sottostante, utilizzato per la cassaforte per la contabilità, i depositi e i prelievi.
totalAssets
1function totalAssets() public view returns (uint256)2Copia
Questa funzione restituisce l'importo totale di risorse sottostanti detenute dalla cassaforte.
convertToShares
1function convertToShares(uint256 assets) public view returns (uint256 shares)2Copia
Questa funzione restituisce la quantità di shares che sarebbe scambiata dalla cassaforte per la quantità fornita di assets.
convertToAssets
1function convertToAssets(uint256 shares) public view returns (uint256 assets)2Copia
Questa funzione restituisce la quantità di assets che sarebbe scambiata dalla cassaforte per la quantità di shares fornita.
maxDeposit
1function maxDeposit(address receiver) public view returns (uint256)2Copia
Questa funzione restituisce la quantità massima di risorse sottostanti depositabili in una singola chiamata a deposit dal receiver.
previewDeposit
1function previewDeposit(uint256 assets) public view returns (uint256)2Copia
Questa funzione consente agli utenti di simulare gli effetti del loro deposito al blocco corrente.
deposit
1function deposit(uint256 assets, address receiver) public returns (uint256 shares)2Copia
Questa funzione deposita assets di token sottostanti nella cassaforte e concede la proprietà delle shares al receiver.
maxMint
1function maxMint(address receiver) public view returns (uint256)2Copia
Questa funzione restituisce la quantità massima di quote coniabili in una sola chiamata a mint dal receiver.
previewMint
1function previewMint(uint256 shares) public view returns (uint256)2Copia
Questa funzione consente agli utenti di simulare gli effetti del loro conio al blocco corrente.
mint
1function mint(uint256 shares, address receiver) public returns (uint256 assets)2Copia
Questa funzione conia esattamente quote della cassaforte shares al receiver, depositando assets di token sottostanti.
maxWithdraw
1function maxWithdraw(address owner) public view returns (uint256)2Copia
Questa funzione restituisce la quantità massima di risorse sottostanti prelevabili dal saldo dell'owner con una singola chiamata a withdraw.
previewWithdraw
1function previewWithdraw(uint256 assets) public view returns (uint256)2