Massnet (MASS) - механизм консенсуса на блокчейне

Механизм консенсуса MASS призван стать базовой инфраструктурой для всех уровней консенсуса блокчейна. 

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

Стабильность Биткойна доказывает, что практическая византийская отказоустойчивая система в масштабе Интернета возможна, а надежность системы гарантируется ее протоколом консенсуса. Однако использование в системе Биткойн алгоритма Proof-of-Work (PoW) вызвало серьезные опасения по поводу расширения ее сети. Эти опасения включают:

  1. Поскольку алгоритм PoW не может отделить процесс выбора представленного блока от протокола построения блока, это означает, что хэш-мощность не может быть повторно использована для консенсуса в нескольких цепочках.
  2. Алгоритм PoW, который использует Биткойн, рискует спуститься в игру между все более централизованной сетью и горсткой олигархов, успешно монополизировавших вычислительные ресурсы.
  3. С невероятным ростом сети огромное количество энергии постоянно расходуется исключительно для ее поддержания.
  4. Доминирование ASIC среди майнеров создало огромные барьеры для входа и сделало майнинг недоступным для обычных пользователей.

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

Механизм консенсуса блокчейна MASS отделит уровень консенсуса от протокола проверки данных блока, поэтому одна и та же сеть майнинга сможет действовать как консенсусная служба для нескольких экземпляров блокчейна. В этой статье мы предлагаем высокоэффективный протокол консенсуса Proof-of-Capacity (PoC) и основанную на нем инновационную систему блокчейнов. Эта система имеет новый дизайн и несколько интересных экономических механизмов, помогающих расширять сеть согласованных двигателей при холодном запуске. Эта блокчейн-система имеет множество преимуществ, таких как отсутствие прав доступа, отказоустойчивость 51%, естественная тенденция к децентрализации.

Подтверждение емкости Proof-of-Capacity (PoC)

Proof-of-Capacity (PoC) - это механизм консенсуса, основанный на предоставлении доказательства наличия места для хранения. В алгоритме консенсуса PoC, когда узел отправляет блок в сеть, он также должен предоставить действительное доказательство емкости. Узлу очень сложно создать действительное доказательство емкости без соответствующего размера хранилища, и любой узел в сети может проверить это доказательство. Если и данные блока, и доказательство действительны, блок будет принят остальной частью сети.

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

Процесс состоит из пяти этапов:

  1. инициализация,
  2. построение блока,
  3. прием блока,
  4. выбор основной цепочки,
  5. механизм наказания.

Сделки

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

Полные узлы Биткойна хранят копию набора UTXO, чтобы проверять транзакции и создавать новые без необходимости проверять всю цепочку блоков. Блокчейн-система MASS использует многие дизайнерские идеи UTXO, но также содержит некоторые инновации, позволяющие лучше адаптироваться к нашему экономическому механизму. Транзакция состоит из двух основных частей: ввода транзакции (которая цитируется) и вывода транзакции (где выполняется транзакция). Каждая транзакция содержит один или несколько «входов», которые похожи на дебетование MASS-счета. На другой стороне транзакции есть один или несколько «выходов», которые похожи на кредиты, добавленные к MASS-счету. Входы и выходы (дебет и кредит) не обязательно составляют одну и ту же сумму. Вместо этого выходы в сумме немного меньше, чем входы, а разница представляет собой подразумеваемую комиссию за транзакцию, которая представляет собой небольшой платеж, взимаемый майнером, который включает транзакцию в реестр.

В системе блокчейн MASS есть три основных типа транзакций: обычные транзакции, транзакции стекинга и транзакции привязки. Обычная транзакция - это обычная операция передачи токена. Транзакция стекинга заключается в замораживании транзакционных прав токена до определенной высоты блока. Когда пакетная транзакция упакована, транзакция может быть потрачена только после того, как высота блока достигнет заданной высоты. Связывающая транзакция - это привязка владения токеном к адресу в пространстве емкости.

В выходных данных обычной транзакции используется «Pay-to-Witness-Script-Hash» (P2WSH). Сложные сценарии заменяются более короткими отпечатками пальцев в выводе транзакции, что уменьшает размер транзакции. Сценарии могут быть закодированы как адрес, поэтому отправитель и кошелек отправителя не нуждаются в сложной разработке для реализации P2WSH. P2WSH перекладывает стоимость комиссии за длинный сценарий с отправителя на получателя, который должен включить длинный сценарий погашения, чтобы потратить его. Сценарий, выполняемый виртуальной машиной, имеет вид <Sig> 1 <PubKey> 1 OP_CHECKMULTISIG. На рисунке 1 показана структура обычной транзакции в системе блокчейн MASS.

Вывод транзакции стекинга расширен на основе P2WSH. Разница между сделками стекинга и обычными транзакциями заключается в выходных данных. Сценарий, выполняемый виртуальной машиной, имеет вид <lockheight> OP_CHECKSEQUENCEVERIFY OP_DROP <Sig> 1 <PubKey> 1 OP_CHECKMULTISIG. На рисунке 2 показана структура транзакции стекинга в системе блокчейн MASS.

Вывод связывающей транзакции также расширен на основе P2WSH. Сценарий, выполняемый виртуальной машиной, имеет вид <Sig> 1 <Pubkey> 1 OP_CHECKMULTISIG. На рисунке 3 показана структура привязки транзакции в системе блокчейн MASS.

Сеть

Система блокчейн MASS структурирована как одноранговая сетевая архитектура поверх Интернета. Термин одноранговый означает, что компьютеры, которые участвуют в сети, являются одноранговыми друг для друга, что все они равны, что нет «специальных» узлов, и что все узлы разделяют бремя предоставления сетевых услуг. Узлы сети соединяются в ячеистой сети с топологией «плоская». Нет сервера, нет централизованного обслуживания и нет иерархии внутри сети. Узлы в сети P2P одновременно предоставляют и потребляют услуги, причем взаимность выступает в качестве стимула для участия. P2P-сети изначально устойчивы, децентрализованы и открыты.

Стимулы

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

В обращении будет только 206 438 400 экземпляров MASS, и они будут выпущены в течение 15 периодов. При переходе в новый период общее вознаграждение за каждый блок будет уменьшено вдвое, а продолжительность периода будет удвоена по сравнению с предыдущим. Первое сокращение вдвое произойдет на высоте блока 13440, и после того, как все MASS будут выпущены (что должно занять более 600 лет), транзакционные сборы будут действовать как стимул для людей продолжать поддерживать сеть MASS.

Награды за блок

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

Награды за майнинг

Майнер, который создает новый блок с помощью PoC-майнинга, получает 192 MASS в качестве базовой награды.

Награды за стекинг

Посредством разбивки можно заморозить определенное количество МАССЫ, пока не будет достигнута заданная высота блока. Во время ставки это количество МАССЫ не может быть передано и зафиксировано на месте. Чтобы обеспечить стимул для этого, все участники, которые делают ставки MASS, имеют возможность получать вознаграждения за ставки. Выбор ставки можно рассматривать как выражение уверенности держателей MASS в долгосрочной стабильности системы.

Каждой ставке присваивается вес, основанный на ее общей стоимости и времени (в блоках) до того, как она снова станет доступной. Вес, присвоенный каждому адресу ставок, рассчитывается из суммы всех текущих транзакций ставок, связанных с этим адресом. Для каждого блока будет выдано 192 MASS в качестве вознаграждения за размещение до 30 адресов для ставок. Распределение вознаграждений определяется соответствующим весом адресов стекинга.

Анализ безопасности

Благодаря изначально безопасной природе метода Proof-of-Capacity и консенсуса блокчейна, MASS обладает чрезвычайно высоким уровнем безопасности, которого ожидают пользователи. Proof-of-Capacity защищен следующими способами:

  • Доказательства не могут быть подделаны: алгоритм PoC MASS использует компромисс между временем и памятью. Если доказывающая сторона предоставит доказательство емкости S, это покажет, что доказывающая заполнила емкость S в соответствии с настоящими правилами, что было бы очень трудно вычислить быстро.
  • Отказоустойчивость 51%: при борьбе за следующий блок каждый узел ищет доказательство, соответствующее текущему блоку, в его собственном инициализированном пространстве хранения. Вероятность того, что узел генерирует новый блок, пропорциональна отношению между инициализированной емкостью всей сети и инициализированной емкостью текущего узла. Если злонамеренный узел намеревается взять под контроль генерацию блоков, ему потребуется не менее 51% мощности всей сети. Однако для того, чтобы иметь емкость более 51%, вложение в физическое оборудование было бы колоссальным. Следовательно, у злонамеренных узлов нет достаточных стимулов для нарушения консенсуса MASS.
  • Непредсказуемость случайного целевого значения: в алгоритме MASS PoC каждый блок предоставляет случайное значение в качестве цели для инициализированной емкости всех узлов. Это случайное значение создается проверенной случайной функцией, и никакой узел не может это контролировать. Следовательно, при одинаковой высоте блока все узлы имеют одинаковую априорную информацию при борьбе за следующий блок.

Протокол консенсуса блокчейн безопасен следующим образом:

  • Устойчивость к разветвлению: Схема наказания за обнаружение вилки защищает от Атаки без ставки, разделяющие цепочку. Поскольку MASS использует алгоритм Proof-ofCapacity, без принятия необходимых мер защиты, он будет подвержен риску атак Nothing-at-Stake. То есть доказательство S можно использовать как доказательство в основной цепочке, а также в вилке одновременно без дополнительных затрат. Чтобы справиться с этим риском, система MASS использует схему наказания за обнаружение вилки. Если будет обнаружено, что блок основной цепи и блок разветвленной цепи имеют одно и то же доказательство, все узлы автоматически занесут в черный список открытый ключ, используемый при инициализации для этой емкости хранилища, и отклонят последующие доказательства, предоставленные из него.
  • Устойчивость к самодостаточному майнингу: в механизме консенсуса «доказательство работы» злонамеренный узел может получить преимущество во времени в борьбе за следующий блок, скрыв блоки, которые уже были добыты. Однако в протоколе консенсуса блокчейна MASS инициализированные узлы могут находить доказательства исключительно быстро, поэтому нет места для стратегий этого типа.
  • Устойчивость к транзакциям с двойным расходом: система MASS использует модель транзакции UTXO (неизрасходованный вывод транзакции), которая защищена асимметрично зашифрованными математическими алгоритмами. Откат блока гарантируется 51% византийской отказоустойчивостью алгоритма PoC.

Преимущества

Система блокчейн MASS имеет следующие особенности:

  • Безопасность: Используя принцип обмена памяти и времени, протокол PoC обеспечивает неподкупность доказательств, а вместе с использованием проверяемой случайной функции гарантирует, что система MASS имеет 51% византийскую отказоустойчивость. Кроме того, схема наказания за обнаружение вилки защищает основную цепочку от атак типа «ничего на ставке», которые могут разбить основную цепочку.
  • Справедливо: Протокол консенсуса MASS PoC гарантирует, что вероятность генерации блока узлом зависит только от доказательства его эффективности, предоставленного узлом. Кроме того, доказательство эффективной емкости не зависит от носителя данных, так что все узлы, участвующие в сети MASS, имеют одинаковые предельные затраты.
  • Энергоэффективность: В протоколе MASS PoC вычислительные ресурсы требуются только при инициализации емкости хранения, а при входе в фазу консенсуса блока доступ к данным емкости хранения осуществляется только при сложности O(1) за раз. Следовательно, использование протокола MASS PoC для консенсуса блоков не требует постоянного потребления мощности. Когда система MASS выполняет блочный консенсус, используемые вычислительные ресурсы незначительны; достаточно мал, чтобы не повлиять на нормальное использование компьютера. Когда емкость хранилища не участвует в сети MASS, ее можно переформатировать и использовать для других целей.
  • Универсальный: Во время процесса согласования узлу нужно только выполнить запрос доступа к инициализированной емкости и не выполнять с ней никаких операций с данными. Таким образом, одно и то же пространство для хранения может обеспечить емкость доказательства для нескольких экземпляров консенсуса блокчейна, а узлы, использующие протокол MASS PoC, могут одновременно поддерживать несколько экземпляров блокчейна параллельно.

Механизм консенсуса MASS призван стать базовой инфраструктурой для всех уровней консенсуса блокчейна.