Зачем миру криптовалюты. Часть 3
27.10.2021

Зачем миру криптовалюты. Часть 3

By bit.team

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

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

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

Корпоративные руководители теперь больше доверяют кибербезопасности решений блокчейна, как обнаружила компания Deloitte в своем глобальном обзоре блокчейнов за 2020 год.

В отчете «Обеспечение безопасности блокчейна» 2020 года, Федерального управления информационной безопасности Германии предупреждается о серьезных последствиях неполной кибербезопасности в общих структурах блокчейнов, особенно в случае возникновения непредвиденных событий.

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

Византийская отказоустойчивость блокчейнов

Византийская отказоустойчивость — это способность распределенной системы обработки информации функционировать должным образом, несмотря на скрытую неисправность отдельных компонентов (сетевых узлов). Например, отдельные участники сети блокчейнов могут передавать неверную информацию другим одноранговым узлам, чтобы фальсифицировать содержимое блокчейна или вызвать другие сбои.

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

Несколько различных процедур консенсуса могут гарантировать византийскую отказоустойчивость блокчейн-системы при определенных условиях. Проект Hyperledger Iroha, например, выводит свою византийскую отказоустойчивость из согласованной процедуры под названием YAC (сокращение от еще одного распределенного согласованного алгоритма). YAC обеспечивает завершенность транзакций при сохранении очень низких задержек.

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

Сопротивление атаки Sybil на блокчейн

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

Различные методы могут повысить устойчивость блокчейн-платформы к Сибилле. К ним относятся PoW (Proof of Work) и PoS (Proof of Stake, запланированные для Ethereum Serenity на начало 2020 года), а также более совершенный консенсус DPoS.

В PoW (который в настоящее время используется в Ethereum), отдельные сетевые узлы должны использовать много ресурсов, чтобы предложить блок. Считается, что атака Сибиллы из-за этого просто не окупается.

При использовании схемы PoS (Proof of Stake, запланированной для Ethereum Serenity) и DPoS, участники должны инвестировать внутреннюю валюту, чтобы иметь возможность участвовать в создании новых блоков данных. Эти так называемые узлы-валидаторы ручаются за свою честность вкладом капитала (мы говорим о так называемом стейкинге), и получают за это пропорциональное вознаграждение. Высокие требования к капиталу для участия предназначены для подавления атаки Сибиллы.

Процесс Proof-of-Stake имеет решающее преимущество перед механизмом Proof-of-Work: он снижает потребление энергии и, следовательно, затраты на обработку транзакций.

На самом деле процесс PoS — замечательное решение. Однако у него есть и обратная сторона. Например, организованная группа злоумышленников из мира организованной киберпреступности может тайно создать позицию, угрожающую сети, не оказывая прямого влияния. Таким образом, соответствующие заинтересованные группы могли бы находиться в сети, не обнаруженные в долгосрочной перспективе, и «нанести удар» только по конкретной транзакции. С PoW нет такого риска отложенной атаки.

Атаки Sybil также можно подавить с помощью сертификации или аутентификации. Однако эти меры не могут осуществляться за счет децентрализованного характера цепочки блоков, или за счет анонимности участников.

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

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

Разрабатывая свою собственную структуру блокчейнов, Microsoft занимает завидное положение, имея контроль над средой выполнения Windows. Таким образом, компания смогла создать надежную среду выполнения для внутренней платформы Confidential Consortium Framework (CCF, ранее известной как CoCo). Другим провайдерам нелегко воспользоваться этим преимуществом.

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

Жесткая и мягкая вилки

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

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

Ошибки в исполняемом коде контракта не могут быть исправлены обновлением программного обеспечения. Смарт-контракты, в частности, часто бывают ошибочными. Некоторые исследования показывают, что в случае Ethereum доля серьезных ошибок в смарт-контрактах составляет около 45 процентов. В прошлом, недостатки безопасности не только позволяли ненадлежащим образом перенаправлять средства с затронутых учетных записей, но также причиняли вред не вовлеченным пользователям.

Когда протокол блокчейна обновляется, сообщество говорит о так называемом форке. Это программное обеспечение, которое запускается на отдельных сетевых узлах для управления рассматриваемой цепочкой блоков. С таким обновлением программного обеспечения блокчейна могут быть введены новые функции, такие как сегментирование, или новая процедура консенсуса, транзакции могут быть отменены (как в случае ETC / ETH), или могут быть исправлены ошибки.

Если обновление программного обеспечения блокчейна, о котором идет речь, не влияет на его совместимость с предыдущей версией, это называется так называемым софт-форком. Пример софт-форка был предоставлен блокчейном Биткойн с обновлением SegWit (Segregated Witness). С помощью софт-форка все сетевые узлы по-прежнему могут вводить свои транзакции в одну цепочку блоков, и координировать их друг с другом, используя консенсус.

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

После того, как все участники сети обновили такой хард-форк, старый блокчейн добавляется в новый блокчейн (и, таким образом, перестает существовать сам). Так что только новый блокчейн будет продолжен. Хорошим примером хард-форка такого типа были обновления Ethereum, начиная с Constantinople и Saint Petersburg.

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

Именно такая участь была уготована сообществу Ethereum в связи со взломом DAO, когда в результате хард-форка платформа раскололась на два блокчейна Ethereum: Ethereum Classic (ETC) и «новый» Ethereum (ETH).

Для реализации крупных концептуальных изменений также может потребоваться несколько этапов обновления. Так обстоит дело с запланированной миграцией Ethereum (ETH) на протокол Casper с процедурой консенсуса с подтверждением доли владения. Основная цель этих обновлений — решить проблемы масштабируемости, снизить транзакционные издержки и создать новые стимулы для участников. Только время покажет, как такие масштабные изменения повлияют на кибербезопасность блокчейна Ethereum, и связанных с ним решений.

Заключение

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

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