The Quantum Issue: Wat quantumcomputing voor Bitcoin kan betekenen
Belangrijkste punten
- •Bitcoinbezit berust op de aanname dat niemand munten kan uitgeven zonder over de privésleutel te beschikken, en quantumcomputing stelt dit fundamentele uitgangspunt ter discussie.
- •Een klassieke computer kan een privésleutel niet realistisch met brute kracht achterhalen, omdat de 2^256 mogelijke sleutels de rekenmogelijkheden van elke computer op aarde overstijgen.
- •Quantumcomputers verschillen fundamenteel van klassieke machines doordat zij qubits, superpositie en verstrengeling gebruiken om de waarschijnlijkheden van uitkomsten te wijzigen in plaats van afzonderlijke toestanden stap voor stap te testen.
- •Een werkende quantumcomputer zou elliptischekrommecodering kunnen ondermijnen door met een beperkt aantal algoritmische runs de juiste privésleutel te achterhalen.
- •De quantumdreiging voor Bitcoin wordt binnen de gemeenschap erkend en er worden talrijke mogelijke oplossingen voor verschillende aspecten van het probleem ontwikkeld.

The Quantum Issue: Wat quantumcomputing voor Bitcoin kan betekenen
Wat is quantumcomputing? Waarin verschilt een quantumcomputer van een klassieke computer, en wat zou deze technologie voor Bitcoin kunnen betekenen?
Dit zijn vragen waarmee nieuwe Bitcoiners onvermijdelijk te maken krijgen wanneer zij nadenken over de blootstelling van Bitcoin aan wat een existentiële bedreiging zou kunnen worden als er een bruikbare quantumcomputer wordt ontwikkeld. De mogelijkheid om bitcoin te bezitten berust op een fundamentele aanname: zonder rechtstreeks een kopie van een privésleutel te verkrijgen, kan niemand anders dan degene die over die sleutel beschikt een transactie ondertekenen waarmee de door die sleutel beveiligde munten worden uitgegeven. Quantumcomputing stelt die aanname ter discussie.
Quantumcomputers zijn niet simpelweg “computers, maar dan sneller”. Ze werken fundamenteel anders dan klassieke computers en zijn daardoor veel efficiënter bij bepaalde specifieke soorten berekeningen. Dit artikel probeert quantumcomputing niet in uitputtend technisch detail uit te leggen. In plaats daarvan geeft het een intuïtieve uitleg van de verschillen tussen klassieke en quantumcomputers, vooral wat betreft de manier waarop zij omgaan met grote cryptografische sleutelruimtes.
Klassieke computers
Alles wat in een klassieke computer wordt opgeslagen, wordt weergegeven als een reeks 1'en en 0'en. Elke bit is precies een 1 of een 0, zonder dubbelzinnigheid. Gegevens worden opgeslagen als 1'en en 0'en en wanneer die gegevens worden verwerkt of gewijzigd, gebeurt dat bit voor bit en stap voor stap.
Een klassieke computer wijzigt dus afzonderlijke, ondubbelzinnige stukjes data in een lineaire volgorde. Hij kan niet vooruit springen of een stap overslaan in de reeks stappen die voor een berekening nodig zijn. Die stappen moeten één voor één worden uitgevoerd, ook wanneer efficiëntere wiskundige methoden de totale hoeveelheid werk kunnen verminderen.
Wanneer op een computer een privésleutel wordt gegenereerd, verkrijgt het apparaat een willekeurige waarde. Die waarde kan afkomstig zijn van door een gebruiker ingevoerde dobbelstenen, algemene gebruikersinvoer of willekeurigheid die door de hardware van het apparaat wordt gegenereerd. De computer slaat de waarde in het geheugen op als 1'en en 0'en. Vervolgens vermenigvuldigt hij de waarde van de privésleutel met het generatorpunt van de elliptische kromme om een publieke sleutel te produceren.
Op het meest basale niveau bestaat dit proces uit algoritmische instructies die aangeven welke bits moeten worden gebruikt, hoe ze moeten worden gewijzigd en welke fysieke schakelingen ze moeten verwerken. De resulterende waarde wordt vervolgens, nadat die bit voor bit is gewijzigd, weer in het geheugen geplaatst. Om tot een geldig adres te komen zijn aanvullende stappen nodig, maar die volgen hetzelfde algemene patroon van opeenvolgende instructies die 1'en en 0'en in het geheugen wijzigen.
Wat zou er gebeuren als iemand een klassieke computer zou proberen te gebruiken om de privésleutel van iemand anders te raden?
Er zijn 2^256 mogelijke privésleutels. Dat zijn 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 mogelijke sleutels.
Een computer zou die privésleutels één voor één moeten testen, of zoveel sleutels tegelijk als hij parallel zou kunnen verwerken, en daarbij dezelfde stapsgewijze instructies volgen die worden gebruikt om publieke sleutels te genereren. Hoe meer sleutels gelijktijdig worden getest, hoe meer rekenkracht daarvoor nodig is. Er zou geen manier zijn om die kosten te omzeilen.
Minder rekenkracht gebruiken zou meer tijd kosten. De benodigde tijd verkorten zou meer rekenkracht vereisen. Met klassieke computing is de taak praktisch onmogelijk: de vereiste rekenkosten overstijgen de mogelijkheden van elke computer op aarde, terwijl de benodigde tijd zo groot is dat elke ster in het heelal zou sterven voordat alle mogelijke sleutels zijn getest.
Om het doel te bereiken is een alternatief nodig voor het opeenvolgend of parallel controleren van sleutels. Daar wordt quantumcomputing relevant.
Quantumcomputers
Quantumcomputers werken niet op dezelfde manier met afzonderlijke toestanden als klassieke computers. Hun basiseenheid van informatie is de qubit, het quantum-equivalent van een bit. In tegenstelling tot een klassieke bit, die een 1 of een 0 is, bevindt een qubit zich in een superpositie waarin hij tegelijkertijd een 1 en een 0 kan zijn. Hij komt in één van die afzonderlijke toestanden terecht wanneer hij wordt waargenomen.
Superpositie is een van de belangrijkste bouwstenen waarmee quantumcomputers anders kunnen rekenen. Een andere is verstrengeling. Qubits worden niet noodzakelijk geïsoleerd opgeslagen. De fysieke atomen die hen vertegenwoordigen kunnen verstrengeld raken. Dat betekent dat wanneer verstrengelde atomen worden waargenomen en instorten tot één toestand, de verstrengelde atomen in dezelfde toestand instorten, ongeacht hoe ver ze van elkaar verwijderd zijn.
Het verschil kan intuïtief worden begrepen door algoritmen met elkaar te vergelijken. Op een klassieke computer is een algoritme een reeks instructies die een specifieke rangschikking van bits stap voor stap wijzigt totdat een uiteindelijke rangschikking van bits ontstaat. Het algoritme zet de ene afzonderlijke toestand via een reeks bewerkingen om in een andere.
Qubits slaan geen afzonderlijke toestanden op totdat een waarneming ervoor zorgt dat ze in één toestand instorten. In plaats daarvan slaan ze waarschijnlijkheden op. Bij een verzameling verstrengelde qubits van een bepaalde omvang — 2^256 in het hypothetische geval dat hier wordt besproken — heeft elke mogelijke toestand een bepaalde waarschijnlijkheid om de toestand te zijn waarin het systeem instort.
Quantumalgoritmen zijn daarom niet simpelweg stapsgewijze instructies voor het werken met vaste, afzonderlijke toestanden. Ze geven instructies voor het bewerken van verstrengelde qubits op een manier die de waarschijnlijkheden van verschillende uitkomsten verandert. Constructieve interferentie verhoogt de waarschijnlijkheid van een juiste uitkomst, terwijl destructieve interferentie de waarschijnlijkheid van onjuiste uitkomsten verlaagt. Dit is niet hetzelfde als de ruis of interferentie die het moeilijk maakt voor fysieke quantumcomputers om nauwkeurig te werken; het is een afzonderlijk concept.
Een klassieke computer zou afzonderlijke privésleutels één voor één moeten controleren om de sleutel te vinden die bij een specifieke publieke sleutel hoort. Een quantumcomputer zou in plaats daarvan het juiste algoritme een beperkt aantal keer kunnen uitvoeren en het correcte antwoord kunnen bereiken. Dat gebeurt niet doordat letterlijk “alle mogelijkheden tegelijk worden gecontroleerd”. In plaats daarvan worden de waarschijnlijkheden gewijzigd van de uitkomsten waarin de superpositie kan instorten.
Daarom zou een quantumcomputer de aannames achter elliptischekrommecodering kunnen ondermijnen op een manier die een klassieke computer niet kan. Dit verklaart ook waarom quantumcomputers alleen nuttig zijn voor bepaalde soorten berekeningen, waaronder problemen met een zeer grote ruimte aan mogelijke antwoorden.
Geen paniek
Het fundamentele verschil tussen klassieke en quantumcomputing betekent dat, als er een bruikbare quantumcomputer zou worden geproduceerd die correct functioneert, de onderliggende aanname die individuele Bitcoinbezittingen beveiligt zou worden doorbroken. Die tegoeden zouden dan onveilig zijn.
Dat zou een ernstig risico vormen als een dergelijk apparaat zou worden geproduceerd en naar behoren zou werken. Bitcoin is echter niet volledig onvoorbereid. Het probleem en de mogelijke blootstelling zijn bekend, en er komen talrijke mogelijke oplossingen voor verschillende aspecten van het vraagstuk samen.
Adem rustig en blijf kalm. De rest van deze editie behandelt het bredere probleem in detail.
Dit artikel is opgenomen in de nieuwste gedrukte editie van Bitcoin Magazine, The Quantum Issue. Het wordt online gedeeld als een eerste kennismaking met de ideeën die in de volledige editie worden onderzocht.
Het artikel verscheen oorspronkelijk op Bitcoin Magazine en is geschreven door Shinobi.