Genug Hypothesen, was ist ein lebensnahes Beispiel?
Jeder Token auf der Ethereum-Plattform ist ein ERC-20-Token.
Es sind 82815 zum Zeitpunkt der Drucklegung, schauen wir uns einige an.
EOS (EOS), derzeit die fünftgrößte Kryptowährung mit einer Marktkapitalisierung von fast 12 Milliarden US-Dollar, versucht, ein Netzwerk aufzubauen, das Interblockchain-Kommunikation nutzen kann.
TRON (TRX) steht zum Redaktionsschluss auf Platz 10 unter allen Kryptowährungen und wird als "Open-Source-Protokoll für die digitale Unterhaltungsindustrie" bezeichnet. Es zielt darauf ab, eine Content-Plattform mit einem Ökosystem zu schaffen, das alle Menschen verbindet, die alle möglichen Inhalte produzieren.
Eine "Enterprise-Level-Public-Blockchain-Plattform" VeChain (VEN), die 15. Kryptowährung in Bezug auf die Marktkapitalisierung, plant die Implementierung von Internet of Things (IoT) -Technologie, um jedem Produkt private Schlüssel zur Verfügung zu stellen, um diese rückverfolgbar zu machen.
Hat ERC-20 irgendwelche Mängel?
ERC-20 ist nicht perfekt.
Es gibt einige Probleme, die die ERC-20-Token-Standards nicht beheben.
Es gibt Situationen, in denen Tokens unbeabsichtigt zerstört werden, wenn sie als Bezahlung für einen Smart Contract verwendet werden, anstatt Ether zu verwenden. Geschätzte 2,5 Millionen Euro sind deshalb verloren gegangen.
Um diesen Fehler zu beheben, arbeitet die Ethereum Community derzeit an einem neuen Standard
namens ERC-223. Diese Standards sind jedoch nicht mit ERC-20 kompatibel, daher wird Entwicklern empfohlen, ERC-20 weiterhin zu verwenden, bis die Kompatibilität erreicht ist.
Im April 2018 wurde eine Reihe von Austauschen von Token-Einzahlungen und -Abzügen von Ethereum-basierten Tokens aufgrund des batchOverflow-Bugs ausgesetzt. Es wird als "klassisches Integer-Überlauf-Problem" beschrieben und könnte einem Angreifer möglicherweise erlauben, "eine große Menge an Token zu besitzen".
Es wurde festgestellt, dass es keinen traditionellen Sicherheitsansatz gibt, um diese Schwachstellen im Moment zu beheben.
Was sind die Vorteile von ERC-20?
Im Grunde macht es das alles einfacher.
Vor ERC-20-Tokens könnten Entwickler andere Terminologie im Code verwenden - z. B.
verwendet ein Token [totalAmount], während ein anderer [totalNumber] verwendet.
Börsen und Wallets mussten ihre Plattformen entsprechend zu jedem
Token-Code erstellen.
Mit einem universellen Standard können neue Token an eine Börse gebracht oder automatische in eine Wallet übertragen werden,
sobald sie erstellt wurde.
ERC-20 macht auch das Erstellen neuer Token extrem einfach und deshalb wurde Ethereum zur beliebtesten Plattform für ICOs im Jahr 2017.
Kann ich lügen und behaupten, dass ich mehr Token habe als ich wirklich besitze?
Nein.
Bevor eine Transaktion stattfindet, überprüft die [allowance] -Funktion den Kontostand des Benutzers und bricht die Transaktion ab, wenn nicht genügend Token vorhanden sind
Wir erlauben keinen Kredit in unserem "Kryptokasino", also müssen wir sicherstellen, dass jeder Spieler genug BLU hat, um seinen Einsatz zu machen. Wenn sie nur 1 BLU haben, können sie nicht 2 BLU setzen.
Gibt es eine Möglichkeit, Token zu fälschen?
Nicht wirklich, denn [approve] prüft eine Transaktion auf das Gesamtangebot an Token.
Es stellt sicher, dass es keine fehlenden oder zusätzlichen gibt.
Eine weitere Möglichkeit, die Integrität unseres hypothetischen Pokerspiels zu wahren, besteht darin, sicherzustellen, dass niemand zusätzliches BLU an den Tisch bringt. Daher erlaubt [approve] den Austausch, indem überprüft wird, dass die Gesamtzahl der BLU in der Tabelle 10 beträgt.
Wie kann ich ERC-20 Token von anderen Nutzern erhalten?
[transferFrom] ist die Funktion, mit der ein Benutzer Token an einen anderen Benutzer übertragen kann.
Gute Nachrichten! Sie haben die erste Hand gewonnen und 2,5 BLU von den anderen Spielern gewonnen.
Aber um es von ihnen zu nehmen, brauchen Sie [transferFrom]. Ohne was, um jemanden daran zu hindern, dein BLU zu stehlen?
Was macht die Funktion [balanceOf]?
Wenn die Funktion [balanceOf] ausgeführt wird, gibt sie die Anzahl der Tokens zurück, die eine bestimmte Adresse in ihrem Konto hat.
In der ersten Hand unseres Pokerspiels schauten sich 5 Spieler ihre Karten an und beschließen, nicht zu spielen. Jeder der verbleibenden 5 entschied sich, 5 BLU zu setzen. Mit [balanceOf] sehen wir, dass fünf der Spieler 1 BLU haben und fünf 5 BLU haben.
Wie sieht es mit [transfer] aus?
[transfer] ermöglicht die Übertragung einer bestimmten Anzahl von Tokens von der Gesamtversorgung an ein Benutzerkonto.
Bevor das Spiel beginnen kann, müssen die Spieler ihre BLU vom Dealer erhalten.
Jeder Spieler erhält 1 BLU.
Nun zu den obligatorischen Regeln: Was ist [totalSupply]?
[totalSupply] gibt die Gesamtzahl der erstellten ERC-20-Token an.
Die erste Sache, die unser Kasino haben muss, ist die Gesamtzahl der sich im Umlauf befindlichen BLU-Token. Nehmen wir an, unser Pokertisch hat insgesamt 10 BLU mit 10 Spielern.
Die Analogie verstanden, aber wie funktioniert es wirklich?
Schauen wir uns die einzelnen Regeln für ERC-20 in unserem "Kryptokasino" -Beispiel an.
Es ist sehr wichtig, dass Entwickler diesen Regeln folgen.
Beginnen wir mit den optionalen Regeln:
Token Name: Blu Chip
Symbol: BLU
Dezimal: 2*
*Wir möchten, dass unsere Tokens teilbar sind, sodass eine minimale Spielerwette 0,01 BLU ist. Wir könnten die Dezimalzahl bei 0 belassen und 1 BLU zum Minimum machen oder die Dezimalzahl auf 18 erhöhen, was in 0.000000000000000001 BLU die niedrigstmögliche Division bedeutet, aber lassen Sie es uns einfach halten.
Was passiert, nachdem ein Smart Contract einen Token erschaffen hat?
Hier kommt der ERC-20 ins Spiel.
Nachdem ein Token erstellt wurde, kann er gehandelt, ausgegeben oder an jemand anderen weitergegeben werden.
ERC-20 ist die universelle Sprache, die alle Token im Ethereum-Netzwerk verwenden. Es erlaubt einen Token mit einem anderen zu handeln.
Stellen wir uns vor, wir wollten ein Kryptokasino eröffnen. Genau wie in einem echten Casino wollen wir, dass unsere Spieler aus Gründen der Einfachheit unsere Chips benutzen.
Also tauscht ein Spieler sein Fiat für unsere Tokens und Köpfe gegen einen Pokertisch aus.
Wie passen Smart Contracts zu all dem?
Smart Contracts werden verwendet, um ERC-20-Token zu erstellen.
Sie werden auch verwendet, um Transaktionen von Tokens zu erleichtern und um Salden von Tokens in einem Konto aufzuzeichnen.
Smart Contracts werden in der Programmiersprache "Solidity" auf der Basis der If-This-Then-That (IFTTT) -Logik geschrieben.
Stellen Sie dies wie bei einem Automaten vor.
Was ist Ethereum überhaupt?
Ethereum ist ein dezentrales Netzwerk von Computern mit zwei grundlegenden Funktionen.
Sie lauten: Blockchain, die Transaktionen aufzeichnen kann, und eine virtuelle Maschine, die Smart Contracts erstellen kann.
Aufgrund dieser beiden Funktionen kann Ethereum dezentrale Anwendungen (DApps) unterstützen. Diese DApps bauen auf der vorhandenen Ethereum-Blockchain auf, indem sie die zugrunde liegende Technologie verwenden. Im Gegenzug berechnet Ethereum-Entwickler für die Rechenleistung in ihrem Netzwerk, die nur in Ether, der einzigen plattformübergreifenden Währung, bezahlt werden kann.
Abhängig von ihrem Zweck können DAPPs ERC-20-Tokens erstellen, um als Währung, als Teil des Unternehmens, für Punkte in einem Treueprogramm oder sogar als Eigentumsnachweis, zum Beispiel für eine Goldmenge oder für ein Haus, zu fungieren .
Was sind ERC-20 Token?
ERC-20 Token sind Token, die ausschließlich auf der Ethereum-Plattform entwickelt und verwendet werden.
Sie folgen einer Liste von Standards, sodass sie geteilt, gegen andere Token ausgetauscht oder auf eine Krypto-Wallet übertragen werden können.
Die Ethereum-Community hat diese Standards mit drei optionalen und sechs obligatorischen Regeln erstellt.
Optional
- Token Name
- Symbol
- Dezimal (bis 18)
Obligatorisch
- totalSupply
- balanceOf
- Transfer
- transferFrom
- Bestätigung
- Genehmigung
Verwirrt? Gehen wir einen Schritt zurück.