Kriptovalūtu jaukšanas un CoinJoin darījumu skaidrojums
Saturs
Ievads
Kas ir kriptovalūtu jaukšana?
Kas ir CoinJoin?
Kā darbojas CoinJoin?
Privātums caur noliedzamību
Noslēgumā
Kriptovalūtu jaukšanas un CoinJoin darījumu skaidrojums
SākumsRaksti
Kriptovalūtu jaukšanas un CoinJoin darījumu skaidrojums

Kriptovalūtu jaukšanas un CoinJoin darījumu skaidrojums

Vidēji sarežģītas tēmas
Publicēts Mar 25, 2020Atjaunināts Feb 23, 2022
5m

Ievads

Bitcoin bieži vien dēvē par digitālo naudu, tomēr tas ir apšaubāms salīdzinājums. Ja Alise samaksā Kārlim desmit dolārus skaidrā naudā, Kārlim nav ne jausmas, kā šī nauda ir iegūta. Ja Kārlis izlems iedot šo naudu Lienei, viņa nevarēs izsecināt, ka nauda kādreiz piederēja Alisei.
Bitcoin gadījumā ir citādi, jo ar to veiktie darījumi ir publiski. Konkrētas kriptovalūtas vienības vēsturi (precīzāk, neiztērēto darījuma atlikumu jeb UTXO) var redzēt jebkurš. Tas līdzinās darījuma summas un dalībnieku vārdu rakstīšanai uz banknotes katru reizi, kad tā tiek izmantota. 
Tajā pat laikā publisko adrešu pseidonimitāte nodrošina, ka lietotāju identitāti nevar vienkārši atklāt. Tomēr Bitcoin nav pilnīgi privāta valūta. Blokķēdes analīzes paņēmieni arvien attīstās un spēj arvien efektīvāk sasaistīt adreses ar konkrētu personu identitāti. Papildus citām novērošanas metodēm kriptovalūtas lietotājus var identificēt arī īpaši tam paredzētas organizācijas. Lai to risinātu, gadu gaitā ir izstrādāti paņēmieni, kas ļauj dzēst darījumu sasaisti.


Kas ir kriptovalūtu jaukšana?

Vispārīgi izsakoties, kriptovalūtu jaukšana var būt jebkura darbība, kas ietver datu par līdzekļiem maskēšanu, aizstājot tos ar citiem. Tomēr kriptovalūtu pasaulē ar kriptovalūtu jaukšanu parasti saprot trešās personas sniegtu pakalpojumu. Parasti šādi pakalpojumu sniedzēji paņem lietotāju kriptovalūtu (iekasējot nelielu komisijas maksu) un pēc tam atgriež lietotājam citas kriptovalūtas vienības, kurām vairs nav nekādas saistības ar iepriekš nosūtītajām. Šos pakalpojumus sauc arī par maisītājiem jeb jaucējiem.

Šādu centralizētu pakalpojumu drošība un anonimitāte, protams, ir apšaubāma. Lietotājiem nav nekādu garantiju, ka "jaucējs" atgriezīs viņiem naudu vai ka atgrieztā kriptovalūta nebūs kaut kādā veidā "iezīmēta". Izmantojot jaukšanas pakalpojumu, jāpatur prātā arī tas, ka trešā persona var reģistrēt IP un Bitcoin adreses. Galu galā lietotāji atsakās no kontroles pār saviem līdzekļiem cerībā, ka saņems atpakaļ nesaistītus aktīvus.

Iespējams, interesantāka pieeja ir CoinJoin darījumi, kas rada ievērojamas pakāpes ticamu noliedzamību. Tas nozīmē, ka pēc CoinJoin nekādi pierādījumi nevar pārliecinoši saistīt lietotāju ar viņa iepriekšējiem darījumiem. Daudzi CoinJoin risinājumi nodrošina decentralizētu alternatīvu "jaucējiem". Lai arī procesā var būt iesaistīts koordinators, lietotājiem nav jānodod savi līdzekļi glabāšanā citai personai.


Kas ir CoinJoin?

CoinJoin darījumus 2013. gadā sākotnēji aprakstīja Bitcoin izstrādātājs Gregorijs Maksvels. Savā publikācijā viņš sniedza īsu pārskatu par šādu darījumu struktūru un milzīgajiem privātuma ieguvumiem, ko tādi sniegtu, neveicot nekādas izmaiņas protokolā.
Būtībā CoinJoin ietver vairāku lietotāju ievades datu apvienošanu vienā darījumā. Pirms skaidrojam, kā (un kāpēc) tas notiek, apskatīsim pamata darījuma uzbūvi.

Bitcoin darījumi sastāv no ievades un izvades datiem. Ja lietotājs vēlas veikt darījumu, viņš izmanto savus UTXO kā ievades datus, norāda izvades datus un paraksta ievades datus. Ir svarīgi piebilst, ka katra ievades datu vienība tiek parakstīta neatkarīgi, un lietotāji var noteikt vairākas izvades datu vienības (sūtot kriptovalūtu uz dažādām adresēm).



Aplūkojot hipotētisku darījumu, kuru veido četras ievades vienības (katra 0,2 BTC apmērā) un divas izvades vienības (0,7 BTC un 0,09 BTC), varam izdarīt vairākus pieņēmumus. Pirmais pieņēmums ir tāds, ka notiek maksājums, – sūtītājs sūta kādam vienu no izvades vienībām un atpakaļ saņem nedaudz atlikuma. Tā kā ir izmantotas četras ievades vienības, lielākā izvades vienība, visticamāk, ir paredzēta saņēmējam. Ņem vērā, ka izvades summa ir par 0,01 BTC mazāka – tas atspoguļo ieguvējam samaksāto komisijas maksu.

Pastāv arī iespēja, ka sūtītājs vēlas izveidot vienu lielu UTXO no vairākiem mazākiem, tāpēc apvieno mazākas ievades vienības, lai iegūtu vēlamo summu 0,7 BTC apmērā.

Vēl viens pieņēmums ir balstīts faktā, ka katru ievades vienību paraksta neatkarīgi. Šajā darījumā ievades vienības varētu būt parakstījušas viena līdz četras dažādas personas. Un šeit slēpjas princips, kas nodrošina CoinJoin efektivitāti.


Kā darbojas CoinJoin?

Ideja ir tāda, ka vairākas personas sadarbojas ar mērķi izveidot darījumu, un katra nodrošina ievades un vēlamos izvades datus. Tā kā visi ievades dati tiek apvienoti, vairs nav iespējams ar pārliecību pateikt, kura izvades vienība atbilst katram lietotājam. Apskati šo diagrammu:



Šeit ir četri dalībnieki, kuri vēlas pārtraukt saikni starp darījumiem. Viņi savā starpā (vai ar īpaša koordinatora starpniecību) vienojas, lai paziņotu vēlamos ievades un izvades datus. 

Koordinators visu šo informāciju iekļaus darījumā, katrs dalībnieks to parakstīs, un tad darījums tiks pārraidīts tīklā. Pēc parakstīšanas darījumu vairs nevarēs izmainīt, to neatceļot. Tāpēc nepastāv risks, ka koordinators varētu nozust ar visiem līdzekļiem. 

Darījums kalpo kā sava veida melnā kaste, kurā tiek sajauktas kriptovalūtas. Atceries, ka mēs faktiski iznīcinām UTXO, lai izveidotu jaunus. Vienīgā saikne starp vecajiem un jaunajiem UTXO ir pats darījums, taču mēs, protams, nevarat nošķirt tā dažādos dalībniekus. Labākajā gadījumā mēs varētu pateikt, ka dalībnieks nodrošināja vienu no ievades datu vienībām un, iespējams, ir rezultātā iegūtās izvades jaunais īpašnieks.

Tomēr arī tam nav nekādu garantiju. Kā gan, paraugoties uz šo darījumu, varētu ar pārliecību apgalvot, ka tajā piedalījušies četri dalībnieki? Varbūt tā ir viena persona, kura sūta savus līdzekļus uz savām četrām adresēm? Vai arī tie ir divi cilvēki, kuri veic atsevišķus pirkumus un katrs atgriež 0,2 BTC uz savām personīgajām adresēm? Vai varbūt četri cilvēki, kuri sūta līdzekļus jauniem dalībniekiem, vai varbūt sūta tos atpakaļ sev? Patiesība nav zināma.


Privātums caur noliedzamību

Pats fakts, ka tiek izmantots CoinJoin, ir pietiekams, lai radītu šaubas par darījumu analīzē izmantotajām metodēm. Daudzos gadījumos varētu izsecināt, ka CoinJoin ir izmantots, tomēr tas neradītu skaidrību par to, kam pieder izvades. Pieaugot šo risinājumu popularitātei, pieņēmums, ka visas ievades vienības pieder vienam lietotājam, zaudē spēku, un tas ir milzīgs uzlabojums privātuma jomā plašākā ekosistēmā.

Iepriekš apskatītajā piemērā mēs redzējām, ka darījumam bija 4 personu anonimitātes kopa – jebkurš no četriem iesaistītajiem dalībniekiem varēja būt izvades datu īpašnieks. Jo lielāka ir anonimitātes kopa, jo mazāka ir iespējamība, ka darījumus izdosies saistīt ar to sākotnējiem veicējiem. Par laimi, jaunākie CoinJoin risinājumi būtiski atvieglo lietotājiem ievades datu apvienošanu ar desmitiem citu ievades datu vienību bez nepieciešamības uzticēties trešajām personām, nodrošinot augsta līmeņa noliedzamību. Nesen tika veiksmīgi izpildīts darījums starp 100 personām.


Noslēgumā

Kriptovalūtu jaukšanas risinājumi ir nozīmīgs papildinājums jebkura par privātumu domājoša lietotāja arsenālā. Atšķirībā no ierosinātajiem privātuma jauninājumiem (piemēram, konfidenciālajiem darījumiem), jaukšanas risinājumi ir saderīgi ar pašreizējo protokolu. 

Jaukšanas pakalpojumi ir ērts risinājums tiem, kuri paļaujas uz trešo pušu uzticamību un metodoloģiju. Tiem, kuri dod priekšroku pārbaudāmai alternatīvai, kuru nepārvalda trešā persona, labāks risinājums ir CoinJoin. Tehniski pieredzējušāki lietotāji šos mehānismus var izpildīt manuāli, bet pastāv arī programmatūras rīki, kas abstrahē sarežģītākus mehānismus. Vairāki šādi rīki ir pieejami jau šobrīd, un to popularitāte tikai aug, lietotājiem tiecoties pēc arvien lielāka privātuma.