© XStudio3D/Shutterstock.com
CI für DApps

Dezentrale Apps zentral testen mit CI


DApps (Decentralized Apps) sind verteilt laufende Anwendungen, die in der Regel auf einer Blockchain implementiert werden. Ihr Vorteil: Sie sind schwer angreifbar und sehr manipulationssicher. Das macht DApps für einige Anwendungsfälle zu einer interessanten Alternative zu Client-Server-Anwendungen. Als Entwickler sind wir jedoch an einige Arbeitsabläufe gewöhnt, die Frameworks für Blockchain-Entwicklung noch nicht umsetzen. Eine CI-Pipeline kann aber durchaus eingerichtet werden.

Der Backend-Code einer DApp wird dezentral auf einem Peer-to-Peer-Netzwerk aus vielen Rechnern betrieben. Die verteilten Anwendungen kommen damit ohne zentrale Server aus. Das macht sie schwer angreifbar, daher stammt die Bezeichnung „unstoppable Apps“. Hinzu kommt: Wenn die Programme richtig programmiert sind, skalieren sie automatisch mit der Anzahl der Nutzer. Mehr Benutzer bedeuten auch mehr No des, die an der Weiterverteilung des Programms teilnehmen.

DApps müssen nicht zwingend auf einer Blockchain betrieben werden; die dezentrale Anlage der Blockchain macht eine Verknüpfung jedoch naheliegend. Zusätzlich kommen DApps so auch in den Genuss der Vorteile der Blockchain, etwa von Smart Contracts (Kasten: „Was sind Smart Contracts?“) und der Unveränderbarkeit der Blockchain.

Was sind Smart Contracts?

Die meisten von uns kennen die Funktionsweise eines Smart Contracts bereits aus früher Kindheit: vom Kaugummiautomat. Wenn wir eine passende Münze in den Automaten eingeworfen haben, ließ sich der Knopf drehen. Je nach Fabrikat gab der Automat auch sofort eine Handvoll bunter, grauslich schmeckender Kaugummis frei. Was wir damals möglicherweise noch nicht reflektiert haben: Wir haben es mit einer Wenn-dann-Beziehung zu tun. Der Automat gibt die Ware nur aus, wenn die eingeworfene Münze bestimmte Bedingungen erfüllt. Dasselbe gilt für einen Smart Contract: Er ist eine Wenn-dann-Funktion – allerdings nicht hardwaregebunden am Bahnhof oder neben dem Briefkasten, sondern als Computerprogramm auf der Blockchain.

Vor- und Nachteile von DApps

Wie jede Technologie, hat auch die Blockchain Vor- und Nachteile. Es ist wichtig, diese zu kennen, bevor man entscheiden kann, ob man ein Projekt als DApp umsetzten möchte. Die Vorteile der Technologie sind eine hohe Transparenz, Manipulations- und Ausfallsicherheit sowie geringere Transaktionskosten [1]:

  • Transparenz: Nutzer und Entwickler können mit Hilfe von Etherscan [2] Nachrichten aus der Blockchain auslesen und validieren. Damit ist das Sy...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang