第七章
一、以太坊上的數(shù)字資產(chǎn)定義
以太坊設(shè)計(jì)的目標(biāo)就是讓各種數(shù)字資產(chǎn)能以智能合約的形式運(yùn)行在以太坊虛擬機(jī)上。目前,眾多智能合約中最廣泛應(yīng)用的是代幣合約(Token Contract)。是負(fù)責(zé)管理賬戶以及其擁有的代幣的智能合約,實(shí)質(zhì)可以理解為一張賬戶地址和對(duì)應(yīng)賬戶代幣余額的映射表。
即:代幣可以被稱為一種資產(chǎn),代幣合約就是一份賬本。
二、發(fā)行和流通
代幣具有轉(zhuǎn)賬、鑄幣、銷毀等基本功能,代幣合約還可以加入數(shù)字資產(chǎn)的查詢、權(quán)限控制,升至經(jīng)濟(jì)學(xué)公式計(jì)算等功能。
三、ERC 20代幣合約標(biāo)準(zhǔn)
ERC 20代幣合約標(biāo)準(zhǔn)規(guī)定了一個(gè)以太坊合約所需要實(shí)現(xiàn)的函數(shù)功能和事件記錄。該標(biāo)準(zhǔn)滿足了代幣作為數(shù)字資產(chǎn)所必需具備的一些基本功能和要求,如代幣名稱、代幣轉(zhuǎn)賬、本賬戶允許鏈上第三方使用的代幣限額等。這個(gè)標(biāo)準(zhǔn)使種類繁多的代幣能夠被更多的去中心化應(yīng)用、交易所等兼容。
1、ERC 20標(biāo)準(zhǔn)接口
11個(gè)標(biāo)準(zhǔn)接口,分為三類:常量、功能函數(shù)以及事件。
- 常量:常量接口包含代幣名稱、代幣符號(hào)和小數(shù)點(diǎn)位。
代幣名稱(name):由代幣合約創(chuàng)建者指定的完整名稱,一串公開的字符串常量,如CarToken。符合ERC 20標(biāo)準(zhǔn)的代幣可以向交易所提供代幣名稱進(jìn)行注冊(cè),交易所通過注冊(cè)機(jī)制可以檢查并保證代幣名稱與代幣合約一一對(duì)應(yīng),類似于ENS。
代幣符號(hào):
代幣符號(hào)(symbol):代幣合約創(chuàng)建者指定的代幣簡(jiǎn)稱,一串公開的字符串常量。一般由3~4個(gè)大寫字母組成,便于標(biāo)識(shí)該代幣,如EXT。與代幣名稱相同,它可以在交易所中注冊(cè)。
小數(shù)點(diǎn)位(decimals):由代幣合約創(chuàng)建者指定的一個(gè)公開的無符號(hào)整數(shù)常量,用于指定代幣的最小精度值。一般是18. - 函數(shù)功能包括總供應(yīng)量、余額、轉(zhuǎn)賬、從他人處轉(zhuǎn)賬、允許量值以及限額6個(gè)功能函數(shù)。
總供應(yīng)量:totalSupply():用于查看代幣當(dāng)前的總供應(yīng)量。返回值為無符號(hào)整數(shù)常量。
余額balanceOf():查看當(dāng)前合約中指定賬戶的代幣余額。返回值為賬戶代幣余額,無符號(hào)整數(shù)常量。
轉(zhuǎn)賬transfer():從當(dāng)前賬戶向其他賬戶進(jìn)行代幣轉(zhuǎn)賬。返回值為bool類型。
從他人處轉(zhuǎn)賬transferFrom():從他人賬戶向其他賬戶進(jìn)行代幣轉(zhuǎn)賬。輸入?yún)?shù)為:發(fā)起地址、目標(biāo)地址以及轉(zhuǎn)賬數(shù)額。返回值bool類型。
允許量值approve():設(shè)定當(dāng)前賬戶對(duì)指定賬戶的允許轉(zhuǎn)賬量值(allowed)。輸入?yún)?shù):代幣使用方地址和允許使用的額度,返回值bool類型。allowed是一個(gè)二元組。
限額allowance():用于查看當(dāng)前allowed值。輸入?yún)?shù):代幣持有方A的地址和代幣使用方B的地址,返回值:allowed[A][B]. - 事件:至少兩個(gè)事件:轉(zhuǎn)賬和允許。
轉(zhuǎn)賬transfer()用于記錄代幣合約最基本的功能–轉(zhuǎn)賬。
允許approval()用于記錄代幣合約的進(jìn)階功能–允許他人從本賬戶轉(zhuǎn)出代幣。
2、現(xiàn)有的ERC 20標(biāo)準(zhǔn)代幣
EOS、REP、BAT
三、ERC 721代幣合約標(biāo)準(zhǔn)
1、標(biāo)準(zhǔn)定義
不可替代代幣(NFT)的合約接口。最小單位為個(gè),即ERC 20標(biāo)準(zhǔn)中對(duì)應(yīng)小數(shù)點(diǎn)位的decimal值為0.每個(gè)代幣都是獨(dú)一無二的。每個(gè)代幣擁有各自的_tokenId標(biāo)號(hào),并可以附上一些各不相同的特征值。
相比ERC 20增加了一些功能函數(shù):ownerOf()和tokenOfOwnerIndex()分別根據(jù)代幣ID查詢?cè)摯鷰诺某钟姓?,以及根?jù)持有者以及其索引查詢所持有的代幣ID。transferFrom()變更為takeOwnership(),tokenMetadata()函數(shù)查看代幣的元數(shù)據(jù)等,根據(jù)代幣deId查詢一個(gè)URL格式字符串,包括這一代幣的名稱、圖像、描述等。文章來源:http://www.zghlxwxcb.cn/news/detail-410240.html
2、CryptoKitties DAPP
養(yǎng)貓游戲。小貓代幣。文章來源地址http://www.zghlxwxcb.cn/news/detail-410240.html
到了這里,關(guān)于以太坊數(shù)字資產(chǎn)的發(fā)行和流通:以太坊上的數(shù)字資產(chǎn)定義、ERC 20代幣合約標(biāo)準(zhǔn)、ERC 20標(biāo)準(zhǔn)接口、ERC 721代幣合約標(biāo)準(zhǔn)、的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!