Деплой смарт-контрактов в Cronos

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

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

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

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

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

Деплой смарт-контрактов в Cronos

Cronos — EVM-совместимый блокчейн от Crypto.com, работающий на базе Cosmos SDK с механизмом консенсуса Proof of Authority (переходит к PoS). С точки зрения деплоя контрактов — стандартный EVM, но есть нюансы с нативным токеном (CRO), RPC эндпоинтами и верификацией.

Сетевые параметры

Параметр Mainnet Testnet
Chain ID 25 338
RPC https://evm.cronos.org https://evm-t3.cronos.org
Explorer cronoscan.com testnet.cronoscan.com
Native token CRO TCRO
Block time ~5.6 секунд ~5.6 секунд

Конфигурация Hardhat

// hardhat.config.ts
import { HardhatUserConfig } from "hardhat/config";
import "@nomicfoundation/hardhat-toolbox";
import "@nomicfoundation/hardhat-verify";

const config: HardhatUserConfig = {
  solidity: {
    version: "0.8.20",
    settings: {
      optimizer: { enabled: true, runs: 200 },
    },
  },
  networks: {
    cronos: {
      url: process.env.CRONOS_RPC ?? "https://evm.cronos.org",
      chainId: 25,
      accounts: [process.env.DEPLOYER_PRIVATE_KEY!],
      gasPrice: 5000000000000, // 5000 gwei — Cronos использует высокие значения
    },
    "cronos-testnet": {
      url: "https://evm-t3.cronos.org",
      chainId: 338,
      accounts: [process.env.DEPLOYER_PRIVATE_KEY!],
    },
  },
  etherscan: {
    apiKey: {
      cronos: process.env.CRONOSCAN_API_KEY!,
    },
    customChains: [
      {
        network: "cronos",
        chainId: 25,
        urls: {
          apiURL: "https://api.cronoscan.com/api",
          browserURL: "https://cronoscan.com",
        },
      },
    ],
  },
};

Важно с gasPrice: Cronos использует нестандартно высокие числовые значения для gas price. Типичные значения 5000+ gwei в Wei — это нормально, не смущаемся. Фактическая стоимость транзакции в USD низкая из-за цены CRO.

Получение тестовых токенов

Для Cronos Testnet (chainId 338) тестовый TCRO получаем через официальный фосет: https://cronos.org/faucet. Ограничение — один запрос в сутки на адрес.

Деплой и верификация

# Деплой через Hardhat
npx hardhat run scripts/deploy.ts --network cronos

# Верификация
npx hardhat verify --network cronos DEPLOYED_ADDRESS "Constructor Arg"
# Foundry конфигурация
# foundry.toml
[profile.default]
solc_version = "0.8.20"

[rpc_endpoints]
cronos = "${CRONOS_RPC}"
cronos_testnet = "https://evm-t3.cronos.org"

[etherscan]
cronos = { key = "${CRONOSCAN_API_KEY}", url = "https://api.cronoscan.com/api" }
forge create src/MyContract.sol:MyContract \
  --rpc-url cronos \
  --private-key $DEPLOYER_PRIVATE_KEY \
  --verify \
  --etherscan-api-key $CRONOSCAN_API_KEY

Особенности Cronos

CRO как native token — в EVM контрактах CRO ведёт себя как ETH. msg.value, address.transfer(), payable функции работают стандартно. Wrapped CRO (WCRO) аналогичен WETH.

Cosmos IBC интеграция — Cronos может принимать активы из Cosmos экосистемы через IBC. Если контракт работает с bridged Cosmos assets, учитываем что адреса могут быть в формате Bech32 на уровне Cosmos, но в EVM слое это стандартные 0x адреса.

Finality — блоки финализируются быстро (~5-6 секунд). Для большинства dApp достаточно 1-2 подтверждения.

Совместимость — полная EVM эквивалентность. OpenZeppelin контракты, Uniswap v2/v3 форки, Chainlink Price Feeds (есть на Cronos mainnet) — всё работает без изменений.

Типичные проблемы при деплое

Nonce issues — если предыдущая транзакция зависла, следующий деплой падает с nonce error. Решение: отправить пустую транзакцию с тем же nonce и повышенным gas price для замены.

RPC нестабильность — публичный RPC evm.cronos.org иногда лагает. Для production используем платные ноды от Alchemy (есть поддержка Cronos) или Ankr.

Contract size limit — 24KB лимит как на Ethereum. При превышении — паттерн Diamond (EIP-2535) или разбивка на несколько контрактов.