

Para iniciar o processo de verificação de smart contracts com Hardhat, deve instalar o plugin Hardhat Etherscan. Este plugin integra o seu ambiente de desenvolvimento Hardhat com exploradores de blockchain como o BSCScan, permitindo verificar os smart contracts implementados na blockchain.
Instale o plugin executando o seguinte comando no diretório do seu projeto:
npm install --save-dev @nomiclabs/hardhat-etherscan
Após a instalação, aceda ao explorador de blockchain da sua rede e registe a chave API. Esta chave é necessária para autenticar os pedidos de verificação e será utilizada na configuração.
Depois de instalar o plugin, configure-o no ficheiro hardhat.config.js. Esta configuração garante que o Hardhat comunica com o explorador de blockchain e dispõe das credenciais necessárias para verificar os contratos.
Adicione as seguintes configurações ao hardhat.config.js:
require("@nomiclabs/hardhat-etherscan")Exemplo de ficheiro de configuração:
// hardhat.config.js
const { mnemonic, explorerApiKey } = require('./secrets.json');
require('@nomiclabs/hardhat-[etherscan](https://dex.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"
};
Confirme que as configurações de rede apontam para os endpoints RPC corretos e que a versão do compilador Solidity corresponde ao seu smart contract.
Com o plugin instalado e configurado, pode verificar o smart contract no explorador de blockchain. Antes de executar o comando de verificação, recomenda-se remover contratos desnecessários do projeto e limpar o diretório de artefactos, evitando que contratos não relevantes sejam incluídos no processo.
Execute o comando de verificação com a seguinte sintaxe:
npx hardhat verify --network mainnet DEPLOYED_CONTRACT_ADDRESS "Constructor argument 1"
Por exemplo, ao verificar um contrato na testnet, o comando será:
npx hardhat verify --network testnet 0xbF39886B4F91F5170934191b0d96Dd277147FBB2
Após a execução, verá uma confirmação de verificação:
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://dex.gate.com/crypto-wiki/article/849b8dd7-2cc3-4d63-90ea-8438c4ed8a17) on Etherscan.
Esta saída indica que o smart contract foi verificado com sucesso e está disponível publicamente no explorador de blockchain.
Verificar smart contracts com Hardhat verify e exploradores de blockchain é um processo simples que reforça a transparência e segurança no ecossistema blockchain. Ao instalar o plugin Hardhat Etherscan, configurar corretamente o ficheiro hardhat.config.js com a chave API e definições de rede, e executar o comando de verificação, garante que os contratos implementados estão verificados e auditáveis na blockchain. Este procedimento fortalece a confiança de utilizadores e stakeholders ao tornar o código fonte do contrato público para validação e revisão.
Hardhat é um ambiente de desenvolvimento para smart contracts Ethereum que permite compilar, implementar, testar e depurar código de forma eficiente em redes locais e testnets.
Utilize ferramentas de verificação para confirmar que o bytecode corresponde ao código fonte. Submeta o código fonte, a versão do compilador e os parâmetros do construtor ao serviço de verificação. Após a validação, o código fonte do contrato fica público e fiável.
Verifique o endereço do contrato num explorador de blocos, analise o histórico de transações recentes, confirme se o token associado é autêntico e assegure que as funções do contrato correspondem ao objetivo declarado.











