Inhalt
Einführung
Was ist der ERC-20-Standard?
Eine kurze Erinnerung an Ethereum-Token
Wie werden ERC-20-Token erstellt?
Was können ERC-20-Tokens?
Stablecoins
Token-Finanzierer
Utility-Token
Können Sie ERC-20-Token abbauen?
Vor- und Nachteile von ERC-20-Tokens
Vorteile von ERC-20-Tokens
Nachteile von ERC-20-Tokens
ERC-20, ERC-1155, ERC-223, ERC-721, was sind die Unterschiede?
Schlussfolgern
Einführung
Ethereum wurde 2014 von Vitalik Buterin gegründet und positioniert sich als Open-Source-Plattform für die Einführung dezentraler Anwendungen (DApps). Buterins Motivation für die Schaffung einer neuen Blockchain basiert auf der mangelnden Flexibilität von Bitcoin.
Seit ihrer Einführung hat die Ethereum-Blockchain Entwickler, Unternehmen und Unternehmer angezogen und eine wachsende Branche von Benutzern entstehen lassen, die intelligente Verträge und verteilte Anwendungen starten.
In diesem Artikel befassen wir uns mit dem ERC-20-Standard, einem wichtigen Rahmenwerk für die Erstellung von Token. Obwohl das Framework spezifisch für das Ethereum-Netzwerk ist, hat es auch andere Blockchain-Standards inspiriert, wie beispielsweise BEP-2 von Binance Chain.
Was ist der ERC-20-Standard?
Auf Ethereum ist ein ERC eine Ethereum-Anfrage nach Kommentaren. Hierbei handelt es sich um technische Dokumente, die die Standards für die Programmierung auf Ethereum definieren. Diese sollten nicht mit den Ethereum Improvement Proposals (EIPs) verwechselt werden, die wie die BIPs von Bitcoin Verbesserungen am Protokoll selbst vorschlagen. ERCs zielen vielmehr darauf ab, Konventionen zu etablieren, die die Interaktion zwischen Anträgen und Verträgen erleichtern.
ERC-20 wurde 2015 von Vitalik Buterin und Fabian Vogelsteller definiert und bietet ein relativ einfaches Format für Ethereum-basierte Token. Wenn Entwickler seiner Blaupause folgen, müssen sie das Rad nicht neu erfinden. Stattdessen können sie auf einem bereits in der Region genutzten Fundament aufbauen.
Sobald neue ERC-20-Token erstellt wurden, sind sie automatisch mit Diensten und Software kompatibel, die den ERC-20-Standard unterstützen (Software-Wallets, Hardware-Wallets, Börsen usw.).
Es ist zu beachten, dass der ERC-20-Standard von einem EIP (insbesondere EIP-20) entwickelt wurde. Dies geschah aufgrund seiner weiten Verbreitung einige Jahre nach dem ursprünglichen Vorschlag. Doch auch Jahre später blieb der Name „ERC-20“ hängen.
Eine kurze Erinnerung an Ethereum-Token
Im Gegensatz zur ETH (der nativen Kryptowährung von Ethereum) werden ERC-20-Token nicht von Konten gehalten. Token existieren nur in einem Vertrag, der einer eigenständigen Datenbank gleicht. Es legt Token-Regeln fest (Name, Symbol, Teilbarkeit) und verwaltet eine Liste, die Benutzerguthaben mit ihren Ethereum-Adressen verknüpft.
Um Token zu verschieben, müssen Benutzer eine Transaktion an den Vertrag senden und sie auffordern, einen Teil ihres Guthabens anderswo zu verwenden. Wenn Alice beispielsweise 5.000 BinanceAcademyTokens an Bob senden möchte, ruft sie eine Funktion im BinanceAcademyToken-Smart-Vertrag auf, um ihn dazu aufzufordern.

Sein Aufruf ist in einer scheinbar regulären Ethereum-Transaktion enthalten, bei der 0 ETH an den Token-Vertrag gezahlt werden. Der Aufruf wird in ein zusätzliches Feld in der Transaktion eingefügt, das angibt, was Alice tun möchte. Übertragen Sie in unserem Fall Token an Bob.
Auch wenn sie kein Ether sendet, muss sie dennoch eine Gebühr zahlen, um ihre Transaktion in einen Block aufzunehmen. Wenn sie keine ETH hat, muss sie sich welche besorgen, bevor sie die Token überträgt.
Hier ist ein reales Beispiel des oben Gesagten auf Etherscan: Jemand ruft den BUSD-Vertrag auf. Sie können sehen, dass Token übertragen und Gebühren bezahlt wurden, obwohl im Wertfeld angegeben ist, dass 0 ETH gesendet wurden.
Nachdem wir nun die Grundlagen verstanden haben, werfen wir einen Blick unter die Haube, um die Struktur eines typischen ERC-20-Vertrags besser zu verstehen.
Wie werden ERC-20-Token erstellt?

Um ERC-20-konform zu sein, muss Ihr Vertrag sechs obligatorische Funktionen enthalten: totalSupply, balanceOf, transfer, transferFrom, genehmigt und Zulage. Darüber hinaus können Sie optionale Funktionen wie Name, Symbol und Dezimalzahl angeben. Die Namen dieser Funktionen verdeutlichen möglicherweise, was sie tun. Wenn nicht, machen Sie sich keine Sorgen, wir erklären es Ihnen weiter unten.
Hier sind die Funktionen, wie sie in der speziell für Ethereum entwickelten Solidity-Sprache erscheinen.
totalSupply
Funktion totalSupply() öffentliche Ansicht gibt (uint256) zurückWenn die obige Funktion von einem Benutzer aufgerufen wird, gibt sie den Gesamtvorrat an Token zurück, den der Vertrag enthält.
Gleichgewicht von
Funktion balanceOf(address _owner) öffentliche Ansicht gibt zurück (uint256 balance)Im Gegensatz zu totalSupply benötigt balanceOf einen Parameter (eine Adresse). Beim Aufruf wird der Restbetrag der von dieser Adresse gehaltenen Token zurückgegeben. Denken Sie daran, dass Konten im Ethereum-Netzwerk öffentlich sind, sodass Sie den Kontostand jedes Benutzers abfragen können, solange Sie dessen Adresse kennen.
überweisen
Funktionsübertragung (Adresse _to, uint256 _value) öffentliche Rückgabe (Bool-Erfolg)Transfer überträgt Token von einem Benutzer an einen anderen. Hier geben Sie die Adresse an, an die Sie das Geld senden möchten, und den zu überweisenden Betrag.
Beim Aufruf löst die Übertragung ein sogenanntes Ereignis aus (in diesem Fall das Übertragungsereignis), das der Blockchain im Wesentlichen mitteilt, einen Verweis darauf aufzunehmen.
Übertragen von
Funktion transferFrom(address _from, address _to, uint256 _value) öffentliche Rückgabe (bool Erfolg)Die transferFrom-Funktion ist eine praktische Alternative zu transfer, die etwas mehr Programmierbarkeit in dezentralen Anwendungen ermöglicht. Wie bei der Übertragung dient es der Übertragung von Token, die Token müssen jedoch nicht unbedingt der Person gehören, die den Vertrag aufruft.
Mit anderen Worten: Sie können eine Person oder einen anderen Vertrag ermächtigen, in Ihrem Namen Gelder zu überweisen. Ein möglicher Anwendungsfall ist die Bezahlung abonnementbasierter Dienste, bei denen Sie nicht jeden Tag/Woche/Monat manuell eine Zahlung senden möchten. Stattdessen überlassen Sie es einem Programm, dies für Sie zu erledigen.
Diese Funktion löst das gleiche Ereignis aus wie die Übertragung.
genehmigen
Funktion genehmigt (Adresse _spender, uint256 _value) öffentlich gibt zurück (bool Erfolg)genehmigt ist aus Sicht der Programmierbarkeit eine weitere nützliche Funktion. Dank dieser Funktion können Sie die Anzahl der Token begrenzen, die ein Smart Contract von Ihrem Guthaben abheben kann. Ohne sie könnte der Vertrag fehlerhaft funktionieren (oder böswillig werden) und dies könnte zum Verlust aller Ihrer Gelder führen.
Kehren wir zu unserem Beispiel eines Abonnementmodells zurück. Nehmen wir an, Sie haben eine große Menge an BinanceAcademyTokens und möchten wöchentlich wiederkehrende Zahlungen für eine Streaming-DApp einrichten. Sie sind Tag und Nacht damit beschäftigt, Inhalte der Binance Academy zu lesen. Sie möchten sich also nicht jede Woche die Zeit nehmen, manuell eine Transaktion zu erstellen.
Sie verfügen über ein riesiges BinanceAcademyTokens-Guthaben, das weit über das hinausgeht, was zur Bezahlung des Abonnements erforderlich ist. Um zu verhindern, dass die DApp sie alle verbraucht, können Sie mit „Genehmigen“ ein Limit festlegen. Nehmen wir an, Ihr Abonnement kostet einen BinanceAcademyToken pro Woche. Wenn Sie den genehmigten Wert auf zwanzig Token begrenzen, könnte Ihr Abonnement fünf Monate lang automatisch bezahlt werden.
Im schlimmsten Fall können Sie nur zwanzig Token verlieren, wenn die DApp versucht, Ihr gesamtes Geld abzuheben oder ein Fehler entdeckt wird. Es ist vielleicht nicht die ideale Lösung, aber sicherlich attraktiver, als Ihr gesamtes Geld zu verlieren.
Bei Aufruf löst genehmigt das Genehmigungsereignis aus. Es schreibt wie das Übertragungsereignis Daten in die Blockchain.
Zuschuss
Funktionszulage (Adresse _owner, Adresse _spender) öffentliche Ansicht gibt zurück (uint256 verbleibend)Die Zulage kann in Verbindung mit der Genehmigung verwendet werden. Wenn Sie die Vertragsermächtigung zur Verwaltung Ihrer Token erteilt haben, können Sie damit prüfen, wie viel noch abgehoben werden kann. Wenn Ihr Abonnement beispielsweise zwölf Ihrer zwanzig genehmigten Token verbraucht hat, sollte der Aufruf der Zulassungsfunktion insgesamt acht zurückgeben.
Optionale Funktionen
Die zuvor vorgestellten Funktionen sind obligatorisch. Die Funktionen Name, Symbol und Dezimalzahl müssen zwar nicht enthalten sein, können Ihren ERC-20-Vertrag aber etwas hübscher machen. Sie ermöglichen Ihnen jeweils das Hinzufügen eines für Menschen lesbaren Namens, die Definition eines Symbols (z. B. ETH, BTC, BNB) und die Angabe der Anzahl der Dezimalstellen, durch die die Token teilbar sind. Beispielsweise können Token, die als Währungen verwendet werden, besser teilbar sein als Token, die das Eigentum an einem Vermögenswert darstellen.
Schauen Sie sich dieses Beispiel auf GitHub an, um diese Elemente in einem tatsächlichen Vertrag zu sehen.
Was können ERC-20-Tokens?

Wenn wir alle oben genannten Funktionen zusammenfassen, erhalten wir einen ERC-20-Vertrag. Wir können den Gesamtvorrat abfragen, Guthaben prüfen, Gelder überweisen und anderen DApps Berechtigungen zur Verwaltung der Token erteilen.
Der Reiz von ERC-20-Tokens liegt vor allem in ihrer Flexibilität. Die definierten Konventionen schränken die Entwicklung nicht ein, sodass Parteien zusätzliche Funktionen implementieren und spezifische Parameter festlegen können, um ihren Anforderungen gerecht zu werden.
Stablecoins
Stablecoins (an Fiat-Währungen gebundene Token) verwenden häufig den ERC-20-Token-Standard. Die zuvor erwähnte BUSD-Vertragstransaktion ist ein Beispiel, und die meisten großen Stablecoins sind auch in diesem Format verfügbar.
Für einen klassischen, durch Fiat gedeckten Stablecoin hält ein Emittent Reserven in Euro, Dollar usw. Anschließend wird für jede Reserveeinheit ein Token ausgegeben. Das heißt, wenn 10.000 US-Dollar in einem Tresor stecken würden, könnte der Emittent 10.000 Token erstellen, die jeweils gegen 1 US-Dollar eingetauscht werden können.
Technisch gesehen ist die Implementierung auf Ethereum ziemlich einfach. Ein Emittent schließt einfach einen Vertrag mit 10.000 Token ab. Anschließend verteilt es sie an Benutzer mit dem Versprechen, dass sie die Token später gegen einen proportionalen Betrag an Fiat-Währung eintauschen können.
Benutzer können mit ihren Token eine Reihe von Dingen tun: Sie können Waren und Dienstleistungen kaufen oder sie in DApps verwenden. Sie können den Emittenten auch um einen sofortigen Umtausch bitten. In diesem Fall verbrennt der Emittent die zurückgegebenen Token (wodurch sie unbrauchbar werden) und entnimmt den entsprechenden Betrag an Fiat aus seinen Reserven.
Der Vertrag, der dieses System regelt, ist, wie bereits erwähnt, relativ einfach. Die Einführung eines Stablecoins erfordert jedoch viel Arbeit in Bezug auf externe Faktoren wie Logistik, Einhaltung gesetzlicher Vorschriften usw.
Token-Finanzierer
Finanztoken ähneln Stablecoins. Vertragstechnisch könnten die beiden sogar gleich sein, weil sie auf die gleiche Weise funktionieren. Die Unterscheidung erfolgt auf Senderebene. Finanztoken stellen Wertpapiere wie Aktien, Anleihen oder physische Vermögenswerte dar. Oft (wenn auch nicht immer) repräsentieren sie das Interesse des Inhabers an einem Unternehmen oder einer Immobilie.
Utility-Token
Utility-Token sind heute vielleicht die häufigste Art von Token. Im Gegensatz zu den beiden vorherigen Typen sind sie nicht durch einen anderen Vermögenswert gedeckt. Während Asset-Backed-Tokens mit Aktien einer Fluggesellschaft vergleichbar sind, ähneln Utility-Tokens Treueprogrammen: Sie erfüllen eine Funktion, haben aber keinen äußeren Wert. Utility-Token können eine Vielzahl von Anwendungsfällen erfüllen und als Spielwährung, Treibstoff für dezentrale Anwendungen, Treuepunkte und vieles mehr dienen.
➟ Möchten Sie mit Kryptowährungen beginnen? Kaufen Sie Bitcoins auf Binance!
Können Sie ERC-20-Token abbauen?
Sie können Ether (ETH) schürfen, aber die Token sind nicht schürfbar, wir sagen, sie werden ausgegeben, wenn neue Token erstellt werden. Wenn ein Vertrag abgeschlossen wird, verteilen die Entwickler das Angebot basierend auf ihren Plänen und ihrer Roadmap.
Dies geschieht typischerweise durch ein Initial Coin Offering (ICO), ein Initial Exchange Offering (IEO) oder ein Financial Token Offering (STO). Möglicherweise stoßen Sie auf Variationen dieser Akronyme, diese Konzepte sind jedoch recht ähnlich. Anleger senden Ether an die Vertragsadresse und erhalten im Gegenzug neue Token. Mit dem gesammelten Geld wird die Weiterentwicklung des Projekts finanziert. Benutzer erwarten, dass sie ihre Token (sofort oder zu einem späteren Zeitpunkt) verwenden oder mit Gewinn weiterverkaufen können, wenn das Projekt wächst.
Die Tokenverteilung muss nicht automatisiert werden. Bei vielen Crowdfunding-Events können Benutzer in verschiedenen digitalen Währungen bezahlen (z. B. BNB, BTC, ETH und USDT). Die jeweiligen Salden werden dann den von den Nutzern angegebenen Adressen zugeordnet.
Vor- und Nachteile von ERC-20-Tokens
Vorteile von ERC-20-Tokens
Fongibel
ERC-20-Token sind fungibel, jede Einheit ist untereinander austauschbar. Wenn Sie einen BinanceAcademyToken besitzen, spielt es keine Rolle, welchen spezifischen Token Sie besitzen. Sie könnten es gegen das eines anderen eintauschen, und es wäre immer noch dasselbe, wie Bargeld oder Gold.
Dies ist ideal, wenn Ihr Token eine Art Währung werden soll. Sie möchten keine einzelnen Einheiten mit besonderen Merkmalen, die sie unersetzlich machen würden. Daher könnten einige Token mehr oder weniger wertvoll sein als andere, was ihren Nutzen untergraben würde.
Flexibilität
Wie wir im vorherigen Abschnitt gesehen haben, sind ERC-20-Token in hohem Maße anpassbar und können an viele verschiedene Anwendungen angepasst werden. Sie können beispielsweise als In-Game-Währung, in Treueprogrammen, als digitale Sammlerstücke oder sogar zur Darstellung von Eigentumsrechten und Kunstwerken verwendet werden.
Beliebt
Die Popularität von ERC-20 in der Kryptowährungsbranche ist ein sehr überzeugender Grund, es als Modell zu verwenden. Es gibt eine Vielzahl von Börsen, Wallets und Smart Contracts, die bereits mit den kürzlich eingeführten Token kompatibel sind. Darüber hinaus gibt es zahlreiche Entwicklerunterstützung und Dokumentation.
Nachteile von ERC-20-Tokens
Skalierbarkeit
Wie viele Kryptowährungsnetzwerke ist auch Ethereum nicht vor Wachstumsschmerzen gefeit. In seiner jetzigen Form ist es nicht sehr skalierbar: Der Versuch, eine Transaktion zu Spitzenzeiten zu versenden, führt zu hohen Gebühren und Verzögerungen. Wenn Sie einen ERC-20-Token starten und das Netzwerk überlastet ist, kann dies seine Nutzung beeinträchtigen.
Dies ist kein ausschließliches Ethereum-Problem. Es handelt sich vielmehr um einen notwendigen Kompromiss für alle sicheren und verteilten Systeme. Die Community plant, diese Probleme bei der Migration auf Ethereum 2.0 zu lösen, das Upgrades wie Ethereum Plasma und Ethereum Casper implementieren wird.
Weitere Informationen zu Skalierbarkeitsproblemen finden Sie unter Blockchain-Skalierbarkeit: Sidechains und Zahlungsgateways.
Betrug
Auch wenn die Technologie selbst kein Problem darstellt, kann die einfache Einführung eines Tokens in mancher Hinsicht als Nachteil angesehen werden. Die Erstellung eines einfachen ERC-20-Tokens erfordert nur sehr wenig Aufwand, was bedeutet, dass es jeder tun kann, egal ob im Guten oder im Schlechten.
Sie müssen also vorsichtig sein, in was Sie investieren. Es gibt eine Reihe von Pyramiden- und Schneeballsystemen, die als Blockchain-Projekte getarnt sind. Machen Sie Ihre eigenen Recherchen, bevor Sie investieren, um sich eine eigene Vorstellung von der Legitimität einer Chance zu machen.
ERC-20, ERC-1155, ERC-223, ERC-721, was sind die Unterschiede?
ERC-20 war der erste (und bis heute beliebteste) Ethereum-Token-Standard, aber es ist bei weitem nicht der einzige. Im Laufe der Jahre sind viele weitere entstanden, die entweder Verbesserungen am ERC-20 vorschlagen oder versuchen, andere Ziele zu erreichen.
Einige der weniger gebräuchlichen Standards werden in nicht fungiblen Token (NFTs) verwendet. Manchmal ist es für Ihren Anwendungsfall von Vorteil, über eindeutige Token mit unterschiedlichen Attributen zu verfügen. Wenn Sie ein einzigartiges Kunstwerk, einen Vermögenswert in einem Spiel usw. tokenisieren möchten, könnte eine dieser Vertragsarten interessanter sein.
Der ERC-721-Standard wurde beispielsweise für die äußerst beliebte DApp CryptoKitties verwendet. Ein solcher Vertrag stellt eine API bereit, die es Benutzern ermöglicht, ihre eigenen nicht fungiblen Token auszugeben und Metadaten (Bilder, Beschreibungen usw.) zu verschlüsseln.
Der ERC-1155-Standard kann als Verbesserung der Standards ERC-721 und ERC-20 angesehen werden. Es stellt einen Standard dar, der fungible und nicht fungible Token im selben Vertrag unterstützt.
Andere Optionen wie ERC-223 oder ERC-621 zielen darauf ab, die Benutzerfreundlichkeit zu verbessern. Die erste implementiert Schutzmaßnahmen, um versehentliche Übertragungen von Token zu verhindern. Der zweite fügt zusätzliche Funktionen hinzu, um den Token-Vorrat zu erhöhen und zu verringern.
Um mehr über NFTs zu erfahren, besuchen Sie A Guide to Crypto Collectibles and Non-Fungible Tokens (NFTs).
Schlussfolgern
Seit Jahren dominiert der ERC-20-Standard den Krypto-Asset-Bereich, und es ist nicht schwer zu verstehen, warum. Relativ einfach kann jeder einen einfachen Vertrag für eine Vielzahl von Anwendungsfällen bereitstellen (Utility-Token, Stablecoins usw.). Allerdings fehlen dem ERC-20 einige der von anderen Standards implementierten Funktionen. Es bleibt abzuwarten, ob spätere Vertragsformen umgesetzt werden.



