Noob. Sorry :-(

I have a keystore file that I'm confident represents an account I'd like to retain/use. It's unclear how I can recreate (or reinstantiate) this account within a fresh Ethereum (node) deployment.

I'd like to reuse this because I used it with the Rinkeby faucet to request some Ether.

I thought I should be able to use 'geth account import' but:

Fatal: Failed to load the private key: encoding/hex: invalid byte: U+007B '{'

The account begins : 3df6... and I have the password ;-)

The keystore file is JSON:

  "address": "3df6...",
  "crypto": {
    "cipher": "aes-128-ctr",
    "ciphertext": "...",
    "cipherparams": {
      "iv": "..."
    "kdf": "scrypt",
    "kdfparams": {
      "dklen": 32,
      "n": 262144,
      "p": 1,
      "r": 8,
      "salt": "..."
    "mac": "..."
  "id": "..",
  "version": 3

I would appreciate guidance on how I may recreate it. I assume success would be, from within the console being able to see this account enumerate by personal.

Or am I missing something(s)?

OK, progress:

docker run \
--rm \
--interactive \
--net=host \
--tty \
--volume=$PWD/data-dir:/root \
--volume=$PWD/backups/.rinkeby/keystore:/keystore \
ethereum/client-go \
  --datadir=/root/.rinkeby \
  --keystore=/keystore \
  account list
INFO [05-22|21:38:35] Maximum peer count                       ETH=25 LES=0 total=25
Account #0: {3df6...} keystore:///keystore/TC--2018-00-00T00-00-00.000000000Z--3df6...

That's the account and it appears to be legitimate so, my new question is how do I import this so that I may use it when attaching this console to my node?

1 Answer 1


geth account import is for raw private keys. To use a wallet file, simply copy it into your keystone directory and it should appear with geth account list

  • Your suggestion was successful in my 'progress' update above accessing the account through a single, local node. I'll copy the file onto my remote node as you suggest. Thank you!
    – DazWilkin
    May 23, 2018 at 14:59
  • It worked! Thank you. Though I've encountered another issue where, if I represent the wallet (which I assume can/ought be treated as read-only) as a Kubernetes (!) volume mount of a Secret or ConfigMap (best practice), the node does not appear to detect the wallet which--I believe--is indicated by the presence|absence of the log entry Etherbase automatically configured. If instead of a Secret or ConfigMap, I use a regular disk and volume mount this, everything works :-(
    – DazWilkin
    May 23, 2018 at 23:23
  • If you post this as a separate question, someone who knows more about kubernetes might be able to help May 24, 2018 at 19:14
  • I think there's a bug in geth and I created a workaround: github.com/ethereum/go-ethereum/issues/16793
    – DazWilkin
    May 25, 2018 at 19:21

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.