0

I have a bitcoin private key and know that it can output a segwit addresses of bech32 bc1... and p2sh 3... formats. How can this be done easily?

Patoshi パトシ
  • 10,956
  • 18
  • 80
  • 151

1 Answers1

0

Load up electrum 3.1.1+ and enable the "console" and in the console do the following to output the addresses you need by providing your private key:

bech32 format bc1...:

bitcoin.address_from_private_key("p2wpkh:5Kkzs8XrJNAmf9......")

p2sh format 3...:

bitcoin.address_from_private_key("p2wpkh-p2sh:5Kkzs8XrJNAmf9VQDFeG......")

you just need to prefix your private key with p2wpkh or p2wpkh-p2sh to get one of them.

Patoshi パトシ
  • 10,956
  • 18
  • 80
  • 151
  • Keep in mind that this function requires the WIF encoding of the private key as an input. – Mike D Mar 28 '18 at 15:58
  • how do you get the WIF encoding? – Patoshi パトシ Mar 28 '18 at 16:27
  • I dont know about electrum but I have made a [python library](https://github.com/mcdallas/cryptotools) that can do what you want. PrivateKey.from_hex('yourkeyhere').to_public().to_address('P2WPKH') – Mike D Mar 28 '18 at 16:39
  • see also here: https://bitcoin.stackexchange.com/questions/69315/how-are-compressed-pubkeys-generated/69366?noredirect=1#comment80625_69366 – pebwindkraft Mar 29 '18 at 16:15