ZEC: Неперевершена конфіденційність у загальнодоступному блокчейн

Нещодавно ми витратили майже 200 годин на перегляд усього проекту Zcash та криптовалюти ZEC. Проаналізувавши проект, нам зрозуміло, що Zcash є одним з найважливіших проектів у цілому криптопросторі.

У перші дні цифрової валюти багато хто вважав, що операції з біткойнами були повністю анонімними та приватними. Популярність Шовкового шляху, першого сучасного ринку з темною сіткою, сприяла цій помилковій думці і змусила багатьох ранніх прихильників пов'язувати анонімність з псевдонімічністю.

Як найбільш напевно знають на даний момент, користувачі Bitcoin псевдоніми; їхні адреси та противаги є повністю публічними, але їхня реальна ідентичність - ні. Незважаючи на те, що адреси неможливо прив’язати до окремих людей, просто переглянувши блокчейн, псевдонімічність Bitcoin все ж порушується, коли людина доводить право власності на адресу, як правило, за допомогою обміну. Таким чином, у віруючих міфу про анонімність Bitcoin було грубо пробудження після руйнування Шовкового шляху, однієї з найзначніших подій в історії Bitcoin.

Окрім випадків незаконного використання, "Шовковий шлях" підкреслював, що домагання приватного життя як основного права людини було несумісним з публічними блокчейнами на той час. Ця реалізація змусила багатьох дослідників почати працювати над рішеннями для підвищення конфіденційності транзакцій з біткойнами. CoinJoin Грега Максвелла була однією з перших спроб підвищення конфіденційності та ефективності Bitcoin шляхом об'єднання декількох відправників BTC за одну транзакцію; метод, який зазвичай називають змішуванням монет.

Змішування ускладнює точне визначення конкретних відправників та одержувачів транзакції, оскільки залишки надсилаються як група. Ефективність змішування CoinJoin зробила його, безумовно, найбільш поширеним методом приховування ідентичності в публічних блокчейнах. Незважаючи на те, що він дуже примітивний, цей метод все ще широко використовується сьогодні в криптовалютах, таких як DASH.

Як і CoinJoin, Monero також використовує систему під назвою RingCT для маскування відправника транзакції. Ми проаналізували RingCT в минулому, і стосовно реалізацій CoinJoin, це набагато більш складний метод приховати дані. RingCT агрегує підписи, пов'язані з транзакцією, і кодує його значення. Хоча це елегантна та ефективна система, ми розуміємо, що з цим підходом є проблеми.

Простіше кажучи, основна проблема методів змішування монет полягає в тому, що дані транзакцій не приховуються за допомогою шифрування. Натомість і CoinJoin, і RingCT - це системи роз'єднання. У таких системах вся інформація є загальнодоступною, але специфічні для транзакцій дані, такі як надіслана сума, відокремлюються від конкретної для користувача інформації, наприклад, адрес, пов'язаних з балансом. Якщо евристика, яка використовується для роз'єднання цих точок даних, порушена, як це було у більшості транзакцій Monero до лютого 2017 року, конфіденційність всієї системи також порушується.

Замість того, щоб роз'єднати, більш вдалий підхід до конфіденційності - це той, що використовує більш сильну криптографію, де всі дані транзакцій приховані. На перший погляд, це може бути несумісним із загальнодоступними блокчейнами, зрештою, одне із ціннісних пропозицій Bitcoin - це публічна і перевірена ланцюжок прав власності на кожен окремий баланс. Приховування транзакцій перешкоджало б цьому процесу перевірки, лише дозволяючи власнику конкретного ключа візуалізувати транзакцію.

З цієї причини єдиний спосіб дозволити блокувати ланцюжок як зашифрованим, так і загальнодоступним перевірити - це завдяки високоточній криптографії. На щастя, цього можна досягти за допомогою одного з найпотужніших інструментів, які коли-небудь розробляли криптографи: Zero-Knowledge Proofs.

ЗЕРО-ЗНАННЯ МАГІЯ

Магічна концепція, що стоїть на "Zero-Knowledge Proofs" - це криптографічно довести, що щось існує, не знаючи, що це таке.

Zcash використовує варіант Zero Knowledge Proofs, який називається нульовим знанням Сучасний неінтерактивний аргумент знань, або zk-SNARK, щоб увімкнути приватні транзакції в мережі. Ця конкретна реалізація дозволяє перевірити зашифровані транзакції в мілісекундах. Користувачі можуть генерувати zk-SNARK, щоб вибірково захистити джерело, призначення та кількість ZEC за допомогою чотирьох різних типів транзакцій:

Незважаючи на те, що zk-SNARK неймовірно потужні, вони також несуть свою неабияку частку недоліків. Однією з найбільших перешкод у використанні приватних транзакцій на Zcash є те, що zk-SNARK обчислювально інтенсивно та потребує часу на їх виробництво. Такі вимоги забороняють використовувати цю технологію на мобільних телефонах, що, безсумнівно, вплинуло на прийняття приватних транзакцій Zcash. Насправді ми виявили, що лише близько 13% транзакцій Zcash зараз використовують zk-SNARK. Повністю приватні транзакції, в яких захищені як відправник, так і одержувач, складають лише 0,36% від загальної кількості транзакцій Zcash.

Навіть незважаючи на те, що Zcash обробив більше транзакцій у своїй мережі, ніж Monero, 86% з них не захищені і виглядають так само, як звичайні біткойн-транзакції. З іншого боку, транзакції XMR за своєю суттю змішані, і Monero за замовчуванням є приватним. Якби ми порівняли загальну кількість приватних транзакцій в обох мережах, Monero був би явним переможцем.

Як ця галузь усвідомила, компроміс між притаманною проти необов'язкової конфіденційності, безсумнівно, впливає на ймовірність того, що актив перебуває в списку на регульованій біржі. Як вказував провідний розробник Monero Ріккардо "fluffypony" Spagni, коли він говорив на Coinbase, регуляторний тиск робить малоймовірним, що обмін часткою Coinbase зможе підтримати Monero в найближчому майбутньому. Регулятори суттєвіше ставляться до приватних блокчейнів, оскільки їх складніше перевірити та регулювати.

І навпаки, необов’язковість конфіденційності в Zcash полегшує регуляторний страх і дозволяє цим установам внести до списку незахищені ZEC. Це було прикладом у травні 2018 року, коли Нью-Йоркський департамент фінансових послуг (NYDFS) доручив Gemini підтримувати торгівлю та зберігання Zcash. Це знак того, що регулятори можуть бути більш відкритими для роботи з проектами, де конфіденційність не є обов'язковою. Ця готовність ідеально підходить для ліквідності пар ZEC та фіатних пар і не може завдавати шкоди стійкості активів у мережі; двох раундів екранованих транзакцій на різні z-адреси може бути достатньо, щоб повністю приховати ланцюжок зберігання певного балансу.

Гарантія конфіденційності

У нашому звіті ми говорили про гарантію конфіденційності, або іншими словами, про ступінь впевненості користувачів у тому, що минулі транзакції залишаться конфіденційними. Для багатьох дебати щодо Zcash проти Monero зводяться до міцності та стійкості механізмів, які використовуються обома протоколами для забезпечення конфіденційності.

Спільний досвід Монеро в цьому відношенні був сильно пошкоджений у квітні 2017 року, коли дослідники Принстонського університету та Іллінойського університету виявили значну вразливість у протоколі Мійнсін Монеро. Ця вразливість дозволила їм визначити справжнього відправника більшості транзакцій XMR до активації RingCT у лютому 2017 року. Вони назвали цей експеримент аналізом «ланцюгової реакції» і стверджували, що евристика, викладена у Білій книзі, дозволила точно вказати адресу певних транзакцій XMR до RingCT з 80% точністю. Хоча активація RingCT у лютому зменшила вразливості, пов’язані з блокчейн-аналізом, це підвищило усвідомлення того, наскільки поганою була проблема до її активації. Як ми торкалися раніше, Monero - це система роз'єднання; отже, конфіденційність залежить від кількості підроблених організацій, пов'язаних з транзакцією.

З іншого боку, гарантії конфіденційності в Zcash набагато менше підлягають витонченому блокчейн-аналізу. У травні 2018 року дослідники з Університетського коледжу Лондона опублікували вичерпний документ, в якому оцінювали анонімність у Zcash за допомогою аналогічного блокчейн-аналізу. Оскільки на даний момент лише частина транзакцій у Zcash є приватною, то можна згрупувати невелику частину транзакцій на основі моделей використання адреси. У зв'язку з цим частка транзакцій Zcash, на які впливає блокчейн-аналіз, бліда порівняно з Monero. У всьому дослідженні дослідники виявили 23 адреси Zcash, які можна було частково простежити за допомогою аналізу, тоді як понад 200 000 адрес XMR, ймовірно, були вразливими до експлуатації ланцюгової реакції.

З цієї причини, на нашу думку, гарантії конфіденційності, надані zk-SNARKs Zcash, є сильнішими, ніж гарантії Monero RingCT. Однак, існує багато ризиків із використанням zk-SNARK. Для того, щоб вони функціонували належним чином, zk-SNARK покладаються на довірену церемонію під назвою Повноваження Тау, яка використовується для генерування набору ключів, необхідних довести та перевірити zk-SNARK. Якщо це піддається компромету (і немає ознак, що будь-яка з церемоній була порушена), це представляє систематичний ризик для всього проекту. Як ми досліджували в нашому звіті, процес генерації цих ключів, а також вимоги до генерації zk-SNARK будуть перероблені 28 жовтня, коли активується нова версія Zcash.

Саджанець Zcash

Саплінг - це головне оновлення, яке має на меті збільшити використання zk-SNARK за допомогою використання інструментів, що знижують їхні обчислювальні вимоги. Саблінг може знизити використання пам'яті для побудови zk-SNARK на 98% і зробити процес перевірки цих доказів на 80% швидшим. Це може дозволити побудувати zk-SNARK на смартфонах, що майже неможливо зробити в поточній версії протоколу. Ми очікуємо, що реалізація Sapling стане каталітичною подією, враховуючи його важливість та досвід роботи з великими оновленнями мережі в інших криптовалютах.

Найбільш очікуваним вдосконаленням Sapling є новий алгоритм еліптичної кривої, який використовується для визначення проблем у процесі верифікації zk-SNARK. Хоча технічна назва цієї нової кривої - BLS12–381, дослідники фонду Zcash вирішили назвати її JubJub. Робота над JubJub спиралася на новаторські рамки, опубліковані у 2015 році під назвою C∅C∅; основу, яка може бути використана для створення високоефективних складових доказів нульового знання.

Як ми торкалися раніше, однією з проблем, пов’язаних із прийняттям Zcash, були труднощі побудови та перевірки zk-SNARKS. Для контексту врахуйте, що обчислювальний екземпляр, необхідний для перевірки zk-SNARK в поточній версії протоколу, може використовувати більше 3 ГБ оперативної пам'яті вузла. Завдяки JubJub Sapling може знизити використання пам'яті на 98% та дозволить генерувати та перевіряти zk-SNARK на смартфонах. Час доведення також скорочується на 80%, що дозволяє перевірити zk-SNARK лише за сім секунд.

Фінансування Coinbase

Примітка. Ми оновили свою публікацію, щоб відобразити роз'яснення щодо блоку та винагород засновника. Дякую команді Zcash за роз'яснення цієї відмінності.

Zcash використовує неортодоксальну стратегію для фінансування розробки протоколів та винагороди своєї команди. На відміну від Bitcoin, Zcash не дає 100% винагороди за шахту шахтарям. Натомість частина монетної бази кожного блоку переходить безпосередньо до команди Zcash. Вони називають це «винагорода засновників», і він призначений для фінансування основної команди Zcash та ранніх інвесторів. Раніше ця структура була протестована в протоколах, які мають структуру мастернода, як DASH, але вона все ще нетипова для блокчейн PoW, які використовують консенсус Nakamoto.

Нагороди блоку Zcash поділяються за розподілом нижче:

· 3% йде на фонд Zcash

· 2,8% йде на компанію Zcash Electric Moin

· 14,2% припадає на співробітників, радників та засновників Zcash

Таким чином, загалом 20% від загальної суми винагороди припадає на ці організації протягом наступних 4 років. Враховуючи розкладений графік протоколу вдвічі, команда Zcash отримає 10% грошової бази, або 2,1 млн. ZEC, коли всі ЗЕК будуть видобуті. Я мушу зазначити, що це набагато менша частка загальної пропозиції, яка надходить до засновницької групи відносно переважної більшості проектів у космосі.

Ця модель фінансування була суперечливою, враховуючи свою неортодоксальність, і нещодавно викликала заворушення в соціальних мережах, коли про неї стало відомо більше людей. Тим не менш, можна аргументувати, що він поки що позитивно сприяв зростанню Zcash та досліджень навколо zk-SNARKs протягом останніх кількох років. Без виділення значних ресурсів для досліджень було б важко уявити, як в цій часовій рамці могла б бути розроблена сучасна криптографія, використана Sapling.

Підключіться до Digital Asset Research

Для інституційних інвесторів, які хочуть передплатити дослідження DAR, надішліть тут запит на інформацію.

Якщо ви хочете підписатись на нашу безкоштовну щоденну розсилку, підпишіться тут.