Yksi yleinen ihmetyksen aiheista lienee: Missä Bitcoin oikeastaan on? Kyseessä on siis jonkinnäköinen keskittämätön ohjelmisto. Mutta missä tämä ohjelma sijaitsee ja kuka valvoo tätä hajautettua kokonaisuutta?
Kysymme siis:
Missä Bitcoin ohjelmisto on?
Missä Bitcoinin tiedot ovat?
Missä Bitcoinin koodi on?

Bitcoin käyttää vertaisverkkoa eli peer to peer järjestelmää
Yleensä, kun ajattelemme ohjelmistoa, ajattelemme keskitettyjä hankkeita. Ohjelmistot ovat yleensä jonkun tahon hallinnassa ja sen tiedot tallennetaan esim. jonkun yrityksen hallinnoimaan tietokantaan.
Nykypäivänä ohjelmistojen ja sovellusten käyttö saattaa tapahtua myös ns. pilvessä, joka käytännössä tarkoittaa että esim. Facebookin käyttäjä käyttää etänä internet-selaimen tai mobiisovelluksen kautta Facebookin hallinnoimaa palvelintietokonetta ohjemistoineen ja Facebookin hallinnoimaa tietokantaa.
Mutta kun tarkastellaan digitaalista valuuttaa kuten Bitcoin, joka yrittää täyttää digitaalisesti kultaa vastaavia ominaisuuksia, tilanne ei ole näin yksiselitteinen.
Osiossa Miksi Bitcoinia tarvitaan? käsiteltiin jo hieman syitä keskittämättömien järjestelmien olemassoloon. Bitcoinin kohdalla tarkoitus on siis välttää tilannetta, jossa yksi taho hallitsee kokonaisuutta. Syy tähän on yhden tahon haavoittuvaisuus. Keskitetyn yksittäisen tahon toimintaan on helpompaa puuttua sekä vaikuttaa ja digitaalisen valuutan kohdalla tällainen yksittäisen tahon haavoittuvaisuus on erittäin merkittävä uhkatekijä.

Hyvänä esimerkkinä keskitetyn palvelun sulkemisesta voidaan käyttää vuosituhannen vaihteessa toiminutta yritystä Napster. Monet muistavat ajan, jolloin suuri osa musiikista ja elokuvista ladattiin kyseenalaisesti internetistä. Napster oli tällaisen jakamisen lippulaiva. Ihmiset latasivat yrityksen palvelimille omia musiikkitiedostoja Napsterin asiakkaiden käyttöön ja Napster peri palvelun ylläpidosta korvauksen. Pari vuotta perustamisesta jälkeen Napsterillä oli miljoonia käyttäjiä ja kaikki näytti lupaavalta. Tilanne muuttui kuitenkin nopeasti. Monet huippuartistit kuten Madonna ja Metallica päättivät haastaa yrityksen oikeuteen tekijänoikeusrikkomuksesta ja Napsterin palvelimet suljettiin pian tämän jälkeen.
Napsterin kanssa samoihin aikoihin kehittyi myös järjestelmä nimeltään BitTorrent, joka loppukäyttäjän kannalta näytti päällisin puolin toimivan samalla tavalla kuin ns. tavalliset ohjelmistot. BitTorrent oli kuitenkin pohjimmiltaan erilainen. Se oli ns. “peer to peer” (ts. vertaisverkko) järjestelmä, jossa tiedostot ladattiin pienissä osissa järjestelmään kuuluvilta “soluilta”, eli muiden käyttäjien tietokoneilta. BitTorrentilla ei siis ollut omia palvelimia ja “omaa koodia”. BitTorrent eli “omaa elämäänsä” jokaisen käyttäjän tietokoneella ja sitä ei voinut pysäyttää sulkemalla jonkun yksittäisen yrityksen palvelinkeskuksen.
Jotkut solut olivat ehkä tehokkaampia, joillain oli enemmän kytköksiä ja joillakin enemmän tietoa kuin toisilla, mutta meillä ei ollut enää yhtä keskittymää jonka sammuttamalla koko järjestelmä pysähtyy. Periaatteessa BitTorrentin tapauksessa meidän pitäisi mennä jokaisen yksittäisen palvelun käyttäjän kotiin tms. tiloihin, ja meidän olisi pysäytettävä ne kaikki erikseen. Hyvin nopeasti ymmärrettiin, että vertaisverkkojen pysäyttäminen on hyvin kallista sekä vaikeaa ja BitTorrent järjestelmiä on käytössä vielä nykypäivänäkin.
Joten takaisin Bitcoiniin. Yksinkertaisesti sanottuna Bitcoin yrittää tehdä rahalle sen, mitä BitTorrent on tehnyt digitaalisen sisällön jakamiselle.
Tässä vaiheessa jotkut saattavat keskittyä siihen, että suuri osa BitTorrentin avulla jaetuista tietodostoista koettin tekijänoikeuslainsäädännön vastaisiksi ja tämä tekee kaikki “peer to peer” -ratkaisut laittomiksi. Todellisuudessa tällainen näkökulma kuuluu luokkaan “Jos joku puukottaa toista veitsellä, kaikki veitset olisi kiellettävä, sillä ihmiset käyttävät veitsiä selkeästi vahingoittamaan muita ihmisiä.” Toisin sanoen, vertaisverkko on vain innovatiivinen teknologia, jota voidaan käyttää moniin tarkoituksiin.
Kuten myös mainitsimme, hajauttaminen ja vertaisverkko eivät ole täysin uutta teknologiaa. Todellisuudessa hajautetut toiminnot liittyvät jo Internetin alkuvaiheisiin, jota alunperin kehitettiin erilaisissa “epävirallisissa” ryhmissä. Tämä asia saattaa usein unohtua, kun tietämättömien sijoittajien rahoja jahtaavat it-yritykset puhuvat maailmaa mullistavasta blockchain-teknologiasta. Peer to peer ei siis syntynyt Bitcoinin mukana. Se on vain yksi luovista teknologioista, jotka mahdollistavat Bitcoinin toiminnan.

Bitcoin ja avoin lähdekoodi
Kun vastaamme kysymykseen “Missä?”, usein ajatellaan ainoastaan laitteistojen fyysistä sijaintia.
Bitcoinin tapauksessa on myös tärkeää kysyä “Missä on Bitcoinin lähdekoodi?”
Tämä esittelee toisen perustavanlaatuisen käsitteen Bitcoinissa, joka on avoin lähdekoodi. Esimerkiksi, kun lataamme keskitetyn yrityksen Microsoftin järjestelmästä itsellemme ohjelmiston, luotamme yritykseen Microsoft. Luotamme siihen, että tämä yritys tekee niin kuin se lupaa. Ja äärimmäisessä tapauksessa voimme esimerkiksi haastaa tämän luotettavan yrityksen oikeuteen, jos jokin menee pieleen. Tämä puolestaan kannustaa Microsoftia pitämään yllä tiettyjä standardeja.
BitTorrentin kaltainen hajautettu järjestelmä on kuitenkin suunniteltu niin, että yhtä oikeudellisesti vastuussa olevaa tahoa ei löydy. Näin ollen emme voi luottaa palveluun kuten BitTorrent. Meidän pitää myös pystyä tarkistamaan, miten tietokoneohjelma kuten BitTorrent varsinaisesti toimii. Tämä tarkoittaa, että on tärkeää, että hajautetut järjestelmät, kuten BitTorrent ja Bitcoin ovat myös ns. avoimen lähdekoodin järjestelmiä.
Avoin lähdekoodi tarkoittaa, että jokainen käyttäjä saa mahdollisuuden tutustua ohjelman lähdekoodiin ja muokata sitä omien tarpeidensa mukaisesti. Näin kaikki käyttäjät voivat itsenäisesti ns. tarkistaa pelin säännöt ja ohjeet. Periaatteisiin kuuluu myös vapaus käyttää tietoja mihin tahansa tarkoitukseen ja kopioida ja levittää sekä alkuperäistä että muokattua versiota. Avoimen lähdekoodin kehittäminen tapahtuu jakamalla ohjelman ja koodin lähde julkisesti kaikille siitä kiinnostuneille. Esimerkkinä maailman suosituimmista avoimmen lähdekoodin projekteista on Linux, jonka päälle on puolestaan rakennettu monien tuntema ohjelmistopino Android.
Tämä tarkoittaa, että kun puhumme Bitcoinista, puhumme “luottamuksettomasta järjestelmästä”. Meidän ei tarvitse luottaa henkilöihin, instituutioihin tai tuotemerkkeihin. Yksikään yritys ei virallisesti edusta Bitcoinia. Meidän on kyettävä varmistamaan, että koodi ja ohjelmisto tekee juuri sen mitä se väittää tekevänsä.
Bitcoinista on monia salaliittoteorioita. Esimerkiksi on olemassa väitteitä, että Bitcoinin louhinnassa toteutetaan oikeasti Yhdysvaltojen kansallinen turvallisuusviraston NSA: n salaisia monimutkaisia laskelmia. Mutta nämä teoriat pystytään osoittamaan nopeasti vääriksi tarkastelemalla avointa lähdekoodia ja näkemällä, mitä “konepellin alla” tapahtuu.

Joten miten koodi, jota kukaan ei hallitse, päivittyy? Miten Bitcoinin kaltaisen järjestelmän kehittäminen ja innovointi toimii ilman keskitettyjä päätöksiä? Tämä on sellainen kysymys, jonka kanssa jopa kaupallisissa IT-yrityksissä työskentelevät kokeneet ohjelmistokehittäjät saattavat painiskella.
Yksinkertaisesti sanottuna projektissa on mukana tietty joukko ihmisiä (lähinnä ohjelmistokehittäjiä ja kryptograafeja). Ryhmän henkilöt sattaavat vaihtua säännöllisen epäsäännöllisesti elmäntilanteen mukaan ja jotkut osallistujat eivät edes koskaan julkista henkilöllisyyttään. He saattavat vain käyttää pseudonyymejä yhteydenpitoon muiden osallistujien kanssa. Heidän identiteettinsä ei ole tärkeä. Vain koodi, jota he kehittävät.
Tällainen ryhmä käyttää myös järjestelmiä kuten Git. Hajautetun lähdekoodin kehitykseen erikoistunutta versionhallintajärjestelmää. Git on järjestelmä, jossa jokainen voi tehdä oman panoksensa koodiin ja jakaa sen kaikkien muiden kanssa. Lopulta sitten käyttäjät päättävät, mitä versiota ohjelmistosta he haluavat käyttää ja kenen panos päätyy suurempaan levitykseen.
Bitcoin on siis hajautettu ohjelmisto. Ei ole olemassa yhtä ainoaa tahoa, jonka kautta se voidaan sulkea. Eikä keskuspalvelinta jonka voisi sammuttaa. Ei ole myöskään virallisia Bitcoin sertifikaatteja. Kaikki voivat itsenäisesti tarkistaa ja yrittää kehittää Bitcoinin lähdekoodia.
Kun puhumme Bitcoinista, emme puhu jostain, johon meidän on luotettava. Puhumme jostain jonka voimme todentaa. Joten missä Bitcoin on? Se pyörii kaikissa sen käyttäjissä.

Suosittelemme lukemaan seuraavaksi: Kuinka Bitcoinia käytetään?