Code added to Tor to support PIR-based onion service descriptor lookups

Roger Dingledine 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
src 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
.cvsignore 35f90b7820 More cleanup. Thanks for your help, Felipe. 22 yıl önce
AUTHORS f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
COPYING f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
ChangeLog f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
FAQ b289e15f07 why's it called tor? 21 yıl önce
HACKING 155c9b80ca onion proxy now speaks socks4a 21 yıl önce
INSTALL f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
LICENSE e7ecd5e1d5 actually writing down the current license state 21 yıl önce
Makefile.am e7ecd5e1d5 actually writing down the current license state 21 yıl önce
NEWS f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
README 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
TODO 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
acconfig.h 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
autogen.sh dcc9fa8657 ./autogen.sh runs auto* and then ./configure 22 yıl önce
configure.in 00a9e3732e remove popt dependency, consolidate config stuff 21 yıl önce
depcomp f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
install-sh f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
missing f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce
mkinstalldirs f09e25e9f5 added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir. 22 yıl önce

README

'tor' is an implementation of The Onion Routing system, as
described in a bit more detail at http://www.onion-router.net/. You
can read list archives, and subscribe to the mailing list, at
http://archives.seul.org/or/dev/.

Is your question in the FAQ? Should it be?

Quickstart version:

0) Download the absolute newest version. No, really.
http://freehaven.net/or/.
1) ./configure (or do the two-line version below, if you're on bsd)
2) make
3) cd src/config
4) ../or/or -f oprc -l debug&
5) download privoxy (www.privoxy.org), and add the line
"forward-socks4a / localhost:9050 ." (without the quotes) to its
config file.
6) point your mozilla (or whatever) to http proxy at localhost:8118 (this
points it through Privoxy, so you now get good data-scrubbing too.)
7) make sure you've set it up correctly: go to
http://www.junkbusters.com/cgi-bin/privacy and see what IP it says
you're coming from.

More detailed version:

Dependencies:

You're going to need Privoxy (www.privoxy.org) installed, and configured
to point at a socks4a proxy -- see below.

For tor itself, you're going to need openssl (0.9.5 or later
-- including the dev stuff and includes). If you're on Linux,
everything will probably work fine. OS X and BSD (but see below under
troubleshooting) now work too. Let us know if you get it working
elsewhere.

If you got the source from cvs:

Run "./autogen.sh", which will run the various auto* programs and then
run ./configure for you. From there, you should be able to run 'make'
and you'll be on your way.

If you got the source from a tarball:

Run ./configure and make as usual. There isn't much point in
'make install' yet.

If this doesn't work for you / troubleshooting:

If you have problems finding libraries, try
CPPFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" \
./configure
rather than simply ./configure.

Check out the list archives at http://archives.seul.org/or/dev/ and see
if somebody else has reported your problem. If not, please subscribe
and let us know what you did to fix it, or give us the details and
we'll see what we can do.

Once you've got it compiled:

If you want to run a local onion proxy (that is, you're a user, not a
node operator), go into src/config and look at the oprc file. You can
run an onion proxy by "../or/or -f oprc". See below for how to use it.

If you want to set up your own test network (that is, act like you're
a full set of node operators), go into src/config/ and look at the
routers.or file. Also in that directory are public and private keys for
various nodes (*-public, *-private) and configuration files for the
nodes (*-orrc). You can generate your own keypairs with the orkeygen
program, or use the provided ones for testing.

Once you've got your config files ready, you're ready to start up your
network. I recommend using a screen session (man screen), or some
other way to handle many windows at once. I open a window for each
onion router, go into the src/config directory, and run something like
"../or/or -f moria2-orrc".

How to use it:

Download privoxy (www.privoxy.org). Install it. Add the following
line to your 'config' file:
forward-socks4a / localhost:9050 .
Don't forget the . at the end.

From here, you can point your browser/etc at localhost:8118 and your
traffic will go through Privoxy, then through the onion proxy, to the
onion routing network.

For more convenient command-line use, I recommend making a ~/.wgetrc
with the line
http_proxy=localhost:8118
Then you can do things like "wget seul.org" and watch as it downloads
from the onion routing network.

For fun, you can wget a very large file (a megabyte or more), and
then ^z the wget a little bit in. The onion routers will continue
talking for a while, queueing around 500k in the kernel-level buffers.
When the kernel buffers are full, and the outbuf for the AP connection
also fills, the internal congestion control will kick in and the exit
connection will stop reading from the webserver. The circuit will
wait until you fg the wget -- and other circuits will work just fine
throughout. Then try ^z'ing the onion routers, and watch how well it
recovers. Then try ^z'ing several of them at once. :)