[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

End of my Google Summer of Code project



Hey list,

because the end of this years Google Summer of Code is standing in front of us, I decided to write a little mail to this list saying what exactly I have done during the last 3 months and how you could use it.

Let me first give you a brief introduction to client authorization for Tor Hidden Services: Proposal 121 [1] contains a design to restrict access to previously authorized clients. All authorization data is configured in Tor, so that all unauthorized requests can be blocked
during connection establishment. There are two modes, a "basic" mode that performs merely access control and a "stealth" mode that also hides service activity from unauthorized users.

My project was about to make it possible for users to start/stop/configure and store HiddenServices and the corresponding authorization data within Vidalia. In addition I implemented the communication to/from Tor to get and set the new configurations in Tor. A service provider has now the possibility to let Tor generate unique authorization data for every single user. This enables a service provider to include/exclude single users very fast and easy. Because of the changes according to Proposal 121 now a service provider can decide whether he wants to choose a better scalable but less secure authorization mode(basic) or a better secure but less scalable one(stealth mode) for each Service.

You can find the newest version of the things I implemented by checking out my branch(hidden-services [2]) and run it with the current version of Karsten Loesing's branch [3]. Below I'm going to give you links to Windows installers [4] and a short How-2 build the sources and get everything running.

If you want to give it a try, you can set up a hidden service with client authorization and access it with these two branches; there is no requirement to update Tor relays or directories in order to run hidden services with client authorization.

At this point I won't forget to thank all the Vidalia and Tor guys who made it possible for me to participate at this years GSoC. In special I'd like to thank Roger, Matt and Karsten who where watching over me and my project all the time and gave me a good advice and a helping hand whenever I needed one. I planned to stick in the project and Vidalia and I hope to be able to implement several other things in future, too.

Here's a short guide how 2 build and start everything:

Tor related:
1)Download the newest version of Karstens Tor branch (svn co https://tor-svn.freehaven.net/svn/tor/branches/121-hs-authorization/)
2)start a terminal and switch into the directory of 121-hs-authorization
3)type in the following command lines
 1. ./autogen.sh [Enter]
 2. ./configure [Enter]
 3. make
 4) if everything worked fine there shoul be the Tor binary in /121-hs-authorization/src/or/

Vidalia related:
1)Download the newest branch of my Vidalia branch (svn co https://svn.vidalia-project.net/svn/vidalia/branches/hidden-services)
2)start a terminal and switch into the directory of hidden-services branch
3)type in the following command lines
 1. cmake . && make [Enter]
4)if everything worked fine there should be a Vidalia binary in hidden-services/src/vidalia/
5)click on the binary to start Vidalia
6)click on settings and then on „General“ to configure the path to the Tor executable in that way that it points to the 121-hs-authorization version

[1] https://tor-svn.freehaven.net/svn/tor/trunk/doc/spec/proposals/121-hidden-service-authentication.txt

[2]  https://svn.vidalia-project.net/svn/vidalia/branches/hidden-services

[3] https://tor-svn.freehaven.net/svn/tor/branches/121-hs-authorization/

[4] Vidalia branch installer: http://www.vidalia-project.net/dist/vidalia-0.1.1-svn-hidserv-auth-2.exe
     Tor branch installer: http://www.vidalia-project.net/dist/tor-0.2.1.2-121hs-win32.exe

Best regards,

- --Domenik

Attachment: PGP.sig
Description: This is a digitally signed message part