Get hex string for a public address

1

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?

Tyler Durden

Posted 2017-11-20T21:26:31.507

Reputation: 828

Possible duplicate of How can I convert a SHA256 hash into a Bitcoin base58 private key?

Max Vernon 2017-11-20T21:50:52.743

I realize the above link does the conversion the other way; however it should help you get started.Max Vernon 2017-11-20T21:51:24.490

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.Tyler Durden 2017-11-20T21:56:32.217

Answers

3

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

Posted 2017-11-20T21:26:31.507

Reputation: 1 532

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

Posted 2017-11-20T21:26:31.507

Reputation: 168

When I do that, I get the error "couldn't connect to server".Tyler Durden 2017-11-21T02:25:22.890

Then you have a bigger problem!Pieter Wuille 2017-11-21T09:44:35.323