A Secure LEACH-PRO Protocol Based on Blockchain
Abstract
:1. Introduction
1.1. Contributions
- We propose a security protocol (SLEACH-PRO) based on blockchain technology to secure WSNs.
- Burrows-Abadi-Needham (BAN) logic and the Automated Validation of Internet Security Protocols and Applications (AVISPA) tool are used to prove the security analysis and properties of the proposed SLEACH-PRO protocol against man in the middle (MITM) and replay attacks.
- The SLEACH-PRO is evaluated and compared with other related protocols regarding computational cost.
- SLEACH-PRO relies on hierarchical routing protocols based on selecting the cluster heads to perform transmission and processing operations to provide power to the rest of the devices. In addition, the sensor nodes in the SLEACH-PRO protocol are built on a probabilistic mechanism that identifies CHs based on the highest residual power and lowest distance from the base station, resulting in more efficient energy use.
1.2. Organization
2. Related Work
3. Motivation and Problem Statement
4. Methodology
5. Proposed SLEACH-PRO Protocol
5.1. Network Model
5.2. CH Selection Criteria
5.3. Network Phases of the SLEACH-PRO Protocol
5.3.1. Node’s Initialization Phase
- BS chooses a finite field Fq over q > 2160;
- BS chooses an elliptic curve Eq (a, b): y2 mod q = (x3 + ax + b) mod q with order n over Fq, where a, b € F and (4a3 + 27b2) ≠ 0 mod q;
- BS chooses a base point Q of order n over Eq (a, b);
- BS publishes Eq (a, b), Ek()/Dk() and Q;
- The SN and USR must register to BS to generate their private/public key pair (dSN/USN) and (dUSR/UUSR). The private/public key pair of BS is (dBS/UBS), where USN = dSN.Q, UUSR = dUSR.Q and UBS =dBS.Q.
5.3.2. Node’s Registration Phase
5.3.3. Node’s Authentication Phase
Cluster Head
- Verify the timestamp and its validity;
- By querying the identification information of a node in the blockchain, the CH verifies whether it already exists in the blockchain or not. If a node exists, the Verify function fails;
- Verify the BS identification IDBS and its validity;
- The smart contract verifies the CardID_CH and its validity using the IDBS and IDCH in the Request_of_Authentication transaction request message and verifies that the hash function is signed using the base station (BS)’s public key in the message. By calculating the hash value and comparing it with the message’s hash value, the smart contract determines whether the message hash is valid;
Sensor Node
- Verify the timestamp and its validity;
- By querying the identification information of a node in the blockchain, the sensor node verifies whether it already exists in the blockchain or not. If a node exists, the Verify function fails;
- Verify if the IDCH CH node exists on the blockchain. The registration fails if CH doesn’t exist;
- Verify BSn identification IDBS and its validity;
- The smart contract verifies the CardID_SN and its validity using the IDBS and IDSN in the Request_of_Authentication transaction request message and verifies that the hash function is signed using the BS’s public key in the message. Smart contracts calculate their hash values and compare them with the hash values contained within messages.
End User
- Verify the timestamp and its validity;
- By querying the identification information of a node in the blockchain, the user verifies whether it already exists in the blockchain or not. If the user exists, the Verify function fails;
- Verify the BS identification IDBS and its validity;
- The smart contract verifies the CardID_USR and its validity using the IDBS and IDUSR in the Request_of_ Authentication transaction request message and verifies that the hash function is signed using the BS’s public key in the message. By calculating the hash value and comparing it with the message’s hash value, the smart contract determines whether the message hash is valid.
5.3.4. Data Exchange Phase
6. Security Analysis of the SLEACH-PRO Protocol
6.1. SLEACH-PRO Using BAN Logic
6.1.1. Initialization Phase
6.1.2. Registration Phase
6.1.3. Authentication Phase
6.1.4. Data Exchange Phase
6.2. Formal Security Analysis Using AVISPA
6.2.1. Proposed SLEACH-PRO Protocol
- The SN chooses an integer rSN ∈ Zq at random, calculates HSN = H (rSN ‘|| dSN) and RSN = HSN.Q, and then calculates the security parameter KSN = dSN. UBS = dSN. dBS.Q, and the certificate CSN_BS = H (IDSN || RSN || KSN). Next, the sensor sends the message (IDSN, request) and sends the certificate after it is signed with its private key (IDSN, RSN, {CSN_BS}_DSN) to the BS and USR.
- The USR receives the request message from the sensor (Request, IDSN), selects a random number rUSR ∈ Zq, and then computes HUSR = H (rUSR’||dUSR) and RUSR = HUSR.Q. Then, the USR computes the security parameter KUSR = dUSR·UBS = dUSR·dBSQ and the Certificate CUSR_BS= H(IDUSR||RUSR||KUSR). The user sends the message (IDUSR, Response) and sends the certificate after it is signed with its private key (IDUSR, RUSR, {CUSR_BS}_DUSR) to the BS and SN.
- When the BS receives the messages (IDSN, RSN, {CSN_BS}_DSN) and (IDUSR, RUSR, {CUSR_BS }_DUSR) from the SN and USR, it calculates the security parameters KSNN = dBS.USN = dSN.dBS .Q and KUSRR = dBS.UUSR = dUSR.dBS.Q. After that, it computes ¯CSN_BS= H(IDSN||RSN||KSNN) using the RSN in the message received from the SN and KSNN computed by the BS. The BS then validates the condition ¯CSN_BS =? CSN_BS. The USR receives a failure-of-authentication message if the values are not equal. Otherwise, the BS computes CBS_SN = H(IDUSR||RUSR||KSNN) and sends the certificate after it is signed with its private key (IDUSR, RUSR, {CBS_SN}_DBS) to the SN. Thereafter, the BS computes ¯CUSR_BS = H (IDUSR||RUSR||KUSRR) using the RUSR in the message received from the USR and the KUSRR computed by the BS. The BS validates the condition ¯CUSR_BS =? CUSR_BS. If it is not equal, the BS notifies the SN that the authentication failed. Otherwise, the BS computes CBS_USR = H (IDSN||RSN||KUSRR) and sends the certificate after it is signed with its private key (IDSN, RSN, {CBS_USR}_DBS) to the USR.
- When the sensor receives the message (IDUSR, RUSR, {CBS_SN}_DBS), the SN computes CBS_SN = H (IDUSR||RUSR||KSNN) by using his own RSN and KSN that was previously generated and the RUSR in the received message. After that, the SN validates the condition ¯CBS_SN =? CBS_SN. If they are equal, the SN computes the shared key SHK = H (IDSN||IDUSR||RSN||RUSR||K), where the security parameter K = HSN·RUSR = HSN·HUSR·Q. Otherwise, the SN closes the session. When the user receives the message (IDSN,RSN, {CBS_USR}_DBS), the USR computes ¯CBS_USR = H(IDSN||RSN||KUSRR) by using their own RUSR and KUSR that was previously generated and the RSN in the received message. After that, the USR validates the condition ¯CBS_USR =? CBS_OSR. If they are equal, the USR computes the shared key SHK = H (IDSN||IDUSR||RSN||RUSR||K), where the security parameter K = HUSR·RSN = HUSR·HSN·Q. Otherwise, the USR closes the session.
6.2.2. Simulation Results
6.3. Informal Security Analysis
6.3.1. Integrity
6.3.2. Authentication and Authorization
6.3.3. Confidentiality and Privacy
6.3.4. Availability
6.3.5. Non-Repudiation
6.3.6. Sybil Attack
6.3.7. Compromised CH Attack
6.3.8. Message Replay Attack
6.3.9. Key-Compromise Impersonation Attack
6.3.10. Denial of Service
6.3.11. Man in the Middle Attack
6.3.12. Spoofing Attack
6.3.13. Message Replacement Attack
7. Analysis of Performance
8. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Kocakulak, M.; Butun, I. An overview of Wireless Sensor Networks towards internet of things. In Proceedings of the 2017 IEEE 7th Annual Computing and Communication Workshop and Conference (CCWC), Las Vegas, NV, USA, 9–11 January 2017; pp. 1–6. [Google Scholar]
- Chaudhary, A.; Verma, B.; Gupta, S. Prosperity, vulnerabilities and security threats in WSN. Int. J. Adv. Res. Comp. Sci. 2012, 3, 269–272. [Google Scholar]
- Simon, G.; Maróti, M.; Lédeczi, Á.; Balogh, G.; Kusy, B.; Nádas, A.; Pap, G.; Sallai, J.; Frampton, K. Sensor network-based countersniper system. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems, Baltimore, MD, USA, 3–5 November 2004; Association for Computing Machinery: Baltimore, MD, USA, 2004; pp. 1–12. [Google Scholar]
- Yick, J.; Mukherjee, B.; Ghosal, D. Analysis of a prediction-based mobility adaptive tracking algorithm. In Proceedings of the 2nd International Conference on Broadband Networks, Boston, MA, USA, 7 October 2005; pp. 753–760. [Google Scholar] [CrossRef]
- Buczak, A.; Jamalabad, V. Self-organization of a heterogeneous sensor network by genetic algorithms. Intell. Eng. Syst. Through Artif. Neural Netw. 1998, 8, 259–264. [Google Scholar]
- Lin, C.; Gerla, M. Adaptive clustering for mobile wireless networks. IEEE J. Sel. Areas Commun. 1997, 15, 1265–1275. [Google Scholar] [CrossRef] [Green Version]
- Heinzelman, W.R.; Chandrakasan, A.; Balakrishnan, H. Energy-efficient communication protocol for wireless microsensor networks. In Proceedings of the 33rd Annual Hawaii International Conference on System Sciences, Maui, HI, USA, 4–7 January 2000. [Google Scholar]
- Yousif, Z.; Hussain, I.; Djahel, S.; Hadjadj-Aoul, Y. A Novel Energy-Efficient Clustering Algorithm for More Sustainable Wireless Sensor Networks Enabled Smart Cities Applications. J. Sens. Actuator Netw. 2021, 10, 50. [Google Scholar] [CrossRef]
- Lu, Q.; Xu, X. Adaptable Blockchain-Based Systems: A Case Study for Product Traceability. IEEE Softw. 2017, 34, 21–27. [Google Scholar] [CrossRef]
- Zhao, Y.; Li, Y.; Mu, Q.; Yang, B.; Yu, Y. Secure Pub-Sub: Blockchain-Based Fair Payment With Reputation for Reliable Cyber Physical Systems. IEEE Access 2018, 6, 12295–12303. [Google Scholar] [CrossRef]
- Hsiao, S.-J.; Sung, W.-T. Employing Blockchain Technology to Strengthen Security of Wireless Sensor Networks. IEEE Access 2021, 9, 72326–72341. [Google Scholar] [CrossRef]
- Kumar, M.H.; Mohanraj, V.; Suresh, Y.; Senthilkumar, J.; Nagalalli, G. Real Time Two Hop Neighbour Strategic Secure Routing with Attribute Specific Blockchain Encryption Scheme for Improved Security in Wireless Sensor Networks. Int. J. Comput. Netw. Appl. 2021, 8, 300. [Google Scholar] [CrossRef]
- Aziz, U.; Gurmani, M.U.; Awan, S.; Sajid, M.B.E.; Amjad, S.; Javaid, N. A Blockchain Based Secure Authentication and Routing Mechanism for Wireless Sensor Networks. In Proceedings of the Innovative Mobile and Internet Services in Ubiquitous Computing, Asan, Korea, 1–3 July 2021; pp. 87–95. [Google Scholar] [CrossRef]
- Yang, J.; He, S.; Xu, Y.; Chen, L.; Ren, J. A Trusted Routing Scheme Using Blockchain and Reinforcement Learning for Wireless Sensor Networks. Sensors 2019, 19, 970. [Google Scholar] [CrossRef] [Green Version]
- Abd El-Moghith, I.A.; Darwish, S.M. Towards Designing a Trusted Routing Scheme in Wireless Sensor Networks: A New Deep Blockchain Approach. IEEE Access 2021, 9, 103822–103834. [Google Scholar]
- Jerbi, W.; Cheikhrouhou, O.; Guermazi, A.; Boubaker, A.; Trabelsi, H. A Novel Blockchain Secure to Routing Protocol in WSN. In Proceedings of the IEEE 22nd International Conference on High Performance Switching and Routing (HPSR), Paris, France, 7–10 June 2021. [Google Scholar]
- Awan, S.; Sajid, M.B.E.; Amjad, S.; Aziz, U.; Gurmani, U.; Javaid, N. Blockchain Based Authentication and Trust Evaluation Mechanism for Secure Routing in Wireless Sensor Networks. In Proceedings of the Innovative Mobile and Internet Services in Ubiquitous Computing, Asan, Korea, 1–3 July 2022. [Google Scholar] [CrossRef]
- Cui, Z.; Fei, X.; Zhang, S.; Cai, X.; Cao, Y.; Zhang, W.; Chen, J. A Hybrid Blockchain-Based Identity Authentication Scheme for Multi-WSN. IEEE Trans. Serv. Comput. 2020, 13, 241–251. [Google Scholar] [CrossRef]
- Burrows, M.; Abadi, M.; Needham, R.M. A logic of authentication. Proc. R. Soc. A Math. Phys. Eng. Sci. 1989, 426, 233–271. [Google Scholar]
- AVISPA. Automated Validation of Internet Security Protocols and Applications. Available online: http://www.avispa-project.org (accessed on 4 December 2020).
- Vigano, L. Automated security protocol analysis with the AVISPA tool. Electron. Notes Theor. Comput. Sci. 2006, 155, 61–86. [Google Scholar] [CrossRef] [Green Version]
- Chatterjee, K.; De, A.; Gupta, D. A Secure and Efficient Authentication Protocol in Wireless Sensor Network. Wirel. Pers. Commun. 2015, 81, 17–37. [Google Scholar] [CrossRef]
- Razali, M.F.; Rusli, M.E.; Jamil, N.; Yussof, S. TPAL: A Protocol for Node Authentication in IoT. J. Comput. Sci. 2018, 14, 1401–1411. [Google Scholar] [CrossRef] [Green Version]
- Gupta, R. Elliptic Curve Cryptography based Secure Image Transmission in Clustered Wireless Sensor Networks. Int. J. Comput. Netw. Appl. 2021, 8, 67. [Google Scholar] [CrossRef]
- Qin, D.; Jia, S.; Yang, S.; Wang, E.; Ding, Q. A Lightweight Authentication and Key Management Scheme for Wireless Sensor Networks. J. Sens. 2016, 2016, 1547963. [Google Scholar] [CrossRef] [Green Version]
- Lu, Y.; Li, L.; Peng, H.; Yang, Y. An Energy Efficient Mutual Authentication and Key Agreement Scheme Preserving Anonymity for Wireless Sensor Networks. Sensors 2016, 16, 837. [Google Scholar] [CrossRef] [Green Version]
- Farash, M.S.; Turkanović, M.; Kumari, S.; Hölbl, M. An efficient user authentication and key agreement scheme for heterogeneous wireless sensor network tailored for the Internet of Things environment. Ad Hoc Netw. 2016, 36, 152–176. [Google Scholar] [CrossRef]
- Porambage, P.; Schmitt, C.; Kumar, P.; Gurtov, A.; Ylianttila, M. Two-phase authentication protocol for wireless sensor networks in distributed IoT applications. In Proceedings of the 2014 IEEE Wireless Communications and Networking Conference (WCNC), Istanbul, Turkey, 6–9 April 2014; pp. 2728–2733. [Google Scholar] [CrossRef]
- Kumari, S.; Om, H. Authentication protocol for wireless sensor networks applications like safety monitoring in coal mines. Comput. Netw. 2016, 104, 137–154. [Google Scholar] [CrossRef]
- Vaidya, B.; Makrakis, D.; Mouftah, H. Two-factor mutual authentication with key agreement in wireless sensor networks. Secur. Commun. Netw. 2016, 9, 171–183. [Google Scholar] [CrossRef]
- Dhillon, P.K.; Kalra, S. A lightweight biometrics based remote user authentication scheme for IoT services. J. Inf. Secur. Appl. 2017, 34, 255–270. [Google Scholar] [CrossRef]
- Rangwani, D.; Sadhukhan, D.; Ray, S.; Khan, M.K.; Dasgupta, M. An improved privacy preserving remote user authentication scheme for agricultural wireless sensor network. Trans. Emerg. Telecommun. Technol. 2021, 32, e4218. [Google Scholar] [CrossRef]
- Kilinc, H.H.; Yanik, T. A Survey of SIP Authentication and Key Agreement Schemes. IEEE Commun. Surv. Tutor. 2013, 16, 1005–1023. [Google Scholar] [CrossRef]
Reference | Network | Year | Security Algorithm | Result |
---|---|---|---|---|
[12] | Wireless Sensor Network | 2021 | Attribute-based blockchain Encryption. | Higher performance compared to other methods mentioned in their research. |
[13] | 2021 | Based on CAN for authenticating WSN nodes, SHA256 for verifying messages and cooperating CH responsible for communication with BS. Blockchain with Encryption | Performance improvement for secure routing and increased data security performance. | |
[14] | 2019 | For routing nodes to identify the next nod, reinforcement learning method was used. Records were kept of routing information contracts that are intelligent. Blockchain essentially functions as a database. Use of distributed ledgers. This algorithm is more efficient at processing transactions. | Their system protects against malicious node attacks, throughput and latency are excellent. | |
[15] | 2021 | The power and reliability of routing information was increased by combining Markov with blockchain, which is a distributed ledger with decentralization, Tamper resistance, and traceability features. | Hostile node attacks were eliminated with ease, and device latency was excellent. | |
[16] | 2021 | A decentralized authentication mechanism, based on a blockchain. | The BSI protocol is efficient and robust, which speeds up computing time and reduces power consumption | |
[18] | 2020 | Hybrid blockchain-based authentication and trust evaluation mechanism. The private blockchain is applied to CH while the public blockchain is applied to BS; the smart contract makes sure whether the CH node exists or not. | High throughput, packet delivery and can deal with malicious nodes effectively. |
Notations | Descriptions |
---|---|
SN | Sensor node |
USR | End user |
BS | Base station |
CH | Cluster head |
Q | A large prime number of k-bit length and q > 3 |
Fq | A finite field |
Eq (a, b) | An elliptic curve defined over on Fq with prime order n |
K | The security parameter |
C | The certificate based on ECC |
RSN | Random point of the sensor node |
RUSR | Random point of the user |
RCH | Random point of the cluster head |
Q | A base point of order n over Eq(a, b) |
(d, U) | The private/public key pair of the entity, where U = d .Q |
H() | One-way cryptographic hash function |
IDSN | Identity of sensor node |
IDUSR | Identity of end user |
IDBS | Identity of base station |
IDCH | Identity of cluster head |
SHK | Shared key between the sensor node and user |
Î | The Adversary |
Symbol | Usage |
---|---|
SN, CH, BS, USR | Principle |
Public key | |
N | Shared key |
Private key | |
{M}KN | Message encrypted by public key |
ECC-P | Elliptic curve parameter |
TN | Timestamp |
Symbol | Usage |
---|---|
BS |≡ |SN | The public key of node SN believes the BS |
BS |≡ |USR | The public key of node USR believes BS |
SN |≡ BS |~ |SN | If just the nodes are signed and have been provided the BS’s public key, the BS believes node SN. |
C |≡ BS |~ |CH | If just the nodes are signed and have been provided the BS’s public key, the BS believes node CH. |
C |≡ BS |~ |USR | If just the nodes have been signed and given the BS’s public key, the BS believes node USR. |
Notation | Description | Execution Time (ms) |
---|---|---|
Th | Execution time of the hash function | 0.0023 |
Te | Execution time of the symmetric encryption/decryption | 0046 |
TPM | Execution time of the elliptic curve point multiplication | 2.226 |
TPA | Execution time of the elliptic curve point multiplication | 0.0288 |
Protocol | Total Computation Time | Total Cost |
---|---|---|
Chatterjee et al. [22] | 4Th + 3TPM + 3TPA + 7Te | 6.8058 ms |
Razali et al. [23] | 6 Th + 12 Te | 0.069 ms |
Gupta [24] | 5Th + 3TPM + 3TPA + 5Te | 6.7989 ms |
Qin et al. [25] | 4Th + 6Te | 0.0368 ms |
Lu et al. [26] | 27Th + 12Te + | 0.1173 ms |
Farash et al. [27] | 36Th + 4Te | 0.1012 ms |
Porambage et al. [28] | 6 Th + 4TPM + 2TPA | 8.9754 ms |
Kumari and Om [29] | 24 Th | 0.0552 ms |
Vaidya et al. [30] | 11 Th | 0.0253 ms |
Dhillon and Kalra [31] | 23 Th + 4Te | 0.0759 ms |
Rangwani et al. [32] | 15Th + 4TPM + 4Te | 8.9560 ms |
SLEACH-PRO | 22 Th + 1 Te + 10 TPM | 0.0506 ms |
Protocols | SF1 | SF2 | SF3 | SF4 | SF5 | SF6 | SF7 | SF8 | SF9 | SF10 | SF11 | SF12 | SF13 | SF14 | SF15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Cui et al. [18] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | ✓ | ✓ | ✓ | ☓ | ☓ |
Chatterjee et al. [22] | ☓ | - | ☓ | ☓ | ✓ | ☓ | ☓ | ✓ | ☓ | ☓ | - | - | ✓ | ✓ | ☓ |
Gupta [24] | ✓ | - | ✓ | ✓ | ✓ | ☓ | ☓ | ☓ | ✓ | - | ✓ | ✓ | ✓ | ☓ | ✓ |
Qin et al. [25] | - | - | ✓ | ✓ | ✓ | ☓ | ☓ | ☓ | ✓ | ☓ | ✓ | ✓ | ✓ | ☓ | ☓ |
Lu et al. [26] | - | - | - | - | ☓ | ✓ | ✓ | ☓ | ✓ | - | - | ✓ | ✓ | ✓ | ✓ |
Farash et al. [27] | - | - | - | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | ✓ | ✓ | ✓ | ✓ | ✓ |
Porambage et al. [28] | - | - | - | ☓ | ☓ | ✓ | ✓ | ✓ | ✓ | ✓ | ☓ | ✓ | ✓ | ☓ | ☓ |
Kumari and Om [29] | ✓ | - | - | ✓ | - | - | ✓ | ☓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ |
Vaidya et al. [30] | ✓ | - | - | ✓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ☓ | ☓ | ✓ | ☓ | ☓ |
Dhillon and Kalra [31] | - | - | - | ✓ | ✓ | ✓ | ✓ | ☓ | - | ✓ | ✓ | ✓ | ✓ | ☓ | ✓ |
Rangwani et al. [32] | - | - | - | ✓ | ✓ | ✓ | ✓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ☓ | ✓ |
SLEACH-PRO | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Aljumaie, G.S.; Alhakami, W. A Secure LEACH-PRO Protocol Based on Blockchain. Sensors 2022, 22, 8431. https://doi.org/10.3390/s22218431
Aljumaie GS, Alhakami W. A Secure LEACH-PRO Protocol Based on Blockchain. Sensors. 2022; 22(21):8431. https://doi.org/10.3390/s22218431
Chicago/Turabian StyleAljumaie, Ghada Sultan, and Wajdi Alhakami. 2022. "A Secure LEACH-PRO Protocol Based on Blockchain" Sensors 22, no. 21: 8431. https://doi.org/10.3390/s22218431
APA StyleAljumaie, G. S., & Alhakami, W. (2022). A Secure LEACH-PRO Protocol Based on Blockchain. Sensors, 22(21), 8431. https://doi.org/10.3390/s22218431