user2306: I want to list all of the addresses in my wallet, even the ones that aren't being used right now. I know that I can change the number of addresses with -keypool, but I want to list all of the addresses.

user13530: Providing that you're referring to BitcoinCore, and that by "not being used right now" you mean there's no transaction associated with them yet, you can use this command to list them:
bitcoin-cli listreceivedbyaddress 0 true

The parameters are:

minconf = 0
includeempty = true


user-1: That's a tricky one.
If you haven't modified the 'keypool' parameter then your key pool will contain 100 "unassigned" addresses. These addresses are controlled by your wallet but remain in a latent state in your client until you explicitly request for a new address. 
The thing is that every time you request for a new address, a new one will be added to your key pool, so there will always be X number of latent addresses (where X: your keypool size) that cannot be accessed (by design) in an obvious way through the client.
Provided that there are 2^160 possible bitcoin addresses (while there is a total of 2^63 grains of sand on earth) a collision is practically impossible, therefore it is of little to no value to try to gain control over your keypool addresses which really only serve as a buffer so that you won't have to back-up your wallet after every single transaction.

2306: <p>I want to list all of the addresses in my wallet, even the ones that aren't being used right now. I know that I can change the number of addresses with -keypool, but I want to list all of the addresses.</p>
 13530: <p>Providing that you're referring to <strong>BitcoinCore</strong>, and that by "not being used right now" you mean there's no transaction associated with them yet, you can use this command to list them:</p>

<pre><code>bitcoin-cli listreceivedbyaddress 0 true
</code></pre>

<p>The parameters are:</p>

<ul>
<li>minconf = 0</li>
<li>includeempty = true</li>
</ul>
 -1: <p>That's a tricky one.</p>

<p>If you haven't modified the 'keypool' parameter then your key pool will contain 100 "unassigned" addresses. These addresses are controlled by your wallet but remain in a latent state in your client until you explicitly request for a new address. </p>

<p>The thing is that every time you request for a new address, a new one will be added to your key pool, so there will always be <code>X</code> number of latent addresses (where <code>X</code>: your keypool size) that cannot be accessed (by design) in an obvious way through the client.</p>

<p>Provided that there are <code>2^160</code> possible bitcoin addresses (while there is a total of <code>2^63</code> grains of sand on earth) a collision is practically impossible, therefore it is of little to no value to try to gain control over your keypool addresses which really only serve as a buffer so that you won't have to back-up your wallet after every single transaction.</p>
