Etwas später als geplant, aber hier ist endlich der zweite Teil meiner "Bitcoin für Anfänger"-Reihe :)
Im ersten Teil (https://getqu.in/HvPg4I/) haben wir uns dem Thema Geld und seiner Geschichte gewidmet - von Muscheln und Gold über Papiergeld - bis hin zur Entstehung von $BTC (-0,52 %) als eine Form von digitalem, knappen Geld. Jetzt knüpfen wir direkt daran an und werfen einen Blick darauf, wie Bitcoin eigentlich funktioniert.
Da der Beitrag etwas lang wurde, hab ich ein kleines Inhaltsverzeichnis für euch hinzugefügt. Falls euch nur einzelne Teile interessieren, könnt ihr natürlich auch nur die lesen - viel Spaß!
Inhaltsverzeichnis
1 Bitcoin als offenes Protokoll und Netzwerk
2 Die Blockchain als dezentrales Kassenbuch
3 Wer bildet das Netzwerk?
4 Geldpolitik von Bitcoin
5 UTXOs - Bitcoin-Transaktionen verstehen
6 Mining im Detail
7 Zusammenfassung: BTC-Transaktionen im Detail
8 Fazit / TL;DR
Bitcoin ist ein offenes Protokoll und Netzwerk
Es gibt keine Bitcoin-Firma, keinen Geschäftsführer und auch keinen Kundenservice, den man bei Problemen anrufen könnte. Bitcoin hat keine Aktien, zahlt keine Dividenden - und es kann auch nicht wie eine Firma insolvent gehen. Stattdessen ist Bitcoin ein offenes Protokoll, vergleichbar mit dem Internet. So wie niemand das Internet als Ganzes besitzt, gehört auch Bitcoin niemandem allein. Jeder kann daran teilnehmen, keiner muss.
Bitcoin ist wahrscheinlich das inklusivste Finanzinstrument, das existiert. Jeder Mensch, unabhängig von Geschlecht, Hautfarbe, Sexualität, etc. kann ohne irgendjemanden um Erlaubnis fragen zu müssen, daran teilnehmen. Jeder mit einem Computer oder Smartphone und Internetzugang kann die Bitcoin-Software frei nutzen, den Code einsehen und theoretisch sogar verändern sowie Verbesserungsvorschläge einbringen, da Bitcoin vollständig Open Source ist.
Bitcoins Netzwerk ist vollständig dezentral organisiert. Es besteht aus zehntausenden Computern weltweit, wobei alle auf Augenhöhe miteinander kommunizieren. Es gibt keine übergeordnete Instanz, die einzelne Teilnehmer kontrolliert oder bevorzugt. Man spricht daher von einem Peer-to-Peer-Netzwerk.

Die Blockchain als dezentrales Kassenbuch
Die Blockchain ist quasi das Kernstück von Bitcoin - sie fungiert als dezentrales Kassenbuch, in dem alle vergangenen Bitcoin-Transaktionen aufgelistet sind. Jede "Seite" im Kassenbuch entspricht einem Block der Blockchain. Ein neuer Block wird etwa alle zehn Minuten hinzugefügt und reiht sich an den vorherigen Block an.
Jeder Block enthält dabei einen einzigartigen "Fingerabdruck" (einen Hash, dazu später mehr), der ihn mit dem vorherigen Block verbindet. Ändert man im Nachhinein etwas an einer früheren "Seite" des Kassenbuchs, würde dieser Fingerabdruck nicht mehr stimmen -> denn die nachfolgenden Seiten würden nicht mehr passen. Jede nachträgliche Manipulation der Blockchain würde also sofort auffallen, weil die Verkettung der Blöcke durch den Fingerabdruck verletzt wird.
Das bedeutet: Was einmal in der Blockchain steht, lässt sich im Nachhinein praktisch nicht mehr ändern.
Und das ist natürlich die Grundlage dafür, dass Bitcoin als dezentrales Netzwerk zum Senden und Empfangen von Werten genutzt werden kann. Schließlich gibt es keinen zentralen Akteur, der die Kontrolle über das Netzwerk hat und bei Betrug eingreifen könnte. Das Netzwerk muss sich also grundlegend selbst vor Betrug schützen.
Wenn ich z.B: mein Auto für 0,1 BTC verkaufe und das Geld vom Sender geschickt bekomme, möchte ich ja nicht, dass das Geld nach einiger Zeit plötzlich wieder aus meiner Wallet verschwindet, weil der Käufer sich das Geld zurückgeholt hat.
Einen Streitschlichter wie bei Banken oder Paypal z.B. gibt es schlicht nicht. Kein Dritter kann auf deine Bitcoin zugreifen. Alle Transaktionen sind irreversibel.
Wer bildet das Netzwerk?
Das Netzwerk bilden drei Parteien mit unterschiedlichen Aufgaben. Dabei kann jedes Individuum eine bis drei der folgenden Parteien abbilden:
(1) Benutzer
Benutzer sind all diejenigen, die Transaktionen ausführen oder empfangen. Und wie es so bei Netzwerken üblich ist, steigt der Wert eines Netzwerks proportional mit seinen Nutzern (-> Metcalfe's Law).
(2) Nodes (Knotenpunkte)
Nodes kann man sich bildlich wie Knoten in einem Netz vorstellen. Nodes sind Computer, die die Bitcoin-Software ausführen und in den meisten Fällen die gesamte Blockchain, also die gesamte Transaktionshistorie bzw. das "Bitcoin-Kassenbuch", gespeichert haben sowie neue Transaktionen aufnehmen, speichern und an verbundene Knoten weiterleiten. Ihre Aufgabe ist also die Speicherung, Überprüfung und Weiterleitung jeder Transaktion, die durchs Netzwerk geht (dazu später mehr). Nodes agieren sozusagen als unabhängige Buchhalter. Sie verifizieren, ob neue Transaktionen den Bitcoin-Regeln entsprechen - z.B. ob die Bitcoin, die ausgegeben werden sollen, überhaupt existieren und nicht schon woanders ausgegeben wurden. Außerdem überprüfen sie neu gefundene Blöcke von Minern auf Richtigkeit.
(3) Miner
Miner sind spezielle Knoten mit einer besonderen Aufgabe. Sie sammeln Transaktionen, basteln daraus einen neuen Block, prüfen, ob der neue Block gültig ist und hängen ihn im Erfolgsfall an die Blockchain bzw. an das Kassenbuch an. Ist der Block ungültig, wird er verworfen und das Spiel beginnt von vorne. Ist der Block laut Miner gültig, wird der Block an das Netzwerk weitergereicht und die Buchhalter - also die Nodes - überprüfen dann, ob der Miner die Wahrheit spricht. Wenn der Block des Miners den Regeln des BTC-Protokolls entspricht, wird der Block als neue Seite zum Kassenbuch hinzugefügt.
Geldpolitik von Bitcoin
Bevor wir tiefer in die Technik einsteigen, ist es wichtig einen Blick auf die Geldpolitik von Bitcoin zu werfen. Wie ihr mittlerweile wisst, ist Bitcoin auf maximal knapp 21 Millionen Bitcoin begrenzt. Mehr werden niemals existieren. Diese Obergrenze ist von Satoshi Nakamoto von Anfang an fest im Code von Bitcoin verankert worden. Damit ist Bitcoin das wohl knappste Gut der Menschheitsgeschichte. Diese absolute Grenze ist in der Natur ansonsten nirgends zu finden. Natürlich ist z.B. auch Gold begrenzt - aber wir wissen weder wie viel Gold insgesamt noch unter der Erde liegt, wie viel ggf. im erreichbaren Weltall existiert und ob Gold jemals profitabel im Labor hergestellt werden kann.
Aber wie stellt das Bitcoin-Netzwerk sicher, dass diese 21 Mio. Grenze nie überschritten wird? Hier kommt der Mechanismus des Halvings ins Spiel.
Alle 210.000 Blöcke (das entspricht ungefähr vier Jahren) findet ein sogenanntes Halving statt. Das bedeutet, die Blocksubvention - also der Anteil der Blockbelohnung, der aus neu geschaffenen Bitcoin besteht - wird halbiert (mehr dazu im Mining Abschnitt).
Zu Beginn, im Jahr 2009, betrug die Blocksubvention 50 BTC pro Block. Beim ersten Halving Ende 2012 (nach Block Nr. 210.000) wurde sie auf 25 BTC reduziert. Vier Jahre später sank sie auf 12,5 BTC, dann im Mai 2020 auf 6,25 BTC, und im April 2024 fand das bislang vierte Halving statt, wodurch die Subvention nun nur noch 3,125 BTC pro Block beträgt. Dieser Prozess setzt sich fort, bis schließlich keine neuen Bitcoin mehr ausgeschüttet werden - nach 33 Halvings, etwa im Jahr 2140, ist die maximale Geldmenge nahe erreicht. Es werden dann knapp 21 Millionen BTC im Umlauf sein (genau genommen etwas weniger -> 20.999.999,9769 BTC).
Die Konsequenz aus dieser stetigen Halbierung der Ausgabe ist eine abnehmende Inflationsrate von Bitcoin. Anfangs wurden alle zehn Minuten 50 neue BTC erzeugt, was einer sehr hohen jährlichen Inflation entsprach. Doch durch die Halvings fällt die Inflationsrate alle vier Jahre stark ab und nähert sich langfristig gegen Null.

(Quelle: Blocktrainer)
UTXOs - Bitcoin Transaktionen verstehen
Bitcoin Transaktionen kann man eher mit dem Austausch von Bargeld als mit einer Banküberweisung vergleichen. Eine Transaktion setzt sich nämlich immer aus sog. "Unspent Transaction Outputs (UTXO)" zusammen.
Vereinfacht gesagt besteht eine Bitcoin-Transaktion aus einer digitalen Anweisung wie "Übertrage X Bitcoin von Adresse A an Adresse B".
Technisch betrachtet hat jede Transaktion einen Eingabeteil (Inputs) und einen Ausgabeteil (Outputs). Die Inputs verweisen auf zuvor erhaltene Bitcoin (die noch nicht ausgegeben wurden) - das sind sozusagen die "Quellen" der Münzen, die man ausgeben will - also z.B. die Münzen in deinem Geldbeutel.
Die Outputs legen fest, an welche Bitcoin-Adressen das Geld geschickt wird und in welcher Höhe. Häufig gibt es auch einen Output zurück an den Absender selbst. Das ist der sog. Change bzw. einfach das Wechselgeld.
Beispiel:
Ich habe in der Vergangenheit drei mal 0,01 BTC erhalten - also 3 UTXOs a 0,03 BTC. Jetzt möchte ich 0,025 BTC versenden. Die Wallet, also die digitale Geldbörse, die den Zugang zu den Bitcoin enthält, würde in dem Szenario so viele UTXOs zusammen suchen bis die gewünschte Menge, die versendet werden soll, erreicht ist. Das bedeutet in meinem Beispiel, dass meine 3 UTXOs mit je 0,01 BTC als Input für die Transaktion verwendet werden. Dadurch, dass ich aber nicht 0,03 BTC, sondern nur 0,025 BTC versenden möchte, kommen 0,005 BTC als Wechselgeld-Output an mich zurück. Das bedeutet, dass ich ab dem Zeitpunkt einen neuen UTXO mit 0,005 BTC erhalten habe, den ich in Zukunft ausgeben könnte.

Auf dem Bild hab ich versucht, das mit meinen Premium-Paint-Skills mal darzustellen😂
Ganz vollständig ist das Ganze aber nocht nicht, da ich der Einfachheit halber die Transaktionsgebühren weggelassen habe.
Der Sender bezahlt nämlich immer Transaktionsgebühren an die Miner. Die Miner sind Dienstleister, die Energie und Zeit dafür aufwenden, meine Transaktion in die Blockchain aufzunehmen - und dafür wollen diese auch bezahlt werden. Das bedeutet, dass in der Praxis immer ein zusätzlicher Output als "Fee" mit in die Transaktion aufgenommen wird. Die Höhe der Gebühr legt der Sender selbst fest. Das kommt ganz auf die Dringlichkeit der Transaktion an - je dringender desto höher sollte man die Gebühr setzen, damit die Miner die Transaktion schneller in einen Block aufnehmen. In der Praxis sieht eine Transaktion dann z.B. so aus:

Damit eine Transaktion gültig ist, muss sie zusätzlich bestimmte Regeln einhalten. Zum Beispiel darf man logischerweise nur Bitcoin ausgeben, die man selbst besitzt (also für die man gültige Inputs hat), und die Summe der Outputs darf die Summe der Inputs nicht übersteigen (ansonsten würde man ja Geld erschaffen).
Das Wichtigste ist jedoch die digitale Signatur der Transaktion. Wenn ich eine Überweisung im Bitcoin-Netzwerk machen möchte, muss ich nachweisen, dass mir die Bitcoin auch gehören, die ich ausgeben will. Das geschieht durch Signieren der Transaktion mit meinem privaten Schlüssel.
Jede Bitcoin-Adresse besitzt ein Schlüsselpaar: einen privaten und einen öffentlichen Schlüssel. Der private Schlüssel (Private Key) ist wie ein geheimes Passwort oder der Zugangsschlüssel zu den Bitcoin auf dieser Adresse. Nur wer den privaten Schlüssel besitzt, kann die zugehörigen Bitcoin ausgeben. Deshalb muss dieser Schlüssel unbedingt geheim gehalten werden. Man kann sich das analog zu einem Bankkonto vorstellen. Der private Key entspricht den Zugangsdaten zum Online-Banking - kennt jemand Fremdes dieses Passwort, kann er das Konto - wenns blöd läuft - leerräumen.
Aus dem privaten Schlüssel wird mittels mathematischer Verfahren der öffentliche Schlüssel (Public Key) abgeleitet, aus dem wiederum die Bitcoin-Adresse entsteht. Die Bitcoin-Adresse ist vergleichbar mit der IBAN eines Bankkontos - diese kann man bedenkenlos weitergeben, denn darüber kann man nur empfangen, aber nichts ausgeben. Wenn ich also eine Transaktion signiere, verwende ich meinen privaten Schlüssel, um einen digitalen Fingerabdruck zu erzeugen, der beweist, dass ich der rechtmäßige Besitzer der Bitcoin bin. Das Bitcoin-Netzwerk kann dann mit Hilfe meines öffentlichen Schlüssels prüfen, ob diese Signatur gültig ist - sprich, ob sie wirklich von demjenigen stammt, der den privaten Schlüssel besitzt. So wird sichergestellt, dass niemand Transaktionen für jemand anderen versenden kann.
Sobald eine Transaktion erstellt und korrekt signiert wurde, wird sie im Netzwerk bekannt gemacht. Eine Bitcoin-Transaktion gilt aber erst dann als wirklich ausgeführt, wenn sie in einen Block aufgenommen wurde. Bis dahin verweilt sie im sog. Memory-Pool (Mempool). Der Mempool ist die Bitcoin-Warteschlange und enthält unbestätigte Transaktionen.
Sobald ein Miner einen gültigen Block an die Blockchain angehängt hat, der meine Transaktion enthält spricht man davon, dass die Transaktion bestätigt wurde bzw. "1 Bestätigung hat (1 Confirmation) hat. Mit jedem weiteren neu hinzugefügten Block wächst die Zahl der Bestätigungen um eins. Jede Bestätigung erhöht die Sicherheit, dass die Transaktion unumkehrbar ist. Nach 2-3 Transaktionen ist dies faktisch bereits der Fall - spätestens nach 6 Bestätigungen ist die Transaktion in Stein gemeißelt.
Das liegt daran, weil das Bitcoin Netzwerk immer die aktuell längste Kette an Blöcken akzeptiert. Finden jetzt z.B. zwei Miner relativ gleichzeitig einen Block A und B und hängen ihn der Blockchain an, so kommt es darauf an, ob der nächste gefundene dann an A oder an B gehängt wurde. Hat der nächste Miner z.B. nicht basierend auf Block A, sondern auf Block B weiter gemined und einen Block gefunden, ist Block A ungültig und wird verworfen. Das sind dann sog. verwaiste Blöcke (orphaned Blocks). Wäre meine Transaktion in Block A bereits vorhanden gewesen, in Block B und im darauffolgenden aber nicht, wäre meine Transaktion aus dem bestätigten Zustand wieder rausgeworfen und wieder zum Mempool hinzugefügt worden.
Das Mining im Detail
Ich hab ja jetzt schon einige Male das Mining bzw. das "finden von gültigen Blöcken" angesprochen. Dementsprechend möchte ich auch erläutern, wie das Mining überhaupt funktioniert. Sehr oft hört oder liest man, dass Miner "komplizierte Rechenrätsel lösen" oder ein "kryptographisches Puzzle" knacken müssten, um einen Bitcoin-Block zu finden. Solche Beschreibungen sind aber etwas missverständlich.
In Wahrheit ist das Prinzip einfacher, als es klingt:
-> Miner suchen durch pures Ausprobieren nach einem gültigen Blockhash.
Genauer gesagt: Der Miner baut einen neuen Block und berechnet dessen SHA-256-Hash - liegt dieser Hash (als Zahl interpretiert) unterhalb eines bestimmten Zielwerts, dann ist der Block gültig und wird akzeptiert. Dieser Zielwert wird Target genannt. Die Aufgabe der Miner besteht also im Kern darin, einen Blockhash zu finden, der kleiner ist als das vorgegebene Target. Und dafür benötigen sie keine besondere Kreativität oder komplexe Mathematik - es ist ein reines Glücks- und Fleißspiel durch "Try and Error", ähnlich wie Lotto oder Würfeln.
Aber sehen wir uns das mal im Detail an:
Was ist ein Hash und was ist SHA-256?
Ein Hash ist das Ergebnis einer sogenannten mathematischen Einwegfunktion. Man gibt einen beliebigen Text hinein und erhält eine scheinbar zufällige Zeichenkette fester Länge als Ausgabe (den Hash).
Wichtig: Diese Funktion lässt sich leicht "vorwärts" berechnen, aber praktisch unmöglich rückgängig machen. Der Hash (Output) kann aus einer Zeichenkette (Input) also leicht errechnet werden. Aus dem Hash kommt man aber nicht wieder auf die ursprünglichen Daten -> daher "Einweg".
Bitcoin verwendet den Hash-Algorithmus SHA-256 (Secure Hash Algorithm mit 256-Bit-Ausgabe).
Was bedeutet das konkret? Als Beispiel könnt ihr online einen SHA-256-Generator ausprobieren (z.B. www.sha-generator.de).
Wenn man den Text "Bitcoin für Anfänger - Teil 2: Wie funktioniert Bitcoin?" durch SHA-256 hashen lässt, erhält man das Ergebnis:
f67292e63df873adbbb716fe86b27e414df4005f13fd007f983ae9e119fbd045
Die gleiche Eingabe liefert immer die gleiche Ausgabe. Verändert man aber nur ein einziges Zeichen der Eingabe, entsteht ein völlig anderer Hash. Aus "Bitcoin für Anfänger Teil 2: Wie funktioniert Bitcoin?" (hier habe ich den Bindestrich nach "Anfänger" entfernt) wird zum Beispiel:
7493b3cf6cd8c0aad96e2faf1afa5ddd9d3af39dbda3386e8b205b1182d01446
Man sieht: Diese Ausgabe unterscheidet sich drastisch vom ersten Hash, obwohl die Eingabe nur minimal anders war. Genau diese Eigenschaften machen Hashes so nützlich. Schon eine kleine Änderung der Daten erzeugt einen komplett neuen, unvorhersehbaren Hashwert. Und ohne den genauen Input zu kennen, lässt sich der Hash nicht "entziffern". Für Bitcoin bedeutet das: Jeder Block erhält durch diese Hash-Funktion einen einzigartigen Fingerabdruck.
So, jetzt wissen wir, was ein Hash ist. Bleibt aber die Frage was das Target ist und wie das mit der Schwierigkeit (Difficulty) zusammenhängt?
Das Target ist, wie erwähnt, ein Schwellenwert. Ein neuer Block ist nur dann gültig, wenn sein Hash numerisch kleiner ist als dieses Target. Die Bitcoin-Software berechnet und passt das Target so an, dass im Durchschnitt alle 10 Minuten ein Block gefunden wird. Je niedriger das Target, desto schwieriger ist es, einen passenden (darunter liegenden) Hash zu finden - schlicht weil es weniger mögliche Hashwerte gibt, die klein genug sind. Eine hohe Difficulty (Schwierigkeit) entspricht also einem niedrigen Target.
Alle 2016 Blöcke (circa alle zwei Wochen) überprüft das Bitcoin-Protokoll automatisch, wie schnell die letzten Blöcke gefunden wurden. Waren die Miner im Durchschnitt schneller als 10 Minuten pro Block, wird das Target gesenkt (Schwierigkeit raufgesetzt). Waren sie langsamer, wird das Target erhöht (Difficulty heruntergesetzt). Dieses Difficulty Adjustment sorgt dafür, dass das Tempo der Blockproduktion stabil bleibt. Selbst wenn plötzlich doppelt so viele Miner am Werk wären (mit doppelter Gesamt-Rechenleistung) und die Blöcke anfangs alle ~5 Minuten finden würden, passt sich das Netzwerk spätestens nach 2016 Blöcken an und halbiert gewissermaßen ihre Erfolgschance, sodass man wieder bei ~10 Minuten pro Block landet. Dieses alle zwei Wochen erfolgende Nachjustieren ist ein zentrales Element von Bitcoin und hält die Geldschöpfung im vorgegebenen Rahmen.
Der Mining-Prozess läuft also folgendermaßen ab:
(1) Transaktionen sammeln
Ein Miner wählt aus dem Mempool eine Reihe von Transaktionen aus, die er in seinen neuen Block aufnehmen möchte. Meistens wird er diejenigen Transaktionen mit den höchsten Gebühren bevorzugen, um die eigene Belohnung zu maximieren.
(2) Block zusammenstellen
Der Miner baut einen neuen Block. Der Block hat eine definierte Struktur - man kann ihn sich wie ein Formular mit bestimmten Feldern vorstellen. Dazu gehören u.a. ein Verweis auf den letzten gültigen Block (der Hash des vorherigen Blocks), ein Zeitstempel, die Blockversion, ein Feld für das Target bzw. die aktuelle Schwierigkeit, ein Zählerfeld namens Nonce (eine willkürliche Zahl, die der Miner verändern kann, um unterschiedliche Hash-Ergebnisse zu erzielen) und einiges mehr.
In den Block schreibt der Miner außerdem die gesammelten Transaktionen hinein. Ganz oben steht dabei eine besondere Transaktion, die "Coinbase-Transaktion", mit der er sich selbst die Blockbelohnung gutschreibt (diese ist die einzige Transaktion ohne Inputs, sie "erschafft" neue Bitcoin gemäß den Regeln) und hat btw. nichts mit $COIN (+4,89 %) zu tun.
(3) Hashes berechnen (Proof of Work)
Jetzt beginnt das eigentliche "Schürfen". Der Miner berechnet den SHA-256-Hash des gesamten Block-Inhalts. Wenn der berechnete Hash kleiner als das aktuelle Target ist, hat der Miner sozusagen den Jackpot geknackt - der Block ist gültig, gefunden und der Miner darf sich selbst die die Blocksubvention und Transaktionsgebühren auszahlen (sofern die Nodes den Block als gültig anerkennen).
Wenn nicht, muss der Miner irgendetwas am Block verändern und es erneut versuchen. Typischerweise erhöht er die Nonce um 1 und rechnet nochmal den Hash aus. Falls nötig, kann er auch andere Dinge variieren - z.B. die Reihenfolge der Transaktionen ändern oder eine Transaktion weglassen/ersetzen, um ein neues Hash-Ergebnis zu bekommen. Im Grunde läuft es darauf hinaus, diesen Prozess solange zu wiederholen bis zufällig ein ausreichend kleiner Hash auftaucht. Die Miner probieren das Abermilliarden Mal pro Sekunde aus.
(4) Block gefunden - Verteilung ins Netzwerk
Sobald ein Miner den "Jackpot geknackt hat" - also einen Block findet, dessen Hash kleiner als das aktuelle Target ist, hat er offiziell einen gültigen Block gefunden. Dieser Block wird dann sofort an das Netzwerk gesendet (ähnlich wie eine Transaktion) und verbreitet sich von Node zu Node. Jede Full Node überprüft den Block auf Richtigkeit. Ist der Hash wirklich kleiner als das Target? Stimmen alle Transaktionen im Block, sind sie also gültig und nicht doppelt ausgegeben? Hat der Miner sich korrekt an die Regeln gehalten (zum Beispiel nicht mehr neue BTC kreiert, als erlaubt)?
Wenn ja, akzeptieren die Nodes den Block und fügen ihn ihrer lokalen Blockchain hinzu. Meine eigene Node würde also den neuen Block als "neuste Seite" an ihr Kassenbuch heften. Wenn eine Node hingegen Unstimmigkeiten entdeckt, verwirft sie den Block - was in der Praxis bedeutet, dass dieser fehlerhafte Block sich im Netzwerk nicht durchsetzen wird und der Miner leer ausgeht.
(5) Belohnung für den Miner
Ist der Block regelkonform und von der Mehrheit der Nodes akzeptiert, erhält der erfolgreiche Miner die Block-Belohnung.
Diese besteht aus zwei Teilen:
- der Blocksubvention, also den neu geschaffenen Bitcoin (aktuell 3,125 BTC pro Block sowie
- allen Transaktionsgebühren, die die Nutzer der im Block enthaltenen Transaktionen beigefügt haben.
Diese Belohnung ist der ökonomische Anreiz, der die Miner motiviert, ihren Strom und ihre Hardware für das Mining einzusetzen und das Netzwerk abzusichern.
Zusammenfassung: BTC-Transaktionen im Detail
Nachdem wir jetzt einmal durch die Grundlagen durch sind, schauen wir uns als Zusammenfassung nun nochmal beispielhaft eine Bitcoin Transaktion im Detail an. Wenn man das grundlegende Konzept einmal verstanden hat, ist alles was danach kommt mit Selbstverwahrung, etc. auch nicht mehr schwer :)
Also angenommen, ich möchte dir 0,1 BTC senden. Was genau passiert?
(1) Transaktion erstellen
Zunächst gebe ich in meiner Bitcoin-Wallet die Empfängeradresse und den Betrag ein - in diesem Fall deine Bitcoin-Adresse und 0,1 BTC. Außerdem muss ich eine Transaktionsgebühr festlegen, die an die Miner geht. Je nach Transaktionsaufkommen schlagen die Wallets dafür bereits geeignete Gebührensätze vor - je nachdem wie dringend die Transaktion ist.
Habe ich alles ausgefüllt, klicke ich auf "Senden".
Daraufhin konstruiert die Wallet-Software intern die Transaktionsdaten. Sie wählt passende Inputs aus meinen verfügbaren Bitcoin (z.B. vielleicht einen UTXO im Wert von 0,2 BTC, von dem 0,1 an dich gehen und der Rest als "Wechselgeld" zurück an mich) und definiert die Outputs (deine Adresse mit 0,1 BTC, die Gebühr für den Miner und meine eigene Adresse für das Rückgeld).
(2) Transaktion signieren und veröffentlichen
Bevor die Wallet die Transaktion wirklich ins Netz schicken kann, muss sie signiert werden. Die Wallet tut dies automatisch im Hintergrund mit meinem privaten Schlüssel. Durch diese digitale Signatur weise ich dem Bitcoin-Netzwerk gegenüber nach, dass ich berechtigt bin, die verwendeten Inputs auszugeben - sprich, dass die Bitcoin wirklich mir gehören. Nach dem Signieren sendet meine Wallet die Transaktion an das Bitcoin-Netzwerk.
Technisch geht sie, wie schon beschrieben, zunächst an eine verbundene Full Node. Diese verifiziert die Transaktion und leitet sie im Erfolgsfall an ihre Peer-Nodes weiter. So gelangt die Transaktion in kürzester Zeit an viele Knoten und breitet sich wellenartig über den Globus aus. Nach ein paar Sekunden haben praktisch alle aktiven Bitcoin-Nodes von meiner Transaktion gehört.
Wenn du eine Wallet nutzt, die mit dem Internet verbunden ist, wird auch sie sehr schnell über einen Node die Info erhalten, dass 0,1 BTC an deine Adresse unterwegs sind. Deine Wallet würde diese unbestätigte Transaktion also schon anzeigen.
(3) Mempool (Warten auf Bestätigung)
Jetzt befindet sich meine Transaktion - wie alle anderen unbestätigten Überweisungen - im Mempool. Sie ist gültig und bekannt, aber noch in keinem Block. Die Transaktion wartet also in der Queue darauf, von einem Miner in einen neuen Block aufgenommen zu werden. Je nach gewählter Gebühr kann das schnell gehen (wenn meine Fee hoch genug ist, vielleicht schon im nächsten Block in ein paar Minuten) oder es kann dauern (bei sehr niedriger Fee sogar mehrere Stunden bis Tage lang). In Stoßzeiten, wenn das Netzwerk stark ausgelastet ist, konkurrieren viele Transaktionen um begrenzten Blockspace, und diejenigen mit den höchsten Gebühren werden zuerst bestätigt.
(4) Ein Miner nimmt die Transaktion in einen Block auf.
Früher oder später schnappt sich dann ein Miner im Zuge seines Mining-Prozesses meine Transaktion aus dem Mempool seiner Node und packt sie in einen neuen Block. Der Miner füllt den Block mit Transaktionen (darunter meiner) und versucht, einen gültigen Block zu finden. Sobald dies passiert, ist meine Überweisung in dem Moment offiziell bestätigt.
(5) Der gefundene Block wird publiziert und akzeptiert
Der Miner (bzw. die Node des Miners) sendet den frisch gefundenen Block an alle seine Nachbarn, die wiederum den Block weiterverbreiten. Binnen Sekunden haben die Full Nodes weltweit den neuen Block erhalten.
Und jede Node prüft ihn wieder: Ist der Blockhash unter dem Target? Stimmen alle Transaktions-Signaturen? Wurden die Regeln eingehalten?...
Wenn die Regeln eingehalten wurden, nehmen die Nodes den Block an und fügen ihn zu ihrer lokalen Blockchain Kopie hinzu.
Nach dem Prinzip läuft jede einzelne Bitcoin-Transaktion ab. Vom Erstellen in der Wallet, dem Signieren mit dem Private Key, über die Verteilung im Netzwerk bis hin zur Aufnahme in einen Block und der endgültigen Bestätigung.
Das ganze System kommt ohne Drittpartei aus - es sind nur die beteiligten Nutzer, Nodes und Miner, die dafür sorgen, dass alles glattgeht. Durch dieses Zusammenspiel von Kryptographie (digitale Signaturen, Hashes), Spieltheorie (Anreize für Miner) und Netzwerktechnik (Peer-to-Peer-Verteilung) erreicht Bitcoin seine Sicherheit und Dezentralität.
Fazit / TL;DR
Bitcoin kombiniert Kryptografie, Spieltheorie und ein offenes Peer-to-Peer-Netzwerk, um digitales Geld ohne zentrale Instanz zu ermöglichen.
Dabei ist Bitcoin ein dezentrales Peer-to-Peer-Netzwerk, das von tausenden gleichberechtigten Computern auf der ganzen Welt betrieben wird. Es gibt keine Zentrale - die Validierung von Transaktionen und Blöcken übernehmen die Teilnehmer selbst nach festgelegten Regeln.
Alle Transaktionen werden in der Blockchain, dem öffentlichen Kassenbuch, gespeichert und durch kryptographische Verkettung gegen nachträgliche Manipulation gesichert. Neue Transaktionen werden von Minern mittels Proof-of-Work in dieses Kassenbuch aufgenommen. Die Miner investieren Rechenleistung, um einen gültigen Blockhash zu finden, und erhalten dafür Bitcoin als Belohnung. Über das Zusammenspiel von Difficulty-Adjustment und ökonomischen Anreizen wird sichergestellt, dass das System stabil läuft und ungefähr alle 10 Minuten ein neuer Block entsteht, was wiederum die Geldpolitik von Bitcoin sichert und die Geldmenge auf knapp 21 Millionen begrenzt und die Ausgabe neuer BTC durch den Halving-Mechanismus planbar und transparent für die Zukunft festgelegt.
Im nächsten Teil geht's dann wahrscheinlich um den Kauf von Bitcoin, Wallets und Selbstverwahrung als Thema.
Ich hoffe, ich konnte euch die Technik hinter Bitcoin einigermaßen verständlich rüber bringen. Fragen könnt ihr natürlich wieder in die Kommentare schreiben👇
Schönen Abend wünsch ich euch!✌️