Перейти к основному содержимому

Seal на Sui: Программируемый слой секретов для контроля доступа в блокчейне

· 5 мин. чтения
Dora Noda
Software Engineer

Публичные блокчейны предоставляют каждому участнику синхронизированный, проверяемый реестр, но по умолчанию они также раскрывают каждую часть данных. Seal, запущенный в основной сети Sui (Sui Mainnet) 3 сентября 2025 года, решает эту проблему, объединяя логику политики в блокчейне с децентрализованным управлением ключами, чтобы разработчики Web3 могли точно определять, кто получает доступ к расшифровке каких полезных данных.

Краткое содержание

  • Что это: Seal — это сеть управления секретами, которая позволяет смарт-контрактам Sui принудительно применять политики дешифрования в блокчейне, в то время как клиенты шифруют данные с помощью шифрования на основе идентификаторов (IBE) и полагаются на пороговые ключевые серверы для вывода ключей.
  • Почему это важно: Вместо пользовательских бэкендов или непрозрачных внесетевых скриптов, конфиденциальность и контроль доступа становятся первоклассными примитивами Move. Разработчики могут хранить зашифрованные тексты где угодно — Walrus является естественным дополнением — но при этом ограничивать, кто может их читать.
  • Кто выигрывает: Команды, выпускающие медиаконтент с токен-доступом, раскрытие информации по истечении времени, приватные сообщения или ИИ-агентов, осведомленных о политиках, могут подключиться к SDK Seal и сосредоточиться на продуктовой логике, а не на специализированной криптографической инфраструктуре.

Логика политики находится в Move

Пакеты Seal поставляются с функциями Move seal_approve*, которые определяют, кто может запрашивать ключи для данной строки идентификатора и при каких условиях. Политики могут сочетать владение NFT, белые списки, временные блокировки или пользовательские системы ролей. Когда пользователь или агент запрашивает дешифрование, ключевые серверы оценивают эти политики через состояние полного узла Sui и одобряют запрос только в том случае, если блокчейн согласен.

Поскольку правила доступа являются частью вашего пакета в блокчейне, они прозрачны, проверяемы и версионируемы наряду с остальным кодом вашего смарт-контракта. Обновления управления могут быть развернуты, как любое другое обновление Move, с проверкой сообщества и историей в блокчейне.

Пороговая криптография управляет ключами

Seal шифрует данные для идентификаторов, определенных приложением. Комитет независимых ключевых серверов, выбранных разработчиком, разделяет главный секрет IBE. Когда проверка политики пройдена, каждый сервер выводит долю ключа для запрошенного идентификатора. Как только кворум из t серверов отвечает, клиент объединяет доли в пригодный для использования ключ дешифрования.

Вы можете установить компромисс между живучестью и конфиденциальностью, выбирая членов комитета (Ruby Nodes, NodeInfra, Overclock, Studio Mirai, H2O Nodes, Triton One или сервис Enoki от Mysten) и выбирая порог. Нужна более высокая доступность? Выберите более крупный комитет с более низким порогом. Хотите более высокие гарантии конфиденциальности? Ужесточите кворум и полагайтесь на авторизованных провайдеров.

Опыт разработчика: SDK и сеансовые ключи

Seal поставляется с TypeScript SDK (npm i @mysten/seal), который обрабатывает потоки шифрования/дешифрования, форматирование идентификаторов и пакетную обработку. Он также выдает сеансовые ключи, чтобы кошельки не засыпались постоянными запросами, когда приложению требуется повторный доступ. Для расширенных рабочих процессов контракты Move могут запрашивать дешифрование в блокчейне через специализированные режимы, позволяя логике, такой как раскрытие эскроу или аукционы, устойчивые к MEV, выполняться непосредственно в коде смарт-контракта.

Поскольку Seal независим от хранилища, команды могут использовать его в паре с Walrus для проверяемого хранилища больших двоичных объектов, с IPFS или даже с централизованными хранилищами, когда это соответствует операционным реалиям. Граница шифрования — и применение ее политики — перемещается вместе с данными независимо от того, где находится зашифрованный текст.

Проектирование с Seal: Лучшие практики

  • Моделируйте риск доступности: Пороги, такие как 2 из 3 или 3 из 5, напрямую соответствуют гарантиям бесперебойной работы. Промышленные развертывания должны использовать комбинацию провайдеров, отслеживать телеметрию и согласовывать SLA, прежде чем доверять критически важные рабочие процессы.
  • Учитывайте изменчивость состояния: Оценка политики зависит от выполнения полными узлами вызовов dry_run. Избегайте правил, которые зависят от быстро меняющихся счетчиков или порядка внутри контрольных точек, чтобы предотвратить непоследовательные одобрения на разных серверах.
  • Планируйте гигиену ключей: Производные ключи хранятся на клиенте. Настройте логирование, ротируйте сеансовые ключи и рассмотрите конвертное шифрование — используйте Seal для защиты симметричного ключа, который шифрует более крупную полезную нагрузку — чтобы ограничить радиус поражения в случае компрометации устройства.
  • Архитектура для ротации: Комитет зашифрованного текста фиксируется во время шифрования. Создавайте пути обновления, которые повторно шифруют данные через новые комитеты, когда вам нужно сменить провайдеров или скорректировать предположения о доверии.

Что дальше

Дорожная карта Seal указывает на управляемые валидаторами MPC-серверы, клиентские инструменты в стиле DRM и постквантовые опции KEM. Для разработчиков, исследующих ИИ-агентов, премиум-контент или регулируемые потоки данных, сегодняшний релиз уже предоставляет четкий план: кодируйте свою политику в Move, создайте разнообразный ключевой комитет и предоставляйте зашифрованные возможности, которые уважают конфиденциальность пользователей, не выходя за пределы границы доверия Sui.

Если вы рассматриваете Seal для вашего следующего запуска, начните с прототипирования простой политики с NFT-доступом с открытым комитетом 2 из 3, затем итерируйте к комбинации провайдеров и операционных контролей, которые соответствуют профилю риска вашего приложения.