Hi, ich bin auf der Suche nach einem (technischen) Podcast oder Video Beitrag der ein wenig mehr
in-depth beschreibt, was alles genau in einem Bitcoin Block steckt und wie dieser technisch umgesetzt ist. Oder gerne auch mehr in Details wie der Mining Prozess vor sich geht, z.B. was passiert hier als erstes, wird die Coinbase erschaffen, werden als erstes die Transaktionen verifiziert?
Ich bin erst seit wenigen Wochen dabei aber beschäftige mich aktuell recht intensiv mit dem Thema und habe gefühlt auch schon eine steile Lernkurve und wirklich viel mitgenommen.
Bestandteile die ich schon kenne sind unten aufgelistet (gerne korrigieren falls falsch):
Nonce = Zufallszahl die dazu führt das ein Block die Schwierigkeit erfüllt und mit entsprechende Anzahl an Nullen beginnt.
Coinbase = Subsidity (Subvention) für den Miner, hier werden neue Coins „geschaffen“. Also die erste Transaktion des Blocks die auf die Wallet / Adresse des Miners führt
Hash des vorangegangenen Blocks
Transaktionen. Die natürlich signiert und verifizierbar sein müssen
Ich habe es mit der Suche im Forum versucht und bin nicht richtig fündig geworden. Falls es da eine offensichtliche Quelle gibt entschuldige ich mich an dieser Stelle. Bin aber sehr dankbar für einen ‚Pointer‘ wo man ggf. Erklärungen findet die etwas mehr in die Tiefe gehen
Die Nonce hat einfach nur den Zweck damit irgendetwas im Block anders ist um eine andere Hashsumme zu erzeugen. Siehe die verlinkten Threads.
Alles was Miner machen ist mit SHA-256 um sich zu werfen bis sie zufällig eine Summe erhalten die klein genug ist. Dafür brauchen sie für jeden Versuch einen neuen Input. Neben der Nonce gibt es noch weitere Parameter die verändert werden können um den Input anzupassen. Auch das findest du in den verlinkten Threads.
Transaktionen werden vom gesamten Netzwerk verifiziert, bzw. von jeder Node. Auch ein Miner ist eine Node, der natürlich Transaktionen verifiziert bevor er sie in seinen Kandidaten schreibt.
Wichtig ist die Unterscheidung zwischen Block Header und dem eigentlichen Inhalt.
Gehasht wird nur der Header, nicht der gesamte Block. Alle Daten im Block beeinflussen aber den Block Header.
Im Header stehen:
Version
Timestamp
Nonce
Previous Hash
Merkle Root (ein Fingerabdruck aller TXIDs im Block)
Difficulty Target (die Zahl die der Blockhash unterbieten bzw. erreichen muss)