Деплой смарт-контрактів у Cronos: налаштування, верифікація, помилки

Розгортання контрактів у мережі Cronos Ви написали смарт-контракт на Solidity, протестували на Goerli, але при деплої на Cronos mainnet транзакція зависла на півгодини через невірний nonce, а потім контракт не верифікувався — сканер не підтримував JSON-інтерфейс. Такі помилки ми бачимо регулярно,

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

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1003

Розгортання контрактів у мережі Cronos

Ви написали смарт-контракт на Solidity, протестували на Goerli, але при деплої на Cronos mainnet транзакція зависла на півгодини через невірний nonce, а потім контракт не верифікувався — сканер не підтримував JSON-інтерфейс. Такі помилки ми бачимо регулярно, тому зібрали перевірену конфігурацію, що виключає ці сценарії.

Наш досвід — 5+ років в EVM-розробці, 30+ проєктів на різних блокчейнах. Працюємо під ключ: від аудиту вимог до передачі документації та приватних ключів. Гарантуємо коректну верифікацію та оптимізацію газу. Якщо сумніваєтесь у налаштуваннях — отримайте консультацію, проведемо аудит вашої конфігурації за 2 дні.

Cronos — блокчейн від Crypto.com на базі Cosmos SDK з консенсусом PoA (переходить до PoS). EVM-сумісність майже повна, але є нюанси: нативний токен CRO, високі gasPrice (5000+ gwei) та власна інстанція Etherscan для верифікації. Детальніше в документації Cronos. Згідно з офіційними специфікаціями, finality блоків становить 5-6 секунд, що достатньо для більшості dApp.

Вартість газу на Cronos в десятки разів нижча, ніж на Ethereum, що дозволяє суттєво економити на транзакціях. Економія при деплої складного контракту може сягати 90% порівняно з Ethereum.

Як налаштувати Hardhat для деплою в Cronos?

Мережеві параметри

Параметр 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-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 використовує нестандартно високі числові значення — 5000 gwei в Wei це нормально. Фактична вартість транзакції в USD низька через ціну CRO.

Отримання тестових токенів

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

Як виконати деплой та верифікацію?

  1. Налаштуйте конфігурацію Hardhat або Foundry, вказавши параметри мережі та API-ключ Cronoscan.
  2. Отримайте тестові токени з крану для testnet.
  3. Розгорніть контракт командою npx hardhat run scripts/deploy.ts --network cronos або forge create.
  4. Верифікуйте контракт: для Hardhat — npx hardhat verify --network cronos DEPLOYED_ADDRESS "Constructor Arg", для Foundry — з флагом --verify.
# Hardhat npx hardhat run scripts/deploy.ts --network cronos npx hardhat verify --network cronos DEPLOYED_ADDRESS "Constructor Arg" # Foundry forge create src/MyContract.sol:MyContract \ --rpc-url cronos \ --private-key $DEPLOYER_PRIVATE_KEY \ --verify \ --etherscan-api-key $CRONOSCAN_API_KEY 
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" } 

Які проблеми вирішує перевірена конфігурація?

Nonce issues

Якщо попередня транзакція зависла, наступний деплой падає з помилкою nonce. Рішення: відправити порожню транзакцію з тим самим nonce та підвищеним gas price для заміни. Стандартна практика для всіх EVM-мереж, але на Cronos через високий gas price потрібно точно розрахувати bump.

RPC нестабільність

Публічний RPC evm.cronos.org іноді лагає. Для production використовуйте платні ноди від Alchemy (підтримує Cronos) або Ankr. Ми в проєктах ставимо кілька RPC в url та реалізуємо fallback — це знижує ймовірність збою.

Contract size limit

Ліміт на розмір контракту — 24KB, як на Ethereum. При перевищенні застосовуйте паттерн Diamond (EIP-2535) або розбивайте логіку на кілька контрактів.

Порівняння Hardhat і Foundry: що вибрати для деплою в Cronos?

Критерій Hardhat Foundry
Швидкість деплою Середня (TypeScript компіляція) Висока (компіляція на Rust)
Верифікація Плагін hardhat-verify Вбудована через --verify
Гнучкість налаштування Широкі можливості (плагіни) Менша екосистема
Підтримка форків Є (hardhat node) Є (anvil)

Foundry перевершує Hardhat за швидкістю в 2-3 рази, що особливо помітно при частих деплоях. Однак Hardhat залишається більш гнучким завдяки плагінам.

Оцінка вартості газу

Операція Газ (приблизно) Коментар
Простий переказ CRO 21,000 Стандартний EVM
Деплой ERC-20 контракту ~1,200,000 Залежить від оптимізації
Деплой складного контракту зі сховищем ~3,500,000 SLOAD/SSTORE
Виклик функції запису ~50,000 Звичайний виклик

Завдяки низькій ціні CRO витрати на газ для деплою значно нижчі, ніж на Ethereum. Вартість наших послуг розраховується індивідуально.

Які особливості Cronos потрібно враховувати?

  • CRO як native token — в EVM контрактах CRO поводиться як ETH. msg.value та payable працюють стандартно. Wrapped CRO (WCRO) аналогічний WETH.
  • Cosmos IBC інтеграція — через Cosmos SDK можна приймати активи з Cosmos екосистеми. Адреси можуть бути в Bech32 на рівні Cosmos, але в EVM-шарі це стандартні 0x-адреси.
  • Finality — блоки фіналізуються за ~5-6 секунд. Для більшості dApp достатньо 1-2 підтверджень.
  • Сумісність — OpenZeppelin контракти, Uniswap v2/v3 форки, Chainlink Price Feeds (є на mainnet) — все працює без змін.

Що входить у роботу?

При замовленні деплою смарт-контрактів у Cronos ви отримуєте:

  • Аналіз та аудит контракту (security check)
  • Налаштування скриптів деплою для Hardhat або Foundry
  • Конфігурацію верифікації на Cronoscan
  • Навантажувальне тестування на testnet
  • Передачу документації, приватних ключів та доступів до RPC
  • Підтримку протягом 2 тижнів після деплою

Типові помилки та їх рішення

На практиці найчастіше зустрічаються nonce error — він усувається заміною завислої транзакції з підвищеним gas price; проблеми верифікації — перевірте apiURL в конфігурації; помилка out of gas — для складних контрактів збільшуйте ліміт газу до 20-50 мільйонів. Якщо зіткнулися з цими або іншими проблемами — зв'яжіться з нами, ми допоможемо розібратися та доб'ємося успішного деплою за 1-2 дні. Замовте деплой під ключ або отримайте консультацію з налаштування.