Light client
Een light client is blockchainsoftware die transacties verifieert zonder de hele keten te downloaden: hij slaat alleen compacte data op, zoals blokheaders, en vraagt bewijzen op voor de specifieke transacties waar hij om geeft. Daardoor kunnen telefoons, browsers en apparaten met weinig rekenkracht omgaan met een blockchain die anders honderden gigabytes aan opslag en dagen synchroniseren zou vereisen.
Het klassieke ontwerp, beschreven in de oorspronkelijke Bitcoin-whitepaper als simplified payment verification (SPV), werkt door de header van elk blok te downloaden en daarna full nodes om een Merkle-bewijs te vragen dat een bepaalde transactie in een van die blokken is opgenomen. De light client kan het bewijs wiskundig controleren, dus full nodes kunnen geen transacties verzinnen – al vertrouwt een light client er wel op dat de keten van headers met de meeste opgebouwde work of stake de regels van het netwerk volgt. Een mobiele Bitcoin-wallet met SPV kan bijvoorbeeld bevestigen dat een betaling aan jou is gemined zonder het volledige grootboek op te slaan.
Een veelvoorkomende misvatting is dat light clients gewoon wallets zijn die de server van een bedrijf bevragen; een echte light client verifieert bewijzen zelf, terwijl veel populaire wallets simpelweg de API van een aanbieder vertrouwen, wat zwakker is. Light clients ruilen een deel van de beveiligingsaannames in voor toegankelijkheid: ze kunnen niet elke soort ongeldig blok detecteren zoals een full node dat kan, maar ze verlagen de kosten van het enigszins trustless gebruiken van een blockchain drastisch, en nieuwere ontwerpen met zero-knowledge proofs willen die vertrouwenskloof verder verkleinen.