Från Wikipedia:
Öppen källkod, även öppen programvara, på engelska open source, avser oftast datorprogram där källkoden är tillgänglig att använda, läsa, modifiera och vidaredistribuera för den som vill. Detta gör att användaren kan försäkra sig om att programmet gör vad det ska, eller anpassa det till sina behov.
Att Bitcoin är ett Open source-projekt är bra att känna till. Det betyder nämligen att vem som helst som har den tekniska kunskapen kan studera exakt hur nätverket fungerar, leta efter eventuella buggar och problem eller föreslå förbättringar. När det gäller Bitcoin är det många som redan gjort detta, både av ädla och mindre ädla skäl. Att hitta en brist som skulle göra det möjligt att "fuska" till sig pengar kan förstås vara lockande och just detta betyder också att risken att det skulle finns några riktigt allvarliga buggar i protokollet är liten. Det är helt enkelt väldigt många som försökt knäcka systemet under de 5 år som Bitcoin funnits.
Incidenter har dock inträffat, den allvarligaste i Augusti 2010 gjorde det i princip möjligt att skapa obegränsat med bitcoins. Buggen var fixad inom några timmar och det som hände då visar också på en intressant aspekt av Bitcoins öppna natur, nämligen att det inte finns någon enskild individ eller organisation som styr över hur Bitcoinnätverket ser ut nu eller kommer att se ut i framtiden. När den allvarliga buggen inträffade 2010 hade alla som använde Bitcoin ett val, antingen att använda den gamla mjukvaran (som innehöll en allvarlig bugg) eller att använda den nya mjukvaran. Under tiden att båda versionerna användes fanns egentligen två olika Bitcoinnätverk, i det ena satt en person med 184 miljarder bitcoins och i det andra hade man valt att "spola tillbaka tiden" ett par timmar och fortsätta utan att tillåta den där transaktionen där 184 miljarder bitcoins skapades (läs mer om vad det innebär när blockkedjan förgrenas här).
Det är alltså användarna som i slutänden bestämmer hur Bitcoin ser ut, men vem som helst kan föreslå förändringar. Nu finns det förstås som alltid de som har mer makt än andra och en av dessa är Gavin Andresen, chefsutvecklare för den mjukvara, bitcoind, som av många betraktas som den officiella Bitcoinklienten. Anledningen till att denna mjukvara betraktas som den officiella är helt enkelt att det är den ursprungliga implementation som Satoshi skapade. Numera finns dock ett antal olika implementationer av protokollet (bl.a. bitcoinj, libbitcoin och btcd) och Gavin har själv pekat på vikten av att dessa alternativ fortsätter att utvecklas:
Diversity is a good thing. Diverse, inter-operating implementations of the Bitcoin protocol make the network more robust against software bugs, denial-of-service attacks, and vulnerabilities. There are several projects re-implementing Bitcoin; if you are a Java or Go or Python or C programmer who wants to see Bitcoin succeed, you should consider helping them out by reviewing, testing, or contributing patches:
I ett meddelande som Gavin nyligen skickade ut tog han upp en annan viktig fråga kring vad det innebär att Bitcoin är ett Open source-projekt som i mångt och mycket har utvecklats och fortsätter att utvecklas av frivilliga och obetalda entusiaster. (Några av utvecklarna har numera helt eller delvis betalt för att jobba med bitcoind, Gavin av Bitcoin Foundation och Jeff Garzik genom sin anställning på BitPay, men de är snarare undantag än regel.) Gavin uttryckte sig såhär:
do not treat the core development team as if we were a commercial company that sold you a software library. That is not how open source works; if you are making a profit using the software, you are expected to help develop, debug, test, and review it.
Alltså, det är viktigt att de företag som drar nytta av Bitcoin kommersiellt också ger något tillbaka till utvecklingen av grundfunktionaliteten, det är ju inte svårt att se hur detta i det långa loppet också gynnar dem själva. Jämför man med ett annat mycket framgångsrikt Open source-projekt, operativsystemet Linux, så ser man där att företag som Red Hat bidrar mycket till utveckling och testning av Linuxkärnan. Faktum är att ovan nämnde Jeff Garzik jobbade med just detta på Red Hat innan han blev anställd av BitPay och alltså har gjort karriär av att jobba med öppen källkod, men få betalt för det.
Slutligen ett ord om vad Bitcoin Foundation har för roll. Bitcoin Foundation skapades för att främja och skydda Bitcoin och är egentligen inte mer "officiell" än någon annan organisation. Som en del i främjandet av Bitcoin betalar de heltidslön åt Gavin så att han helt kan ägna sig åt Bitcoin. Detta görs med hjälp av de medlemsavifter och donationer som föreningen tar emot. Så nästa gång du läser om "Bitcoinchefen", kom ihåg, Bitcoin har ingen chef.
Kommentarer