Ответ Тура Димистера на критику Бутериным его заметки о Proof-of-Stake

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

1. Бутерин оспаривает то, как я представил его аргумент об атаках 51%

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

ВБ: Нет, я говорю о том, что при атаке 51% злоумышленник может изменить *любой* блок в блокчейне. Большая часть затрат на майнинг – капитальные, а не операционные расходы; когда я в последний раз рассчитывал соотношение между ними, оно составляло примерно 3:1. Поэтому если у атакующего есть достаточный капитал для проведения одной атаки на шесть блоков, то у него есть 75% от необходимого капитала для того, чтобы изменить историю транзакций на годы назад.

Спасибо. Думаю, что теперь я лучше понимаю ваш главный аргумент. Давайте обратимся к тому фрагменту вашей статьи, о котором я отозвался как о несколько лукавом:

ВБ: «Следовательно, размер майнинговой сети должен быть достаточно большим, чтобы исключить вероятность атаки. Атакующим масштабом менее чем X лучше не проявлять себя, если сеть тратит X постоянно и на ежедневной основе. Я отвергаю эту логику, так как (…) она не отвечает духу шифропанка: соотношение стоимости атаки и защиты составляет 1:1, так что никакого преимущества защищающегося не существует».

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

2. Утверждает, что покупка ASIC составляет 3/4 от стоимости атаки 51%.

ТД: Помимо многомиллиардных затрат на приобретение майнингового оборудования, стоимость поддержки работы сети Биткойна в течение 200 дней составит более 700 миллионов долларов (из расчёта 7,5 ТВт-ч по цене 10 центов/кВт-ч).

ВБ: Хорошо, похоже, мы сходимся в оценке вышеуказанного соотношения.

Я вовсе не обязательно согласен с тем, что стоимость проведения атаки 51% на 3/4 состоит из покупки оборудования ASIC, и лишь на одну четверть из операционных расходов. История богата примерами национализации, подтверждающими, что после установления правительственного (наиболее вероятный атакующий, на мой взгляд) контроля операционная эффективность, как правило, значительно снижается. В одном из исследований снижение прибыльности нефтедобывающих компаний после их национализации оценивается в более чем 50%. 700 миллионов долларов может оказаться ещё очень скромной оценкой, так как эффективность работы после взятия под контроль может значительно снизиться.

3. Настаивает на том, что защита сети с алгоритмом PoS значительно превосходит в эффективности защиту сети PoW.

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

ВБ: Как так? Для того чтобы стоимость атаки составляла 2 млрд долларов, нужно, чтобы майнеры Биткойна тратили ресурсов на сумму, значительно большую, чем 2 млрд долларов. Соотношение составляет 1:1 (а на самом деле хуже чем 1:1) и это очень важно. С PoS мы можем иметь перетягивание каната с соотношением 10:1 или даже больше в пользу защитников.

Я рад, что вы об этом спросили, хотя мне казалось, что я объяснил экономический феномен стоимости достаточно ясно. Совершенно верно: при использовании алгоритма Proof-of-Work минимальная экономическая стоимость проведения атаки 51% может обоснованно приближаться к стоимости защиты. Однако это не означает, что соотношение стоимости атаки и защиты составляет 1:1 или меньше. Это говорит только о том, что уязвимость системы до некоторой степени известна.

С алгоритмом Proof-of-Stake, можно сослаться на его архитектуру и привести аргументы в пользу того, что стоимость атаки была _должна быть_ равна X (либо X относительно Y инвестиций честных операторов), однако это не значит, что такое соотношение будет сохраняться. Одним из возможных векторов атаки на PoS являются, например, сценарии, в которых злоумышленники берут необходимое для атаки на цепочку количество ETH в долг, получают выгоду от резкого падения цены и за счёт этого компенсируют всю стоимость «наказания» либо большую её часть.

Аргумент, который я представил в своей заметке, заключается в том, что PoS фактически представляет собой более запутанную версию PoW, и то, имеет ли он другую либо более низкую стоимость защиты (предположение об улучшении 10:1 по сравнению с Биткойном представляется мне необоснованно оптимистичным), просто неизвестно.

4. Утверждает, что конкретная стратегия атаки 51% не представляется возможной.

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

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

Не уверен, что я уловил мысль. Да, атака, основанная на ресурсах, которая переписывает большой фрагмент истории блокчейна, вероятно, будет очень разрушительной и окажет большое влияние на стоимость токенов (в долларовом эквиваленте), но если считать в самих токенах, то злоумышленник может себя ограничить и изъять, например, только 1–5% от баланса каждого кошелька, так чтобы для каждого отдельного пострадавшего держателя токенов было бы целесообразно оставаться в системе и продолжать использовать токены. Конфискационная стратегия такого рода недавно была предложена создателем Siacoin, идея которого заключалась в том, чтобы «посредством хард-форка начислить 1 или 2 миллиона монет прямо в наши кошельки, а затем продавать около миллиона в день для того, чтобы финансировать наши операции.» При общем объёме эмиссии, равном 28 миллиардам монет, эффект этой атаки уменьшит сбережения держателей Siacoin на 3,5–7%.

5. Описывает сценарий социального консенсуса как «поразительно ясный».

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

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

Можно сказать, что крупнейшая майнинговая компания Bitmain, с её поддержкой Segwit2x и проектом BitcoinABC, проводит долгосрочную атаку на Биткойн с целью изменить его экономическую модель. Однако я не замечал, чтобы вы утверждали, что решение этой проблемы «поразительно ясно» и что сообществу нужно просто следовать более ранней цепочке. Опять же, моя точка зрения заключается в том, что консенсус сообщества является непрактичным и нежелательным механизмом обеспечения устойчивости публичного блокчейна. В этой ветке комментариев вы, как будто, признаёте: «Я не уверен, что консенсус сам по себе может представлять собой устойчивую модель управления для подлинно конфронтационной среды. Ни одна страна не управляется таким образом.»

6. Утверждает, что Биткойн управляется, преимущественно, за счёт достижения социального консенсуса.

ТД: но на что мы рассчитывать не можем – так это на идеалистичную концепцию социального консенсуса.

ВБ: Тогда как бы вы узнали о том, какое программное обеспечение необходимо использовать для поддержки полной ноды?

Мне не нужен социальный консенсус для того, чтобы выбрать, какой клиент для сети Биткойна использовать – в этом нет необходимости. Я решаю, доверяю ли я Владимиру ван дер Лаану, и могу принять решение загрузить программное обеспечение, подписанное его ключом. Если это же сделают многие другие пользователи, то моя программа-клиент образует с ними сеть. Это то, что пользователь Reddit под ником DeviateFish называет «opt-in governance» – управлением через выражение согласия с правилами путём выполнения определённого действия. Он противопоставляет это принятому в Эфириуме «opt-out governance» – системе управления, изначально предполагающей добровольное согласие пользователей с правилами, если только они не предприняли конкретных действий, указывающих на обратное, – при котором пользователи сталкиваются с потоком изменений без обратной совместимости в форме хард-форков: «Принимая логику управления, при котором все пользователи по умолчанию принимают любые вводимые изменения, вы получаете огромное стратегическое преимущество, если ваша цель заключается в централизованном контроле сети. Это смещает акценты таким образом, что реализуются не те изменения, которые «достаточно важны для того, чтобы получить поддержку всей сети», а «не настолько спорные, чтобы вызвать непринятие значительной частью сети.» При таком регулировании, любое изменение, не вызвавшее неприятия у значимого меньшинства пользователей, будет принято с минимальным риском для здоровья сети».

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

Если вы утверждаете, что Биткойн тем или иным образом работает на основе социального консенсуса, то, по крайней мере, стоит отметить, что это «opt-in»-вариант социального консенсуса, а возможно, и признать, что Эфириум и PoS имеют в своей основе «opt-out»-вариант социального консенсуса, в значительно большей мере способствующий централизации сети.

7. Говорит о том, что алгоритм Proof-of-Stake имеет примеры успешного практического применения в «реальном мире» и приводит примеры.

ТД: Насколько мне известно, подобных примеров применения Proof-of-Stake ни в человеческой истории, ни в биологии, не существует.

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

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

1/ Поручительские бонды (банковские гарантии)

Согласно википедии, поручительский бонд определяется как договор, заключаемый по меньшей мере между тремя сторонами: 1) кредитором, по отношению к которому принимается обязательство; 2) должником – стороной, которая будет выполнять обязательства по договору; и 3) поручителем, который гарантирует исполнение обязательств должника перед кредитором.

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

2/ Поручительство под залог

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

3/ Использование заложников в разного рода переговорах.

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

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

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

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

8. Утверждает, что PoW проигрывает PoS в отношении стоимости защиты.

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

ВБ: В лучшем случае стоимость равна, а в реальном мире – значительно меньше, чем цена, которую платят легитимные майнеры за создание блокчейна. PoS позволяет достичь значительно более благоприятного соотношения.

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

9. Предполагает, что встречный форк при атаке 51% устраняет наказание.

ТД: Боб МакЭлрат (Bob McElrath) из SolidX считает, что стратегия «экономического наказания» атакующих утрачивает актуальность, если само наказание может производиться посредством форка.

ВБ: Конечно. Хотя если цепочка будет подвергать наказания цензуре, то от *этой цепочки*, опять же, можно будет образовать новый форк – подобно тому, как разработчики Bitcoin Core выступают за изменение Proof-of-Work в качестве реакции на 51% коалиции майнеров, цензурирующих блоки остальных участников сети.

Это также известно как «Proof-of-Vitalik» («Доказательство Виталика»). Нужен кто-то, кто будет решать, какой из 10 000 форков, которые я создал, считать легитимным. Я полагаю, что это Виталик. (Это слова Боба МакЭлрота (Bob McElrath), мне удалось до него «достучаться» и получить ответ.)

10. Утверждает, что атака ложного вызова на PoS «невозможна».

ТД: С критикой PoS недавно выступил также создатель BitTorrent Брэм Коэн (Bram Cohen), который задал вопрос о том, как можно исключить вероятность введения в заблуждение и провоцирования честных стейкеров (держателей доли) на взаимодействие с сетью таким образом, чтобы навлечь на себя наказание от системы, которая должна была их защищать. (Представьте себе крипто-эквивалент ложного вызова, только в более крупном масштабе.)

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

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

Я обратился к Брэму Коэну (Bram Cohen), который сказал, что, «если они пойдут по этому пути, то в случае форка работа системы может остановиться, поскольку никто не захочет принимать наказание за «неправильный» выбор,» а когда кто-то сослался на статью Виталика «Minimal Slashing Conditions» («Минимальные условия для падения»), добавил, что «все эти слои дополнительного дерьма добавляют сложности и делают атаки более труднообъяснимыми, но, похоже, не устраняют фундаментальные проблемы.» Я думаю, что Коэн прав в том, что чрезмерно запутанные правила, имеющие целью предотвратить злоупотребления, скорее всего, приведут к размытию понимания того, что считать злоупотреблением. Для интерпретации этого явления может быть создан бюрократический аппарат, состоящий из влиятельных игроков рынка – политбюро Эфириума, если угодно.

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

ТД: В альтернативном сценарии атаки, предложенном Кевином Чжоу (Kevin Zhou) из Galois Capital, злоумышленник вводит в заблуждение достаточное количество честных людей в своей сети таким образом, что они становятся заинтересованными в поддержке цепочки злоумышленника как истинной цепочки.

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

Опять же, как утверждает МакЭлрат, атака будет иметь очень высокую стоимость только в том случае, если злоумышленник полностью лишается своего депозита, но он может также избежать наказания при помощи форка. К тому же, некоторые разработчики могут инициировать контратаку. И злоумышленник может нанести удар снова. В итоге для того, чтобы решить, какая из цепочек является легитимной, понадобится внешний источник доверия – proof-of-Vitalik или proof-of-EthereumFoundation.

Автор Тур Димистер

ICO telegram


Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (Пока оценок нет)
Загрузка...

Редактор. Переводчик. Криптоинвестор.