This page describes the components the system will require.

User Agent

1. Tor-Enabled Browser

2. Non-Tor-Enabled Browser

3. FBX-UA App

3.1. TODO Create Client Application to Connect to Box Services via Client Cert

Key/Identity Exchange

Used to introduce users to one another.

1. caff

2. FBX-Identity App

2.1. TODO Create Client Application to Manage Key Exchange via Mutual QR-Code

This should be a FBuddy instance that can exercise sensors usually found on mobile-devices for data exchange.


1. Wireless

1.1. TODO Refuse Non-Tor Wireless HTTP Connections

Tor-based connections pass through to destination. Non-Tor connections are stopped by a landing page that teaches the user where to download the TBB (perhaps hosted locally?).


Web Server

1. Apache

Authentication (Identification)

1. mod_auth_env

1.1. TODO Identify (Authenticate) Users from Client Certs

1.2. TODO Get User Id from Client Cert Id



1.1. TODO Authorize Users from Client Cert Identity

2. TODO Middleware to Reject Requests that fail Authorization?


1. Plinth

1.1. TODO Manage User's Service Authorization

Enable services for some specific users and not others.

2. Ikiwiki

3. OwnCloud

4. FreedomBuddy

4.1. TODO Teach Boxes to Exchange Service Location Data Regularly

5. Hello

5.1. TODO Create PGP Keys for End-Users

5.2. TODO Export PGP Keys to SSL Client Certs for End Users

6. TODO Every Service Must Authorize via [[#Authorization|Authorization]]