Недавно (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 Производительность
Это мера количества блоков, добавляемых в блокчейн в секунду, что фактически означает количество транзакций, обрабатываемых в секунду. Производительность зависит от многих факторов, таких как базовый алгоритм консенсуса, количество узлов, участвующих в консенсусе, структура сети, поведение узлов, параметры блоков и сложность контракта (в случае блокчейнов, поддерживаемых смарт-контрактом). Сложность смарт-контракта зависит от того, является ли язык программирования блокчейна Тьюринг-полным или нет. Однако в отношении Тьюринг-полноты блокчейнов [80] всегда существуют разногласия в блокчейн-сообществе. Учитывая эти основные факторы, достичь высокой производительности в блокчейне немного сложно. Однако для достижения высокой производительности размер транзакции можно уменьшить, исключив из нее некоторую информацию. Производительность можно увеличить, увеличив размер блока и пропускную способность сети до определенного уровня.
Количество транзакций в секунду было признано серьезной проблемой в сети Биткойн. В то время как в пиковый праздничный период Visa и MasterCard могут обрабатывать до 50 000 транзакций в секунду по всему миру, сеть Bitcoin может обрабатывать всего 7 транзакций. Одним из предложений, как решить эту проблему масштабируемости, является "The Bitcoin Lightning Network" [81]. Это сеть, которая мгновенно обрабатывает транзакции биткойнов из основного реестра. Она образует сеть каналов микроплатежей, которая решает проблему гибкости с помощью биткойн мульти-подписей 2-из-2. Для этих сетей микроплатежей необходимы специальные узлы, и по состоянию на июнь 2019 года их насчитывалось около 4500. Первая финансовая транзакция через сеть Lightning была зарегистрирована в январе 2018 года. Litecoin решил следовать за сетью Bitcoin Lightning, и по состоянию на март 2019 года было зарегистрировано более 1000 узлов, которые обрабатывают микроплатежи для этой альтернативной криптовалюты. Для решения проблемы масштабируемости было предложено много других решений, подобных Lightning off-chain вычислению и off-chain каналам состояния, таким как Sharding [82], Plasma [83], Liquid [84] и недавнему Channel Factories [85].
По мере того как сеть Lightning набирает популярность, появляются новые исследовательские задачи, как показано в [86], и здесь мы перефразируем одну из их исследовательских задач:
Исследовательская проблема 6 ([86]). Разработка масштабируемых протоколов, которые будут выполнять транзакции по нескольким платежным каналам и путям с надежными гарантиями конфиденциальности даже против противника, имеющего контроль на сетевом уровне.
Обращаясь к проблеме 6, многие работы были сделаны в прошлом, но все эти работы в основном совместимы с биткойном или блокчейном Ethereum. Недавние работы [87], [88] о multi-hop платежном канале выделяют значение конфиденциальности и безопасности, но только для биткойн-совместимых блокчейнов. Вместо того, чтобы поддерживать только платежи, как Lightning network, существуют off-chain каналы состояния, такие как Celer Network [89], которые поддерживают общие обновления состояния, обеспечивая значительное улучшение с точки зрения стоимости и завершенности.
Исследовательская проблема 7. Разработать полнофункциональный канал состояния с надежной гарантией безопасности и конфиденциальности.