Sarežģītība

Sarežģītākas tēmas

Kas ir sarežģītība?

Kriptovalūtu nozarē ar terminu "sarežģītība" apzīmē piepūli, kāda nepieciešama, lai iegūtu vienu bloku. Darba apliecinājuma (PoW) blokķēdēs tiek ievesti noteikumi, kuru rezultātā sarežģītība palielinās vai samazinās atkarībā no jaukšanas jaudas tīklā. Tas tiek darīts, lai nodrošinātu, ka bloki netiek izveidoti pārāk ātri, un lai uzturētu tīkla drošību.
Piemēram, Bitcoin tīklā noteiktais bloka izveides laiks ir aptuveni desmit minūtes (vidējais laiks, kādā tiek atrasts jauns bloks). Ja bloki tiek iegūti pārāk ātri, tīkls palielina sarežģītību, tādējādi pazeminot ieguves mērķa slieksni.

Turpretī, ja bloku atrašana aizņem pārāk ilgu laiku, sarežģītība tiek samazināta, paaugstinot mērķa vērtību. Mērķa vērtība ir skaitlis, kas periodiski tiek atiestatīts. Lai sekmīgi iegūtu bloku, ieguvējam jāatrod jaucējvērtība, kas ir mazāka par šo skaitli.

Kā darbojas ieguve: vienkāršots piemērs

Apskatīsim vienkāršu piemēru. Pieņemsim, ka mums ir termins "binance" un mēs vēlamies iegūt SHA256 jaucējvērtību, kuras izvades rezultāts būtu skaitliski mazāks par noteiktu mērķa vērtību, kas aptuveni atbilst jaucējvērtībām, kas heksadecimālajā formā sākas ar noteiktu skaitu nuļļu.

Reālajā dzīvē ieguvēji cenšas atrast jaucējvērtību, kas ir mazāka par mērķa skaitli, kas ir ļoti liels skaitlis 256 bitu formātā. To varam ilustrēt, iteratīvi pievienojot skaitļus vārdam "binance" (piem., "binance1", "binance2", "binance3") un atkārtojot jaukšanas darbību, līdz jaucējvērtības izvades dati atbilst kādam vienkāršotam kritērijam, piemēram, sākas ar nullēm.

Kad nonāksim līdz "binance10", mums tas būs izdevies. Ja vēlamies, lai pirmās divas rakstzīmes būtu "0", jaukšana jāturpina līdz "binance99". Lai iegūtu trīs nulles, mums jaukšana jāveic līdz "binance458". Bet kā ar četrām nullēm? No pirmajiem divdesmit miljoniem skaitļu mēs neiegūsim šādu rezultātu.

Tam vajadzētu sniegt priekšstatu par to, kā darbojas ieguve – vienīgā atšķirība ir tajā, ka ieguvēji mēģina atrast skaitli, kas ir mazāks par mērķa vērtību. Jo mazāks ir mērķa skaitlis, jo grūtāk ir atrast risinājumu, tāpēc Bitcoin patērē tik daudz skaitļošanas jaudas. Ieguvēji atkārtoti veic jaukšanas darbības ar vienas un tās pašas informācijas variācijām, lai atrastu derīgu jaucējkodu.

Sarežģītības pielāgošana

Bitcoin pielāgo ieguves sarežģītību ik pēc aptuveni 2016 blokiem (apmēram reizi divās nedēļās), lai nodrošinātu vidējo bloka izveides laiku – 10 minūtes. Šī pielāgošana ir balstīta uz to, cik ilgs laiks bijis nepieciešams, lai iegūtu pēdējos 2016 blokus. Ja bloki tika iegūti ātrāk, nekā paredzēts, sarežģītība palielina, lai padarītu ieguvi grūtāku. Ja ieguves process ir bijis lēnāks, sarežģītība tiek samazināta, lai padarītu ieguvi vieglāku.

Ieguves aparatūras attīstība

Tā kā Bitcoin ieguve ir tik sarežģīta, ieguvēji jau sen ir atteikušies no parastajiem datoriem un grafiskajām kartēmm dodot priekšroku īpaši izstrādātai aparatūrai – t. s. ASIC (specifiska lietojuma integrētās shēmas). 

Ieguve ir kļuvusi par industriāla mēroga darbību, kurā dominē lielas ieguves "fermas" ar specializētu aprīkojumu, atspoguļojot konkurenci un pieaugošo sarežģītību tīklā.

Ne visas kriptovalūtas izmanto PoW

Jāpiebilst, ka ne visas kriptovalūtas izmanto PoW mehānismu un ne visām ir raksturīga ieguves sarežģītība. Piemēram, Ethereum pārgāja uz likmes apliecinājuma (PoS) konsensa mehānismu, kuram nav nepieciešama ieguve vai sarežģītības pielāgošana.

Noslēgumā

Sarežģītība ir dinamisks parametrs, kas uztur PoW blokķēdes drošas un stabilas, regulējot to, cik daudz skaitļošanas darba ir nepieciešams, lai iegūtu jaunus blokus. Tā pielāgojas tīkla jaukšanas jaudas izmaiņām, lai uzturētu vienmērīgu bloku izveides tempu, nodrošinot blokķēdes konsekventu darbību.