Wat zijn ERC-20-tokens? Een uitleg voor beginners
Initial Coin Offerings (ICO’s) zijn extreem populaire manieren geworden om fondsen te werven en tegelijkertijd de wettelijke beperkingen van fiat-financiering te vermijden. In 2017 hebben ICO’s ongeveer $ 6,5 miljard opgehaald. En vanaf maart 2018 hadden ze dit jaar al $ 2 miljard opgehaald.
De meeste ICO’s zijn gebaseerd op Ethereum als platform, en meer specifiek op de slimme contracten van Ethereum. Aandelen in ICO-projecten worden meestal verkocht voor ETH of BTC en toegekend in de vorm van tokens (ook bekend als ERC-20-tokens).
Voor nieuwkomers bij Ethereum raden we meestal aan om MyEtherWallet.com (MEW) te gebruiken om ICO-tokens te bewaken en te beheren. Voor optimale beveiliging kan MEW het beste worden gecombineerd met een hardware wallet.
Dus hoewel we gewend zijn om ERC-20-tokens te zien en ermee om te gaan, weten maar weinig mensen precies wat ze zijn, hoe ze werken of zelfs wat ERC-20 betekent. (Mocht u het zich afvragen: ERC staat voor Ethereum Request Comment en 20 is het willekeurige nummer dat aan het voorstel is toegewezen.)
De ERC-20 Basics
Zoals de naam al aangeeft, is de oorspronkelijke valuta van Ethereum-blockchain ether (ETH). Maar ERC-20-tokens fungeren ook als munten op Ethereum. Ethereum is het hart en de geest van ERC-20-tokens. De blockchain verwerkt hun transacties en de virtuele machine voert hun slimme contracten uit.
Ethereum.org’S afbeelding van een ICO of‘ trustless ’crowdsale:
1) Klanten betalen het slimme contract (de robot in het midden).
2) De robot stuurt het geld door naar de contracteigenaar.
3) De robot geeft de ICO-tokens van de eigenaar terug aan de klanten. Netjes!
Onthoud dat deze tokens niet onafhankelijk zijn. Ze bevinden zich op de blockchain van Ethereum en zijn afhankelijk van de gedistribueerde computermogelijkheden.
Slimme contractrisico’s
Hoewel slimme contracten zeer efficiënt zijn, brengen ze risico’s met zich mee. Een slim contract kan bijvoorbeeld niet worden gewijzigd nadat het is geïnitieerd door de ontwikkelaars van de ICO. Als een slim contract bugs of kwetsbaarheden bevat, kunt u gemakkelijk uw financiering, tokens of beide verliezen.
Dergelijke wandaden hebben zich vaak voorgedaan in de geschiedenis van Ethereum. Het meest opvallende voorbeeld was de $ 55 miljoen DAO-hack, en om het te corrigeren was een harde vork van het Ethereum-netwerk nodig (zo is Ethereum Classis gemaakt).
Waarom de ERC-20-standaard nodig is?
Voordat de ERC-20-standaard tot stand kwam, waren er veel compatibiliteitsproblemen tussen de verschillende vormen van Ethereum-tokens. Elk token had een volledig uniek smart contract. Met andere woorden, het moest voor elke centrale of portemonnee een volledig nieuwe code schrijven om een nieuw token te hosten. En het ondersteunen van het toenemende aantal tokens werd buitengewoon problematisch en tijdrovend.
Als oplossing kwam de industrie met een standaardprotocol voor alle te volgen tokens, dat nu bekend staat als ERC-20.
De ERC-20 Token Standard heeft zes verplichte parameters voor elk smart contract, plus drie optionele (maar aanbevolen!) parameters. Optioneel kunt u het maximale aantal decimalen instellen dat een token ondersteunt. Ter vergelijking: Bitcoin staat acht cijfers achter de komma toe, evenals het symbool (meestal een 3- of 4-cijferige code) en de naam. (Kies dus iets inspirerend!)
De zes verplichte functies omgaan met het aantal en de overdracht van tokens. De eerste twee worden gebruikt om de begintoestand van token-distributie toe te wijzen:
- De totalSupply-functie van het token moet worden ingesteld. Nadat het maximum is bereikt, mogen er geen tokens meer worden gemaakt door het slimme contract.
- De balance0f-functie wijst een initieel aantal tokens toe aan een bepaald adres, meestal de eigenaren van de ICO.
Er zijn ook twee overdrachtsmethoden nodig voor extra distributie naar gebruikers en het verzenden van tokens tussen gebruikers. Ze zijn essentieel voor secundaire marktfuncties:
- De overdrachtsfunctie verplaatst tokens van de totale voorraad naar elke individuele gebruiker die tijdens de ICO-fase koopt.
- De functie transferFrom wordt gebruikt om tokens van de ene persoon naar de andere te verzenden.
Er zijn nog twee functies nodig om de functies 3 en 4 te verifiëren:
- De goedkeuringsfunctie controleert of een smart contract tokens kan verdelen, op basis van het resterende aanbod.
- Ten slotte zorgt de allowance-functie ervoor dat een adres voldoende saldo heeft om tokens naar een ander adres te sturen.
Dankzij deze 6 eenvoudige stappen konden portemonneeproviders en uitwisselingen een enkele codebase creëren die kan communiceren met elk ERC-20 smart contract.
ERC-20 tokenapplicaties
ERC-20-tokens hebben veel toepassingen. Ze kunnen bijvoorbeeld fungeren als projectaandelen, certificaten van eigendom van activa, loyaliteitspunten of zelfs als pure cryptocurrencies. Het is ook mogelijk dat ERC-20-tokens meerdere van deze rollen tegelijkertijd vervullen.
ERC-20-token maken
Alle tokens worden gemaakt door slimme contracten. Deze slimme contracten behandelen de transacties van het token en vertegenwoordigen het saldo van elke tokenhouder. Bijvoorbeeld, CoinCreator van CoinLaunch pagina kunt u eenvoudig uw eigen ERC-20-tokens maken!
Terwijl een ICO actief is, zou u de ICO-tokens terug moeten ontvangen tegen de overeengekomen wisselkoers, als u cryptofondsen en uw gegevens (vooral uw postadres) naar zijn slimme contract stuurt.
Problemen met ERC-20-tokens
Het ERC-20-protocol alleen is niet altijd voldoende voor de doeleinden van een token. Het is slechts een standaard voor het maken van op Ethereum gebaseerde tokens, en het garandeert geen bruikbare, waardevolle of zelfs functionele tokens.
Een token kan nog verder worden aangepast, zolang het voldoet aan de ERC-20-basisprincipes. Een nadeel van de ERC-20-standaard is dat het het inzetten van een token op technisch niveau triviaal maakt. Als gevolg hiervan hebben veel teams die anders niet in staat zouden zijn geweest om een ICO vrij te geven, dit kunnen doen. Het enorme aantal ingezette tokens (47.454 en meer!) leidt tot een overvloed aan zeer vergelijkbare tokens, wat het selectieproces moeilijker en verwarrender maakt voor potentiële investeerders.
Een ander probleem is dat sommige projecten de richtlijnen op een eigenzinnige manier implementeren, waardoor er meer verwarring ontstaat over de manier waarop hun tokens werken. Zo worden er soms tokens verzonden naar de slimme contracten van andere ICO’s. Als dat contract deze mogelijkheid niet toestaat, gaan de tokens verloren. Eind 2017, meer dan $ 3 miljoen ging verloren op deze manier! Het ERC-223-voorstel probeert deze tekortkoming te verhelpen.
Gevolgtrekking
De oprichting van de ERC-20 Token Standard heeft de groei in de hele ICO-ruimte versneld door functies te standaardiseren die het voor projecten gemakkelijker maken om tokens te ontwikkelen. Het protocol heeft ook gezorgd voor een verbeterde synergie tussen ICO-projecten, uitwisselingen en portemonnee-providers. Als reactie op veelvoorkomende problemen en kwetsbaarheden in ICO-tokens, zal het ERC-20-protocol waarschijnlijk in de toekomst worden verbeterd en uitgebreid.