Нужно знать: Proof of Stake – что это такое простыми словами. Proof-of-Work и Proof-of-Stake что это? Какое отношение Proof-of-Work имеет к криптовалютам

Что изменится в технологиях майнинга, если сообщество Ethereum решит сменить одно на другое?


Что такое Proof-of-Work?

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

Кон-цеп-ция су-ще-ство-ва-ла за-дол-го до бит-ко-и-на (Bitcoin), но когда Са-то-си На-ка-мо-то при-ме-нил (или при-ме-ни-ла — мы до сих пор ни-че-го не знаем о лич-но-сти со-зда-те-ля крип-то-ва-лю-ты) эту тех-ни-ку к сво-е-му изоб-ре-те-нию, это по-ло-жи-ло на-ча-ло ре-во-лю-ции в об-ла-сти циф-ро-вых тран-зак-ций.

Стро-го го-во-ря, идея PoW была пред-ло-же-на Син-ти-ей Дворк и Мони Наор еще в 1993 году, но сам тер-мин по-явил-ся го-раз-до позже, в 1999-м, в ста-тье Мар-ку-са Джей-коб-со-на и Ари Джу-эл-са.

Но вер-нем-ся в на-сто-я-щее. Не будет пре-уве-ли-че-ни-ем ска-зать, что Proof-of-Work — глав-ная идея, ле-жа-щая в ос-но-ве бит-ко-и-на: имен-но она слу-жит базой для рас-пре-де-лен-но-го ре-ест-ра.

Что такое распределенный реестр?

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

При тра-ди-ци-он-ных ме-то-дах про-ве-де-ния фи-нан-со-вых опе-ра-ций вы фак-ти-че-ски до-ве-ря-е-те свои сред-ства тре-тьей сто-роне (на-при-мер, Visa, Mastercard, PayPal или банку), ко-то-рая и осу-ществ-ля-ет тран-зак-цию. Тре-тья сто-ро-на ведет соб-ствен-ный за-кры-тый ре-естр тран-зак-ций, вклю-ча-ю-щий за-пи-си об ис-то-рии сде-лок и дан-ные о ба-лан-се каж-до-го ак-ка-ун-та.

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


Proof-of-Work и

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

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

При тран-зак-ции с крип-то-ва-лю-той про-ис-хо-дит сле-ду-ю-щее:

  • Транзакции случайным образом группируются в блоки;
  • Майнеры подтверждают легитимность транзакций в каждом блоке;
  • Для этого им приходится решить сложную математическую задачу, известную как proof-of-work problem;
  • Первый майнер, решивший задачу, связанную с конкретным блоком, получает вознаграждение в виде криптовалюты;
  • Заверенные транзакции добавляются к блокчейну, который доступен каждому участнику системы.

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

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

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

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

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

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

Раз-ра-бот-чи-ки Ethereum хотят из-ме-нить си-сте-му це-ли-ком, пе-рей-дя к новой си-сте-ме под на-зва-ни-ем Proof-of-Stake.

Что такое Proof-of-Stake?

Proof-of-Stake — дру-гой спо-соб ве-ри-фи-ци-ро-вать тран-зак-ции и обес-пе-чи-вать distributed consensus.

Это ал-го-ритм, ко-то-рый слу-жит ровно тем же целям, что и Proof-of-Work, но спо-соб до-сти-же-ния этих целей со-вер-шен-но от-ли-ча-ет-ся.
Идея Proof-of-Stake была впер-вые пред-ло-же-на на фо-ру-ме bitcointalk еще в 2011 году; год спу-стя по-яви-лись пер-вые крип-то-ва-лю-ты, ис-поль-зу-ю-щие этот метод, — Peercoin, ShadowCash, Nxt, BlackCoin, NuShares/NuBits, Qora и Nav Coin.

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

Никакого вознаграждения за блок

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

Почему Ethereum хочет перейти на PoS?

Со-об-ще-ство Ethereum и со-зда-тель крип-то-ва-лю-ты Ви-та-лик Бу-те-рин пла-ни-ру-ют про-ве-сти хард- , чтобы пе-рей-ти с си-сте-мы Proof-of-Work на Proof-of-Stake.

Но по-че-му? Рас-пре-де-лен-ный ре-естр, ос-но-ван-ный на Proof-of-Work тре-бу-ет от май-не-ров боль-ших за-трат энер-гии. Одна тран-зак-ция с бит-ко-и-ном тре-бу-ет столь-ко же элек-тро-энер-гии, сколь-ко пол-то-ры семьи по-треб-ля-ют за целый день.

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

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

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

Как стать форджером?

Если новый про-то-кол Proof-of-Stake под на-зва-ни-ем Casper будет при-ме-нен, в си-сте-ме по-явит-ся некий пул ва-ли-да-то-ров. Поль-зо-ва-те-ли смо-гут при-со-еди-нять-ся к пулу, чтобы по-лу-чить воз-мож-ность войти в число фор-дже-ров.

Сам Бу-те-рин утвер-жда-ет:

«У си-сте-мы не будет ка-ких-то пред-по-чте-ний по по-во-ду того, кто смо-жет войти в пул ва-ли-да-то-ров. Кто угод-но смо-жет при-со-еди-нить-ся на каком угод-но этапе, неза-ви-си-мо от ко-ли-че-ства дру-гих участ-ни-ков».

Воз-на-граж-де-ние для ва-ли-да-то-ров со-ста-вит «от 2% до 15% от суммы тран-зак-ции», го-во-рит Бу-те-рин, — впро-чем, по этому пунк-ту у него пока нет уве-рен-но-сти.

Кроме того, Бу-те-рин за-явил, что, хотя число ва-ли-да-то-ров (фор-дже-ров) не будет огра-ни-чи-вать-ся про-грамм-но, его можно будет ре-гу-ли-ро-вать эко-но-ми-че-ски, со-кра-щая раз-мер ко-мис-сии, если же-ла-ю-щих ста-нет слиш-ком много, или уве-ли-чи-вая, если их будет не хва-тать.

Более надежная система?

Любая ком-пью-тер-ная си-сте-ма нуж-да-ет-ся за-щи-те от ха-кер-ских атак, осо-бен-но если она как-то свя-за-на с день-га-ми. По-это-му глав-ный во-прос сво-дит-ся к сле-ду-ю-ще-му: будет ли Proof-of-Stake без-опас-нее, чем Proof-of-Work?

Он бес-по-ко-ит не толь-ко экс-пер-тов — скеп-ти-ки на-хо-дят-ся и в самом со-об-ще-стве. В слу-чае Proof-of-Work зло-умыш-лен-ни-кам труд-но по-лу-чить до-ступ к си-сте-ме из-за вы-со-ко-го тех-но-ло-ги-че-ско-го и эко-но-ми-че-ско-го по-ро-га вхож-де-ния.

Атаки в си-сте-ме PoW об-хо-дят-ся очень до-ро-го — чаще всего для этого вам по-на-до-бит-ся боль-ше денег, чем вы в итоге смо-же-те украсть.

Си-сте-ме PoS, на-про-тив, по-на-до-бят-ся до-пол-ни-тель-ные сред-ства за-щи-ты — без этого ата-ко-вать ее будет го-раз-до проще.

Чтобы раз-ре-шить этот во-прос, Бу-те-рин со-здал про-то-кол Casper, —ал-го-ритм, спо-соб-ный опре-де-лять об-сто-я-тель-ства, при ко-то-рых небла-го-на-деж-ный ва-ли-да-тор может по-те-рять свой де-по-зит. Он по-яс-ня-ет: «Casper тре-бу-ет, чтобы ва-ли-да-то-ры вно-си-ли вклад для уча-стия. Участ-ник те-ря-ет де-по-зит, если про-то-кол опре-де-ля-ет, что он на-ру-шил неко-то-рый набор пра-вил».

Вывод

Бла-го-да-ря PoS ва-ли-да-то-рам не нужно ис-поль-зо-вать свою вы-чис-ли-тель-ную мощ-ность, — един-ствен-ны-ми фак-то-ра-ми, вли-я-ю-щи-ми на успех, яв-ля-ет-ся общее ко-ли-че-ство их соб-ствен-ных монет и те-ку-щая слож-ность си-сте-мы.

Таким об-ра-зом, пе-ре-ход от PoW к PoS может обес-пе-чить сле-ду-ю-щие пре-иму-ще-ства:

  • Экономия энергии;
  • Более безопасная сеть, поскольку атаки станут более дорогими: если хакер захочет купить 51% от общего количества монет, рынок отреагирует быстрым повышением цен.

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

Если некий ва-ли-да-тор со-здаст «недо-пу-сти-мый» блок, его залог будет уда-лен, а сам он ли-шит-ся воз-мож-но-сти уча-стия в си-сте-ме.

Дру-ги-ми сло-ва-ми, си-сте-ма без-опас-но-сти Casper ос-но-ва-на на чем-то вроде ста-вок. В си-сте-ме PoS ва-ли-да-тор как бы де-ла-ет став-ку на тран-зак-цию и по-лу-ча-ет де-неж-ный приз, про-пор-ци-о-наль-ный сво-е-му вкла-ду.

Под-го-то-ви-ла Тая Аря-но-ва

Майнеры работают 24/7 не только для того чтобы добывать монеты. Основная их задача - записывать текущие транзакции между кошельками в новые блоки. Именно для этого и служат «Proof of work» и «Proof of stake» - алгоритмы для валидации транзакций.

Proof-of-work

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

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

Proof-of-stake

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

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

Немного истории

Принцип PoW впервые был описан в 1993 году в работе «Pricing via Processing, Or, Combatting Junk Mail, Advances in Cryptology» (авторы – Синтия Дворк и Мони Наор). Авторы предложили следующую концепцию:
«Чтобы получить доступ к общему ресурсу, пользователь должен вычислить некоторую функцию: достаточно сложную, но посильную; так можно защитить ресурс от злоупотребления».

Непосредственное применение этот принцип получил в проекте Hashcash, основанном Адамом Бэком в 1997 году. Задача состояла в том, что бы найти такое значение x, что хеш SHA(x) содержал бы N старших нулевых бит. При отправке писем по эл. почте применялось хеширование частичной инверсии и для отправки каждого письма нужно было примерно 252 хеш-вычисления.

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

В 1999 году появляется и сам термин Proof-of-Work – использован он был в статье «Proofs of Work and Bread Pudding Protocols» (авторы – Маркус Якобссон и Ари Джуелс) в журнале Communications and Multimedia Security.

При создании Bitcoin Сатоши Накамото взял за основу принцип PoW, проекта Hashcash, добавив к нему возможность изменения сложности алгоритма - уменьшение или увеличение N (требуемого числа нулей) в зависимости от суммарной мощности участников сети. Вычисляемой функцией стала SHA-256. Механизм PoW был использован как средство подтверждения того, что майнер фактически выполнил работу по нахождению нового блока и добавлению его в блокчейн.

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

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

Впервые PoS был применен в криптовалюте PeerCoin. Суть состоит в том что новые монеты генерируются при использовании «доли»(stake) в качестве ресурса. В механизме PoS также пытаются хешировать данные в поисках результата меньше определенного значения, но сложность в данном случае распределяется пропорционально и в соответствии с балансом каждого счета с монетами.

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

Отличия

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

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

В то же время PoS побуждает к накоплению монет в одних руках, что может негативно сказаться на децентрализации сети. Если найдется майнер или группа майнеров, который(которые) сосредоточит в своих руках большую часть ресурсов сети, то он(они) сможет диктовать свои правила остальным участникам сети.

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

  • Proof of Activity (доказательство активности) - стандартная гибридная схема, совмещающая PoW и PoS;
  • Delegated Proof of Stake (делегированное подтверждение доли) - общий термин, описывающий эволюцию базовых консенсус-протоколов на основе подтверждения доли. DPoS используется в , а также в предложенных алгоритмах, таких как Slasher и Tendermint;
  • Proof of Burn (доказательство сжигания) - «сжигание» происходит путем отправки монет на такой адрес, с которого гарантированно нельзя их потратить. Избавляясь таким образом от своих монет, пользователь получает право на пожизненный майнинг, который также устроен как лотерея среди всех владельцев сожженных монет;
  • Proof of Capacity (доказательство ресурсов) - реализация популярной идеи «мегабайты как ресурсы». Необходимо выделить существенный объем дискового пространства, чтобы включиться в майнинг;
  • Proof of Storage (доказательство хранения) – похожая на предыдущую концепция, при которой выделенное место используется всеми участниками как совместное облачное хранилище.

Видео


Что такое Proof-of-Work и Proof-of-Stake?

Proof-of-Work и Proof-of-Stake — два наиболее известных алгоритма консенсуса в криптовалютах. Они предлагают отличающиеся по своей структуре механизмы доказательства проделанной работы.

В чем суть Proof-of-Work?

Proof-of-Work (PoW – дословно: доказательство работы) — алгоритм защиты распределенных систем от злоупотреблений (DoS-атак, спам-рассылок и т.д.), суть которого сводится к двум основным пунктам:

  1. необходимости выполнения определенной достаточно сложной и длительной задачи;
  2. возможности быстро и легко проверить результат.

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

Кто придумал термин Proof-of-Work?

Впервые концепция Proof-of- Work была описана в 1993 году в работе «Pricing via Processing, Or, Combatting Junk Mail, Advances in Cryptology» (авторы – Синтия Дворк и Мони Наор). И хотя сам термин в статье еще не использовался, авторы предложили следующую идею:

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

В 1997 году запустил проект Hashcash , посвященный той же защите от спама. Задача формулировалась следующим образом: «Найти такое значение x, что хеш SHA(x) содержал бы N старших нулевых бит».

Система предлагала хеширование частичной инверсии при отправке по электронной почте. Для расчета соответствующего заголовка требуется около 2 52 хеш-вычислений, которые надо пересчитывать для каждой отправки. И если для отправки нескольких обычных писем дополнительные расчеты препятствий не создают, то отправку спама необходимость постоянного пересчета делает очень ресурсоемкой. При этом проверка корректности вычисленного кода осуществляется очень быстро: используется однократное вычисление SHA-1 с заранее подготовленной меткой.

В 1999 году появляется и сам термин Proof-of-Work – использован он был в статье «Proofs of Work and Bread Pudding Protocols» (авторы – Маркус Якобссон и Ари Джуелс) в журнале Communications and Multimedia Security.

Какое отношение Proof-of-Work имеет к криптовалютам?

В сети Bitcoin механизм PoW был использован как средство достижения консенсуса (единого мнения о том, какую версию блокчейна считать верной). При этом за основу создатель первой криптовалюты Сатоши Накамото взял идею упомянутого выше проекта Hashcash, добавив к ней механизм изменяющейся сложности — уменьшение или увеличение N (требуемого числа нулей) в зависимости от суммарной мощности участников сети. Вычисляемой функцией стала SHA-256.

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

Действительно ли сложность вычисления «сложная»?

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

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

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

Как Proof-of-Work повлиял на майнинг?

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

В то же время не обошлось и без пресловутой «обратной стороны медали»: достаточно быстро PoW превратился в монстра, пожирающего электричество в гонке за прибыльностью майнинга. В 2012 году суммарная мощность сети Bitcoin уже превышала по производительности самый мощный суперкомпьютер в мире, а на горизонте появилась и первая альтернатива – Proof-of-Stake.

Что такое Proof-of-Stake?

Альтернативный механизм консенсуса, впервые реализованный в 2012 году в криптовалюте PPCoin (сейчас известна под названием PeerCoin). Идея состоит в использовании «доли» (stake) в качестве ресурса, который определяет, какая именно нода получает право добычи следующего блока.

В подходе Proof-of-Stake ноды также пытаются хешировать данные в поисках результата меньше определенного значения, но сложность в данном случае распределяется пропорционально и в соответствии с балансом данного узла. Иными словами - в соответствии с количеством монет (токенов) на счету пользователя.

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

Какие приводятся аргументы за и против Proof-of-Stake?

Как правило, в пользу использования PoS приводятся следующие аргументы:

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

Аргументы, вызывающие опасения:

  • PoS дает дополнительную мотивацию к накоплению средств в одних руках, что может негативно сказаться на децентрализации сети.
  • Если образуется небольшая группа, которая соберет у себя достаточно большие средства, она сможет навязывать свои правила работы сети остальным участникам.

Дополнительно можно отметить проблему Nothing-at-Stake (пустой стэк), которая делает PoS-системы по своей природе нестабильными в глазах многих криптовалютных энтузиастов. Атакующий может попытаться сделать форк блокчейна, т. е. создать более длинную альтернативную цепочку посредством расходования «несуществующих» ресурсов. Более того, его могут поддержать другие майнеры, поскольку они также не расходуют «подлинные» ресурсы. Посредством форка атакующий может отклонять определенные транзакции и осуществлять атаку «двойной траты».

На чьей стороне чаша весов?

Споры между сторонниками Pow и PoS длятся уже долгое время, но природа этих споров больше теоретическая. Практика показывает, что роль разработчика в вопросах обеспечения безопасности по-прежнему очень высока.

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

Тем не менее, несмотря на то, что PoS-системы всегда будут более легкими для имплементации и в целом такими же надежными с точки зрения безопасности, большинство серьезных криптовалют, скорее всего, не станут отказываться от PoW.

В свое время ForkLog адаптированный перевод whitepaper, написанного BitFury Group, в котором сравнивается работа принципов защиты PoW- и PoS-систем.

Какие еще механизмы доказательств есть в криптовалютах?

Их список может оказаться достаточно большим, поэтому перечислим несколько наиболее известных:

  • Proof of Activity (доказательство активности) — стандартная гибридная схема, совмещающая PoW и PoS;
  • Delegated Proof of Stake (делегированное подтверждение доли) — общий термин, описывающий эволюцию базовых консенсус-протоколов на основе подтверждения доли. DPoS используется в , и ;
  • Proof of Burn (доказательство сжигания) — «сжигание» происходит путем отправки монет на такой адрес, с которого гарантированно нельзя их потратить. Избавляясь таким образом от своих монет, пользователь получает право на пожизненный майнинг, который также устроен как лотерея среди всех владельцев сожженных монет;
  • Proof of Capacity (доказательство ресурсов) — реализация популярной идеи «мегабайты как ресурсы». Необходимо выделить существенный объем дискового пространства, чтобы включиться в майнинг;
  • Proof of Storage (доказательство хранения) – похожая на предыдущую концепция, при которой выделенное место используется всеми участниками как совместное облачное хранилище.

Узнайте о том, что собой представляет протокол Proof-of-Work, когда он появился, в чем заключаются его плюсы, минусы и как он связан с криптовалютной сферой.

Proof-of-Work - это метод защиты цепочки блоков цифровой валюты от разного рода атак. Дословно термин переводится, как «подтверждение работой». Алгоритм гарантирует проверку выполнения определенной последовательности действий конкретным узлом системы (то есть майнером). Данные, которые устанавливает протокол, являются информацией в найденном блоке, где отображены ссылка на предыдущий узел в цепочке и число сохраненных в блоке операций. Шанс того, что система изберет вас узлом, отвечающим за подтверждение транзакции, тем выше, чем мощнее ваше «железо». Поэтому главным критерием успешного майнинга электронных денег, базирующихся на этом алгоритме, выступает производительность оборудования. Данный фактор поспособствовал объединению пользователей в специальные группы, которые получили название «пулы».

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

  • применение в сложных и длительных процессах;
  • простота и оперативность проверки результата.

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

В середине 90-х годов прошлого столетия вышла статья под названием «Pricing via Processing or Combatting Junk Mail», в которой авторы впервые выдвинули концепцию Proof-of-Work (подтверждение работой). Смысл идеи состоял в том, что каждый человек, желающий получить доступ к какому-либо сервису, обязан произвести ряд операций весьма сложной и требовательной к ресурсам вычислительной системы функции. При этом процесс должен длиться определенный период времени, который можно назвать приемлемым для ожидания. Вычислительный процесс на клиентской части должен быть более ресурсоемким, чем процесс проверки полученных результатов, запускаемый на серверной стороне.

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

Несколько позже был реализован проект Hashcash, воплотивший функцию, суть которой описана в указанной выше статье. Определение «доказательство работы» впервые предложили авторы научного исследования «Proofs of Work and Bread Pudding Protocols», которое было опубликовано в конце девяностых годов.

Спустя 5 лет Хэл Финни предложил усложненный алгоритм, который звучит как «многоразовое подтверждение осуществленной работы» (RPoW), который должен был использоваться в электронных платежных системах. Через пару лет Сатоши Накамото создал первую виртуальную валюту, которая использовала алгоритм PoW. Он решает проблему двойного расходования токенов.

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

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

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

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

Для проверки достоверности нового блока производится сравнение значения его хеша с текущей целью. Если оно оказалось меньшим – блок валидный. Так наглядно демонстрируется факт проведения определенной работы для генерации блока.

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

На данный момент по-прежнему ведутся споры в отношении целесообразности использования PoW. Эксперты установили следующие виды уязвимостей алгоритма:

  1. 51 % – уязвимость, характерная для Биткоина и прочих виртуальных валют на ранних этапах их развития. Ее суть заключается в том, что при попадании большей частей мощностей сети в руки злоумышленника, последний получает полный контроль над генерацией новых блоков и выполнением транзакций. Также ему предоставляется возможность внесения любых изменений в распределенную базу данных, вплоть до полной перезаписи и создания собственной ветви, которая будет признана валидной. В итоге все средства пользователей исчезнут с их электронных кошельков.
  2. Двойная трата одних и тех же монет. В этом случае одни и те же активы могут быть использованы несколько раз. Существует несколько разновидностей данного типа атак.
  3. Контроль над майнерами. Атака возможна со стороны злоумышленников, обладающих оборудованием с вычислительной мощностью менее 50% от общей производительности сети. Это достижимо благодаря использованию методов агрессивной рекламы для привлечения майнеров в пул. Задача злоумышленника – свести к нулю эффективность вычислительных процессов конкурентов (отдельных майнеров и пулов).

Кроме очевидных проблем с защитой данных, существуют следующие недостатки рассматриваемого алгоритма:

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

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

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

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

КАТЕГОРИИ

ПОПУЛЯРНЫЕ СТАТЬИ

© 2024 «dailykvak.ru» — Роутеры. Модемы. Программы. Компьютер. Решения