Только медийное адаптивное
Только медийное адаптивное

Следующий протокол второго уровня Биткойна? — Журнал Биткойн

10

Эта статья посвящена технологической концепции, основанной на предлагаемом обновлении протокола Taproot. Если вы еще не знакомы с основами работы Taproot, рекомендуется сначала прочитать этот объяснитель,

Taproot, потенциальное обновление протокола Биткойн, впервые предложенное участником Bitcoin Core Грегори Максвеллом, находится на поздних стадиях разработки. Технология состоит из хитроумной комбинации криптографических приемов, которые позволят пользователям скрывать сложные смарт-контракты внутри обычных транзакций — сложность проявляется только в том случае, если стороны контракта отказываются сотрудничать.

Используя эту идею, участники Bitcoin Core, включая (но не ограничиваясь ими) Джереми Рубина, Антуана Риара, Глеба Науменко и самого Грегори Максвелла, размышляли об общей концепции, называемой пулами платежей, объединенными пулами или пулами монет. Эти пулы — пока мы будем называть их пулами платежей — позволят группам пользователей совместно использовать одни и те же монеты (технически: UTXO), как записано в блокчейне Биткойн, при этом позволяя любому из этих пользователей совершать (или получать) платежи. с ними. Поскольку группа и ее отдельные члены «прячутся» в структуре Taproot, все они пользуются большей конфиденциальностью, гибкостью смарт-контрактов и другими преимуществами … и они потенциально могут пользоваться этими преимуществами вне сети, что делает пулы платежей новым решением второго уровня.

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

Обмен монетой

Во-первых, чтобы создать пул платежей, пользователи объединяют свои (доли) монет, объединяя их в общий адрес Taproot. Итак, допустим, Алиса владеет тремя монетами, Бобу — двумя, а Кэрол — одной монетой, всего шесть. Вместе они создают транзакцию, которая отправляет эти монеты на общий адрес, превращая его в пул платежей с шестью монетами.

В блокчейне адрес пула платежей выглядит как обычный биткойн-адрес, в котором теперь хранится шесть монет. Но, по сути, Алиса, Боб и Кэрол ловко использовали Taproot, чтобы гарантировать, что каждый из них по-прежнему контролирует свою долю монет в пуле платежей. Алиса может в любой момент потребовать три монеты с адреса, Боб может в любой момент потребовать две, а Кэрол — одну.

Это потому, что есть только два основных варианта потратить монеты с адреса.

Первый вариант — тратить прямо с адреса, технически говоря, по ключевому пути Taproot. Это требует сотрудничества (то есть криптографических подписей) всех трех участников. Если Алиса, Боб и Кэрол все согласны, шесть монет можно потратить, как им нравится, и это будет похоже на любую другую обычную транзакцию в сети Биткойн. Трио может, например, решить отправить свои балансы обратно на отдельные адреса: три для Алисы, два для Боба и один для Кэрол. Но если они захотят, они также могут сотрудничать, чтобы пожертвовать все шесть монет Джулиану, или потратить их любым другим способом, на который они согласятся. Важно то, что все трое должны участвовать, поэтому ни один баланс не расходуется без его или ее собственного сотрудничества.

Интересное  5 биткойн-конференций, которые вы должны посетить в этом году

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

Если один из участников решит потратить монеты в пуле платежей через альтернативный путь Taproot, он обычно отправит сумму, соответствующую балансу этого участника, на адрес по своему выбору, например индивидуальный адрес, который они контролируют. (В случае Алисы три монеты на ее собственный адрес, в случае Боба две на его адрес и в случае Кэрол — один.)

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

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

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

Однако Рубин считает, что это второе решение непрактично, и предпочитает использовать что-то среднее между первым и вторым решениями: некоторые участники немедленно получают свои монеты на адрес по своему выбору, другие участники отправляют свои монеты в новый пул платежей. Этот дизайн предлагает менее идеальный пользовательский интерфейс, но лучше масштабируется, а потенциальное обновление протокола OP_CHECKTEMPLATEVERIFY поможет упростить дизайн и еще больше увеличить масштаб. (Выходы будут происходить через Tree Payments; эти типы платежей подробно рассматриваются в этой статье.)

(Между вторым и третьим решениями есть больше компромиссов, но подробности всех плюсов и минусов выходят за рамки этой статьи; подробности читайте в обсуждении списка рассылки bitcoin-dev.)

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

Интересное  США должны токенизировать доллар, чтобы оставаться конкурентоспособным

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

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

Внесение платежа в пул платежей

Итак, мы установили, что все участники могут индивидуально вывести свой баланс из пула платежей или, если они все согласны, потратить из пула. Это второй вариант, который на самом деле позволяет кое-что хитроумное: пул платежей может быть динамическим. Пока все участники согласны, они не могут просто вернуть свои средства или заплатить другим (например, Джулиану), но они могут сделать что-то еще более интересное. Они могут переводить свои средства в более новые версии пула платежей с другим дизайном.

Это, например, позволяет любому из них тратить деньги из пула.

Смотрите также

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

Между тем транзакция выглядела как любая другая обычная транзакция биткойнов. Автосалон (или шпионы блокчейна) могут заключить, что Алиса владела всеми шестью монетами и просто использовала одну для покупки автомобиля, а остальные пять оставила в качестве сдачи. Они бы не догадывались, что некоторые монеты принадлежат Бобу и Кэрол, или что они вообще участвовали в транзакции.

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

Интересное  Квадрат круга или он сам по себе последовательный?

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

Платежные пулы не позволяют просто тратить. Если Алиса хочет пополнить свой «баланс» в пуле платежей, она тоже может это сделать. В этом случае Алиса, Боб и Кэрол будут сотрудничать, чтобы переместить текущие пять монет на новый адрес Taproot, на который Алиса в той же транзакции отправит одну дополнительную монету с одного из своих (индивидуальных) адресов. Новый адрес Taproot снова будет содержать шесть монет, три из которых принадлежат Алисе, что отражено в ее варианте одностороннего выхода.

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

Кроме того, участники пула платежей могут платить друг другу. Если Алиса, например, заплатит Бобу одну монету, эти трое могут сотрудничать, чтобы отправить средства в новый пул платежей, где у Алисы вычитается монета из ее баланса, а у Боба добавляется монета. Опять же, в блокчейне это будет выглядеть как обычный платеж, и шпионы блокчейна не будут знать, кто кому заплатил и сколько. (Стоит отметить, что Дейв мог аналогичным образом войти в пул, получив внутренний платеж от одного из существующих участников.)

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

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

Только медийное адаптивное
Только медийное адаптивное

Оставьте ответ

Ваш электронный адрес не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

eleifend venenatis, ante. felis elit. ut consectetur