Bitmessage is a messaging protocol designed by Jonathan Warren in 2012.
The purpose of Bitmessage is to allow parties to communicate with each other in a secure and 100% decentralized fashion.
As its name suggests, Bitmessage is based on Bitcoin. The way Bitcoin finds a way to deliver funds to users anywhere in the world is the same principle used by Bitmessage to deliver messages.
Bitmessage works just like Bitcoin except it doesn’t transfer money, but carries messages instead.
A Bitmessage address uses the same encoding as bitcoin (base58) but adds BM- prefix to the addresses to distinguish them from BTC hashes.
The system uses Proof of Work as its consensus mechanism. Every node hashes messages until they find a winning hash to validate the message. Once validated, the message is committed on to the blockchain.
Every participant keeps a full copy of the blockchain, but only the users with the proper private keys can decode messages sent to them.
Bitmessage is especially concerned with privacy, offering options that allow you to work in stealth (passive) mode and not get seen by the network (but still be able to receive secret messages meant for you).
If you find that your Bitmessage client is consuming too much memory, upgrade to the latest snapshot to fix the issue. Early versions seem to present memory leaks which cause it to spiral its memory consumption out of control.