ERC404讓NFT輝煌再現

中級5/7/2024, 12:12:58 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:12:58 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.