Сравнение Proof-of-Work и Proof-of-Stake

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

Уже с первого взгляда понятно, что это революционная технология, обеспечивающая проведения транзакций без контроля каких-либо посреднических организаций или контролирующих структур. Теперь нет необходимости в промежуточном органе, который бы занимался выпуском валюты — Bitcoin просто существует и этим он чем-то схож с обычным золотом.

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

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

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

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

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

База блокчейн без децентрализации

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

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

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

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

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

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

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

Если подвести общий итог под принципом формирования базы данных, напрашивается ряд выводов:

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

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

Как защитить блокчейн?

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

Приведенное описание касается работы алгоритма Proof-of-Work (PoW). Получается, что узел может проверить правильность выполнения требуемых стандартов функционирования майнером и точность исполнения последним всех необходимых расчетов.

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

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

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

Интересен тот факт, что результаты расчетов, выполняемых майнерами, бесполезны вне системы Bitcoin. Такая особенность заставляет лишний раз подумать о возможности применения имеющихся резервов в какое-либо полезное русло. Таким образом, перспективы PoW должны быть исследованы.

Proof-of-stake

Как уже отмечалось выше, Bitcoin относится к категории децентрализованных систем. При этом блокчейна Биткоина может применяться и для решения других задач, но первоначально его создавали именно в отношении новой валюты. Узлы направляют между собой токены — конкретные параметры, имеющие непосредственную связь с входами и выходами финансовых операций. Такая особенность дала импульс для создателя Peercoin задействовать вычисленный параметр, остановленный на транзакционных выводах. Речь идет о «stake» — ресурсе, определяющем узел, который вправе добывать новый блок.

Сущность proof-of-stake заключается в хэшировании информации, предназначенной для нахождения параметра меньше конкретного значения. При этом сложность расходится равномерно, с учетом баланса определенного узла. Если по иному сформулировать сказанное выше, процедура производится с учетом объема денег на счету пользователя. Узел, имеющий наибольший объем средств, получает больше шансов для генерации следующего блокчейна. Интересен тот факт, что каждый определенный узел не заинтересован в наличии повышенного баланса, поэтому вся PoS-система в целом выглядит весьма перспективно. Это обусловлено минимальными требованиями к мощностям, обеспечивающим расчет. Кроме того, не возникает проблемы с «ненужными» или «неиспользуемыми» возможностями ПК.

По заявлению специалистов, Proof-of-Stake — это удачное решение, которое смотрится даже более эффективно, чем рассмотренный выше конкурент. Система PoW имеет ряд недостатков, среди которых не только потребление больших объемов энергии. Майнеры, работающие в криптосети, собираются в пулы, а оператор этого формирования теряет возможность держать под контролем крупную долю мощностей. Следовательно, принцип децентрализации нивелируется, и один большой игрок получает возможность держать под контролем всю сеть в целом.

Но у PoW имеется и ряд плюсов, которые достойны внимания. В частности, майнеры, работающие в этой структуре, расходую большие объемы электричества. Но в ситуации с PoS речь идет о применении балансов личных аккаунтов. Следовательно, общие расходы ниже.

Выше описана сущность хорошо известной проблемы Nothing-at-Stake, которая превращает Proof-of-Stake в нестабильную структуру. Здесь появляется возможность для атаки и создания форка блокчейна, то есть альтернативной и более длинной цепи. Формирование последней возможно, благодаря подключению незадействованных якобы «несуществующих» мощностей.

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

Сложность NaS касается PoS-системы и на современном этапе нуждается в решении. Сама атака бывает двух типов — ближняя и дальняя. В первом случае происходит подмена большей части ближайших блоков, а во втором — злоумышленник направляется вглубь истории Биткоин-сети. Теоретически у него имеется возможность добраться даже до блока генезис.

В чем суть ближних атак?

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

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

Чтобы исключить рассмотренные проблемы, важно вовремя удалять опасные узлы. Плюс PoS-системы, в первую очередь, заключается в детерминированности. Вероятность генерации нового блока напрямую зависит от адреса, а также ряда других факторов — сложности, метки времени и баланса. Кроме того, пространство ограничивается периодом между рядом стоящими блоками. Следовательно, определить следующий узел и отклонить его становится реальной задачей. Именно по этому принципу работает NXT— криптовалюта второго поколения.

Существует еще один путь — обязать майнера производить «платеж» в виде небольшого объема монет до начала выполнения работы в сети. Если узел фиксирует одновременное подписание двух соревнующихся блоков, он забирает залог. К слову, подобный подход не новый, и активно задействован в Эфириуме. Что касается большей части криптовалют, в них до сих пор применяются централизованные точки, поэтому необходимость подтверждения правильной версии блокчейна пока не отпала.

Дальние атаки

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

Избежать такой проблемы можно только одним путем, если сделать меньшей глубину. Для примера стоит привести NXT. Здесь, если начало движения форка происходит раньше, чем 720-го блока, узлы заблокируют такое передвижение. Но для отклонения форка у элемента сети должна быть копия существующего блокчейна.

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

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

Споры в отношении плюсов и минусов каждого из вариантов ведутся долгие годы. Многие сходятся во мнении, что в будущем развитие получит некая смесь между PoW и PoS. Многие криптовалюты будут придерживаться первой системы, ведь в памяти еще сидит страх Nothing-at-Stake. С другой стороны, PoS отличается легкостью интегрирования и повышенным уровнем надежности, что и привлекает разработчиков. Безопасность всегда в цене, и имеется уверенность, что так будет и в дальнейшем.