以太坊ERC-4626协议-DeFi代币化资金库的新标准

本文介绍了ERC-4626,一种旨在优化收益资金库的技术标准,提供了统一的方法来处理ERC-20代币的份额,简化开发者集成,支持存款、提取、余额查询等功能,帮助用户在加密货币市场实现更高效收益管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍

ERC-4626 是优化和统一收益资金库技术参数的标准。 它为表示单个底层 ERC-20 代币的份额的代币化收益资金库提供标准应用程序接口。 ERC-4626 还概述了使用 ERC-20 的代币化资金库的可选扩展,提供存款、提取代币和读取余额的基本功能。
 
ERC-4626 在收益资金库中的作用

借贷市场、聚合器和本质上计息的代币可以帮助用户通过执行不同的策略来找到他们的加密代币的最佳收益。 这些策略的完成方式略有不同,这可能容易出错或浪费开发资源。
收益资金库的 ERC-4626 标准通过创建更加一致和健壮的实现模式,无需开发者提供专门的工作,就能减少集成工作量并解锁在各种应用程序中获取收益的途径。

ERC-4626 的函数和功能:

方法

asset

function asset() public view returns (address)

此函数返回用于资金库记帐、存款和取款的标的代币的地址。

 totalAssets

function totalAssets() public view returns (uint256)

此函数返回资金库持有的标的资产总量。

convertToShares

function convertToShares(uint256 assets) public view returns (uint256 shares)

 此函数返回 shares 的数量,该数量将由资金库兑换为提供的 assets 数量。

convertToAssets

function convertToAssets(uint256 shares) public view returns (uint256 assets)

此函数返回 assets 的数量,该数量将由资金库兑换为提供的 shares 数量。

maxDeposit

function maxDeposit(address receiver) public view returns (uint256)

 此函数返回 receiver 的一次 deposit 调用中可以存入的最大标的资产数量

previewDeposit

function previewDeposit(uint256 assets) public view returns (uint256)

此函数允许用户模拟他们在当前区块的存款效果。

deposit

function deposit(uint256 assets, address receiver) public returns (uint256 shares)

此函数将标的代币的 assets 存入资金库,并将 shares 的所有权授予 receiver

maxMint

function maxMint(address receiver) public view returns (uint256)

此函数返回 receiver 在单次 mint 调用中可以铸造的最大份额。

previewMint

function previewMint(uint256 shares) public view returns (uint256)

此函数允许用户在当前区块模拟他们的铸币效果。

mint

function mint(uint256 shares, address receiver) public returns (uint256 assets)

此函数通过存入标的代币的 assets,将 shares 资金库份额准确铸造到 receiver

maxWithdraw

function maxWithdraw(address owner) public view returns (uint256)

此函数返回可以通过单次 withdraw 调用从 owner 余额中提取的最大标的资产数量。

previewWithdraw

function previewWithdraw(uint256 assets) public view returns (uint256)

此函数允许用户模拟他们在当前区块取款的效果。

withdraw

function withdraw(uint256 assets, address receiver, address owner) public returns (uint256 shares)

此函数从 owner 烧录 shares,并将 assets 代币从资金库准确发送到 receiver

maxRedeem

function maxRedeem(address owner) public view returns (uint256)

此函数返回可以通过 redeem 调用从 owner 余额中赎回的最大份额数量。

previewRedeem

function previewRedeem(uint256 shares) public view returns (uint256)

此函数允许用户在当前区块模拟他们的赎回效果。

redeem

function redeem(uint256 shares, address receiver, address owner) public returns (uint256 assets)

此函数从 owner 赎回特定数量的 shares 并将标的代币的 assets 从资金库发送到 receiver

totalSupply

function totalSupply() public view returns (uint256)

返回流通中未赎回的资金库份额总数。

balanceOf

function balanceOf(address owner) public view returns (uint256)

返回 owner 当前拥有的资金库份额总量。

事件

Deposit 事件

必须在通过 mint 和 deposit 方法将代币存入资金库之前发出

event Deposit(
    address indexed sender,
    address indexed owner,
    uint256 assets,
    uint256 shares
)

其中 sender 是用 assets 兑换 shares,并将这些 shares 转移给 owner 的用户。

提款事件

必须在存款人用 redeem 或 withdraw 方法从资金库中取出份额时发出。

event Withdraw(
    address indexed sender,
    address indexed receiver,
    address indexed owner,
    uint256 assets,
    uint256 share
)

其中 sender 是触发取款并将 owner 拥有的 shares 兑换为 assets 的用户。 receiver 是收到提取的 assets 的用户。

介绍完毕!有兴趣聊聊我的VC,一起研究WEB3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HongYingClub

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值