Очолювана Таджем Драй команда розробників опублікувала першу версію клієнта Биткоина Utreexo для запуску «полегшеного» повного вузла.
Співавтор Lightning Network Тадеуш (Тадж) Драй (Thaddeus Dryja) працював
над проектом «полегшеного» повного вузла Биткоина з початку минулого року. Влітку 2019 року він опублікував
код для вирішення по масштабуванню Utreexo, а минулого тижня команда розробників випустила першу версію програмного забезпечення Utreexo в рамках MIT Digital Currency Initiative (DCI).
Повні вузли перевіряють відповідність нових транзакцій в блокчейне Биткоина вимогам протоколу і поширюють їх по мережі. Однак запуск повного вузла вимагає сотні гігабайт для зберігання даних. Усічена версія повного вузла, доступна в Bitcoin Core, що дозволяє знизити мінімальний обсяг збереженої історії і виходів транзакцій (UTXO) до декількох гігабайт, але і така установка вимагає повної «прокачування» блокчейна. Тому розробники вже давно намагаються спростити розгортання і зробити можливості повного вузла доступними для більшої кількості користувачів.
Utreexo визначає розмір «стану» повного вузла, який показує актуальну інформацію про те, кому належить скільки BTC. Utreexo скорочує мінімальний розмір цього стану з приблизно чотирьох гігабайт до менш кілобайта.
«Utreexo – це нова технологія масштабування Биткоина, яка може зробити повні вузли менше і швидше без втрат для конфіденційності і безпеки», – написав Драй в своєму блозі.
Міні-сайт
Повні вузли Биткоина містять інформацію про кожній коли-небудь здійсненої транзакції і на сьогоднішній день розмір одного вузла становить 200 ГБ. Усічений повний вузол здатний скоротити розмір історії транзакцій до 500 Мб. Але це не вирішує проблему зберігання невитрачених виходів (UTXO), які мають розмір трохи менше 4 ГБ.
База даних UTXO швидко зростає, і ймовірно, продовжить збільшуватися, що ускладнить роботу повних вузлів. Але Utreexo може вирішити цю проблему. За допомогою нової, незвичайної криптографії можна замінити більшу частину стану UTXO одним крихітним криптографічним доказом, який займає набагато менше місця.
«Utreexo – це новий динамічний акумулятор на основі хеш-функції, що дозволяє вмістити мільйони невитрачених виходів менш ніж в одному кілобайті – це настільки мало, що їх можна було б записати на аркуші паперу», – пояснює Драй на веб-сайті MIT DCI.
Заміна SPV?
Розробники давно намагаються зменшити розмір повного вузла. Спрощена перевірка платежів (SPV) – одна з найпопулярніших версій полегшеного вузла, використовувана Electrum та іншими гаманцями.
Utreexo схожий на SPV в тому, що вимагає набагато менше місця на комп’ютері, ніж класичний повний вузол. Але вузли SPV не зберігають конфіденційність користувача і більш схильні до атак, ніж вузли Utreexo.
Оскільки Utreexo має переваги в області безпеки, Драй сподівається, що він може послабити домінуюче положення вузлів SPV, якщо розробка Utreexo піде так, як планувалося.
«Я думаю, було б чудово, якби Utreexo замінив SPV в деякій мірі, надавши користувачу подібний Electrum інтерфейс, але з безпекою Bitcoin Core», – сказав він.
Проте він не думає, що Utreexo повністю замінить SPV, так як SPV все ще легше запустити.
«Вузли Utreexo важче, ніж SPV, але легше, ніж поточні повні вузли, тому деякі користувачі SPV можуть переключитися на Utreexo. Крім того, деякі користувачі повних вузлів також віддадуть перевагу новому рішенню», – сказав він.
Він вважає, що, оскільки вузли Utreexo набагато простіше запускати, вони будуть зустрічатися набагато частіше, ніж звичайні повні вузли.
«У довгостроковій перспективі я виразно бачу, як майже всі повні вузли будуть використовувати дизайн, подібний Utreexo. Вузли, які зберігають усі стан та історію, будуть більше схожі на поточні веб-сайти оглядачів блокчейна, або на сервери Electrum. Збережуться і класичні повні вузли, але і звичайні користувачі не будуть їх запускати», – сказав Драй.
Подальший розвиток
Розробники Utreexo висунули доказ концепції, показує, що цю ідею можна перетворити в реально працюючий продукт. Але їм ще належить виконати велику роботу, включаючи усунення помилок, щоб міні-сайт був придатний для використання із справжніми биткоинами.
«Клієнт поки працює в тестовому мережі Биткоина і його не рекомендується використовувати з справжніми BTC. У коді вже виявлені помилки, але ми швидко виправляємо їх», – пише Драй.
Розробники прагнуть зробити вузол Utreexo сумісним з вузлами, уже працюючими в мережі Биткоина. Для цього потрібно модифікувати Bitcoin Core, що може бути небезпечно. Utreexo – це «значне переосмислення того, як працює Биткоин, зміна критично важливого коду», пише Драй.
«Ймовірно, буде важко запровадити код Utreexo в Bitcoin Core, і для цього є вагома причина. Ми хочемо бути впевнені, що не створимо проблем в системі, що управляє грошима багатьох людей», – сказав Драй.
Тому розробники вирішили перевірити, чи зможуть вони додати можливості Utreexo в Btcd — альтернативний гаманець для Биткоина, тому що у нього набагато менше користувачів. Наступним кроком стане застосування напрацювань у Bitcoin Core.
Thanks!
Our editors are notified.