В модели UTXO баланс кошелька не хранится как единое число, как баланс банковского счёта. Вместо этого он представляет собой сумму всех отдельных непотраченных выходов предыдущих транзакций, принадлежащих адресам этого кошелька. Когда отправляется новая транзакция, она потребляет один или несколько существующих UTXO в качестве входов и создаёт новые выходы: один идёт получателю, а часто ещё один отправляется обратно отправителю в качестве сдачи, что в принципе похоже на оплату банкнотой и получение сдачи, а не на корректировку единого текущего итога.
Это отличается от основанной на счетах модели, используемой такими сетями, как Ethereum, где балансы отслеживаются скорее как текущий реестр, привязанный к каждому адресу, обновляемый напрямую при каждой транзакции. Модель UTXO имеет некоторые преимущества для приватности и для параллельной проверки транзакций, поскольку несвязанные UTXO можно проверять независимо друг от друга, но она может делать определённые виды логики смарт-контрактов более сложными в реализации по сравнению с простым балансом счёта, который просто увеличивается или уменьшается.
ПО кошелька обычно выполняет выбор и объединение UTXO автоматически, поэтому большинству пользователей никогда не нужно думать о модели напрямую, хотя она лежит в основе того, как их баланс на самом деле представляется и отслеживается в сети.
Ключевые выводы
- UTXO расшифровывается как Unspent Transaction Output — единица, которую Bitcoin и похожие блокчейны используют для отслеживания владения.
- Баланс кошелька — это сумма его непотраченных выходов, а не единое хранимое число, и транзакции потребляют и создают новые выходы.
- Модель UTXO отличается от основанной на счетах модели, используемой такими сетями, как Ethereum, с разными компромиссами для приватности и сложности контрактов.
Часто задаваемые вопросы о UTXO
Почему Bitcoin использует UTXO вместо балансов счетов?
Модель UTXO была частью первоначального дизайна Bitcoin и предлагает такие преимущества, как более простая параллельная проверка несвязанных транзакций и ясная, поддающаяся аудиту история транзакций, хотя она предполагает иные компромиссы, чем система на основе счетов.
Нужно ли мне понимать UTXO, чтобы пользоваться кошельком Bitcoin?
Для повседневного использования нет, поскольку ПО кошелька выполняет выбор UTXO автоматически в фоновом режиме. Это становится более актуальным для продвинутых пользователей, интересующихся комиссиями за транзакции, практиками приватности или созданием приложений прямо на Bitcoin.
Только начинаете разбираться в крипте или хотите заполнить пробелы? Изучите основы в разделе «Учиться», просмотрите все термины от А до Я или посмотрите актуальные цены монет, стоящих за этими понятиями.