Что такое UTXO и зачем он нужен в Биткоине?
UTXO (Unspent Transaction Output) расшифровывается как выход неизрасходованных транзакций. Простыми словами, это остатки криптовалюты, которые вы получаете с каждой транзакции. Для более подробного объяснения нужно разобраться в самом принципе совершения переводов монет. Для примера возьмем самый распространённый проект — Биткоин.
Пример UTXO
В своём Биткоин-кошельке вы видите баланс. К примеру, 100 BTC. И хотя в интерфейсе отображается один баланс, он на самом деле состоит сразу из нескольких UTXO. У вас может быть четыре UTXO по 25 биткоинов или десять UTXO по 10 биткоинов — разницы никакой.
В один прекрасный момент вы решаете потратить 35 биткоинов — купить новенькую машину, к примеру. Однако в вашем кошельке несколько UTXO эквивалентами 15, 17, 28 и 40 биткоинов. Что же делать?
Выходы неизрасходованных транзакций невозможно поделить сразу же. С вашего кошелька уходит UTXO в размере 40 биткоинов. Сеть формирует два новых выхода: один в размере 35 BTC (он отправляется дилеру в счёт платы за машину) и второй на 5 BTC (он отправляется вам обратно на кошелёк).
Можно было бы также потратить UTXO в размере 17 и 28 биткоинов, тогда вы получили бы в качестве «сдачи» 10 биткоинов. Транзакция может состоять из комбинации разных UTXO. Правда, пользователь не может контролировать, какие именно выходы будут отправлены.
Что насчёт комиссий?
При переводе монет также учитываются затраты на комиссии майнерам. Вот как это выглядит в виде формулы:
Новый UTXO = сумма UTXO в транзакции — размер транзакции — комиссия
Разберём по этому принципу последний пример. А для простоты расчётов комиссию приравняем к одному биткоину:
Новый UTXO = (17 + 18) — 35 — 1 = 9 BTC
Потенциальные проблемы
Применения принципа выходов значительно упрощает расчёты на блокчейне. Вместо того чтобы хранить в блоках информацию о каждой индивидуальной транзакции, мы просто отслеживаем монеты, которые не были потрачены (UTXO).
Напомним, каждый биткоин можно потратить всего один раз. Другими словами, вы не можете переслать одну монету на несколько разных адресов, бесконечно её копируя. Особую роль в этом играют UTXO, ведь именно по информации о выходах сеть криптовалюты отслеживает движение всех монет.
Правда, ноды Биткоина хранят информацию об UTXO в оперативной памяти, поэтому её размер не должен превышать определённых лимитов. С каждым годом стоимость обслуживания полной ноды BTC растёт, а объём информации об UTXO тоже увеличивается. Всё это может привести к централизации сети криптовалюты, ведь в обозримом будущем только богатые смогут себе позволить поддерживать один из узлов системы.
Решение проблемы простое — хранить в оперативной памяти лишь часть UTXO, а остальное отправлять на SSD. Конечно, это повлияет на скорость подтверждения транзакций, однако разработчики Биткоина постоянно ищут новые решения оптимизации процесса перевода монет. Наконец, огромную роль в оптимизации сыграла интеграция протокола SegWit: с его помощью программистам удалось уменьшить затраты на хранение UTXO на 75 процентов.
Ещё больше интересного ищите в нашем крипточате ходлеров!
Что такое UTXO?
Неизрасходованный выход транзакции (UTXO) относится к сумме валюты, оставшейся после транзакции, которая может быть использована для другой транзакции. UTXO похожа на сдачу, которую Вы получаете после покупки товара за физические деньги, и сдача может быть использована для покупки другого товара. Но в отличие от фиатной валюты, она не имеет определенного номинала.
Введение
Что такое UXTO?
Как работает модель UTXO?
Важность UTXO
Недостатки UTXO
Модель счета против модели UTXO
Заключение
Что такое UTXO?
Введение
Количество людей, использующих криптовалюты, растет экспоненциально. Часто можно видеть, как люди используют их в своей повседневной жизни, практически не понимая принципов, лежащих в основе этих цифровых валют. Тем не менее, базовое понимание этих концепций необходимо для бесперебойной ежедневной работы и лучшего пользовательского опыта.
В Биткоине и некоторых других криптовалютах для обозначения стоимости Биткоина, находящегося в распоряжении отдельного лица, используется Неизрасходованный транзакционный выход (UTXO). В первые дни существования Биткойна, без правильного понимания этой концепции, было бы трудно провести успешную транзакцию, это может даже привести к потере средств. Но с появлением иерархических детерминированных (HD) кошельков Вы можете с комфортом проводить транзакции, не беспокоясь о том, что происходит за сценой.
Однако необходимо понять, как работает биткоин UTXO. Это важная концепция в сети Биткойн. В этой статье мы дадим исчерпывающий обзор всего, что Вам нужно знать о модели UTXO, чтобы Вы не чувствовали себя потерянным, когда в следующий раз будет упоминаться UTXO.
Что такое UTXO?
Неизрасходованный выход транзакции (UTXO) относится к сумме валюты, оставшейся после транзакции, которая может быть использована для другой транзакции. Это выход транзакции блокчейна, который может быть использован в качестве входа для новой транзакции. Другими словами, UTXO означает общее количество монет в кошельке пользователя, которое может быть израсходовано в любой момент времени. Отсутствие UTXO означает отсутствие монет в Вашем кошельке. UTXO применяется в Биткоине и некоторых других криптовалютах, таких как Bitcoin Cash (BCH), Litecoin (LTC) и ZCash (ZEC), среди прочих.
UTXO похожа на сдачу, которую Вы получаете после покупки товара за физические деньги, и сдача может быть использована для покупки другого товара. Но в отличие от фиатной валюты, она не имеет определенного номинала. Это может быть любая стоимость, вплоть до сатоши (x>0.00000001BTC). Чтобы лучше понять это, если у Вас есть две купюры по 10 долларов и Вы покупаете кофе стоимостью 15 долларов. Вам придется отдать обе купюры, а взамен Вы получите купюру в $5 в качестве сдачи. Вы ни за что не разорвете купюру в 10 долларов на две части, чтобы заплатить за кофе. Вы должны потратить и то, и другое и получить сдачу. Это похоже на идеологию
, стоящую за UTXO.
Криптовалютная транзакция на блокчейне — это просто передача стоимости от отправителя к получателю. Криптовалюта состоит из маленьких неделимых кусочков, известных как UTXO. Это означает, что монета в Вашем кошельке — это сумма всех полученных UTXO. Когда отправитель инициирует транзакцию, UTXO, связанный с идентификатором отправителя, находится, собирается, разблокируется и отправляется получателю. Приемник становится новым владельцем UTXO, а изменение становится Вашим новым UTXO. Вам может быть интересно, как и когда все это происходит, поскольку пользователь видит только сумму списания и баланс. Ответ не является надуманным, современные кошельки упростили все, и заботятся обо всех этих шагах за кулисами.
Как работает модель UTXO?
UTXO, как и фиатная валюта, не является делимой, то есть, чтобы потратить определенную сумму, Вам нужно потратить ее всю и получить сдачу. Новые UTXO создаются в результате потребления существующих. Чтобы понять принцип работы модели UTXO, давайте воспользуемся иллюстрацией ниже.
Предположим, Вы получаете 0,5 BTC 0,2 BTC и 0,3 BTC от A, B и C соответственно. Каждая полученная сумма сама по себе является UTXO, что показывает, что UTXO не имеют фиксированной стоимости.
Предположим, Вы хотите выплатить долг в размере 0,75 BTC компании D. Если посмотреть на UTXO, находящиеся в Вашем распоряжении, то ни один из них не достигает необходимой суммы. Для передачи 0,75 BTC потребуется два или более UTXO в качестве входа.
Если Вы решите выбрать 0,5 BTC и 0,3 BTC для компенсации долга. Затем Вы отправите оба варианта шахтеру.
Майнер возьмет 0,75 BTC и отправит их в D, а оставшуюся сумму вернет в Ваш кошелек после вычета комиссии за транзакцию.
Если предположить, что в процессе транзакции не было понесено комиссионных сборов (это невозможно), Вам будет возвращено 0,05 BTC на адрес, который Вы указали в качестве адреса для изменения.
Таким образом, в конце дня у Вас будет 0,2 BTC и 0,05 BTC в качестве Ваших новых UTXO в ожидании другой транзакции.
При обычных банковских операциях Вам нужно только ввести желаемую сумму и получателя, все остальное сделает Ваш банк. Но в транзакциях Биткойн от Вас требуется выбрать UTXO, которые Вы хотите использовать. Более того, фиатная валюта имеет конкретный номинал, но в случае с UTXO это не так. Без надлежащего знания того, как работает модель UTXO, Вы можете оказаться инициатором сделок, которые Вы не собирались совершать.
Важность UTXO
Предотвращает двойную трату: с помощью модели UTXO монету можно потратить только один раз. Сеть отслеживает каждый отдельный UTXO, находящийся в обращении. Когда инициируется транзакция, UTXO преобразуется во вход, а генерируемый в процессе выход перезаписывает предыдущую запись. Когда это произойдет, исходный UTXO будет израсходован, следовательно, его нельзя будет потратить снова. Кроме того, система всегда может рассчитать, сколько BTC существует, вычислив весь UTXO в сети, который известен как набор UTXO.
Масштабируемость: в модели UTXO есть возможность обрабатывать несколько транзакций одновременно. Это помогает снизить нагрузку на сеть.
Конфиденциальность и безопасность: UTXO позволяет пользователям отслеживать свои криптовалюты, поскольку они связаны с индивидуальным публичным адресом. Кроме того, пользователи могут сохранять свою анонимность и не могут быть отслежены владельцами, иначе они афишируют свой адрес.
Гибкость: с использованием UTXOs является более гибким, чем фиатные валюты. Фиатная валюта имеет фиксированный номинал, и может возникнуть вопрос о ее недоступности. Но этого никогда не может быть в случае с UTXO, поскольку он может быть любого размера.
Недостатки UTXO
Модель UTXO — это сложный и трудоемкий процесс. Чтобы узнать общую стоимость монет, находящихся в распоряжении пользователя, требуется собрать и подсчитать все имеющиеся UTXO вместо того, чтобы просто проверить баланс, что делает эту процедуру очень сложной. Кроме того, владение мелкими монетами делает транзакции нерентабельными. Не лучший выбор UTXO может привести к высоким комиссиям за транзакцию, которые могут быть даже дороже, чем сама транзакция.
Модель UTXO не совместима с умными контрактами. Логика ввода и вывода в транзакциях UTXO делает их более ресурсоемкими. Интегрировать смарт-контракты в модель UTXO будет непросто, поскольку системе придется учитывать множество факторов, таких как количество входов и наилучшее сочетание входов для нескольких транзакций.
Модель счета в сравнении с моделью UTXO
Модель счета работает так же, как и в обычном банке, Вам не обязательно тратить всю монету, прежде чем Вы сможете отправить ее часть. Некоторые криптовалюты, использующие модель счета, — это Ethereum (ETH), Ethereum Classic (ETC) и др. Обе модели служат одной и той же цели, хотя и имеют свои преимущества и недостатки. Некоторые из заметных различий между двумя моделями включают:
- В модели UTXO транзакции требуют больше места для хранения, чем хранение в одном балансе, в то время как модель счета требует меньше места.
- Bk транзакции, использующие UTXO mod, потребуют сбора меньших единиц UTXO, что может привести к неэффективности таких транзакций. Это не относится к моделям счетов, поэтому массовые транзакции более эффективны.
Как было сказано ранее, модель UTXO не поддерживает интеграцию смарт-контрактов. Характер модели счета облегчает интеграцию смарт-контрактов, позволяя разработчикам программировать многосторонние контракты и транзакции.
Заключение
До появления современных Биткоин-кошельков правильное понимание UTXO было крайне необходимо, чтобы избежать потери средств при проведении транзакции. UTXO помогает отслеживать количество монет в любой момент времени. Чтобы сгенерировать новый UTXO, существующий должен быть израсходован. Эта концепция также в значительной степени предотвращает проблему двойных расходов, обычно встречающуюся в цифровых валютах. UTXO играет жизненно важную роль в транзакциях Биткоина, а также была принята и модифицирована на других криптовалютах. UTXO служит аналогичной цели, что и денежная система на блокчейне, но предлагает больше безопасности, конфиденциальности и гибкости.
Автор: Unique
Переводчик: yulei
Рецензент(ы): Edward
* Информация не предназначена и не является финансовым советом или любой другой рекомендацией любого рода, предложенной или одобренной Gate.io.
* Эта статья не может быть опубликована, передана или скопирована без ссылки на Gate.io. Нарушение является нарушением Закона об авторском праве и может повлечь за собой судебное разбирательство.
Статьи по теме
Руководство по трейдингу для начинающих
Эта статья открывает ворота в криптовалютную торговлю, исследует неизвестные области, объясняет криптопроекты и предупреждает читателей о потенциальных рисках.
Nov 21, 2022
Что такое тройные сигналы вершины и дна?
Модели тройной вершины и дна используются для определения разворотов тренда на графике. При хорошем изучении оба паттерна могут помочь Вам понять, когда нужно выходить из тренда.
Jan 16, 2023
Что такое ЗЭК?
ZEC (Zcash) был запущен 28 октября 2016 года и относится к категории монет конфиденциальности на криптовалютном рынке. ZEC — это первая блокчейн-система, использующая механизм доказательства нулевого знания, который обеспечивает полную конфиденциальность платежей, сохраняя при этом децентрализованную сеть на публичном блокчейне. Как и в случае с BTC, общий объем предложения ZEC составляет 21 миллион. Однако, в отличие от BTC, транзакции на ZEC автоматически скрывают отправителя, получателя и сумму в блокчейне, и только те, у кого есть ключи, могут видеть содержание транзакций. Пользователи имеют полный контроль над своими ключами и могут выбирать, предоставлять ли их другим лицам для просмотра информации. ZEC можно рассматривать как ответвление BTC, поскольку он сохраняет оригинальную модель BTC и основан на модификациях версии кода Биткойна.
Что такое UTXO?
UTXO (unspent transaction output) — выход неизрасходованных транзакций.. В основном, это сумма или оставшееся изменение криптовалюты, которое вы получаете от каждой транзакции. В качестве входных данных для транзакции могут использоваться только неизрасходованные выходные данные. При выполнении транзакции входные данные удаляются, а выходные данные создаются в виде новых UTXOs, которые затем могут быть использованы в будущих транзакциях.
Например, если у вас есть UTXO, который определяет, что у вас есть 10 монет, и вы хотите купить что-то, что стоит 2 монеты, вы сделаете транзакцию, которая потратит весь Ваш баланс UTXO, отправив 2 монеты другому человеку и 8 монет обратно себе. Как только эта транзакция будет завершена, UTXO будет создан как для отправителя, так и для получателя. В общем случае UTXO определяет, сколько пользователь получил обратно и сколько пользователь может потратить. Сумма, которую пользователь получит обратно, будет добавлена к его балансу счета. Таким образом, наиболее вероятно, что у каждого пользователя будет более одного UTXOs, и сумма всех неизрасходованных монет в каждом UTXO будет равна общему балансу счета пользователя.
Преимущества
· Простота. Благодаря UTXO, на которые имеются уникальные ссылки и которые полностью расходуются при затратах, не дает возможности для повторного воспроизведения транзакции.
· Транзакции могут быть проверены параллельно. Две транзакции не могут повлиять на один и тот же UTXO. Это связано с состоянием транзакций UTXO без сохранения состояния. Транзакции не относятся ни к какому входу за пределами потребляемых UTXO и соответствующих сигнатур.
· В модели UTXO поощряется сохранение конфиденциальности. Пользователям рекомендуется создавать новый адрес для каждой входящей транзакции, включая изменение адреса. Используя каждый раз новый адрес, трудно однозначно связать разные монеты с одним владельцем.
Недостатки
· Особенности UI/UX сложны. Пользователи, как правило, думают о счетах, когда они хранят свои деньги. Поставщик кошелька должен управлять потенциальным набором адресов и суммировать соответствующие остатки. Для выполнения этого способа сохранения конфиденциальности может потребоваться запуск локального узла.
· Возможности смарт-контрактов в модели UTXO весьма ограничены. Каждый UTXO имеет критерии расходов, которые диктуют условия расходов. Это может потребовать подписи от нескольких сторон, но существует мало возможностей ссылаться на внешние государства, такие как оракулы.
Следите за EcoChain в социальных сетях
Что такое неизрасходованный остаток транзакции (UTXO) простыми словами
Объясняем, что такое неизрасходованный остаток транзакции (Unspent Transaction Output, UTXO) и как он работает.
В этой статье:
- Что такое UTXO
- Как работает UTXO
- Какие блокчейны используют эту модель
- Что такое консолидация UTXO
- Преимущества и недостатки модели UTXO
- Подводим итоги
Что такое UTXO
Неизрасходованный остаток — это сумма, которая возвращается на счет при совершении транзакции. Они являются важной частью экосистемы и используются для отслеживания прав собственности на средства на нескольких блокчейнах.
Допустим, у вас есть 1 биткоин и вы хотите купить что-то стоимостью 0,1 BTC. Вы отправляете 0,1 BTC продавцу, а оставшиеся 0,9 становятся вашими UTXO. Затем вы можете использовать неизрасходованный транзакционный остаток для совершения новых покупок или переводов.
Размер неизрасходованного остатка должен быть равен или больше отправляемой суммы и учитывать комиссию за транзакцию. После того как UTXO израсходован, его нельзя использовать повторно.
Как работает UTXO
C помощью модели неизрасходованных остатков блокчейны отслеживают, кому принадлежат определенные активы. Когда кто-то отправляет BTC другому человеку, он отправляет один или несколько UTXO биткоина на открытый ключ получателя. Затем получатель может использовать эти UTXO для своих параллельных транзакций.
Неизрасходованный остаток транзакции можно рассмотреть по аналогии с физическими деньгами. Если у вас есть монета или купюра, вы можете потратить ее, отдав другому человеку. Как только вы сделаете это, деньги перестанут быть вашими, и вы не можете потратить их снова. После того, как вы использовали UTXO в транзакции, они больше не хранятся в вашем криптокошельке. Вместо этого они попадают в блокчейн как часть истории транзакции.
Какие блокчейны используют модель UTXO
Принцип неизрасходованных остатков используется в блокчейнах всех форков биткоина, Monero, Cardano и нескольких других сетях. Модифицированная модель UTXO реализована в Hyperledger Fabric.
Другой способ организации блокчейна — модель учета (Account Model). Она подразумевает локальный учет токенов на нодах сети, а не в самих транзакциях. Такая модель используется в блокчейне Ethereum.
Что такое консолидация UTXO
Консолидация неиспользованных остатков транзакций объединяет несколько UTXO в один платеж для снижения комиссии и повышения конфиденциальности.
Консолидация также позволяет создавать смарт-контракты. Объединив несколько UTXO, можно создать сумму, которая будет потрачена только при выполнении определенных условий.
Существует два основных способа консолидации: ручная и автоматическая.
Ручная консолидация предполагает создание новой транзакции с желаемыми UTXO, а затем отправку всей суммы себе на кошелек.
Автоматическая консолидация заключается в том, что кошелек периодически создает новые транзакции, которые объединяют несколько UTXO в одну сумму. Она происходит автоматически и не требует участия владельца кошелька.
Преимущества модели UTXO
- Масштабируемость. Количество обрабатываемых в секунду транзакций ограничено только скоростью сети
- Конфиденциальность. Для каждой транзакции генерируются новые адреса, поэтому отследить происхождение транзакций практически невозможно.
- Упрощение аутентификации. Каждый UTXO можно проследит до момента его возникновения. Это помогает выявлять возможные двойные траты.
- Использование смарт-контрактов. Модель неизрасходованных остатков транзакции позволяет использовать определенные типы смарт-контракты, которые не работают с другими моделями.
Недостатки модели UTXO
- Размер комисий. Модель неизрасходованных остатков транзакции может привести к увеличению комиссии, поскольку каждый UTXO нужно подписать индивидуально.
- Пыль. UTXO способствует накоплению «пыли». Пыль – это небольшое количество монет, которые нельзя потратить, поскольку они меньше минимальной суммы транзакции. Так как при совершении транзакции остатки не объединяются, злоумышленники могут отправить пыль для смешивания с другими UTXO и сопоставить различные адреса владельца кошелька.
- Неэффективное хранение. Чем больше UTXO хранится на блокчейне, тем больше пространства они занимают. Возможным решением этой проблемы представляется перенос части хранимых данных на HDD или SSD-устройства.
Подводим итоги
Появление модели неизрасходованных остатков транзакции значительно упростило метод учета средств и сделало транзакции более конфиденциальными. Смешивая разные UTXO, пользователи могут использовать разные адреса для транзакций и мешать устанавливать связи между адресами.
Традиционная модель неизрасходованных остатков транзакции имеет ряд ограничений. Но разработчики активно ищут пути решения этих проблем: команда Cardano, например, представила концепцию Extended UTXO (EUTXO) для внедрения смарт-контрактов в сеть.
Таким образом, работа над усовершенствованием модели только увеличит популярность применения UTXO в других блокчейнах.
Дисклеймер
Вся информация на нашем сайте публикуется, основываясь на принципах добросовестности и только для общего ознакомления. Любые действия, основанные на информации, публикуемой на этом сайте, предпринимаются читателем исключительно под его собственную ответственность.
В разделе «База знаний» нашей приоритетной задачей является предоставление высококачественной информации. Мы тщательно определяем, изучаем и создаем образовательный контент, полезный для наших читателей.
Для поддержания этих стандартов на высоком уровне и дальнейшего создания качественного контента наши партнеры могут выплачивать нам вознаграждение за размещение информации о них в наших статьях. Однако такие выплаты никак не влияют на процессы создания объективного, честного и полезного контента.