Система блокчейн специально разрабатывалась с учётом вопросов безопасности. Для этого используются специальные криптографические методы и математические модели поведения.
Всё это служит для того, чтобы предотвратить преднамеренное и случайное внесение искажений в информацию, хранимую в подобной сети. А в частном случае – для предотвращения копирования, уничтожения и воровства цифровых криптовалют.
И хотя именно криптовалюты являются наиболее востребованным примером использования технологии блокчейн, в других сферах человеческой деятельности защита информации тоже может быть важна. Например, в области здравоохранения, разработки цепи поставок, благотворительности, управления и многих других.
Базовые концепции
Независимо от того, какого рода информация будет храниться в блокчейне, для её защиты будут использоваться две основные концепции – консенсуса и неизменности.
Консенсус означает, что отдельные узлы, формирующие распределённую сеть, работают на одних и тех же условиях, совместно вынося решения о достоверности информации, содержащейся в блоках. Тех же транзакций, если речь идёт о криптовалюте. Это обеспечивается программными алгоритмами консенсуса и не требует человеческого вмешательства.
Неизменность означает, что будут внесённой в #блокчейн после подтверждения достоверности, информация не подлежит изменению. Это гарантирует «одноразовое» использование криптовалют и невозможность исправления данных «задним числом». Обеспечивается особенностями кодирования информации – любое её изменение сразу же меняет хэш блока, поэтому он перестаёт быть связанным с последующими элементами цепочки.
Именно таким образом обеспечивается как соблюдение правил сети отдельными узлами, так и сохранность и подлинность хранимых данных. Но на деле, всё ещё сложнее и интереснее.
Криптография
Основа защиты информации, хранящейся в сети блокчейн – криптографические методы кодировки. В частности – хэширование. Оно осуществляется в процессе работы хэш-функции. Функция получает данные (объем не важен), обрабатывает их, а на выходе выдаёт «решение» - хэш заданной «длины».
Любое изменение входящей информации, даже в рамках одного бита, приведёт к изменению хэша. Но если данные не меняются, то хэш будет одинаковым, независимо от того, на какой машине будет запускать функция. Этот хэш используется для генерации хэша последующего блока, что обеспечивает чёткую и последовательную связь между информацией.
Если же кто-то попробует внести изменение в один из блоков, то это тут же «вырвет» его из общей цепочки, поскольку все сгенерированные последующие блоки будут выстраиваться на «старом» хэше. При этом стоит учитывать, что это нужно проделать на более половины всех машин, подключённых к сети. Что хоть и реально, но сложно.
В качестве примера, можно назвать хэш-функцию SHA-256, которая используется в системе #Биткойн. Она так называется потому, что на выходе всегда получаем файл, длиной 256 бит или 64 символа. Данная функция используется как для достижения консенсуса при подтверждении транзакций, так и для генерации новых блоков ради монет.
Но на этом использование криптографии не ограничивается. Её методы также применяются для обеспечения безопасности кошельков, на которых криптовалюта хранится. Так, например, для каждого индивидуального кошелька с помощью ассиметричного шифрования создаётся два ключа – публичный и приватный. Публичный ключ используется для взаимодействия в системе и для генерации личной цифровой подписи под проведёнными транзакциями. Появляется возможность в автоматическом режиме связывать индивидуальный кошелёк и платежи, созданные на основе публичных ключей. Кроме того, именно ассиметричное шифрование гарантирует, что только обладатель приватного ключа может снимать средства с цифрового кошелька. Все остальные могут только пополнять его с помощью публичных ключей.
Криптоэкономика
Это довольно новая наука, которая довольно сильно отличается от классической экономики, поскольку базируется не на существующих экономических моделях и прогнозах, а на алгоритмах математической «теории игр». Это возможно, поскольку компьютеры, в отличие от людей, способны действовать рационально, независимо от обстоятельств, так как все возможные варианты поведения чётко прописаны в алгоритмах и программах. Так что поведение отдельных узлов децентрализованной сети вполне себе укладывается в рамки теории игр.
А одним из постулатов, гарантирующих эффективную работу блокчейна, в данном случае выступает банальная «экономическая целесообразность». Если говорить о криптовалютах, то смысл в том, что на подделывание транзакций требуется несоизмеримое по стоимости и ресурсам воздействие. И, наоборот, честная работа более целесообразна, поскольку закономерно вознаграждается.
Рассмотрим в качестве показательного примера сеть Биткойн. Она целенаправленно создавалась такой, чтобы процесс получения новых блоков и вознаграждения за них был сложным и ресурсоёмким. И можно, конечно, потратить время и ресурсы на подделку данных, но прибыль от этого в большинстве случаев даже не покроет затрат. А неэффективные узлы, поставляющие недостоверную информацию, из общей сети исключаются.
Кроме того, эта «экономическая эффективность» гарантирует соблюдение концепции консенсуса. Так как для эффективного искажения данных нужно собрать более 51 процента общей вычислительной мощности сети. Это затруднительно, если речь идёт о столь крупных криптовалютах, как Биткойн – слишком уж много ресурсов должно быть сосредоточено в одном месте. Даже на уровне государств-игроков на криптовалютных биржах это пока невозможно.
А ситуация, в которой ложные данные генерируются меньшей частью вычислительных мощностей сети, компенсируется за счёт механизма, называемого Византийской Отказоустойчивостью (BFT). Она позволяет эффективно действовать всей системе, даже находясь непосредственно в процессе вредоносного воздействия.
Если подытожить, то даже одолев криптографическую защиту информации, «взламывать» Биткойн слишком дорого и долго – всё же создание полноценных работающих узлов требует большой ресурсной базы. При этом, честная работа в заданных рамках – всегда вознаграждается. И это куда выгоднее в рамках «рационального поведения», используемого в теории игр.
Что касается других криптовалют, особенно новых, то у них есть свои дополнительные механизмы #защиты, компенсирующие относительно небольшие вычислительные мощности. Правда, далеко не всегда.
Заключение
За счёт использования криптографии и теории игр, получается добиться высокого уровня безопасности даже в публичных анонимных децентрализованных сетях. В качестве альтернативы, например, может использовать регулирование доступа. Однако это означает меньшую #децентрализацию, а вместе с ней – куда меньшие масштабы. Впрочем, вполне достаточное для внутренних сетей, работающих на принципе блокчейна.