During the development of a Bitcoin-related project, I found the need to perform anonymous peer-to-peer communication in Haskell. When people want a solution for anonymous networking, they usually point to either Tor or the lesser-known I2P. I have developed a Haskell API for both projects. In this post I will outline the differences between these projects and illustrate how to use them within Has