A БСТ цифровой подписи - также известный как Бона-Линн-Шахи [1] (BLS) -эта криптографическая схема подписи , которая позволяет пользователю проверить , что подписывающее лицо является подлинным .
Схема использует билинейное спаривание для проверки, а сигнатуры являются элементами группы эллиптических кривых . Работа в группе эллиптических кривых обеспечивает некоторую защиту от атак с расчетом индексов (с оговоркой, что такие атаки все еще возможны в целевой группе.пары), что позволяет использовать более короткие подписи, чем подписи FDH, для аналогичного уровня безопасности .
Подписи, созданные схемой подписи BLS, часто называют короткими подписями , короткими подписями BLS или просто подписями BLS . [2] Схема подписи доказуемо безопасна (схема экзистенциально неподдельна при адаптивных атаках с выбранным сообщением ) при условии как существования случайных оракулов, так и неразрешимости вычислительной проблемы Диффи-Хеллмана в группе Диффи-Хеллмана с пробелами. [3]
Функции сопряжения
Группа разрывов - это группа, в которой вычислительная проблема Диффи – Хеллмана неразрешима, но решающая проблема Диффи – Хеллмана может быть эффективно решена. Невырожденные, эффективно вычислимые билинейные спаривания допускают такие группы.
Позволять - невырожденное, эффективно вычислимое билинейное спаривание, где , группы простого порядка, . Позволять быть генератором . Рассмотрим пример проблемы CDH ,,, . Интуитивно понятно, что функция сопряжения не помогает нам вычислить , решение проблемы CDH. Предполагается, что этот пример проблемы CDH неразрешим. Дано, мы можем проверить, есть ли без знания , , а также , проверяя, действительно ли держит.
Используя билинейное свойство раз, мы видим, что если , то, поскольку группа простого порядка, .
Схема подписи BLS
Схема подписи состоит из трех функций: генерировать , знак , и проверить . [3]
- Генерация ключей
Алгоритм генерации ключа выбирает случайное целое число такой как . Закрытый ключ. Владелец закрытого ключа публикует открытый ключ,.
- Подписание
Учитывая закрытый ключ , и какое-то сообщение , мы вычисляем подпись путем хеширования битовой строки , в виде . Выводим подпись.
- Проверка
Учитывая подпись и открытый ключ , мы проверяем, что .
Характеристики
- Простые пороговые подписи [ необходима ссылка ]
- Агрегация подписей: несколько подписей, сгенерированных с использованием нескольких открытых ключей для нескольких сообщений, могут быть объединены в одну подпись. [4]
- Уникальный и детерминированный: для данного ключа и сообщения существует только одна действительная подпись (например, RSA PKCS1 v1.5, EdDSA и в отличие от RSA PSS, DSA, ECDSA и Schnorr). [ необходима цитата ]
Приложения
К 2020 году подписи BLS широко использовались в версии 2 (Eth2) блокчейна Ethereum , как указано в проекте спецификации подписи BLS IETF - для криптографической гарантии того, что конкретный валидатор Eth2 действительно проверил конкретную транзакцию. [2] Использование подписей BLS в Ethereum считается решением узкого места проверки только в среднесрочной перспективе, поскольку подписи BLS не являются квантово-безопасными . В более долгосрочной перспективе - скажем, 2025–2030 гг. - ожидается, что агрегирование STARK заменит агрегирование BLS. [5]
Смотрите также
Рекомендации
- ^ Баррето, Пауло SLM; Kim, Hae Y .; Линн, Бен; Скотт, Майкл (август 2002 г.). «Эффективные алгоритмы для парных криптосистем» . Достижения в криптологии - CRYPTO 2002 . CRYPTO '02: Материалы 22-й ежегодной международной криптологической конференции по достижениям в криптологии. Springer-Verlag Berlin Heidelberg. С. 354–369. DOI : 10.1007 / 3-540-45708-9_23 .
- ^ а б «Ethereum 2.0, фаза 0 - сигнальная цепочка: подписи BLS» . 28 июля 2020 . Дата обращения 4 сентября 2020 .
- ^ а б Дэн Боне ; Бен Линн и Ховав Шахам (2004). «Короткие подписи от пары Вейля». Журнал криптологии . 17 (4): 297–319. CiteSeerX 10.1.1.589.9141 . DOI : 10.1007 / s00145-004-0314-9 . S2CID 206885645 .
- ^ D. Boneh, C. Gentry, H. Shacham и B. Lynn Агрегированные и проверяемые зашифрованные подписи из билинейных карт , протоколы Eurocrypt 2003, LNCS 2656, стр. 416-432, 2003
- ^ Дрейк, Джастин (5 декабря 2019 г.). «Прагматическая агрегация подписей с BLS» . ethresear.ch/ . Эт исследования . Проверено 8 января 2021 года .
Внешние ссылки
- Краткое описание проекта стандарта Algorand
- Библиотека КПБ Бена Линна
- Реализация подписей BLS Chia Network (C ++)