Что такое выход неизрасходованной транзакции (UTXO)?

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

Основные особенности UTXO

  1. Транзакции состоят из входов и выходов:
    • Входы: Это UTXO, которые используются для финансирования новой транзакции.
    • Выходы: Это адреса (или ключи), на которые отправляются средства, и они становятся новыми UTXO.
  2. Баланс кошелька:
    Баланс криптовалютного кошелька — это сумма всех UTXO, связанных с ключами владельца.
  3. Уникальность UTXO:
    Каждый выход транзакции уникален и может быть потрачен только один раз. После использования UTXO в качестве входа он становится «потраченным» и больше не существует.

Как работает UTXO

Например, если у пользователя есть UTXO на 10 монет, и он хочет отправить 3 монеты другому пользователю:

  • Транзакция разблокирует весь UTXO на 10 монет.
  • 3 монеты отправляются получателю, а 7 монет возвращаются отправителю в виде нового UTXO (сдачи).
  • Теперь пользователь имеет новый UTXO на 7 монет.

Пример транзакции

  1. У Никифора есть один UTXO на 10 BTC.
  2. Никифор хочет отправить 2 BTC Марфе.
  3. Блокчейн:
    • Разблокирует UTXO Никифора на 10 BTC.
    • Создаёт два выхода (новые UTXO):
      • 2 BTC для Марфы.
      • 8 BTC возвращаются Никифору как сдача.
  4. После этого у Марфы есть UTXO на 2 BTC, а у Никифора новый UTXO на 8 BTC.

Особенности модели UTXO

  1. Проверка двойных расходов:
    Каждое UTXO может быть потрачено только один раз. Блокчейн проверяет, что UTXO не использовался ранее, чтобы предотвратить мошенничество.
  2. Простота проверки транзакций:
    Узлы сети могут легко проверять транзакции, сверяя UTXO, что делает модель эффективной.
  3. Прозрачность:
    Все UTXO записаны в публичной книге (блокчейне), что позволяет любому проверить состояние сети.
  4. Децентрализация:
    Модель UTXO поддерживает работу децентрализованных сетей, таких как Биткойн, без необходимости единого центрального органа.

Преимущества UTXO

  1. Простота обработки транзакций:
    Используется система, похожая на физические деньги: сдача и остаток.
  2. Улучшенная безопасность:
    Позволяет отслеживать, что каждое UTXO расходуется только один раз.
  3. Высокая гибкость:
    Возможность объединять или разделять UTXO в разных транзакциях.

Недостатки UTXO

  1. Сложность управления мелкими UTXO:
    Со временем мелкие UTXO могут привести к фрагментации и увеличению комиссии за транзакции (проблема «пылевых UTXO»).
  2. Увеличение размера блокчейна:
    Каждая транзакция порождает новые UTXO, что увеличивает объём данных в блокчейне.

Модель UTXO vs модель аккаунтов

  • UTXO (например, Биткойн):
    • Основана на выходах транзакций.
    • Транзакция уничтожает старые UTXO и создаёт новые.
  • Модель аккаунтов (например, Ethereum):
    • Баланс записывается на уровне счетов.
    • Обновляется при каждой транзакции, без создания новых выходов.

Итог

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