Деплой смарт-контрактів у Arbitrum

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1306 послуг
Деплой смарт-контрактів у Arbitrum
Простий
від 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

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

Arbitrum — це Optimistic Rollup L2, сумісна з EVM на рівні байткоду. Переважна більшість Ethereum-контрактів деплоюються без змін. Але є нюанси, які спалюють в production: різниці в gas механіці, специфіка ArbOS, особливості фіналізації та бриджингу.

Чим Arbitrum відрізняється від Ethereum

Gas модель: Arbitrum використовує двокомпонентний gas. L2 execution gas — аналог Ethereum gas, стоїть дешево. L1 calldata cost — вартість публікації даних транзакції в Ethereum, автоматично додається до кожної транзакції. tx.gasprice на Arbitrum — не те саме, що на Ethereum; використовуйте ArbGasInfo precompile для точного розрахунку.

Block numbers: block.number на Arbitrum повертає L1 Ethereum block number (оновлюється ~раз у 12 секунд), а не Arbitrum block. Для Arbitrum-native номера блока — ArbSys(0x64).arbBlockNumber(). Контракти, що використовують block.number для timing (vesting, TWAP), можуть працювати неочікувано.

Block timestamp: block.timestamp відповідає реальному часу, оновлюється з кожним Arbitrum-блоком (~250ms). Це швидше, ніж Ethereum — може впливати на TWAP-оракули.

Precompiles: специфічні для Arbitrum адреси 0x64 (ArbSys), 0x6b (ArbGasInfo), 0x6c (ArbAggregator). Корисні для отримання L1 block number, gas pricing info.

Деплойментт через Hardhat/Foundry

// hardhat.config.ts
networks: {
    arbitrum: {
        url: process.env.ARBITRUM_RPC_URL || 'https://arb1.arbitrum.io/rpc',
        accounts: [process.env.PRIVATE_KEY!],
        chainId: 42161,
    },
    arbitrumSepolia: {
        url: 'https://sepolia-rollup.arbitrum.io/rpc',
        accounts: [process.env.PRIVATE_KEY!],
        chainId: 421614,
    },
}
# Foundry
forge create --rpc-url $ARBITRUM_RPC_URL \
    --private-key $PRIVATE_KEY \
    --etherscan-api-key $ARBISCAN_API_KEY \
    --verify \
    src/MyContract.sol:MyContract \
    --constructor-args arg1 arg2

Верифікація на Arbiscan: той же механізм, що Etherscan, окремий API ключ з arbiscan.io.

Розмір контракту та оптимізації

Ліміт 24KB зберігається. На Arbitrum газ дешевше, але calldata все ще стоїть грошей (L1 cost). Оптимізація calldata актуальна для часто вивільюваних функцій з великими аргументами.

Мости та токени

Canonical Arbitrum bridge для ETH та стандартних ERC-20. Для кастомних токенів — Arbitrum token bridge з реєстрацією. Якщо контракт управляє бриджем або працює з bridged токенами: враховувати, що WETH на Arbitrum — не той же адрес, що на Ethereum.

Орієнтири по термінам

Деплойментт готового контракту + верифікація: кілька годин. З аудитом сумісності, налаштуванням multisig ownership через Safe, деплойментом proxy (UUPS/Transparent) та скриптами деплойменту: 1-2 дні.