Signature method, electronic equipment and computer readable storage medium

By using the key generation center in the signature system to generate public and private keys, build public key collections and generate key images, the problems of signer identity obscurity and signature security in the prior art are solved, and a high anonymity and security signature process is realized.

CN119696789AActive Publication Date: 2025-03-25HUBEI UNIV OF TECH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411146143.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-20
Publication Date
2025-03-25
Estimated Expiration
2044-08-20

AI Technical Summary

Technical Problem

Existing adapter signatures cannot achieve the obscureness of user identity, while the signature of ring signatures lacks security verification and cannot guarantee the security of signatures.

Method used

The user's public and private keys are generated through the key generation center. The verifier builds a public key collection and generates a key image. The signer uses the key image and the public key collection to pre-sign. The verifier uses the secret witness to convert the pre-signature into a full signature. The signer restores the secret witness to obtain the final signature.

Benefits of technology

It realizes the obscureness of the signer's identity and the security of the signature, increases the anonymity and security of the transaction, and prevents the signature from being forged or tampered with.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119696789A_ABST
    Figure CN119696789A_ABST
Patent Text Reader

Abstract

The invention provides a signature method. The method comprises the following steps: a key generation step: a key generation center generates a public key and a private key of each user; a secret key mirror image generation step: the verifier constructs a group of public key sets according to the public keys of the plurality of users, and generates a secret key mirror image according to the public key sets and the secret witness of the verifier; a pre-signature generation step: a signer uses a secret key mirror image, a public key set and a private key of the signer to pre-sign the generated message; a full signature generation step: the verifier converts the pre-signature into a full signature by using secret witness; and secret recovery witness: the signer recovers the secret witness according to the full signature and the pre-signature so as to obtain the signature required by the signer. According to the method, the public key set is constructed and the key mirror image is generated, any participant needs to sign through the public key set and the key mirror image in the signing process, and an external observer cannot directly associate the signature with a specific user, so that the actual signer is hidden in a plurality of users, and the transaction anonymity is increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of information security technology, and in particular to a signature method, electronic equipment and computer-readable storage medium. Background Art

[0002] Adaptor Signature is an enhanced digital signature scheme that combines encryption and signature technology to achieve conditional signatures or commitments. This technology allows the signature to be converted into a valid signature when certain conditions are met, and the satisfaction of the conditions can be proved. This is very useful in many cryptographic applications, such as atomic swaps, smart contracts, and distributed ledger technology.

[0003] Ring signature introduces the identity information of other people and uses one's own private key to hide one's true identity in it, so that other people only know that it is one of these people, but do not know which specific person it is, so that one's own identity can be successfully hidden. The SM2 ring signature method is to improve the national secret SM2 signature algorithm so that it can hide the identity information of the signer while completing the signature. By introducing the ring adapter signature to provide a cryptographic technology with strong privacy protection, users are allowed to anonymously sign messages within a group. This signature ensures that the identity of the signer is not identifiable in the group, while still maintaining the unforgeability and non-repudiation of the signature. It is widely used to enhance the anonymity of transactions and communications, especially for scenarios that require a high degree of privacy protection, such as electronic voting and privacy-protected digital currency transactions.

[0004] In the above existing signature schemes, the adapter signature cannot achieve the anonymity of the user's identity, and the ring signature does not have security verification and cannot guarantee the security of the signature. Summary of the invention

[0005] In view of this, the present invention proposes a signature method, device and storage medium, which can ensure the confidentiality of the signer's identity while achieving signature security.

[0006] According to one aspect of the present invention, a signature method is provided, the method is applied to a signature authorization system, the signature authorization system includes a key generation center and multiple users, the key generation center and each user have established communication, the multiple users include a signer and a verifier who participate in the signature; the method includes:

[0007] Key generation step: The key generation center generates the public key and private key of each user;

[0008] Key image generation step: The verifier constructs a set of public key sets based on the public keys of the multiple users And generate a key image based on the public key set and its own secret witness Wherein, n is the number of public keys in the public key set, and y is the secret witness;

[0009] Pre-signature generation step: the signer uses the key image, the public key set and his own private key to pre-sign the generated message;

[0010] Full signature generation step: the verifier uses the secret witness to convert the pre-signature into a full signature;

[0011] Secret recovery witness: The signer recovers the secret witness based on the full signature and the pre-signature to obtain the signature he needs.

[0012] Optionally, the pre-signature generation step includes:

[0013] calculate in, is the preset hash function, is the public key set, m is the generated message, k π is a preset random number, π is the position of the signer's public key in the public key set, Y is a preset public witness, L π is the key image;

[0014] For i=π+1, ..., n, 1, ..., π-1, perform the following operations in sequence:

[0015] Random Generation calculate Where c1 = c n+1 , C π+1 is a random number of the initial challenge, used to start the calculation chain; c n is the value after multiple iterations; c n+1 is the final value of multiple iterative calculations; G is the base point of the preset elliptic curve, pk i is the i-th public key in the public key set;

[0016] calculate Get Pre-Signed in, is the signature value of the pre-signature, sk π is the private key of the signer, k π is a preset random number, mod is a modulo operation, and q is a preset constant.

[0017] Optionally, the method further includes:

[0018] Pre-signature verification step: The verifier verifies c′1, Is it true? If it is true, then for i=1,...n, calculate Among them, Z i ′ is an intermediate calculated value in the pre-signature verification process, which is used as part of the calculation chain to ensure the correctness of the pre-signature; c′1=c1, c′1 is a parameter used to verify the challenge, is a pre-signed verification value used by the verifier, where the verifier is any one of the multiple users;

[0019] Test c1′=c n+1 'Is it true? If so, the verification is successful.

[0020] Optionally, the full signature generation step includes:

[0021] Calculate σ = (s1, s2, ..., s n , c1) obtain the full signature; wherein, y is the secret witness, is the pre-signature, i=1,...n, n is the number of public keys in the public key set, s i is the signature value in the full signature.

[0022] Optionally, after the full signature generation step, the method further includes: a full signature adaptation step:

[0023] For i=1, 2, ...n, calculate Z in turn i ″=s i G+s i pk i +c″ i pk i , Where c1″=c1,Z i ″ is the intermediate calculated value that needs to be verified in the full signature adaptation process, used for full signature adaptation, c i+1 It is the challenge value required for full signature verification, used to verify whether the full signature is successfully adapted;

[0024] Test c1″=c n+1 "Is it true? If so, the adaptation is successful.

[0025] Optionally, before the pre-signature generation step, the method further includes:

[0026] Public key set updating step: the signer determines whether its own public key is in the public key set. If not, any public key in the public key set is replaced with the signer's own public key, and the key image is updated.

[0027] Optionally, the key generation steps include:

[0028] Select a random number as each user's private key sk;

[0029] Calculate the public key pk=skG of each user, where G is the base point of the preset elliptic curve.

[0030] According to another aspect of the present invention, a signature authorization system is provided, which includes a key generation center and multiple users, and communication is established between the key generation center and each user. The multiple users include signers and verifiers participating in the signature; the signature authorization system executes the above-mentioned signing method.

[0031] According to another aspect of the present invention, an electronic device is provided. The electronic device includes a memory and a processor. The memory stores a computing program. When the computing program is executed by the processor, the processor implements the above-mentioned signature method.

[0032] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computing program, and when the computing program is executed by a processor, the processor implements the above-mentioned signature method.

[0033] The signature method of the present invention has the following beneficial effects compared with the prior art:

[0034] A public key set is constructed through the public keys of multiple users and a key image is generated. During the signing process, any participant must sign with the public key set and the key image. External observers cannot directly associate the signature with a specific user, thereby hiding the actual signer among multiple users, increasing the anonymity of the transaction. In addition, the key image is generated based on the secret witness and the public key set. The signer's signature depends on the signer's private key, public key set and key image generation. The secret witness is held exclusively by the verifier, and the private key is held only by the signer. Only users with the corresponding private key can generate a valid signature, which makes the signature unforgeable and increases the security of the signature.

[0035] The present invention can also enhance privacy protection by hiding the real identity of the participants, so that the transaction cannot be directly associated with a specific user during the signing process. This anonymity is achieved by using the ring adapter signature technology, which allows participants to participate in the signing and verification process while keeping their identities secret. This is extremely important for applications that need to protect user privacy (such as voting systems, anonymous transactions, etc.); it can also improve transaction security. Due to the unforgeability of the ring adapter signature, each signature is unique and directly depends on the user's private key and the specific configuration of the ring. This dependence makes it difficult for the signature to be forged or tampered with, thereby greatly improving the security of the system. In addition, the generation and verification process of the signature will not expose key private key information, enhancing the system's ability to resist external attacks; it can also improve compatibility and efficiency: the solution of the present invention uses the SM2 algorithm, which is a public key encryption technology that complies with relevant standards and has been widely used in related systems with good compatibility. At the same time, compared with the traditional ring signature technology, it has improved efficiency. It supports fast signature generation and verification processes and is suitable for use in resource-constrained environments. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0037] Figure 1 A schematic diagram of a signature authorization system according to an embodiment of the present invention;

[0038] Figure 2 A flow chart of a signature method according to an embodiment of the present invention;

[0039] Figure 3 A flow chart of a signing method according to another embodiment of the present invention;

[0040] Figure 4 A flow chart of a signature method according to another embodiment of the present invention;

[0041] Figure 5 The figure is a schematic diagram of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0042] The following will be combined with the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0044] like Figure 1 As shown, the signature authorization system disclosed in the present invention includes a key generation center and multiple users. Each user is usually a direct participant in the transaction or a mutually trusted entity. The key generation center is a third-party platform that provides support for transactions between users. Communication is established between the key generation center and each user. When transactions are made between users, operations are performed through the key generation center. Among them, multiple users include signers and verifiers who conduct transactions, as well as other transaction participants.

[0045] The key generation center performs initialization operations before the transaction. Specifically, the key generation center generates the system parameters of the entire system. The system parameters can be empirical values ​​set based on experience, or they can be calculated using the elliptic curve equation in the SM2 algorithm. When calculating and generating system parameters using the elliptic curve equation in the SM2 algorithm, the key generation center obtains the security parameter λ and selects the base point G based on the pre-selected elliptic curve. The pre-selected elliptic curve y 2 =x 3 The coefficients a and b in +ax+b satisfy 4a 3 +27b 2 ≠0, and the elliptic curve has a sufficiently large finite field Where p is a prime number. The points on the elliptic curve should have a high order to resist the discrete logarithm problem attack on the elliptic curve. The base point G is a generator in the elliptic curve group that meets the above conditions. Its order n is a large prime number. The selection of the base point G has an important impact on the security and efficiency of the system. The base point G is usually selected by technicians in this field based on experience. Select an elliptic curve L that meets the requirements from the elliptic curve group to determine the parameters a and b. After selecting the elliptic curve L and the base point G, the key generation center selects a suitable hash function And verify whether these parameters meet the security requirements to ensure that all curves and parameters not only meet the theoretical requirements but also resist various attacks that may be encountered in reality, such as congruence attacks, small subgroup attacks, etc. After the ellipse verification condition is verified, the system parameters are obtained, including the base point G. The SM2 algorithm is a public key encryption technology that complies with national standards and has been widely used in commercial and government systems with good compatibility.

[0046] After determining the system parameters, the key generation center generates the public key and private key of each user. Specifically, a random number is selected as the private key sk of each user, and the public key pk = skG, which is distributed to each user through a secure channel. The key generation center selects a random number y as a secret witness. This number must be in the finite field defined by the elliptic curve. The secret witness is the private secret witness of the verifier during the transaction, which is not disclosed to ensure the security of the transaction. The key generation center uses the selected elliptic curve and base point G to calculate the public witness Y. In some embodiments, Y can be calculated by the point multiplication operation on the elliptic curve, that is, Y=yG. Of course, in some other embodiments, Y can also be calculated by other operations, and the embodiments of the present invention are not limited to this. The public witness Y can be accessed and verified by other parties to the transaction, but the secret witness y cannot be derived from Y.

[0047] After the key generation center completes the above operations, the validators participating in the transaction obtain the public keys of multiple users to construct a public key set. And generate a key image Lπ. Among them, the public key set includes n public keys, and the key image The verifier collects the public key The public witness Y and key image Lπ are published for the signer to sign the generated information m.

[0048] Signer π uses key image L π , public key set And its own private key sk π Pre-sign the generated message. Specifically, the signer calculates Among them, k π is a preset random number, and π is the position of the signer's public key in the public key set.

[0049] For i=π+1, ..., n, 1, ..., π-1, perform the following operations in sequence:

[0050] Random Generation calculate Where c1 = c n+1 , C π+1 is a random number of the initial challenge, used to start the calculation chain; c n is the value after multiple iterations; c n+1 is the final value of multiple iterative calculations; G is the base point of the preset elliptic curve, pk i is the i-th public key in the public key set.

[0051] calculate Get Pre-Signed in, is the pre-signed signature value, sk π is the signer’s private key, kπ is a preset random number, mod is a modulo operation, and q is a preset constant.

[0052] After the signer pre-signs the generated message m, the verifier uses the secret witness to convert the pre-signature into a full signature. Then, for i=π+1,...,n,1,...,π-1, calculate Get the full signature σ=(s1,s2,...,s n , c1). After the verifier publishes the full signature, the signer can obtain the full signature. The signer can restore the secret witness based on the full signature and the pre-signature to obtain the signature he needs.

[0053] In an embodiment of the present invention, the signature system includes other users in addition to the signer and the verifier. A public key set is constructed through the public keys of multiple users and a key image is generated. During the signing process, any participant needs to sign through the public key set and the key image. External observers cannot directly associate the signature with a specific user, thereby hiding the actual signer among multiple users, thereby increasing the anonymity of the transaction. In addition, the key image is generated based on the secret witness and the public key set. The signer's signature depends on the signer's private key, the public key set and the key image. The secret witness is uniquely held by the verifier, and the private key is only held by the signer. Only the user with the corresponding private key can generate a valid signature, which makes the signature unforgeable and increases the security of the signature.

[0054] Another embodiment of the present invention provides a signature method, which is applied to Figure 1 A signature authorization system, the method comprising: Figure 2 The following steps are shown:

[0055] Step S10: key generation step.

[0056] In this step, the key generation center generates the public key and private key of each user. The specific generation method can be any key generation method. In some embodiments, the public key and private key of each user are generated by the SM2 algorithm. When the public key and private key of each user are generated by the SM2 algorithm, the system parameters are first selected by the elliptic curve in the SM2 algorithm. Specifically, the user inputs the security parameter λ, and the system parameters are calculated according to the pre-selected elliptic curve. The key generation center obtains the security parameter λ and selects the base point G according to the pre-selected elliptic curve. Among them, the pre-selected elliptic curve y 2 =x 3 The coefficients a and b in +ax+b satisfy 4a 3 +27b 2 ≠0, and the elliptic curve has a sufficiently large finite field Where p is a prime number. The points on the elliptic curve should have a high order to resist the discrete logarithm problem attack on the elliptic curve. The base point G is a generator in the elliptic curve group that meets the above conditions. Its order n is a large prime number. The selection of the base point G has an important impact on the security and efficiency of the system. The base point G is usually selected by technicians in this field based on experience. Select an elliptic curve L that meets the requirements from the elliptic curve group to determine the parameters a and b. After selecting the elliptic curve L and the base point G, the key generation center selects a suitable hash function And verify whether these parameters meet the security requirements to ensure that all curves and parameters not only meet the theoretical requirements but also resist various attacks that may be encountered in reality, such as congruence attacks, small subgroup attacks, etc. After the ellipse verification condition is verified, the system parameters are obtained, including the base point G. The SM2 algorithm is a public key encryption technology that complies with national standards and has been widely used in commercial and government systems with good compatibility.

[0057] After determining the system parameters, the key generation center generates the public key and private key of each user. Specifically, a random number is selected as the private key sk of each user, and the public key pk=skG, which is distributed to each user through a secure channel. The key generation center selects a random number y as a secret witness. This number must be in the finite field defined by the elliptic curve L. The secret witness is the private secret witness of the verifier during the transaction, which is not disclosed to ensure the security of the transaction.

[0058] Step S20: key image generation step.

[0059] In this step, the verifier constructs a set of public keys based on the public keys of multiple users. And according to the public key set The key image Lπ is the product of the verifier’s secret witness and the public key set point, that is, Where y is the secret witness. The verifier sets the public key The public witness Y and the key image Lπ are published for the signer to sign the generated information m. The public key set includes n public keys. It should be known that when constructing a public key set, some of the multiple users can be selected to construct the public key set, or all users can be selected to construct the public key set. By selecting multiple users to participate in the signature, the actual signer can be concealed.

[0060] Step S30: Pre-signature generation step.

[0061] In this step, the signer π uses the key image L π , public key set And its own private key sk πPre-sign the generated message. Specifically, the signer calculates Among them, k π is a preset random number, and π is the position of the signer's public key in the public key set.

[0062] For i=π+1, ..., n, 1, ..., π-1, perform the following operations in sequence:

[0063] Random Generation calculate Where c1 = c n+1 , C π+1 is a random number of the initial challenge, used to start the calculation chain; c n is the value after multiple iterations; c n+1 is the final value of multiple iterative calculations; pk i is the i-th public key in the public key set.

[0064] calculate Get Pre-Signed in, is the pre-signed signature value, sk π is the signer’s private key, k π is a preset random number, mod is a modulo operation, and q is a preset constant.

[0065] In some embodiments, before generating a pre-signature, the signer needs to confirm whether the signer's own public key is in the public key set. If not, any public key in the public key set is replaced with the signer's own public key and the key image is updated. The specific process is as follows: The updated public key set Calculate L π =sk π Y, the updated key image set

[0066] Step S40: Full signature generation step.

[0067] In this step, the verifier uses the secret witness to convert the pre-signature into a full signature. Then, for i=π+1,...,n,1,...,π-1, calculate Get the full signature σ=(s1,s2,...,s n ,c1),s i It is the signature value in the full signature.

[0068] Step S50: Secret recovery witness step.

[0069] In this step, after the verifier publishes the full signature, the signer can obtain the full signature. The signer can recover the secret witness based on the full signature and the pre-signature. Thus, the secret witness y is recovered. The specific recovery process is as follows:

[0070]

[0071] σ=(s1,s2,...,s n , c1)

[0072]

[0073] After determining the secret witness y, the signature required can be obtained based on the secret witness y and the pre-signature. Specifically, the signer can convert the verifier's pre-signature into a full signature based on the verifier's secret witness y and the verifier's pre-signature. The method for generating the verifier's pre-signature is the same as the method for generating the signer's pre-signature. After obtaining the verifier's full signature and its own full signature, the signer can complete the transaction.

[0074] In an embodiment of the present invention, the signature system includes other users in addition to the signer and the verifier. A public key set is constructed through the public keys of multiple users and a key image is generated. During the signing process, any participant needs to sign through the public key set and the key image. External observers cannot directly associate the signature with a specific user, thereby hiding the actual signer among multiple users, thereby increasing the anonymity of the transaction. In addition, the key image is generated based on the secret witness and the public key set. The signer's signature depends on the signer's private key, the public key set and the key image. The secret witness is uniquely held by the verifier, and the private key is only held by the signer. Only the user with the corresponding private key can generate a valid signature, which makes the signature unforgeable and increases the security of the signature.

[0075] Figure 3 A signing method according to another embodiment of the present invention is shown, and the method comprises the following steps:

[0076] Step S11: key generation step.

[0077] Step S21: key image generation step.

[0078] Step S31: Pre-signature generation step.

[0079] Steps S11 to S31 are respectively the same as steps S10 to S30 , and please refer to the description of steps S10 to S30 .

[0080] Step S41: Pre-signature verification step.

[0081] In this step, the verifier obtains the published key image Lπ and public key set Pre-signed After that, pre-sign Verify. The specific verification process is as follows:

[0082] The tester tests c′1, Is it true? If it is true, then for i=1,...n, calculate Among them, Z i ′ is the intermediate calculation value in the pre-signature verification process, which is used as part of the calculation chain to ensure the correctness of the pre-signature. c′1=c1, c′1 is the parameter used to verify the challenge, It is the pre-signed verification value used by the verifier, and the verifier is any one of multiple users.

[0083] Test c1′=c n+1 ' is true, if true, the verification is successful. When the verification is successful, execute the following steps.

[0084] Step S51: Full signature generation step.

[0085] Step S61: Secret recovery witness step.

[0086] Steps S51 to S61 are the same as steps S40 to S50 , and please refer to the description of steps S40 to S50 .

[0087] In this embodiment, after the signer performs pre-signing, the pre-signature is verified to ensure the security of the signature.

[0088] Figure 4 A signing method according to another embodiment of the present invention is shown, and the method comprises the following steps:

[0089] Step S12: key generation step.

[0090] Step S22: key image generation step.

[0091] Step S32: Pre-signature generation step.

[0092] Step S42: Full signature generation step.

[0093] Steps S11 to S31 are respectively the same as steps S10 to S30 , and please refer to the description of steps S10 to S30 .

[0094] Step S52: Full signature adaptation step.

[0095] In this step, after obtaining the full signature, the verifier adapts the full signature. Specifically, for i=1, 2, ...n, Z is calculated in sequence i ″=s i G+s i pk i +c″ i pk i , Where c1″=c1; Z i ″ is the intermediate calculation value that needs to be verified during the full signature adaptation process and is used for full signature adaptation. i+1 ″ is the challenge value required for full signature verification, which is used to verify whether the full signature is successfully adapted. Check c1″=c n+1 "Is it true? If so, the adaptation is successful.

[0096] Step S62: Secret recovery witness step.

[0097] In this embodiment, a full signature adaptation step is added to ensure the accuracy of the signature.

[0098] The present invention utilizes ring adapter signatures to allow participants to verify transactions without revealing their specific identities, which provides important privacy protection for application scenarios that require anonymity (such as certain cryptocurrency transactions). Due to the use of random witness and ring signature technology, external observers cannot directly associate signatures with specific keys or identities, thereby increasing the security and anonymity of transactions. The ring adapter signature scheme can be flexibly integrated into a variety of different systems and applications, and can be easily expanded to support larger signature groups or more complex verification scenarios. Since each signature is generated based on the user's private key and a specific ring configuration, this increases the unforgeability of the signature. Only users with the corresponding private key can generate a valid signature. The ring adapter signature generates a unique witness value in each transaction, making it impossible to replay old transactions (to forge or reuse previous transactions).

[0099] Figure 5 A schematic diagram of an electronic device according to an embodiment of the present invention is shown. Figure 5 As shown, the electronic device of an embodiment of the present invention includes a memory 51 and a processor 52. The memory 51 stores a computing program, which can be executed by the processor 52. When the computing program is executed by the processor 52, the processor 52 can implement the steps corresponding to the signature method in any of the above embodiments.

[0100] It should be understood that in the embodiment of the present invention, the memory 51 can be any computer-readable memory, such as RAM, Flash, etc., and the embodiment of the present invention is not limited to the specific type of the memory 51. There can be one or more processors 52, and the processor 52 can execute the logic corresponding to the calculation program and output the calculation result.

[0101] An embodiment of the present invention further provides a computer-readable storage medium, in which a computing program is stored. When the computing program is executed, the steps corresponding to the signing method in any of the above embodiments can be implemented.

[0102] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A signature method, characterized in that: The method is applied to a signature authorization system, the signature authorization system includes a key generation center and multiple users, the key generation center and each user have established communication, the multiple users include a signer and a verifier who participate in the signature; the method includes: Key generation step: The key generation center generates the public key and private key of each user; Key image generation step: The verifier constructs a set of public key sets based on the public keys of the multiple users And generate a key image based on the public key set and its own secret witness Wherein, n is the number of public keys in the public key set, and y is the secret witness; Pre-signature generation step: the signer uses the key image, the public key set and his own private key to pre-sign the generated message; Full signature generation step: the verifier uses the secret witness to convert the pre-signature into a full signature; Secret recovery witness: The signer recovers the secret witness based on the full signature and the pre-signature to obtain the signature he needs.

2. The method according to claim 1, characterized in that The pre-signature generation step comprises: calculate in, is the preset hash function, is the public key set, m is the generated message, k π is a preset random number, π is the position of the signer's public key in the public key set, Y is a preset public witness, L π is the key image; For i=π+1, ..., n, 1, ..., π-1, perform the following operations in sequence: Random Generation calculate Where c1 = c n+1 , c π+1 is a random number of the initial challenge, used to start the calculation chain; c n is the value after multiple iterations; c n+1 is the final value of multiple iterative calculations; G is the base point of the preset elliptic curve, pk i is the i-th public key in the public key set; calculate Get Pre-Signed in, is the signature value of the pre-signature, sk π is the private key of the signer, k π is a preset random number, mod is a modulo operation, and q is a preset constant.

3. The method according to claim 2, characterized in that The method further comprises: Pre-signature verification step: The verifier verifies c′1, Is it true? If true, then for i=1,...n, calculate Among them, Z i ′ is an intermediate calculated value in the pre-signature verification process, which is used as part of the calculation chain to ensure the correctness of the pre-signature; c′1=c1, c′1 is a parameter used to verify the challenge, is a pre-signed verification value used by the verifier, where the verifier is any one of the multiple users; Test c1′=c n+1 'Is it true? If so, the verification is successful.

4. The method according to claim 2, characterized in that The full signature generation step comprises: Calculate σ = (s1, s2, ..., s n , c1) obtain the full signature; wherein, y is the secret witness, is the pre-signature, i=1,...n, n is the number of public keys in the public key set, s i is the signature value in the full signature.

5. The method according to claim 4, characterized in that After the full signature generation step, the method further comprises: a full signature adaptation step: For i=1, 2, ...n, calculate Z in turn i ″=s i G+s i pk i +c″ i pk i , Where c1″=c1,Z i ″ is the intermediate calculated value that needs to be verified in the full signature adaptation process, used for full signature adaptation, c i+1 ″ is the challenge value required for the full signature verification, used to verify whether the full signature is successfully adapted; Test c1″=c n+1 "Is it true? If so, the adaptation is successful.

6. The method according to claim 1, characterized in that Before the pre-signature generation step, the method further includes: Public key set updating step: the signer determines whether its own public key is in the public key set. If not, any public key in the public key set is replaced with the signer's own public key, and the key image is updated.

7. The method according to claim 1, characterized in that The key generation step comprises: Select a random number as each user's private key sk; Calculate the public key pk=skG of each user, where G is the base point of the preset elliptic curve.

8. A signature authorization system, comprising a key generation center and a plurality of users, wherein communication is established between the key generation center and the users, and the plurality of users include signers and verifiers participating in the signature; characterized in that: The signature authorization system executes the signature method as described in any one of claims 1-7.

9. An electronic device, characterized in that: The electronic device includes a memory and a processor, the memory stores a computing program, and when the computing program is executed by the processor, the processor implements the signature method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computing program, and when the computing program is executed by a processor, the processor implements the signature method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Adapter signature generation method based on SM2 algorithm

    CN113452529A

  • Method and device for cooperatively generating SM2 digital signature by multiple parties

    CN115473633A

  • Adapter signature method based on double rings

    CN115632786A

  • Blind adapter signature method and system based on SM2 algorithm

    CN117335979A

  • Signature method and device

    CN118157874A