[go: up one dir, main page]

CN110661816A - Cross-domain authentication method based on block chain and electronic equipment - Google Patents

Cross-domain authentication method based on block chain and electronic equipment Download PDF

Info

Publication number
CN110661816A
CN110661816A CN201911007278.0A CN201911007278A CN110661816A CN 110661816 A CN110661816 A CN 110661816A CN 201911007278 A CN201911007278 A CN 201911007278A CN 110661816 A CN110661816 A CN 110661816A
Authority
CN
China
Prior art keywords
certificate
slave
certification authority
commitment
master
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
Application number
CN201911007278.0A
Other languages
Chinese (zh)
Other versions
CN110661816B (en
Inventor
李桐
吴骏泽
姜勇
钟林
解凯
杨斌
郭静如
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Beijing Institute of Graphic Communication
Original Assignee
Beijing Institute of Graphic Communication
Beijing University of Aeronautics and Astronautics
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Graphic Communication, Beijing University of Aeronautics and Astronautics filed Critical Beijing Institute of Graphic Communication
Priority to CN201911007278.0A priority Critical patent/CN110661816B/en
Publication of CN110661816A publication Critical patent/CN110661816A/en
Application granted granted Critical
Publication of CN110661816B publication Critical patent/CN110661816B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供一种基于区块链的跨域认证方法与电子设备,基于给定跨域认证系统实现,给定跨域认证系统包括主认证机构、从认证机构、用户端及验证方,其中所述方法包括:主认证机构生成公共参数、主密钥和主公钥,并基于主密钥生成并分发从认证机构的从密钥给从认证机构;从认证机构根据从密钥签发证书给用户端,用户端若验证其有效则接受;从认证机构对证书承诺并发送给用户端,用户端若验证其有效则接受;从认证机构对承诺签名并广播到区块链系统,其它从认证机构若验证签名有效则存储;用户端将承诺与验证信息发送给验证方,验证方若验证承诺有效则接受用户的身份信息。本发明实施例能够实现高效的跨域认证并能对从认证机构的严格监管。

Embodiments of the present invention provide a blockchain-based cross-domain authentication method and electronic device, which are implemented based on a given cross-domain authentication system, where the given cross-domain authentication system includes a master certification authority, a secondary certification authority, a client, and a verifier, The method includes: the master certification authority generates public parameters, the master key and the master public key, and based on the master key, generates and distributes the slave key of the slave certification authority to the slave certification authority; the slave certification authority issues a certificate according to the slave key To the client, if the client verifies that it is valid, it will accept it; from the certification body, the certificate promises and sends it to the client, and the client accepts it if it verifies that it is valid; from the certification body, it signs the promise and broadcasts it to the blockchain system, and others from If the certification authority verifies that the signature is valid, it will be stored; the client will send the commitment and verification information to the verifier, and the verifier will accept the user's identity information if the verification commitment is valid. The embodiment of the present invention can realize efficient cross-domain authentication and can strictly supervise the secondary authentication agency.

Description

一种基于区块链的跨域认证方法与电子设备A blockchain-based cross-domain authentication method and electronic device

技术领域technical field

本发明涉及信息安全技术领域,更具体地,涉及一种基于区块链的跨域认证方法与电子设备。The invention relates to the technical field of information security, and more particularly, to a blockchain-based cross-domain authentication method and electronic device.

背景技术Background technique

互联网是一个开放性的系统,其开放性导致其存在许多的安全漏洞、威胁和隐私问题。网络中的各类资源很容易被攻击者非法访问而导致经济损失等问题,因此信息服务商对网络资源访问者的身份进行合法性认证是至关重要的。The Internet is an open system, and its openness leads to many security holes, threats and privacy issues. Various resources in the network are easily accessed illegally by attackers and cause economic losses. Therefore, it is very important for information service providers to authenticate the identity of network resource visitors.

身份认证是对信息服务实体身份的有效性进行确定的过程,该过程是网络安全的一道基本防线。由于信息服务资源和信息服务种类越来越多,使得用户需要登录到不同的信息服务系统以完成不同的任务。这些信息服务系统由多个不同的信任域构成,每个信任域中均有一个或多个独立的认证机构。当前应用需求需要用户在不同信任域中签发的证书在其他信任域中能够得到认证,即实现跨域认证。Identity authentication is a process of determining the validity of the identity of an information service entity, which is a basic line of defense for network security. Due to the increasing number of information service resources and types of information services, users need to log in to different information service systems to complete different tasks. These information service systems consist of several different trust domains, each of which has one or more independent certification authorities. Current application requirements require that certificates issued by users in different trust domains can be authenticated in other trust domains, that is, cross-domain authentication.

公钥基础设施(Public Key Infrastructure,PKI)是基于公钥密码技术提供安全信息服务的通用安全基础设施。在基于PKI的跨域认证中,由可信第三方,即认证机构,对证书进行生成、发放、管理与存档等。此外,可信第三方还需要对上述证书相关的工作提供安全服务,如为网络应用提供认证、授权、加密、解密及签名等。但是该认证过程会产生大量的数字证书,证书管理成本巨大。Public Key Infrastructure (PKI) is a general security infrastructure that provides secure information services based on public key cryptography. In PKI-based cross-domain authentication, a trusted third party, that is, a certification authority, generates, issues, manages, and archives certificates. In addition, trusted third parties also need to provide security services for the above-mentioned certificate-related work, such as providing authentication, authorization, encryption, decryption, and signature for network applications. However, the authentication process will generate a large number of digital certificates, and the cost of certificate management is huge.

在基于身份的跨域认证技术中,通常用一串具有特征信息的字符串代表用户,且将其作为用户的公钥,通过该身份字符串实现对用户的认证不需要数字证书,因此避免了庞大的证书管理。但是,用户的公钥需要认证机构签名,认证过程需要认证机构的参与。因此,认证需要认证机构、用户、信息服务商同时在线才能完成任务。In the identity-based cross-domain authentication technology, a string with characteristic information is usually used to represent the user, and it is used as the user's public key. The authentication of the user through the identity string does not require a digital certificate, thus avoiding the need for a digital certificate. Huge certificate management. However, the user's public key needs the signature of the certification authority, and the certification process requires the participation of the certification authority. Therefore, certification requires certification bodies, users, and information service providers to be online at the same time to complete the task.

在5G移动无线网络的发展和普及下,无线互联网迅速发展起来,互联网中绝大多数用户都是移动用户。在当前5G移动互联网应用场景下,网络被分为多个片,当用户在各个片之间迅速移动时,要求用户在不同信任域之间能够快速切换,才能通过无线网络获取互联网系统上的信息服务。With the development and popularization of 5G mobile wireless networks, wireless Internet has developed rapidly, and the vast majority of Internet users are mobile users. In the current 5G mobile Internet application scenario, the network is divided into multiple slices. When the user moves quickly between slices, the user is required to switch quickly between different trust domains in order to obtain information on the Internet system through the wireless network. Serve.

但是,由于传统的身份认证技术的上述限制,使得其显然不能满足该新场景下的效率需求,同时认证过程的安全性和公正性也得不到保障。因此,如何设计更加安全、快捷的跨域认证技术是亟待研究的关键问题。However, due to the above-mentioned limitations of the traditional identity authentication technology, it obviously cannot meet the efficiency requirements in this new scenario, and the security and fairness of the authentication process cannot be guaranteed. Therefore, how to design a more secure and fast cross-domain authentication technology is a key issue that needs to be studied urgently.

发明内容SUMMARY OF THE INVENTION

为了克服上述问题或者至少部分地解决上述问题,本发明实施例提供一种基于区块链的跨域认证方法与电子设备,用以有效提高对用户进行跨域认证的处理效率以及安全性。In order to overcome the above problems or at least partially solve the above problems, embodiments of the present invention provide a blockchain-based cross-domain authentication method and electronic device, so as to effectively improve the processing efficiency and security of cross-domain authentication for users.

第一方面,本发明实施例提供一种基于区块链的跨域认证方法,所述基于区块链的跨域认证方法基于给定跨域认证系统实现,所述给定跨域认证系统包括主认证机构、从认证机构、用户端以及验证方,所述基于区块链的跨域认证方法包括:In a first aspect, an embodiment of the present invention provides a blockchain-based cross-domain authentication method. The blockchain-based cross-domain authentication method is implemented based on a given cross-domain authentication system, and the given cross-domain authentication system includes: The primary certification authority, the secondary certification authority, the client, and the verifier, the blockchain-based cross-domain authentication method includes:

利用所述主认证机构,选取安全参数依次生成公共参数以及所述主认证机构的主公钥和主密钥,并基于所述主密钥生成所述从认证机构的从密钥,分发给所述从认证机构;Using the master certification authority, select security parameters to sequentially generate public parameters and the master public key and master key of the master certification authority, and generate the slave key of the slave certification authority based on the master key, and distribute it to all from the certification body;

利用所述从认证机构,根据所述从密钥生成所述从认证机构的从公钥,并基于所述从公钥生成证书签发给所述用户端,以供所述用户端验证所述证书是否有效,并在验证有效时接受所述证书;Using the secondary certification authority, generate the secondary public key of the secondary certification authority according to the secondary key, and issue a certificate to the client based on the secondary public key, so that the client can verify the certificate is valid, and accepts the said certificate when it is verified to be valid;

利用所述从认证机构,对所述证书进行承诺,并将承诺生成的证书承诺和验证信息发送给所述用户端,以供所述用户端验证所述证书承诺是否有效,并在验证有效时,接受所述证书承诺和所述验证信息;Utilize the secondary certification authority to make a commitment to the certificate, and send the certificate commitment and verification information generated by the commitment to the client, so that the client can verify whether the certificate commitment is valid, and when the verification is valid , accept the certificate commitment and the verification information;

利用所述从认证机构,对所述证书承诺签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证所述承诺签名是否有效,并在验证有效时,将所述承诺签名存储到区块链系统中;Use the secondary certification authority to sign the certificate commitment, and broadcast the generated commitment signature to the blockchain system for other secondary certification agencies to verify whether the commitment signature is valid, and when the verification is valid, the The commitment signature is stored in the blockchain system;

利用所述用户端,将所述证书、所述证书承诺和所述验证信息发送给所述验证方,以供所述验证方验证所述证书承诺是否有效,并在验证有效时,接受所述用户端对应的用户的身份信息;Using the client, send the certificate, the certificate promise and the verification information to the verifier, so that the verifier can verify whether the certificate promise is valid, and when the verification is valid, accept the The identity information of the user corresponding to the client;

利用所述主认证机构,追踪所述从认证机构的身份信息,并分别利用所述主认证机构和所述从认证机构,从所述证书承诺中提取出所述证书实现跨域认证。Using the master certification authority, the identity information of the slave certification authority is tracked, and the master certification authority and the slave certification authority are respectively used to extract the certificate from the certificate commitment to realize cross-domain authentication.

其中可选的,所述利用所述主认证机构,选取安全参数生成公共参数以及所述主认证机构的主公钥和主密钥,并基于所述主密钥生成所述从认证机构的从密钥,分发给所述从认证机构的步骤具体包括:利用所述主认证机构,依次完成如下处理流程:Optionally, the master certification authority is used to select security parameters to generate public parameters and the master public key and master key of the master certification authority, and the slave certification authority's slave certification authority is generated based on the master key. The step of distributing the key to the secondary certification authority specifically includes: using the primary certification authority to sequentially complete the following processing flow:

选择安全参数1λ,并基于安全参数1λ,采用系统参数生成算法SysGen,生成公共参数Param;Select the security parameter 1 λ , and based on the security parameter 1 λ , use the system parameter generation algorithm SysGen to generate the public parameter Param;

基于公共参数Param,采用密钥生成算法KGen,生成所述主认证机构的主公钥gmpk和主密钥gmsk,并基于主密钥gmsk,采用密钥生成算法KGen,生成所述从认证机构的从密钥gsk;Based on the public parameter Param, the key generation algorithm KGen is used to generate the master public key gmpk and the master key gmsk of the master certification authority, and based on the master key gmsk, the key generation algorithm KGen is used to generate the slave certification authority's master public key gmpk and master key gmsk. from key gsk;

所述利用所述从认证机构,根据所述从密钥生成所述从认证机构的从公钥的步骤具体包括:利用所述从认证机构,基于所述从认证机构的从密钥gsk,采用密钥生成算法KGen,生成所述从认证机构的从公钥gpk。The step of generating the secondary public key of the secondary certification authority according to the secondary key by using the secondary certification authority specifically includes: using the secondary certification authority, based on the secondary key gsk of the secondary certification authority, using The key generation algorithm KGen generates the secondary public key gpk of the secondary certification authority.

其中可选的,所述基于所述从公钥生成证书签发给所述用户端,以供所述用户端验证所述证书是否有效,并在验证有效时接受所述证书的步骤具体包括:Optionally, the step of issuing a certificate to the client based on the generated certificate from the public key, so that the client can verify whether the certificate is valid, and accepting the certificate when the verification is valid specifically includes:

利用所述从认证机构,基于所述从认证机构的从密钥gsk、所述主认证机构的主公钥gmpk和所述用户端所对应用户的身份信息IDj,采用群签名算法GSig,生成证书Cert签发给所述用户端;Using the secondary certification authority, the group signature algorithm GSig is used to generate The certificate Cert is issued to the client;

利用所述用户端,根据主公钥gmpk、用户的身份信息IDj和证书Cert,采用验证算法GVer,验证证书Cert是否有效;Utilize described client terminal, according to master public key gmpk, user's identity information ID j and certificate Cert, adopt verification algorithm GVer, verify whether certificate Cert is valid;

若验证算法GVer的输出为Valid,则确定证书Cert有效并接受证书Cert,若验证算法GVer的输出为Invalid,则确定证书Cert无效并拒绝证书Cert。If the output of the verification algorithm GVer is Valid, the certificate Cert is determined to be valid and the certificate Cert is accepted; if the output of the verification algorithm GVer is Invalid, the certificate Cert is determined to be invalid and the certificate Cert is rejected.

其中可选的,所述利用所述从认证机构,对所述证书进行承诺,并将承诺生成的证书承诺和验证信息发送给所述用户端,以供所述用户端验证所述证书承诺是否有效,并在验证有效时,接受所述证书承诺和所述验证信息的步骤具体包括:Optionally, the use of the secondary certification authority makes a commitment to the certificate, and sends the certificate commitment and verification information generated by the commitment to the client, so that the client can verify whether the certificate commitment is valid, and when the verification is valid, the steps of accepting the certificate commitment and the verification information specifically include:

利用所述从认证机构,根据所述主认证机构的主公钥gmpk、所述从认证机构的公钥gpk和证书Cert,采用承诺算法TECom生成证书承诺和验证信息(ψ,π),并将证书承诺和验证信息(ψ,π)发送给所述用户端;Using the secondary certification authority, according to the primary public key gmpk of the primary certification authority, the public key gpk of the secondary certification authority and the certificate Cert, the commitment algorithm TECom is used to generate the certificate commitment and verification information (ψ, π), and the The certificate commitment and verification information (ψ, π) are sent to the client;

利用所述用户端,根据所述主认证机构的主公钥gmpk、证书Cert、证书承诺和验证信息(ψ,π),采用验证算法TEVer,验证证书承诺ψ是否有效;Using the user terminal, according to the main public key gmpk of the main certification authority, the certificate Cert, the certificate commitment and the verification information (ψ, π), the verification algorithm TEVer is used to verify whether the certificate commitment ψ is valid;

若验证算法TEVer的输出为Valid,则确定证书承诺ψ有效并接受证书承诺和验证信息(ψ,π),若验证算法TEVer的输出为Invalid,则确定证书承诺ψ无效并拒绝证书承诺和验证信息(ψ,π)。If the output of the verification algorithm TEVer is Valid, the certificate commitment ψ is determined to be valid and the certificate commitment and verification information (ψ, π) are accepted. If the output of the verification algorithm TEVer is Invalid, the certificate commitment ψ is determined to be invalid and the certificate commitment and verification information are rejected. (ψ, π).

其中可选的,所述利用所述从认证机构,对所述证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证所述承诺签名是否有效,并在验证有效时,将所述承诺签名存储到区块链系统中的步骤具体包括:Optionally, the certificate commitment is signed by using the secondary certification authority, and the commitment signature generated by the signature is broadcast to the blockchain system, so that other secondary certification agencies can verify whether the commitment signature is valid. , and when the verification is valid, the steps of storing the commitment signature in the blockchain system specifically include:

利用所述从认证机构,根据所述从认证机构的从密钥gsk、所述主认证机构的主公钥gmpk和证书承诺ψ,采用群签名算法GSig,生成承诺签名σ并广播到区块链系统中;Using the secondary certification authority, according to the secondary key gsk of the secondary certification authority, the master public key gmpk of the primary certification authority, and the certificate commitment ψ, the group signature algorithm GSig is used to generate the commitment signature σ and broadcast it to the blockchain in the system;

利用所述其它从认证机构,根据所述主认证机构的主公钥gmpk、证书承诺ψ和承诺签名σ,采用验证算法GVer,验证承诺签名σ是否有效;Utilize the other secondary certification authority, according to the master public key gmpk, certificate commitment ψ and commitment signature σ of the primary certification authority, adopt the verification algorithm GVer to verify whether the commitment signature σ is valid;

若验证算法GVer的输出为Valid,则确定承诺签名σ有效并将承诺签名σ存储到区块链系统中,若验证算法GVer的输出为Invalid,则确定承诺签名σ无效并拒绝承诺签名σ。If the output of the verification algorithm GVer is Valid, the commitment signature σ is determined to be valid and the commitment signature σ is stored in the blockchain system; if the output of the verification algorithm GVer is Invalid, the commitment signature σ is determined to be invalid and the commitment signature σ is rejected.

其中可选的,所述利用所述用户端,将所述证书、所述证书承诺和所述验证信息发送给所述验证方,以供所述验证方验证所述证书承诺是否有效,并在验证有效时,接受所述用户端对应的用户的身份信息的步骤具体包括:Optionally, the user terminal is used to send the certificate, the certificate commitment and the verification information to the verifier, so that the verifier can verify whether the certificate commitment is valid, and then send the certificate to the verifier. When the verification is valid, the step of accepting the identity information of the user corresponding to the user terminal specifically includes:

利用所述用户端,将证书Cert以及证书承诺和验证信息(ψ,π)发送给所述验证方;Using the user terminal, send the certificate Cert and the certificate commitment and verification information (ψ, π) to the verifier;

利用所述验证方,根据所述主认证机构的主公钥gmpk、证书Cert以及证书承诺和验证信息(ψ,π),采用验证算法TEVer,验证证书承诺ψ是否有效;Using the verifier, according to the main public key gmpk of the main certification authority, the certificate Cert, and the certificate commitment and verification information (ψ, π), the verification algorithm TEVer is used to verify whether the certificate commitment ψ is valid;

若验证算法TEVer的输出为Valid,则确定证书承诺ψ有效并接受所述用户端对应的用户的身份信息,若验证算法TEVer的输出为Invalid,则确定证书承诺ψ无效并拒绝所述用户端对应的用户的身份信息。If the output of the verification algorithm TEVer is Valid, it is determined that the certificate promise ψ is valid and the identity information of the user corresponding to the user terminal is accepted; if the output of the verification algorithm TEVer is Invalid, the certificate promise ψ is determined to be invalid and the corresponding user terminal is rejected. user's identity information.

其中可选的,所述利用所述主认证机构,追踪所述从认证机构的身份信息的步骤具体包括:利用所述主认证机构,根据所述主认证机构的主密钥gmsk和承诺签名σ,采用追踪算法Trace,追踪所述从认证机构的从密钥gsk,并基于从密钥gsk识别所述从认证机构的身份信息。Optionally, the step of using the master certification authority to track the identity information of the secondary certification authority specifically includes: using the master certification authority, according to the master certification authority's master key gmsk and commitment signature σ , using the tracing algorithm Trace to trace the secondary key gsk of the secondary certification authority, and identify the identity information of the secondary certification authority based on the secondary key gsk.

其中可选的,所述分别利用所述主认证机构和所述从认证机构,从所述证书承诺中提取出所述证书实现跨域认证的步骤具体包括:Optionally, the step of using the primary certification authority and the secondary certification authority to extract the certificate from the certificate commitment to realize cross-domain authentication specifically includes:

利用所述主认证机构,根据所述主认证机构的主密钥gmsk和证书承诺ψ,采用提取算法Extract,提取证书Cert;Using the main certification authority, according to the master key gmsk of the main certification authority and the certificate commitment ψ, the extraction algorithm Extract is used to extract the certificate Cert;

利用所述从认证机构,根据所述从认证机构的从密钥gsk和证书承诺ψ,采用提取算法Extract,提取证书Cert。Using the secondary certification authority, according to the secondary key gsk and the certificate commitment ψ of the secondary certification authority, the extraction algorithm Extract is used to extract the certificate Cert.

第二方面,本发明实施例提供一种基于区块链的跨域认证系统,包括主认证机构、从认证机构、用户端以及验证方,其中:In a second aspect, an embodiment of the present invention provides a blockchain-based cross-domain authentication system, including a primary authentication authority, a secondary authentication authority, a client, and a verifier, wherein:

所述主认证机构用于,选取安全参数,并基于所述安全参数依次生成公共参数及所述主认证机构的主公钥和主密钥,以及,基于所述主密钥生成所述从认证机构的从密钥,分发给所述从认证机构,以及,追踪所述从认证机构的身份信息,并从所述证书承诺中提取出所述证书实现跨域认证;The primary certification authority is used to select security parameters, and sequentially generate public parameters and the primary public key and primary key of the primary certification authority based on the security parameters, and generate the secondary certification based on the primary key The agency's secondary key is distributed to the secondary certification authority, and the identity information of the secondary certification authority is tracked, and the certificate is extracted from the certificate commitment to realize cross-domain authentication;

所述从认证机构用于,根据所述从密钥生成所述从认证机构的从公钥,并基于所述从公钥生成证书签发给所述用户端,以及,对所述证书进行承诺,并将承诺生成的证书承诺和验证信息发送给所述用户端,以及,对所述证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证所述承诺签名是否有效,并在验证有效时,将所述承诺签名存储到区块链系统中,以及,从所述证书承诺中提取出所述证书实现跨域认证;The secondary certification authority is used to generate a secondary public key of the secondary certification authority according to the secondary key, and issue a certificate to the client based on the secondary public key, and make a commitment to the certificate, Send the certificate commitment and verification information generated by the commitment to the client, and sign the certificate commitment, and broadcast the commitment signature generated by the signature to the blockchain system for other verification agencies from the certification authority. Whether the commitment signature is valid, and when the verification is valid, the commitment signature is stored in the blockchain system, and the certificate is extracted from the certificate commitment to achieve cross-domain authentication;

所述用户端用于验证所述证书是否有效,并在验证有效时接受所述证书,以及,验证所述证书承诺是否有效,并在验证有效时,接受所述证书承诺和所述验证信息,以及,将所述证书、所述证书承诺和所述验证信息发送给所述验证方;The user terminal is used to verify whether the certificate is valid, and accept the certificate when the verification is valid, and verify whether the certificate promise is valid, and when the verification is valid, accept the certificate promise and the verification information, and, sending the certificate, the certificate commitment and the verification information to the verification party;

所述验证方用于验证所述证书承诺是否有效,并在验证有效时,接受所述用户端对应的用户的身份信息。The verifier is used to verify whether the certificate promise is valid, and when the verification is valid, accept the identity information of the user corresponding to the client.

第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上第一方面所述的基于区块链的跨域认证方法的步骤。In a third aspect, an embodiment of the present invention provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, The steps of implementing the blockchain-based cross-domain authentication method described in the first aspect above.

第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机指令,所述计算机指令被计算机执行时,实现如上第一方面所述的基于区块链的跨域认证方法的步骤。In a fourth aspect, an embodiment of the present invention provides a non-transitory computer-readable storage medium on which computer instructions are stored, and when the computer instructions are executed by a computer, the blockchain-based cross-border transaction described in the first aspect above is realized. The steps of the domain authentication method.

本发明实施例提供的一种基于区块链的跨域认证方法与电子设备,通过利用从认证机构实现跨域认证过程的证书签发、证书承诺及承诺签名,使得跨域认证不依赖于主认证机构,且用户只需对从认证机构签发的证书、对证书的承诺以及对承诺的签名进行验证,即可使得验证方能快速验证到用户的身份信息,从而能够有效提高跨域认证的处理效率。同时,通过将承诺签名广播到区块链系统中,能够实现对从认证机构的严格监管,保障认证过程的安全性和公正性。The blockchain-based cross-domain authentication method and electronic device provided by the embodiments of the present invention make cross-domain authentication independent of main authentication by utilizing the certificate issuance, certificate commitment and commitment signature of the cross-domain authentication process from a certification authority. The user only needs to verify the certificate issued by the certification authority, the commitment to the certificate and the signature of the commitment, so that the verifier can quickly verify the user's identity information, which can effectively improve the processing efficiency of cross-domain authentication. . At the same time, by broadcasting the commitment signature to the blockchain system, it is possible to implement strict supervision of the certification body and ensure the security and fairness of the certification process.

附图说明Description of drawings

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the accompanying drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description These are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can also be obtained according to these drawings without creative efforts.

图1为本发明实施例提供的跨域认证系统的结构示意图;1 is a schematic structural diagram of a cross-domain authentication system provided by an embodiment of the present invention;

图2为本发明一实施例提供的基于区块链的跨域认证方法的流程示意图;2 is a schematic flowchart of a blockchain-based cross-domain authentication method provided by an embodiment of the present invention;

图3为本发明另一实施例提供的基于区块链的跨域认证方法的流程示意图;3 is a schematic flowchart of a blockchain-based cross-domain authentication method provided by another embodiment of the present invention;

图4为根据本发明实施例提供的基于区块链的跨域认证方法中基础密码学工具的示意图;4 is a schematic diagram of a basic cryptography tool in a blockchain-based cross-domain authentication method provided according to an embodiment of the present invention;

图5为本发明实施例提供的电子设备的实体结构示意图。FIG. 5 is a schematic diagram of a physical structure of an electronic device according to an embodiment of the present invention.

具体实施方式Detailed ways

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例的一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。In order to make the purposes, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments It is a part of the embodiments of the present invention, but not all of the embodiments. Based on the embodiments in the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative work fall within the protection scope of the embodiments of the present invention.

本发明实施例针对现有技术跨域认证效率较低且缺乏监管的问题,通过利用从认证机构实现跨域认证过程的证书签发、证书承诺及承诺签名,使得跨域认证不依赖于主认证机构,且用户只需对从认证机构签发的证书、对证书的承诺以及对承诺的签名进行验证,即可使得验证方能快速验证到用户的身份信息,从而能够有效提高跨域认证的处理效率。同时,通过将承诺签名广播到区块链系统中,能够实现对从认证机构的严格监管,保障认证过程的安全性和公正性。以下将具体通过多个实施例对本发明实施例进行展开说明和介绍。Aiming at the problems of low efficiency and lack of supervision in cross-domain authentication in the prior art, the embodiments of the present invention utilize the certificate issuance, certificate commitment and commitment signature of the cross-domain authentication process from the certification authority, so that the cross-domain authentication does not depend on the main certification authority. , and the user only needs to verify the certificate issued by the certification authority, the commitment to the certificate and the signature to the commitment, so that the verifier can quickly verify the user's identity information, which can effectively improve the processing efficiency of cross-domain authentication. At the same time, by broadcasting the commitment signature to the blockchain system, it is possible to implement strict supervision of the certification body and ensure the security and fairness of the certification process. The following will specifically describe and introduce the embodiments of the present invention through a plurality of embodiments.

作为本发明实施例的一个方面,本发明实施例提供一种基于区块链的跨域认证方法,可基于跨域认证系统实现,如图1所示,为本发明实施例提供的跨域认证系统的结构示意图,该跨域认证系统包括主认证机构、从认证机构、用户端及验证方。如图2所示,为本发明一实施例提供的基于区块链的跨域认证方法的流程示意图,该方法包括:As an aspect of the embodiments of the present invention, the embodiments of the present invention provide a blockchain-based cross-domain authentication method, which can be implemented based on a cross-domain authentication system, as shown in FIG. 1 , which is the cross-domain authentication provided by the embodiments of the present invention. A schematic diagram of the structure of the system, the cross-domain authentication system includes a master certification authority, a secondary certification authority, a client and a verifier. As shown in FIG. 2, it is a schematic flowchart of a blockchain-based cross-domain authentication method provided by an embodiment of the present invention, and the method includes:

S201,利用主认证机构,选取安全参数依次生成公共参数以及主认证机构的主公钥和主密钥,并基于主密钥生成从认证机构的从密钥,分发给从认证机构。S201 , using the master certification authority, select security parameters to sequentially generate public parameters and the master public key and master key of the master certification authority, and generate the slave key of the slave certification authority based on the master key, and distribute to the slave certification authority.

可以理解为,本发明实施例通过控制跨域认证系统中的各执行单元按照一定的执行次序执行相应的操作,最终实现对用户的跨域认证。在该执行次序中,首先利用主认证机构进行相应的初始化操作。具体而言,利用主认证机构先选择安全参数,再基于此依次生成公共参数、主认证机构的主公钥和主密钥。之后主认证机构根据主认证机构的主密钥生成从认证机构的从密钥,并将该从密钥分发给从认证机构。It can be understood that, in the embodiment of the present invention, the cross-domain authentication of the user is finally realized by controlling each execution unit in the cross-domain authentication system to perform corresponding operations according to a certain execution order. In this execution sequence, a corresponding initialization operation is first performed using the primary certification authority. Specifically, the primary certification authority is used to select security parameters first, and then based on these, the public parameters, the primary public key and the primary key of the primary certification authority are sequentially generated. After that, the master certification authority generates the slave key of the slave certification authority according to the master key of the master certification authority, and distributes the slave key to the slave certification authority.

S202,利用从认证机构,根据从密钥生成从认证机构的从公钥,并基于从公钥生成证书签发给用户端,以供用户端验证证书是否有效,并在验证有效时接受证书。S202 , use the secondary certification authority to generate the secondary public key of the secondary certification authority according to the secondary key, and generate a certificate based on the secondary public key and issue the certificate to the client, so that the client can verify whether the certificate is valid, and accept the certificate when the verification is valid.

可以理解为,在监测到从认证机构接收到主认证机构发送的从认证机构的从密钥后,利用从认证机构,根据从认证机构的从密钥生成从认证机构的从公钥。之后,从认证机构生成证书,并将证书发送给用户端。用户端在接收到证书后,验证该证书是否有效,若有效,则用户端接受该证书,以启动下一步认证流程。可选的,若验证该证书无效,则用户端拒绝该证书,本次认证失败。It can be understood that, after monitoring that the slave certification authority receives the slave key of the slave certification authority sent by the master certification authority, the slave certification authority is used to generate the slave public key of the slave certification authority according to the slave key of the slave certification authority. After that, generate a certificate from the certificate authority and send the certificate to the client. After receiving the certificate, the client verifies whether the certificate is valid, and if it is valid, the client accepts the certificate to start the next authentication process. Optionally, if it is verified that the certificate is invalid, the client rejects the certificate, and the current authentication fails.

S203,利用从认证机构,对证书进行承诺,并将承诺生成的证书承诺和验证信息发送给用户端,以供用户端验证证书承诺是否有效,并在验证有效时,接受证书承诺和验证信息。S203, the certificate commitment and verification information generated by the commitment are sent to the client by using the secondary certification authority, so that the client can verify whether the certificate commitment is valid, and when the verification is valid, accept the certificate commitment and verification information.

可以理解为,在监测到用户端接受了证书之后,利用从认证机构对证书进行承诺,并将承诺生成的证书承诺和验证信息发送给用户端。用户端在接收到证书承诺和验证信息后,验证该证书承诺是否有效,若有效,则用户端接受该证书承诺和验证信息,以启动下一步认证流程。可选的,若验证该证书承诺无效,则用户端拒绝该证书承诺和验证信息,本次认证失败。It can be understood that, after monitoring that the client accepts the certificate, the certificate authority is used to promise the certificate, and the certificate promise and verification information generated by the promise are sent to the client. After receiving the certificate commitment and verification information, the client verifies whether the certificate commitment is valid. If valid, the client accepts the certificate commitment and verification information to start the next authentication process. Optionally, if verifying that the certificate promise is invalid, the client rejects the certificate promise and the verification information, and the current authentication fails.

S204,利用从认证机构,对证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证承诺签名是否有效,并在验证有效时,将承诺签名存储到区块链系统中。S204, use the secondary certification authority to sign the certificate commitment, and broadcast the commitment signature generated by the signature to the blockchain system, so that other secondary certification agencies can verify whether the commitment signature is valid, and when the verification is valid, store the commitment signature into the blockchain system.

可以理解为,在监测到用户端接受了证书承诺和验证信息之后,利用从认证机构对承诺证书进行签名,并将签名生成的承诺签名广播到区块链系统中。其它从认证机构从区块链系统中读取该承诺签名,并验证该承诺签名是否有效,若有效,则其它从认证机构将该承诺签名存储到区块链系统中。可选的,若验证该承诺签名无效,则其它从认证机构拒绝该承诺签名,本次认证失败。It can be understood that, after monitoring that the client has accepted the certificate commitment and verification information, the commitment certificate is signed by the certification authority, and the commitment signature generated by the signature is broadcast to the blockchain system. Other secondary certification agencies read the commitment signature from the blockchain system and verify whether the commitment signature is valid. If valid, other secondary certification agencies store the commitment signature in the blockchain system. Optionally, if it is verified that the commitment signature is invalid, other secondary certification authorities reject the commitment signature, and the current certification fails.

S205,利用用户端,将证书、证书承诺和验证信息发送给验证方,以供验证方验证证书承诺是否有效,并在验证有效时,接受用户端对应的用户的身份信息。S205, using the client to send the certificate, the certificate commitment and the verification information to the verifier, so that the verifier can verify whether the certificate commitment is valid, and when the verification is valid, accept the identity information of the user corresponding to the client.

可以理解为,在监测到其它从认证机构将承诺签名存储到区块链系统中之后,利用用户端将上述证书、证书承诺和验证信息发送给验证方。验证方在接收到该证书、证书承诺和验证信息后,据此验证证书承诺是否有效,若有效,则验证方接受该用户端对应的用户的身份信息,以启动下一步认证流程。可选的,若验证方验证该证书承诺无效,则拒绝该证书承诺,本次认证失败。It can be understood that after monitoring that other certification agencies store the commitment signature in the blockchain system, the client sends the above certificate, certificate commitment and verification information to the verifier. After receiving the certificate, the certificate commitment and the verification information, the verifier verifies whether the certificate commitment is valid. If valid, the verifier accepts the identity information of the user corresponding to the client to start the next authentication process. Optionally, if the verifier verifies that the certificate promise is invalid, the certificate promise is rejected, and the current authentication fails.

S206,利用主认证机构,追踪从认证机构的身份信息,并分别利用主认证机构和从认证机构,从证书承诺中提取出证书实现跨域认证。S206, using the primary certification body to track the identity information of the secondary certification body, and using the primary certification body and the secondary certification body respectively to extract the certificate from the certificate commitment to realize cross-domain authentication.

可以理解为,本发明实施例的最后,在监测到验证方接受了用户端对应的身份信息之后,利用主认证机构追踪从认证机构的身份信息,并由主认证机构和追踪到的从认证机构从证书承诺中提取出证书实现跨域认证。It can be understood that at the end of the embodiment of the present invention, after monitoring that the verifier has accepted the identity information corresponding to the client, the primary certification authority is used to track the identity information of the secondary certification authority, and the primary certification authority and the tracked secondary certification authority are used to track the identity information of the secondary certification authority. The certificate is extracted from the certificate commitment to realize cross-domain authentication.

本发明实施例提供的基于区块链的跨域认证方法,通过利用从认证机构实现跨域认证过程的证书签发、证书承诺及承诺签名,使得跨域认证不依赖于主认证机构,且用户只需对从认证机构签发的证书、对证书的承诺以及对承诺的签名进行验证,即可使得验证方能快速验证到用户的身份信息,从而能够有效提高跨域认证的处理效率。同时,通过将承诺签名广播到区块链系统中,能够实现对从认证机构的严格监管,保障认证过程的安全性和公正性。The blockchain-based cross-domain authentication method provided by the embodiment of the present invention realizes the certificate issuance, certificate commitment and commitment signature of the cross-domain authentication process from the certification authority, so that the cross-domain authentication does not depend on the main certification authority, and the user only It is necessary to verify the certificate issued by the certification authority, the commitment to the certificate, and the signature of the commitment, so that the verifier can quickly verify the user's identity information, which can effectively improve the processing efficiency of cross-domain authentication. At the same time, by broadcasting the commitment signature to the blockchain system, it is possible to implement strict supervision of the certification body and ensure the security and fairness of the certification process.

其中,根据上述各实施例可选的,利用主认证机构,选取安全参数生成公共参数以及主认证机构的主公钥和主密钥,并基于主密钥生成从认证机构的从密钥,分发给从认证机构的步骤具体包括:利用主认证机构,依次完成如下处理流程:Wherein, according to the above-mentioned embodiments, optionally, the master certification authority is used to select security parameters to generate public parameters, the master public key and master key of the master certification authority, and the slave key of the slave certification authority is generated based on the master key, and distributed The steps for the secondary certification body specifically include: using the primary certification body to complete the following processing procedures in sequence:

选择安全参数1λ,并基于安全参数1λ,采用系统参数生成算法SysGen,生成公共参数Param;Select the security parameter 1 λ , and based on the security parameter 1 λ , use the system parameter generation algorithm SysGen to generate the public parameter Param;

基于公共参数Param,采用密钥生成算法KGen,生成主认证机构的主公钥gmpk和主密钥gmsk,并基于主密钥gmsk,采用密钥生成算法KGen,生成从认证机构的从密钥gsk。Based on the public parameter Param, the key generation algorithm KGen is used to generate the master public key gmpk and the master key gmsk of the master certification authority, and based on the master key gmsk, the key generation algorithm KGen is used to generate the slave key gsk of the slave certification authority .

利用从认证机构,根据从密钥生成从认证机构的从公钥的步骤具体包括:利用从认证机构,基于从认证机构的从密钥gsk,采用密钥生成算法KGen,生成从认证机构的从公钥gpk。The step of using the secondary certification authority to generate the secondary public key of the secondary certification authority according to the secondary key specifically includes: using the secondary certification authority, based on the secondary key gsk of the secondary certification authority, and using the key generation algorithm KGen to generate the secondary public key of the secondary certification authority. public key gpk.

可以理解为,由于本发明实施例的PPCA方案需要实现对证书的跨域认证并实现对认证机构的追踪,所以引入群签名算法以实现该目标。群签名是由群成员对消息进行签名,验证方能够进行有效验证,且群管理员还能够对签名方进行身份追踪。令(G1,G1)为对称双线性群对,ζ为群G1到群G1的同构映射,哈希函数H0:{0,1}*→Zp。SDH复杂性假设在双线性群(G1,G1)上成立,判决线性假设在群G1上成立,e为(G1,G1)上的对称双线性映射。It can be understood that, since the PPCA solution of the embodiment of the present invention needs to realize cross-domain authentication of certificates and to realize the tracking of certification authorities, a group signature algorithm is introduced to achieve this goal. Group signature means that the group members sign the message, and the verifier can perform effective verification, and the group administrator can also track the identity of the signer. Let (G 1 , G 1 ) be a pair of symmetric bilinear groups, ζ be an isomorphic map from group G 1 to group G 1 , hash function H 0 : {0, 1} * →Z p . The SDH complexity assumption holds on the bilinear group (G 1 , G 1 ), the decision linearity assumption holds on the group G 1 , and e is a symmetric bilinear map on (G 1 , G 1 ).

对于本发明实施例的系统参数生成算法SysGen,系统安全参数为λ,群成员数为n。群管理员在群G1中随机选择生成元g2,令g1←ζ(g2)。在群G1中随机选择生成元

Figure BDA00022431497000001111
随机选择ξ1
Figure BDA00022431497000001112
令u,v∈G1且满足
Figure BDA0002243149700000111
随机选择
Figure BDA0002243149700000112
Figure BDA0002243149700000113
For the system parameter generation algorithm SysGen of the embodiment of the present invention, the system security parameter is λ, and the number of group members is n. The group administrator randomly selects the generator g 2 in the group G 1 , let g 1 ←ζ(g 2 ). Randomly choose generators in group G1
Figure BDA00022431497000001111
Randomly choose ξ 1 ,
Figure BDA00022431497000001112
Let u, v∈G 1 and satisfy
Figure BDA0002243149700000111
random selection
Figure BDA0002243149700000112
make
Figure BDA0002243149700000113

对于本发明实施例的密钥生成算法KGen,群管理员使用γ生成每个成员的SDH二元组(Ai,xi),随机选择

Figure BDA0002243149700000114
且令
Figure BDA0002243149700000115
则群管理员的群公钥(即主公钥)和群私钥(即主密钥)分别为gmpk=(g1,g2,h,u,v,ω),gmsk=(ξ1,ξ2),群成员的私钥(即从密钥)为gski=(Ai,xi)。For the key generation algorithm KGen of the embodiment of the present invention, the group administrator uses γ to generate the SDH two-tuple (A i , x i ) of each member, and randomly selects
Figure BDA0002243149700000114
and make
Figure BDA0002243149700000115
Then the group public key (ie master public key) and group private key (ie master key) of the group administrator are respectively gmpk=(g 1 , g 2 , h, u, v, ω), gmsk=(ξ 1 , ξ 2 ), the private key (ie the slave key) of the group members is gski = (A i , x i ) .

具体而言,本发明实施例利用主认证机构实现认证数据的初始化处理。主认证机构选择系统安全参数λ,使用BDH参数生成器g生成为双线性群对(G1,G1),ζ为群G1到群G1的同构映射。SDH复杂性假设在双线性群(G1,G1)上成立,且判决线性假设在群G1上成立。群成员数为n,e为对称双线性群(G1,G1)上的双线性映射。H0,H1,H2,H3为四个哈希函数,H0:{0,1}n→Zp,H1:G1→{0,1}n,H2:{0,1}n→{0,1}n Specifically, in the embodiment of the present invention, the primary authentication authority is used to realize the initialization processing of authentication data. The main certification authority selects the system security parameter λ, and uses the BDH parameter generator g to generate a bilinear group pair (G 1 , G 1 ), and ζ is the isomorphic mapping from the group G 1 to the group G 1 . The SDH complexity assumption holds on the bilinear group (G 1 , G 1 ), and the decision linearity assumption holds on the group G 1 . The number of group members is n, and e is a bilinear map on the symmetric bilinear group (G 1 , G 1 ). H 0 , H 1 , H 2 , H 3 are four hash functions, H 0 : {0, 1} n → Z p , H 1 : G 1 → {0, 1} n , H 2 : {0, 1} n → {0, 1} n ,

主认证机构在群G1中随机选择生成元g2,令g1←ζ(g2)。在群G1中随机选择生成元

Figure BDA00022431497000001113
随机选择
Figure BDA0002243149700000117
令u,v∈G1且满足
Figure BDA0002243149700000118
随机选择
Figure BDA0002243149700000119
则主认证机构的主公钥和主私钥分别为gmpk=(g1,g2,h,u,v,ω),gmsk=(ξ1,ξ2)。The master certification authority randomly selects the generator g 2 in the group G 1 , let g 1 ←ζ(g 2 ). Randomly choose generators in group G1
Figure BDA00022431497000001113
random selection
Figure BDA0002243149700000117
Let u, v∈G 1 and satisfy
Figure BDA0002243149700000118
random selection
Figure BDA0002243149700000119
make Then the master public key and master private key of the master certification authority are respectively gmpk=(g 1 , g 2 , h, u, v, ω), gmsk=(ξ 1 , ξ 2 ).

主认证机构使用γ生成每个从认证机构的私钥,即从密钥,随机选择

Figure BDA0002243149700000121
且令通过安全的信道将二元组(Ai,xi)发送给从认证机构i。从认证机构以xi为输入,计算
Figure BDA0002243149700000123
因此,任意从认证机构i,1≤i≤n的从公钥和私钥分别为gski=(Ai,xi),
Figure BDA0002243149700000124
1≤i≤n。The master certification authority uses γ to generate each slave certification authority's private key, the slave key, randomly selected
Figure BDA0002243149700000121
and make The two-tuple (A i , xi ) is sent to the secondary certificate authority i over a secure channel. From the certification body with xi as input, calculate
Figure BDA0002243149700000123
Therefore, any slave public key and private key of the certification authority i, 1≤i≤n are gsk i =(A i , x i ), respectively,
Figure BDA0002243149700000124
1≤i≤n.

其中,根据上述各实施例可选的,基于从公钥生成证书签发给用户端,以供用户端验证证书是否有效,并在验证有效时接受证书的步骤具体包括:Wherein, optionally according to the above-mentioned embodiments, the steps of generating a certificate based on the public key and issuing it to the client, so that the client can verify whether the certificate is valid, and accepting the certificate when the verification is valid include:

利用从认证机构,基于从认证机构的从密钥gsk、主认证机构的主公钥gmpk和用户端所对应用户的身份信息IDj,采用群签名算法GSig,生成证书Cert签发给用户端;Using the secondary certification authority, based on the secondary key gsk of the secondary certification authority, the master public key gmpk of the primary certification authority, and the identity information ID j of the user corresponding to the client, the group signature algorithm GSig is used to generate a certificate Cert and issue it to the client;

利用用户端,根据主公钥gmpk、用户的身份信息IDj和证书Cert,采用验证算法GVer,验证证书Cert是否有效;Using the user terminal, according to the master public key gmpk, the user's identity information ID j and the certificate Cert, the verification algorithm GVer is used to verify whether the certificate Cert is valid;

若验证算法GVer的输出为Valid,则确定证书Cert有效并接受证书Cert,若验证算法GVer的输出为Invalid,则确定证书Cert无效并拒绝证书Cert。If the output of the verification algorithm GVer is Valid, the certificate Cert is determined to be valid and the certificate Cert is accepted; if the output of the verification algorithm GVer is Invalid, the certificate Cert is determined to be invalid and the certificate Cert is rejected.

可以理解为,对于本发明实施例中的群签名算法GSig,给定一个群公钥gmpk=(g1,g2,h,u,v,ω)、群成员i的私钥gski=(Ai,xi)和消息M∈{0,1}*,群成员i如下计算:It can be understood that, for the group signature algorithm GSig in the embodiment of the present invention, given a group public key gmpk=(g 1 , g 2 , h, u, v, ω), the private key of the group member i gsk i = ( A i , x i ) and message M∈{0,1} * , group member i is calculated as follows:

首先,选择随机数α,β∈Zp,并基于此进行如下计算:T1←uα,T2←vβ,T3←Ai·hα+β,δ1←xi·α,δ2←xi·β;First, a random number α, β∈Z p is selected, and based on this, the following calculations are performed: T 1 ←u α , T 2 ←v β , T 3 ←A i ·h α+β , δ 1 ←x i ·α, δ 2 ←x i ·β;

其次,选择随机数rα,rβ,rx

Figure BDA0002243149700000125
并基于此进行如下计算:
Figure BDA0002243149700000126
Second, choose random numbers r α , r β , r x ,
Figure BDA0002243149700000125
And based on this, the following calculations are performed:
Figure BDA0002243149700000126

再次,使用哈希函数,按如下方式计算挑战值c:c←H0(M,T1,T2,T3,R1,R2,R3,R4,R5)∈ZpAgain, using a hash function, the challenge value c is calculated as follows: c←H 0 (M, T 1 , T 2 , T 3 , R 1 , R 2 , R 3 , R 4 , R 5 )∈Z p ;

然后,使用随机数rα,rβ

Figure BDA0002243149700000127
和挑战值c,进行如下计算:
Figure BDA0002243149700000128
Then, using random numbers r α , r β ,
Figure BDA0002243149700000127
and the challenge value c, calculated as follows:
Figure BDA0002243149700000128

最后,输出签名为σ,其中

Figure BDA0002243149700000129
Finally, the output signature is σ, where
Figure BDA0002243149700000129

对于本发明实施例中的验证算法GVer,给定一个群公钥gmpk=(g1,g2,h,u,v,ω)、消息M和群签名σ,进行如下验证过程:For the verification algorithm GVer in the embodiment of the present invention, given a group public key gmpk=(g 1 , g 2 , h, u, v, ω), message M and group signature σ, the following verification process is performed:

首先,计算

Figure BDA0002243149700000131
Figure BDA0002243149700000132
First, calculate
Figure BDA0002243149700000131
Figure BDA0002243149700000132

其次,检测等式

Figure BDA0002243149700000133
是否成立。如果等式成立,则接受签名,否则拒绝。Second, the detection equation
Figure BDA0002243149700000133
is established. If the equation holds, the signature is accepted, otherwise it is rejected.

具体而言,本发明实施例首先利用从认证机构签发证书。从认证机构i以其私钥gski=(Ai,xi)、主认证机构公钥gmpk=(g1,g2,h,u,v,ω)和用户提供的身份信息IDj为输入,作如下计算:Specifically, the embodiment of the present invention first utilizes a certificate issued from a certification authority. The secondary certification authority i has its private key gsk i = (A i , x i ), the primary certification authority public key gmpk = (g 1 , g 2 , h, u, v, ω) and the identity information ID j provided by the user as Input, do the following calculation:

首先,选择随机数α,β∈Zp,并按如下方式计算T1,T2,T3,δ1,δ2:T1←uα,T2←vβ,T3←Ai·hα+β,δ1←xi·α,δ2←xi·β;First, random numbers α, β∈Z p are selected, and T 1 , T 2 , T 3 , δ 1 , δ 2 are calculated as follows: T 1 ←u α , T 2 ←v β , T 3 ←A i · h α+β , δ 1 ←x i ·α, δ 2 ←x i ·β;

其次,选择随机数rα,rβ

Figure BDA00022431497000001312
并分别计算R1,R2,R3,R4,R5如下:
Figure BDA0002243149700000134
Second, choose random numbers r α , r β ,
Figure BDA00022431497000001312
And calculate R 1 , R 2 , R 3 , R 4 , R 5 respectively as follows:
Figure BDA0002243149700000134

再次,根据用户提供的身份信息IDj,使用哈希函数计算挑战值c:c←H0(IDj,T1,T2,T3,R1,R2,R3,R4,R5)∈ZpAgain, according to the identity information ID j provided by the user, use the hash function to calculate the challenge value c: c←H 0 (ID j , T 1 , T 2 , T 3 , R 1 , R 2 , R 3 , R 4 , R 5 ) ∈ Z p ;

然后,使用随机数

Figure BDA0002243149700000135
和挑战值c,计算sα,sβ
Figure BDA0002243149700000136
Figure BDA00022431497000001313
Then, use random numbers
Figure BDA0002243149700000135
and the challenge value c, calculate s α , s β ,
Figure BDA0002243149700000136
Figure BDA00022431497000001313

最后,输出公钥证书为

Figure BDA0002243149700000137
Finally, the output public key certificate is
Figure BDA0002243149700000137

之后,本发明实施例利用用户端对证书进行验证。用户信息为IDj的用户端以主认证机构的公钥gmpk=(g1,g2,h,u,v,ω)、其身份信息IDj和证书Certi,j为输入,进行如下验证过程:Afterwards, the embodiment of the present invention uses the client to verify the certificate. The client whose user information is ID j uses the public key gmpk=(g 1 , g 2 , h, u, v, ω) of the main certification authority, its identity information ID j and certificate Cert i, j as input, and performs the following verification process:

首先,按如下计算方式分别计算参数

Figure BDA0002243149700000138
Figure BDA0002243149700000139
First, calculate the parameters separately as follows
Figure BDA0002243149700000138
Figure BDA0002243149700000139

其次,检测等式

Figure BDA00022431497000001311
是否成立。如果等式成立,则接受该合法证书,否则拒绝并重新申请。Second, the detection equation
Figure BDA00022431497000001311
is established. If the equation holds, accept the valid certificate, otherwise reject and reapply.

其中,根据上述各实施例可选的,利用从认证机构,对证书进行承诺,并将承诺生成的证书承诺和验证信息发送给用户端,以供用户端验证证书承诺是否有效,并在验证有效时,接受证书承诺和验证信息的步骤具体包括:Wherein, according to the above-mentioned embodiments, optionally, the certificate commitment is made by the secondary certification authority, and the certificate commitment and verification information generated by the commitment are sent to the client, so that the client can verify whether the certificate commitment is valid, and when the verification is valid , the steps to accept the certificate commitment and verify the information include:

利用从认证机构,根据主认证机构的主公钥gmpk、从认证机构的公钥gpk和证书Cert,采用承诺算法TECom生成证书承诺和验证信息(ψ,π),并将证书承诺和验证信息(ψ,π)发送给用户端;Using the secondary certification authority, according to the master public key gmpk of the primary certification authority, the public key gpk of the secondary certification authority and the certificate Cert, the commitment algorithm TECom is used to generate the certificate commitment and verification information (ψ, π), and the certificate commitment and verification information ( ψ, π) are sent to the client;

利用用户端,根据主认证机构的主公钥gmpk、证书Cert、证书承诺和验证信息(ψ,π),采用验证算法TEVer,验证证书承诺ψ是否有效;Using the user terminal, according to the main public key gmpk of the main certification authority, the certificate Cert, the certificate commitment and the verification information (ψ, π), the verification algorithm TEVer is used to verify whether the certificate commitment ψ is valid;

若验证算法TEVer的输出为Valid,则确定证书承诺ψ有效并接受证书承诺和验证信息(ψ,π),若验证算法TEVer的输出为Invalid,则确定证书承诺ψ无效并拒绝证书承诺和验证信息(ψ,π)。If the output of the verification algorithm TEVer is Valid, the certificate commitment ψ is determined to be valid and the certificate commitment and verification information (ψ, π) are accepted. If the output of the verification algorithm TEVer is Invalid, the certificate commitment ψ is determined to be invalid and the certificate commitment and verification information are rejected. (ψ, π).

可以理解为,其中承诺算法TECom表示为,以消息M∈{0,1}n、随机数r∈Z*、随机数ρ∈{0,1}n和公钥pk1,pk2为输入,进行如下计算:It can be understood that the commitment algorithm TECom is expressed as, with message M∈{0, 1} n , random number r∈Z * , random number ρ∈{0, 1} n and public key pk 1 , pk 2 as input, Do the following calculations:

Figure BDA0002243149700000142
Figure BDA0002243149700000142

则算法输出承诺为ψ=(C1,C2,C3,C4,C5),验证信息为π=(r,ρ)。Then the algorithm output commitment is ψ=(C 1 , C 2 , C 3 , C 4 , C 5 ), and the verification information is π=(r, ρ).

验证算法TEVer表示为,以消息M、公钥pk1,pk2、承诺和验证信息(ψ,π′)为输入,进行如下计算:The verification algorithm TEVer is expressed as, with message M, public key pk 1 , pk 2 , commitment and verification information (ψ, π′) as inputs, the following calculation is performed:

Figure BDA0002243149700000143
Figure BDA0002243149700000143

Figure BDA0002243149700000144
Figure BDA0002243149700000144

令ψ′=(C1′,C2′,C3′,C4′,C5′),并验证ψ=ψ′是否成立。如果成立,则输出有效,否则输出无效。Let ψ'=(C 1 ', C 2 ', C 3 ', C 4 ', C 5 '), and verify that ψ=ψ' holds. If true, the output is valid, otherwise the output is invalid.

具体而言,本发明实施例首先利用从认证机构对证书进行承诺,得到证书承诺和验证信息。在证书承诺过程中,从认证机构i选择随机数r∈Z*、随机数ρ∈{0,1}n、主认证机构的局部公钥

Figure BDA0002243149700000146
从认证机构i的公钥
Figure BDA0002243149700000147
以及证书Certi,j,计算C1,C2,C3,C4,C5
Figure BDA0002243149700000145
并由此得到证书承诺和验证信息:ψi,j=(C1,C2,C3,C4,C5),πi,j=(r,ρ)。之后从认证机构i通过安全信道把证书承诺和验证信息(ψi,j,πi,j)发送给用户信息为IDj的用户端。Specifically, in the embodiment of the present invention, the certificate commitment and verification information are obtained first by using the certificate commitment from the certification authority. During the certificate commitment process, the random number r∈Z * , the random number ρ∈{0,1} n , and the local public key of the primary authentication authority are selected from the certification authority i.
Figure BDA0002243149700000146
public key from certificate authority i
Figure BDA0002243149700000147
and certificates Cert i,j , compute C 1 , C 2 , C 3 , C 4 , C 5 :
Figure BDA0002243149700000145
And thus obtain the certificate commitment and verification information: ψ i,j =(C 1 , C 2 , C 3 , C 4 , C 5 ), π i,j =(r, ρ). Afterwards, the certificate commitment and verification information (ψ i,j , π i,j ) are sent from the certification authority i to the client whose user information is ID j through the secure channel.

之后,本发明实施例利用用户端对证书承诺进行验证。在承诺验证过程中,用户信息为IDj的用户端向验证方打开承诺,则验证方以主认证机构的局部公钥从认证机构i公钥证书承诺和验证信息(ψi,j,π′i,j),ψi,j=(C1,C2,C3,C4,C5),π′i,j=(r′,ρ′)为输入,计算如下:Afterwards, the embodiment of the present invention uses the client to verify the certificate commitment. During the commitment verification process, the client whose user information is ID j opens a commitment to the verifier, and the verifier uses the local public key of the main certification authority. public key from certificate authority i Certificate commitment and verification information (ψ i, j , π' i, j ), ψ i, j = (C 1 , C 2 , C 3 , C 4 , C 5 ), π' i, j = (r', ρ′) is the input, and the calculation is as follows:

Figure BDA0002243149700000153
Figure BDA0002243149700000153

Figure BDA0002243149700000154
Figure BDA0002243149700000154

令ψ′i,j=(C1′,C2′,C3′,C4′,C5′),并验证ψi,j=ψ′i,j是否成立。若成立,则该证书承诺的验证方接受该证书,否则拒绝该证书。Let ψ' i,j = (C 1 ', C 2 ', C 3 ', C 4 ', C 5 '), and verify that ψ i,j =ψ' i,j holds. If so, the verifier promised by the certificate accepts the certificate, otherwise rejects the certificate.

其中,根据上述各实施例可选的,利用从认证机构,对证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证承诺签名是否有效,并在验证有效时,将承诺签名存储到区块链系统中的步骤具体包括:Wherein, according to the above-mentioned embodiments, optionally, the certificate commitment is signed by the secondary certification authority, and the commitment signature generated by the signature is broadcast to the blockchain system, so that other secondary certification agencies can verify whether the commitment signature is valid, and When the verification is valid, the steps of storing the commitment signature in the blockchain system include:

利用从认证机构,根据从认证机构的从密钥gsk、主认证机构的主公钥gmpk和证书承诺ψ,采用群签名算法GSig,生成承诺签名σ并广播到区块链系统中;Using the slave certification authority, according to the slave key gsk of the slave certification authority, the master public key gmpk of the master certification authority and the certificate commitment ψ, the group signature algorithm GSig is used to generate the commitment signature σ and broadcast it to the blockchain system;

利用其它从认证机构,根据主认证机构的主公钥gmpk、证书承诺ψ和承诺签名σ,采用验证算法GVer,验证承诺签名σ是否有效;Using other secondary certification agencies, according to the master certification agency's master public key gmpk, certificate commitment ψ and commitment signature σ, use the verification algorithm GVer to verify whether the commitment signature σ is valid;

若验证算法GVer的输出为Valid,则确定承诺签名σ有效并将承诺签名σ存储到区块链系统中,若验证算法GVer的输出为Invalid,则确定承诺签名σ无效并拒绝承诺签名σ。If the output of the verification algorithm GVer is Valid, the commitment signature σ is determined to be valid and the commitment signature σ is stored in the blockchain system; if the output of the verification algorithm GVer is Invalid, the commitment signature σ is determined to be invalid and the commitment signature σ is rejected.

具体而言,本发明实施例首先利用任一从认证机构对证书承诺进行签名,得到承诺签名。在承诺签名过程中,从认证机构i以其私钥gski、主认证机构的公钥gmpk和证书承诺ψi,j为输入,作如下计算:Specifically, in the embodiment of the present invention, any secondary certification authority is used to sign the certificate commitment, and the commitment signature is obtained. In the commitment signature process, the secondary certification authority i takes its private key gsk i , the primary certification authority's public key gmpk and the certificate commitment ψ i, j as input, and calculates as follows:

首先,选择随机数

Figure BDA0002243149700000155
并按如下方式计算
Figure BDA0002243149700000156
Figure BDA0002243149700000157
First, choose a random number
Figure BDA0002243149700000155
and calculated as follows
Figure BDA0002243149700000156
Figure BDA0002243149700000157

其次,选择随机数

Figure BDA0002243149700000158
并计算
Figure BDA0002243149700000159
如下:
Figure BDA00022431497000001510
Second, choose a random number
Figure BDA0002243149700000158
and calculate
Figure BDA0002243149700000159
as follows:
Figure BDA00022431497000001510

再次,根据证书承诺ψi,j,使用哈希函数计算挑战值

Figure BDA00022431497000001511
Figure BDA00022431497000001512
Again, based on the certificate commitment ψ i,j , the challenge value is calculated using a hash function
Figure BDA00022431497000001511
Figure BDA00022431497000001512

然后,使用随机数

Figure BDA0002243149700000161
和挑战值
Figure BDA0002243149700000162
计算
Figure BDA0002243149700000163
Then, use random numbers
Figure BDA0002243149700000161
and challenge value
Figure BDA0002243149700000162
calculate
Figure BDA0002243149700000163

最后,输出承诺签名σi,j,其中

Figure BDA0002243149700000165
从认证机构i把该承诺签名对(ψi,j,σi,j)提交到区块链系统以进行存储。Finally, output the commitment signature σ i,j , where
Figure BDA0002243149700000165
The commitment signature pair (ψ i,ji,j ) is submitted from the certificate authority i to the blockchain system for storage.

之后,本发明实施例利用区块链系统中的其它从认证机构对承诺签名进行验证。在签名验证过程中,区块链系统中的矿工(即其它从认证机构)以主认证机构的公钥gmpk和承诺签名对(ψi,j,σi,j)为输入,对承诺签名作如下验证:Afterwards, the embodiment of the present invention uses other secondary certification authorities in the blockchain system to verify the commitment signature. In the signature verification process, the miners in the blockchain system (that is, other secondary certification authorities) take the public key gmpk of the primary certification authority and the commitment signature pair (ψ i, j , σ i, j ) as input, and make the commitment signature as input. Verify as follows:

首先,按如下计算方式分别计算参数

Figure BDA0002243149700000166
Figure BDA0002243149700000167
Figure BDA0002243149700000168
First, calculate the parameters separately as follows
Figure BDA0002243149700000166
Figure BDA0002243149700000167
Figure BDA0002243149700000168

其次,检测等式

Figure BDA0002243149700000169
是否成立。如果等式成立,则区块链系统中的矿工(即其它从认证机构)接受该承诺的签名并存储到区块链系统中,否则拒绝并删除。Second, the detection equation
Figure BDA0002243149700000169
is established. If the equation is true, the miners in the blockchain system (i.e. other from the certification authority) accept the signature of the commitment and store it in the blockchain system, otherwise reject and delete it.

其中,根据上述各实施例可选的,利用用户端,将证书、证书承诺和验证信息发送给验证方,以供验证方验证证书承诺是否有效,并在验证有效时,接受用户端对应的用户的身份信息的步骤具体包括:Wherein, according to the above-mentioned embodiments, optionally, the user terminal is used to send the certificate, the certificate commitment and the verification information to the verifier, so that the verifier can verify whether the certificate commitment is valid, and when the verification is valid, accept the user corresponding to the user terminal. The steps of identifying information specifically include:

利用用户端,将证书Cert以及证书承诺和验证信息(ψ,π)发送给验证方;Using the client, send the certificate Cert and the certificate commitment and verification information (ψ, π) to the verifier;

利用验证方,根据主认证机构的主公钥gmpk、证书Cert以及证书承诺和验证信息(ψ,π),采用验证算法TEVer,验证证书承诺ψ是否有效;Using the verifier, according to the main public key gmpk of the main certification authority, the certificate Cert, and the certificate commitment and verification information (ψ, π), the verification algorithm TEVer is used to verify whether the certificate commitment ψ is valid;

若验证算法TEVer的输出为Valid,则确定证书承诺ψ有效并接受用户端对应的用户的身份信息,若验证算法TEVer的输出为Invalid,则确定证书承诺ψ无效并拒绝用户端对应的用户的身份信息。If the output of the verification algorithm TEVer is Valid, it is determined that the certificate promise ψ is valid and the identity information of the user corresponding to the user terminal is accepted; if the output of the verification algorithm TEVer is Invalid, the certificate promise ψ is determined to be invalid and the identity of the user corresponding to the user terminal is rejected. information.

具体而言,本发明实施例通过利用验证方对用户端提供的证书承诺进行验证,来实现对用户身份的认证。在身份认证过程中,用户IDj向验证方打开承诺,则验证方以主认证机构的局部公钥

Figure BDA00022431497000001610
从认证机构i公钥
Figure BDA00022431497000001611
以及证书承诺和验证信息(ψi,j,π′i,j),ψi,j=(C1,C2,C3,C4,C5),π′i,j=(r′,ρ′)为输入,作如下计算:Specifically, the embodiment of the present invention realizes the authentication of the user identity by using the verifier to verify the certificate commitment provided by the user terminal. In the process of identity authentication, user ID j opens a promise to the verifier, then the verifier uses the local public key of the main certification authority
Figure BDA00022431497000001610
public key from certificate authority i
Figure BDA00022431497000001611
and certificate commitment and verification information (ψ i, j , π′ i, j ), ψ i, j = (C 1 , C 2 , C 3 , C 4 , C 5 ), π′ i, j = (r′ , ρ′) is the input, and the following calculation is made:

Figure BDA0002243149700000171
Figure BDA0002243149700000171

令ψ′i,j=(C1′,C2′,C3′,C4′,C5′),并验证ψi,j=ψ′i,j是否成立,若成立。则验证该承诺的验证方接受该证书,否则拒绝该证书。Let ψ' i,j = (C 1 ', C 2 ', C 3 ', C 4 ', C 5 '), and verify whether ψ i,j =ψ' i,j holds, and if so. The verifier that verifies the promise accepts the certificate, otherwise rejects the certificate.

其中,根据上述各实施例可选的,利用主认证机构,追踪从认证机构的身份信息的步骤具体包括:利用主认证机构,根据主认证机构的主密钥gmsk和承诺签名σ,采用追踪算法Trace,追踪从认证机构的从密钥gsk,并基于从密钥gsk识别从认证机构的身份信息。Wherein, according to the above embodiments, optionally, the step of using the master certification authority to track the identity information of the slave certification authority specifically includes: using the master certification authority, according to the master certification authority's master key gmsk and the commitment signature σ, using a tracking algorithm Trace, trace the secondary key gsk from the certification authority, and identify the identity information of the secondary certification authority based on the secondary key gsk.

具体而言,本发明实施例利用主认证机构通过对从认证机构签名的追踪,追踪从认证机构的身份信息。在承诺签名追踪过程中,主认证机构以主密钥gmsk=(ξ1,ξ2)和承诺签名σi,j为输入,计算从认证机构的从密钥,即私钥:

Figure BDA0002243149700000173
因此,主认证机构拥有所有从认证机构的部分私钥{A1,...,An},则可根据Ai恢复出从认证机构对应的身份。Specifically, the embodiment of the present invention uses the primary certification authority to track the identity information of the secondary certification authority by tracking the signature of the secondary certification authority. In the commitment signature tracking process, the master certification authority takes the master key gmsk=(ξ 1 , ξ 2 ) and the commitment signature σ i, j as inputs, and calculates the secondary key of the slave certification authority, that is, the private key:
Figure BDA0002243149700000173
Therefore, if the master certification authority has partial private keys { A 1 , .

其中,对于可追踪性Trace,给定群公钥gmpk=(g1,g2,h,u,v,ω)、群管理员的私钥gmsk=(ξ1,ξ2)、签名

Figure BDA0002243149700000174
和消息M。首先使用验证算法验证该签名是否有效。如果无效,则拒绝,否则进行如下计算:如果群管理员拥有群成员的部分私钥{A1,...,An},则群管理员能够通过群签名恢复出群成员的身份Ai。Among them, for traceability Trace, given the group public key gmpk=(g 1 , g 2 , h, u, v, ω), the private key of the group administrator gmsk=(ξ 1 , ξ 2 ), the signature
Figure BDA0002243149700000174
and message M. First verify that the signature is valid using a verification algorithm. If invalid, reject, otherwise do the following calculation: If the group administrator has some private keys {A 1 , . . . , A n } of the group members, the group administrator can recover the identity A i of the group members through the group signature.

其中,根据上述各实施例可选的,分别利用主认证机构和从认证机构,从证书承诺中提取出证书实现跨域认证的步骤具体包括:利用主认证机构,根据主认证机构的主密钥gmsk和证书承诺ψ,采用提取算法Extract,提取证书Cert;利用从认证机构,根据从认证机构的从密钥gsk和证书承诺ψ,采用提取算法Extract,提取证书Cert。Wherein, according to the above-mentioned embodiments, optionally, the step of extracting the certificate from the certificate commitment by using the primary certification authority and the secondary certification authority to realize the cross-domain authentication specifically includes: using the primary certification authority, according to the master key of the primary certification authority gmsk and certificate commitment ψ, use the extraction algorithm Extract to extract the certificate Cert; using the slave certification authority, according to the slave key gsk and certificate commitment ψ from the certificate authority, use the extraction algorithm Extract to extract the certificate Cert.

具体而言,本发明实施例利用主认证机构和从认证机构对跨域认证中的证书进行提取。在承诺提取的过程中,主认证机构以局部主密钥ξ1和证书承诺ψi,j=(C1,C2,C3,C4,C5)为输入,计算

Figure BDA0002243149700000176
并在此基础上,检测等式
Figure BDA0002243149700000181
是否成立。如果等式成立,则输出用户公钥证书Certi,j,否则拒绝。Specifically, the embodiment of the present invention uses the primary certification authority and the secondary certification authority to extract the certificate in the cross-domain authentication. In the process of commitment extraction, the master certification authority takes the local master key ξ 1 and the certificate commitment ψ i,j = (C 1 , C 2 , C 3 , C 4 , C 5 ) as input, calculates
Figure BDA0002243149700000176
And on this basis, the detection equation
Figure BDA0002243149700000181
is established. If the equation holds, output the user's public key certificate Cert i,j , otherwise reject it.

此外,从认证机构i还能够从证书承诺中提取出用户的公钥证书,从认证机构i以局部私钥xi、主认证机构以局部公钥

Figure BDA0002243149700000182
和证书承诺为输入,计算
Figure BDA0002243149700000183
在此基础上,检测等式
Figure BDA0002243149700000184
是否成立。如果等式成立,则输出用户的公钥证书Certi,j,否则拒绝。In addition, the certificate authority i can also extract the user's public key certificate from the certificate commitment.
Figure BDA0002243149700000182
and the certificate promises as input, computing
Figure BDA0002243149700000183
On this basis, the detection equation
Figure BDA0002243149700000184
is established. If the equation holds, output the user's public key certificate Cert i,j , otherwise reject it.

为进一步说明本发明实施例的技术方案,本发明实施例根据上述各实施例提供如下具体的处理流程,但不对本发明实施例的保护范围进行限制。To further illustrate the technical solutions of the embodiments of the present invention, the embodiments of the present invention provide the following specific processing procedures based on the above embodiments, but do not limit the protection scope of the embodiments of the present invention.

如图3所示,为本发明另一实施例提供的基于区块链的跨域认证方法的流程示意图,该方法包括如下处理流程:As shown in FIG. 3, it is a schematic flowchart of a blockchain-based cross-domain authentication method provided by another embodiment of the present invention, and the method includes the following processing flow:

首先,进行数据的初始化。First, initialize the data.

在初始化过程中,主认证机构以安全参数λ为输入,输出系统公共参数Param:Param←SysGen(1λ)。In the initialization process, the main certification authority takes the security parameter λ as input, and outputs the public parameter Param of the system: Param←SysGen(1 λ ).

在密钥生成过程中,主认证机构以公共参数Param为输入,输出主密钥和公钥(gmpk,gmsk):(gmpk,gmsk)←KGen(Param)。In the key generation process, the master certification authority takes the public parameter Param as input, and outputs the master key and public key (gmpk, gmsk): (gmpk, gmsk)←KGen(Param).

主认证机构以系统公共参数Param和主密钥gmsk为输入,输出从认证机构的从密钥gski:gski←KGen(Param,gmsk),1≤i≤n,并将该从密钥通过安全通道传输给从认证机构。The master certification authority takes the system public parameter Param and the master key gmsk as input, and outputs the slave key gsk i of the slave certification authority: gsk i ←KGen(Param, gmsk), 1≤i≤n, and passes the slave key through Secure channel transmission to slave certification authority.

各从认证机构以系统公共参数Param和从密钥gski为输入,输出对应的从公钥gpki:gpki←KGen(Param,gski),1≤i≤n。Each slave certification authority takes the system public parameter Param and the slave key gsk i as input, and outputs the corresponding slave public key gpk i : gpk i ←KGen(Param, gsk i ), 1≤i≤n.

其次,进行证书生成与验证。Second, perform certificate generation and verification.

在证书生成过程中,从认证机构i以其从密钥gski、主认证机构的主公钥gmpk和用户提供的身份信息IDj为输入,输出用户公钥证书

Figure BDA0002243149700000185
并发送给用户IDj的用户端。In the certificate generation process, the secondary certification authority i takes its secondary key gsk i , the primary public key gmpk of the primary certification authority and the identity information ID j provided by the user as input, and outputs the user's public key certificate
Figure BDA0002243149700000185
and sent to the client of user ID j .

用户IDj的用户端以主认证机构的主公钥gmpk、用户IDj的身份信息和证书Certi,j为输入,输出有效性判断:Valid/Invalid←GVergmpk(IDj,Certi,j)。The client of user ID j takes the main public key gmpk of the main certification authority, the identity information of user ID j and the certificate Cert i,j as input, and outputs the validity judgment: Valid/Invalid←GVer gmpk (ID j ,Cert i,j ).

如果上述公式输出有效,则用户端接受该合法证书,否则拒绝并重新申请。If the output of the above formula is valid, the client accepts the valid certificate, otherwise rejects and reapplies.

再次,进行证书承诺与验证。Again, perform certificate commitment and verification.

在证书承诺过程中,从认证机构i以主认证机构主公钥gmpk、从认证机构i公钥gpki和证书Certi,j为输入,输出证书承诺和验证信息

Figure BDA0002243149700000191
之后,从认证机构i通过安全信道把证书承诺和验证信息(ψi,j,πi,j)发送给用户IDj的用户端。In the certificate commitment process, the slave certification authority i takes the master certification authority master public key gmpk, the slave certification authority i public key gpk i and the certificate Cert i,j as input, and outputs the certificate commitment and verification information
Figure BDA0002243149700000191
Afterwards, the certificate commitment and verification information (ψ i,j , π i,j ) are sent from the certificate authority i to the client of the user ID j through the secure channel.

在承诺验证过程中,用户IDj的用户端向验证方打开承诺,验证方以主认证机构主公钥gmpk、从认证机构i公钥gpki及证书承诺和验证信息(ψi,j,πi,j)为输入,输出有效性判断:

Figure BDA0002243149700000192
In the process of commitment verification, the client of user ID j opens a commitment to the verifier, and the verifier uses the master public key gmpk of the primary certification authority, the public key gpk i of the secondary certification authority i, and the certificate commitment and verification information (ψ i, j , π i, j ) is the input, and the output validity is judged:
Figure BDA0002243149700000192

如果上述有效性判断公式输出有效,验证该承诺的验证方接受该证书,否则拒绝该证书。If the output of the above validity judgment formula is valid, the verifier who verifies the promise accepts the certificate, otherwise rejects the certificate.

然后,进行承诺签名与验证。Then, perform commitment signing and verification.

在承诺签名过程中,从认证机构i以从密钥gski、主认证机构公钥gmpk和证书承诺ψi,j为输入,输出承诺签名

Figure BDA0002243149700000193
并把该承诺签名对(ψi,j,σi,j)提交到区块链系统以进行存储。In the commitment signature process, the slave certification authority i takes the slave key gsk i , the master certification authority public key gmpk and the certificate commitment ψ i, j as the input, and outputs the commitment signature
Figure BDA0002243149700000193
And submit the commitment signature pair (ψ i, j , σ i, j ) to the blockchain system for storage.

在签名验证过程中,区块链系统中的矿工(即其它从认证机构)以主认证机构的公钥gmpk和承诺签名对(ψi,j,σi,j)为输入,输出承诺签名的有效性判断:Valid/Invalid←GVergmpki,j,σi,j)。如果该有效性判断公式输出有效,则区块链系统中的矿工(即其它从认证机构)接受该承诺的签名并存储到区块链系统中,否则拒绝并删除。In the signature verification process, the miners in the blockchain system (ie other secondary certification authorities) take the public key gmpk of the main certification authority and the committed signature pair (ψ i, j , σ i, j ) as input, and output the promised signature Validity judgment: Valid/Invalid←GVer gmpki, j , σ i, j ). If the output of the validity judgment formula is valid, the miners in the blockchain system (that is, other certification authorities) accept the signature of the commitment and store it in the blockchain system, otherwise reject and delete it.

再然后,进行身份认证。Then, perform identity authentication.

在承认证认证过程中,用户IDj的用户端向验证方打开承诺,验证方以主认证机构主公钥gmpk、从认证机构i的公钥gpki、证书承诺和验证信息(ψi,j,πi,j)为输入,判断有效性:

Figure BDA0002243149700000194
如果该有效性判断公式输出有效,验证该证书承诺的验证方接受该证书,否则拒绝该证书。During the authentication process, the client of user ID j opens a promise to the verifier, and the verifier uses the master public key gmpk of the primary certification authority, the public key gpk i of the secondary certification authority i, the certificate promise and the verification information (ψ i, j , π i, j ) is the input to judge the validity:
Figure BDA0002243149700000194
If the output of the validity judgment formula is valid, the verifier who verifies the promise of the certificate accepts the certificate, otherwise rejects the certificate.

再然后,进行签名追踪。Then, perform signature tracking.

在签名追踪过程中,主认证机构以主密钥gmsk和承诺签名σi,j为输入,输出从认证机构的从密钥gski:gski←Tracegmski,j)。In the signature tracing process, the master certification authority takes the master key gmsk and the commitment signature σ i,j as input, and outputs the slave key gsk i of the slave certification authority: gsk i ←Trace gmski, j ).

最后,进行证书提取。Finally, perform certificate extraction.

在证书提取过程中,主认证机构以主密钥gmsk和承诺为输入,输出用户公钥证书Certi,j:Certi,j←Extractgmski,j)。In the certificate extraction process, the master certification authority takes the master key gmsk and the commitment as input, and outputs the user public key certificate Cert i,j : Cert i,j ←Extract gmski,j ).

此外,从认证机构i还能够从证书承诺中提取出用户公钥证书,从认证机构i以其从密钥gski和承诺ψi,j为输入,输出用户公钥证书 In addition, the certificate authority i can also extract the user's public key certificate from the certificate commitment, and the certificate authority i uses its slave key gsk i and commitment ψ i,j as input, and outputs the user's public key certificate

可以理解的是,本发明实施例中用到的密码学基础工具包括群签名和具有双提取方的可提取承诺算法,如图4所示,为根据本发明实施例提供的基于区块链的跨域认证方法中基础密码学工具的示意图,其中包括群签名和具有双提取方的可提取承诺算法。对于具有双提取方的可提取承诺算法,介绍如下:It can be understood that the basic cryptography tools used in the embodiments of the present invention include group signatures and extractable commitment algorithms with double extracting parties, as shown in FIG. Schematic illustration of the basic cryptographic tools in a cross-domain authentication method, including group signatures and extractable commitment algorithms with two extractors. For the extractable commitment algorithm with two extracting parties, the introduction is as follows:

对于系统参数生成算法SysGen,使用BDH参数生成器

Figure BDA0002243149700000207
生成群G1,g1为群G1的随机生成元。e为(G1,G1)上对称双线性映射,H1,H2,H3为三个哈希函数:H1:G1→{0,1}n,H2:{0,1}n→{0,1}n
Figure BDA0002243149700000202
For the system parameter generation algorithm SysGen, use the BDH parameter generator
Figure BDA0002243149700000207
A group G 1 is generated, and g 1 is a random generator of the group G 1 . e is a symmetric bilinear map on (G 1 , G 1 ), H 1 , H 2 , H 3 are three hash functions: H 1 : G 1 →{0, 1} n , H 2 : {0, 1} n → {0, 1} n ,
Figure BDA0002243149700000202

对于密钥生成算法KGen,选择一个随机整数x∈Z*,计算

Figure BDA0002243149700000203
则公钥和私钥分别为:pk1=X,sk1=x。选择另一个随机整数y∈Z*,计算
Figure BDA0002243149700000204
则另对公钥和私钥分别为:pk2=Y,sk2=y。For the key generation algorithm KGen, choose a random integer x∈Z * , compute
Figure BDA0002243149700000203
Then the public key and the private key are respectively: pk 1 =X, sk 1 =x. Choose another random integer y∈Z * , compute
Figure BDA0002243149700000204
Then the other pair of public key and private key are respectively: pk 2 =Y, sk 2 =y.

对于承诺算法TECom,以消息M∈{0,1}n、随机数r∈Z*、随机数ρ∈{0,1}n和公钥pk1,pk2为输入,计算:For the commitment algorithm TECom, with message M∈{0,1} n , random number r∈Z * , random number ρ∈ { 0,1} n and public key pk1, pk2 as input, calculate:

Figure BDA0002243149700000205
Figure BDA0002243149700000205

输出承诺为ψ=(C1,C2,C3,C4,C5),验证信息为π=(r,ρ)。The output commitment is ψ=(C 1 , C 2 , C 3 , C 4 , C 5 ), and the verification information is π=(r, ρ).

对于验证算法TEVer,以消息M、公钥pk1,pk2、承诺和验证信息(ψ,π′)为输入,计算:For the verification algorithm TEVer, take message M, public key pk 1 , pk 2 , commitment and verification information (ψ, π′) as inputs, calculate:

Figure BDA0002243149700000206
Figure BDA0002243149700000206

令ψ′=(C1′,C2′,C3′,C4′,C5′)。如果ψ=ψ′,则输出有效,否则拒绝。Let ψ'=(C 1 ', C 2 ', C 3 ', C 4 ', C 5 '). If ψ=ψ', the output is valid, otherwise it is rejected.

对于提取算法Extract,以承诺ψ=(C1,C2,C3,C4,C5)和承诺密钥sk1=x为输入,计算:

Figure BDA0002243149700000211
之后检测等式C5=H3(ρ,M,C3,C4,e(C1,C2)x)是否成立,成立,则输出消息M,否则拒绝。For the extraction algorithm Extract, with commitment ψ=(C 1 , C 2 , C 3 , C 4 , C 5 ) and commitment key sk 1 =x as input, calculate:
Figure BDA0002243149700000211
Then check whether the equation C 5 =H 3 (ρ, M, C 3 , C 4 , e(C 1 , C 2 ) x ) holds, and if it holds, output message M, otherwise reject it.

以证书承诺ψ=(C1,C2,C3,C4,C5)和承诺密钥sk2=y为输入,计算:

Figure BDA0002243149700000212
之后,检测等式C5=H3(ρ,M,C3,C4,e(C1,C2)y)是否成立,成立,则输出消息M,否则拒绝。Taking certificate commitment ψ = (C 1 , C 2 , C 3 , C 4 , C 5 ) and commitment key sk 2 =y as input, calculate:
Figure BDA0002243149700000212
After that, check whether the equation C 5 =H 3 (ρ, M, C 3 , C 4 , e(C 1 , C 2 ) y ) holds, and if it holds, output message M, otherwise reject it.

基于相同的发明构思,本发明实施例根据上述各实施例提供一种基于区块链的跨域认证系统,该系统用于在上述各实施例中实现基于区块链的跨域认证。因此,在上述各实施例的基于区块链的跨域认证方法中的描述和定义,可以用于本发明实施例中各个执行模块的理解,具体可参考上述实施例,此处不在赘述。Based on the same inventive concept, the embodiments of the present invention provide a blockchain-based cross-domain authentication system according to the foregoing embodiments, and the system is used to implement blockchain-based cross-domain authentication in the foregoing embodiments. Therefore, the descriptions and definitions in the blockchain-based cross-domain authentication methods in the foregoing embodiments can be used to understand each execution module in the embodiments of the present invention. For details, reference may be made to the foregoing embodiments, which will not be repeated here.

如图1所示,本发明实施例的基于区块链的跨域认证系统中包括3类实体:主认证机构、从认证机构、用户端和验证方(其中验证方也是用户)。主认证机构的主密钥和主公钥为(gmsk,gmpk),从认证机构的私钥和公钥为(gsk,gpk)。图1中(ψ1,π1,point1)和(ψ1,π1,point1)表示证书承诺、验证信息和指针,H()表示哈希函数,Pre:H()表示对上一个区块计算哈希函数值,Cerfiticate表示交易单的Merkle根,即对多个交易单计算哈希函数,计算出一个最终的哈希函数值。As shown in FIG. 1 , the blockchain-based cross-domain authentication system according to the embodiment of the present invention includes three types of entities: a primary authentication authority, a secondary authentication authority, a client, and a verifier (where the verifier is also a user). The master key and the master public key of the master certification authority are (gmsk, gmpk), and the private key and public key of the slave certification authority are (gsk, gpk). In Figure 1, (ψ 1 , π 1 , point 1 ) and (ψ 1 , π 1 , point 1 ) represent the certificate commitment, verification information and pointer, H() represents the hash function, Pre: H() represents the previous The block calculates the hash function value, and Cerfiticate represents the Merkle root of the transaction order, that is, the hash function is calculated for multiple transaction orders, and a final hash function value is calculated.

本发明实施例提供的基于区块链的跨域认证系统,通过设置相应的实体组成,利用从认证机构实现跨域认证过程的证书签发、证书承诺及承诺签名,使得跨域认证不依赖于主认证机构,且用户只需对从认证机构签发的证书、对证书的承诺以及对承诺的签名进行验证,即可使得验证方能快速验证到用户的身份信息,从而能够有效提高跨域认证的处理效率。同时,通过将承诺签名广播到区块链系统中,能够实现对从认证机构的严格监管,保障认证过程的安全性和公正性。The blockchain-based cross-domain authentication system provided by the embodiment of the present invention, by setting the corresponding entity composition, utilizes the certificate issuance, certificate commitment and commitment signature of the cross-domain authentication process from the certification authority, so that the cross-domain authentication does not depend on the main certification authority, and the user only needs to verify the certificate issued by the certification authority, the commitment to the certificate and the signature of the commitment, so that the verifier can quickly verify the user's identity information, which can effectively improve the processing of cross-domain certification efficiency. At the same time, by broadcasting the commitment signature to the blockchain system, it is possible to implement strict supervision of the certification body and ensure the security and fairness of the certification process.

可以理解的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现上述各实施例的系统中的各实体组成。并且,本发明实施例的基于区块链的跨域认证系统利用上述各实体组成,能够实现上述各方法实施例的基于区块链的跨域认证流程,在用于实现上述各方法实施例中基于区块链的跨域认证时,本发明实施例的系统产生的有益效果与对应的上述各方法实施例相同,可以参考上述各方法实施例,此处不再赘述。It can be understood that, in this embodiment of the present invention, a hardware processor (hardware processor) may be used to implement the composition of each entity in the system of the foregoing embodiments. In addition, the blockchain-based cross-domain authentication system according to the embodiment of the present invention is composed of the above entities, and can implement the blockchain-based cross-domain authentication process of the above method embodiments. In the case of cross-domain authentication based on blockchain, the beneficial effects produced by the system of the embodiment of the present invention are the same as those of the corresponding method embodiments above. Reference may be made to the above method embodiments, which will not be repeated here.

作为本发明实施例的又一个方面,本实施例根据上述各实施例提供一种电子设备,该电子设备包括存储器、处理器及存储在该存储器上并可在该处理器上运行的计算机程序,该处理器执行该计算机程序时,实现如上述各实施例所述的基于区块链的跨域认证方法的步骤。As another aspect of the embodiments of the present invention, the present embodiment provides an electronic device according to the above-mentioned embodiments, the electronic device includes a memory, a processor, and a computer program stored in the memory and running on the processor, When the processor executes the computer program, it implements the steps of the blockchain-based cross-domain authentication method described in the above embodiments.

进一步的,本发明实施例的电子设备还可以包括通信接口和总线。参考图5,为本发明实施例提供的电子设备的实体结构示意图,包括:至少一个存储器501、至少一个处理器502、通信接口503和总线504。Further, the electronic device of the embodiment of the present invention may further include a communication interface and a bus. Referring to FIG. 5 , it is a schematic diagram of a physical structure of an electronic device provided by an embodiment of the present invention, including: at least one memory 501 , at least one processor 502 , a communication interface 503 , and a bus 504 .

其中,存储器501、处理器502和通信接口503通过总线504完成相互间的通信,通信接口503用于该电子设备与跨域认证系统之间的信息传输;存储器501中存储有可在处理器502上运行的计算机程序,处理器502执行该计算机程序时,实现如上述各实施例所述的基于区块链的跨域认证方法的步骤。Among them, the memory 501, the processor 502 and the communication interface 503 communicate with each other through the bus 504, and the communication interface 503 is used for information transmission between the electronic device and the cross-domain authentication system; A computer program running on the processor 502, when the processor 502 executes the computer program, implements the steps of the blockchain-based cross-domain authentication method described in the foregoing embodiments.

可以理解为,该电子设备中至少包含存储器501、处理器502、通信接口503和总线504,且存储器501、处理器502和通信接口503通过总线504形成相互间的通信连接,并可完成相互间的通信,如处理器502从存储器501中读取基于区块链的跨域认证方法的程序指令等。另外,通信接口503还可以实现该电子设备与跨域认证系统之间的通信连接,并可完成相互间信息传输,如通过通信接口503实现控制指令的发送等。It can be understood that the electronic device includes at least a memory 501, a processor 502, a communication interface 503 and a bus 504, and the memory 501, the processor 502 and the communication interface 503 form a communication connection with each other through the bus 504, and can complete the communication between each other. For example, the processor 502 reads the program instructions of the blockchain-based cross-domain authentication method from the memory 501, and the like. In addition, the communication interface 503 can also realize the communication connection between the electronic device and the cross-domain authentication system, and can complete the mutual information transmission, such as realizing the sending of control instructions through the communication interface 503 .

电子设备运行时,处理器502调用存储器501中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:利用主认证机构,选取安全参数依次生成公共参数以及主认证机构的主公钥和主密钥,并基于主密钥生成从认证机构的从密钥,分发给从认证机构;利用从认证机构,根据从密钥生成从认证机构的从公钥,并基于从公钥生成证书签发给用户端,以供用户端验证证书是否有效,并在验证有效时接受证书;利用从认证机构,对证书进行承诺,并将承诺生成的证书承诺和验证信息发送给用户端,以供用户端验证证书承诺是否有效,并在验证有效时,接受证书承诺和验证信息;利用从认证机构,对证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证承诺签名是否有效,并在验证有效时,将承诺签名存储到区块链系统中;利用用户端,将证书、证书承诺和验证信息发送给验证方,以供验证方验证证书承诺是否有效,并在验证有效时,接受用户端对应的用户的身份信息;利用主认证机构,追踪从认证机构的身份信息,并分别利用主认证机构和从认证机构,从证书承诺中提取出证书实现跨域认证等。When the electronic device is running, the processor 502 invokes the program instructions in the memory 501 to execute the methods provided by the above method embodiments, for example, including: using the primary certification authority, selecting security parameters to sequentially generate public parameters and the principal of the primary certification authority key and master key, and based on the master key, generate the slave key of the slave certification authority, and distribute it to the slave certification authority; using the slave certification authority, generate the slave public key of the slave certification authority according to the slave key, and generate the slave public key based on the slave public key. The certificate is issued to the client, so that the client can verify whether the certificate is valid, and accept the certificate when it is valid; use the certificate authority to make a commitment to the certificate, and send the certificate commitment and verification information generated by the commitment to the client for use. The client verifies whether the certificate commitment is valid, and when the verification is valid, accepts the certificate commitment and verification information; uses the certificate authority to sign the certificate commitment, and broadcasts the generated commitment signature to the blockchain system for other Verify whether the commitment signature is valid from the certification authority, and store the commitment signature in the blockchain system when the verification is valid; use the client to send the certificate, certificate commitment and verification information to the verifier for the verifier to verify the certificate commitment Whether it is valid, and when the verification is valid, accept the identity information of the user corresponding to the client; use the primary certification authority to track the identity information of the secondary certification authority, and use the primary certification authority and the secondary certification authority to extract the certificate from the certificate commitment. Implement cross-domain authentication, etc.

上述的存储器501中的程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。或者,实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The above program instructions in the memory 501 can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product. Alternatively, all or part of the steps of implementing the above method embodiments may be completed by program instructions related to hardware, the aforementioned program may be stored in a computer-readable storage medium, and when the program is executed, the execution includes the implementation of the above methods And the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or CD and other various programs that can be stored medium of code.

本发明实施例还根据上述各实施例提供一种非暂态计算机可读存储介质,其上存储有计算机指令,该计算机指令被计算机执行时,实现如上述各实施例所述的基于区块链的跨域认证方法的步骤,例如包括:利用主认证机构,选取安全参数依次生成公共参数以及主认证机构的主公钥和主密钥,并基于主密钥生成从认证机构的从密钥,分发给从认证机构;利用从认证机构,根据从密钥生成从认证机构的从公钥,并基于从公钥生成证书签发给用户端,以供用户端验证证书是否有效,并在验证有效时接受证书;利用从认证机构,对证书进行承诺,并将承诺生成的证书承诺和验证信息发送给用户端,以供用户端验证证书承诺是否有效,并在验证有效时,接受证书承诺和验证信息;利用从认证机构,对证书承诺进行签名,并将签名生成的承诺签名广播到区块链系统中,以供其它从认证机构验证承诺签名是否有效,并在验证有效时,将承诺签名存储到区块链系统中;利用用户端,将证书、证书承诺和验证信息发送给验证方,以供验证方验证证书承诺是否有效,并在验证有效时,接受用户端对应的用户的身份信息;利用主认证机构,追踪从认证机构的身份信息,并分别利用主认证机构和从认证机构,从证书承诺中提取出证书实现跨域认证等。Embodiments of the present invention also provide a non-transitory computer-readable storage medium according to the foregoing embodiments, which stores computer instructions, and when the computer instructions are executed by a computer, implements the blockchain-based blockchain described in the foregoing embodiments. The steps of the cross-domain authentication method, for example, include: using the master certification authority, selecting security parameters to sequentially generate public parameters and the master public key and master key of the master certification authority, and generating the slave key of the slave certification authority based on the master key, Distribute to the secondary certification authority; use the secondary certification authority to generate the secondary public key of the secondary certification authority based on the secondary key, and issue the certificate to the client based on the secondary public key, so that the client can verify whether the certificate is valid, and when the verification is valid Accept the certificate; use the certificate authority to make a commitment to the certificate, and send the certificate commitment and verification information generated by the commitment to the client, so that the client can verify whether the certificate commitment is valid, and when the verification is valid, accept the certificate commitment and verification information ; Sign the certificate commitment using the secondary certification authority, and broadcast the generated commitment signature to the blockchain system for other secondary certification agencies to verify whether the commitment signature is valid, and when the verification is valid, store the commitment signature in the In the blockchain system; use the client to send the certificate, certificate commitment and verification information to the verifier, so that the verifier can verify whether the certificate commitment is valid, and when the verification is valid, accept the identity information of the user corresponding to the client; use The primary certification authority tracks the identity information of the secondary certification authority, and uses the primary certification authority and the secondary certification authority respectively to extract the certificate from the certificate commitment to achieve cross-domain authentication, etc.

本发明实施例提供的电子设备和非暂态计算机可读存储介质,通过执行上述各实施例所述的基于区块链的跨域认证方法的步骤,利用从认证机构实现跨域认证过程的证书签发、证书承诺及承诺签名,使得跨域认证不依赖于主认证机构,且用户只需对从认证机构签发的证书、对证书的承诺以及对承诺的签名进行验证,即可使得验证方能快速验证到用户的身份信息,从而能够有效提高跨域认证的处理效率。同时,通过将承诺签名广播到区块链系统中,能够实现对从认证机构的严格监管,保障认证过程的安全性和公正性。The electronic device and the non-transitory computer-readable storage medium provided by the embodiments of the present invention use the certificates obtained from the certification authority to realize the cross-domain authentication process by executing the steps of the blockchain-based cross-domain authentication methods described in the above embodiments. Issuance, certificate commitment and commitment signature, so that cross-domain authentication does not depend on the main certification authority, and users only need to verify the certificate issued from the certification authority, the commitment to the certificate, and the signature of the commitment, so that the verification can be done quickly. The user's identity information is verified, thereby effectively improving the processing efficiency of cross-domain authentication. At the same time, by broadcasting the commitment signature to the blockchain system, it is possible to implement strict supervision of the certification body and ensure the security and fairness of the certification process.

可以理解的是,以上所描述的装置、电子设备及存储介质的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,既可以位于一个地方,或者也可以分布到不同网络单元上。可以根据实际需要选择其中的部分或全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。It should be understood that the above-described embodiments of the apparatus, electronic device and storage medium are only illustrative, and the units described as separate components may or may not be physically separated, and may be located in one place, or It can also be distributed to different network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment. Those of ordinary skill in the art can understand and implement it without creative effort.

通过以上实施方式的描述,本领域的技术人员可以清楚地了解,各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令,用以使得一台计算机设备(如个人计算机,服务器,或者网络设备等)执行上述各方法实施例或者方法实施例的某些部分所述的方法。From the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and certainly can also be implemented by hardware. Based on this understanding, the above-mentioned technical solutions can be embodied in the form of software products in essence or the parts that make contributions to the prior art, and the computer software products can be stored in computer-readable storage media, such as U disk, mobile hard disk , ROM, RAM, magnetic disk or optical disk, etc., including several instructions to make a computer device (such as a personal computer, server, or network device, etc.) execute the above method embodiments or some parts of the method embodiments. Methods.

另外,本领域内的技术人员应当理解的是,在本发明实施例的申请文件中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。In addition, it should be understood by those skilled in the art that, in the application documents of the embodiments of the present invention, the terms "comprising", "comprising" or any other variations thereof are intended to cover non-exclusive inclusion, so as to include a series of An elemental process, method, article or apparatus includes not only those elements, but also other elements not expressly listed, or elements inherent to such a process, method, article or apparatus. Without further limitation, an element defined by the phrase "comprising a..." does not preclude the presence of additional identical elements in a process, method, article or apparatus that includes the element.

本发明实施例的说明书中,说明了大量具体细节。然而应当理解的是,本发明实施例的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明实施例公开并帮助理解各个发明方面中的一个或多个,在上面对本发明实施例的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。In the description of the embodiments of the present invention, a large number of specific details are described. It should be understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description. Similarly, it is to be understood that in the above descriptions of exemplary embodiments of the present embodiments, various features of the present embodiments are sometimes referred to in order to simplify the present disclosure and to aid in understanding one or more of the various inventive aspects. Grouped together into a single embodiment, figure, or description thereof.

然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明实施例的单独实施例。However, this disclosed approach should not be construed to reflect an intention that the claimed embodiments of the invention require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the Detailed Description are hereby expressly incorporated into this Detailed Description, with each claim standing on its own as a separate example of embodiments of this invention.

最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the embodiments of the present invention, but not to limit them; although the embodiments of the present invention have been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: It is still possible to modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the technical solutions of the embodiments of the present invention. spirit and scope.

Claims (10)

1. A block chain-based cross-domain authentication method is characterized in that the block chain-based cross-domain authentication method is implemented based on a given cross-domain authentication system, the given cross-domain authentication system comprises a master authentication mechanism, a slave authentication mechanism, a user side and a verifier, and the block chain-based cross-domain authentication method comprises the following steps:
selecting safety parameters to sequentially generate public parameters and a master public key and a master secret key of the master certification authority by using the master certification authority, generating a slave secret key of the slave certification authority based on the master secret key, and distributing the slave secret key to the slave certification authority;
generating a slave public key of the slave certification authority according to the slave secret key by using the slave certification authority, generating a certificate based on the slave public key, signing to the user side so that the user side can verify whether the certificate is valid, and accepting the certificate when the certificate is valid;
utilizing the slave certification authority to commit the certificate, sending the certificate commitment and verification information generated by the commitment to the user side so that the user side can verify whether the certificate commitment is valid or not, and accepting the certificate commitment and the verification information when the certificate commitment and the verification information are valid;
signing the certificate commitment by using the slave certification authority, broadcasting a commitment signature generated by the signature into a blockchain system for other slave certification authorities to verify whether the commitment signature is valid, and storing the commitment signature into the blockchain system when the commitment signature is valid;
the user side is utilized to send the certificate, the certificate acceptance and the verification information to the verifier so that the verifier can verify whether the certificate acceptance is valid or not, and when the certificate acceptance is valid, the identity information of the user corresponding to the user side is received;
and tracking the identity information of the slave certification authority by using the master certification authority, and extracting the certificate from the certificate commitment by using the master certification authority and the slave certification authority respectively to realize cross-domain certification.
2. The blockchain-based cross-domain authentication method according to claim 1, wherein the step of selecting a security parameter to generate a public parameter and a master public key and a master secret key of the master certificate authority by using the master certificate authority, and generating a slave secret key of the slave certificate authority based on the master secret key, and distributing the slave secret key to the slave certificate authority specifically comprises:
and the main authentication mechanism is utilized to complete the following processing flows in sequence:
selecting a safety parameter 1λAnd based on the safety parameter 1λGenerating a public parameter Param by adopting a system parameter generation algorithm SysGen;
generating a master public key gmpk and a master key gmsk of the master certification authority by adopting a key generation algorithm KGen based on a public parameter Param, and generating a slave key gsk of the slave certification authority by adopting a key generation algorithm KGen based on the master key gmsk;
the step of generating, by the slave certificate authority, a slave public key of the slave certificate authority from the slave key specifically includes: and generating a slave public key gpk of the slave certification authority by using a key generation algorithm KGen based on a slave key gsk of the slave certification authority by using the slave certification authority.
3. The blockchain-based cross-domain authentication method according to claim 1, wherein the step of generating a certificate based on the slave public key and issuing the certificate to the user end for the user end to verify whether the certificate is valid, and accepting the certificate when the certificate is valid specifically includes:
utilizing the slave certification authority, based on the slave key gsk of the slave certification authority, the master public key gmpk of the master certification authority and the identity information ID of the user corresponding to the user endjAdopting a group signature algorithm GSig to generate a certificate Cert to sign and send the certificate Cert to the user side;
utilizing the user side according to the master public key gmpk and the identity information ID of the userjAnd a certificate Cert, which adopts a verification algorithm Gser to verify whether the certificate Cert is valid;
and if the output of the verification algorithm Gver is Valid, determining that the certificate Cert is Valid and accepting the certificate Cert, and if the output of the verification algorithm Gver is Invalid, determining that the certificate Cert is Invalid and rejecting the certificate Cert.
4. The blockchain-based cross-domain authentication method according to claim 1, wherein the steps of utilizing the slave certificate authority to commit the certificate, sending a certificate commitment and verification information generated by the commitment to the user end, so that the user end can verify whether the certificate commitment is valid, and when the certificate commitment and the verification information are valid, accepting the certificate commitment and the verification information specifically include:
generating certificate acceptance and verification information (psi, pi) by using the slave certification authority according to the master public key gmpk of the master certification authority, the public key gpk of the slave certification authority and the certificate Cert by using an acceptance algorithm TECom, and sending the certificate acceptance and verification information (psi, pi) to the user side;
verifying whether the certificate acceptance psi is valid or not by using the user side through a verification algorithm TEVer according to the master public key gmpk of the master certification authority, the certificate Cert, the certificate acceptance and the verification information psi, pi;
if the output of the verification algorithm TEVer is Valid, it is determined that the certificate acceptance ψ is Valid and the certificate acceptance and verification information (ψ, π) is accepted, and if the output of the verification algorithm TEVer is Invalid, it is determined that the certificate acceptance ψ is Invalid and the certificate acceptance and verification information (ψ, π) is rejected.
5. The blockchain-based cross-domain authentication method according to claim 1, wherein the signing the certificate acceptance by the slave certification authority, broadcasting the signature-generated acceptance signature to the blockchain system for other slave certification authorities to verify whether the acceptance signature is valid, and storing the acceptance signature in the blockchain system when the acceptance signature is valid specifically comprises:
generating a commitment signature sigma by using the slave certification authority according to a slave key gssk of the slave certification authority, a master public key gmpk of the master certification authority and a certificate commitment psi by adopting a group signature algorithm GSig and broadcasting the commitment signature sigma into a blockchain system;
verifying whether the commitment signature sigma is valid or not by using the other slave certification authorities and adopting a verification algorithm Gver according to the master public key gmpk, the certificate commitment psi and the commitment signature sigma of the master certification authority;
and if the output of the verification algorithm Gver is Valid, determining that the commitment signature sigma is Valid and storing the commitment signature sigma into the blockchain system, and if the output of the verification algorithm Gver is Invalid, determining that the commitment signature sigma is Invalid and rejecting the commitment signature sigma.
6. The blockchain-based cross-domain authentication method according to claim 1, wherein the step of sending the certificate, the certificate acceptance and the verification information to the verifier by using the user side for the verifier to verify whether the certificate acceptance is valid, and when the certificate acceptance is valid, accepting identity information of a user corresponding to the user side specifically comprises:
sending a certificate Cert and certificate acceptance and verification information (ψ, π) to the verifier by using the user side;
verifying whether the certificate acceptance psi is valid or not by using the verifier according to the master public key gmpk of the master certification authority, the certificate Cert and the certificate acceptance and verification information psi, pi by adopting a verification algorithm TEVer;
and if the output of the verification algorithm TEVer is Valid, determining that the certificate acceptance psi is Valid and accepting the identity information of the user corresponding to the user side, and if the output of the verification algorithm TEVer is Invalid, determining that the certificate acceptance psi is Invalid and rejecting the identity information of the user corresponding to the user side.
7. The blockchain-based cross-domain authentication method according to claim 1, wherein the step of tracking, by the master authentication mechanism, the identity information of the slave authentication mechanism specifically comprises:
and tracking a slave key gsk of the slave certification authority by using the master certification authority according to a master key gmsk and a commitment signature sigma of the master certification authority by adopting a tracking algorithm Trace, and identifying the identity information of the slave certification authority based on the slave key gsk.
8. The blockchain-based cross-domain authentication method according to claim 1, wherein the step of extracting the certificate from the certificate commitment by using the master certification authority and the slave certification authority respectively to implement cross-domain authentication specifically comprises:
extracting a certificate Cert by using the main certification authority and adopting an extraction algorithm Extract according to a main key gmsk of the main certification authority and a certificate commitment psi;
and extracting the certificate Cert by using the slave certification authority by adopting an extraction algorithm Extract according to the slave key gsk of the slave certification authority and the certificate acceptance psi.
9. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the steps of the block chain based cross-domain authentication method according to any one of claims 1 to 8 when executing the computer program.
10. A non-transitory computer readable storage medium having stored thereon computer instructions, wherein the computer instructions, when executed by a computer, implement the steps of the blockchain based cross-domain authentication method according to any one of claims 1 to 8.
CN201911007278.0A 2019-10-22 2019-10-22 A blockchain-based cross-domain authentication method and electronic device Active CN110661816B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911007278.0A CN110661816B (en) 2019-10-22 2019-10-22 A blockchain-based cross-domain authentication method and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911007278.0A CN110661816B (en) 2019-10-22 2019-10-22 A blockchain-based cross-domain authentication method and electronic device

Publications (2)

Publication Number Publication Date
CN110661816A true CN110661816A (en) 2020-01-07
CN110661816B CN110661816B (en) 2021-11-05

Family

ID=69041525

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911007278.0A Active CN110661816B (en) 2019-10-22 2019-10-22 A blockchain-based cross-domain authentication method and electronic device

Country Status (1)

Country Link
CN (1) CN110661816B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112311772A (en) * 2020-10-12 2021-02-02 华中师范大学 Hyperridge-based cross-domain certificate management system and method
CN113408003A (en) * 2020-03-16 2021-09-17 上海唯链信息科技有限公司 Block chain cross-chain method and device
CN114205162A (en) * 2021-12-16 2022-03-18 北京国富安电子商务安全认证有限公司 Block chain PKI mutual trust authentication based method and system

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545243A (en) * 2003-11-24 2004-11-10 华中科技大学 Method and system for identity authentication
CN101453476A (en) * 2009-01-06 2009-06-10 中国人民解放军信息工程大学 Cross domain authentication method and system
CN101471777A (en) * 2007-12-29 2009-07-01 中国科学院计算技术研究所 Access control system and method between domains based on domain name
CN102055769A (en) * 2010-12-29 2011-05-11 北京理工大学 Multi- trust domain authentication system under lattice-based grid environment
CN104901804A (en) * 2014-08-28 2015-09-09 赵捷 User autonomy-based identity authentication implementation method
US20170187726A1 (en) * 2015-12-24 2017-06-29 Zeta (Better World Technology Pvt. Ltd.) Cross-domain message authentication
CN108737370A (en) * 2018-04-05 2018-11-02 西安电子科技大学 A kind of cross-domain Verification System of Internet of Things based on block chain and method
CN109194610A (en) * 2018-07-24 2019-01-11 北京交通大学 Vehicle-mounted mist data lightweight anonymous access authentication method based on block chain auxiliary
CN109743172A (en) * 2018-12-06 2019-05-10 国网山东省电力公司电力科学研究院 Based on the alliance blockchain V2G network cross-domain authentication method, information data processing terminal
CN109829326A (en) * 2018-11-20 2019-05-31 西安电子科技大学 Cross-domain certification and fair audit duplicate removal cloud storage system based on block chain
CN110061851A (en) * 2019-04-28 2019-07-26 广州大学 A kind of across trust domain authentication method and system of decentralization

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545243A (en) * 2003-11-24 2004-11-10 华中科技大学 Method and system for identity authentication
CN101471777A (en) * 2007-12-29 2009-07-01 中国科学院计算技术研究所 Access control system and method between domains based on domain name
CN101453476A (en) * 2009-01-06 2009-06-10 中国人民解放军信息工程大学 Cross domain authentication method and system
CN102055769A (en) * 2010-12-29 2011-05-11 北京理工大学 Multi- trust domain authentication system under lattice-based grid environment
CN104901804A (en) * 2014-08-28 2015-09-09 赵捷 User autonomy-based identity authentication implementation method
US20170187726A1 (en) * 2015-12-24 2017-06-29 Zeta (Better World Technology Pvt. Ltd.) Cross-domain message authentication
CN108737370A (en) * 2018-04-05 2018-11-02 西安电子科技大学 A kind of cross-domain Verification System of Internet of Things based on block chain and method
CN109194610A (en) * 2018-07-24 2019-01-11 北京交通大学 Vehicle-mounted mist data lightweight anonymous access authentication method based on block chain auxiliary
CN109829326A (en) * 2018-11-20 2019-05-31 西安电子科技大学 Cross-domain certification and fair audit duplicate removal cloud storage system based on block chain
CN109743172A (en) * 2018-12-06 2019-05-10 国网山东省电力公司电力科学研究院 Based on the alliance blockchain V2G network cross-domain authentication method, information data processing terminal
CN110061851A (en) * 2019-04-28 2019-07-26 广州大学 A kind of across trust domain authentication method and system of decentralization

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113408003A (en) * 2020-03-16 2021-09-17 上海唯链信息科技有限公司 Block chain cross-chain method and device
CN113408003B (en) * 2020-03-16 2022-11-04 上海唯链信息科技有限公司 Block chain cross-chain method and device
CN112311772A (en) * 2020-10-12 2021-02-02 华中师范大学 Hyperridge-based cross-domain certificate management system and method
CN112311772B (en) * 2020-10-12 2022-06-14 华中师范大学 Hyperridge-based cross-domain certificate management system and method
CN114205162A (en) * 2021-12-16 2022-03-18 北京国富安电子商务安全认证有限公司 Block chain PKI mutual trust authentication based method and system

Also Published As

Publication number Publication date
CN110661816B (en) 2021-11-05

Similar Documents

Publication Publication Date Title
CN111639361B (en) A block chain key management method, multi-person co-signature method and electronic device
US10944575B2 (en) Implicitly certified digital signatures
CN109756485B (en) Electronic contract signing method, electronic contract signing device, computer equipment and storage medium
CN113301022B (en) Internet of things equipment identity security authentication method based on block chain and fog calculation
US10148422B2 (en) Implicitly certified public keys
CN111010272B (en) Identification private key generation and digital signature method, system and device
CN108667626A (en) A Secure Two-Party Collaborative SM2 Signature Method
CN107948143A (en) Identity-based privacy protection integrity detection method and system in cloud storage
CN106789090A (en) Public key infrastructure system and semi-random participating certificate endorsement method based on block chain
CN108712259A (en) Identity-based acts on behalf of the efficient auditing method of cloud storage for uploading data
Shankar et al. Improved multisignature scheme for authenticity of digital document in digital forensics using edward‐curve digital signature algorithm
CN105376064A (en) Anonymous message authentication system and message signing method thereof
CN108494559B (en) Electronic contract signing method based on semi-trusted third party
CN106487786A (en) A kind of cloud data integrity verification method based on biological characteristic and system
CN110661816B (en) A blockchain-based cross-domain authentication method and electronic device
CN115442057A (en) Randomizable blind signature method and system with strong unlinkability
CN116432204A (en) Supervision transaction privacy protection method based on homomorphic encryption and zero knowledge proof
CN113362065A (en) Online signature transaction implementation method based on distributed private key
CN111934880A (en) A safe and effective cloud data integrity verification scheme with privacy protection
CN110278073B (en) Group digital signature and verification method, and equipment and device thereof
Saadatmandan et al. Digital Certificate of Public Key for User Authentication and Session Key Establishment for Secure Network Communications
CN115514504A (en) Cross-confederation node authentication method, device, computer equipment and storage medium
CN109088732A (en) A kind of CA certificate implementation method based on mobile terminal
Bruce et al. Cryptographic computation of private shared key based mutual authentication protocol: Simulation and modeling over wireless networks
CN119743267A (en) A method and system for generating SM9 group signature

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