Gegenstand dieser Arbeit ist es, einen Überblick über Smart Contracts zu geben und ihren technischen Hintergrund genauer zu beleuchten. Um ein Hintergrundverständnis zu schaffen wird dem Leser zu Beginn ein kurzer Abriss über die geschichtlichen Hintergründe dieser Verträge und eine Begriffserklärung der Smart Contracts gegeben. Im weiteren Verlauf beschäftigt sich diese Arbeit mit der Technologie, die hinter den Smart Contracts steckt und als sogenannte Blockchain-Technologie bezeichnet wird. Der nächte Teil dieser Arbeit beschreibt die Blockchain-Plattform Ethereum, welche die Grundlage für Smart-Contracts darstellt. Im Fokus steht hier neben der Erläuterung von Ethereum, die verwendete Programmiersprache und ein Code-Beispiel. Diese Arbeit kommt zu dem Ergebnis, dass die Basis für Smart Contracts geschaffen ist, dennoch einige Herausforderungen auf das Konzept der Smart Contracts zukommen.
Inhaltsverzeichnis
1 Einleitung
2 Smart Contracts
2.1 Geschichte der Smart Contracts
2.2 Definition Smart Contracts
3 Smart Contracts dank Blockchain-Technologie
3.1 Funktionsweise der Blockchain
4 Blockchain-Plattform Ethereum
4.1 Ethereum
5 Smart Contracts entwickeln mit Ethereum
5.1 Die Programmiersprache und Code-Beispiel
6 Fazit
Zielsetzung und thematische Schwerpunkte
Das Hauptziel dieser Arbeit besteht darin, einen fundierten Überblick über Smart Contracts zu geben und deren technische Funktionsweise im Kontext der Blockchain-Technologie zu erläutern, wobei insbesondere die Plattform Ethereum und die Implementierung durch Programmiercode im Vordergrund stehen.
- Grundlagen und Geschichte von Smart Contracts
- Funktionsweise der Blockchain-Technologie
- Einführung in die Blockchain-Plattform Ethereum
- Praktische Demonstration durch ein Code-Beispiel in der Programmiersprache Solidity
Auszug aus dem Buch
Die Programmiersprache und Code-Beispiel
Die Programmiersprache, die zum Entwickeln der Smart Contracts auf der Blockchain-Plattform Ethereum verwendet wird, heißt Solidity. Solidity ist die vierte, aber am meisten weiterentwickelte Programmiersprache, die für Ethereum existiert. Sie basiert auf JavaScript und ermöglicht, dass die Kontrakte in Bytecode kompiliert werden, um anschließend das Hochladen auf die Ethereum Blockchain durchzuführen. Wie genau so ein Quellcode aussieht und funktioniert soll am folgenden Beispiel demonstriert werden:
Das Glücksspiel Münzwurf (Kopf oder Zahl) stellt einen Smart Contract dar. Dieses Glücksspiel soll im Test-Net des Ethereum Wallet, einer digitalen Geldbörse mit der Geldeinheit Ether, demonstriert werden. Dabei wickelt der Code des Smart-Contract das Glücksspiel ab.
Das Glückspiel beginnt, nachdem zwei oder mehr Teilnehmer einen Mindesteinsatz in einen virtuellen Topf werfen. Insofern der Einsatz des letzten Spielers getätigt wurde, ist es dem Ersteller des Kontraktes unterbunden, den Smart-Contract zu löschen. Diese Möglichkeit besteht erst wieder, wenn der Gewinn des Glücksspiels an den Sieger ausgezahlt wurde. Das Ende des Spiels ist durch Ablauf der Zeitspanne gekennzeichnet. Mit Ablauf der Zeit bestimmt der Smart-Contract mittels Zufallsprinzip, wer der Gewinner des Glückspiels ist und überweist diesem sofort den Gewinnbetrag.
Zusammenfassung der Kapitel
1 Einleitung: Diese Einleitung führt in das Konzept der selbstabwickelnden Verträge ein und skizziert das Ziel der Arbeit, die technischen Grundlagen und eine praktische Anwendung zu beleuchten.
2 Smart Contracts: Dieses Kapitel erläutert die Entstehungsgeschichte sowie die technologische Definition von Smart Contracts als softwarebasierte, automatisierte Vertragsformen.
3 Smart Contracts dank Blockchain-Technologie: Hier wird die Blockchain als zugrunde liegende, dezentrale und manipulationssichere Datenbankstruktur für Smart Contracts beschrieben.
4 Blockchain-Plattform Ethereum: Dieses Kapitel stellt Ethereum als führende Plattform vor, die dezentrale Applikationen und Smart Contracts mittels Ether ermöglicht.
5 Smart Contracts entwickeln mit Ethereum: Hier wird der Prozess der Programmierung mit Solidity anhand eines konkreten Münzwurf-Szenarios detailliert dargelegt.
6 Fazit: Das Fazit resümiert das große Potenzial von Smart Contracts, weist jedoch gleichzeitig auf bestehende technische und rechtliche Herausforderungen hin.
Schlüsselwörter
Smart Contracts, Blockchain, Ethereum, Solidity, Dezentralität, Transparenz, Unveränderlichkeit, Programmierung, Kryptowährung, Ether, Transaktionskosten, Münzwurf, Automatisierung, Test-Net, IT-Schnittstellen
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit dem Konzept der Smart Contracts, die als softwarebasierte Verträge automatisiert ablaufen, und untersucht deren technische Integration in die Blockchain-Technologie.
Welche zentralen Themenfelder werden behandelt?
Die Schwerpunkte liegen auf der Funktionsweise von Smart Contracts, der Blockchain-Technologie, der Plattform Ethereum und der praktischen Anwendung durch die Sprache Solidity.
Was ist das primäre Ziel der Untersuchung?
Das Ziel ist es, dem Leser ein technisches Verständnis für Smart Contracts zu vermitteln und anhand eines konkreten Programmierbeispiels die praktische Umsetzung zu demonstrieren.
Welche wissenschaftliche Methode kommt zum Einsatz?
Die Arbeit basiert primär auf einer Literaturrecherche und der Analyse eines technischen Code-Beispiels.
Was wird im Hauptteil behandelt?
Der Hauptteil erläutert die Definition und Geschichte von Smart Contracts, das Prinzip der Blockchain, die Rolle von Ethereum und eine detaillierte Funktionsanalyse des Solidity-Codes.
Welche Begriffe charakterisieren die Arbeit am besten?
Zu den prägenden Begriffen gehören Smart Contracts, Ethereum, Solidity, Blockchain-Technologie und dezentrale Applikationen.
Wie sicher ist die Ausführung eines Smart Contracts laut Arbeit?
Die Sicherheit basiert auf der Unveränderlichkeit des Blockchain-Codes, wobei der Autor jedoch darauf hinweist, dass bei Fehlern im Code (Bugs) keine einfache nachträgliche Korrektur möglich ist.
Welchen Zweck erfüllt der im Anhang dokumentierte Code?
Der Code demonstriert an einem Münzwurf-Spiel, wie Bedingungen, Funktionen und Zustandsänderungen innerhalb eines Smart Contracts programmiert und ausgeführt werden.
Welche Herausforderungen identifiziert das Fazit für die Zukunft?
Das Fazit nennt insbesondere rechtliche Unklarheiten bei der Bindungswirkung der Codes, Steuerfragen und die Notwendigkeit, Vertrauen bei den Verbrauchern aufzubauen.
Kann ein Smart Contract nach dem Start geändert werden?
Nein, aufgrund der Unveränderlichkeit der Blockchain-Einträge ist eine nachträgliche Veränderung des einmal hochgeladenen Codes nicht möglich.
- Quote paper
- Kristina Winzer (Author), 2018, "Chain Code". Smart Contracts demonstriert an einfachen Code-Beispielen, Munich, GRIN Verlag, https://www.hausarbeiten.de/document/416782