Obsah

  • Úvod

  • Co je standard ERC-20?

  • Rychlá fakta o tokenu Ethereum

  • Jak se generují tokeny ERC-20?

  • Jaké funkce má ERC-20?

    • Stablecoin

    • Bezpečnostní tokeny

    • užitkový token

  • Mohu se zúčastnit těžby tokenů ERC-20?

  • Výhody a nevýhody tokenů ERC-20

    • Výhody ERC-20 tokenů

    • Nevýhody ERC-20 tokenů

  • Jaké jsou rozdíly mezi ERC-20, ERC-1155, ERC-223 a ERC-721?

  • Shrnout


Úvod

Ethereum bylo založeno Vitalikem Buterinem v roce 2014 a je umístěno jako open source platforma pro spouštění decentralizovaných aplikací (DApps). Buterinova motivace pro vytvoření tohoto nového blockchainu pramenila z velké části z nedostatku flexibility v bitcoinovém protokolu.

Od svého založení přilákal blockchain Ethereum mnoho vývojářů, podniků a podnikatelů, čímž vznikl vznikající průmysl uživatelsky spouštěných chytrých kontraktů a distribuovaných aplikací.

V tomto článku se podíváme na standard ERC-20, který je důležitým rámcem pro vytváření tokenů. Ačkoli se vztahuje pouze na síť Ethereum, je inspirací pro další standardy blockchainu, jako je BEP-2 společnosti Binance Chain.


Co je standard ERC-20?

V Ethereu je úplný název ERC Ethereum Request for Comments, což je Ethereum comment request. Tyto technické dokumenty popisují programové standardy Etherea. Toto nelze zaměňovat s návrhem na vylepšení Etherea (EIP), který je podobný bitcoinovému BIP a je návrhem na vylepšení samotného protokolu. Cílem ERC je vytvořit protokol, který usnadňuje interakci mezi aplikacemi a smlouvami.

ERC-20, vyvinutý a napsaný v roce 2015 Vitalikem Buterinem a Fabianem Vogelstellerem, nabízí další relativně jednoduchý formát pro tokeny založené na Ethereu. Dokud budou dodržovány osnovy, vývojáři nemusí znovu vynalézat kolo a mohou stavět přímo na tom, co se děje v celém odvětví.

Když jsou vytvořeny nové tokeny ERC-20, automaticky spolupracují se službami a softwarem, které podporují standard ERC-20 (softwarové peněženky, hardwarové peněženky, obchodní platformy atd.).

Je důležité poznamenat, že standard ERC-20 se vyvinul v EIP (konkrétně EIP-20). V této době uplynulo několik let od původního široce rozšířeného návrhu, ale i po několika letech zůstal název „ERC-20“.


Rychlá fakta o tokenu Ethereum

Na rozdíl od ETH (nativní kryptoměny Ethereum) se tokeny ERC-20 neukládají na účet, ale existují pouze uvnitř smlouvy jako nezávislá databáze. Určuje pravidla pro token (tj. název, symbol, dělitelnost) a udržuje seznam adres Ethereum, které mapují zůstatky uživatelů.

Aby bylo možné převést tokeny, musí uživatelé odeslat transakci do chytré smlouvy a požádat smlouvu o přidělení části zůstatku jinam. Například, pokud Alice chce poslat 5 000 tokenů Binance Academy Bobovi, zavolá funkci v odpovídající smart smlouvě, aby provedla pokyn.


Users interacting with a smart contract


Její hovor zahrnoval zdánlivě pravidelnou transakci Ethereum, která zaplatila 0 ETH na tokenovou smlouvu. Toto volání je zahrnuto mezi ostatní pole transakce a upřesňuje Alicin záměr – v tomto případě chce převést tokeny Bobovi.

I bez odeslání etheru musí zaplatit stanovený poplatek, aby byla transakce přidána do bloku. Pokud nemáte ETH, měli byste před převodem svých tokenů předem vložit nějaké ETH.

Toto je skutečný příklad v Etherscan: někdo volá BUSD kontrakt. Uvidíte, že tokeny byly převedeny a poplatek byl zaplacen, ačkoli pole hodnoty ukazuje, že bylo odesláno 0 ETH.

Dále zrychlíme tempo a podíváme se blíže na typickou strukturu kontraktů ERC-20.


Jak se generují tokeny ERC-20?


Illustration of an ERC-20 token being created


Podle standardu ERC-20 musí mít vaše smlouva nastaveno šest povinných funkcí: totalSupply, balanceOf, transfer, transferFrom, schvalování a povolenka. Kromě toho lze zadat volitelné funkce, jako je název, symbol a desetinné číslo. Funkci funkce můžete pochopit na základě názvu, nebojte se, pokud jí nerozumíte, níže ji analyzujeme.

Následují funkce prezentované prostřednictvím jazyka Solidity specifického pro Ethereum.


totalSupply

funkce totalSupply() public view vrací (uint256)

Poté, co uživatel zavolá výše uvedenou funkci, bude vrácena celková zásoba tokenů držených smlouvou.


zůstatek 

funkce balanceOf(adresa _owner) veřejné zobrazení vrací (uint256 balance)

Na rozdíl od totalSupply, balanceOf používá adresy jako parametry. Po zavolání systém vrátí zůstatek adresy tokenu. Pamatujte, že účty v síti Ethereum jsou veřejné a transparentní. Můžete zkontrolovat zůstatek libovolného uživatele, pokud znáte adresu.


převod

přenos funkce (adresa _to, uint256 _value) veřejné návraty (boolův úspěch)

Funkce přenosu podporuje uživatele při vzájemném přenosu tokenů. Musíte zadat adresu pro příjem tokenu a částku převodu.

Po zavolání transfer spustí událost (v tomto případě událost „transfer“), jejíž základní funkcí je říci blockchainu, aby obsahoval odkaz na tuto funkci.


přenéstZ

function transferFrom(adresa _from, adresa _to, uint256 _value) veřejné návraty (boolův úspěch)

Funkce transferFrom je pohodlnou alternativou k přenosové funkci, efektivně zlepšuje programovatelnost v decentralizovaných aplikacích. Podobně jako funkce přenosu se používá k přesunu tokenů, ale tyto tokeny nemusí nutně patřit uživateli, který smlouvu volá.

Jinými slovy, můžete zmocnit někoho jiného nebo jinou smlouvu k přesunu finančních prostředků vaším jménem. Pokud například nechcete ručně platit za předplacenou službu na denní/týdenní/měsíční bázi, můžete nechat program, aby to udělal za vás.

Události spouštěné touto funkcí jsou stejné jako přenos.


Schválit

funkce schvalovat (adresa _spender, uint256 _value) veřejné návraty (boolův úspěch)

Z hlediska programování je schválení další velmi užitečnou funkcí, která omezuje počet tokenů, které může chytrá smlouva vybrat ze zůstatku. Bez něj mohou být běžící smlouvy neplatné (nebo zneužité) a hrozí odcizení všech prostředků.

Opět si vezměte jako příklad model předplatného. Řekněme, že vlastníte velké množství tokenů Binance Academy a chcete nastavit opakované týdenní výplaty pro vaši streamovanou DApp. Jsem příliš zaneprázdněn čtením článků Binance Academy na to, abych každý týden trávil čas ručním vytvářením obchodů.

Velký zůstatek držených tokenů Binance Academy daleko převyšuje poplatky nutné k zaplacení předplatného. Abyste zabránili DApp ve vyplácení všech aktiv, můžete použít schválit k nastavení limitu. Za předpokladu, že vaše předplatné stojí 1 token Binance Academy týdně, bude vaše předplatné automaticky vypláceno po dobu 5 měsíců, pokud je limit schválení 20 tokenů.

Pokud se program pokazí a DApp se pokusí vybrat všechny prostředky, ztratíte pouze 20 tokenů. I když je ztráta žetonů znepokojující, výsledek je mnohem lepší než ztráta všech aktiv.

Po zavolání této funkce, schválení spustí událost schválení Stejně jako funkce přenosu zapíše data do blockchainu.


příspěvek

funkce povolena (adresa _vlastník, adresa _utrácitel) návraty veřejného pohledu (zbývá uint256)

příspěvek lze použít ve spojení se schválením. Pokud jsou ke smlouvě udělena práva ke správě tokenu, můžete prostřednictvím ní zkontrolovat vyjímatelný zůstatek tokenu. Například za předpokladu, že služba předplatného používá 12 z 20 schválených tokenů, volání funkce povolení vrátí celkem 8 tokenů.


Další volitelné funkce

Vše, co je uvedeno výše, je povinná funkce. Na druhou stranu jsou jméno, symbol a desetinné číslo volitelné funkce, ale mohou učinit ERC-20 kompletnějším. Tyto funkce podporují přidání jména čitelného pro člověka, nastavení symbolu (tj. ETH, BTC, BNB) a určení počtu desetinných míst, na která lze token rozdělit. Například tokeny používané jako měna jsou dělitelnější, a proto výhodnější než tokeny používané k reprezentaci vlastnictví majetku.


Podívejte se na tento příklad na GitHubu, abyste viděli, jak by tyto prvky vypadaly ve skutečné smlouvě.


Jaké funkce má ERC-20?


Illustration of various uses of ERC-20 tokens


Shrneme-li všechny výše uvedené funkce, získáme smlouvu ERC-20. Můžeme se dotazovat na celkovou dodávku, prohlížet zůstatky, převádět finanční prostředky a autorizovat další DApps ke správě tokenů naším jménem.

Flexibilita tokenů ERC-20 je obrovskou výhodou. Stanovená dohoda neomezuje vývoj a každá strana může spustit další funkce a nastavit si konkrétní parametry podle vlastních potřeb.


Stablecoin

Stablecoiny (tokeny navázané na fiat měny) obvykle používají tokenový standard ERC-20. Typickým příkladem je výše zmíněná kontraktační transakce BUSD a tuto formu využívá i většina stablecoinů.

U stablecoinů krytých mainstreamovými fiat měnami mohou emitenti držet rezervy v eurech, amerických dolarech atd. a poté vydat tokeny pro každou jednotku v rezervách. To znamená, že pokud je do trezoru uloženo 10 000 $, vydavatel může vytvořit 10 000 tokenů, každý v hodnotě 1 $.

Z technického hlediska je implementace v Ethereu snadná. Emitent jednoduše zahájí smlouvu s 10 000 tokeny a poté tokeny distribuuje uživatelům se slibem, že v budoucnu mohou tokeny vyměnit za určité procento fiat měny.

Uživatelé mohou používat své tokeny k provádění různých akcí, včetně nákupu zboží a služeb a použití DApps. Alternativně může být emitent požádán, aby tyto tokeny okamžitě splatil. V tomto případě může emitent také zničit vrácené tokeny (nechat je vypršet) a vybrat ekvivalentní množství fiatů z rezervy.

Jak již bylo zmíněno dříve, smlouvy, kterými se tento systém řídí, jsou poměrně jednoduché. Spuštění stablecoinu však vyžaduje pozornost mnoha dalších externích faktorů (jako je logistika, dodržování předpisů atd.) a velké úsilí.


Bezpečnostní tokeny

Bezpečnostní tokeny jsou podobné stablecoinům a mohou být dokonce zcela totožné na úrovni kontraktu, protože oba fungují stejným způsobem. Rozdíl spočívá v emitentovi: Cenné papíry představují cenné papíry, jako jsou akcie, dluhopisy nebo reálná aktiva. Obvykle, i když ne vždy, udělují držiteli podíly na podniku nebo komoditě.


užitkový token

Užitkové tokeny jsou dnes pravděpodobně nejběžnějším typem tokenu. Na rozdíl od předchozích dvou tokenů nejsou užitkové tokeny podloženy žádnými skutečnými aktivy. Pokud akcie leteckých společností představují tokeny kryté aktivy, jsou tokeny užitků jako programy pro časté cestující: mají určitou funkcionalitu, ale žádnou externí hodnotu. Užitkové žetony mohou sloužit mnoha potřebám, jako je použití jako měna ve hře, palivo pro decentralizované aplikace a věrnostní body.


➠ Chcete začít svou cestu kryptoměnami? Vítejte na Binance a nakupujte Ethereum!


Mohu se zúčastnit těžby tokenů ERC-20?

Můžete se podílet na těžbě Etherea (ETH), ale tokeny nelze těžit – vytváření nových tokenů nazýváme ražbou. Po uvedení smlouvy do provozu vývojáři rozdělí dodávky podle plánů a plánů,

To se obecně provádí prostřednictvím počáteční nabídky mincí (ICO), počáteční nabídky výměny (IEO) nebo nabídky bezpečnostního tokenu (STO). Můžete se setkat s několika variantami těchto zkratek, ale koncepty jsou velmi podobné. Investoři posílají ether na smluvní adresu a na oplátku obdrží nové tokeny. Získané prostředky budou použity na financování budoucího rozvoje projektu. Uživatelé očekávají, že budou moci své tokeny použít (okamžitě nebo později) nebo je prodat se ziskem, jak projekt poroste.

Vydávání tokenů nemusí být nutně automatické. Mnoho crowdfundingových kampaní podporuje uživatele při provádění plateb pomocí různých digitálních měn (jako je BNB, BTC, ETH a USDT) a poté distribuci odpovídajícího zůstatku na adresu uvedenou uživatelem.


Výhody a nevýhody tokenů ERC-20

Výhody ERC-20 tokenů

Zaměnitelnost

Tokeny ERC-20 jsou zastupitelné a všechny jednotky lze vzájemně vyměnit. Pokud jde o tokeny Binance Academy, je to stejné bez ohledu na to, jakou konkrétní minci držíte. Můžete obchodovat s jinými lidmi a tokeny fungují stejně, podobně jako hotovost nebo zlato.

To je ideální, pokud token, který držíte, doufá, že se vyvine v nějakou měnu. Tokeny s odlišnými vlastnostmi ztrácejí svou zastupitelnost a nesplňují vaše požadavky. To může způsobit, že některé žetony budou mít nižší nebo vyšší hodnotu než podobné žetony, což zmaří původní účel.


flexibilní

Jak bylo uvedeno v předchozí kapitole, tokeny ERC-20 jsou extrémně přizpůsobitelné a mohou přizpůsobit řešení pro různé aplikace. Příklady zahrnují použití jako herní měna, věrnostní body pro programy, digitální sběratelské předměty nebo dokonce představující umělecká díla a vlastnictví majetku.


velmi populární

ERC-20 získává v oblasti kryptoměn na popularitě a plán založený na něm je velmi přesvědčivý. Četné burzy, peněženky a chytré smlouvy jsou nyní kompatibilní s různými nově spuštěnými tokeny. Podpora pro vývojáře a dokumentace jsou navíc poměrně komplexní.


Nevýhody ERC-20 tokenů

Špatná škálovatelnost

Toto je běžný problém mnoha sítí kryptoměn a Ethereum vůči němu není imunní. V současné podobě se špatně škáluje. Odesílání transakcí ve špičce je spojeno s vysokými poplatky a dlouhými prodlevami. Pokud se použijí tokeny ERC-20 a způsobí přetížení sítě, bude ovlivněna i jejich dostupnost.

Toto není problém jedinečný pro Ethereum, ale kompromis, který musí udělat všechny zabezpečené distribuované systémy. Komunita plánuje vyřešit tyto problémy po migraci na Ethereum 2.0 a implementovat upgrady, jako je Ethereum Plasma a Ethereum Casper.

Přečtěte si prosím „Škálovatelnost blockchainu: Vedlejší řetězce a platební kanály“, kde se dozvíte více o problémech se škálovatelností.


Podvod

I když na samotné technologii není nic špatného, ​​v některých ohledech může být nevýhodou snadné vydávání tokenů. Jednoduché tokeny ERC-20 lze snadno vytvořit, což znamená, že to může udělat každý, ale záměry jsou smíšené, dobré i špatné.

Proto musíte investovat opatrně. Existuje mnoho pyramidových schémat a Ponziho schémat maskovaných jako blockchainové projekty Před investováním si musíte udělat vlastní průzkum, abyste potvrdili, zda je investiční příležitost legitimní.

 

Jaké jsou rozdíly mezi ERC-20, ERC-1155, ERC-223 a ERC-721?

ERC-20 byl první (a zdaleka nejoblíbenější) tokenový standard Ethereum, ale není jediný. V průběhu let bylo vyvinuto mnoho dalších standardů. Většina z nich jsou vylepšené standardy ERC-20, jiné se snaží dosáhnout zcela jiných cílů.

Na nezaměnitelné tokeny (NFT) se vztahuje několik neobvyklých standardů. V některých případech z vás mohou udělat příjemce jedinečné tokeny s různými vlastnostmi. Pokud chcete tokenizovat jedinečná umělecká díla, aktiva ve hře atd., jeden z těchto typů smluv může být atraktivnější.

Standard ERC-721 je například použit ve velmi oblíbeném CryptoKitties DApp. Tato smlouva poskytuje uživatelům rozhraní API pro ražení vlastních nezaměnitelných tokenů a kódování metadat (obrázky, popisy atd.).

Standard ERC-1155 lze považovat za vylepšení ERC-721 a ERC-20. Podporuje zaměnitelné i nezastupitelné standardy tokenů v jedné smlouvě.

Další možnosti, jako je ERC-223 nebo ERC-621, jsou navrženy tak, aby zlepšily použitelnost. První z nich zavádí ochranná opatření, aby se zabránilo náhodným přenosům tokenů. Ten poskytuje další funkce pro zvýšení nebo snížení zásoby tokenů.

Chcete-li se dozvědět více o NFT, přečtěte si Průvodce kryptografickými a nefunkčními tokeny (NFT).


Shrnout

Standard ERC-20 je již mnoho let dominantním hráčem v oblasti kryptoaktiv. Důvody jsou zřejmé: standard je poměrně jednoduchý a každý může nasadit jednoduché kontrakty podle různých potřeb (utilitní tokeny, stablecoiny atd.). Nicméně ERC-20 postrádá některé rysy jiných standardů, ale teprve uvidíme, zda jej mohou nahradit jiné typy smluv.