En del av IBM Researchs kvantdator. Kredit:IBM Research/Flickr, CC BY-ND
Kryptovalutor som bitcoin har nyligen fångat allmänhetens fantasi eftersom de erbjuder ett spännande alternativ till traditionella monetära system.
Bitcoin-transaktioner är i huvudsak en serie pussel som lagras offentligt på blockchain. De pussel som används för att skydda bitcoin är så komplexa att den nuvarande datortekniken inte är tillräckligt kraftfull för att knäcka dem.
Men kvantdatorer kan knäcka dessa pussel under kommande decennier. Så här kan det hända med din bitcoin.
Hur fungerar krypteringen bakom bitcoin?
Traditionella valutor förlitar sig på betrodda mellanhänder som banker för att verifiera och registrera alla monetära transaktioner. Kryptovalutaekonomin förlitar sig istället på en offentlig reskontra – blockkedjan – som underhålls av alla ärliga deltagare i bitcoinnätverket.
Banker är vanligtvis enligt lag skyldiga att autentisera avsändaren och mottagaren av alla transaktioner. Men kryptovalutatransaktioner kan, i princip, utföras anonymt.
Föreställ dig en hypotetisk potentiell bitcoin-mottagare som heter Alice. Hon måste först skapa ett unikt och extremt svårt pussel som bara enkelt kan lösas med hjälp av en hemlig ledtråd (kallad privat nyckel) som hon håller för sig själv. Dessutom, det måste vara lätt att verifiera att lösningen är korrekt. Detta görs med en annan ledtråd (kallad offentlig nyckel). Efter att detta har hänt, Alice skickar pusslet till alla som vill skicka bitcoins till henne.
Föreställ dig nu en avsändare; låt oss kalla honom Bob.
Om Bob vill skicka bitcoin till Alice, han kommer att skicka in en transaktion till nätverket som innehåller två ingredienser:Alices pussel och en lösning på ett pussel som låser upp pengar som skickats till Bob i en tidigare transaktion. Han kommer också att avslöja den publika nyckeln som används för att verifiera lösningen. Om lösningen verifieras av nätverkets olika deltagare, de kommer att anta att Bob verkligen är behörig att spendera sin bitcoin och acceptera transaktionen i blockkedjan. Alice kan nu spendera pengarna genom att avslöja en lösning på hennes pussel.
På det här sättet, hela huvudboken för bitcoin-transaktioner är helt offentlig, medan bitcoinägarnas identiteter är skyddade.
Kan du komma åt bitcoin utan den privata nyckeln?
Faktiskt, vem som helst som kan lösa ett av pusslen i blockkedjan utan det hemliga tipset kan komma åt pengarna som lagras där. Därför är den enda utmärkande egenskapen hos de avsedda mottagarna att de kan lösa dessa pussel mer effektivt än andra, tack vare den hemliga antydan vet bara de.
De flesta pussel som används för bitcoin har formen av signaturer. Nämligen, Bitcoin-transaktioner signeras elektroniskt med hjälp av en riktigt komplicerad algoritm baserad på vad matematiker kallar elliptiska kurvor. Tanken är att skapa en sådan signatur är oöverkomligt svårt för alla datorer om man inte har den hemliga nyckeln, och att det enkelt kan verifieras med den publika nyckeln.
Dock, medan dessa signaturer verkligen verkar omöjliga att förfalska för dagens datorer, kvantdatorer kan potentiellt lösa dem mycket effektivt. Detta är möjligt eftersom kvantdatorer inte är begränsade till att behandla digital information, utan istället utföra beräkningar direkt med hjälp av de kvantmekaniska interaktioner som dominerar fysiken i mikroskopisk skala.
Forskare försöker fortfarande ta reda på exakt vilken typ av problem kvantdatorer är överlägsna på att lösa. Men vi vet att två problem som ligger bakom mycket av dagens kryptografi råkar vara sådana som morgondagens kvantdatorer kanske kan lösa ganska effektivt (för experterna hemma, förutom att lösa elliptiska kurvor, det andra problemet är att hitta primtalsfaktorerna för ett tal).
Särskilt, elliptisk kurvkryptografi kan brytas med en variant av Shors algoritm. Denna algoritm kan effektivt beräkna den hemliga nyckeln från den publika nyckeln, och därmed kan skapa signaturer snabbt när den publika nyckeln avslöjas. Detta kan inte göras med dagens datorer. Faktiskt, vi tror att endast kvantdatorer någonsin kommer att kunna utföra denna beräkning.
Hur skulle en tjuv med en kvantdator stjäla bitcoin?
Den nuvarande mekaniken för bitcoin innebär att den publika nyckeln endast avslöjas med signaturen när en transaktion föreslås till nätverket. Därför finns det en mycket kort möjlighet för en kvantdator att beräkna den privata nyckeln från den publika nyckeln och presentera en alternativ signerad transaktion (till exempel, få Bobs pengar att gå till tjuven istället för till Alice).
Vi kan tänka oss denna attack som analog med att råna en kund precis innan han går in på en bank för att sätta in pengar.
Att göra saker värre, för många bitcoin-transaktioner är den publika nyckeln faktiskt redan känd och lagrad i blockkedjan. Detta tar bort tidsbegränsningen för ovanstående attack och tillåter en tjuv att stjäla pengar även om ingen transaktion föreslås. Detta påverkar ungefär en tredjedel av bitcoins marknadskapital, eller flera tiotals miljarder dollar.
Detta är mer som ett traditionellt bankrån där tjuven inte behöver vänta på att en kund ska göra transaktioner.
Det är svårt att förutsäga när kvantdatorer kommer att vara starka och snabba nog att utföra dessa attacker, men det är rimligt att anta att vi är säkra under åtminstone de kommande tio åren.
Kan vi göra bitcoin säkra?
Det är viktigt att forskare hittar alternativ till elliptisk kurvkryptografi som är resistenta mot attacker från kvantdatorer.
Och även om ingen standard har dykt upp ännu, alternativa kryptovalutor som tar hänsyn till kvantdatorer utvecklas just nu. Så även om bitcoin i slutändan kan ge efter för kvantdatorer, blockchain och kryptovalutor kommer säkert att leva vidare.
Denna artikel publicerades ursprungligen på The Conversation. Läs originalartikeln.