Skip to main content
Эта страница — канонический реестр внешних проверок безопасности компонентов Intention. Здесь сказано, что уже проаудировано, что находится на проверке и — что не менее важно — что ещё не аудировалось.

Текущий статус

Межблокчейновый мост — тот компонент, который сейчас проходит внешнюю проверку безопасности. В объём входят контракты на внешнем блокчейне и инфраструктура подписантов за ними: хранение средств, проверка подписей, двухфазный путь вывода средств и его период оспаривания, а также распространение набора валидаторов через границу блокчейнов. Мост поставили в приоритет намеренно. Это единственный компонент, чья модель безопасности — не модель самой сети: половина его работает на другом блокчейне, со своими валидаторами и своими режимами отказа, и именно здесь компрометация напрямую превращается в потерянные средства. Остальной протокол проверяется воспроизведением блоков; контракт моста на внешнем блокчейне — нет. Аудитор и отчёт будут опубликованы здесь по завершении, вместе с объёмом и находками.
Сейчас это единственный внешний аудит в работе. Остальные компоненты — ядро исполнения, консенсус и клиринговая палата — закрыты внутренними мерами контроля, описанными ниже, а не внешней проверкой. Отсутствие опубликованного аудита не доказывает отсутствия дефектов. Оценивайте соответственно, особенно до запуска мейннета.

Как читать отчёт, когда он выйдет

Полезный аудит отвечает на три вопроса: что входило в объём, что аудиторы на самом деле изучили и что осталось открытым на момент публикации. В каждом отчёте, который здесь появится, все три будут проговорены явно.
  • Объём — это хеш коммита плюс поимённый список компонентов. Файл или контракт, которого в списке нет, не аудировался.
  • Находки разложены по уровням серьёзности. Находки с принятым риском идут с обоснованием и описанием смягчающих мер, а не выбрасываются из отчёта.
  • Изменения после аудита отслеживаются отдельно. Любое изменение, которое после аудита затронуло проаудированный код, помечается, чтобы было видно, описывает ли опубликованный отчёт систему, которая работает сейчас.
Именно этого пункта чаще всего и не хватает в чужих отчётах. Аудит описывает конкретный коммит. Код, изменившийся с тех пор, — это код, который никто не проверял, и отчёт, который об этом не говорит, преувеличивает своё покрытие.

Непрерывная проверка

Разовые аудиты стоят поверх мер контроля, которые работают непрерывно:
  • Обязательное ревью на каждое изменение ядра, консенсуса и моста.
  • Фаззинг и тестирование свойств машин состояний — сопоставления, риска и расчёта, — включая проверки детерминированности: они воспроизводят зафиксированные блоки и побайтово сравнивают результаты.
  • Дифференциальное тестирование между независимыми сборками движка: расхождение считается багом консенсуса, а не падением теста.
  • Публичная программа bug bounty для постоянного внешнего покрытия.

Что дальше

Bug bounty

Объём, уровни серьёзности и как сообщить об уязвимости.

Раскрытие рисков

Что остаётся незакрытым, сказано прямо.

Мост

Компонент на проверке и где лежат его допущения о доверии.

Этапы развития

Что реализовано и что ждёт дат впереди.
Вопросы об объёме аудита или о конкретной находке — на contact@intention.xyz. Сообщения об уязвимостях должны идти по процессу со страницы bug bounty, а не подниматься здесь.