Glossar / Mining und Konsens
Genesis-Block
Auch bekannt als Block 0.
- Was ist der Genesis-Block?
- Der Genesis-Block ist der erste Block der Bitcoin-Kette, am 3. Januar 2009 fest in die Software einprogrammiert, und der einzige Block, dessen Belohnung von 50 Bitcoin niemals ausgegeben werden kann.
Jeder Bitcoin-Node startet mit demselben fest im Code hinterlegten Block, statt ihn herunterzuladen, denn es gibt nichts Früheres, gegen das er geprüft werden könnte. Sein Zeitstempel 1231006505 ergibt den 3. Januar 2009 um 18:15:05 UTC, und sein Coinbase-Feld trägt eine Schlagzeile der Times of London von diesem Morgen. Wenn Ihre Software nicht beim selben Genesis-Block ankommt, sind Sie nicht auf Bitcoin.
Wie er funktioniert
Der Genesis-Block ist der eine Block, den kein Node jemals gegen einen Vorgängerblock validiert, deshalb kann er nicht übertragen, sondern nur vereinbart werden.
Er steht im Quellcode, in der Datei mit den Chain-Parametern, neben den entsprechenden Startblöcken für Testnet, Signet und Regtest. Jedes Netzwerk bekommt seinen eigenen, und genau daran erkennt ein Node, in welchem Netzwerk er sich befindet: Ein Testnet-Node verwendet dieselbe Coinbase-Nachricht, aber einen anderen Zeitstempel und einen anderen Nonce, was einen anderen Hash ergibt, und die beiden Netzwerke können sich nie versehentlich vermischen. Ändern Sie ein einziges Byte Ihres Genesis-Blocks, haben Sie eine private Chain erstellt, mit der kein Peer spricht.
Der ganze Block ist 285 Bytes groß und enthält eine einzige Transaktion, die Coinbase, die die ersten 50 Coins auszahlt. Diese Coins können nicht ausgegeben werden, und zwar nicht, weil eine Regel es verbietet. Bitcoin Core fügt den Coinbase-Output des Genesis-Blocks nie in seine Menge nicht ausgegebener Outputs ein, ein Artefakt der Art, wie der Block geladen wird, und kein bewusstes Design, sodass jede Transaktion, die ihn verbrauchen will, einen Output benennt, von dem das Netzwerk nicht glaubt, dass er existiert. Jede Implementierung hat diese Eigenheit beibehalten, weil eine Änderung die Chain ohne Zweck abspalten würde.
Eine Weile folgte nichts. Block 1 wurde erst am 9. Januar 2009 gemint, mehr als fünf Tage später, am selben Tag, an dem die Software in Version 0.1 auf der Mailingliste Cryptography angekündigt wurde. Diese Lücke ist der Grund, warum der Genesis-Block oft als vor der Ankündigung liegend beschrieben wird: Er existierte, bevor sonst jemand den Code hätte ausführen können.
Noch heute senden Menschen Coins als Tribut an die Genesis-Adresse 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa. Diese späteren Zahlungen sind gewöhnliche Outputs, erstellt durch gewöhnliche Transaktionen, und können von demjenigen ausgegeben werden, der diesen Schlüssel besitzt. Nur die ursprünglichen 50 sind eingefroren.
Warum das beim Bitcoin-Kauf zählt
Der gemeinsame Genesis-Block von Bitcoin beweist nichts über eine Coin, und mehrere Projekte haben genau diese Verwechslung verkauft.
Bitcoin Cash spaltete sich am 1. August 2017 bei Block 478.558 ab. Bitcoin SV spaltete sich am 15. November 2018 von Bitcoin Cash ab. Bitcoin Gold spaltete sich im Oktober 2017 bei Block 491.407 ab. Sie alle enthalten denselben Genesis-Block, dieselbe Schlagzeile im selben Coinbase-Feld und dieselben ersten Jahre der Geschichte, weil eine Abspaltung alles bis zu dem Punkt kopiert, an dem sie sich trennt. Ein Projekt kann daher wahrheitsgemäß sagen, seine Chain beginne am 3. Januar 2009, und trotzdem ein anderer Vermögenswert mit einem anderen Preis, anderen Regeln und einem Bruchteil der Sicherheit sein.
Was die Chains trennt, ist alles nach dem Abspaltungspunkt: die Konsensregeln, die jede Seite durchsetzt, und die akkumulierte Proof of Work hinter der Spitze. Beim Kauf sind es der Ticker, den Ihre Plattform handelt, das Adressformat, das Ihre Wallet erzeugt, und die Chain, der Ihr Node folgt, die Bitcoin tatsächlich identifizieren. Nichts davon ist der Genesis-Block.
Der zweite praktische Nutzen ist die Verifizierung. Wenn Ihr Node seine Erstsynchronisierung durchführt, beginnt er bei Block 0 und arbeitet sich vorwärts, wobei er jede Subvention, jede Signatur und jede Verknüpfung prüft. Der Genesis-Block ist die eine Eingabe dieses Prozesses, die von Ihnen und nicht vom Netzwerk kommt, und genau deshalb bedeutet der Prozess überhaupt etwas. Ihre eigene Kopie der Software von der Release-Seite des Projekts herunterzuladen und ihre Signatur zu prüfen, macht den Startpunkt zu Ihrem.
Dann ist da noch die Betrugsebene. Angebote von Coins aus der „Satoshi-Ära“, Chains, die als das ursprüngliche Bitcoin verkauft werden, und Nachrichten, die Sie auffordern, an die Genesis-Adresse zu senden, um einen Multiplikator freizuschalten, nutzen alle dasselbe Missverständnis. Unser Ratgeber zu Betrugsmaschen beschreibt das Muster.
Die Schlagzeile im Coinbase-Feld
Der Coinbase-Input des Genesis-Blocks trägt eine 69 Byte große Einfügung aus Klartext, die ein Hex-zu-ASCII-Konverter Ihnen in einer Sekunde zurückliest.
Die Bytes ergeben: "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks". Das war die Schlagzeile auf der Titelseite der Times of London am Samstag, dem 3. Januar 2009, und bezog sich auf Alistair Darling und die zweite Bankenrettung im Vereinigten Königreich.
Sie erfüllt zwei Aufgaben zugleich. Sie ist eine Aussage darüber, warum das System gebaut wurde, der einzige redaktionelle Inhalt irgendwo im Protokoll. Sie ist außerdem ein Zeitstempelbeweis, wie sie in der Kryptografie seit Jahrzehnten verwendet werden: Der Block kann nicht entstanden sein, bevor die Zeitung existierte, was eine harte untere Grenze für das Alter der Chain setzt, die nicht darauf beruht, dem Zeitstempelfeld zu vertrauen. Wer behauptet, eine frühere Bitcoin-Chain gemint zu haben, muss eine Schlagzeile erklären, die er nicht kennen konnte.
Genesis-Block vs. Bitcoin-Whitepaper
Bitcoin hat drei plausible Geburtstage, und sie werden ständig verwechselt. Das Whitepaper wurde am 31. Oktober 2008 auf der Mailingliste Cryptography veröffentlicht: ein neunseitiges Designdokument, kein Code, keine Chain. Der Genesis-Block wurde am 3. Januar 2009 gemint: der erste Zustand des Ledgers. Die Software in Version 0.1 wurde am 9. Januar 2009 veröffentlicht: der Zeitpunkt, ab dem jeder andere beitreten konnte. Das Whitepaper beschreibt ein System; der Genesis-Block startet eines.
Genesis-Block vs. Satoshi Nakamoto
„Satoshis Coins“ meint fast nie die 50 des Genesis-Blocks. Sergio Demian Lerners Analyse der Nonce-Muster in frühen Blöcken, bekannt als Patoshi-Muster, ordnet rund 1,1 Millionen Coins einem einzelnen Miner im Jahr 2009 zu, und dabei handelt es sich um gewöhnliche ausgabefähige Outputs in gewöhnlichen Adressen. Die Genesis-Belohnung ist davon getrennt und kann von niemandem ausgegeben werden, auch nicht von Satoshi. Wenn eine Schlagzeile also meldet, eine ruhende frühe Wallet habe Coins bewegt, ist es nie der Genesis-Block, und es kann nie einer sein.