Verifikasi Contract di Explorer (hardhat-verify)
Penjelasan
Plugin `@nomicfoundation/hardhat-verify` menambahkan task `verify` yang mengunggah source code Solidity ke block explorer secara otomatis, memungkinkan siapa pun membaca kode asli di balik bytecode yang ter-deploy. Konfigurasinya membutuhkan API key explorer (misal Etherscan) yang didaftarkan di objek `etherscan` pada hardhat.config.js. Perintah dijalankan lewat `npx hardhat verify --network <nama> <alamat> <argumen_constructor...>`. Kalau contract punya constructor dengan parameter, argumen itu dituliskan langsung setelah alamat, sesuai urutan parameter constructor aslinya.
Contoh Konsep
# hardhat.config.js perlu:
# etherscan: { apiKey: process.env.ETHERSCAN_API_KEY }
# Verifikasi contract tanpa constructor argument
npx hardhat verify --network sepolia 0xCONTRACT_ADDRESS
# Verifikasi contract dengan constructor argument (string, string)
npx hardhat verify --network sepolia 0xCONTRACT_ADDRESS "MyToken" "MTK"
Praktikum
Deploy contract SimpleBank ke Sepolia lewat script deploy.js, catat alamatnya, lalu verifikasi memakai npx hardhat verify.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Kalau constructor argument kompleks (array/struct), gunakan file `--constructor-args arguments.js` yang meng-export array argumen, alih-alih menuliskan semuanya di command line.