Paano nila ito ginagawa? Pagsusuri ng mga teknolohiya ng anonymization ng cryptocurrency

Tiyak na ikaw, bilang isang gumagamit ng Bitcoin, Ether o anumang iba pang cryptocurrency, ay nag-aalala na maaaring makita ng sinuman kung gaano karaming mga barya ang mayroon ka sa iyong wallet, kung kanino mo inilipat ang mga ito at kung kanino mo ito natanggap. Mayroong maraming kontrobersya na nakapalibot sa hindi kilalang mga cryptocurrencies, ngunit isang bagay na hindi namin maaaring hindi sumang-ayon ay kung paano sinabi niya Monero project manager Riccardo Spagni sa kanyang Twitter account: "Paano kung ayaw ko lang malaman ng cashier sa supermarket kung magkano ang pera ko sa aking balanse at kung ano ang ginagastos ko?"

Paano nila ito ginagawa? Pagsusuri ng mga teknolohiya ng anonymization ng cryptocurrency

Sa artikulong ito titingnan natin ang teknolohikal na aspeto ng pagkawala ng lagda - kung paano nila ito ginagawa, at magbibigay ng maikling pangkalahatang-ideya ng mga pinakasikat na pamamaraan, ang kanilang mga kalamangan at kahinaan.

Ngayon ay may humigit-kumulang isang dosenang blockchain na nagpapahintulot sa mga hindi kilalang transaksyon. Kasabay nito, para sa ilan, ang anonymity ng mga paglilipat ay ipinag-uutos, para sa iba ito ay opsyonal, ang ilan ay nagtatago lamang ng mga addressee at tatanggap, ang iba ay hindi pinapayagan ang mga third party na makita kahit ang mga halaga ng mga paglilipat. Halos lahat ng mga teknolohiyang isinasaalang-alang namin ay nagbibigay ng kumpletong anonymityβ€”hindi masusuri ng isang tagamasid sa labas ang alinman sa mga balanse, tatanggap, o kasaysayan ng transaksyon. Ngunit simulan natin ang aming pagsusuri sa isa sa mga pioneer sa larangang ito upang masubaybayan ang ebolusyon ng mga diskarte sa hindi pagkakilala.

Kasalukuyang umiiral na mga teknolohiya ng anonymization ay maaaring halos nahahati sa dalawang grupo: ang mga batay sa paghahalo - kung saan ang mga coin na ginamit ay hinaluan ng iba pang mga coin mula sa blockchain - at mga teknolohiya na gumagamit ng mga patunay batay sa polynomials. Susunod, tututukan natin ang bawat isa sa mga pangkat na ito at isaalang-alang ang kanilang mga kalamangan at kahinaan.

Batay sa pagmamasa

CoinJoin

CoinJoin ay hindi nagpapakilala sa mga pagsasalin ng user, ngunit nagpapalubha lamang sa kanilang pagsubaybay. Ngunit nagpasya kaming isama ang teknolohiyang ito sa aming pagsusuri, dahil isa ito sa mga unang pagtatangka na pataasin ang antas ng pagiging kumpidensyal ng mga transaksyon sa network ng Bitcoin. Ang teknolohiyang ito ay nakakabighani sa pagiging simple nito at hindi nangangailangan ng pagbabago sa mga patakaran ng network, kaya madali itong magamit sa maraming blockchain.

Ito ay batay sa isang simpleng ideya - paano kung ang mga gumagamit ay pumasok at gumawa ng kanilang mga pagbabayad sa isang solong transaksyon? Lumalabas na kung sina Arnold Schwarzenegger at Barack Obama ay nag-chip at nagbayad ng dalawang pagbabayad kina Charlie Sheen at Donald Trump sa isang transaksyon, magiging mas mahirap na maunawaan kung sino ang tumustos sa kampanya sa halalan ng Trump - Arnold o Barack.

Ngunit mula sa pangunahing bentahe ng CoinJoin ay ang pangunahing kawalan nito - mahinang seguridad. Ngayon, mayroon nang mga paraan upang matukoy ang mga transaksyon ng CoinJoin sa network at itugma ang mga hanay ng mga input sa mga hanay ng mga output sa pamamagitan ng paghahambing ng mga halaga ng mga coin na ginastos at nabuo. Ang isang halimbawa ng isang tool para sa naturang pagsusuri ay CoinJoin Sudoku.

Pros:

β€’ pagiging simple

Cons:

β€’ Ipinakita ang pagiging hackability

Monero

Ang unang asosasyon na lumitaw kapag naririnig ang mga salitang "anonymous na cryptocurrency" ay Monero. Itong barya napatunayan ang katatagan at pagkapribado nito sa ilalim ng mikroskopyo ng mga serbisyo ng katalinuhan:

Paano nila ito ginagawa? Pagsusuri ng mga teknolohiya ng anonymization ng cryptocurrency

Sa isa sa kanyang kamakailan Artikulo Inilarawan namin ang protocol ng Monero nang detalyado, at ngayon ay ibubuod namin kung ano ang sinabi.

Sa Monero protocol, ang bawat output na ginugol sa isang transaksyon ay may halong hindi bababa sa 11 (sa oras ng pagsulat) ng mga random na output mula sa blockchain, at sa gayon ay nagiging kumplikado ang paglipat ng graph ng network at ginagawang kumplikado ang gawain ng pagsubaybay sa mga transaksyon sa computation. Ang mga halo-halong entry ay nilagdaan gamit ang isang ring signature, na ginagarantiyahan na ang pirma ay ibinigay ng may-ari ng isa sa mga pinaghalong barya, ngunit hindi ginagawang posible upang matukoy kung sino.

Upang itago ang mga tatanggap, ang bawat bagong nabuong barya ay gumagamit ng isang beses na address, na ginagawang imposible para sa isang tagamasid (siyempre, kasinghirap ng pagsira sa mga encryption key, siyempre) na iugnay ang anumang output sa isang pampublikong address. At mula noong Setyembre 2017, nagsimulang suportahan ni Monero ang protocol Kumpedensyal na Mga Transaksyon (CT) na may ilang mga karagdagan, kaya itinatago din ang mga halaga ng paglilipat. Makalipas ang ilang sandali, pinalitan ng mga developer ng cryptocurrency ang mga lagda ng Borromean ng mga Bulletproof, sa gayon ay makabuluhang binabawasan ang laki ng transaksyon.

Pros:

β€’ Sinubok ng oras
β€’ Relatibong pagiging simple

Cons:

β€’ Ang pagbuo at pag-verify ng patunay ay mas mabagal kaysa sa mga ZK-SNARK at ZK-STARK
β€’ Hindi lumalaban sa pag-hack gamit ang mga quantum computer

Mimblewimble

Ang Mimblewimble (MW) ay naimbento bilang isang scalable na teknolohiya para sa pag-anonymize ng mga paglilipat sa network ng Bitcoin, ngunit natagpuan ang pagpapatupad nito bilang isang independiyenteng blockchain. Ginamit sa cryptocurrencies Paikutin ΠΈ BEAM.

Kapansin-pansin ang MW dahil wala itong mga pampublikong address, at para makapagpadala ng transaksyon, direktang nagpapalitan ng mga output ang mga user, kaya inaalis ang kakayahan ng isang tagamasid sa labas na suriin ang mga paglilipat mula sa tatanggap patungo sa tatanggap.

Upang itago ang mga kabuuan ng mga input at output, isang medyo karaniwang protocol na iminungkahi ni Greg Maxwell noong 2015 ay ginagamit - Kumpedensyal na Mga Transaksyon (CT). Iyon ay, ang mga halaga ay naka-encrypt (o sa halip, ginagamit nila scheme ng pangako), at sa halip na sa kanila ang network ay nagpapatakbo na may tinatawag na mga pangako. Para maituring na valid ang isang transaksyon, dapat na pantay ang halaga ng mga coin na ginastos at nabuo kasama ang komisyon. Dahil ang network ay hindi direktang gumagana gamit ang mga numero, ang pagkakapantay-pantay ay sinisigurado gamit ang equation ng parehong mga commitment na ito, na tinatawag na commitment to zero.

Sa orihinal na CT, upang magarantiya ang hindi negatibong mga halaga (ang tinatawag na range proof), ginagamit nila ang Borromean Signatures (Borromean ring signatures), na kumuha ng maraming espasyo sa blockchain (mga 6 kilobytes bawat output. ). Sa pagsasaalang-alang na ito, ang mga disadvantages ng mga hindi kilalang pera na gumagamit ng teknolohiyang ito ay kasama ang malaking laki ng transaksyon, ngunit ngayon ay nagpasya silang iwanan ang mga lagda na ito sa pabor ng isang mas compact na teknolohiya - Mga Bulletproof.

Walang konsepto ng isang transaksyon sa MW block mismo, mayroon lamang mga output na ginugol at nabuo sa loob nito. Walang transaksyon - walang problema!

Upang maiwasan ang pag-de-anonymization ng kalahok sa paglilipat sa yugto ng pagpapadala ng transaksyon sa network, ginagamit ang isang protocol Ngiping leon, na gumagamit ng chain ng mga proxy node ng network na may di-makatwirang haba na nagpapadala ng transaksyon sa isa't isa bago ito aktwal na ipamahagi sa lahat ng mga kalahok, kaya nalilito ang trajectory ng transaksyon na pumapasok sa network.

Pros:

β€’ Maliit na laki ng blockchain
β€’ Relatibong pagiging simple

Cons:

β€’ Ang pagbuo at pag-verify ng patunay ay mas mabagal kaysa sa mga ZK-SNARK at ZK-STARK
β€’ Mahirap ipatupad ang suporta para sa mga feature gaya ng mga script at multi-signature
β€’ Hindi lumalaban sa pag-hack gamit ang mga quantum computer

Mga patunay sa polynomial

Mga ZK-SNARK

Ang masalimuot na pangalan ng teknolohiyang ito ay nangangahulugang "Zero-Kaalaman Succinct Non-Interactive Argument of Knowledge," na maaaring isalin bilang "Succinct non-interactive zero-knowledge proof." Ito ay naging pagpapatuloy ng zerocoin protocol, na higit na nagbago sa zerocash at unang ipinatupad sa Zcash cryptocurrency.

Sa pangkalahatan, ang zero-knowledge proof ay nagpapahintulot sa isang partido na patunayan sa isa pa ang katotohanan ng ilang mathematical statement nang hindi nagbubunyag ng anumang impormasyon tungkol dito. Sa kaso ng mga cryptocurrencies, ang mga ganitong pamamaraan ay ginagamit upang patunayan na, halimbawa, ang isang transaksyon ay hindi gumagawa ng higit pang mga barya kaysa sa ginagastos nito, nang hindi inilalantad ang halaga ng mga paglilipat.

Ang mga ZK-SNARK ay napakahirap maunawaan, at kakailanganin ng higit sa isang artikulo upang ilarawan kung paano ito gumagana. Sa opisyal na pahina ng Zcash, ang unang pera na nagpapatupad ng protocol na ito, isang paglalarawan ng operasyon nito ay nakatuon sa 7 artikulo. Samakatuwid, sa kabanatang ito ay lilimitahan lamang natin ang ating sarili sa isang mababaw na paglalarawan.

Gamit ang algebraic polynomials, pinatutunayan ng ZK-SNARKs na ang nagpadala ng pagbabayad ay nagmamay-ari ng mga barya na kanyang ginagastos at ang halaga ng mga coin na ginastos ay hindi lalampas sa halaga ng mga nabuong barya.

Ang protocol na ito ay nilikha na may layuning bawasan ang laki ng patunay ng bisa ng isang pahayag at kasabay nito ay mabilis na ma-verify ito. Oo, ayon sa mga pagtatanghal Zooko Wilcox, CEO ng Zcash, 200 bytes lang ang laki ng patunay, at mabe-verify ang kawastuhan nito sa loob ng 10 millisecond. Bukod dito, sa pinakabagong bersyon ng Zcash, nagawang bawasan ng mga developer ang proof generation time sa halos dalawang segundo.

Gayunpaman, bago gamitin ang teknolohiyang ito, kinakailangan ang isang kumplikadong pinagkakatiwalaang pamamaraan ng pag-setup ng "mga pampublikong parameter", na tinatawag na "seremonya" (Ceremony Ang). Ang buong kahirapan ay na sa panahon ng pag-install ng mga parameter na ito, alinman sa partido ay walang anumang pribadong key na natitira para sa kanila, na tinatawag na "nakakalason na basura", kung hindi, ito ay makakabuo ng mga bagong barya. Maaari mong malaman kung paano nangyayari ang pamamaraang ito mula sa video sa YouTube.

Pros:

β€’ Maliit na laki ng ebidensya
β€’ Mabilis na pag-verify
β€’ Medyo mabilis na henerasyon ng patunay

Cons:

β€’ Kumplikadong pamamaraan para sa pagtatakda ng mga pampublikong parameter
β€’ Nakakalason na basura
β€’ Relatibong pagiging kumplikado ng teknolohiya
β€’ Hindi lumalaban sa pag-hack gamit ang mga quantum computer

Mga ZK-STARK

Ang mga may-akda ng huling dalawang teknolohiya ay mahusay sa paglalaro ng mga acronym, at ang susunod na acronym ay nangangahulugang "Zero-Knowledge Scalable Transparent ARguments of Knowledge." Ang pamamaraang ito ay inilaan upang malutas ang mga umiiral na pagkukulang ng ZK-SNARK sa oras na iyon: ang pangangailangan para sa isang pinagkakatiwalaang setting ng mga pampublikong parameter, ang pagkakaroon ng nakakalason na basura, ang kawalang-tatag ng cryptography sa pag-hack gamit ang mga quantum algorithm, at hindi sapat na mabilis na henerasyon ng patunay. Gayunpaman, hinarap ng mga developer ng ZK-SNARK ang huling disbentaha.

Gumagamit din ang mga ZK-STARK ng mga patunay na batay sa polynomial. Ang teknolohiya ay hindi gumagamit ng pampublikong key cryptography, sa halip ay umaasa sa hashing at transmission theory. Ang pag-aalis ng mga cryptographic na ito ay ginagawang lumalaban ang teknolohiya sa mga quantum algorithm. Ngunit ito ay dumating sa isang presyo - ang patunay ay maaaring umabot ng ilang daang kilobytes ang laki.

Sa kasalukuyan, ang ZK-STARK ay walang pagpapatupad sa alinman sa mga cryptocurrencies, ngunit umiiral lamang bilang isang library libSTARK. Gayunpaman, ang mga developer ay may mga plano para dito na higit pa sa mga blockchain (sa kanilang White Paper ang mga may-akda ay nagbibigay ng isang halimbawa ng ebidensya ng DNA sa isang database ng pulisya). Para sa layuning ito ito ay nilikha Mga Industriya ng StarkWare, na sa katapusan ng 2018 ay nakolekta $ 36 milyon pamumuhunan mula sa pinakamalaking kumpanya sa industriya.

Maaari kang magbasa nang higit pa tungkol sa kung paano gumagana ang ZK-STARK sa mga post ni Vitalik Buterin (Bahagi 1, Bahagi 2, Bahagi 3).

Pros:

β€’ Paglaban sa pag-hack ng mga quantum computer
β€’ Medyo mabilis na henerasyon ng patunay
β€’ Medyo mabilis na patunay na pag-verify
β€’ Walang nakakalason na basura

Cons:

β€’ Pagiging kumplikado ng teknolohiya
β€’ Malaking proof size

Konklusyon

Ang Blockchain at ang lumalaking pangangailangan para sa hindi nagpapakilala ay nagbibigay ng mga bagong pangangailangan sa cryptography. Kaya, ang sangay ng cryptography na nagmula noong kalagitnaan ng 1980sβ€”zero-knowledge proofsβ€”ay napunan ng bago, dynamic na umuunlad na mga pamamaraan sa loob lamang ng ilang taon.

Kaya, ang paglipad ng siyentipikong pag-iisip ay ginawa ang CoinJoin na hindi na ginagamit, at ang MimbleWimble ay isang promising na bagong dating na may mga sariwang ideya. Si Monero ay nananatiling isang hindi matitinag na higante sa pagbabantay sa ating privacy. At ang mga SNARK at STARK, bagama't mayroon silang mga pagkukulang, ay maaaring maging pinuno sa larangan. Marahil sa mga darating na taon, ang mga puntong ipinahiwatig namin sa column na "Cons" ng bawat teknolohiya ay magiging walang kaugnayan.

Pinagmulan: www.habr.com

Magdagdag ng komento