7 травня Олексій Замятін, винахідник проекту сумісності крос-ланцюгів Interlay, запропонував створити стандарт BRC-21, який би встановив повністю децентралізовані активи крос-ланцюга в мережі Bitcoin і використовував їх у Lightning Network.
Пропозиція визначає протокол для карбування та викупу токенів BRC-20 для біткойнів і з них, які були випущені в інших «джерельних» мережах, таких як Ethereum, Cosmos, Polkadot або Interlay. Таким чином, BRC-21 — це стандарт токенів, який дозволяє створювати та використовувати токени з інших ланцюжків у біткойн-блокчейні.
Що таке BRC-21?
За словами Замятіна, запропонований стандарт дозволить розгортати децентралізовані стейблкойни в Lightning Network або будь-які інші порівняльні платіжні протоколи, що є основним випадком використання. Активи BRC-21, з іншого боку, можуть використовуватися для представлення ETH, DOT, SOL та інших криптовалют на біткойнах.
Запропонований метод не вимагає довіри до будь-якої третьої сторони.
Interlay Labs також випустила документ V 0.1 про стандарт маркерів BRC-21. Згідно з описом документа, вміст BRC-21 все ще є, по суті, вмістом BRC-20, але на відміну від вмісту BRC-20, який «народився з повітря», BRC-21 має бути згенерований початковим ключем активу (наприклад, ETH , DOT, ATOM і DAI тощо), іншими словами, стандарт BRC-21 надає можливість карбувати версію BRC-20 ETH, DAI та інших онлайн-активів у мережі Bitcoin.
Випадки використання
Хоча можливо використовувати активи BRC-21 для представлення ETH, DOT, SOL та інших криптовалют на біткойнах, ключовим варіантом використання, який виникне в результаті цього стандарту, є розгортання децентралізованих стейблкойнів у Lightning Network або подібних платіжних протоколах.
Щоб зберегти прив’язку, децентралізованим стейблкоїнам, таким як MakerDAO, Liquity або RAI, потрібні складні процеси карбування, викупу та ліквідації. Через відсутність можливостей програмування ці протоколи не можна встановити безпосередньо на біткойн. Замість того, щоб витрачати зусилля на розробку протоколів для біткойнів, які можуть бути представлені декількома рядками коду в іншому місці, пропозиція стверджує, що цей повністю децентралізований підхід карбування та викупу міжланцюжкових активів у/з біткойна має набагато більше шансів досягти загального визнання.
Технічні вимоги
З технічної точки зору, крос-ланцюжок активів BRC-21 повинен спиратися лише на три компоненти для завершення, і очікується, що весь процес досягне повної децентралізації:
Спеціальний індексатор: змінюйте діяльність з монетного двору BRC-21, переказу та викупу біткойнів, а також статус контракту в ланцюжку SOURCE.
Контракт ланцюга SOURCE: керує процедурами карбування та викупу ланцюга SOURCE.
BTC-Relay: клієнтська програма BTC-light, розгорнута як смарт-контракт у вихідному ланцюжку, здатна перевіряти та інтерпретувати транзакції BTC.
Дивіться, наприклад, тут специфікації, тут перевірку реалізації концепції на Ethereum, а тут перевірену виробничу реалізацію в Rust на Interlay.
Протокол BRC-21
Розгорнути в мережі Bitcoin
Хоча Interlay Labs не проілюструвала розгортання активу BRC-21 на початковому ланцюжку в статті, варто згадати, як він розгортається в мережі Bitcoin.
Загалом реалізація токенів BRC-21 і BRC-20 схожа, однак є деякі відмінності в особливостях, наприклад:
Параметр «max», який раніше використовувався для вказівки максимальної подачі, більше не є необхідним, але його можна вибрати для заповнення; однак, оскільки максимальний запас початкового активу BRC-21 зазвичай уже визначено до початку послідовності, вибір лише додає додатковий рівень безпеки.
Параметр «lim», який використовувався для визначення лімітних монетних дворів, було вилучено, оскільки всі активи BRC-21 підлягають суворим обмеженням на монетний двір і викуп, тому немає необхідності обмежувати кількість токенів, які можна викарбувати в угода.
Параметр «джерело» вводиться для визначення тексту, з якого «імпортується» маркер. Це може бути рядок на зразок «Ethereum» або унікальний числовий ідентифікатор (потрібен узгоджений каталог)
Додайте поле «ідентифікатор» до вихідного ланцюжка, щоб визначити цільовий маркер, який може бути заповнений адресою контракту цього маркера.
{ "p": "brc-21", "op": "deploy", "tick": "30sResearcg", "max": "10000000" (необов'язково), "src": "CHAIN", "id": “contract-address-on-CHAIN” }

Розгорнути в ланцюжку SOURCE
Процедура DEPLOY залежить від реалізації ланцюжка SOURCE. Критерії розумного контракту CONTRACT такі:
Заблокуйте COIN і згенеруйте подію «Lock».
Розблокуйте COIN, лише якщо відповідна процедура «викупу» включена в транзакцію Bitcoin. Щоб перевірити та підтвердити (тобто розібрати) пов’язану транзакцію Bitcoin, використовуйте BTC-RELAY.
Це передбачає, що в ланцюжку реалізовано контракт BTC-RELAY або що в ланцюжку є вбудована клієнтська функція Bitcoin Lite.
як
Блокує X токенів COIN на CHAIN і карбує X bCOIN токенів BRC-21 на Bitcoin
Операція «монетний двір» на біткойнах визначається наступним чином (напис):
{ "p": "brc-21", "op": "mint", "tick": "bCOIN", "amt": "100", "src": "CHAIN" }
На біткойнах запишіть діяльність з карбування BRC-21, вказавши кількість видобутої монети в стовпці «amt» і ланцюжок джерела в полі «src».
Заблокуйте 100 монет у мережі та надайте стороні КОНТРАКТУ напис або ідентифікатор транзакції з доказом включення транзакції. Найпростішим методом є передача транзакції згортання біткойнів і маршруту Merkle-Tree, що підтверджує включення блоку біткойнів, за яким слідує виклик CONTRACT BTC-RELAY для завершення перевірки.
BRC-21 bCOIN буде прийнято індексатором як законний.
Трансфер
Операція TRANSFER залишається такою ж, як зазначено в BRC-20. стандарт:
{ "p": "brc-21", "op": "трансфер", "tick": "30sResearch", "amt": "100", }
Викупити
Токени X bCOIN записуються на біткойн, а X COIN розблоковується на CHAIN.
Операція «викупити» визначається наступним чином:
{ "p": "brc-21", "op": "redeem", "tick": "bCOIN", "amt": "1000", “dest”: “CHAIN”, “acc”: “account- у ЛАНЦЮЖКУ” }
Поле dest визначає цільовий ланцюжок і ПОВИННО збігатися з полем src в операції монетного двору. Поле acc визначає рахунок одержувача COIN на CHAIN.
Впишіть операцію «викупити» на біткойн, вказавши суму, призначення та ACC
Надішліть необроблені транзакції BTC і докази включення транзакцій до CONTRACT, який, у свою чергу, викликає BTC-RELAY для завершення перевірки
Якщо BTC-Relay повертає «true», КОНТРАКТ розблокує X COIN на рахунок, указаний у полі acc. Індексатори BRC-21 тепер вважатимуть X bCOIN спаленими та більше не відстежуватимуть їх у біткойнах.
