Folge 9.02: Probleme und Beispiel für Smartcontracts

in #blockchain7 years ago (edited)

Folge 9.02: Probleme und Beispiel für Smartcontracts

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.
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 smartcoins:

PROBLEME DES SMARTCONTRACTS?

Intelligente Verträge sind bei weitem nicht perfekt. Was passiert, wenn zB Fehler-Bugs in den Code gelangen?
Was passiert, wenn ich den falschen Code sende, oder zwar den richtigen Code sende, aber ZB 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 dafü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ÄHRUNGEN mit SMARTCONTRACTS

ETHEREUM

https://www.ethereum.org

Es ist erwähnenswert, dass Bitcoin der erste war, der grundlegende Smart Contracts 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 Smart Contracts 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 Kauf-verträgen können smartcontracts auf Ethereum auch zB als "Mehrfachsignatur" -Konten (sogenante MultiSig) funktionieren, so dass Mittel nur ausgegeben werden, wenn ein erforderlicher Prozentsatz der betroffenen Personen zustimmt.
Speichern Wir zB Informationen zu einer Anwendung – einer App ab, 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 irgendeine Behörde oder PayPal oder eine Bank.
Bitcoin-Miner zB bestätigen die Verschiebung des Besitzes von Bitcoins von einer Person zur anderen. Die EVM führt einen 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, Token zu kreieren. Diese sind also letztlich nichts anderes als Smart-Contracts. Diese Smart-Contracts 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 das 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. 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 Etherumplattform anzubieten.
Die Smartcontracts die hier benötigt werden ermöglichen zB 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. Dersogenannte 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.

Es gibt aber natürlich auch noch einige andere Platformen 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 zT die ersten ICOs auf diesen neuen Platformen:

https://neo.org/
https://eos.io/
https://www.cardano.org/en/home/

Aber auch der Bitcoin steht hier nicht abseits – seit der Implementierung von SegWit (über die ihr 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 des BTC.

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

Dies war die Nachlese zum neunten Teil des kryptokabinett-Podcasts zum Thema : Smartcontracts

SOCIAL MEDIA

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

Viel Spaß beim Nachlesen!

Sort:  

Coins mentioned in post:

CoinPrice (USD)📈 24h📈 7d
ADACardano0.293$0.11%38.94%
BTCBitcoin8936.530$1.27%9.51%
EOSEOS11.814$7.82%42.26%
ETHEthereum621.170$2.78%20.59%
NEONEO75.770$0.19%13.57%

Hallo @kryptokabinett, herzlich willkommen auf Steemit.

Wenn Du Fragen zu Steemit hast, oder Dich mit anderen deutschen „Steemians“ austauschen magst, schau einfach mal auf unserem Discord-Server https://discord.gg/g6ktN45 vorbei.

Wenn Du auf Deutsch schreibst, verwende immer #deutsch als einen der 5 Hashtags, um Deine Reichweite zu erhöhen.

Unter dem folgenden Link findest Du einige Anleitungen, die Dir den Einstieg in das Steem-Universum deutlich erleichtern werden: Deutschsprachige Tutorials für Steemit-Neulinge: Ein Überblick