Erc-721
保證 NFT 的最佳實踐是不重複的
因此,我正在開展一個 NFT 項目,該項目最終將創建大約 3000 個不同的獨特 NFT 的集合。有點像加密朋克。
除了 ERC-721 合約之外,還將有一個伺服器託管一個網站,人們可以在該網站上訪問 mint 所說的 nft,並具有生成 nft 本身的邏輯。
我現在面臨的問題是:在給定 3000 種左右的可能組合的情況下,我如何保證圖像 100% 唯一?我不太確定關於已經鑄造的 NFT 的資訊是否應該保存在伺服器端或 ERC-721 合約本身中。擁有合同上的資訊似乎更有意義,但這不會有點沉重嗎?這意味著無論何時與之互動,合約都會知道哪些 NFT 屬性已用於鑄造,並避免使用其中任何一個鑄造一個新屬性。
這是最好的方法嗎?我錯過了最佳實踐嗎?
謝謝!
我見過有幾種方法可以做到這一點。
- 使用屬性
所有屬性都簡潔地儲存在一個 256 位的變數中。如果您可以創建一個可重複的過程來從屬性創建圖像,並且您可以保證每個不同的有效輸入都會創建一個單獨的圖像,那麼您就很好。智能合約驗證不重複是微不足道的。(見加密貓)
- 預先計算
您可以預先計算所有可能的圖像。然後在鑄造令牌時,保證唯一的圖像可用。即使不公開,也可以預先送出整個集合。(與加密朋克有關)
- 相信
隨著新代幣的鑄造,它們根本沒有任何圖像。然後,您將非同步創建和發布這些圖像。智能合約在這裡進行零驗證,人們必須信任你。