Що таке UTXO модель Bitcoin та як управляти UTXO?

Що таке UTXO модель Bitcoin та як управляти UTXO?

Ключові моменти

  • Невитрачені вихідні транзакції (UTXO) — це окремі частини отриманого Bitcoin, які ще не були витрачені.
  • Транзакції можуть розділяти UTXO, щоб врахувати оплату, здачу та комісію за використання мережі.
  • Об’єднання менших UTXO в більші зменшує кількість вхідних даних у майбутніх транзакціях.
  • UTXO модель забезпечує, щоб кожен вхідний елемент посилався на попередній вихідний, сума вхідних дорівнювала сумі вихідних, а UTXO оновлювались після підтвердження.
  • UTXO забезпечує прозорий слід фондів і підвищує конфіденційність, тоді як модель облікових записів є простішою, але має проблеми зі масштабованістю та безпекою.

Просте пояснення UTXO

Уявіть, що ви зайшли до супермаркету, щоб купити апельсин за $1, але у вас є тільки купюра номіналом $5. Ви б дали її касиру, який би розділив $5 на п’ять купюр по $1, залишивши одну собі, а чотири віддав вам у вигляді здачі.

Ідея невитрачених вихідних транзакцій (UTXO) здається складною, але їх можна порівняти з прихованими номіналами валюти у вашому гаманці.

Якщо ви плануєте управляти своїм Bitcoin самостійно, важливо розуміти, що таке UTXO, чому вони важливі та як ефективно з ними працювати.

Без цих знань ви можете зіткнутися із серйозними проблемами у майбутньому.

Що таке UTXO?

UTXO — це частина Bitcoin, яку ви отримали, але ще не витратили. Подібно до того, як у вашому фізичному гаманці можуть бути купюри різного номіналу (наприклад, двадцятки, п’ятірки чи монети), кожна транзакція Bitcoin складається з однієї або декількох таких прихованих UTXO.

Таким чином, ваш баланс — це комбінація всіх UTXO, які є у вашому гаманці.

Ось простий приклад.

Сценарій з одним UTXO

Уявіть, що ви щойно майнили блок і отримали новостворений Bitcoin безпосередньо з мережі.

Ваш винагорода в 3.5 BTC, яка складається з нагороди за блок і комісій за транзакції, утворює один UTXO.

Можна подумати про це як про новостворений шматок Bitcoin, який тепер належить вам.

Тепер припустимо, що ви хочете надіслати 1 BTC своєму другу Бобу. Мережа візьме ваш єдиний UTXO на 3.5 BTC і розділить його на три окремих UTXO (цифри в прикладі округлені для простоти):

  • Здача: 2.5 BTC буде повернуто у ваш гаманець як здача.
  • Мережева комісія: Невелика сума, наприклад, 0.000002 BTC, буде використана для оплати мережевої комісії.
  • Платіж Бобу: 1 BTC буде надіслано Бобу.

Далі, якщо ви вирішите відправити свої залишкові 2.5 BTC своїй сестрі Алісі, транзакція буде виглядати так:

  • Мережева комісія: Наприклад, 0.000001 BTC.
  • Платіж Алісі: 2.5 BTC будуть надіслані Алісі.

Зверніть увагу, що комісія менша. Це пов’язано з тим, що комісії за транзакції в Bitcoin визначаються розміром даних транзакції в байтах, а не сумою Bitcoin, що надсилається.

Таким чином, при меншій кількості UTXO у вашому гаманці будь-які транзакції стають простішими для обробки мережею, а отже, і дешевшими.

Однак сценарій, коли у вас є тільки один UTXO, рідкісний. Ось чому наведемо інші приклади.

Сценарій з декількома UTXO

Це більш реалістичний сценарій, адже більшість людей матимуть кілька UTXO у своєму гаманці.

Том хоче надіслати своєму другові Джеррі 1.2 BTC.

У цьому випадку Том має безліч менших, середніх і великих UTXO у своєму гаманці. Це означає, що мережа повинна зібрати більшу транзакцію з багатьох менших UTXO.

Наприклад, якщо у Тома загалом 10 BTC у вигляді декількох UTXO, структура транзакції може виглядати так:

  • Здача: 8.8 BTC буде повернуто до гаманця Тома як здача.
  • Мережева комісія: Скажімо, 0.000009 BTC.
  • UTXO для Джеррі у вигляді 1.2 BTC:
    • Платіж 1: 0.9 BTC
    • Платіж 2: 0.15 BTC
    • Платіж 3: 0.10 BTC
    • Платіж 4: 0.05 BTC

Як видно, чим складніша транзакція (тобто чим більше UTXO задіяно), тим вищі витрати.

Ви можете переглянути UTXO, які становлять баланс вашого гаманця, через різні онлайн-інструменти.

Розуміння того, що баланси Bitcoin відрізняються від традиційних банківських рахунків, є важливим. Замість сприйняття “одного Bitcoin” як єдиного блоку грошей, розгляньте це як цілу низку UTXO, які разом формують баланс вашого гаманця. Кожен UTXO — це окрема частина Bitcoin, яку можна витратити у транзакціях.

Чи знали ви? Концепція UTXO моделі Bitcoin була значною мірою запозичена з попередніх систем цифрових грошей, таких як eCash Девіда Чаума у 1980-х роках і B-money Вея Дая у 1990-х. Ці ранні спроби цифрової валюти використовували подібні ідеї відстеження вихідних транзакцій, щоб запобігти подвійному витрачанню. Сатоші Накамото удосконалив і впровадив цю концепцію у дизайні Bitcoin. UTXO модель стала основою для забезпечення цілісності та безпеки блокчейну Bitcoin.

[Продовження]