Verifikasi Kontrak
Verifikasi sumber kontrak Solidity di Rome melalui layanan Sourcify yang di-host — alur standar forge verify-contract dan hardhat-verify, badge di penjelajah Via.
Rome menjalankan layanan hosted Sourcify layanan verifikasi. Setelah Anda memverifikasi sebuah kontrak, source dan ABI-nya menjadi dapat direproduksi secara publik dan muncul dengan sebuah ✓ Source terverifikasi lencana di penjelajah blok Rome (Via).
Verifikasi bekerja dengan standar forge verify-contract dan hardhat-verify alur — Anda cukup mengarahkannya ke verifier milik Rome.
Endpoint verifier
Testnet & Devnet
https://verify.testnet.romeprotocol.xyz
Mainnet (Rubicon)
https://verify.mainnet.romeprotocol.xyz
Satu instance bersama melayani setiap chain testnet/devnet Rome — Anda memilih chain dengan flag standar --chain-id flag.
Foundry
Setelah melakukan deployment (lihat Deploy Kontrak Solidity):
forge verify-contract <CONTRACT_ADDRESS> src/MyContract.sol:MyContract \\
--verifier sourcify \\
--verifier-url https://verify.testnet.romeprotocol.xyz/ \\
--chain-id <YOUR_CHAIN_ID> \\
--compiler-version 0.8.20Jika konstruktor menerima argumen, berikan argumen tersebut agar bytecode cocok:
--constructor-args $(cast abi-encode "constructor(uint256)" 42)Anda juga dapat memverifikasi saat deployment dengan forge create … --verify atau forge script … --verify (Foundry menyimpulkan chain id dari --rpc-url).
Hardhat
hardhat-verify disertakan dengan Hardhat 3 toolbox. Arahkan penyedia Sourcify-nya ke verifier milik Rome di hardhat.config.ts dan jalankan hardhat verify:
Jika berhasil, verifier menautkan source yang dipublikasikan, misalnya https://verify.testnet.romeprotocol.xyz/repo-ui/<CHAIN_ID>/<ADDRESS>.
Memeriksa status verifikasi
Penjelajah membaca status verifikasi dari API verifier. Anda dapat menanyakannya secara langsung:
Kontrak yang terverifikasi mengembalikan sebuah match field:
exact_match— bytecode dan kecocokan hash metadata (cocok sempurna, "full").match— bytecode cocok; metadata sedikit berbeda (tetap merupakan kecocokan yang asli dan terverifikasi).404/null— belum diverifikasi.
Catatan
Verifikasi hanya memerlukan bytecode yang telah di-deploy + source dan pengaturan compiler yang Anda kirim — input yang sama seperti pada chain EVM mana pun.
Chain Rome baru secara otomatis ditambahkan ke verifier; jika Anda melakukan deployment ke chain baru dan verifikasi belum menemukannya, tunggu sebentar atau hubungi kami.
Terakhir diperbarui
Apakah ini membantu?