您好,登錄后才能下訂單哦!
這篇文章主要介紹“以太坊通證標(biāo)準(zhǔn)ERC有哪些”,在日常操作中,相信很多人在以太坊通證標(biāo)準(zhǔn)ERC有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”以太坊通證標(biāo)準(zhǔn)ERC有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
最著名的兩個以太坊通證標(biāo)準(zhǔn)是代幣標(biāo)準(zhǔn)ERC20和數(shù)字資產(chǎn)標(biāo)準(zhǔn)ERC721。在本文中,除了介紹這兩個流行的ERC以太坊標(biāo)準(zhǔn),還將介紹其他一些針對特定應(yīng)用場景的ERC20改進(jìn)標(biāo)準(zhǔn):ERC223、ERC621和ERC827。
ERC代表“Etuereum Request for Comment",這是Ethereum版的意見征求稿 (RFC),RFC是由互聯(lián)網(wǎng)工程任務(wù)組制定的一個概念。 RFC中的備忘錄包含技術(shù)和組織注意事項。 對于ERC,意見征求稿中包括一些關(guān)于以太坊網(wǎng)絡(luò)建設(shè)的技術(shù)指導(dǎo)。
ERC是Ethereum開發(fā)者為以太坊社區(qū)編寫的。 因此,ERC的創(chuàng)建流程中包括開發(fā)人員。 為了創(chuàng)建一個以太坊平臺的標(biāo)準(zhǔn),開發(fā)人員應(yīng)當(dāng)提交了一個以太坊改進(jìn)方案(EIP), 改進(jìn)方案中包括協(xié)議規(guī)范和合約標(biāo)準(zhǔn)。 一旦EIP被委員會批準(zhǔn)并最終確定,它就成為ERC。 EIP的完整列表可以在這里找到。
最終確定的EIP為以太坊開發(fā)者提供了一套可實施的標(biāo)準(zhǔn)。 這使得智能合約可以遵循這些通用的接口標(biāo)準(zhǔn)來構(gòu)建。
ERC-20是整個加密社區(qū)中最為人熟知的標(biāo)準(zhǔn),在Ethereum平臺之上發(fā)布的大多數(shù)通證(token
)都使用它。
ERC-20標(biāo)準(zhǔn)中定義了以下函數(shù)接口:
totalSupply():返回代幣供給總量
balanceOf(address _owner):返回_owner的帳戶余額
transfer(address _to,uint256 _value):并將數(shù)量為_value的代幣轉(zhuǎn)入地址_to并觸發(fā)transfer事件
transferFrom(address _from,address _to,uint256_value):將地址_from中的_value數(shù)量的代幣轉(zhuǎn)入地址_to ,并觸發(fā)transfer事件
approve(address _spender,uint256 _value):允許_spender提取限額_value的代幣
allowance(address _owner,address _spender):返回_spender可從_owner提款的代幣數(shù)量上限
以上函數(shù)將觸發(fā)以下事件:
transfer(address indexed _from,address indexed _to,uint256 _value):每次進(jìn)行代幣轉(zhuǎn)賬時都會觸發(fā)
approval(address indexed _owner,address indexed _spender,uint256 _value):調(diào)用approve()方法將觸發(fā)該事件
ERC-20于2015年提出并于2017年9月正式實施。這是代幣標(biāo)準(zhǔn)化的一個很好的起點。 然而,開發(fā)者社區(qū) 已經(jīng)注意到它存在一些缺陷和漏洞,此外,還有一些場景它不能很好的滿足。因此陸續(xù)提出了其他的ERC標(biāo)準(zhǔn)。
狀態(tài):打開
建議日期:3/5/2017
開發(fā)人員Dexaran在一篇文章中詳細(xì)描述了ETC20不適合的兩種場景:
“在ERC20中執(zhí)行交易有兩種方式:
transfer函數(shù)。
approve + transferFrom機制。
通證余額只是通證合約中的一個變量。
通證的交易是合約內(nèi)部變量的變化。 轉(zhuǎn)出賬戶的余額將減少,轉(zhuǎn)入賬戶的余額將增加。
交易發(fā)生時, transfer()函數(shù)不會通知轉(zhuǎn)入賬戶。 因此轉(zhuǎn)入賬戶將無法識別傳入的交易! 我寫了一個例子,可以展示這一導(dǎo)致未處理的交易和資金損失的過程 。
因此,如果接收賬戶是合約,那么必須使用approve + transferFrom機制來發(fā)送通證。
如果接受賬戶是外部擁有帳戶,則必須通過transfer函數(shù)發(fā)送通證。 如果選擇了錯誤的機制,通證將卡在合約內(nèi)(合約將不會識別交易),沒有辦法來提取這些卡殼的通證。“
他對這個問題提出的解決方案包含在ERC-223中 。 它與ERC-20標(biāo)準(zhǔn)非常相似,但解決了上述問題。當(dāng)通證轉(zhuǎn)移到智能合約賬戶時,該合約的特殊函數(shù)tokenFallback() 允許接收方合約拒絕令牌或觸發(fā)進(jìn)一步的操作。 大多數(shù)情況下,這可以用來代替approve()函數(shù)。
狀態(tài):打開
建議日期:2017/5/1
ERC-621是ERC-20標(biāo)準(zhǔn)的擴展。 它增加了兩個額外的功能, increaseSupply和decreaseSupply 。這可以增加和減少流通中的令牌供應(yīng)。 ERC-20只允許單一的通證發(fā)放事件。 這將供應(yīng)量限制在一個固定的不可改變的數(shù)目。 ERC-621建議totalSupply應(yīng)當(dāng)是可修改的。
狀態(tài):打開
建議日期:9/22/2017
ERC-721與ERC-20和ERC-223都大不相同。 它描述了一個不可互換的通證。 這意味著每個通證是完全不同的,并且每個通證對不同的用戶都有不同的價值。 理解這種通證的一個方法就是回憶CryptoKittes。 每一個數(shù)字貓都是獨立的,其價值取決于其稀缺性和用戶的購買欲。
ERC-721令牌可用于任何交易所,但通證價值是“每個通證的唯一性和稀缺性所決定的結(jié)果”。標(biāo)準(zhǔn)中規(guī)定的接口函數(shù)包括name、symbol、totalSupply、balanceOf、ownerOf、approve、takeOwnership 、 transfer 、tokenOfOwnerByIndex和tokenMetadata 。 它還定義了兩個事件: Transfer和Approval 。 Gerald Nash的 這篇文章很好地解釋了可互換性的概念。
狀態(tài):打開
建議日期:1/12/2018
ERC-20標(biāo)準(zhǔn)的另一個擴展是ERC-827。 它允許轉(zhuǎn)讓通證并允許持有人允許第三方使用通證。 以太坊上的通證可以被其他應(yīng)用程序重復(fù)使用,這其中也包括錢包和交易所。 當(dāng)需要支持第三方動態(tài)消費限額調(diào)整時這一點非常有用。
最重要的是,由于ERC-827是ERC-20的延伸,它也與ERC-20兼容。
一些提議的接口函數(shù)包括:
transferFrom(address _from,address _to,uint256 _value,bytes _data) returns (bool success)
approve(address _spender,uint256 _value,bytes _data) returns (bool success)
到此,關(guān)于“以太坊通證標(biāo)準(zhǔn)ERC有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。