Submitted:
19 January 2025
Posted:
20 January 2025
You are already at the latest version
Abstract
Keywords:Â
1. Introduction
2. Preliminaries
2.1. Symbols and Definitions
2.2. The ID-Based Digital Signature Based on SM2
- Setup: With the security parameter provided, the algorithm randomly select a large prime number q, and determine a non-singular elliptic curve (where ). From all the points on E (including the point at infinity), select a cyclic group G of prime order n and a generator . Choose three secure hash functions , , and . Randomly select and generate the partial system public key . The algorithm outputs the system public key and the master private key .
- Extract: Given , , and user information . It randomly selects , computes the partial user private key , and the intermediate variable . The partial user private key d is calculated as . The algorithm gives out the user’s private key .
- Sign: Given , , and the message m. It computes the user’s distinguishable identifier and its hash value , where is the bit length of , and and are the coordinates of and L, respectively. Select a random number , then compute the elliptic curve point and the partial signature . If or , select a new k and repeat the calculations. Otherwise, compute the partial signature . If , the algorithm outputs the message-signature pair m and .
- Verify: Given , , m, and the signature to be verified . If , it outputs 0. Otherwise, it computes . If , outputs 0. If , the following series of computations are carried out. First, compute . Then, calculate . Next, determine . After that, obtain . Finally, calculate . If , the algorithm outputs 1 to denote the validity of the signature; in contrast, it outputs 0 to denote the invalidity of the signature.
2.3. Zero-Knowledge Proof, -Protocol with Its OR Construction
3. Interactive ID-Based UDVSP Based on SM2 Digital Signature
3.1. The Proposed System
- Setup: Provided the security parameter , randomly picks a big prime number q, and determines a non-singular elliptic curve (where ). Among all points on E (including the zero point), a cyclic group G of prime order n and a generator are selected. Secure hash functions are chosen as follows: , , and . Here, and are secure cryptographic hash function. A random is selected, and the partial system public key is computed as . The algorithm outputs the system public key and the master private key .This invention is based on the SM2 digital identity signature design, so it uses the same system parameters as the identity-based SM2 digital signature. For specific parameter symbols and definitions, refer to the detailed implementation section (2.1 Symbols and Definitions).
- Extract: Given the system’s master public key , master private key , and user information . It randomly selects , computes the partial user private key , and the intermediate variable . The partial user private key d is calculated as . The user’s private key is output.
- Sign: Given the system’s master public key , the user’s private key , and the message m. It computes the user’s distinguishable identifier and the hash value , where is the bit length of , and and are the coordinates of and L, respectively. A random is selected, then the elliptic curve point and the partial signature are computed. If or , a new k is selected and the calculations are repeated. Otherwise, the partial signature is computed. If , the algorithm outputs the message m and the signature .
- Verify: Given the system’s master public key , user information , message m, and the signature to be verified . If , it outputs 0. Otherwise, it computes . If , it outputs 0. Otherwise, it computes , , , , and . If , the algorithm outputs 1 to denote the validity of the signature; in contrast, it outputs 0 to denote the invalidity of the signature.
- Tran: Given the system public key mpk, user information , message m, and the signature to be verified . It randomly selects and computes , , , . The algorithm outputs the transformed signature and the transformation key .
- IVerf: Provided the system public key mpk, user information , and the transformed signature . The signature owner additionally takes the transformation key and the signature as input. The signature owner and the designated verifier perform the following interaction:
- first computes , , . Then randomly selects and , and computes the commitment value . Finally, sends D to .
- randomly selects a challenge value and returns c to .
- calculates the response to the challenge , , , and sends to .
- calculates , , , and . If , outputs 1 indicating acceptance; otherwise, outputs 0.
3.2. Security Analysis
- SI requests a signature from the signer.
- SI selects at random and computes , , , and sends to .
- SI randomly selects and , computes the commitment value , and sends D to .
- SI receives the challenge value sent by .
- SI computes the response to the challenge , , , and sends to
4. Non-Interactive ID-Based UDVSP Based on SM2 Digital Signature
4.1. The Proposed System
- Setup: Given the security parameter , randomly picks a large prime number q, and determines a non-singular elliptic curve (where ). Among all points on E (including the zero point), a cyclic group G of prime order n and a generator are selected. Secure hash functions are chosen as follows: , , and . Here, is a cryptographic hash function with a message digest length of v bits, and is a secure cryptographic hash function. A random is selected, and the partial system public key is computed as . The algorithm outputs the system public key and the master private key .This invention is based on the SM2 digital identity signature design, so it uses the same system parameters as the identity-based SM2 digital signature. For specific parameter symbols and definitions, refer to the detailed implementation section (2.1 Symbols and Definitions).
- Extract: Given the system’s master public key , master private key , and user information . It randomly selects , computes the partial user private key , and the intermediate variable . The partial user private key d is calculated as . The algorithm outputs the user’s private key .
- Sign: Given the system’s master public key , the user’s private key , and the message m. It computes the user’s distinguishable identifier and the hash value , where is the bit length of , and and are the coordinates of and L, respectively. A random is selected, and the elliptic curve point and the partial signature are computed. If or , a new k is selected and the calculations are repeated. Otherwise, the partial signature is computed. If , the algorithm outputs the message m and the signature .
- Verify: Given the system’s master public key , user information , message m, and the signature to be verified . If , it outputs 0. Otherwise, it computes . If , it outputs 0. Otherwise, it computes , , , , and . If , the algorithm outputs 1 to denote the validity of the signature; in contrast, it outputs 0 to denote the invalidity of the signature.
- DGenr: Given the system public key mpk. It randomly selects and computes . The algorithm outputs the designated verifier ’s private key and public key . The public key parameters of the designated verifier and are published, while is kept by .
- DVerf: In this protocol, the signature owner proves to the designated verifier that they possess a signature that can be verified or that they possess ‘s private key . If has not leaked , they will believe that has a valid , but cannot disclose this fact to a third party (because , who possesses , can forge the related proof). First, selects a hash function based on ’s public key parameters. and then execute the following protocol:
- First, computes , and . Then, randomly selects , , and , and computes and
- obtains .
- designates and , then computes , , and . The proof is then formed. Subsequently, sends and the hash function to .
- V computes:, then , ,.If , , and , then output 1 to indicate acceptance; otherwise, output 0.
4.2. Security Analysis
5. Performance Evaluation
6. Conclusions
7. Patents
Author Contributions
Funding
References
- Steinfeld, R.; Bull, L.; Wang, H.; Pieprzyk, J. Universal Designated-Verifier Signatures. IACR Cryptol. ePrint Arch.
- Baek, J.; Safavi-Naini, R.; Susilo, W. Universal designated verifier signature proof (or how to efficiently prove knowledge of a signature). In Proceedings of the Advances in Cryptology-ASIACRYPT 2005: 11th International Conference on the Theory and Application of Cryptology and Information Security, Chennai, India, 2005. Proceedings 11. Springer, 2005, December 4-8; pp. 644–661.
- Steinfeld, R.; Wang, H.; Pieprzyk, J. Efficient extension of standard Schnorr/RSA signatures into universal designated-verifier signatures. In Proceedings of the Public Key Cryptography–PKC 2004: 7th International Workshop on Theory and Practice in Public Key Cryptography, Singapore, 2004. Proceedings 7. Springer, 2004, March 1-4; pp. 86–100.
- Shamir, A. Identity-based cryptosystems and signature schemes. In Proceedings of the Advances in Cryptology: Proceedings of CRYPTO 84 4.
- Zhang, F.; Susilo, W.; Mu, Y.; Chen, X. Identity-based universal designated verifier signatures. In Proceedings of the International Conference on Embedded and Ubiquitous Computing. Springer; 2005; pp. 825–834. [Google Scholar]
- Chen, X.; Chen, G.; Zhang, F.; Wei, B.; Mu, Y. Identity-based universal designated verifier signature proof system 2009.
- LIN, C.; HE, D.; HUANG, X. Blockchain-based electronic medical record secure sharing. Journal of Computer Applications 2022, 42, 3465. [Google Scholar]
- Abbasinezhad-Mood, D.; Nikooghadam, M. An anonymous ECC-based self-certified key distribution scheme for the smart grid. IEEE Transactions on Industrial Electronics 2018, 65, 7996–8004. [Google Scholar] [CrossRef]
- Zhang, Z.; Yang, K.; Zhang, J.; Chen, C. Security of the SM2 signature scheme against generalized key substitution attacks. In Proceedings of the International Conference on Research in Security Standardisation. Springer; 2015; pp. 140–153. [Google Scholar]
- HE, D.; Zhang, J.; Chen, B.; Zhang, Y. An identity-based digital signature method and system based on SM2. 430072 299 Bayi Road, Wuchang District, Wuhan, Hubei Province, China, cn108809658b(in chinese) ed., 2021.
- LIN, C.; HUANG, X.; HE, D. Efficient Range Proof Protocols Based on Chinese Cryptographic SM2. Chinese Journal of Computers 2022, 45, 148–159. [Google Scholar]
- Bellare, M.; Goldreich, O. On Defining Proofs of Knowledge. In Proceedings of the Advances in Cryptology - CRYPTO ’92, 12th Annual International Cryptology Conference, Santa Barbara, California, USA, 1992, Proceedings; Brickell, E.F., Ed. Springer, 1992, Vol. 740, Lecture Notes in Computer Science, August 16-20; pp. 390–420. [CrossRef]
- Cramer, R.; Damgård, I.; MacKenzie, P.D. Efficient Zero-Knowledge Proofs of Knowledge Without Intractability Assumptions. In Proceedings of the Public Key Cryptography, Third International Workshop on Practice and Theory in Public Key Cryptography, PKC 2000, Melbourne, Victoria, Australia, 2000, Proceedings; Imai, H.; Zheng, Y., Eds. Springer, 2000, Vol. 1751, Lecture Notes in Computer Science, January 18-20; pp. 354–373. [CrossRef]
- Ivan, D. On Σ-protocols. LectureNote,University of Aarhus,Department for Computer Science,2002.
- Faust, S.; Kohlweiss, M.; Marson, G.A.; Venturi, D. On the non-malleability of the Fiat-Shamir transform. In Proceedings of the Progress in Cryptology-INDOCRYPT 2012: 13th International Conference on Cryptology in India, Kolkata, India, 2012. Proceedings 13. Springer, 2012, December 9-12; pp. 60–79.
- Huang, X.; Susilo, W.; Mu, Y.; Wu, W. Secure universal designated verifier signature without random oracles. Int. J. Inf. Sec. 2008, 7, 171–183. [Google Scholar] [CrossRef]
- Rastegari, P.; Berenjkoub, M.; Dakhilalian, M.; Susilo, W. Universal designated verifier signature scheme with non-delegatability in the standard model. Inf. Sci. 2019, 479, 321–334. [Google Scholar] [CrossRef]
| Symbol | Definition |
|---|---|
| User’s identity. | |
| ENTLA | Two bytes converted from the bit length of . |
| q | A big prime number. |
| A finite field consisting of q elements. | |
| Elements in that define an elliptic curve E over . | |
| The collection of all rational points on the elliptic curve E over (where the zero point O is also included). | |
| O | A special point on the elliptic curve, referred to as the point at infinity or zero point. |
| G | The cyclic group containing every point on the elliptic curve E along with the point at infinity. |
| P | The generator of the group G. |
| n | The order of the generator P (where n is a prime factor of ). |
| A secure cryptographic hash function. |
| Scheme | Computation | Communication | ||||
|---|---|---|---|---|---|---|
| UKGen | USign | UVerf | UTran | UIVerf | UIVerf | |
| UDVSP-1 [2] | + | 2 + | 2 + + + 2 + + |
|||
| UDVSP-2 [2] | 2 |
+ + + 2 |
2 + 2 + |
2 + 2 + 2 + + + + + |
||
| UDVS-1 [16] | 4 | 3 + 2 + |
+ + 3 + |
2 + + 3 + |
2 + + 2 + + 2 | |
| UDVS-2 [17] | 2 | 5 + 3 | 2 + 3+ 3 + |
2+ 3 + 2+ + 2 |
||
| UDVSP-3 [2] |
+ + + 2 + 2 |
2 + + 2 + Th |
3 + | 14 + 13 + 7 + 3 + |
||
| Our UDVSP-1 |
++ + |
++2+ 2+2 |
3+ 2+ 2+3 |
3+2 | 16 + 15 + 7 + 3 + 3 |
|
| Our UDVSP-2 |
++ + |
++2+ 2+2 |
3+ 2+ 2+3 |
15 + 10 + 7 + 4 + 6 |
||
| Notation | Description | Time | Notation | Description | Time |
|---|---|---|---|---|---|
| A point addition in | 0.165954 | A bilinear pairing | 820.32 | ||
| A scale multiplication in | 35.3111 | A exponentiation in | 689.273 | ||
| A point addition in | 0.63289 | A multiplication in | 2.05855 | ||
| A scale multiplication in | 206.575 | A modular inversion in | 0.05023 | ||
| A general hash function | 0.00576 | A modular multiplication in | 0.01231 | ||
| A map-to-point hash function | 17.1464 | A modular add in , | 0.00271 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 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/).