Алгоритм ProgPoW: почему разработчики — за активацию, а сообщество — против?
Вопрос об активации спорного алгоритма ProgPoW в сети Ethereum не поднимался уже почти год. Однако 21 февраля неожиданно для всех разработчики ядра Ethereum объявили, что ProgPoW будет имплементирован в сеть в июле. Новость вызвала новую волну возмущения противников активации алгоритма. Они считают, что его внедрение не решит проблем Ethereum, но может привести к расколу сети. Противники ProgPoW создали петицию на GitHub, призывающую остановить имплементацию алгоритма в ближайшем апдейте Ethereum. Обращение уже подписали десятки видных членов Ethereum-сообщества. Какие аргументы приводят противники внедрения ProgPoW, поддерживают ли они альтернативный вариант перехода на PoS и как ProgPow скажется на DeFi-секторе, разобрался DeCenter.
Зачем Ethereum обновляться
Главная проблема Ethereum — масштабируемость: сеть переполнена, работает на полную мощность, транзакции проходят все медленнее, а стоимость «газа» (комиссии за транзакцию) растет. Если ничего не менять, рано или поздно сетью станет практически невозможно пользоваться.
Чтобы не отстать от догоняющих, технически более совершенных конкурентов, разработчики уже несколько лет работают над переходом сети с PoW-алгоритма в состояние Ethereum 2.0, работающим на PoS. Это должно сделать сеть более масштабируемой, быстрой и дешевой.
8 декабря в сети был имплементирован первый этап долгожданного обновления Istanbul, которое снизило расходы на «газ», сделало Zcash совместимым с Ethereum и защитило сеть от дублирования транзакций. Следующее обновление Berlin должно произойти в середине июня. Оно включает в себя предложения по активации алгоритма ProgPoW (EIP 1057), изменению стоимости «газа» (EIP 1380, EIP 2045, EIP 2046) и оптимизацию работы виртуальной машины Ethereum (EIP 1985).
ProgPoW — алгоритм переходного времени
Programmatic Proof-Of-Work (программное доказательство работы, ProgPoW) — версия PoW-алгоритма, которая должна сгладить переход сети Ethereum к PoS-алгоритму.
Основная причина разработки ProgPoW — влияние, которое ASIC-майнеры и производители оказывают на крипто-индустрию. Крупные производители вроде Bitmain и Innosilicon монополизировали рынок своими устройствами. После выхода на рынок в апреле 2018 года Antminer E3 от Bitmain доля GPU-майнеров стала неуклонно снижаться — они терпят убытки и теряют интерес к обслуживанию сети. В результате сеть становится более централизованной и, следовательно, менее безопасной.
ProgPoW — необычный алгоритм майнинга, он разработан специально для GPU-устройств. Протокол постоянно изменяет условие задачи. Однако ASIC-майнеры предназначены для решения одной специализированной задачи. При постоянном изменении параметров задачи их эффективность снижается, а преимущество перед GPU-устройствами, способными выполнять множество задач, сводится на нет. В итоге ProgPoW позволяет майнить на GPU-устройствах так же эффективно, как и на ASIC-майнерах.
Предполагается, что нивелирование преимуществ ASIC-майнеров сделает инфраструктуру майнинга Ethereum более децентрализованной, что, в свою очередь, повысит шансы на то, что обновление пройдет гладко и нового раскола сети не произойдет. Также это должно защитить сеть Ethereum от монополии производителей аппаратного обеспечения ASIC, сделать ее устойчивее, добычу новых монет — доступнее, и прекратить гонку майнеров за мощностями.
ProgPoW активируют в июле 2020 года
Впервые предложение об активации ProgPoW (EIP 1057) было предложено в мае 2018 года. В начале 2019 года оно было утверждено с условием проведения аудита кода. Отсутствие четкого консенсуса в марте прошлого года привело к голосованию участников сообщества, которые в большинстве поддержали предложение.
Однако, после того как в сентябре прошлого года ProgPow был объявлен безопасным, о нем полгода не было ничего слышно. Разработчики официально заявили, что еще ищут возможность для активации ProgPoW в виде отдельного хардфорка. Часть сообщества явно надеялась, что идея зайдет в тупик и о ней не вспомнят.
Но 21 февраля разработчики ядра Ethereum предварительно повторно утвердили активацию нoвого алгоритма. ProgPoW не является обратно совместимым с нынешним алгоритмом сети — Ethash. Поэтому он будет имплементирован в рамках отдельного хардфорка. Дата назначена на июль этого года — через три недели после запланированной на июнь активации обновления Berlin.
Почему сообщество против активации ProgPoW
Вокруг имплементации ProgPoW сразу разгорелись нешуточные споры.
Первоначально подавляющее большинство было противниками обновления. Однако, постепенно мнение сообщества изменилось на противоположное. Сейчас большинство членов Ethereum-сообщества и все пулы поддерживают внедрение ProgPoW.
Но против идеи имплементации ProgPoW по-прежнему выступает несколько десятков видных Ethereum-разработчиков, среди которых Фил Дайан, Мартин Кеппельман, Амин Солеймани, Георгиос Константопулос, Джеймс Прествич и Скотт Льюис. Они считают, что внедрение алгоритма не достигнет желаемых целей — майнинг все равно останется сосредоточен в фермах и пулах, а майнеры потеряют часть дохода. У ASIC-устройств много преимуществ перед GPU-процессорами: с ними сеть безопаснее и быстрее, а прямых доказательств того, что они вызывают излишнюю централизацию, нет.
Кроме того, ProgPoW не остановит производителей ASIC-устройств — те вскоре начнут производить новое оборудование, способное работать на нем. Это, кстати, подтверждает аудит аппаратного и программного обеспечения для ProgPoW, проведенный компанией Ethereum Cat Herders. Результаты аудита показали, что протокол является эффективным, но может быстро устареть — он действительно сводит преимущества ASIC-майнеров к минимуму, но производители довольно скоро смогут выпустить более совершенные чипы, обойти ограничения алгоритма и запустить ASIC-майнинг в сети снова.
Противники ProgPoW также допускают существование стратегического альянса и намеренное продвижение алгоритма для достижения собственной выгоды. Существует неподтвержденная напрямую теория о том, что NVIDIA финансировала команду, ответственную за разработку ProgPoW, чтобы предоставить преимущество владельцам видеокарт Nvidia над пользователями AMD-устройств.
Главное, что противники ProgPoW не уверены в необходимости такого радикального обновления. По их мнению, алгоритм — это не первостепенная задача для развития Ethereum. Споры вокруг ProgPoW лишь отвлекают разработчиков и сообщество от развития сети — Ethereum все равно переходит на PoS-алгоритм, а дополнительное обсуждение может привести к расколу сети.
К чему призывают подписанты петиции
Автор петиции против ProgPoW, опубликованной 26 февраля на GitHub, — Джастин Леру из компании ETHBoston. В своем обращении он в основном повторил аргументы противников внедрения алгоритма, сделав акцент на том, что его имплементация может стать поводом для раскола сообщества. Свое обращение он считает «сигналом для сообщества и основных разработчиков, что широкая коалиция экспертов и ключевых участников Ethereum-сообщества решительно против активации ProgPoW в сети EТН». Автор призывает всех несогласных с имплементацией протокола присоединиться к петиции.
Обращение подписали свыше 70 человек — видных людей индустрии. Среди них Хейден Адамс — генеральный директор и основатель протокола обмена Uniswap, Тим Коултер — генеральный директор платформы смарт-контрактов Truffle Suite, Эндрю Кейс — соучредитель инвесткомпании DARMA Capital, а также представители компаний EthereumDC, Aragon, MolochDAO, Gnosis, DeFi Pulse, MakerDAO, Synthetix, Gnosis, ConsenSys, DeFi Pulse и другие.
Леру отмечает, что обновление поддерживают далеко не все. «Поскольку Ethereum является глобальной платформой с большой и разнообразной группой заинтересованных сторон, крайне важно, чтобы основные изменения в протоколе имели четкую цель и широкую поддержку. EIP 1057 такой поддержки явно не достает, однако, рассматривается его активация», — сказано в петиции.
Сторонники ProgPoW считают, что интеграция алгоритма способна предотвратить хардфорк, который может произойти в сети за несколько месяцев до перехода на PoS. Леру отвечает им, что может случиться прямо противоположное — активация ProgPoW «увеличивает вероятность этого нежелательного результата», EIP 1057 лишь усилило дискуссию о разделении сообщества. Ethereum-сообщество не смогло прийти к консенсусу насчет внедрения ProgPoW спустя два года споров, на которые ушли силы разработчиков. «Принудительная» имплементация протокола только усугубила бы намечающийся раскол сообщества.
Леру пишет, что у Ethereum уже есть способы, которые помогут обеспечить более плавный переход от PoW к PoS. Например, активация «бомбы сложности» — увеличение сложности сети каждые 100 000 блоков, призванное стимулировать майнеров переходить на PoS.
Ethereum и так уже готовится к непростому переходу с PoW на PoS. Внедрение перед этим еще и ProgPoW — это дополнительные технические риски и отвлечение внимания от действительно важных вещей.
Леру отмечает, что часть экспертов считает, что ProgPoW не предлагает никаких явных преимуществ — нет четких доказательств того, что протокол служит своей первоначальной цели — лишить ASIC-майнеров их преимуществ (видимо, игнорируя выводы аудита Ethereum Cat Herders).
Один из подписантов петиции, соучредитель аналитического и рейтингового агентства DeFi Pulse Скотт Льюис, в комментарии изданию The Block отметил, что «среди рядовых участников Ethereum-сообщества главенствует мнение о том, что ProgPoW не должен быть запущен». Если мнение большинства не влияет на пути развития Ethereum, процесс управления сетью должен измениться, полагает Льюис.
Сооснователь Ethereum Виталик Бутерин отстранился от разработки Ethereum 2.0 — он считает, что так проект более децентрализован. Ранее он высказывался критично по поводу обновления ProgPoW, считая, что оно лишь отвлекает на себя внимание. На этот раз он раскритиковал разработчиков за принятие решения в одностороннем порядке — это подрывает доверие сообщества. Бутерин предложил разработать новую процедуру для рассмотрения спорных решений о будущем сети, но заметил, что к самому ProgPoW относится нейтрально.
Приведет ли активация ProgPoW к расколу сети
Напомним, что несогласие с обновлением сети уже привело Ethereum к расколу — так в октябре 2016 года на свет появился Ethereum Classic. Каковы шансы, что это случится вновь?
Главная загвоздка в том, что пока не ясны планы разработчиков после активации ProgPoW. Предполагается, что после запуска Ethereum 2.0 на PoS нынешняя версия сети продолжит работать пару-тройку лет. Тут велик риск получить сообщества Ethereum 1.0 на ProgPoW и Ethereum 2.0 на PoS. Гарантий, что этого не произойдет, действительно нет. Также многое будет зависеть от действий майнеров — поддержат ли они переход. У них есть все основания противиться переходу на PoS — он лишит их источника дохода. Для них ProgPoW более выгоден, чем PoS.
ProgPoW должен объединить сообщество Ethereum перед лицом спорного обновления. Но проблема в том, что этот алгоритм сам по себе — спорное обновление. Как заметил Эрик Коннер, сотрудник компании Gnosis, при принятии решений об имплементации кода неверно рассуждать в духе «ну, только 30% сообщества против — этого недостаточно для форка». Напротив, идею надо много обсуждать и если есть хоть какая-то вероятность раскола сети, эта идея должна умереть.
Однако, думаем, что сейчас, несмотря на несогласие многих членов сообщества, раскол сети маловероятен. При всей спорности ProgPoW — самое проработанное и готовое к активации предложение, которое поддерживают основные разработчики проекта и все пулы. Даже противники алгоритма опасаются в первую очередь именно раскола сети — скорее всего, даже при несогласии с активацией ProgPoW с их стороны не последует каких-либо призывов к разделению.
DeFi может предотвратить раскол цепи
Основатель DeFi Pulse Скотт Льюис в комментариях изданию Decrypt заметил, что спорные хардфорки больше не являются разумным инструментом разрешения споров для решений по управлению Ethereum — последствия для экосистемы могут быть слишком тяжелы. Больше всего это отразится на экосистеме DeFi.
Схожей точки зрения придерживается независимый исследователь блокчейна Лиланд Ли. В своей статье «Ethereum теперь не страшны форки, спасибо за это DeFi» он пишет, что из-за хрупкости DeFi у Ethereum больше не будет значимого форка. Экосистема децентрализованных финансов слишком запутана, чтобы допустить раскол цепи. Если некоторые проекты выберут новую цепочку, в то время как другие останутся в старой, это разрушит всю систему — этого никто не допустит. Ли предположил, что если важные игроки в пространстве DeFi выступят против ProgPow, многие операторы DeFi последуют их примеру.
Ethereum сейчас далек от ситуации, которая в результате привела к расколу сети в 2016 году. Все главные приложения работают на DeFi, что делает экосистему основной в принятии решений о будущем сети. И сейчас кажется, что большинство из DeFi-проектов против ProgPow.
В заключение
Какое бы решение об активации ProgPoW не приняли разработчики Ethereum, оно будет спорным, а имплементация алгоритма вряд ли пройдет идеально гладко. Если форк сети все-таки не грозит, а увеличение споров в Twitter — это максимальные негативные последствия, то единственным способом прекратить этот затянувшийся спор будет наконец уже активировать алгоритм.
А вы поддерживаете имплементацию ProgPoW в сети Ethereum? Поделитесь своим мнением в комментариях ниже!