Installation and configuration

How do I install Bitmessage

Bitmessage does not needs to be "installed". it is simply downloaded and executed. You can find instructions to download and run bitmessage from the Main Page. A great write up for setting up and using Bitmessage on Windows can be found Here.

Bitmessage should run on any OS though it is only lightly tested on OSX. The start-on-boot and minimize-to-tray features are only implemented for Windows thus far. Several examples of how to install Bitmessage on *nix and OSX platforms can be found in the forums.

How do I become a node to help the network

If your connection indicator is green then you are already accepting incoming connections and helping the Bitmessage network.

If your connection indicator is yellow, check your firewall settings and port forwarding to make sure incoming connections are allowed to your machine on the correct TCP port (Default: 8444), the port can be found in the Bitmessage settings.

You can click on the indicator for more information about each color.

Why is my Connection Indicator Yellow

Bitmessage will work normally with a yellow indicator. If your indicator is yellow, you can have up to 8 connections. To make your indicator green, please forward the required TCP port (usually 8444). You can find the Port in the Bitmessage settings.

How do I setup Bitmessage to work with Tor

If you need a TOR client, more complete instructions can be found on the TOR page. If you already have a client, follow the instructions below.

Tor

If you are using the Tor Browser Bundle skip to the next section. In order for Bitmessage to use Tor as a proxy follow these steps.

Navigate to Settings > Network Settings and select SOCKS5 from the Type: drop down under the Proxy server / Tor section.

Next to 'Server hostname:' enter 'localhost' and next to 'Port:' enter '9050'.

Select ok.

Restart Bitmessage.



Tor Browser Bundle

Navigate to Settings > Network Settings and select SOCKS5 from the Type: drop down under the Proxy server / Tor section.

Next to 'Server hostname:' enter 'localhost' and next to 'Port:' enter '9150'.

Select ok.

Restart Bitmessage.

How do I setup Bitmessage as a hidden service on Tor

Bitmessage can accept incoming connections as a Tor hidden service. This feature is supported since https://github.com/Bitmessage/PyBitmessage/commit/1a40c29d221f036e82a87444ace331afbb8e80c6. In order to use it you have to manually add a new hidden service in your tor configuration. The following table explains the settings combination for Bitmessage's keys.dat. IP addresses and port number are just examples, adjust them if you have a different setup:

Outgoing connections Incoming connections only through clearnet Incoming connections only through Tor Incoming connections from both clearnet and Tor Over clearnet socksproxytype = none onionhostname = none socksproxytype = none onionhostname = abcdefgh.onion onionbindip = 127.0.0.1 onionport = 8444 sockslisten = false socksproxytype = none onionhostname = abcdefgh.onion onionport = 8444 sockslisten = true Over Tor socksproxytype = SOCKS5 onionhostname = none sockslisten = true socksproxytype = SOCKS5 onionhostname = abcdefgh.onion onionbindip = 127.0.0.1 onionport = 8444 sockslisten = false socksproxytype = SOCKS5 onionhostname = abcdefgh.onion onionport = 8444 sockslisten = true

Usage

How can I run Bitmessage in daemon mode

Refer to the Daemon Mode Page.

How many connections should I have

As long as you have at least one connection, you can communicate with the network. If your connection indicator is yellow, you can have a maximum of 8 connections.

Can I send a message to someone that is offline

Yes. However, if you go offline then they must come back online within 2 days of the message being sent. Nodes delete data, and do not accept data, older than 2 days.

How do I format my messages

Here is the list of supported HTML tags.

What are subscriptions?

A subscription allows you to receive messages, that were broadcasted by the address you subscribe too. Since broadcast messages are encrypted with a key, that can be created by everyone who knows the address, you must be subscribed to an address to actually read the messages.

Subscriptions are also required to use a Mailing List.

What are "chans"?

Chan is another word for DML. Please refer to this article for a complete documentation of this rather complex feature.

How does Bitmessage work

Startup

When you first start Bitmessage, your client connects itself to the network and starts downloading a list of known nodes. Each new node that you connect to shares its list of known nodes. In addition to the known nodes, you will also start receiving person-to-person messages, broadcasts, and public keys. If any of these messages are bound for you, they will be shown in your inbox. All of this data is exchanged between all of your connections to make sure that everyone has a copy.



Sending a Message

When you send a message, your client must first compute a Proof of Work (POW). This POW helps mitigate spam on the network. Nodes and other clients will not process your message if it does not show sufficient POW. After the POW is complete, your message is shared to all of your connections which in turn share it with all of their connections.

Where can I find more documentation about Bitmessage

How does Bitmessage compare to other messaging methods

Here is a table comparing Bitmessage to other common messaging services.

"Fully Distributed" means that after bootstrapping, the service will no longer depend on any central authority and will have no single point of failure.

"Voice calls" and "Video Calls" are irrelevant to clients which do not support "Instant Messaging".

Comparison of Messaging Services Trustless P2P Open Source Requires Proof of Work Hide Sender? Hide Receiver? Mobile Version Application or Web Based Attachments or File Transfers Acknowledge delivery Fully Distributed Instant messaging Voice calls Video calls Offline messages Bitmessage Yes Yes MIT Yes Yes Yes Beta, requires server Application 220KB Yes Yes No No No Up to 28 days Standard Email No No Depends No No No Yes Both Yes Partial No No No No Yes Email + GPG Yes No Depends No No No Yes Both Yes Partial No No No No Yes XMPP + OTR Yes No GPL V2.1 No No No Yes Application No OTR, not trustless Depends No Yes Depends Depends Yes TorChat Yes Yes GPL No Yes Yes No Application Yes No Yes No No Queued Skype No No No No No No Yes Application Yes No Yes Yes Yes Yes Tox Yes Yes GPL No No No Yes Application Yes Yes Yes Yes Yes Yes Queued Scayl No Yes No No No No Alpha Application Yes I2P Bote Yes Yes GPL V3 No Yes Yes Yes Application Yes Yes Yes No No No Up to 100 days CryptoCat No No GPL No No No Yes Both No No Yes No No No IRC No No Yes No No No Yes Both No Yes No No No Depends SMS No No No No No No Yes Application Yes No No Yes No No Yes RetroShare No Yes No No No Yes Freenet + Frost Yes Yes GPL No Yes Yes No Application Yes Yes No No No Freenet + FMS No Yes No No Yes No Application No Yes No No No Freenet + Freemail 0.2 No Yes GPL No No No No Application Yes No Yes No No No Freenet + FLIP Yes Yes No No No No Application No Yes No No No EMP Yes Yes BSD No Yes No Yes Application No Yes Yes No No No Up to 30 days

Troubleshooting

My Connection Indicator is Red

Check your connection settings. Check if you can access the internet. In case you have a firewall with outgoing restrictions (not Windoes firewall) allow unrestricted access for Bitmessage through your firewall. Sometimes Bitmessage takes time to connect to the network, especially if knownnodes.dat is large. Please allow at least 30 minutes for it to connect before posting to the forum. You can also try deleting knownnodes.dat.

If none of that works, please visit the forum here.

I have not received a reply from the Echo Server

Your connection indicator should be yellow or green.

Make sure that your POW is complete and the message has been sent. You should see an acknowledgement under "Status" on the "Sent" tab.

On average it should take 8 minutes from the time you click the send button to the time you receive a response.

Be sure to allow extra time in the event that the server is under heavy traffic (Example: An article about Bitmessage was posted on a popular website).

You can always send a message to another echo server. Here are echo addresses: BM-2cWoG7fKafmVbfeMh8U2mRgix6eTuGSQCK these seem to not work anymore: BM-orkCbppXWSqPpAxnz6jnfTZ2djb5pJKDb / BM-omXeTjutKWmYgQJjmoZjAG3u3NmaLEdZK

You may subscribe to the Timeservice Broadcast to receive network heartbeats.

You can send messages to a Mailing List in case it still does not works

If you still do not receive a response, visit the forum to see if there is a current technical issue or to submit a new request for assistance.

Other

Here is a list of average times for different parts of Bitmessage. PyBitmessage Help

Please visit the forum for all other issues.