If I want to transfer an address from the satoshi client into a different client, how can I find its private key to do so?

To export a private key from your Satoshi bitcoin-qt client:

  1. launch your bitcoin client as usual and wait for it to load the blockchain and start up
  2. click on 'help' in the menu bar (top right)
  3. click on 'debug window'
  4. select the 'console' tab
  5. type: walletpassphrase "your walletpassphrase here" 600
  6. type: dumpprivkey [your Bitcoin address here]
  7. this will return the private key, you can copy it now; ensure you clear your clipboard/history afterwards
  8. type: walletlock
  • 1
    This answer would benefit from adding "How to get your public key"; as i don't know my public key. – Ian Boyd Apr 8 '13 at 1:48
  • The Bitcoin address is what is to be used there. I've edited it. – Stephen Gornick Oct 11 '15 at 3:19
  • FYI, if you didn't already encrypt the Bitcoin-QT wallet then skip the walletpassphrase part (line numbered 5. and 8.). – Stephen Gornick Oct 11 '15 at 3:21
  • #5 isnt clear :it tells you to type quote:"walletpassphrase "your walletpassphrase here" 600". unquote which gets you no where.. and number 6 is the same – David Crawford Aug 11 '17 at 22:02
  • 1
    @DavidCrawford: Did you try to replace the three words "your walletpassphrase here" with your wallet passphrase? – Murch Aug 12 '17 at 2:31
up vote 12 down vote accepted

Note: Recent versions of the satoshi client offer a 'debug window' which can be used to export private keys. This is described in Miguel Moreno's answer to this question, and is easier than the steps I describe below.

To export a private key from your satoshi client:

  1. run: bitcoin-qt -server and wait for it to load the blockchain and start up

  2. if your wallet is encrypted, run: read -s x; bitcoin-cli walletpassphrase "$x" 600; unset x to unlock it for 600 seconds (type your passphrase after hitting return, then hit return again; this 'read; ...; unset' prevents the password being written to your shell's history file on disk, and the '-s' in read prevents your password being displayed as you type it, and improves protection from screen-loggers and the shell log)

  3. run this command using bitcoin-cli: bitcoin-cli dumpprivkey 1my1bitcoin1addres11111 (replace 1my... with the bitcoin address of which you want the private key)

  4. if your wallet is encrypted and you want to re-lock your wallet, run bitcoin-cli walletlock

  • What if I've encrypted my wallet? – Stephen Gornick Jul 19 '12 at 14:41
  • Good point. I updated my answer to mention that. – Chris Moore Jul 19 '12 at 18:02
  • I guess you do the "read x ..." shell stuff to prevent the shell writing your password to a history file. I think that's worth mentioning. – Jürgen Strobel Sep 15 '12 at 12:37
  • Yes, that's exactly why. I don't want my password being written to disk. – Chris Moore Sep 16 '12 at 3:26
  • 1
    @user2428118 I noticed dumpwallet is a command now in newer versions – Sun Jan 23 at 16:18

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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