Speicherpools 

Wie in dem Artikel über Nodes beschrieben, prüfen Nodes alle Transaktionen auf ihre Gültigkeit. Die Nodes müssen sich darüber einig sein, in welcher Reihenfolge die vielen Transaktionen, die ins Bitcoin-Netzwerk gesendet wurden, stattfanden. Dementsprechend darf es auch nur eine Transaktionshistorie geben, in der alle Transaktionen, die über das Bitcoin-Netzwerk stattfinden, in aneinandergereihten Blöcken festgehalten werden. Diese Transaktionshistorie ist die Blockchain.

Der Mempool

Zu jedem Zeitpunkt führen also fast alle Nodes im Bitcoin-Netzwerk neben der Blockchain eine temporäre Liste mit nicht bestätigten Transaktionen. Diese Liste wird als „Mempool“ (aus dem Englischen von „memory pool“), Speicherpool oder Transaktionspool bezeichnet. Nodes verwenden diesen Mempool, um Transaktionen zu verfolgen, die dem Netzwerk bekannt aber noch nicht in der Blockchain enthalten sind. Das bedeutet, sie müssen noch auf ihre Gültigkeit überprüft und anschließend an die Miner gesendet werden, um im nächsten Block zu erscheinen.

Das Netzwerk ist nicht perfekt 

Bei den noch nicht bestätigten Transaktionen ist noch kein Konsens erzielt worden, sodass jede Node per Definition eine etwas andere Version des ausstehenden Mempools hat. In der Praxis tritt dies auf, weil das Peer-to-Peer-Netzwerk nicht perfekt ist. Daher haben einige Nodes möglicherweise von einer Transaktion gehört, von der andere Nodes noch nichts gehört haben. Um die Gültigkeit der Transaktionen zu überprüfen, integrieren die Nodes die noch zur Prüfung ausstehenden Transaktionen in ihren Mempool und leiten sie an benachbarte Nodes im Netzwerk zur Probe weiter.

Prüfung der Transaktionen

Die Nodes verfolgen nun anhand der Blockchain die gesamte Transaktionshistorie des jeweiligen Bitcoin-Senders zurück. Sie überprüfen dabei, ob der Sender genügend Bitcoins für die Transaktion in seiner Wallet, dem digitalen Geldbeutel, hat, ob er der tatsächliche Eigentümer dieser Bitcoins ist und ob er eventuell versucht, dieselben Bitcoins zweimal zu senden. Das wäre nämlich ein Fälschungsversuch. Wenn sich herausstellt, dass der Sender tatsächlich der Besitzer der Bitcoins ist, diese auch für die Transaktion ausreichen und er keinen Fälschungsversuch unternimmt, nimmt die Node die Transaktion aus dem Mempool und sendet sie an die Miner. Die Miner integrieren sie in den nächsten oder übernächsten Block der Blockchain und führen die Transaktion damit durch. Die Bitcoins werden gesendet.

Mehr lesen zu…

Quellen

Antonopoulos, A. M. (2017). Mastering Bitcoin: Programming the Open Blockchain (zweite Auflage). Sebastopol, California: O’Reilly Media.

Narayanan, A., Bonneau, J., Felten, E., Miller, A., & Goldfeder, S. (2016). Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction. Princeton, New Jersey: Princeton University Press.