Як яны гэта робяць? Агляд тэхналогій ананімізацыі криптовалют

Напэўна вы, як карыстач біткоіна, эфіру ці любой іншай криптовалюты, былі занепакоеныя тым, што любы жадаючы можа бачыць, колькі манет у вас у кашальку, каму вы іх перакладалі і ад каго атрымлівалі. Вакол ананімных криптовалют ходзіць шмат спрэчак, але з чым нельга не пагадзіцца — як сказаў кіраўнік праекта Monero Рыкарда Спаньі (Riccardo Spagni) у сваім Twitter-акаўнце: "Што калі я проста не хачу, каб касір у супермаркеце ведаў, колькі грошай у мяне на балансе і на што я іх марную?"

Як яны гэта робяць? Агляд тэхналогій ананімізацыі криптовалют

У гэтым артыкуле мы разгледзім тэхналагічны аспект ананімнасці – як яны гэта робяць, і прывядзем кароткі агляд найболей папулярных метадаў, іх плюсы і мінусы.

Сёння існуе каля дзясятка блокчэйнаў, якія дазваляюць ажыццяўляць ананімныя транзакцыі. Пры гэтым для адных ананімнасць перакладаў абавязковая, для іншых апцыянальная, адны хаваюць толькі адрасатаў і атрымальнікаў, іншыя не дазваляюць трэцім бакам бачыць нават сумы пераводаў. Практычна ўсе разгляданыя намі тэхналогіі даюць поўную ананімнасць - ні балансы, ні атрымальнікаў, ні гісторыю транзакцый іншы назіральнік аналізаваць не можа. Але пачнем наш агляд з аднаго з першапраходцаў у гэтай галіне, каб прасачыць эвалюцыю падыходаў да ананімнасці.

Існуючыя на дадзены момант тэхналогіі ананімізацыі ўмоўна можна падзяліць на дзве групы: заснаваныя на замешванні - дзе выкарыстоўваныя манеты замешваюцца з іншымі манетамі з блокчейна, - і тэхналогіі, якія выкарыстоўваюць доказы, заснаваныя на паліномах. Далей мы спынімся на кожнай з гэтых груп і разгледзім іх плюсы і мінусы.

Заснаваныя на замешванні

CoinJoin

CoinJoin не ананімізуе пераклады карыстальнікаў, а толькі ўскладняе іх адсочванне. Але мы вырашылі ўключыць гэтую тэхналогію ў наш агляд, бо яна была адной з першых спроб павысіць узровень канфідэнцыйнасці транзакцый у сетцы Bitcoin. Гэтая тэхналогія падкупляе сваёй прастатой і не патрабуе змены правіл сеткі, таму можа быць лёгка скарыстана ў шматлікіх блокчейнах.

У яе аснове ляжыць простая ідэя - што калі карыстальнікі будуць скідацца і праводзіць свае плацяжы адзінай транзакцыяй? Атрымліваецца, што калі Арнольд Шварцэнэгер і Барак Абама скінуліся і здзейснілі два плацяжы Чарлі Шыну і Дональду Трампу ў адной транзакцыі, то становіцца больш складана зразумець, хто прафінансаваў перадвыбарчую кампанію Трампа — Арнольд ці Барак.

Але з галоўнага плюсу CoinJoin выцякае яго галоўны мінус - слабая абароненасць. На сённяшні дзень ужо ёсць спосабы выявіць CoinJoin-транзакцыі ў сетцы і супаставіць наборы ўваходаў наборам выхадаў шляхам параўнання сум выдаткаваных і згенераваных манет. Прыклад інструмента для такога аналізу CoinJoin Sudoku.

Плюсы:

• Прастата

Мінусы:

• Прадэманстравана магчымасць узлому

Monero

Першая асацыяцыя, якая ўзнікае пры словах "ананімная криптовалюта", - Monero. Гэтая манета даказала сваю ўстойлівасць і прыватнасць пад мікраскопам спецслужбаў:

Як яны гэта робяць? Агляд тэхналогій ананімізацыі криптовалют

У адной са сваіх нядаўніх артыкулаў мы вельмі дэталёва апісалі пратакол Monero, і сёння сумуем сказанае.

У пратаколе Monero кожны выдаткаваны ў транзакцыі вынахад замешваецца з не менш за 11 (на момант напісання артыкула) адвольнымі вынахадамі з блокчейна, тым самым ускладняючы граф перакладаў у сеткі і робячы задачу адсочвання транзакцый вылічальна складанай. Замешаныя ўваходы падпісваюцца кальцавым подпісам, які гарантуе, што подпіс паставіў уладальнік адной з замяшаных манет, але не дае магчымасці вызначыць, хто менавіта.

Для ўтойвання атрымальнікаў кожная зноў згенераваная манета выкарыстоўвае аднаразовы адрас, што пазбаўляе назіральніка магчымасці (настолькі, наколькі складанай з'яўляецца задача ўзлому ключоў шыфравання, зразумела) звязаць якое-небудзь выйсце з публічным адрасам. А з верасня 2017 года Monero стала падтрымліваць пратакол Канфідэнцыйныя здзелкі (CT) з некаторымі дапаўненнямі, такім чынам яшчэ і хаваючы сумы пераводаў. Крыху пазней распрацоўшчыкі криптовалюты замянілі колцавыя подпісы Барамеа (Borromean signatures) на Bulletproofs, тым самым значна паменшыўшы памер транзакцыі.

Плюсы:

• Праверана часам
• Адносная прастата

Мінусы:

• Генерацыя і верыфікацыя доказу павольней, чым у ZK-SNARKs і ZK-STARKs
• Не ўстойлівая да ўзлому з выкарыстаннем квантавых кампутараў

Смешваць

Mimblewimble (MW) быў прыдуманы як якая маштабуецца тэхналогія ананімізацыі перакладаў у сетцы Bitcoin, але знайшоў сваю рэалізацыю як самастойны блокчейн. Выкарыстоўваецца ў криптовалютах шэры и ЛУЧ.

MW адметны тым, што не мае публічных адрасоў, а для таго каб адправіць транзакцыю, карыстачы абменьваюцца вынахадамі напроста, такім чынам выключаючы магчымасць іншаму назіральніку прааналізаваць пераклады ад адрасата да адрасата.

Для ўтойвання сум уваходаў і выхадаў выкарыстоўваецца даволі распаўсюджаны пратакол, прапанаваны Грегам Максвелам (Greg Maxwell) у 2015 годзе, Канфідэнцыйныя здзелкі (CT). Гэта значыць сумы шыфруюцца (а дакладней, выкарыстоўваецца схема абавязацельстваў), і замест іх сетка аперуе так званымі commitment-амі. Каб транзакцыя лічылася валіднай, неабходна роўнасць сум выдаткаваных манет і згенераваных плюс камісія. Бо лічбамі наўпрост сетка не аперуе, роўнасць забяспечваецца пры дапамозе раўнання гэтых самых commitment-ов, што завецца commitment to zero.

У арыгінале CT для гарантыі неадмоўнасці значэнняў (так званы range proof) выкарыстоўваюць Borromean Signatures (кальцавыя подпісы Барамеа), якія займалі вельмі шмат месца ў блокчейне (каля 6 кілабайт на адзін выхад). У сувязі з гэтым да мінусаў ананімных валют, якія выкарыстоўваюць дадзеную тэхналогію, адносілі вялікі памер транзакцыі, аднак зараз вырашылі адмовіцца ад гэтых подпісаў на карысць больш кампактнай тэхналогіі - Bulletproofs.

У самім блоку MW няма паняцця транзакцыі, ёсць толькі вынахады, выдаткаваныя і згенераваныя ў ім. Няма транзакцыі - няма праблемы!

Каб прадухіліць дэананімізацыю ўдзельніка пераводу на этапе адпраўкі транзакцыі ў сетку выкарыстоўваецца пратакол Дзьмухавец, які выкарыстоўвае ланцужок proxy-нод сеткі адвольнай даўжыні, якія перадаюць транзакцыю адзін аднаму перад фактычным распаўсюджваннем яе па ўсіх удзельніках, такім чынам заблытваючы траекторыю траплення транзакцыі ў сетку.

Плюсы:

• Малы памер блокчейна
• Адносная прастата

Мінусы:

• Генерацыя і верыфікацыя доказу павольней, чым у ZK-SNARKs і ZK-STARKs
• Падтрымку такіх магчымасцяў, як скрыпты і мульты-подпісы, складана рэалізаваць
• Не ўстойлівая да ўзлому з выкарыстаннем квантавых кампутараў

Доказы на паліномах

ЗК-СНАРКі

Мудрагелістая назва гэтай тэхналогіі расшыфроўваецца якНулявыя веды Succinct Non-Interactive Argument of Knowledge”, што можна перавесці як “Сціснуты неінтэрактыўны доказ з нулявым разгалашэннем”. Яна стала працягам пратаколу zerocoin, які далей эвалюцыянаваў у zerocash і ўпершыню быў рэалізаваны ў криптовалюте Zcash.

У агульным выпадку zero-knowledge proof дазваляе аднаму боку даказаць другі праўдзівасць некаторага матэматычнага сцвярджэння, не расчыняючы ніякіх звестак пра яго. Адносна крыптавалют такія метады выкарыстоўваюць для доказу таго, што, напрыклад, транзакцыя не вырабляе манет больш, чым марнуе, не раскрываючы пры гэтым сум перакладаў.

ZK-SNARKs вельмі складана для разумення, а для апісання прынцыпаў яе працы запатрабуецца не адзін артыкул. На афіцыйнай старонцы Zcash, першай валюты, якая рэалізуе гэты пратакол, апісанню яго працы прысвечана 7 артыкулаў. Таму ў гэтым раздзеле мы абмяжуемся толькі павярхоўным апісаннем.

З дапамогай алгебраічных паліномаў ZK-SNARKs даказвае, што адпраўнік плацяжу валодае манетамі, якія марнуе, і што сума выдаткаваных манет не пераўзыходзіць сумы згенераваных.

Гэты пратакол ствараўся з мэтай памяншэння памеру доказу валіднасці зацвярджэння і пры гэтым хуткай яго верыфікацыі. Так, згодна прэзентацыі Зуко Вілкокса (Zooko Wilcox), CEO Zcash, памер доказу займае ўсяго 200 байт, а праверыць яго карэктнасць можна за 10 мілісекунд. Прычым у апошняй версіі Zcash распрацоўнікам атрымалася зменшыць і час генерацыі доказу да прыкладна двух секунд.

Аднак перад пачаткам выкарыстання гэтай тэхналогіі патрабуецца працэдура складанай наладкі даверанымі асобамі (trusted setup) "грамадскіх параметраў", якая называецца "цырымоніяй" (Цырымонія). Уся складанасць заключаецца ў тым, каб у ходзе ўстаноўкі гэтых параметраў ні ў адной з бакоў не засталося прыватных ключоў ад іх, званых "таксічнымі адходамі", інакш яна атрымае магчымасць генераваць новыя манеты. Пра тое, як адбываецца гэтая працэдура, можна даведацца з відэа на YouTube.

Плюсы:

• Малы памер доказы
• Хуткая верыфікацыя
• Адносна хуткая генерацыя доказы

Мінусы:

• Складаная працэдура ўстаноўкі публічных параметраў
• Таксічныя адходы
• Адносная складанасць тэхналогіі
• Не ўстойлівая да ўзлому з выкарыстаннем квантавых кампутараў

ЗК-СТАРКІ

У аўтараў апошніх дзвюх тэхналогій добра атрымліваецца гуляць з акронімамі, і чарговы акронім расшыфроўваецца як «Празрысты які маштабуецца доказ з нулявым разгалашэннем» («Zero-Knowledge Scalable Transparent ARguments of Knowledge»). Гэты метад быў закліканы вырашыць наяўныя на той момант недахопы ZK-SNARKs: неабходнасць у даверанай усталёўцы публічных параметраў, наяўнасць таксічных адходаў, няўстойлівасць крыптаграфіі да ўзлому з дапамогай квантавых алгарытмаў і недастаткова хуткую генерацыю доказу. Аднак з апошнім недахопам распрацоўшчыкі ZK-SNARK справіліся.

ZK-STARKs таксама выкарыстоўваюць доказы, заснаваныя на паліномах. Тэхналогія не мае на ўвазе выкарыстанне крыптаграфіі на публічных ключах, замест гэтага належачы на ​​хэшаванне і тэорыю перадачы інфармацыі. Адмова ад гэтых крыптаграфічных сродкаў робіць тэхналогію ўстойлівай да квантавых алгарытмаў. Але гэта мае свой кошт - доказ можа дасягаць у памеры некалькіх сотняў кілабайт.

Цяпер ZK-STARK не маюць рэалізацыі ў якой-небудзь крыптавалют, а існуюць толькі ў выглядзе бібліятэкі. libSTARK. Аднак распрацоўнікі маюць на яе планы, далёка ідучыя за межы блокчейнов (у сваім Белая кніга аўтары прыводзяць прыклад з доказам наяўнасці ДНК у базе дадзеных паліцыі). Для гэтай мэты была створана StarkWare Industries, якая на канец 2018 года сабрала 36 млн даляраў інвестыцый ад найбуйнейшых кампаній галіны.

Пра тое, як уладкованыя ZK-STARK, падрабязней можна прачытаць у пастах Віталя Буцярына.частка 1, частка 2, частка 3).

Плюсы:

• Устойлівасць да ўзлому квантавымі кампутарамі
• Адносна хуткая генерацыя доказы
• Адносна хуткая праверка доказы
- Адсутнасць таксічных адходаў

Мінусы:

• Складанасць тэхналогіі
• Вялікі памер доказы

Заключэнне

Блокчейн і які расце попыт на ананімнасць ставяць перад крыптаграфіяй новыя патрабаванні. Так, зароджаны ў сярэдзіне 1980-х раздзел крыптаграфіі - доказы з нулявым разгалашэннем - усяго за некалькі гадоў папоўніўся новымі дынамічна развіваюцца метадамі.

Такім чынам, палёт навуковай думкі зрабіў CoinJoin састарэлым, а MimbleWimble – перспектыўным пачаткоўцам з даволі свежымі ідэямі. Monero нязменна застаецца непахісным гігантам на варце нашай прыватнасці. А SNARKs і STARKs, хоць і маюць недахопы, могуць стаць лідарамі вобласці. Магчыма, у бліжэйшыя гады ўказаныя намі пункты ў графе «Мінусы» кожнай з тэхналогій стануць неактуальнымі.

Крыніца: habr.com

Дадаць каментар