Мультиподпись — это знакомая концепция большинству пользователей Биткойна: транзакция с мультиподписью требует одобрения нескольких сторон, прежде чем ее можно будет выполнить. Мы различаем мультиподписи «n из n», когда число участвующих сторон равно n, и все они должны одобрить, и пороговые подписи «t из n», когда требуется только меньшее число t участников. Утвердить. Криптографические схемы, такие как MuSig, MuSig-DN и MuSig2 для мультиподписей и FROST от Комло и Голдберга для пороговых подписей, могут снизить стоимость транзакций и улучшить конфиденциальность кошельков с мультиподписью.

До сих пор в сообществе Биткойн FROST использовался только в экспериментальных реализациях. В этом посте мы объясняем, почему это так и как мы стремимся продвигать FROST в среде производства биткойнов, посредством нашей недавней публикации проекта BIP для протокола распределенной генерации ключей ChillDKG.

Во-первых, каковы преимущества FROST?

Повышение конфиденциальности и эффективности с MuSig2 и FROST

При использовании MuSig2 и FROST, даже если в процессе подписания участвуют несколько участников, в результате получается одна подпись.

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

MuSig2 и FROST позволяют пользователям Биткойн использовать кошелек с мультиподписью с той же стоимостью транзакции, что и обычный кошелек с одной подписью. Экономическая выгода особенно значительна для систем с большим количеством подписантов и частыми транзакциями, таких как федеративные сайдчейны, такие как Liquid или Fedimint. В отличие от традиционной мультиподписи, которая оставляет отчетливый отпечаток пальца, который позволяет наблюдателям блокчейна идентифицировать транзакции кошелька, кошельки на основе FROST неотличимы от обычных кошельков с одной подписью в блокчейне. Таким образом, они обеспечивают улучшение конфиденциальности по сравнению с традиционными кошельками с мультиподписью.

Хотя MuSig2 получил распространение в индустрии биткойнов, того же нельзя сказать о FROST, насколько нам известно. Это может показаться удивительным, учитывая существование множества реализаций FROST, таких как ZF FROST (от Zcash Foundation), secp256kfun (от Ллойда Фурнье) и экспериментальная реализация в libsecp256k1-zkp (от Джесси Познера и Blockstream Research). Существует даже спецификация IETF для FROST, RFC 9591 (хотя она несовместима с Биткойном из-за настройки Taproot и открытых ключей только для x). Одно из наиболее правдоподобных объяснений заключается в том, что процесс генерации ключей FROST значительно сложнее по сравнению с MuSig2.

Нерешенная загадка FROST в производственных системах

FROST по существу состоит из двух частей: генерации ключей и подписания. Хотя процесс подписания очень похож на процесс подписания в MuSig2, генерация ключей здесь значительно более сложна, чем в MuSig2. Генерация ключей в FROST либо доверенная, либо распределенная:

  1. Генерация доверенного ключа предполагает участие «доверенного дилера», который генерирует ключ и распределяет доли ключей подписавшим сторонам. Дилер представляет собой единую точку отказа: в случае злонамеренного или взлома кошелек FROST рискует быть опустошен.

  2. Распределенная генерация ключей (DKG), хотя и устраняет необходимость в доверенном дилере, создает и свои проблемы: все участники должны участвовать в интерактивной «церемонии» генерации ключей, прежде чем можно будет начать подписание.

Основная задача: соглашение

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

Хотя спецификация IETF полностью исключает DKG, упомянутые выше реализации FROST не реализуют безопасное соглашение, оставляя эту задачу пользователю библиотеки. Однако реализовать соглашение непросто: существует бесчисленное множество протоколов и разновидностей соглашений, начиная от простых схем эхо-вещания и заканчивая полноценными византийскими протоколами консенсуса, и их гарантии безопасности и доступности существенно различаются, а иногда и незначительно.

Несмотря на путаницу, которая может возникнуть из-за этого джунгля протоколов соглашений, точный смысл соглашения, на который опирается DKG, часто не доводится до сведения инженеров, оставляя их в неведении.

ChillDKG: отдельный DKG для FROST

Чтобы преодолеть это препятствие, мы предлагаем ChillDKG, новый «готовый к использованию» протокол DKG, адаптированный для использования в FROST (проект). Мы предоставляем подробное описание в виде проекта предложения по улучшению Биткойна (BIP), которое призвано служить спецификацией для разработчиков.

Основная особенность ChillDKG заключается в том, что он является автономным: установление безопасной связи и безопасное соглашение выполняются в рамках протокола, в то время как вся эта базовая сложность скрыта за простым и недоступным для злоупотреблений API. В результате ChillDKG готов к использованию на практике и не полагается на какие-либо предположения о настройке, за исключением того, что каждая подписывающая сторона выбрала набор соподписавших сторон, определенный отдельными открытыми ключами. ChillDKG основан на протоколе SimplPedPop, в разработке и формальном доказательстве безопасности которого принимали участие Blockstream Research, см. статью CRYPTO 2023 «Практические пороговые подписи Шнорра без модели алгебраической группы» Чу, Герхарта, Раффинга (Blockstream Research) и Шредер

Дополнительные цели дизайна ChillDKG включают в себя:

  • Широкая применимость: ChillDKG поддерживает широкий спектр сценариев: от тех, где подписывающие устройства принадлежат и подключены одному лицу, до тех, где несколько владельцев управляют устройствами из разных мест.

  • Простое резервное копирование: вместо резервного копирования секретов, полученных от других подписантов, в безопасном месте, ChillDKG позволяет восстанавливать кошелек исключительно на основе начального значения устройства и общедоступных данных, которые одинаковы для всех участников DKG. Следовательно, злоумышленник, получивший доступ к общедоступным резервным данным, не получает секретный ключ подписи, и если пользователь потеряет свою резервную копию, он может запросить ее у другого честного подписывающего лица.

ChillDKG BIP в настоящее время находится на стадии проекта, и мы ждем отзывов о вариантах дизайна и деталях реализации. Хотя спецификация в основном завершена, в ней отсутствуют тестовые векторы, и мы рассматриваем возможность добавления некоторых дополнительных функций (например, «идентифицируемых прерываний»). После завершения ChillDKG BIP можно использовать в сочетании с BIP для подписи FROST для создания экземпляра всего протокола FROST.

Это гостевой пост Джонаса Ника, Киары Бикерс и Тима Раффинга. Высказанные мнения являются полностью их собственными и не обязательно отражают точку зрения BTC Inc или Bitcoin Magazine.

Источник: Журнал Биткойн.

Сообщение Ключ к FROST: Что такое распределенная генерация ключей? впервые появился в Crypto Breaking News.