-
A KATHOLIEKE UNIVERSITEIT LEUVENFACULTEIT
INGENIEURSWETENSCHAPPENDEPARTEMENT ELEKTROTECHNIEKKasteelpark
Arenberg 10, B-3001 Leuven-Heverlee
Cryptographic Algorithms and Protocols for
Security and Privacy in Wireless Ad Hoc Networks
Promotor:
Prof. dr. ir. B. Preneel
Proefschrift voorgedragen tot
het behalen van het doctoraat
in de ingenieurswetenschappen
door
Stefaan SEYS
mei 2006
-
A KATHOLIEKE UNIVERSITEIT LEUVENFACULTEIT
INGENIEURSWETENSCHAPPENDEPARTEMENT ELEKTROTECHNIEKKasteelpark
Arenberg 10, B-3001 Leuven-Heverlee
Cryptographic Algorithms and Protocols for
Security and Privacy in Wireless Ad Hoc Networks
Jury:
Prof. H. Neuckermans, voorzitter
Prof. B. Preneel, promotor
Prof. C. Mitchell (RHUL)
Prof. F. Piessens
Prof. J. Vandewalle
Prof. I. Verbauwhede
Proefschrift voorgedragen tot
het behalen van het doctoraat
in de ingenieurswetenschappen
door
Stefaan SEYS
U.D.C. 681.3*D46 mei 2006
-
c© Katholieke Universiteit Leuven – Faculteit
IngenieurswetenschappenArenbergkasteel, B-3001 Heverlee
(Belgium)
Alle rechten voorbehouden. Niets uit deze uitgave mag
vermenigvuldigd en/ofopenbaar gemaakt worden door middel van druk,
fotocopie, microfilm, elektron-isch of op welke andere wijze ook
zonder voorafgaande schriftelijke toestemmingvan de uitgever.
All rights reserved. No part of the publication may be
reproduced in any formby print, photoprint, microfilm or any other
means without written permissionfrom the publisher.
D/2006/7515/53
ISBN 90-5682-719-7
-
Acknowledgements
There are lots of people I would like to thank for a variety of
reasons.
First, I want to thank my promotor Prof. Bart Preneel for giving
me the oppor-tunity to pursue a Ph.D. at COSIC. Bart is especially
thanked for his guidanceand advice (quite literally 24/7) during
the past years, and for carefully readingand correcting earlier
drafts of this thesis.
I am also very grateful to Prof. Frank Piessens and Prof. Chris
Mitchell formanaging to read the whole manuscript so thoroughly in
record time and pro-viding helpful suggestions and comments to
improve this thesis. I want to thankProf. Joos Vandewalle and Prof.
Ingrid Verbauwhede for kindly accepting to bemembers of the jury,
and Prof. Neuckermans for chairing it.
A big thanks goes to all my past and current COSIC fellows for
their friendlinessand help. In particular, I would like to thank
Claudia Dı́az for the enjoyabletime we spent researching all things
anonymous, and Dave Singelée for our joinedwork on ad hoc network
security. Special thanks go to my former colleagues JorisClaessens
for setting a great example, and Wim Moreau for making me feel
athome in COSIC from day one. I thank my long-time officemates and
friendsRobert Maier, Thomas Herlea and Dave Singelée for always
living up to thehundreds of small and bigger requests I must have
made during the past years. Iwould also like to thank Karel Wouters
and Dave for taking care of some of myresponsibilities during the
busy time of writing this thesis.
Péla Noë deserves a big thank you for keeping me from drowning
in my oh-so dreaded paperwork and other practical matters. I also
thank Péla for herfriendship and showing interest in life outside
COSIC. I would like to thankElvira Wouters for her patience and
valuable help with all sorts of administrativematters.
A word of thanks also goes to my long-time friends for showing
(or at leastfeigning) interest in my work and providing an easy
escape from my Ph.D life.
i
-
ii
I would like to thank my family for their continuous
encouragements, especiallymy parents for their unconditional
support, and finally my partner Michèle forher love and
enthusiasm.
I want to acknowledge the K.U.Leuven and the Institute for the
Promotion ofInnovation by Science and Technology in Flanders (IWT),
for funding my researchwork.
Stefaan SeysMay 2006
-
Abstract
Wireless ad hoc networks are the next evolutionary step in
digital communica-tion systems. Supporting security and privacy are
essential before these networkscan become an everyday reality.
Without the necessary measures, wireless com-munications are easy
to intercept and the activities of the users can be
traced.Moreover, the specific properties of wireless ad hoc
networks, in particular thelack of fixed servers and the limited
resources of the network devices, presentinteresting challenges
when designing security and privacy solutions in this en-vironment.
This thesis presents solutions for a number of important
securityproblems in wireless ad hoc networks.
The thesis starts with an overview of the efficiency of the most
important crypto-graphic primitives, including block ciphers,
stream ciphers, hash functions, publickey cryptosystems, and
digital signature schemes. Efficiency means cycles (or en-ergy) per
Byte or operation. The information that is collected here was used
inthe design of the cryptographic protocols presented in the
thesis.
One-time signature schemes based on a one-way function are an
attractive so-lution for low-power devices, as they can be
efficiently implemented using blockciphers or hash functions. The
drawback is that they require large keys that canonly be used once.
This thesis evaluates the overall performance of several one-time
signature schemes and public key authentication mechanisms, and
comparesthem with conventional signature schemes.
Cooperation can be useful to share the load of a demanding task
in resourceconstrained environments. This thesis presents a
construction to transform a one-time signature scheme into a
cooperative threshold one-time signature scheme,which allows
multiple users to jointly sign a message. This scheme is used
tobuild a complete authentication mechanism for sensor
networks.
Key establishment is a difficult task in ad hoc networks due to
the absence offixed servers. The thesis presents a key
establishment scheme for dynamic ad hoc
iii
-
iv
networks that does not rely on fixed servers or public key
cryptography. Thiskey establishment scheme is integrated with an
existing routing scheme for adhoc networks. The security and
efficiency of the resulting scheme are analyzed.
Finally, the thesis deals with privacy in ad hoc networks. The
state of the artof anonymous routing schemes for ad hoc networks is
presented and analyzed.Following this analysis, the thesis presents
a novel anonymous routing schemefor wireless ad hoc networks that
protects the anonymity of the users against astronger adversary,
while being more efficient than previous works. The securityand
efficiency of this scheme are analyzed.
-
Samenvatting
Draadloze ad-hoc netwerken zijn de volgende evolutionaire stap
in digitale com-municatiesystemen. Vooraleer deze netwerken op
grote schaal ingezet kunnenworden, zal men de nodige maatregelen
moeten ondernemen om de beveiligingen privacy van de gebruikers en
hun gegevens te kunnen garanderen. Zonder ex-tra maatregelen is het
eenvoudig om draadloze communicatie te onderscheppenen de
activiteiten van de gebruikers te volgen. Het ontwerp van deze
maatregelenwordt bemoeilijkt door de specifieke eigenschappen van
ad-hoc netwerken, in hetbijzonder de afwezigheid van vaste servers
en de beperkte rekenkracht, geheugen,bandbreedte en energievoorraad
van de mobiele toestellen. Dit resulteert danook in een boeiend en
uitdagend onderzoeksdomein. Deze thesis is gericht op hetoplossen
van een aantal belangrijke beveiligingsproblemen.
De thesis begint met een overzicht van de efficiëntie van de
belangrijkste crypto-grafische primitieven: blok- en stroomcijfers,
hashfuncties, publieke-sleutelvercij-feringsalgoritmen en digitale
handtekeningen. Efficiëntie betekent hier het aantalprocessorcycli
(of energieverbruik) per Byte of per operatie. De informatie
diehier verzameld is, werd gebruikt in het ontwerp van de
protocollen die in dezethesis gepresenteerd worden.
Eénmalige-handtekeningschema’s, die gebaseerd zijn op een
éénwegsfunctie, zijninteressant voor toestellen met beperkte
capaciteiten, aangezien zij efficiënt ge-implementeerd kunnen
worden op basis van blokcijfers of hashfuncties. Het na-deel van
deze schema’s is echter dat ze erg grote sleutels nodig hebben die
slechtséénmaal gebruikt kunnen worden. Deze thesis evalueert de
globale performantievan verschillende
éénmalige-handtekeningschema’s en authentiseringsmechanis-men
voor publieke sleutels; en vergelijkt deze met conventionele
schema’s.
Deze thesis stelt een constructie voor om
éénmalige-handtekeningschema’s omte zetten naar een
drempelschema. In dit schema kunnen een aantal knopensamenwerken om
een handtekening te plaatsen. Deze vorm van samenwerkingkan
bruikbaar zijn daar zij toelaat een zware taak te verdelen over
verschillende
v
-
vi Abstract in Dutch
toestellen. Dit schema wordt vervolgens gebruikt om een volledig
authentise-ringsmechanisme voor sensornetwerken te ontwerpen.
Het afspreken van geheime sleutels is niet eenvoudig in ad-hoc
netwerken door deafwezigheid van vaste servers. Deze thesis stelt
een mechanisme voor om geheimesleutels af te spreken in een
dynamisch ad-hoc netwerk. Om het systeem zo effi-ciënt mogelijk te
houden, maken we geen gebruik van publieke-sleutelcryptografie.Het
schema werkt autonoom, zonder hulp van vaste knopen die dienst doen
alssleutelverdelingscentra. Dit schema wordt vervolgens
gëıntegreerd met een rou-teringsprotocol voor ad-hoc netwerken. De
veiligheid en de efficiëntie van hetprotocol worden
geanalyseerd.
Ten slotte handelt deze thesis ook over privacy in ad-hoc
netwerken. De thesisgeeft een volledig overzicht en analyse van de
state-of-the-art van anonieme rou-teringsprotocollen voor ad-hoc
netwerken. Na deze analyse volgt de beschrijvingvan een nieuw
anoniem routeringsprotocol dat bestaande protocollen tracht
teverbeteren op twee gebieden: efficiëntie en anonimiteit. De
veiligheid en effi-ciëntie van het schema worden geanalyseerd.
-
List of Tables
2.1 Performance of ASIC implementations of 128-bit AES and MUGI.
172.2 Power consumptions of SHA-1, AES, RSA, DSA and ECDSA on
a 32-bit Intel StrongARM SA1100 @ 206MHz. . . . . . . . . . . .
172.3 Performance of 128-bit AES on several platforms. . . . . . .
. . . . 172.4 Software performance of cryptographic primitives. . .
. . . . . . . 322.5 Elliptic curve, symmetric primitives, RSA and
discrete log in F∗q
key length comparison. . . . . . . . . . . . . . . . . . . . . .
. . . . 322.6 Software performance of public key primitives. . . .
. . . . . . . . 33
3.1 Cost of the LDW for different group sizes g. . . . . . . . .
. . . . . 463.2 Authentication paths for a Merkle tree with 8
leaves. . . . . . . . . 493.3 Efficiency of one-time signature
schemes. . . . . . . . . . . . . . . . 663.4 Summary of digital
signature costs for message hash size s = 160. . 68
5.1 Expected number of turns before a node is no longer
isolated. . . . 995.2 Efficiency of the EHBT scheme. . . . . . . .
. . . . . . . . . . . . . 1025.3 Maximum supported compromised link
keys for several configura-
tions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . 106
6.1 Comparison of different anonymous routing schemes. . . . . .
. . . 1316.2 Average privacy and privacy/cost ratio of two
probability distri-
butions for TTL value selection. . . . . . . . . . . . . . . . .
. . . . 1436.3 Average privacy and privacy/cost ratio of two
probability distri-
butions for padding length selection. . . . . . . . . . . . . .
. . . . 146
vii
-
List of Figures
2.1 Schematic model of an encryption scheme. . . . . . . . . . .
. . . . 152.2 Schematic model of a digital signature scheme. . . .
. . . . . . . . 21
3.1 Security level offered by the HORS scheme. . . . . . . . . .
. . . . 433.2 Evolution of the number of public keys when using the
HORS
signature scheme. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . 443.3 Example Merkle hash tree with 8 leaves. . . . . . .
. . . . . . . . . 483.4 Public key chains . . . . . . . . . . . . .
. . . . . . . . . . . . . . . 523.5 Signing efficiency of one-time
signature schemes. . . . . . . . . . . 633.6 Verification
efficiency of one-time signature schemes. . . . . . . . . 643.7
Communication efficiency of one-time signature schemes. . . . . . .
643.8 Energy consumption of signer (communications and
computations). 653.9 Energy consumption of verifier (communications
and computations). 653.10 Overall energy consumption of one-time
signature schemes. . . . . 66
4.1 Preparation phase of the cooperative threshold one-time
signaturescheme. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 78
4.2 Example sensor network with three cells. . . . . . . . . . .
. . . . . 83
5.1 Evolution of node W ’s neighborhood as it travels through
the net-work. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 92
5.2 Multiple routes that can be used to establish link keys. . .
. . . . . 945.3 Network model. Nodes move on the grid of the torus.
. . . . . . . 995.4 Probability of having at least one node in the
overlap between two
consecutive neighborhoods. . . . . . . . . . . . . . . . . . . .
. . . 1005.5 Probability that a node does not share a key with any
of the nodes
in its neighborhood. . . . . . . . . . . . . . . . . . . . . . .
. . . . 100
ix
-
x List of Figures
6.1 Intercepting and blocking of messages. . . . . . . . . . . .
. . . . . 1146.2 DSR route discovery process. . . . . . . . . . . .
. . . . . . . . . . 1206.3 Trapdoor Boomerang Onion used in ANODR.
. . . . . . . . . . . . 1236.4 ANODR Route Request and Reply
messages transmitted by node
Ni, and elements stored in its routing table. . . . . . . . . .
. . . . 1246.5 ASR Route Request and Reply messages, and elements
stored in
the routing table by node Ni. . . . . . . . . . . . . . . . . .
. . . . 1256.6 MASK Route Request and Reply messages, and elements
stored
in the routing table by node Ni. . . . . . . . . . . . . . . . .
. . . 1276.7 SDAR Route Request and Reply messages, and elements
stored in
the routing table by node Ni. . . . . . . . . . . . . . . . . .
. . . . 1296.8 Hidden route from source S to destination D. . . . .
. . . . . . . . 1346.9 Evolution of padding and TTL values of a
message. . . . . . . . . . 1406.10 Privacy and cost of an
exponential probability distribution for
TTL value selection. . . . . . . . . . . . . . . . . . . . . . .
. . . . 1446.11 Privacy and cost of an exponential probability
distribution for
padding length selection. . . . . . . . . . . . . . . . . . . .
. . . . . 146
-
List of Acronyms
ADSL Asymmetric Digital Subscriber LineAES Advanced Encryption
StandardAODV Ad hoc On-demand Distance Vector (Routing)APES
Anonymity and Privacy in Electronic Services (IWT/STWW
Project)AP Access PointBS Base StationCA Certification
AuthorityCBC Cipher Block ChainingCCM Counter with CBC-MACCFB
Cipher FeedbackDES Data Encryption StandardDHIES Diffie-Hellman
Integrated Encryption SchemeDSN Distributed Sensor NetworkDSR
Dynamic Source RoutingDoS Denial of ServiceDSA Digital Signature
AlgorithmDSS Digital Signature StandardECB Electronic CodebookECC
Error-Correcting CodeECDSA Elliptic Curve Digital Signature
AlgorithmECIES Elliptic Curve Integrated Encryption SchemeECPM
Elliptic Curve Point MultiplicationEHBT Efficient Hierarchical
Binary Tree (protocol)FIPS Federal Information Processing
Standards
xi
-
xii List of Acronyms
FPGA Field-Programmable Gate ArrayGPS Global Positioning
SystemsGSM Global System for Mobile CommunicationsIOI Item of
InterestIP Internet ProtocolISP Internet Service ProviderKDC Key
Distribution CenterLAN Local Area NetworkLDM Lamport-Diffie
one-time signature scheme with Merkle
improvementLDW Lamport-Diffie one-time signature scheme with
Winternitz
improvementLFSR Linear Feedback Shift RegisterMAC Message
Authentication CodeMANET Mobile Ad hoc NetworkMCSP Mobile
Communication Service ProviderNAT Network Address TranslationNIST
National Institute for Standards and TechnologyNSA National
Security AgencyOEAP Optimal Asymmetric Encryption PaddingOFB Output
FeedbackOCB Offset Codebook ModeOSI Open Systems InterconnectionOTS
One-Time Signature (scheme)OWF One-Way FunctionPET Privacy
Enhancing TechniquePGP Pretty Good PrivacyPKI Public Key
InfrastructurePSS Probabilistic Signature SchemePSEC Provably
Secure Elliptic Curve (cryptosystem)RFID Radio Frequency
IdentificationRREQ Route RequestRREP Route ReplySIM Subscriber
Identity Module
-
xiii
SSH Secure ShellSSL Secure Socket LayerSTS Station-to-Station
(protocol)TBO Trapdoor Boomerang OnionTCP Transmission Control
ProtocolTTL Time-to-LiveTORA Temporally Ordered Routing
AlgorithmURL Universal Resource LocatorWEP Wired Equivalent
PrivacyWLAN Wireless Local Area Network
-
List of Notations
x ∈R S Element x is selected uniformly random from the set
S.
QRn The set of quadratic residues modulo integer n.
{0, 1}n Bit-string of length n, i.e., any piece of digital data
({0, 1}∗indicates arbitrary length).
{0, 1}nR A uniform random selected bit-string of length n ({0,
1}∗R in-dicates arbitrary length, i.e., a source of random
bits).
Int(x) The value of the bit-string x interpreted as an integer
(withlittle or big endian).
bxc The largest integer less than or equal to x.
dxe The smallest integer larger than or equal to x.
a | b, a 6 | b Integer a divides b, integer a does not divide
b.
|x| Bit-length of x.
i = a→ b For all integers i ranging from a to b, starting from
a.
Proc(x) Indicates a procedure or algorithm using input x.
Proc(x) Indicates the output of the algorithm Proc(x).
xv
-
xvi List of Notations
〈a, b〉 The concatenation of bit-strings a and b. This notation
is onlyused if using a, b is confusing.
Ek[m] The encryption with a symmetric cipher of message m
usingsecret key k.
MACk[m] The Message Authentication Code of message m using
secretkey k.
PubD(m) The encryption with an asymmetric cipher of message m
usingthe public key of user D (if we need to specify a specific
publickey, we will use Pubpk (m)).
SignD(m) A digital signature on message m using the private key
of userD (if we need to specify a specific private key, we will
useSignsk (m)).
Ek[a], MACk[·] Shorthand for 〈Ek [a], MACk [a]〉. This notation
can also beused with other operators, e.g., 〈Ek [a],SignD(·)〉.
Ek[a,MACk[·]] Shorthand for 〈Ek [a, MACk [a]]〉. This notation
can also beused with other operators, e.g., 〈Ek [a,SignD(·)]〉.
SignRSAD(m) RSA signature on message m using the private key of
user D.
SignOTD(m) One-time signature on message m using D’s private
key. Here,we assume that the one-time signature scheme does not
includepadding and hashing of the message.
S −→ D : m Sender S transmits message m to destination D.
S −→ ∗ : m Sender S broadcasts message m.
-
Contents
Acknowledgements i
Abstract iii
Abstract in Dutch v
List of Tables vii
List of Figures ix
List of Acronyms xi
List of Notations xv
Contents xvii
Summary in Dutch xxi
1 Introduction 11.1 Motivation . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . 11.2 This thesis and related work . . .
. . . . . . . . . . . . . . . . . . . 31.3 Outline and main
contributions . . . . . . . . . . . . . . . . . . . . 7
2 Efficiency of Cryptographic Primitives 112.1 Symmetric
primitives . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.1.1 Symmetric encryption . . . . . . . . . . . . . . . . . . .
. . 122.1.2 Efficiency of symmetric techniques . . . . . . . . . .
. . . . 15
2.2 Public key cryptography . . . . . . . . . . . . . . . . . .
. . . . . . 19
xvii
-
xviii Contents
2.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . .
. . . 192.2.2 Public key certificates . . . . . . . . . . . . . . .
. . . . . . 202.2.3 The RSA, Rabin and DSA public-key encryption
and sig-
nature schemes . . . . . . . . . . . . . . . . . . . . . . . . .
222.2.4 Elliptic curve cryptography . . . . . . . . . . . . . . . .
. . 272.2.5 Efficiency of public key cryptography . . . . . . . . .
. . . . 29
2.3 Conclusions and future work . . . . . . . . . . . . . . . .
. . . . . 31
3 Efficiency of One-Time Signature Schemes 353.1 Lamport-Diffie
one-time signatures . . . . . . . . . . . . . . . . . . 36
3.1.1 Lamport-Diffie scheme with Merkle improvement . . . . . .
373.1.2 Lamport-Diffie scheme with Winternitz improvement . . . .
37
3.2 The HORS one-time signature scheme . . . . . . . . . . . . .
. . . 393.2.1 On the security of HORS . . . . . . . . . . . . . . .
. . . . 41
3.3 Efficiency of one-time signature schemes . . . . . . . . . .
. . . . . 433.3.1 Efficiency of the LDM . . . . . . . . . . . . . .
. . . . . . . 453.3.2 Efficiency of the LDW . . . . . . . . . . . .
. . . . . . . . . 453.3.3 Efficiency of the HORS scheme . . . . . .
. . . . . . . . . . 46
3.4 One-time public key authentication . . . . . . . . . . . . .
. . . . . 473.4.1 Merkle trees . . . . . . . . . . . . . . . . . .
. . . . . . . . . 473.4.2 One-way chains . . . . . . . . . . . . .
. . . . . . . . . . . . 49
3.5 Efficiency of one-time signature schemes with public key
authen-tication . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 523.5.1 Efficiency of Merkle tree authentication . .
. . . . . . . . . 523.5.2 Efficiency of one-way chain
authentication . . . . . . . . . . 57
3.6 Comparison . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . 613.7 Conclusions and future work . . . . . . . . . . .
. . . . . . . . . . 67
4 Efficient Cooperative Signatures 714.1 Threshold signatures .
. . . . . . . . . . . . . . . . . . . . . . . . . 724.2 Threshold
Lamport-Diffie signatures . . . . . . . . . . . . . . . . . 734.3
Multi-signer LDW signatures . . . . . . . . . . . . . . . . . . . .
. 744.4 Cooperative threshold one-time signatures . . . . . . . . .
. . . . . 75
4.4.1 Signature generation . . . . . . . . . . . . . . . . . . .
. . . 764.4.2 Signature verification . . . . . . . . . . . . . . .
. . . . . . 784.4.3 Informal Security proof of our scheme . . . . .
. . . . . . . 80
-
Contents xix
4.5 Application of our scheme in sensor networks . . . . . . . .
. . . . 814.5.1 Network operation . . . . . . . . . . . . . . . . .
. . . . . . 814.5.2 Strong authentication between query nodes and
cells . . . . 834.5.3 One-time secret key updates . . . . . . . . .
. . . . . . . . 85
4.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 88
5 Dynamic Key Establishment 895.1 Secure Neighborhood Discovery
protocol . . . . . . . . . . . . . . . 90
5.1.1 Neighborhood . . . . . . . . . . . . . . . . . . . . . . .
. . . 905.1.2 Bootstrapping the system: key pre-distribution . . .
. . . . 915.1.3 Dynamic Neighborhood Discovery . . . . . . . . . .
. . . . 91
5.2 Establishing link keys . . . . . . . . . . . . . . . . . . .
. . . . . . 935.2.1 Normal operation . . . . . . . . . . . . . . .
. . . . . . . . . 935.2.2 Exceptional operation . . . . . . . . . .
. . . . . . . . . . . 94
5.3 Implementation based on DSR . . . . . . . . . . . . . . . .
. . . . 955.4 Performance evaluation . . . . . . . . . . . . . . .
. . . . . . . . . 96
5.4.1 Analytic model and simulations . . . . . . . . . . . . . .
. . 965.4.2 Efficiency of the scheme . . . . . . . . . . . . . . .
. . . . . 101
5.5 Security analysis . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 1025.5.1 Informal analysis of the Secure Neighborhood
Discovery . . 1025.5.2 Informal analysis of AuthDSR . . . . . . . .
. . . . . . . . 1035.5.3 Evolution of compromised link keys . . . .
. . . . . . . . . 104
5.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 106
6 Privacy in Ad Hoc Networks 1076.1 Introduction . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 108
6.1.1 Privacy in a digitized world . . . . . . . . . . . . . . .
. . . 1086.1.2 Anonymity at different layers . . . . . . . . . . .
. . . . . . 110
6.2 Anonymity: definitions and requirements . . . . . . . . . .
. . . . 1116.2.1 Definitions . . . . . . . . . . . . . . . . . . .
. . . . . . . . 1116.2.2 Adversary model . . . . . . . . . . . . .
. . . . . . . . . . . 1126.2.3 Goals . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . 115
6.3 Anonymous connections in wired networks . . . . . . . . . .
. . . . 1166.3.1 Overview of existing technologies . . . . . . . .
. . . . . . . 117
6.4 Anonymous connections in mobile ad hoc networks . . . . . .
. . . 1196.4.1 On demand routing protocols . . . . . . . . . . . .
. . . . . 119
-
xx Contents
6.4.2 A generic anonymous on demand routing protocol . . . . .
1216.4.3 Evaluation of state of the art . . . . . . . . . . . . . .
. . . 1216.4.4 Comparison and evaluation . . . . . . . . . . . . .
. . . . . 129
6.5 ARM: efficient anonymous routing for mobile ad hoc networks
. . 1306.5.1 Trapdoor identifier . . . . . . . . . . . . . . . . .
. . . . . . 1306.5.2 Route discovery . . . . . . . . . . . . . . .
. . . . . . . . . . 1326.5.3 Route reply . . . . . . . . . . . . .
. . . . . . . . . . . . . . 1346.5.4 Data forwarding . . . . . . .
. . . . . . . . . . . . . . . . . 1366.5.5 Padding and time-to-live
schemes . . . . . . . . . . . . . . . 1376.5.6 Variations . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 139
6.6 Analysis of the padding and time-to-live schemes . . . . . .
. . . . 1396.6.1 Privacy offered by random TTL selection . . . . .
. . . . . 1396.6.2 Privacy offered by random padding selection . .
. . . . . . 1436.6.3 Analysis of our protocol . . . . . . . . . . .
. . . . . . . . . 147
6.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 147
7 Conclusions and Future Research 1497.1 Conclusions . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . 1497.2 Future
work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
151
References 153
Index 169
List of Publications 171
-
Algoritmen en protocollenvoor beveiliging en privacy indraadloze
ad-hoc netwerken
Nederlandse samenvatting
Hoofdstuk 1: Inleiding
Door de steeds verdergaande miniaturisatie van computersystemen
is het tegen-woordig mogelijk om toestellen te ontwikkelen die een
relatief krachtige proces-sor, opslagcapaciteit en
communicatiemogelijkheden bundelen in een draagbareverpakking.
Typische voorbeelden zijn PDA’s en mobiele telefoons. Momen-teel
worden meestal rechtstreekse punt-tot-punt-verbindingen gebruikt,
zoals bij-voorbeeld een mobiele telefoon naar een basisstation of
een PDA naar een WiFitoegangspunt. Een andere mogelijkheid, die
momenteel sterk in ontwikkeling is,zijn draadloze ad-hoc netwerken
of Mobile Ad hoc Networks (MANET’s). Ineen ad-hoc netwerk vormen
knopen automatisch en autonoom een netwerk vanzodra ze in elkaars
bereik komen. Wanneer een knoop wil communiceren meteen andere
knoop die buiten zijn bereik is, dan wordt het bericht
doorgestuurdvan knoop naar knoop tot de eindbestemming bereikt
wordt. MANET’s kun-nen bijvoorbeeld ingezet worden om snel en
goedkoop een communicatienetwerkop te zetten in gebieden waar er
geen bestaande infrastructuur is, of waar dezevernietigd werd,
zoals in ramp- en oorlogsgebieden. Een ander voorbeeld vanad-hoc
netwerken zijn sensornetwerken. Sensornetwerken bestaan uit
duizenden
xxi
-
xxii Summary in Dutch
miniatuursensors die draadloos met elkaar communiceren over een
ad-hoc net-werk. Mogelijke toepassingen van sensornetwerken zijn
het opmeten van bodem-en weercondities op akkers, detecteren van
barsten in grote bouwwerken zoalsbruggen, enz.
Omdat het relatief eenvoudig is om draadloze communicatie
ongedetecteerd teonderscheppen, speelt de beveiliging van deze
netwerken een cruciale rol in deontwikkeling ervan. De beveiliging
van ad-hoc netwerken is niet vanzelfsprekenddoor verschillende
redenen. Ten eerste zijn de knopen beperkt in
rekencapaciteit,geheugen, bandbreedte en energievoorraad. Dit
betekent dat de beveiligingsme-chanismen zo efficiënt mogelijk
moeten zijn. Ten tweede zijn er niet altijd vas-te knopen
(“servers”) in het netwerk die kunnen aangesproken worden om
eenbepaalde dienst te leveren. Hierdoor zijn de meeste traditionele
beveiligingsme-chanismen (bijvoorbeeld voor het afspreken van
sleutels) niet van toepassing inad-hoc netwerken. Ten slotte wordt
de beveiliging bemoeilijkt door de multi-hoproutering en het feit
dat de knopen zich vrij kunnen bewegen door het netwerk.Naast
beveiliging is ook de privacy van de gebruiker van belang. Door
gebruikte maken van draadloze communicatie laat de gebruiker immers
automatischsporen na van zijn activiteiten. Privacy zal zeker een
belangrijke rol spelen inad-hoc netwerken, daar iedere gebruiker
mogelijk berichten zal doorsturen vanandere gebruikers. Ad-hoc
netwerken zorgen dus voor nieuwe uitdagingen inzakebeveiliging en
privacy.
Deze thesis levert een bijdrage tot mogelijke oplossingen voor
een deel van dezeuitdagingen. Deze thesis bestudeert niet één
bepaald onderdeel tot in de klein-ste details, maar behandelt
meerdere uiteenlopende aspecten. Hoofdstuk 2 geefteen overzicht van
de state-of-the-art van cryptografische primitieven en geeft
eenanalyse van de efficiëntie van deze algoritmen. De ontwerpen in
de volgendehoofdstukken zijn gebaseerd op de resultaten die in dit
hoofdstuk verzameld wer-den. Hoofdstuk 3 geeft een gedetailleerde
analyse van de efficiëntie van éénmaligedigitale handtekeningen
die gebaseerd zijn op een éénwegsfunctie. Deze analysehoudt
rekening met alle aspecten van het gebruik van digitale
handtekeningenin een draadloze omgeving: genereren van sleutels,
berekenen van een handte-kening, verifiëren van een handtekening,
doorsturen van een handtekening enverificatie van een éénmalige
publieke sleutels. In hoofdstuk 4 stellen we een con-structie voor
om éénmalige-handtekeningschema’s om te vormen tot
coöperatieveéénmalige-handtekeningschema’s. Met dit schema
kunnen verschillende gebrui-kers samen een handtekening zetten op
een bepaald bericht. In een tweede deelvan dit hoofdstuk tonen we
hoe dit schema kan ingezet worden in een completeoplossing voor de
authentisering van berichten in sensornetwerken. Hoofdstuk5 handelt
over een sleutelverdelingssysteem voor dynamische ad-hoc
netwerken.Via dit systeem kunnen knopen sleutels afspreken met
andere knopen in hun
-
xxiii
steeds veranderende buurt. We tonen ook aan dat hetzelfde
systeem kan ge-bruikt worden om een sleutel af te spreken met
knopen die verder (meer dan éénhop) verwijderd zijn. Ten slotte
bespreken we hoe het systeem kan gëıntegreerdworden in een
bestaand routeringsprotocol voor ad-hoc netwerken. Hoofdstuk6
handelt over de privacy in ad-hoc netwerken. Het hoofdstuk begint
met eeninleiding tot het onderzoeksdomein en stelt de
state-of-the-art voor van anoniemerouteringsprotocollen voor ad-hoc
netwerken. Daarna stellen we een nieuw ano-niem routeringsprotocol
voor dat ontworpen werd om efficiënter te zijn en meeranonimiteit
te bieden dan bestaande voorstellen. Hoofdstuk 7 sluit de thesis
afen formuleert nieuwe uitdagingen voor de toekomst.
Hoofdstuk 2: Efficiëntie van cryptografische primitie-ven
Bijna alle protocollen voor de beveiliging van netwerken en
computersystemenmaken in meer of mindere mate gebruik van
cryptografische primitieven. Zoalsin de inleiding vermeld werd,
hebben we bij het ontwerp van de protocollendie we voorstellen in
hoofdstukken 3 tot en met 6, getracht om een zo efficiëntmogelijke
oplossing te bieden. Dit hoofdstuk is dan ook gericht op de
efficiëntievan de belangrijkste klassen van cryptografische
primitieven: symmetrische blok-en stroomcijfers, hashfuncties,
asymmetrische vercijferingsschema’s en
digitalehandtekeningschema’s.
Efficiëntie van symmetrische primitieven
Symmetrische vercijferingssystemen maken gebruik van een geheime
sleutel diegekend is door twee partijen: de partij die een
boodschap vercijfert en de partijdie de boodschap zal
ontcijferen.
Blokcijfers transformeren een klaartekstblok van vaste lengte
naar een cijfertekst-blok van vaste lengte. Er zijn verschillende
manieren (“modes of operation”)om klaarteksten die langer zijn dan
de bloklengte te vercijferen. In 2000 werdRijndael verkozen als de
nieuwe Advanced Encryption Standard (AES) voor deVerenigde Staten.
Rijndael won de wedstrijd die uitgeschreven werd door de Na-tional
Institute for Standards and Technology (NIST) in 1997 om de
bestaandeData Encryption Standard (DES) te vervangen. Als opvolger
van de DES, zalde AES de de facto cryptografische standaard worden
voor de vercijfering in hetbankwezen, administraties en de
industrie. Een belangrijk criterium bij het ont-werp van de AES was
veelzijdigheid. Dit betekent dat het algoritme efficiënt moet
-
xxiv Summary in Dutch
gëımplementeerd kunnen worden op uiteenlopende platformen,
zowel in softwareals in hardware. Deze veelzijdigheid zorgt ervoor
dat de AES een zeer performantblokcijfer is, en een ideaal
referentiepunt is om andere algoritmen aan te toetsen.
In tegenstelling tot blokcijfers, produceren stroomcijfers een
oneindig lange pseu-do-willekeurige bitstroom S(k) die enkel
afhangt van de sleutel. Een boodschapm kan dan vercijferd worden
door deze samen te tellen (XOR) met de pseudo-willekeurige
bitstroom S(k): c = m ⊕ S(k). Om de cijfertekst c te
ontcijferenmoet deze operatie gewoon herhaald worden: m = c ⊕ S(k).
Stroomcijfers heb-ben het voordeel dat er niet moet gewacht worden
tot een klaartekstblok gevuldis en dat er geen foutpropagatie is
(zolang de stromen gesynchroniseerd blijven).Draadloze
communicatiesystemen maken meestal gebruik van stroomcijfers omde
communicatie te vercijferen. Zo maken Bluetooth en GSM gebruik van
res-pectievelijk het E0 en A5/1 stroomcijfer. Deze algoritmen
werden ontworpen omzo efficiënt mogelijk te zijn, zowel in
energieverbruik als in het aantal poortenin de
hardware-implementatie. Het WEP-algoritme dat gebruikt wordt in
deIEEE 802.11 standaard voor draadloze netwerken maakt gebruik van
het RC4stroomcijfer. RC4 is zeer snel in software en heeft zeer
weinig werkgeheugennodig (< 1 kByte).
Cryptografische hashfuncties spelen een belangrijke rol in
integriteitsbeschermingvan berichten en in digitale
handtekeningschema’s. Een hashfunctie beeldt bitrij-en van
willekeurige lengte af op bitrijen van een vaste lengte. Een
hashfunctie Hmoet minstens voldoen aan de volgende drie
eigenschappen: (1) éénwegsfunctie:het is onmogelijk om uit een
hashwaarde h een bericht m te berekenen zodatH(m) = h, (2) zwak
botsingsvrij: het is onmogelijk om, gegeven een boodschapm, een
tweede boodschap m′ te vinden met H(m) = H(m′) en (3) sterk
bot-singsvrij: het is onmogelijk om twee verschillende boodschappen
te vinden metdezelfde hashwaarde.
In het kader van het NESSIE project werden de snelheid en de
veiligheid vanverschillende cryptografische primitieven
geëvalueerd. Een deel van de resultatenzijn samengevat in Tabel
1.
Efficiëntie van publieke-sleutelcryptografie
In tegenstelling tot symmetrische cryptografische systemen maakt
publieke-sleu-telcryptografie gebruik van twee verschillende
sleutels: een private (geheime) eneen publieke sleutel. De publieke
sleutel wordt afgeleid uit de private sleutel, om-gekeerd is dit
niet mogelijk. De private sleutel wordt nooit vrijgegeven,
terwijlde publieke sleutel door iedereen gekend mag zijn.
-
xxv
Bij publieke-sleutelvercijfering worden de private en publieke
sleutel gegenereerddoor de ontvanger Bob (de persoon die
boodschappen zal ontcijferen). Een bood-schap vercijferen voor Bob
verloopt zo: Alice verkrijgt de publieke sleutel vanBob, gebruikt
deze om haar bericht te vercijferen en stuurt het resultaat
naarBob. Bob gebruikt dan zijn private sleutel om het ontvangen
bericht te ontcij-feren. Merk op dat iedereen Bob’s publieke
sleutel mag gebruiken om berichtennaar hem te sturen. Bij
symmetrische cryptografie zou Bob met iedere zendereen andere
geheime sleutel moeten afspreken.
Bij digitale handtekeningschema’s is het gebruik van de publieke
en private sleutelomgekeerd: de zender gebruikt zijn private
sleutel om een boodschap te handte-kenen. De ontvanger gebruikt de
publieke sleutel van de zender om zijn handte-kening te
controleren. Aangezien de publieke sleutel voor iedereen
beschikbaaris, kan dus iedereen handtekeningen van alle gebruikers
controleren.
De veiligheid van de meeste publieke-sleutelsystemen is
gebaseerd op een “moei-lijk” wiskundig probleem. Zo is de
veiligheid van het veel gebruikte RSA encryp-tie- en
handtekeningschema gerelateerd aan de moeilijkheid om grote
getallen tefactoriseren. Het nadeel van publieke-sleutelsystemen is
dat ze veel minder effi-ciënt zijn dan symmetrische primitieven
(zie Tabel 1). Publieke-sleutelsystemendie gebruik maken van
elliptische krommen (zoals ECDSA) hebben het voordeeldat ze
efficiënter zijn dan hun tegenhangers (zoals DSA) die werken in
het veldF∗q en dat ze dezelfde veiligheid kunnen bieden met kleine
sleutellengtes. Zo isECDSA met een 160-bit sleutel even veilig als
DSA met een 1024-bit sleutel.
Conclusies
Uit Tabel 1 blijkt duidelijk dat symmetrische primitieven veel
efficiënter zijn danpublieke-sleutelsystemen.
Publieke-sleutelsystemen die gebruik maken van ellip-tische krommen
zijn efficiënter dan hun tegenhangers die werken in het veld F∗q
enbieden bovendien dezelfde veiligheid met kortere sleutels. Ten
slotte merken weop dat de publieke operaties (vercijferen en
handtekeningen verifiëren) van RSAen Rabin ongeveer twee maal zo
snel zijn dan de ECDSA-operaties. De geheimeoperaties zijn dan weer
veel minder efficiënt. In de volgende hoofdstukken heb-ben we
steeds getracht om deze efficiëntieverschillen optimaal te
benutten, d.w.z.dat de minst krachtige knopen in het netwerk steeds
enkel de efficiënte operatiesmoeten uitvoeren.
-
xxvi Summary in Dutch
Tabel 1. Performantie van cryptografische primitieven in
software [134].
Algoritme |sleutel| Platform|hash| PIII/Linux Athlon
AES 128 25/26/523 30/31/500RC4 128 7.3/2659 11/2600RIPEMD-160
160 18/16/1339 21/12/1493SHA-1 160 15/16/1024 12/12/825SHA-2 256
40/44/2747 34/39/2369SHA-2 512 83/157/11K 71/106/9752RSA-OAEP 1024
2026K/42M/1654M 2289K/48M/2027MECDSA-GF(2p) 160 4775K/6085K/4669K
4464K/572K/4354KECDSA-GF(2163) 163 5061K/6809K/4852K
4602K/6159K/4426KRSA-PSS 1024 42M/2029K/1334M 48M/2288K/1419M
Voor de AES en RSA-OAEP zijn dit
vercijfer-/ontcijfer-/sleutel-initialisatietijden. VoorRC4 is dit
genereren van de sleutelstroom/sleutel-initialisatie. Voor de
hashfuncties isdit hash/initialisatie/initialisatie+finalisatie.
Voor de ECDSA en RSA-PSS zijn
dithandteken-/verificatie-/sleutelgeneratietijden. De symmetrische
primitieven zijn geme-ten in cycli/Byte of cycli/initialisatie, de
asymmetrische in cycli/aanroep.
Hoofdstuk 3: Efficiëntie van éénmalige digitale
hand-tekeningen
Uit het vorige hoofdstuk blijkt dat symmetrische primitieven
veel efficiënter zijndan publieke-sleutelsystemen. Zelf met de
snelste publieke-sleuteloperaties, RSAvercijfering of verificatie,
neemt één publieke-sleuteloperatie evenveel tijd in danhet
vercijferen van 80 kBytes met AES. Dit heeft ons gemotiveerd om een
gede-tailleerde studie te maken van de efficiëntie van
éénmalige-handtekeningschema’sdie enkel gebruik maken van
éénwegsfuncties. Daar éénwegsfuncties
efficiëntgëımplementeerd kunnen worden via blokcijfers of
hashfuncties, lijken deze sche-ma’s op het eerste zicht
efficiënter te zijn dan conventionele handtekeningsche-ma’s zoals
RSA, DSA en ECDSA. Het nadeel van deze systemen is echter dateen
publieke sleutel slechts éénmaal gebruik kan worden. Hierdoor is
een ef-ficiënt mechanisme voor het authentiseren van meerdere
publieke sleutels eenbelangrijk aspect bij het gebruik van
éénmalige-handtekeningschema’s. In dithoofdstuk evalueren we dan
ook alle aspecten van het gebruik van
éénmalige-handtekeningschema’s: (1) genereren van de private en
publieke sleutels, (2)authentiseren van de publieke sleutels, (3)
handtekeningen zetten en verifiërenen (4) de communicatiekost.
-
xxvii
De belangrijkste bijdragen in dit hoofdstuk zijn:
– Een gedetailleerde evaluatie van de efficiëntie van drie
besproken éénmalige-handtekeningschema’s: LDM, LDW en HORS.
– Een gedetailleerde evaluatie van de efficiëntie van twee
authentiseringsme-chanismen: Merkle-bomen en
éénwegskettingen.
– Een analyse van de veiligheid van het HORS-schema.
Eénmalige-handtekeningschema’s
We hebben drie verschillende éénmalige-handtekeningschema’s
geëvalueerd: hetLamport-Diffie-schema met verbeteringen door
Merkle (LDM), het Lamport-Diffie-schema met verbeteringen door
Winternitz (LDW) en het HORS-schema.Deze schema’s maken enkel
gebruik van een éénwegsfunctie f . In zijn eenvou-digste vorm kan
het Lamport-Diffie-schema gebruikt worden om één bit te
hand-tekenen. De private sleutel bestaat uit twee willekeurige
getallen x0 en x1. Depublieke sleutel wordt berekend door de
functie f toe te passen op de privatesleutel. Dit resulteert in het
koppel {f(x0), f(y0)}. De handtekening voor bit bis xb. Het is
duidelijk dat eenzelfde sleutelpaar maar éénmaal gebruikt kan
wor-den. Om meerdere bits te tekenen wordt dit schema meerdere
keren herhaald.In dit geval bestaat de private sleutel dus uit
meerdere willekeurige getallen:sk = {x1, x2, . . . , xt}.
Authentisering van de éénmalige publieke sleutels
Iedere ontvanger heeft een geauthentiseerde kopie nodig van de
publieke sleutelom een handtekening te kunnen verifiëren.
Aangezien een publieke sleutel slechtséénmaal kan gebruikt worden
in deze schema’s, is er nood aan een efficiëntemanier om meerdere
publieke sleutels te authentiseren. In deze thesis hebben wijtwee
mechanismen bestudeerd: Merkle-bomen en éénwegskettingen.
Merkle-bomen
Een Merkle-boom is een binaire boom met op iedere knoop een
getal van l bits. Dewaarde van iedere interne knoop is gelijk aan
het resultaat van een éénwegsfunctietoegepast op de twee kinderen
(zie Fig. 1):
{leaf i = P [i, i] = leafcalc(i) ,
P [i, j] = f(〈P [i , (i + j − 1 )/2 ],P [(i + j + 1 )/2 , j ]〉)
.
-
xxviii Summary in Dutch
Hierin is leafcalc het algoritme dat gebruikt wordt om de
onderste bladen van deboom te berekenen. In dit geval bestaat
leafcalc uit twee deeltaken: het genererenvan een publieke sleutel
en het berekenen van de hashwaarde van deze publiekesleutel. Iedere
hashwaarde die zo bekomen wordt, is één blad van de boom.
De volledige boom wordt berekend door de gebruiker S, die
handtekeningen wilplaatsen. We veronderstellen dat iedere gebruiker
V , die handtekeningen wilverifiëren, een geauthentiseerde kopie
heeft gekregen van de top van de boom(P [1, 8] in Fig. 1). Een
bepaald blad van de boom, neem leaf 3 in Fig. 1, kan opde volgende
manier geauthentiseerd worden: gebruiker S berekent het blad leaf
4en de interne knopen P [5, 8] en P [1, 2]. Deze waarden, het
authentiseringspadgenoemd, stuurt hij samen met de derde publieke
sleutel (die bij leaf 3 hoort)door naar gebruiker V . Gebruiker V
berekent nu leaf 3 (leaf 3 is de hashwaardevan de ontvangen
publieke sleutel) en berekent uit leaf 3 en de ontvangen leaf 4de
waarde P [3, 4]. Deze waarde combineert hij met de ontvangen waarde
P [1, 2]om P [1, 4] te berekenen. Uit P [1, 4] en P [5, 8] kan hij
uiteindelijk de top vande boom berekenen. Indien deze dezelfde is
als de geauthentiseerde kopie diegebruiker V al in zijn bezit had,
dan wordt de publieke sleutel aanvaard.
Wanneer Merkle-bomen gebruikt worden in combinatie met een
éénmalig-hand-tekeningschema, dan bestaat het plaatsen van een
handtekening uit de volgendehandelingen:
1. Berekenen van de top van de boom. Hiervoor moeten alle
publieke sleutels,die in de toekomst gebruikt zullen worden,
berekend worden. Dit moet slechtséén keer gebeuren per boom. De
top van de boom wordt verspreid naar allegebruikers die
handtekeningen zullen verifiëren.
2. Genereren van de publieke en private sleutel die voor deze
handtekeninggebruikt zullen worden.
3. Berekenen van het authentiseringspad. Jakobsson et al. [80]
hebben hiervooreen algoritme ontwikkeld dat slechts O(log2(N)/
log2(log2(N))) invocatiesvan f nodig heeft per pad dat berekend
moet worden.
4. Berekenen van de handtekening.
5. Doorsturen van de handtekening, de publieke sleutel en het
authentiserings-pad.
Om een handtekening te verifiëren, controleert men eerst de
authenticiteit van deontvangen publieke sleutel (via het
authentiseringspad en de top van de gebruikteMerkle-boom) en daarna
de handtekening zelf.
-
xxix
P [1, 8]
P [1, 4]
P [1, 2]
leaf1
· · ·
leaf2
· · ·
P [3, 4]
leaf3
· · ·
leaf4
· · ·
P [5, 8]
P [5, 6]
leaf5
· · ·
leaf6
· · ·
P [7, 8]
leaf7
· · ·
leaf8
· · ·
1
Figuur 1. Merkle tree met 8 bladen. De top P [1, 8] kan gebruikt
worden omheel de boom te authentiseren.
Eénwegskettingen
Een tweede efficiënte methode om publieke sleutels te
authentiseren is het ge-bruik van éénwegskettingen. De persoon
die handtekeningen wil plaatsen, begintmet het genereren van een
private sleutel: skN = {x1, x2, . . . , xt}. In plaatsvan de
functie f éénmaal toe te passen om de publieke sleutel te
bekomen,past de gebruiker de functie N -maal toe. Hier is N het
aantal publieke sleu-tels die geauthentiseerd kunnen worden met de
éénwegskettigen. De laatste setvan waarden die zo bekomen wordt,
pk1 = {fN (x1), fN (x2), . . . , fN (xt)}, isde eerste publieke
sleutel die gebruikt zal worden. Deze wordt op een
geau-thentiseerde manier doorgegeven aan alle personen die
handtekeningen willenverifiëren (zoals de top van de Merkle-boom).
De voorlaatste set van waarden,sk1 = {fN−1(x1), fN−1(x2), . . . ,
fN−1(xt)}, is de eerste private sleutel die zalgebruikt worden om
een handtekening te plaatsen. Aangezien een handtekeningbestaat uit
een deel van de private sleutel, kan deze geverifiëerd worden door
defunctie f toe te passen en na te kijken of dat men de
overeenkomstige waardenuit de publieke sleutel pk1 bekomt. Eénmaal
het sleutelpaar (pk1, sk1) gebruiktis, worden de vorige set van
waarden op de kettingen de nieuwe private sleu-tel: sk2 =
{fN−2(x1), fN−2(x2), . . . , fN−2(xt)}. De nieuwe publieke sleutel
isgelijk aan de oude private sleutel: pk2 = sk1. Dit proces wordt
verder gezettot de oorspronkelijke private sleutel skN bereikt is.
Op deze manier kunnen Nhandtekeningen geplaatst worden.
Wanneer éénwegskettingen gebruikt worden in combinatie met een
éénmalig-handtekeningschema, dan bestaat het plaatsen van een
handtekening uit de vol-gende handelingen:
-
xxx Summary in Dutch
1. Berekenen van de éénwegskettingen. Hiervoor moeten alle
publieke sleutels,die in de toekomst gebruikt zullen worden,
berekend worden. Dit moet slechtséén keer gebeuren. De laatste
bekomen waarden worden verspreid naar allegebruikers die
handtekeningen willen verifiëren.
2. Genereren van de private sleutel die voor deze handtekening
gebruikt zalworden. Voor de eerste handtekening is dit het meeste
werk, omdat dantot het einde van de kettingen moet gerekend worden.
Voor iedere volgendehandtekening wordt dit steeds minder intensief,
omdat steeds een kleiner deelvan de kettingen berekend moet
worden.
3. Berekenen van de handtekening.
4. Doorsturen van de handtekening. Bemerk dat hier geen publieke
sleutel moetdoorgestuurd worden.
Efficiëntie van de verschillende schema’s
We hebben de performantie geëvalueerd van de drie
éénmalige-handtekening-schema’s in combinatie met de twee
mechanismen om publieke sleutels te au-thentiseren. Deze evaluatie
resulteerde in algebräısche uitdrukkingen voor alleverschillende
aspecten en numerieke evaluaties. Figuur 2 geeft de totale kost
perhandtekening in mJ van de verschillende schema’s. In dit
scenario werd veron-dersteld dat er een handtekening gestuurd wordt
naar 10 personen ter verificatie.Verder werd er verondersteld dat
de top van de Merkle-boom of de eerste pu-blieke sleutel (in het
geval van éénwegskettingen) geauthentiseerd werd met
eenECDSA-handtekening. Deze initialisatiekost zorgt ervoor dat de
kost per handte-kening in eerste instantie kleiner wordt als het
aantal handtekeningen per boomof set van éénwegskettingen groter
wordt.
Hoofdstuk 4: Efficiënte coöperatieve digitale
handte-keningen
In dit hoofdstuk stellen we een constructie voor die het
mogelijk maakt om ie-der éénmalig-handtekeningschema om te zetten
naar een drempelschema. In ditschema kunnen een aantal knopen
samenwerken om een handtekening te plaat-sen. In een (t,
n)-drempelschema moeten minstens t knopen samenwerken omeen
correcte handtekening te verkrijgen.
De belangrijkste bijdragen in dit hoofdstuk zijn:
-
xxxi
0 200 400 600 800 1000 1200 1400 1600 1800 20000
1000
2000
3000
4000
5000
6000
# signatures
mJ/
sign
atur
e
HORS−18 with Merkle
LDW with OWC
ECDSA
LDM with Merkle
HORS−18 with OWC
LDM with OWC
HORS−20 with Merkle
HORS−20 with OWC
LDW with Merkle
Figuur 2. Vergelijking van het energieverbruik van de
verschillende handteke-ningschema’s. We veronderstellen hier 1
persoon die een handtekening plaats diedoor 10 personen
geverifiëerd wordt.
– We stellen een constructie voor om een
éénmalig-handtekeningschema om tezetten naar een
drempelschema.
– We tonen aan hoe dit kan ingezet worden in een
authentiseringsmechanismevoor sensornetwerken.
Coöperatief éénmalig-handtekeningschema
Traditionele handtekeningschema’s zijn gebaseerd op “eenvoudige”
wiskundigeuitdrukkingen. Zo bestaat een RSA-handtekening in
essentie uit het berekenenvan een modulaire macht: s = md (mod pq).
Hierin is s de handtekening,m de boodschap en {d, p, q} de geheime
sleutel. Dit maakt het mogelijk omeen drempelschema te bouwen via
mathematische constructies. Een eenvoudigdrempelschema voor RSA kan
eruit bestaan de geheime sleutel d te verdelen intwee delen d1 en
d2, zodat d1 + d2 = d. Deze sleutels worden verdeeld tussentwee
gebruikers. Deze gebruikers rekenen dan ieder een “halve”
handtekeninguit: s1 = md1 (mod pq) en s2 = m
d2 (mod pq). Het product van deze twee
halve handtekeningen is een geldige RSA-handtekening die
geplaatst werd metde sleutel d: s1s2 = s. Daar
éénmalige-handtekeningschema’s die gebaseerd
-
xxxii Summary in Dutch
ECC (H ) = α code words
ω symbols
k users H ′5
H
Figuur 3. Voorbereidingsfase van het coöperatief
éénmalig-handtekeningsche-ma.
zijn op éénwegsfuncties niet kunnen beschreven worden met
elegante wiskundeuitdrukkingen, is het niet mogelijk een
gelijkaardige constructie te gebruiken.
Om toch een drempelschema te kunnen construeren, geven we iedere
gebrui-ker een eigen volledige private en publieke sleutel. De
redundantie wordt danniet toegevoegd aan de handtekeningen zelf
(zoals in het voorbeeld van de RSA-constructie), maar aan het
bericht dat getekend zal worden. Figuur 3 toontdit proces. Eerst
wordt de hashwaarde H van het bericht berekend. Op dezehashwaarde
wordt een foutcorrigerende code toegepast die de nodige
redundan-tie toevoegt, dit resulteert in ECC (H). Iedere gebruiker
zal een deel van dezeECC (H) handtekenen. De persoon die de
handtekening wil controleren, verza-melt en verifiëert eerst alle
individuele partiële handtekeningen. Daarna gebruikthij de
foutcorrigerende code om H ′ te bereken uit de gereconstrueerde ECC
′(H).Indien de berekende H ′ gelijk is aan de hashwaarde van de
gehandtekende bood-schap, dan wordt de volledige handtekening
geaccepteerd.
Na een gedetailleerde beschrijving, geven we een
veiligheidsanalyse van de con-structie.
Authentisering in sensornetwerken
Na de beschrijving van het coöperatief
éénmalig-handtekeningschema, geven weaan hoe het kan ingezet
worden om efficiënte data-authentisering te bieden
insensornetwerken. In vele sensornetwerken worden sensorknopen
gegroepeerd inclusters. Wanneer bijvoorbeeld de temperatuur van een
kamer opgevraagd wordt,dan worden de verschillende opmetingen van
een volledige cluster eerst lokaalverwerkt tot een globaal
resultaat. Dit resultaat wordt dan als antwoord terug-gestuurd.
-
xxxiii
Wij stellen een authentiseringsmethode voor die toelaat dat al
de knopen in een-zelfde cluster samenwerken om een bericht te
authentiseren. Daarnaast stellenwe ook een efficiënte methode voor
om de publieke en private sleutels te hernieu-wen. Het volledige
systeem is zo ontworpen dat de zwakke sensorknopen
nooitrekenintensieve taken moeten uitvoeren, maar dat deze taken
steeds door desterke “‘query”-knoop (de knoop die de gegevens van
het sensornetwerk uitleest)uitgevoerd worden.
Hoofdstuk 5: Dynamisch sleutelbeheer
Wanneer symmetrische cijfers worden gebruikt om gegevens te
vercijferen, dan ishet essentieel dat de twee communicerende
partijen kunnen beschikken over eengedeelde geheime sleutel. In dit
hoofdstuk stellen we een mechanisme voor om de-ze sleutel af te
spreken in een dynamisch ad-hoc netwerk. Om het systeem zo
effi-ciënt mogelijk te houden, maken we geen gebruik van
publieke-sleutelcryptografie.
De belangrijkste bijdragen in dit hoofdstuk zijn:
– We stellen een efficiënt sleutelbeheersysteem voor ad-hoc
netwerken voor. Ditschema werkt autonoom, zonder hulp van vaste
knopen die dienst doen alssleutelverdelingscentra.
– We tonen aan hoe dit schema kan gëıntegreerd worden met een
routerings-schema voor ad-hoc netwerken.
– We hebben de veiligheid en de efficiëntie van het
voorgestelde systeem gea-nalyseerd.
Initialisatie
Ons systeem is een uitbreiding van “key
pre-distribution”-schema’s (KPD) naareen omgeving waar knopen zich
vrij kunnen bewegen. In een KPD-schema wor-den geheime sleutels in
de knopen gëınstalleerd voor ze uitgezet worden. Eeneenvoudig
KPD-schema kan er bijvoorbeeld in bestaan dat iedere knoop 60
wil-lekeurig gekozen sleutels krijgt uit een set van 5000 sleutels.
De kans dat tweeknopen dan een sleutel delen is ongeveer 50%. Er
bestaan vele variaties diebijvoorbeeld rekening houden met de
plaats waar een knoop waarschijnlijk zalterechtkomen, enz.
-
xxxiv Summary in Dutch
Sleutels opzetten met de buurt
Eénmaal de knopen uitgezet zijn, proberen zij sleutels af te
spreken met alleknopen in hun buurt. Een buurt met straal l wordt
gedefinieerd als alle knopendie bereikbaar zijn in maximaal l hops.
Indien een knoop geen sleutel deelt viahet KPD-schema met één of
meerdere van zijn buren, dan zal hij via andereknopen waarmee hij
wel een sleutel deelt, een sleutel opzetten met deze buren.
Na deze initiële fase deelt elke knoop een geheime sleutel met
alle andere knopenin zijn buurt. Veronderstel nu dat (door de
mobiliteit van de knopen) een nieuweknoop B in de buurt van knoop A
komt. Knoop A zal nu een sleutel met denieuwe knoop afspreken. Met
zeer grote waarschijnlijkheid zullen er meerderepaden zijn tussen
knopen A en B, waarbij iedere hop op dit pad beschermd is dooreen
sleutel die gedeeld is door de twee eindpunten van deze hop
(aangezien iedereknoop sleutels deelt met zijn gehele buurt). Knoop
A stuurt via één van dezepaden een bericht naar knoop B met de
vraag een sleutel af te spreken. Knoop Bgenereert dan een
willekeurige sleutel en verdeelt deze in stukken via een
(m,n)“secret sharing”-mechanisme. Met dit mechanisme heeft men
minstens m van den delen van de sleutel nodig om deze te
reconstrueren. Knoop B stuurt nu iederdeel over een verschillend
pad naar knoop A. Hierbij worden de delen hop-per-hop vercijferd
via de bestaande sleutels. Knoop A reconstrueert de sleutel
uitminstens m delen. Het “secret sharing”-mechanisme heeft twee
voordelen. Teneerste mogen een aantal delen van de geheime sleutel
verloren gaan en ten tweedemoet een aanvaller minstens m delen
bemachtigen om het geheim te achterhalen.
Integratie met een routeringsprotocol
In dit deel tonen we aan hoe ons sleutelbeheersysteem
gëıntegreerd kan wordenin bestaande routeringsprotocollen, in het
bijzonder het Dynamic Source Rou-ting (DSR) protocol. De integratie
van de twee systemen, routering enerzijds ensleutelbeheer
anderzijds, heeft twee voordelen. Ten eerste kan het
routeringspro-tocol beveiligd worden met de sleutels die opgezet
worden via het sleutelbeheersysteem en ten tweede wordt de extra
overhead vermeden die gecreëerd wordt,wanneer de twee systemen
onafhankelijk van elkaar gëımplementeerd worden.
Performantie- en veiligheidsanalyse
Ten slotte geven we een performantie- en veiligheidsanalyse van
het voorgestel-de sleutelbeheersysteem. De performantieanalyse is
gebaseerd op een analytischmodel en op simulaties om aan te tonen
dat het analytisch model accuraat is.
-
xxxv
In de veiligheidsanalyse wordt de veiligheid van het
sleutelbeheersysteem en hetgëıntegreerd routeringsprotocol
besproken. Ten slotte hebben we, via een eenvou-dig analytisch
model, achterhaald hoe snel het aantal gecompromitteerde
knopengroeit wanneer een aanvaller een fractie c van de geheime
sleutels achterhaaldheeft. Deze analyse geeft aan dat het schema
veiliger wordt wanneer men destraal l van de buurt kleiner maakt,
en wanneer men het (m,n) “secret sharing”-mechanisme minder robuust
maakt (een kleinere m kiest).
Hoofdstuk 6: Privacy in ad-hoc netwerken
Dit laatste hoofdstuk handelt over privacy in ad-hoc netwerken.
In de huidigesamenleving, waar de digitalisering zich blijft
uitbreiden, wordt onze privacysteeds meer bedreigd. Met de huidige
technologie is het mogelijk om op zeer kortetijd zeer grote
hoeveelheden gegevens te verwerken (bedenk bijvoorbeeld hoe snelde
Google zoekmachine resultaten kan produceren). Door de
digitalisering vandiensten laten we ook steeds meer sporen na van
onze handelingen. Al onzebanktransacties en informatie over
telefoongesprekken worden opgeslagen, onskoopgedrag wordt verzameld
via klantenkaarten, enz. Door het gebruik vanmobiele telefonie,
zoals GSM, wordt niet alleen informatie over de
gesprekkenopgeslagen, maar ook de locatie van waar we belden. Met
de introductie vanad-hoc netwerken, waarin iedere gebruiker
mogelijk berichten zal doorsturen vanandere gebruikers, zal dit
probleem nog groter worden. In dit geval kunnen weniet langer
vertrouwen op de mobiele operator om onze gegevens te
beschermen.
We vatten dit hoofdstuk aan met een inleiding tot het
privacy-domein. Daarnageven we een volledig overzicht en analyse
van de state-of-the-art van anoniemerouteringsprotocollen voor
ad-hoc netwerken. In de analyse duiden we de zwakkeen sterke punten
aan van de voorgestelde protocollen.
Na deze inleiding stellen we een eigen protocol voor anonieme
routering in ad-hocnetwerken voor. In ons voorstel trachten we de
bestaande protocollen te verbe-teren op twee gebieden: op het
gebied van efficiëntie en de geboden anonimiteit.
De belangrijkste bijdragen in dit hoofdstuk zijn:
– We geven een overzicht van de state-of-the-art in anonieme
routeringsproto-collen voor ad-hoc netwerken.
– We presenteren een nieuw schema dat meer privacy biedt en
efficiënter is dande bestaande voorstellen.
– We geven een gedetailleerde analyse van de anonimiteit die
geboden wordt.
-
xxxvi Summary in Dutch
DN1
N2
S
Figuur 4. Route tussen zender S en bestemming D. De volle lijn
duidt eenechte route tussen S en D aan, terwijl de stippelijnen
nepberichten aanduidenom de locatie van de echte route te
beschermen.
ARM: anonieme routering voor mobiele ad-hoc netwerken
Een eerste onderdeel van het anoniem routeringsprotocol is de
constructie vanéénmalige pseudoniemen die knopen kunnen gebruiken
om elkaar te contacteren.De voorgestelde constructie is gebaseerd
op een geheime sleutel die gedeeld wordttussen de twee
communicerende partijen. De pseudoniemen die op deze manierbekomen
worden, hebben het voordeel dat ze op een efficiënte manier
herkendkunnen worden door de andere partij, zonder dat enige andere
partij een ideeheeft aan wie het bericht gericht is.
Eénmaal een nieuw pseudoniem geconstrueerd is, kan het gebruikt
worden oméén of meerdere paden op te zetten naar de andere
partij. Het opzetten vandeze paden gebeurt zodanig dat de
deelnemende knopen (die berichten zullendoorsturen naar elkaar tot
de eindbestemming bereikt is) geen idee hebben wiede communicerende
partijen zijn of waar deze gelocaliseerd zijn. Onze oplossingbiedt
dus bescherming tegen de knopen die deel uitmaken van het netwerk.
Daar-naast biedt onze oplossing ook bescherming tegen een aanvaller
die alle berichtenin het netwerk kan afluisteren. Het is duidelijk
dat, wanneer deze aanvaller her-haaldelijk een bericht ziet
passeren over eenzelfde route, hij kan aannemen datde eindpunten
van deze route met elkaar communiceren. Daarom stellen we
eensysteem voor om de locatie van een echte route te beschermen via
nepberichten(zie Fig. 4).
Om deze bescherming te bieden maken we zowel gebruik van een
“padding”-schema (hierdoor krijgen berichten een willekeurige
lengte) en een “time-to-live”-schema (de nepberichten sterven uit
nadat ze een aantal hops afgelegd hebben).Na de voorstelling van
ons anoniem routeringsprotocol geven we een gedetailleer-
-
xxxvii
de analyse van de anonimiteit en efficiëntie die geboden wordt
door padding entime-to-live schema’s.
-
Chapter 1
Introduction
1.1 Motivation
The short but rapidly evolving history of digital communication
systems hasrecently taken another turn. Since their introduction in
the 1940s, digital com-puters have evolved from room-filling
machines, available only to a few largeorganizations, to
affordable, light and portable devices. In parallel, starting inthe
late 1950s, computer networks evolved from small isolated networks
centeredaround a mainframe, to the now omnipresent Internet,
connecting computersaround the globe. Until recently, computers
were typically connected to a wallsocket using a wire, limiting the
mobility of the users. With the introductionof the 802.11 Wireless
Local Area Network (WLAN) standard in the 1990s, itis now possible
to make a wireless connection to an Access Point (AP),
whichreplaces the traditional Ethernet socket. These recent
advances in wireless tech-nologies and further miniaturization of
computer systems, enable the next majorevolutionary step: Mobile Ad
hoc Networks (MANETs).
The most important characteristics of MANETs are [121]:
– Self-organized and Decentralized: An ad hoc network
establishes itself themoment two or more devices enter each others’
communication range. Thishappens without the use of any fixed
infrastructure, but relies solely on thedevices that make up the ad
hoc network.
– Dynamic network topology: In many situations, the devices will
be mobile.Next to this, due to power considerations, devices can
turn themselves off atany time. Both actions imply a changing
network topology.
1
-
2 Chapter 1. Introduction
– Multi-hop, wireless connections: Obviously, nodes can only be
mobile if theyare linked through wireless connections. Possible
technologies include radioand infrared. In order to be able to
communicate with devices that are out ofrange, intermediate devices
will forward data packets in a hop-by-hop fashion.
– Heterogeneity: The devices that make up an ad hoc network can
have verydifferent capabilities (ranging from radio enabled light
switches, al the wayup to laptops).
MANETs make it possible to rapidly deploy networks in areas that
have noexisting communications infrastructure, making them
extremely well suited toestablishing communications in disaster
areas or war zones. Other applicationsinclude urban mesh networks
and car to car networks. Urban mesh networks havethe potential to
allow users to bypass broadband providers. A single house
couldconnect to the Internet and then extend access to the entire
neighborhood viawireless, multi-hop ad hoc networking. Cars could
benefit in many ways from acommunication link. Next to the obvious
benefits to business and entertainmentapplications, safety on the
road would also improve: traffic congestion avoidance,collision
avoidance, braking coordination, remote diagnostics, etc.
One specific example of MANETs are Distributed Sensor Networks
(DSNs). Sen-sor networks consist of thousands of miniature sensors
(referred to as motes)that are deployed in some area of interest
[14, 90, 135, 171, 174]. These sensors,equipped with the necessary
computing power and communication capabilities,form a wireless ad
hoc network to collect and forward the necessary sensing
data.Typical characteristics of sensor networks (in addition to
those of a MANET)are:
– Unattended: Once the sensors have been deployed, they may be
physicallyimpossible to reach.
– Limited power supply: In many situations, the sensor node’s
energy is sup-plied by a battery. If the sensor’s cannot be
reached, then the battery cannotbe replaced.
– Limited processing power: Cheap miniature sensors with
ultra-low powerbudgets will not be equipped with fast,
multimedia-enabled processors.
– Limited bandwidth: Fast transmission speeds are not required
and requiremore power.
Possible applications of sensor networks include: (1) A farmer
or ecologist couldequip motes with sensors that detect temperature,
humidity, etc., making eachmote a mini weather station. Scattered
throughout a field, orchard or forest,these motes would allow the
tracking of micro-climates, detect diseases, etc. (2)
-
1.2 This thesis and related work 3
A biologist could equip an endangered animal with a collar
containing a motethat senses position, temperature, etc. As the
animal moves around, the motegathers data from the sensors. This
data is collected by an ad hoc network ofdata retrieving motes
scattered throughout the animals natural habitat. (3) Sky-scrapers,
bridges and other large structures could be fitted with motes that
areequipped with a positioning system. Minute changes in related
position of motescan be used to detect cracks and creases in these
structures.
Providing security is an important issue that needs to be solved
before MANETscan become an everyday reality. Wireless
communications are easy to interceptwithout detection. Moreover,
radio waves travel through walls and windows, andcan be intercepted
outside the physical perimeter of homes and corporations. Themedia
attention given to the failing Wired Equivalent Privacy (WEP)1
protocol[24, 63, 170], and in a lesser degree, to the Bluetooth
security shortcomings[82], proves that security is deemed important
by the general public. Due tothe specific properties of wireless ac
hoc networks, it is not straightforward toprovide security
services. First of all, there are no online central servers that
canbe used to facilitate security services such as signing public
key certificates orestablishing session keys. Secondly, multi-hop
routing implies that every node inthe system is a potential router
for any other node. Mechanisms need to be inplace to establish the
level of trust we have in these other nodes, to protect ourdata
from them, etc. Thirdly, because of the dynamic network topology,
routeswill continuously change. New nodes will enter a node’s
neighborhood, while oldnodes leave the neighborhood. This means
that nodes will continuously have toestablish new trust
relationships. Finally, the security mechanisms will have tooperate
on nodes with limited resources. Traditional security mechanisms
werenot designed with the specific properties of ad hoc networks in
mind. Therefore,the majority of these mechanisms are not directly
applicable to MANETs. Sincethe late 1990s, a substantial research
effort has been directed at designing securitymechanisms for
wireless ad hoc networks.
1.2 This thesis and related work
Providing security for ad hoc networks encompasses the complete
informationsecurity research domain, ranging from developing
efficient cryptographic primi-tives to preparing security policies.
We can distinguish several subtopics (manyof them a complete
research field themselves):
1WEP was the first mechanism proposed to secure IEEE 802.11
wireless Local Area Networks(LANs).
-
4 Chapter 1. Introduction
Efficient cryptographic primitives
Many security mechanisms rely on cryptography. Because of the
limited resourcesof the nodes in an ad hoc network, it is important
that these cryptographicprimitives are as efficient as possible.
Efficiency has always been an importantcharacteristic of
cryptographic primitives, but when designing protocols for adhoc
networks, their efficiency should be considered as important as the
securitythey offer. We provide a detailed analysis of the
efficiency of the most commoncryptographic primitives in Chapter 2.
In Chapter 3, we present a detailedanalysis of the efficiency of
one-time signature schemes based on a universal one-way function.
Finally, in Chapter 4 we show how it is possible to
constructcooperative threshold one-time signature schemes, in which
multiple users cancooperate to sign a message.
Authentication and Key establishment
Cryptography reduces the confidentiality and integrity of a
message to the con-fidentiality and integrity of a key. When using
symmetric cryptography, theparties involved have to negotiate a
secret key. A good key establishment schemeprovides entity
authentication (all parties know the identity of the other par-ties
with whom they are establishing a key), key authentication (all
parties areassured that no unauthorized parties could have obtained
the secret key), andkey confirmation (all parties are assured that
all other parties have knowledgeof the secret key). Key
establishment schemes can be divided into three majorcategories:
(1) key pre-distribution schemes, (2) schemes using a trusted
thirdparty, and (3) schemes based on public key cryptography.
Key pre-distribution schemes have received a lot of attention in
the setting of adhoc networks. They are very suited for ad hoc
networks as they do not requirea trusted third party to be
available at all times, and are very efficient (theydo not require
computations and very little communications). Eschenauer andGligor
[58] were the first to propose random key pre-distribution to
establish keysin ad hoc networks. They propose installing a random
subset of a larger batchof keys in every node. After deployment,
the nodes check whether they sharea key with one or more of their
neighbors. For example, two nodes will shareat least one key with a
probability of 50% if each of them receives 60 differentkeys out of
a batch of 5000 keys. Many variations and adaptations have
beenproposed subsequently (e.g., based on location information,
using structured keydistribution instead of random distribution,
etc.). We refer to [37] for an overview.Du et al. have combined
Blom’s key pre-distribution scheme [22] with random
keypre-distribution, resulting in a scheme with a nice threshold
property. As long as
-
1.2 This thesis and related work 5
less than or equal to λ nodes have been compromised,
uncompromised nodes aresecure; when more than λ nodes are
compromised, all pairwise keys in the entirenetwork are compromised
[56]. These proposals are all targeted at static (ornear-static)
networks. In Chapter 5 we propose a key establishment scheme
thatextends key pre-distribution schemes to the setting of dynamic
networks. Thisscheme uses key pre-distribution as a bootstrap
mechanism and allows nodes tocontinuously establish pairwise keys
with their neighbors or any other node inthe network. We achieve
this by allowing every node in the network to becomea trusted third
party for any other node.
Schemes using trusted third parties are not really suited for ad
hoc networks asthey assume that the trusted third party is
available to anybody. However, theycan be applied in a distributed
fashion as in the scheme we propose in Chapter 5.
The disadvantage of public key based schemes is that they
require certificatesand that public key algorithms are inefficient
(Chapter 2). Zhou and Haas [185]propose to distribute the task of
the Certification Authority (CA) to multiplenodes using a threshold
scheme. This has two advantages: (1) if one or moreof the CAs
becomes unreachable, a node can still obtain a certificate, and
(2)an adversary will have to compromise multiple CAs before he can
falsify cer-tificates. We have extended this idea in [156]. The
self-organized Public KeyInfrastructure (PKI) for ad hoc networks
was introduced by Hubaux et al. [75].Their scheme is similar to
Pretty Good Privacy (PGP) [187] in the sense thatpublic key
certificates are issued by the users. However, as opposed to
PGP,certificates are stored and distributed by the users (and not
by certificate direc-tories). Each user maintains a local
repository that contains a limited number ofcertificates. When user
u wants to obtain the public key of user v, they mergetheir local
repositories, and u tries to find an appropriate certificate chain
from uto v in the merged repositories. A third mechanism to
authenticate public keysis using identity-based public key systems
[23]. In identity-based schemes, thepublic key is mathematically
derived from the identity of the user, i.e., knowingthe identity of
a user automatically provides you with an authenticated copy ofthat
user’s public key. This has been adapted to ad hoc networks in,
a.o., [42, 93].Finally, we mention the work by Jakobsson and
Pointcheval [81]. They propose avariation on the well known
Station-to-Station (STS) protocol [107, Sect. 12.6],that is
specifically designed for efficiency.
Carman et al. [35, 36] have analyzed several approaches for key
managementin sensor networks. They present detailed performance
evaluation of severalschemes, including key pre-distribution,
protocols using a trusted server, au-tonomous key agreement
protocols and the use of identity-based public key
cryp-tography.
-
6 Chapter 1. Introduction
Broadcast authentication
Unless directed antennas are used, radio transmissions are
automatically broad-cast transmissions. In multi-hop routing this
is important as it allows to use allnodes within range as potential
routers for our messages. In order to preventan adversary from
flooding the entire network with messages, authentication
ofbroadcast messages is an important aspect of ad hoc network
security. Oneobvious solution would be to attach a digital
signature to every broadcast mes-sage, as the same signature can be
verified by every recipient. The inefficiencyof digital signature
schemes combined with the fact that broadcast is the mainmethod of
establishing routes in ad hoc networks, means that this is not an
idealsolution. Perrig et al. propose different protocols that uses
efficient Message Au-thentication Codes (MACs) [124, 126] or
one-time signature [125] to authenticatebroadcast messages. As MACs
are symmetric primitives, the key to create andverify a MAC value
is the same. This means that every node v that can verify
abroadcast message originating at node u, can also impersonate node
u. Perrig etal. solve this by introducing time as an asymmetric
property in the system. Thesender u computes a MAC of his broadcast
message using a key k that is notknown to the other nodes at the
moment of broadcast. After a short time delay,the key k is released
to the other nodes. The other nodes can authenticate thiskey k
using one-way chains (see Sect. 3.4.2 on p. 49). The moment the key
isreleased, it cannot be used any more to create MACs, only to
verify them. Thedisadvantage of this mechanism is that it requires
a synchronized clock.
Secure Routing
Almost all ad hoc routing schemes [121, 127] use broadcast at
some point. There-fore, most proposals for secure broadcast also
include a section on how to use thesecure broadcast mechanism to
create secure routing schemes [125, 126]. Hu etal. [73] present a
secure broadcast mechanism that can use serveral authentica-tion
methods, they also discuss a number of attacks on ad hoc routing
schemes.Papadimitratos and Haas propose a scheme based on MACs that
only requiresthat the two communicating nodes share a secret key
[118]. In [117] they presenta protocol that is based on digital
signatures. Other schemes based on digitalsignatures include [71,
167]. In Chapter 5 we show how our key establishmentprotocol can be
built on top of the Dynamic Source Routing (DSR) routingprotocol,
and how we can use the established keys to build a secure version
ofDSR.
-
1.3 Outline and main contributions 7
Privacy
Privacy is an important issue for mobile wireless networks. Soon
after the publi-cation of the Bluetooth standard, it was shown that
it is straightforward to tracka device’s whereabouts [82]. As many
wireless devices are also personal devices(e.g., PDA, cell phone,
etc.), this implies that it is possible to track people asthey move
about. The moment ubiquitous computing becomes a reality, the
pri-vacy risks become even higher. People will be able to use their
personal deviceto connect to a wide range of services anytime,
anywhere. In high density areas,such as city centers, shopping
malls and airports, multi-hop ad hoc networks canbe used to offer
connectivity to these services. Not only the service providers,but
all users, will have to be trusted not to reveal private
information aboutother users. It is clear that, as we progress more
and more towards ubiquitouscomputing, privacy enabling techniques
become more and more important. Weprovide a detailed overview of
the state in the art of privacy preserving ad hocrouting schemes in
Chapter 6. We propose a new efficient anonymous routingscheme that
protects against a more powerful adversary.
Incentives and reputation schemes
Ad hoc networks rely on other devices (usually owned by
different users) to for-ward messages for each other. An important
issue here is that the average useris selfish and is likely to
abuse the system by not forwarding messages of others.This has
triggered research towards techniques to provide users with an
incentiveto forward messages. The field can be split into two
different approaches: award-ing well behaving users and punishing
misbehaving users. The awarding schemes[33, 34, 79, 184] usually
involve paying users to forward messages, in many casesusing a
micro-payment scheme [102, 112, 146]. The downside of these
proto-cols are their overhead and the fact that they require some
fixed infrastructure.Reputation systems work by detecting and
punishing the misbehaving nodes,so that cooperation is more
attractive than cheating [30, 31, 32, 74, 105, 113].The
disadvantage of reputation schemes is that it is difficult to
distinguish be-tween malicious behavior and broken links, device
failures, etc. They also havedifficulties to prevent users from
framing other users.
1.3 Outline and main contributions
The outline of this doctoral thesis is the following:
-
8 Chapter 1. Introduction
– Chapter 1 presents the motivation and context of the work
described in thisthesis.
– Chapter 2 shows the state of the art of cryptographic
primitives and pro-vides a detailed analysis of their efficiency.
The design decisions made in thesubsequent chapters were based on
the information provided in this chapter.
– Chapter 3 provides a detailed analysis of the efficiency of
one-time signatureschemes based on a universal one-way function and
compares them withtraditional signature schemes such as the
Elliptic Curve Digital SignatureAlgorithm (ECDSA). This analysis
takes into account all aspects of usingthese schemes in a wireless
environment, including authentication of the one-time public keys.
This chapter is an extended version of the research resultsthat we
have published in [159].
– Chapter 4 shows how it is possible to construct cooperative
threshold one-time signature schemes, in which multiple users can
cooperate to sign a mes-sage. In the second part of this chapter,
we show how to build a completedata authentication mechanism, that
allows multiple sensor nodes to jointlyauthenticate data packets.
In this scheme, the sensor nodes are only requiredto perform the
efficient public operations (i.e., encryption and signature
ver-ification) of the RSA or Rabin public key systems, while the
computationaldemanding tasks are off-loaded to the powerful query
nodes. This chapterextends the research results that we have
published in [158].
– Chapter 5 presents a key establishment and secure routing
protocol fordynamic ad hoc networks. The key establishment scheme,
which is based onsecret sharing, allows nodes to securely maintain
pairwise keys and broadcastkeys with their 1-hop neighborhood. The
same mechanism also allows anytwo arbitrary nodes to securely
establish a pairwise key. We show how tointegrate the key
establishment protocol with the DSR protocol. This workwas
partially presented in [160].
– Chapter 6 describes a novel anonymous routing scheme for ad
hoc networks.The chapter starts with an introduction to the field
of anonymity and thepresentation of the state of the art in
anonymous routing schemes for adhoc networks. We show the strengths
and weaknesses of these schemes, withrespect to both the anonymity
they offer and their efficiency. Next, we presenta novel anonymous
routing scheme that outperforms existing proposals bothconcerning
efficiency and the provided anonymity. We show and analyze howit is
possible to hide routes by allowing limited broadcast, and how to
selecttime-to-live values in order to achieve optimal performance
with respect toanonymity. This chapter extends the research results
that we have published
-
1.3 Outline and main contributions 9
in [157].
– Chapter 7 summarizes the conclusions and provides possible
directions forfuture research.
We have worked on other research publications that have not been
included inthis thesis. In [48, 50], we introduce an information
theoretic model that can beused to measure the degree of anonymity
provided by schemes for anonymousconnections. In [156], we present
a key management scheme for ad hoc networksbased on hierarchical
and distributed PKI. An extension of the “Resurrectingduckling”
protocol by Stajano and Anderson [168, 169] was presented in
[154].Finally, in [155] we show how to mitigate denial-of-service
attacks on ad hocnetworks by authenticating every single message in
the network.
-
Chapter 2
Efficiency of CryptographicPrimitives
As mentioned in the introductory chapter of this thesis, a large
part of our re-search was motivated by the restrictions of the
mobile devices for which ourprotocols are designed. In this chapter
we describe and evaluate the efficiencyof the most common
cryptographic primitives, both symmetric techniques andpublic-key
techniques. This chapter is not intended as a rigorous and
detailedexplanation of the cryptographic primitives we describe,
but rather to help under-stand the performance differences between
these primitives. As such, we will notdefine every notion that is
required to completely analyze many security aspects.For example,
we will use the terms “easy”, “hard”, “infeasible”, etc.
withoutmathematical definitions to describe the exact meaning of
these terms. We referto [104, 107, 130] for exact definitions,
detailed descriptions and rigorous securityanalyses of the
primitives we briefly discuss here.
Contributions in this chapter
– This chapter gives an overview of the state of the art of
current cryptographicprimitives and provides a detailed analysis of
their efficiency.
– We also explain why certain schemes are more efficient than
others.
– The information provided in this chapter is necessary to
explain the designdecisions we made in the following chapters.
11
-
12 Chapter 2. Efficiency of Cryptographic Primitives
2.1 Symmetric primitives
There are three fundamental classes of symmetric primitives:
stream ciphers,block ciphers, and cryptographic hash functions.
Stream ciphers and block ci-phers are usually used to provide
confidentiality, i.e., hiding messages from unau-thorized parties
using encryption. The other main application of block ciphersis the
construction of MACs. MACs are used to provide message integrity
andauthentication. Message integrity allows detection of
unauthorized modifica-tions of messages, while entity
authentication provides the recipient with proofof the identity of
the source of the message (see [107] for exact
definitions).Finally, cryptographic hash functions have multiple
applications, e.g., integrityprotection, preparing messages for
digital signatures, building one-time signatureschemes, etc.
2.1.1 Symmetric encryption
Shannon was one of the pioneers in the field of cryptography
[162]. Shannondescribed a good encryption algorithm as a
mixing-transformation which dis-tributes the meaningful messages
from the sparse region of meaningful messagesfairly uniformly over
the entire message space. Note that for Shannon the plain-text
space is a sparse region inside the larger message space (the
ciphertext space).Although nowadays, it is no longer true for all
encryption algorithms that theplaintext space is the same as (or a
subspace of) the ciphertext space, this notionof
mixing-transformation still remains meaningful. Nowadays, an
essential prop-erty of a good encryption algorithm is that the
ciphertexts have a distribution inthe ciphertext space which is
indistinguishable from the uniform distribution inthe same
space.
The basic model of an encryption scheme is depicted in Fig. 2.1.
Alice wants totransmit a secret message to Bob over an insecure
channel in such a way that anadversary Eve is not able to learn the
message although she can eavesdrop on thechannel. For this purpose
Alice and Bob use an encryption scheme. Syntactically,an encryption
scheme can be defined as follows:
Definition 2.1 (Encryption scheme). Let the set of plaintext
messages, theset of ciphertext messages (cryptograms), the
encryption and decryption key spacebe M, C,PK and SK respectively.
An encryption scheme consists of three algo-rithms Gen, E and
D:
– The encryption-decryption key pair (pk , sk) is generated by
the efficient keygeneration algorithm Gen : {0, 1}∗R → PK× SK.
-
2.1 Symmetric primitives 13
– Messages are encrypted with the efficient encryption algorithm
E : PK×M→C. We denote this by
c = Epk (m) .
– Cryptograms are decrypted with the efficient decryption
algorithm D : SK ×C →M. We denote this by
m = Dsk (c) .
Here, “efficient” means that the required time is polynomial in
the bit-length ofthe input.
In the case of symmetric encryption schemes, the encryption and
decryption keyis the same and needs to be exchanged between Alice
and Bob beforehand. Inasymmetric or public key cryptosystems there
are two different keys, one forencryption and one for decryption.
The encryption key pk is made public, whilethe decryption key sk is
kept secret by its owner (see Sect. 2.2).
Block ciphers
If block ciphers are used for encryption, messages are divided
into data blocksof a fixe