自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何花10分鐘創(chuàng)建和部署NFT智能合約

開發(fā) 后端
NFT代表不可替代的令牌,例如,一個美元鈔票是可替代的,因為您可以將其交換為另一個美元鈔票(并且您不必?fù)?dān)心美元鈔票的序列號)。同樣,比特幣是一個可替代的代幣,因為兩個不同的比特幣完全相同。

 [[387050]]

本文轉(zhuǎn)載自微信公眾號「區(qū)塊鏈研究實驗室」,作者鏈三豐 。轉(zhuǎn)載本文請聯(lián)系區(qū)塊鏈研究實驗室公眾號。   

什么是NFT

NFT代表不可替代的令牌,例如,一個美元鈔票是可替代的,因為您可以將其交換為另一個美元鈔票(并且您不必?fù)?dān)心美元鈔票的序列號)。同樣,比特幣是一個可替代的代幣,因為兩個不同的比特幣完全相同。

那么,不可替代的事物就是那些唯一且不能與其他事物互換的事物。不可替代的令牌本質(zhì)上是在區(qū)塊鏈上跟蹤的唯一令牌。

不可替代的代幣具有以下特征:

  • 它們是唯一的:每個不可替代的令牌都代表數(shù)字或現(xiàn)實世界中的某個對象,并且即使存在類似的對象也是唯一的。例如,即使有人“創(chuàng)造”了與NFT相同的數(shù)字藝術(shù)作品100件,每件都會在區(qū)塊鏈上被單獨(dú)跟蹤。
  • 它們是可驗證的:這些NFT的歷史所有權(quán)記錄在公共分類帳中,并且所有人都可以看到。這使得難以“復(fù)制”并且相對簡單地證明真實性。
  • 它們是可交易的:與其他加密資產(chǎn)一樣,它們也是可交易的,盡管通常在特殊交易所交易。

大多數(shù)NFT都建立在以太坊區(qū)塊鏈之上,如今不可替代令牌(NFT)風(fēng)行一時,作為開發(fā)人員,您可能想知道如何創(chuàng)建自己的NFT。本文將解釋如何以最簡單的方式做到這一點(diǎn),以便您在短短幾分鐘內(nèi)就可以啟動并運(yùn)行。

我們將使用標(biāo)準(zhǔn)的OpenZeppelin ERC721合約,這是智能合約的黃金標(biāo)準(zhǔn)。有許多用于部署智能合約的工具,但是在本文中,我們將使用web3 CLI工具,因為它是編譯和部署合約的最快,最簡單的工具。

搭建環(huán)境

在F? llowing東西只是必須做一次,然后就可以部署和互動就像你想不再次做這個東西。

1.安裝CLI工具

這個襯板將安裝該工具,因此您可以立即開始使用它。如果您擔(dān)心install.sh的功能,請隨時閱讀。

  1. curl -LSs https://raw.githubusercontent.com/gochain/web3/master/install.sh| SH 

2.設(shè)置網(wǎng)絡(luò)

我們將在這里使用GoChain,因此我們不必支付10美元來部署合同,然后再為每個NFT投入10美元。使用GoChain,我們只需要支付一分錢的一小部分,并且100%與以太坊兼容,因此我們可以像使用以太坊一樣使用它。當(dāng)然,您可以更改下面的行以指向以太坊,并根據(jù)需要支付額外的費(fèi)用。

  1. export WEB3_NETWORK=gochain 
  2.  
  3. for ethereum: 
  4.  
  5. # export WEB3_NETWORK=ethereum 

3.添加/獲取氣體

您將需要使用帶有一些供氣的a來進(jìn)行這些交易,或者創(chuàng)建一個新的供其使用的供氣。這將是GoChain上的$ GO或以太坊上的$ ETH。

要創(chuàng)建一個新帳戶,請運(yùn)行:

  1. web3 account create 

這將打?。?/p>

  1. Private key: 0xABC123 
  2. Public address: 0xXYZ456 

發(fā)送一些$ GO到“公共地址”。如果您需要一些$ GO入門,請進(jìn)入我們的電報并詢問,那里有人會很好地向您發(fā)送一兩個$ GO。

復(fù)制“私鑰”(或根據(jù)需要使用現(xiàn)有的私鑰)并運(yùn)行:

  1. export WEB3_PRIVATE_KEY=0xABC123 

另外,請將此私鑰的副本保存在安全的地方,以便下次使用。

部署工作

既然我們都已設(shè)置好網(wǎng)絡(luò)集,并且我們的私鑰中設(shè)置了一些加油鍵,我們就可以開始玩得開心了。

創(chuàng)建合同

該WEB3 CLI已經(jīng)內(nèi)置代碼生成器常見的合同,如ERC20和ERC721的。趕緊跑:

  1. web3 generate contract erc721 --symbol KATS --name "Krypto Kats" --base-uri https://kryptokats.com/token/ 

這將生成一個名為的文件KATS.sol,該文件是您新的NFT合同的統(tǒng)一程序。

1.部署合同

從這里,我們只需要編譯和部署它。同樣,web3 CLI使此部分變得容易:

  1. web3 contract build KATS.sol 
  2. web3 contract deploy KATS.bin 

這將打印出您的新合同地址。您現(xiàn)在已經(jīng)部署了NFT合同!

現(xiàn)在已經(jīng)部署了合同,我們只需要創(chuàng)建新合同即可。鑄造NFT時,您需要提供擁有此新NFT的人員的地址:

  1. web3 contract call --wait --abi KATS.abi --gas-limit 2000000 --function mint 0xABC 

此功能產(chǎn)生一個全新的NFT,并將其分配給地址0xABC。ERC721的新OpenZeppelin預(yù)設(shè)具有自動遞增的ID,因此您將在輸出中看到新的令牌ID。例如:

  1. Parsed Logs: [ 
  2.   { 
  3.     "name""Transfer"
  4.     "fields": { 
  5.       "from""0x00000"
  6.       "to""0x000ABC"
  7.       "tokenId""0x00001" 
  8.     } 
  9.   } 

該輸出已被截斷,刪除了一堆零,但是您可以看到新的令牌ID是number 1。

轉(zhuǎn)移NFT

現(xiàn)在,如果您擁有NFT并想轉(zhuǎn)讓它,則可以調(diào)用該transferFrom函數(shù):

  1. web3 contract call --wait --abi KATS.abi --gas-limit 2000000 --function transferFrom 0xABC 0xXYZ 1 

這會將ID為1的令牌轉(zhuǎn)讓給位于的新所有者0xXYZ。您可以在GoChain Explorer中查看和搜索令牌。

 

責(zé)任編輯:武曉燕 來源: 區(qū)塊鏈研究實驗室
相關(guān)推薦

2021-04-20 12:53:34

Polkadot部署合約

2021-03-04 09:26:57

微服務(wù)架構(gòu)數(shù)據(jù)

2021-05-06 09:42:24

Truffle部署智能

2021-07-15 06:43:11

Bash調(diào)試腳本

2020-08-07 15:43:03

Python表格代碼

2013-09-13 14:08:01

2021-03-24 10:58:08

Vuesrc前端

2021-04-23 09:50:41

topLinux命令

2014-08-08 09:30:04

android scrollview

2020-10-13 18:22:58

DevOps工具開發(fā)

2022-08-29 15:02:53

遠(yuǎn)程桌面

2021-08-01 21:38:07

網(wǎng)頁點(diǎn)燈網(wǎng)關(guān)

2020-10-29 08:28:42

Java NIO異步非阻塞

2018-11-28 11:20:53

Python函數(shù)式編程編程語言

2021-05-28 07:38:20

內(nèi)存溢出場景

2021-05-17 20:13:50

數(shù)倉操作型數(shù)據(jù)庫

2019-07-19 14:06:48

APP代碼打包

2020-12-17 08:00:00

區(qū)塊鏈數(shù)據(jù)以太坊

2020-05-22 10:20:27

Shiro架構(gòu)字符串

2018-01-10 14:15:14

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號