Title Configuration of Hidden Services with User Authorization in Vidalia
Student Bork Domenik
Mentor Matt Edman
Abstract
Using the current version of Tor a user is able to offer so-called Hidden Services. Possible Hidden Services are web servers or instant messengers, etc. The goal of providing Hidden Services with Tor is that the service provider can hide his IP address to the users.

The current version of Vidalia, the graphical user interface for Tor, has no configuration options for those kind of services. For now a potential provider of a Hidden Service has to manually configure his services by editing the torrc file. The purpose of this project is to include these features so that in a future version a service provider could easily configure, start, stop, edit his Hidden Services by simply entering the new configuration panel in Vidalia. I already implemented a first prototype of Hidden Service Configuration in Qt and at this point I'm starting to merge my code into the Vidalia Trunk.

But there are some more very interesting configuration options for Hidden Services like user authorization, which would give a service provider a lot more options to manage his services( see Proposal 121 for further information). For example, he could generate authorization data for each user to easily exclude/include single users from his Hidden Services. This reduces the effort of letting one user that had access to a Hidden Service in the past not any longer access it. Because for now he would have to let Tor generate a new .onion address for the remaining users and give it to them. With this new feature, the client authorization, he would only have to start up the service new without the single user, so that all other users may not notice anything about this because their .onion address hasn't changed and the service will still be available for them. Integration of this features in Vidalia and merging the code into the Trunk will be the main parts of this project.

Another goal of this project would be to make it possible for users to manage and store their authorization data, needed to access the Hidden Services, with Vidalia. This could be some kind of table where in one column a user could give every service a name or a short description to identify it and in the second column the authorization data he received by the service provider.