On the anonymity of anonymity systems

This technical report is based on a dissertation submitted March 2003 by
the author for the degree of Doctor of Philosophy to the University of
Cambridge, Queens’ College.

Abstract

Anonymity on the Internet is a property commonly identified with privacy
of electronic communications. A number of different systems exist which
claim to provide anonymous email and web browsing, but their
effectiveness has hardly been evaluated in practice. In this thesis we
focus on the anonymity properties of such systems. First, we show how
the anonymity of anonymity systems can be quantified, pointing out flaws
with existing metrics and proposing our own. In the process we
distinguish the anonymity of a message and that of an anonymity system.

Secondly, we focus on the properties of building blocks of mix-based
(email) anonymity systems, evaluating their resistance to powerful
blending attacks, their delay, their anonymity under normal conditions
and other properties. This leads us to methods of computing anonymity
for a particular class of mixes – timed mixes – and a new binomial mix.

Next, we look at the anonymity of a message going through an entire
anonymity system based on a mix network architecture. We construct a
semantics of a network with threshold mixes, define the information
observable by an attacker, and give a principled definition of the
anonymity of a message going through such a network.

We then consider low latency connection-based anonymity systems, giving
concrete attacks and describing methods of protection against them. In
particular, we show that Peer-to-Peer anonymity systems provide less
anonymity against the global passive adversary than ones based on a
“classic” architecture.

Finally, we give an account of how anonymity can be used in censorship
resistant systems. These are designed to provide availability of
documents, while facing threats from a powerful adversary. We show how
anonymity can be used to hide the identity of the servers where each of
the documents are stored, thus making them harder to remove from the
system.