Bit MessageI’ve just finished reading the Bitmessage white paper by Jonathan Warren and must say I find myself inspired. BitMessage is the decentralized peer to peer communication system that uses basic encryption to keep both sender and receiver anonymous, if they choose. While Bitmessage is still very new, it is a potential game changer when it comes to secure communications. Living in a time where large data centers that can store all our private communications are a reality, BitMessage provides a degree of resistance. Here’s an overview of BitMessage as well as a quick tutorial on setting up the client.

An Overview Of Bitmessage

BitMessage uses a form of public key encryption to secure communications between two parties over the internet. As outlined in the Bitmessage white paper current solutions for encrypted email are difficult to use and require exchanging both an email address and encryption keys through a trusted third party.

With BitMessage a series of unique solutions are used to allow users to communicate with just a 36 character address. The protocol, loosely based off of Bitcoin, uses your computer’s processing power to process messages. Each message requires a proof of work that is designed to take around four minutes.

Another important feature of Bitmessage is the ability to broadcast messages or to subscribe to broadcasts. Broadcasts are messages that are sent out to any group of Bitmessage users that are listening. In this way, organizations or individuals can get information out to their subscribers anonymously if they choose. I’ve recently started to use Bitmessage’s broadcast feature for my recent posts and updates here on CryptoJunky.

Setting Up Bitmessage

Setting up BitMessage couldn’t be easier. If you’re a windows user click here for the .exe file. If you’re a Mac OS X or Linux user the python code is available through I’ll be covering the basics with Windows here, though it should be about the same with Mac OS X and Linux. Once you’ve opened up BitMessage you’ll need to create an ‘identity’ or two as they’re referred to.

BitMessage Your Identities

Start by going to the ‘your identities’ tab and clicking ‘new’. You’ll see two options pop up, one that allows you to make a random number generator and another that uses a passphrase to make addresses. I suggest that you use a passphrase to make your address(es) as you will then be able to use these identities on another machine or another installation of BitMessage. If you choose this option you will also have a number of addresses to make, the default is eight.

BitMessage Create Identities

Once you’ve decided on a passphrase go ahead and find a good place to store it or have something easily remembered. There is no recovery kit for lost BitMessage passwords. You’ll also need the address version number to replicate these addresses on another computer (I also record the Stream number).

Sending And Receiving Your First Message

So you have your client set up and you’d like to actually use this thing. Well if you’d like to send a test message you can send one to me and I’ll send one on back. Go to the ‘send’ tab of the BitMessage client and enter the following address in the ‘to’ field:


Once you’ve done that just choose one of your addresses to use as a ‘From’ address and fill in your test message. Once the message is complete click send. It will take a few minutes for the message to be processed and sent so don’t shut down BitMessage or your computer during that time.

BitMessage Send Message

If you’d like to try out the broadcast/subscription feature you can go to the ‘Subscriptions’ tab and click the add button. Enter the same address as above and you’ll receive the messages I send out when I have a decent new post or service to announce.

BitMessage Communities

Given that BitMessage is still relatively young there aren’t too many communities for it yet. If you’re starting out now it’s like that you’re an early adopter. There is a BitMessage forum over at There is also a BitMessage subreddit over at Reddit under r/BitMessage. There’s a lot more that you can do with BitMessage than just what I’ve covered here so play around with it, explore, and let me know what you find!

That’s all I have for now on BitMessage. If you have a story or tip related to BitMessage, Bitcoin, or Encryption send me a BitMessage at BM-2DBXxtaBSV37DsHjN978mRiMbX5rdKNvJ6 or you can send me an email at CryptoJunky at zoho dot com.

42 Responses to “Setting Up And Using Bitmessage – An Encrypted Communications Platform Based On Bitcoin”

  1. Trace Mayer, J.D. Says:

    This is great work and could turn into a vital tool for protecting privacy. Keep it up!

  2. Justus Ranvier Says:

    I understand you’re promoting Bitmessage, but why don’t you list a GPG key anywhere on your site for people who want to contact you via the traditional email address you list?

  3. chrono Says:

    How safe is this to use really….

    Does any of the information communicated get sent to the ISP and if so how easy is it to extract the data and make sense of it.

    I’m going to put sometime in to using the software but would like more information explained in a way that a child would understand


  4. Mistromo Says:

    Just got this running on Linux Mint

    I needed to install PyQt first > sudo apt-get install python-qt4


    git clone

    cd PyBitmessage


    It works for me!

  5. CryptoJunky Says:

    Nice, good to see you got it working and thanks for the tip for other Linux Mint users!

  6. Erik Says:

    What release of debian are you running and what version of openssl?

    I get this funny error on my old debian squeeze

    AttributeError: /usr/lib/i686/cmov/ undefined symbol: PKCS5_PBKDF2_HMAC

  7. Erik Says:

    Had to compile all the pythonesque stuff myself, sip, PyQt and finally get a decently modern python 2.7.3

    then it worked but I still haven’t managed to receive anything.

  8. CryptoJunky Says:

    Erik, send me a message if you’d like. I should be able to get back to you rather quickly.

  9. Bitmessage v0.2.7 | CyberPunk Says:

    [...] An open source client is available for free under the very liberal MIT license. For screenshots and a description of the client, see this CryptoJunky article: “Setting Up And Using Bitmessage” [...]

  10. BitMessage – an encrypted communications platform based on Bitcoin Says:

    [...] up on it in the whitepaper, clone the repo, and follow the simple instructions from cryptojunkie post to set it up on your machine. It’s available for both windows and linux, and since [...]

  11. Russ Says:

    I cloned this today and got the following error on running:

    Database file already exists.
    Problem: The version of SQLite you have cannot store Null values. Please download and install the latest revision of your version of Python (for example, the latest Python 2.7 revision) and try again.
    PyBitmessage will now exist very abruptly. You may now see threading errors related to this abrupt exit but the problem you need to solve is related to SQLite.

    Exception KeyError: KeyError(140732278249216,) in ignored

    Now I am using Linux Mint as the poster above, and have Python 2.7 installed and sqlite3.

    I noticed what might be a syntax error on line 2330:
    transmitdata, = row

    Removing the comma there got rid of the runtime error and I see the UI.

  12. Russ Says:

    A Followup to yesterday’s comment. A -lot- of the assignments in the source code for this program have the form

    foo, = bar

    Is this just a strange Python stylistic thing with which I’m not familiar?

  13. Fabrix Says:

    It’s a way to extract the content of a 1-item list.

    > list2 = [1,2]
    > a,b = list2
    > a
    => 1
    > b
    => 2
    > list1 = ['one']
    > list1
    => ['one']
    > a, = list1
    > a
    => ‘one’

  14. Russ Says:

    @Fabrix: Aha, thanks. I know this isn’t the right place for Python syntax questions — my Python’s pretty rusty :) i was just trying to get things up and running quickly on my Linux system.

    So my change isn’t really correct. I wonder why it was throwing an error on Mint Linux at that line though. I will try to look deeper into it.

  15. » Linuxaria – Everything about GNU/Linux and Open source BitMessage: Encrypted messaging, BitCoin-style Says:

    [...] Setting Up And Using Bitmessage – An Encrypted Communications Platform Based On Bitcoin [...]

  16. S. Grose Says:

    Sent CryptoJunky a Bitmessage. Shows it has been sent system says it’s waiting on acknowledgement. Yea, do send a newsletter out.

  17. Theresa Says:

    Um, guys, no one in the world of non-computer genius DNA has a clue what you are talking about. We may have to wait for the “best buy”, one size fits all directions to come out. By then, big bro will be onto it and it won’t be “private” anymore, lol. Thanks anyway! Love and Peace :)

  18. Ron Adcox Says:

    I successfully downloaded and set up bitmessage earlier today. Sent a trial message as instructed to BM-BcJfZ82sHqW75YYBydFb868yAp1WGh3v. It took a while but finally said on the upper right hand message box that the message was sent was awaiting reply. Didn’t close the bitmessage box but it disappeared a few minutes ago and will not reopen Tried several times to run as Administrator but it will not. What gives. I am running Vista. Guess that is the problem. Anyways the program is a good idea. Hope I can get it to work.

  19. Ron Adcox Says:

    Can’t explain it. But I redownloaded bitmessage and it opened with my info intact. Will I have to open it in that fashion everytime?

  20. Karen Says:

    You win both the Vanguard of the Millenium and The Most Pertinent To The “Latest Proof That Our Government Doesn’t Act In Our Best Interest – DUH!” Awards…hele on, Brudah!

  21. No One Important Says:

    Wow I can’t wait to try this! Hopefully the install will go smoothly. (I’m a Microsoft person – never did get the hang of Linux)

  22. Who Is Bill “Brain Dead” Rankin? Says:

    [...] Send me a message via BitMessage. [...]

  23. The right of the people | Preppers Anonymous Says:

    [...] anonymous messenger) me at (my address) BM-2DCExbSNY4Ca4Mm1xnKMiZBFE5RoDLN1K2 . You will need to install Bitmessage and configure your identity to be able to send a message to [...]

  24. Want to talk to me (or anybody else) securely? BitMessage is what you need. | Colin's Blog Says:

    [...] So, you want to send me a message and be sure nobody else can see the content, or even that you have sent it. You need BitMessage. There is a very good example of how to set it up and use it here. [...]

  25. Bitmessage | Note To Self Says:

    [...] Setting Up And Using Bitmessage – An Encrypted Communications Platform Based On Bitcoin; In His Blog; [...]

  26. BitMessage – finally an email killer! | GET Writing Says:

    [...] Chekc this website for more details on BitMessage. Cryto Junky|BitMessage [...]

  27. Bitmessage | ~/blog Says:

    [...] est assez simple mais peu déstabiliser les novices. Un tutoriel avec des images est disponible ici. Vous constaterez que l’interface est déjà plutôt bien [...]

  28. Rich Chroman Says:

    I found the same hack but not including the password at keygenpen.

  29. Verschlüsselt mailen via Bitmessage Says:

    [...] "Bedienungsanleitung" (hier ist es möglich eine Test-Mail an den Autor zu verschicken): Setting Up And Using Bitmessage – An Encrypted Communications Platform Based On Bitcoin Ausführlichere Beschreibung der Technik durch den Erfinder: [...]

  30. James McCleod Says:

    Is there a way for users of IaaS instances such as thin web tops, Sunrays, etc, to deploy this? Or would it require server side set up work by the actual server admin(s)?

  31. Richard McCord Says:

    I am running Fedora 20 x86_64. When I run ‘sudo yum install -y python python-qt4 git openssl-compat-bitcoin-libs’, I get a segmentation error. Any ideas how I would go about troubleshooting this? I have 16GB of DDR3, so it can’t be that I’m out of memory. It sounds like yum is trouncing memory it isn’t authorized to use, doesn’t it? I don’t know what to do or where to begin.

    Any help you might be inclined to offer would be greatly appreciated.


  32. The right of the people …By Delta01 : Radio Free Redoubt Says:

    […] anonymous messenger) me at (my address) BM-2DCExbSNY4Ca4Mm1xnKMiZBFE5RoDLN1K2 . You will need to install Bitmessage and configure your identity to be able to send a message to […]

  33. Noomen Says:

    Another great NSA product … good job … keep up the good work guys.

  34. Don Says:

    I use an IPad now, can I use this for email?

Leave a Reply