DeFi на біткоіні

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті.

Іноді блокчейн біткоіна критикують за досить слабо розвинену мову написання логіки транзакцій. Не дивуйтесь, вона там є, і досить давно, проте набір можливостей, рівно як і зручність імплементації залишає бажати кращого. Не в останню чергу завдяки цьому факту з’явився проект RSK (Rootstock).

Що таке RSK

Якщо коротко — смарт-контракти на біткоіні. Якщо Ви думали на якому блокчейні запускати свій DeFi, то варто розглянути і такий варіант. До того моменту, як у основній мережі біткоіна не відбудеться прийняття taproot, буде складно імплементувати логіку транзакцій відмінну від примітивної. А поки можна скористатись цим протоколом другого рівня, прив’язаним до біткоіна.

Який зв’язок RSK та Ethereum

RSK — імплементація сумісної з Ethereum VM. Це означає що, з мінімальними модифікаціями, можна смарт-контракт, який працює на Ethereum, запустити поверх біткоіна.

В реальності це виглядає так: є source code якогось solidity контракту, і є код міграцій для запуску цього контракту на блокчейні Ethereum, тоді просто замінивши адресу ноди Ethereum, на адресу ноди RSK і, відповідно, замінивши акаунти з коштами можна пробувати проводити міграції. JSONRPC ноди RSK відповідає такому у ethereum-go. Що цікаво, референсна імплементація ноди RSK написана на JAVA (tm).

Який зв’язок RSK та Біткоіна

RSK — сайдчейн біткоіна, один з перших, що був імплемнтований. Ця характеристика означає, що RSK прив’язаний до біткоіна у тому сенсі, що RSK використовує BTC, як засіб оплати у відношенні 1 до 1.

Що таке сайдчейн

Сайдчейн — це реалізація блокчейну, що є комплиментарною з блокчейном біткоіна, і може бути безпосередньо прив’язана до ноього. Посилання на whitepaper.

Важливо зауважити, що прив’язка двобічна, тобто кошти з сайдчейну також переносяться в основну мережу.

Цікава властивість сайдчейнів у тому, що крах сайдчейна ніяк не відобразиться на основному блокчейні.

Як реалізовано міст між біткоіном і RSK

Для того щоб у RSK з’явились біткоіни, потрібно туди їх переказати, так як це сайдчейн, достатньо просто відправити кошти (BTC) на адресу, яку можна отримати з контракта федерації RSK. Цей контракт один з попередньо встановлених у RSK і він гарантує, що кошти переведені у RSK у пропорції 1:1 з’являться на балансі адреси, яку можна згенерувати з приватного ключа адреси біткоіна. Тобто адреса в мережі RSK буде відрізнятись на вигляд, але приватний ключ буде тим же (в силу того, що використовується одна і та ж еліптична крива через libsecp256k1). Інша цікава характеристика контракту федерації RSK у тому, що члени федерації гарантують виконання цього контракту в дві сторони за допомогою hardware security modules, які в собі містять логіку консенсусу федерації. І загалом це дозволяє проводити транзакції у зворотній бік, і виводити кошти з RSK у мережу біткоіна.

Ще один попередньо встановлений контракт — REMASC. Він розподіляє винагороду за блоки між майнерами мережі і членами федерації, адже в RSK винагорода за блок — це лише спалений газ за виконання транзакцій.

Як забезпечується цілісність даних

Логічним буде питання, а як ця мережа гарантує, що ніхто не порушив консенсус? І, як не дивно, забезпечено все proof-of-work алгоритмом, щоправда не зовсім стандартним. RSK використовує mergemining для забезпечення цілісності мережі. Це такий майнінг, при якому майнінг пули біткоіна валідують ще й блоки RSK, і, для впевненості, включають інформацію про блоки RSK у блокчейн біткоіна. До речі блоки в RSK майняться приблизно за 30 секунд, і тому в блокчейні біткоіна відмічаються не всі блоки, а лише з певною періодичністю. Ще одним фактором, який на це впливає, є підтримка майнінг пулом мерджмайнінга. Якщо вірити інформації на офіційному сайті проекту, приблизно 40% майнінг пулів підтримують даний проект. (якби це було 40% хешрейта біткоіна, то RSK блокчейн синхронізувався би в двох з п’ти блоків біткоіна, або раз на 50 блоків RSK, в середньому).

Які контракти розгорнуті на RSK

Досить часто код DeFi використовує сторонні контракти для свого функціонування. У мережі RSK для цього впроваджений RSK Infrastructure Framework. Це набір контрактів, що виконують досить звичні функції, на кшталт сервісу імен, чи оракулів. Якщо потрібне щось специфічне, і його solidity-код доступний у відкритому доступі, то його можна просто розгорнути і використовувати.

Посилання на документацію проекту.

PS: вперед за новими cryptokitties (чи NFT, як їх зараз називають)

👍НравитсяПонравилось1
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Наконец-то на DOU появилось хоть что-то серьезное о крипте и блокчейне, а то было впечатление, что единственная формула, известная здешнему сообществу, это BTC=MMM.

Учитывая пропускную способность биткойна, это должно быть забавно 👍

Подписаться на комментарии