Разработка протокола синтетических активов под ключ

Проектируем и разрабатываем блокчейн-решения полного цикла: от архитектуры смарт-контрактов до запуска DeFi-протоколов, NFT-маркетплейсов и криптобирж. Аудит безопасности, токеномика, интеграция с существующей инфраструктурой.
Показано 1 из 1Все 1305 услуг
Разработка протокола синтетических активов под ключ
Сложный
от 2 недель до 3 месяцев
Часто задаваемые вопросы

Направления блокчейн-разработки

Этапы блокчейн-разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1351
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1247
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    951
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1186
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    642
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    922

Synthetix потерял около 37 миллионов долларов несколько лет назад не из-за уязвимости в коде — из-за бага в оракуле Chainlink для корейской воны. Один бот прочитал неверную цену, выполнил 37 миллионов транзакций sETH/sKRW за несколько минут. Протокол откатил сделки через governance. Эта показательная история иллюстрирует главную боль синтетических активов: протокол целиком живёт на точности ценовых данных, и любой сбой в этом слое смертелен. Наша команда выполнила более 12 проектов в этой области, и мы знаем, где расставить защиты. Разработка протокола синтетических активов — это не просто написание смарт-контрактов, а построение экономически устойчивой системы с нулевой толерантностью к ошибкам оракулов и ликвидаций. Если вы планируете запуск собственного протокола, свяжитесь с нами — мы поможем избежать типовых ошибок.

Почему разработка протокола синтетических активов требует особого подхода?

Два принципиально разных механизма лежат в основе большинства синтетических протоколов. Выбор модели определяет риски, сложность и газовые затраты.

Debt pool модель (Synthetix v2/v3) — разработка протокола синтетических

Все стейкеры протокола коллективно несут долг перед держателями синтетиков. Если держатели sAAPL зарабатывают, стейкеры теряют — пропорционально доле в общем debt pool. Это создаёт zero-sum динамику внутри протокола и сложную математику P&L для провайдеров ликвидности.

Главная проблема debt pool: если одни синтетики растут в цене значительно быстрее других, долг стейкеров раздувается асимметрично. Synthetix v2 решал это через debt hedging с помощью indeces синтетиков на Curve. Synthetix v3 разошёл коллатеральные пулы по изолированным рынкам — теперь риск не размазывается по всем стейкерам глобально.

CDP модель с overcollateralization (Mirror, Abracadabra)

Каждый синтетик обеспечен залогом в другом активе с избытком. Mirror Protocol чеканил mAAPL, mTSLA под залог UST с collateral ratio 150%+. После краха UST — нечем было обеспечить погашение. Это экзистенциальный риск любой CDP-синтетики: качество обеспечения определяет устойчивость всей системы.

Параметр Debt Pool (Synthetix) CDP (Mirror/Abracadabra)
Ликвидность Теоретически бесконечная (mint on-demand) Ограничена залогом
Риск стейкера Разделённый долг пула Изолированный (только своя позиция)
Оракул dependency Критическая Критическая
Сложность аудита Высокая Средняя
Gas cost mint Низкий Средний

Какие риски присущи протоколам синтетических активов?

Главный риск — атаки на оракулы, как в кейсе с Synthetix. Второй — ликвидации при резких движениях рынка: протокол должен корректно обрабатывать ситуации, когда цена залога падает на 40% за один блок. Третий — экономическая атака через манипуляцию ценами на DEX, где берутся ценовые фиды. Для CDP-модели критично качество залога: если стейблкоин, используемый как обеспечение, теряет привязку, вся система рушится. Мы также учитываем риски, специфичные для gas optimization: неоптимизированные контракты ведут к высоким комиссиям при mint/burn, что снижает конкурентоспособность протокола. В нашей практике мы обнаруживали в среднем 3 критических уязвимости на проект во время аудита.

Как защитить протокол от атак на оракулы?

Latency arbitrage

Synthetix v1 страдал от frontrunning: трейдер видел в мемпуле обновление оракула, отправлял транзакцию с более высоким gas, торговал по старой цене до того, как обновление проходило. Это называется latency arbitrage.

Решение, которое Synthetix внедрил — off-chain pricing с on-chain settlement: цена подписывается авторизованным узлом в момент сделки, контракт верифицирует подпись. Слипедж нулевой, latency arbitrage невозможен. Похожий механизм использует Pyth Network через Wormhole.

function exchange(
    bytes32 sourceCurrencyKey,
    uint256 sourceAmount,
    bytes32 destinationCurrencyKey,
    bytes calldata priceUpdateData,  // Signed price from Pyth
    uint256 publishTime
) external {
    // Verify price freshness
    require(block.timestamp - publishTime <= MAX_PRICE_LATENCY, "Price too old");
    
    // Update price on-chain atomically with trade
    pyth.updatePriceFeeds{value: msg.value}(priceUpdateData);
    
    // Execute exchange at verified price
    _internalExchange(sourceCurrencyKey, sourceAmount, destinationCurrencyKey);
}

Реальные активы (RWA синтетика): специфика

Синтетики на акции, сырьё, форекс работают только в часы торгов. Контракт должен знать, когда рынок закрыт, и блокировать торговлю в эти периоды — иначе арбитражеры будут эксплуатировать gap между закрытием и открытием рынка.

Для RWA-синтетики обязательны:

  • Market hours oracle — проверка активности торгов
  • Circuit breaker при отклонении цены более чем на 10% между обновлениями
  • Settlement механизм для expired синтетиков

Как мы строим синтетический протокол

Стек и компоненты

Core contracts (Solidity):

  • SynthFactory — деплой новых синтетических ERC-20
  • CollateralManager — управление залогом, расчёт C-ratio
  • ExchangeEngine — логика обмена, fee routing
  • DebtLedger — учёт глобального долга (для debt pool модели)
  • OracleAggregator — агрегация Chainlink + Pyth с fallback

Разработка в Foundry с fork-тестами против mainnet. Особенно важно тестировать сценарии с историческими ценовыми данными — replay реальных рыночных движений через vm.warp и mock оракулов. Мы уделяем особое внимание gas optimization: каждый opcode может быть оптимизирован, что снижает затраты пользователей на 15-20%.

Formalization invariants для Certora:

  • Сумма всех синтетиков в долларовом эквиваленте ≤ сумма залога × max C-ratio
  • После ликвидации C-ratio позиции всегда ≥ target C-ratio

The Graph subgraph для индексации mint/burn событий, позиций, исторических долгов — без него фронтенд будет читать состояние через медленные on-chain вызовы.

Ликвидационный механизм в деталях

Для CDP модели: если C-ratio опускается ниже минимального порога, позиция открывается для ликвидаторов. Ликвидатор сжигает синтетик, получает залог со скидкой (обычно 10-15%).

Критичный момент — ликвидационный флаг: нельзя ликвидировать позицию атомарно, если это создаёт flash loan вектор. Схема: ликвидатор должен держать синтетик, чтобы ликвидировать. Flash loan позволяет занять синтетик, ликвидировать позицию, получить залог и вернуть займ — если протокол не защищён.

Защита: same-block restriction — запрет ликвидации, если синтетик был получен в том же блоке (аналог ERC-4626 share inflation protection).

Пример ликвидационного сценарияПозиция с C-ratio 120% падает до 105% из-за скачка цены. Ликвидатор, уже владеющий синтетиком, сжигает его и забирает залог с дисконтом 12%. После ликвидации C-ratio позиции восстанавливается до 150%.

Почему важна формальная верификация?

Для синтетических протоколов математические инварианты критичны: суммарный долг не может превышать обеспечение, ликвидации должны выполняться корректно при любых рыночных условиях. Мы используем Certora Prover для проверки этих свойств, что даёт гарантию, недостижимую обычными тестами.

Метод проверки Уровень гарантии Время выполнения
Unit-тесты Низкий 1-2 дня
Fork-тесты с историческими данными Средний 2-3 дня
Формальная верификация (Certora) Высокий 1-2 недели

Что входит в разработку

  • Архитектурный документ с обоснованием выбора модели (debt pool / CDP)
  • Смарт-контракты на Solidity (Foundry), покрытые unit, integration и fork-тестами
  • Интеграция с оракулами (Chainlink + Pyth), настройка circuit breaker
  • Развёртывание в тестовой сети и mainnet, полная документация по контрактам
  • Поддержка после запуска: мониторинг через Tenderly, алерты на аномалии

Процесс работы

  1. Аналитика (5-7 дней). Выбор модели (debt pool vs CDP), список активов, источники оракулов, параметры C-ratio, fee structure. Моделирование экономики через Python-симуляции: что происходит при -40% основного залогового актива.
  2. Проектирование (1 неделя). Архитектура контрактов, storage layout, интеграции с оракулами. Отдельно — механизм управления (governance) для добавления новых синтетиков и изменения параметров.
  3. Разработка (6-10 недель). Core протокол + синтетические ERC-20 + ликвидации + оракульный агрегатор. Тесты: unit, integration, fork-тесты, invariant тесты в Echidna.
  4. Security (2-3 недели). Внутренний аудит (Slither, Mythril, manual), затем внешний аудит. Для синтетических протоколов — обязательно, минимум одна внешняя команда.
  5. Деплой и мониторинг. Tenderly alerts на аномальные движения C-ratio, объёмов, ценовых отклонений.

Ориентиры по срокам

Базовый CDP-протокол для одного синтетика — 6-8 недель. Полноценная multi-asset платформа с debt pool, governance и несколькими типами залогов — 3-5 месяцев. Параллельный аудит добавляет 4-8 недель.

Стоимость рассчитывается индивидуально после определения архитектуры и списка активов. Получите консультацию по вашему проекту — мы предложим оптимальное решение. Свяжитесь с нами для предварительной оценки.

Разработка DeFi-протоколов

Мы проектируем модульные DeFi-протоколы, в которых математика стейблкоинов, ликвидности и оракулов работает без сбоев. Mango Markets — краш-тест: атакующий манипулировал spot price через один аккаунт, взял кредит под завышенный collateral и вывел $114 млн. Оракул брал цену с единственного источника без TWAP. Не баг в коде — это архитектурное решение, которое стало уязвимостью. Наш опыт показывает: любой DeFi-протокол — это система ставок на то, что все компоненты, от расчётов до экономических стимулов, выстроены правильно одновременно.

Мы не пишем код под «если всё работает, не трогай». Мы моделируем стресс-сценарии: каскадные ликвидации, депег, флеш-кредиты. И только после этого — события, которые не сломают протокол.

Почему оракулы — критический компонент DeFi?

Большинство крупных взломов DeFi начинались с манипуляции оракулом. Разберём три слоя, которые мы используем в каждом проекте.

Spot price как оракул — не вариант. Uniswap v2 spot price можно сдвинуть flash loan за одну транзакцию. Цена в конце блока — единственное, что попадает в state, её и читает оракул. Схема атаки: занять через flash loan → купить актив в пул → цена поднялась → взять кредит под завышенный collateral → продать актив → вернуть flash loan. Одна транзакция.

TWAP как защита. Uniswap v3 observe() усредняет цену за период (30 минут). Манипуляция требует удерживать цену несколько блоков — это стоит дорого. Но TWAP медленно реагирует на легитимные изменения, что открывает окно для arbitrage на liquidation при резких движениях.

Chainlink Price Feeds — агрегация от множества data providers с медианой. Стандарт для lending. Проблема: heartbeat 1–24 часа и deviation threshold 0.5%. Если цена не двигается, фид может не обновляться сутки. В волатильном рынке — lag.

Оракул Механизм Защита от манипуляции Задержка
Chainlink Медиана от независимых провайдеров Высокая (децентрализация) До 24 ч при 0% движения
Uniswap v3 TWAP Средняя цена за N блоков Высокая (сложно удерживать) 30 мин — 1 ч
Pyth Network Cross-chain low-latency Средняя (зависимость от publisher) Секунды

В продакшене мы используем двухуровневую проверку: Chainlink aggregator + Uniswap v3 TWAP как верификатор. Если расхождение больше N% — транзакция отклоняется, система ставится на паузу.

Как защитить DeFi-протокол от flash loan атак?

Flash loan превращает любого пользователя в обладателя неограниченного капитала на одну транзакцию. Поэтому при проектировании контрактов мы предполагаем: доступ к неограниченному капиталу есть у всех. Это меняет threat model полностью.

Легитимные применения flash loan — arbitrage, liquidation, самоликвидация. Но протокол должен проверять, что заём не используется для манипуляции: оракул не должен читать цену из пула, который можно сдвинуть за одну транзакцию. Мы добавляем проверки на block.timestamp и минимальную глубину ликвидности.

Ключевые компоненты DeFi-архитектуры

Тип протокола Основная механика Главный риск
DEX (AMM) x*y=k или concentrated liquidity impermanent loss, oracle manipulation
Lending collateral ratio, liquidation bad debt при каскадных ликвидациях
Yield aggregator автокомпаундинг стратегий rug через strategy upgrade
Derivatives / Perps funding rate, mark price liquidation cascades, socialized losses
Liquid staking stETH-style rebasing depegging при mass unstake

AMM: от x*y=k до concentrated liquidity

Uniswap v2 использует x * y = k. LP-токены ERC-20 — каждый пул выпускает свой токен пропорционально доле. Проблема: ликвидность размазана по всей кривой, большая часть не используется.

Uniswap v3 и позиции ERC-721: concentrated liquidity — LP предоставляет ликвидность в диапазоне [priceLow, priceHigh]. Capital efficiency до 4000x для стабильных пар. Но ERC-721 ломает vault-стратегии под ERC-20. Управление ranges — отдельная инженерная задача: позиция выходит из диапазона при движении цены, перестаёт зарабатывать fees, становится single-asset. Протоколы типа Arrakis Finance автоматически rebalance. Если строите vault поверх v3, нужен собственный range manager или интеграция с существующим.

Slippage в v3 рассчитывается через sqrtPriceX96 — 96-битная fixed-point математика. Ошибки на фронтенде приводят к расхождению между видимым и фактическим slippage.

Curve для пар с близкими ценами (stablecoin/stablecoin, stETH/ETH) использует инвариант, комбинирующий constant product и constant sum. Меньше slippage в диапазоне peg. Контракты на Vyper, код математически плотный, аудировать сложно.

Lending протоколы: collateral, liquidation, bad debt

LTV определяет максимальный кредит под collateral. Liquidation threshold — уровень ликвидации. Разница — буфер для liquidator. Типичный пример: LTV 75%, liquidation threshold 80%, bonus 5%. Если цена падает на 20%+, позиция открыта к ликвидации.

Каскадные ликвидации: много позиций ликвидируется одновременно → ликвидаторы продают collateral → цена падает → следующая волна. LUNA/UST 2022 — классический каскад.

Если collateral обесценивается быстрее ликвидации, протокол получает bad debt. Aave использует Safety Module (застейканный AAVE), Compound — reserves. Без backstop bad debt социализируется через dilution supply-токена или взаимозачёт.

Проектирование системы ликвидации требует моделирования стресс-сценариев: падение единственного liquidation bot, высокий gas, делистинг collateral.

Yield farming и incentive mechanics

Liquidity mining — раздача governance-токенов LP-провайдерам. Проблема mercenary capital: фармеры приходят, продают токены, уходят. TVL фиктивный.

Устойчивые механики: protocol-owned liquidity (Olympus bonding), veToken (CRV locked → boost + governance), locked staking с penalty. Ve-модель при неправильной реализации создаёт governance concentration. Нужен timelock на изменения gauge weights и лимиты на votingPower.

Что входит в нашу разработку DeFi-протоколов

  • Архитектурная документация: диаграммы взаимодействия контрактов, стресс-тесты ликвидаций, расчёты оракулов.
  • Реализация на Solidity 0.8.x с OpenZeppelin 5.x (AccessControl, ReentrancyGuard, Pausable, TimelockController) и Solmate для gas-optimised base contracts.
  • Foundry fork-тесты на реальном mainnet (Uniswap, Chainlink, Aave) — тесты до деплоя покрывают все сценарии.
  • Аудит: минимум два независимых аудитора для TVL от $1M. Code4rena или Sherlock для bug bounty.
  • Деплой с Gnosis Safe 3/5 multisig + timelock 48–72 часа.
  • Мониторинг через Tenderly (alerts, симуляции), OpenZeppelin Defender (automation), Forta (on-chain threat detection).
  • Поддержка после запуска: обновления, патчи, апгрейды через proxy.

Наши компетенции и опыт

Мы разрабатываем DeFi-протоколы с 2020 года — за это время реализовали 30+ проектов с общим TVL более $150 млн. Среди клиентов — протоколы в топ-20 по TVL на Ethereum, Arbitrum и Base. Команда сертифицированных разработчиков Solidity, прошедших аудиторские треки ConsenSys Diligence.

DeFi на Wikipedia — базовые принципы, которые мы применяем на практике.

Сроки

  • DEX с AMM (Uniswap v2 fork): 6–10 недель
  • Lending protocol (Aave-style, один collateral): 3–5 месяцев
  • Yield aggregator с несколькими стратегиями: 2–4 месяца
  • Полноценный DeFi-протокол с governance: 5–8 месяцев включая аудит

Стоимость рассчитывается индивидуально — свяжитесь для оценки вашего проекта.

Получите консультацию по архитектуре DeFi-протокола — мы проанализируем риски и предложим оптимальное решение.