ERC404让NFT辉煌再现

中级5/7/2024, 12:14:52 PM
2024年春节期间,一个名为ERC404的实验协议及其第一个项目潘多拉(Pandora)迅速引起轰动。

什么是NFT-FT二元性?

货币通常是指区块链的原生代币或与 ERC20 协议类似的可互换代币,如 BTC、ETH、USDT 等。

图像则是指符合 ERC721 协议的非互换代币(NFT),如 CryptoPunks、Bored Apes、mfers 等。国内数字收藏平台(如 Whale Explorer)发布的 3D 模型资产也被视为图像。

代币和 NFT 各有其局限性,例如,代币具有良好的流动性,但本身缺乏投机价值,而 NFT 具有稀缺性和独特性,但通常流动性较差,通常要么是蓝筹项目,要么集中于地板价格。

某NFT项目流动性深度图

这NFT-FT二元性指以某种方式,将代币和 NFT 混合在一起的标准。

以以太坊为例,支持 NFT-FT 二元性的项目应该既可互换又不可互换。它既能享受代币带来的高流动性,又能实现稀缺性和唯一性,具有投机价值。

但这种东西真的存在吗?NFT 的价格与它的稀有性息息相关;如何才能让它成为可替代品?

ERC404 打开了潘多拉魔盒

2024年春节期间,一个名为ERC404的实验协议及其第一个项目潘多拉(Pandora)迅速引起轰动。

ERC404 开创了一种混合图像货币的方法,可以简单地描述为:

  • 购买 1 个 Pandora 代币(Token)自动授予 1 个 Pandora NFT
  • 如果余额少于1个Pandora 代币,您的NFT将自动销毁
  • 购买 1 个 Pandora NFT 会自动将 1 个代币添加到您的钱包中,相反,出售会自动减少 1 个代币

下面用一张图来说明目前ERC404的混合逻辑:

ERC404游戏规则

以下是目前潘多拉魔盒的5种类型,每种都有不同的稀有度。根据合同执行方式,我们可以计算出概率:

实施 ERC404

ERC404 代码的第一个版本写得很差劲,或者说得好听一点,它不理想。不过,它解决了主要问题—如何在一个合约中同时实现 ERC20 和 ERC721 接口。

三种协议比较

我们筛选出两个接口定义中不相关的部分,并比较哪些接口重叠或冲突:

interface IERC20 {
 // Query the balance based on an address
 function balanceOf(address account) external view returns (uint256);
 // Transfer to a certain address
 function transfer(address recipient, uint256 amount) external returns (bool);
 // Transfer to a certain address on behalf of a third party (based on authorization)
 function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
 // Authorize token allowance
 function approve(address spender, uint256 amount) external returns (bool);
}
interface IERC721 is IERC165 {
 // Query the NFT quantity based on an address
 function balanceOf(address owner) external view returns (uint256 balance);
 // Transfer within the NFT standard is included in transferFrom

 // Transfer an NFT to a certain address on behalf of a third party (based on authorization)
 function transferFrom(address from, address to, uint256 tokenId) external;
 // Authorize NFT
 function approve(address to, uint256 tokenId) external;
}

可以看出,四个冲突的接口都与转账相关。在 ERC20 中,语义上最后一个参数是 amount,这是代币的限额,而在ERC721中,参数的语义是 tokenId,代表NFT的数量。

在ERC404的合约实现中,该参数的语义改为 amountOrId。辨别是否是的方法amount 或一个 tokenId 非常简单:基于值的大小。

如同 1 比特币 =10^9 聰,在ERC404的世界里,我们说1个Token实际上对应的值是10^18,而 NFT 的 tokenId 一般是从1开始依次递增的整数。因此,虽然 amount 和 tokenId 都是整数,但实际数量级却大不相同。

例如,Pandora 合约记录了当前已铸造了多少 NFT(目前 68180)。如果值 amountOrId 小于或等于这个,它被认为是tokenId; 否则,它被认为是 amount

这个逻辑有用吗?有。它合理吗?

此外,当转账 >= 1 Token 时,NFT 的逻辑不是转账,而是原账户销毁,新账户铸币。这种方法的优点是流动性匹配,实现简单(考虑转账少于1个代币的场景),但会导致gas消耗过大。

以这个交易为例,转让 4 个代币导致销毁 4 个 NFT,并铸造 4 个新的 NFT:

该交易消耗了 64 美元的 GAS

新的叙事和机遇

ERC404的玩法引入了几条隐形规则:

  1. 代币在 DEX 上的价格与 NFT 在市场上的价格相差不大。
  2. 铸造 NFT 时只有一种情况:收集 1 个代币。换句话说,用稀有度较低的 NFT 换取稀有度较高的 NFT 的唯一方法是通过持续的代币交易。
  3. 潘多拉代币的总供应量为 10,000 枚,这意味着 NFT 的最大数量为 10,000 枚,而这一数量将随着持有者数量的增加而减少(持有者数量越多,代币不足 1 枚的情况就越常见)。

如果我掌握了持续铸造 “红色潘多拉魔盒 “的魔法,我是否可以在交易所买入代币,然后在 NFT 市场高价卖出,进行无限套利?

我们来看看潘多拉的价格;这些数据为套利提供了理论基础:

以 4.7 ETH 购买代币

过去一周,NFT 的底价已超过 5 ETH

上述数据没有按照 NFT 的稀有程度进行筛选;在此条件下,扣除损耗后的利润约为 0.2 ETH。根据上述隐含规则,如果我们总能铸造出像红色潘多拉魔盒这样高稀有度的 NFT,岂不是会有更大的利润空间?

我们来看看 Pandora 合约,看看KOL们常说的“随机生成”到底是如何实现的:

pragma solidity ^0.8.0;

contract Pandora is ERC404 {
 function tokenURI(uint256 id) public view override returns (string memory) {

 // Hash the id once, taking the first digit as the random number
   uint8 seed = uint8(bytes1(keccak256(abi.encodePacked(id))));
   string memory color;

   // Determine the rarity based on the range of values for a uint8 [0, 255]
   if (seed <= 100) {
       color = "Green";
   } else if (seed <= 160) {
       color = "Blue";
   } else if (seed <= 210) {
       color = "Purple";
   } else if (seed <= 240) {
       color = "Orange";
   } else if (seed <= 255) {
       color = "Red";
   }
 }
}

通过阅读合约,我们可以看到潘多拉魔盒的稀有度是伪随机的,类似于我们之前的 CryptoFish 项目,其中 tokenId 正在逐渐增加,因此下一个铸造的 NFT 的稀有性是完全可以预测的。

我们可以用一段JavaScript代码进行纯粹的本地猜测,经过验证,这个逻辑是完全正确的:

const ethers = require('ethers');

const calcSeed = (id) =>
 parseInt(ethers.solidityPackedKeccak256(['uint256'], [id]).substr(2, 2), 16);

const getColorBySeed = (seed) => {
 let color;
 if (seed <= 100) {
   color = 'Green';
 } else if (seed <= 160) {
   color = 'Blue';
 } else if (seed <= 210) {
   color = 'Purple';
 } else if (seed <= 240) {
   color = 'Orange';
 } else if (seed <= 255) {
   color = 'Red';
 }
 return color;
};

console.log(calcSeed(1)); // 177
console.log(getColorBySeed(calcSeed(1))); // Purple

目前Pandora铸造增量值为 68180,这意味着我们可以预测以下 100 个将达到红色稀有度的 NFT ID:68186/68201/68213/68227/68228/68257/68259/68262

如果我们忽略当前潘多拉项目流动性的下降,这可能是一种非常受欢迎的金融行为。

结论

ERC404 和 Pandora 并不是第一个探索 NFT 流动性协议的公司。之前已经有过关于 NFT 分片化的讨论,包括 ERC1155 作为 NFT 的创新方法。

但为什么这次 ERC404 的情绪如此高涨呢?我相信是因为这个好名字

不幸的是,第一版ERC404合约执行得并不顺利,因此官方正在积极推动V2版本,并且社区也有第三方实现DN404。有些人甚至创建了一个名为 ERC911 的新协议,该协议的命名充满了各种功能。

流动性在新年期间达到顶峰,此后出现大幅下降。

潘多拉V1的故事可能很快就会结束;目前的版本有无数的缺陷足以让它垮掉,流动性和持有者也大幅下降。不过,目前越来越多的项目团队正在尝试ERC404模型,已有25个项目团队在CoinMarketCap上市。

相信未来会有更多NFT流动性问题的解决方案,ERC404可能真正带来下一个NFT之夏。

声明:

  1. 本文转载自[medium],所有版权归原作者所有[Zan]。若对本次转载有异议,请联系Gate Learn团队,他们会及时处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. Gate Learn 团队将文章翻译成其他语言。除非另有说明,否则禁止复制、分发或抄袭翻译文章。

ERC404让NFT辉煌再现

中级5/7/2024, 12:14:52 PM
2024年春节期间,一个名为ERC404的实验协议及其第一个项目潘多拉(Pandora)迅速引起轰动。

什么是NFT-FT二元性?

货币通常是指区块链的原生代币或与 ERC20 协议类似的可互换代币,如 BTC、ETH、USDT 等。

图像则是指符合 ERC721 协议的非互换代币(NFT),如 CryptoPunks、Bored Apes、mfers 等。国内数字收藏平台(如 Whale Explorer)发布的 3D 模型资产也被视为图像。

代币和 NFT 各有其局限性,例如,代币具有良好的流动性,但本身缺乏投机价值,而 NFT 具有稀缺性和独特性,但通常流动性较差,通常要么是蓝筹项目,要么集中于地板价格。

某NFT项目流动性深度图

这NFT-FT二元性指以某种方式,将代币和 NFT 混合在一起的标准。

以以太坊为例,支持 NFT-FT 二元性的项目应该既可互换又不可互换。它既能享受代币带来的高流动性,又能实现稀缺性和唯一性,具有投机价值。

但这种东西真的存在吗?NFT 的价格与它的稀有性息息相关;如何才能让它成为可替代品?

ERC404 打开了潘多拉魔盒

2024年春节期间,一个名为ERC404的实验协议及其第一个项目潘多拉(Pandora)迅速引起轰动。

ERC404 开创了一种混合图像货币的方法,可以简单地描述为:

  • 购买 1 个 Pandora 代币(Token)自动授予 1 个 Pandora NFT
  • 如果余额少于1个Pandora 代币,您的NFT将自动销毁
  • 购买 1 个 Pandora NFT 会自动将 1 个代币添加到您的钱包中,相反,出售会自动减少 1 个代币

下面用一张图来说明目前ERC404的混合逻辑:

ERC404游戏规则

以下是目前潘多拉魔盒的5种类型,每种都有不同的稀有度。根据合同执行方式,我们可以计算出概率:

实施 ERC404

ERC404 代码的第一个版本写得很差劲,或者说得好听一点,它不理想。不过,它解决了主要问题—如何在一个合约中同时实现 ERC20 和 ERC721 接口。

三种协议比较

我们筛选出两个接口定义中不相关的部分,并比较哪些接口重叠或冲突:

interface IERC20 {
 // Query the balance based on an address
 function balanceOf(address account) external view returns (uint256);
 // Transfer to a certain address
 function transfer(address recipient, uint256 amount) external returns (bool);
 // Transfer to a certain address on behalf of a third party (based on authorization)
 function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
 // Authorize token allowance
 function approve(address spender, uint256 amount) external returns (bool);
}
interface IERC721 is IERC165 {
 // Query the NFT quantity based on an address
 function balanceOf(address owner) external view returns (uint256 balance);
 // Transfer within the NFT standard is included in transferFrom

 // Transfer an NFT to a certain address on behalf of a third party (based on authorization)
 function transferFrom(address from, address to, uint256 tokenId) external;
 // Authorize NFT
 function approve(address to, uint256 tokenId) external;
}

可以看出,四个冲突的接口都与转账相关。在 ERC20 中,语义上最后一个参数是 amount,这是代币的限额,而在ERC721中,参数的语义是 tokenId,代表NFT的数量。

在ERC404的合约实现中,该参数的语义改为 amountOrId。辨别是否是的方法amount 或一个 tokenId 非常简单:基于值的大小。

如同 1 比特币 =10^9 聰,在ERC404的世界里,我们说1个Token实际上对应的值是10^18,而 NFT 的 tokenId 一般是从1开始依次递增的整数。因此,虽然 amount 和 tokenId 都是整数,但实际数量级却大不相同。

例如,Pandora 合约记录了当前已铸造了多少 NFT(目前 68180)。如果值 amountOrId 小于或等于这个,它被认为是tokenId; 否则,它被认为是 amount

这个逻辑有用吗?有。它合理吗?

此外,当转账 >= 1 Token 时,NFT 的逻辑不是转账,而是原账户销毁,新账户铸币。这种方法的优点是流动性匹配,实现简单(考虑转账少于1个代币的场景),但会导致gas消耗过大。

以这个交易为例,转让 4 个代币导致销毁 4 个 NFT,并铸造 4 个新的 NFT:

该交易消耗了 64 美元的 GAS

新的叙事和机遇

ERC404的玩法引入了几条隐形规则:

  1. 代币在 DEX 上的价格与 NFT 在市场上的价格相差不大。
  2. 铸造 NFT 时只有一种情况:收集 1 个代币。换句话说,用稀有度较低的 NFT 换取稀有度较高的 NFT 的唯一方法是通过持续的代币交易。
  3. 潘多拉代币的总供应量为 10,000 枚,这意味着 NFT 的最大数量为 10,000 枚,而这一数量将随着持有者数量的增加而减少(持有者数量越多,代币不足 1 枚的情况就越常见)。

如果我掌握了持续铸造 “红色潘多拉魔盒 “的魔法,我是否可以在交易所买入代币,然后在 NFT 市场高价卖出,进行无限套利?

我们来看看潘多拉的价格;这些数据为套利提供了理论基础:

以 4.7 ETH 购买代币

过去一周,NFT 的底价已超过 5 ETH

上述数据没有按照 NFT 的稀有程度进行筛选;在此条件下,扣除损耗后的利润约为 0.2 ETH。根据上述隐含规则,如果我们总能铸造出像红色潘多拉魔盒这样高稀有度的 NFT,岂不是会有更大的利润空间?

我们来看看 Pandora 合约,看看KOL们常说的“随机生成”到底是如何实现的:

pragma solidity ^0.8.0;

contract Pandora is ERC404 {
 function tokenURI(uint256 id) public view override returns (string memory) {

 // Hash the id once, taking the first digit as the random number
   uint8 seed = uint8(bytes1(keccak256(abi.encodePacked(id))));
   string memory color;

   // Determine the rarity based on the range of values for a uint8 [0, 255]
   if (seed <= 100) {
       color = "Green";
   } else if (seed <= 160) {
       color = "Blue";
   } else if (seed <= 210) {
       color = "Purple";
   } else if (seed <= 240) {
       color = "Orange";
   } else if (seed <= 255) {
       color = "Red";
   }
 }
}

通过阅读合约,我们可以看到潘多拉魔盒的稀有度是伪随机的,类似于我们之前的 CryptoFish 项目,其中 tokenId 正在逐渐增加,因此下一个铸造的 NFT 的稀有性是完全可以预测的。

我们可以用一段JavaScript代码进行纯粹的本地猜测,经过验证,这个逻辑是完全正确的:

const ethers = require('ethers');

const calcSeed = (id) =>
 parseInt(ethers.solidityPackedKeccak256(['uint256'], [id]).substr(2, 2), 16);

const getColorBySeed = (seed) => {
 let color;
 if (seed <= 100) {
   color = 'Green';
 } else if (seed <= 160) {
   color = 'Blue';
 } else if (seed <= 210) {
   color = 'Purple';
 } else if (seed <= 240) {
   color = 'Orange';
 } else if (seed <= 255) {
   color = 'Red';
 }
 return color;
};

console.log(calcSeed(1)); // 177
console.log(getColorBySeed(calcSeed(1))); // Purple

目前Pandora铸造增量值为 68180,这意味着我们可以预测以下 100 个将达到红色稀有度的 NFT ID:68186/68201/68213/68227/68228/68257/68259/68262

如果我们忽略当前潘多拉项目流动性的下降,这可能是一种非常受欢迎的金融行为。

结论

ERC404 和 Pandora 并不是第一个探索 NFT 流动性协议的公司。之前已经有过关于 NFT 分片化的讨论,包括 ERC1155 作为 NFT 的创新方法。

但为什么这次 ERC404 的情绪如此高涨呢?我相信是因为这个好名字

不幸的是,第一版ERC404合约执行得并不顺利,因此官方正在积极推动V2版本,并且社区也有第三方实现DN404。有些人甚至创建了一个名为 ERC911 的新协议,该协议的命名充满了各种功能。

流动性在新年期间达到顶峰,此后出现大幅下降。

潘多拉V1的故事可能很快就会结束;目前的版本有无数的缺陷足以让它垮掉,流动性和持有者也大幅下降。不过,目前越来越多的项目团队正在尝试ERC404模型,已有25个项目团队在CoinMarketCap上市。

相信未来会有更多NFT流动性问题的解决方案,ERC404可能真正带来下一个NFT之夏。

声明:

  1. 本文转载自[medium],所有版权归原作者所有[Zan]。若对本次转载有异议,请联系Gate Learn团队,他们会及时处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. Gate Learn 团队将文章翻译成其他语言。除非另有说明,否则禁止复制、分发或抄袭翻译文章。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
It seems that you are attempting to access our services from a Restricted Location where Gate is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.