Som en av dess viktigaste egenskaper och en viktig försäljningsargument kontrolleras inte Bitcoin av någon stat, (central) bank eller företag. Det finns inte ens en aktiv uppfinnare att ringa skotten, vilket är fallet i många andra projekt med öppen källkod. Men det betyder inte att det elektroniska kontantsystemet för peer-to-peer alls inte styrs av människor.
Många tillskriver denna roll för styrning Bitcoin Core utvecklingsteam. Detta är dock en missvisad tillskrivning. Medan Bitcoin Core-utvecklare kan ha en inflytelserik position styrs Bitcoin verkligen av endast två grupper av människor: användare och gruvarbetare.
Bitcoin-implementeringar
Bitcoin i sig är i princip inget annat än ett protokoll; ett språk som delas av datorer. Och viktigare är att Bitcoin är ett “öppet” protokoll: det finns inga portvakter eller krav för att bli en del av Bitcoin-nätverket, förutom att följa detta protokoll.
Alla som har den kompetens som krävs kan utveckla programvara för att följa protokollet. Men det enklare alternativet är naturligtvis att helt enkelt ladda ner och köra programvara som utvecklats av andra.
Det finns för närvarande flera Bitcoin-programvaruimplementeringar att välja mellan, samt gafflar (nära kopior) av dessa implementeringar. De mest använda av dessa är förmodligen fortfarande Bitcoin Core, programvarustacken som utvecklats från Bitcoin-uppfinnaren Satoshi Nakamotos ursprungliga Bitcoin-implementering. Men Libbitcoin, Bitcoin XT*, Bitcoin Classic* och en handfull andra implementeringar följer alla samma protokoll och finns på samma nätverk sida vid sida.
(* Bitcoin XT och Bitcoin Classic är programmerade att avvika från det aktuella Bitcoin-protokollet om vissa villkor är uppfyllda, men följ det nuvarande Bitcoin-protokollet tills dess.)
Uppriktigt sagt styrs alla dessa implementeringar och gafflar av sina respektive utvecklare på vilket sätt dessa utvecklare vill ha. Där Bitcoin Classic-utvecklare ställer in en (icke-bindande) anser det. sidan för att samla idéer om utvecklingsriktningen var den tidigare Bitcoin XT-utvecklaren Mike Hearn mer villig att agera som en ”välvillig diktator.”
Bitcoin Core styrs av en löst meritokratisk process av peer review och grov konsensus bland dess mest aktiva bidragsgivare. Detta styrs av det – teoretiskt genomförandeoberoende – Bitcoin förbättringsförslag process och modereras av Bitcoin Core-utvecklare, Wladimir van der Laan, samt flera utvecklare med åtkomståtkomst. Libbitcoin styrs på ett liknande sätt men med ledande utvecklare Eric Voskuil som moderator.
Det viktiga är dock att styrning av Bitcoin-implementeringar – inklusive Bitcoin Core – skiljer sig i grunden från styrningen av Bitcoin själv. Oavsett kodförändring som Bitcoin-utvecklare antar och släpper existerar egentligen bara som en serie av nollor och värdar på webbplatser som bitcoin.org eller bitcoincore.org. Det har ingen inverkan på själva Bitcoin-nätverket.
Det är bara om faktiska Bitcoin-användare laddar ner och kör en ny version på sina egna datorer som det kan bli en del av Bitcoin-nätverket. Och naturligtvis har utvecklare ingen kontroll över vilken programvara människor kör på sina egna datorer. Den som driver Bitcoin Core eller någon annan Bitcoin-implementering gör det självständigt och frivilligt.
Utvecklare förstås därför kanske bäst som verktygsleverantörer med vad som kan betraktas som en slags rådgivande roll. Deras inflytande är begränsat till att erbjuda människor programvara som de kan använda för att ansluta till Bitcoin-nätverket om de vill.
Gäller protokollet
Bitcoin-styrningen i sig kommer till slut från användare genom programvaran de kör på sina datorer.
Denna typ av styrning är kanske bäst jämfört med mänskliga språk. Även om inget enskilt styrande organ historiskt sett har varit ansvarig för det engelska språket väljer många människor frivilligt att tillämpa samma grammatikregler för att kommunicera. Människor “styr” det engelska språket genom att använda det.
De som kommunicerar på engelska med många människor – kanske populära nyhetsankare – kommer att ha ett starkare inflytande på det engelska språket. De som kommunicerar med färre människor, som avskilda munkar, kommer att ha ett svagare inflytande. På samma sätt beror mängden inflytande som Bitcoin-användare utövar på protokollet på deras deltagande.
Mer specifikt är bitcoin egentligen bara användbart (och därför värdefullt) om folk accepterar det som betalning. Att acceptera bitcoin som betalning tillför därför värde till den specifika uppsättningen protokollregler som tillämpas för att acceptera betalningen.
Användare som accepterar fler betalningar (eller betalningar av högre värde) har större vikt inom nätverket. Om många Bitcoin-användare vill göra affärer med AlphaBay eller BitPay, sådana företag kan ha större inverkan på Bitcoins protokollregler och därmed på Bitcoins styrningsprocess.
Och eftersom endast helt validerande Bitcoin-noder gäller alla protokollregler har användare som kör dessa “fulla noder” en starkare inverkan på Bitcoins styrningsprocess också.
Bitcoin-utvecklare – Core eller på annat sätt – lägger vikt på Bitcoin-protokollet i den mån de är användare. Men deras status som utvecklare ger dem inget särskilt privilegium, även om de ville ha det.
Ändra protokollet
Att tillämpa och tillämpa befintliga protokollregler är enkelt. Att ändra Bitcoins protokollregler är ofta mycket svårare.
Vissa protokolländringar kan tillämpas av en delmängd av deltagare i Bitcoin-nätverket (typ av hur slang kan tillämpas av en delmängd engelsktalande). Men andra protokolländringar kräver nätverksövergripande överenskommelse: konsensus. Även små skillnader kan orsaka att olika Bitcoin-implementeringar blir helt oförenliga med varandra. Detta kan leda till att en “blockchain-gaffel” delar upp Bitcoin-nätverket i två eller flera separata nätverk och därför två eller flera separata valutor.
(Vilka förändringar kräver konsensus och vilka inte, förklaras mer detaljerat här.)
Vissa oförenliga ändringar av Bitcoin-protokollet kräver därför att alla användare tillämpar de nya reglerna vid någon överenskommen tidpunkt. Alla måste byta till ett helt nytt nätverk, oförenligt med det gamla nätverket, annars finns det två olika nätverk. Säg annorlunda; alla måste börja använda ett helt nytt “mynt” och måste komma överens om att detta mynt är det nya bitcoin.
Den verkliga utmaningen är därför inte så mycket att skriva ny kod eller ens skapa ett nytt nätverk. Den verkliga utmaningen övertygar alla att byta till det här nya nätverket och betrakta det som den nya bitcoin.
Återigen har Bitcoin-utvecklare inga speciella befogenheter för att få användare att byta till ett nytt nätverk – förutom i den utsträckning som användare kan välja att följa deras råd. Även om Bitcoin Core-utvecklarna skulle släppa en ny version av sin programvara för att skapa ett sådant nytt nätverk, kunde användare av de äldre programvaruimplementeringarna helt enkelt ignorera uppdateringen och fortsätta använda det befintliga protokollet som de vill.
(Det bör noteras att en delmängd av användare alltid kan välja att byta till ett nytt nätverk även om inte alla andra håller med. Det kan bara vara osannolikt att alla kommer att betrakta det här nya myntet som det ”riktiga” bitcoin.)
Mjuka gafflar
Att få alla att harmoniskt byta till ett nytt protokoll är ingen enkel uppgift. Det är därför det nuvarande Bitcoin Core-utvecklingsteamet föredrar att ändra protokollet på ett sådant sätt att inte alla behöver byta samtidigt – eller alls.
Genom “mjuka gafflar” kan det befintliga Bitcoin-protokollet ändras inom ramen för det aktuella protokollet. De “begränsar” befintliga regler. Men genom smarta knep – som dessa – kan mjuka gafflar faktiskt användas för att utöka Bitcoins möjligheter.
Mjuka gafflar uppnår detta genom att betrakta transaktioner som tidigare skulle ha ansetts giltiga som ogiltiga. Och eftersom inte alla användare, men bara gruvarbetare, bestämmer vilka transaktioner som ingår i block, kan mjuka gafflar utföras av en ren majoritet av gruvarbetare med hashkraft. (Alla minoritetsgruvearbetare som inte byter kan få sina block avvisade av majoriteten, medan de fortfarande följer majoritetskedjan. Det kan inte finnas någon blockchain-split.)
I dagens relativt centraliserade gruvlandskap, där endast en liten delmängd av användare bryter (och en ännu mindre delmängd av användare kontrollerar gruvpooler), kan mycket få användare genomdriva mjuka gafflar. Bitcoin Core-utvecklare föreslår därför bara mjuka gafflar som de anser vara okontroversiella. Dessa mjuka gafflar kräver också 95 procent hash-kraftstöd, snarare än en ren majoritet. Och de föreslår bara mjuka gafflar som tydligt signalerar att protokollet kommer att ändras, så att alla användare kan uppgradera sin programvara eller vidta alternativa försiktighetsåtgärder, om det är vad de vill ha.
Naturligtvis kan gruvarbetare mjuka sig utan stöd från utvecklare eller Bitcoins bredare användarbas också. Men om gruvarbetare agerar mot användarnas intressen finns det en möjlig lösning. Bitcoin-protokollet kan ändras för att kräva en ny gruvalgoritm, vilket omedelbart gör specialiserad gruvhårdvara föråldrad. Detta borde omcentralisera gruvdrift från industribruk till vanliga datorer åtminstone tillfälligt och effektivt avfyra den nuvarande uppsättningen gruvarbetare. Några Bitcoin Core-utvecklare Maj vara stödjande av en sådan förändring i vissa fall. Återigen kunde naturligtvis utvecklare bara föreslå en sådan oförenlig förändring. Användare måste anta det.