September 4, 2023

Blast from the past: Драйвчейны

2 сентября 2023 года Джимми Сонг в своём твиттере призвал к разделению цепочки на форе дискуссии о "драйвчейнах":

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

К этому моменту онлайн/твиттер дискуссии о потенциальном софтфорке велись уже на протяжении месяцев при активном участии Fiatjaf. Летом 2023 в небольшом закрытом чате Антон Кумайгородский, который является сторонником Драйвчейнов с 2018 года и некоторое время рекламировал проект Hivemind, заключающийся в создании децентрализованных рынков предсказаний, предложил Fiatjaf использовать агрессивную стратегию продвижения форка. Такая стратегия заключалась бы в релизе кода и призыве сторонников BIP300 активировать его во что бы ты ни стало, даже игнорируя вероятное расщепление цепочки. К осени об этом напишет Jimmy Song.

https://twitter.com/SimpleBtcWallet/status/1694358135308243406

Накал дискуссии постепенно увеличивался от обычных аргументов "давайте активируем Драйвчейны и шиткоинеры будут использовать их для шиткоинов, что убьёт настоящие шиткоины", до опосредованных аргументов роде смерти Lightning Network и низкого освоения Биткоина. Аргумент шиткоинов является наиболее распространённым среди сторонников Драйвчейнов, но вероятно они осознали его проблему и в последнее время используют его меньше. Пол Шторц использовал такой аргумент годы тому назад. Адам Бэк засвидетельствовал это в Твиттере под тредом, обсуждающим личную связь Шторца с Гарзика (героя "Войны за размер блока" на стороне биг-блокеров):

@Truthcoin
на протяжении многих лет спонсорами drivechains выступали самые разные компании и частные лица. Даже крупные блокчейн-спонсоры не вмешивались в R&D. Почините вилы, ребята

Как становится ясно одна из проблем Драйвчейнов состоит в крайне растянутом периоде разработки и маркетинга: несколько лет до того как Шторц привлёк инвестции в конце 2022 года они практически не обсуждались широко. Новое поколение поддержки Драйвчейнов уже содержит расширение .eth в своих алиасах в Твиттере и чаще всего не до конца ясно, что именно они хотели бы от Биткоина с ними. Не смотря на то, что Taproot не является простой технологией, и нельзя сказать, что сфера его применения узка, с ним этого не происходило.

https://twitter.com/Nakamotolisk/status/1698669494393082324

Децентрализованные рынки предстказаний по странной причине не являются наиболее удобным путём маркетинга софт-форка. Сторонники иной раз используют самые странные доводы. Например, Fiatjaf обратился к проблеме разработки кошельков для разнообразных методов масштабирования Биткоина — все они делают написанный код ненужным. Но он забывает, что например такой кошелёк как Грин, пережил три существенных редизайна и один ребрендинг и среди биткоинеров такой кошелёк как Blockchain.info, который также пережил ребрендинг, более совсем не популярен. SBW убрал поддержку Lightning Network по причинам, не связанным с протоколом Биткоин. Рассматривая конкретные примеры, становится ясно, что Fiatjaf использовал очень странный не до конца продуманный аргумент.

https://twitter.com/fiatjaf/status/1694446082376290428

Наконец, в более длинном посте Fiatjaf привёл список примеров в которых Драйвчейны могли бы быть полезны:

Выпуск активов, полностью приватные транзакции, контракты с состоянием блокчейна, Тьюринг-полнота, децентрализованные игры, некоторые аспекты "DeFi", рынки предсказаний, футархия (sic), децентрализованные и при этом осмысленные человекочитаемые имена, большие блоки с тонной обычных транзакций на них, цепочка, оптимизированная только для создания на ее основе сетей в стиле Lighting.
Это некоторые идеи, которые, возможно, имеют свои достоинства, но так и не были опробованы, потому что их нельзя было опробовать на реальном биткойне или с реальными биткойнами. Они были отнесены либо на территорию "шиткоинов", либо к кастодиальным решениям типа Liquid или RSK, которые, возможно, не смогли получить сетевой эффект из-за этого.

Разумеется такой абзац является крайне "заряженным" и практически маловероятно адресовать каждый из пунктов. Стоит отметить только, что Namecoin был первым "блокчейн" проектом вообще в мире, т.е. можно считать что доменные человекочитаемые имена на самом деле были опробованы очень давно. "Создание сетей в стиле Lightning" также происходит прямо сейчас — suredbits реализовали новый тип роутинга PTLC на основе Шнорр-сигнатур на форке Eclair, который довольно быстро устарел из-за изменений в основном проекте. Помимо этого различные обновления, связанные с Taproot каналами ещё ждут своей очереди: даже в Молнии изменения идут медленно. В рубрике "выпуск активов" вообще присутствует только один весомый довод — это стейблкоины, и Tether только что перестал выпускать токены на Omni.

В цифрах разбор этих тезисов опирается на аналогичные существующие проекты в том числе Ethereum и выходит, что "токенизация" как таковая не может дать майнерам существенной дополнительной выручки — только порядка 1-2%. То же самое обсуждается в видео ниже. Автор приходит к выводу что ключевым пунктом в "рынке комиссий" является только распространение технологии, в моментах рыночного ажиотажа никто не обращает внимание на рост комиссий, а в "медвежьем" рынке, как сейчас — они около нуля.

Пост Fiatjaf'a имеет много комментариев, начинающихся с npub в то время как он сам продвигает в нём тему о человекочитаемых именах вместо адресов на цепочке. Самый большой аргумент о "цифровых активах" может быть о стейбкоинах, но и он полностью перпендикулярен тезису о кастодиальности/некастодиальности. Даже если взять обернутые биткоины WBTC в ETH, их сетевой эффект будет меньше, чем у всего LN, при этом они в совокупности имеют в 20 раз больше биткоинов, но все равно меньше, чем у одного только Сейлора. Все оказывается достаточно запутанно в аргументах сторонников Драйвчейнов.

Как они работают

В основе новых старых сайдчейнов лежит концепция слепого смешанного майнинга. Она была предложена именно для драйвчейнов, и её автором является Пол Шторц. Сайдчейн требует софт-форка Биткоина, поскольку его майнеры должны коммитить хэши непосредственно в coinbase транзакцию нового блока Биткоина. По сравнению с Liquid Такое функционирование накладывает серьёзное ограничение на запуск проекта. Liquid использует мультисиг и возможности периодического сохранения данных в блокчейн Биткоина с помощью поля OP_RETURN, и это не требовало никаких изменений протокола.

Драйвчейн клиент это форк кодовой базы Core www.drivechain.info

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

  • драйвчейн с большими блоками
  • со смарт-контрактами на java script и виртуальной машиной
  • с приватными транзакциями или "кольцевыми подписями"

На самом деле вариантов значительно больше (до 256), поскольку само по себе предложение драйвчейнов формализует только вид входящих и исходящих транзакций и способ фиксации состояния в Биткоине. Разрабатываемый клиент должен быть связан с узлом Core для работы и помимо упомянутого слепого смешанного майнинга оперирует понятием "Hashrate Escrow". Деньги, которые закрыты в этом эскроу могут получить только майнеры и только на одном условии: они должны добыть блок сайдчейна. Эта транзакция помещается в Coinbase выходе транзакции, поэтому её могут совершать только майнеры, которые работают в режиме смешанного майнинга, она также "сжимает" историю сайдчейна, т.е. хэширует его блоки и привязывает к Proof-of-Work Биткоина, и работает как "база данных" сайдчейнов Биткоина. Для того, чтобы пользователи могли завести деньги в сайдчейн предусмотрены эскроу UTXO.

"Эскроу UTXO" используется для помещения биткоинов в сайдчейн и для вывода из него. Выше картинка из презентации Шторца. Эти эскроу-выходы могут создаваться в Биткоине повсеместно клиент DriveNet "видит" эти экскроу транзакции и помещает их в особую таблицу, или базу данных, которая также отражается в интерфейсе клиента и обслуживает RPC запросы, типа listsidechainunspentoutputs. Клиент "узнаёт", что конкретная транзакция — это "эскроу" транзакция по специальному полю данных OP Return.

Концепция Драйвчейнов в той же мере сложна для понимания в которой её можно считать децентрализованной: ввод и вывод транзакций не требуют разрешения третьей стороны, т.е. полностью свободны, в той мере, в которой они свободны в Lightning Network, если принять допущение, что майнеры это разные компании или индивидуумы. В числе достоинств этой концепции можно назвать имеющийся клиент. Драйвчейны позволяют свободно экспериментировать блокчейн-протоколами, выпускать токены, делать всё, что угодно, поскольку строгие правила основной цепи Биткоина будут прилагаться только к процедуре фиксации состояния и учёту входящих и исходящих транзакции — они должны работать по правилам Биткоина. Одно из самых важных качеств драйвчейнов, которые можно процитировать — они позволяют легко определить нежизнеспособные блокчейн-конструкции, т.е. эволюционным методом выяснить для чего они хороши, при этом лишая мошенников возможности запустить ещё один альткоин и усиливая позицию Биткоина как основного монетарного протокол.

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

Парад некропостов

Возраст и агрессивное продвижение BIP300 привели к тому, что те, кому было просто лень спорить, начали раскапывать старые дискуссии о Драйвчейнах. Luke-Jr был нанят Шторцем (очевидно благодаря Layer 2 Labs), чтобы открыть и начать готовить Pull Request в репозиторий Bitcoin Core — несомненно маркетинговая акция, поскольку Люк имеет свой клиент Knots, в который также могли бы быть внесены изменения, но который имеет куда меньшую попуряность чем Core. 5 лет тому назад Люк практически был против Драйвчейнов, но сменил позицию на более нейтральную и подрядился сделать необходимые изменения в клиенте. Люк высказывался в пользу федеративного сайдчейна типа Liquid.

В 2017 году Питер Вьюле уже комментировал предложения Шторца, принимая их концептуально:

> Если драйвчейны будут успешными, их следует рассматривать как способ масштабирования

Я категорически не согласен с этим утверждением.

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

Будьте здоровы,
— Pieter

Помимо упомянутых уже критических замечаний, есть действительно интересные предложения о том, что прежде чем включать Драйвчены в Core — их надо протестировать. Даже опуская возможность сбоя консенсуса, SegWit был сначала активирован в Лайткоине. То же самое могут сделать Драйвчейны — где угодно, хоть в Bitcoin Cash.

Аргумент Мэтта Коралло состоял в том, что прежде чем позволять майнерам похищать средства, должны быть развёрнуты инструменты для приватного и безопасного слепого майнинга, иначе настоящей децентрализации не получится.

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

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

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

Голосование Core разработчиков в репозитории показывает, что BIP300 пользуется незначительной поддержкой.

Поддержите проект(ы) на цепочке

HCN имеет две активные краудфандинговые компании на TallyCoin, которые собирают средства ончейн:

https://tallycoin.app/@hypecoinnews/

Или LN платежом

LNURL1DP68GURN8GHJ7AMPD3KX2AR0VEEKZAR0WD5XJTNRDAKJ7TNHV4KXCTTTDEHHWM30D3H82UNVWQHKXETWW3EXZMRKD9HKCCF4XYK4YTL3

Или [email protected]

Например из @LightningTipBot в Телеграме

/send 100 [email protected]

Или начните пользоваться LN кошельком типа Valet.