Что такое подпись BLS?
Подпись BLS — это схема цифровой подписи, используемая в криптовалютных системах для подтверждения того, что сообщение было одобрено владельцем приватного ключа.Название BLS образовано от фамилий Boneh, Lynn и Shacham — исследователей, представивших схему коротких подписей в статье Short Signatures from the Weil Pairing.
В криптовалютах подписи BLS особенно ценны тем, что множество отдельных подписей можно объединить в одну компактную агрегированную подпись.Такая возможность агрегирования помогает блокчейнам сокращать объем хранимых данных и требования к пропускной способности, а также эффективнее проверять большое количество подтверждений валидаторов.Обычная цифровая подпись доказывает, что один приватный ключ подписал одно сообщение. Агрегированная подпись BLS может подтвердить, что несколько приватных ключей подписали сообщения, не требуя отдельного хранения каждой подписи.Это делает подписи BLS полезными в консенсусе Proof of Stake, комитетах валидаторов, пороговой подписи, кошельках с мультиподписью, кроссчейн-взаимодействии и других системах, где нескольким участникам нужно одобрить одно событие.В проекте стандарта CFRG BLS Signature BLS описывается как детерминированная, немодифицируемая и эффективная схема цифровой подписи со свойствами агрегирования.
Для пользователей криптовалют самое простое объяснение таково: подпись BLS помогает блокчейну подтверждать множество одобрений, используя меньше данных.Почему подписи BLS важны для криптовалют
Блокчейнам часто нужно быстро проверять большое количество подписей.Валидаторы подписывают блоки, аттестации, контрольные точки, голоса, сообщения мостов, отчеты оракулов и действия по управлению.Если каждую подпись нужно хранить и проверять отдельно, сети может потребоваться больше места на диске, пропускной способности и вычислительных ресурсов.Подписи BLS помогают решить эту проблему, позволяя сжимать несколько подписей в одну.Это особенно полезно, когда одно сообщение подписывает множество валидаторов, например при подтверждении блока или голосовании за финализацию.Вместо передачи по сети сотен или тысяч подписей участники могут отправить одну агрегированную подпись вместе с соответствующими публичными ключами или списком участников.В результате архитектура блокчейн-систем с большим числом валидаторов может стать более лаконичной и масштабируемой.Это не означает, что блокчейн автоматически становится быстрее в любой ситуации, но дает разработчикам протоколов мощный криптографический инструмент для сокращения накладных расходов на подписи.Как работает подпись BLS
Для подписи BLS нужны приватный ключ, публичный ключ и сообщение.Приватный ключ — это секретное число, которое нельзя никому передавать.Публичный ключ выводится из приватного и может передаваться сети.Когда валидатор или кошелек подписывает сообщение, сначала оно отображается в точку на эллиптической кривой.Это преобразование нужно выполнять правильно, поскольку небезопасное хеширование может ослабить защиту схемы подписи.В спецификации RFC 9380 по хешированию в точки кривой описаны методы безопасного преобразования произвольных строк байтов в точки эллиптической кривой.
После отображения сообщения в точку кривой подписант с помощью приватного ключа создает точку подписи.Затем проверяющий использует публичный ключ, сообщение и математическую операцию, называемую билинейным спариванием, чтобы проверить подпись.Именно спаривание отличает подписи BLS от многих других схем подписи.Оно позволяет проверяющему убедиться, что приватный ключ использован корректно, не раскрывая сам ключ.Что такое агрегирование подписей?
Агрегирование подписей — это возможность объединять множество действительных подписей в одну.В BLS агрегирование возможно потому, что подписи представляют собой точки эллиптической кривой, которые можно складывать.Если десять валидаторов подпишут одно сообщение, их десять подписей BLS можно объединить в одну агрегированную подпись.Если контрольную точку подпишут тысяча валидаторов, их подписи также можно объединить в одну агрегированную подпись.После этого проверяющий может проверить агрегированную подпись с помощью публичных ключей участвовавших валидаторов.Это ценно, поскольку итоговое доказательство может быть намного меньше исходного набора подписей.Для блокчейнов более компактные доказательства могут означать меньший размер блоков, более быструю передачу данных и меньшую нагрузку на сеть.Для пользователей это может улучшить инфраструктуру, работающую в фоновом режиме и помогающую сети оставаться отзывчивой и масштабируемой.Для разработчиков агрегирование BLS упрощает создание протоколов, в которых множество независимых участников должны подписывать одни и те же данные.Подписи BLS и валидаторы Proof of Stake
Подписи BLS часто обсуждаются при проектировании блокчейнов на Proof of Stake, поскольку валидаторам регулярно нужно подтверждать согласие с определенными событиями сети.Валидатору может потребоваться подписать предложение блока, аттестацию или голос за финализацию.Когда подписи ставят многие валидаторы, сети нужен надежный способ учитывать эти одобрения, не сохраняя избыточные данные постоянно.Агрегирование BLS полезно тем, что позволяет представить множество одобрений валидаторов в виде одного компактного криптографического объекта.Спецификации консенсуса Ethereum — известный пример реализации Proof of Stake, в консенсусном уровне которой используется логика подписей, связанная с BLS.
Это важно для изучения криптовалют, поскольку показывает, что подписи BLS — не просто теоретическая идея из криптографии.Они используются в реальных блокчейн-системах для координации большого числа валидаторов.Без агрегирования системам с большим числом валидаторов может потребоваться больше пропускной способности и места для хранения, чтобы обеспечить тот же уровень криптографической подотчетности.BLS12-381 и подписи BLS
Подписи BLS часто применяются с эллиптической кривой, поддерживающей спаривание и называемой BLS12-381.Это может сбивать с толку, поскольку BLS входит и в название схемы подписи, и в название семейства кривых.В термине «подпись BLS» BLS означает Boneh, Lynn и Shacham.В термине «BLS12-381» BLS обозначает семейство кривых, поддерживающих спаривание, названное в честь Barreto, Lynn и Scott.На практике эти термины связаны: для подписей BLS нужны кривые, поддерживающие спаривание, а BLS12-381 — распространенный выбор кривой в современных криптовалютных системах.Кривая, поддерживающая спаривание, обеспечивает операцию билинейного спаривания, от которой зависит проверка подписей BLS.BLS12-381 популярна благодаря балансу практической производительности и высокого уровня безопасности для многих блокчейн-приложений.Однако разработчикам не следует считать, что любая система на BLS12-381 автоматически совместима со всеми остальными реализациями BLS.Совместимость также зависит от наборов шифров, правил сериализации, методов хеширования в точки кривой, разделения доменов, проверок подгрупп и использования протоколом доказательства владения ключом.Основные компоненты схемы подписи BLS
Схема подписи BLS включает генерацию ключей, подписание, проверку и агрегирование.При генерации создается пара из приватного и публичного ключей.Для подписания сообщения используется приватный ключ.При проверке определяется, действительна ли подпись для данного сообщения и публичного ключа.Агрегирование объединяет несколько подписей в одну.При проверке агрегированной подписи устанавливается, действительна ли объединенная подпись для соответствующих сообщений и публичных ключей.Многие реальные реализации также включают проверку публичных ключей, проверку подгрупп, идентификаторы наборов шифров, теги разделения доменов и защиту от атак с подменой ключа.Эти детали могут показаться техническими, но они необходимы для безопасной криптовалютной инфраструктуры.Небольшая ошибка в реализации может превратить надежную схему подписи в уязвимую систему.Схемы BLS: базовая, расширенная и с доказательством владения ключом
В проекте стандарта CFRG BLS описаны разные варианты схемы BLS для различных требований к безопасности и производительности.Базовая схема проста, но при работе с несколькими публичными ключами требует осторожности.Расширенная схема включает публичный ключ в исходные данные подписываемого сообщения, что помогает защититься от некоторых проблем, связанных с агрегированием.Схема с доказательством владения ключом требует, чтобы подписант подтвердил контроль над приватным ключом, соответствующим публичному, прежде чем этот публичный ключ будет принят для агрегирования.Доказательство владения важно, поскольку агрегирование BLS может быть уязвимо к атаке с подменой ключа, если публичные ключи принимаются без надлежащей проверки.Во время такой атаки злоумышленник может выбрать публичный ключ, который математически компенсирует или изменяет влияние ключа другого участника.Безопасные системы предотвращают это, проверяя ключи и требуя доказательств того, что пользователи знают соответствующие приватные ключи.Для валидаторов блокчейна это особенно важно: идентификаторы валидаторов и их право голоса не должны подделываться с помощью манипуляций с публичными ключами.Что такое атака с подменой ключа?
Атака с подменой ключа — это угроза, которая может возникнуть в системах с мультиподписью или агрегированными подписями.Злоумышленник не обязательно взламывает криптографию напрямую.Вместо этого он регистрирует вредоносный публичный ключ, связанный с публичным ключом другого человека.Если протокол не требует доказательства владения приватным ключом, злоумышленник может заставить агрегированную подпись выглядеть действительной, хотя это не так.Поэтому проверка публичных ключей и доказательство владения критически важны для многих криптовалютных систем на основе BLS.Надежная схема BLS проверяет не только итоговую подпись.Она также проверяет, что каждый публичный ключ действителен, принадлежит заявленному участнику и соответствует правилам подгруппы и кодирования.Для пользователей главный вывод прост: BLS — мощный инструмент, но его необходимо реализовывать с соблюдением правильных мер безопасности.Подписи BLS и традиционные цифровые подписи
Традиционные цифровые подписи, такие как ECDSA и подписи на основе Schnorr, позволяют подтверждать владение приватным ключом и авторизовывать транзакции.Подписи BLS выполняют ту же основную функцию, но обладают полезными свойствами агрегирования.Проверка отдельной подписи BLS может быть медленнее, чем некоторых более простых схем, поскольку операции спаривания требуют значительных вычислительных ресурсов.Однако BLS может быть привлекательным вариантом, когда необходимо объединить и совместно проверить множество подписей.Это компромисс между затратами на проверку одной подписи и эффективностью проверки агрегированных подписей.Для одного простого платежа BLS не всегда будет очевидным лучшим выбором.Для комитета валидаторов или системы пороговой подписи BLS может быть очень полезен, поскольку позволяет компактно представлять множество подписей.Криптопротоколы выбирают схемы подписи в соответствии со своими целями, а не потому, что какая-либо одна схема подходит для всех случаев.Подписи BLS в системах с мультиподписью
В системе с мультиподписью действие должны одобрить несколько подписантов.Например, для перевода с кошелька казначейства может потребоваться одобрение нескольких участников команды.Подписи BLS подходят для систем с мультиподписью, поскольку подписи разных приватных ключей можно объединить.Это может сделать итоговую подпись компактнее и упростить ее проверку по сравнению с отдельным хранением каждого одобрения.В некоторых схемах мультиподпись BLS выглядит в блокчейне как одна подпись, хотя операцию одобрили многие люди.Это может повысить конфиденциальность, сократить объем данных и упростить работу со сложными политиками авторизации.Однако системе по-прежнему нужны безопасная регистрация ключей, доказательство владения, четкие правила подписания и защита от атак повторного воспроизведения.Компактная подпись полезна только в том случае, если окружающая архитектура кошелька или протокола безопасна.Подписи BLS в пороговой криптографии
Пороговая криптография позволяет группе совместно управлять ключом подписи.Для получения действительной подписи пороговое правило может требовать участия трех из пяти участников, десяти из пятнадцати валидаторов или другого минимального числа участников.BLS хорошо сочетается с некоторыми схемами пороговой подписи, поскольку частичные подписи можно объединить в одну итоговую.Это помогает децентрализованным системам не зависеть от одного приватного ключа, который контролирует один человек или один сервер.В криптовалютном хранении пороговая подпись может уменьшить риск единой точки отказа.В блокчейн-инфраструктуре она может использоваться в мостах, кластерах валидаторов, сетях оракулов и децентрализованных системах управления.Главное преимущество состоит в том, что ни одному подписанту не нужно единолично обладать всей властью подписи.Основной риск заключается в сложности пороговых систем: их необходимо тщательно проектировать, проверять и эксплуатировать.Подписи BLS и блокчейн-мосты
Блокчейн-мостам часто нужно, чтобы множество независимых участников подтвердили событие в одной сети, прежде чем связанное действие произойдет в другой.Агрегирование BLS помогает операторам мостов объединять множество одобрений в одно доказательство.Это позволяет сократить объем данных, которые нужно передавать в блокчейн.Меньший объем данных может снизить стоимость и упростить использование, особенно если целевая сеть взимает комиссии за вычисления или хранение.Однако одна только подпись BLS не делает мост безопасным.Безопасность моста по-прежнему зависит от выбора валидаторов, управления ключами, средств контроля мошенничества, мониторинга, правил обновления и экономической защищенности группы подписантов.BLS — это криптографический инструмент, а не полноценная модель доверия.Пользователям следует оценивать архитектуру моста целиком, а не только тип подписи.Подписи BLS и криптокошельки
Большинству пользователей повседневных криптокошельков не нужно напрямую разбираться в подписях BLS.Обычно пользователи видят экран подтверждения, хеш транзакции или страницу статуса валидатора.В фоновом режиме BLS может использоваться валидаторами, системами хранения активов, инфраструктурой стейкинга или инструментами мультиподписи.Кошелек, использующий подписи на основе BLS, должен защищать приватный ключ так же серьезно, как и любой другой приватный ключ в криптовалютах.Если приватный ключ украдут, злоумышленник может получить возможность подписывать сообщения или участвовать в действиях протокола.Если приватный ключ потерян, подписант может утратить доступ к праву подписи или контроль над валидатором.Поскольку BLS часто используется в системах валидаторов, ненадлежащее управление ключами может привести к потере вознаграждений, штрафам или сбоям в работе.Для надежной защиты кошелька по-прежнему нужны резервные копии, безопасные устройства, защита от фишинга и внимательная проверка транзакций.Преимущества подписей BLS
Главное преимущество подписей BLS — агрегирование.Агрегирование позволяет сократить объем данных, необходимых для представления множества одобрений.Это помогает блокчейн-сетям эффективнее работать с большими наборами валидаторов.Подписи BLS также детерминированы: для одного ключа и сообщения процесс создания подписи предсказуем и не зависит от нового случайного значения при подписании.Это может снизить некоторые риски, возникающие, когда плохой источник случайности нарушает работу других схем подписи.На концептуальном уровне подписи BLS также относительно просты, поскольку подписание и проверка основаны на понятных математических зависимостях.Они полезны для систем с мультиподписью и пороговой подписью, поскольку позволяют объединять вклад нескольких подписантов.В криптовалютной инфраструктуре эти преимущества могут способствовать масштабируемости, координации валидаторов, созданию компактных доказательств и более лаконичной архитектуре протоколов.Ограничения и риски подписей BLS
Подписи BLS подходят не для всех криптовалютных задач.По сравнению с более простыми операциями на эллиптических кривых операции спаривания могут быть затратными.Технические детали реализации также сложнее, чем может показаться из общего описания.Разработчикам необходимо корректно обрабатывать правила хеширования в точки кривой, проверки подгрупп, сериализацию, разделение доменов, проверку ключей и логику доказательства владения.Если что-то из этого реализовано неправильно, система может принять недействительные ключи, допустить атаки повторного воспроизведения или не обеспечить ожидаемый уровень безопасности.Подписи BLS также могут создавать операционные риски, если валидаторы используют горячие ключи, которые должны регулярно подписывать сообщения в режиме онлайн.Горячий ключ удобен для автоматического подписания, но он уязвимее ключа, который хранится полностью офлайн.Поэтому системам валидаторов на основе BLS нужны надежная операционная безопасность, мониторинг, защита от штрафов за слешинг и безопасное резервное копирование.Что такое разделение доменов в BLS?
Разделение доменов — это метод, который гарантирует, что подпись, созданную для одной цели, нельзя повторно использовать для другой.В криптовалютах одни и те же байты сообщения могут встречаться в разных контекстах.Без разделения доменов подпись, предназначенная для одного действия протокола, может быть ошибочно воспринята как одобрение другого действия.В системах BLS для привязки подписей к конкретному сценарию применения часто используются теги разделения доменов или идентификаторы наборов шифров.Это помогает предотвратить повторное воспроизведение подписи и путаницу между протоколами.Например, голос валидатора, сообщение, связанное с выводом средств, и одобрение решения по управлению не должны использовать один и тот же контекст подписания, если протокол намеренно этого не допускает.Разделение доменов — одна из причин, по которой две системы BLS на одной кривой все равно могут быть несовместимы.Кривая — лишь один из элементов полной спецификации подписи.Что такое хеширование в точки кривой в BLS?
Хеширование в точки кривой — это процесс преобразования сообщения в действительную точку на эллиптической кривой.Этот этап необходим для подписания BLS, поскольку подпись создается на основе точки кривой, связанной с сообщением.Обычная хеш-функция создает байты, а для BLS нужна точка в правильной математической группе.При преобразовании необходимо исключить смещение, недействительные точки и уязвимости, связанные с побочными каналами.Поэтому современные реализации используют тщательно специфицированные методы хеширования в точки кривой, а не самодельные упрощенные решения.Стандарт хеширования в точки эллиптической кривой важен тем, что дает разработчикам более безопасные рекомендации для этого этапа.
Пользователи не видят процесс хеширования в точки кривой, но это одна из технических деталей, обеспечивающих надежность подписей BLS.Распространенные сценарии применения подписей BLS в криптовалютах
Подписи BLS используются или рассматриваются во многих криптовалютных системах, которым нужны компактные доказательства множества одобрений.В консенсусе Proof of Stake агрегирование BLS позволяет эффективно собирать голоса валидаторов.В системах стейкинга ключи BLS могут использоваться валидаторами для выполнения задач по подписанию.В системах порогового хранения активов подпись на основе BLS может снизить риск, связанный с единым ключом.В протоколах мостов агрегированные подписи могут подтверждать, что комитет одобрил кроссчейн-событие.В сетях оракулов агрегированные подписи могут подтверждать отчеты о данных из нескольких источников.В децентрализованных системах управления агрегированные подписи могут сжимать одобрения множества участников.Системы Layer 2 могут использовать подписи BLS для эффективной пакетной проверки или подтверждений от комитетов.Общая закономерность такова: полезность BLS возрастает вместе с числом подписантов.Как пользователям понимать подписи BLS
Пользователям криптовалют не нужно вычислять спаривания или точки эллиптической кривой, чтобы понять ценность BLS.Практический смысл в том, что BLS позволяет объединить множество подписей в одно доказательство.Это может повысить эффективность систем валидаторов и помочь сетям масштабировать обмен данными для достижения консенсуса.Пользователям также следует понимать, что безопасность подписи BLS зависит от безопасности всей системы, в которой она используется.Приватные ключи необходимо защищать.Публичные ключи необходимо проверять.Сообщения должны иметь четкое определение.Реализации должны соответствовать спецификации.Протоколы должны предотвращать повторное воспроизведение, атаки с подменой ключа и небезопасное агрегирование.При соблюдении этих условий подписи BLS могут стать одним из самых полезных криптографических инструментов в современной блокчейн-инфраструктуре.FAQ
Что означает BLS в названии подписи BLS?
BLS — это аббревиатура фамилий Boneh, Lynn и Shacham, исследователей, представивших схему коротких подписей.Для чего используется подпись BLS в криптовалютах?
Подпись BLS подтверждает одобрение с помощью приватного ключа и позволяет объединить множество одобрений в одну компактную подпись.Почему подписи BLS полезны для блокчейнов?
Подписи BLS полезны, поскольку могут сократить объем данных о подписях, которые блокчейнам нужно хранить, передавать и проверять.Что такое агрегирование подписей BLS?
Агрегирование подписей BLS — это объединение нескольких подписей BLS в одну, которая по-прежнему подтверждает участие нескольких подписантов.Подпись BLS — это то же самое, что BLS12-381?
Нет. Подпись BLS — это схема подписи, а BLS12-381 — эллиптическая кривая, поддерживающая спаривание и часто используемая для реализации подписей BLS.Что такое атака с подменой ключа в BLS?
При атаке с подменой ключа вредоносный подписант регистрирует измененный публичный ключ, чтобы нечестным способом выдать агрегированную подпись за действительную.Как системы BLS предотвращают атаки с подменой ключа?
Для предотвращения таких атак системы BLS могут проверять публичные ключи, требовать доказательство владения и применять безопасные правила агрегирования.Подписи BLS быстрее других подписей?
Подписи BLS не всегда быстрее при проверке одной подписи, но могут быть эффективнее, когда множество подписей агрегируются и проверяются вместе.Защищают ли подписи BLS приватные ключи?
Нет. Подписи BLS подтверждают, что сообщение было подписано приватным ключом, но пользователи и валидаторы все равно должны защищать ключ с помощью надежных мер безопасности.Почему валидаторы используют ключи BLS?
Валидаторы могут использовать ключи BLS, поскольку агрегирование BLS позволяет сетям собирать и проверять множество голосов валидаторов, используя меньше данных.Заключение
Подпись BLS — это схема цифровой подписи, играющая важную роль в современной криптовалютной инфраструктуре.Ее главное преимущество — возможность объединять множество подписей в одно компактное доказательство.Благодаря этому подписи BLS особенно полезны для валидаторов Proof of Stake, систем с мультиподписью, пороговой подписи, мостов, сетей оракулов и других криптовалютных систем, зависящих от одобрения множества независимых участников.Подписи BLS используют эллиптические кривые, поддерживающие спаривание, безопасные методы хеширования в точки кривой, тщательную проверку публичных ключей и надежное разделение доменов.Они могут уменьшить объем данных и повысить эффективность протоколов, но при этом требуют строгого соблюдения правил безопасности.Для обычных пользователей криптовалют главная идея проста: подпись BLS помогает блокчейну подтверждать множество подписей, используя меньше данных.Для разработчиков и валидаторов главный вывод глубже: BLS эффективен только тогда, когда вся система корректно работает с ключами, сообщениями, агрегированием и проверкой.Вам также может быть интересно
WhatsMiner M30S++
Домены Web3
Web3-проекты
В тренде
Трендовые криптовалюты, которые в настоящее время привлекают значительное внимание рынка
ТОП по объему
Криптовалюты с наибольшим объемом торгов
Недавно добавленные
Криптовалюты недавно внесенные в листинг и доступные для торговли

