A Regulatable Approach to Dynamic Self-Sovereign Identity Generation
Through a regulated dynamic self-sovereign identity generation method, blockchain and biometric technology are used to solve the security risks and witch attack problems of existing self-sovereign identity management solutions, and the uniqueness and high security of digital identities are achieved.
Patent Information
- Application Number
- CN202111122272.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-24
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2041-09-24
AI Technical Summary
The existing self-sovereign identity management solutions have security risks, such as identity information leakage, identity impersonation and identity fraud, and it is difficult to effectively resist witch attacks and maintain orderly cyberspace.
A supervisable dynamic self-sovereign identity generation method is proposed, and the unique digital human identity is generated and managed through the collaborative work of information collection and verification agencies, digital human generation agencies, regulatory agencies, identity information blockchain and digital human behavior blockchain, and the uniqueness and security of identity are realized through biometric activation.
Effectively prevent digital identities from being impersonated or fraud, resist witch attacks, ensure that each physical person has only one active digital identity, and achieve a balance between user privacy and supervision through the combination of Shamir(t,n) threshold secret sharing algorithm and alliance blockchain.
Smart Images

Figure CN113886778B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of self-sovereign identity, and in particular to a controllable dynamic self-sovereign identity generation method. Background Art
[0002] In traditional identity management solutions, users' digital identities are completely controlled by service providers. This approach poses huge security risks, such as identity information leakage, identity impersonation, and identity fraud.
[0003] In response to this situation, many blockchain-based self-sovereign identity schemes have been proposed in order to allow users to fully control their digital identities. However, these schemes have many problems. For example, some schemes use static strings that are easily abused as digital identities; some schemes overemphasize the importance of user self-sovereignty, which brings challenges to maintaining the order of cyberspace; and some schemes allow users to register and hold multiple identities to protect user privacy, which facilitates the implementation of Sybil attacks. Therefore, this chapter proposes a supervisable dynamic self-sovereign identity generation scheme (SDSSIG). Summary of the invention
[0004] The present invention mainly aims at the deficiencies of existing self-sovereign identity solutions and provides a controllable dynamic self-sovereign identity generation method.
[0005] The technical solution adopted by the present invention to solve the technical problem is as follows:
[0006] The present invention includes seven components: information collection and verification agency, physical human, digital human, digital human generation agency, regulatory agency, identity information blockchain and digital human behavior blockchain. The interaction steps of each component are as follows:
[0007] Step 1: System initialization: Initialize the identity information blockchain, information collection and verification agency, digital human generation agency and regulatory agency respectively to generate the parameters required by the system;
[0008] Step 2: The physical person digitizes his or her personal information through the information collection and verification agency; the physical person proves the authenticity of his or her identity to the information collection and verification agency, and obtains the identity signature of his or her identity-related information after this process; the information collection and verification agency consists of two types of entities, namely the metadata verification party and the biometric collection party, which are responsible for collecting and verifying the physical person's personal information, such as name, address, biometrics, etc., and hashing the relevant personal information, and then storing the hash result, the metadata verification party's identity identifier and the biometric collection party's identity identifier in the identity information blockchain in the form of a transaction;
[0009] Step 3. The physical person applies for a digital person from the digital person generating agency. The digital person generating agency consists of two types of entities, namely the digital person generating party and the secure storage party. The digital person generating party is an efficient computing center responsible for all computing work, while the secure storage party is responsible for confidentially storing the physical person's identity information and digital person information. The physical person submits the identity signature issued by the information collection and verification agency to the digital person generating agency. After verifying that the identity signature is correct, the digital person generating party generates a unique digital person for the physical person and hashes it, then encrypts and shards the hash result and the physical person's identity information, and sends the sharded data to the secure storage party. Multiple secure storage parties store a copy of the sharding result locally with the same index value. After ensuring that the data is securely stored, the digital person generating party sends the digital person generated for it to the physical person, and then stores the digital person hash result, the index value recorded by the secure storage party, and the identity identifier of the digital person generating party in the form of a transaction in the identity information blockchain.
[0010] Step 4: Supervision of malicious physical persons; the regulatory agency monitors the data on the digital person behavior blockchain in real time around the clock. Once a regulatory agency finds that a digital person’s behavior is abnormal, it will immediately issue a regulatory request to other regulatory agencies. Within a certain time limit, when the regulatory agency that accepts the regulatory request reaches the specified threshold, the regulatory process for the digital person will be initiated; the regulatory agency that initiates the regulatory request obtains the encrypted physical person identity information corresponding to the digital person through the identity information blockchain and the digital person generation agency, and then stores the timestamp, the hash result of the digital person, and the identity of the regulatory agency that initiated the regulatory request in the form of a transaction in the identity information blockchain; all agreeing regulatory agencies jointly participate in restoring the encrypted physical person identity information and supervise the malicious physical person.
[0011] Furthermore, the system initialization described in step 1 is the initialization of the identity information blockchain IIC, which provides parameters for the initialization of system entities; the information collection and verification agency, the digital human generation agency and the regulatory agency are initialized to generate subkeys and public-private key pairs for their internal entities, which are specifically implemented as follows:
[0012] 1-1. Identity information blockchain initialization: The identity information blockchain IIC first selects a large prime number p and an elliptic curve E p (a,b) and a finite field F of order n p The base point G is then released by IIC in the genesis block. The public parameters P = {p, E p (a,b),G,n}; then, IIC randomly selects a 128-bit AES key as the master key MK; finally, IIC uses the Shamir (t,n) threshold secret sharing algorithm to divide MK into two groups of subkeys, one of which is sent to the secure storage party SS and the other to the regulatory agency RA. The algorithm parameters used are (t1,n1) and (t2,n2) respectively;
[0013] 1-2. Initialization of the secure storage party SS and the regulatory agency RA in the digital human generation agency DHGG: SS and RA use the public parameter P published by IIC to generate their own public and private keys. The public and private keys of SS are recorded as PK respectively. SS / SK SS RA’s public and private keys are denoted as PK RA / SK RA ; Subsequently, IIC used PK SS and PK RA Encrypt the corresponding subkey and send it to n1 SSs and n2 RAs respectively; after decryption by the private keys of SSs and RAs, SSs and RAs obtain their own subkeys, which are respectively denoted as SubK SS and SubK RA ;
[0014] 1-3. The metadata verifier MV and the biometric collector BC in the information collection and verification agency ICVG, and the digital human generator DHG in the digital human generator DHGG each generate their public and private keys, respectively denoted as PK MV / SK MV , PK BC / SK BC and PK DHG / SK DHG .
[0015] Furthermore, the specific implementation of step 2 is as follows:
[0016] The physical person PH must first digitize his or her own identity information through the information collection and verification agency ICVG before proceeding to the next step, in which PH also obtains the signature of his or her identity-related information, which is specifically implemented as follows:
[0017] 2-1.PH presents his / her legal documents, such as ID card, driver's license, etc., to MV face to face, and provides identity information metadata MD PH , including name, ID number, address and gender;
[0018] 2-2.MV verifies MD by comparing legal documents PH If the authenticity of the metadata is verified, MV calculates the metadata certificate H M =H(MD PH ) and H M PK with MV's own public key MV Stored on IIC in the form of a transaction, the transaction is denoted as TM; H() represents a hash function;
[0019] 2-3.MV gives TM’s transaction number TNum to PH;
[0020] 2-4.PH submits MD to BC face to face PH and TNum for authentication;
[0021] 2-5. BC calculation of H' M =H(MD PH ), then use TNum to find TM in IIC, and then take out its recorded H M And with H' M Compare them. If the two are inconsistent, BC stops and proceeds to the next step.
[0022] 2-6. BC collects two biometric features of PH, one of which is used as a permanent proof of PH's existence in cyberspace, and the other is used to activate the digital person DH later; since the permanent proof requires to be indestructible and not frequently collected, the iris data is selected, and the other must be collected every time DH is used, so the face data is selected; after the collection, BC calculates the biometric credential H I =H(iris) and H I And BC's own public key PK BC Stored in the form of a transaction on IIC and connected after TM, the transaction is recorded as TI;
[0023] 2-7.BC calculates PH's identity information signature And send M1 to PH. I Perform XOR processing; then perform public key encryption through the existing algorithm En(), and then perform private key signing through Sig().
[0024] Furthermore, step 3 is implemented as follows:
[0025] The digital person generation agency DHGG generates a unique digital person DH for the physical person PH, where DHGG also stores the encrypted PH identity information and hashed DH information locally. The specific implementation is as follows:
[0026] 3-1.PH sends physical identity certificate PIP to DHG online PH ,TNum,M1};
[0027] 3-2. DHG calculation H” M =H(MD PH ), and verify and decrypt M1 to obtain M2 = De(Ver(M1,PKBC),SK DHG ) ; Then, DHG uses TNum to obtain H from IIC M and H I , H" M and H M Compare them, if they are consistent, DHG calculation And verify whether the physical person's live facial features match M3; Ver() represents the existing signature verification algorithm, corresponding to Sig(); De() represents the decryption algorithm, corresponding to the existing algorithm En(); 3-3. After confirming that PH's identity is correct, DHG performs fuzzy vault algorithm processing on M3 to obtain the digital human seed DHS; According to DHS, DHG retrieves from a code library containing multiple groups of code modules, where a code module is a functional module composed of multiple statements that can implement specified operations, such as sending certificates, verifying certificates, transfer transactions, etc. Each group of code modules contains multiple functional modules with the same functions but different composition statements, and for different groups of code modules, the functions they implement are different; DHG picks multiple code modules that implement different functions from the code library, and combines them in sequence into a piece of executable code, and this piece of code is the digital person DH; Then, DHG hashes DH to obtain the result DHI=H(DH), and at the same time requests the subkey SubK from all SSs. SS ;
[0028] 3-4. Every SS i Use DHG's public key to encrypt your own subkey and get And send the result to DHG; the value of i ranges from 1 to n1, SS i represents the i-th SS;
[0029] 3-5.DHG uses its own private key to decrypt at least t1-1 get After that, with the help of Lagrange interpolation formula, DHG uses these subkeys to recover the master key MK, and then encrypts PH's identity information and DH's hash result to obtain DHG randomly constructs n t1-order polynomials, where the coefficient length of each polynomial is b bytes. At the same time, the length of SecInfo is expanded to n×t1×b bytes by filling the high bits with 0. Then SecInfo is divided into n×t1 parts, each of which serves as a coefficient of the polynomial. Finally, DHG randomly selects n1 x and substitutes them into the n polynomials to obtain n×n1 points (x i ,y ij ),i=1,2,……,n1,j=1,2,……,n, divide these points into n1 groups, each group contains n points from different polynomials, and then concatenate the n points of each group into a string in order, and then get n1 strings, which are the identity restoration information IRI of PH; finally, DHG sends n1 IRIs and the same index value SI to n1 SSs, each of which stores an IRI and an SI locally;
[0030] 3-6. After receiving IRI and SI, SS sends a confirmation response to DHG. After confirming that more than half of SSs have successfully received the response, DHG sends DHI, SI and its own public key PK DHG Stored in the form of a transaction on IIC and connected after TI, the transaction is recorded as TDH;
[0031] 3-7. Finally, DHG signs DH and obtains S=Sig(DH,SK DHG ), and sends S together with DH to PH.
[0032] Furthermore, the supervisory agency RAG described in step 4 monitors the malicious physical person PH, which is specifically implemented as follows:
[0033] 4-1. All RAs monitor DH’s access to network services recorded on the Digital Human Behavior Chain DHBC around the clock;
[0034] 4-2. Once a RA finds a DH has suspicious behavior, he will start monitoring the DH; RA uses DHI to find SI on IIC and sends the timestamp, DHI and his public key PK RA Stored on IIC in the form of a transaction, which is recorded as TS;
[0035] 4-3. Using SI, RA obtains at least t1 IRIs stored in SS. For each IRI, RA deconstructs it into n points and organizes all the points into a point set as follows, where each row is deconstructed from an IRI;
[0036]
[0037] Execute the Lagrange interpolation formula once for each column of t1 points to restore a polynomial, thereby restoring a total of n polynomials. Take out the coefficients of these n polynomials and splice them together from left to right to obtain SecInfo;
[0038] 4-4.RA i To all other RAs j Send a request for joint supervision, each RA agrees to supervise j Encrypt your own subkey and get Send it to RA i ; When more than t2 RA j Agree to joint supervision, RA i Decrypt using your own private key and get Then, with the help of Lagrange interpolation formula, these sub-keys are used to restore MK; RA i Use MK to decrypt SecInfo and get Then get And MD' PH That is the identity information of the malicious DH in the physical world. i The identity of the malicious PH can be determined and all its historical behaviors recorded on DHBC can be monitored.
[0039] The beneficial effects of the present invention are as follows:
[0040] The present invention uses a dynamically generated executable code as a permanent and unique digital identity of a physical person. At the same time, the digital identity can only be activated through the biological characteristics of the physical person, thereby effectively preventing the digital identity from being impersonated or defrauded. In addition, in the process of generating the digital identity, the identity of the physical person must undergo strict inspection to ensure that each physical person has only one active digital identity, thereby completely resisting Sybil attacks. The combination of the Shamir (t, n) threshold secret sharing algorithm and the consortium blockchain achieves a balance between user privacy and supervision. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Figure 1 Diagram of a model for a controllable dynamic self-sovereign identity generation system;
[0042] Figure 2 Flowchart of digitization of physical person identity information;
[0043] Figure 3 Digital human generates flow charts;
[0044] Figure 4 Malicious physical person supervision flow chart. DETAILED DESCRIPTION
[0045] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.
[0046] like Figure 1 As shown, the present invention discloses a method for generating a dynamic self-sovereign identity that can be supervised. The entities involved in the present invention include information collection and verification agencies, physical people (users), digital people (self-sovereign identities), digital people generating agencies, regulatory agencies, identity information blockchains, and digital people behavior blockchains. First, the information collection and verification agency ICVG, the identity information blockchain IIC, the digital people generating agency DHGG, and the regulatory agency RAG are initialized to generate the parameters required by the system and the public and private key information required by each; then, the physical person PH digitizes his or her own personal information in the physical world, such as name, address, and biometrics, through the information collection and verification agency ICVG; then, the digital person generating agency DHGG automatically generates a piece of executable code for the physical person PH, and this piece of code is the unique digital person DH; finally, the regulatory agency RA can use the data recorded in the digital person behavior blockchain DHBC, the identity information blockchain IIC, and the digital person generating agency DHGG to supervise malicious users PH. The present invention uses unique biometrics to achieve complete control of a physical person's identity and the uniqueness of a digital person, and uses executable code as the user's self-sovereign identity to improve the security of the digital identity. In addition, the Shamir (t,n) threshold secret sharing algorithm and consortium blockchain are used to achieve a balance between privacy and regulation.
[0047] The steps of interaction of various components of the present invention are as follows:
[0048] 1 Initialization: In this process, the identity information blockchain is initialized to provide parameters for the initialization of system entities; secondly, the information collection and verification agency, the digital human generation agency and the regulatory agency are initialized to generate subkeys and public-private key pairs for the entities within them.
[0049] 1-1 Identity information blockchain initialization: The identity information blockchain IIC first selects a large prime number p and an elliptic curve E p (a,b) and a finite field F of order n p The base point G is then released by IIC in the genesis block. The public parameters P = {p, E p (a,b),G,n}; then, IIC randomly selects a 128-bit AES key as the master key MK; finally, IIC uses Shamir (t,n) threshold secret sharing algorithm to divide MK into two groups of sub-keys, one group is sent to the secure storage party SS, and the other group is sent to the regulatory agency RA, where the algorithm parameters used are (t1,n1) and (t2,n2) respectively.
[0050] 1-2 The secure storage party SS and the regulatory agency RA in the digital human generation agency DHGG are initialized: SS and RA use the public parameters P published by IIC to generate their own public and private keys, which are recorded as PK respectively. SS / PK SS and PK RA / SK RA ; Subsequently, IIC used PK SS and PK RA Encrypt the corresponding subkey and send it to n1 SSs and n2 RAs respectively; decrypt it with their own private keys, and SSs and RAs obtain their own subkeys, which are respectively denoted as SubK SS and SubK RA .
[0051] 1-3 The metadata verifier MV and the biometric collector BC in the information collection and verification agency ICVG, and the digital human generator DHG in the digital human generator DHGG each generate their public and private keys, which are respectively recorded as PK MV / SK MV , PK BC / SK BC and PK DHG / SK DHG .
[0052] 2. The physical person needs to digitize his / her identity information through an information collection and verification agency before proceeding to the next step. The physical person also obtains the signature of his / her identity-related information. The process of digitizing the physical person's identity information is as follows: Figure 2 shown.
[0053] Step 1: The physical person PH presents his legal documents, such as ID card, driver's license, etc., to the metadata verification party MV face to face, and provides identity information metadata MD PH , including name, ID number, address and gender.
[0054] Step 2: MV verifies MD by comparing legal documents PH If the authenticity of the metadata is verified, MV calculates the metadata certificate H M =H(MD PH ) and H M PK with your own public key MV It is stored on IIC in the form of a transaction, and the transaction is recorded as TM.
[0055] Step 3: MV gives TM’s transaction number TNum to PH.
[0056] Step 4: PH submits MD to BC, the feature collector, face to face PH and TNum for authentication.
[0057] Step 5: BC calculates H' M =H(MD PH ), then use TNum to find TM in IIC, and then take out its recorded H M And with H' M Perform a comparison. If the two comparisons are inconsistent, BC stops and proceeds to the next step.
[0058] Step 6: BC collects two biometric features of PH, one of which is used as a permanent proof of PH's existence in cyberspace, and the other is used to start the digital person DH later; since the permanent proof requires to be indestructible and not frequently collected, the iris data is selected, and the other must be collected every time DH is used, so the face data is selected; after the collection, BC calculates the biometric credential H I =H(iris) and H I PK with your own public key BC It is stored on IIC in the form of a transaction and linked to TM. The transaction is recorded as TI.
[0059] Step 7: BC calculates PH's identity information signature And send M1 to PH.
[0060] 3. The digital person generation agency generates a unique digital person for the physical person: The digital person generation agency DHGG generates a unique digital person DH for the physical person PH, where DHGG also stores the encrypted PH identity information and the hashed DH information locally; the digital person generation process is as follows: Figure 3 shown.
[0061] Step 1: PH sends physical identity certificate PIP to DHG online PH ,TNum,M1}.
[0062] Step 2: DHG calculates H" M =H(MD PH ), and verify the decryption of M1 to obtain M2 = De(Ver(M1,PK BC ),SK DHG ) ; Then, DHG uses TNum to obtain H from IIC M and H I , H″ M and H M Compare them, if they are consistent, DHG calculation And verify whether the physical person's living facial features match M3.
[0063] Step 3: After confirming that PH's identity is correct, DHG processes M3 with the fuzzy vault algorithm to obtain the digital human seed DHS; according to DHS, DHG retrieves the corresponding code modules from the code library and combines them in sequence into an executable code, which is DH; then, DHG hashes DH to obtain the result DHI=H(DH), and requests the subkey SubK from all SSs at the same time. SS .
[0064] Step 4: Each SS i Use DHG's public key to encrypt your own subkey and get And send the result to DHG.
[0065] Step 5: DHG uses its own private key to decrypt at least t1-1 get After that, with the help of Lagrange interpolation formula, DHG uses these subkeys to recover the master key MK, and then encrypts PH's identity information and DH's hash to get DHG randomly constructs n t1-order polynomials, where the coefficient length of each polynomial is b bytes. At the same time, the length of SecInfo is expanded to n×t1×b bytes by filling the high bits with 0. Then SecInfo is divided into n×t1 parts, each of which serves as a coefficient of the polynomial. Finally, DHG randomly selects n1 x and substitutes them into the n polynomials to obtain n×n1 points (x i ,y ij ),i=1,2,……,n1,j=1,2,……,n, divide these points into n1 groups, each group contains n points from different polynomials, and then concatenate the n points of each group into a string in order, and you can get n1 strings, which are the identity restoration information IRI of PH; finally, DHG sends n1 IRIs and the same index value SI to n1 SSs, each of which stores an IRI and an SI.
[0066] Step 6: After receiving IRI and SI, SS sends a confirmation response to DHG. After confirming that more than half of SSs have successfully received the response, DHG sends DHI, SI and its own public key PK DHG Stored on IIC in the form of a transaction and linked to TI, the transaction is recorded as TDH.
[0067] Step 7: Finally, DHG signs DH and obtains S=Sig(DH,SK DHG ), and sends it along with DH to PH.
[0068] 4. Malicious physical person supervision: When malicious behavior of the digital person DH occurs, the regulatory agency RAG can find the corresponding physical person PH by querying the identity information blockchain IIC and the metadata recorded by the digital person generation agency DHGG, and thus supervise it; the process of malicious physical person supervision is as follows: Figure 4 shown.
[0069] Step 1: All RAs monitor DH’s access to network services recorded on the Digital Human Behavior Chain DHBC around the clock;
[0070] Step 2: Once an RA i If he finds a DH has suspicious behavior, he will start monitoring the DH; i Use DHI to find SI on IIC and save the timestamp, DHI and its public key Stored on IIC in the form of transactions;
[0071] Step 3: Using SI, RA i Get at least t1 IRIs stored in SS. For each IRI, RA i Deconstruct it into n points, and organize all the points into a point set as follows, where each row is deconstructed from an IRI;
[0072]
[0073] Execute the Lagrange interpolation formula once for each column of t1 points to restore a polynomial, thereby restoring a total of n polynomials. Take out the coefficients of these n polynomials and splice them together in order to obtain SecInfo;
[0074] Step 4: RA i To all other RAs j Send a request for joint supervision, each RA agrees to supervise j Encrypt your own subkey and get Send it to RA i ; When more than t2 RA j Agree to joint supervision, RA i Decrypt using your own private key and get Then, with the help of Lagrange interpolation formula, these sub-keys are used to restore MK; RA i Use MK to decrypt SecInfo and get Then get And MD' PH That is the identity information of the malicious DH in the physical world. iThe identity of the malicious PH can be determined and all its historical behaviors recorded on DHBC can be monitored.
Claims
1. A method for generating a dynamic self-sovereign identity that can be supervised, characterized by Based on the seven components of information collection and verification agency, physical person, digital person, digital person generation agency, regulatory agency, identity information blockchain and digital person behavior blockchain, the interaction steps of each component are as follows: Step 1: System initialization: Initialize the identity information blockchain, information collection and verification agency, digital human generation agency and regulatory agency respectively to generate the parameters required by the system; Step 2: The physical person digitizes his or her personal information through the information collection and verification agency; the physical person proves the authenticity of his or her identity to the information collection and verification agency, and obtains the identity signature of his or her identity-related information after this process; the information collection and verification agency is composed of two types of entities, namely the metadata verification party and the biometric collection party, which are responsible for collecting and verifying the personal information of the physical person, and hashing the relevant personal information, and then storing the hash result, the identity identifier of the metadata verification party and the identity identifier of the biometric collection party in the form of a transaction in the identity information blockchain; Step 3. The physical person applies for a digital person from the digital person generating agency. The digital person generating agency consists of two types of entities, namely the digital person generating party and the secure storage party. The digital person generating party is an efficient computing center responsible for all computing work, while the secure storage party is responsible for confidentially storing the physical person's identity information and digital person information. The physical person submits the identity signature issued by the information collection and verification agency to the digital person generating agency. After verifying that the identity signature is correct, the digital person generating party generates a unique digital person for the physical person and hashes it, then encrypts and shards the hash result and the physical person's identity information, and sends the sharded data to the secure storage party. Multiple secure storage parties store a copy of the sharding result locally with the same index value. After ensuring that the data is securely stored, the digital person generating party sends the digital person generated for it to the physical person, and then stores the digital person hash result, the index value recorded by the secure storage party, and the identity identifier of the digital person generating party in the form of a transaction in the identity information blockchain. Step 4: Malicious physical person supervision: The regulatory agency monitors the data on the digital person behavior blockchain in real time around the clock. Once a regulatory agency finds that a digital person's behavior is abnormal, it will immediately send a regulatory request to other regulatory agencies. Within the set time limit, when the regulatory agency that accepts the regulatory request reaches the specified threshold, the regulatory process for the digital person will be started; the regulatory agency that initiates the regulatory request obtains the encrypted physical person identity information corresponding to the digital person through the identity information blockchain and the digital person generation agency, and then stores the timestamp, the hash result of the digital person, and the identity of the regulatory agency that initiated the regulatory request in the form of a transaction in the identity information blockchain; All agreed regulatory agencies jointly participate in restoring the encrypted physical person identity information and supervise the malicious physical person; The system initialization described in step 1 is the initialization of the identity information blockchain IIC, which provides parameters for the initialization of the system entity; the information collection and verification agency, the digital human generation agency and the regulatory agency are initialized to generate subkeys and public-private key pairs for their respective internal entities. The specific implementation is as follows: 1-1. Identity information blockchain initialization: The identity information blockchain IIC first selects a large prime number p and an elliptic curve E p (a,b) and a finite field E of order n p The base point G is then released by IIC in the genesis block. The public parameters P = {p, E p (a,b),G,n}; then, IIC randomly selects a 128-bit AES key as the master key MK; finally, IIC uses the Shamir (t,n) threshold secret sharing algorithm to divide MK into two groups of subkeys, one of which is sent to the secure storage party SS and the other to the regulatory agency RA. The algorithm parameters used are (t1,n1) and (t2,n2) respectively; 1-2. Initialization of the secure storage party SS and the regulatory agency RA in the digital human generation agency DHGG: SS and RA use the public parameter P published by IIC to generate their own public and private keys. The public and private keys of SS are recorded as PK respectively. SS / SK SS ; RA's public and private keys are denoted as PK RA / SK RA ; Subsequently, IIC used PK SS and PK RA Encrypt the corresponding subkey and send it to n1 SSs and n2 RAs respectively; after decryption by the private keys of SSs and RAs, SSs and RAs obtain their own subkeys, which are respectively denoted as SubK SS and SubK RA ; 1-3. The metadata verifier MV and the biometric collector BC in the information collection and verification agency ICVG, and the digital human generator DHG in the digital human generator DHGG each generate corresponding public and private keys, respectively denoted as PK MV / SK MV , PK BC / SK BC and PK DHG / SK DHG。 2. A method for generating a self-sovereign identity that can be supervised dynamically according to claim 1, characterized in that The physical person PH described in step 2 must first digitize his or her own identity information through the information collection and verification agency ICVG before proceeding to the next step, where PH also obtains the signature of his or her identity-related information, which is specifically implemented as follows: 2-1.PH presents his / her legal documents to MV face to face and provides identity information metadata MD PH , including name, ID number, address and gender; 2-2.MV verifies MD by comparing legal documents PH If the authenticity of the metadata is verified, MV calculates the metadata certificate H M =H(MD PH ) and H M PK with MV's own public key MV Stored on IIC in the form of a transaction, the transaction is denoted as TM; H() represents a hash function; 2-3.MV gives TM’s transaction number TNum to PH; 2-4.PH submits MD to BC face to face PH and TNum for authentication; 2-5. BC calculation of H' M =H(MD PH ), then use TNum to find TM in IIC, and then take out its recorded H M And with H' M Compare them. If the two are inconsistent, BC stops and proceeds to the next step. 2-6. BC collects two biometric features of PH, one of which is used as a permanent proof of PH's existence in cyberspace, and the other is used to activate the digital person DH later; since the permanent proof requires to be indestructible and not frequently collected, the iris data is selected, and the other must be collected every time DH is used, so the face data is selected; after the collection, BC calculates the biometric credential H I =H(iris) and H I And BC's own public key PK BC Stored in the form of a transaction on IIC and connected after TM, the transaction is recorded as TI; 2-7.BC calculates PH's identity information signature And send M1 to PH; first, face and H I Perform XOR processing; then use the existing algorithm En() to perform public key encryption, and then use Sig() to perform private key signing.
3. A method for generating a self-sovereign identity that can be supervised dynamically according to claim 2, characterized in that The digital person generation agency DHGG in step 3 generates a unique digital person DH for the physical person PH, where DHGG also stores the encrypted PH identity information and hashed DH information locally. The specific implementation is as follows: 3-1.PH sends physical identity certificate PIP to DHG online PH ,TNum,M1}; 3-2. DHG calculation H” M =H(MD PH ), and verify the decryption of M1 to obtain M2 = De(Ver(M1,PK BC ),SK DHG ) ; Then, DHG uses TNum to obtain H from IIC M and H I , H" M and H M Compare them, if they are consistent, DHG calculation And verify whether the physical person's live facial features match M3; Ver() represents the existing signature verification algorithm, corresponding to Sig(); De() represents the decryption algorithm, corresponding to the existing algorithm En(); 3-3. After confirming that PH's identity is correct, DHG performs fuzzy vault algorithm processing on M3 to obtain the digital human seed DHS; According to DHS, DHG retrieves from a code library containing multiple groups of code modules, DHG selects multiple code modules that implement different functions from the code library, and combines them in sequence into an executable code, which is the digital human DH; Then, DHG hashes DH to obtain the result DHI=H(DH), and at the same time requests the subkey SubK from all SSs. SS ; 3-4. Every SS i Use DHG's public key to encrypt your own subkey and get And send the results to DHG; The value of i ranges from 1 to n1, SS i represents the i-th SS; 3-5.DHG uses its own private key to decrypt at least t1-1 get After that, with the help of Lagrange interpolation formula, DHG uses these subkeys to recover the master key MK, and then encrypts PH's identity information and DH's hash result to obtain DHG randomly constructs n t1-order polynomials, where the coefficient length of each polynomial is b bytes. At the same time, the length of SecInfo is expanded to n×t1×b bytes by filling the high bits with 0. Then SecInfo is divided into n×t1 parts, each of which serves as a coefficient of the polynomial. Finally, DHG randomly selects n1 x and substitutes them into the n polynomials to obtain n×n1 points (x i ,y ij ),i=1,2,……,n1,j=1,2,……,n, divide these points into n1 groups, each group contains n points from different polynomials, and then concatenate the n points of each group into a string in order, and then get n1 strings, which are the identity restoration information IRI of PH; finally, DHG sends n1 IRIs and the same index value SI to n1 SSs, each of which stores an IRI and an SI locally; 3-6. After receiving IRI and SI, SS sends a confirmation response to DHG. After confirming that more than half of SSs have successfully received the response, DHG sends DHI, SI and its own public key PK DHG Stored in the form of a transaction on IIC and connected after TI, the transaction is recorded as TDH; 3-7.DHG signs DH and obtains S=Sig(DH,SK DHG ), and sends S together with DH to PH.
4. A method for generating a self-sovereign identity that can be supervised dynamically according to claim 3, characterized in that A code module is a functional module composed of multiple statements that can implement specified operations, including sending certificates, verifying certificates, and transferring transactions. Each group of code modules contains multiple functional modules with the same functions but different composition statements. For different groups of code modules, the functions they implement are different.
5. A method for generating a self-sovereign identity that can be supervised dynamically according to claim 4, characterized in that The supervisory agency RAG described in step 4 monitors the malicious physical person PH, which is specifically implemented as follows: 4-1. All RAs monitor DH’s access to network services recorded on the Digital Human Behavior Chain DHBC around the clock; 4-2. Once a RA finds a DH has suspicious behavior, it will start monitoring the DH. RA uses DHI to find SI on IIC and sends the timestamp, DHI and its public key PK RA Stored on IIC in the form of a transaction, which is recorded as TS; 4-3. Using SI, RA obtains at least t1 IRIs stored in SS. For each IRI, RA deconstructs it into n points and organizes all the points into a point set as follows, where each row is deconstructed from an IRI; Execute the Lagrange interpolation formula once for each column of t1 points to restore a polynomial, thereby restoring a total of n polynomials. Take out the coefficients of these n polynomials and splice them together from top to bottom to obtain SecInfo; 4-4.RA i To all other RAs j Send a request for joint supervision, each RA agrees to supervise j Encrypt your own subkey and get Send it to RA i ; When more than t2 RA j Agree to joint supervision, RA i Decrypt using your own private key and get Then, with the help of Lagrange interpolation formula, these sub-keys are used to restore MK; RA i Use MK to decrypt SecInfo and get Then get And MD' PH That is the identity information of the malicious DH in the physical world. i Ability to determine the identity of malicious PH and monitor all its historical behaviors recorded on DHBC.
Citation Information
Patent Citations
Blockchain user identity supervision method and system considering privacy protection
CN111797427A