В чем разница между доказательством доли и доказательством работы?

Пограничная сеть Ethereum в настоящее время использует алгоритм консенсуса Proof-of-Work (PoW), в то время как будущая версия сети вместо этого планирует использовать алгоритм Proof-of-Stake (PoS). В чем разница между этими двумя типами алгоритмов?

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

Ответы (5)

Давайте начнем с того, что у них общего: они оба являются алгоритмами для достижения консенсуса в блокчейне.

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

Доказательство работы имеет замечательное свойство: вы можете использовать теорему Байеса и законы термодинамики, чтобы доказать, что данный блок действительно требует определенного объема работы для добычи. Таким образом, пользователи могут просто выбрать самую длинную действующую цепочку с наибольшим объемом работы в качестве правильной цепочки.

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

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

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

Существуют важные различия между различными разрабатываемыми алгоритмами Proof of Stake. Этот вопрос касается PoW и PoS, поэтому я держу ответ очень общим.

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

У вас есть ссылка, чтобы узнать больше о разрабатываемых алгоритмах PoS?
@deadalnix: Да. Вы можете найти его на сайте vitalik.ca/files/mauve_paper.html.
Эта ссылка не работает.
@Himansushharma Ссылка сейчас недоступна, извините.
Новая ссылка на лиловую бумагу: cdn.hackaday.io/files/10879465447136/…

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

Решение Биткойн состояло в том, чтобы использовать что-то под названием Proof of Work (или «майнинг», или «хеширование») , когда участвующие пользователи работали над решением сложных математических задач, а затем публиковали решения. Поскольку для поиска этих решений требуются ресурсы реального мира , такие как компьютеры и электричество, нет никакого способа «обмануть» и притвориться, что вы представляете большую часть мощности майнинга в сети, чем на самом деле. В результате алгоритмы PoW могут использовать количество и сложность найденных решений для измерения того, насколько сеть согласна с текущим состоянием блокчейна.. Единственный способ помешать законным пользователям прийти к соглашению о состоянии блокчейна — это контролировать достаточное количество общей вычислительной мощности, чтобы вы могли делать вид, что группа не согласна сама с собой, или даже что ваше мнение является настоящим консенсусом, а все остальные пользователи лгут о состоянии блокчейна. Это требование к ресурсам — это хорошо , потому что это означает, что вмешательство в консенсус группы требует много ресурсов (т. е. денег).

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

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

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

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

POS более экологичный и не требует энергии. Вы должны по существу заблокировать свои монеты/токены для майнинга или обработки транзакций. В настоящее время также существуют проблемы с POS, например, небольшая группа людей, владеющая большинством токенов/монет, может удвоить расходы. Существует также проблема «Ничего не подвержено риску», которая гласит, что если есть вилка, вы можете продолжать использовать обе вилки, пока одна из них не умрет. Я думаю, что Виталик и Влад, возможно, нашли решение CBB (консенсус по пари). Подробнее здесь:

https://blog.ethereum.org/2015/12/28/understanding-serenity-part-2-casper/

Неправильно говорить, что PoS не требует энергии, поскольку компьютеры по-прежнему необходимо включать как можно чаще.
@Symeof действительно. но 0,01% расхода это еще хороший прогресс.
@v.oddou: Это определенно будет улучшением. Но как вы пришли к этому числу?
полное первое число, не принимайте это всерьез :) однако больше нет необходимости запускать миллиарды одноразовых номеров. Raspberry Pi может доказать дерево Меркеля, поэтому 1 ватт за несколько секунд по сравнению с мегаваттом за 10 минут для блока PoW?

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

rand= 8-байтовое случайное число

Доказательство работы:

Я буду соревноваться с вами, чтобы найти хеш-значение the_truth+ rand, которое меньше согласованного уровня сложности, приз для победителя.

Когда кто-то выиграет, я проверю, согласен, потом рассчитаю новую версию the_truthи начну новую гонку.

Доказательство доли:

Могу поспорить, что the_truthэто будет согласованное будущее состояние виртуальной машины Эфириума.

Proof of Work (PoW) и Proof of Stake (PoS) — это два протокола, имеющих одну и ту же цель, и цель состоит в том, чтобы установить консенсус в отношении блокчейна, т. е. мы хотим согласовать определенное состояние блокчейна, или все узлы должны согласовать определенное состояние блокчейна. Итак, ребята, когда создается блок, его нужно добавить в блокчейн, и все майнеры пытаются его добыть. Позвольте мне очистить его.

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

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

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

Это было объяснение Proof of Work ..... надеюсь, вы поняли. Давайте перейдем к Proof of Stake .

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

Ethereum пытается включить PoS с помощью своего нового протокола PoS под названием Casper. Это функция, которая гласит, что злонамеренный валидатор (в случае PoS майнер называется валидатором), который проверяет блок, потеряет деньги, если он/она проверит вредоносный блок. блок не правильный.

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