Einige Mining-Pool-Administratoren fügen benutzerdefinierte Daten wie Gebete in Block-Header ein . Wie haben sie das gemacht? Wo kann ich diese Daten selbst einsehen?
Wenn Sie einen Block generieren, hat die Generierungstransaktion (diejenige, die neue Coins erstellt) ein Attribut namens coinbase . Es ist ein besonderer Wert, in den Sie alles eingeben können, was Sie wollen, um den Block für andere unvorhersehbar zu machen (und das ist gut so).
Sie können also natürlich Text in dieses Attribut einfügen, obwohl die meisten nur miningbezogene Informationen einfügen, die nicht für Menschen lesbar sind (Nonce und Extra-Nonce).
Sie können diese Coinbase lesen, indem Sie einen gepatchten Bitcoin-Knoten verwenden, der Blöcke ausgeben kann, beispielsweise mit den Patches „dumpblock“ oder „getblockbyhash“.
Oder Sie können einfach jeden String direkt in der Blockchain-Datenbank drucken:strings -n 20 blk0001.dat
Beispiel für den 1. Block:
Münzbasis:04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73
ASCII-Übersetzung:ᝣᝣᝣᝣᝣᝣᝣEThe Times 03/Jan/2009 Chancellor on brink of second bailout for banks
Dies wird vom Eligius-Pool verwendet; es bringt Gebete in dieses Feld.
Dan Kaminsky erläuterte bei einem Vortrag auf der Black Hat USA 2011 seine Methode und Beweggründe für das Einfügen von Bildern in die Blockchain – die entsprechenden Folien (12-20) aus der Präsentation finden Sie hier.
Seine grundlegende Methode bestand darin, Transaktionen mit vielen Ausgaben zu erstellen und die Nachricht in ASCII-Stücken in das Empfangsadressfeld der Ausgabeskripte aufzunehmen. Sie können die entsprechenden Hex-Codes für das ASCII in seiner Nachricht in der Rohtransaktion sehen . Sie können sehen, dass die Nachricht von den anderen Transaktionsfeldern unterbrochen wird, sodass Sie die Nachrichten nur richtig sehen können, wenn Sie mit einem Tool (z. B. strings ) suchen, das nicht druckbare Zeichen herausfiltert und druckbare Zeichen in Zeilen anzeigt. Seine Transaktion erforderte eine Bitcoin-Gebühr von 0,15, damals etwa 1,50 Dollar.
Zu diesem Thema gab es dieses Jahr einen sehr interessanten Vortrag auf dem Chaos Communication Camp. IIRC können Sie beliebige Informationen in Bitcoin-Transaktionen speichern, da sie tatsächlich „Programme“ enthalten, die angeben, wie die Transaktion verifiziert werden soll.
Informationen zur 'Scripting'-Schnittstelle finden Sie hier . Siehe Abschnitt 2.3 für Details zum Einbetten von Nachrichten.
Der Hacker war Dan Kaminsky und er hat dieses Bild in die Blockchain eingebettet.
Dies ist im Moment nur eine technologische Kuriosität, es hat keine bekannten Auswirkungen auf die rechtlichen oder technischen Aspekte von Bitcoin. Ich habe seine Arbeit nicht gelesen, aber er muss einen modifizierten Miner verwendet haben, der nach Hashes sucht, die mit einem voreingestellten Präfix beginnen.
Lassen Sie uns das klarstellen: Mining ist der Prozess, Lösungen (oder Hashes) für eine Kryptografiegleichung zu finden. Der erste, der eine Lösung findet, bekommt seine Lösung in die Blockchain aufgenommen – die permanente Transaktionsaufzeichnung. Was Kaminsky tat, war, nach einer bestimmten Art von Hash statt nur nach einem zufälligen Hash zu suchen, der den eingebetteten Test enthält. Sobald dies gefunden war (nur eine Frage des Betreibens eines Miners für einen ausreichend langen Zeitraum), wurde diese spezifische Lösung mit dem eingebetteten Text zur Blockchain hinzugefügt.
Zitronen-Ingwer
Tod und Steuern
Chris Moore