

Hardhatでスマートコントラクト検証を行うには、まずHardhat Etherscanプラグインの導入が必要です。このプラグインによって、Hardhat開発環境とBSCScanなどのブロックチェーンエクスプローラーが連携し、デプロイ済みスマートコントラクトの検証が可能となります。
プロジェクトディレクトリで、以下のコマンドを実行してプラグインをインストールしてください。
npm install --save-dev @nomiclabs/hardhat-etherscan
インストール後、利用するネットワークのブロックチェーンエクスプローラーにアクセスし、APIキーを取得します。APIキーは検証リクエストの認証に必要で、設定時に使用します。
プラグインのインストール後、hardhat.config.jsファイルで設定を行います。この設定によって、Hardhatがブロックチェーンエクスプローラーと通信し、必要な認証情報でコントラクト検証を実施できるようになります。
以下の内容をhardhat.config.jsに追加してください。
require("@nomiclabs/hardhat-etherscan")でHardhat Etherscanプラグインをインポート設定ファイル例は以下の通りです。
// hardhat.config.js
const { mnemonic, explorerApiKey } = require('./secrets.json');
require('@nomiclabs/hardhat-[etherscan](https://web3.gate.com/crypto-wiki/article/how-to-use-etherscan-to-navigate-the-blockchain-20251127)');
/**
* @type {import('hardhat/config').HardhatUserConfig}
*/
module.exports = {
networks: {
testnet: {
url: `https://data-seed-prebsc-1-e05a8b61d2d5ddd83ebdd5dc0ee2d25c6330ee4393a2d6a27465d41bc47f274a.bnbchain.org:2053`,
accounts: { mnemonic: mnemonic }
},
mainnet: {
url: `https://bsc-dataseed1.bnbchain.org:443`,
accounts: { mnemonic: mnemonic }
}
},
etherscan: {
apiKey: explorerApiKey
},
solidity: "0.5.12"
};
ネットワーク設定が正しいRPCエンドポイントを指し、Solidityコンパイラバージョンがコントラクトと一致していることを確認してください。
プラグインの導入と設定が済んだら、ブロックチェーンエクスプローラーでスマートコントラクトの検証を実行できます。検証コマンド実行前に、不要なコントラクトを削除し、artifactsディレクトリをクリアしておきましょう。これにより、無関係なコントラクトが検証対象に含まれるのを防げます。
以下のコマンド構文で検証を実施します。
npx hardhat verify --network mainnet DEPLOYED_CONTRACT_ADDRESS "Constructor argument 1"
例えばテストネットの場合、以下のコマンドを実行します。
npx hardhat verify --network testnet 0xbF39886B4F91F5170934191b0d96Dd277147FBB2
成功すると、下記のような検証完了の出力が表示されます。
Nothing to compile
Compiling 1 file with 0.5.16
Successfully submitted source code for contract
contracts/BEP20Token.sol:BEP20Token at 0xbF39886B4F91F5170934191b0d96Dd277147FBB2
for verification on Etherscan. Waiting for verification result...
Successfully verified contract [BEP20Token](https://web3.gate.com/crypto-wiki/article/849b8dd7-2cc3-4d63-90ea-8438c4ed8a17) on Etherscan.
この出力は、スマートコントラクトが正常に検証され、ブロックチェーンエクスプローラー上で公開されたことを示します。
Hardhatのverify機能とブロックチェーンエクスプローラーは、スマートコントラクトの透明性と安全性を高めるためのシンプルな検証プロセスを提供します。Hardhat Etherscanプラグインの導入、hardhat.config.jsファイルへのAPIキーとネットワーク設定の追加、検証コマンドの実行により、デプロイ済みコントラクトをブロックチェーン上で検証・監査できます。これにより、ユーザーや関係者はコントラクトソースコードを公開でレビュー・検証でき、信頼性が向上します。
HardhatはEthereumスマートコントラクトの開発環境です。ローカルやテストネットで、コードのコンパイル、デプロイ、テスト、デバッグを効率的に行えます。
検証ツールでバイトコードとソースコードの一致を確認します。コントラクトソース、コンパイラバージョン、コンストラクタパラメータを検証サービスへ提出しましょう。検証が完了すれば、コントラクトソースが公開され信頼されます。
ブロックチェーンエクスプローラーでコントラクトアドレスを確認し、直近のトランザクション履歴を調査します。関連するトークンが正当か、コントラクトの機能が目的に合致しているかをチェックしてください。











