<p>It depends a lot on the kind of locking condition you want to satisfy. The addresses that you have mentioned would depict 'standard' locking condition where the user reveals their public key and associated signature in order to spend the locked bitcoins. However, you can create custom scripts and then convert them into standard addresses.</p>

<p>For example, locking some bitcoins in a CLTV script using the same private key will generate a completely different address. You can use CSV or any other custom opcodes like <code>OP_ADD</code> to generate those custom scripts and then wrap the script in P2SH or P2WSH. When you spend the funds you need to reveal the custom script and the signatures should match. When you include the possibility of generating standard addresses from the custom made script, the possibilities are endless.</p>

<p>Also, a point to note is that a compressed public key will generate a completely different address as compared to an uncompressed public key. </p>

CC BY-SA 4.0
2020-01-21T06:46:31.403Z
While the answer is technically correct, I think for most users, you really only end up with a handful of addresses: p2pkh compressed, p2pkh uncompressed, p2pk uncompressed, p2sh-p2wpkh compressed - anything else would likely require significant effort to generate and spend
Raghav Sood
CC BY-SA 4.0
2020-01-21T06:50:44.970Z
@RaghavSood Agreed! But I think OP was looking for a more comprehensive answer. btw you missed native P2WPKH in your comment.
Ugam Kamat
CC BY-SA 4.0
2020-01-21T04:28:08.763Z
2020-01-21T04:28:08.763Z
Ugam Kamat
<p>Based on my research every bitcoin private key (compressed or uncompressed) can have 4 different addresses: </p>

<ul>
<li>P2PKH compressed and starts with <code>1</code></li>
<li>P2PKH uncompressed and starts with <code>1</code></li>
<li>P2SH and starts with <code>3</code></li>
<li>Bech32 and starts with <code>bc1</code></li>
</ul>

<p>Are there any other types of address that can be created from a private key?</p>

<address><private-key><address-generation>
How many possible addresses per bitcoin private key?
GMaster
# How many possible addresses per bitcoin private key?

(Asked by: username_0 on 2020-01-21)

Based on my research every bitcoin private key (compressed or uncompressed) can have 4 different addresses:

* P2PKH compressed and starts with `1`
* P2PKH uncompressed and starts with `1`
* P2SH and starts with `3`
* Bech32 and starts with `bc1`

Are there any other types of address that can be created from a private key?

**Tags:** address, private-key, address-generation


---

## 1 answers

### Answer by username_1 on 2020-01-21. Score: 5 | Accepted answer

It depends a lot on the kind of locking condition you want to satisfy. The addresses that you have mentioned would depict 'standard' locking condition where the user reveals their public key and associated signature in order to spend the locked bitcoins. However, you can create custom scripts and then convert them into standard addresses.

For example, locking some bitcoins in a CLTV script using the same private key will generate a completely different address. You can use CSV or any other custom opcodes like `OP_ADD` to generate those custom scripts and then wrap the script in P2SH or P2WSH. When you spend the funds you need to reveal the custom script and the signatures should match. When you include the possibility of generating standard addresses from the custom made script, the possibilities are endless.

Also, a point to note is that a compressed public key will generate a completely different address as compared to an uncompressed public key.

> **Comments:**
> **username_2**: While the answer is technically correct, I think for most users, you really only end up with a handful of addresses: p2pkh compressed, p2pkh uncompressed, p2pk uncompressed, p2sh-p2wpkh compressed - anything else would likely require significant effort to generate and spend  
> **username_1**: @username_2 Agreed! But I think OP was looking for a more comprehensive answer. btw you missed native P2WPKH in your comment.  

---

