I am trying to do multisignature addresses and when it comes time to spend the funds, I am getting stuck.

If I create a 2 of 3 multisignature address using 3 public keys that I generate locally, then dump their private keys and use those to sign and spend the funds, it works without issue.

But, when I generate public/private key pairs from BitAddress.org (Wallet Details) there are multiple types of private keys with different lengths.

  • Private Key WIF 51 characters base58, starts with a '5'

  • Private Key Hexadecimal Format (64 characters [0-9A-F])

  • Private Key Base64 (44 characters)

  • Private Key 52 characters base58, starts with a 'K' or 'L'

When I do dumpprivkey for one of the keypairs generated locally, it spits out a 52 character key. So I thought maybe the 52 character base58 private key was the one I should enter, but it returns "Invalid Private Key".

The key that dumpprivkey spits out does not follow any of the rules of any of the above private keys provided by BitAddress.org generation. So how do I generate this private key that I can use in signrawtransaction ?

I want users to be able to generate and supply their own private keys for a multisignature escrow, so generating the addresses locally is not an option.

  • Also, fyi, new comments don't bump questions up in the list, just edits or new answers do.
    – Murch
    Feb 23, 2014 at 10:31

1 Answer 1



Since nobody answered. After smashing my head against the wall for a day, I finally figured out that since I am developing right now, and I am using testnet, the private keys generated for testnet and the private keys generated for "real net" are not interchangeable. So I had to switch BitAddress over to testnet mode to get keys that would work for my transaction.

  • I know it's old, but for anyone interested, the private key is interchangeable, it's just the encoded version that's not because mainnet and testnet use a different prefix byte. See en.bitcoin.it/wiki/Wallet_import_format.
    – JBaczuk
    Aug 16, 2018 at 16:28

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.