[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freehaven-dev] Re: [Freenet-chat] Want to write a Freenet client? Read this.

On Sun, Mar 12, 2000 at 02:41:21PM -0600, Brett Wooldridge wrote:
>    As you could tell by my earlier post on security, I am concerned
> about the potential for tracing, evesdropping, and traffic analysis.
> I'm working on a paper with security proposals as we speak, but
> I wanted to comment on this recommendation now.  One of the
> issues I was addressing in my paper is the need to ensure no
> data areas in the header can be used for "rider" information.  I
> was thinking at the time about optional fields or longer than necessary
> fields in the header, but this proposal for a freeform field exposes
> the network to an unnessary security risk.  This field, or any optional
> field can be used to insert "rider" or "tag" information, which can
> be used to trace the path of data back to the requester.
> This kind of tagging would most likely occur by government
> agencies, such as the NSA, where they have many thousands of
> data taps across the internet where they could easily scan all
> passing through segments of the backbone for taggants placed
> in packet headers.
> Such an agency would simply run a node in which they intentionally
> placed illicit information, and had modified the code to tag
> DATA_REPLYs with a highly unique taggant which could be
> monitored, in large-part, as it traversed the net.  This is made even
> easier if they are targeting a specific user.  In that case they don't
> even need to monitor the path of transit, they merely tap the target's
> immediate upstream feed, and the receipt of the tagged packet
> is prima facie evidence of solicitation of said information (if the
> DATA_REPLY does not subsequently forward out of that node).
> I will move with all due haste to write-up my security proposals, but
> I hope you don't mind if I comment on potential problem areas when
> I see them.
> brett

This looks like it's coming from some very well-thought-out ideas. I
wanted to make you aware of the project that I'm working on (along with
5 others here in Cambridge) called the Free Haven Project. Our goal is
to design a robust data haven with stronger anonymity than the other
projects are trying to provide. We get this stronger anonymity primarily
through using a mixnet for communications. Another focus we have is using
existing software and protocols (rather than designing a new one, like
Freenet seems to be spending most of its time doing.)

We've been giving some thought to traffic analysis attacks, but the
suggestion you propose above (making sure not to keep anything in the
headers that can identify the traffic as Free Haven related) is a
tricky one. We'd been planning to put a plaintext header on our traffic
in the event that somebody signs up an unsuspecting victim to be a node
on the network. (The plaintext header would describe what Free Haven is,
etc.) Of course, this header is not protocol-related: all protocol-related
traffic is encrypted with the public key of the node it's going to.

Anyway, I'm getting ahead of myself here. We're still in the design and
development stages (and we don't have time to answer a lot of publicity
and newbie questions), so we haven't publicized our existence yet. But if
you wanted something a little bit more solid to consider traffic analysis
on, we'd be happy to chat with you about our protocols and designs.

You can find more information on our (very rough) website at

Our more formal definition of anonymity is outlined here:

Please let me know if you have any questions or thoughts.
Most of the interesting material is in the list archives for now,
until we get organized and build a faq and a new document.