168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

15
To Lie or to Comply: Defending against Flood Attacks in Disruption Tolerant Networks Qinghua Li, Student Member, IEEE, Wei Gao, Member, IEEE, Sencun Zhu, and Guohong Cao, Fellow, IEEE Abstract—Disruption Tolerant Networks (DTNs) utilize the mobility of nodes and the opportunistic contacts among nodes for data communications. Due to the limitation in network resources such as contact opportunity and buffer space, DTNs are vulnerable to flood attacks in which attackers send as many packets or packet replicas as possible to the network, in order to deplete or overuse the limited network resources. In this paper, we employ rate limiting to defend against flood attacks in DTNs, such that each node has a limit over the number of packets that it can generate in each time interval and a limit over the number of replicas that it can generate for each packet. We propose a distributed scheme to detect if a node has violated its rate limits. To address the challenge that it is difficult to count all the packets or replicas sent by a node due to lack of communication infrastructure, our detection adopts claim-carry-and- check: each node itself counts the number of packets or replicas that it has sent and claims the count to other nodes; the receiving nodes carry the claims when they move, and cross-check if their carried claims are inconsistent when they contact. The claim structure uses the pigeonhole principle to guarantee that an attacker will make inconsistent claims which may lead to detection. We provide rigorous analysis on the probability of detection, and evaluate the effectiveness and efficiency of our scheme with extensive trace- driven simulations. Index Terms—DTN, security, flood attack, detection Ç 1 INTRODUCTION D ISRUPTION Tolerant Networks (DTNs) [1] consist of mobile nodes carried by human beings [2], [3], vehicles [4], [5], etc. DTNs enable data transfer when mobile nodes are only intermittently connected, making them appropriate for applications where no communication infrastructure is available such as military scenarios and rural areas. Due to lack of consistent connectivity, two nodes can only exchange data when they move into the transmission range of each other (which is called a contact between them). DTNs employ such contact opportunity for data forwarding with “store-carry-and-forward”; i.e., when a node receives some packets, it stores these packets in its buffer, carries them around until it contacts another node, and then forwards them. Since the contacts between nodes are opportunistic and the duration of a contact may be short because of mobility, the usable bandwidth which is only available during the opportunistic contacts is a limited resource. Also, mobile nodes may have limited buffer space. Due to the limitation in bandwidth and buffer space, DTNs are vulnerable to flood attacks. In flood attacks, maliciously or selfishly motivated attackers inject as many packets as possible into the network, or instead of injecting different packets the attackers forward replicas of the same packet to as many nodes as possible. For convenience, we call the two types of attack packet flood attack and replica flood attack, respectively. Flooded packets and replicas can waste the precious bandwidth and buffer resources, prevent benign packets from being forwarded and thus degrade the network service provided to good nodes. Moreover, mobile nodes spend much energy on transmitting/receiving flooded packets and replicas which may shorten their battery life. Therefore, it is urgent to secure DTNs against flood attacks. Although many schemes have been proposed to defend against flood attacks on the Internet [6] and in wireless sensor networks [7], they assume persistent connectivity and cannot be directly applied to DTNs that have intermittent connectivity. In DTNs, little work has been done on flood attacks, despite the many works on routing [8], [4], [36], data dissemination [9], [37], blackhole attack [10], wormhole attack [11], and selfish dropping behavior [12], [13]. We noted that the packets flooded by outsider attackers (i.e., the attackers without valid cryptographic credentials) can be easily filtered with authentication techniques (e.g., [14]). However, authentication alone does not work when insider attackers (i.e., the attackers with valid cryptographic credentials) flood packets and replicas with valid signatures. Thus, it is still an open problem is to address flood attacks in DTNs. In this paper, we employ rate limiting [15] to defend against flood attacks in DTNs. In our approach, each node has a limit over the number of packets that it, as a source node, can send to the network in each time interval. Each node also has a limit over the number of replicas that it can 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013 . Q. Li and G. Cao are with the Department of Computer Science and Engineering, The Pennsylvania State University, IST Building, University Park, PA 16802. E-mail: {qxl118, gcao}@cse.psu.edu. . W. Gao is with the Department of Electrical Engineering and Computer Science, The University of Tennessee, 302 Min Kao, 1520 Middle Drive, Knoxville, TN 37996. E-mail: [email protected]. . S. Zhu is with the Department of Computer Science and Engineering, College of Information Sciences and Technology, The Pennsylvania State University, 338F IST Building, University Park, PA 16802. E-mail: [email protected]. Manuscript received 1 May 2011; revised 26 Mar. 2011; accepted 5 Oct. 2012; published online 19 Oct. 2012. For information on obtaining reprints of this article, please send e-mail to: [email protected], and reference IEEECS Log Number TDSC-2011-05-0125. Digital Object Identifier no. 10.1109/TDSC.2012.84. 1545-5971/13/$31.00 ß 2013 IEEE Published by the IEEE Computer Society

Transcript of 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

Page 1: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

To Lie or to Comply: Defending against FloodAttacks in Disruption Tolerant Networks

Qinghua Li, Student Member, IEEE, Wei Gao, Member, IEEE,

Sencun Zhu, and Guohong Cao, Fellow, IEEE

Abstract—Disruption Tolerant Networks (DTNs) utilize the mobility of nodes and the opportunistic contacts among nodes for data

communications. Due to the limitation in network resources such as contact opportunity and buffer space, DTNs are vulnerable to flood

attacks in which attackers send as many packets or packet replicas as possible to the network, in order to deplete or overuse the

limited network resources. In this paper, we employ rate limiting to defend against flood attacks in DTNs, such that each node has a

limit over the number of packets that it can generate in each time interval and a limit over the number of replicas that it can generate for

each packet. We propose a distributed scheme to detect if a node has violated its rate limits. To address the challenge that it is difficult

to count all the packets or replicas sent by a node due to lack of communication infrastructure, our detection adopts claim-carry-and-

check: each node itself counts the number of packets or replicas that it has sent and claims the count to other nodes; the receiving

nodes carry the claims when they move, and cross-check if their carried claims are inconsistent when they contact. The claim structure

uses the pigeonhole principle to guarantee that an attacker will make inconsistent claims which may lead to detection. We provide

rigorous analysis on the probability of detection, and evaluate the effectiveness and efficiency of our scheme with extensive trace-

driven simulations.

Index Terms—DTN, security, flood attack, detection

Ç

1 INTRODUCTION

DISRUPTION Tolerant Networks (DTNs) [1] consist ofmobile nodes carried by human beings [2], [3], vehicles

[4], [5], etc. DTNs enable data transfer when mobile nodesare only intermittently connected, making them appropriatefor applications where no communication infrastructure isavailable such as military scenarios and rural areas. Due tolack of consistent connectivity, two nodes can onlyexchange data when they move into the transmission rangeof each other (which is called a contact between them).DTNs employ such contact opportunity for data forwardingwith “store-carry-and-forward”; i.e., when a node receivessome packets, it stores these packets in its buffer, carriesthem around until it contacts another node, and thenforwards them. Since the contacts between nodes areopportunistic and the duration of a contact may be shortbecause of mobility, the usable bandwidth which is onlyavailable during the opportunistic contacts is a limitedresource. Also, mobile nodes may have limited buffer space.

Due to the limitation in bandwidth and buffer space,

DTNs are vulnerable to flood attacks. In flood attacks,

maliciously or selfishly motivated attackers inject as manypackets as possible into the network, or instead of injectingdifferent packets the attackers forward replicas of the samepacket to as many nodes as possible. For convenience, we callthe two types of attack packet flood attack and replica floodattack, respectively. Flooded packets and replicas can wastethe precious bandwidth and buffer resources, prevent benignpackets from being forwarded and thus degrade the networkservice provided to good nodes. Moreover, mobile nodesspend much energy on transmitting/receiving floodedpackets and replicas which may shorten their battery life.Therefore, it is urgent to secure DTNs against flood attacks.

Although many schemes have been proposed to defendagainst flood attacks on the Internet [6] and in wirelesssensor networks [7], they assume persistent connectivityand cannot be directly applied to DTNs that haveintermittent connectivity. In DTNs, little work has beendone on flood attacks, despite the many works on routing[8], [4], [36], data dissemination [9], [37], blackhole attack[10], wormhole attack [11], and selfish dropping behavior[12], [13]. We noted that the packets flooded by outsiderattackers (i.e., the attackers without valid cryptographiccredentials) can be easily filtered with authenticationtechniques (e.g., [14]). However, authentication alone doesnot work when insider attackers (i.e., the attackers withvalid cryptographic credentials) flood packets and replicaswith valid signatures. Thus, it is still an open problem is toaddress flood attacks in DTNs.

In this paper, we employ rate limiting [15] to defendagainst flood attacks in DTNs. In our approach, each nodehas a limit over the number of packets that it, as a sourcenode, can send to the network in each time interval. Eachnode also has a limit over the number of replicas that it can

168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

. Q. Li and G. Cao are with the Department of Computer Science andEngineering, The Pennsylvania State University, IST Building, UniversityPark, PA 16802. E-mail: {qxl118, gcao}@cse.psu.edu.

. W. Gao is with the Department of Electrical Engineering and ComputerScience, The University of Tennessee, 302 Min Kao, 1520 Middle Drive,Knoxville, TN 37996. E-mail: [email protected].

. S. Zhu is with the Department of Computer Science and Engineering,College of Information Sciences and Technology, The Pennsylvania StateUniversity, 338F IST Building, University Park, PA 16802.E-mail: [email protected].

Manuscript received 1 May 2011; revised 26 Mar. 2011; accepted 5 Oct. 2012;published online 19 Oct. 2012.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TDSC-2011-05-0125.Digital Object Identifier no. 10.1109/TDSC.2012.84.

1545-5971/13/$31.00 � 2013 IEEE Published by the IEEE Computer Society

Page 2: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

generate for each packet (i.e., the number of nodes that itcan forward each packet to). The two limits are used tomitigate packet flood and replica flood attacks, respectively.If a node violates its rate limits, it will be detected and itsdata traffic will be filtered. In this way, the amount offlooded traffic can be controlled.

Our main contribution is a technique to detect if a nodehas violated its rate limits. Although it is easy to detect theviolation of rate limit on the Internet and in telecommuni-cation networks where the egress router and base stationcan account each user’s traffic, it is challenging in DTNs dueto lack of communication infrastructure and consistentconnectivity. Since a node moves around and may senddata to any contacted node, it is very difficult to count thenumber of packets or replicas sent out by this node. Ourbasic idea of detection is claim-carry-and-check. Each nodeitself counts the number of packets or replicas that it hassent out, and claims the count to other nodes; the receivingnodes carry the claims around when they move, exchangesome claims when they contact, and cross-check if theseclaims are inconsistent. If an attacker floods more packets orreplicas than its limit, it has to use the same count in morethan one claim according to the pigeonhole principle,1 andthis inconsistency may lead to detection. Based on this idea,we use different cryptographic constructions to detectpacket flood and replica flood attacks.

Because the contacts in DTNs are opportunistic innature, our approach provides probabilistic detection. Themore traffic an attacker floods, the more likely it will bedetected. The detection probability can be flexibly adjustedby system parameters that control the amount of claimsexchanged in a contact. We provide a lower and upperbound of detection probability and investigate the problemof parameter selection to maximize detection probabilityunder a certain amount of exchanged claims. The effective-ness and efficiency of our scheme are evaluated withextensive trace-driven simulations.

This paper is structured as follows. Section 2 motivatesour work. Section 3 presents our models and basic ideas.Sections 4 and 5 present our scheme. Section 6 presentssecurity and cost analysis. Section 7 presents simulationresults. The last two sections present related work andconclusions, respectively.

2 MOTIVATION

2.1 The Potential Prevalence of Flood Attacks

Many nodes may launch flood attacks for malicious orselfish purposes. Malicious nodes, which can be the nodesdeliberately deployed by the adversary or subverted by theadversary via mobile phone worms [16], launch attacks tocongest the network and waste the resources of other nodes.

Selfish nodes may also exploit flood attacks to increasetheir communication throughput. In DTNs, a single packetusually can only be delivered to the destination with aprobability smaller than 1 due to the opportunistic con-nectivity. If a selfish node floods many replicas of its ownpacket, it can increase the likelihood of its packet beingdelivered, since the delivery of any replica means successful

delivery of the packet. With packet flood attacks, selfishnodes can also increase their throughput, albeit in a subtlermanner. For example, suppose Alice wants to send a packetto Bob. Alice can construct 100 variants of the originalpacket which only differ in one unimportant padding byte,and send the 100 variants to Bob independently. When Bobreceives any one of the 100 variants, he throws away thepadding byte and gets the original packet.

2.2 The Effect of Flood Attacks

To study the effect of flood attacks on DTN routing andmotivate our work, we run simulations on the MIT Realitytrace [17] (see more details about this trace in Section 7).

We consider three general routing strategies in DTNs.1) Single-copy routing (e.g., [18], [8]): after forwarding a packetout, a node deletes its own copy of the packet. Thus, eachpacket only has one copy in the network. 2) Multicopy routing(e.g., [19]): the source node of a packet sprays a certainnumber of copies of the packet to other nodes and each copyis individually routed using the single-copy strategy. Themaximum number of copies that each packet can have isfixed. 3) Propagation routing (e.g., [17], [20], [21]): when anode finds it appropriate (according to the routing algo-rithm) to forward a packet to another encountered node, itreplicates that packet to the encountered node and keeps itsown copy. There is no preset limit over the number of copiesa packet can have. In our simulations, SimBet [8], Spray-and-Focus [19] (three copies allowed for each packet) andPropagation are used as representatives of the three routingstrategies, respectively. In Propagation, a node replicates apacket to another encountered node if the latter has morefrequent contacts with the destination of the packet.

Two metrics are used, The first metric is packet deliveryratio, which is defined as the fraction of packets delivered totheir destinations out of all the unique packets generated.The second metric is the fraction of wasted transmissions(i.e., the transmissions made by good nodes for floodedpackets). The higher fraction of wasted transmissions, themore network resources are wasted. We noticed that theeffect of packet flood attacks on packet delivery ratio hasbeen studied by Burgess et al. [22] using a different trace [4].Their simulations show that packet flood attacks signifi-cantly reduce the packet delivery ratio of single-copyrouting but do not affect propagation routing much.However, they do not study replica flood attacks and theeffect of packet flood attacks on wasted transmissions.

In our simulations, a packet flood attacker floods packetsdestined to random good nodes in each contact until thecontact ends or the contacted node’s buffer is full. A replicaflood attacker replicates the packets it has generated toevery encountered node that does not have a copy. Eachgood node generates thirty packets on the 121st day of theReality trace, and each attacker does the same in replicaflood attacks. Each packet expires in 60 days. The buffer sizeof each node is 5 MB, bandwidth is 2 Mbps and packetsize is 10 KB.

Fig. 1 shows the effect of flood attacks on packet deliveryratio. Packet flood attack can dramatically reduce thepacket delivery ratio of all three types of routing. Whenthe fraction of attackers is high, replica flood attack cansignificantly decrease the packet delivery ratio of single-copy and multicopy routing, but it does not have mucheffect on propagation routing.

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 169

1. The pigeonhole principle states that if � items are put into �pigeonholes with � > �, then at least one pigeonhole must contain morethan one item.

Page 3: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

Fig. 2 shows the effect of flood attacks on wastedtransmission. Packet flood attack can waste more than80 percent of the transmissions made by good nodes in allrouting strategies when the fraction of attackers is higherthan 5 percent. When 20 percent of nodes are attackers,replica flood attack can waste 68 and 44 percent oftransmissions in single-copy and multicopy routing, re-spectively. However, replica flood attack only wastes17 percent of transmissions in propagation routing. This isbecause each good packet is also replicated many times.

Remarks. The results show that all the three types ofrouting are vulnerable to packet flood attack. Single-copyand multicopy routing are also vulnerable to replicaflood attack, but propagation routing is much moreresistant to replica flood. Motivated by these results, thispaper addresses packet flood attack without assuming anyspecific routing strategy, and addresses replica flood attack forsingle-copy and multicopy routing only.

3 OVERVIEW

3.1 Problem Definition

3.1.1 Defense against Packet Flood Attacks

We consider a scenario where each node has a rate limit Lon the number of unique packets that it as a source cangenerate and send into the network within each timeinterval T . The time intervals start from time 0, T , 2T , etc.The packets generated within the rate limit are deemedlegitimate, but the packets generated beyond the limit aredeemed flooded by this node. To defend against packetflood attacks, our goal is to detect if a node as a source hasgenerated and sent more unique packets into the networkthan its rate limit L per time interval.

A node’s rate limit L does not depend on any specificrouting protocol, but it can be determined by a service

contract between the node and the network operator asdiscussed in Section 3.1.3. Different nodes can have differentrate limits and their rate limits can be dynamically adjusted.

The length of time interval should be set appropriately. Ifthe interval is too long, rate limiting may not be veryeffective against packet flood attacks. If the interval is tooshort, the number of contacts that each node has during oneinterval may be too nondeterministic and thus it is difficultto set an appropriate rate limit. Generally speaking, theinterval should be short under the condition that mostnodes can have a significant number of contacts with othernodes within one interval, but the appropriate lengthdepends on the contact patterns between nodes in thespecific deployment scenario.

3.1.2 Defense against Replica Flood Attacks

As motivated in Section 2, the defense against replica floodconsiders single-copy and multicopy routing protocols.These protocols require that, for each packet that a nodebuffers no matter if this packet has been generated by thenode or forwarded to it, there is a limit l on the number oftimes that the node can forward this packet to other nodes.The values of l may be different for different bufferedpackets. Our goal is to detect if a node has violated therouting protocol and forwarded a packet more times thanits limit l for the packet.

A node’s limit l for a buffered packet is determined bythe routing protocol. In multicopy routing, l ¼ L0 (where L0

is a parameter of routing) if the node is the source of thepacket, and l ¼ 1 if the node is an intermediate hop (i.e., itreceived the packet from another node). In single-copyrouting, l ¼ 1 no matter if the node is the source or anintermediate hop. Note that the two limits L and l do notdepend on each other.

We discuss how to defend against replica flood attacksfor quota-based routing [23], [19], [24] in Section 4.9.

3.1.3 Setting the Rate Limit L

One possible method is to set L in a request-approve style.When a user joins the network, she requests for a rate limitfrom a trusted authority which acts as the network operator.In the request, this user specifies an appropriate value ofL based on prediction of her traffic demand. If the trustedauthority approves this request, it issues a rate limitcertificate to this user, which can be used by the user toprove to other nodes the legitimacy of her rate limit. Toprevent users from requesting unreasonably large ratelimits, a user pays an appropriate amount of money or

170 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Fig. 1. The effect of flood attacks on packet delivery ratio. In absent node, attackers are simply removed from the network. Attackers are selectivelydeployed to high-connectivity nodes.

Fig. 2. The effect of flood attacks on the fraction of wasted transmission.Attackers are randomly deployed.

Page 4: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

virtual currency (e.g., the credits that she earns byforwarding data for other users [25]) for her rate limit.When a user predicts an increase (decrease) of her demand,she can request for a higher (lower) rate limit. The requestand approval of rate limit may be done offline. Theflexibility of rate limit leaves legitimate users’ usage of thenetwork unhindered. This process can be similar to signinga contract between a smartphone user and a 3G serviceprovider: the user selects a data plan (e.g., 200 MB/month)and pays for it; she can upgrade or downgrade the planwhen needed.

3.2 Models and Assumptions

3.2.1 Network Model

In DTNs, since contact durations may be short, a large dataitem is usually split into smaller packets (or fragments) tofacilitate data transfer. For simplicity, we assume that allpackets have the same predefined size. Although in DTNsthe allowed delay of packet delivery is usually long, it isstill impractical to allow unlimited delays. Thus, we assumethat each packet has a lifetime. The packet becomesmeaningless after its lifetime ends and will be discarded.

We assume that every packet generated by nodes isunique. This can be implemented by including the sourcenode ID and a locally unique sequence number, which isassigned by the source for this packet, in the packet header.

We also assume that time is loosely synchronized, suchthat any two nodes are in the same time slot at any time.Since the intercontact time in DTNs is usually at the scaleof minutes or hours, the time slot can be at the scale ofone minute. Such loose time synchronization is not hardto achieve.

3.2.2 Adversary Model

There are a number of attackers in the network. An attackercan flood packets and/or replicas. When flooding packets,the attacker acts as a source node. It creates and injects morepackets into the network than its rate limit L. When floodingreplicas, the attacker forwards its buffered packets (whichcan be generated by itself or received from other nodes)more times than its limit l for them. The attackers may beinsiders with valid cryptographic keys. Some attackers maycollude and communicate via out-band channels.

3.2.3 Trust Model

We assume that a public-key cryptography system isavailable. For example, Identity-Based Cryptography (IBC)[26] has been shown to be practical for DTNs [27]. In IBC,only an offline Key Generation Center (KGC) is needed.

KGC generates a private key for each node based on thenode’s id, and publishes a small set of public securityparameters to the node. Except the KGC, no party cangenerate the private key for a node id. With such a system,an attacker cannot forge a node id and private key pair.Also, attackers do not know the private key of a good node(not attacker).

Each node has a rate limit certificate obtained from atrusted authority. The certificate includes the node’s ID, itsapproved rate limit L, the validation time of this certificateand the trusted authority’s signature. The rate limitcertificate can be merged into the public key certificate orstand alone.

3.3 Basic Idea: Claim-Carry-and-Check

3.3.1 Packet Flood Detection

To detect the attackers that violate their rate limit L, wemust count the number of unique packets that each node asa source has generated and sent to the network in thecurrent interval. However, since the node may send itspackets to any node it contacts at any time and place, noother node can monitor all of its sending activities. Toaddress this challenge, our idea is to let the node itself countthe number of unique packets that it, as a source, has sentout, and claim the up-to-date packet count (together with alittle auxiliary information such as its ID and a timestamp)in each packet sent out. The node’s rate limit certificate isalso attached to the packet, such that other nodes receivingthe packet can learn its authorized rate limit L. If an attackeris flooding more packets than its rate limit, it has todishonestly claim a count smaller than the real value in theflooded packet, since the real value is larger than its ratelimit and thus a clear indicator of attack. The claimed countmust have been used before by the attacker in anotherclaim, which is guaranteed by the pigeonhole principle, andthese two claims are inconsistent. The nodes which havereceived packets from the attacker carry the claims includedin those packets when they move around. When two ofthem contact, they check if there is any inconsistencybetween their collected claims. The attacker is detectedwhen an inconsistency is found.

Let us look at an example in Fig. 3a. S is an attacker thatsuccessively sends out four packets to A, B, C, and D,respectively. Since L ¼ 3, if S claims the true count 4 in thefourth packet m4, this packet will be discarded by D. Thus,S dishonestly claims the count to be 3, which has alreadybeen claimed in the third packet m3. m3 (including theclaim) is further forwarded to node E. When D and E

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 171

Fig. 3. The basic idea of flood attack detection. cp and ct are packet count and transmission count, respectively. The arrows mean the transmissionof packet or metadata which happens when the two end nodes contact.

Page 5: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

contact, they exchange the count claims included in m3 and

m4, and check that S has used the same count value in two

different packets. Thus, they detect that S as an attacker.

3.3.2 Replica Flood Detection

Claim-carry-and-check can also be used to detect the

attacker that forwards a buffered packet more times than

its limit l. Specifically, when the source node of a packet or

an intermediate hop transmits the packet to its next hop, it

claims a transmission count which means the number of

times it has transmitted this packet (including the current

transmission). Based on if the node is the source or an

intermediate node and which routing protocol is used, the

next hop can know the node’s limit l for the packet, and

ensure that the claimed count is within the correct range

½1; l�. Thus, if an attacker wants to transmit the packet

more than l times, it must claim a false count which has

been used before. Similarly as in packet flood attacks, the

attacker can be detected. Examples are given in Figs. 3b

and 3c.

4 OUR SCHEME

Our scheme uses two different cryptographic construc-

tions to detect packet flood and replica flood attacks

independently. When our scheme is deployed to propaga-

tion routing protocols, the detection of replica flood

attacks is deactivated.The detection of packet flood attacks works indepen-

dently for each time interval. Without loss of generality, we

only consider one time interval when describing our scheme.

For convenience, we first describe our scheme assuming that

all nodes have the same rate limit L, and relax this

assumption in Section 4.8. In the following, we use SIGið�Þto denote node i’s signature over the content in the brackets.

4.1 Claim Construction

Two pieces of metadata are added to each packet (see

Fig. 4), Packet Count Claim (P-claim) and Transmission

Count Claim (T-claim). P-claim and T-claim are used to

detect packet flood and replica flood attacks, respectively.P-claim is added by the source and transmitted to later

hops along with the packet. T-claim is generated and

processed hop-by-hop. Specifically, the source generates a

T-claim and appends it to the packet. When the first hop

receives this packet, it peels off the T-claim; when it

forwards the packet out, it appends a new T-claim to the

packet. This process continues in later hops. Each hop keeps

the P-claim of the source and the T-claim of its previous hop

to detect attacks.

4.1.1 P-Claim

When a source node S sends a new packet m (which hasbeen generated by S and not sent out before) to a contactednode, it generates a P-claim as follows:

P-claim: S; cp; t;HðmÞ; SIGSðHðHðmÞjSjcpjtÞÞ: ð1Þ

Here, t is the current time. cp (cp 2 ½1; L�) is the packet countof S, which means that this is the cthp new packet S hascreated and sent to the network in the current time interval.S increases cp by one after sending m out.

The P-claim is attached to packet m as a header field, andwill always be forwarded along with the packet to laterhops. When the contacted node receives this packet, itverifies the signature in the P-claim, and checks the value ofcp. If cp is larger than L, it discards this packet; otherwise, itstores this packet and the P-claim.

4.1.2 T-Claim

When node A transmits a packet m to node B, it appends aT-claim to m. The T-claim includes A’s current transmissioncount ct for m (i.e., the number of times it has transmitted mout) and the current time t. The T-claim is

T-claim: A;B;HðmÞ; ct; t; SIGAðHðAjBjHðmÞjctjtÞÞ: ð2Þ

B checks if ct is in the correct range based on if A is thesource of m. If ct has a valid value, B stores this T-claim.

In single-copy and multicopy routing, after forwardingm for enough times, A deletes its own copy of m and willnot forward m again.

4.2 Inconsistency Caused by Attack

In a dishonest P-claim, an attacker uses a smaller packetcount than the real value. (We do not consider the casewhere the attacker uses a larger packet count than the realvalue, since it makes no sense for the attacker.) However,this packet count must have been used in another P-claimgenerated earlier. This causes an inconsistency called countreuse, which means the use of the same count in twodifferent P-claims generated by the same node. For examplein Fig. 3a the count value 3 is reused in the P-claims ofpacket m3 and m4. Similarly, count reuse is also caused bydishonest T-claims.

4.3 Protocol

Suppose two nodes contact and they have a number ofpackets to forward to each other. Then our protocol issketched in Algorithm 1.

Algorithm 1. The protocol run by each node in a contact

1: Metadata (P-claim and T-claim) exchange and attack

detection

2: if Have packets to send then

3: For each new packet, generate a P-claim;

4: For all packets, generate their T-claims and sign

them with a hash tree;

5: Send every packet with the P-claim and T-claimattached;

6: end if

7: if Receive a packet then

8: if Signature verification fails or the count value in its

P-claim or T-claim is invalid then

172 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Fig. 4. The conceptual structure of a packet and the changes made ateach hop of the forwarding path.

Page 6: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

9: Discard this packet;10: end if

11: Check the P-claim against those locally collected and

generated in the same time interval to detect

inconsistency;

12: Check the T-claim against those locally collected for

inconsistency;

13: if Inconsistency is detected then

14: Tag the signer of the P-claim (T-claim, respec-tively) as an attacker and add it into a blacklist;

15: Disseminate an alarm against the attacker to the

network;

16: else

17: Store the new P-claim (T-claim, respectively);

18: end if

19: end if

When a node forwards a packet, it attaches a T-claim tothe packet. Since many packets may be forwarded in acontact and it is expensive to sign each T-claim separately,an efficient signature construction is proposed in Section 4.7.The node also attaches a P-claim to the packets that aregenerated by itself and have not been sent to other nodesbefore (called new packet in line 3, Algorithm 1).

When a node receives a packet, it gets the P-claim andT-claim included in the packet. It checks them against theclaims that it has already collected to detect if there is anyinconsistency (see Section 4.5). Only the P-claims generatedin the same time interval (which can be determined by thetime tag) are cross-checked. If no inconsistency is detected,this node stores the P-claim and T-claim locally (seeSection 4.4).

To better detect flood attacks, the two nodes also exchangea small number of the recently collected P-claims andT-claims and check them for inconsistency. This metadataexchange process is separately presented in Section 5.

When a node detects an attacker, it adds the attacker intoa blacklist and will not accept packets originated from orforwarded by the attacker. The node also disseminates analarm against the attacker to other nodes (see Section 4.6).

4.4 Local Data Structures

Each node collects P-claims and T-claims from the packetsthat it has received and stores them locally to detect floodattacks. Let us look at a received packet m and the P-claimand T-claim included in this packet. Initially, this pair ofP-claim and T-claim are stored in full with all thecomponents shown in Formulas 1 and 2. When this noderemoves m from its buffer (e.g., after m is delivered tothe destination or dropped due to expiration), it compactsthis pair of claims to reduce the storage cost. If this pair ofclaims have been sampled for metadata exchange, they willbe stored in full until the exchange process ends and becompacted afterward.

4.4.1 Compact P-Claim Storage

Suppose node W stores a P-claim CCP ¼ fS; cp; t;HðmÞ;SIGSg. It compacts the P-claim as follows: using thetimestamp t, W gets the index i of the time interval that tbelongs to. The signature is discarded since it has beenverified. The compacted P-claim is

S; i; cp; eH8; ð3Þ

where eH8 is a 8-bit string called hash remainder. It is obtainedby concatenating 8 random bits of the packet hash HðmÞ.The indices of these 8 bits in the hash are determined byeight locators. The locators are randomly and indepen-dently generated by W for S at the beginning of theith interval, and are shared by all the P-claims issued by Sin the ith interval. Each locator only has log2 h bits where hdenotes the size of a hash (e.g., 256 for SHA-256). W keepsthese locators secret.

Suppose node W has collected n P-claims generated byS in interval i. For all these claims, only one source node IDand interval index is stored. Also, instead of directlystoring the packet count values cp included in theseP-claims, the compact structure uses a L-bit long bit vectorto store them. If value c appears in these P-claims, thecth bit of the vector is set. Let CiS denote the compactstructure of these P-claims. Then

CiS ¼ S; i; bit-vector; locators; ½ eH81; eH82

; . . . ; eH8n �: ð4Þ

4.4.2 Compact T-Claim Storage

Suppose node W stores a T-claim CCT ¼ fR;W;HðmÞ; ct; t;SIGRg issued by node R. The signature is discarded since ithas been verified. W does not need to store its own ID and tis not useful for inconsistency check. Then the compacted T-claim is

R; ct; eH32; ð5Þ

where eH32 is a 32-bit hash remainder defined similarly aseH8. Suppose W has collected n T-claims generated by R.Then the compact structure of these T-claims is

CR ¼ R; locators; ½ eH321; ct1 �; . . . ; ½ eH32n ; ctn �: ð6Þ

The locators are randomly and independently generated byW for R, and are shared by all the T-claims issued by R.

4.5 Inconsistency Check

Suppose node W wants to check a pair of P-claim andT-claim against its local collections to detect if there is anyinconsistency. The inconsistency check against full claims istrivial: W simply compares the pair of claims with thosecollected. In the following, we describe the inconsistencycheck against compactly stored claims.

4.5.1 Inconsistency Check with P-Claim

From the P-claim node W gets: the source node ID S, packetcount cp, timestamp t, and packet hash H. To checkinconsistency, W first uses S and t to map the P-claim tothe structure CiS (see (4)). Then it reconstructs the hashremainder of H using the locators in CiS . If the bit indexedby the packet count cp is set in the bit-vector but the hashremainder is not included in CiS , count reuse is detected andS is an attacker.

The inconsistency check based on compact P-claims doesnot cause false positive, since a good node never reuses anycount value in different packets generated in the sameinterval. The inconsistency check may cause false negative ifthe two inconsistent P-claims have the same hash remain-der. However, since the attacker does not know which bits

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 173

Page 7: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

constitute the hash remainder, the probability of falsenegative is only 2�8. Thus, it has minimal effect on theoverall detection probability.

4.5.2 Inconsistency Check with T-Claim

From the T-claim node W gets: the sender ID R, receiver IDQ and transmission count ct. If Q is W itself (which ispossible if the T-claim has been sent out by W but returnedby an attacker), W takes no action. Otherwise, it uses R tomap the T-claim to the structure CR (see (6)). If there is a2-tuple ½ eH 032; c

0t� in CR that satisfies 1) eH 032 is the same as the

remainder of H, and 2) c0t ¼ ct, then the issuer of the T-claim(i.e., R) is an attacker.

The inconsistency check based on compact T-claims doesnot cause extra false negative. False positive is possible butit can be kept low as follows: node W may falsely detect agood node R as an attacker if it has received two T-claimsgenerated by R that satisfy two conditions: 1) they aregenerated for two different packets, and 2) they have thesame hash remainder. For 32-bit hash remainder,the probability that each pair of T-claims lead to falsedetection is 2�32. In most cases, we expect that the numberof T-claims generated by R and received by W is not largedue to the opportunistic contacts of DTNs, and thus theprobability of false detection is low. As W receives moreT-claims generated by R, it can use a longer (e.g., 64-bit)hash remainder for R to keep the probability of falsedetection low. Moreover, such false detection is limited toW only, since W cannot convince other nodes to accept thedetection with compact T-claim.

4.6 Alarm

Suppose in a contact a node receives a claim CCr from aforwarded data packet or from the metadata exchangeprocess (see Section 5.3) and it detects inconsistencybetween CCr and a local claim CCl that the node hascollected. CCr is a full claim as shown in Formula 1 (or 2),but CCl may be stored as a full claim or just a compactstructure shown in Formula 3 (or 5).

If CCl is a full claim, the node can broadcast (viaEpidemic routing [28]) a global alarm to all the other nodesto speed up the attacker detection process. The alarmincludes the two full claims CCl and CCr. When a nodereceives an alarm, it verifies the inconsistency between thetwo included claims and their signatures. If the verificationsucceeds, it adds the attacker into its blacklist and broad-casts the alarm further; otherwise, it discards the alarm.The node also discards the alarm if it has broadcast anotheralarm against the same attacker.

If the detecting node stores CCl as a compact structure, itcannot convince other nodes to trust the detection since thecompact structure does not have the attacker’s signature.Thus it cannot broadcast a global alarm. However, since theattacker may have reused the count value of CCr to otherclaims besides CCl, the detecting node can disseminate a localalarm that only contains CCr to its contacted nodes who havereceived those claims. These contacted nodes can verify theinconsistency between CCr and their collected claims, andalso detect the attacker. If any of these nodes still stores a fullclaim inconsistent with CCr, it can broadcast a global alarmas done in the previous case; otherwise, it disseminates a

local alarm. As this iterative process proceeds, the attackercan be quickly detected by many nodes. Each node onlydisseminates one local alarm for each detected attacker.

A local alarm and a global alarm against the sameattacker may be disseminated in parallel. If a node receivesthe global alarm first and then receives the local alarm, itdiscards the local alarm. If it receives the local alarm first,when it receives the global alarm later, it discards the localalarm and keeps the global alarm.

An attacker may falsify an alarm against a good node.However, since it does not have the node’s private key (asour assumption), it cannot forge the node’s signatures forthe claims included in the alarm. Thus, the alarm will bediscarded by other nodes and this attack fails.

4.7 Efficient T-Claim Authentication

The T-claims of all the packets transmitted in a contactshould be signed by the transmitting node. Since the contactmay end at any unpredictable time, each received T-claimmust be individually authenticated. A naive approach is toprotect each T-claim with a separate public-key signature,but it has high computation cost in signature generationand verification.

Our scheme uses Merkle hash tree [29] to amortize thecomputation cost of public-key-based signature on all theT-claims that the node sends out in a contact. Specifically,after a node generates the T-claims (without signature) forall the packets it want to send, it constructs a hash tree uponthese partial T-claims, and signs the root of the tree with apublic-key-based signature. Then the signature of a T-claimincludes this root signature and a few elements of the tree.Fig. 5 shows the hash tree constructed upon eight T-claimsand the tree elements included in the signature of the firstT-claim. We refer to the original paper [29] for details. Inthis way, for all the T-claims sent by the sender in a contact,only one public-key based signature is generated by thesender and verified by the receiver.

4.8 Dealing with Different Rate Limits

Previously we have assumed that all nodes have the samerate limit L. When nodes have different rate limits, for ourdetection scheme to work properly, each intermediate nodethat receives a packet needs to know the rate limit L of thesource of the packet, such that it can check if the packetcount is in the correct range 1; 2; . . . ; L. To do so, when asource node sends out a packet, it attaches its rate limitcertificate to the packet. The intermediate nodes receivingthis packet can learn the node’s authorized rate limit fromthe attached certificate.

174 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Fig. 5. The Merkle hash tree constructed upon eight T-claimsTC1; . . . ; TC8. In the tree, Hi is the hash of TCi, and an inner node isthe hash of its child nodes. The signature of TC1 includes H2, H34, H58,and SIG.

Page 8: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

4.9 Replica Flood Attacks in Quota-Based RoutingProtocols

Our scheme to detect replica flood attacks can also beadapted to quota-based routing protocols [23], [19], [24].

Quota-based routing works as follows: each node has aquota for each packet that it buffers, and the quotaspecifies the number of replicas into which the currentpacket is allowed to be split. When a source node createsa packet, its quota for the packet is L0 replicas, where L0

is a system parameter. When the source contacts a relaynode, it can split multiple replicas to the relay accordingto the quality of the relay. After the split, the relay’squota for the packet is the number of replicas split to it,and the source node’s quota is reduced by the sameamount. This procedure continues recursively, and eachnode carrying the packet can split out a number ofreplicas less than its current quota for the packet. It canbe seen that each packet can simultaneously have at mostL0 replicas in the network.

In quota-based routing, replica flood attacks (where anattacker sends out more replicas of a packet than its quota)can be detected by our approach as follows.

First, we observe that quota-based routing (with the totalquota determined at the source) can be emulated by single-copy routing if different replicas of the same packet appeardifferent to intermediate nodes and each replica is for-warded in a similar way as single-copy routing. A node cansplit multiple replicas of a packet to another node, but it canonly send each replica out once. For instance, if a node hasforwarded Replica 1 to one relay, it must remove Replica 1from its local buffer, and it cannot forward this replica againto another relay.

To differentiate replicas, the source assigns a uniqueindex to each replica as a header field, and signs the replicato prevent intermediate nodes from modifying the index.The index value should be in range ½1; L0�, and replicaswith invalid index will be discarded. In this way, a node’slocal quota for a packet is represented by the number ofreplicas (with different indices) that it buffers. Note that anintermediate node cannot increase its quota by forgingreplicas since it does not have the source node’s key togenerate a valid signature.

To prevent a node from abusing its quota, we need toensure that the node only forwards each replica once.T-claim can be used to achieve this goal. Particularly, whena node splits multiple replicas of a packet to another node, itgenerates a T-claim for each replica. The inconsistencycheck (see Section 4.5) can be applied here to detect theattackers that transmit the same replica more than once.

5 METADATA EXCHANGE

When two nodes contact they exchange their collectedP-claims and T-claims to detect flood attacks. If all claimsare exchanged, the communication cost will be too high.Thus, our scheme uses sampling techniques to keep thecommunication cost low. To increase the probability ofattack detection, one node also stores a small portion ofclaims exchanged from its contacted node, and exchangesthem to its own future contacts. This is called redirection.

5.1 Sampling

Since P-claims and T-claims are sampled together (i.e., whena P-claim is sampled the T-claim of the same packet is alsosampled), in the following we only consider P-claims.

A node may receive a number of packets (each with aP-claim) in a contact. It randomly samples Z (a systemparameter) of the received P-claims, and exchanges thesampled P-claims to the next K (a system parameter)different nodes it will contact, excluding the sources of theP-claims and the previous hop from which these P-claimsare received.

However, a vulnerability to tailgating attack should beaddressed. In tailgating attack, one or more attackerstailgate a good node to create a large number (say, d) offrequent contacts with this node, and send Z packets (notnecessarily generated by the attackers) to this node in eachcreated contact. If this good node sends the Zd P-claims ofthese contacts to the next K good nodes it contacts, mucheffective bandwidth between these good nodes will bewasted, especially in a large network where K is not small.

To address this attack, the node uses an inter-contactsampling technique to determine which P-claims sampledin historical contacts should be exchanged in the currentcontact. Let SK denote a set of contacts. This set includes theminimum number of most recent contacts between thisnode and at least K other different nodes. Within this set, allthe contacts with the same node are taken as one singlecontact and a total of Z P-claims are sampled out of thesecontacts. This technique is not vulnerable to the tailgatingattack since the number of claims exchanged in each contactis bounded by a constant.

5.2 Redirection

There is a stealthy attack to flood attack detection. Forreplica flood attacks, the condition of detection is that atleast two nodes carrying inconsistent T-claims can contact.However, suppose the attacker knows that two nodes A andB never contact. Then, it can send some packets to A, andinvalidly replicate these packets to B. In this scenario, thisattacker cannot be detected since A and B never contact.Similarly, the stealthy attack is also harmful for somerouting protocols like Spray-and-Wait [19] in which eachpacket is forwarded from the source to a relay and thendirectly delivered from the relay to the destination.

To address the stealthy attack, our idea is to add onelevel of indirection. A node redirects the Z P-claims andT-claims sampled in the current contact to one of the nextK nodes it will contact, and this contacted node willexchange (but not redirect again) these redirected claims inits own subsequent contacts. Look at the example in Fig. 6.Suppose attacker S sends mutually inconsistent packets totwo nodes A and B which will never contact. Suppose Aand B redirect their sampled P-claims to node C and D,respectively. Then so long as C and B or D and A or C andD can contact, the attack has a chance to be detected. Thus,the successful chance of stealthy attack is significantlyreduced.

5.3 The Exchange Process

Each node maintains two separate sets of P-claims (T-claims,respectively in the following) for metadata exchange, a

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 175

Page 9: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

sampled set which includes the P-claims sampled from themost recent contacts with K different nodes (i.e., SK inSection 5.1), and a redirected set which includes the P-claimsredirected from those contacts. Both sets include Z P-claimsobtained in each of those contacts.

When two nodes A and B contact, they first select KZ P-claims from each set with the inter-contact samplingtechnique (see Section 5.1), and then send these P-claimsto each other. When A receives a P-claim, it checks if thisP-claim is inconsistent with any of its collected P-claimsusing the method described in Section 4.5. If the receivedP-claim is inconsistent with a locally collected one and thesignature of the received P-claim is valid, A detects that theissuer (or signer) of the received P-claim is an attacker.

Out of all the P-claims received from B, A randomlyselects Z of the P-claims from the sampled set of B, andstores them to A’s redirected set. All other P-claims receivedfrom B are discarded after inconsistency check.

5.4 Metadata Deletion

A node stores the P-claims and T-claims collected fromreceived data packets for a certain time denoted by � anddeletes them afterward. It deletes the claims redirectedfrom other nodes immediately after it has exchanged themto K different nodes.

6 ANALYSIS

This section presents rigorous analysis over the security andcost of our scheme, and discusses the optimal parameter tomaximize the effectiveness of flood attack detection under acertain amount of exchanged metadata per contact.

6.1 Detection Probability

The following analysis assumes uniform and independentcontacts between nodes, i.e., at any time each node’s next

contacted node can be any other node with the sameprobability. This assumption holds for mobility modelssuch as Random Waypoint (RWP) where the contactsbetween all node pairs can be modeled as i.i.d. Poissonprocesses [30]. When analyzing the detection probability,we assume that each attacker acts alone. The case ofcollusion is analyzed separately in Section 6.4.

6.1.1 The Basic Attack

First we consider a basic attack (see Fig. 7a) in which anattacker S floods two sets of mutually inconsistent packetsto two good nodes A and B, respectively. Each floodedpacket received by A is inconsistent with one of the floodedpackets received by B. In the contacts with A and B, S alsoforwards some normal, not flooded, packets to A and B tomake the attack harder to detect. Let y denote theproportion of flooded packets among those sent by S. Forsimplicity, we assume y is the same in both contacts.Suppose A and B redirect the claims sampled in the contactwith S to C and D, respectively.

To consider the worst case performance, suppose theflooded packets are not forwarded from A and B to othernodes (which is the case in Spray-and-Wait [19]), i.e., only Aand B have the inconsistent claims. Note that the analysisalso applies to the detection of replica flood attacks.

For convenience, we define node A’s (or B’s) detectionwindow as from the time it receives the flooded packets tothe time it exchanges the sampled claims to K nodes, andnode C’s (or D’s) detection window as from the time itreceives the redirected claims to the time it exchanges themto K nodes. The attacker has a chance to be detected if nodepairs hA;Bi, hA;Di, hC;Bi and hC;Di can contact withintheir detection windows. Table 1 shows the variables usedin the analysis.

Lower bound. The lower bound of detection probabilityis obtained in the following scenario (see Fig. 7b): when B

receives the packets from S, both A and C have finishedtheir detection window. Due to the effect of sampling, theattacker can be detected

1. by A if A 2 SB and eB ¼ TRUE;2. by A if D is a good node, A 2 SD and eB ¼ TRUE;3. byC ifC is a good node,C 2 SB and eAB ¼ TRUE; or4. by C if both C and D are good nodes, C 2 SD and

eAB ¼ TRUE.

Since each of A and B exchanges the sampled claims toK nodes other than itself, and C (D) exchanges the

176 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Fig. 6. The idea of redirection which is used to mitigate the stealthy attack.

Fig. 7. (a) The basic attack considered for detection probability analysis. Attacker S floods packets to A and then to B. (b) The scenario when thelower bound detection probability can be obtained : When B receives the flooded packets from S, both A and C have finished their detection window.(c) The scenario when the upper bound detection probability can be obtained: D receives the redirected claims from B not later than the time when Creceives the redirected claims from A, and they are the first node that A and B encounter after the contact with S.

Page 10: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

redirected claims to K nodes other than A (B), according to

the uniform contact assumption, we have

Pd ¼ Ps 1� 1� K

N � 1

� �� 1� r K

N � 2

� ��

� 1� r K

N � 1PsPovp

� �� 1� r2 K

N � 2PsPovp

� ��:

ð7Þ

The expected number of flooded packets that A or B can

sample is yZ. Since Z is typically small while a is not that

small (which we believe realistic), Povp is negligible.

Considering that K � N , Pd is approximated as follows:

Pd � Ps 1� 1� K

N � 1

� �1� r K

N � 2

� �� �� Ps

1þ rN

K:

Since random sampling is used, it is trivial to get

Ps ¼ 1� n� an

n� a� 1

n� 1� � � n� a� Z þ 1

n� Z þ 1

� 1� ð1� a=nÞZ ¼ 1� ð1� yÞZ:

Thus, we have Pd � K 1þrN ð1� ð1� yÞ

ZÞ, and a lower bound

of the detection probability is

Pld ¼ K

1þ rNð1� ð1� yÞZÞ: ð8Þ

Upper bound. The upper bound of detection probability

is obtained in the following scenario (see Fig. 7c): D receives

the redirected claims from B not later than the time C

receives the redirected claims from A, and they are the first

node that A and B encounter after the contact with S.

Besides the four cases that we discussed when deriving the

lower bound, the attacker can also be detected

1. by B if B 2 SA and eA ¼ TRUE;2. by B if C is a good node, B 2 SC and eA ¼ TRUE;3. byD ifD is a good node,D 2 SA and eAB ¼ TRUE; or4. by D if both C and D are good nodes, D 2 SC and

eAB ¼ TRUE.

Similarly as in the lower bound case, we can obtain that

the detection probability is Pd � 2K 1þrN Ps. Since Ps 1, an

upper bound of the detection probability is

Pud ¼

2Kð1þ rÞN

: ð9Þ

6.1.2 Stronger Attacks

We use the number of times that a count value is reused torepresent the strength of an attack. Intuitively, if each countvalue is used many times, the attacker floods a lot of packetsor replicas. Let X denote the number of times a count valueis reused. We want to derive the relation between X and theprobability that the attacker will be detected.

The stronger attacks we consider extends the basic attack

(see Section 6.1.1) as follows: suppose the attacker has sent a

set of packets to a good node G0, and then it successively

sends the same number of packets (reusing the count values

of the packets sent to G0) to X good nodes G1; . . . ; GX. All

other parameters in the basic analysis apply here. From a

global point of view, a total of XðXþ1Þ2 node pairs have

inconsistent packets, and each pair can detect the attacker

independently as analyzed in Section 6.1.1. Then the attacker

will be detected by at least one node pair with a probability

PXd ¼ 1� ð1� PdÞ

XðXþ1Þ2 : ð10Þ

We can see that the stronger the attack is, the more likelythe attacker will be detected.

6.2 Cost Analysis

6.2.1 Communication

The communication cost mainly has two parts. One partis the P-claim and T-claim transmitted with each packet,and the other part is the partial claims transmitted duringmetadata exchange. As to the latter, at most 4ZK P-claimsand 4ZK T-claims are exchanged in each contact, with onehalf for sampled and the other half for redirected claims.

6.2.2 Computation

As to signature generation, a node generates one signaturefor each newly generated packet. It also generates onesignature for all its T-claims as a whole sent in a contact. Asto signature verification, a node verifies the signature ofeach received packet. It also verifies one signature for all theT-claims as a whole received in one contact.

6.2.3 Storage

Most P-claims and T-claims are compacted when thepackets are forwarded. The Z sampled P-claims andT-claims are stored in full until the packets are forwardedor have been exchanged to K nodes, whichever is later,and then compacted. For each received packet, less than20 bytes of compact claims are stored for time duration � .

6.3 Parameter Selection with Fixed Cost ofMetadata Exchange

We study the following question: if we fix the communica-tion cost of metadata exchange (note that little can be donewith the transmission of claims within packets), then howshould we set parameter K and Z to maximize the detectionprobability? Note that the communication cost of metadataexchange is proportional to ZK. As to detection probability,we consider the lower-bound detection probability for thebasic attack which can be written as Pd ¼ cKð1� ð1� yÞZÞ.

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 177

TABLE 1Variables Used in the Analysis

Page 11: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

Lemma 1. If the communication cost of metadata exchange isfixed at ZK ¼ C, then Pd is maximized at K ¼ C and Z ¼ 1.

Proof. Pd can be rewritten as Pd ¼ cC 1�ð1�yÞZZ . The deriva-

tive of Pd over Z is

P 0dðZÞ ¼cC

Z2½ð1� yÞZð1� ln ð1� yÞZÞ � 1�: ð11Þ

Let u ¼ ð1� yÞZ (0 < u 1), then P 0dðZÞ ¼ cCZ2 ðu� u lnu �

1Þ. Let gðuÞ ¼ u� u lnu� 1. Then g0ðuÞ ¼ � lnu � 0,which means gðuÞ monotonically increases. Since gð1Þ ¼0; gðuÞ 0 when 0 < u 1. Therefore, P 0dðZÞ 0, whichmeans Pd monotonically decreases with Z. Thus, tomaximize Pd, Z should be set the minimum value 1. tu

Remarks. In this parameter setting, the lower bound

detection probability can be written as Pd ¼ yK 1þrN .

Suppose the attacker launches attacks independently.

Then it can be detected after NyKð1þrÞ attacks. If the

attacker wants to stay undetected for a longer time, it

should maintain a smaller y, which means the attack

effect is weaker; if it wants to make a big attack impact, it

should maintain a high y, but this means it will be

detected in a shorter time. From another point of view,

since the attacker only uses y proportion its capacity for

flood attack, it is equivalent that the attacker can attack at

full capacity for only NKð1þrÞ contacts. Thus, the attacks

can be effectively mitigated.

6.4 Collusion Analysis

6.4.1 Packet Flood Attack

One attacker may send a packet with a dishonest packetcount to its colluder, which will forward the packet to thenetwork. Certainly, the colluder will not exchange thedishonest P-claim with its contacted nodes. However, solong as the colluder forwards this packet to a good node,this good node has a chance to detect the dishonest claim aswell as the attacker. Thus, the detection probability is notaffected by this type of collusion.

6.4.2 Replica Flood Attack

When attackers collude, they can inject invalid replicas of apacket without being detected, but the number of floodedreplicas is effectively limited in our scheme. More specifi-cally, in our scheme for a unique packet all the M colludersas a whole can flood a total of M � 1 invalid replicaswithout being detected. To the contrast, when there is nodefense, a total of N �M invalid replicas can be injected bythe colluders for each unique packet. Since the number ofcolluders is not very large, our scheme can still effectivelymitigate the replica flood attack. This will be furtherevaluated in Section 7.

7 PERFORMANCE EVALUATIONS

7.1 Experiment Setup

To evaluate the performance and cost of our scheme, werun simulations on a synthetic trace generated by theRandom Waypoint [30] mobility model and on the MITReality trace [17] collected from the real world.

In the synthetic trace, 97 nodes move in a 500 500 squarearea with the RWP model. The moving speed is randomly

selected from ½1; 1:6� to simulate the speed of walking, andthe transmission range of each node is 10 to simulate that ofBluetooth. Each simulation lasts 5 105 time units.

The MIT Reality trace [17] has been shown [31], [32] tohave social community structures. Ninety seven Smartphones are carried by students and staff at MIT over10 months. These phones run Bluetooth device discoveryevery 5 minutes and log about 110 thousand contacts. Eachlogged contact includes the two contact parties, the starttime and duration of the contact.

In the simulations, 20 percent of nodes are deployed asattackers. They are randomly deployed or selectivelydeployed to high-connectivity nodes. The buffer size ofeach node is 5 MB, the Drop Tail policy is used when bufferoverflows. The bandwidth is 2 Mbps. Each node generatespackets of 10 KB with random destinations at a uniformrate. Parameter Z ¼ 1.

7.2 Routing Algorithms and Metrics

We use the following routing protocols in evaluations:

. Forward. A single-copy routing protocol where apacket is forwarded to a relay if the relay has morefrequent contacts with the destination.

. SimBet [8]. A single-copy routing protocol where apacket is forwarded to a relay if the relay has ahigher simbet metric, which is calculated from twosocial measures (similarity and betweenness).

. Spray-and-wait [19]. A multicopy protocol, wherethe source replicates a packet to L0 ¼ 3 relays andeach relay directly delivers its copy to the destina-tion when they contact.

. Spray-and-focus [19]. It is similar to Spray-and-Wait, but each packet copy is individually routed tothe destination with Forward.

. Propagation. A packet is replicated to a relay if therelay has more frequent contacts with the destination.

We use the following performance evaluation metrics:

. Detection rate. The proportion of attackers that aredetected out of all the attackers.

. Detection delay. From the time the first invalidpacket is sent to the time the attacker is detected.

. Computation cost. The average number of signaturegenerations and verifications per contact.

. Communication cost. The number of P-claim/T-claim pairs transmitted into the air, normalizedby the number of packets transmitted.

. Storage cost. The time-averaged kilobytes stored forP-claims and T-claims per node.

7.3 Analysis Verification

We use the synthetic trace to verify our analysis resultsgiven in Section 6, since in this trace the contacts betweennode pairs are i.i.d. [30] which conforms to our assumptionfor the analysis. We divide the trace into 10 segments, eachwith 5 104 time units, and run simulations on each of thethird-seventh segments three times with different randomseeds. Each data point is averaged over the individual runs.Spray-and-Wait is used as the routing protocol to considerthe worst case of packet flood detection (see Section 6.1.1).

178 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Page 12: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

Here we only verify the detection probability for the basicattack, since the detection probability for the strong attackcan be derived from it in a straightforward way. In thisgroup of simulations, each attacker launches the basicattack once. It sends out two sets of packets to two goodnodes with 10 packets in each set (i.e., n ¼ 10), and thesetwo sets contain mutually inconsistent packets. We first fixparameter y ¼ 1:0 (see Table 1) but change parameter K

from 0 to 10, and then we fix parameter K ¼ 10 but changey from 0 to 1.0. The results are shown in Figs. 8a and 8b,respectively. It can be seen that the simulation results arebetween the analytical lower bound and upper bound,which verifies the correctness of our analysis.

7.4 Detection Rate

The Reality trace is used. We divide the trace into segments ofone month, and run simulations on each of the third-seventhsegments three times with different random seeds. Each datapoint is averaged over the individual runs. By default, eachattacker launches the basic attack once, and it floods onepacket out (i.e., n ¼ 1, y ¼ 1:0). By default, attackers areselectively deployed to high-connectivity nodes.

Fig. 9a shows the effect of parameter K in differentrouting protocols. Generally speaking, when K increases,the detection rate also increases because the inconsistentpackets are exchanged to more nodes and have morechances to be detected. When K ¼ 0, no attacker is detectedin Spray-and-Wait, since no metadata is exchanged fordetection. However, attackers can still be detected in theother three algorithms, because the inconsistent packets areforwarded to multiple nodes and the node that receives twoinconsistent packets can detect the attacker. Among theseprotocols, Propagation achieves the highest detection ratesince it replicates inconsistent packets the most number of

times. Between the two single-copy routing protocols,SimBet has a higher detection rate than Forward. This isbecause SimBet tends to forward packets to the moresocially connected nodes and thus these nodes are morelikely to collect inconsistent packets.

Fig. 9b shows the results when each attacker launches thebasic attack independently for a varying number of times.As the attackers launch more attacks, the detection ratequickly increases for obvious reasons.

Fig. 9c shows the effect of the number of packets that anattacker floods in each contact (i.e., parameter n). Asan attacker floods more packets in each contact, thedetection rate decreases in Spray-and-Wait and SimBet,increases in Forward and does not change much in Spray-and-focus and Propagation. The opposite trends are due totwo factors that affect the detection rate reversely. On theone hand, sampling decreases detection rate. To explain thismore clearly, let us look at the basic attack scenario inFig. 7a for Spray-and-Wait. Since Z ¼ 1, A (B, respectively)only samples one packet out of all the packets received fromthe attacker and redirects it to C (D, respectively). Whenn ¼ 1, C and D will receive mutually inconsistent claims,which means in (7) Povp ¼ 1:0. However, when n is largerthan 1, C and D may not receive a pair of inconsistentclaims due to the independent sampling by A and B. Asn increases, Povp decreases and thus the detection rate alsodecreases. On the other hand, for the routing protocolswhere each packet is forwarded in multiple hops, when anattacker sends more attack packets in each contact, it ismore likely that one pair of inconsistent packets areforwarded to the same intermediate node and lead todetection.

Fig. 9d shows the effect of attacker deployment. Thedetection rate is lower when attackers are selectivelydeployed to high-connectivity nodes. This is because whenattackers are selectively deployed they have more contactswith good nodes. The probability that a good nodeexchanges its sampled claims to attackers rather than toother good nodes is higher, but attackers do not rundetection against each other.

7.5 Detection Delay

Fig. 10 shows the CDF of detection delay when Propagationis used as the routing protocol on the Reality trace. Forcomparison, the CDF of routing delay (i.e., from the time apacket is generated to the time it is delivered) is alsoplotted. Here, no lifetime is set for packets. It can be seenthat 90 percent of the attacks can be detected by our scheme

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 179

Fig. 8. Verification of analysis results on the synthetic trace. Spray-and-Wait is used as the routing protocol. Each attacker launches the basicattack once.

Fig. 9. The detection rate under different conditions. In (d), Forward is used as the routing protocol.

Page 13: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

within 10 days. On the contrary, within 10 days only60 percent of data packets can be delivered by the routingprotocol. Hence, the detection delay of our scheme is muchlower than the routing delay.

7.6 Undetected Flooded Replicas under Collusion

As mentioned in Section 6.4.2, colluders can flood a smallnumber of replicas without being detected. To evaluatetheir effect, we run simulations on the Reality trace when allattackers collude. The simulation settings are the same as inSection 2.2. We compare our scheme with the case of nodefense. As shown in Fig. 11, even when 20 percent ofnodes are attackers and collude, our scheme can still limitthe percentage of wasted transmissions to 14 percent insingle-copy routing (SimBet) and 6 percent in multicopyrouting (Spray-and-Focus), which is only 1/7-1/5 of thewasted transmissions when there is no defense.

7.7 Cost

To evaluate the cost of our scheme in a steady state (i.e., allattackers have been detected), no attackers are deployed inthis group of simulations. The Reality trace is used. Packetsare generated between the 61st and 120th day of the trace,and statistics are collected from the 91th day. By default, eachnode generates two packets per day, parameter � (i.e., thetime a claim is stored) is 30 days and K is 10. In a contact, anode may receive some packets but then immediately dropthem due to buffer overflow. In such cases, the transmissionof the claims attached to these packets is counted into thecommunication overhead, and the signature generations forthese claims are counted into the computation overhead.Since the receiver does not buffer these packets, it does notstore these claims or verify their signatures.

We first evaluate the computation cost of our scheme,and Fig. 12 shows the results. When Forward is used as the

routing protocol (see Fig. 12a), as the packet generation rateincreases, the computation cost also increases since morepackets need to be signed and verified. But the cost is stilllow, less than 20 signature generations and verifications,when each node generates 10 packets per day. Also, it canbe seen that there are less signature generations thanverifications. This is because in each contact our schemeonly signs P-claims for the newly generated packets (whichconstitute a very small portion of the packets transmitted),and it generates only one signature in total for the T-claimsof all forwarded packets due to the use of authenticationtree. When Propagation is used as the routing protocol (seeFig. 12b), similar trends hold. When the packet generationrates crosses 1, the signature verification cost turns todecrease. This is because when the traffic load is high manyreceived packets are dropped due to buffer overflow.

Then we evaluate the communication cost. The commu-nication overhead mainly comes from two sources, thetransmission of claims attached to data packets, and thetransmission of claims in metadata exchange. The totalcommunication cost and the two components are shown inFig. 13. When K increases from 2 to 10 (see Fig. 13a), thecommunication cost caused by meta data exchange in-creases linearly since each sampled claim is transmittedmore times. The communication cost caused by thetransmission of claims attached to packets is always 1 dueto the normalization. In total, less than two pairs ofP-claim/T-claim are transmitted per transmission of datapacket. When the packet generation rate increases (seeFig. 13b), the total normalized communication cost de-creases, because more data packets are transmitted in eachcontact but the number of claims transmitted for metadataexchange in each contact does not change with the trafficload. When the packet generation rate is larger than 1, thecommunication cost is smaller than 3. When the packet

180 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013

Fig. 10. The detection delay compared with the routing delay ofPropagation.

Fig. 11. The effect of undetected replicas on wasted transmissions whenattackers collude to launch replica flood attacks.

Fig. 12. The computation cost of our scheme.

Fig. 13. The communication cost of our scheme.

Page 14: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

generation rate is 0.5, the communication cost is higher(i.e., 10). However, at this point the number of packettransmissions is very small, and hence the communicationoverhead is not an issue. Moreover, since the claims aresmall in size, they can be attached to and transmitted withdata packets and will not incur extra transmissions. Thus,the communication overhead is low.

Finally, we evaluate the storage cost of our schemeagainst two factors, the time a claim is stored (parameter �)and the packet generation rate. The results are shown inTable 2. We can see that the storage space used for claims islow, only less than 150 kilobytes per node. This is due to thecompact structures we use to store P-claims and T-claims.We noticed that the storage cost does not increase after thepacket generation rate reaches two packets per node perday, because when the traffic load is high many receivedpackets are dropped due to buffer overflow.

8 RELATED WORK

Our scheme bears some similarity with previous ap-proaches (e.g., [33]) that detect node clone attacks in sensornetworks. Both rely on the identification of some kindof inconsistency to detect the attacker. However, theirapproaches assumes consistent connectivity between nodeswhich is unavailable in DTNs. Also, they do not handle thelong delays of detection.

A few recent works [10], [25], [12], [11], [13] also addresssecurity issues in DTNs. Li et al. [10] studied the blackholeattack in which malicious nodes forge routing metrics toattract packets and drop all received packets. Theirapproach uses a primitive called encounter ticket to provethe existence of contacts and prevent the forgery of routingmetrics, but encounter ticket cannot be used to addressflood attacks. Li and Cao [13] also proposed a distributedscheme to mitigate packet drop attacks, which works nomatter if the attackers forge routing metrics or not. Ren et al.[11] studied wormhole attacks in DTNs. Chen and Choon[25] proposed a credit-based approach and Shevade et al.proposed a gaming-based approach [12] to provide in-centives for packet forwarding. Privacy issues have also beaddressed [38], [39],. However, these work do not addressflood attacks. Other works (e.g., Sprite [34]) deter abuse bycorrelating the amount of network resources that a node canuse with the node’s contributions to the network in terms offorwarding. This approach has been proposed for mobile adhoc networks, but it is still not clear how the approach canbe applied to DTNs, where nodes are disconnected most ofthe time. Another recent work [14] proposed a batchauthentication protocol for DTNs, which verifies multiplepacket signatures in an aggregated way to save thecomputation cost. This work is complementary to ours,

and their protocol can also be used in our scheme to furtherreduce the computation cost of authentication.

Parallel to our work, Natarajan et al. [35] also proposed ascheme to detect resource misuse in DTNs. In their scheme,the gateway of a DTN monitors the activities of nodes anddetects an attack if there is deviation from expected behavior.Different from their work that requires a special gateway forcounting, our scheme works in a totally distributed mannerand requires no special nodes.

9 CONCLUSIONS

In this paper, we employed rate limiting to mitigate floodattacks in DTNs, and proposed a scheme which exploitsclaim-carry-and-check to probabilistically detect the violationof rate limit in DTN environments. Our scheme usesefficient constructions to keep the computation, commu-nication and storage cost low. Also, we analyzed the lowerbound and upper bound of detection probability. Extensivetrace-driven simulations showed that our scheme is effectiveto detect flood attacks and it achieves such effectiveness inan efficient way. Our scheme works in a distributed manner,not relying on any online central authority or infrastructure,which well fits the environment of DTNs. Besides, it cantolerate a small number of attackers to collude.

ACKNOWLEDGMENTS

This work was supported in part by Army Research Officeunder MURI grant W911NF-07-1-0318.

REFERENCES

[1] K. Fall, “A Delay-Tolerant Network Architecture for ChallengedInternets,” Proc. ACM SIGCOMM, pp. 27-34, 2003.

[2] P. Hui, A. Chaintreau, J. Scott, R. Gass, J. Crowcroft, and C. Diot,“Pocket Switched Networks and Human Mobility in ConferenceEnvironments,” Proc. ACM SIGCOMM, 2005.

[3] M. Motani, V. Srinivasan, and P. Nuggehalli, “PeopleNet:Engineering a Wireless Virtual Social Network,” Proc. MobiCom,pp. 243-257, 2005.

[4] J. Burgess, B. Gallagher, D. Jensen, and B. Levine, “Maxprop:Routing for Vehicle-Based Disruption-Tolerant Networks,” Proc.IEEE INFOCOM, 2006.

[5] S.J.T.U.Grid Computing Center, “Shanghai Taxi Trace Data,”http://wirelesslab.sjtu.edu.cn/, 2012.

[6] J. Mirkovic, S. Dietrich, D. Dittrich, and P. Reiher, Internet Denial ofService: Attack and Defense Mechanisms. Prentice Hall, 2005.

[7] C. Karlof and D. Wagner, “Secure Routing in Wireless SensorNetworks: Attacks and Countermeasures,” Proc. IEEE First Int’lWorkshop Sensor Network Protocols and Applications, 2003.

[8] E. Daly and M. Haahr, “Social Network Analysis for Routing inDisconnected Delay-Tolerant MANETs,” Proc. MobiHoc, pp. 32-40,2007.

[9] W. Gao, Q. Li, B. Zhao, and G. Cao, “Multicasting in DelayTolerant Networks: A Social Network Perspective,” Proc. ACMMobiHoc, 2009.

[10] F. Li, A. Srinivasan, and J. Wu, “Thwarting Blackhole Attacks inDistruption-Tolerant Networks Using Encounter Tickets,” Proc.IEEE INFOCOM, 2009.

[11] Y. Ren, M.C. Chuah, J. Yang, and Y. Chen, “Detecting WormholeAttacks in Delay Tolerant Networks,” IEEE Wireless Comm.Magazine, vol. 17, no. 5, pp. 36-42, Oct. 2010.

[12] U. Shevade, H. Song, L. Qiu, and Y. Zhang, “Incentive-AwareRouting in DTNS,” Proc. IEEE Int’l Conf. Network Protocols(ICNP ’08), 2008.

[13] Q. Li and G. Cao, “Mitigating Routing Misbehavior in DisruptionTolerant Networks,” IEEE Trans. Information Forensics and Security,vol. 7, no. 2, pp. 664-675, Apr. 2012.

LI ET AL.: TO LIE OR TO COMPLY: DEFENDING AGAINST FLOOD ATTACKS IN DISRUPTION TOLERANT NETWORKS 181

TABLE 2The Storage (KB) Used for Claims and Data Packets

Page 15: 168 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE …

[14] H. Zhu, X. Lin, R. Lu, X.S. Shen, D. Xing, and Z. Cao, “AnOpportunistic Batch Bundle Authentication Scheme for EnergyConstrained DTNS,” Proc. IEEE INFOCOM, 2010.

[15] B. Raghavan, K. Vishwanath, S. Ramabhadran, K. Yocum, and A.Snoeren, “Cloud Control with Distributed Rate Limiting,” Proc.ACM SIGCOMM, 2007.

[16] F-SECURE, “F-Secure Malware Information Pages: Smsworm:-Symbos/Feak,” http://www.f-secure.com/v-descs/smswormsymbos feak.shtml, 2012.

[17] N. Eagle and A. Pentland, “Reality Mining: Sensing ComplexSocial Systems,” Personal and Ubiquitous Computing, vol. 10, no. 4,pp. 255-268, 2006.

[18] Q. Li, S. Zhu, and G. Cao, “Routing in Socially Selfish DelayTolerant Networks,” Proc. IEEE INFOCOM, 2010.

[19] T. Spyropoulos, K. Psounis, and C.S. Raghavendra, “EfficientRouting in Intermittently Connected Mobile Networks: TheMultiple-Copy Case,” IEEE/ACM Trans. Networking, vol. 16,no. 1, pp. 77-90, Feb. 2008.

[20] A. Lindgren, A. Doria, and O. Schelen, “Probabilistic Routing inIntermittently Connected Networks,” ACM SIGMOBILE MobileComputing and Comm. Rev., vol. 7, no. 3, pp. 19-20, 2003.

[21] W. Gao and G. Cao, “On Exploiting Transient Contact Patterns forData Forwarding in Delay Tolerant Networks,” Proc. IEEE 18thInt’l Conf. Networks Protocols (ICNP), 2010.

[22] J. Burgess, G.D. Bissias, M. Corner, and B.N. Levine, “SurvivingAttacks on Disruption-Tolerant Networks without Authentica-tion,” Proc. ACM MobiHoc, 2007.

[23] S.C. Nelson, M. Bakht, and R. Kravets, “Encounter-Based Routingin Dtns,” Proc. IEEE INFOCOM, pp. 846-854, 2009.

[24] T. Spyropoulos, K. Psounis, and C. Raghavendra, “Spray andWait: An Efficient Routing Scheme for Intermittently ConnectedMobile Networks,” Proc. ACM SIGCOMM, pp. 252-259, 2005.

[25] B. Chen and C. Choon, “Mobicent: A Credit-Based IncentiveSystem for Disruption Tolerant Network,” Proc. IEEE INFOCOM,2010.

[26] C. Gentry and A. Silverberg, “Hierarchical Id-Based Cryptogra-phy,” Proc. Int’l Conf. Theory and Application of Cryptography andInformation Security EUROCRYPT, 2002.

[27] A. Seth, D. Kroeker, M. Zaharia, S. Guo, and S. Keshav, “LowcostCommunication for Rural Internet Kiosks Using MechanicalBackhaul,” Proc. ACM Mobicom, 2006.

[28] A. Vahdat and D. Becker, “Epidemic Routing for PartiallyConnected Ad Hoc Networks,” Technical Report CS-200006, DukeUniv., 2000.

[29] R. Merkle, “Protocols for Public Key Cryptosystems,” Proc. IEEESymp. Security and Privacy, 1980.

[30] R. Groenevelt, “Stochastic Models in Mobile Ad Hoc Networks,”technical report, Univ. of Nice, Sophia Antipolis, INRIA, 2006.

[31] A. Chaintreau, A. Mtibaa, L. Massoulie, and C. Diot, “TheDiameter of Opportunistic Mobile Networks,” Proc. ACMCoNEXT Conf., 2007.

[32] P. Hui, J. Crowcroft, and E. Yoneki, “Bubble RAP: Social-BasedForwarding in Delay Tolerant Networks,” Proc. MobiHoc, pp. 241-250, 2008.

[33] B. Parno, A. Perrig, and V. Gligor, “Distributed Detection of NodeReplication Attacks in Sensor Networks,” Proc. IEEE Symp.Security and Privacy, 2005.

[34] S. Zhong, J. Chen, and Y.R. Yang, “Sprite: A Simple, Cheat-Proof,Credit-Based System for Mobile Ad-Hoc Networks,” Proc. IEEEINFOCOM, vol. 3, pp. 1987-1997, 2003.

[35] V. Natarajan, Y. Yang, and S. Zhu, “Resource-Misuse AttackDetection in Delay-Tolerant Networks,” Proc. Int’l PerformanceComputing and Comm. Conf. (IPCCC), 2011.

[36] Q. Li, W. Gao, S. Zhu, and G. Cao, “A Routing Protocol forSocially Selfish Delay Tolerant Networks,” Ad Hoc Networks,vol. 10, no. 8, November 2012.

[37] W. Gao, G. Cao, M. Srivatsa, and A. Iyengar, “DistributedMaintenance of Cache Freshness in Opportunistic Mobile Net-works,” IEEE ICDCS, 2012.

[38] Z. Zhu and G. Cao, “Applaus: A Privacy-Preserving LocationProof Updating System for Location-Based Services,” IEEEINFOCOM, 2011.

[39] Q. Li and G. Cao, “Efficient and Privacy-Preserving DataAggregation in Mobile Sensing,” Proc. IEEE Int’l Conf. NetworkProtocols (ICNP ’08), 2012.

Qinghua Li received the BE degree from XianJiaotong University, China, and the MS degreefrom Tsinghua University, China, in 2004 and2007, respectively. He is currently a PhDcandidate in the Department of ComputerScience and Engineering at the PennsylvaniaState University. His research interests includewireless networks and network security. He is astudent member of the IEEE.

Wei Gao received the BE degree in ElectricalEngineering from University of Science andTechnology of China in 2005, and the PhDdegree in computer science from the Pennsyl-vania State University in 2012. He is currently anassistant professor in the Department of Elec-trical Engineering and Computer Science at theUniversity of Tennessee, Knoxville. His researchinterests include wireless and mobile networksystems, mobile social networks, cyber-physical

systems, pervasive and mobile computing. He is a member of the IEEE.

Sencun Zhu received the BS degree in preci-sion instruments from Tsinghua University,Beijing, China, in 1996 and the MS degree insignal processing from the University of Scienceand Technology of China, Graduate School atBeijing, in 1999, and the PhD degree ininformation technology from George MasonUniversity in 2004. His research interests in-clude network and systems security and soft-ware security. Currently he is working on issues

related to ad hoc and sensor network security, cellphone security, andsecurity and privacy in online social networks. His research is funded byNSF and ARL. He is a member of the Networking and SecurityResearch Center and is also affiliated with the Cyber Security Lab.

Guohong Cao received the BS degree incomputer science from Xian Jiaotong Universityand received the PhD degree in computerscience from the Ohio State University in 1999.Since then, he has been with the Department ofComputer Science and Engineering at thePennsylvania State University, where he iscurrently a professor. He has published morethan 150 papers in the areas of wirelessnetworks, wireless security, vehicular networks,

wireless sensor networks, cache management, and distributed faulttolerant computing. He has served on the editorial board of IEEETransactions on Mobile Computing, IEEE Transactions on WirelessCommunications, IEEE Transactions on Vehicular Technology, and hasserved on the organizing and technical program committees of manyconferences, including the TPC Chair/Cochair of IEEE SRDS 2009,MASS 2010, and INFOCOM 2013. He was a recipient of the NSFCAREER award in 2001. He is a Fellow of the IEEE.

. For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

182 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 10, NO. 3, MAY/JUNE 2013