Öryggi Bitcoin tryggt með stærðfræði að vopni

Öryggi Bitcoin er tryggt með nokkrum undirstöðu atriðum stórra talna, dulritun upplýsinga og leikjafræði.

Persónulegir lyklar og reikningsnúmer:

Hvert reikningsnúmer í veski Bitcoin er bundið svokölluðum persónulegum lykli. Persónulegi lykilinn nýtir dulritunar tækni, sem er þeim eiginleikum búin að með lyklinum er hægt að búa til reikningsnúmer, sem eru opinber en ekki er hægt að reikna til baka og komast að því hver persónulegi lykilinn er. Reikningsnúmerin eru því opinber og sýnileg öllum en ekki er hægt að nýta þau nema hafa persónulegan lykil reikningsnúmersins til að senda Bitcoin. 

Persónulegi lykilinn er í raun bara stór tala, 2256 þ.e. tala á bilinu 1 og 1077, (1 með 77 núllum fyrir aftan). Þessi tala er það stór að hún nálgast fjölda atóma í sólkerfinu eða allra stjarnanna í himninum. Það verkefni að giska á persónulegan lykil reikningsnúmers er í raun ómögulegt. Auðveldara væri að telja öll sandkornin á jörðinni heldur en að finna einn persónulegan lykil fyrir tilviljun. Því er ógjörningur að komast yfir persónulega lykla þó svo einbeittur vilji sé fyrir því að finna slíka lykla.

Dulritunin sem Bitcoin nýtir byggir á þekktri dulritunartækni, “Public- Private key Encryption”, sem er nýtt til að búa til reikningsnúmer. Tæknin nýtir stærðfræðilega eiginleika ellipsu fallsins, sem er í raun stærðfræðilegur einstefnu hleri (trapdoor). Hlerinn virkar þannig að sett er inn í ellipsu fallið tala, persónulegi lykillinn og út reiknast önnur tala, reikningsnúmer Bitcoin, sem er háð upphaflega gildinu en ekki er hægt að fara til baka og finna upphaflega gildið. Einnig eru þessar stóru 1077 tölur “ruglaðar” með “hashing SHA-256”, til að þjappa saman tölustöfunum í reikningsnúmerum og persónulegu lyklunum. Reikningsnúmerum er með þessum hætti er þjappað niður í 34 stafa runu t.d. “1JRftrqDgBRCVLPf2k4MecwGKLDcC3yfpi”.

Þess ber að geta að ef að þessi tækni sem notuð er í Bitcoin er hökkuð eða það finnst veikleiki í þessari dulritunartækni er Bitcoin ekki aðal veikleikinn heldur öll önnur tækni sem nýtir dulritun t.d. öll bankaviðskipti, netbankar, símtöl og fjarskipti, gagnabankar og öll net samskipti í heiminum.

Millifærslur

Bitcoin notar þessa þekktu dulritunartækni og samspil persónulegra lykla og reikningsnúmera á þann hátt að til að móttaka Bitcoin er hægt að fá sendar Bitcoin einingar á opinbert reikningsnúmer í veski viðtakanda. Til að senda Bitcoin einingar úr veski þarf hinsvegar að votta sendinguna með persónulega lyklinum, sem tryggir eignarhald Bitcoin.

Leikjafræði og námuvinnsla:

Tilgangur námuvinnslunnar er að halda utan um millifærslur og að tryggja að allir notendur hafi sama eintak af millifærslusögunni. Til að ná þessu markmiði er innbyggt í greiðslumiðlunarkerfi Bitcoin ákveðin samkeppni í reiknigetu ásamt utanumhaldi á millifærslum. Samkeppnin er þannig útfærð að greiðslumiðlunarnetið býr til þraut, sem gengur út á að örgjörvar tölva þurfa í sífellu að giska á lausn þrautarinnar, meðan þeir safna saman millifærslum frá síðustu blokk. Þegar ein tölvan finnur lausnina á þrautinni pakkar hún inn öllum millifærslum, sem hún hefur fundið og sendir svarið við þrautinni ásamt bokk með staðfestum millifærslum út á netið. Allir sem sinna greiðslumiðlun sjá að lausnin er fundin og staðfesta að svo sé. Tölvan sem fann lausnina fær verðlaun í formi Bitcoin og allar þóknanir sem fylgdu með millifærslum frá síðustu blokk. Allar millifærslur sem þessi tölva skráði með lausninni á þrautinni eru nú staðfestar og partur af nýjustu blokkinni í Bitcoin blokkarkeðjunni. Allar tölvur í netkerfinu hlaða niður þessu eintaki af nýjustu blokkinni og samkeppni hefst um að finna lausnina á næstu blokk. 

Nánar um námuvinnslu:

Ef tvær tölvur finna á sama tíma lausn á þrautinni myndar greiðslumiðlunarkerfið tvær keðjur. Til að leysa þetta vandamál er samkeppni aftur lausnin, þar sem í greiðslumiðlunarkerfinu er innbyggt að rétta blokkarkeðjan er sú lengsta. Þetta þýðir að ef svona klofningur myndast varir hann einungis í skamma stund, þar sem nú hefst samkeppni milli tölvanna sem fylgja klofningskeðju A á móti klofningskeðju B. Sú tölva sem finnur næstu lausn þrautarinnar hvort sem hún fylgir klofningskeðju A eða B ákveður í raun hvor klofningskeðja A eða B verður lengri, sem skilgreinir hvaða keðja telst hin rétta klofningskeðja. Til dæmis ef næsta blokk sem finnst í greiðslumiðlunarkerfinu er í klofningskeðju B velur kerfið að klofningskeðja B sé rétta keðjan, þar sem hún er nú orðin lengri og allir aðilar í greiðslumiðlunarkerfinu eyða keðju A. Þess ber að geta að munurinn á keðju A og B var sennilega enginn, þ.e. allar sömu millifærslurnar voru í báðum keðjum.

Eini veikleiki greiðsludreifingarkerfisins er sá að ef einn aðili hefur yfir að ráða 51% af öllu reikniafli kerfisins, gæti sá hinn sami reynt að eyða tvisvar sömu myntinni eða bakfært viðskipti. Þessi aðili gæti greitt fyrir vöru með Bitcoin, síðan notað allt reikniaflið sitt til að yfirtaka netkerfið og bakfæra sína færslu. Við að gera slíka árás á netkerfið býr þessi óprúttni aðili til klofningskeðju, þar sem það eru ekki sömu millifærslur í hans klofningskeðju m.v. almennu keðjuna. Því verður öllum samstundis ljóst að blokkarkeðju myntarinnar hefur verið breytt. Ef þetta kæmi upp myndi það verðfella myntina samstundis, sem dregur stórlega úr högnunarmöguleikum af því að reyna slíkt svindl.

Lausnin á þessu vandamáli felst í verðlaunafénu sem námuvinnslan fær greitt. Því að ef að einhver hefur yfir að ráða 51% af reikniafli greiðslumiðlunarkerfisins fær hann líka helming alls verðlaunafjársins. Því er það í raun græðgi og persónulegur hagur viðkomandi að vinna heiðarlega, þar sem hann fær meiri ávinning af því að vera heiðarlegur en að reyna að svindla.

Það einmitt líka leikjafræði og græðgi sem tryggir öryggi millfærslan í greiðsludreifingarkerfinu í réttu hlutfalli við verðmæti myntarinnar. Ástæðan er einföld, ef virði myntarinnar hækkar verður verðlauanféð verðmætara og samkeppni eykst um að ná færsluhirðingunni, þ.e. meira reikniafli er varið í að verja myntina. Því má með sanni segja að eftir því sem myntin er verðmætari því mun öruggari er hún.

Þóknanir við greiðsluhirðingu

Samkeppni um færsluhirðinguna er opin öllum, þar sem hver sem er getur hafið námuvinnslu og því mun samkeppni á þessum opna markaði halda þóknunum mjög lágum. 

Hægt er að senda Bitcoin um greiðslumiðlunarkerfið án þess að greiða þóknun. Það eina sem gerist er að námuvinnsla forgangsraðar færslum í næstu blokk sem hafa greitt þóknun. Þegar samanlagðar færslur í eina blokk ná hámarksstærð, t.d. 1 Mb fyrir BTC, bíða umfram færslur eftir næstu blokk til að öðlast staðfestingu af greiðslumiðlunarnetinu. Þóknunin er því einungis nauðsynleg til að tryggja að millifærslan öðlist forgang og komist inn í næstu blokk. Þó svo greiða þurfi þóknanir fyrir millifærslur eru þær mjög lágar og eru óháðar upphæðinni sem er millifærð.

Önnur ástæða fyrir því að millifærslum fylgir kostnaður er til að koma í veg fyrir óþarfa millifærslur “spam” í greiðslumiðlunarnetinu. Ef kostnaður væri enginn við millifærslur mætti búast við að óprúttnir aðilar sæju hag sinn í því að senda fram og til baka tilgangslausar millifærslur einungis til að tefja netið og auka kostnað við námuvinnslu.