Увеличение размера блокчейна продолжает ставить вопросы о том, справится ли Биткойн с ростом количества транзакций. Но нельзя ли решить проблему масштабируемости блокчейна с помощью децентрализованной системы, в которой транзакции отправляются по сети каналов микроплатежей вне блокчейна?

Джозеф Пун (Joseph Poon) и Таддеус Дрийа (Thaddeus Dryja), разработчики, стоящие за Bitcoin Lightning Network, считают, что можно.

Согласно недавно опубликованному официальному документу, для решения проблемы в сети предполагается использовать хешированные контракты между пользователями с временной блокировкой.

Концепция Bitcoin Lightning Network появилась в 2013 году, когда Пуна, «как и многих до него», посетила идея разветвленной системы платежных каналов. Вскоре к проекту присоединился Дрийа, который сделал сценарии и транзакции компактнее.

В интервью для CoinDesk Пун рассказал следующее:

«Думаю, важно изучать работу финансовых систем, потому что разработка Биткойна воспроизводит историю денег. Принципы работы Lightning Network во многом похожи на решение аналогичной проблемы в существующих финансовых системах». «Мы надеемся обеспечить масштабируемость Биткойна и возможность мгновенного выполнения транзакций, чтобы Биткойн мог регистрировать все транзакции — даже много тысяч микроплатежей на одного человека».

Первоначальный анализ проблемы показал, что для реализации проекта потребуется софт-форк — изменение биткойн-протокола, которое делает блоки и транзакции старого формата недействительными, но оставляет за старыми узлами способность распознавания новых блоков.

Проблема масштабируемости

Грязевая гроза

Для хранения всех выполненных транзакций необходимы полные биткойн-узлы, но по мере роста блокчейна количество людей, готовых тратить все больше ресурсов на обслуживание таких узлов, падает. По этой причине разработчики считают, что открытого блокчейна Биткойна в качестве единственной платежной платформы недостаточно.

Согласно официальному документу проекта, платежная сеть Visa в стандартные выходные обрабатывает около 45 тысяч транзакций в секунду. В типичный рабочий день их количество достигает сотен миллионов.

Что касается Биткойна, то он в настоящее время поддерживает примерно семь транзакций в секунду, а размер блока ограничен одним мегабайтом. Как считают Пун и Дрийа, чтобы достигнуть уровня 45 тысяч транзакций в секунду и более, биткойн-транзакции необходимо осуществлять вне блокчейна.

В документе говорится:

«Если транзакция интересует только две стороны, то всем остальным узлам биткойн-сети знать о ней не требуется. Предпочтительнее хранить на блокчейне минимум информации».

И далее:

«Двум пользователям удобнее подвести баланс между собой позднее, вместо того чтобы детализировать каждую транзакцию на блокчейне. Этого можно достичь, используя временные блокировки в качестве элемента глобального консенсуса».

Bitcoin Lightning Network

Молнии Кататумбо

Официальное описание можно выразить проще: если все биткойн-транзакции «обсуждаются» на открытом форуме — общедоступном блокчейне, то Bitcoin Lightning Network позволяет участникам сделки отойти на время в закрытую комнату, выполнить там нужные транзакции, а по завершении оговоренного периода транслировать эти транзакции в сеть.

В документе сказано:

«Обязательство доставить деньги конечному получателю реализуется с помощью цепного делегирования. Каждый участник цепи обязуется доставить средства конкретному получателю, передавая это обязательство следующему участнику».

Сторонники предлагаемого проекта считают, что он лучше, чем текущие системы обработки транзакций, используемые сервисными биткойн-компаниями наподобие Coinbase, в которых транзакции обрабатываются вне блокчейна. Биткойны в сети контролируются Coinbase во избежание осложнений, связанных с обработкой малых транзакций в сети в реальном времени. Lightning Network, утверждают ее сторонники, предоставляет альтернативу, в которой фонды контролируют пользователи.

Стоит отметить, что Lightning Network — это не единственный проект поиска стабильного решения проблемы микроплатежей.

Компания BlockCypher недавно предложила решение, с помощью которого она планирует «оппортунистически вычислять комиссии майнеров», чтобы гарантировать добавление микротранзакций в блокчейн. Эта система уже используется в Zapchain — криптовалютной социальной сети, которая недавно запустила специализированный канал микроплатежей.

Уменьшение временных блокировок

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

Получатель генерирует случайные данные ‘R’, а затем хеширует их с помощью функции hash(R), получая значение ‘H’. Оно передается непосредственно от получателя отправителю денег вместе с биткойн-адресом получателя.

Затем отправитель доставляет платеж получателю. Как только получатель получает по каналу микроплатежей обновленную транзакцию, он может потребовать отправленные деньги, обнародовав значение ‘R’.

Платеж по сети Lightning с использованием хешировванного контракта с временной блокировкой. Источник: официальный документ Bitcoin Lightning Network

Хешированный контракт с блокировкой нужен с той целью, чтобы для трансляции транзакции на блокчейне до определенной даты требовалось обнародовать сообщение ‘R’.

Если на рисунке Дэйв не сгенерирует ‘R’ для Кэрол в установленный интервал времени, Кэрол сможет закрыть контракт. Получатель никогда не обнародует ‘R’, если не будет уверен, что получит платеж от одного из контрагентов в канале. Если одна из сторон отключит канал, ее контрагент должен будет транслировать текущее состояние транзакции на блокчейне.

Факторы риска

Шаровая молния. Маастрихт, Нидерланды, 28 июня 2011 г.

Однако предложение Пуна и Дрийа имеет и элемент риска.

Время требует особо серьезного отношения. Участники должны предоставлять друг другу достаточно времени для выполнения транзакции. Если они этого не делают, недействительные транзакции могут быть признаны действительными, что открывает возможности для кражи монет.

Разработчики также объясняют, что едва ли все участники системы будут честными. Если злоумышленник создаст ряд каналов, настроив их так, чтобы срок их действия истек одновременно, это может перегрузить систему и потребовать трансляции транзакции в сеть. Такой «спам» в биткойн-сети может потенциально задержать транзакции до подтверждения других транзакций с временной блокировкой.

Имеется также проблема связности. В предлагаемой системе все стороны должны быть онлайн, чтобы использовать закрытые ключи. Если чей-то компьютер будет скомпрометирован, возможна кража монет контрагентом.

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

«Для канала следует выбирать ответственных контрагентов, которые готовы предоставлять данные о текущем состоянии и согласны на некоторые периодические проверки честности».

Реакция сообщества

Несомненно, Bitcoin Lightning Network — это смелая попытка решения проблемы масштабируемости блокчейна. Но реалистичен ли этот проект? Питер Тодд (Peter Todd), разработчик базовых служб Биткойна, считает, что да, но утверждает, что проект нужно контекстуализировать далее. В разговоре с журналистами CoinDesk он сказал:

«Если бы блокчейн Биткойна был лошадью, то обычные предложения разветвленных платежных каналов были бы похожи на советы заменить ее грузовиком; парни из Lightning Network предлагают заменить лошадь ракетой».

Тодд считает, что Lightning Network может стать удачной системой, но отметил трудоемкость и масштаб проекта, который, помимо прочего, требует согласия сообщества. «Кроме того, чтобы он стартовал, необходимо софт-форк», — подчеркнул Тодд.

Несмотря на эти недостатки, Тодд в целом похвалил систему. По его словам, разработчики Lightning Network предлагают пользователям изменить способы использования Биткойна в обмен на масштабирование системы без снижения ее безопасности. По его мнению, для тех, кто считает, что Биткойн находится под угрозой регуляции или атак, это хороший компромисс.

Дрийа и Пун согласны с пояснениями Тодда и признают, что проект требует доработки. Дрийа сказал:

«Для развертывания Lightning Network необходимо приложить фундаментальные усилия, а не просто добавить пару исправлений или опкодов. У нас нет популярного способа передачи данных между участниками, что уже сегодня препятствует широкому применению мультиподписей».

Дрийа подтвердил, что они все еще изучают возможность создания легкого в использовании механизма обмена сообщениями и проверки подлинности, независимого от биткойн-сети.

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

А что вы думаете о предложении? Выскажите свое мнение.

Йесси Белло Перес (Yessi Bello Perez), 26 марта 2015 г.

Источник: coindesk.com