Токенизация облигации CatoBond, история и инструкция
На этой странице будет личный рассказ Соза о том, как он создавал для заказчика токен CatoBond на блокчейне Stellar. Здесь будет описание шагов, с объяснением зачем они сделаны, и как.
Предыстория
Като (предприниматель и трейдер) решил познакомиться с токеномикой Монтелиберо сразу на практике, и выпустить облигации с гарантией.
Обеспечение
В начале этой истории Като отложил из своих активов ≈5000 €, и стал искать как купить токенов МТЛ-фонда. Во-первых нужно было выбрать MTL или MTLRECT. На конец 2024 года отличие в том, что первые позволяют потребовать у фонда обратный выкуп по цене, близкой к балансовой, но не дают голоса в управлении фондом, а вторые наборот, торгуются только на вторичном рынке, но их обладатели могут влиять на Совет Подписантов (СП) или сами туда входить. Выбор пал на вторых (MTLRECT), так как Като планирует играть в долгую, плюс ему интересно войти в СП.
Первый токены были куплены прямым свопом с XLM. Это вело к потере примерно 5%. Для следующих обменов предлагалось использовать чат взаимообменов https://t.me/eurmtl_club, чтобы там напрямую менять например USDT на EURMTL, а потом уже использовать для покупки прочих инструментов токеномики Монтелиберо.
Идея
Като биткоин-оптимист, он уверен, что в окне в 5 лет биток прирастёт сильно больше 100% от нынешнего курса. Он готов работать в долгую и предлагает тем, кто менее оптимистичен и не готов к риску, почти безрисковую сделку: дать денег Като, а он за них будет ежемесячно выплачивать 1%. Дать не под честное слово, а под залог в ликвидной форме.
После обсуждения с ним, в итоге пришли к следующей схеме:
- Создаётся отдельный аккаунт для залогового обеспечения.
- На нём настраивается мультиподпись 2 из 3, где будет сам Като, и два гаранта — не афелированных с ним.
- С этого же аккаунта делается эмиссия токенов.
- Гаранты дозволяют Като совершать операции по счету, которые не нарушают оферты.
- Гаранты же «дербанят» залог, если Като пропал, или просто нарушает оферту.
Реализация
Аккаунт-эмитент
Сперва нужно было создать отдельный от личного акка Като счет. Для этого с помощью сервиса вроде https://www.lumenaddr.com/ создался стеллар-аккаунт GC5M4DTKUZY36YHSEVO2ZJC3DZC67CLH5CA4FBYBJTCGTN46H2RWCATO
(далее просто CATO).
После чего была собрана большая и сложная транзакция (посмотреть), где:
- Активируется аккаунт переводом 10 XLM со счета Гаранта.
- Прописывается BSN тег «Name» со значением «CatoBond security deposit account»
- Указывается, что владельцем счета всё-таки является сам Като, установив BSN тег «Owner» со значением его личного стеллар-аккаунта:
GCZEMRJ2SVJICEG7EMPL7TTKUJR3Y62HCPH3MDEKZE5CDLF5P3SFI6NW
- Открываются линии доверия к токенам гарантийного обеспечения: MTLRECT и BTCMTL.
- Настраивается мультиподпись: Като, Соз, Агерис, у всех вес подписи «1», для всех видов транзакций устанавливается требование набрать 2 голоса.
- Добавляются операции перевода по 1 XLM со счетов участников мультиподписи на счет CATO, как выражение их согласия быть соучастниками этого вот всего.
В то же время сам Като со своего личного аккаунта указывает тег «OwnershipFull» со ссылкой на CATO аккаунт, подтверждая своё полное владение тем счетом.
Эмиссия
Вторым заходом была подготовлена транзакция с эмиссией:
- На аккаунте-эмитенте устанавливаются настройки для clawback. Они нужны для возможности принудительного выкупа токенов со счетов, где владелец не выставил их на продажу через встроенную биржу Стеллара.
- Открыта линия доверия к EURMTL, потому что забыли в первой странзакции. Да и вообще думали сперва, что гарантийный счет будет отдельно, а эмиссия отдельно, но вот переиграли, что объединим эти сущности.
- Создан ордер на обмен 10,000 CatoBond на EURMTL по курсу 1 к 1. Да, это можно сделать до фактической эмиссии токена.
Добавление обеспечения
Первое пробное пополнение гарантийного счета, в транзакции:
- С личного счета Като отправляется 1000 MTLRECT
- Так как у токенов есть сила голоса в МТЛ-Фонде, то делается делегация тегом «mtl_delegate» и адресом личного аккаунта Като.
- Так как на счета, где лежат токены фонда ежемесячно поступают дивиденды, то с помощью DATA параметра «mtl_donate=100» эти дивиденды перенаправляются тоже на личный аккаунт Като.
Оферта
Создание текста
Логика оферты рождалась в плотной переписке Соза и Като. По итогу этой переписке ChatGPT накидал итоговую структуру, учитывающую наши пожелания. После правки человеком, была готова первая версия оферты, в виде PDF файла. Наступило время эту оферту утвердить в блокчейне, указав внешним наблюдателям как возможность эту оферту найти, и убедиться, что именно этот текст эмитент утвердил.
Хостинг
Для этого файл с офертой был залит на сервис IPFS хостинга. Кто не знает, IPFS, это такое международное распределённое хранилище файлов. Чтобы им пользоваться на запись, нужно либо поднимать свою ноду, либо воспользоваться услугами держателей этих нод. В результате поисков Соз остановился на https://pinata.cloud — они в бесплатном аккаунте позволяют добавлять до 500 файлов, что более чем достаточно.
В итоге, залитый там файл стал доступен по прямой ссылке через любые так называемые гейты. Это такие сервисы, которые из обычного веба предоставляют доступ к содержимому IPFS по коду файла. Например, для первой версии оферты получился такой вот код QmYtBWbNgnBCBXqDqdF72hDqcBWxo9DcGmbiGWnsjCndmF
, и например через самый популярный IPFS гейт этот файл можно было получить по прямой ссылке https://ipfs.io/ipfs/QmYtBWbNgnBCBXqDqdF72hDqcBWxo9DcGmbiGWnsjCndmF.
Фиксация в блокчейне
Этот момент у нас мало стандартизирован в токеномике, поэтому Соз позволил себе самостоятельно придумать оптимальное решение.
- Посчитать SHA-256 хеш для файла с офертой.
- Сделать короткую ссылку на оферту: https://bit.ly/CatoBondOffer
- Сделать транзакцию, где на аккаунт CATO устанавливается три DATA параметра:
- AssetOfferHashCatoBond содержит SHA-256 хеш, он отвечает за фискацию текста.
- AssetOfferIpfsCatoBond хранит в себе IPFS ключ, для тех, кто в теме и знает как его использовать.
- AssetOfferLinkCatoBond с короткой ссылкой на текст оферты, чтобы её было легко найти.
Публикация
Были созданы канал + чат в телеграме, Соз поделился инсайдом про проект с некоторыми знакомыми, включая своих детей. Произошли первые продажи токена CatoBond, эмитент вывел поступления EURMTL на свой счет, дополнил гарантийный аккаунт ещё токенами BTCMTL, мало-помалу закрутилось.