1

I don't know what is the problem here. When I run npx hardhat node I am getting only public keys. enter image description here

And this is my hardhat.config.ts configuration:

import "@nomiclabs/hardhat-waffle"; import "@typechain/hardhat"; import "hardhat-gas-reporter"; import "solidity-coverage"; import "./tasks/accounts"; import "./tasks/deploy"; import { resolve } from "path"; import { config as dotenvConfig } from "dotenv"; import { HardhatUserConfig } from "hardhat/config"; import { NetworkUserConfig } from "hardhat/types"; dotenvConfig({ path: resolve(__dirname, "./.env") }); const chainIds = { goerli: 5, hardhat: 31337, kovan: 42, mainnet: 1, rinkeby: 4, ropsten: 3, }; // Ensure that we have all the environment variables we need. const mnemonic: string | undefined = process.env.MNEMONIC; if (!mnemonic) { throw new Error("Please set your MNEMONIC in a .env file"); } const infuraApiKey: string | undefined = process.env.INFURA_API_KEY; if (!infuraApiKey) { throw new Error("Please set your INFURA_API_KEY in a .env file"); } function getChainConfig(network: keyof typeof chainIds): NetworkUserConfig { const url: string = "https://" + network + ".infura.io/v3/" + infuraApiKey; return { accounts: { count: 10, mnemonic, path: "m/44'/60'/0'/0", }, chainId: chainIds[network], url, }; } const config: HardhatUserConfig = { defaultNetwork: "hardhat", gasReporter: { currency: "USD", enabled: process.env.REPORT_GAS ? true : false, excludeContracts: [], src: "./contracts", }, networks: { hardhat: { accounts: { mnemonic, }, chainId: chainIds.hardhat, }, goerli: getChainConfig("goerli"), kovan: getChainConfig("kovan"), rinkeby: getChainConfig("rinkeby"), ropsten: getChainConfig("ropsten"), }, paths: { artifacts: "./artifacts", cache: "./cache", sources: "./contracts", tests: "./test", }, solidity: { version: "0.8.10", settings: { metadata: { // Not including the metadata hash // https://github.com/paulrberg/solidity-template/issues/31 bytecodeHash: "none", }, // Disable the optimizer when debugging // https://hardhat.org/hardhat-network/#solidity-optimizer-support optimizer: { enabled: true, runs: 800, }, }, }, typechain: { outDir: "typechain", target: "ethers-v5", }, }; export default config; 
3
  • If you scroll down dont you see the private keys? sometimes prints all public keys first and then their respective private key Commented Dec 7, 2021 at 16:04
  • No, there is no scroll at all. Commented Dec 7, 2021 at 16:04
  • 1
    You might have better luck posting this question in the Hardhat Discord server. Commented Dec 23, 2021 at 17:21

2 Answers 2

2

I think you included mnemonic in your hardhat network config as shown below. Remove mnemonic and it will work

hardhat: { // accounts: { // mnemonic, // }, chainId: chainIds.hardhat, }, 
0

i tweaked the node_modules and found this enter image description here

at node_modules/hardhat/src/builtin-tasks/node.ts

there is check that to output the private keys only if you have the default configuration in your hardhat.config.js

removing this boolean value isDefaultConfig and the if statements containing it has solved the problem for me

hardhat.config.js

require("@nomicfoundation/hardhat-toolbox"); task("accounts", "Prints the list of accounts", async (taskArgs, hre) => { const accounts = await hre.ethers.getSigners(); for (const account of accounts) { console.log(account.address); } }); /** @type import('hardhat/config').HardhatUserConfig */ module.exports = { solidity: "0.8.17", networks: { hardhat: { accounts: { mnemonic: "hello there test test test test test test test test junk junk", initialIndex: 0, count: 30, } } } }; 

before removing the check

enter image description here

after removing the check

enter image description here

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.