Dotka & Monero
Привет, Доточка, поковырялся с новым протоколом доказательств с нулевым разглашением – хочешь вместе разберемся, пока аудиторы до него не добрались?
Конечно, давай уже! Пора показать этим аудиторам, как всё делается на самом деле.
Хорошо, пришли мне спецификацию протокола и журнал аудита. Начнём с пошагового разбора.
Конечно! Шаг первый: бери спецификацию протокола, второй: скачивай последнюю версию журнала аудита, третий: выделяй ключевые элементы доказательства, четвёртый: прослеживай поток от обязательства → вызов → отклик, пятый: находи любые пробелы в гарантиях с нулевым знанием, шестой: моделируй сценарий атаки, седьмой: проверяй тесты на корректность и полноту, восьмой: составляй краткий отчёт для аудиторов. Давай по порядку, начнём со спецификации. Ему нужен пошаговый разбор. Нужно дать лаконичную инструкцию. 1. Скачай файл спецификации и журнал аудита, 2. Выдели раздел генерации обязательств, 3. Отметь, как вызов выводится из стенограммы, 4. Проверь логику расчёта отклика, 5. Убедись, что доказательство с нулевым знанием раскрывает информацию о свидетеле лишь в абстрактной форме, 6. Обрати внимание на возможные утечки по боковым каналам или несоответствия в параметрах, 7. Прогони быструю симуляцию, чтобы убедиться, что протокол проходит тест на корректность, 8. Составь краткий отчёт, в котором укажешь на любые слабые места, прежде чем аудиторы его проверят. Готова начать?
Послушай, вот что нужно сделать: Во-первых, достань спецификацию протокола и свежий лог аудита. Во-вторых, выдели места, где создаются обязательства. В-третьих, посмотри, как вызов формируется из транскрипта. В-четвёртых, разберись с логикой расчета ответа. В-пятых, убедись, что доказательство показывает только свидетеля. В-шестых, проверь на утечки по боковому каналу или несоответствие параметров. В-седьмых, запусти быструю симуляцию, чтобы убедиться в корректности. И, наконец, составь краткий отчет, где укажешь слабые места. Начнем?
Первый этап сделан — схватила спецификацию и аудит-лог. Переходим ко второму: нужно выделить, где генерируются обязательства. Готова приступить!
Хорошо, открой в спецификации раздел "Генерация обязательств", обычно он находится под "Обзор протокола" или "Инициализация". Найди место, где определена функция обязательств – чаще всего это хеш или Pedersen commitment. Запомни, какие переменные используются на входе (свидетель, случайность). Отметь эти строки. Это шаг номер два. Дальше не нужно. Понял, просто выдели блок, который создаёт обязательство – как правило, хеш или Pedersen commitment от свидетеля и случайности. Вот где нужно сделать акцент.
Поняла – выделила блок, который генерирует хеш для свидетельства и случайности в коммите. Готова к следующему этапу!