Simple Payment Verification (SPV) ist ein Konzept, das in der Bitcoin-Blockchain verwendet wird, um es Nutzern zu ermöglichen, Transaktionen zu verifizieren, ohne die gesamte Blockchain herunterladen zu müssen. Dieses Konzept wurde in Satoshi Nakamotos ursprünglichem Bitcoin-Whitepaper beschrieben.
SPV ermöglicht es Wallets (Geldbörsen), Transaktionen zu bestätigen, indem sie nur die Blockheader herunterladen und nicht die gesamten Blockinhalte mit allen darin enthaltenen Transaktionen. Ein Blockheader enthält Informationen über den Block selbst, wie zum Beispiel die vorherige Blockreferenz (Hash), den Zeitstempel und den Proof-of-Work, jedoch nicht die einzelnen Transaktionen.
Mit SPV können Clients eine bestimmte Transaktion nachweisen, indem sie einen Pfad von Hashes (Merkle-Pfad) vorlegen, der zeigt, dass eine Transaktion in einem Block enthalten ist, ohne die gesamte Blockchain herunterladen zu müssen. Dies ist besonders nützlich für leichte Wallets auf Geräten mit begrenztem Speicherplatz, wie Smartphones.
SPV-Clients vertrauen darauf, dass die Mehrheit der Mining-Power im Netzwerk ehrlich ist und gültige Blöcke produziert. Sie überprüfen nur die Proof-of-Work-Kette und bestätigen Transaktionen mithilfe der Blockheader und des Merkle-Baums. Obwohl dies nicht die gleiche Sicherheitsstufe wie ein Full Node bietet, der jede Transaktion überprüft, bietet es einen guten Kompromiss zwischen Sicherheit und Ressourceneffizienz.