Abstract
Due to the heterogeneity of devices available in the Internet of Things and the limitations of the resources connected to it, simplifying and lightening the algorithms used in the Internet of Things is an interesting area of study for researchers. One of the critical areas in the Internet of Things is the secret key establishment in communicating parties to make secure communication. The importance of communication security, on the one hand, and the need to create lightweight algorithms in the Internet of Things, on the other hand, have created an additional incentive to establish a lightweight key agreement protocol. Therefore, we present a lightweight method for key agreement in this article, while specifying the requirements of an appropriate key agreement protocol. To reduce the communication overhead, we implicitly perform operations of establishing the agreed key by sending a message. The results of analyzing the proposed method show a relative decrease compared to other methods concerning the number of main operations. Furthermore, the evaluation of the proposed method using formal tools indicates the success of establishing the agreed key, authentication of the communication parties, and also resistance to the relevant attacks.
Similar content being viewed by others
Data Availability
Enquiries about data availability should be directed to the authors.
References
Gupta, R., Tanwar, S., Tyagi, S., & Kumar, N. (2019). Tactile internet and its applications in 5g era: A comprehensive review. International Journal of Communication Systems, 32(14), e3981. https://doi.org/10.1002/dac.3981
Sharma, S. K., Woungang, I., Anpalagan, A., & Chatzinotas, S. (2020). Toward tactile internet in beyond 5g era: Recent advances, current issues, and future directions. IEEE Access, 8, 56948–56991. https://doi.org/10.1109/access.2020.2980369
Maqsood, F., Ahmed, M., Mumtaz, M. & Ali, M. Cryptography: A comparative analysis for modern techniques. International Journal of Advanced Computer Science and Applications 8(6) ( 2017). https://doi.org/10.14569/ijacsa.2017.080659
Wazid, M., Das, A. K., K, V. B. & Vasilakos, A. V. LAM-CIoT: Lightweight authentication mechanism in cloud-based IoT environment. Journal of Network and Computer Applications, 150, 102496 (2020). https://doi.org/10.1016/j.jnca.2019.102496.
Nguyen, K. T., Laurent, M., & Oualha, N. (2015). Survey on secure communication protocols for the internet of things. Ad Hoc Networks, 32, 17–31. https://doi.org/10.1016/j.adhoc.2015.01.006
Braeken, A., Liyanage, M., & Jurcut, A. D. (2019). Anonymous lightweight proxy based key agreement for IoT (ALPKA). Wireless Personal Communications, 106(2), 345–364. https://doi.org/10.1007/s11277-019-06165-9
Srinivas, J., Das, A. K., Wazid, M., & Kumar, N. (2020). Anonymous lightweight chaotic map-based authenticated key agreement protocol for industrial internet of things. IEEE Transactions on Dependable and Secure Computing, 17(6), 1133–1146. https://doi.org/10.1109/tdsc.2018.2857811
Braeken, A. (2015). Efficient anonym smart card based authentication scheme for multi-server architecture. International Journal of Smart Home, 9(9), 177–184. https://doi.org/10.14257/ijsh.2015.9.9.19
Kumar, A. (2012). Survey and taxonomy of key management protocols for wired and wireless networks. International Journal of Network Security and Its Applications, 4(3), 21–40. https://doi.org/10.5121/ijnsa.2012.4302
Chen, C.-M., Xiang, B., Wu, T.-Y., & Wang, K.-H. (2018). An anonymous mutual authenticated key agreement scheme for wearable sensors in wireless body area networks. Applied Sciences, 8(7), 1074. https://doi.org/10.3390/app8071074
Mo, J., & Chen, H. (2019). A lightweight secure user authentication and key agreement protocol for wireless sensor networks. Security and Communication Networks, 2019, 1–17. https://doi.org/10.1155/2019/2136506
Santos-González, I., Rivero-García, A., Burmester, M., Munilla, J., & Caballero-Gil, P. (2020). Secure lightweight password authenticated key exchange for heterogeneous wireless sensor networks. Information Systems, 88, 101423. https://doi.org/10.1016/j.is.2019.101423
Nguyen, K. T., Oualha, N. & Laurent, M. in Authenticated key agreement mediated by a proxy re-encryptor for the internet of things 339–358 (Springer International Publishing, 2016). https://doi.org/10.1007/978-3-319-45741-3_18.
Tschofenig, H., Arkko, J., Thaler, D. & McPherson, D. Architectural considerations in smart object networking. Tech. Rep. ( 2015). https://doi.org/10.17487/rfc7452.
Green, M., & Ateniese, G. (2007). In Identity-based proxy re-encryption, pp. 288–306 Springer, Berlin Heidelberg. https://doi.org/10.1007/978-3-540-72738-5_19
Nikooghadam, M., Jahantigh, R., & Arshad, H. (2016). A lightweight authentication and key agreement protocol preserving user anonymity. Multimedia Tools and Applications, 76(11), 13401–13423. https://doi.org/10.1007/s11042-016-3704-8
Roustaei, R., Javadi, H. H. S. & Reshadi, M. Providing multi classifications of the keyagreement methods on the internet of things in the different aspects. Wireless Personal Communications, pp. 1–17 (2022). Status:Under review,WIRE-D-21-02415.
Shin, S., & Kwon, T. (2019). A lightweight three-factor authentication and key agreement scheme in wireless sensor networks for smart homes. Sensors, 19(9), 2012. https://doi.org/10.3390/s19092012
Wu, T.-Y., Wang, L., Guo, X., Chen, Y.-C., & Chu, S.-C. (2022). Sakap: Sgx-based authentication key agreement protocol in iot-enabled cloud computing. Sustainability, 14(17), 11054. https://doi.org/10.3390/su141711054
Cui, W., Cheng, R., Wu, K., Su, Y., & Lei, Y. (2021). A certificateless authenticated key agreement scheme for the power iot. Energies, 14(19), 6317. https://doi.org/10.3390/en14196317
Chen, C.-M., Deng, X., Gan, W., Chen, J., & Islam, S. (2021). A secure blockchain-based group key agreement protocol for iot. The Journal of Supercomputing, 77(8), 9046–9068. https://doi.org/10.1007/s11227-020-03561-y
Yu, Y., Hu, L., & Chu, J. (2020). A secure authentication and key agreement scheme for iot-based cloud computing environment. Symmetry, 12(1), 150. https://doi.org/10.3390/sym12010150
Safkhani, M., et al. (2020). Reseap: an ecc-based authentication and key agreement scheme for iot applications. IEEE Access, 8, 200851–200862. https://doi.org/10.1109/ACCESS.2020.3034447
Alzahrani, B. A. (2021). Secure and efficient cloud-based iot authenticated key agreement scheme for e-health wireless sensor networks. Arabian Journal for Science and Engineering, 46(4), 3017–3032. https://doi.org/10.1007/s13369-020-04905-9
Chen, C.-T., Lee, C.-C., & Lin, I.-C. (2020). Efficient and secure three-party mutual authentication key agreement protocol for wsns in iot environments. Plos One, 15(4), e0232277. https://doi.org/10.1371/journal.pone.0232277
Secure multifactor authenticated key agreement scheme for industrial iot. https://doi.org/10.1109/JIOT.2020.3024703.
Thakur, V., et al. (2022). Cryptographically secure privacy-preserving authenticated key agreement protocol for an iot network: A step towards critical infrastructure protection. Peer-to-Peer Networking and Applications, 15(1), 206–220. https://doi.org/10.1007/s12083-021-01236-w
Rana, S., Obaidat, M. S., Mishra, D., Mishra, A., & Rao, Y. S. (2022). Efficient design of an authenticated key agreement protocol for dew-assisted iot systems. The Journal of Supercomputing, 78(3), 3696–3714. https://doi.org/10.1007/s11227-021-04003-z
Braeken, A. (2022). Authenticated key agreement protocols for dew-assisted iot systems. The Journal of Supercomputing, pp. 1–21.
Rostampour, S., et al. (2022). An authentication protocol for next generation of constrained iot systems. IEEE Internet of Things Journal. https://doi.org/10.1109/JIOT.2022.3184293
Jr., M. A. S., Silva, M. V., Alves, R. C. & Shibata, T. K. Lightweight and escrow-less authenticated key agreement for the internet of things. Computer Communications, 98, 43–51 ( 2017). https://doi.org/10.1016/j.comcom.2016.05.002.
Abdalla, M., Fouque, P.-A., & Pointcheval, D. (2005). Password-based authenticated key exchange in the three-party setting, pp. 65–84, Springer, Berlin Heidelberg. https://doi.org/10.1007/978-3-540-30580-4_6
Zhang, Y., Luo, M., Choo, K.-K.R., & He, D. (2018). A general architecture for multiserver authentication key agreement with provable security. Security and Communication Networks, 2018, 1–9. https://doi.org/10.1155/2018/2462901
Forsberg, D. Use cases of implicit authentication and key establishment with sender and receiver ID binding ( IEEE, 2007). https://doi.org/10.1109/wowmom.2007.4351769.
Diffie, W., Oorschot, P. C. V., & Wiener, M. J. (1992). Authentication and authenticated key exchanges. Designs, Codes and Cryptography, 2(2), 107–125. https://doi.org/10.1007/bf00124891
Chen, L., & Kudla, C. (2003). Identity based authenticated key agreement protocols from pairings ( IEEE Comput. Soc. https://doi.org/10.1109/csfw.2003.1212715
Law, L., Menezes, A., Qu, M., Solinas, J., & Vanstone, S. (2003). Designs. Codes and Cryptography, 28(2), 119–134. https://doi.org/10.1023/a:1022595222606
Dutta, R. & Barua, R. (2005). Overview of key agreement protocols. IACR Cryptol. ePrint Arch. 289. https://eprint.iacr.org/2005/289.pdf.
Itkis, G. Forward security, adaptive cryptography: Time evolution (2004). http://www.cs.bu.edu/~itkis/pap/forward-secure-survey.pdf.
Alzaid, H., Park, D., Nieto, J. G., Boyd, C. & Foo, E. in A forward & backward secure key management in wireless sensor networks for PCS/SCADA, pp. 41–60 ( IGI Global, 2011). https://doi.org/10.4018/978-1-60960-027-3.ch003.
Rouse, M. (2018). Perfect forward secrecy. https://whatis.techtarget.com/definition/perfect-forward-secrecy.
Jurcut, A. D., Coffey, T., & Dojen, R. (2014). Design guidelines for security protocols to prevent replay and parallel session attacks. Computers and Security, 45, 255–273. https://doi.org/10.1016/j.cose.2014.05.010
Bin-Rabiah, A., Ramakrishnan, K. K., Liri, E. & Kar, K. (2018). A lightweight authentication and key exchange protocol for IoT (Internet Society, 2018). https://doi.org/10.14722/diss.2018.23004.
Kilinc, H. H., & Yanik, T. (2014). A survey of sip authentication and key agreement schemes. IEEE Communications Surveys and Tutorials, 16(2), 1005–1023. https://doi.org/10.1109/SURV.2013.091513.00050
Dojen, C. T., & R. A novel approach to the automation of logic-based security protocol verification. (2004). www.wseas.us/e-library/conferences/crete2004/papers/476-178.pdf. In: Paper presented at the WSEAS Transactions on Information Science and Applications, 1, 1243–1247.
Jurcut, A. D., Coffey, T., & Dojen, R. (2013). Establishing and fixing security protocols weaknesses using a logic-based verification tool. Journal of Communications, 8(11), 795–805. https://doi.org/10.12720/jcm.8.11.795-805
Jurcut, A. D. (2018). Automated logic-based technique for formal verification of security protocols. Journal of Advances in Computer Networks, pp. 77–85. https://doi.org/10.18178/jacn.2018.6.2.258.
Jurcut, A. D., Coffey, T. & Dojen, R. (2014). In: On the prevention and detection of replay attacks using a logic-based verification tool, pp. 128–137 ( Springer International Publishing, 2014). https://doi.org/10.1007/978-3-319-07941-7_13.
Modiri, V., Javadi, H. H. S., & Anzani, M. (2017). A novel scalable key pre-distribution scheme for wireless sensor networks based on residual design. Wireless Personal Communications, 96(2), 2821–2841. https://doi.org/10.1007/s11277-017-4326-9
Funding
The authors have no relevant financial or non-financial interests to disclose.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors have no conflicts of interest to declare that are relevant to the content of this article. No funds, grants, or other support was received.
Informed Consent
All authors consented to participate and for publication of the article.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix A: The Implementation of the Proposed and Basic Algorithms
Appendix A: The Implementation of the Proposed and Basic Algorithms
In this section we present implementation of proposed and basic algorithms. this appendix contains supplementary information that may be helpful in providing a more comprehensive understanding of the research problem.these implementations formally verify the correctness of our proposed scheme by formally analyse the security goals of the scheme.
1.1 A.1: Basic Algorithm(ALPKA)
The ALPKA protocol [6] is a lightweight key agreement approach proposed in 2019 by Braeken et al. A formalized protocol consists of three components:
-
1.
Initial assumptions (conditions that hold before the protocol starts);
-
2.
Protocol steps (the messages exchanged between the principals);
-
3.
Protocol goals (conditions that are expected to hold if the protocol terminates successfully).
1.1.1 A.1.1: Protocol Assumptions
-
A1:
TTP possess at [0] Nx;
-
A2:
TTP know at [0] NOT (Zero possess at [0] Nx);
-
A3:
TTP possess at [0] Ny;
-
A4:
TTP know at [0] NOT (Zero possess at [0] Ny);
-
A5:
TTP possess at [0] Nz;
-
A6:
TTP know at [0] NOT (Zero possess at [0] Nz);
$$\begin{aligned} Ai = H(Ui,Ny), Bi = H(Nz,Ny) XOR H(Ui,Ny), H(Nx) \end{aligned}$$ -
A7:
TTP possess at [0] H(Ui,Ny);
-
A8:
TTP know at [0] Ui possess at [0] H(H(Ui,Ny));
-
A9:
TTP possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A10:
TTP know at [0] Ui possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
$$\begin{aligned} si = H(H(Ui,Ny),Nz) \end{aligned}$$ -
A11:
TTP possess at [0] H(H(Ui,Ny),Nz);
-
A12:
TTP know at [0] Ui possess at [0] H(H(Ui,Ny),Nz);
$$\begin{aligned} Aj = H(Uj,Ny), Bj = H(Nz,Ny) XOR H(Uj,Ny),H(Nx) \end{aligned}$$ -
A13:
TTP possess at [0] H(Uj,Ny);
-
A14:
TTP know at [0] Uj possess at [0] H(H(Uj,Ny));
-
A15:
TTP possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A16:
TTP know at [0] Uj possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
$$\begin{aligned} si = H(H(Uj,Ny),Nz) \end{aligned}$$ -
A17:
TTP possess at [0] H(H(Uj,Ny),Nz);
-
A18:
TTP know at [0] Uj possess at [0] H(H(Uj,Ny),Nz);
$$\begin{aligned}{} & {} Express\; Ui\; possessions \;at \;time\; t0 \\{} & {} \quad Bi= XOR(H(Nz,Ny), \;H(Ui,Ny)), \;H(Ai)= H(H(Ui,Ny)),\; si= \\{} & {} \quad H(H(Ui,Ny),Nz); \end{aligned}$$ -
A19:
Ui possess at [0] Uj;
-
A20:
Ui possess at [0] Sk;
-
A21:
Ui possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A22:
Ui possess at [0] H(H(Ui,Ny));
-
A23:
Ui possess at [0] H(H(Ui,Ny),Nz);
-
A24:
Ui possess at [0] H(Nx);
-
A25:
Ui possess at [0] Nt;
-
A26:
Ui know at [0] NOT (ZERO possess at [0] Nt);
$$\begin{aligned}{} & {} Express \;Uj \;possessions \;at\; time \;t0 \\{} & {} \quad Bj= XOR(H(Nz,Ny), H(Uj,Ny)), \; H(Aj)= H(H(Uj,Ny)),\; sj= H(H(Uj,Ny),Ny); \end{aligned}$$ -
A27:
Uj possess at [0] Ui;
-
A28:
Uj possess at [0] Sk;
-
A29:
Uj possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A30:
Uj possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A31:
Uj possess at [0] H(H(Uj,Ny));
-
A32:
Uj possess at [0] H(H(Uj,Ny),Nz);
-
A33:
Uj possess at [0] H(Nx);
-
A34:
Uj possess at [0] H(H(H(Uj,Ny),Ny), XOR(H(Nz,Ny), H(Ui,Ny)));
$$\begin{aligned} Express \;Sk \;possessions \;at \;time \;t0 \end{aligned}$$ -
A35:
Sk possess at [0] H(Nz,Ny);
-
A36:
Sk possess at [0] H(Sk,H(Nx));
-
A37:
Sk know at[0] ( Sk receive at [1] XOR(XOR(H(Nz,Ny), H(Ui,Ny)), H(H(Sk,H(Nx)), H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny)))))) IMPLY Ui send at [1] XOR(XOR(H(Nz,Ny), H(Ui,Ny)), H(H(Sk,H(Nx)), H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny)))))));
-
A38:
Uj know at [0] (Uj receive at[2] XOR(H(XOR(H(Nz,Ny), H(Uj,Ny)), NtH(H(H(Uj,Ny),Ny),XOR(H(Nz,Ny), H(Ui,Ny)))), XOR(H(Nz,Ny), H(Ui,Ny))) IMPLY Sk send at[2] XOR(H(XOR(H(Nz,Ny), H(Uj,Ny)), NtH(H(H(Uj,Ny),Ny),XOR(H(Nz,Ny), H(Ui,Ny)))), XOR(H(Nz,Ny), H(Ui,Ny))));
-
A39:
Uj know at[0] ( Uj receive at [2] mH(Nt) IMPLY Ui send at [1] mH(Nt));
1.1.2 A.1.2: Protocol Steps
-
S1:
Sk receive at [1] XOR(H(Sk,H(Nx)),H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny)))));
-
S1:
Sk receive at [1] XOR(H(H(H(Ui,Ny)),XOR(H(Sk,H(Nx)),H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny)))))),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))));
-
S1:
Sk receive at [1] XOR(H(XOR(H(Sk,H(Nx)),H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))))), H(H(Ui,Ny))),XOR(H(Nz,Ny), H(Uj,Ny)));
-
S1:
Sk receive at [1] XOR(XOR(H(Nz,Ny), H(Ui,Ny)), H(H(Sk,H(Nx)), H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))))));
-
S1:
Sk receive at [1] mH(Nt);
$$\begin{aligned} Step 2: C4, C5, C \end{aligned}$$ -
S2:
Uj receive at [2] XOR(H(H(H(Uj,Ny)), mH(Nt)),NtH(H(H(Uj,Ny),Ny),XOR(H(Nz,Ny), H(Ui,Ny))));
-
S2:
Uj receive at [2] XOR(H(XOR(H(Nz,Ny), H(Uj,Ny)), NtH(H(H(Uj,Ny),Ny),XOR(H(Nz,Ny), H(Ui,Ny)))), XOR(H(Nz,Ny), H(Ui,Ny)));
-
S2:
Uj receive at [2] mH(Nt);
1.1.3 Protocol Goals
-
G1:
Sk possess at [1] H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))));
-
G2:
Sk possess at [1] XOR(H(Nz,Ny), H(Ui,Ny));
-
G3:
Sk possess at [1] H(Ui,Ny);
-
G4:
Sk possess at [1] H(H(H(Ui,Ny)),XOR(H(Sk,H(Nx)),H(XOR(H(Nz,Ny),H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))))));
-
G5:
Sk possess at [1] NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny)));
-
G6:
Uj possess at [2] H(H(H(Uj,Ny)), mH(Nt));
-
G7:
Uj possess at [2] NtH(H(H(Uj,Ny),Nz),XOR(H(Nz,Ny), H(Ui,Ny)));
-
G8:
Uj possess at [2] H(XOR(H(Nz,Ny), H(Uj,Ny)), NtH(H(H(Uj,Ny),Nz),XOR(H(Nz,Ny), H(Ui,Ny))));
-
G9:
Uj possess at [2] H(H(H(Uj,Ny),Nz),XOR(H(Nz,Ny), H(Ui,Ny)));
-
G10:
Uj possess at [2] Nt;
-
G11:
Uj possess at [2] m;
$$\begin{aligned}{} & {} authentication \;of \;users \\{} & {} \quad Sk \;authenticate\; Ui \end{aligned}$$ -
G12:
Sk know at [1] Ui send at [1] XOR(XOR(H(Nz,Ny), H(Ui,Ny)), H(H(Sk,H(Nx)), H(XOR(H(Nz,Ny), H(Ui,Ny)),NtH(H(H(Ui,Ny),Nz),XOR(H(Nz,Ny), H(Uj,Ny))))));
-
G13:
Uj know at [2] Sk send at [2] XOR(H(XOR(H(Nz,Ny), H(Uj,Ny)), NtH(H(H(Uj,Ny),Nz),XOR(H(Nz,Ny), H(Ui,Ny)))), XOR(H(Nz,Ny), H(Ui,Ny))); Uj authenticate Ui
-
G14:
Uj know at [2] Ui send at [1] mH(Nt);
-
G15:
AttackDetection;
1.2 A.2: The Implementation of Proposed Algorithm
The ILPKA protocol is a implicit lightweight proxy based key agreement for the Internet of Things. A formalized protocol consists of three components:
-
1.
Initial assumptions (conditions that hold before the protocol starts);
-
2.
Protocol steps (the messages exchanged between the principals);
-
3.
Protocol goals (conditions that are expected to hold if the protocol terminates successfully).
1.2.1 A.2.1: Protocol Assumptions
-
A1:
TTP possess at [0] Nx;
-
A2:
TTP know at [0] NOT (Zero possess at [0] Nx);
-
A3:
TTP possess at [0] Ny;
-
A4:
TTP know at [0] NOT (Zero possess at [0] Ny);
-
A5:
TTP possess at [0] Nz;
-
A6:
TTP know at [0] NOT (Zero possess at [0] Nz);
-
A7:
TTP possess at [0] XOR(H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny), H(Uj,Ny))),H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny))));
-
A8:
TTP know at [0] Sk possess at [1] XOR(H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny), H(Uj,Ny))),H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny))));
$$\begin{aligned}{} & {} Components Produced by KDC for each Entity \\{} & {} \quad Ai = H(Ui,Ny), Bi = H(Nz,Ny) XOR H(Ui,Ny),H(Nx),si = H(H(U,Ny),Nz) \end{aligned}$$ -
A9:
TTP possess at [0] H(Ui,Ny);
-
A10:
TTP know at [0] Ui possess at [0] H(H(Ui,Ny));
-
A11:
TTP possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A12:
TTP know at [0] Ui possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A13:
TTP possess at [0] H(Nx);
-
A14:
TTP know at [0] Ui possess at [0] H(Nx);
-
A15:
TTP possess at [0] H(H(Ui,Ny),Nz);
-
A16:
TTP know at [0] Ui possess at [0] H(H(Ui,Ny),Nz);
$$\begin{aligned} Aj = H(Uj,Ny), Bj = H(Nz,Ny) XOR H(Uj,Ny),H(Nx),sj = H(H(Uj,Ny),Nz) \end{aligned}$$ -
A17:
TTP possess at [0] H(Uj,Ny);
-
A18:
TTP know at [0] Uj possess at [0] H(H(Uj,Ny));
-
A19:
TTP possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A20:
TTP know at [0] Uj possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A21:
TTP know at [0] Uj possess at [0] H(Nx);
-
A22:
TTP possess at [0] H(H(Uj,Ny),Nz);
-
A23:
TTP know at [0] Uj possess at [0] H(H(Uj,Ny),Nz);
$$\begin{aligned}{} & {} Express Ui possessions at time t0 \\{} & {} \quad Bi= XOR(H(Nz,Ny),H(Ui,Ny)), Bj,Sk H(Ai)= H(H(Ui,Ny)), si= H(H(Ui,Ny),Nz) \end{aligned}$$ -
A24:
Ui possess at [0] Sk;
-
A25:
Ui possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A26:
Ui possess at [0] H(H(Ui,Ny));
-
A27:
Ui possess at [0] H(H(Ui,Ny),Nz);
-
A28:
Ui possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A29:
Ui possess at [0] H(Nx);
-
A30:
Ui know at [0] TTP possess at [0] H(Nx);
-
A31:
Ui possess at [0] Nt;
-
A32:
Ui know at [0] NOT (ZERO possess at [0] Nt);
-
A33:
Ui know at [0] Uj possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A34:
Ui know at [0] Uj possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A35:
Ui know at [0] Uj possess at [0] Sk;
-
A36:
Ui know at [0] Sk possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A37:
Ui know at [0] Sk possess at [0] H(Sk,H(Nx));
-
A38:
Ui know at [0] Sk possess at [0] H(H(Ui,Ny));
$$\begin{aligned}{} & {} Express Uj possessions at time t0 \\{} & {} \quad Bj= XOR(H(Nz,Ny), H(Uj,Ny)), H(Aj)= H(H(Uj,Ny)), sj= H(H(Uj,Ny),Nz); \end{aligned}$$ -
A39:
Uj possess at [0] Sk;
-
A40:
Uj possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A41:
Uj possess at [0] H(H(Uj,Ny));
-
A42:
Uj possess at [0] H(H(Uj,Ny),Nz);
-
A43:
Uj possess at [0] H(Nx);
-
A44:
Uj know at [0] TTP possess at [0] H(Nx);
-
A45:
Uj know at [0] Ui possess at [0] XOR(H(Nz,Ny), H(Ui,Ny));
-
A46:
Uj know at [0] Ui possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A47:
Uj know at [0] Ui possess at [0] Sk;
-
A48:
Uj know at [0] Sk possess at [0] XOR(H(Nz,Ny), H(Uj,Ny));
-
A49:
Uj know at [0] Sk possess at [0] H(Sk,H(Nx));
-
A50:
Uj know at [0] Sk possess at [0] H(H(Uj,Ny));
$$\begin{aligned} Express Sk(Proxy) possessions at time t0 \end{aligned}$$ -
A51:
Sk possess at [0] H(Sk,H(Nx));
-
A52:
Sk possess at [0] H(Nz,Ny);
-
A53:
Sk possess at [1] XOR(H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny), H(Uj,Ny))),H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny))));
-
A54:
Sk know at [0] Ui possess at [0] H(Sk,H(Nx));
-
A55:
Sk know at [0] Uj possess at [0] H(Sk,H(Nx));
-
A56:
Sk know at [0] Ui possess at [0] H(Ui,Ny);
-
A57:
Sk know at [0] Uj possess at [0] H(Uj,Ny);
-
A58:
Sk know at [0] Ui possess at [0] H(H(Ui,Ny));
-
A59:
Sk know at [0] Uj possess at [0] H(H(Uj,Ny));
1.2.2 A.2.2 Protocol Steps
-
S1:
Sk receivefrom Ui at [1] XOR(XOR(H(Nz,Ny), H(Ui,Ny)), H(Sk,H(Nx)));
-
S1:
Sk receivefrom Ui at [1] XOR(XOR(Nt, H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny), H(Uj,Ny)))), H(H(Sk,H(Nx)),H(H(Ui,Ny))));
-
S1:
Sk receivefrom Ui at [1] H(XOR(H(Nz,Ny), H(Ui,Ny)),H(H(Ui,Ny)));
-
S1:
Sk receivefrom Ui at [1] XOR(XOR(H(Nz,Ny), H(Uj,Ny)), H(XOR(Nt, H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny), H(Uj,Ny)))),H(H(Ui,Ny))));
-
S1:
Sk receivefrom Ui at [1]mH(Nt);
$$\begin{aligned} Step 2:Proxy SEND(M'1, M'2, M'3) to Uj \end{aligned}$$ -
S2:
Uj receivefrom Sk at [2] XOR(H(H(Uj,Ny)), XOR(Nt,H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny)))));
-
S2:
Uj receivefrom Sk at [2] XOR(H(H(H(Uj,Ny)), XOR(Nt,H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny))))), XOR(H(Nz,Ny), H(Ui,Ny)));
-
S2:
Uj receivefrom Sk at [2] mH(Nt);
1.2.3 A.2.3: Protocol Goals
-
G1:
Sk possess at [1] H(H(Sk,H(Nx)), H(H(Ui,Ny)));
-
G2:
Sk possess at [1] XOR(H(Nz,Ny),H(Ui,Ny));
-
G3:
Sk possess at [1] H(H(Ui,Ny));
-
G4:
Sk possess at [1] XOR(Nt, H(H(H(Ui,Ny),Nz), XOR(H(Nz,Ny),H(Uj,Ny))));
-
G5:
Sk possess at [1] XOR(H(Nz,Ny),H(Uj,Ny));
-
G6:
Sk possess at [1] H(Uj,Ny);
-
G7:
Uj possess at [2] XOR(H(Nz,Ny), H(Ui,Ny));
-
G8:
Uj possess at [2] XOR(Nt,H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny))));
-
G9:
Uj possess at [2] H(H(Uj,Ny),Nz);
-
G10:
Uj possess at [2] (H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny)));
-
G11:
Uj possess at [2] H(H(H(Uj,Ny),Nz), XOR(H(Nz,Ny), H(Ui,Ny)));
-
G12:
Uj possess at [2] Nt;
-
G13:
Uj possess at [2] m;
-
G14:
Uj know at [2] Uj receivefrom Sk at [2] mH(Nt);
-
G15:
Sk know at [1] Sk receivefrom Ui at [1] mH(Nt);
-
G16:
AttackDetection;
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Roustaei, R., Javadi, H.H.S. & Reshadi, M. Implicit Lightweight Proxy Based Key Agreement for the Internet of Things (ILPKA). Wireless Pers Commun 130, 1833–1860 (2023). https://doi.org/10.1007/s11277-023-10360-0
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11277-023-10360-0