Was genau steckt eigentlich hinter “DApps”?

Im Blockchain Universum wird man regelmĂ€ĂŸig mit Begriffen konfrontiert, von denen man zuerst einmal keine klare Idee hat, wofĂŒr sie eigentlich stehen.

Ein Beispiel könnten so genannte “DApps” sein, also “Decentralized Applications”.

In diesem Artikel möchten wir genauer erlÀutern, was DApps sind, welche Anwendungsmöglichkeiten sich durch sie ergeben und wie man starten könnte, wenn man seine eigene DApp entwickeln möchte.

Was sind DApps?

Dapps - Person mit Mining-AnlagenUm zu verstehen, was DApps sind, sollten wir uns zunĂ€chst die zugrundeliegende Technologie anschauen. Die “Distributed Ledger Technologie” – oder oft auch einfach nur Blockchain-Technologie genannt – ist eine Datenbank, die verteilt ĂŒber eine Vielzahl an Rechnern im Netzwerk gespeichert wird. Das bedeutet, dass Daten weder zentralisiert gespeichert, noch von einer einzigen Instanz verwaltet werden. Der Konsens des gesamten Peer-to-Peer Netzwerks bestimmt ĂŒber die Speicherung der Daten und macht diese somit fĂŒr einzelne Personen unverĂ€nderlich.

DApps sind nun – vereinfacht gesagt – Software-Anwendungen, die von so einem verteilten Netzwerk profitieren und die Anwendungsmöglichkeiten der Blockchain erweitern.

Es wird erwartet, dass die gesamte Software Landschaft in den nĂ€chsten 5-10 Jahren einen kompletten Paradigmenwechsel durchlaufen wird. Computeranwendungen werden zukĂŒnftig nicht mehr lokal auf dem Heimrechner ausgefĂŒhrt, sondern ĂŒber die freie Rechenleistung von Computern aus der ganzen Welt betrieben. Zentralisierte Cloud Server werden durch verteilte Rechnernetzwerke ersetzt, sodass Nutzer ihre freien Ressourcen zur VerfĂŒgung stellen und damit Geld verdienen können.

Die Grundlage fĂŒr diesen Paradigmenwechsel von ZentralitĂ€t hin zur DezentralitĂ€t soll durch DApps geschaffen werden.

Anforderungen an eine DApp:

Damit eine Software als DApp bezeichnet werden kann, muss sie folgende 4 Bedingungen erfĂŒllen:

  1. Sie muss Open Source sein
  2. Auf einer Blockchain basieren
  3. Kryptografisch verschlĂŒsselte Token anbieten
  4. Über einen Mechanismus verfĂŒgen, der diese Token erzeugt

Die erste KryptowĂ€hrung, die es in einer einfachen Form ermöglichte DApps zu erstellen, war Ethereum. Im Zusammenhang mit Ethereum werden DApps auch oft als Smart Contracts bezeichnet. Diese “intelligenten VertrĂ€ge” ermöglichen es, relativ einfach neue Token auf der Ethereum Blockchain zu erstellen. Anfang 2018 motivierte diese neue Technologie viele Start Ups dazu, ihre eigenen Token zu erstellen, was zu einem großen ICO Hype fĂŒhrte.

Welche Arten an DApps gibt es?

DApps basieren meist auf einem so genannten Token-Standard, der von der zugrundeliegenden Blockchain bestimmt wird.

Derzeit basiert der Großteil an Token auf dem ERC-20 Standard der Ethereum Blockchain.

Ein Token-Standard bestimmt welche Funktionen in einer DApp integriert werden mĂŒssen.

Ethereum Logo Mann in Anzug - EOS CoinDer ERC-20 Standard setzt z.B. folgende Funktionen voraus:

  1. totalSupply () – “Zeige die Gesamtanzahl aller Token”
  2. balanceOf (address) – “Zeige die Anzahl der Token folgender Adresse”
  3. transfer (address, value) – “Sende X Token an folgende Adresse”
  4. transferFrom (address, address, value) – “Sende X Token von Adresse A an Adresse B”
  5. approve (address, value) – “Erlaube der Adresse einen Betrag bis zu X auszuzahlen”
  6. allowance (address, address) – “Zeige, wie viel von Adresse A noch an Adresse B geschickt werden darf”

Inzwischen gibt es mehr als 205.000 DApps, die auf dem ERC-20 Standard basieren. Darunter befinden sich auch einige KryptowÀhrungen aus der Top20 nach Marktkapitalisierung, z.B. der Binance (BNB) Token, die Maker DAO WÀhrung (MKR) oder das Chainlink Token (LINK).

Neben Ethereum Smart Contracts gibt es aber natĂŒrlich auch andere Plattformen, die es Entwicklern ermöglichen, ihre eigenen DApps zu entwickeln.

Die grĂ¶ĂŸten Wettbewerber von Ethereum sind aktuell die KryptowĂ€hrungen EOS und Tron.

Besonders EOS hat es geschafft, sich in den letzten Jahren einen großen Stamm an interessierten Entwicklern aufzubauen.

Damit man eine grobe Vorstellung davon bekommt, wie sich Token Standards unterscheiden können, haben wir hier noch einmal ein kurze Auflistung der Anforderungen des EOS Standards an DApps:

  1. create – “Erstelle eine neue KryptowĂ€hrung”
  2. issue – “Verteile die neue WĂ€hrung auf folgende Adressen”
  3. retire – “Reduziere die Gesamtanzahl aller Token”
  4. transfer – “Sende X Token von Adresse A an Adresse B”
  5. close – “Lösche die Transaktionshistorie einer Adresse, falls keine Token mehr auf ihr liegen”

Es lÀsst sich erkennen, dass beide Standards versuchen die KomplexitÀt auf ein Minimum zu reduzieren und nur die wichtigsten Funktionen zu integrieren.

Dies hat den einfachen Grund, dass zu komplexer Code oftmals zu irreversiblen Fehlern fĂŒhren kann. Denn wurde der Code einmal in den Smart Contract geschrieben, ist er unverĂ€nderlich in der Adresse verankert.

In der Vergangenheit fĂŒhrte dies bereits öfters zu großen Verlusten, wie beispielsweise beim DAO Hack 2016, bei dem durch eine SicherheitslĂŒcke im Code mehr als 50 Millionen US-Dollar gestohlen wurden.

Programmierer sollten bei der DApp Entwicklung deshalb besonders viel Wert auf eine klare Struktur und eine saubere Programmcode-AusfĂŒhrung legen.

Wie erstelle ich meine eigene DApp?

blockchain hĂ€nde dappsWer seine eigene DApp erstellen möchte, dem sei geraten, dies zunĂ€chst auf einem Testnet zu tun. Durch die direkte VerknĂŒpfung von Geld und Programmcode bietet den Entwicklern so nĂ€mlich eine risikofreie Möglichkeit, seinen Code zu testen und optimal fĂŒr den spĂ€teren Mainnet Launch zu vorzubereiten.

Zudem basieren viele DApps noch auf relativ neuen Programmiersprachen (bspw. schreibt man Ethereum Smart Contracts in der eigenen Sprache Solidity, die Sprache fĂŒr EOS DApps ist WASM), was den Einstieg noch einmal erschwert.

Dennoch gibt es bereits einiges an gutem Lernmaterial, durch das man einen guten Überblick zur Vorgehensweise erhĂ€lt.

Einen guten Einsteiger Guide um sein eigenes ERC-20 Token zu erstellen, finden Sie hier.

Um gratis Ethereum Token auf dem Testnet zu erhalten, können Sie den aktuellen Rinkeby Faucet benutzen, durch den Ihnen alle 3 Tage 18,75 Testnet Ether ĂŒberwiesen werden.

Fazit

Die besten Programmierer der Welt beschÀftigen sich derzeit mit dezentralisierten Applikationen (DApps). Sei es im vorherrschenden Ethereum Netzwerk oder bei den konkurrierenden Netzwerken von Tron oder EOS. Nicht ohne Grund erhalten DApps eine starke Aufmerksamkeit. Sie haben das Potential zahlreiche traditionelle und ineffiziente Systeme zu verbessern und zu ersetzen. Aufgrund der unabhÀngigen und dezentralen Eigenschaften von DApps erhalten immer mehr Applikationen Zuspruch.

Nichtsdestotrotz existiert bis heute keine DApp, die es zu einer weltweiten, flÀchendeckenden Adaption geschafft hat. Experten meinen, dass sich dieser Status jedoch in unmittelbarer Zukunft Àndern könnte.