Анонимизация и деанонимизация пользователей в блокчейн-сетях. Спикер: Григорий Васильков
Из данной лекции вы узнаете об основных способах анонимизации и деанонимизация пользователей в сети Блокчейн, видах блокчейн систем, позволяющих анонимизировать транзакции, а также методах, которые помогают деанонимизировать пользователей.
Вспомним зарождение Биткоин
В 2009 году появился блокчейн Биткоин. Особенность сети заключалась в том, что появилась возможность совершать переводы между узлами пиринговой сети не выплачивая комиссию третьим лицам и не раскрывая информацию об участниках транзакции.
Блокчейн и анонимность
Существует три основных причины, по которым Блокчейн считают анонимным:
- Блокчейн-адреса не привязаны к личности пользователя
- Транзакции между пользователях сети не требуют раскрытия информации об участниками
- При отправке транзакции в мемори пул, информация о данной транзакция поступает рандомным узлам
Важно отметить, что классические блокчейн системы (Биткоин, Эфириум, Лайткоин и т.п.) не являются анонимными по своей природе, а являются псевдо-анонимными, поскольку стоит хоть один раз нарушить правила безопасности - появится возможность идентифицировать пользователя
Рассмотрим три основных способа деанонимизации пользователя в сети Блокчейн:
- Если злоумышленник подключит собственные ноды к сети, то у него появиться возможность определить источник конкретной транзакции, если данная транзакции при попадании в мемпул проходит через ноды злоумышленника
- Если адрес публичного кошелька стал доступен третьим лицам, то пользователя данного кошелька можно идентифицировать
- Все транзакции в сети Блокчейн доступны и прозрачны в публичном виде, что позволяет построить метрики и, используя открытые данные сети, связать несколько блокчейн-адресов и отнести их к конкретному пользователю
Разберем алгоритмы анонимизации в блокчейн системах
- Zero-knowledge proof
Zero-knowledge proof - интерактивный криптографический протокол, который позволяет проверяющему удостовериться в истинности определенной информации, предоставляемой проверяемым, не раскрывая собственно информацию.
На примере высокоуровневой модели рассмотрим каким образом данный доказательство работает
Игра Судоку
Цель игры заключается в том, чтобы в каждом маленьком квадрате разместить цифры от 1 до 9, при этом данный маленький квадрат должен коррелировать с большим квадратом, то есть цифры в одной строке квадрата 3×3 не должны совпадать и также содержать набор от 1 до 9.
Предположим, что пользователь (заказчик) не умеет играть в судоку, но ему необходимо получить правильное решение. Один из способов - найти человека (исполнителя), который за определенное вознаграждение решить эту задачу и предоставит результат. Но, как убедиться в правильности данных, если нет доверенного контакта или третьей стороны для подтверждения? Как убедиться в том, что если заказчик заплатит, исполнитель выполнит работу?
Один из методов проверки информации в конкретном случае: исполнитель предоставляет хеши всех строк, столбцов и квадратов, после чего заказчик запрашивает данные по одному квадрату, сравнивает с хешами, если все совпадает, следовательно, у исполнителя есть решение. Таким образом, не раскрывая данных полностью, исполнитель доказывает наличие правильного ответа.
Отметим криптовалюты с Zero-knowledge proof доказательством
- Кольцевые подписи
Кольцевые подписи в Блокчейн - групповые подписи, которое используются в анонимных криптовалютах.
Это значит, что группа пользователей подписывает транзакции, но невозможно идентифицировать из группы определенного пользователя.
Криптовалюты, поддерживающие кольцевые подписи
- Миксер
Данный способ анонимизации заключается в том, что транзакции от множества пользователей поступают в определенные узлы (Мастерноды), где перемешиваются, комбинируя идентичные входы в единую транзакцию с несколькими выходами.
- Анонимность в смарт-контрактах
Технологии, которые пытаются внедрить в смарт-контракты для обеспечения анонимности:
ZkSnarks - не интерактивное доказательство знания с нулевым разглашением
ZkStarks - технология, похожая на ZkSnarks, но, в которой происходит не формирование секретного свидетельства, а формирование хешей. Данная технология молодая и еще нигде практически не реализована
Bulletproof - технология предполагает уменьшение объема транзакций до 80%
HAWK - позволяет передавать средства через смарт-контракт, без обнаружения передачи
Также к алгоритмам анонимизации можно выделить использование отдельных криптовалют
DeepOnion - использует для анонимности мультиподписи
Stealthcoin - позволяет осуществлять анонимные платежи, используя технологию Stealth Text и SMS (привычные текстовые сообщения)
NAV Coin - предлагает использовать сайдчейн, детали функционирования системы пока неизвестны
Выделим основные способы анонимизации пользователей в Блокчейн:
- Lightning Network, Raiden Network
Lightning Network (для сети Биткоин), Raiden Network (для сети Эфириум) позволяют проводить платежи между пользователями, не записывая все данные в Блокчейн, только факт открытия и закрытия платежного канала.
Более подробно о технологии
Lightning Network https://golos.io/ru--blokcheijn/@cyberevents/lightning-tekushii-status-razrabotok-i-perspektivy-vnedreniya-spiker-pankov-aleksandr
Raiden Network https://golos.io/ru--blokcheijn/@cyberevents/mikroplatezhi-na-ethereum-raiden-network-spiker-aleksandr-bazhanov
- Атомарная транзакция (Atomic Swap)
Атомарная транзакция - обмен одной криптовалюты на другую без посредников.
- Криптовалютные биржи и обменники
- Сокрытие IP адреса (TOR)
IP адрес может быть использован для связи пользователя с проведенными им транзакциями, но этого можно избежать посредством «луковой маршрутизации», наиболее ярким воплощением является TOR
- Wallet
Специализированные кошельки со встроенной функцией смешивания криптовалют
Рассмотрев способы анонимизации в Блокчейн, выделим основные способы деанонимизации в сети
- Web Crawling
Если в сети Интернет опубликован адрес кошелька пользователя с привязкой к идентификатору, то появляется возможность деанонимизировать данного пользователя
- Online Wallets
Все кошельки используют логи пользователя, следовательно имеют доступ к персональной информации
- Exchanges, Gambling, Merchants
Многие криптовалюты сотрудничают с правоохранительными органами и предоставляют информацию о пользователях по запросу. Данная информация может быть собрана посредством процедуры KYC (Know your customer)