Kas ir dubulto izdevumu problēma?
Dubultā tēriņa problēma ir potenciāla problēma digitālajās skaidrās naudas sistēmās, kurās vieni un tie paši līdzekļi tiek izmaksāti diviem maksājumu saņēmējiem vienlaikus. Bez atbilstošiem pretpasākumiem protokols vien nevar pilnībā atrisināt šo problēmu. Galu galā lietotājiem nav iespējas pārbaudīt, vai viņu saņemtie līdzekļi ir izmaksāti citiem.
Digitālās skaidrās naudas pasaulē ir jānodrošina, lai noteiktu valūtas vienību nevarētu kopēt. Ja Alise varētu saņemt 10 valūtas vienības, nokopēt un ielīmēt tās 10 reizes un pēc tam pašai iegūt 100 valūtas vienības, visa sistēma sabruktu. Tāpat, ja viņa varētu Bobam un Kerolai vienlaikus nosūtīt tās pašas 10 valūtas vienības, arī sistēma nedarbotos. Tāpēc ir jābūt ieviestiem mehānismiem, lai tas nenotiktu, lai nodrošinātu digitālo valūtu pareizu darbību.
Kā novērst dubultu tēriņu problēmu?
Centralizēta pieeja
Centralizētas pieejas ir vieglāk ieviest nekā decentralizētus risinājumus, kuru izmantošanai parasti ir nepieciešams uzraugs, lai pārvaldītu sistēmu un kontrolētu valūtas vienību emisiju un emisiju. Deivida Čauma eCash atrisina dubultu tēriņu problēmu, izmantojot centralizētu pieeju. )
Bankas var izmantot aklos parakstus, lai lietotājiem izsniegtu skaidrai naudai līdzīgus digitālos aktīvus (kas var nodrošināt anonīmus vienādranga darījumus). Tas ir detalizēti aprakstīts kriptogrāfa Deivida Čauma 1982. gada dokumentā "Aklo parakstu metodes neizsekojamiem maksājumiem".
Šādā gadījumā, ja lietotājs Dens vēlas saņemt 100 ASV dolārus digitālā skaidrā naudā, viņam vispirms par to jāpaziņo bankai. Ja viņa kontā ir atlikums, tiks ģenerēts nejaušs skaitlis (vairāk, ja nomināls ir mazāks). Pieņemsim, ka tiek ģenerēti pieci nejauši skaitļi, katrs 20 USD vērtībā. Lai neļautu bankām izsekot konkrētas valūtas vienības, Dens sajauc situāciju, pievienojot katram nejaušam skaitlim apžilbinošo faktoru.
Pēc tam viņš nodeva šos datus bankai, kura no viņa konta atskaitīja 100 ASV dolāru atlikumu un parakstīja ziņojumu, pierādot, ka katrs no pieciem ziņojumiem ir izpērkams par 20 ASV dolāriem. Šobrīd Dan var izmantot bankas izsniegto digitālo skaidru naudu. Viņš devās uz Erinas restorānu ieturēt maltīti un iztērēja 40 USD. )
Dens novērš apžilbinošo faktoru un atklāj ar katru digitālās skaidrās naudas "nozīmi" saistīto nopietnību, kas ir unikāls katras valūtas vienības identifikators (aptuveni līdzvērtīgs sērijas numuram). Viņš atklāj divus nejaušos skaitļus Erīnai, kurai nekavējoties jāsamaina līdzekļi ar banku, lai Dens nevarētu maksāt citiem tirgotājiem. Banka pārbaudīs, vai paraksts ir derīgs, un, ja tas ir pareizs, tā Erinas kontā iemaksās 40 USD.
Pēc tam izlietotās "banknotes" tiek iznīcinātas, un, ja Erīna vēlas tādā pašā veidā izmantot sava konta atlikumu, ir jāizdod vairāk banknošu.
Chaumian eCash mehānisms ir ārkārtīgi vērtīgs privātiem pārskaitījumiem. Tomēr pašam eCash mehānismam nav pretestības, tā kā bankas ir centralizēti mezgli, tad, kad sistēma noiet greizi, cietīs visi. Bankas emitētām banknotēm pašas par sevi nav vērtības; to vērtība pilnībā izriet no bankas gatavības apmainīt banknotes pret ASV dolāriem. Klienti ir pakļauti bankai, un, lai pārvaldītu līdzekļus, viņiem ir jāpaļaujas uz bankas reputāciju. Tieši šo problēmu cenšas atrisināt kriptovalūtas.
Decentralizēta pieeja
Izvairīšanās no dubultu tēriņu problēmas ekosistēmā bez pārraudzības mehānismiem ir vēl grūtāka. Dalībniekiem ar vienādām pilnvarām ir jāsaskaņo viens ar otru saskaņā ar to pašu noteikumu kopumu, lai novērstu krāpšanu un mudinātu visus lietotājus rīkoties godīgi.
Lielākais jauninājums, kas izklāstīts Bitcoin baltajā grāmatā, ir dubulto tēriņu problēmas risinājums. Satoshi Nakamoto ierosināja bezprecedenta datu struktūru, kas tagad pazīstama kā blokķēde.
Blockchain patiešām ir tikai datu bāze ar dažām unikālām īpašībām. Tīkla dalībnieki (saukti par mezgliem) izmanto specializētu programmatūru, kas ļauj viņiem sinhronizēt savas datu bāzes kopijas savā starpā. Tādā veidā viss tīkls var pārbaudīt darījumu vēsturi, kas datēta ar ģenēzes bloku. Tā kā blokķēde ir publiski skatāma, būs vieglāk atklāt un novērst krāpšanu, piemēram, identificēt mēģinājumus dubultot tēriņus.
Kad lietotājs publicē darījumu, tas netiek nekavējoties pievienots blokķēdei, un tas vispirms ir jāatrod, pirms bloku var ielādēt. Tāpēc tikai tad, kad bloks ir ievadīts ķēdē, maksājuma saņēmējs var apstiprināt, ka darījums ir derīgs. Pretējā gadījumā saņēmējs riskēs zaudēt līdzekļus, ja sūtītājs samaksās tādu pašu marķieri citur. )
Kad darījums ir apstiprināts, marķiera īpašumtiesības tiek piešķirtas jaunajam lietotājam un pārbaudītas visā tīklā, tāpēc tokenus vairs nevar iztērēt divreiz. Šī iemesla dēļ daudzi cilvēki iesaka gaidīt vairākus apstiprinājumus pirms derīga maksājuma pieņemšanas. Katrs nākamais bloks ievērojami palielina darba apjomu, kas nepieciešams ķēdes modificēšanai vai pārrakstīšanai (piemēram, 51% uzbrukuma gadījumā).
Atgriezīsimies pie restorāna situācijas. Dens atgriezās restorānā un šoreiz pamanīja uzlīmi uz loga ar uzrakstu "Šis veikals atbalsta Bitcoin maksājumu". Viņš nevarēja aizmirst savu pēdējo maltīti un pasūtīja to pašu ēdienu vēlreiz, maksājot 0,005 Bitcoins. )
Erīna parāda Danam publisko adresi, kas ir pārsūtīšanas adrese. Dana paziņojums par darījumu būtībā ir parakstīts ziņojums, kurā tiek paziņots, ka viņam piederošie 0,005 Bitcoini tagad pieder Erinam. Neiedziļinoties detaļās, ikviens, kurš redz Dana parakstīto darījumu, var apstiprināt, ka žetoni patiešām ir viņa, un tāpēc Danam ir tiesības tos nosūtīt.
Tomēr, kā jau minēts iepriekš, darījums ir spēkā tikai pēc ielādes blokā un apstiprināšanas. Neapstiprināta darījuma saņemšana līdzinās iepriekšējai e-skaidras naudas saņemšanai 40 ASV dolāru apmērā. Tāpēc Erīnai ir jāgaida vismaz 6 bloka apstiprinājumi (apmēram viena stunda), pirms pieņem maksājumu no Dan.
Bitcoin dubultā tēriņu problēma
Bitcoin ir rūpīgi izstrādāts, lai novērstu dubultu tēriņu uzbrukumus, vismaz tad, ja protokols tiek izmantots, kā paredzēts. Tas ir, ja kāds gaida darījumu, lai saņemtu bloka apstiprinājumu, sūtītājs nevarēs viegli atsaukt darījumu. Tikai “apgriežot” blokķēdi, var atsaukt darījumu, kas prasa milzīgu jaukšanas jaudu.
Tomēr daži dubultu tēriņu uzbrukumi ir īpaši vērsti uz lietotājiem, kuri pieņem neapstiprinātus darījumus. Piemēram, veicot nelielus pirkumus, tirgotāji nevēlas gaidīt, kamēr darījums tiks iekļauts blokā. Aizņemti ātrās ēdināšanas restorāni, iespējams, nevarēs gaidīt tik ilgi, cik tīklam nepieciešams katra darījuma apstrāde. Tāpēc, ja tirgotājam ir iespējoti "tūlītējie" maksājumi, viņš var saskarties ar dubultu tēriņu problēmu. Kāds var pasūtīt burgeru un samaksāt par to, pēc tam nekavējoties nosūtīt tos pašus līdzekļus atpakaļ uz savu adresi. Kamēr vēlākā darījuma apstrādes maksa ir augstāka, tā var tikt apstiprināta vispirms, izraisot iepriekšējā darījuma spēkā neesamību.
Pašlaik ir trīs izplatīti dubultu tēriņu uzbrukumi:
51% uzbrukums: vienai entītijai vai organizācijai izdodas kontrolēt vairāk nekā 50% no jaukšanas ātruma, lai dzēstu vai mainītu darījumu secību. Šāda veida uzbrukums ir ārkārtīgi maz ticams, ka tas notiks Bitcoin tīklā, taču tas ir noticis citos tīklos.
Sacensību uzbrukums: tiek publicēti divi konfliktējoši darījumi pēc kārtas, izmantojot vienus un tos pašus līdzekļus, bet tiek apstiprināts tikai viens darījums. Uzbrucēja mērķis ir padarīt nederīgu citu maksājumu, apstiprinot darījumu viņam par labu. Piemēram, sūtot līdzekļus uz viņa kontrolēto adresi. Sacensību uzbrukums parasti ir saistīts ar to, ka saņēmējs pieņem neapstiprinātu darījumu kā maksājumu.
Finney uzbrukumi: uzbrucējs iepriekš veic darījumu un ievieto to blokā, bet nekavējoties nepublicē to tīklā. Tā vietā viņš samaksāja to pašu marķieri citā darījumā, pirms publicēja iepriekš iegūto bloku, tādējādi padarot maksājumu par nederīgu. Fenney uzbrukumam nepieciešamie nosacījumi ir, lai notikumi notiktu noteiktā secībā, un veiksme ir atkarīga arī no tā, vai saņēmējs pieņem neapstiprināto darījumu.
Kā redzam, tirgotāji var ievērojami samazināt savu risku un izvairīties no dubulto izdevumu upuriem, vienkārši pacietīgi gaidot bloka apstiprinājumus.
Apkopojiet
Lietotāji var izmantot dubultu tēriņu uzbrukumus, lai manipulētu vienādranga elektroniskās kases sistēmās un izmantotu vienus un tos pašus līdzekļus vairākas reizes, lai meklētu netaisnīgus ienākumus. Agrāk, tā kā šī problēma bija labi jārisina, šīs jomas attīstība ir bijusi apstājusies.
Par laimi, aklo parakstu izmantošana ir kļuvusi par uzmanību piesaistošu risinājumu centralizētajos finanšu risinājumos. Pēc tam, attīstoties darba pierādījuma mehānismam un blokķēdes tehnoloģijai, radās Bitcoin, spēcīgs decentralizētas valūtas veids, kas savukārt sniedza iedvesmu tūkstošiem kriptovalūtu projektu.

