<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s100402770</article-id>
<article-id pub-id-type="publisher-id">sensors-10-02770</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Acquiring Authentic Data in Unattended Wireless Sensor Networks</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Yu</surname><given-names>Chia-Mu</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02770"><sup>1</sup></xref><xref ref-type="aff" rid="af2-sensors-10-02770"><sup>2</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Chen</surname><given-names>Chi-Yuan</given-names></name><xref ref-type="aff" rid="af3-sensors-10-02770"><sup>3</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Lu</surname><given-names>Chun-Shien</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02770"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-10-02770">★</xref></contrib>
<contrib contrib-type="author">
<name><surname>Kuo</surname><given-names>Sy-Yen</given-names></name><xref ref-type="aff" rid="af2-sensors-10-02770"><sup>2</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Chao</surname><given-names>Han-Chieh</given-names></name><xref ref-type="aff" rid="af3-sensors-10-02770"><sup>3</sup></xref><xref ref-type="aff" rid="af4-sensors-10-02770"><sup>4</sup></xref></contrib></contrib-group>
<aff id="af1-sensors-10-02770">
<label>1</label> Institute of Information Science, Academia Sinica, Taipei, Taiwan; E-Mail: <email>r91045@csie.ntu.edu.tw</email> (C.-M.Y.); <email>lcs@iis.sinica.edu.tw</email> (C.-S.L.)</aff>
<aff id="af2-sensors-10-02770">
<label>2</label> Department of Electrical Engineering, National Taiwan University, Taipei, Taiwan; E-Mail: <email>sykuo@cc.ee.ntu.edu.tw</email></aff>
<aff id="af3-sensors-10-02770">
<label>3</label> Department of Electrical Engineering, National Dong Hwa University, Hualian, Taiwan; E-Mail: <email>chiyuan.chen@gmail.com</email> (C.-Y.C.)</aff>
<aff id="af4-sensors-10-02770">
<label>4</label> Department of Electronic Engineering and Institute of Computer Science &amp; Information Engineering, National Ilan University, I-Lan, Taiwan; E-Mail: <email>hcc@niu.edu.tw</email> (H.-C.C.)</aff>
<author-notes>
<corresp id="c1-sensors-10-02770">
<label>★</label> Author to whom correspondence should be addressed; E-Mail: <email>lcs@iis.sinica.edu.tw</email>; Tel.: +886-2-2788-3799#1513; Fax: +886-2-2782-4814.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2010</year></pub-date>
<pub-date pub-type="epub">
<day>26</day>
<month>3</month>
<year>2010</year></pub-date>
<volume>10</volume>
<issue>4</issue>
<fpage>2770</fpage>
<lpage>2792</lpage>
<history>
<date date-type="received">
<day>10</day>
<month>2</month>
<year>2010</year></date>
<date date-type="rev-recd">
<day>25</day>
<month>2</month>
<year>2010</year></date>
<date date-type="accepted">
<day>16</day>
<month>3</month>
<year>2010</year></date></history>
<permissions>
<copyright-statement>© 2010 by the authors; licensee Molecular Diversity Preservation International, Basel, Switzerland.</copyright-statement>
<copyright-year>2010</copyright-year>
<license>
<p>This article is an open-access article distributed under the terms and conditions of the Creative Commons Attribution license (<ext-link xlink:href="http://creativecommons.org/licenses/by/3.0/" ext-link-type="uri">http://creativecommons.org/licenses/by/3.0/</ext-link>).</p></license></permissions>
<abstract>
<p>An Unattended Wireless Sensor Network (UWSN) can be used in many applications to collect valuable data. Nevertheless, due to the unattended nature, the sensors could be compromised and the sensor readings would be maliciously altered so that the sink accepts the falsified sensor readings. Unfortunately, few attentions have been given to this authentication problem. Moreover, existing methods suffer from different kinds of DoS attacks such as Path-Based DoS (PDoS) and False Endorsement-based DoS (FEDoS) attacks. In this paper, a scheme, called AAD, is proposed to Acquire Authentic Data in UWSNs. We exploit the collaboration among sensors to address the authentication problem. With the proper design of the collaboration mechanism, AAD has superior resilience against sensor compromises, PDoS attack, and FEDoS attack. In addition, compared with prior works, AAD also has relatively low energy consumption. In particular, according to our simulation, in a network with 1,000 sensors, the energy consumed by AAD is lower than 30% of that consumed by the existing method, ExCo. The analysis and simulation are also conducted to demonstrate the superiority of the proposed AAD scheme over the existing methods.</p></abstract>
<kwd-group>
<kwd>unattended wireless sensor network</kwd>
<kwd>UWSN</kwd>
<kwd>authentication</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>The use of wireless sensor networks (WSNs) on data gathering applications has been popularized in recent years. Since WSNs could be deployed in the hostile environments, one of the fundamental issues is how to secure the collected data. Unfortunately, with the consideration of the sensors’ scarce resources, the security issue becomes very challenging because conventional computationally-intensive cryptographic primitives cannot be utilized.</p>
<p>WSNs considered in the literature are usually assumed to have a constant connection between sensors and a trusted data collection unit, e.g., the sink. From the security point of view, in such a scenario, sensors can collect and then report the sensitive data to the sink at will. With the cryptographic primitives such as encryption and authentication, the confidentiality and authenticity of the transmitted sensed data can be guaranteed. More importantly, this avoid storing a large amount of data in sensors that are easily to be compromised. Even more, with the aid of the always-present sink, the network can defend against the attacks such as sensor compromises more efficiently and effectively. Nevertheless, due to the application restrictions, the above scenario is not always the case. In real world applications, there could be the cases where after the sensor deployment, the sensed data should be temporarily stored in the sensors because the sink is away from the network in most of the sensor network lifetime. Only at the end of each <italic>collection interval</italic>, will the itinerant sink roams around the sensing region and collects the data sensed by sensors. In contrast to the usual sensor networks, to emphasize the unattended WSN feature, this type of WSN consisting of sensors and an itinerant sink that periodically collects sensed data is termed as <italic>unattended wireless sensor networks</italic> (UWSNs). In fact, UWSNs have been used in practical WSN applications [<xref ref-type="bibr" rid="b1-sensors-10-02770">1</xref>,<xref ref-type="bibr" rid="b2-sensors-10-02770">2</xref>]. In particular, the unattended sensor networks in [<xref ref-type="bibr" rid="b1-sensors-10-02770">1</xref>] operate in an unmanned manner. For example, the nuclear emission sensor network could be deployed to monitor potential nuclear activity. In addition, another example is to deploy unattended sensors to detect underground sound and vibration, in order to be aware of troop movements, border crossings, and enemy’s aircrafts as soon as possible. Trident systems [<xref ref-type="bibr" rid="b2-sensors-10-02770">2</xref>] deploy the unattended ground sensors for providing reliable communication links. It is often used for transmitting timely message back to command and control centers. These sensors can be used in battlefield applications including perimeter defense, border patrol and surveillance, target acquisition, and situation awareness. The conceptional illustration is shown in <xref ref-type="fig" rid="f1-sensors-10-02770">Figure 1</xref>.</p>
<p>Due to its inability to offload the sensed data in a real-time manner, sensors should keep the data sensed in the local memory within the collection interval between successive sink visits, incentivizing various attacks. The adversary may have different goals; it may be interested in learning the data sensed by a specific set of sensors, or want to prevent certain data from reaching the data sink. In this paper, we consider the adversary whose goal is to alter the sensors’ data so that the falsified data can mislead the sink. In spite of the paramount importance of this authentication problem, only few solutions [<xref ref-type="bibr" rid="b3-sensors-10-02770">3</xref>,<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] are proposed. Specifically, in [<xref ref-type="bibr" rid="b3-sensors-10-02770">3</xref>], a novel authentication function was proposed to deal with the authentication problem in a storage-efficient manner. Nevertheless, it is effective only against the <italic>reactive adversary</italic> (described in Section 3.2) that is relatively weak and is easily to be overcame. In [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>], two collaborative authentication schemes, CoMAC and ExCo, were proposed to defend against the stronger adversary, <italic>proactive adversary</italic> (described in Section 3.2).</p>
<p>Unfortunately, the simple collaboration among the sensors in CoMAC and ExCo incurs more attacks such as Path-Based DoS (PDoS) [<xref ref-type="bibr" rid="b5-sensors-10-02770">5</xref>] and False-Endorsement DoS (FEDoS) [<xref ref-type="bibr" rid="b6-sensors-10-02770">6</xref>] attacks (described in Section 4.1). In addition, the resilience of ExCo against sensor compromises is not as strong as [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] claims (described in Section 4.1). Furthermore, due to the lack of the proper use of sensors’ position information, CoMAC and ExCo have relatively high energy consumption especially in a large scale network. The above reasons motivate us to develop a secure and efficient collaborative authentication scheme in UWSNs.</p>
<sec>
<label>1.1.</label>
<title>Contribution</title>
<p>We identify the security flaws of the schemes in [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>]. Aiming at solving the identified problems, a scheme, called AAD, is proposed to Acquire Authentic Data in UWSNs. AAD possesses three characteristics. (1) Due to the proper use of sensors’ position information, it is communication-efficient. (2) In addition to acquiring authentic data, AAD is also resilient against both Path-Based DoS (PDoS) [<xref ref-type="bibr" rid="b5-sensors-10-02770">5</xref>] and False-Endorsement DoS (FEDoS) [<xref ref-type="bibr" rid="b6-sensors-10-02770">6</xref>] attacks. (3) The resilience of AAD against sensor compromises is superior to that in prior works [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>]. From analytical and simulation results, the robustness of AAD is demonstrated to be superior to those of CoMAC and ExCo.</p></sec></sec>
<sec>
<label>2.</label>
<title>Related Work</title>
<p>Due to the use of Bloom filter in our proposed AAD scheme, its brief introduction is given in Section 2.1 Then, some related works performed on UWSNs are briefly described in Section 2.2</p>
<sec>
<label>2.1.</label>
<title>Bloom Filter</title>
<p>As a kind of probabilistic data structure, a Bloom filter consists of an array of <italic>n</italic> bits. Together with <italic>k</italic> independently and randomly selected hash functions, <italic>h</italic><sub>1</sub>, ⋯, <italic>h<sub>k</sub></italic>, with range [0, <italic>n</italic> − 1], it is used to represent a set of elements with the support of membership query. Assume that a Bloom filter <italic>B</italic> is used to represent a set <italic>S</italic> = {<italic>s</italic><sub>1</sub>, . . ., <italic>s<sub>m</sub></italic>} of <italic>m</italic> elements. To insert an element <italic>s<sub>i</sub></italic>, the bits <italic>B</italic>[<italic>h<sub>j</sub></italic>(<italic>s<sub>i</sub></italic>)] for 1 ≤ <italic>j</italic> ≤ <italic>k</italic> are set to 1. Note that the bit remains unchanged when being already set to 1. To check whether an element <italic>x</italic> is in the set <italic>S</italic>, we can check whether the bits <italic>B</italic>[<italic>h<sub>j</sub></italic>(<italic>x</italic>)] for 1 ≤ <italic>j</italic> ≤ <italic>k</italic> are all 1’s. If and only if they are all equal to 1, <italic>x</italic> is deemed to be an element of <italic>S</italic>. The size <italic>n</italic> of Bloom filter is independent of the size of elements and can be constant, which is very memory-efficient. Nevertheless, the membership query on Bloom filter has false positive but has no false negative. In other words, it is probable to falsely consider an element that actually does not belong to <italic>S</italic> as an element of <italic>S</italic>. In [<xref ref-type="bibr" rid="b7-sensors-10-02770">7</xref>], such false positive probability can be obtained as 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">km</mml:mi></mml:mrow></mml:msup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>k</mml:mi></mml:msup>
<mml:mo>≈</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">km</mml:mi></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow></mml:msup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>k</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. The optimization between the performance efficiency e.g., array length or hash functions required) of Bloom filter and the false positive probability can be obtained but is beyond the scope of this paper. Note that one of the characteristics of Bloom filter we use in the design of our proposed scheme is that the query result is always correct if the content to be queried is indeed stored in the Bloom filter.</p></sec>
<sec>
<label>2.2.</label>
<title>Security Issues in UWSNs</title>
<p>Although UWSNs are studied only recently, many security issues have been investigated. The data survival issue, which aims to prevent the sensed data from being arbitrarily erased by the adversary, is first studied in [<xref ref-type="bibr" rid="b1-sensors-10-02770">1</xref>,<xref ref-type="bibr" rid="b8-sensors-10-02770">8</xref>]. Due to the fact that the adversary may compromise some sensors in order to enhance its capability of subverting the network functionality, the self-healing techniques are proposed in [<xref ref-type="bibr" rid="b9-sensors-10-02770">9</xref>,<xref ref-type="bibr" rid="b10-sensors-10-02770">10</xref>] to recover the compromised sensors. We refer the readers to [<xref ref-type="bibr" rid="b11-sensors-10-02770">11</xref>] for a comprehensive overview of security issues in UWSNs.</p>
<p>As for the authentication problem in UWSNs, few research efforts are conducted. Since the data sensed within the collection interval should be stored in the sensor for a possibly considerable period of time, in order to provide forward-security (described in Section 3.2), some authentication schemes [<xref ref-type="bibr" rid="b3-sensors-10-02770">3</xref>,<xref ref-type="bibr" rid="b12-sensors-10-02770">12</xref>] were proposed. Moreover, in [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>], two authentication schemes, CoMAC and ExCo, both of which rely on the collaboration among multiple sensors, are presented for collecting authentic sensed data. To our knowledge, CoMAC and ExCo are the only schemes having both forward and backward security (described in Section 3.2). Particularly, in CoMAC, each sensor <italic>j</italic>, after obtaining its sensed data 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> at round <italic>r</italic>, constructs the corresponding authentication tag 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. Then, it immediately sends 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo>〈</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo>〉</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> to a set of randomly selected sensors. To verify the authenticity of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, the sink collects all the corresponding authentication tags and checks whether the collected authentication tags can be generated by using the claimed 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. ExCo is different from CoMAC in that the former stores the hash of all the received authentication tags for each sensor while the latter directly keeps the received authentication tags for each sensor.</p>
<p>Indeed, when CoMAC or ExCo is used, forward-security and backward-security can be achieved, enabling the sink to acquire the authentic data from sensors. Unfortunately, the naïve collaboration among sensors used in CoMAC and ExCo incurs many more security problems. For example, the adversary may arbitrarily inject a large number of bogus messages into the network, pretending that it is proceeding with the collaborative authentication procedure albeit the false data will not be accepted by the sink eventually. Such kind of Path-Based DoS (PDoS) attack [<xref ref-type="bibr" rid="b5-sensors-10-02770">5</xref>] would deplete the energy of sensors forwarding bogus messages, significantly reducing the network lifetime. Additionally, the compromised sensor can either provide bogus authentication tags to the sink or contaminate the transmitted authentication tags during the collaboration of sensors, forcing the genuine sensed data to be rejected by the sink due to the inconsistency with the authentication tags. The above misbehavior is similar to False-Endorsement DoS (FEDoS) attack [<xref ref-type="bibr" rid="b6-sensors-10-02770">6</xref>], and is in common with most of the collaborative security schemes. We also note that, although the resilience of ExCo against sensor compromises is claimed in [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] to be stronger than that of CoMAC that works as a baseline scheme, when the adversary is assumed to be capable of controlling all the compromise sensors and be aware of the target round right after the end of the target round, their resilience will the same. We will describe the above problem in more details in Section 4.1</p></sec></sec>
<sec>
<label>3.</label>
<title>Preliminaries</title>
<p>The network and security assumptions used in this paper, as described in the following, are similar to those of the prior works. Nevertheless, the adversary considered in this paper is more realistic and stronger than the ones in the literature.</p>
<sec>
<label>3.1.</label>
<title>Network Assumption</title>
<p>In this paper, a UWSN is composed of <italic>n</italic> homogeneous sensors, {<italic>s</italic><sub>1</sub>, . . ., <italic>s<sub>n</sub></italic>}, and a sink with mobility. Here, only the sink is assumed to have mobility. The unattended sensors are assumed to be static. These sensors are uniformly scattered over the sensing region to execute the pre-determined functionalities such as data gathering. The underlying network is assumed to be connected such that two arbitrary sensors can communicate with each other through either direct communication or multi-hop path. Time is divided into <italic>collection intervals</italic>, each of which will be further divided into <italic>v</italic> rounds, and can be synchronized by existing techniques [<xref ref-type="bibr" rid="b13-sensors-10-02770">13</xref>–<xref ref-type="bibr" rid="b15-sensors-10-02770">15</xref>]. In UWSNs, no constant connection between sensors and the sink exists. Instead, the itinerant sink periodically visits the UWSN to collect data at the end of each collection interval. Sensors are scheduled such that, in each round, each sensor obtains exactly one sensed datum. For ease of presentation, we assume that each sensor in each round gets exactly one sensed datum. Note that our proposed method actually can be applied on the case that each sensor can derive multiple sensed data or nothing in a round. After the contact to the data sink, sensors are securely re-initialized. We temporarily assume that the message transmission is reliable, which means that the message can be always be sent to the destination sensor. We will relax this assumption in later sections. In UWSNs, the geographic position of each sensor is known by the sink. This is due to the characteristic of UWSNs that the mobile sink harvests the sensed data by directly visiting the sensors. To do so, the sink must know the position of each sensor in advance. Two possible ways make the sink know the position of each sensor. First, sensors are deterministically deployed one by one by the network owner so that the position information will be passed to the sink by the owner. Second, sensors are randomly deployed, but can be aware of their geographic positions by using techniques such as [<xref ref-type="bibr" rid="b16-sensors-10-02770">16</xref>–<xref ref-type="bibr" rid="b19-sensors-10-02770">19</xref>] or specific hardwares such as Global Positioning System (GPS).</p></sec>
<sec>
<label>3.2.</label>
<title>Security Assumption</title>
<p>In this paper, the adversary, whose goal is to let the sink accept the fraudulent data that is claimed to be the one sensed by <italic>s<sub>i</sub></italic> at the target round <italic>r̄</italic>, is considered. The adversary can simultaneously compromise <italic>k</italic> sensors <italic>at each round</italic>. The conceptual illustration is shown in <xref ref-type="fig" rid="f2-sensors-10-02770">Figure 2</xref>. It should be particularly noted that the adversary is assumed to migrate and control different sets of compromised sensors in the literature. We have a stronger adversarial assumption that, once being compromised, the sensor is always under the control of the adversary. The secret information stored in the compromised sensors will therefore be exposed to the adversary. The adversary can launch sensor compromise attack right after the sensor deployment in order to maximize its the possibility of subverting the network functionality. Nevertheless, since each sensor will be reset at the end of each collection interval, we focus on the security issue in a specific collection interval. We also note that the adversary is a global eavesdropper, which means that it can eavesdrop on each message transmitted over the network. In addition, the adversary learns its objective, <italic>s<sub>i</sub></italic> and <italic>r̄</italic>, at the end of round <italic>r̄</italic>. Note that <italic>s<sub>i</sub></italic> and <italic>r̄</italic> are unknown to the sink so that the sink cannot apply protection only on specific sensors.</p>
<p>Since the adversary focuses on substituting specific data, with the consideration of the unattended nature of UWSNs, <italic>forward-secure property</italic>, which means that the adversary gains no advantage about the data sensed before the round <italic>r</italic> from the sensor compromised at the round <italic>r</italic>, can be useful in resisting the adversary. Key evolution, in which the key used in round <italic>r</italic> is evolved from the key used in round <italic>r</italic>−1 through the cryptographic hash function, is a simple means to provide forward-security. Nevertheless, forward-secure cryptographic techniques are effective against only <italic>reactive adversary</italic>, which means that the adversary starts compromising sensors after it identifies the target, but is of no use when the <italic>proactive adversary</italic>, which means that the adversary can compromise sensors even before identifying the target, is considered. As a consequence, the <italic>backward-security</italic>, which means that the adversary learns no secret of the next round, is required. An authentication scheme with both forward-security and backward-security is called <italic>key-insulated</italic>, which means that the adversary can learn only the current secret.</p></sec></sec>
<sec>
<label>4.</label>
<title>Proposed Method</title>
<p>For completeness, before describing our proposed authentication scheme, we first briefly review the ExCo scheme proposed in [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] and describe its three security defeats in more details in Section 4.1 After that, the basic idea of our proposed Acquire Authentic Data (AAD) method is presented in Section 4.2 Finally, the detailed description of AAD will be presented in Section 4.3</p>
<sec>
<label>4.1.</label>
<title>Motivation</title>
<p>In ExCo, at each round <italic>r</italic>, each sensor <italic>j</italic> constructs the MAC 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> of its sensed value 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and sends 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> to a random subset 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> of sensors. Within the round <italic>r</italic>, each sensor <italic>j</italic> has certain possibility of receiving MACs from the other sensors. If this happens, it temporarily keeps them in the local memory. At the end of round <italic>r</italic>, each sensor <italic>j</italic> constructs and stores the MAC, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">MAC</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">‖</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">‖</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>⋯</mml:mo>
<mml:mo stretchy="false">‖</mml:mo></mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msub></mml:mrow>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, where ‖ denotes the bit-string concatenation, if it receives MACs from the sensors <italic>q</italic><sub>1</sub>, . . ., <italic>q<sub>ϕ</sub></italic>. Afterwards, except for 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, all the MACs generated and received in the round <italic>r</italic> are deleted. From the sink point of view, to authenticate the 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, it involves the verification of MAC, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, and the MACs in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the set of sensors that send the authentication tags to <italic>s<sub>j</sub></italic>. Note that the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> are called the co-authenticators of <italic>s<sub>j</sub></italic> at round <italic>r</italic>. For example, if 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> contains <italic>q</italic><sub>1</sub>, . . ., <italic>q<sub>ϕ</sub></italic>, then, in addition to the verification of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, the MACs, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>H</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msub></mml:mrow>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> are required to be verified as well.</p>
<p>First, although it is claimed in [4] that ExCo is stronger than CoMAC in terms of sensor compromises, their resilience against sensor compromises is actually the same in practice. Particularly, according to [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>], it is claimed that the adversary needs to compromise all the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>j</mml:mi></mml:msub></mml:mrow>
<mml:mo>}</mml:mo></mml:mrow>
<mml:mo>∪</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the set of sensors that receive the authentication tags from <italic>s<sub>j</sub></italic> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the set of sensors that send the authentication tags to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, before the round <italic>r</italic>, to successfully subvert the security ExCo provides. Nevertheless, if <italic>r̄</italic> is the target round, the adversary is aware of <italic>r̄</italic> at the round <italic>r̄</italic> + 1, and the adversary only compromises the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>j</mml:mi></mml:msub></mml:mrow>
<mml:mo>}</mml:mo></mml:mrow>
<mml:mo>∪</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, then the adversary can still provide to the sink a counterfeit sensed data without being detected. It can proceed as follows. At first, we assume that, for each round <italic>r</italic>, each compromised sensor keeps the data received in rounds <italic>r</italic> − 1 and <italic>r</italic> in its local memory. As soon as the compromised sensor <italic>s<sub>j</sub></italic> and compromised sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> are aware of <italic>r̄</italic>, <italic>s<sub>j</sub></italic> instantly replaces the original sensor reading 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> with the value 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> the adversary wants to report to the sink. In addition, the compromised sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> pretend that they also receive 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. Hence, before the end of round <italic>r̄</italic> + 1, <italic>s<sub>j</sub></italic> can collaborate with the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> to generate their own MACs that are consistent with each other and are consistent with 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. With these generated MACs, the 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> to be reported to the sink will not be recognized to be counterfeit. Moreover, this is not an attack in an ideal case. Instead, this is a practical attack, because, in practice, the length of each round will not be too short and the adversary can be aware of the target round right after something desired happens. Hence, ExCo is not as strong as [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] claims and has the same security strength as CoMAC.</p>
<p>Second, Exco is vulnerable to PDoS attacks. In particular, after the adversary compromises a few sensors, these compromised sensors can be used to intentionally inject a large amount of useless traffic claimed to be the MACs in ExCo to waste the precious energy of sensors so that the network lifetime will be significantly reduced. Although a simple defense that limits the number of message forwarding at each sensor seems to be helpful in alleviating PDoS attacks, it is indeed useless because the network traffic on each sensor cannot be estimated in advance. As a consequence, if some limits are applied on the number of message forwarding at each sensor, some packets such as transmitted MACs in ExCo will be dropped somewhere on its way to the destination Under the circumstance, the verification will fail and some sensor readings will be regarded as falsified ones because some of the co-authenticators cannot provide the MACs.</p>
<p>Third, ExCo is also vulnerable to FEDoS attacks. In fact, this is a common attack if only a simply designed collaboration scheme is used. Specifically, after a sensor is compromised and is inquired by the sink to ask for the MAC used for authenticating the sensed data of the other sensors, it can always reply a random string to the sink. This implies that some data sensed by genuine sensors will be thought of as fake. This is because the MACs involved in a large number of sensors are necessary for authentication, leading to be easily vulnerable to FEDoS attacks. Simply taking the majority of the verification results of MACs from different co-authenticators seems to be helpful in alleviating FEDoS attacks, but it also reduces the resilience against sensor compromises. As a matter of fact, without the proper design, there always exists a dilemma of enhancing the resilience against sensor compromises or enhancing the resilience against FEDoS attacks. In addition, it has been demonstrated [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] that the expected number <italic>ν</italic>(<italic>n, t</italic>) of sensors involved in the authentication of the sensed data of one sensor in ExCo is
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>ν</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>n</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>t</mml:mi></mml:msup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula>where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula> is the number of co-authenticators. <xref ref-type="fig" rid="f3-sensors-10-02770">Figure 3</xref> shows different settings of <italic>ν</italic>(<italic>n, t</italic>). Here, we further define a metric <italic>R<sub>r</sub></italic>, called <italic>FEDoS ratio</italic> of <italic>r</italic>, which denotes the ratio of the number of sensors required to be compromised to the total number of sensors in the network. Note that the parameter <italic>r</italic> means that <italic>r</italic> × 100% of the verifications of sensor readings are affected. FEDoS ratio is used to evaluate and quantify the resilience against FEDoS attacks. According to the <italic>ν</italic>(<italic>n, t</italic>)’s derived as above, <italic>R</italic><sub>0.5</sub>’s in different settings are shown in <xref ref-type="fig" rid="f4-sensors-10-02770">Figure 4</xref>. It can be observed that when the number of co-authenticators used in ExCo is 2 and approximately 10% of sensors are compromised, over 50% of sensor readings will be regarded as bogus by the sink because of the bogus authentication tags provided by the compromised sensors. When <italic>t</italic> = 4, less than 2% of sensor compromises would result in above 50% of contaminated sensor readings, which will be a disaster in terms of the network security.</p></sec>
<sec>
<label>4.2.</label>
<title>Basic Idea</title>
<p>The previous methods are vulnerable to PDoS attack because each sensor can arbitrarily select distant sensors, and sends the authentication tag to the selected sensors. To deal with this problem, our approach is straightforward but effective, <italic>i.e.</italic>, we restrict that the sensor to which the authentication tag is sent cannot be too far away from the sensor sending the authentication tag. Clearly, the effect of PDoS attack can be mitigated because the energy waste due to the message relaying on the intermediate sensors can be reduced. Afterwards, the problem turns to be the design of a proper mechanism that can support the query of proximity information. Here, with the observation that the mobile sink in UWSNs is able to harvest the sensed data because it knows the position of each sensor, different Bloom filters containing different proximity information are stored in different sensors for the query purpose.</p>
<p>On the other hand, the reason that the prior methods suffer from the FEDoS attacks is due to the fact that the compromised sensor can always provide an MAC claimed to be legitimate to the sink. All the sink can do is to verify the data authenticity according to the received MACs. Nevertheless, the received authentication tag could be a random string generated by the compromised sensor, and therefore, the sink declines to accepting the authenticated data. In this respect, our idea is that the MAC used in the authentication procedure should be made in a specific fashion so that the legitimacy of the authentication tag can be verified by the sink before the sink verifies the data authenticity. It should be noted that our defense against FEDoS attacks can also enhance the resilience against sensor compromises. This reveals a particular merit of our method over ExCo.</p></sec>
<sec>
<label>4.3.</label>
<title>Proposed Method: AAD</title>
<p>Our proposed AAD scheme consists of five phases: pre-deployment phase, post-deployment phase, sensing phase, receiving/forwarding phase, and verification phase. The pre-deployment phase is executed by the network owner to store necessary materials into the sensors. As its name shows, the post-deployment phase is performed by the sink right after the sensor deployment in order to store the materials required for the authentic data acquisition in the sensors. Sensing phase is executed by each sensor so as to sense data, and distribute the sensed data and the necessary MACs. Once receiving the packet, each sensor executes forwarding phase to forward the received message to the destination sensor. Verification phase is performed by the sink to collect the sensed data and verify their authenticity. The notations used in the following discussion are listed in <xref ref-type="table" rid="t1-sensors-10-02770">Table 1</xref>. The details of these five phases are described as follows.</p>
<p><bold>Pre-Deployment Phase.</bold> For each sensor <italic>s<sub>j</sub></italic>, the sink randomly selects a unique key <italic>K<sub>j</sub></italic> and a prime number <italic>p<sub>j</sub></italic>. Note that the prime numbers to be stored in different sensors should be chosen to be distinct. Afterwards, <italic>K<sub>j</sub></italic> and <italic>p<sub>j</sub></italic> are stored in the sensor <italic>s<sub>j</sub></italic>. The sensors are then deployed over the sensing region.</p>
<p><bold>Post-Deployment Phase.</bold> Let λ be a user-selected parameter, which leverages the security and the energy consumption. The post-deployment phase is used to equip each sensor with a proper Bloom filter for the query of its λ-hop proximity relationship. Here, we say that the sensor <italic>s<sub>j</sub></italic> has λ-<italic>hop proximity relationship</italic> with the sensor <italic>s<sub>i</sub></italic> (or, <italic>s<sub>j</sub></italic> is the λ-hop neighbor of <italic>s<sub>i</sub></italic>) if the hop distance between <italic>s<sub>j</sub></italic> and <italic>s<sub>i</sub></italic> is <italic>within</italic> λ. The post-deployment phase is automatically accomplished when sensors are deterministically deployed by the sink. This is because when deploying the sensor <italic>s<sub>j</sub></italic>, the sink can also store the Bloom filter ℬ<italic><sub>j</sub></italic> containing the λ-hop proximity information of <italic>s<sub>j</sub></italic> in <italic>s<sub>j</sub></italic>, given that the position of each sensor is pre-determined by the network owner.</p>
<p>On the other hand, the post-deployment phase will be accomplished within a period of time right after the sensor deployment if sensors are randomly deployed. More specifically, after the sensor deployment, each sensor acquires its geographic position using well-known positioning techniques [<xref ref-type="bibr" rid="b16-sensors-10-02770">16</xref>–<xref ref-type="bibr" rid="b19-sensors-10-02770">19</xref>], and then reports the acquired position to the sink. Such a reporting should be accompanied by the message authentication code (MAC) with the unique key <italic>K<sub>j</sub></italic> so that the authenticity of the reported position can be guaranteed. Note that, the falsified position information could be injected by the adversary. Nevertheless, the falsified position information will be found by the sink because the sink will move to the position, trying to collect the sensed data. Thus, if falsified positions are injected by the adversary, they will be easily detected. After receiving each sensor’s position information, the sink first checks its authenticity by examining whether it has the correct MAC. In particular, when the received message is 〈<italic>ℓ<sub>j</sub>, ħ</italic>〉, if <italic>ħ</italic> is equal to <italic>h</italic><sub><italic>K</italic><sub><italic>j</italic></sub></sub>(<italic>ℓ<sub>j</sub></italic>), then <italic>ℓ<sub>j</sub></italic> is regarded as the position of <italic>s<sub>j</sub></italic>. With the geographic position of each sensor, the sink can construct the <italic>network graph</italic>, wherein the vertices denote the sensors and the edge between two vertices exists if the corresponding sensors can communicate with each other directly, according to the communication range predefined on each sensor. With the constructed network graph, the sink can be aware of the λ-hop proximity relationship of each sensor. Now, before the sensors start to sense data, the mobile sink starts its first itinerary over the network. For the contact of each sensor <italic>s<sub>j</sub></italic>, the sink stores a Bloom filter, ℬ<italic><sub>j</sub></italic>, containing the λ-hop proximity information of <italic>s<sub>j</sub></italic>, in <italic>s<sub>j</sub></italic>. ℬ<italic><sub>j</sub></italic> can be constructed by the sink according to the topology of the network graph. Specifically, for each <italic>s<sub>i</sub></italic> that has λ-hop proximity relationship with <italic>s<sub>j</sub></italic>, the sink embeds <italic>s<sub>j</sub></italic>‖<italic>s<sub>i</sub></italic> into ℬ<italic><sub>j</sub></italic>. Note that although the number of λ-hop neighbors of <italic>s<sub>j</sub></italic> could be different for each <italic>s<sub>j</sub></italic>, the size of Bloom filter used is chosen to be the same.</p>
<p><bold>Sensing Phase</bold>. The description of sensing phase is shown in <xref ref-type="fig" rid="f5-sensors-10-02770">Figure 5</xref>. The sensing phase is executed by each sensor at each round. The sensor <italic>s<sub>j</sub></italic> constructs the corresponding MAC, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, after it has the sensed data 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> at round <italic>r</italic>. If the sensed data and corresponding MAC are simply stored in its local memory, once the sensor is compromised by the adversary, all the security materials will be exposed to the adversary, and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> can be arbitrarily generated so that the security breach will occur. Thus, in the sensing phase, the sensed data and its corresponding MACs of a sensor will be distributed over some sensors randomly chosen from its λ-hop neighbors. Specifically, a subset 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> of <italic>t</italic> sensors is first randomly sampled from {<italic>s</italic><sub>1</sub>, . . ., <italic>s<sub>n</sub></italic>} (line 3 in <xref ref-type="fig" rid="f5-sensors-10-02770">Figure 5</xref>). <italic>SELECT</italic> − <italic>DISTINCT</italic> (<italic>t</italic>, <italic>n</italic>, <italic>j</italic>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>) is a function randomly generating <italic>t</italic> sensor IDs from {<italic>s</italic><sub>1</sub>, . . ., <italic>s<sub>n</sub></italic>} \ {<italic>s<sub>j</sub></italic>}. It can be implemented by using the hash function whose output is of length ⌈log <italic>n</italic>⌉ bits. Then, a subset 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is constructed by choosing the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> whose hop distance to <italic>s<sub>j</sub></italic> is within the pre-determined threshold λ. Here, each sensor <italic>s<sub>j</sub></italic> uses the Bloom filter ℬ<italic><sub>j</sub></italic> constructed in post-deployment phase to check the hop distances to the randomly selected sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. To construct 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, what each sensor <italic>s<sub>j</sub></italic> needs to do is to check whether the <italic>s<sub>j</sub></italic> itself has λ-hop proximity relationship with the generated sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. For example, for 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, the sensor issues <italic>s<sub>j</sub></italic>‖<italic>s<sub>i</sub></italic> to query ℬ<italic><sub>j</sub></italic>. We can know that 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> if the query result is positive and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>∉</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> otherwise (line 4 in <xref ref-type="fig" rid="f5-sensors-10-02770">Figure 5</xref>). Afterwards, the MAC, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, is transmitted to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. Note that 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> may vary as <italic>j</italic> and <italic>r</italic> vary. In general, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is not a constant. Nonetheless, for ease of the explanation, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is described as if it is a constant. In the following, the term “authentication tag of <italic>s<sub>j</sub></italic>” is used to denote 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and the term “co-authenticator of <italic>s<sub>j</sub></italic> at round <italic>r</italic>” is used to denote the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. Then, <italic>s<sub>j</sub></italic>, according to 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, derives 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> to guarantee the data privacy and authenticity, respectively. Lastly, <italic>s<sub>j</sub></italic> sends 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">Ω</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> whose second and third fields are always fixed to be 1 (lines 5 and 6 in <xref ref-type="fig" rid="f5-sensors-10-02770">Figure 5</xref>).</p>
<p><bold>Receiving/Forwarding Phase.</bold> The algorithm of this phase is described in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>. This phase is executed by each sensor when a message is received. According to the role it acts, each sensor executes different tasks (lines 1∼7 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>); the receiving task will be executed if the received message is destined to itself, and the forwarding task (lines 8∼13 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>) is performed otherwise. Assume that <italic>s<sub>j</sub></italic> is the forwarding sensor and receives Ω = 〈<italic>s<sub>i</sub>, P, C, E, Z, s<sub>i</sub></italic><sub>′</sub>〉 (line 9 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>). At first, <italic>s<sub>j</sub></italic> checks if it has λ-hop proximity relationship to the destination sensor <italic>s<sub>i</sub></italic><sub>′</sub> (lines 9∼13 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>). <italic>s<sub>j</sub></italic> proceeds the procedures if <italic>s<sub>j</sub></italic> has λ-hop proximity relationship to the destination sensor <italic>s<sub>i</sub></italic><sub>′</sub> and drops the received Ω otherwise. <italic>s<sub>j</sub></italic> then adds the existence evidence of itself on the forwarding path on Ω so that the sink can check whether the received authentication tag passes through exactly those sensors it should pass. To achieve this goal, <italic>s<sub>j</sub></italic> applies the keyed hash function with its secret key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> on <italic>Z</italic> to have 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>Z</mml:mi>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>. Moreover, to enable the sink to accomplish the verification, the information about the forwarding path should be included in Ω; it is the usage of <italic>P</italic> and <italic>C</italic> in Ω. <italic>C</italic> means that <italic>s<sub>j</sub></italic> is on the (<italic>C</italic> + 1)-th sensor of the forwarding path and <italic>P</italic> can be used to extract all the sensor IDs on the forwarding path (The details will be stated in the description of the verification phase later). More specifically, after receiving Ω, <italic>s<sub>j</sub></italic> increases <italic>C</italic> by one and multiplies <italic>P</italic> with 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:mrow></mml:math></inline-formula>, where <italic>p<sub>j</sub></italic> is the prime number stored in <italic>s<sub>j</sub></italic> in pre-deployment phase. Afterwards, the packet 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo>〈</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>C</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>E</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>Z</mml:mi>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:msup>
<mml:mi>i</mml:mi>
<mml:mo>′</mml:mo></mml:msup></mml:msub></mml:mrow>
<mml:mo>〉</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> will be forwarded to the next sensor on the forwarding path. Note that the selection of the next sensor depends on the routing protocol the underlying network uses and is not the focus of this paper. Nevertheless, due to the fact that each sensor knows its position, geographic routing [<xref ref-type="bibr" rid="b20-sensors-10-02770">20</xref>] is a reasonable choice.</p>
<p>On the other hand, assume that <italic>s<sub>j</sub></italic> is the destination sensor and receives Ω = 〈<italic>s<sub>i</sub>, P, C, E, Z, s<sub>j</sub></italic>〉 (line 4 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>). Under this situation, <italic>s<sub>j</sub></italic> simply extracts 〈<italic>s<sub>i</sub>, P, E, Z</italic>〉 from Ω and then stores it into an ordered set 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> (line 5 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>). At the end of the round <italic>r</italic>, the key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> will be evolved to the key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:mrow></mml:math></inline-formula> of the next round <italic>r</italic> + 1 using the publicly-known hash function <italic>h</italic> (line 7 in <xref ref-type="fig" rid="f6-sensors-10-02770">Figure 6</xref>).</p>
<p><bold>Verification Phase.</bold> The algorithm describing the verification phase is shown in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>. Assume that the sink would like to obtain the data 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> sensed by sensor <italic>s<sub>j</sub></italic> at the round <italic>r̄</italic>. What the sink should do is to perform the verification phase. Since the initial key of <italic>s<sub>j</sub></italic> is given by the sink, the key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> will be known by the sink. Thus, the co-authenticators of <italic>s<sub>j</sub></italic> at <italic>r̄</italic> will also be known by the sink. This prevents the traces from being deleted by the adversary. The strategy of the sink is to move to the positions near those co-authenticators to collect 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>, acquiring the proper authentication tags. More specifically, assume that the co-authenticators of <italic>s<sub>j</sub></italic> are 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:msub>
<mml:mo>∈</mml:mo>
<mml:mo stretchy="false">{</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">}</mml:mo>
<mml:mo>\</mml:mo>
<mml:mo stretchy="false">{</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula>. For each 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, the sink acquires 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> and extracts 〈<italic>s<sub>j</sub>, P, E, Z</italic>〉 (lines 3∼4 in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>). Here, 〈<italic>s<sub>j</sub>, P, E, Z</italic>〉’s extracted from different co-authenticators will not be the same in essence. We, however, omit the necessary subscript and superscript of <italic>P, E</italic>, and <italic>Z</italic> without the ambiguity for convenience. From the acquired 〈<italic>s<sub>j</sub></italic>, <italic>P</italic>, <italic>E</italic>, <italic>Z</italic>〉, with the proper key, the sink can decrypt to obtain the 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> (line 6 in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>), which is claimed by <italic>s<sub>q<sub>i</sub></sub></italic> to be the data sensed by <italic>s<sub>j</sub></italic> at round <italic>r̄</italic>. Based on the decrypted 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>, the sink would try to verify if the authentication tag can be regenerated to match the authentication tag extracted from 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. Here, to reproduce the authentication tag, the sink needs to obtain the sensor IDs on the forwarding path of Ω in the correct order. Then, since the sink knows the keys of all the sensors on the forwarding path, if we can know that <italic>s<sub>j</sub></italic> → <italic>s</italic><sub><italic>m</italic><sub>1</sub></sub> → <italic>s</italic><sub><italic>m</italic><sub>2</sub></sub> → ⋯ → <italic>s</italic><sub><italic>m</italic><sub><italic>ϕ</italic></sub></sub> is the correct order of sensors on the forwarding path connecting <italic>s<sub>j</sub></italic> and <italic>s</italic><sub><italic>q</italic><sub><italic>i</italic></sub></sub>, the sink can construct 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>⋯</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>φ</mml:mi></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>⋯</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, where <italic>s</italic><sub><italic>m</italic><sub>1</sub></sub>, . . ., <italic>s<sub>m<sub>ϕ</sub></sub></italic> are the sensors on the route from <italic>s<sub>j</sub></italic> to <italic>s</italic><sub><italic>q</italic><sub><italic>i</italic></sub></sub>, and see if it is equal to the authentication tag extracted from 〈<italic>s<sub>j</sub>, P, E, Z</italic>〉. To know <italic>s</italic><sub><italic>m</italic><sub>1</sub></sub>, . . ., <italic>s<sub>m<sub>ϕ</sub></sub></italic> (line 5 in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>), the sink simply performs prime number factorization of <italic>P</italic>, obtaining 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msub></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, where <italic>ϕ</italic> is the length of the path connecting the sensor <italic>s<sub>j</sub></italic> and its co-authenticator being examined by the sink. Here, we should note that <italic>ϕ</italic> varies when different co-authenticators are considered. Nonetheless, for ease of explanation, we also omit the necessary subscript and superscript. Then, the sink knows that <italic>s</italic><sub><italic>m</italic><sub><italic>i</italic></sub></sub> = <italic>s</italic><sub><italic>x</italic><sub><italic>i</italic></sub></sub> for all 1 ≤ <italic>i</italic> ≤ <italic>ϕ</italic>. Note that after the factorization of <italic>P</italic>, if <italic>P</italic> cannot be represented as the form of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>p</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msub></mml:mrow>
<mml:mi>ϕ</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, then the authentication material provided by the co-authenticator being examined will be ignored. The authentication material 〈<italic>s<sub>j</sub>, P, E, Z</italic>〉 extracted from <italic>s</italic><sub><italic>q</italic><sub><italic>i</italic></sub></sub> is dropped by the sink if the regenerated authentication tag does not match the authentication tag in 〈<italic>s<sub>j</sub>, P, E, Z</italic>〉 (line 7 in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>). The decrypted data 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> is stored if 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>⋯</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>φ</mml:mi></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>⋯</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> is equal to the authentication tag extracted from 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. After the sink accomplishes the above procedures, if no authentication tag can be successfully verified, then all the data claimed to be the data sensed by <italic>s<sub>j</sub></italic> at round <italic>r̄</italic> are dropped. Assume that the sink accomplishes the above procedures and at least one authentication tag of co-authenticators can be successfully verified. If and only if 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> extracted from the authentication materials sent from co-authenticators are all the same, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> are regarded as genuine (lines 9<italic>∼</italic>12 in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>).</p>
<p><bold>Example.</bold> Assume that λ = 3 and a specific round <italic>r</italic> is considered. For the sensor <italic>s</italic><sub>1</sub>, we have the assumption that 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>5</mml:mn></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>7</mml:mn></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mn>7</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>10</mml:mn></mml:mrow></mml:math></inline-formula>, and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mn>7</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>8</mml:mn></mml:mrow></mml:math></inline-formula>. In addition, we assume that after the execution of <italic>SELECT</italic> − <italic>DISTINCT</italic> and the checking procedure on ℬ<sub><italic>j</italic></sub>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>r</mml:mi>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>6</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>7</mml:mn></mml:msub></mml:mrow>
<mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>. Suppose that the shortest path connecting <italic>s</italic><sub>1</sub> and <italic>s</italic><sub>6</sub> is <italic>s</italic><sub>1</sub> → <italic>s</italic><sub>2</sub> → <italic>s</italic><sub>3</sub> → <italic>s</italic><sub>6</sub>, and the shortest path connecting <italic>s</italic><sub>1</sub> and <italic>s</italic><sub>7</sub> is <italic>s</italic><sub>1</sub> → <italic>s</italic><sub>4</sub> → <italic>s</italic><sub>5</sub> → <italic>s</italic><sub>7</sub>. The network topology in this example is shown in <xref ref-type="fig" rid="f8-sensors-10-02770">Figure 8</xref>. Then, since <italic>s</italic><sub>1</sub> has to transmit <italic>E</italic><sub>7</sub>(5) and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> to <italic>s</italic><sub>6</sub> and <italic>s</italic><sub>7</sub>, <italic>s</italic><sub>1</sub> will send 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">Ω</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>〈</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>6</mml:mn></mml:msub></mml:mrow>
<mml:mo>〉</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">Ω</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>〈</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>s</mml:mi></mml:mrow>
<mml:mn>7</mml:mn></mml:msub></mml:mrow>
<mml:mo>〉</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> to <italic>s</italic><sub>2</sub> and <italic>s</italic><sub>3</sub>, respectively. Since the sensors on these two paths work similarly, we only discuss the path <italic>s</italic><sub>1</sub> → <italic>s</italic><sub>2</sub> → <italic>s</italic><sub>3</sub> → <italic>s</italic><sub>6</sub>. When <italic>s</italic><sub>2</sub> receives 〈<italic>s</italic><sub>1</sub>, 1, 1, 10, 8, <italic>s</italic><sub>6</sub>〉, it first check its λ-hop proximity relationship to <italic>s</italic><sub>1</sub>. Here, since we assume that <italic>λ</italic> = 3, the check can be passed. Thus, assuming that <italic>p</italic><sub>2</sub> = 3, <italic>s</italic><sub>2</sub> forwards 〈<italic>s</italic><sub>1</sub>, 9, 2, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, <italic>s</italic><sub>6</sub>〉 to <italic>s</italic><sub>3</sub>. Similarly, if we assume that <italic>p</italic><sub>3</sub> = 7, after receiving 〈<italic>s</italic><sub>1</sub>, 9, 2, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, <italic>s</italic><sub>6</sub>〉, <italic>s</italic><sub>3</sub> sends 〈<italic>s</italic><sub>1</sub>, 3087, 3, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, <italic>s</italic><sub>6</sub>〉 to <italic>s</italic><sub>6</sub>. When <italic>s</italic><sub>6</sub> receives 〈<italic>s</italic><sub>1</sub>, 3087, 3, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, <italic>s</italic><sub>6</sub>〉, it stores 〈<sub>s</sub><sub>1</sub>, 3087, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>6</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, <italic>s</italic><sub>6</sub>〉 in its local memory.</p>
<p>Now consider that the sink wants to obtain 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. In our method, the sink has to perform two verifications on <italic>s</italic><sub>6</sub> and <italic>s</italic><sub>7</sub>. Basically, because the verification performed on <italic>s</italic><sub>6</sub> is the same as the one performed on <italic>s</italic><sub>7</sub>, we only describe the one performed on <italic>s</italic><sub>6</sub>. From <italic>s</italic><sub>6</sub>, the sink can obtain 〈<italic>s</italic><sub>1</sub>, 3087, 10, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>6</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>〉. After performing the prime number factorization of the value 3087, the sink can know that 3087 = 3<sup>2</sup> × 7<sup>3</sup>, which means that the second hop sensor and the third hop sensor on the path connecting <italic>s</italic><sub>1</sub> and <italic>s</italic><sub>6</sub> are <italic>s</italic><sub>2</sub> and <italic>s</italic><sub>3</sub>, respectively. The sink also extracts 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>5</mml:mn></mml:mrow></mml:math></inline-formula> from 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>10</mml:mn></mml:mrow></mml:math></inline-formula>. Then, the sink checks if 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>6</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> is equal to the value obtained by sequentially applying three keyed hash functions 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>3</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>6</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> on 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>8</mml:mn></mml:mrow></mml:math></inline-formula>. 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> will be temporarily stored if the above check is passed and dropped otherwise. Finally, when all the co-authenticators are visited, the sink checks the consistency of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>’s obtained from different co-authenticators. Note that for the notational simplicity, we do not put additional subscript on 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> to distinguish different 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>’s obtained from different co-authenticators. 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> is deemed to be genuine if they are consistent and bogus otherwise.</p></sec></sec>
<sec sec-type="methods">
<label>5.</label>
<title>Performance and Security Analysis</title>
<p>In the section, the performance and security of AAD will be evaluated. Recall that at each round <italic>r</italic>, the adversary is able to compromise the set <italic>C<sub>r</sub></italic> of <italic>k</italic> sensors. Without the loss of generality, we assume in the subsequent discussion that <italic>C<sub>r</sub></italic> ∩ <italic>C<sub>r</sub></italic><sub>′</sub> = ∅ if <italic>r</italic> ≠ <italic>r′</italic>.</p>
<sec sec-type="methods">
<label>5.1.</label>
<title>Security Analysis</title>
<p>In what follows, the resilience of AAD against sensor compromises, PDoS attack and FEDoS attack will be described, respectively.</p>
<p><bold>Resilience Against Sensor Compromises</bold>. Let 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> be the counterfeit data the adversary constructs to substitute 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. For the adversary, to successfully deceive the sink into accepting the bogus 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>, it needs to compromise all the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula>, where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> denotes the set of all the sensors on the route from <italic>s<sub>j</sub></italic> to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>, before the target round <italic>r̄</italic>. In other words,
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub>
<mml:mo>⊆</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi></mml:mrow>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msub></mml:mrow>
<mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>Compromising the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> is used to substitute the authentication tag corresponding to 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> while compromising the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> aims to know the keys stored in the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> so that the legitimacy of the bogus authentication tag can also be counterfeited.</p>
<p>To evaluate the resilience of AAD against the sensor compromises, we have to estimate the number of sensors involved in the authentication procedure of one datum in AAD. Let |<italic>N<sub>σ</sub></italic>| be the number of sensors that is exactly <italic>σ</italic>-hop away from a specific sensor in a randomly deployed network. Before starting to estimate the number of sensors involved in the authentication procedure of one datum in AAD, we first need to know how to calculate |<italic>N<sub>σ</sub></italic>|, 1 ≤ <italic>σ</italic> ≤ λ. Obviously, |<italic>N<sub>σ</sub></italic>| is dependent on the size of the sensing region, the number <italic>n</italic> of sensors, and the communication range <italic>R</italic> of each sensor. Although 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>π</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>R</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mfrac>
<mml:mi>n</mml:mi>
<mml:mi>A</mml:mi></mml:mfrac>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula> can be easily obtained, there is no explicit formula for the expression of <italic>N<sub>σ</sub></italic> for <italic>σ</italic> ≥ 2. An approximation of |<italic>N<sub>σ</sub></italic>| is calculated in [<xref ref-type="bibr" rid="b21-sensors-10-02770">21</xref>]. Although the calculation of <italic>N</italic><sub>1</sub> is straightforward and the calculation of <italic>N</italic><sub>2</sub> is not difficult, calculating <italic>N</italic><sub>3</sub> is quite difficult. Considering two sensors <italic>a</italic> and <italic>b</italic> with communication range being <italic>r</italic>. There could be the case that <italic>b</italic> lies in the communication disk centered at <italic>a</italic> with the radius 3<italic>r</italic> but <italic>a</italic> cannot reach <italic>b via</italic> the exactly 3-hop communication. Even if <italic>b</italic> which lies in the communication disk centered at <italic>a</italic> with the radius 3<italic>r</italic> can reach <italic>a</italic>, we have to make sure whether they can communicate with each other <italic>via</italic> 3-hop communication or they can communicate with each other <italic>via</italic> 2 or 1-hop communication. Simultaneously considering all these kinds of possibilities is an extremely difficult task. To the best of our knowledge, no exact formula has been proposed to deal with the calculation of <italic>N<sub>σ</sub></italic>. As [<xref ref-type="bibr" rid="b21-sensors-10-02770">21</xref>] indicates, <italic>N<sub>σ</sub></italic> is well approximated by using their proposed approximation formula. In our AAD scheme, for the energy conservation, <italic>λ</italic> is usually not too large, which means that we do not need to consider <italic>N<sub>σ</sub></italic> for large <italic>σ</italic>. Thus, although the approximation formula of <italic>N<sub>σ</sub></italic> gradually deviates from the true <italic>N<sub>σ</sub></italic> as <italic>σ</italic> increases, it is still sufficient for our use. Therefore, in the following discussion, we refer to [<xref ref-type="bibr" rid="b21-sensors-10-02770">21</xref>] for the derivation of |<italic>N<sub>σ</sub></italic>|, 2 ≤ <italic>σ</italic> ≤ <italic>λ</italic>. For 1 ≤ <italic>σ</italic> ≤ <italic>λ</italic>, the probability of randomly selecting a sensor whose hop distance to the sensor <italic>s<sub>j</sub></italic> is exactly <italic>σ</italic> can be expressed as 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow></mml:math></inline-formula>. Therefore, the probability of randomly selecting a sensor whose hop distance to <italic>s<sub>j</sub></italic> is within <italic>λ</italic> is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow></mml:math></inline-formula>, and the expected number of randomly chosen sensors whose hop distance to <italic>s<sub>j</sub></italic> is within <italic>σ</italic> is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mo>⋅</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula> when <italic>t</italic> sensors are randomly chosen. These 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mo>⋅</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula> sensors exactly constitute the set of sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. Recall that one of the characteristics of Bloom filter is that the query result is always correct if the content to be queried is indeed stored in the Bloom filter. Thus, we have 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mo>⋅</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula>. On the other hand, all the sensors on the route to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> also contribute to the authentication procedure. As the number of these sensors is difficult to be precisely calculated, we will approximate it by assuming that the routes to the selected sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> are non-overlapping. For each sensor <italic>s<sub>i</sub></italic> that is exactly <italic>σ</italic>-hop away from <italic>s<sub>j</sub></italic>, <italic>σ</italic> − 1 sensors lie on the route between <italic>s<sub>j</sub></italic> and <italic>s<sub>i</sub></italic>. Thus, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>σ</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> sensors are involved when 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula> sensors are in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. It implies that, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> can be upper bounded by:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo>⋯</mml:mo>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>λ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:munderover>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>σ</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Because of our assumption that the routes from <italic>s<sub>j</sub></italic> to the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> are non-overlapped, this value overestimates 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> and, thus, can only work as the upper bound of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>. In practice, the approximation of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> in <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref> is quite accurate when the ratio 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mi>η</mml:mi></mml:mfrac></mml:mrow></mml:math></inline-formula>, where <italic>η</italic> denotes the average number of one-hop neighbors for a sensor, is sufficiently small. Nonetheless, since we know that the fewer the sensors involved in the authentication procedure, the lower the resilience against sensor compromises, even <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref> provides a good approximation of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> in most cases and can be used to estimate the upper bound of communication overhead in Section 5.2, we still need a lower bound of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> to derive the lower bound of the resilience of AAD against sensor compromises. In essence, even if the setting of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>≥</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula> is used, the lower bound of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> can be obtained according to the setting of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula>. By the similar calculation as in <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref>, we can know that 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>∪</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ℰ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow>
<mml:mo>≥</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, where
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:munderover>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>σ</mml:mi></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>Define <italic>P<sub>ADV</sub></italic> as the probability that the event described in <xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> happens. Thus, for the adversary that always randomly compromises the sensors over the whole network, the upper bound of probability <italic>P<sub>ADV</sub></italic> can be obtained as:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mi>n</mml:mi></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mtext>if</mml:mtext>
<mml:mi>  </mml:mi>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>≤</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mtext>if</mml:mtext>
<mml:mi>  </mml:mi>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>&gt;</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>With <italic>kr̄</italic> &gt; <italic>n</italic>, it means that all the sensors are compromised and the whole network is in the complete control of the adversary. On the other hand, with <italic>kr̄</italic> ≤ <italic>n</italic>, there are 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mi>n</mml:mi></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> ways to compromise the sensors in the networks and at least 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac></mml:mrow>
<mml:mi>σ</mml:mi></mml:mrow></mml:math></inline-formula> specific sensors should be included in the set {<italic>C</italic><sub>1</sub>, . . ., <italic>C<sub>r̄</sub></italic>} of compromised sensors. As a result, the upper bound of <italic>P<sub>ADV</sub></italic> defined in <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref> holds. Here, it should be noted that instead of compromising random sensors over the network, the adversary that is aware of the application of AAD on the network may intentionally compromise the sensors in the nearby region of <italic>s<sub>j</sub></italic> so as to increase its success probability <italic>P<sub>ADV</sub></italic> . Nevertheless, this strategy is infeasible for the adversary since the target sensor <italic>s<sub>j</sub></italic> and the target round <italic>r̄</italic> are known only after the end of the target round. Thus, without the prior knowledge of the target sensor, in general, what the adversary can do is only to randomly compromise the sensors over the network. Define <italic>P<sub>AAD</sub></italic> as the <italic>survival probability</italic>, the probability that the data 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> remain unforged can be calculated as:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">AAD</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ADV</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></disp-formula>Because of the upper bound of <italic>P<sub>ADV</sub></italic> in <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref>, the lower bound of <italic>P<sub>AAD</sub></italic> can be represented as:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo>−</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mi>n</mml:mi></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mtext>if</mml:mtext>
<mml:mi>  </mml:mi>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>≤</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mtext>if</mml:mtext>
<mml:mi>  </mml:mi>
<mml:mi>k</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mo>&gt;</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula><italic>P<sub>AAD</sub></italic>’s in different settings are shown in <xref ref-type="fig" rid="f9-sensors-10-02770">Figure 9</xref>. Note that the dotted line represents the lower bound of <italic>P<sub>AAD</sub></italic> in the setting of <italic>n</italic> = 100, <italic>k</italic> = 10, and |<italic>N</italic><sub>1</sub>| = 10, irrespective of the parameter <italic>t</italic> used in AAD. Although the dashed line and solid line act as the upper bound of <italic>P<sub>AAD</sub></italic> in the setting of <italic>n</italic> = 100, <italic>k</italic> = 10, and |<italic>N</italic><sub>1</sub>| = 10. They, however, are pretty accurate approximations of <italic>P<sub>AAD</sub></italic> in a relatively dense network. We can observe that the curve of survival probabilities generated by the use of AAD with the parameters 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>3</mml:mn></mml:mrow></mml:math></inline-formula> and <italic>λ</italic> = 5 is close to that in [<xref ref-type="bibr" rid="b4-sensors-10-02770">4</xref>] with 15 co-authenticators used in their proposed protocol. Therefore, we can also claim that, when the similar level of security is required, the communication overhead incurred by AAD is lower than that incurred by prior works.</p>
<p><bold>Resilience Against PDoS attacks.</bold> In general, the adversary is always able to launch PDoS attacks. In other words, PDoS attacks can only be mitigated, but not eliminated. The evaluation method similar to the ones used in [<xref ref-type="bibr" rid="b22-sensors-10-02770">22</xref>–<xref ref-type="bibr" rid="b25-sensors-10-02770">25</xref>] is conducted here to demonstrate the superiority of AAD over CoMAC and ExCo in terms of the resilience against PDoS attacks. Recall that the resilience of CoMAC and ExCo are the same. Let <italic>L<sub>AAD</sub></italic> and <italic>L<sub>ExCo</sub></italic> be the bit-length of the authentication material of AAD and ExCo, respectively. Assume that a MAC is of length 128 bits and an encrypted data is also of length 128 bits. In AAD, the field representing the counter <italic>C</italic> is assumed to be of length 8 bits because the setting of <italic>λ</italic> ≤ 2<sup>8</sup> − 1 is sufficient in most cases. The field representing the aggregated prime number <italic>P</italic> is assumed to have 32 bits. Assume that in total <italic>n</italic> sensors are deployed. Consequently, <italic>L<sub>AAD</sub></italic> can be calculated as 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mn>128</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>128</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>32</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>32</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt>
<mml:mo>=</mml:mo>
<mml:mn>328</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow></mml:math></inline-formula> bits. On the other hand, since the authentication material only contains the authentication tag, the size of <italic>L<sub>ExCo</sub></italic> is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mn>128</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow></mml:math></inline-formula> bits. For a flat network whose <italic>n</italic> sensors are uniformly distributed, the average hop distance between arbitrary two sensors is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow></mml:math></inline-formula> [<xref ref-type="bibr" rid="b26-sensors-10-02770">26</xref>]. In the following evaluation, it is assumed that the compromised sensor sends bogus message to a random sensor, instead of sending to the most distant sensors. Also note that such evaluation is advantageous to the calculation of ExCo’s energy consumption but is disadvantageous to the calculation of ours. Nevertheless, such evaluation will imply the lower bound of the energy saving of our AAD over ExCo. We can know from [<xref ref-type="bibr" rid="b23-sensors-10-02770">23</xref>] that when telosB motes [<xref ref-type="bibr" rid="b27-sensors-10-02770">27</xref>] are used, the energy for receiving one bit requires 0.2707<italic>μ</italic>J and the energy for transmitting one bit requires 0.2505<italic>μ</italic>J. In ExCo, the energy <italic>E<sub>ExCo</sub></italic> wasted by the forwarding of one single bogus message in the PDoS attack is therefore 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ExCo</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>128</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>μ</mml:mi>
<mml:mi mathvariant="normal">J</mml:mi></mml:mrow></mml:math></inline-formula>. In AAD, the energy <italic>E<sub>AAD</sub></italic> wasted by the forwarding of one single bogus message in the PDoS attack is therefore 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">AAD</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>328</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>μ</mml:mi>
<mml:mi mathvariant="normal">J</mml:mi></mml:mrow></mml:math></inline-formula>. Hence, the ratio of energy saving of our AAD method to ExCo can be expressed as 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>λ</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>328</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mn>0.5212</mml:mn>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>128</mml:mn>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mi>n</mml:mi></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mrow></mml:math></inline-formula> and is depicted in <xref ref-type="fig" rid="f10-sensors-10-02770">Figure 10</xref>. Since the ratio less than one means that the energy consumed by AAD is lower than that consumed by ExCo, we can observe in <xref ref-type="fig" rid="f10-sensors-10-02770">Figure 10</xref> that in most cases the energy consumption of AAD is lower than that of ExCo. Note that the energy calculation is based on the energy consumed by the message transmission from the source to the destination. Since the adversary can always launch PDoS attacks, the calculation is independent of the parameter <italic>t</italic>. The energy saving of AAD is due to the use of <italic>λ</italic> in restricting the number of hops used to relay the messages.</p>
<p><bold>Resilience Against FEDoS attacks.</bold> Recall that FEDoS attacks aim to deceive the sink into rejecting the genuine sensor readings by providing false authentication tags. FEDoS attacks easily work because what the sink can trust is only the authentication tag the co-authenticators provide. Therefore, if one of co-authenticators is compromised, the false authentication tag generated by it makes FEDoS attack successful. Nevertheless, in AAD, for a compromised sensor that happens to be a co-authenticator of the data of the sink’s interest, it cannot simply generate and then provide a random bit string acting as the authentication tag to the sink. Instead, together with the claimed authentication tag, some additional information should be accompanied so that before accepting the received bit string as the genuine authentication tag, the sink can check the legitimacy of the claimed authentication tag. Specifically, <italic>P</italic> and <italic>E</italic> serve for this purpose. From the algorithm of the verification phase summarized in <xref ref-type="fig" rid="f7-sensors-10-02770">Figure 7</xref>, it can be observed that for the route to a specific co-authenticator, unless the keys of all the sensors on the route are known by the adversary and the corresponding co-authenticator is compromised prior to the round <italic>r̄</italic>, the authentication tag cannot be counterfeited. We have an interesting observation that, in the case where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula>, successfully launching FEDoS attacks is as difficult as successfully replacing the data on the target sensor at the target round because they all need to compromise the sensors in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula> and the sensors on the route from the target sensor to the sensor in 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>S</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mover accent="true">
<mml:mi>r</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:msubsup></mml:mrow></mml:math></inline-formula>. Here, we also employ FEDoS ratio to evaluate the resilience of AAD against FEDoS attacks. When the average number |<italic>N</italic><sub>1</sub>| of the one-hop number of the sensor in a network is 5, <italic>R</italic><sub>0.5</sub>’s of AAD in different settings are shown in <xref ref-type="fig" rid="f11-sensors-10-02770">Figure 11</xref>. When the average number |<italic>N</italic><sub>1</sub>| of the one-hop number of the sensor in a network is 10, <italic>R</italic><sub>0.5</sub>’s of AAD in different settings are shown in <xref ref-type="fig" rid="f12-sensors-10-02770">Figure 12</xref>. It can be known from <xref ref-type="fig" rid="f11-sensors-10-02770">Figures 11</xref> and <xref ref-type="fig" rid="f12-sensors-10-02770">12</xref> that the resilience of AAD against FEDoS attacks is independent of the network topology such as the sensor density and the number of sensors. In addition, it can be observed that, as 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> increases, <italic>R</italic><sub>0.5</sub> will be decreased. The reason for this phenomenon is that, the increase of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> means the increase of the number of sensors involved in the authentication procedure, resulting in the possibility of the adversary compromising the involving sensors and launching FEDoS attacks.</p></sec>
<sec sec-type="methods">
<label>5.2.</label>
<title>Performance Analysis</title>
<p><bold>Storage Overhead.</bold> Each sensor needs to store a Bloom filter, key, and prime number. They imply the constant storage overhead. At each round <italic>r</italic>, each sensor <italic>s<sub>j</sub></italic> sends 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> authentication materials, 〈<italic>j, P, E, Z</italic>〉, to the randomly selected sensors. As a collection interval consists of <italic>v</italic> rounds, we therefore know that the storage overhead of each sensor in each collection interval is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>v</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>.</p>
<p><bold>Communication and Computation Overhead.</bold> As described in Section 5.1, the upper bound of the number of sensors involved in the authentication procedure for a single datum is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mi>σ</mml:mi></mml:mrow></mml:mrow></mml:math></inline-formula>. Since each involved sensor performs either sending or receiving operation, the number of involved sensors can be used to estimate the communication and computation overhead of AAD. As the size of the authentication material is constant in terms of the network size, <italic>n</italic>, the communication overhead of each sensor in AAD is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mi>σ</mml:mi></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>. In addition, as the number of the operations needed to be performed is also a constant in terms of the network size, the communication overhead of each sensor in AAD is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi>O</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>λ</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mi>σ</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow>
<mml:mi>n</mml:mi></mml:mfrac>
<mml:mi>t</mml:mi>
<mml:mi>σ</mml:mi></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> as well.</p></sec></sec>
<sec sec-type="conclusions">
<label>6.</label>
<title>Conclusions</title>
<p>In this paper, a scheme, called AAD, is proposed to Acquire Authentic Data in UWSNs. AAD has superior resilience against sensor compromises over the prior works. Compared with the existing methods that are vulnerable to PDoS and FEDoS attacks, AAD can also be resilient against PDoS and FEDoS attacks. Interestingly, the communication overhead, which dominates the energy consumption of sensor networks, can be even lower than that of prior works. The efficiency and effectiveness of AAD have been demonstrated <italic>via</italic> the analysis and simulation.</p>
<p>In addition to the PDoS and FEDoS attacks considered in the paper, there are actually many attacks that need to be considered too. Thus, one of future works is to equip our proposed AAD scheme with the ability to defend against radio jamming attacks. In addition, we also consider the possibility of mobile sensors in future applications. For example, the sensors may cruise a given area to collect the data of interest. For now, our method cannot apply to such scenario because our AAD scheme heavily relies on the invariant position information of each sensor. Hence, another future work is to develop a variant of AAD so that it can work on the mobile sensor networks.</p></sec></body>
<back>
<ack>
<p>This paper was supported, in part, by the National Science Council, Taiwan, ROC, under grant NSC 98-2221-E-001-004-MY3.</p></ack>
<ref-list>
<title>References</title>
<ref id="b1-sensors-10-02770"><label>1.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Pietro</surname><given-names>R.D.</given-names></name><name><surname>Mancini</surname><given-names>L.V.</given-names></name><name><surname>Spognardi</surname><given-names>A.</given-names></name><name><surname>Soriente</surname><given-names>C.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>Catch Me (If You Can): Data Survival in Unattended Sensor Networks</article-title><conf-name>Proceedings of IEEE International Conference on Pervasive Computing and Communications (PerCom)</conf-name><conf-loc>Hong Kong, China</conf-loc><conf-date>March 2008</conf-date><fpage>185</fpage><lpage>194</lpage></citation></ref>
<ref id="b2-sensors-10-02770"><label>2.</label><citation citation-type="web"><article-title>Trident Systems, Tridents Family of Unattended Ground Sensors</article-title><comment>Available online: <ext-link xlink:href="http://www.tridsys.com/white-unattended-ground-sensors.htm" ext-link-type="uri">http://www.tridsys.com/white-unattended-ground-sensors.htm</ext-link> (accessed on 21 December 2009).</comment></citation></ref>
<ref id="b3-sensors-10-02770"><label>3.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Ma</surname><given-names>D.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>Extended Abstract: Forward-Secure Sequential Aggregate Authentication</article-title><conf-name>Proceedings of IEEE Symposium on Security and Privacy (S&amp;P)</conf-name><conf-loc>Oakland, CA, USA</conf-loc><conf-date>May, 2007</conf-date><fpage>86</fpage><lpage>91</lpage></citation></ref>
<ref id="b4-sensors-10-02770"><label>4.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Pietro</surname><given-names>R.D.</given-names></name><name><surname>Spognardi</surname><given-names>A.</given-names></name><name><surname>Soriente</surname><given-names>C.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>Collaborative Authentication In Unattended WSNs</article-title><conf-name>Proceedings of ACM Conference on Wireless Network Security (WiSec)</conf-name><conf-loc>Zurich, Switzerland</conf-loc><conf-date>March, 2009</conf-date><fpage>237</fpage><lpage>244</lpage></citation></ref>
<ref id="b5-sensors-10-02770"><label>5.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Deng</surname><given-names>J.</given-names></name><name><surname>Han</surname><given-names>R.</given-names></name><name><surname>Mishra</surname><given-names>S.</given-names></name></person-group><article-title>Defending against Path-based DoS Attacks in Wireless Sensor Networks</article-title><conf-name>Proceedings of ACM Workshop on Security of Ad Hoc and Sensor Networks (SASN)</conf-name><conf-loc>Alexandria, VA, USA</conf-loc><conf-date>November, 2005</conf-date><fpage>89</fpage><lpage>96</lpage></citation></ref>
<ref id="b6-sensors-10-02770"><label>6.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Krauß</surname><given-names>C.</given-names></name><name><surname>Schneider</surname><given-names>M.</given-names></name><name><surname>Eckert</surname><given-names>C.</given-names></name></person-group><article-title>Defending Against False-endorsement-based Dos Attacks in Wireless Sensor networks</article-title><conf-name>Proceedings of ACM Conference on Wireless Network Security (WiSec)</conf-name><conf-loc>Alexandria, VA, USA</conf-loc><conf-date>March, 2008</conf-date><fpage>13</fpage><lpage>23</lpage></citation></ref>
<ref id="b7-sensors-10-02770"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Broder</surname><given-names>A.</given-names></name><name><surname>Mitzenmacher</surname><given-names>M.</given-names></name></person-group><article-title>Network Applications of Bloom Filters: A Survey</article-title><source>Internet Math</source><year>2005</year><volume>1</volume><fpage>485</fpage><lpage>509</lpage></citation></ref>
<ref id="b8-sensors-10-02770"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pietro</surname><given-names>R.D.</given-names></name><name><surname>Mancini</surname><given-names>L.V.</given-names></name><name><surname>Soriente</surname><given-names>C.</given-names></name><name><surname>Spognardi</surname><given-names>A.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>Data Security in Unattended Wireless Sensor Networks</article-title><source>IEEE Trans. Comput</source><year>2009</year><volume>58</volume><fpage>1500</fpage><lpage>1511</lpage><pub-id pub-id-type="doi">10.1109/TC.2009.109</pub-id></citation></ref>
<ref id="b9-sensors-10-02770"><label>9.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Ma</surname><given-names>D.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>DISH: Distributed Self-Healing in Unattended Sensor Networks</article-title><conf-name>Proceedings of International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS)</conf-name><conf-loc>Detroit, MI, USA</conf-loc><conf-date>November 2008</conf-date><fpage>47</fpage><lpage>62</lpage></citation></ref>
<ref id="b10-sensors-10-02770"><label>10.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Pietro</surname><given-names>R.D.</given-names></name><name><surname>Ma</surname><given-names>D.</given-names></name><name><surname>Soriente</surname><given-names>C.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>POSH: Proactive co-Operative Self-Healing in Unattended Wireless Sensor Networks</article-title><conf-name>Proceedings of IEEE International Symposium on Reliable Distributed Systems (SRDS)</conf-name><conf-loc>Napoli, Italy</conf-loc><conf-date>October 2008</conf-date><fpage>185</fpage><lpage>194</lpage></citation></ref>
<ref id="b11-sensors-10-02770"><label>11.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ma</surname><given-names>D.</given-names></name><name><surname>Soriente</surname><given-names>C.</given-names></name><name><surname>Tsudik</surname><given-names>G.</given-names></name></person-group><article-title>New Adversary and New Threats: Security in Unattended Sensor Networks</article-title><source>IEEE Netw</source><year>2009</year><volume>23</volume><fpage>43</fpage><lpage>88</lpage></citation></ref>
<ref id="b12-sensors-10-02770"><label>12.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Yavuz</surname><given-names>A.</given-names></name><name><surname>Ning</surname><given-names>P.</given-names></name></person-group><article-title>Hash-Based Sequential Aggregate and Forward Secure Signature for Unattended Wireless Sensor Networks</article-title><conf-name>Proceedings of the Sixth Annual International Conference on Mobile and Ubiquitous Systems: Computing, Networking and Services (MobiQuitous)</conf-name><conf-loc>Toronto, Canada</conf-loc><conf-date>July 2009</conf-date></citation></ref>
<ref id="b13-sensors-10-02770"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Boukerche</surname><given-names>A.</given-names></name><name><surname>Turgut</surname><given-names>D.</given-names></name></person-group><article-title>Secure Time Synchronization Protocols for Wireless Sensor Networks</article-title><source>IEEE Wirel. Commun</source><year>2007</year><volume>14</volume><fpage>64</fpage><lpage>69</lpage></citation></ref>
<ref id="b14-sensors-10-02770"><label>14.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ganeriwal</surname><given-names>S.</given-names></name><name><surname>Pöpper</surname><given-names>C.</given-names></name><name><surname>Čapkun</surname><given-names>S.</given-names></name><name><surname>Srivastava</surname><given-names>M.B.</given-names></name></person-group><article-title>Secure Time Synchronization in Sensor Networks</article-title><source>ACM Trans. Inf. Syst. Secur</source><year>2008</year><volume>11</volume><fpage>24:1</fpage><lpage>24:35</lpage></citation></ref>
<ref id="b15-sensors-10-02770"><label>15.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sun</surname><given-names>K.</given-names></name><name><surname>Ning</surname><given-names>P.</given-names></name><name><surname>Wang</surname><given-names>C.</given-names></name></person-group><article-title>Secure and Resilient Clock Synchronization in Wireless Sensor Networks</article-title><source>IEEE J. Sel. Area. Commun</source><year>2006</year><volume>24</volume><fpage>395</fpage><lpage>408</lpage><pub-id pub-id-type="doi">10.1109/JSAC.2005.861396</pub-id></citation></ref>
<ref id="b16-sensors-10-02770"><label>16.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Capkun</surname><given-names>S.</given-names></name><name><surname>Hubaux</surname><given-names>J.P.</given-names></name></person-group><article-title>Secure Positioning of Wireless Devices with Application to Sensor Networks</article-title><conf-name>Proceedings of IEEE Conference on Computer Communications (INFOCOM)</conf-name><conf-loc>Miami, FL, USA</conf-loc><conf-date>March, 2005</conf-date><fpage>1917</fpage><lpage>1928</lpage></citation></ref>
<ref id="b17-sensors-10-02770"><label>17.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Capkun</surname><given-names>S.</given-names></name><name><surname>Hubaux</surname><given-names>J.P.</given-names></name></person-group><article-title>Secure Positioning in Wireless Networks</article-title><source>IEEE J. Sel. Area. Commun</source><year>2006</year><volume>24</volume><fpage>221</fpage><lpage>232</lpage><pub-id pub-id-type="doi">10.1109/JSAC.2005.861380</pub-id></citation></ref>
<ref id="b18-sensors-10-02770"><label>18.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Lazos</surname><given-names>L.</given-names></name><name><surname>Poovendran</surname><given-names>R.</given-names></name></person-group><article-title>Serloc: Secure Range-Independent Localization for Wireless Sensor Networks</article-title><conf-name>Proceedings of ACM Workshop on Wireless Security (WiSe)</conf-name><conf-loc>Philadelphia, PA, USA</conf-loc><conf-date>October, 2004</conf-date><fpage>21</fpage><lpage>30</lpage></citation></ref>
<ref id="b19-sensors-10-02770"><label>19.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname><given-names>Y.</given-names></name><name><surname>Liu</surname><given-names>W.</given-names></name><name><surname>Lou</surname><given-names>W.</given-names></name><name><surname>Fang</surname><given-names>Y.</given-names></name></person-group><article-title>Location-based Compromise Tolerant Security Mechanisms for Wireless Sensor Networks</article-title><source>IEEE J. Sel. Area. Commun</source><year>2006</year><volume>24</volume><fpage>247</fpage><lpage>260</lpage><pub-id pub-id-type="doi">10.1109/JSAC.2005.861382</pub-id></citation></ref>
<ref id="b20-sensors-10-02770"><label>20.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Karp</surname><given-names>B.</given-names></name><name><surname>Kung</surname><given-names>H.T.</given-names></name></person-group><article-title>GPSR: Greedy Perimeter Stateless Routing for Wireless Networks</article-title><conf-name>Proceedings of the 6th Annual ACM International Conference on Mobile Computing and Networking (MobiCom)</conf-name><conf-loc>Boston, MA, USA</conf-loc><conf-date>August 2000</conf-date><fpage>243</fpage><lpage>254</lpage></citation></ref>
<ref id="b21-sensors-10-02770"><label>21.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ma</surname><given-names>L.</given-names></name><name><surname>Cheng</surname><given-names>X.</given-names></name><name><surname>Liu</surname><given-names>F.</given-names></name><name><surname>An</surname><given-names>F.</given-names></name><name><surname>Rivera</surname><given-names>J.</given-names></name></person-group><article-title>iPAK: An <italic>In-situ</italic> Pairwise Key Bootstrapping Scheme for Wireless Sensor Networks</article-title><source>IEEE Trans. Parall. istrib. Sys</source><year>2007</year><volume>18</volume><fpage>1174</fpage><lpage>1184</lpage><pub-id pub-id-type="doi">10.1109/TPDS.2007.1063</pub-id></citation></ref>
<ref id="b22-sensors-10-02770"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ren</surname><given-names>K.</given-names></name><name><surname>Lou</surname><given-names>W.</given-names></name><name><surname>Zhang</surname><given-names>Y.</given-names></name></person-group><article-title>LEDS: Providing Location-aware End-to-end Data Security in Wireless Sensor Networks</article-title><source>IEEE Trans. Mob. Comput</source><year>2006</year><volume>7</volume><fpage>585</fpage><lpage>598</lpage></citation></ref>
<ref id="b23-sensors-10-02770"><label>23.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Yu</surname><given-names>C.M.</given-names></name><name><surname>Lu</surname><given-names>C.S.</given-names></name><name><surname>Kuo</surname><given-names>S.Y.</given-names></name></person-group><article-title>A Simple Non-Interactive Pairwise Key Establishment Scheme in Sensor Networks</article-title><conf-name>Proceedings of IEEE Communications Society Conference on Sensor, Mesh and Ad hoc Communications and Networks (SECON)</conf-name><conf-loc>Rome, Italy</conf-loc><conf-date>June, 2009</conf-date></citation></ref>
<ref id="b24-sensors-10-02770"><label>24.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ye</surname><given-names>F.</given-names></name><name><surname>Luo</surname><given-names>H.</given-names></name><name><surname>Lu</surname><given-names>S.</given-names></name><name><surname>Zhang</surname><given-names>L.</given-names></name></person-group><article-title>Statistical En-route Filtering of Injected False Data in Sensor Networks</article-title><source>IEEE J. Sel. Area. Commun</source><year>2005</year><volume>23</volume><fpage>839</fpage><lpage>850</lpage><pub-id pub-id-type="doi">10.1109/JSAC.2005.843561</pub-id></citation></ref>
<ref id="b25-sensors-10-02770"><label>25.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhu</surname><given-names>S.</given-names></name><name><surname>Setia</surname><given-names>S.</given-names></name><name><surname>Jajodia</surname><given-names>S.</given-names></name><name><surname>Ning</surname><given-names>P.</given-names></name></person-group><article-title>Interleaved Hop-by-hop Authentication against False Data Injection Attacks in Sensor Networks</article-title><source>ACM Trans. Sens. Netw</source><year>2007</year><volume>3</volume><fpage>14:1</fpage><lpage>14:33</lpage></citation></ref>
<ref id="b26-sensors-10-02770"><label>26.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Chan</surname><given-names>H.</given-names></name><name><surname>Perrig</surname><given-names>A.</given-names></name><name><surname>Song</surname><given-names>D.</given-names></name></person-group><article-title>Random Key Predistribution Schemes for Sensor Networks</article-title><conf-name>Proceedings of IEEE Symposium on Security and Privacy (S&amp;P)</conf-name><conf-loc>Berkeley, CA, USA</conf-loc><conf-date>May, 2003</conf-date><fpage>197</fpage><lpage>214</lpage></citation></ref>
<ref id="b27-sensors-10-02770"><label>27.</label><citation citation-type="web"><person-group person-group-type="author"><collab>TELOSB</collab></person-group><comment>Availalbe online: <ext-link xlink:href="http://www.xbow.com/Products/Product-pdf-files/Wireless-pdf/TelosB-Datasheet.pdf" ext-link-type="uri">http://www.xbow.com/Products/Product-pdf-files/Wireless-pdf/TelosB-Datasheet.pdf</ext-link> (accessed on 21 December 2009).</comment></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Table</title>
<fig id="f1-sensors-10-02770" position="float">
<label>Figure 1.</label>
<caption>
<p>In a UWSN, the itinerant sink roams around the sensing region and collects the data sensed by sensors.</p></caption>
<graphic xlink:href="sensors-10-02770f1.gif"/></fig>
<fig id="f2-sensors-10-02770" position="float">
<label>Figure 2.</label>
<caption>
<p>The adversary also roams around the sensing region and compromises the sensors. In this plot, the adversary can compromise one sensor at each round, and three sensors are compromised by the adversary after the first three rounds of a collection interval.</p></caption>
<graphic xlink:href="sensors-10-02770f2.gif"/></fig>
<fig id="f3-sensors-10-02770" position="float">
<label>Figure 3.</label>
<caption>
<p>Expected number <italic>ν</italic>(<italic>n, t</italic>) of sensors involved in the authentication of the sensed data of one sensor.</p></caption>
<graphic xlink:href="sensors-10-02770f3.gif"/></fig>
<fig id="f4-sensors-10-02770" position="float">
<label>Figure 4.</label>
<caption>
<p><italic>R</italic><sub>0.5</sub>’s in different settings.</p></caption>
<graphic xlink:href="sensors-10-02770f4.gif"/></fig>
<fig id="f5-sensors-10-02770" position="float">
<label>Figure 5.</label>
<caption>
<p>The algorithm of sensing phase.</p></caption>
<graphic xlink:href="sensors-10-02770f5.gif"/></fig>
<fig id="f6-sensors-10-02770" position="float">
<label>Figure 6.</label>
<caption>
<p>The algorithm of receiving/forwarding phase.</p></caption>
<graphic xlink:href="sensors-10-02770f6.gif"/></fig>
<fig id="f7-sensors-10-02770" position="float">
<label>Figure 7.</label>
<caption>
<p>The algorithm of verification procedure.</p></caption>
<graphic xlink:href="sensors-10-02770f7.gif"/></fig>
<fig id="f8-sensors-10-02770" position="float">
<label>Figure 8.</label>
<caption>
<p>The network topology in the example.</p></caption>
<graphic xlink:href="sensors-10-02770f8.gif"/></fig>
<fig id="f9-sensors-10-02770" position="float">
<label>Figure 9.</label>
<caption>
<p><italic>P<sub>AAD</sub></italic> in the setting of <italic>n</italic> = 100, <italic>k</italic> = 10, and |<italic>N</italic><sub>1</sub>| = 10.</p></caption>
<graphic xlink:href="sensors-10-02770f9.gif"/></fig>
<fig id="f10-sensors-10-02770" position="float">
<label>Figure 10.</label>
<caption>
<p>The ratio of energy saving of our AAD method over ExCo in different settings.</p></caption>
<graphic xlink:href="sensors-10-02770f10.gif"/></fig>
<fig id="f11-sensors-10-02770" position="float">
<label>Figure 11.</label>
<caption>
<p><italic>R</italic><sub>0.5</sub>’s of AAD in different settings (|<italic>N</italic><sub>1</sub>| = 5).</p></caption>
<graphic xlink:href="sensors-10-02770f11.gif"/></fig>
<fig id="f12-sensors-10-02770" position="float">
<label>Figure 12.</label>
<caption>
<p><italic>R</italic><sub>0.5</sub>’s of AAD in different settings (|<italic>N</italic><sub>1</sub>| = 10).</p></caption>
<graphic xlink:href="sensors-10-02770f12.gif"/></fig>
<table-wrap id="t1-sensors-10-02770" position="float">
<label>Table 1.</label>
<caption>
<p>Notation table.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th align="center" valign="middle">Notation</th>
<th align="center" valign="middle">Description</th></tr></thead>
<tbody>
<tr>
<td align="center" valign="middle"><italic>s<sub>j</sub></italic></td>
<td align="center" valign="middle">The sensor <italic>j</italic></td></tr>
<tr>
<td align="center" valign="middle"><italic>r</italic></td>
<td align="center" valign="middle">The <italic>r</italic>-th round</td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">The data sensed by <italic>s<sub>j</sub></italic> at round <italic>r</italic></td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">The key used by <italic>s<sub>j</sub></italic> at round <italic>r</italic></td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">The encryption of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> with key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>h</mml:mi></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">The hash value of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> with key 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>S</mml:mi></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">A random subset of sensors selected by <italic>s<sub>j</sub></italic> at round <italic>r</italic></td></tr>
<tr>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>t</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>r</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula></td>
<td align="center" valign="middle">The number of co-authenticators selected by <italic>s<sub>j</sub></italic> at round <italic>r</italic></td></tr></tbody></table></table-wrap></sec></back></article>
