Privacy в блокчейне. Спикер: Nick Bailo
Главный вопрос лекции понятие Privacy и его место в Блокчейн.
Значение слово Privacy достаточно емкое и содержательное - перевод на русский язык одним словом не раскроет весь его смысл, по этой причине в данной лекции определим его как конфиденциальность и анонимность.
Также попробуем дать описание Privacy художественным языком:
Privacy в финансах
Privacy в финансах важно по следующим причинам:
- Может произойти непреднамеренная утечка информации из покупки
- Влияние на чувствительный бизнес - бизнес в котором важно не раскрывать информацию о личностях, которые совершают платежи
- Открытая информация о финансах - легкая цель для криминала
- Подобная информация - широкое пространство для аналитики
Privacy в контексте Блокчейн
Privacy в Блокчейн можно рассматривать по двум критериям, которые дают понять о степени такого рода понятия:
- Несвязность
- Неотслеживаемость
Разберем эти параметры на примере Блокчейн Bitcoin:
Privacy в Bitcoin находится на низком уровне, поскольку два этих параметра не соблюдаются:
- первый за счет архитектуры сети - каждая транзакция ссылается на предыдущую
- второй за счет параметра amount, который показывает количество переведенных транзакций
Введем третий критерий, который не относится к Блокчейн, но относится к финансам:
Это такой критерий как взаимозаменяемость. На примере фиатных денег - это выражается в их «однородности». В случае с Bitcoin этот критерий нарушен, в том ключе, что каждый биткоин не идентичен, так как за ним стоит целая цепочка транзакций.
Далее рассмотрим некоторые составляющие, которые повышают обеспечение Privacy в Bitcoin:
- Грегори Максвелл написал такой концепт как CoinJoin
Из схемы видно как это работает: в Bitcoin есть вход и выход транзакции (input и output), с CoinJoin - две транзакции собираются в одну и смешиваются, в результате сложно понять кому принадлежит какой вход и выход. По этому принципу построены практически все присутствующие в сети миксеры. Но это достаточно ненадежный подход в связи с тем, что миксером выступает централизованный сервис.
И здесь стоит отметить такой проект как JoinMarket - децентрализованный сервис по совершению CoinJoin транзакций, который также не лишен недостатков: вход и выход имеют одно и то же значение, потенциально это может привести к снижению критерия «Неотслеживаемость».
- Confidential Transactions
Валидация транзакций происходит следующим образом:
сколько ушло = столько пришло - тогда транзакция валидна
Суть Confidential Transactions:
В первой строчке - 10 на входе и 10 на выходе
Во второй строчке - мы можем разложить данные числа и ничего принципиально не поменяется
В третьей строчке - выступает так называемый ослепляющий фактор, то есть, если отправитель и получатель знают об одном и том же значении А, то никто другой, кроме двух участников, не знает точной суммы транзакции.
- Stealth Addresses
Концепт, который позволяет отправителю сгенерировать случайный одноразовый адрес и увидеть его среди других транзакций может только получатель.
- MimbleWimble
Данный концепт представляет собой синергию расширенного CoinJoin и Confidential Transactions. MimbleWimble отказывается от классического понятия транзакция и заменяет его блоком, который включает несколько списков:
- Список входов
- Список выходов
- Список валидаций и подписей выходов
Следовательно, для валидации транзакций достаточно знать специфический валидный выход, для чего необходимо иметь заголовок всех блоков (индекс блока, без транзакции) и подпись.
Для реализации MimbleWimble в Блокчейн Bitcoin потребовались бы глобальные изменения Bitcoin и данный концепт вылился в проект Grin.
Все вышеупомянутые проекты построены на инфраструктуре Bitcoin. Сейчас разберем проекты, которые прямо заявляют об обеспечении Privacy:
- Monero
Протокол Monero использует концепт кольцевой подписи, это позволяет подписать транзакцию не от имени отправителя, а от имени группы.
После обновления протокола получился концепт связавший кольцевую подпись и концепт Confidential Transactions и экосистема Monero сейчас выглядит:
- Zcash
Команда Zcash написала протокол Zero Proof Knowledge - доказательство с нулевым разглашением. Провалидировать это могут немногие люди, поэтому очень сложно математически объяснить принцип работы протокола.
Спикер данной лекции осветил большую часть актуальной информации по аспектам и решениям в сфере Privacy в Блокчейн.