Доказательство доли владенияДоказательство доли владения, Proof-of-stake (PoS) (от англ. proof of stake, дословно: «подтверждение доли») — метод защиты в криптовалютах, при котором вероятность формирования участником очередного блока в блокчейне пропорциональна доле, которую составляют принадлежащие этому участнику расчётные единицы данной криптовалюты от их общего количества. Данный метод является альтернативой методу подтверждения выполнения работы (PoW), при котором вероятность создания очередного блока выше у обладателя более мощного оборудования[1][2]. При использовании этого метода алгоритм формирования блока не зависит от мощности оборудования, но с большей вероятностью блок будет сформирован той учётной записью, у которой текущий баланс больше. Например, участник, владеющий 1 % от суммарного количества, в среднем будет генерировать 1 % новых блоков[3]. Впервые идея Proof-of-stake была предложена на форуме «Bitcointalk» в 2011 году[1]. Первая реализация протокола PoS была представлена в 2012 году в криптовалюте PPCoin (в настоящее время PeerCoin)[4]. 15 сентября 2022 года Ethereum перевели на алгоритм консенсуса Proof-of-Stake[5]. На практике часто встречаются смешанные варианты формирования новых блоков. Например, оба метода PoW и PoS используются в криптовалютах Emerсoin, NovaCoin, YaCoin. В криптовалютах PeerCoin и Reddcoin метод PoW используется для первоначального распределения, а PoS — для подтверждения транзакций[6]. В криптоплатформе Nxt, Gridcoin и BlackCoin метод PoS используется на всех этапах[6]. ИдеяИдея proof-of-stake заключается в решении проблемы proof-of-work, связанной с большими тратами электроэнергии. Вместо вычислительных мощностей участников имеет значение количество криптовалюты, находящейся у них на счету. Так, вместо использования большого количества электроэнергии для решения задачи PoW, у участника PoS ограничен процент возможных проверок транзакций. Ограничение соответствует количеству криптовалюты, находящейся на счету у участника[1]. Форжинг и стейкингФоржингом называют создание новых блоков в блокчейне на основе подтверждения доли владения и получение вознаграждения в форме новых токенов и комиссионных сборов. Криптовалюты могут иметь дополнительные условия для участия в форжинге. Например, Nxt позволяет присоединиться к процессу только для тех сумм, которые имеют не менее 1440 блоков подтверждений[7]; Emercoin требует, чтобы активы, участвующие в оценке доли, были депонированы (заморожены) не менее 30 дней. Стейкингом называют получение дохода в форме выплат от форджера за предоставление ему дополнительных средств. На практике вероятность получения вознаграждения крайне мала при относительно небольшой сумме на счету. Увеличить вероятность позволяет объединение средств нескольких участников. В такой группе непосредственно созданием новых блоков (форжингом) будет заниматься только один участник который и будет выполнять функции валидатора. Остальные члены группы превращаются во «вкладчиков», которые объединили с валидатором свои средства. «Вкладчики» не осуществляют никакой деятельности. Но за предоставление средств ради увеличения вероятности дохода оговоренную часть своего дохода форжер распределяет между «вкладчиками» пропорционально предоставленной сумме. В этом случае вознаграждение становится похожим на начисление процентов по вкладу, но с иной природой источника дохода. Доказательство важностиОдним из вариантов комбинированного применения технологии PoS является «Доказательство важности» (Proof-of-importance, PoI) — алгоритм, использующийся в криптовалюте NEM. На вероятность получить право сформировать блок влияют три компонента[8]:
С ростом баланса влияние параметров изменяется — с ростом количества единиц криптовалюты на балансе увеличивается влияние 1-го параметра, и снижается влияние 2-го и 3-го параметров (PoI работает почти как PoS). Чем меньше баланс, тем сильнее влияние 2-го и 3-го параметров. Если суммарный объём эмиссии криптовалюты ограничен, то минимальные требования к 1-му параметру формируют максимальное количество претендентов на создание блока. Преимущества
НедостаткиАргументы, вызывающие опасения[4]:
РеализацииPeercoinPeercoin— система, основанная на «чистом» proof-of-stake, в том смысле, что PoW используется только для начального распределения денежной массы[1]. Генерация блоковУчастники сети Peercoin имеют возможность создать блок, исходя из следующего условия[1]: — текущее время, в данном неравенстве ограничивает попытки хеширования и блокирует создание следующего блока. — результат транзакции. — количество неизрасходованной криптовалюты транзакции. Если у заинтересованной стороны есть ключ, контролирующий , то она может сгенерировать блок, используя ключ в качестве подписи. Подпись, в данном случае, будет служить доказательством выполнения условия. Например, участник, владеющий 50 единицами криптовалюты, создаст новый блок с вероятностью в 10 раз большей, чем участник, владеющий 5 единицами. — время, прошедшее с момента включения в блок результата транзакции . Вероятность сгенерировать следующий блок, сразу после генерации предыдущего очень мала, но она увеличивается со временем. Это позволяет избежать экспоненциального распределения между выплатами, повышая шансы участников, обладающих небольшим количеством криптовалюты. — данные предыдущего блока. Участник, владеющий значительной частью всей криптовалюты системы, имеет возможность генерировать значительную часть блоков, так как вероятность генерации блока пропорциональна количеству монет, находящихся у него на счету. Поэтому, время от времени, заинтересованная сторона имеет возможность генерировать цепочки последовательных блоков[1]. — постоянная, которая корректируется так, что блоки генерируются в среднем каждые 10 минут. CoACoA[1] (chains of activity) частично базируется на основном элементе proof-of-activity, например, на лотерее между активными участниками через процедуру follow-the-satoshi (satoshi[12] — наименьшая единица криптовалюты, например, для биткойна она равна 0.00000001 BTC). Follow-the-satoshiАлгоритм, получающий на вход коэффициент satoshi между нулем и общим числом satoshi в обращении. Далее запрашивает блок, в котором этот satoshi был произведен и отслеживает транзакции, через которые он прошел до тех пор, пока не найдет участника, способного в данный момент потратить его. Например, если у Алисы есть 6 satoshi, а у Боба 2, то вероятность того, что Алиса будет выбрана следующим владельцем какого-либо satoshi в 3 раза выше чем вероятность выбора Боба[1]. Параметры протокола
Процесс создания блоков CoA составляет блокчейн, состоящий из групп по последовательных блоков[1]: Правила протоколаПравила протокола chains of activity[1]:
Dense-CoADense-CoA[1] — альтернативная реализация CoA, в которой участники, генерирующие следующие блоки в цепи, заранее неизвестны. В CoA генерация блока осуществляется одним участником, а в Dense-CoA каждый блок создается группой из участников:
Пусть — необратимая функция. Пусть блок связан с начальным состоянием (англ. seed) , сформированным группой из участников, генерировавших данный блок. Участник , решающий, какие транзакции войдут в следующий блок , определяется с помощью алгоритма follow-the-satoshi с хеш-функцией в качестве входного значения. Оставшиеся участники определяются тем же алгоритмом, но в качестве входного значения используется , где . Далее, выбранные принимают участие в процедуре генерации блока , которая состоит из двух этапов:
Участник подписывает и выкладывает в сеть блок . Блок содержит: транзакции, хеш предыдущего блока , метку текущего времени, прообразов и совокупность всех подписей . Участники используют функцию для вычисления образов . Эти образы используются для получения . Далее проверяется допустимость подписи относительно открытых ключей участников . Начальное распределение криптовалютыДля криптовалюты, не использующей proof-of-work, существует один простой способ распределения денег между участниками — проведение ICO. Однако, в таком случае подразумевается, что изначально вся валюта контролируется одной стороной, что усложняет процесс децентрализации. Во многих криптосистемах, использующих proof-of-stake, эта проблема решается посредством использования PoW для первоначальной генерации криптовалюты, которая будет циркулировать в системе в дальнейшем. Таким образом, первоначальная стоимость единиц криптовалюты определяется стоимостью их производства[1]. КритикаНекоторые авторы утверждают, что доказательство доли владения не является идеальным вариантом для распределенного консенсусного протокола[13]. Ничего на конуПроблема «ничего на кону» заключается в том, что, в случае консенсусной ошибки генераторы блоков ничего не теряют, голосуя за несколько ветвей цепочек. Это не позволяет консенсусу когда-либо установиться[13]. Двойная тратаПоскольку формирование цепочки требует небольших затрат ресурсов (в отличие от PoW-систем), любой может злоупотребить проблемой с попыткой совершить двойную трату средств «бесплатно»[13]. Варианты решения проблемНа практике проекты решали эти проблемы разными путями:
Примечания
|
Portal di Ensiklopedia Dunia