0

My friend said to me that he has his seed saved in Google Drive and that he is absolutely safe even if someone found it out. He even gave me his seed to try to break it. I know that all I have to do is brute-force each word in the seed from bip-39 list, so I just need 2048 * 24 (it's 24 word seed) iterations. How can I do that? How can I send a request to the mainnet and check if the seed is valid? Thanks.

  • Mainnet doesn't "know" anything about seeds, only about private keys. – goodvibration Jul 8 at 4:48
  • @goodvibration Ok, how can I generate from a seed a public / private keys, then addresses, and check if in any it has ether? – good_evening Jul 8 at 4:48
  • I know how to do that with a password, not with a seed. If you know how to do the missing part (getting the password from the seed), then my knowledge might help you. – goodvibration Jul 8 at 4:53
  • Just send me the seed and I'll prove that for you :D – Giuseppe Bertone Jul 24 at 1:16
1

You can use following to generate private key and address from seed phrase and check if address has some eths on main-net.

const hdkey = require("ethereumjs-wallet/hdkey")
const bip39 = require("bip39")

async function generateAddress(mnemonic){
  try {
    const seed = await bip39.mnemonicToSeed(mnemonic)
    const rootKey = hdkey.fromMasterSeed(seed)
    const hardenedKey = rootKey.derivePath("m/44'/60'/0'/0")
    let i = 0;
    const childKey = hardenedKey.deriveChild(i)
    const wallet = childKey.getWallet()
    const address = "0x" + (wallet.getAddress()).toString("hex")
    const privateKey = (wallet.getPrivateKey()).toString("hex")
    return {
      address, privateKey
    }
  } catch(error) {
    throw error;
  }
}

Note that; there are some assumptions like; drive Path is m/44'/60'/0'/0 and child index is 0. Multiple keys can be generated from same seed by increamenting value of i

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.