CN114301604A - Distributed public key infrastructure method based on block chain and attribute signature - Google Patents
Distributed public key infrastructure method based on block chain and attribute signature Download PDFInfo
- Publication number
- CN114301604A CN114301604A CN202111651828.XA CN202111651828A CN114301604A CN 114301604 A CN114301604 A CN 114301604A CN 202111651828 A CN202111651828 A CN 202111651828A CN 114301604 A CN114301604 A CN 114301604A
- Authority
- CN
- China
- Prior art keywords
- certificate
- user
- applicant
- node
- signature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention belongs to the technical field of passwords, and particularly relates to a distributed public key infrastructure method based on a block chain and an attribute signature. The invention changes the single-node CA of the traditional public key infrastructure into a multi-node CA which is arranged on a block chain and used for issuing/verifying certificates in a coordinated mode, and introduces cryptographic algorithms such as signature based on attributes, zero knowledge proof and the like, so that the identity represented by the certificate is finer in granularity; the method comprises the following steps: initializing a system, initializing a user, signing and issuing a certificate, verifying the certificate, canceling the certificate and the like; the invention is a general scheme, is suitable for various certificate-based identity authentication scenes, makes the identity more three-dimensional by using the breadth covered by the attribute, has fine-grained identity authentication and certain fault tolerance, realizes the non-repudiation of the certificate by combining the non-interactive zero knowledge proof, and expands the application breadth of the invention.
Description
Technical Field
The invention belongs to the technical field of cryptography, and particularly relates to a distributed public key infrastructure method based on a block chain and an attribute signature.
Background
The flexible and effective identity authentication/management scheme is one of the core requirements in the information age, and through the flexible and effective identity authentication/management scheme, the identity of each entity in the internet can be uniquely determined. Public key infrastructure is one of the typical representatives, and PKI is one of the important cornerstones of the current internet by managing digital certificates so that trust problems between different entities can be solved. However, the traditional centralized PKI has many problems, the biggest defect is that the CA must be completely trusted, and when the CA is attacked or the CA itself acts as a malicious node, the identity of the entity corresponding to the issued certificate is either not authenticated or not trusted, which may impact the identity authentication system of the interconnection network.
The characteristics of decentralized block chain, consensus mechanism for synchronization, tamper resistance and the like provide a new idea for the development of PKI, and aiming at the problems of the centralized identity authentication system, the inventor consults and finds that a plurality of schemes arrange the traditional CA on a plurality of nodes of the block chain to realize distributed authentication. The introduction of block chains brings about a number of advantages: firstly, a block chain consensus mechanism natively supports multi-node data synchronization; related data can be stored in the blockchain by using a high-level programming language intelligent contract running on the blockchain, so that a user can apply and inquire certificates under multiple nodes; secondly, due to the properties of decentralization and non-tampering of the block chain, communication under the block chain has a trust basis, and different users can perform safe information interaction.
The inventor finds that the existing scheme still has some problems, including large calculation overhead, insufficient anti-attack capability, irrevocability of neglecting certificates and the like, and simultaneously learns the cryptography based on the attributes, and also provides a new development direction for PKI due to the fact that flexible access control with fine granularity can be provided. An identity may consist of a set of attributes, and authentication may be considered successful as long as the user's set of attributes has a certain error from the required set of attributes. The introduction of the attribute cryptography enables the identity of the authenticated entity to be more three-dimensional, the identity of the entity can be formed by a plurality of attributes (such as identification information, organizational relations and the like), and the identity mechanism of the real world is better met.
The inventor designs a novel distributed public key infrastructure method based on block chains and attribute signatures, and the method has the characteristics of universality, good performance, flexible identity mechanism, fine granularity, non-repudiation and the like.
Reference documents:
(1)Eberhardt J,Tai S.ZoKrates-Scalable Privacy-Preserving Off-Chain Computations[C]//2018 IEEE International Conference on Internet of Things(iThings) and IEEE Green Computing and Communications(GreenCom)and IEEE Cyber,Physical and Social Computing(CPSCom)and IEEE Smart Data(SmartData).IEEE,2018.Aumasson J P,Neves S,Wilcox-O’Hearn Z,et al.BLAKE2:simpler,smaller,fast as MD5[C]//International Conference on Applied Cryptography and Network Security. Springer,Berlin,Heidelberg,2013:119-135;
(2) fiat A, Shamir A.how To pro Material Yourself, Practical Solutions To Identification and Signature schemes [ C ]// Proceedings on Advances in cryptography- - -CRYPTO' 86.1999, GB/T32918, information safety technology SM2 elliptic curve public key cryptography [ S ];
(3) weiliang, Huang Zheng Jie, Chen qun shan center-off is based on attribute undeniable signature [ J ]. computer engineering and science 2020,42(6): 9.
Disclosure of Invention
The invention aims to provide a distributed public key infrastructure method based on a block chain and an attribute signature.
The invention designs a general distributed public key infrastructure method based on attribute signature, and in a system realized based on the method, a user can randomly apply for a certificate issued by a CA (certificate authority) of the system through a public Application Programming Interface (API) and verify the certificate.
The invention takes a block chain and an intelligent contract as carriers, because of the one-to-one correspondence characteristic of the block chain nodes and the node public keys, the nodes can initiate safe secret communication through the intelligent contract, simultaneously all the nodes can acquire data (including but not limited to public parameters of attribute signatures and zero knowledge proofs) on the block chain through the intelligent contract, all the nodes need to open the public keys generated by initialization, ciphertexts generated by encryption and other contents, and the data (including certificate libraries and the like) on all the block chains can be synchronized through the common identification mechanism of the block chains.
The invention provides a distributed public key infrastructure method based on a block chain and an attribute signature, which is based on an attribute signature, block chain and zero knowledge proving technology and comprises the following steps: initializing a system, initializing a user, signing and issuing a certificate, verifying the certificate and revoking the certificate; the method comprises the following specific steps:
(1) initializing a system; the system initializes the relevant parameterization of center-removing non-repudiation attribute signature, publicly uploads the parameterization to a block chain, simultaneously initializes zero knowledge to prove the relevant parameters of ZoKrates, publicly links the chain, represents the initialization of an authority CA node of the attribute, randomly generates a private key CSK of the attribute by the CA, calculates a public key CPK by the private key, and publicly links the information such as the CPK and the like;
(2) initializing a user; user initialization, User in addition to information required to register blockchainsApplicant,u(user u applying for the certificate) also needs to randomly generate secret value SuSo that the calculated ID identifies the UIDuIs globally unique on the block chain, and the User applies for attributes from a plurality of CA nodes to obtain an attribute private key A K of the Useru,iAnd public key APKu,i;
(3) Signing the issued certificate; user desiring to apply for a particular n number of CAs to issue a certificateApplicant,uHaving several n attributes, sending network access request certificate service to digital certificate register RA (registration authority) through block chain network, UserApplicant,uSubmitting various information required by the certificate, confirming the information by RA through various modes (including but not limited to offline authentication), if the information is wrong, rejecting the node request, otherwise, sending the information to n CAs, carrying out signature on the certificate by CA cooperation, generating a signature by RA through collecting signature information, storing the signature in a certificate library of a block chain, and automatically synchronizing the certificate library by the block chain; then UserApplicant,uExecuting a proof-of-generation algorithm of ZoKrates, generating a non-repudiatable proof of the certificate;
(4) and (4) certificate verification: expected authentication UserApplicant,uUser of identityVerifier,s(User s of certificate of authenticity), it is for UserApplicant,uInitiating an authentication request, UserApplicant,uFirst go to RA to obtain its own certificateBook and send certificate to UserVerifier,s,UserVerifier,sVerifying the certificate; whether the certificate is legal CA issuance or not is checked, and the User is checkedApplicant,uWhether the certificate is revoked or not, checking the validity period of the certificate and checking whether the certificate is issued by the required n CA nodes or not; if the certificate is expired, revoked or not signed by a legal node, the identity authentication fails, otherwise, the certificate is authenticated, the authentication comprises signature authentication and zero knowledge proof ZoKrates authentication, and the authentication is successful, namely the User is authenticatedApplicant,uThe identity of (a);
(5) certificate revocation; certificate revocation is divided into expired revocation and UserApplicantThe Certificate Revocation List (CRL) is periodically updated by RA (random access request); userApplicant,uIf a request for self certificate revocation is sent to the RA, the RA verifies the zero knowledge proof to validate the UserApplicant,uIdentity, verification is by adding a certificate to the CRL.
In the invention, the method for issuing the certificate by signing in the step (3) comprises the following steps:
no assumption is made that there is a User desiring to apply for a certificateApplicant,uIt expects an application attribute set Ω ═ { Attr1,Attr2,...,AttrnCorresponding certificate, UserApplicant,uT attributes are possessed; userApplicant,uCan be regarded as a common node in the block chain, which sends a network access request certificate service, User, to the RA node through the block chain networkApplicant,uVarious information m (including UID) required to submit a certificateu) And the RA confirms the information, if the information is wrong, the node request is rejected, otherwise, the information is sent to n CA nodes:
(1)Sign(m,Su,UIDu,Ω,{APKu,i,ASKu,i},{CPKi,CSKi})→Pn-t(x),σ.
UserApplicant,uhas t attributes, when n CA nodes of PKI receive m (including UID)u) Begin for the certificate message m e {0, 1}*Carrying out signature;
(i) for UserApplicant,uCA node Attr with attributeiLet it be i ═ 1., t, AttriRandomly choosing ti∈Zp*And calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
si=ASKu,i+eiCSKi,
Attrir is to beiSending the information to the RA node through a secure secret channel;
(ii) for UserApplicant,uCA node Attr without attributeiLet it be i ═ t +1iRandom selectionRandom generation of APKu,iE G, calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
Attriwill be provided with<ci,di,APKu,i,Ri>Sending the information to the RA node through a secure secret channel;
(iii) RA node combines R with RiN is sent to UserApplicant,u,UserApplicant,uAnd (3) calculating:
(iv) and returning to the RA node, and calculating by the RA node:
c=H2(m,T1,...,Tn,UIDu).
(v) subsequently, n-t +1 points (0, c), (t +1, c) are usedt+1),...,(n,cn) Constructing an n-t order Lagrangian interpolation polynomial Pn-t (x):
(vi) will Pn-t(x) Is sent to a UserApplicant,uCA node Attr with attributeiI 1.., t.ca calculation:
ci=Pn-t(i),di=ti-cisi,i=1,...,t.
Attriwill be provided with<ci,di>Sending the information to the RA node through a secure secret channel;
(vii) RA output polynomial Pn-t(x) And signature:
σ=<ci,di,Ti,APKu,i,UIDu>,i=1,2,...,n.
(viii) RA will Pn-t(x) And sigma is attached to the certificate information M to generate a certificate M, and the certificate M is sent to the User through a secure secret channelApplicant,uAnd handle UIDuSplicing with the time stamp to be used as a key, storing the certificate content as a value in the certificate libraries, and automatically and synchronously backing up the plurality of certificate libraries;
(2)zkProveGen(zkParams,w,x,ML)→πu.
UserApplicant,uperforming the Prove (zkParams, w, x, M) proof of Generation algorithm for ZoKratesL) Wherein, in the input parameters, the evidence:
proof of formationuIn the form of Fiat-Shamir Heuristic, in particular,. pi.uCan prove UserApplicant,uKnowing the discrete logarithm SuSatisfy the requirement ofAnd isUserApplicant,uWill prove piuProposition x and Turing machine algorithm MLTransmitting the uplink facilitates the query.
In the invention, the certificate verification method in the step (4) comprises the following steps:
no assumptions are made about the expected authentication UserApplicant,uUser of identityVerifier,sIt expects to authenticate UserApplicant,uUserApplicant,uFirstly, the RA node obtains its own certificate and sends the certificate to the UserVerifier,s,UserVerifier,sVerifying the certificate, checking whether the certificate is issued by the CA node of the legal DPKI, and checking the UserApplicant,uWhether the certificate is revoked or not, checking the validity period of the certificate; if the certificate is expired, revoked or not signed and issued by a legal node, the identity authentication fails, otherwise, the certificate is signed and authenticated;
Verify(m,σ,Pn-t(x),πu)→True/False.
(i) authentication
If one fails, the signature is an invalid signature;
(ii) after the above items are verified, the UserVerifier,sObtaining a proof pi on a blockchainuAnd ZoKrates-related parameters, performing the authentication algorithm Verify (zkParams, x, M) of ZoKratesL,πu) If the verification is not passed, the signature is an invalid signature; if the verification is passed, the signature is a valid signature.
The invention has good performance in practical experiment tests, so the invention has practical application feasibility. The invention is a flexible and fine-grained identity authentication mechanism, which makes the identity more three-dimensional by utilizing the breadth covered by the attribute of the center-removing non-repudiation attribute signature, simultaneously makes the whole method have fine-grained identity authentication and certain fault tolerance, realizes information relationship fine-grained dynamic management maintenance and credibility maintenance through the attribute signature and a threshold algorithm, and introduces zero knowledge to prove that the non-repudiation of the certificate is ensured.
Drawings
FIG. 1 is an example of a method architecture.
Fig. 2 is an example of an application certificate return field.
Fig. 3 is an example of a certificate signature field.
Fig. 4 is an example of a certificate of authenticity return result.
FIG. 5 is an example of simulating 5000 concurrent accesses by a user.
Detailed Description
The present invention is further described below by way of specific embodiments so that those skilled in the relevant art can better understand the technical and functional features of the present invention, but the scope of the present invention is not limited to the following embodiments.
Example 1: in this embodiment, the programming language is Golang and the browser is Chrome.
Fig. 1 is a system architecture diagram, and the specific flow is as follows:
1. initializing a system:
(1)GlobalSetup(λ)→Params.
selecting a cyclic group G with prime order N ═ p and generator G, corresponding to N CA nodes of the distributed public key infrastructure, we have an attribute total Ω ═ { Attr ═1,Attr2,...,AttrnH, another 2 hash functions H are selected1:H2:The common parameter Params is set as<G,p,g,Ω,H1,H2>Packaging and uploading to a block chain;
(2)CASetup(Params)→CSK,CPK.
authority Attr of n CA nodes, i.e. attributesiRandomly generating its own private key And calculates out the public keyAnd combining the CPKiPublic chain winding;
(3)ZKSetup(1n)→zkParams.
setup (1) self-carried by ZoKratesn) The algorithm initializes the common parameter zkParams and publishes zkParams for uplink.
2. User initialization:
(1)USetup(λu)→Su,UIDu.
UserApplicant,urandomly generating secret valuesSo that the calculated ID identifiesIs globally unique on the blockchain;
(2)UAttrSetup(UIDu,Attri)→ASKu,i,APKu,i.
UserApplicant,uattribute authority Attr is referred to by various means including, but not limited to, offline applicationsiApplication of attributes and validation by an attribute authority, AttriRandom selectionAs a UserApplicant,uAttribute of (Attr)iAnd calculatesAs a UserApplicant,uIs given by the attribute public key of<APKu,i,ASKu,i>Sent to User through secure secret channelApplicant,uAnd adding APKu,iThe uplink is disclosed.
3. Signing the issued certificate: no assumption is made that there is a User desiring to apply for a certificateApplicant,uIt expects to claim the attribute set Ω ═ { Attr1,Attr2,...,AttrnCorresponding certificate, UserApplicant,uHaving t attributes therein. UserApplicant,uCan be regarded as a common node in the block chain, which sends a network access request certificate service, User, to the RA node through the block chain networkApplicant,uVarious information m (including UID) required to submit a certificateu) The RA confirms the information by various means (including but not limited to offline authentication), rejects the node request if the information is wrong, otherwise sends the information to the n CA nodes:
(1)Sign(m,Su,UIDu,Ω,{APKu,i,ASKu,i},{CPKi,CSKi})→Pn-t(x),σ.
UserApplicant,uhas t attributes, when n CA nodes of PKI receive m (including UID)u) Begin for the certificate message m e {0, 1}*Carrying out signature;
(i) for UserApplicant,uCA node Attr with attributeiLet it be i ═ 1., t, AttriRandomly choosing ti∈Zp*And calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
si=ASKu,i+eiCSKi,
Attrir is to beiSending the information to the RA node through a secure secret channel;
(ii) for UserApplicant,uCA node Attr without attributeiLet it be i ═ t +1iRandom selectionRandom generation of APKu,iE G, calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
Attriwill be provided with<ci,di,APKu,i,Ri>Sending the information to the RA node through a secure secret channel;
(iii) RA node combines R with RiN is sent to UserApplicant,u, UserApplicant,uAnd (3) calculating:
(iv) and returning to the RA node, and calculating by the RA node:
c=H2(m,T1,...,Tn,UIDu).
(v) subsequently, n-t +1 points (0, c), (t +1, c) are usedt+1),...,(n,cn) Constructing an n-t order Lagrangian interpolation polynomial Pn-t (x):
(vi) will Pn-t(x) Is sent to a UserApplicant,uCA node Attr with attributeiI 1.., t.ca calculation:
ci=Pn-t(i),di=ti-cisi,i=1,...,t.
Attriwill be provided with<ci,di>Sending the information to the RA node through a secure secret channel;
(vii) RA output polynomial Pn-t(x) And signature:
σ=<ci,di,Ti,APKu,i,UIDu>,i=1,2,...,n.
(viii) RA will Pn-t(x) And sigma is attached to the certificate information M to generate a certificate M, and the certificate M is sent to the User through a secure secret channelApplicant,uAnd handle UIDuSplicing with the time stamp to be used as a key, storing the certificate content as a value in the certificate libraries, and automatically and synchronously backing up the plurality of certificate libraries;
(2)zkProveGen(zkParams,w,x,ML)→πu.
UserApplicant,uperforming the Prove (zkParams, w, x, M) proof of Generation algorithm for ZoKratesL) Wherein, in the input parameters, the evidence:
proof of formationuIn the form of Fiat-Shamir Heuristic, in particular,. pi.uCan prove UserApplicant,uKnowing the discrete logarithm SuSatisfy the requirement ofAnd isUserApplicant,uWill prove piuProposition x and Turing machine algorithm MLTransmitting the uplink facilitates the query.
4. And (4) certificate verification: no assumptions are made about the expected authentication UserApplicant,uUser of identityVerifier,sIt expects to authenticate UserApplicant,uUserApplicant,uFirstly, the RA node obtains its own certificate and sends the certificate to the UserVerifier,s,UserVerifier,sThe certificate is verified, whether the certificate is signed by a CA node of a legal DPKI is firstly checked, and a User is checkedApplicant,uIf the certificate is expired, revoked or not, the certificate is signed and issued by a legal node, the identity authentication fails, otherwise, the certificate is signed and authenticated;
Verify(m,σ,Pn-t(x),πu)→True/False.
(i) authentication
If one of the signatures fails, the signature is an invalid signature.
(ii) After the above items are verified, the UserVerifier,sObtaining a proof pi on a blockchainuAnd ZoKrates-related parameters, performing the authentication algorithm Verify (zkParams, x, M) of ZoKratesL,πu) If the verification is not passed, the signature is an invalid signature; if the verification is passed, the signature is a valid signature.
5. Certificate revocation: userApplicant,uA revocation request of a certain certificate M is sent to the RA node.
Revoke(M,πu,UIDu)→True/False.
RA gets proof of pi on blockchainsuThe verification algorithm Verify (zkParams, x, M) of ZoKrates is performedL,πu) If the verification is not passed, the signature is an invalid signature; and if the verification is passed, sending certificate revocation requests to the n CA nodes, and otherwise, returning error information. The CA node destroys the generated information of the related intermediate parameters and returns a revocation certificate Cer which is successfully revoked to the RA nodeiRA collects n revocation certificates CeriThe resultant revocation certificate is stored in the CRL and the User is assignedApplicant,uThe certificate of (a) is revoked from the certificate store. Multiple certificate stores in the blockchain are then automatically synchronized with the CRL.
The method is an infrastructure providing an API interface, and can perform corresponding operations by sending a request to the API interface, fig. 2 is an example of a field returned by a certificate application, where the field includes information such as a serial number and a signature of the certificate, fig. 3 is an example of a field signed by a plurality of CAs (100 in this example) in cooperation, fig. 4 is an example of a field returned by a certificate verification, whether the certificate verification is successful or not is prompted, and fig. 5 is an example of simulating 5000 users to concurrently apply/verify the certificate, which can show that the method has low overhead and good performance.
Claims (3)
1. A distributed public key infrastructure method based on block chains and attribute signatures, the method is based on attribute signature, block chains and zero knowledge proof technology, and the method comprises the following steps: initializing a system, initializing a user, signing and issuing a certificate, verifying the certificate and revoking the certificate; the method comprises the following specific steps:
(1) initializing a system; the system initializes the relevant parameterization of center-removing non-repudiation attribute signature, publicly uploads the parameterization to a block chain, simultaneously initializes zero knowledge to prove the relevant parameters of ZoKrates, publicly links the chain, represents the initialization of an authority CA node of the attribute, randomly generates a private key CSK of the attribute by the CA, calculates a public key CPK by the private key, and publicly links the CPK information;
(2) initializing a user; user initialization, User in addition to information required to register blockchainsApplicant,u(user u applying for the certificate) also needs to randomly generate secret value SuSo that the calculated ID identifies the UIDuThe block chain is globally unique, and the User applies for attributes from a plurality of CA nodes to obtain an attribute private key ASK of the Useru,iAnd public key APKu,i;
(3) Signing the issued certificate; user desiring to apply for a particular n number of CAs to issue a certificateApplicant,uHaving several n attributes, sending a network access request certificate service, User, to a digital certificate registry RA via a blockchain networkApplicant,uSubmitting various information required by the certificate, confirming the information by RA, rejecting the node request if the information is wrong, otherwise sending the information to n CA, carrying out signature on the certificate by CA in cooperation, collecting signature information by RA to generate a signature, storing the signature in a certificate library of a block chain, and automatically synchronizing the certificate library by the block chain; then UserApplicant,uExecuting a proof-of-generation algorithm of ZoKrates, generating a non-repudiatable proof of the certificate;
(4) and (4) certificate verification: expected authentication UserApplicant,uUser of identityVerifier,s(User s of certificate of authenticity), it is for UserApplicant,uInitiating an authentication request, UserApplicant,uFirstly, go RA to obtain its own certificate and send the certificate to UserVerifier,s,UserVerifier,sVerifying the certificate; firstly, whether the certificate is legal CA issuance or not is checked, and the User is checkedApplicant,uWhether the certificate is revoked, checking the validity period of the certificate and checking whether the certificate is issued by the required n CA nodes; if the certificate is expired, revoked or not signed by a legal node, the identity authentication fails, otherwise, the certificate is authenticated, the authentication comprises signature authentication and zero knowledge proof ZoKrates authentication, and the authentication is successful, namely the User is authenticatedApplicant,uThe identity of (a);
(5) certificate revocation; certificate revocation is divided into expired revocation and UserApplicantActive withdrawingPinning, the Certificate Revocation List (CRL) will be periodically updated by RA; userApplicant,uIf a request for self certificate revocation is sent to the RA, the RA verifies the zero knowledge proof to validate the UserApplicant,uIdentity, verification is by adding a certificate to the CRL.
2. The distributed public key infrastructure method based on blockchain and attribute signatures of claim 1, wherein: the method for issuing the certificate by signing in the step (3) comprises the following steps:
no assumption is made that there is a User desiring to apply for a certificateApplicant,uIt expects an application attribute set Ω ═ { Attr1,Attr2,...,AttrnCorresponding certificate, UserApplicant,uT attributes are possessed; userApplicant,uCan be regarded as a common node in the block chain, which sends a network access request certificate service, User, to the RA node through the block chain networkApplicant,uVarious information m (including UID) required to submit a certificateu) And the RA confirms the information, if the information is wrong, the node request is rejected, otherwise, the information is sent to n CA nodes:
(1)Sign(m,Su,UIDu,Ω,{APKu,i,ASKu,i},{CPKi,CSKi})→Pn-t(x),σ.
UserApplicant,uhas t attributes, when n CA nodes of PKI receive m (including UID)u) Begin for the certificate message m e {0, 1}*Carrying out signature;
(i) for UserApplicant,uCA node Attr with attributeiLet it be i ═ 1., t, AttriRandomly choosing ti∈Zp*And calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
si=ASKu,i+eiCSKi,
Attrir is to beiSending the information to the RA node through a secure secret channel;
(ii) for UserApplicant,uCA node Attr without attributeiLet it be i ═ t +1iRandom selectionRandom generation of APKu,iE G, calculating:
ei=H1(Attri,APKu,i,UIDu,CPKi),
Attriwill be provided with<ci,di,APKu,i,Ri>Sending the information to the RA node through a secure secret channel;
(iii) RA node combines R with RiN is sent to UserApplicant,u,UserApplicant,uAnd (3) calculating:
(iv) and returning to the RA node, and calculating by the RA node:
c=H2(m,T1,...,Tn,UIDu).
(v) subsequently, n-t +1 points (0, c), (t +1, c) are usedt+1),...,(n,cn) Constructing an n-t Lagrange interpolation polynomial Pn-t (x):
(vi) will Pn-t(x) Is sent to a UserApplicant,uCA node Attr with attributeiI 1.., t.ca calculation:
ci=Pn-t(i),di=ti-Cisi,i=1,...,t.
Attriwill be provided with<ci,di>Sending the information to the RA node through a secure secret channel;
(vii) RA output polynomial Pn-t(x) And signature:
σ=<ci,di,Ti,APKu,i,UIDu>,i=1,2,...,n.
(viii) RA will Pn-t(x) And sigma is attached to the certificate information M to generate a certificate M, and the certificate M is sent to the User through a secure secret channelApplicant,uAnd handle UIDuSplicing with the time stamp to be used as a key, storing the certificate content as a value in the certificate libraries, and automatically and synchronously backing up the plurality of certificate libraries;
(2)zkProveGen(zkParams,w,x,ML)→πu.
UserApplicant,uperforming the Prove (zkParams, w, x, M) proof of Generation algorithm for ZoKratesL) Wherein, in the input parameters, the evidence:
3. The distributed public key infrastructure method based on blockchain and attribute signatures of claim 1, wherein: the certificate verification method in the step (4) comprises the following steps:
no assumptions are made about the expected authentication UserApplicant,uUser of identityVerifier,sIt expects to authenticate UserApplicant,uUserApplicant,uFirstly, the RA node obtains its own certificate and sends the certificate to the UserVerifier,s,UserVerifier,sVerifying the certificate, checking whether the certificate is issued by the CA node of the legal DPKI, and checking the UserApplicant,uWhether the certificate is revoked or not, checking the validity period of the certificate; if the certificate is expired, revoked or not signed and issued by a legal node, the identity authentication fails, otherwise, the certificate is signed and authenticated;
Verify(m,σ,Pn-t(x),πu)→True/False.
(i) authentication
If one fails, the signature is an invalid signature;
(ii) after the above items are verified, the UserVerifier,sObtaining a proof pi on a blockchainuAnd ZoKrates-related parameters, performing the authentication algorithm Verify (zkParams, x, M) of ZoKratesL,πu) If the verification is not passed, the signature is an invalid signature; if the verification is passed, the signature is a valid signature.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111651828.XA CN114301604B (en) | 2021-12-30 | 2021-12-30 | Construction method of distributed public key infrastructure based on blockchain and attribute signature |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111651828.XA CN114301604B (en) | 2021-12-30 | 2021-12-30 | Construction method of distributed public key infrastructure based on blockchain and attribute signature |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114301604A true CN114301604A (en) | 2022-04-08 |
CN114301604B CN114301604B (en) | 2023-09-29 |
Family
ID=80972858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111651828.XA Active CN114301604B (en) | 2021-12-30 | 2021-12-30 | Construction method of distributed public key infrastructure based on blockchain and attribute signature |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114301604B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114826618A (en) * | 2022-05-06 | 2022-07-29 | 珠海复旦创新研究院 | Certificate distribution and access control integrated system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450645A (en) * | 2018-11-29 | 2019-03-08 | 中国电子科技集团公司第三十研究所 | It is a kind of that anonymous authentication method is supervised based on zero-knowledge proof |
US20190215159A1 (en) * | 2018-01-10 | 2019-07-11 | Tmail Inc. | System and computer program product for certified confidential data collaboration using blockchains |
US10547457B1 (en) * | 2016-10-21 | 2020-01-28 | Wells Fargo Bank N.A. | Systems and methods for notary agent for public key infrastructure names |
CN112187455A (en) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | Method for constructing distributed public key infrastructure based on editable block chain |
CN113129518A (en) * | 2021-04-28 | 2021-07-16 | 北方工业大学 | Electric vehicle charging system and resource management method thereof |
CN113469827A (en) * | 2021-07-23 | 2021-10-01 | 电子科技大学 | Insurance claim settlement device and method based on hybrid intelligent contract |
-
2021
- 2021-12-30 CN CN202111651828.XA patent/CN114301604B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10547457B1 (en) * | 2016-10-21 | 2020-01-28 | Wells Fargo Bank N.A. | Systems and methods for notary agent for public key infrastructure names |
US20190215159A1 (en) * | 2018-01-10 | 2019-07-11 | Tmail Inc. | System and computer program product for certified confidential data collaboration using blockchains |
CN109450645A (en) * | 2018-11-29 | 2019-03-08 | 中国电子科技集团公司第三十研究所 | It is a kind of that anonymous authentication method is supervised based on zero-knowledge proof |
CN112187455A (en) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | Method for constructing distributed public key infrastructure based on editable block chain |
CN113129518A (en) * | 2021-04-28 | 2021-07-16 | 北方工业大学 | Electric vehicle charging system and resource management method thereof |
CN113469827A (en) * | 2021-07-23 | 2021-10-01 | 电子科技大学 | Insurance claim settlement device and method based on hybrid intelligent contract |
Non-Patent Citations (1)
Title |
---|
陈泽宁等: "基于区块链和去中心属性密码的访问控制身份方案", 中国科学(信息科学), no. 008, pages 1345 - 1359 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114826618A (en) * | 2022-05-06 | 2022-07-29 | 珠海复旦创新研究院 | Certificate distribution and access control integrated system |
Also Published As
Publication number | Publication date |
---|---|
CN114301604B (en) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106789090B (en) | Public key infrastructure system based on block chain and semi-random combined certificate signature method | |
Zhang et al. | A privacy-aware PUFs-based multiserver authentication protocol in cloud-edge IoT systems using blockchain | |
Chow et al. | Dynamic secure cloud storage with provenance | |
Au et al. | Malicious KGC attacks in certificateless cryptography | |
CN110958229A (en) | Credible identity authentication method based on block chain | |
Chai et al. | CyberChain: Cybertwin empowered blockchain for lightweight and privacy-preserving authentication in Internet of Vehicles | |
CN109963282B (en) | Privacy protection access control method in IP-supported wireless sensor network | |
CN112583596B (en) | Complete cross-domain identity authentication method based on block chain technology | |
CN114629720B (en) | industrial Internet cross-domain authentication method based on blockchain and Handle identification | |
CN113824563A (en) | Cross-domain identity authentication method based on block chain certificate | |
CN114884698A (en) | Kerberos and IBC security domain cross-domain authentication method based on alliance chain | |
CN114422106B (en) | Security authentication method and system for Internet of things system under multi-server environment | |
Gritti et al. | Chariot: Cloud-assisted access control for the internet of things | |
CN116366239A (en) | Cloud auditing method and system for anonymous data | |
Zheng et al. | [Retracted] An Anonymous Authentication Scheme in VANETs of Smart City Based on Certificateless Group Signature | |
Perugini et al. | On the integration of Self-Sovereign Identity with TLS 1.3 handshake to build trust in IoT systems | |
CN114301604B (en) | Construction method of distributed public key infrastructure based on blockchain and attribute signature | |
Long et al. | Blockchain-Based Anonymous Authentication and Key Management for Internet of Things With Chebyshev Chaotic Maps | |
Liou et al. | T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs | |
Lim et al. | A V2X access authorization mechanism based on decentralized ID (DID) and verifiable credentials (VC) | |
Shao et al. | Blockchain-assisted certificateless signcryption for vehicle-to-vehicle communication in VANETs | |
CN116707827A (en) | Access control method based on rights | |
CN114339743B (en) | Internet of things client privacy protection authentication method based on edge calculation | |
US10469267B2 (en) | Method of managing implicit certificates using a distributed public keys infrastructure | |
CN116015648A (en) | Cross-domain privacy protection message authentication method for industrial Internet of things |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |