How to build a Bitcoin wallet?

Someone has already created a wrapper for the bitcoin daemon in Java: - it might be easier to use that instead of the dameon directly and use a database to do what would be inefficient on the blockchain, like handling user accounts.

Ultimately, it all depends on what you're trying to accomplish. It sounds pretty clear from what you've already read and what I've read that the standard bitcoin daemon doesn't scale. Thus, your best bet would be to use this or another bitcoin daemon wrapper to create your wallet project.

If you want to interface directly with the bitcoin daemon (or as close to directly as possible with a wrapper), try using the Java wrapper and use a database for the tasks that the daemon doesn't handle efficiently. However, if you are wanting to design your online wallet service with security in mind, I would encourage you to use the Armory daemon: . From what I've read, it sounds like this daemon is not quite as full featured as the regular bitcoin daemon, but I haven't tried it out myself, so it's quite possible that it is sufficient to your needs. Still, it has a pretty big advantage in the realm of security that you can create a watching-only wallet on your web server for the customers' wallet.