Вы здесь

О протоколах Dandelion и Mimblewimble

Тема конфиденциальности в контексте криптовалют часто упоминается в различных статьях и является центром внимания разных проектов. Во многих случаях, однако, слово "конфиденциальность" служит зонтичным термином для широкого спектра аспектов и часто искажается или неправильно понимается.

О протоколах Dandelion и Mimblewimble

Конфиденциальность в Биткоине

В Биткоине, например, все адреса пользователей, участвующих в транзакциях, а также значения транзакций полностью видны и записаны в блокчейне.

Это не должно было быть проблемой, так как сами адреса по идее должны быть анонимными, и, следовательно, информации, что кто-то кому-то послал какое-то количество биткоинов, было бы само по себе недостаточно для существенного нарушения конфиденциальности пользователей в сети Биткоина.

Как оказалось, деанонимизировать адрес относительно просто и, таким образом, связать его с реальной личностью человека, под чьим контролем он находится. Как только это происходит, все транзакции, выполненные с или на этот адрес, становятся видимыми и отслеживаемыми с начала блокчейна и до самого последнего блока. Это, конечно, кардинально меняет ситуацию.

Биткоин больше не может называться анонимным в каком бы то ни было значении этого слова. Как только нарушается анонимность адреса, вся история транзакций становится полностью доступной.

О Mimblewimble


Лютный переулок: Заклинание Мимбл Вимбл в Гарри Поттере-Уорнер Бразерс

Mimblewimble – это новый и элегантный протокол, задача которого - повышение конфиденциальности блокчейн-транзакций без ущерба для масштабируемости. В этом протоколе нет адресов, а все значения транзакций скрыты за "ослепляющими факторами" — закрытыми ключами, которые шифруют значение транзакции в блокчейне. Рассматривая отдельную транзакцию, можно увидеть только ряд криптографических обязательств, представляющих входы и выходы. Однако из этих данных невозможно извлечь никакой информации.

Несмотря на строгие гарантии конфиденциальности, даже в Mimblewimble все еще можно записывать обязательства, которые являются уникальными для каждой получаемой транзакции, и прослеживать, какие входы в какие выходы преобразуются, таким образом, эффективно реконструируя граф транзакций. Это можно легко сделать путем добавления узла в сеть для мониторинга всех транзакций по мере их распространения по сети. Это само по себе не является существенным нарушением конфиденциальности, поскольку даже если конкретный UTXO был деанонимизирован, это не приводит (в отличие от биткоина) к деанонимизации всей истории транзакций для этого пользователя.

Однако исследования показали [1,2], что в случае использования простого протокола Сплетен [3] можно вычислить исходный IP транзакции со значительной вероятностью (более 30%), что в определенных случаях может привести к деанонимизации конкретных IP. Это возможно при наличии достаточного количества узлов "злоумышленников" в системе или одного узла, подключенного ко всем другим узлам, записывающих IP-адреса транзакций, синхронизирующих каждое событие транзакции и наблюдающих за динамикой распространения.

Решение? Dandelion!

Dandelion ++ [4] представляет собой легкий по весу протокол, предложенный Джулией Фанти и др., который предназначен для снижения этих рисков и значительного снижения вероятности выяснения происхождения. В их предложении процесс распространения транзакций подразделяется на две фазы:

  1. Стадия Stem (стебля), в которой каждый узел отправляет транзакцию только одному случайно выбранному узлу;
  2. Фаза Fluff (пуха), в которой транзакция отправляется всем участникам, тем самым возвращаясь к протоколу сплетен.

Если представить это в виде схемы, то визуально она будет похожа на одуванчик с длинным стеблем и пушистой головкой, отсюда и название протокола.

Все транзакции начинаются в фазе Stem, и каждый узел принимает независимое решение, продолжать ли фазу Stem или переключиться на Fluff, «бросая кости» с предопределенной вероятностью. При этом шанс, что узел "злоумышленника" первым получит сведения о транзакции в фазе Stem значительно меньше, и, таким образом, обнаружение исходного IP-адреса становится непрактично трудным.

В Mimblewimble, благодаря специфической структуре транзакций, Dandelion может быть дополнительно улучшен с помощью так называемого "смещения транзакций", которое позволяет объединить несколько транзакций и необратимо смешать их входы и выходы. Это означает, что даже если узел вдоль фазы Stem определен как источник некой транзакции, было бы невозможно определить, какие входы и выходы он содержал изначально.

В целом, Dandelion обеспечивает значительное улучшение конфиденциальности P2P-слоя любой криптовалюты. В Mimblewimble он дополнительно улучшен с помощью некоторых специфичных для протокола трюков, что делает его еще более надежным против потенциальных злоумышленников.

Ссылки:

[1] Алексей Бирюков, Дмитрий Ховратович и Иван Пустогаров. 2014. Деанонимизация клиентов в одноранговой сети Биткоин.
В материалах конференции ACM SIGSAC 2014 по компьютерной и коммуникационной безопасности. ACM, 15-29.
[2] Филипп Коши, Диана Коши и Патрик Макдэниел. 2014. Анализ анонимности в биткоине с использованием трафика одноранговой сети.
На международной конференции по финансовой криптографии и безопасности данных. Springer, 469-485.
[3] https://en.wikipedia.org/wiki/Gossip_protocol
[4] Dandelion++: легкая криптовалютная сеть с формальными гарантиями анонимности (https://arxiv.org/abs/1805.11060)
Категория: 
Безопасность
Монета: 
Технология: 
2
Ваша оценка: Нет Средняя: 2 (1 оценка)
19977 / 0
Аватар пользователя Daritas
Публикацию добавил: Daritas
Дата публикации: чт, 04/18/2019 - 10:02

Что еще почитать: