Das Double Spending / Doppelte Ausgeben Problem ist schnell erklärt. In einer Blockchain müssen alle Ledger’s, also Hauptbücher mit den getätigten Transaktionen, auf dem neuesten Stand sein.
Als Beispiel nehmen wir ein Distributed Ledger Netz, welches Immobilien verwaltet. Wir haben 100 Teilnehmer im Netz, welche alle ihren Ledger aktuell halten. Ist alles aktuell, ist das Netz konsistent.
Wenn nun Person A sein Haus verkauft, kann es je nach System eine Weile dauern, bis diese Information zu allen 100 Teilnehmern durchgedrungen ist.
Person A entscheidet sich nun, sein Haus namens Antoinette an Person B zu verkaufen. Nehmen wir an, es dauert 5 Minuten, bis alle Ledger die Information des Hauskaufs erhalten.
Kurz darauf entscheidet sich Person A dazu, das gleiche Haus Antoinette an Person C zu verkaufen.
Da noch nicht alle Ledger wissen, dass Antoinette nun Person B und nicht mehr Person A gehört, ist es durchaus in Ordnung, wenn einige Ledger akzeptieren, dass Person C dieses Haus kauft. Die Transaktion wird akzeptiert.
Natürlich wird es aber ein Problem, wenn schlussendlich beide Transaktionen in einem Ledger bekannt sind und Antoinette nun in einem Ledger bereits Person C gehört, die eintreffende Transaktion aber das Haus von Person A nach Person B transferrieren will.
Person A hat das System ausgetrickst und sein Haus zweimal verkauft – und so zu einem inkonsistenten Zustand geführt.
Diese Situation nennt man das Double Spending Problem.