Just want to make sure I can fully recover a geth wallet. There are many parts to a typical wallet file:


So basically theres the :

  1. address,
  2. the ciphertext
  3. the parameters
  4. kdf & kdfparameters
  5. mac address
  6. and id.
  7. version

What of that do I need to fully restore a wallet? All of it or are parts of it sufficient?

  • Restore from where? what you have in hand? Mark Chester s answer makes sense.
    – niksmac
    Mar 5, 2016 at 4:11

2 Answers 2


The keyfile follows the Web3 Secret Storage Definition.

I believe the parts of the keyfile that are not necessary for account recovers are the address and mac value. Technically the version, cipher, and kdf are not required since you could guess from the small set of possible choices for these.

Private key recovery

The password you provide is used to derive an encryption key by passing it through a key derivation function or KDF.

Once the encryption key has been derived the mac value can be used to verify the key (this step is optional)

The encryption key can then be used to decrypt the ciphertext which will return the private key.


The key file and your pasphrase

  • Yes, I understand that but when you have a paper wallet (print content of the keyfile) for example you can restore it using text only, so I wanted to better understand the anatomy.
    – mashup
    Mar 4, 2016 at 22:50
  • @mashup I don't see why you can't print the JSON string or even encode the JSON string into a QR code if that's what you're after? (But you'll also need the passphrase.)
    – linagee
    Mar 5, 2016 at 11:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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