ePOST Serverless Email System

A PEER-To-PEER Platform for Reliable, Secure Communication

Frequently Asked Questions

  1. What is ePOST?
  2. What do I need to use ePOST?
  3. How does ePOST work?
  4. What are the advantages of running ePOST?
  5. Which email clients work with ePOST?
  6. What security does ePOST provide?
  7. Does my email look any different with ePOST?
  8. Can I still send and receive email from non-ePOST users?
  9. How do I uninstall ePOST?
  10. I'm having a problem with ePOST - what can I do?
  11. Can I run more than one ePOST proxy?
  12. Can I run an ePOST proxy from behind a NAT?
  13. How do I need to set my firewall for ePOST?
  14. Can ePOST run SSL servers for email access?
  15. How can I find out when new ePOST software is available?
  16. Can I run ePOST on a laptop?
  17. How long does ePOST take to deliver mail?
  18. How can I run ePOST without the GUI?
  19. How can I run ePOST from the command line?
  20. ePOST runs slowly with my mail program
  21. What's with all this serverless email stuff? I just want to pay my bills.
  22. ePOST tells me I'm behind a NAT but I'm not.
  23. Does ePOST solve the SPAM problem?
  24. How do I use UPnP with ePOST?

ePOST is a serverless email service, which provides the same type of standard email service as normal email systems, but does it in a decentralized way. Instead of relying of dedicated and maintained servers, ePOST is built using user's desktop machine. This allows ePOST to have better availability, less cost and less administrative overhead.
ePOST is written in Java, so you will need a recent version of the Java Virtual Machine (> 1.4.2) in order to run ePOST. You can download the Java Virtual Machine from Sun Microsystems. ePOST should run anywhere Java does. We test on Microsoft Windows, Linux, and Mac OS X.

If you are behind a NAT or a firewall, you will need to open some ports in the firewall so ePOST can work. See Question 12.

ePOST works by storing data on all participant desktops. This means that you desktop is storing some of your mail, but mail for a number of other users, too. All of the data in encrypted, however, which prevents other users from reading your mail, and vice-versa. In order to survive a failure by a participating machine, ePOST replicas all data onto multiple machines, and makes sure that a suffient number of copies of each data item are stored at all times.

In order to use ePOST, users simply point their email clients to SMTP, POP3, and IMAP proxies running on their local machine. All major email clients have been tested with ePOST and been found to work. The ePOST proxies conform to the IMAP, POP3, and SMTP RFCs. Each of these proxies translates commands from IMAP, POP3, or SMTP into actions at the p2p layer, and sends request out to other nodes in the network. Thus, to ePOST users, mail looks exactly the same as a normal email server.

A big advantage of ePOST is security. Within the ePOST system all your email is encrypted. See Question 5 for more information.

Another advantage of ePOST is that your mail server runs on your PC, giving you complete control. For example if the mail server crashes, you don't have to wait on an administrator to restart it. Since the mail server is local many operations may be much faster because they don't have to wait on the network.

ePOST is designed to be extremely durable. The Glacier storage layer can prevent data loss even if up to 60% of the ePOST ring fails. This gives data durability better than having a system administrator backing up your mail. Additionally due to the geographical distribution of ePOST nodes it is unlikely that a disaster will destroy a significant percentage of the nodes in the network.

All major email clients have been tested and work with ePOST, including: Almost any other email client program should work. See the clients page for more information on how to set up your email client.
All data stored in the p2p network is encrypted, and all mutable data is signed by the owner. This means that no one can read your mail, and that no one can forge any messages, or alter any of your folders.

All of the ePOST proxies (IMAP, SMTP, and POP3) support SSL encryption, meaning that your mail client can securely connect to the proxies without anyone eavesdropping on the conversation. Additionally, the IMAP proxy supports CRAM-MD5 authentication, which allows non-SSL connections to securly authenticate without sending the password over the wire.

Since you can use the same email reading client with ePOST as you do with your normal mail account, your email will look exactly the same as it does now. The only difference will be your email address, which will look like userid@location.epostmail.org.
Yes. Your new email address can be used by other, non-ePOST users to send you email, just like a normal email address. Email which is sent by you to other ePOST users (even at different locations) is delivered completely within the ePOST system, and does travel using normal email systems. If you send email to a non-ePOST user, your ePOST proxy will automatically detect this and deliver the email as a tranditional email.
Just like installing, uninstalling ePOST is extremely easy. First, shut down your ePOST proxy by clicking on the Kill button. Next, simply delete the folder in which ePOST resides. Lastly, be sure to remove automatic email forwarding from any existing accounts, if you have it set up.
If you are experiencing a problem with ePOST, feel free to contact us via the page. We are more than happy to help you get ePOST working.
Currently, multiple ePOST proxies are only supported if you have multiple ePOST addresses - ePOST is not designed to have two proxies for the same user online at the same time. However, we are looking at adding this feature in future versions. If you would like to run ePOST on two different machines for the same user, it is possible, but you must make sure that only one of the two proxies on online at a given time - otherwise, the proxies may both accept email, and you may miss some emails.
Yes, though you will either have to set up port forwarding or enable UPnP support on your NAT box (internet router). Many modern NAT boxes enable UPnP by default. Note that the UPnP support is currently in beta. You will have to download some additional libraries and change one setting to make it work. See question 24.
In general, ePOST only requires that port 10001 be opened on both TCP and UDP for correct functioning. The new UPnP support in version 2.4.6 can take care of this for you. If you would like to connect to your proxy from other machines with your mail client, you should also open up port forwarding on your IMAP port (default 1143) and SMTP port (default 2025).
Yes - ePOST ships with SSL servers for IMAP, POP3, and SMTP, but they are disabled by default. To enable them, simply click on the Prefs button in the ePOST status window, and select Use SSL for th appropriate servers. Restart your proxy, and the IMAP, POP3, and SMTP servers will run with SSL. They will be launched on the same ports as before.

Note:  Some issues have been discovered with Java 1.5 and SSL. We do not recommend using SSL if you are running Java 1.5 at this time. If you find this configuration to work, please contact us with your ePOST version, Java version, mail client, and mail client version.
If you are running ePOST, your proxy will periodically check to see if a new version of ePOST has been released. If it detects a new version, it will ask you if you want it to automatically download and install this new version. Otherwise, you can always periodically check for updates on this website.
Yes. ePOST is designed to be run on laptops, which periodically connect to the ring, and are later disconnected. ePOST will automatically detect, for example, if you machine has gone to sleep, and will restart itself to rejoin the ring upon waking up. Additionally, ePOST will work behind NATs, assuming that port forwarding can be appropriately set up.
ePOST delivers mail in a completely different architecture than existing email systems. Consequently, there is a very slight delay in delivering email - usually not more than one minute. It is possible to tune this delay by changing the value of Publish Interval under the POST tab in the preferences. The default value is 60000 milliseconds (60 seconds).
To do this, you will need to add two entries into your proxy.params file. You should open the file and add the lines
proxy_show_dialog=false
post_password=<your password>
replacing your password with the password for your ePOST account. Then, launch ePOST as normal or run it from the command line.
From the command prompt or a startup script, run the following command in the ePOST directory:
java -jar epost-version.jar
There are some performance problems with ePOST when a mail client uses multiple connections to download messages simultaneously. Configuring your mail client to use only one connection can help performance.

You can force Thunderbird to use one connection by doing the following.

  1. Right click on your ePOST account and select "Properties..."
  2. Select "Server Settings"
  3. Click the "Advanced..." button
  4. Select the IMAP tab
  5. set "Maximum number of server connections to cache" to 1
You're probably looking for Canada's epost online bill pay system.
If you have more than one network adaptor in your computer, including virtual network adaptors (like a VPN connection), ePOST may bind to the wrong IP address. Add
socket_bindAddress=aaa.bbb.ccc.ddd
in your proxy.params file, replacing aaa.bbb.ccc.ddd with your real IP address. A bug in the Linux version of Java also causes some systems to report their IP address as 127.0.0.1 to ePOST. If you are running on Linux you may also need to set socket_bindAddress as above.

You can find your proxy.params file in your ePOST directory. If you've never run ePOST before you can create that file in your ePOST directory.

Within the ePOST system, all user identities are cryptographically verified. That means that you know exactly who your email is coming from if it comes from another ePOST user. That makes it very easy to blacklist misbehaving users like spammers. So if everyone used ePOST for email it's likely that there would be very little SPAM.

Of course, ePOST can't verify the identies of non-ePOST users, so as long as most of the Internet isn't using ePOST for email, ePOST cannot solve the SPAM problem.

As of version 2.4.6 ePOST supports UPnP for NAT traversal. If you are upgrading from a previous version, download the following files into your epost/lib directory:

The upnplib above was written by Super Bonbon Industries and is also available in source form here under an apache license. The commons jars are from the apache project.