If I want to watch a public address, I need the hex string for that address, because the importpubkey command only takes a hex input. How can I convert a base 58 address to a hex string using the bitcoin core?
Asked
Active
Viewed 4,772 times
2
Harry Pillsbury
- 988
- 1
- 6
- 20
-
Possible duplicate of [How can I convert a SHA256 hash into a Bitcoin base58 private key?](https://bitcoin.stackexchange.com/questions/8247/how-can-i-convert-a-sha256-hash-into-a-bitcoin-base58-private-key) – Hannah Vernon Nov 20 '17 at 21:50
-
I realize the above link does the conversion the other way; however it should help you get started. – Hannah Vernon Nov 20 '17 at 21:51
-
1@MaxVernon Uh, what??? This has nothing to do with private keys. Also, the conversion you cited is going the wrong way. That does not get me started. I want to know how to convert a base 58 pub key to a hex pub key USING THE CORE CLIENT. – Harry Pillsbury Nov 20 '17 at 21:56
2 Answers
4
You cannot generate public key from a bitcoin address. From bitcoin address, all you can get is the hash160. Following reference, this can be done through base58 decoding, going from Step 9 -> Step 8. So you get same output as from Step 4 along with checksum at the end.
Basically you have two alternatives:
- If you have the private key, generate the public key and use
importpubkey - Use
importaddress
dark knight
- 1,997
- 9
- 24
2
You might want to use the importaddress RPC method (I'm not even aware of an importpubkey method). The importaddress method accepts the base58 address string you have. I recently asked a slightly-related question and ended up answering it myself here: How to make ImportMulti function like ImportAddress for watch-only addresses placed into Accounts?
dimsumcode
- 168
- 7