explicitClick to confirm you are 18+

Folge 9.2: Probleme und Beispiele für Smartcontracts

kryptokabinettOct 24, 2018, 10:31:36 AM
repeat1thumb_up4thumb_down

kryptokabinett.at ist ein Podcast/blog der sich an Anfänger und Neueinsteiger richtet.

Hallo!

...und Willkommen!

Das ist die Nachlese der neunten Folge des kryptokabinett.at-Podcasts zum Thema: Smartcontracts.

PODCAST:

https://kryptokabinett.blogspot.co.at/2018/04/folge-9-in-der-neunten-folge-des.html

In diesem zweiten Post zur 9. Folge des Podcasts gibt es grundlegende Infos zu Smartcontracts.

Viel Spaß beim Nachlesen!


PROBLEME MIT SMARTCONTRACTS

Intelligente Verträge sind bei weitem nicht perfekt. Was passiert, wenn z.B. Fehler-Bugs in den Code gelangen?

Was passiert, wenn ich den falschen Code sende, oder zwar den richtigen Code sende, aber z.B. meine Wohnung die ich vermiete nicht bewohnbar ist wenn das Mietdatum beginnt bzw. der Mieter vor der Türe steht?

Wenn das ein traditionelle Vertrag wäre, könnte wir es vor Gericht zurücknehmen, aber die Blockchain ist eine andere Situation: der Vertrag wird erfüllt, egal was dann passiert.

Somit muss man festhalten das Smartcontracts vor allem für fix vorbestimmte Abläufe geeignet sind und nur bestimmte Auswege aus dem Vertrag erlauben.
Aber das sind auch die meisten Verträge oder Behördenabläufe:  ein weites Feld das von dieser Technik bedient werden kann.


Beispiele für Kryptowährungenmit Smartcontracts:

ETHEREUM

https://www.ethereum.org

Es ist erwähnenswert, dass Bitcoin der erste Coin war, der grundlegende Smartcontracts in dem Sinne unterstützte, dass das Netzwerk einen Wert von einer Person auf eine andere übertragen kann.
Das Netz von Knoten validiert nur Transaktionen, wenn bestimmte Bedingungen erfüllt sind.

https://www.coindesk.com/information/ethereum-smart-contracts-work/

...aber Bitcoin ist eben derzeit nur auf den Währungs-Anwendungsfall beschränkt.

Im Gegensatz dazu ersetzte Ethereum die Skriptsprache von Bitcoin (das ist eine Skriptsprache von etwa hundert Skripten) und ersetzt sie durch eine Sprache, mit der Entwickler ihre eigenen Programme schreiben können.

Mit Ethereum können Entwickler eigene Smartcontracts oder sogenannte "autonome Agenten" programmieren, wie sie das Whitepaper von Ethereum nennt.
Die Sprache ist 'Turing-vollständig', was bedeutet, dass sie eine breitere Reihe von Rechenanweisungen unterstützt.

https://blockchainwelt.de/solidity-smart-contracts-programmieren/

Neben den einfachsten Kaufverträgen können Smartcontracts auf Ethereum auch z.B. als "Mehrfachsignatur"-Konten (sogenannte MultiSig) funktionieren, so dass Mittel nur ausgegeben werden, wenn ein erforderlicher Prozentsatz der betroffenen Personen zustimmt.

Wir können auch Informationen zu einer bestimmten Anwendung – einer App abspeichern: z. B. Informationen zur Domänenregistrierung oder Mitglieder-Datensätze.

Man kann die programmierten Abläufe auch für andere Verträge bereitstellen (...ähnlich wie eine Softwarebibliothek).

Verträge, die in einer vertragsspezifischen Programmiersprache geschrieben sind, werden zu 'Bytecode' kompiliert, was eine Funktion, die 'Ethereum Virtual Machine' (EVM) genannt wird, lesen und ausführen kann.

Alle Knoten im Ethereum-Netzwerk führen diesen Vertrag dann mit ihren EVMs aus. Jedes Mal, wenn ein Benutzer eine Aktion ausführt, müssen alle Knoten im Netzwerk zustimmen, dass diese Änderung stattgefunden hat.

Das Ziel ist, dass das Netzwerk von Minern und Nodes die Verantwortung übernimmt und nicht irgendein Mittelsmann (z.B. eine Behörde, PayPal oder eine Bank).

Bitcoin-Miner bestätigen nur die Verschiebung des Besitzes von Bitcoins von einer Person zur anderen. Die Ethereum-EVM führt einen ganzen Vertrag mit den Regeln aus, welche die Entwickler ursprünglich programmiert haben.

In dem Leitfaden "How Ethereum Mining Works" wird erklärt, das Miner diejenigen sind die schlechtes Verhalten verhindern - und zum Beispiel dafür sorgen, dass niemand sein Geld mehr als einmal ausgibt und Smartcontracts ablehnen, für die nicht bezahlt wurde.

https://www.coindesk.com/information/ethereum-mining-works/


ERC20-TOKENS:

Über die Ethereum-Blockchain ist es ebenso möglich, Tokens zu kreieren. Diese sind also letztlich nichts anderes als Smartcontracts. Diese Smartcontracts legen beispielsweise fest, wie ein Transfer der Token stattfindet und sorgen dafür, dass die Guthaben der einzelnen Nutzer in ihren Adressen gespeichert werden.


Als einfachstes Beispiel für einen Smart-Contract für Token lässt sich der Transfer von Token abbilden:

...der Smartcontract legt fest, dass bei einem Transfer zunächst geprüft wird, ob das Guthaben des sendenden Nutzers ausreicht, um die Transaktion durchzuführen (einfach gesagt die Transfersumme < Guthaben).
Ist diese Bedingung erfüllt, wird die Aktivität ausgeführt, und die Guthaben aktualisiert:  Erhöhe den Kontostand von A um den Betrag X bzw. reduziere den Kontostand von B um den Betrag X.

Ein Token ist also nichts anderes als ein Smart-Contract, der einfache Funktionen wie diese implementiert.

Die Form von Token auf der Ethereum-Blockchain gelten die sogenannten ERC-20 Token. ERC-20 ist ein offizieller Ethereum-Standard, der von Fabian Vogelsteller und Vitalik Buterin bereits Ende 2015 veröffentlicht wurde.

https://www.btc-echo.de/tutorial/was-ist-ein-erc-20-token/

https://www.ethereum.org/token

ICOs:

ICOs sind Initial Coin Offerings – das ist die Möglichkeit Tokens von einem Projekt zu erwerben.
Unterstützer oder Investoren erwerben die Token des Projekts und spekulieren darauf, dass sich später ein höherer Wert dieser Token ergibt, ähnlich wie bei einer Aktie an der Börse mit der Aussicht auf Kursgewinne.

Aber Achtung! Ein wichtiger Unterschied zur Börse ist, dass bei ICOs kein Eigentum am Unternehmen über das Token abgebildet wird gibt. Es berechtigt also weder zur Dividende, noch bringt es ein Stimmrecht mit sich.

Die Ethereum-Platform bietet als eine der ersten die Möglichkeit an solche Tokens auf der seiner Plattform anzubieten.

Die Smartcontracts die hier benötigt werden ermöglichen z.B. einen Austausch der eingesetzten Ether in die gewünschten Tokens.

https://www.btc-echo.de/tutorial/was-ist-ein-ico-und-wie-funktionieren-tokensales/

DAOs

Eine besonderere Sammlung von Smartcontracts auf Ethereum war der DAO. Die sogenannte "dezentrale autonome Organisation".

Eine wahrlich spannender Krimi über die Entstehung von smartcontracts, Hackern und der Spaltung von Ethereum.

https://en.wikipedia.org/wiki/The_DAO_(organization)

Über diesen werde ich euch in Kürze in diesem Podcast erzählen (Folge #10):
https://kryptokabinett.blogspot.com/2018/04/folge-10-dao-in-der-zehnten-folge-des.html#more


SONSTIGE SMARTCONTRACT-PLATTFORMEN

Es gibt aber natürlich auch noch einige andere Plattformen die Ethereum nacheifern und die Idee der smartcontracts weiterbringen wollen:

NEO, EOS oder Cardano sind da nur die bekanntesten und diejenigen die gerade beginnen ihre ersten funktionierenden Ledger und Smartcontracts in die Öffentlichkeit zu bringen und es laufen auch gerade schon z.T. die ersten ICOs auf diesen neuen Platformen:

https://neo.org/

https://eos.io/

https://www.cardano.org/

Aber auch der Bitcoin steht hier nicht abseits – seit der Implementierung von SegWit (über die ihr bereits in meiner 8. Folge gehört habt: https://kryptokabinett.blogspot.co.at/2018/02/folge-8-segwit-in-der-achten-folge-des.html) sind die Grundlagen für smartcontracts auf der BTC-Blockchain vorhanden – unter der Bezeichnung MAST dem Merkelized Abstract Syntax Tree werden hier Smartcontracts möglich und erweitern die technischen Möglichkeiten der Bitcoin-Blockchain.

https://medium.com/novamining/mast-smart-contracts-on-bitcoin-34b61ba67e19


Dies war die Nachlese zum neunten Teil des kryptokabinett-Podcasts zum Thema Smartcontracts - Viel Spaß!

Den ersten Teil der Nachlese findet ihr hier...



https://www.ethereum.org/

https://www.coindesk.com/information/ethereum-smart-contracts-work/

https://blockchainwelt.de/solidity-smart-contracts-programmieren/

https://www.coindesk.com/information/ethereum-mining-works/

https://www.btc-echo.de/tutorial/was-ist-ein-erc-20-token/

https://www.ethereum.org/token

https://www.btc-echo.de/tutorial/was-ist-ein-ico-und-wie-funktionieren-tokensales/

https://en.wikipedia.org/wiki/The_DAO_(organization)

https://kryptokabinett.blogspot.com/2018/04/folge-10-dao-in-der-zehnten-folge-des.html#more

https://neo.org/

https://eos.io/

https://www.cardano.org/

https://kryptokabinett.blogspot.co.at/2018/02/folge-8-segwit-in-der-achten-folge-des.html

https://medium.com/novamining/mast-smart-contracts-on-bitcoin-34b61ba67e19



https://www.minds.com/blog/view/904042026608390144



Ich bin über http://kryptokabinett.at , und ebenfalls über erreichbar und würde mich über Likes und Kommentare freuen:

https://www.facebook.com/KryptoKabinett/

https://twitter.com/kryptokabinett



Alle bisherigen Podcastfolgen sind auf kryptokabinett.at abrufbar bzw. kann man den Podcast über folgenden RSS-Feed abonnieren:

http://feeds.soundcloud.com/users/soundcloud:users:336006123/sounds.rss


Nachtrag:

Der Podcast wurde im April 2018 aufgenommen und transkribiert.

...und haltet Eure Privatekeys sicher!!! :)