Plokiahela struktuur
**Plokiahel** (ingl *blockchain*) on hajusandmebaas, mille andmete uuendamine toimub läbi matemaatilise konsensuse saavutamise algoritmi. Sisuliselt on see kasvav loend kirjetest ehk plokkidest, mis on krüptograafiat kasutades omavahel seotud. Iga plokk sisaldab eelmise krüptograafilist räsi, ajatemplit ning tehingu andmeid.

Plokiahel on konstrueeritud tõkestama andmete muutmist. See on "avatud hajusraamat (ingl *distributed ledger*), mis võimaldab kahe osapoole vahelisi tehinguid tõhusalt, kontrollitavalt ja püsivalt salvestada". Hajusraamatuna haldab plokiahelat üldiselt partnervõrk, mis järgib kollektiivselt sõlmedevahelise kommunikatsiooni protokolli ja valideerib uusi plokke. Ühegi salvestatud ploki andmeid ei saa tagasiulatuvalt muuta ilma kõiki järgnevaid plokke muutmata ja võrgu enamuse konsensust saavutamata.

Plokiahela leiutas Satoshi Nakamoto 2008. aastal avaliku arvestusraamatuna krüptorahale *bitcoin*. Plokiahela loomine *bitcoin*'ile tegi sellest esimese digitaalse valuuta, mis lahendas nn kordusmakse (ingl *double-spending*) probleemi selleks usaldusväärset autoriteeti või keskserverit vajamata.

Eestis on plokiahelaalased väljatöötused ajalooliselt järgnenud ajatempliteenuse kasutuselevõtule ning sellealase tegevusega on seotud AS Guardtime.

Struktuur
---------

Plokiahel on detsentraliseeritud, hajutatud ja avalik digitaalne arvestusraamat, mida kasutatakse tehingute dokumenteerimiseks läbi paljude arvutite nii, et kirjeid ei ole võimalik tagantjärele muuta ilma kõiki järgnevaid plokke muutmata ja võrgu konsensust saavutamata. See võimaldab osapooltel tehinguid efektiivselt kontrollida ja kinnitada.

### Plokid

Plokid sisaldavad korrektseid tehinguid, mis räsitakse ja kodeeritakse Merkle'i puusse. Igas plokis on krüptograafiline räsi eelmisest plokist, sidudes need omavahel ja moodustades ahela. See iteratiivne protsess tagab iga eelneva ploki terviklikkuse kuni juurplokini välja.

#### Plokiaeg

Plokiaeg on keskmine aeg, mis kulub võrgul plokiahelasse uue ploki genereerimiseks. Ploki valmimise ajaks muutuvad selles sisalduvad andmed verifitseeritavaks. Kuna krüptoraha puhul on see ühtlasi tehingu toimumise hetkeks, tähendab lühem plokiaeg kiiremaid tehinguid. Ethereumi plokiajaks on määratud 14–15 sekundit, *bitcoin* genereerib uue ploki iga 10 minuti tagant.

### Detsentralisatsioon

Salvestades andmeid partnervõrgu kaudu, kõrvaldab plokiahel mitmed andmete keskse säilitamisega seotud ohud. Sellisel plokiahela süsteemil puuduvad tsentraliseeritud haavatavad punktid, mida kräkkerid saaksid ära kasutada. Sarnaselt puudub süsteemis keskne rikkepunkt.

Plokiahelate tüübid
-------------------

Plokiahela seni parim eestikeelne kirjeldus koos seni puudunud terminoloogiaga on esitatud Riigi Infosüsteemi Ameti tellitud ning AS Cybernetica koostatud järjekordses uuringus sarjast "Krüptograafiliste algoritmide elutsükli uuring". Selles uurimuses jaotatakse plokiahelasüsteemid kolme põhikategooriasse:

1. tsentraalsed süsteemid, kus arvestusraamatut haldab keskse teenusena üks juriidiline isik (nt Guardtime'i süsteem);
2. loalised hajusraamatud (ingl *permissioned ledgers*), kus lepingu või muu õigusakti alusel võib teenust osutata mitu fikseeritud osapoolt (nt Ripple, Sovrin);
3. loatud hajusraamatud (ingl *permissionless ledgers*), kus teenuse halduriks võib üldiselt hakata igaüks (nt *bitcoin*, Ethereum).

Viited
------

1. ↑  Asse Sauga. "Plokiahelast maakeeli" (eesti keeles). Originaali arhiivikoopia seisuga 28.02.2018. Vaadatud 04.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
2. 1 2 3 4  Economist. "Blockchains: The great chain of being sure about things" (inglise keeles). Vaadatud 04.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
3. ↑  Marco Iansiti, Karim R. Lakhani. "The truth about blockchain" (inglise keeles). Vaadatud 04.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
4. 1 2  Arne Ansper, Ahto Buldas, Jan Willemson. "Krüptograafiliste algoritmide elutsükli uuring 2017" (PDF) (eesti keeles). Originaali (PDF) arhiivikoopia seisuga 23.07.2018. Vaadatud 04.11.2018.`{{netiviide}}`: CS1 hooldus: mitu nime: autorite loend (link) CS1 hooldus: tundmatu keel (link)
5. ↑  Jack Filiba. "Double Spending: How Bitcoin Overcame this Head-Scratching Problem" (inglise keeles). Vaadatud 27.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
6. ↑  Hans Lõugas. "Oma ajast eest: Eesti firma Guardtime viib andmete valvamise töö inimeselt matemaatikale" (eesti keeles). Vaadatud 27.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
7. ↑  Stephen Armstrong. "Move over Bitcoin, the blockchain is only just getting started" (inglise keeles). Vaadatud 27.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
8. ↑  Antonio Madeira. "Why is Ethereum different to Bitcoin?" (inglise keeles). Originaali arhiivikoopia seisuga 3.11.2018. Vaadatud 04.11.2018.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)

Välislingid
-----------

|  |  |
| --- | --- |
|  | Tsitaadid Vikitsitaatides: **Plokiahel** |

* Eesti e-teenusega tehti ajalugu: arendajad leidsid viisi ID-kaardi kasutamiseks plokiahelas, Geenius, 25. september 2018