Недавно (20 июня 2019 года) на Cryptology ePrint Archive была опубликована статья "SoK of Used Cryptography in Blockchain". Данный пост - тридцать второй в запланированной серии, содержащей любительский перевод этой статьи.
Систематизация знаний по используемой криптографии в блокчейне
(перевод с английского
статьи
Mayank Raikwar, Danilo Gligoroski and Katina Kralevska
SoK of Used Cryptography in Blockchain
Cryptology ePrint Archive, Report 2019/735
https://eprint.iacr.org/2019/735)
Аннотация
(перевод аннотации здесь)
1 Введение (перевод введения здесь)
1.1 Наш вклад (перевод здесь)
2 Методология исследования (перевод здесь)
3 Основные понятия блокчейна
3.1 Криптографическая хэш-функция (перевод здесь)
3.2 Механизмы консенсуса (перевод здесь)
3.3 Сетевая инфраструктура (перевод здесь)
3.4 Типы блокчейна (перевод здесь)
4 Проблемы в блокчейн
4.1 Безопасность и приватность (перевод здесь)
4.2 Проблемы масштабируемости (перевод здесь)
4.3 Форкинг (перевод здесь)
4.4 Производительность (перевод здесь)
4.5 Энергопотребление (перевод здесь)
4.6 Инфраструктурные зависимости (перевод здесь)
5. Обзор используемых криптографических понятий в блокчейне
5.1 Схема подписи (перевод здесь)
5.2 Доказательства с нулевым разглашением (перевод здесь)
5.3 Контроль доступа (перевод здесь)
5.4 Схема шифрования (перевод здесь)
5.5 Безопасные многосторонние вычисления (перевод здесь)
5.6 Разделение секрета (перевод здесь)
5.7 Схема обязательств (перевод здесь)
5.8 Аккумулятор (перевод здесь)
5.9 Забывчивая передача (перевод здесь)
5.10 Забывчивая оперативная память (перевод здесь)
5.11 Доказательство возможности восстановления (POR) (перевод здесь)
5.12 Постквантовая криптография (перевод здесь)
5.13 Низкоресурсная (легковесная) криптография (перевод здесь)
5.14 Верифицируемая случайная функция (VRF) (перевод здесь)
5.15 Обфускация (перевод здесь)
6 Перспективные, но еще не использованные криптографические примитивы в блокчейне
6.1 Множественная (коллективная) подпись (перевод здесь)
6.2 Шифрование на основе идентификационных данных (IBE)
Шифрование на основе идентификационных данных, впервые предложенное в качестве идеи в [173] и позже реализованное в качестве полного криптографического примитива в [174], позволяет шифрующей стороне использовать любые известные (или предположительно известные) идентификационные данные любой принимающей стороны в качестве своего открытого ключа. Получив зашифрованное сообщение, принимающая сторона просит доверенную третью сторону «Генератор секретных ключей (PKG)» сгенерировать соответствующий секретный ключ. Затем получатель расшифровывает сообщение, используя секретный ключ, полученный PKG. В настоящее время, используя шифрование на основе идентификационных данных, открытые ключи можно генерировать с использованием социальных идентификационных данных (Facebook, Twitter, LinkedIn).
Существует множество разновидностей и расширений IBE, таких как иерархическое шифрование на основе идентификационных данных [175], шифрование на основе атрибутов [176], децентрализованное шифрование на основе атрибутов [177], функциональное шифрование [178] и многие другие.
Одной из особенностей IBE является то, что оно заменило роль инфраструктуры открытых ключей доверенной третьей стороной PKG. Наличие доверенной третьей стороны каким-то образом сводит на нет цель ее использования в неконтролируемом блокчейне, но все же есть возможности для ее использования в распределенном реестре. А именно, кажется, что IBE можно использовать в сети контролируемого блокчейна. В контролируемом блокчейне консорциум доверенных третьих сторон, которые распространяют секретные ключи среди пользователей, может взять на себя роль IBE PKG. Другим вариантом может быть уровень смарт-контракта, отвечающий за генерацию пар открытого и секретного ключей внутри PKG с использованием IBE.
Мы определили, что использование IBE в блокчейне началось в [100], а также в управлении цепочками поставок [101]. Тем не менее, есть много проблем и возможностей для других приложений и сервисов блокчейна.
Исследовательская проблема 14. Построить контролируемую блокчейн-сеть на основе IBE (или связанную с IBE).