Что такое выход неизрасходованной транзакции (UTXO)?
Выход неизрасходованной транзакции (UTXO) — это модель учета, используемая в блокчейнах, таких как Биткойн, для отслеживания владения средствами. UTXO представляет собой выход транзакции, который еще не был использован в качестве входа в новую транзакцию.
Основные особенности UTXO
- Транзакции состоят из входов и выходов:
- Входы: Это UTXO, которые используются для финансирования новой транзакции.
- Выходы: Это адреса (или ключи), на которые отправляются средства, и они становятся новыми UTXO.
- Баланс кошелька:
Баланс криптовалютного кошелька — это сумма всех UTXO, связанных с ключами владельца. - Уникальность UTXO:
Каждый выход транзакции уникален и может быть потрачен только один раз. После использования UTXO в качестве входа он становится «потраченным» и больше не существует.
Как работает UTXO
Например, если у пользователя есть UTXO на 10 монет, и он хочет отправить 3 монеты другому пользователю:
- Транзакция разблокирует весь UTXO на 10 монет.
- 3 монеты отправляются получателю, а 7 монет возвращаются отправителю в виде нового UTXO (сдачи).
- Теперь пользователь имеет новый UTXO на 7 монет.
Пример транзакции
- У Никифора есть один UTXO на 10 BTC.
- Никифор хочет отправить 2 BTC Марфе.
- Блокчейн:
- Разблокирует UTXO Никифора на 10 BTC.
- Создаёт два выхода (новые UTXO):
- 2 BTC для Марфы.
- 8 BTC возвращаются Никифору как сдача.
- После этого у Марфы есть UTXO на 2 BTC, а у Никифора новый UTXO на 8 BTC.
Особенности модели UTXO
- Проверка двойных расходов:
Каждое UTXO может быть потрачено только один раз. Блокчейн проверяет, что UTXO не использовался ранее, чтобы предотвратить мошенничество. - Простота проверки транзакций:
Узлы сети могут легко проверять транзакции, сверяя UTXO, что делает модель эффективной. - Прозрачность:
Все UTXO записаны в публичной книге (блокчейне), что позволяет любому проверить состояние сети. - Децентрализация:
Модель UTXO поддерживает работу децентрализованных сетей, таких как Биткойн, без необходимости единого центрального органа.
Преимущества UTXO
- Простота обработки транзакций:
Используется система, похожая на физические деньги: сдача и остаток. - Улучшенная безопасность:
Позволяет отслеживать, что каждое UTXO расходуется только один раз. - Высокая гибкость:
Возможность объединять или разделять UTXO в разных транзакциях.
Недостатки UTXO
- Сложность управления мелкими UTXO:
Со временем мелкие UTXO могут привести к фрагментации и увеличению комиссии за транзакции (проблема «пылевых UTXO»). - Увеличение размера блокчейна:
Каждая транзакция порождает новые UTXO, что увеличивает объём данных в блокчейне.
Модель UTXO vs модель аккаунтов
- UTXO (например, Биткойн):
- Основана на выходах транзакций.
- Транзакция уничтожает старые UTXO и создаёт новые.
- Модель аккаунтов (например, Ethereum):
- Баланс записывается на уровне счетов.
- Обновляется при каждой транзакции, без создания новых выходов.
Итог
UTXO — это ключевая часть блокчейнов, таких как Биткойн, обеспечивающая безопасность, прозрачность и предотвращение двойных расходов. Эта модель делает систему похожей на использование наличных денег, с возможностью получения сдачи при совершении транзакций.