Разработка некастодиального криптокошелька. Часть 1: Нам нужно много сетей.
Меня как СТО часто спрашивают, вот кошелек вы делаете, "ну что там такого сложного - взял и разработал". Опенсорс ими вообще пестрит, бесплатные, аудированные ("привитые и проученые к лотку" хочется добавить) решения есть на рынке.
Впереди целый цикл статей про кошельки, для нетерпеливых:
TLDR: Стратегическая цена добавления TRON = over price
Создание некастодиального кошелька для Bitcoin и Ethereum — амбициозная задача. Хотя криптографическая основа (сид-фразы) и интерфейс универсальны, настоящая сложность кроется в интеграции разных блокчейнов.
Добавление в этот список именно сети TRON, на первый взгляд логичное, на деле кардинально увеличивает затраты.
Две архитектуры, два «движка»
Интеграция сетей требует создания отдельных модулей. Для Bitcoin это модель UTXO (похожая на наличные деньги), требующая своей логики для расчета баланса из «купюр» и формирования транзакций со сдачей. Для Ethereum — простая модель аккаунта (как банковский счет) с оплатой «газа» за операции.
Ключевое преимущество Ethereum — синергия EVM: написав код один раз, его легко адаптировать для десятков других сетей (Polygon, BNB Chain и множество новых L2 сетей - их более 226 сейчас), экономя ресурсы.
Почему TRON всё усложняет
TRON ломает эту синергию. Несмотря на схожесть с Ethereum, он требует разработки третьего, независимого «движка».
Главная причина — уникальная модель ресурсов: вместо единого «газа» используются два разных ресурса — «Энергия» (для смарт-контрактов) и «Пропускная способность» (для простых переводов). Эта система требует:
* Совершенно новой логики для оценки комиссий.
* Сложного интерфейса для объяснения пользователю, почему транзакция не проходит и как «заморозить» TRX для получения ресурсов. Для упрощения подсчетов и экономии до 80% на комиссиях в TRON мы использовали сервис FeeSaver.
* Вдобавок, TRON использует собственные библиотеки (TronWeb) и форматы адресов, что заставляет вести полностью параллельную разработку, удваивая сложность.
* TRON даже при рисование архитектуры, изображенной на картинке, выделяется своей нелепостью. Плюс моя личная неприязнь к Джастину Сану делаем меня предвзятым при работе с TRON.
Вывод: Стратегическая ошибка?
Bitcoin и Ethereum — это два разных, но фундаментальных направления, охватывающих большую часть рынка. TRON — это третий, обособленный и ресурсоемкий путь, обнуляющий преимущества EVM-совместимости.
Поэтому для стартового продукта (MVP) стоит задать стратегический вопрос:
- оправдывает ли экосистема TRON практически удвоение сложности разработки, поддержки и потенциальное запутывание пользователей?