Ievads
Darba apliecinājums bija pats pirmais konsensa algoritms, un tas joprojām ir dominējošais. Tas sākotnēji tika aprakstīts 2008. gadā Satoshi Nakamoto publicētajā Bitcoin tehniskajā dokumentācijā, taču pati tehnoloģija radās daudz agrāk.
Viens no agrīnajiem darba apliecinājuma algoritma piemēriem pirms kriptovalūtu rašanās ir Adama Beka "HashCash" . Sūtītājiem pieprasot veikt nelielu skaitļošanas uzdevumu pirms e-pasta ziņojuma nosūtīšanas, saņēmēji varētu izvairīties no surogātpasta. Parastam sūtītājam šāda skaitļošana neizmaksātu dārgi, taču masveida e-pastu sūtītājiem izmaksas strauji vien pieaugtu.
Kas ir dubultie tēriņi?
Dubultie tēriņi rodas, kad vieni un tie paši līdzekļi tiek iztērēti vairāk nekā vienu reizi. Šo terminu izmanto tikai digitālās naudas kontekstā – galu galā būtu visai grūti divreiz iztērēt vienas un tās pašas skaidrās naudas vienības. Mūsdienās, maksājot par kafiju, tu iedod kasierim skaidro naudu, kas, visticamāk, tiek ievietota kases aparātā. Tu nevari pēc tam aiziet uz kafejnīcu otrā ielas pusē un samaksāt par vēl vienu kafiju ar to pašu naudu.
Savukārt digitālās naudas sistēmā šāda iespējamība teorētiski pastāv. Tu noteikti esi kādreiz veidojis datora failu kopiju – tu to vienkārši nokopē un ielīmē. Tu vari nosūtīt vienu un to pašu e-pastu desmit, divdesmit vai pat piecdesmit adresātiem.
Tā kā digitālā nauda pēc būtības ir dati, jānodrošina, lai tās lietotāji nevarētu nokopēt un nosūtīt vienas un tās pašas naudas vienības dažādiem adresātiem. Pretējā gadījumā šāda valūtas sistēma ātri vien sabruks.
Kāpēc ir nepieciešams darba apliecinājums?
Tagad mums ir iespēja izsekot naudas vienībām. Ja Kārlis mēģinās veikt vēl vienu darījumu, izmantojot tās pašas vienības, ko viņš nupat nosūtīja Lienei, visi to uzreiz varēs redzēt. Šī grupa neļaus ierakstīt tādu darījumu piezīmju grāmatiņā.
Tas varētu labi darboties nelielā grupā. Visi viens otru pazīst, tāpēc var vienoties par to, kurš no draugiem ierakstīs darījumus piezīmju grāmatiņā. Bet ko darīt 10 000 dalībnieku grupā? Ideja par piezīmju grāmatiņu nešķiet piemērota, jo neviens nevēlēsies uzticēt svešiniekam darījumu reģistrēšanu.
Šajā situācijā risinājums ir darba apliecinājums. Tas nodrošina, ka lietotāji nevar iztērēt naudu, kuru viņiem nav tiesību tērēt. Izmantojot spēļu teorijas un kriptogrāfijas kombināciju, PoW algoritms ļauj jebkuram atjauninināt blokķēdes datus atbilstoši sistēmas noteikumiem.
Kā darbojas PoW?
Šajā gadījumā kā piezīmju grāmatiņa darbojas blokķēde. Taču mēs nepievienojam darījumus pa vienam – tie tiek apvienoti blokos. Mēs paziņojam par darījumiem tīklā, un pēc tam lietotāji, kuri veido blokus, iekļauj šos darījumus potenciālajā blokā. Darījumi tiks atzīti par derīgiem tikai tad, kad attiecīgais potenciālais bloks tiks apstiprināts, proti, pievienots blokķēdei.
Ir praktiski neiespējami noskaidrot sākotnējos ievades datus, izmantojot bloka jaucējkodu. Tomēr, zinot ievades datus, var pavisam vienkārši pārliecināties, ka jaucējkods ir pareizs. Vienkārši ir jāpalaiž attiecīgā funkcija, izmantojot šos ievades datus, un jāpārbauda, vai rezultāts ir tāds pats.
Darba apliecinājuma sistēmā tev jāiesniedz dati, kuru jaucējkods atbilst noteiktiem nosacījumiem. Taču tev nav zināms, kā tos iegūt. Vienīgā iespēja ir piemērot datiem jaukšanas funkciju, pārbaudot rezultāta atbilstību nosacījumiem. Neatbilstības gadījumā dati būs nedaudz jāpamaina, lai iegūtu atšķirīgu jaucējkodu. Pamainot datos pat vienu rakstzīmi, tiks iegūts pilnīgi atšķirīgs rezultāts, tāpēc nav iespējams paredzēt iznākumu.
Rezumējot – ieguve ir process, kurā blokķēdes dati tiek apkopoti un jaukti kopā ar vienreizējo kodu, līdz tiek atrasts noteikts jaucējkods. Ja tev izdodas atrast jaucējkodu, kas atbilst protokola izvirzītajiem nosacījumiem, tu iegūsti tiesības pārraidīt jauno bloku tīklā. Šajā brīdī visi pārējie tīkla dalībnieki atjaunina savas blokķēdes, iekļaujot tajās šo jauno bloku.
Lielākajām mūsdienu kriptovalūtām šos nosacījumus ir ārkārtīgi grūti izpildīt. Jo lielāka ir jaukšanas jauda tīklā, jo grūtāk ir atrast derīgu jaucējkodu. Tas tiek darīts, lai nodrošinātu, ka blokus nevar atrast pārāk ātri.
Kā jau vari iztēloties, mēģinājumi uzminēt lielus jaucējkodu apjomus, izmantojot savu datoru, varētu izmaksāt ļoti dārgi. Tu tērētu skaitļošanas resursus un elektrību. Taču protokols atalgotu tevi ar kriptovalūtu gadījumā, ja tev izdotos noskaidrot derīgu jaucējkodu.
Apkoposim līdz šim noskaidroto.
- Ieguve izmaksā dārgi.
- Par derīga bloka izveidi tu saņem atlīdzību.
- Zinot ievades datus, lietotājs var viegli pārbaudīt jaucējkoda pareizību – lietotāji, kuri neveic ieguvi, var pārbaudīt bloka derīgumu, neiztērējot daudz skaitļošanas jaudas.
Tiktāl viss ir saprotams. Bet kas notiktu, ja tu mēģinātu krāpties? Kas var tevi atturēt no krāpniecisku darījumu iekļaušanas blokā un derīga jaucējkoda iegūšanas?
Jebkuru bloku, kurā ir kaut viens nederīgs darījums, tīkls automātiski noraidīs. Pat mēģinājums krāpties izmaksās ļoti dārgi. Tu iztērēsi savus resursus bez nekādas atlīdzības.
Vēlies sākt izmantot kriptovalūtas? Pērc Bitcoin platformā Binance!
Darba apliecinājums un likmes apliecinājums
Tajā pat laikā PoS algoritms līdz šim ir daudz mazāk pielietots nekā PoW. Lai arī ieguve tiek uzskatīta par izšķērdīgu procesu, tas ir vienīgais konsensa algoritms, kas ir apliecinājis savu efektivitāti plašā mērogā. Nedaudz vairāk nekā desmit gadu laikā tas ir spējis nodrošināt darījumus triljoniem dolāru vērtībā. Lai varētu ar pārliecību nospriest, vai PoS ir uzskatāms par cienīgu konkurentu drošības jomā, steikinga sistēma ir pienācīgi jāpārbauda praksē.
Noslēgumā
Darba apliecinājums bija sākotnējais risinājums dubulto tēriņu problēmai, un tas ir apliecinājis sevi kā drošu un uzticamu mehānismu. Bitcoin pierādīja, ka vienu un to pašu līdzekļu vairākkārtējas tērēšanas novēršanai nav nepieciešama centralizēta iestāde. Atjautīgi izmantojot kriptogrāfiju, jaukšanas funkcijas un spēļu teoriju, dalībnieki decentralizētā vidē var vienoties par finanšu datubāzes stāvokli.