The other day there was discussion on the Bitcoin developer mailing list about something called “stealth address” (though it looks like they’re changing the name for political reasons). I’ll explain more in a moment. But it seems to me that stealth addresses are sort of the last piece of the puzzle needed to get rid of Bitcoin addresses entirely within the user interface and replace them with human-readable identities.
If you aren’t aware, the soon to be released Bitcoin 0.9 will contain a new payment protocol which will go a long way to making Bitcoin more user-friendly and ending reliance on addresses. Here’s how the protocol will work: When you purchase something from a merchant you will (presumably) still scan a QR code. But rather than this QR containing the merchant’s Bitcoin address, it will initiate a download of a signed payment request. The request will show up your screen displaying the name of the merchant, total to be paid, and any other information the merchant wants to include―possibly a receipt or contractual terms. All you have to do is press “accept” or “decline”. The transaction will still be sent to a Bitcoin address, but that all happens behind the scenes. No need for the user to even know what a Bitcoin address is. Even more importantly, the wallet will automatically generate a new bitcoin address for each new payment request which should substantially improve privacy for all Bitcoin users. Again, the user doesn’t need to see or interact with these addresses. All he needs to know is that he has a wallet with a balance.
However, the payment protocol doesn’t seem to cover all possible use cases, leaving behind the need for legacy Bitcoin addresses . This is not only non-user friendly, but it will compromise the privacy of all Bitcoin users. Consider a few examples: