Новости Отчет о проделанной работе. Исследование атомных свопов Monero

Тема в разделе "Новости", создана пользователем Mr. Pickles, 9 авг 2020.

  1. Mr. Pickles

    Команда форума Модератор Редактор

    Регистрация:
    11 сен 2017
    Сообщения:
    793
    Симпатии:
    229
    Приветствую вас, сообщество Monero!

    Два месяца назад мною был размещён запрос CCS на финансирование продолжения моего исследования атомных свопов Monero. Исследование завершено, и я рад представить вам его результаты.

    В этом посте будут кратко изложены результаты исследования, но здесь вы также сможете найти «белую книгу», в которой подробно описан весь протокол и все соответствующие детали.

    Блестящий протокол атомных свопов BTC/XMR!

    Мы сделали это! С помощью MRL, моих коллег и сообщества мы создали первый (насколько нам известно) протокол атомных свопов Bitcoin и Monero. И этот итоговый протокол можно реализовать уже сегодня — больше никакой непонятной криптографии!

    Почему именно сейчас? Что изменилось?

    Когда я начал изучать Monero на предмет возможности проведения атомных свопов Bitcoin/Monero три с половиной года назад, в основе большинства протоколов проведения подобных свопов лежали смарт-контракты HTLC (Hash Time Locked Contract), которые, как все мы знаем, не используются Monero. Таким образом, в начале проекта цель состояла в реализации возможности атомного свопа, в котором вся логика (тайм-ауты, возможные последовательности операций, раскрытие секретов и т. д.) была бы основана на принципах другого блокчейна — блокчейна Bitcoin.

    Вторая трудность, в случае с Monero и Bitcoin, состояла в их соответствующих базовых криптографических параметрах: они используют разные эллиптические кривые, у них разные алгоритмы создания подписи — у них просто нет ничего общего! Это делает данную пару плохим кандидатом с точки зрения применения других типов атомных свопов, которые не используют (исключительно) контракты HTLC.

    В ноябре 2018 года нами был подготовлен проект протокола, учитывающего указанные выше ограничения. Таким образом, требовалось, чтобы из соображений надёжности протокол использовал определенный тип доказательства с нулевым разглашением — доказательства с нулевым разглашением на базе прообраза хэша. Этот тип доказательства не очень распространён, если вообще используется. Итак, в теории протокол работал, но с некоторой непонятной криптографией, что делало его плохим кандидатом для реализации.

    В начале 2020 года, после представления проекта протокола на конгрессе 36C3 в декабре 2019 года, я обнаружил (по ссылке, полученной от Саранга Ноезера (MRL) идею Эндрю Поэлстры по реализации дискретного логарифмического равенства для группового доказательства знания с нулевым разглашением (MRL-0010), что означало, что мы сможем доказать некоторые отношения между элементами в двух разных группах (двух кривых, чтобы было понятно), а также статью Ллойда Фурнье по одноразовым верифицируемым зашифрованным подписям, обеспечивающим раскрытие секрета при помощи ECDSA.

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

    Как это работает

    В общем (и упрощённом) виде протокол работает следующим образом:

    • Monero блокируются на адресе, сгенерированном обоими участниками.

    • Вначале ни один из участников не контролирует адрес полностью — у обоих имеется только половина приватного ключа.

    • Используя межгрупповое доказательство с нулевым разглашением на базе дискретного логарифмического равенства, оба участника доказывают друг другу, что адрес в блокчейне Bitcoin связан с адресом в блокчейне Monero.

    • С помощью скриптов Bitcoin и одноразовых верифицируемых зашифрованных подписей ECDSA один участник раскрывает другому свой частичный приватный ключ, взяв Bitcoin, позволяя другому взять под контроль Monero.
    Если своп происходит успешно, A раскрывается перед B, а если своп будет отменён, B раскроется перед A (у нас есть и третий сценарий, который разъясняется в документе, позволяющий вызвать реакцию и избежать тупиковой ситуации).

    Следующие шаги

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

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

    Заключение

    Спасибо лаборатории MRL и её исследователям за помощь, а также команде CCS и сообществу за поддержку!

    Я надеюсь, что оправдал ожидания сообщества по моему первому запросу CCS — любые отзывы приветствуются!

    ---

    Источник: [CCS Results] Monero Atomic Swaps research

    Перевод:
    Mr. Pickles (@v1docq47)
    Редактирование:
    Agent LvM (@LvMi4)
    Коррекция:
    Kukima (@Kukima)
     
  • О нас

    Наш сайт является одним из уникальных мест, где русскоязычное сообщество Monero может свободно общаться на темы, связанные с этой криптовалютой. Мы стараемся публиковать полезные мануалы и статьи (как собственные, так и переводы с английского) о криптовалюте Monero. Если вы хорошо владеете английским (или можете писать собственные статьи/мануалы) и хотите помочь в переводах и общем развитии Monero для русскоязычной аудитории - свяжитесь с одним из администраторов.