188 Pages
English

Architecture and components of secure and anonymous peer-to-peer systems [Elektronische Ressource] / Heiko Niedermayer

-

Gain access to the library to view online
Learn more

Description

Network Architectures Dissertationand ServicesNET 2010-07-1Architecture and Components of secure and anonymous Peer-to-Peer SystemsHeiko NiedermayerNetwork Architectures and ServicesDepartment of Computer ScienceTechnische Universität MünchenTechnische Universitat Munchen¨ ¨Fakult¨at fu¨r InformatikLehrstuhl fu¨r Netzarchitekturen und NetzdiensteArchitecture and Components of secure andanonymous Peer-to-Peer systemsHeiko NiedermayerVollstan¨ diger Abdruck der von der Fakult¨at fu¨r Informatikder Technischen Universitat Munchen¨ ¨zur Erlangung des akademischen Grades einesDoktors der Naturwissenschaften (Dr. rer. nat.)genehmigten Dissertation.Vorsitzender: Univ.-Prof. Dr. Johann SchlichterPru¨fer der Dissertation: 1. Univ.-Prof. Dr. Georg Carle2. Univ.-Prof. Dr. Claudia EckertDieDissertationwurdeam13.10.2009beiderTechnischenUniversitat¨ Mu¨ncheneingereichtund durch die Fakultat¨ fu¨r Informatik am 21.05.2010 angenommen.

Subjects

Informations

Published by
Published 01 January 2010
Reads 29
Language English
Document size 2 MB

Exrait

Network Architectures
Dissertationand Services
NET 2010-07-1
Architecture and Components of secure and
anonymous Peer-to-Peer Systems
Heiko Niedermayer
Network Architectures and Services
Department of Computer Science
Technische Universität MünchenTechnische Universitat Munchen¨ ¨
Fakult¨at fu¨r Informatik
Lehrstuhl fu¨r Netzarchitekturen und Netzdienste
Architecture and Components of secure and
anonymous Peer-to-Peer systems
Heiko Niedermayer
Vollstan¨ diger Abdruck der von der Fakult¨at fu¨r Informatik
der Technischen Universitat Munchen¨ ¨
zur Erlangung des akademischen Grades eines
Doktors der Naturwissenschaften (Dr. rer. nat.)
genehmigten Dissertation.
Vorsitzender: Univ.-Prof. Dr. Johann Schlichter
Pru¨fer der Dissertation: 1. Univ.-Prof. Dr. Georg Carle
2. Univ.-Prof. Dr. Claudia Eckert
DieDissertationwurdeam13.10.2009beiderTechnischenUniversit¨atMu¨ncheneingereicht
und durch die Fakult¨at fu¨r Informatik am 21.05.2010 angenommen.Cataloging-in-Publication Data
Heiko Niedermayer
Architecture and Components of secure and anonymous Peer-to-Peer Systems
Dissertation, July 2010
Network Architectures and Services, Department of Computer Science
Technische Universit¨at Mu¨nchen
ISBN 3-937201-13-0
ISSN 1868-2634 (print)
ISSN 1868-2642 (electronic)
Network Architectures and Services NET 2010-07-1
Series Editor: Georg Carle, Technische Universit¨at Mu¨nchen, Germany
c 2010, Technische Universit¨at Mu¨nchen, GermanyAbstract
Changes to lower layers of the Internet architecture are difficult, in particular on network
and transport layer. Standardization and economic incentives for manufacturers and In-
ternet service providers are necessary. As a consequence, many desirable services cannot
be realized there. The application layer is more flexible. End-users can run their own
services and networked applications. This led to the advent of Peer-to-Peer systems in
the late 1990ies. Peer-to-Peer systems enable normal users to provide the services instead.
Despite the subsequent hype and research, the Peer-to-Peer paradigm is not yet a fully
mature technology. In particular, it faces severe and fundamental security issues.
This dissertation covers three major topics: Peer-to-Peer, Security, and Anonymity. We
willpresentandevaluatecomponentsandavarietyofaspectsofthearchitectureofPeer-to-
Peer systems. Many classifications of Peer-to-Peer systems are not suitable for describing
or designing a system. There is often a focus on a small number of aspects, that do
not cover all problems from bootstrapping over routing to security. We see Peer-to-Peer
systems as a combination of a set of solutions. Each solution solves a particular problem
and some common problems are presented as categories. This is not only suitable for
filesharing applications, but also valid for commercial or future Peer-to-Peer applications.
Description is, however, not our primary goal. We think that structuring the problem of a
Peer-to-Peer system into necessary components helps to design Peer-to-Peer systems and
to structure the problems that need to be solved.
Optimization is another issue. In case of Peer-to-Peer systems this includes a suitable
distribution of load among the peers and the reduction of distances (latency) in the net-
work. Systems do not necessarily end up with a uniform load. In fact, we show that most
systems will not. We discuss load balancing for a distributed gaming application. A par-
ticular problem for load balancing is also that items usually do not have a uniform weight.
Given the common Power Law distributions some items may have an extreme weight so
that load balancing can only succeed if the handling of this item is further distributed
among multiple nodes. For the optimization of distances we looked at Proximity Node
Selection and evaluated its impact. We created a diagram for the selection of solutions for
both problems when designing a system.
Security is a big problem for Peer-to-Peer systems and many security issues are caused by
inherentpropertiesofthesesystems. Wecategorizethesecurityproblemsandintroducethe
Cheapriding attack. It is a variant of freeriding and operates against reputation systems.
It can hardly be stopped completely. The basic idea to mitigate the attack is to adapt
the benefit gained for a good action in a reputation systems as good as possible to the
actual cost of the action. The attack may be detected by checking the weight of positive
and negative feedback. Security in this thesis is not limited to security purely for Peer-to-
Peer systems. The performance of cryptographic operations and transport protocols goes
beyond the scope of Peer-to-Peer systems. We conclude that performance of symmetric
cryptography is not a bottleneck on today’s hardware. In our studies hash functions
were often more expensive than encryption. Also from this perspective it is good thatii
NIST is currently organizing a competition for a new hash function standard. Public Key
cryptography and Identity-based cryptography are both similar expensive and way more
expensive than symmetric cryptography. However, given a moderate usage they are no
problem for today’s computers.
A key part in our work is about new ways to realize authentication. Our focus is again
on Peer-to-Peer systems. However, the fundamental problem can also be found on human
layeraswellasinallWeb2.0-alikenetworkswherehumansinteractwitheachotherinstead
of purely consuming services. Our approach fills a gap between the rather unrealistic or
slightly insecure decentralized approaches and the secure centralized approaches. In the
latter,acentralauthorityexistsandprovidesthebaseforauthenticationandothersecurity
services. We build our work on social clusters of humans that can be used to partition the
network into domains. Each domain has a centralized authority. The more scalable level
of the domains is used to establish trust between different domains. This requires that the
protocols as well as software that uses them need to be able to deal with the uncertainty
whennotrustyetexists. Fortheauthenticationwedevelopedtwoauthenticationprotocols
that include all necessary four parties (A and B as well as their local authorities).
Finally, anonymity is another domain where the Peer-to-Peer paradigm is a reasonable
choice. We describe the fundamental operation of anonymization networks and have a
speciallookatthesystemI2P.TheanonymizationconceptMOREwasinpartsco-authored
by the author of this thesis. We will describe the system and analyze it. MORE was
developed to protect client and server and to fight pattern-based attacks. The analysis
will show that even the radical approach of MORE is not sufficient to completely prevent
this kind of attacks.Zusammenfassung
Die Einfu¨hrung neuer Dienste im Internet ist schwierig, sei es auf Netzwerk- oder auch
Transportschicht. Dies erfordert Standardisierung in den entsprechenden Gremien. Ohne
signifikantewirtschaftlicheAnreizefu¨rHerstellerundInternet-Service-Provideristdaru¨ber-
hinaus mit keiner weitreichenden Einfuhrung zu rechnen. Aus diesem Grund konnen viele¨ ¨
wu¨nschenswerteDienste,beispielsweiseInternet-weiterMulticast,dortnichtrealisiertwer-
den. DieAlternativeistdieRealisierungdieserFunktionalitataufderAnwendungsschicht.¨
Diese ist deutlich flexibler und erlaubt auch normalen Anwendern die Gestaltung eigener
DiensteundverteilterAnwendungen. DerAufstiegderPeer-to-Peer-Systemezurzeitweise
großtenVerkehrsquelleimInternetisteinErgebnisdieserSituation. DennochistdasPeer-¨
to-Peer-Paradigmakeinevollverstandene Technik. Insbesondere hatsie mitschwerwiegen-
den und fundamentalen Sicherheitsproblemen zu kampfen.¨
In dieser Arbeit werden drei große Themenbereich bearbeitet und miteinander verknu¨pft.
DiessindPeer-to-Peer-Systeme,NetzwerksicherheitundAnonymitat. ZuerstwerdenKom-¨
ponentenundverschiedeneAspektederArchitekturvonPeer-to-Peer-Systemenvorgestellt
undevaluiert. VieleKlassifizierungenvonPeer-to-Peer-Systemeneignensichnurwenigzur
eigentlichen Systembeschreibung oder als Architekturhilfe. Insbesondere vernachl¨assigen
siedieganzheitlicheBetrachtungderSysteme,dievomBootstrappinguberRoutingbiszur¨
Sicherheit reicht. Aus diesem Grund werden hier Peer-to-Peer-Systeme als eine Kombina-
tioneinerMengevonkleinerenProblemstellungenmitverschiedenenLosungenalseinzelne¨
Bausteine betrachtet. Diese Betrachtung eignet sich daru¨berhinaus nicht nur fu¨r klassis-
che Filesharingnetze, sondern ist generisch genug, um zuku¨nftige wie auch kommerzielle
Systeme beschreiben zu konnen. Die Beschreibung ist allerdings nur ein sekundares Ziel,¨ ¨
vielmehr soll durch die Betrachtung der notwendigen Komponenten die Architektur von
Systemen erleichert und strukturierter werden.
Zur Architektur von Systemen gehor¨ t nebem dem abstrakten Entwurf auch die Opti-
mierung der Leistungsfahigkeit. Im Falle von Peer-to-Peer-Systemen beinhaltet dies u.a.¨
die geeignete Verteilung von Last sowie die Optimierung der Abstan¨ de (Latenzen) im
Netzwerk. In der Arbeit wird dazu gezeigt, dass sich nicht zwingend eine gleichformige¨
Belastung der Systeme einstellt. Fu¨r eine virtuelle Spieleanwendung wurde gezeigt, wie
sich Last optimieren lasst. Daruberhinaus ist zu beachten, dass einzelne Elemente im¨ ¨
System ein starkes Gewicht haben k¨onnen und die Verteilung einer Aufgabe auf mehrere
Knotendaheroftnotwendigerscheint. ZurOptimierungderDistanzenimNetzwerkwurde
Proximity Node Selection untersucht und wie auch fu¨r die Lastbalancierung ein Entschei-
dungsablauf fu¨r den Systementwurf erstellt.
Sicherheit in Peer-to-Peer-Systemen ist ein großes Problem, welches durch die inh¨arenten
Eigenschaften der Systeme verursacht wird. In der Arbeit findet sich eine Kategorisierung
der Probleme. Daru¨berhinaus wird der Cheapriding-Angriff vorgestellt, welcher als eine
Variante des Freeridings angesehen werden kann. Dieser Angriff geht gegen Reputation-
ssysteme und kann nur bedingt erfolgreich bekampft werden. Die Anpassung der Beloh-¨
nung im Reputationssystem an tatsac¨ hliche Kosten ist ein Weg, die Auswirkungen desiv
Angriffs zu minimieren. Sicherheit wird im folgenden dann auch unabhan¨ gig von Peer-
to-Peer-Systemen betrachtet. Verschiedene kryptographische Verfahren werden auf ihre
Geschwindigkeit hin untersucht. Dabei zeigt sich, dass symmetrische Kryptographie auf
heutigen Rechner kein Engpass mehr darstellt. Oft sind Hashfunktionen schon teurer
und es zeigt sich, dass das NIST auch aus Leistungssicht gut daran tut, einen Wettbe-
werb zur Ermittlung eines neuen Hashfunktionsstandards durchzufu¨hren. Public-Key-
Kryptographie wie auch identitatsbasierte Kryptographie sind in etwa gleich teuer und¨
sollten durch ihre hohen Kosten nicht u¨berm¨aßig verwendet werden. Bei moderater Ver-
wendung sind aber auch sie kein Problem mehr bei heutiger Technik.
EinzentralerAbschnittderArbeitgehtumneueVerfahrenzurAuthentisierung. DerSchw-
erpunkt wird hier auch auf Peer-to-Peer-Systeme gelegt. Allerdings findet sich das darun-
terliegendeProblemauchgenerellaufmenschlicherEbenesowieimNetzwerkwieder,wenn
Menschen wie im Web2.0 miteinander agieren statt nur zu konsumieren. Der vorgeschla-
gene Ansatz baut dabei eine Brucke zwischen wenig realistischen und eher unsicheren¨
verteilten Ans¨atzen und dem sicheren zentralen Ansatz, welcher auf einer zentralen Au-
toritat beruht. Soziale Cluster von Menschen teilen dabei die Knoten des Netzwerks in¨
Teilmengen ein, welche wir Domain nennen und welche selbst eine lokale zentrale Au-
toritat beinhalten. Auf dieser skalierbareren Ebene wird dann Vertrauen zwischen Doma-¨ ¨
nen aufgebaut. Da dies notwendigerweise mit zeitweise unsicheren Beziehungen einher
geht, wird der Beziehungszustand bei der Authentisierung den beteiligten Peers und deren
Software mitgeteilt, so dass diese fu¨r die jeweilige gerade laufende Anwendung entscheiden
konnen, ob sich auch mit Unsicherheiten umgehen mogen oder die Autorisierung ver-¨ ¨
weigern. Fur den Authentisierungsablauf wurden dafur zwei angepasste kryptographische¨ ¨
Protokolle mit den notwendigen vier Parteien (A und B sowie deren Autorit¨aten) entwick-
elt und evaluiert.
Anonymit¨at ist eine weitere Dom¨ane, in der das Peer-to-Peer-Paradigma sinnvoll einge-
setzt werden kann. Hierzu wird einerseits die Funktionsweise von Anonymisierungsnetzen
beschrieben und am Beispiel des Peer-to-Peer-Anonymisierers I2P n¨aher beleuchtet. Das
Anonymisierungskonzept MORE wurde teilweise vom Autor mitentwickelt und wird im
abschließenden Kapitel beschrieben und nachfolgend analysiert. MORE wurde entwor-
fen, um beide, Client und Server, zu schutzen und Muster-basierte Angriffe zu vermeiden.¨
Es zeigt sich, dass selbst der radikale Ansatz von MORE diese Angriffe nicht komplett
vermeiden kann.Acknowledgements
This thesis would not have been possible without many people in Tubingen (where it¨
started) and in Munich (where it now ended). My special thanks go to Prof. Georg Carle
for supervising the dissertation as well as to the rest of the examination committee, Prof.
ClaudiaEckertandProf. JohannSchlichter. Icannotnameallthenumerousstudentsand
colleagues that provided valuable input in discussions and collaborations (to name a few:
Marc Fouquet, Ralph Holz, Ali Fessi, Johannes Riedel, Olaf Landsiedel, Simon Rieche).
Special thanks also go to Prof. Peter Hauck in Tubingen for supervising joint work on¨
cryptographic protocols and security as well as to Prof. Klaus-J¨orn Lange and PD Dr.
Klaus Reinhardt in Tu¨bingen for joint seminars on formal methods in network security. I
am also thankful for stimulating discussions with fellow computer scientists in Tubingen¨
at the Sand bus stop about logic and philosophy.
Finally, I would like to thank my family for supporting me during my time as a student
and my friends for providing a world without academic discussions on computer science.vi