Tor (The Onion Redirector) es una red oculta de navegación que, a través de comunicaciones encriptadas entre nodos redirectores que actúan como proxies anónimos, permite navegar de manera segura y anónima en Internet. Tienes una explicación detallada de su funcionamiento en su propia página web. Además de la navegación, permite alojar servicios ocultos, solo accesibles desde Tor, que actualmente ofrecen absolutamente de todo: desde herramientas para activistas en países bajo dictaduras, hasta mercados de la droga. En los últimos años Tor ha llegado al gran público debido a que se ha utilizado para actividades ilegales, como el mencionado "mercado de la droga" o la conspiración para el asesinato político anónimo.
Pero realmente nació con la intención de ayudar a activistas de todo el mundo a poder comunicarse y coordinarse con libertad. Y paradójicamente además fue en sus inicios un proyecto de la NSA (la agencia que nos espía a todos, para la que trabajaba Edward Snowden). En la actualidad es un proyecto Open Source y se mantiene mediante donaciones.
Para poder acceder a Tor se necesita un software especial descargable desde su página. Si quieres crear algún tipo de aplicación que trabaje sobre Tor (por ejemplo, un sistema de mensajería seguro usando Tor) no es una tarea fácil. Pero dada su actual popularidad, que no hace más que crecer, y a tenor de la reciente (y justificada) psicosis que existe con la privacidad, la necesidad de crear aplicaciones que aprovechen esta tecnología es cada vez mayor.
Para facilitarnos esta tarea, el programador británico Chris Copeland ha creado recientemente una biblioteca para .NET que envuelve la funcionalidad de Tor en una biblioteca fácil de usar. Lo que hace es controlar el proceso de Tor que está instalado en tu sistema, lanzándolo si es necesario y proporcionando interfaces para monitorizarlo y usarlo para realizar comunicaciones.
Si tienes interés en crear aplicaciones de comunicación con la máxima privacidad a través de Tor, esta biblioteca puede ser muy interesante.
El autor ha escrito un largo y detallado artículo en CodeProject explicando el funcionamiento básico interno y ofreciendo diversos ejemplos de uso.