A Strongly Unforgeable Certificateless Signature Scheme and Its Application in IoT Environments
Abstract
:1. Introduction
- A novel CLS scheme without random oracles is constructed. Under the collision-resistant hash function (CRHF) and computational Diffie–Hellman (CDH) assumptions, the proposed CLS scheme is proven to be strongly unforgeable against adaptive chosen-message attacks in the standard model.
- In our CLS scheme, the user’s public key is not only bound to the user’s partial private key but also embedded into the signature of the message. This makes the proposed CLS scheme have a higher security trust level and be capable of resisting PKR attacks and MKGC attacks.
- The proposed CLS scheme resists replay attacks by verifying the freshness of the timestamp and the validity of the signature. To our best knowledge, our scheme is the first CLS scheme with a strong unforgeability in the standard model that can resist replay attacks.
- Compared to other CLS schemes in the standard model, our CLS scheme has higher security, a smaller key size, a shorter signature length, and lower computational overhead for signature generation and signature verification.
- Due to the aforementioned functionalities, our CLS scheme is able to be implemented and deployed in IoT environments where IoT devices have limited computing power, storage space, and communication bandwidth.
2. Related Work
3. Preliminaries
3.1. Bilinear Paring
- Bilinearity: for all .
- Nondegeneracy: .
- Computability: There is an algorithm that can efficiently calculate for any .
3.2. Complexity Assumptions
3.3. Security Model of CLS
- : This algorithm takes as input a security parameter , and it outputs the master secret key and system parameters .
- : This algorithm takes as input and an identity , and it outputs a secret value and a public key .
- : This algorithm takes as input , , and , and it returns a partial private key for identity .
- : Upon receiving , , and , this algorithm outputs a private key .
- : This algorithm takes as input , an identity ’s private key and public key , a timestamp T, and a message m, and it returns a signature on m.
- : Upon receiving , , , T, m, and , this algorithm outputs 1 if is a valid signature of on m with respect to T and , and it outputs 0 otherwise.
- Initialization: first runs the algorithm to obtain the master secret key and system parameters . then runs the algorithm to output the secret value and corresponding public key of the targeted entity. Finally, sends and to while keeping secret.
- Queries: can adaptively access the following oracles with .
- –
- Public Key Query: Upon receiving an identity , runs the algorithm to obtain a public key and sends it to .
- –
- Public Key Replacement (PKR) Query: Upon receiving such a query, finds and replaces the original public key of identity with a new public key .
- –
- Partial Private Key Query: Upon receiving an identity and a public key , runs the algorithm to generate a partial private key and sends it to .
- –
- Private Key Query: When initiates a private key inquiry about an identity , executes the algorithm to produce a private key and sends it to . Note that returns the symbol ⊥ if has already appeared in PKR queries.
- –
- Signing Query: Upon receiving an identity , a timestamp Tm and a message m, first executes the algorithm to produce a private key and then uses , T, and the identity ’s matching public key to execute the algorithm to produce a signature on m. Finally, sends to .
- Forgery: eventually outputs a forged signature on a message corresponding to an identity , a timestamp , and the targeted public key . It is said that wins this game when the following conditions are fulfilled:
- (1)
- .
- (2)
- is not requested in and .
- (3)
- is not an output of the oracle .
- Initialization: invokes to produce the master secret key and system parameters . Then, runs the algorithm to produce the secret value and the corresponding public key of the targeted entity. Finally, sends to while keeping secret.
- Queries: can adaptively access the oracles , , and , which are defined in Game 1, and responds in the same way as it does in Game 1.
- Forgery: eventually outputs a forged signature on a message corresponding to an identity , a timestamp , and the targeted public key . It is said that wins this game when the following conditions are fulfilled:
- (1)
- .
- (2)
- is not requested in .
- (3)
- is not an output of the oracle .
4. Proposed CLS Scheme
- : Upon giving the security parameter as input, the KGC produces the master secret key and system parameters by performing the following steps.
- (1)
- Select and as two cyclic groups with prime order p, a generator g of , and a bilinear pairing .
- (2)
- Select two random values and compute and .
- (3)
- Select two random elements and two vectors and of lengths and , respectively, where for and .
- (4)
- Select three collision-resistant hash functions , , and .
- (5)
- Secretly keep the master key and publicly broadcast the system parameters , .
- : An entity with identity randomly selects and computesThen, the entity computes as its secret value and sets its public key .
- : Given an identity and a public key of an entity, the KGC first computes a vector and . Then, the KGC selects at random and computesFinally, the KGC sends the partial private key to the entity via a secure channel.After receiving from the KGC, the entity can check the correctness of by verifyingIf this equation holds, then the entity accepts as a valid partial private key.
- : The entity with identity selects a random value and computes a vector and , where is ’s public key. Then, the entity uses its secret value and partial private key to compute its private key
- : The signer with identity generates a signature of a message m by performing the following steps.
- (1)
- Select a random value and compute .
- (2)
- Choose the current timestamp T and compute a vector and .
- (3)
- Compute
- (4)
- Output as a signature of m.
- : Given the signer’s identity and public key , timestamp T, and a signature of message m, the verifier first chooses the current time . Then, the verifier verifies the legality of as follows.
- (1)
- If , where is a threshold value, the verifier refuses to verify the validity of and exits.
- (2)
- If , the verifier computes , , , andThen, the verifier checksIf this equation holds, the verifier accepts and outputs 1; otherwise, the verifier rejects and outputs 0.
5. Security Proof
- Initialization: first sets and such that and . Then, simulates the algorithm by performing the following steps:
- (1)
- Randomly select and .
- (2)
- Randomly select , , , , and , .
- (3)
- Select three hash functions , , and . Note that the adopted hash functions are not considered to be random oracles in the following proof.
- (4)
- Set and , where and are from the input of the instance of the CDH problem. Note that the master secret key is implicitly set to .
- (5)
- Assign , for , , and for , and set and .
- (6)
- Select three random integers and compute , , and . Next, set the secret value of the targeted entity to and the corresponding public key to .
- (7)
- Send system parameters , and the targeted entity’s secret value/public key pair to .
From the perspective of , the distribution of the system parameters produced by is identical to the real construction.In our CLS scheme, we have for an identity and a public key , and we have , for a message m and a timestamp T. Aiming to simplify the analysis, we define the following four functions:Hence, we have the following equations: - Queries: maintains a list , , which is initially empty. constructs the following oracles to answer a series of ’s queries.
- –
- Public Key Query: When initiates such an inquiry for an identity , looks up the corresponding entry in the list . If is found in , returns to . Otherwise, randomly selects and computes the secret value and the public key . Then, stores in and sends to .
- –
- Public Key Replacement Query: If there is an entry for the identity in the list , replaces the original public key of with a new public key . Otherwise, directly sets as the public key of .
- –
- Partial Private Key Query: When requests a partial private key of an identity and a public key , returns to if there is an entry for and in the list . Otherwise, computes and .
- (1)
- If , randomly selects and calculates a partial private key
- (2)
- If , terminates the simulation.
Note that the partial private key generated by is legal.Then, we haveHence, from ’s perspective, the partial private key simulated by is computationally indistinguishable from that computed by the real KGC. - –
- Private Key Query: When requests the private key of an identity , checks for an entry of in . If it exists, returns to ; otherwise, computes and . If , terminates; otherwise, initiates a public key query about to acquire a secret value and a public key and then initiates a partial private key query with to acquire a partial private key . Next, executes the algorithm to create a private key , stores of the corresponding entry in and sends to .
- –
- Signing Query: Upon receiving an identity , a timestamp T, and a message m, issues a query to acquire a public key and the triplet . Then, proceeds as follows.
- (1)
- If , first makes a query to acquire a private key and then runs the algorithm to generate a signature of m. Finally, sends to .
- (2)
- If , computes . If , terminates; otherwise, randomly selects and computes , , , and . Furthermore, computesFinally, sends to .
For , we haveClearly, the signature generated by is legal because satisfies the following verification equation:From ’s perspective, the signatures simulated by are computationally indistinguishable from those produced by the real signer. - Forgery: eventually outputs a signature on a message corresponding to an identity , a timestamp , and targeted public key . If or , terminates; otherwise, computes and uses to output as a solution to the CDH instance as follows:
- (1)
- All partial private key queries on have .
- (2)
- All private key queries on have .
- (3)
- All signing queries on have or .
- (4)
- In the forgery phase, and .
- for the ith query, where .
- .
- for the jth query, where .
- .
- Initialization: For the given values , , , and , sets and such that and . selects a random element and calculates . Then, sets the targeted entity’s public key and sends parameters and to .Subsequently, performs the following steps to produce other system parameters and the master secret key.
- (1)
- Select two random integers and , where and .
- (2)
- Randomly select , and , , , .
- (3)
- Select three collision-resistant hash functions , , and .
- (4)
- Assign , for , , and for and set and .
- (5)
- Select two random values and compute , and .
- (6)
- Send parameters and the master secret key to .
Note that the secret value of the targeted entity is , which is unknown to , and the system parameters are , .As the initialization phase in Theorem 1, we define the following four functions:Furthermore, we have the following equations: - Queries: maintains an initially empty list of tuples and builds the following oracles to answer the queries initiated by .
- –
- Public Key Query: When issues such a query on an identity , looks up the corresponding entry in list and sends to . Otherwise, if does not store this entry, randomly selects and computes the public key . Note that the secret value is , but a and b are unknown to . Then, stores , in and transmits to .
- –
- Private Key Query: Upon receipt of a query on an identity , returns to if is found in ; otherwise, makes a query to obtain a public key and the triplet and then verifies whether .
- (1)
- If , exits the simulation.
- (2)
- If , selects and uses the master secret key to compute
The correctness of simulated by is - –
- Signing Query: Upon receiving a message m, an identity , and a timestamp T, issues a query to obtain a public key and a triplet . Then, considers the following two cases:
- (1)
- If , makes a query to obtain a private key and then runs the algorithm to generate a signature on m. Finally, sends to .
- (2)
- If , computes . If , quits the simulation; otherwise, randomly selects and computes , , , and . Furthermore, computesFinally, sends to .
Let ; then, we haveThe simulated signature satisfies the following signature verification equation; thus, is a valid signature on message m: - Forgery: eventually outputs a signature on a message corresponding to an identity , a timestamp , and the targeted public key . If or , terminates; otherwise, calculates and then uses and to output the CDH value by calculating
- during private key queries.
- or during signing queries.
- and in the forgery phase.
- for .
- .
- for .
- .
6. Application in IoT Environments and Performance Analysis
6.1. System Model
- PKG: This entity is primarily responsible for producing system parameters and computing partial private keys for the data centre and each IoT device. The PKG sends system parameters to all of the entities through a public channel and transmits an individual partial private key to each entity via a secure channel.
- Data centre: This entity has a strong computing power and storage space; thus, it can check the integrity and authenticity of the data by verifying the signature sent by each IoT device and can store the authentic data for other users to use. Initially, the data centre submits its identity information to the PKG to apply for the corresponding partial private key; it then saves the system parameters and partial private key sent by the PKG.
- IoT device: This entity equipped with sensors has limited computational and memory resources and limited battery capacity. During the registration of the IoT device, the PKG generates a unique partial private key based on the physical address of each IoT device. After the IoT device is embedded with system parameters and its private key, it signs messages collected from the physical world and sends the corresponding signatures along with messages to the data centre.
6.2. Performance Analysis
7. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Yang, Y.; Wu, L.; Yin, G.; Li, L.; Zhao, H. A survey on security and privacy issues in Internet-of-Things. IEEE Internet Things J. 2017, 4, 1250–1258. [Google Scholar] [CrossRef]
- Shen, L.; Ma, J.; Liu, X.; Wei, F.; Miao, M. A secure and efficient id-based aggregate signature scheme for wireless sensor networks. IEEE Internet Things J. 2017, 4, 546–554. [Google Scholar] [CrossRef]
- Karati, A.; Islam, S.H.; Karuppiah, M. Provably secure and lightweight certificateless signature scheme for IIoT environments. IEEE Trans. Ind. Inform. 2018, 14, 3701–3711. [Google Scholar] [CrossRef]
- Yeh, K.H.; Su, C.; Choo, K.K.R.; Chiu, W. A novel certificateless signature scheme for smart objects in the Internet-of-Things. Sensors 2017, 17, 1001. [Google Scholar] [CrossRef] [PubMed]
- Conti, M.; Dehghantanha, A.; Franke, K.; Watson, S. Internet of Things security and forensics: Challenges and opportunities. Future Gener. Comput. Syst. 2018, 78, 544–546. [Google Scholar] [CrossRef]
- Perlman, R. An overview of PKI trust models. IEEE Netw. 2018, 13, 38–43. [Google Scholar] [CrossRef]
- Shamir, A. Identity-based cryptosystems and signature schemes. In Proceedings of the CRYPTO 1984, Santa Barbara, CA, USA, 19–22 August 1984; pp. 47–53. [Google Scholar]
- Al-Riyami, S.S.; Paterson, K.G. Certificateless public key cryptography. In Proceedings of the Theory and Application of Cryptology and Information Security, Taipei, Taiwan, 30 November–4 December 2003; pp. 452–473. [Google Scholar]
- Yum, D.H.; Lee, P.J. Generic construction of certificateless signature. In Proceedings of the Australasian Conference on Information Security and Privacy, Sydney, Australia, 13–15 July 2004; pp. 200–211. [Google Scholar]
- Wan, Z.; Weng, J.; Li, J. Security mediated certificateless signatures without pairing. J. Comput. 2010, 12, 1862–1869. [Google Scholar] [CrossRef]
- Xiong, H.; Guan, Z.; Chen, Z.; Li, F. An efficient certificateless aggregate signature with constant pairing computations. Inf. Sci. 2013, 219, 225–235. [Google Scholar] [CrossRef]
- He, D.; Tian, M.; Chen, J. Insecurity of an efficient certificateless aggregate signature with constant pairing computations. Inf. Sci. 2014, 268, 458–462. [Google Scholar] [CrossRef]
- Chen, Y.C.; Tso, R.; Mambo, M.; Huang, K.; Horng, G. Certificateless aggregate signature with efficient verification. Secur. Commun. Netw. 2015, 13, 2232–2243. [Google Scholar] [CrossRef]
- Kang, B.; Wang, M.; Jing, D. An efficient certificateless aggregate signature scheme. Wuhan Univ. J. Nat. Sci. 2017, 22, 165–170. [Google Scholar] [CrossRef]
- Wang, L.; Chen, K.; Long, Y.; Wang, H. An efficient pairing-free certificateless signature scheme for resource-limited systems. Sci. China Inf. Sci. 2017, 60, 119102. [Google Scholar] [CrossRef]
- Bellare, M.; Rogaway, P. The exact security of digital signatures-How to sign with RSA and Rabin. In Proceedings of the Theory and Applications of Cryptographic Techniques, Konstanz, Germany, 2–6 May 1999; pp. 399–416. [Google Scholar]
- Canetti, R.; Goldreich, O.; Halevi, S. The random oracle methodology, revisited. J. ACM 2004, 51, 557–594. [Google Scholar] [CrossRef] [Green Version]
- Liu, J.K.; Au, M.H.; Susilo, W. Self-generated-certificate public key cryptography and certificateless signature/encryption scheme in the standard model. In Proceedings of the 2nd ACM Symposium on Information, Computer and Communications Security, Singapore, 20–22 March 2007; pp. 273–283. [Google Scholar]
- Xiong, H.; Qin, Z.; Li, F. An improved certificateless signature scheme secure in the standard model. Fundam. Inf. 2008, 88, 193–206. [Google Scholar]
- Yuan, Y.; Li, D.; Tian, L.; Zhu, H. Certificateless signature scheme without random oracles. In Proceedings of the Information Security and Assurance, Seoul, Korea, 18–20 August 2009; pp. 31–40. [Google Scholar]
- Yu, Y.; Mu, Y.; Wang, G.; Xia, Q.; Yang, B. Improved certificateless signature scheme provably secure in the standard model. IET Inf. Secur. 2012, 6, 102–110. [Google Scholar] [CrossRef]
- Hung, Y.H.; Huang, S.S.; Tseng, Y.M.; Tsai, T.T. Certificateless signature with strong unforgeability in the standard model. Informatica 2016, 26, 663–684. [Google Scholar] [CrossRef]
- Yuan, Y.; Wang, C. Certificateless signature scheme with security enhanced in the standard model. Inf. Process. Lett. 2014, 114, 492–499. [Google Scholar] [CrossRef]
- Tsai, T.T.; Huang, S.S.; Tseng, Y.M. Secure certificateless signature with revocation in the standard model. Math. Probl. Eng. 2014, 2014, 1–16. [Google Scholar] [CrossRef]
- Canard, S.; Trinh, V.C. An Efficient certificateless signature scheme in the standard model. In Proceedings of the Information Systems Security, Rome, Italy, 8–9 December 2016; pp. 175–192. [Google Scholar]
- Waters, B. Efficient identity-based encryption without random oracles. In Proceedings of the Theory and Applications of Cryptographic Techniques, Aarhus, Denmark, 22–26 May 2005; pp. 114–127. [Google Scholar]
- Pang, L.; Zhao, H.; Zhou, X.; Li, H. Strongly unforgeable and efficient proxy signature scheme with fast revocation secure in the standard model. Int. J. Distrib. Sens. Netw. 2016, 12, 1–12. [Google Scholar] [CrossRef]
- Tsai, T.T.; Tseng, Y.M.; Huang, S.S. Efficient strongly unforgeable ID-based signature without random oracles. Informatica 2014, 25, 505–521. [Google Scholar] [CrossRef]
- Kwon, S. An identity-based strongly unforgeable signature without random oracles from bilinear pairings. Inf. Sci. 2014, 276, 1–9. [Google Scholar] [CrossRef]
- Yang, W.; Weng, J.; Luo, W.; Yang, A. Strongly Unforgeable Certificateless Signature Resisting Attacks from Malicious-But-Passive KGC. Secur. Commun. Netw. 2017, 5704865, 1–8. [Google Scholar] [CrossRef]
- Huang, Y.; Zhang, X.; Yu, B. Efficient anti-replay identity-based signature scheme for wireless body area network. J. Cryptol. Res. 2017, 4, 447–457. [Google Scholar]
- Pei, H.L.; Shang, T.; Liu, J.W. Secure network coding method merged with timestamp and homomorphic signature. J. China Inst. Commun. 2013, 34, 28–35. [Google Scholar]
- Huang, X.; Susilo, W.; Mu, Y.; Zhang, F. On the security of certificateless signature schemes from Asiacrypt 2003. In Proceedings of the Cryptology and Network Security, Xiamen, China, 14–16 December 2005; pp. 13–25. [Google Scholar]
- Paterson, K.G.; Schuldt, J.C. Efficient identity-based signatures secure in the standard model. In Proceedings of the Australasian Conference on Information Security and Privacy, Melbourne, Australia, 3–5 July 2006; pp. 207–222. [Google Scholar]
- Huang, X.; Mu, Y.; Susilo, W.; Wong, D.S.; Wu, W. Certificateless signature revisited. In Proceedings of the Australasian Conference on Information Security and Privacy, Townsville, Australia, 2–4 July 2007; pp. 308–322. [Google Scholar]
- Shim, K.A.; Lee, Y.R. Security pitfalls of the certificateless signature and multi-receiver signcryption schemes. Fund. Inf. 2011, 112, 365–376. [Google Scholar]
- Xia, Q.; Xu, C.X.; Yu, Y. Key replacement attack on two certificateless signature schemes without random oracles. Key Eng. Mater. 2010, 439, 1606–1611. [Google Scholar] [CrossRef]
- Boneh, D.; Boyen, X. Short signatures without random oracles. In Proceedings of the Theory and Applications of Cryptographic Techniques, Istanbul, Turkey, 13–17 April 2008; pp. 56–73. [Google Scholar]
- Pointcheval, D.; Sanders, O. Short randomizable signatures. In Proceedings of the Cryptographers’ Track at the RSA Conference, San Francisco, CA, USA, 29 February–4 March 2016; pp. 111–126. [Google Scholar]
- Jia, X.; He, D.; Liu, Q.; Choo, K.K.R. An efficient provably-secure certificateless signature scheme for Internet-of-Things deployment. Ad Hoc Netw. 2018, 71, 78–87. [Google Scholar] [CrossRef]
- Li, X.; Wang, H.; Yu, Y.; Qian, C. An IoT data communication framework for authenticity and integrity. In Proceedings of the IEEE/ACM Second International Conference on Internet-of-Things Design and Implementation, Pittsburgh, PA, USA, 18–21 April 2017; pp. 159–170. [Google Scholar]
- Frädrich, C.; Pöhls, H.C.; Popp, W.; Rakotondravony, N.; Samelin, K. Integrity and authenticity protection with selective disclosure control in the cloud and IoT. In Proceedings of the International Conference on Information and Communications Security, Singapore, 29 November–2 December 2016; pp. 197–213. [Google Scholar]
- Steinfeld, R.; Bull, L.; Zheng, Y. Content extraction signatures. In Proceedings of the International Conference on Information Security and Cryptology, Seoul, Korea, 6–7 December 2001; pp. 285–304. [Google Scholar]
- Challa, S.; Wazid, M.; Das, A.K.; Kumar, N.; Reddy, A.G.; Yoon, E.J.; Yoo, K.Y. Secure signature-based authenticated key establishment scheme for future IoT applications. IEEE Access 2017, 5, 3028–3043. [Google Scholar] [CrossRef]
- Nyberg, K. Fast accumulated hashing. In Proceedings of the International Workshop on Fast Software Encryption, Cambridge, UK, 21–23 February 1996; pp. 83–87. [Google Scholar]
- Yao, X.; Han, X.; Du, X.; Zhou, X. A lightweight multicast authentication mechanism for small scale IoT applications. IEEE Sens. J. 2013, 13, 3693–3701. [Google Scholar] [CrossRef]
- Yang, X.; Chen, C.; Ma, T.; Li, Y.; Wang, C. An improved certificateless aggregate signature scheme for vehicular ad-hoc networks. In Proceedings of the IEEE 3rd Advanced Information Technology, Electronic and Automation Control Conference, Chongqing, China, 12–14 October 2018; pp. 2334–2338. [Google Scholar]
- Yang, X.D.; Xiao, L.K.; Chen, C.L.; Wang, C.F. A strong designated verifier proxy re-signature scheme for IoT environments. Symmetry 2018, 10, 580. [Google Scholar] [CrossRef]
- Au, M.H.; Mu, Y.; Chen, J.; Wong, D.S.; Liu, J.K.; Yang, G. Malicious KGC attacks in certificateless cryptography. In Proceedings of the 2nd ACM symposium on Information, Computer and Communications Security, Singapore, 20–22 March 2007; pp. 302–311. [Google Scholar]
- Lynn, B. The Pairing-Based Cryptography Library. Available online: http://crypto.stanford.edu/pbc (accessed on 14 June 2019).
© 2019 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Yang, X.; Pei, X.; Chen, G.; Li, T.; Wang, M.; Wang, C. A Strongly Unforgeable Certificateless Signature Scheme and Its Application in IoT Environments. Sensors 2019, 19, 2692. https://doi.org/10.3390/s19122692
Yang X, Pei X, Chen G, Li T, Wang M, Wang C. A Strongly Unforgeable Certificateless Signature Scheme and Its Application in IoT Environments. Sensors. 2019; 19(12):2692. https://doi.org/10.3390/s19122692
Chicago/Turabian StyleYang, Xiaodong, Xizhen Pei, Guilan Chen, Ting Li, Meiding Wang, and Caifen Wang. 2019. "A Strongly Unforgeable Certificateless Signature Scheme and Its Application in IoT Environments" Sensors 19, no. 12: 2692. https://doi.org/10.3390/s19122692
APA StyleYang, X., Pei, X., Chen, G., Li, T., Wang, M., & Wang, C. (2019). A Strongly Unforgeable Certificateless Signature Scheme and Its Application in IoT Environments. Sensors, 19(12), 2692. https://doi.org/10.3390/s19122692