Kapitel #9
Eine Einführung in die technische Seite von Bitcoin
|
9.0 Beidhändige Rückhand: Einleitung
„Bitcoin ist nicht „unreguliert“; es wird durch Algorithmen reguliert, anstatt durch staatliche Bürokratien. Unkorrumpiert.“
In diesem Kapitel werden wir uns die Technologie genauer ansehen, die es dem Bitcoin-Netzwerk ermöglicht, vollständig dezentral zu arbeiten. Wir werden in einfachen Worten erklären, was passiert, wenn Sie eine Bitcoin-Transaktion senden, wie diese Transaktionen verarbeitet werden und was Miner und Knoten im Bitcoin-Netzwerk tun. Wir werden in diesem Kapitel einige anspruchsvolle und technische Konzepte behandeln. Eines ist wichtig zu bedenken: Viele Menschen verstehen nicht, wie das Internet funktioniert, können es jedoch täglich nutzen, um E-Mails zu senden, Freunde über soziale Medien zu kontaktieren und sogar ihre Rechnungen zu bezahlen. Das Erlernen der technischen Seite der Funktionsweise von Bitcoin ist ein langer Weg, den nicht jeder unternehmen möchte, selbst wenn er sich entscheidet, es als Zahlungsmittel zu verwenden. Obwohl wir Sie ermutigen, sich weiter mit den technischen Aspekten von Bitcoin zu befassen, werden wir uns in diesem Kapitel auf die grundlegenden Schlüsselkonzepte konzentrieren.
Wenn Sie ein tieferes technisches Verständnis der Funktionsweise von Bitcoin erlangen möchten, haben wir im hinteren Teil dieses Arbeitsbuchs Ressourcen beigefügt. Sie können sich auch auf unserer Website für das Bitcoin-Diplom – Technische Ausgabe registrieren, um benachrichtigt zu werden, wenn dieser technischere Kurs verfügbar ist.
Schauen wir uns zunächst ein Video an, das zeigt, wie das Bitcoin-Netzwerk funktioniert.
Aktivität: Sehen Sie sich „Wie Bitcoin hinter der Haube funktioniert“ an.
Wie Sie im Video gesehen haben, ist das Bitcoin-Netzwerk einfach ein Hauptbuch oder eine Aufzeichnung von Transaktionen, die auf mehreren Computern, sogenannten Knoten, gespeichert sind. Das Bitcoin-Hauptbuch ist pseudonym, d. h. es enthält keine persönlichen Daten, sondern nur Transaktions- und Adressinformationen. Das Hauptbuch zeigt jeden Bitcoin und seine Bewegungen seit dem Start des Netzwerks am 3. Januar 2009.
Als Nächstes werden wir uns die Technologie genauer ansehen, die dieses System ermöglicht.
9.1 Öffentliche und private Schlüssel: Sicherheit durch Kryptographie
„Bitcoin gibt uns ein festes Versprechen: Das Programm wird genau wie angegeben ausgeführt.“
9.1.1 Kryptographie Öffentliche/private Schlüssel
⭐ Bei der Verschlüsselung werden Informationen in einen speziellen Code umgewandelt, sodass sie für jeden, der nicht über die richtige Entschlüsselungsmethode verfügt, unlesbar sind. Dies ist vergleichbar mit dem Verschließen eines Safes, den nur die Person mit dem richtigen Schlüssel oder der richtigen Kombination öffnen kann.
⭐ Bei der Entschlüsselung hingegen handelt es sich um den Vorgang, die verschlüsselten Informationen wieder lesbar zu machen, etwa wenn man einen Safe aufschließt und die darin enthaltenen Informationen lesen kann.
Nehmen wir beispielsweise an, John möchte Arel eine geheime Nachricht schicken, die niemand sonst lesen kann. Sie vereinbaren, die Verschlüsselungsmethode Pigpen Cipher zu verwenden, um die Nachricht vor dem Senden zu verschleiern. Nur diejenigen, die über die Chiffre verfügen, können die Nachricht entschlüsseln, sodass sie für niemanden mehr lesbar ist. Obwohl diese Methode heute nicht als sicher gilt, veranschaulicht sie das Prinzip der Private-Key-Kryptografie zum Senden von Nachrichten.
**Wie funktioniert also die Kryptografie bei Bitcoin-Transaktionen?**
Bei der traditionellen Kryptografie mit privatem Schlüssel müssten John und Arel zunächst einen geheimen Schlüssel austauschen, etwa ein Passwort oder die Pigpen-Chiffre. John würde diesen Schlüssel dann verwenden, um seine Nachricht zu verschlüsseln, bevor er sie an Arel sendet. Arel, der den geheimen Schlüssel ebenfalls kennt, würde dann denselben Schlüssel verwenden, um die Nachricht zu entschlüsseln und zu lesen.
Wenn jedoch jemand anderes im Besitz des Schlüssels ist und die Nachricht abfängt, könnte er sie entschlüsseln und lesen.
Dieses Problem wurde durch Public-Key-Kryptographie gelöst, wie sie bei Bitcoin-Transaktionen zum Einsatz kommt. Bei der Public-Key-Kryptographie müssen John und Arel weder das Passwort noch die Verschlüsselungsmethode miteinander teilen. Stattdessen haben sie jeweils zwei verschiedene Schlüssel: einen Öffentlicher Schlüssel (das Sie bedenkenlos mit jedem teilen können) und privater Schlüssel (die vertraulich behandelt werden sollten).
In diesem Fall kann John, wenn er eine Nachricht an Arel senden möchte, Arels Öffentlicher Schlüssel seine eigene Nachricht zu verschlüsseln, bevor er sie an Arel sendet. Wenn Arel die Nachricht empfängt, kann nur er sie mit seinem privater Schlüssel. Selbst wenn jemand anderes die Nachricht abfängt, kann sie diese nicht lesen. Die Wahrscheinlichkeit, den Schlüssel zu stehlen, ist auch viel geringer, da selbst John und Arel den Schlüssel nicht miteinander teilen müssen.
Der Hauptvorteil der Public-Key-Kryptographie gegenüber der privaten liegt darin, dass sie eine sichere Kommunikation ermöglicht, ohne dass Sender und Empfänger sich zunächst einen geheimen Schlüssel (oder eine andere Verschlüsselungsmethode wie Pigpen Cipher) teilen müssen, der von Dritten abgefangen werden könnte.
Bei Bitcoin wird Public-Key-Kryptographie nicht zum Senden verschlüsselter Nachrichten verwendet. Stattdessen wird sie verwendet, um eindeutige digitale Signaturen die Bitcoin-Transaktionen unveränderlich machen. Digitale Unterschrift ist eine Möglichkeit, die Echtheit einer Bitcoin-Transaktion nachzuweisen, ähnlich wie wenn Sie Ihre Unterschrift auf ein physisches Dokument schreiben.
⭐ Bei Bitcoin-Transaktionen wird eine bestimmte Menge Bitcoins direkt auf das Konto einer anderen Person überwiesen.
⭐ dass nur der tatsächliche Inhaber der Bitcoins die Kontrolle hat, sein Geld an jemand anderen zu senden. Es stellt sicher, dass das Eigentum vor böswilligen Akteuren geschützt ist.
⭐ Als zusätzliche Schutzmaßnahme erhält jede Transaktion, die Sie in Bitcoin senden, automatisch eine einzigartige Signatur. Dies einzigartige Signatur basiert auf einer manipulationssicheren Technologie, mit deren Hilfe das Netzwerk überprüfen kann, ob die Bitcoins vom wahren Besitzer und nicht von jemand anderem gesendet wurden.
So funktioniert das bei einer echten Bitcoin-Transaktion in einfachen Worten:
1. ⭐. Erstellen der Transaktion: Ein Benutzer initiiert eine Bitcoin-Transaktion, indem er Details wie die Adresse des Empfängers und den zu sendenden Bitcoin-Betrag angibt.
2. ⭐. Generierung digitaler Signaturen: Der Absender generiert eine eindeutige Digitale Unterschrift mit ihren privater Schlüssel. Diese Signatur ist ein einzigartiger kryptografischer Code, der die Echtheit der Transaktion bestätigt.
3. ⭐. Übertragung der Transaktion: Die signierte Transaktion wird an das Bitcoin-Netzwerk gesendet und zeigt die Absicht an, das Eigentum an Bitcoins vom Absender auf den Empfänger zu übertragen.
4. ⭐. Verifizierung im Netzwerk: Knoten im Bitcoin-Netzwerk empfangen die Transaktion und verwenden die Öffentlicher Schlüssel des Empfängers, um die Transaktion zu entschlüsseln und ihre Integrität zu überprüfen. Gleichzeitig verwenden sie die des Absenders Öffentlicher Schlüssel um die zu überprüfen Digitale Unterschrift.
5. ⭐. Bestätigung im Bitcoin Netzwerk: Wenn die Überprüfung erfolgreich ist, wird die Transaktion dem Hauptbuch hinzugefügt, das als sichere, transparente Aufzeichnung aller Transaktionen dient. Nach der Bestätigung wird das Eigentum an den Bitcoins offiziell vom Absender auf den Empfänger übertragen.
Zusammengefasst dient die digitale Signatur, die mit dem privaten Schlüssel des Absenders erstellt wird, als kryptografischer Echtheits- und Eigentumsnachweis und ermöglicht dem dezentralen Netzwerk von Bitcoin, die Transaktion zu validieren und im Hauptbuch aufzuzeichnen.
9.1.2 Hashing-Erklärung
Bitte lassen Sie sich nicht von den Fachbegriffen und mathematischen Konzepten abschrecken. Wir verstehen, dass nicht jeder ein Mathe-Fanatiker ist, aber Sie werden vielleicht überrascht sein, dass selbst die komplexesten Ideen mit ein wenig Mühe verständlich sind.
Was ist eine Funktion?
⭐ A Funktion ist wie eine Maschine, die Informationen aufnimmt und sie in etwas Neues verwandelt. Die Informationen, die Sie der Funktion geben, nennt man Varianten des Eingangssignals:Die neuen Informationen, die die Funktion erzeugt, nennt man Möglichkeiten für das Ausgangssignal:. Funktionen helfen Computern, Aufgaben zu erledigen und Probleme zu lösen.
Stellen Sie es sich wie ein Salatrezept vor. Das Rezept (oder die Funktion) sagt Ihnen, welche Zutaten Sie verwenden und wie Sie sie mischen müssen, um den Salat zuzubereiten. Sie können verschiedene Zutaten verwenden, aber das Rezept gibt immer den Salat als Ergebnis aus. Funktionen können verwendet werden, um die Arbeit einfacher und effizienter zu machen.
Dieses Rezept ist eine Funktion, die die Zutaten als Varianten des Eingangssignals: und erzeugt den gemischten Salat als Möglichkeiten für das Ausgangssignal:.
In Bitcoin werden Funktionen verwendet, um Transaktionen auszuführen. Wir wissen bereits, dass Transaktionen in Bitcoin im Wesentlichen Wertübertragungen (Geld) von einer Adresse zu einer anderen sind. Um eine Transaktion durchzuführen, werden eine Reihe kryptografischer Funktionen verwendet, um die Transaktion zu validieren und den Status des Bitcoin-Ledgers zu aktualisieren.
Zu den Funktionen, die bei einer Bitcoin-Transaktion verwendet werden, gehören die Überprüfung der Echtheit der Transaktionseingaben, die Überprüfung, ob der Absender über ausreichende Mittel verfügt, und die Aktualisierung der Salden der entsprechenden Adressen. Sobald eine Transaktion überprüft und einem Block im Hauptbuch hinzugefügt wurde, wird sie Teil der permanenten Aufzeichnung aller Transaktionen im Netzwerk.
Was ist eine Einwegfunktion?
Eine Einwegfunktion verarbeitet die Informationen mithilfe einer Reihe von Anweisungen und wandelt sie in etwas Neues um, so wie ein Smoothie-Rezept Zutaten in ein neues Getränk verwandelt. Aber genauso wenig, wie Sie einen Smoothie rückgängig machen können, um die ursprünglichen Zutaten zurückzuerhalten, können Sie die Einwegfunktion umkehren, um die ursprünglichen Informationen zurückzuerhalten.
Die Public-Key-Kryptographie, deren Öffentlicher Schlüssel ist ein Teil davon, beruht auf der Verwendung von Einwegfunktionen, die es schwierig machen, die privater Schlüssel von dem Öffentlicher SchlüsselTheoretisch ist es nicht ganz „unmöglich“, die privater Schlüssel von dem Öffentlicher Schlüssel, aber es ist äußerst schwierig und würde einen übermäßigen Zeit- und Rechenaufwand erfordern, um diese Aufgabe zu erfüllen.
Die Suche nach einer privater Schlüssel von einem Öffentlicher Schlüssel in Bitcoin ist wie der Versuch, eine Nadel in einem Heuhaufen zu finden, der so groß ist wie ein Fußballfeld. Die Nadel stellt die privater Schlüssel und der Heuhaufen stellt alle möglichen private Schlüssel.
Ebenso sind Einwegfunktionen so konzipiert, dass sie irreversibel sind und nicht entschlüsselt werden können.
Was ist eine Hash-Funktion?
⭐ Hashing ist wie ein Fingerabdruck für digitale Daten. Dabei wird eine digitale Nachricht in einen Code mit fester Länge umgewandelt, der als eindeutige Kennung dient.
So wie ein Fingerabdruck eine Person identifizieren kann, kann ein Hash eine digitale Nachricht identifizieren. Hashes werden in vielen Anwendungen verwendet, einschließlich Bitcoin-Transaktionen.
Wie Hashing bei Bitcoin-Transaktionen verwendet wird
Bei Bitcoin wird jede Transaktion gehasht, bevor sie einem Block im Hauptbuch hinzugefügt wird. Der Hash fungiert als Signatur für die Transaktion und bestätigt, dass die Transaktion gültig ist und nicht manipuliert wurde. Wenn jemand versucht, auch nur einen einzigen Buchstaben in der Transaktion zu ändern, wird der Hash völlig anders sein und andere auf die Änderung aufmerksam machen.
Die Rolle des Hashings bei der Gewährleistung der Sicherheit
Hashing ist für die Sicherheit des Bitcoin-Netzwerks von entscheidender Bedeutung. Durch die Verwendung von Hashes zur Identifizierung von Transaktionen kann das Netzwerk jeden Versuch erkennen, eine Transaktion zu ändern oder zu manipulieren. Dies hilft, Betrug zu verhindern und sicherzustellen, dass alle Transaktionen im Hauptbuch korrekt aufgezeichnet werden.
Eine Hash-Funktion ist eine Art Einwegfunktion, die eine Eingabe (die sogenannte „Nachricht“ oder „Daten“) entgegennimmt und in eine numerische Darstellung umwandelt, die als „Hash“ bezeichnet wird. Die Möglichkeiten für das Ausgangssignal: Hash ist für die Eingabedaten eindeutig, sodass selbst eine kleine Änderung in der Varianten des Eingangssignals: Daten ergeben einen völlig anderen Hash.
⭐ Eine Hash-Funktion ist wie eine Geheimcodemaschine. Sie nimmt eine Nachricht und wandelt es in einen Code um.
Aktivität: SHA 256 Hash generieren
Die Möglichkeiten für das Ausgangssignal:, oder Hash, hat immer die gleiche Länge, unabhängig davon, wie lang die ursprünglichen Informationen waren.
Bitcoin verwendet einige spezifische Arten von Hash-Funktionen, die SHA-256 und RIPEMD160. Nachfolgend finden Sie einige Beispiele:
⭐ Beachten Sie, dass eine kleine Änderung der zweiten Eingabe die Ausgabe im Vergleich zur ersten vollständig ändert.
⭐ Der dritte Input ist eine riesige Datei, die Ausgabe hat jedoch immer noch die gleiche feste Länge wie die anderen beiden.
Hashing Man kann sich das auch als eine Partitur vorstellen, die die Essenz eines Musikstücks einfängt. So wie eine Partitur eine eindeutige Darstellung einer Melodie ist, ist ein Hashwert eine eindeutige Darstellung eines Datenelements. Durch Vergleichen der Partitur eines Musikstücks mit der tatsächlichen Darbietung kann ein Musiker feststellen, ob die Darbietung korrekt ist. Ebenso kann man durch Vergleichen des Hashwerts empfangener Daten mit dem ursprünglichen Hashwert feststellen, ob die Daten während der Übertragung verändert wurden.
So wie eine kleine Abweichung bei einer musikalischen Darbietung dazu führen kann, dass sie anders klingt, führt selbst die kleinste Änderung der Originaldaten zu einem anderen Hash-Wert. Dies macht Hashing zu einem leistungsstarken Tool, um die Integrität und Authentizität einer Bitcoin-Transaktion sicherzustellen.
Der Prozess der Kodierung der Öffentlicher Schlüssel durch Hashing wird verwendet, um die Sicherheit von Informationen zu verbessern, indem sie in ein unlesbares Format mit fester Länge umgewandelt werden. Bitcoin verwendet die Algorithmen SHA-256 und Ripemd-160, um öffentliche Adressen zu erzeugen. Die resultierende Ausgabe dient als eindeutige Kennung für die Öffentlicher Schlüssel und trägt dazu bei, die Integrität und Sicherheit der im Hauptbuch gespeicherten Transaktionen zu gewährleisten. Durch die Verschlüsselung der Informationen wird es für Unbefugte schwieriger, auf die Daten zuzugreifen und sie zu manipulieren.
⭐ Deterministisch. Die gleichen Zutaten ergeben immer den gleichen Smoothie.
⭐ Vorab-Bild-Widerstand. Man kann keine Erdbeere zusammenkleben, wenn man ihnen einen Smoothie gibt.
⭐ Korrelationsresistenz. Durch eine kleine Veränderung der Zutaten entsteht ein völlig anderer Smoothie.
⭐ Kollisionsresistenz. Es ist schwierig, verschiedene Zutaten für einen Smoothie zu finden, die genau den gleichen ergeben.
⭐ Geschwindigkeit und Überprüfbarkeit. Werfen Sie Obst in den Mixer. Das geht schnell und das Ergebnis ist garantiert eine glatte Masse.
9.2 Das UTXO-Modell
⭐ UTXO – Nicht ausgegebene Transaktionsausgabe
Was sind UTXOs?
Bei Bitcoin funktionieren Transaktionen so, als würden Sie ein größeres Stück Gold in kleinere Stücke zerbrechen und diese kleineren Stücke sowohl an andere als auch an sich selbst senden.
Sie können sich UTXOs als Bitcoins unterschiedlicher Größe und Stückelung oder als Banknoten unterschiedlichen Nennwerts in Ihrem Portemonnaie vorstellen. Wenn Sie einen UTXO ausgeben, wird dieser in einen neuen UTXO für den Empfänger umgewandelt, und was übrig bleibt, wird Ihnen in einem anderen neuen UTXO, dem sogenannten „UTXO für Wechselgeld“, zurückgeschickt. Das ist ungefähr so, als würden Sie mit einem 10-Dollar-Schein zwei Tassen Kaffee für 6 Dollar kaufen. Das Café behält die 6-Dollar-Note und gibt Ihnen 4 Dollar Wechselgeld.
Wenn Sie Bitcoins senden, senden Sie immer den gesamten Betrag eines (oder mehrerer) Ihrer UTXOs in Ihrem Bitcoin-Wallet. Was passiert? Sie senden einen Teil an den Empfänger und erhalten den Restbetrag als Wechselgeld an eine Ihrer neuen Bitcoin-Adressen zurück. Das Wechselgeld, das Sie erhalten, wird als nicht ausgegebene Transaktionsausgabe oder UTXO bezeichnet und kann als Eingabe für eine neue zukünftige Transaktion verwendet werden.
Der Kontostand Ihres Bitcoin-Wallets ist die Summe aller Ihrer verschiedenen UTXOs. Die Summe Ihrer UTXOs ist also die Summe der Bitcoins, die Sie besitzen.
⭐ Es ist wichtig zu beachten, dass Sie andere nicht auf Ihre UTXOs aufmerksam machen sollten, denn wenn jemand sie kennt, kann er Ihre Bitcoin-Transaktionen im Netzwerk verfolgen und weiß letztendlich, wie viel Geld Sie besitzen.
Zusammenfassend lässt sich sagen, dass Sie bei jeder Transaktion ein oder mehrere Ihrer vorhandenen UTXOs verwenden, um Bitcoins auszugeben, und dass neue UTXOs erstellt werden (sowohl für Sie als auch für den Empfänger).
Wenn eine Transaktion durchgeführt wird, wird die Menge der gesendeten Bitcoins in mehrere Ausgaben aufgeteilt, von denen jede mit einer neuen Bitcoin-Adresse (einer neuen UTXO) verknüpft ist.
Wenn Sie Bitcoins an jemanden senden, verwenden Sie ein oder mehrere UTXOs als Geldquelle (Input). Diese UTXOs werden bei Bedarf kombiniert, um neue Outputs zu erstellen, die sowohl dem Empfänger der Transaktion als auch Ihnen selbst gehören. Diese neuen Outputs oder UTXOs werden Eigentum des Empfängers und Ihr Eigentum. Diese UTXOs können dann als Geldquelle für andere zukünftige Transaktionen verwendet werden. Diese Kette von UTXOs erstellt eine transparente, nachvollziehbare Historie aller Bitcoin-Transaktionen im Hauptbuch von Bitcoin, beginnend mit dem allerersten Block (3. Januar 2009).
Ein Beispiel zur Veranschaulichung, wie das funktioniert: Wenn Sie zwei Bitcoins senden möchten, aber nur einen UTXO im Wert von fünf Bitcoins haben, wird Ihnen die Differenz von drei Bitcoins als „Wechselgeld“ zurückgesendet. Dieses Wechselgeld ist ein neuer UTXO für Sie, und Sie können diesen neuen UTXO in einer zukünftigen Transaktion ausgeben.
Ein weiteres Beispiel:
1. ⭐ Alice möchte Bob fünf Bitcoins schicken.
2. ⭐ Sie kombiniert sechs Bitcoins aus zwei ihrer UTXOs
3. ⭐ Von diesen UTXOs sendet sie fünf Bitcoins an Bob, erhält 0.99 Bitcoins als Wechselgeld zurück und muss eine Transaktionsgebühr von 0.01 zahlen.
4. ⭐ Nach der Bestätigung wird die Transaktion zum Bitcoin-Ledger hinzugefügt und alle Knoten aktualisiert, die über eine Kopie des Ledgers verfügen.
Wenn Alice versucht, einen ihrer bereits ausgegebenen Outputs für eine weitere Transaktion zu verwenden, wird dies automatisch von den Knoten abgelehnt. Dies liegt daran, dass die Knoten eine Kopie des Bitcoin-Ledgers (und aller seiner Transaktionen) verwalten, sodass sie den Saldo von Alices UTXOs leicht überprüfen und feststellen können, dass die Transaktion ungültig ist.
Unten sehen Sie einen Screenshot einer echten Transaktion, bei der es nur einen Input gibt. Der Anfangssaldo könnte jedoch in einem anderen Fall die Summe mehrerer UTXOs (mehrere Inputs) sein. Welche Beobachtungen können Sie machen, wenn Sie sich die beiden Transaktionen unten ansehen? Stimmen die Inputs mit den Outputs überein? Können Sie die Details der Transaktion beschreiben? Gibt es einen Zusammenhang zwischen den beiden Screenshots? Und welche Transaktion fand zuerst statt?
9.3 Ein genauerer Blick auf Bitcoin-Knoten und -Miner
In diesem Abschnitt werden wir uns zwei sehr wichtige Teile (und Teilnehmer) des Bitcoin-Netzwerks genauer ansehen, die erstmals in Kapitel 6 vorgestellt wurden. Wir werden uns Folgendes ansehen:
1. ⭐. Bitcoin-Knoten: Gatekeeper der Validierung, deren Hauptaufgabe darin besteht, eine Kopie des Bitcoin-Hauptbuchs aufzubewahren, sicherzustellen, dass alle Transaktionen gültig sind und dass alle dieselben Regeln befolgen.
Indem diese Aufgabe auf viele Menschen weltweit verteilt wird, bleibt Bitcoin gegen potenzielle Probleme gewappnet. Diese Knoten helfen dabei, das System vertrauenswürdig zu halten und seiner dezentralen Idee treu zu bleiben, bei der keine einzelne Person oder Gruppe zu viel Macht hat.
2. ⭐. Bitcoin-Miner: Sicherheitsarchitekten, die leistungsstarke Computer und Strom verwenden, um Transaktionen zu prüfen und zu bestätigen und sicherzustellen, dass alles sicher ist. Diese Arbeit trägt dazu bei, das Hauptbuch oder die Blockchain gegen alle böswilligen Akteure resistent zu machen, die versuchen, Dinge durcheinander zu bringen.
Gemeinsam arbeiten Bitcoin-Knoten und Miner als Team, um ein dezentrales, sicheres und starkes System aufrechtzuerhalten – eine neue Art des Umgangs mit Geld, auf die sich Menschen auf der ganzen Welt verlassen können. Lassen Sie uns diese Rollen genauer untersuchen, um zu verstehen, wie sie zum innovativen Bitcoin-System beitragen.
9.3.1 Was ist ein Bitcoin-Knoten und wie richte ich einen ein?
Ein Bitcoin-Knoten mag technisch klingen, aber es handelt sich lediglich um eine Software, die eine Kopie des Bitcoin-Ledgers ausführt. Wenn Sie Ihren eigenen Bitcoin-Knoten betreiben, können Sie bei der Gestaltung der Regeln des Bitcoin-Netzwerks mitreden.
Stellen Sie sich Folgendes vor: Wenn eine Gruppe von Leuten versucht, die Funktionsweise von Bitcoin zu ändern, beispielsweise indem sie die Gesamtmenge an Bitcoins ändert, haben Sie ein Mitspracherecht. Sie können sich dafür entscheiden, Ihren Knoten nicht auf das neue System umzustellen, was so viel bedeutet wie eine Abstimmung über die Durchsetzung der Regeln des von Ihnen unterstützten Netzwerks.
Stellen wir uns einen Bitcoin-Knoten als digitalen Verkehrspolizisten mit einigen wesentlichen Aufgaben vor:
1. ⭐. Torwächter der Validierung: Ein Bitcoin-Knoten speichert eine digitale Kopie der Blockchain, die wie ein gemeinsames Hauptbuch aller Bitcoin-Transaktionen funktioniert. Viele Knoten auf der ganzen Welt halten diese Aufzeichnung.
2. ⭐. Kommunikationszentrum: Knoten verbinden sich miteinander und bilden ein riesiges Kommunikationsnetzwerk. Sie teilen Informationen, insbesondere Transaktionen, die darauf warten, der Blockchain hinzugefügt zu werden. Diese werden in einem digitalen Warteraum namens „Mempool“ gespeichert.
3. ⭐. Qualitätschecker: Jeder Eintrag in der Blockchain wird einer genauen Prüfung unterzogen. Knoten stellen sicher, dass Transaktionen gültig sind, und lehnen alle ab, die den Regeln des Bitcoin-Netzwerks nicht entsprechen.
4. ⭐. Blockchain-Informant: Andere Software, wie Wallets, kann einen Knoten nach Informationen über die Blockchain fragen, wie etwa Bitcoin-Guthaben. Knoten dienen als Informations-Hubs.
5. ⭐. Begrüßung des neuen Knotens: Wenn ein neuer Knoten beitreten möchte, stellen vorhandene Knoten großzügig eine Kopie der Blockchain zur Verfügung. Der neue Knoten überprüft unabhängig die Gültigkeit jeder Transaktion und betont damit ein vertrauensloses System.
Aktivität: Video zu Bitcoin-Knoten ansehen
Eine der Möglichkeiten, Ihren eigenen Knoten zu betreiben, besteht darin, die Bitcoin Core-Software herunterzuladen und ihr etwas Zeit zu geben, um die gesamte Blockchain herunterzuladen. Sobald sie fertig ist, können Sie sie eingeschaltet lassen und etwa alle 10 Minuten kommen neue Blöcke mit Transaktionen an. Ihr Knoten überprüft deren Gültigkeit und fügt sie Ihrer lokalen Kopie der Blockchain hinzu.
Das Ausführen eines Knotens bietet Souveränität und Unabhängigkeit. Sie sind nicht auf andere angewiesen; er ist Ihr eigener Verkehrspolizist. Im Gegensatz zu Ihrem Bitcoin-Wallet, das keine Kopie der Blockchain besitzt, sorgt ein Knoten für Selbstversorgung. Anstatt anderen Ihre Bitcoin-Bestände (und den Zustand des Bitcoin-Netzwerks) anzuvertrauen, kommuniziert Ihr Wallet mit Ihrem persönlichen Knoten, was Ihr digitales Erlebnis sicherer und vertrauenswürdiger macht.
9.3.2 Was ist ein Bitcoin-Miner und wie funktioniert das Mining?
„Der Zweck des Minings ist nicht die Schaffung neuer Bitcoins; das ist das Anreizsystem. Mining ist der Mechanismus, durch den die Sicherheit von Bitcoin dezentralisiert wird.“
⭐ Miners Sammeln Sie unbestätigte Transaktionen, bilden Sie einen Block und verwenden Sie Energie auf die Suche nach einem wertvollen Schlüssel, der den Platz des Blocks in der Blockchain hinzufügen und sichern.
Die Miner liefern sich ein Wettrennen darum, den nächsten Block zur Blockchain hinzuzufügen. Der begehrte Preis ist ein „gültiger Block-Hash“, der geschickt unter Milliarden anderer versteckt ist und nur mit einem vom Netzwerk zugewiesenen Schlüssel entschlüsselt werden kann.
Stellen Sie sich einen riesigen Heuhaufen voller Millionen von Schlüsseln vor, von denen jeder einen einzigartigen Block-Hash darstellt. Das Netzwerk hat einen bestimmten Schlüssel ausgewählt, um eine wertvolle Belohnung freizuschalten. Miner durchwühlen den Heuhaufen und testen jeden Schlüssel im Schloss, aber nur ein glücklicher Miner wird den perfekten Schlüssel finden.
Sobald ein Miner den richtigen Block-Hash gefunden hat, gibt er ihn zusammen mit dem von ihm erstellten Block neuer Transaktionen an das Netzwerk weiter. Andere Miner überprüfen die Lösung, um sicherzustellen, dass sie passt. Wenn alles in Ordnung ist, wird der Block zur Blockchain hinzugefügt, wodurch ein sicheres und öffentliches Hauptbuch erstellt wird.
Bergleute werden für ihre Bemühungen auf zwei Arten belohnt:
1. ⭐ Belohnungen blockieren
2. ⭐ Transaktionsgebühren
Blockbelohnungen sind neue Bitcoins, die mit jedem Block, der der Blockchain hinzugefügt wird, in Umlauf gebracht werden. Transaktionsgebühren sind kleine Bitcoin-Zahlungen, die Benutzer leisten, damit ihre Transaktionen schneller verarbeitet und vom Miner priorisiert werden. Miner können auswählen, welche Transaktionen in den Block aufgenommen werden sollen, den sie minen, und geben normalerweise denjenigen den Vorzug, bei denen die Transaktionsgebühren höher sind.
Bitcoin-Halbierungen
Eine Bitcoin-Halbierung ist ein wesentlicher Bestandteil des Bitcoin-Universums, der dazu beiträgt, seine Knappheit und seinen Wert im Laufe der Zeit aufrechtzuerhalten. Wie Sie wissen, gibt es einen festen Vorrat von insgesamt 21,000,000 Bitcoins. Dieser Vorrat ist vom Tag der Einführung von Bitcoin an nicht vollständig verfügbar. Stattdessen gelangt dieser Vorrat schrittweise in das Bitcoin-Universum.
Satoshi Nakamoto hat ein cleveres Blockbelohnungssystem entwickelt, um neue Bitcoins ohne zentrale Autorität zu verteilen. In den Anfangstagen von Bitcoin erhielten Miner für jeden Block, den sie abbauten, eine nette Belohnung von 50 Bitcoins, was sie dazu motivierte, in leistungsstarke Geräte und Strom für ihre Mining-Operationen zu investieren.
Um das Netzwerk stabil zu halten und das Angebot an neuen Bitcoins zu verwalten, wird die Blockbelohnung etwa alle 210,000 Blöcke halbiert. Dieses Ereignis, „die Halbierung“ genannt, verringert die Anzahl der neuen Bitcoins, die in Umlauf kommen, und motiviert die Miner weiterhin, das Netzwerk zu schützen und seine Dezentralisierung aufrechtzuerhalten. In der Vergangenheit haben Halbierungsereignisse zu erheblichen Preissteigerungen auf dem Bitcoin-Markt geführt, da das Angebot an neuen Bitcoins, die in Umlauf kamen, reduziert wurde.
⭐ Zirkulierende Versorgung bezieht sich auf den Gesamtbetrag einer Währung. Bei Bitcoin ist die gesamte im Umlauf befindliche Menge die Anzahl der Münzen, die geschürft wurden und zu einem bestimmten Zeitpunkt im Umlauf sind, mit Ausnahme der Münzen, die für immer verloren sind.
Während jedes Halbierungsereignisses erhalten die Miner weniger Bitcoin-Belohnungen, was die Ausgaberate neuer Münzen senkt. Infolgedessen erhöht sich die Schwierigkeit des Bitcoin-Minings, um eine Blockzeit von ungefähr 10 Minuten aufrechtzuerhalten und sicherzustellen, dass der Blockchain in einem gleichmäßigen Tempo neue Blöcke hinzugefügt werden. Die Verringerung der Mining-Belohnungen bedeutet nicht unbedingt, dass die Miner weniger Gewinn machen, da sie auch Transaktionsgebühren für die Überprüfung von Transaktionen und deren Hinzufügen zur Blockchain verdienen können, was den Rückgang der Mining-Belohnungen ausgleichen kann.
Halbierungsereignisse sind im Bitcoin-Protokoll vorprogrammiert, wodurch der Versorgungsplan für Bitcoins vorhersehbar und transparent wird.
⭐ Die Bitcoin-Angebotsplan ist der vorher festgelegte und öffentliche Plan für die Ausgabe neuer Bitcoins in Umlauf, der darauf abzielt, die Knappheit von Bitcoins über einen längeren Zeitraum aufrechtzuerhalten.
In der folgenden Tabelle sind die Einzelheiten der bevorstehenden Halbierungsereignisse für Bitcoin aufgeführt. Dazu gehören das voraussichtliche Datum des nächsten Halbierungsereignisses, die Blocknummer, bei der das Halbierungsereignis stattfinden wird, die Blockbelohnungen (pro geschürftem Block) während dieses Halbierungsereignisses und der Prozentsatz der Gesamtmenge, der geschürft wird.
Event | Erwartetes Datum | Blockieren | Block Belohnung | Prozentsatz der Minen |
---|---|---|---|---|
Vierte Halbierung | 2024 | 840,000 | 3.125 | 96.875% |
Fünfte Halbierung | 2028 | 1,050,000 | 1.5625 | 98.4375% |
Sechste Halbierung | 2032 | 1,260,000 | 0.78125 | 99.21875% |
Je mehr Bitcoins geschürft werden, desto mehr steigen die im Umlauf befindliche Menge und der Prozentsatz der Gesamtmenge, der geschürft wurde, bis die Gesamtmenge von 21,000,000 erreicht ist. Das reduzierte Angebot kann in Kombination mit steigender Nachfrage den Preis von Bitcoin (gemessen in Dollar) in die Höhe treiben. Dies kommt den Early Adopters zugute und motiviert die Miner, das Netzwerk weiterhin zu sichern und ihre Rechenleistung und Ressourcen einzubringen.
Was ist ein gültiger Block-Hash in Bitcoin?
Bei Bitcoin ist ein gültiger Block-Hash wie ein spezieller Code, den Miner zu finden versuchen. Es handelt sich um eine eindeutige Nummer, die dabei hilft, jeden Block in der Blockchain zu verfolgen, der Informationen zu Transaktionen speichert. Die Blöcke sind in einer Kette vom ersten (Genesis-Block) bis zum letzten verbunden, wodurch ein öffentlicher Datensatz aller Transaktionen entsteht. Dieser Block-Hash ist entscheidend, da er jeden Block mit dem vorherigen verbindet, sodass jeder den Transaktionsverlauf leicht überprüfen kann. Er ist ein bisschen wie ein Fingerabdruck für jeden Block und stellt sicher, dass die Informationen korrekt und sicher sind. Der Block-Hash dient als Bestätigung, dass die Daten im Block nicht geändert wurden.
Satoshi Nakamoto, der Erfinder von Bitcoin, hat den ersten Block geschürft, der insgesamt 50 Bitcoins enthielt.
Das Rennen um den Abbau eines Blocks
Die Miner konkurrieren darum, den Block-Hash zu finden, der mit dem vom Netzwerk festgelegten Ziel (einer speziellen Nummer) übereinstimmt. Der Miner, der als erster erfolgreich den richtigen Block-Hash findet, erhält die Möglichkeit, diesen Block zur Blockchain hinzuzufügen und ihm die entsprechende Hash-ID zuzuweisen. Diese Lösung dient als Validierung für die Authentizität des Blocks.
Das Mining kann mit einem Rennen verglichen werden, bei dem es darum geht, so schnell wie möglich die Ziellinie zu erreichen. Der Schwierigkeitsgrad, den Block-Hash zu finden, wird regelmäßig angepasst, um sicherzustellen, dass jeder Block weiterhin in etwa 10 Minuten abgebaut wird (wenn Miner hinzukommen und gehen). Dieser Mechanismus wird als „Schwierigkeitsanpassung“ bezeichnet.
Nehmen wir an, die vom Bitcoin-Netzwerk festgelegte Zielzahl beträgt 1,000. Die Miner müssten ihre Rechenleistung und Energie einsetzen, um nach einem Block-Hash (einer bestimmten Zahl) zu suchen, der niedriger als 1,000 ist. Der erste Miner, der einen Block-Hash unter 1,000 findet, darf den neuen Block zur Blockchain hinzufügen und wird mit Bitcoins belohnt.
⭐ Der Schwierigkeitsgrad beim Bitcoin-Mining ist ein Maß dafür, wie schwierig es ist, einen gültigen Block-Hash zu finden, der das vom Netzwerk festgelegte Ziel erfüllt. Er wird alle 2016 Blöcke oder etwa alle zwei Wochen angepasst, um sicherzustellen, dass der Blockchain in gleichbleibender Geschwindigkeit Blöcke hinzugefügt werden. Der Schwierigkeitsgrad wird als Zahl ausgedrückt. Je höher der Schwierigkeitsgrad, desto schwieriger ist es, einen gültigen Block-Hash zu finden.
Betrachten Sie beispielsweise zwei verschiedene Hashes:
⭐ Hash 1:
0000A1mINgF0RbL0
cK5with3hAy5tAcK
Schwierigkeitsgrad: 1
⭐ Hash 2:
00000000A1mINgF0RbL0
cK5with3hAy5tAcK
Schwierigkeitsgrad: 2
In diesem Beispiel hat Hash 2 einen höheren Schwierigkeitsgrad als Hash 1, da es sich um einen längeren Hash mit mehr Nullen am Anfang handelt. Für Miner wäre es schwieriger, Hash 2 zu finden, da ihre Computer mehr Arbeit leisten müssten.
⭐ Indem ein Miner einen gültigen Block-Hash findet, weist er nach, dass er die erforderliche Arbeit geleistet hat, um den neuen Block zur Blockchain hinzuzufügen, und erhält für seine Mühe eine Belohnung in Bitcoins zuzüglich Transaktionsgebühren. Proof-of-Work (PoW) ist die Methode, die das Bitcoin-Netzwerk verwendet, um Transaktionen zu validieren und der Blockchain neue Blöcke hinzuzufügen.
PoW sorgt für die Sicherheit von Bitcoin, indem es jedem mit böswilligen Absichten erschwert wird, die Kontrolle zu übernehmen.
Zusammengefasst bestehen die Aufgaben der Bergleute aus:
1. ⭐. Bündelung von Transaktionen in Blöcken: Während Knoten neu erstellte Transaktionen überprüfen, die im „Mempool“ warten, wählen Miner eine Teilmenge davon aus, um sie in ihren Kandidatenblock aufzunehmen.
2. ⭐. Arbeitsnachweis: Die Miner liefern sich ein Wettrennen um den gültigen Block-Hash.
3. ⭐. Gültige Blöcke übertragen: Nachdem sie den gültigen Blockhash gefunden haben, verbreiten sie den neuen Block im Netzwerk.
4. ⭐. Verdienen Sie Belohnungen: Abschließend erhalten sie neu erstellte Bitcoins und Transaktionsgebühren für das erfolgreiche Hinzufügen des Blocks zur Blockchain.
Mehrere Miner können gleichzeitig an der Erstellung neuer Blöcke arbeiten. Der erste Miner, der einen Block-Hash entdeckt, der das vom Netzwerk festgelegte Ziel erfüllt, gibt dies dem Netzwerk bekannt, und die anderen Miner überprüfen dann die Transaktionen im Kandidatenblock dieses Miners, um sicherzustellen, dass sie gültig sind. Wenn die Transaktionen tatsächlich gültig sind, wird der Block der Blockchain hinzugefügt. Die anderen Blöcke, die zu diesem Zeitpunkt von den anderen Minern erstellt wurden, werden nicht hinzugefügt und verworfen. Dieser Prozess hilft, den Konsens innerhalb des Netzwerks aufrechtzuerhalten und Doppelausgaben zu verhindern.
⭐ Ein Kandidatenblock ist eine Reihe von Transaktionen, die für eine Aufnahme zur Blockchain in Betracht gezogen, aber noch nicht hinzugefügt wurden.
9.4 Was ist der Mempool?
Der „Mempool“ oder Memory Pool ist wie ein Warteraum für Transaktionen im Bitcoin-Netzwerk. Wenn Sie eine Transaktion durchführen, wird sie zunächst an den Mempool gesendet, bevor sie überprüft, ausgewählt und der Blockchain hinzugefügt wird.
Stellen Sie sich vor, Sie stehen in einer Restaurantschlange. Ihr Name wird einer Liste von Personen hinzugefügt, die auf einen Tisch warten. Wenn ein Tisch frei wird, ruft der Gastgeber Ihren Namen auf und weist Ihnen einen Platz zu. Ähnlich wird eine Bitcoin-Transaktion dem Mempool hinzugefügt, wenn sie durchgeführt wird, und bestätigt und der Blockchain hinzugefügt, wenn ein Miner sie in einen Block einfügt.
Wie werden Transaktionen verifiziert und zum Mempool hinzugefügt?
Wenn neue Transaktionen an das Bitcoin-Netzwerk gesendet werden, überprüfen die Knoten diese Transaktionen, um sicherzustellen, dass sie gültig sind und die Mittel nicht zuvor ausgegeben wurden. Sobald diese Transaktionen überprüft wurden, fügen die Knoten sie ihrem Mempool hinzu. Die Knoten teilen die Transaktionen dann mit anderen Knoten, um sie noch einmal zu überprüfen. Wenn die Mehrheit der Knoten zustimmt, werden die Transaktionen schließlich den Minern zur Auswahl und Aufnahme in einen Block zur Verfügung gestellt. Es gibt jedoch mehrere Gründe, warum eine Transaktion nach 72 Stunden möglicherweise nicht bestätigt wird:
1. ⭐. Niedrige Transaktionsgebühren: Transaktionen mit einer niedrigen Gebühr werden möglicherweise nicht schnell genug verarbeitet, da Miner eher Transaktionen mit höheren Gebühren für die Aufnahme in ihre Blöcke auswählen.
2. ⭐. Netzüberlastung: Wenn das Netzwerk überlastet ist, kann es zu Verzögerungen bei der Bestätigung von Transaktionen kommen, selbst wenn diese mit hohen Gebühren verbunden sind.
3. ⭐. Versuch einer Doppelausgabe: Wenn ein böswilliger Akteur versucht, doppelt auszugeben, kann seine Transaktion vom Netzwerk abgelehnt werden.
4. ⭐. Falsche oder unvollständige Daten: Wenn eine Transaktion falsche oder unvollständige Daten enthält, kann sie vom Netzwerk abgelehnt werden.
5. ⭐. Fehlerhafte Transaktion: Wenn eine Transaktion fehlerhaft ist, kann sie vom Netzwerk abgelehnt werden.
Um die Ablehnung von Transaktionen zu vermeiden, empfiehlt es sich, eine Gebühr festzulegen, die hoch genug ist, um eine zeitnahe Bearbeitung der Transaktion zu gewährleisten. Außerdem sollte vor dem Senden der Transaktion noch einmal überprüft werden, ob alle Daten in der Transaktion korrekt sind.
Aktivität: Mempool
1. ⭐ Scannen Sie Folgendes QR-Code:
2. ⭐ Überprüfen Sie die verschiedenen auf der Seite angezeigten Elemente, einschließlich der neuesten Blöcke, bestätigten Transaktionen, der Anzahl der Transaktionen, der Speichernutzung und des ungefähren Werts des gesamten Blocks. Beantworten Sie die Fragen:
⭐ Was war der letzte abgebaute Block?
⭐ Wie viele Transaktionen waren in diesem Block enthalten?
⭐ Wie hoch ist der Gesamtwert der in Bitcoin gehandelten Wertpapiere?
⭐ Wie groß war der Block in Megabyte?
⭐ Mit wie vielen Nullen beginnt der Nonce des Blocks?
⭐ Wie viel Bitcoin hat der Miner insgesamt verdient?
⭐ Wie hoch war der Gesamtwert der Gebühren, die der Miner für das Hinzufügen der Transaktionen zum Netzwerk erhalten hat?
⭐ Wählen Sie eine der Transaktionen mit dem höchsten Wert im Block. An wie viele Bitcoin-Adressen wurde der Betrag verteilt?
9.5 So funktionieren Bitcoin-Transaktionen von Anfang bis Ende
1. ⭐ Adam möchte Bitcoin an Gerardo senden. Er wählt einen seiner UTXOs aus, erstellt eine Transaktion und fügt alle erforderlichen Details hinzu, darunter die Menge an Bitcoins, die er senden möchte, Gerardos Empfängeradresse und einen überdurchschnittlichen Betrag an Transaktionsgebühren.
2. ⭐ Nach einer letzten Überprüfung, um sicherzustellen, dass alle Angaben korrekt sind, signiert Adam die Transaktion mit seinem privaten Schlüssel.
3. ⭐ Adam sendet die Transaktion an das Bitcoin-Netzwerk.
4. ⭐ Die Knoten im Netzwerk empfangen die Transaktion und überprüfen ihre Gültigkeit gemäß den Konsensregeln (sie überprüfen beispielsweise, ob Adams Unterschrift gültig ist und ob er über ausreichende Mittel verfügt, um die Transaktion durchzuführen).
5. ⭐ Die Transaktion wird als gültig markiert und die Knoten leiten sie an andere Knoten im Netzwerk weiter und fügen sie dem Mempool hinzu.
6. ⭐ Da Adam eine ausreichend hohe Transaktionsgebühr gewählt hat, nehmen fast alle Miner seine Transaktion in ihre Blöcke auf.
7. ⭐ Proof-of-Work: Die Miner liefern sich ein Wettrennen und versuchen, ihren Block zu minen, indem sie den gültigen Block-Hash finden. Einer der Miner findet den Hash und sendet seinen Block an das Netzwerk.
8. ⭐ Die Knoten erhalten den neu geschürften Block und überprüfen seine Gültigkeit. Dazu gehört die Validierung aller Transaktionen innerhalb des Blocks und die Sicherstellung, dass die Proof-of-Work-Anforderung erfüllt ist.
9. ⭐ Die Mehrheit der Knoten stimmt zu, dass der Block gültig ist und fügt ihn der Blockchain hinzu. Gerardo erhält die bestätigten Bitcoins an seine Empfangsadresse.
10. ⭐ Da in der nächsten Stunde weitere Blöcke zur Blockchain hinzugefügt werden, steigt die Anzahl der Bestätigungen für die Transaktion. Mit der steigenden Anzahl der Bestätigungen für die Transaktion wächst Gerardos Vertrauen in ihren Erfolg und ihre Unumkehrbarkeit.
⭐ Zusammenfassend lässt sich sagen, dass der Absender die Transaktion mit seinem privaten Schlüssel signiert, die Knoten die Transaktions-UTXOs verifizieren und die Miner die verifizierte Transaktion zur Blockchain hinzufügen. Der Empfänger kann dann mit seinem privaten Schlüssel auf die Bitcoins zugreifen. Sobald ein Block gemined ist, gelten alle darin enthaltenen Transaktionen als bestätigt und die als Eingaben in diesen Transaktionen verwendeten UTXOs gelten als ausgegeben und werden nicht erneut verwendet.
Am Ende dieses Kapitels haben Sie wertvolle Einblicke in die grundlegenden Konzepte der Funktionsweise von Bitcoin gewonnen. Wir haben wesentliche Aspekte behandelt, von den Grundlagen des Geldes bis hin zur technischen Seite der Bitcoin-Technologie. Lassen Sie uns nun im nächsten Kapitel alles zusammenfassen. Kapitel 10 erwartet Sie, in dem wir uns mit der wichtigen Frage befassen: „Warum Bitcoin?“