<p>I don't think that it's possible to do anything like that using the official client.</p>

<p><a href="http://www.btcbalance.net" rel="nofollow">btcbalance.net</a> is a service that lets you store a number of public addresses and view their balance and latest received payments online. I can't vouch for it though since I haven't used it myself.</p>

<p>If you don't want to give your addresses to anyone else you could always just store some links to blockexplorer. <code>http://blockexplorer.com/address/&lt;your_address&gt;</code> will show you the balance and transactions of that address. That's not as convenient as a client/service doing it for you of course.</p>

CC BY-SA 3.0
2011-09-11T14:11:40.890Z
btcbalance.net looks promising, I wonder if it allows to set labels for addresses.
Domchi
CC BY-SA 3.0
2011-09-11T14:28:41.773Z
The problem with btcbalance.net and any solution like it is that they don't deal with the fact that most people have bitcoin addresses that are invisible to them.  When you send BTC to someone, there is almost always a new bitcoin address generated for you that receives the "change".  So if you receive 10 BTC at an address and then send 4 BTC to someone, the difference (6 BTC) is now assigned to a hidden address that your wallet.dat knows about, but you can't see.  btcbalance.net would show your balance as 0 BTC which isn't correct.
Erv Walter
CC BY-SA 3.0
2011-09-12T03:33:03.883Z
@Erv: That is hopefully changing in a future version of the client as well though. Should handle addresses in a much more intuitive way.
lemonginger
CC BY-SA 3.0
2011-09-11T11:03:54.250Z
2011-09-11T11:03:54.250Z
D.H.
<p>The BitcoinJS project implements a client that has no wallet.dat.</p>

<p>It does, however, keep the keys necessary for spending on the mobile client in the html5 local datastorage.
 - <a href="http://bitcoinjs.org" rel="nofollow">http://bitcoinjs.org</a></p>

<p>WebCoin's implementation: <a href="http://www.webcoin.ch" rel="nofollow">http://www.webcoin.ch</a></p>

CC BY-SA 3.0
2011-09-12T03:11:04.323Z
2011-09-12T03:11:04.323Z
Stephen Gornick
<p>As mentioned above, btcbalance.net does what you're looking for. </p>

<p>Also, I have not tested it, but according to this forum post, a Chrome extension called Collate allows you to view your balance without making your bitcoins available for spending:</p>

<p><a href="https://bitcointalk.org/index.php?topic=17158.msg334959#msg334959" rel="nofollow">https://bitcointalk.org/index.php?topic=17158.msg334959#msg334959</a></p>

<blockquote>
  <p>In 0.2 you can use the Block Explorer to examine your wallet without
  actually having to run the BitCoin client.  This means you can keep
  wallet.dat on an encrypted partition via TrueCrypt or w/e and you can
  still monitor your account balance (although to send coins you will
  still need to start the BitCoin client for obvious reasons).  In 0.2
  the Block Explorer method of viewing a wallet supersedes the old way
  of connecting to the BitCoin client since the latter requires that
  your private key be stored in memory all the time (which is a bad
  idea).</p>
</blockquote>

<p>Collate can be downloaded here:</p>

<p><a href="https://chrome.google.com/webstore/detail/anlcpclkmbeeoglfgbfboogijdkbohkn" rel="nofollow">https://chrome.google.com/webstore/detail/anlcpclkmbeeoglfgbfboogijdkbohkn</a></p>

CC BY-SA 3.0
2011-09-11T17:27:29.767Z
2011-09-11T17:33:48.040Z
2011-09-11T17:33:48.040Z
Amin
<p>This is not exactly what you're asking for, but might be helpful. Bitcoin v0.4 supports encrypting wallet.dat, so you cannot spend without entering the password. Basically you would do something like:</p>

<ul>
<li>make a copy of wallet.dat</li>
<li>encrypt your copy with Bitcoin client v0.4 and set a long random password (one you will easily forget)</li>
</ul>

<p>Voila, you have just created your read-only wallet. Because of 100 keypool you will even see some new transactions made with original unencrypted wallet.dat</p>

<p>You can download Bitcoin v0.4rc2 <a href="https://sourceforge.net/mailarchive/message.php?msg_id=28067765" rel="nofollow">here</a>.</p>

CC BY-SA 3.0
2011-09-11T14:30:32.440Z
This is the best available option currently.  It would be great if someone developed a client that kept the public keys seperate from the private keys so that you could not only encrypt the private keys but keep them offline.  But until then, the best option is to just keep the private keys always encrypted.
Erv Walter
CC BY-SA 3.0
2011-09-11T23:42:47.590Z
On the other hand, isn't it a weird choice to allow reading the public keys in the wallet without the password? That way, if someone finds your wallet, your anonymity is greatly compromised (it becomes obvious what your keys are and how many coins you have). Shouldn't there be an option to encrypt it "all the way"?
Thilo
CC BY-SA 3.0
2011-09-12T04:19:16.397Z
@Thilo: How would that be any different from just not having the wallet at all? Simply encrypt the wallet with any tool you want for that effect.
David Schwartz
CC BY-SA 3.0
2011-09-12T04:27:53.820Z
@David: I was just surprised that the new encryption feature (if it does work as hinted at above) does not already do this, so that you still have to "encrypt the wallet with any tool you want" (in addition to the built-in feature, which I thought would have made the extra step unnecessary).
Thilo
CC BY-SA 3.0
2011-09-12T04:59:20.077Z
@Thilo: If you're going to be decrypting the wallet every time you need to see your balance, the risk is too high that you'll either leave your wallet unlocked (so malware can capture it from memory) or type in the password (so malware can capture it from the keyboard). The cost/benefit on that approach just doesn't make any sense for most people. As for an "extra step", it's fairly trivial to automate, whereas the more sensible (for most people) hybrid approach is harder to automate.
David Schwartz
CC BY-SA 3.0
2011-09-11T11:17:12.067Z
2011-09-11T11:17:12.067Z
klemen
<p>Is it possible to use Bitcoin client without <code>wallet.dat</code> file, by entering your addresses and being able to see the balance, but without the ability to spend bitcoins? I know that it's possible to backup <code>wallet.dat</code> and use another <code>wallet.dat</code>, but in that way you don't see your transactions and balance and can't label your addresses etc.</p>

<p>If it's not possible in official client (I believe it isn't), are there alternate clients that allow this? The point is to be able to backup <code>wallet.dat</code> and plug it in only when spending bitcoins, but not lose the ability to see your transactions in the meantime.</p>

CC BY-SA 3.0
2011-09-12T02:44:07.397Z
Does that really work? I used to do that, but once you start spending, the change goes into newly created addresses that the Bitcoin client does not display, so you cannot track that. http://bitcoin.stackexchange.com/questions/736/how-does-change-work-in-a-bitcoin-transaction Works for monitoring incoming transactions, though.
Thilo
<client><wallet>
Bitcoin client which doesn't use wallet.dat?
Domchi
# Bitcoin client which doesn't use wallet.dat?

(Asked by: username_0 on 2011-09-11)

Is it possible to use Bitcoin client without `wallet.dat` file, by entering your addresses and being able to see the balance, but without the ability to spend bitcoins? I know that it's possible to backup `wallet.dat` and use another `wallet.dat`, but in that way you don't see your transactions and balance and can't label your addresses etc.

If it's not possible in official client (I believe it isn't), are there alternate clients that allow this? The point is to be able to backup `wallet.dat` and plug it in only when spending bitcoins, but not lose the ability to see your transactions in the meantime.

**Tags:** client, wallet

> **Comments:**
> **username_1**: Does that really work? I used to do that, but once you start spending, the change goes into newly created addresses that the Bitcoin client does not display, so you cannot track that. http://bitcoin.stackexchange.com/questions/736/how-does-change-work-in-a-bitcoin-transaction Works for monitoring incoming transactions, though.  

---

## 4 answers

### Answer by username_7 on 2011-09-11. Score: 6 | Accepted answer

This is not exactly what you're asking for, but might be helpful. Bitcoin v0.4 supports encrypting wallet.dat, so you cannot spend without entering the password. Basically you would do something like:

* make a copy of wallet.dat
* encrypt your copy with Bitcoin client v0.4 and set a long random password (one you will easily forget)

Voila, you have just created your read-only wallet. Because of 100 keypool you will even see some new transactions made with original unencrypted wallet.dat

You can download Bitcoin v0.4rc2 [here](https://sourceforge.net/mailarchive/message.php?msg_id=28067765).

> **Comments:**
> **username_3**: This is the best available option currently.  It would be great if someone developed a client that kept the public keys seperate from the private keys so that you could not only encrypt the private keys but keep them offline.  But until then, the best option is to just keep the private keys always encrypted.  
> **username_1**: On the other hand, isn't it a weird choice to allow reading the public keys in the wallet without the password? That way, if someone finds your wallet, your anonymity is greatly compromised (it becomes obvious what your keys are and how many coins you have). Shouldn't there be an option to encrypt it "all the way"?  
> **username_8**: @username_1: How would that be any different from just not having the wallet at all? Simply encrypt the wallet with any tool you want for that effect.  
> **username_1**: @username_8: I was just surprised that the new encryption feature (if it does work as hinted at above) does not already do this, so that you still have to "encrypt the wallet with any tool you want" (in addition to the built-in feature, which I thought would have made the extra step unnecessary).  
> **username_8**: @username_1: If you're going to be decrypting the wallet every time you need to see your balance, the risk is too high that you'll either leave your wallet unlocked (so malware can capture it from memory) or type in the password (so malware can capture it from the keyboard). The cost/benefit on that approach just doesn't make any sense for most people. As for an "extra step", it's fairly trivial to automate, whereas the more sensible (for most people) hybrid approach is harder to automate.  

---

### Answer by username_2 on 2011-09-11. Score: 2

I don't think that it's possible to do anything like that using the official client.

[btcbalance.net](http://www.btcbalance.net) is a service that lets you store a number of public addresses and view their balance and latest received payments online. I can't vouch for it though since I haven't used it myself.

If you don't want to give your addresses to anyone else you could always just store some links to blockexplorer. `http://blockexplorer.com/address/<your_address>` will show you the balance and transactions of that address. That's not as convenient as a client/service doing it for you of course.

> **Comments:**
> **username_0**: btcbalance.net looks promising, I wonder if it allows to set labels for addresses.  
> **username_3**: The problem with btcbalance.net and any solution like it is that they don't deal with the fact that most people have bitcoin addresses that are invisible to them.  When you send BTC to someone, there is almost always a new bitcoin address generated for you that receives the "change".  So if you receive 10 BTC at an address and then send 4 BTC to someone, the difference (6 BTC) is now assigned to a hidden address that your wallet.dat knows about, but you can't see.  btcbalance.net would show your balance as 0 BTC which isn't correct.  
> **username_4**: @Erv: That is hopefully changing in a future version of the client as well though. Should handle addresses in a much more intuitive way.  

---

### Answer by username_5 on 2011-09-12. Score: 1

The BitcoinJS project implements a client that has no wallet.dat.

It does, however, keep the keys necessary for spending on the mobile client in the html5 local datastorage.
- <http://bitcoinjs.org>

WebCoin's implementation: <http://www.webcoin.ch>


---

### Answer by username_6 on 2011-09-11. Score: 1

As mentioned above, btcbalance.net does what you're looking for.

Also, I have not tested it, but according to this forum post, a Chrome extension called Collate allows you to view your balance without making your bitcoins available for spending:

<https://bitcointalk.org/index.php?topic=17158.msg334959#msg334959>

> In 0.2 you can use the Block Explorer to examine your wallet without
> actually having to run the BitCoin client. This means you can keep
> wallet.dat on an encrypted partition via TrueCrypt or w/e and you can
> still monitor your account balance (although to send coins you will
> still need to start the BitCoin client for obvious reasons). In 0.2
> the Block Explorer method of viewing a wallet supersedes the old way
> of connecting to the BitCoin client since the latter requires that
> your private key be stored in memory all the time (which is a bad
> idea).

Collate can be downloaded here:

<https://chrome.google.com/webstore/detail/anlcpclkmbeeoglfgbfboogijdkbohkn>


---

