«Блокчейн UTXO заклав фундамент і беззаперечну основу сучасної індустрії блокчейнів. Технологія UTXO відображає основне бачення Сатоші Накамото щодо повної фінансової свободи». Модель UTXO гарантує безпеку, конфіденційність даних і безпеку в основі фінансової діяльності. Масштабована та безпечніша альтернатива моделі облікового запису Ethereum.
Blockchain — це цифрова, децентралізована, розподілена книга. Blockchain використовує мережу P2P (Peer to Peer), де учасники, присутні в мережі, називаються вузлами. У книзі зберігаються дані про операції. Це ланцюжок блоків, де його найважливішою особливістю є те, що блоки криптографічно пов’язані між собою.
• Кожен блок у блокчейні, крім першого блоку (відомого як блок генезису), містить поле, яке називається попереднім хешем. Це хеш попереднього блоку в ланцюжку. Це робить блокчейн дуже безпечним.
• Фактори, що визначають хеш-значення блоку. Якщо будь-який із цих чотирьох факторів зміниться, навіть на 1 біт, через ефект лавини, хеш повністю зміниться. Транзакції зберігаються в блоках і є одним із чотирьох факторів, які змінюють хеш блоку. Це означає, що якщо майнер вибере іншу транзакцію та збереже інші 4 фактори незмінними, хеш-значення буде іншим.
Мітка часу
Номер блоку: порядковий номер поточного блоку в ланцюжку.
Дані: транзакції, що зберігаються в блоках.
Випадкове число
• Якщо зловмисник намагається змінити дані блоку, хеш блоку зміниться, як зазначено раніше, наступний блок зберігатиме хеш поточного блоку, якщо хеш зміниться, ланцюжок буде знищено. Або зловмисник повинен знову видобути всі блоки з цієї точки. Це можливість при атаці 51%.
Що таке «блок»?
Блок у блокчейні зберігає транзакції. У випадку з біткойнами блоки додаються до блокчейну кожні 10 хвилин. Цей час може змінюватися як час для майнінгу нового блоку залежно від складності цільового хешу, і може знадобитися більше часу для майнінгу одного блоку порівняно з інший.
• Коли майнер успішно видобуває блок, він додається до блокчейну. Коли блок додається до ланцюжка, статус усіх транзакцій усередині блоку змінюється з непідтвердженого на підтверджений.
• У випадку з біткойнами кількість транзакцій, які можуть зберігатися в блоці, не є фіксованою, але максимальний розмір блоку встановлюється приблизно на 1 МБ, розмір блоку може трохи змінюватися від 1 МБ.
• Порожні блоки дійсні, що означає, що порожній блок можна видобути та додати до ланцюжка.
Структура транзакцій блокчейну
Очищення однієї транзакції розкриває кілька різних структур із різною семантикою всередині транзакції. Нижче наведено різні структури, присутні в транзакціях:
UTXO — це всі ті виходи, які ще не розблоковані входом.
Після того, як вихід розблоковано, вони вилучаються з циркулюючої подачі. Нові виходи займають своє місце. Таким чином, сума розблокованих виходів завжди дорівнюватиме сумі значень новостворених виходів.
UTXO не є позначенням криптовалюти, як-от сатоші для біткойнів (BTC) або gwei для ефіріуму (ETH); однак UTXO можна виміряти за допомогою цих номіналів. UTXO означає Unspend Transaction Output. У біткойнах транзакція продовжує існувати, поки не буде виконана, поки інша транзакція не завершиться з використанням цього UTXO. Коли транзакція завершена, невикористані виходи зберігаються назад у базі даних як вхідні дані та можуть бути використані для іншої транзакції пізніше.
Коли користувач ініціює транзакцію через свій гаманець, UTXO, що містить інформацію про транзакцію, знаходиться, розблоковується, а інформація нового власника пов’язується з переданим йому UTXO. І цей користувач може використовувати їх у транзакціях через той самий процес. У міру продовження транзакцій база даних буде заповнюватися записами про зміни власності. Вихід – це частина криптовалюти, яку користувач відправив комусь, але не витратив. Вони реєструються в базі даних як вхідні дані для оцінки криптовалюти.
UTXO створюються шляхом споживання існуючих UTXO. Кожна транзакція Bitcoin складається з входів і виходів. Вхідні дані споживають наявний UTXO, тоді як виходи створюють новий UTXO. Вирішуючи витратити біткойни, ми можемо бачити лише відраховану суму та суму, що залишилася в гаманці. Для користувача це схоже на купівлю товару вартістю 0,50 долара з банкнотою в 1 долар — це все одно, що отримати здачу та покласти її до кишені.
Модель UTXO не включає гаманці на рівні протоколу. Він заснований на окремих транзакціях, які згруповані в блоки. Модель UTXO є спільною для багатьох криптовалют, особливо для біткойнів.
• Криптовалюти, що використовують модель UTXO, не використовують рахунки чи баланси. Натомість UTXO передаються між користувачами, як і фізична готівка.
• Кожна транзакція в моделі UTXO може перевести систему в новий стан, але перехід до нового стану з кожною транзакцією є неможливим.
• Учасники мережі повинні бути синхронізовані з поточним станом.
Загальна кількість UTXO, наявних у блокчейні, представляє набір і постійно підтримується кожним біткойн-вузлом.
• Кожна транзакція споживає елементи з цього набору та створює нові, які додаються до набору. Набір UTXO оновлюється кожного разу, коли в блокчейні приймається новий блок, і кожен вузол Bitcoin у мережі матиме точну копію набору UTXO у своєму локальному сховищі.
• Повний набір UTXO можна додати, щоб обчислити загальну пропозицію криптовалюти в певний момент часу, а у випадку дійсних транзакцій блокчейну лише невитрачені виходи можуть бути використані для фінансування подальших транзакцій. Щоб запобігти подвійним витратам і шахрайству, необхідна умова, що лише невитрачені виходи можуть бути використані в подальших транзакціях.
Невитрачені результати транзакцій є частиною технології розподіленої бази даних, що стоїть за біткойнами та іншими криптовалютами. Біткойн використовує UTXO, але це не UTXO. Крім того, Ethereum використовує бухгалтерський підхід і баланси на рахунках, тому у віртуальній машині Ethereum немає UTXO.
• Розумні контракти, що не залежать від мови: розумні контракти на основі UTXO не залежать від мови, що дозволяє UTXO розробляти унікальні механізми консенсусу.
• Підтримує децентралізовані обміни та атомарні свопи: модель UTXO підтримує атомарні свопи, забезпечуючи однорангові зашифровані транзакції без сторонньої участі. Функція атомарного свопу UTXO пропонує кращі можливості для прямої торгівлі криптовалютою між гаманцями користувачів.
• Перевага масштабованості: можливість або паралельна обробка транзакцій зменшує обчислювальне навантаження на блокчейн-мережі.
• Конфіденційність і безпека: завдяки новим адресам, які використовуються для кожної транзакції UTXO, неможливо відстежити транзакції
• Запобігайте подвійним витратам: UTXO можна використати лише один раз, що є основою для роботи технології блокчейн і гарантує, що валюта не використовуватиметься багаторазово.
• Більша гнучкість: пропонує більшу гнучкість, ніж фіатні валюти.
• Просте розпаралелювання: дозволяє простіше розпаралелювати транзакції в розумних контрактах.
Модель UTXO використовується в багатьох криптовалютах, оскільки вона дозволяє користувачам відстежувати право власності на всі частини криптовалюти. Оскільки криптовалюти створюються з урахуванням анонімності, UTXO пов’язані з публічними адресами, видимими для всієї мережі.
Користувачів неможливо ідентифікувати за їхньою власністю, якщо вони не опублікують свою адресу, але модель дозволяє забезпечити прозорість через адреси.
Основна концепція протоколу RGB полягає в тому, щоб викликати блокчейн біткойнів лише тоді, коли це необхідно, використовуючи підтвердження роботи та децентралізовану мережу для досягнення захисту від подвійних витрат і стійкості до цензури. Перевірка всіх переказів токенів переміщується з рівня глобального консенсусу на позамережевий і перевіряється лише клієнтом, який отримує платіж.
Принцип роботи:
У певному контракті RGB токени генезису належать до біткойн UTXO (незалежно від того, чи він уже існує чи створений тимчасово), і щоб передати токени, вам потрібно витратити цей UTXO. Витрачаючи цей UTXO, транзакція Bitcoin повинна додати додатковий вихід, який містить зобов’язання щодо повідомлення. Вмістом цього повідомлення є платіжна інформація RGB, яка визначає вхідні дані та до якого UTXO будуть надіслані ці токени, ідентифікатор активу, кількість, транзакцію витрат і дані, які потрібно додати.
Суть UTXO насправді полягає в формі бухгалтерського обліку на основі потоків: він перевіряє наявність коштів транзакції за допомогою моделі UTXO, а потім відстежує джерело транзакції. Після того, як буде підтверджено правильність, його буде передано на всю мережу через механізм консенсусу та записано в ланцюжку. Протягом цього процесу UTXO записує всю інформацію, пов’язану із залученими коштами на рахунку, адресами транзакцій, перерахованими коштами та джерелами коштів, дозволяючи відстежити початкове джерело кожної транзакції. Саме на основі цієї характеристики UTXO може працювати разом із механізмом консенсусу для вирішення проблеми подвійних витрат. Безпека та цілісність інформації про транзакції в протоколі RGB забезпечується через UTXO.
Таким чином, UTXO може не тільки допомогти механізму консенсусу та вирішити проблему подвійних витрат блокчейну, але також надати блокчейну характеристики відстежуваності. Виходячи з цього, блокчейн може гарантувати автентичність і надійність кожної транзакції.
«Блокчейн UTXO заклав фундамент і беззаперечну основу сучасної індустрії блокчейнів. Технологія UTXO відображає основне бачення Сатоші Накамото щодо повної фінансової свободи». Модель UTXO гарантує безпеку, конфіденційність даних і безпеку в основі фінансової діяльності. Масштабована та безпечніша альтернатива моделі облікового запису Ethereum.
Blockchain — це цифрова, децентралізована, розподілена книга. Blockchain використовує мережу P2P (Peer to Peer), де учасники, присутні в мережі, називаються вузлами. У книзі зберігаються дані про операції. Це ланцюжок блоків, де його найважливішою особливістю є те, що блоки криптографічно пов’язані між собою.
• Кожен блок у блокчейні, крім першого блоку (відомого як блок генезису), містить поле, яке називається попереднім хешем. Це хеш попереднього блоку в ланцюжку. Це робить блокчейн дуже безпечним.
• Фактори, що визначають хеш-значення блоку. Якщо будь-який із цих чотирьох факторів зміниться, навіть на 1 біт, через ефект лавини, хеш повністю зміниться. Транзакції зберігаються в блоках і є одним із чотирьох факторів, які змінюють хеш блоку. Це означає, що якщо майнер вибере іншу транзакцію та збереже інші 4 фактори незмінними, хеш-значення буде іншим.
Мітка часу
Номер блоку: порядковий номер поточного блоку в ланцюжку.
Дані: транзакції, що зберігаються в блоках.
Випадкове число
• Якщо зловмисник намагається змінити дані блоку, хеш блоку зміниться, як зазначено раніше, наступний блок зберігатиме хеш поточного блоку, якщо хеш зміниться, ланцюжок буде знищено. Або зловмисник повинен знову видобути всі блоки з цієї точки. Це можливість при атаці 51%.
Що таке «блок»?
Блок у блокчейні зберігає транзакції. У випадку з біткойнами блоки додаються до блокчейну кожні 10 хвилин. Цей час може змінюватися як час для майнінгу нового блоку залежно від складності цільового хешу, і може знадобитися більше часу для майнінгу одного блоку порівняно з інший.
• Коли майнер успішно видобуває блок, він додається до блокчейну. Коли блок додається до ланцюжка, статус усіх транзакцій усередині блоку змінюється з непідтвердженого на підтверджений.
• У випадку з біткойнами кількість транзакцій, які можуть зберігатися в блоці, не є фіксованою, але максимальний розмір блоку встановлюється приблизно на 1 МБ, розмір блоку може трохи змінюватися від 1 МБ.
• Порожні блоки дійсні, що означає, що порожній блок можна видобути та додати до ланцюжка.
Структура транзакцій блокчейну
Очищення однієї транзакції розкриває кілька різних структур із різною семантикою всередині транзакції. Нижче наведено різні структури, присутні в транзакціях:
UTXO — це всі ті виходи, які ще не розблоковані входом.
Після того, як вихід розблоковано, вони вилучаються з циркулюючої подачі. Нові виходи займають своє місце. Таким чином, сума розблокованих виходів завжди дорівнюватиме сумі значень новостворених виходів.
UTXO не є позначенням криптовалюти, як-от сатоші для біткойнів (BTC) або gwei для ефіріуму (ETH); однак UTXO можна виміряти за допомогою цих номіналів. UTXO означає Unspend Transaction Output. У біткойнах транзакція продовжує існувати, поки не буде виконана, поки інша транзакція не завершиться з використанням цього UTXO. Коли транзакція завершена, невикористані виходи зберігаються назад у базі даних як вхідні дані та можуть бути використані для іншої транзакції пізніше.
Коли користувач ініціює транзакцію через свій гаманець, UTXO, що містить інформацію про транзакцію, знаходиться, розблоковується, а інформація нового власника пов’язується з переданим йому UTXO. І цей користувач може використовувати їх у транзакціях через той самий процес. У міру продовження транзакцій база даних буде заповнюватися записами про зміни власності. Вихід – це частина криптовалюти, яку користувач відправив комусь, але не витратив. Вони реєструються в базі даних як вхідні дані для оцінки криптовалюти.
UTXO створюються шляхом споживання існуючих UTXO. Кожна транзакція Bitcoin складається з входів і виходів. Вхідні дані споживають наявний UTXO, тоді як виходи створюють новий UTXO. Вирішуючи витратити біткойни, ми можемо бачити лише відраховану суму та суму, що залишилася в гаманці. Для користувача це схоже на купівлю товару вартістю 0,50 долара з банкнотою в 1 долар — це все одно, що отримати здачу та покласти її до кишені.
Модель UTXO не включає гаманці на рівні протоколу. Він заснований на окремих транзакціях, які згруповані в блоки. Модель UTXO є спільною для багатьох криптовалют, особливо для біткойнів.
• Криптовалюти, що використовують модель UTXO, не використовують рахунки чи баланси. Натомість UTXO передаються між користувачами, як і фізична готівка.
• Кожна транзакція в моделі UTXO може перевести систему в новий стан, але перехід до нового стану з кожною транзакцією є неможливим.
• Учасники мережі повинні бути синхронізовані з поточним станом.
Загальна кількість UTXO, наявних у блокчейні, представляє набір і постійно підтримується кожним біткойн-вузлом.
• Кожна транзакція споживає елементи з цього набору та створює нові, які додаються до набору. Набір UTXO оновлюється кожного разу, коли в блокчейні приймається новий блок, і кожен вузол Bitcoin у мережі матиме точну копію набору UTXO у своєму локальному сховищі.
• Повний набір UTXO можна додати, щоб обчислити загальну пропозицію криптовалюти в певний момент часу, а у випадку дійсних транзакцій блокчейну лише невитрачені виходи можуть бути використані для фінансування подальших транзакцій. Щоб запобігти подвійним витратам і шахрайству, необхідна умова, що лише невитрачені виходи можуть бути використані в подальших транзакціях.
Невитрачені результати транзакцій є частиною технології розподіленої бази даних, що стоїть за біткойнами та іншими криптовалютами. Біткойн використовує UTXO, але це не UTXO. Крім того, Ethereum використовує бухгалтерський підхід і баланси на рахунках, тому у віртуальній машині Ethereum немає UTXO.
• Розумні контракти, що не залежать від мови: розумні контракти на основі UTXO не залежать від мови, що дозволяє UTXO розробляти унікальні механізми консенсусу.
• Підтримує децентралізовані обміни та атомарні свопи: модель UTXO підтримує атомарні свопи, забезпечуючи однорангові зашифровані транзакції без сторонньої участі. Функція атомарного свопу UTXO пропонує кращі можливості для прямої торгівлі криптовалютою між гаманцями користувачів.
• Перевага масштабованості: можливість або паралельна обробка транзакцій зменшує обчислювальне навантаження на блокчейн-мережі.
• Конфіденційність і безпека: завдяки новим адресам, які використовуються для кожної транзакції UTXO, неможливо відстежити транзакції
• Запобігайте подвійним витратам: UTXO можна використати лише один раз, що є основою для роботи технології блокчейн і гарантує, що валюта не використовуватиметься багаторазово.
• Більша гнучкість: пропонує більшу гнучкість, ніж фіатні валюти.
• Просте розпаралелювання: дозволяє простіше розпаралелювати транзакції в розумних контрактах.
Модель UTXO використовується в багатьох криптовалютах, оскільки вона дозволяє користувачам відстежувати право власності на всі частини криптовалюти. Оскільки криптовалюти створюються з урахуванням анонімності, UTXO пов’язані з публічними адресами, видимими для всієї мережі.
Користувачів неможливо ідентифікувати за їхньою власністю, якщо вони не опублікують свою адресу, але модель дозволяє забезпечити прозорість через адреси.
Основна концепція протоколу RGB полягає в тому, щоб викликати блокчейн біткойнів лише тоді, коли це необхідно, використовуючи підтвердження роботи та децентралізовану мережу для досягнення захисту від подвійних витрат і стійкості до цензури. Перевірка всіх переказів токенів переміщується з рівня глобального консенсусу на позамережевий і перевіряється лише клієнтом, який отримує платіж.
Принцип роботи:
У певному контракті RGB токени генезису належать до біткойн UTXO (незалежно від того, чи він уже існує чи створений тимчасово), і щоб передати токени, вам потрібно витратити цей UTXO. Витрачаючи цей UTXO, транзакція Bitcoin повинна додати додатковий вихід, який містить зобов’язання щодо повідомлення. Вмістом цього повідомлення є платіжна інформація RGB, яка визначає вхідні дані та до якого UTXO будуть надіслані ці токени, ідентифікатор активу, кількість, транзакцію витрат і дані, які потрібно додати.
Суть UTXO насправді полягає в формі бухгалтерського обліку на основі потоків: він перевіряє наявність коштів транзакції за допомогою моделі UTXO, а потім відстежує джерело транзакції. Після того, як буде підтверджено правильність, його буде передано на всю мережу через механізм консенсусу та записано в ланцюжку. Протягом цього процесу UTXO записує всю інформацію, пов’язану із залученими коштами на рахунку, адресами транзакцій, перерахованими коштами та джерелами коштів, дозволяючи відстежити початкове джерело кожної транзакції. Саме на основі цієї характеристики UTXO може працювати разом із механізмом консенсусу для вирішення проблеми подвійних витрат. Безпека та цілісність інформації про транзакції в протоколі RGB забезпечується через UTXO.
Таким чином, UTXO може не тільки допомогти механізму консенсусу та вирішити проблему подвійних витрат блокчейну, але також надати блокчейну характеристики відстежуваності. Виходячи з цього, блокчейн може гарантувати автентичність і надійність кожної транзакції.