Aggregation service method for heterogeneous distributed digital identity
Through signature aggregation technology, the problems of low efficiency and high system complexity of heterogeneous distributed digital authentication are solved, efficient signature verification and user privacy protection are achieved, and verification time and storage requirements are significantly reduced.
Patent Information
- Application Number
- CN202411192695.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-28
- Publication Date
- 2025-01-14
AI Technical Summary
The verification efficiency of heterogeneous distributed digital identity is low and the system complexity is high, resulting in a linear increase in verification time and a significant increase in system complexity, making it difficult to achieve efficient authentication.
By generating random tags by users and exchanging them with verifiable credentials, asymmetric bilinear groups and smart contracts are used for signature aggregation to generate compressed aggregation signatures to reduce the verification load and storage needs of verification agencies.
It significantly improves verification efficiency, reduces system complexity, ensures the non-forgery and unlinkable of aggregated signatures, protects user privacy, and reduces the blockchain storage data and transmission load.
Smart Images

Figure CN119316146A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an aggregation service method for heterogeneous distributed digital identities, and belongs to the technical field of blockchain digital identity aggregation. Background Art
[0002] With the advent of the digital age, networking and digitalization have penetrated into all areas of people's daily activities. In the past, various financial, social service, public management and other activities relied on traditional physical identity proofs, such as ID cards, passports, driver's licenses, company badges, etc. Today, these physical proofs are all continued in the form of digital identities on the Internet, and digital identities have become the core element for people to authenticate their identities, exchange data and access services in the Internet environment.
[0003] With the advent of blockchain technology, a new paradigm called distributed digital identity has emerged, which disperses centralized user identities across multiple networks. Distributed digital identity leverages the inherent properties of blockchain, such as immutability, transparency, and cryptographic security, to provide a more secure, privacy-preserving, and user-centric method of trusted identity authentication. Considering the large-scale identity-related data in the network, the classic blockchain-based distributed digital identity system improves the efficiency of distributed digital identity authentication between different systems and networks through identity aggregation. Identity aggregation technology achieves distributed digital identity batch processing through compressed signatures, which can effectively reduce the communication and storage costs of distributed digital identity authentication.
[0004] In actual scenarios, an entity can have several distributed digital identities from different institutions, where each institution has control authentication of heterogeneous attributes of the entity, and their structural forms are very different. Since heterogeneous distributed digital identities involve multiple different identity attributes, traditional aggregation algorithms cannot effectively aggregate them into an identifier representation. Therefore, a complete distributed digital identity authentication requires the verifier to access and verify the signatures corresponding to each attribute of the distributed digital identity. The issuing institution authenticates the signature of each institution's single attribute and issues a verifiable credential. Then, during verification, the signature of each attribute is verified according to the relevant verification algorithms of different verifiable credentials, which leads to a linear verification time complexity. In addition, identity association relationship analysis cannot be naturally alleviated in the decentralized environment of blockchain. Due to the connectivity between identities, the adversary can still capture the user's identity information from multiple rounds of identity authentication, thereby posing a threat to user privacy.
[0005] When faced with the verification needs of a large number of heterogeneous distributed digital identities, this solution has the following problems:
[0006] 1. Low efficiency of signature verification. In complex application scenarios, authentication of multiple attributes of multiple distributed digital identities may be involved, and the verification agency needs to verify the signatures corresponding to each attribute one by one. The verification time will increase linearly with the increase in the number of verification signatures, greatly reducing the verification efficiency; at the same time, the verification party will face difficulties such as blocking in high-demand scenarios.
[0007] 2. High system complexity. Faced with verifiable credentials issued by multiple institutions, the verifier needs to use the corresponding signature verification algorithm according to the signature algorithm corresponding to different credentials to verify each signature separately, making it difficult to use a unified verification method to achieve efficient authentication. Therefore, the complexity of the verifier's system will increase significantly as the diversity of verification requirements increases.
[0008] Therefore, how to improve the efficiency of signature verification and reduce system complexity when aggregating heterogeneous distributed digital identities has become an urgent problem to be solved. Summary of the invention
[0009] The purpose of the present invention is to solve the technical problems of low signature verification efficiency and high system complexity when aggregating heterogeneous distributed digital identities. An aggregation service method for heterogeneous distributed digital identities is proposed.
[0010] The objective of the present invention is achieved through the following technical solutions:
[0011] The present invention provides an aggregation service method for heterogeneous distributed digital identities, which is applied to a blockchain including a user, a verifiable credential issuing authority, and a verification authority, and comprises the following steps:
[0012] Step 1: The user generates a random label α using a label generation algorithm and sends it to the verifiable credential issuing authority, and the user requests the issuance of a verifiable credential;
[0013] Step 1.1: The user generates the tag generator h according to H(id) of the blockchain node where he is located;
[0014] Step 1.2: User selects a random number As the user's private key, the random label is obtained using the method shown in formula (1) and formula (2)
[0015] param = (G1, G2, G T , p, g1, g2, e; T) (1)
[0016] Wherein, formula (1) is an asymmetric bilinear group where g1 and g2 are random generators of G1 and G2 respectively; is a collection of tags;
[0017]
[0018] Among them, τ is a valid label, and the generated element Input to formula (2) and the output is and τ =
[0019] Step 1.3: The user sends the random tag α to the verifiable credential issuing authority and requests a verifiable credential issued by the verifiable credential issuing authority.
[0020] Step 2: The verifiable credential issuing authority issues a verifiable credential containing a distributed digital identity identifier and an attribute authentication result to the user;
[0021] Step 2.1: The verifiable credential issuing authority generates a random one-time private key sk using formula (3) j,i , and use formula (4) to generate the corresponding public key vk j,i :
[0022]
[0023] Among them, the signature key sk j,i =(t,u,v,r,s), g2 is the generator in formula (1), j,i represents the one-time public and private keys of the j-th signer on the i-th attribute.
[0024] Step 2.2: The verifiable credential issuing agency combines the verifiable credential with the received user label α and the attribute's private key to sign the attribute using formula (5) and sends it to the user. Different attributes are heterogeneous, and the verifiable credential contains heterogeneous attributes and signatures of heterogeneous attributes.
[0025]
[0026] Among them, a message m∈Z p and a public label τ = (t1, t2, t3), output the signature σ of the j-th signer (of m) at index (j, i).
[0027] Step 2.3: The verifiable credential issuing agency collects the signatures of the agencies in step 2.2 and generates a verifiable credential containing the signature and publishes it in the blockchain network;
[0028] Step 3: The user calls the aggregation function Aggregate() in the smart contract to aggregate the signatures of the attributes;
[0029] Step 3.1: Verify the public key vk of the certificate authority j,i Perform linear combination and calculate a compressed aggregate public key avk using the method shown in equations (6) and (7);
[0030] avk=[avkj ] j (6)
[0031] Among them, avk j Using the method of formula (7), the public key containing attributes of the heterogeneous distributed identity is recorded once using different attributes of the same organization and the union is taken with the corresponding public keys with different attributes.
[0032] avk j =VK j ∪[VK′ j,i ] j,i (7)
[0033] Step 3.2: Aggregate the signatures of all heterogeneous attributes and use them as the verifiable credentials provided by the user to the verification agency. Furthermore, the signatures of the attributes are aggregated to obtain the aggregate signature of the heterogeneous attributes in the manner shown in formula (8);
[0034] σ=∏ j,i σ j,i ∈G1 (8)
[0035] Among them, σ j,i are the signatures that need to be aggregated based on the same label τ.
[0036] Step 4: The user randomizes the aggregated signature and label α and sends them together with the aggregated public key to the verification agency for authentication of the aggregated signature;
[0037] Step 5: The verification agency calls the verification function Verify() in the smart contract and uses the properties of bilinear pairing to verify the aggregate signature using formula (9) to prove the legitimacy of the aggregate signature;
[0038]
[0039] Among them, the effective label τ = (t1, t2, t3), for each j, avk j =VK j ∪[VK′ j,i ] j,i , m j =[m j,i ] i , check whether the following equation holds true, where n j = {VK′ j,i}.
[0040] Beneficial effects:
[0041] Compared with the prior art, it has the following beneficial effects:
[0042] This scheme has good reliability and universality. The signature constructed in this aggregate signature scheme is unforgeable and unlinkable, which ensures the reliability of the aggregate signature and realizes the anonymity of the user identity, protecting the privacy and security of the user; when facing different verification requirements, users can aggregate the signatures of each attribute in the verifiable certificate in the blockchain multiple times, without having to apply for the verifiable certificate to the issuing authority multiple times;
[0043] Compared with the traditional heterogeneous distributed digital identity verification scheme, this scheme is more efficient. This scheme aggregates the signatures of the attributes to be verified. The verification agency only needs to verify the aggregated signatures to verify the authenticity of multiple attribute signatures, which significantly reduces the verification time required by the verification agency and improves the overall efficiency of the system.
[0044] Compared with traditional heterogeneous distributed identity authentication schemes, this scheme effectively reduces the storage data of the blockchain and each node on the chain. In this scheme, the aggregation of attribute signatures and related verification keys significantly reduces the transmission load of users and verification agencies; at the same time, the way in which the blockchain stores verifiable credentials effectively reduces the data storage of user nodes. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] Figure 1 It is a schematic diagram of the process of the present invention;
[0046] Figure 2 This is a comparison chart between the present invention and the traditional verification time;
[0047] Figure 3 It is a Caliper test result diagram of the present invention. DETAILED DESCRIPTION
[0048] In order to better illustrate the purpose and advantages of the present invention, the invention is further described below in conjunction with the accompanying drawings and examples. It should be noted that the implementation of the present invention is not limited to the following embodiments, and any form of modification or change made to the present invention will fall within the protection scope of the present invention.
[0049] Example
[0050] This embodiment is illustrated by an example in a heterogeneous distributed digital identity aggregation scenario. For example, in a job-seeking scenario, the employee (individual entity) has distributed digital identities of multiple institutions such as schools, hospitals, and household registration departments. The school identity contains multiple attribute authentications such as student number, transcript, and graduation certificate. The hospital identity contains multiple attribute authentications such as medical card number, medical record, and physical examination results. The household registration department contains multiple attribute authentications such as ID card number, political review results, and household registration. Now the employee needs to submit a verifiable certificate of his or her distributed digital identity to the intended company (the institution required for trusted credentials) to prove the authenticity of his or her graduation certificate, physical examination results, political review results and other information. The mutual recognition efficiency of the system is reflected by the signature and verification times of the distributed digital identity in the entire system.
[0051] like Figure 1 As shown, the present invention provides an aggregation service method for heterogeneous distributed digital identities, and the specific implementation steps are as follows:
[0052] Step 1: The user generates a random label α using a label generation algorithm and sends it to the verifiable credential issuing authority, and the user requests the issuance of a verifiable credential;
[0053] Step 1.1: The user generates the tag generator h according to H(id) of the blockchain node where he is located;
[0054] Step 1.2: User selects a random number As the user's private key, the random label is obtained using the method shown in formula (1) and formula (2)
[0055] param = (G1, G2, G T , p, g1, g2, e; T) (1)
[0056] Wherein, formula (1) is an asymmetric bilinear group where g1 and g2 are random generators of G1 and G2 respectively; is a collection of tags;
[0057]
[0058] Among them, τ is a valid label, and the generated element Input to formula (2) and the output is and τ =
[0059] Step 1.3: The user sends the random tag α to the verifiable credential issuing authority and requests a verifiable credential issued by the verifiable credential issuing authority.
[0060] In the embodiment, the employee uses a tag generation algorithm to generate a random tag tag and sends it to the school, hospital, and household registration department to request the issuance of a verifiable credential;
[0061] Step 2: The verifiable credential issuing authority issues a verifiable credential containing a distributed digital identity identifier and an attribute authentication result to the user;
[0062] Step 2.1: The verifiable credential issuing authority generates a random one-time private key sk using formula (3) j,i , and use formula (4) to generate the corresponding public key vk j,i :
[0063]
[0064] Among them, the signature key sk j,i =(t,u,v,r,s), g2 is the generator in formula (1), j,i represents the one-time public and private keys of the j-th signer on the i-th attribute.
[0065] In the embodiment, after receiving the request from the employee, the verifiable credential issuing agency issues a verifiable credential containing a distributed digital identity and multiple attribute authentication results to the user; a randomized algorithm is used to generate a random one-time private key for each agency and the corresponding multiple attributes, and a public key is generated at the same time;
[0066] Step 2.2: The verifiable credential issuing agency combines the verifiable credential with the received user label α and the attribute's private key to sign the attribute using formula (5) and sends it to the user. Different attributes are heterogeneous, and the verifiable credential contains heterogeneous attributes and signatures of heterogeneous attributes.
[0067]
[0068] Among them, a message m∈Z p and a public label τ = (t1, t2, t3), output the signature σ of the j-th signer (of m) at index (j, i).
[0069] Step 2.3: The verifiable credential issuing agency collects the signatures of the agencies in step 2.2 and generates a verifiable credential containing the signature and publishes it in the blockchain network;
[0070] In the embodiment, after the public and private keys are generated, each verifiable credential issuing agency uses a specified signature algorithm to authenticate the attributes of the school, such as the student number, transcript, and graduation certificate, the hospital, such as the medical card number, medical history, and physical examination results, and the household registration department, such as the ID number, political review results, and household registration information. The tag used is the tag obtained in step 1, and the private key uses the private key of the corresponding attribute obtained in step 2.1 and the private key of the corresponding agency. The verifiable credential issuing agency integrates the signatures of each attribute, generates a verifiable credential, and publishes it to the blockchain.
[0071] Step 3: The user calls the aggregation function Aggregate() in the smart contract to aggregate the signatures of the attributes;
[0072] Step 3.1: Verify the public key vk of the certificate authority j,i Perform linear combination and calculate a compressed aggregate public key avk using the method shown in equations (6) and (7);
[0073] avk=[avk j ] j (6)
[0074] Among them, avk j Using the method of formula (7), the public key containing attributes of the heterogeneous distributed identity is recorded once using different attributes of the same organization and the union is taken with the corresponding public keys with different attributes.
[0075] avk j =VK j ∪[VK′ j,i ] j,i (7)
[0076] Step 3.2: Aggregate the signatures of all heterogeneous attributes and use them as the verifiable credentials provided by the user to the verification agency. Furthermore, the signatures of the attributes are aggregated to obtain the aggregate signature of the heterogeneous attributes in the manner shown in formula (8);
[0077] σ=∏ j,i σ j,i ∈G1 (8)
[0078] Among them, σ j,i are the signatures that need to be aggregated based on the same label τ.
[0079] In the embodiment, the employee calls the Aggregate() function in the smart contract to aggregate the required attribute signatures, specifically using the aggregate signature algorithm in the specified aggregate signature algorithm to aggregate the signatures of the graduation certificate, political review results, and physical examination results in step 2 to obtain the aggregated signature; the public keys of the attribute graduation certificate, political review results, physical examination results, and the public keys of the school, hospital, and household registration department are aggregated to obtain the aggregated public key.
[0080] Step 4: The user randomizes the aggregated signature and label α and sends them together with the aggregated public key to the verification agency for authentication of the aggregated signature;
[0081] In an embodiment, the employee sends the aggregated signature, the aggregated public key and the tag to the intended company to request verification.
[0082] Step 5: The verification agency calls the verification function Verify() in the smart contract and uses the properties of bilinear pairing to verify the aggregate signature using formula (9) to prove the legitimacy of the aggregate signature;
[0083]
[0084] Among them, the effective label τ = (t1, t2, t3), for each j, avk j =VK j ∪[VK′ j,i ] j,i , m j =[m j,i ] i , check whether the following equation holds true, where n j = {VK′ j,i}.
[0085] In the embodiment, the intended company calls the Verify() function in the smart contract and verifies the aggregate signature using the public key and tag obtained in step 5.
[0086] To further illustrate the advantages of the present invention, the following experiments are used for illustration.
[0087] As Figure 2 As shown in the figure, as the number of signatures to be verified increases, the verification time required by the traditional scheme will be much longer than the verification time required by the scheme proposed in this paper. The scheme proposed in this paper shows better performance when the number of required verifications increases, which can significantly improve the verification efficiency of the verifier and reduce the verification time. The time required for aggregated signatures increases steadily with the increase in the number of signatures to be aggregated. Therefore, for users, users can aggregate a large number of signatures in a shorter time; for verification agencies, the aggregated signatures can significantly reduce the complexity of the system and improve the verification efficiency of the system.
[0088] like Figure 3 As shown in the figure, as the number of attributes to be aggregated increases, the average CPU usage and throughput (TPS) of the chain code change. It can be seen that as the number of attributes to be aggregated increases, the average CPU usage of the chain code remains relatively balanced, and the increase in the number of aggregated attributes has little impact on the CPU operating efficiency; at the same time, as the number of attributes to be aggregated increases, the throughput rate decreases slightly but still does not fluctuate too much. Analysis shows that the aggregation scheme of heterogeneous distributed digital identities based on blockchain proposed in this paper has relatively stable operating performance in the blockchain and is also more efficient than traditional systems.
[0089] The results show that the present invention solves the technical problems of low signature verification efficiency and high system complexity when aggregating heterogeneous distributed digital identities.
Claims
1. An aggregation service method for heterogeneous distributed digital identities, characterized by: The following steps are included: Step 1: The user generates a random label α using a label generation algorithm and sends it to the verifiable credential issuing authority, and the user requests the issuance of a verifiable credential; Step 2: The verifiable credential issuing authority issues a verifiable credential containing a distributed digital identity identifier and an attribute authentication result to the user; Step 2.1: The verifiable credential issuing authority generates a random one-time private key sk using formula (3) j,i , and use formula (4) to generate the corresponding public key vk j,i : Among them, the signature key sk j,i =(t,u,v,r,s), g2 is the generator in formula (1), j,i represents the one-time public and private key of the j-th signer on the i-th attribute; Step 2.2: The verifiable credential issuing authority combines the verifiable credential with the received user label α and the attribute's private key to sign the attribute using formula (5) and sends it to the user. Different attributes are heterogeneous. The verifiable credential contains heterogeneous attributes and signatures of heterogeneous attributes. Among them, a message m∈Z p and a public label τ = (t1, t2, t3), output the signature σ of the jth signer (of m) at index (j, i); Step 2.3: The verifiable credential issuing agency collects the signatures of the agencies in step 2.2 and generates a verifiable credential containing the signature and publishes it in the blockchain network; Step 3: The user calls the aggregation function Aggregate() in the smart contract to aggregate the signatures of the attributes; Step 3.1: Verify the public key vk of the certificate authority j,i Perform linear combination and calculate a compressed aggregate public key avk using the method shown in equations (6) and (7); avk=[avk j ] j (6) Among them, avk j Using formula (7), the public key containing attributes of heterogeneous distributed identities is recorded once using different attributes of the same organization and the union is taken with the corresponding public keys with different attributes; yes j =VK j ∪[VK′ j,i ] j,i (7) Step 3.2: Aggregate the signatures of all heterogeneous attributes and use them as the verifiable credentials provided by the user to the verification agency; further, use the signatures of the attributes as shown in formula (8) to obtain the aggregate signature of the heterogeneous attributes; σ=∏ j,i s j,i ∈G1 (8) Among them, σ j,i are the signatures that need to be aggregated based on the same label τ; Step 4: The user randomizes the aggregated signature and label α and sends them together with the aggregated public key to the verification agency for authentication of the aggregated signature; Step 5: The verification agency calls the verification function Verify() in the smart contract and uses the properties of bilinear pairing to verify the aggregate signature using formula (9) to prove the legitimacy of the aggregate signature; Among them, the effective label τ=(t1,t2,ty3), for each j, avk j =VK j ∪[VK′ j,i ] j,i , m j =[m j,i ] i , check whether the following equation holds true, where n j = {VK′ j,i }.
2. The method for aggregated services for heterogeneous distributed digital identities according to claim 1, characterized in that: Step 1 is implemented as follows: Step 1.1: The user generates the tag generator h according to H(id) of the blockchain node where he is located; Step 1.2: User selects a random number As the user's private key, the random label is obtained using the method shown in formula (1) and formula (2) param=(G1,G2,G T ,p,g1,g2,e;T) (1) Wherein, formula (1) is an asymmetric bilinear group where g1 and g2 are random generators of G1 and G2 respectively; is a collection of tags; τ=(h,h t′ ,h t′2 ) (2) Among them, τ is a valid label, and the generated element Input to formula (2) and the output is and τ=(h,h t′ ,h t′2 ) Step 1.3: The user sends the random tag α to the verifiable credential issuing authority and requests a verifiable credential issued by the verifiable credential issuing authority.