Положительные стороны блокчейн-систем и проблемы, мешающие их внедрению
Системы, данные которых хранятся распределенно и организованы с применением технологии блокчейн, привлекают к себе все больше внимания. Люди восторженно говорят о децентрализованных технологиях, подразумевая, что они перевернут мир, обеспечат полную демократизацию информации и т. д. Подобная тенденция привела к тому, что многие стали видеть в любой централизации нечто злонамеренное.
Но почему же реальных примеров практического внедрения децентрализованных решений пока очень мало? На этот вопрос для читателей ForkLog попытался ответить кандидат технических наук и основатель Distributed Lab Павел Кравченко.
Что позволяет блокчейн?
Как обычно, потребуется структурированный подход. Выделим преимущества, которых позволяет добиться применение блокчейна в учетной системе:
- легкость проверки целостности базы данных;
- timestamping всех изменений, то есть каждое изменение в системе имеет свою временную метку;
- простое резервное копирование в режиме реального времени;
- возможность достижения консенсуса в децентрализованной среде;
- простой аудит учетной системы в режиме реального времени.
И это оправдано в случаях учета активов и прав собственности, учета финансов и децентрализованной торговли, а также электронного голосования. Но эти преимущества не всегда гарантированы, поскольку все зависит от того, как спроектирован протокол, в котором заложены правила работы системы.
У каждого подхода существует обратная сторона медали, для которой в случае децентрализации характерны:
- ограничение производительности;
- ограничение масштабируемости;
- избыточный объем данных;
- решение вопросов governance;
- ограничение ответственности.
Данные ограничения являются фундаментальными, поскольку вытекают из самого децентрализованного подхода. Разберем их подробнее.
Производительность и масштабируемость
Проблемы ограничения производительности и масштабируемости системы взаимосвязаны, причем связь эта очень тесная. Это собирательные понятия, которые более точно выражаются в пропускной способности, то есть в количестве совершаемых транзакций в секунду, и во времени, которое требуется для подтверждения транзакции и внесения ее в блокчейн.
Распределенная система чаще всего обладает меньшей пропускной способностью, чем система с одним центром управления, поскольку внесение изменений в данном случае занимает больше времени. Необходимо распространить данные между всеми участниками, и они должны достичь консенсуса относительно имеющейся информации: решение принимается уже не в одном месте, а в нескольких. Эти задержки ведут к увеличению времени отклика учетной системы.
Избыточный объем данных
Проблема хранения избыточного объема данных также накладывает дополнительные ограничения. Ведь каждый, кто участвует в управлении такой системой, должен иметь у себя копию базы данных этой системы, которая постоянно обновляется. В случае традиционной централизации в таком объеме нет необходимости.
Сложности управления (governance)
Разработка в рамках одной компании — это централизованная разработка, которая имеет свою идею и направление. Есть сформированный вектор, который не предусматривает свободы предложений по улучшению работы сети. Любые обновления цензурируются узким кругом лиц, причастных к разработке правил работы системы. Повышение уровня влияния участников системы на ее состояние и свобода в предложениях по поводу обновлений в правилах могут иметь неожиданные и крайне тяжелые последствия для этой компании, если изменения противоречат ее интересам.
Для правильно примененной децентрализованной системы учета демократизация управления изменениями является благотворной. Чем многочисленнее и открытее сообщество, которое спорит и предлагает решения, тем больше возможностей для ценных улучшений: если большинство поддержит улучшение, то оно будет добавлено в обновление. Таким образом, каждый имеет возможность предложить свое обновление и открыто обсудить его преимущества и недостатки.
Однако коллективное управление всегда сложнее, чем единоличное. Решение в такой системе принимается всегда медленнее, так как участникам нужно время, чтобы договориться. Именно по причине того, что люди не склонны быстро достигать единогласия, происходят задержки.
Распределенная ответственность
На пути к практическому внедрению децентрализованных технологий особняком стоит неготовность общественного мировоззрения к принятию следствий децентрализованного подхода. Неготовность состоит в том, что мы привыкли видеть конкретного человека, который за что-то отвечает. Так происходит в системе централизованного управления, которая стала для нас традиционной.
Когда вы обслуживаетесь в определенной организации, то, в случае возникновения недоразумений, вы звоните сотрудникам этой организации и выясняете, в чем дело. Например, когда вы приобрели машину, а через неделю она перестала заводиться, вы звоните в компанию, где вы ее купили, и добиваетесь возмещения средств… Или не добиваетесь, и тогда вы обращаетесь в суд, который удовлетворит ваши требования в законодательном порядке, принудив компанию вернуть деньги и компенсировать вам ущерб. В любом случае вы находите «крайнего», то есть того, кто несет ответственность за принятое решение.
И если в случае управляющего центра ответственность четко определена, то в случае с распределенной системой ответственность приобретает несколько размытое значение. Здесь более уместно заменить «ответственность» на «риск», потому что именно риски несут участники. Гарантией корректной работы системы являются правила, по которым она функционирует, и они известны всем участникам. Каждый может проверить действия остальных на предмет соответствия правилам работы протокола.
Эти риски кроются либо в поведении самих пользователей, либо в уязвимостях, через которые можно повлиять на правила: атаки на тот же протокол. В последнем случае децентрализованная система куда устойчивее централизованной. В децентрализованной системе ни один человек, в том числе разработчик, не способен провести изменения единолично. Поэтому никакой суд не может реализовать решение, тем более противоречащее правилам работы протокола.
Чтобы изменить состояние системы, нужно согласие большинства участников и отсутствие противоречий правилам. Здесь нужна другая модель законодательного подхода, чтобы ситуация была понятна в контексте правового поля: нам нужны новые юридические модели и, возможно, законодательная база. С помощью нее можно регулировать существование таких систем, где до определенного момента обязательства по обеспечению безопасности и соблюдению некоторых требований возлагаются на создателей этой системы, а после него ответственность переходит на сторону пользователя, который согласился с правилами и принял возможные риски.
Сложность обновления протокола
Еще одна немаловажная особенность децентрализованных систем состоит в подходе к обновлениям. Когда появляется предложение по улучшению правил работы системы, оно может встретить как единогласное принятие, так и разногласия среди участников. Иначе говоря, мы наблюдаем проблему governance в действии. Если эти разногласия довольно серьезные, то дело может закончиться форком, то есть разделением блокчейна и появлением новой системы на базе старой, но с другими правилами.
Так было с биткоином в 2017 году, когда появился его форк — Bitcoin Cash. Было предложено увеличить размер блока в сети Bitcoin с 1 МБ до 8 МБ с целью повышения пропускной способности. Поддержавшие его участники обновили свое программное обеспечение и стали работать по новым правилам. Таким образом, получилось две системы: Bitcoin, участники которой продолжили работать по старым правилам, и Bitcoin Cash, блоки которой уже имели размер 8 МБ.
Здесь же стоит вспомнить Ethereum. В 2016 году злоумышленники похитили 70 млн долларов, инвестированных в развитие одного проекта, который разрабатывался на платформе Ethereum. Команда разработчиков решила вмешаться и провела форк, где сделала откат системы и отозвала смарт-контракты, которые были задействованы в похищении. В итоге все средства вернулись на баланс проекта. Но не все оценили такой ход положительно. Противники форка продолжили работать в старой системе, назвав ее Ethereum Classic, а поддержавшие откат стали работать в новой — Ethereum.
Подводя итоги, следует отметить, что правильно внедренная технология блокчейн может обеспечить прозрачную бизнес-модель, стабильную инфраструктуру и доступность аудита. Бизнес получает дополнительные перспективы развития при вовлечении в партнерские отношения, так как доверие пользователей к такой системе будет увеличиваться.
Однако на пути к воплощению этой идеи стоит череда сложностей, которые нужно учесть и преодолеть: сложность проектирования, настройки и поддержания децентрализованной учетной системы как правило намного выше, чем для централизованных альтернатив.
Подписывайтесь на канал Forklog в YouTube!
Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!