NFT必修課:如何使用IPFS創建NFT以及部署智能合約?

多年來,數字藝術並未被認為是“真正的”藝術。繪畫、雕塑和裝置是“真正的”藝術,而數字藝術被視為“二流”藝術。然而,數字藝術家也花費了大量時間來建立他們的藝術和完善他們的技能,就像更多的“古典”藝術家一樣。

多年來,數字藝術和數字藝術家的作品並沒有得到應有的報酬。數字藝術家更像是自由職業者,從一場演出到另一場演出,總是很難從他們的數字藝術中賺到更多的錢。

原因是很難讓數字藝術獨一無二。數字藝術一旦被創造出來,就很容易在互聯網上被複製數千次,而且很難追踪這些副本並區分哪一個是原始的。

在古典繪畫中,我知道薩爾瓦多·達利(Salvador Dalli)的《記憶的永恆》上有成千上萬張照片,但原始實物繪畫是某人所有的(在這種情況下,它在紐約現代藝術博物館)。

儘管我可以多次復制/粘貼此圖像,但原始圖像始終具有價值,因為很容易證明原始圖像的所有權。原件被物理鎖在博物館裡

我們如何將數字藝術變成獨一無二的東西?

那便是今天的主角——NFT。

NFT 是具有不可替代性的代幣,這意味著每個代幣都是獨一無二且不可替代的。他們通常使用以太坊ERC-721標準,該標準於2018 年1 月在以太坊網絡中引入並徹底改變了整個行業。

如果你想了解如何創建和鑄造數字NFT,讓我們開始吧!

使用IPFS 鑄造、存儲NFT 資產

讓我們將NFT 創建分解為兩個部分。首先,有處理NFT 的鑄造和存儲的區塊鏈。區塊鏈通過在全球數千台計算機/節點上複製它,來確保NFT 的元數據是不可變的和安全的。然而,區塊鏈無法處理存儲大量數據,因為在這數千個節點之間複製大量數據變得極其昂貴。這就是第二部分:存儲NFT 數據。

在以太坊區塊鏈上存儲圖像可能會花費數万美元。出於這個原因,大多數NFT 數據需要存儲在鏈外,我們也需要保護這些數據。

我們可以通過IPFS——星際文件系統,一種用於共享和存儲文件的點對點協議來解決這個問題。 IPFS 使用內容尋址來唯一標識全局命名空間中的每個文件,這對於我們的NFT 將NFT 元數據鏈接到資產或藝術品的存儲位置很重要。與Dropbox 或Google Drive 等集中式服務相比,IPFS 可以被視為具有數據固定的更持久性。

創建NFT 時,我們需要使用引用資產的URL 鏈接。此URL 將包含在NFT 的元數據中。正如您現在所知,NFT 數據是不可變的,它將永遠存在於區塊鏈中,因此為與NFT 相關的資產或圖像找到一個合適的家也很重要。

Pinata 是著名的IPFS 服務之一:pinata.cloud

IPFS 使用稱為CID 的內容標識符,它將內容作為哈希引用。這些CID 是URL 的一部分,如果內容沒有改變,URL 也不會改變。某個CID 和相應URL 後面的圖像將始終是相同的圖像,這使我們對鏈下存儲的NFT 數據具有一定程度的不變性。

在“逐步鑄造”部分中,我們將看到如何使用Pinata 創建IFPS CID/URL 並將其與我們將要鑄造的NFT 相關聯。

鑄造NFT

步驟0 — 資產的所有權

在創建NFT 之前,您需要確保您是要代幣化的資產/藝術品的創建者或所有者。你必須有辦法證明你是所有者或創造者。

步驟1 — 準備資產

確保您擁有該圖像的文件。您可以簡單地對JPEG/PNG 進行標記,但最好也有源文件或高質量的文件。如果您處理的是數字藝術,TIFF、AI/EPS 也可以在銷售過程中共享。

第2 步— 選擇市場並進行身份驗證

現在我們需要鑄造NFT 代幣。當您想出售代幣時,可以直接在OpenSea 市場上鑄造它,或者您可以先在Rarible 上鑄造它,因為在Rarible 上,您可以鑄造代幣而無需實際出售它。由你來決定。

在這一步一步中,我假設你已經安裝了Metamask 瀏覽器插件,並且有一些ETH 用於手續費。

在OpenSea 上,單擊創建並連接您的Metamask 錢包(檢查錢包部分)。單擊Metamask 圖標登錄到您的Metamask 錢包,然後單擊連接。之後你還需要Ether 在鑄造過程中向網絡支付交易費用,但現在你不需要花錢。

連接您的錢包後,您將使用您的公鑰在網站上進行身份驗證和識別。這類似於您使用Google 或Facebook 身份登錄(也稱為SAML/SSO — 單點登錄)。

第3 步— 通過上傳文件開始創建NFT

要創建新項目,請繼續並單擊創建。您必須創建一個集合,並且您的NFT 可以成為集合的一部分。以後可以製作更多的收藏品——例如,2D 收藏品、3D 收藏品等。

創建集合後,您可以向集合中“添加新項目”。點擊“添加新項目”。您將能夠上傳文件,並且您會發現多種可用格式:PNG、GIF、WEBP、MP4、MP3 等等。您可以在此處選擇並上傳您的文件。

步驟4 — 創建IPFS 鏈接

重要的是要強調圖像本身並沒有存儲在區塊鏈上。存儲在區塊鏈上的只是關於圖像的元數據,即文件的哈希值、名稱、時間戳和指向文件存儲位置的鏈接。區塊鏈不適合存儲大文件,而且文件總是需要存儲在其他地方。對於OpenSea,他們將負責存儲圖像。

如果您希望買家收到高分辨率文件或源文件,您也可以將此文件存儲在存儲服務(IPFS、Google Drive、S3 或Dropbox)中,並在“可解鎖內容”字段中共享文件鏈接. 購買完成後,此文件將與買家共享。

為了讓事情更加去中心化並保持區塊鏈精神,我們不要使用像Google Drive 或Dropbox 這樣的集中式存儲服務,而是使用IPFS——星際文件系統。 IPFS 不是區塊鏈,而是一個分佈式點對點文件系統(類似於BitTorrent),允許我們存儲和共享文件。

使用UPFS 的最簡單方法是Pinata。如果您尚未註冊,請轉到Pinata.cloud 並註冊。擁有Pinata 帳戶後,轉到儀表板,然後單擊上傳。選擇文件並上傳。

文件上傳後,您將找到一個CID 哈希(內容標識符),類似於Qma4Jse7V6tZ7k3756iPv39tsMG6DhxUQrc42cKoAVVsbR。

這是將鏈接到圖像的哈希值。同時復製圖像的鏈接,返回OpenSea 網站,並將其粘貼到“可解鎖內容”字段中。該鏈接應如下所示:

https://gateway.pinata.cloud/ipfs/Qma4Jse7V6tZ7k3756iPv39tsMG6DhxUQrc42cKoAVVsbR

步驟5 — NFT 屬性

完成附加屬性和標籤。

最後點擊創建。

您現在已經在OpenSea 網站上創建了資產,但它仍未上市出售。

步驟— 6 出售NFT

轉到您的商品頁面,然後單擊“出售”。

您還可以設置“設置價格”。這類似於Ebay 的“立即購買”,它是您願意立即出售您的商品的價格。價格可以用不同的加密貨幣列出,但最常見的是以太幣(ETH,以太坊的原生貨幣)。

您也可以選擇“最高出價”。這是拍賣選項,在此選項中,您可以選擇最低出價、底價和拍賣截止日期。

最後,點擊“發布您的列表”。

單擊後,按照步驟鑄造令牌。您的Metamask 窗口將提示(如果沒有,您需要單擊Metamask 圖標)並單擊符號。 OpenSea 不收取任何費用,但是每當您創建新的NFT 時,您都會將數據寫入區塊鏈,並且您將產生gas 費用(即以太坊網絡的費用)。

單擊“批准”後,它會提示您的Metamask 錢包,以便您支付費用。在您的Metamask 錢包上,您可以單擊“編輯”來編輯費用並選擇慢速或快速。慢意味著您將支付更少的gas費用,但交易可能需要更長的時間才能在區塊鏈中結算(通常不到1小時)。

考慮到以太坊可能會擁堵,鑄造新NFT 的成本有時可能會很高,但未來可能會降低。

這樣你的NFT 現已上市,人們將能夠競標或購買。

使用IPFS 創建NFT 的智能合約

如果你對代碼非常感興趣並想部署自己的ERC-721 智能合約,那麼你需要完成以下幾個重要步驟:

1、獲取一些測試ETH(教學將在Ropsten測試網)

2、下載IPFS

3、將你的作品上傳到IPFS

4、打開Ethereum Remix 並創建智能合約

5、部署智能合約

6、鑄造NTF

獲取ETH測試幣

首先,使用Metamask(小狐狸錢包),將你的錢包網絡切換到Ropsten 測試網。

然後打開Ropsten 水龍頭網站: https://faucet.ropsten.be/ ,將你的錢包地址複製到水龍頭並獲取一些測試以太幣。我們將需要它來支付智能合約的gas費用。

下載IPFS 並上傳您的藝術作品文件

大多數NFT 數據需要存儲在鏈外,我們需要保護這些數據。

我們可以通過IPFS——星際文件系統,一種用於共享和存儲文件的點對點協議來解決這個問題。 IPFS 使用內容尋址來唯一標識全局命名空間中的每個文件,這對於我們的NFT 將NFT 元數據鏈接到資產或藝術品的存儲位置很重要。因此,與Dropbox 或Google Drive 等集中式服務相比,IPFS 可以被視為具有數據固定的更持久性。

我們將使用IPFS 來存儲我們的NFT 文件。前往IPFS 網站並在您的台式機/筆記本電腦上安裝IPFS。安裝後,運行它。恭喜,您現在是一個IPFS 節點!

IPFS 官網:https://docs.ipfs.io/install/ipfs-desktop/#windows

單擊文件並上傳您的藝術品!

上傳後,您將可以訪問可共享的鏈接,將鏈接複製保存下來。

打開Ethereum Remix 並創建智能合約

現在,我們轉到Ethereum Remix IDE 並創建一個新的Solidity 文件,例如“erc721.sol”。我們將使用Ethereum Remix 並使用0xcert/ethereum-erc721合約來創建我們的NFT 智能合約。

(Ethereum Remix 是一個開源Web 應用程序,允許您開發、編譯和部署智能合約。)

將以下腳本複制/粘貼到新創建的.sol 文件中:

// SPDX-License-Identifier: MIT
pragma solidity 0.8.6;
導入“ https://github.com/0xcert/ethereum-erc721/src/contracts/tokens/nf-token-metadata.sol ”;
導入“ https://github.com/0xcert/ethereum-erc721/src/contracts/ownership/ownable.sol ”;

合約newNFT 是NFTokenMetadata, Ownable {
構造函數(){
nftName = “合成 NFT”;
nftSymbol = “SYN”;
}

函數薄荷(地址 _to,uint256 _tokenId,字符串 calldata _uri)外部 onlyOwner {
super._mint(_to, _tokenId);
super._setTokenUri (_tokenId, _uri);
}
}

然後你需要去編譯它,以下圖所示:

一旦智能合約編譯完成,就可以部署它了!

使用Inject Web3 部署智能合約並確保它已連接到您的Metamask 的Ropsten 測試網。

單擊部署後,它會提示您的Metamask 確認合約部署。

單擊確認繼續並部署合同。在這種情況下,我們在測試Ether 中支付我們的gas 費用,但如果你使用的是以太坊網絡,您將不得不向礦工支付實際費用。

恭喜!您的智能合約現已部署!你甚至可以去以太坊瀏覽器檢查你的新智能合約!

鑄造NFT

現在轉到Deployed Contracts 部分並展開你的智能合約。

此外,擴展mint 函數並添加以下詳細信息:

  1. 在_to 字段中添加您的Ropsten 地址
  2. 在_tokenid 字段中輸入任何數字值(最好是幾位數字)
  3. 將您的IPFS URL 添加到我們在IPFS 部分獲得的_uri 字段

最後,點擊交易並在Metamask 上確認您的交易!

好極了! ! !你的NFT 是鑄造的!您可以使用新的智能合約鑄造任意數量的NFT!

要檢查您是否真的鑄造了NFT,您可以在Remix 上查看它,或者通過單擊Metamask 來檢查交易,或者打開以太坊瀏覽器(Etherscan)查看: https://ropsten.etherscan.io/

恭喜!你已經從頭開始創建了自己的NFT 智能合約和NFT !您現在可以將其發送給朋友或者去以太坊主網實戰,並以一百萬美元的價格出售它!

Total
0
Shares
Related Posts