CN107079037B - 基于区块链的身份认证方法、装置、节点及系统 - Google Patents

基于区块链的身份认证方法、装置、节点及系统 Download PDF

Info

Publication number
CN107079037B
CN107079037B CN201680003232.XA CN201680003232A CN107079037B CN 107079037 B CN107079037 B CN 107079037B CN 201680003232 A CN201680003232 A CN 201680003232A CN 107079037 B CN107079037 B CN 107079037B
Authority
CN
China
Prior art keywords
node
proof
certified
identification
digital signature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680003232.XA
Other languages
English (en)
Other versions
CN107079037A (zh
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.)
Cloudminds Shanghai Robotics Co Ltd
Original Assignee
Cloudminds Inc
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 Cloudminds Inc filed Critical Cloudminds Inc
Publication of CN107079037A publication Critical patent/CN107079037A/zh
Application granted granted Critical
Publication of CN107079037B publication Critical patent/CN107079037B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/3218Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于区块链的身份认证方法、装置、节点及系统,涉及安全技术领域。该方法包括:接收被认证方节点发送的认证请求,认证请求包括被认证方节点和身份证明发布节点的身份信息;在确认这些信息,以及身份证明发布节点对被认证方节点的身份信息的数字签名写入区块链中时,根据身份证明发布节点的公钥对该数字签名进行验证;在该一数字签名通过验证后,向验证被认证方是否掌握与被认证方节点的公钥对应的私钥;被认证方节点的公钥是根据被认证方节点的身份信息获取的;当确认被认证方已掌握与被认证方节点的公钥对应的私钥时,确定被认证方节点通过身份认证。

Description

基于区块链的身份认证方法、装置、节点及系统
技术领域
本公开涉及信息技术领域,尤其涉及一种基于区块链的身份认证方法、装置、节点及系统。
背景技术
身份认证是目前计算机及网络系统中确认操作者身份的基本技术手段,是判断被认证对象的身份是否属实和有效的一个过程。网络系统中常用的身份认证技术包括用户名/口令、Kerberos(一种网络认证协议)和PKI(Public Key Infrastructure,公钥基础设施)等。这些认证方法存在一个共同点,即都存在一个认证双方共同信任的第三方机构,通过这个第三方机构为认证双方发布身份信息,并以此身份信息作为认证双方间确认对方身份的基础。
但是,这样上述的认证机制容易出现由于单点故障问题和安全问题而影响整个系统的可用性和安全性的问题,这是由于当系统中的某个或某些节点(例如认证双方或者可信第三方机构)的故障容易导致其他节点无法获取身份认证信息,并且可信第三方机构在网络中的地址通常是固定的,极易受到各种攻击,其可信第三方机构自身安全性是整个系统安全的基础,当可信第三方机构的安全出现问题时,整个系统的安全则无法保证。
发明内容
本公开的目的是提供一种基于区块链的身份认证方法、装置、节点及系统,用于解决现有认证机制由于单点故障问题和安全问题而影响整个系统的可用性和安全性的问题。
为了实现上述目的,根据本公开实施例的第一方面,本公开提供一种基于区块链的身份认证方法,应用于认证方节点,所述方法包括:
接收被认证方节点发送的认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息,以及所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证;所述身份证明发布节点的公钥是根据所述身份证明发布节点的身份信息获取的;
在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥;所述被认证方节点的公钥是根据所述被认证方节点的身份信息获取的;
当确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,确定所述被认证方节点通过身份认证。
可选的,所述在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:
在所述第一数字签名通过验证后,向所述被认证方节点发送验证信息;
接收所述被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第二数字签名;
根据所述被认证方节点的公钥对所述第二数字签名进行验证;
当所述第二数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述在所述第一数字签名通过验证后,向所述被认证方确认所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:
接收所述被认证方节点发送的验证信息,以及被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第三数字签名;所述验证信息是所述被认证方节点根据预设的信息生成规则生成的,所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
验证所述验证信息是否是按照所述信息生成规则生成的;
当所述验证信息是按照所述信息生成规则生成的时,根据所述被认证方节点的公钥对所述第三数字签名进行验证;
当所述第三数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,当所述身份证明发布节点存在上一级身份证明发布节点时,所述根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,包括:
从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,所述身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的。
可选的,所述在所述第一数字签名通过验证后,在验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥之前,还包括:
在所述第一数字签名通过验证后,从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
根据本公开实施例的第二方面,提供一种基于区块链的身份认证方法,应用于被认证方节点,所述方法包括:
向认证方发送认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
在所述认证方节点确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息、所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证;
当所述认证方节点确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,所述被认证方节点通过身份认证。
可选的,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:
在所述第一数字签名通过所述认证方节点的验证后,接收所述认证方节点发送的验证信息;
根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第二数字签名;
向所述认证方节点发送所述第二数字签名,当所述第二数字签名通过所述认证方的验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:
在所述第一数字签名通过所述认证方节点的验证后,根据预设的信息生成规则生成验证信息;所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第三数字签名;
向所述认证方节点发送所述验证信息以及所述第三数字签名;
当所述认证方节点确认所述验证信息是按照所述信息生成规则生成的,并且所述认证方节点根据所述被认证方节点的公钥对所述第三数字签名进行的验证通过验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述身份证明发布节点对所述被认证方节点的身份信息和所述第一数字签名写入所述区块链的方法包括:
向所述区块链写入身份证明请求,所述身份证明请求中包括所述被认证方节点的身份信息,用于所述身份证明发布节点在所述区块链中确认所述被认证方节点的身份信息,并根据所述身份证明发布节点的私钥对所述被认证方节点的身份信息进行数字签名得到所述第一数字签名,并将所述第一数字签名写入所述区块链。
可选的,在所述身份证明发布节点向所述区块链写入用于撤销所述第一数字签名的撤销证明后,所述被认证方节点的所述第一数字签名被撤销,所述撤销证明中包括对所述第一数字签名的撤销说明,以及通过所述身份证明发布节点的私钥对所述撤销说明进行数字签名得到第五数字签名。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
根据本公开实施例的第三方面,提供一种基于区块链的身份认证装置,应用于认证方节点,所述装置包括:
接收模块,用于接收被认证方节点发送的认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
第一验证模块,用于在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息,以及所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证;所述身份证明发布节点的公钥是根据所述身份证明发布节点的身份信息获取的;
第二验证模块,用于在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥;所述被认证方节点的公钥是根据所述被认证方节点的身份信息获取的;
确定模块,用于当确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,确定所述被认证方节点通过身份认证。
可选的,所述第二验证模块包括:
发送子模块,用于在所述第一数字签名通过验证后,向所述被认证方节点发送验证信息;
接收子模块,用于接收所述被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第二数字签名;
验证子模块,用于根据所述被认证方节点的公钥对所述第二数字签名进行验证;
确认子模块,用于确定当所述第二数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述第二验证模块包括:
接收子模块,用于接收所述被认证方节点发送的验证信息,以及被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第三数字签名;所述验证信息是所述被认证方节点根据预设的信息生成规则生成的,所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
信息验证子模块,用于验证所述验证信息是否是按照所述信息生成规则生成的;
签名验证子模块,用于当所述验证信息是按照所述信息生成规则生成的时,根据所述被认证方节点的公钥对所述第三数字签名进行验证;
确认子模块,用于当所述第三数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,当所述身份证明发布节点存在上一级身份证明发布节点时,所述第一验证模块用于:
从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;
在所述第四数字签名通过验证后,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,所述身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的。
可选的,所述第一验证模块用于:
在所述第一数字签名通过验证后,从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
所述发送模块还用于在所述第四数字签名通过验证后,所述第二验证模块验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
根据本公开实施例的第四方面,提供一种基于区块链的身份认证装置,应用于被认证方节点,所述装置包括:
认证请求模块,用于向认证方发送认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
验证模块,用于在所述认证方节点确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息、所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证;当所述认证方节点确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,所述被认证方节点通过身份认证。
可选的,所述验证模块包括:
接收子模块,用于在所述第一数字签名通过所述认证方节点的验证后,接收所述认证方节点发送的验证信息;
签名子模块,用于根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第二数字签名;
发送子模块,用于向所述认证方节点发送所述第二数字签名,当所述第二数字签名通过所述认证方的验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述验证模块包括:
信息生成子模块,用于在所述第一数字签名通过所述认证方节点的验证后,根据预设的信息生成规则生成验证信息;所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
签名子模块,用于根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第三数字签名;
发送子模块,用于向所述认证方节点发送所述验证信息以及所述第三数字签名;当所述认证方节点确认所述验证信息是按照所述信息生成规则生成的,并且所述认证方节点根据所述被认证方节点的公钥对所述第三数字签名进行的验证通过验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述装置还包括:身份证明请求模块,用于:
向所述区块链写入身份证明请求,所述身份证明请求中包括所述被认证方节点的身份信息,用于所述身份证明发布节点在所述区块链中确认所述被认证方节点的身份信息,并根据所述身份证明发布节点的私钥对所述被认证方节点的身份信息进行数字签名得到所述第一数字签名,并将所述第一数字签名写入所述区块链。
可选的,在所述身份证明发布节点向所述区块链写入用于撤销所述第一数字签名的撤销证明后,所述被认证方节点的所述第一数字签名被撤销,所述撤销证明中包括对所述第一数字签名的撤销说明,以及通过所述身份证明发布节点的私钥对所述撤销说明进行数字签名得到第五数字签名。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
根据本公开实施例的第五方面,提供一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于第一方面所述的方法。
根据本公开实施例的第六方面,提供一种用户节点,所述用户节点包括:
第五方面所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
根据本公开实施例的第七方面,提供一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于第二方面所述的方法。
根据本公开实施例的第八方面,提供一种用户节点,所述用户节点包括:
第七方面所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
根据本公开实施例的第九方面,提供一种身份认证系统,所述系统包括:
区块链;
至少一个第六方面所述的用户节点,作为认证方节点;
至少一个第八方面所述的用户节点,作为被认证方节点;以及
至少一个身份证明发布节点;
其中,所述区块链,所述至少一个第六方面所述的用户节点,所述至少一个第八方面所述的用户节点以及所述至少一个身份证明发布节点属于同一区块链网络。
可选的,所述至少一个身份证明发布节点为一个身份证明发布节点,所述身份证明发布节点用于向所述区块链发布第一用户节点的身份证明;所述第一用户节点为任一用户节点;
其中,所述身份证明发布节点向所述区块链发布第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链。
可选的,所述至少一个身份证明发布节点至少包括一个身份证明发布节点和所述身份证明发布节点的上一级身份证明发布节点,所述身份证明发布节点用于向所述区块链发布第一用户节点的身份证明,所述第一用户节点为任一用户节点,所述上一级身份证明发布节点用于向所述区块链发布所述身份证明发布节点的身份证明;
其中,所述身份证明发布节点向所述区块链发布第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链;
所述上一级身份证明发布节点向所述区块链发布所述身份证明发布节点的身份证明包括:所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。
可选的,所述系统包括多个身份证明发布子系统,每个身份证明发布子系统中包括至少一个身份证明发布节点和至少一个用户节点;
其中,当第一身份证明发布子系统中包括一个身份证明发布节点时,所述身份证明发布节点用于向所述区块链发布所述第一身份证明发布子系统的第一用户节点的身份证明,所述第一用户节点为所述第一身份证明发布子系统中的任一用户节点;所述第一身份证明发布子系统为所述多个身份证明发布子系统中的任一身份证明发布子系统;
当第一身份证明发布子系统中至少包括一个身份证明发布节点和所述身份证明发布节点的上一级身份证明发布节点,所述身份证明发布节点用于向所述区块链发布所述第一身份证明发布子系统的所述第一用户节点的身份证明,所述上一级身份证明发布节点用于向所述区块链发布所述身份证明发布节点的身份证明;
其中,所述身份证明发布节点向所述区块链发布所述第一身份证明发布子系统的所述第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链;
所述上一级身份证明发布节点向所述区块链发布所述身份证明发布节点的身份证明包括:所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。
通过上述技术方案,由于被认证方的身份信息和身份证明发布节点的身份信息均记录在区块链中,不会因为某个或某些节点的故障导致无法获取身份信息,因此能够避免单点故障对整个系统的影响,并且在区块链网络中,由于任何一个节点只要配置了身份证明发布节点的私钥,其角色就是身份认证发布节点,因此身份证明发布节点不是固定的某一节点,攻击者无法对对身份认证信息发布节点进行定位,从而无法对身份认证节点发起攻击,从而保证了整个系统的安全,因此能够解决由于单点故障问题和安全问题而影响整个系统的可用性和安全性的问题,保证整个系统的可用性和安全性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一实施例示出的一种基于区块链的身份认证方法的流程图;
图2是根据一实施例示出的一种基于区块链的身份认证方法的流程图;
图3是根据一实施例示出的另一种基于区块链的身份认证方法的流程图;
图4是根据图3所示实施例示出的一种私钥验证方法的流程图;
图5是根据图3所示实施例示出的另一种私钥验证方法的流程图;
图6是根据一实施例示出的一种基于区块链的身份认证装置框图;
图7是根据图6所示实施例示出的一种第二验证模块框图;
图8是根据图6所示实施例示出的另一种第二验证模块框图;
图9是根据一实施例示出的另一种基于区块链的身份认证装置框图;
图10是根据图9所示实施例示出的一种验证模块框图;
图11是根据图9所示实施例示出的另一种验证模块框图;
图12是根据一实施例示出的又一种基于区块链的身份认证装置框图;
图13是根据一实施例示出的一种身份认证系统结构框图;
图14a是根据一实施例示出的另一种身份认证系统结构框图;
图14b是根据一实施例示出的又一种身份认证系统结构框图;
图15是根据一实施例示出的又一种身份认证系统结构框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在对本公开提供的基于区块链的身份认证方法进行说明之前,先对本公开各个实施例所涉及的应用场景进行介绍。
首先,对区块链进行介绍,区块链是由区块链网络中所有节点共同参与维护的去中心化分布式数据库系统,它是由一系列基于密码学方法产生的数据块组成,每个数据块即为区块链中的一个区块。根据产生时间的先后顺序,区块被有序地链接在一起,形成一个数据链条,被形象地称为区块链。下面对区块链网络的一些概念进行介绍。
区块链网络中的节点可以称为区块链节点,其中区块链网络基于P2P(Peer toPeer,对等网络)网络,每个参与交易和区块存储、验证、转发的P2P网络节点都是一个区块链网络中的节点。
区块链中的用户身份可以使用公钥或者是根据该公钥生成的账户地址表示,并且公钥和私钥是成对出现的,其中私钥由用户掌握而不发布到上述的区块链网络中,公钥或者上述的账户地址可随意发布在区块链网络中。其中,公钥可以通过特定的哈希和编码后成为上述的账户地址。值得一提的是,用户身份和区块链节点不存在一一对应关系,用户可以在任意一个区块链节点上使用自己的私钥。
关于区块链的数据写入,是由区块链节点通过向区块链网络发布交易(Transaction)实现向区块链写入数据。该交易包括:区块链节点按照预设的交易数据格式对生成的交易数据包,以及利用该区块链节点自己的私钥对该交易数据包进行的数字签名,该数字签名用于证明该区块链节点的用户的身份;而后,该交易被区块链网络中的“矿工”(即执行PoW(Proof Of Work,工作证明)共识竞争机制的区块链节点)记录入区块链中产生的新区块,并将该交易发布到区块链网络中,在该交易被其他区块链节点验证通过(其他节点可以从该区块链节点生成的交易中获取该区块链节点的公钥,并根据该区块链节点的公钥对上述的数字签名进行验证,除了验证数字签名之外还可以验证交易数据包是否为规定的数据结构)和接受后,该交易即被写入区块链。其中,区块链中的新区块是由上述的“矿工”通过执行PoW共识竞争机制(该机制可以理解为:各个“矿工”按照区块的预设技术要求,例如按照预设的随机数要求来共同计算随机数,哪一个“矿工”先计算出符合该随机数要求的随机数,该“矿工”产生的区块就作为该新区块)而定期产生的,因此产生新区块的时间间隔通常和上述的预设技术要求相关,通过设置不同的预设技术要求可以改变区块链产生新区块的时间间隔。
本发明公开的各个实施例中,向区块链中写入数据的流程均是采用上述流程。本发明公开各个实施例所涉及的应用场景可以是一种身份认证系统,该系统基于区块链,可以至少包括:区块链、两个以上用户节点和一个身份证明发布节点,该区块链、用户节点和身份证明发布节点均属于同一区块链网络。其中,用户节点是身份证明的需求节点,用于实际进行身份认证操作。身份证明发布节点是用于为用户节点发布身份证明的节点,这里的“发布身份证明”,是指对用户节点的身份信息进行确认、数字签名、并将数字签名写入区块链,并且在区块链网络中,身份证明发布节点可以不是固定的某一个节点,任何一个节点只要配置了身份证明发布节点的私钥,其角色就是身份认证发布节点。通常身份证明发布节点的身份信息(的账户地址或公钥)已写入区块链,并得到用户节点的认可。
图1是根据一实施例示出的一种基于区块链的身份认证方法的流程图,该方法应用于被认证方节点,该被认证方节点可以是上述身份认证系统中的任一用户节点,参见图1,该方法可以包括以下步骤。
步骤101,向认证方发送认证请求,认证请求中包括被认证方节点的身份信息和身份证明发布节点的身份信息。
其中,认证方节点也是上述系统中除了该被认证方节点外的任一用户节点,即该身份认证方法是两个用户节点之间进行的,并且每个用户节点既可以作为被认证方节点也可以作为认证方节点。另外被认证方节点的身份信息包括被认证方节点的账户地址或者被认证方节点的公钥,被认证方节点的账户地址是根据被认证方节点的公钥获取的;身份证明发布节点的身份信息包括:身份证明发布节点的账户地址或者身份证明发布节点的公钥,身份证明发布节点的账户地址是根据身份证明发布节点的公钥获取的。其中,上述各个节点的账户地址可以是通过将公钥进行特定的哈希计算以及编码后生成的。
步骤102,在认证方节点在确认被认证方节点的身份信息、身份证明发布节点的身份信息、身份证明发布节点对被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在第一数字签名通过认证方节点的验证后,与认证方节点进行被认证方是否掌握与被认证方节点的公钥对应的私钥的验证。
步骤103,当认证方节点确认被认证方已掌握与被认证方节点的公钥对应的私钥时,被认证方节点通过身份认证。
图2是根据一实施例示出的一种基于区块链的身份认证方法的流程图,该方法应用于认证方节点,该认证方节点可以是上述身份认证系统中的任一用户节点,参见图2,该方法可以包括以下步骤。
步骤201,接收被认证方节点发送的认证请求,认证请求中包括被认证方节点的身份信息和身份证明发布节点的身份信息。
其中,被认证方节点也是上述系统中除了该认证方节点外的任一用户节点,即该身份认证方法是两个用户节点之间进行的,并且每个用户节点既可以作为被认证方节点也可以作为认证方节点。另外被认证方节点的身份信息和身份证明发布节点的身份信息所包括的内容可参照步骤101,不再赘述。
步骤202,在确认被认证方节点的身份信息、身份证明发布节点的身份信息,以及身份证明发布节点对被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据身份证明发布节点的公钥对第一数字签名进行验证;身份证明发布节点的公钥是根据身份证明发布节点的身份信息获取的。
步骤203,在第一数字签名通过验证后,验证被认证方是否掌握与被认证方节点的公钥对应的私钥;被认证方节点的公钥是根据被认证方节点的身份信息获取的。
步骤204,当确认被认证方已掌握与被认证方节点的公钥对应的私钥时,确定被认证方节点通过身份认证。
图3是根据一实施例示出的另一种基于区块链的身份认证方法的流程图,该方法应用于上述的身份认证系统,本实施例中的被认证方节点和认证方节点均为该认证系统中的用户节点,参见图3,该方法可以包括以下步骤。
步骤301,被认证方节点向认证方发送认证请求,认证请求中包括被认证方节点的身份信息和身份证明发布节点的身份信息。
其中,认证方节点和被认证方节点可以是上述身份认证系统中的任意两个用户节点。被认证方节点的身份信息包括被认证方节点的账户地址或者被认证方节点的公钥,被认证方节点的账户地址是根据被认证方节点的公钥获取的;身份证明发布节点的身份信息包括:身份证明发布节点的账户地址或者身份证明发布节点的公钥,身份证明发布节点的账户地址是根据身份证明发布节点的公钥获取的。其中,上述各个节点的账户地址可以是通过将公钥进行特定的哈希计算以及编码后生成的。
步骤302,认证方节点接收被认证方节点的认证请求后,确认被认证方节点的身份信息、身份证明发布节点的身份信息,以及身份证明发布节点对被认证方节点的身份信息进行数字签名得到的第一数字签名是否已写入区块链中。
其中,由于认证方节点、被认证方节点以及身份证明发布节点属于同一个区块链网络,在被认证方节点的身份信息、身份证明发布节点的身份信息以及第一数字签名已写入区块链的情况下,认证方节点是能够从区块链中读取到这些信息的。其中,第一数字签名是在身份证明发布节点向区块链中发布被认证方节点的身份证明后产生的。关于身份证明发布节点向区块链中发布被认证方节点的身份证明的方法,可以包括以下步骤:
首先,被认证方节点向区块链写入身份证明请求,身份证明请求中包括被认证方节点的身份信息。其中向区块链中写入身份证明请求的过程可以参照前文所述的区块链的数据写入过程。
其次,身份证明发布节点在接收到身份证明请求后,在区块链中确认被认证方节点的身份信息(例如确认区块链中已写入被认证方节点的身份信息),并根据身份证明发布节点的私钥对被认证方节点的身份信息进行数字签名得到该第一数字签名。
最后,将该第一数字签名写入区块链中,写入区块链中后,区块链网络中的所有节点均可以读取到该第一数字签名,从而完成了对该被认证方节点的身份证明的发布。
另外,值得一提的是,身份证明发布节点向区块链中发布被认证方节点的身份证明的流程应当在被认证方节点向认证方节点发起身份认证之前。并且,向区块链写入身份证明请求不限于上述的被认证方节点,区块链网络中的任一用户节点均可以发起向区块链写入身份证明请求。
步骤303,在被认证方节点的身份信息、身份证明发布节点的身份信息以及第一数字签名已写入区块链中时,认证方节点根据身份证明发布节点的公钥对第一数字签名进行验证。
由于第一数字签名是根据身份证明发布节点的私钥对被认证方节点的身份信息进行数字签名得到的,因此可以根据身份证明发布节点的公钥对第一数字签名进行验证,以确定该第一数字签名的合法性,其中,身份证明发布节点的公钥可以从区块链中获取,也可以是预先存储在认证方节点上的。其中,由于身份证明发布节点的身份信息已经写入区块链中,因此区块链网络中的任意节点均可以获取该身份信息,因此,如果该身份信息是身份证明发布节点的公钥,则认证方节点可以直接得到身份证明发布节点的公钥,如果该身份信息是身份证明发布节点的账户地址,则认证方节点可以根据该账户地址进行计算得到身份证明发布节点的公钥。
步骤304,在第一数字签名通过验证后,认证方节点验证被认证方是否掌握与被认证方节点的公钥对应的私钥。
示例的,图4是根据图3所示实施例示出的一种私钥验证方法的流程图,如图4所示,在一种实现方式中,验证被认证方是否掌握与被认证方节点的公钥对应的私钥可以通过以下步骤:
步骤3041a,在第一数字签名通过验证后,认证方节点生成验证信息。该验证信息可以是挑战码(challenge),挑战码也称作挑战口令,是指遵循握手验证协议(英文:Challenge Handshake Authentication Protocol,简称:CHAP)生成的一组加密口令,用于在传输过程中保证用户的真实密码不被泄露。或者验证信息可以是按照预设的信息生成规则生成的信息。
步骤3042a,认证方节点向被认证方节点发送验证信息。
步骤3043a,被认证方节点根据被认证方节点的私钥对验证信息进行数字签名得到第二数字签名。
步骤3044a,认证方节点从被认证方节点获取第二数字签名后,根据被认证方节点的公钥对第二数字签名进行验证。其中,被认证方节点的公钥可以是从区块链中获取的,也可以是预先存储在认证方节点的。
步骤3045a,当第二数字签名通过验证时,确认被认证方已掌握与被认证方节点的公钥对应的私钥。
图5是根据图3所示实施例示出的另一种私钥验证方法的流程图,如图5所示,在另一种实现方式中,验证被认证方是否掌握与被认证方节点的公钥对应的私钥可以通过以下步骤:
步骤3041b,在第一数字签名通过认证方节点的验证后,被认证方节点根据预设的信息生成规则生成验证信息。
其中,验证信息可以与步骤3041a中所述的验证信息相同,信息生成规则预设置在被认证方节点和认证方节点。
步骤3042b,被认证方节点根据被认证方节点的私钥对验证信息进行数字签名得到第三数字签名。
步骤3043b,被认证方节点向认证方节点发送验证信息以及第三数字签名。
步骤3044b,认证方节点验证该验证信息是否是按照该信息生成规则生成的。
步骤3045b,当认证方节点确认验证信息是按照信息生成规则生成的时,根据被认证方节点的公钥对第三数字签名进行验证。其中,被认证方节点的公钥可以是从区块链中获取的,也可以是预先存储在认证方节点的。
步骤3046b,当第三数字签名通过验证时,认证方节点确认被认证方节点已掌握与被认证方节点的公钥对应的私钥。
除了上述图4或图5所述的实施方式外,验证被认证方是否掌握与被认证方节点的公钥对应的私钥也可以是其他可能的实施方式,包括但不限于上述的方案。
步骤305,当确认被认证方已掌握与被认证方节点的公钥对应的私钥时,认证方节点确定被认证方节点通过身份认证。
其中,在上述步骤303和步骤304中有任一个步骤验证失败时,被认证方节点的身份认证均被确认为失败。
可选的,当所述身份证明发布节点存在上一级身份证明发布节点时,步骤303所述的根据从区块链中获取的身份证明发布节点的公钥对第一数字签名进行验证的步骤可以包括:
首先,从区块链中获取上一级身份证明发布节点的公钥,以及上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名得到的第四数字签名;
其次,根据上一级身份证明发布节点的公钥对第四数字签名进行验证;
再次,在第四数字签名通过验证后,根据从区块链中获取的身份证明发布节点的公钥对第一数字签名进行验证。
或者,当所述身份证明发布节点存在上一级身份证明发布节点时,在步骤304中所述的在第一数字签名通过验证后,在验证被认证方是否掌握与被认证方节点的公钥对应的私钥之前可以包括:
首先,在所述第一数字签名通过验证后,从区块链中获取所述上一级身份证明发布节点的公钥,以及上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名得到的第四数字签名;
其次,根据上一级身份证明发布节点的公钥对第四数字签名进行验证;
再次,在第四数字签名通过验证后,向被认证方节点发送挑战码。
在实际的应用场景中,上述的上一级身份证明发布节点也可能存在更上一级的身份证明发布节点,这里称为上上一级身份证明发布节点,则在验证了该第四数字签名后,还需要验证上上一级身份证明发布节点利用自身私钥对上一级身份证明发布节点的公钥的数字签名。当然,还可能存在更高一级的身份证明发布节点,其原理与前述方法相同,以此类推,不再一一列举。
另外,可选的,身份证明发布节点还可以对已经发布的身份证明进行撤销,示例的,身份证明发布节点可以向所述区块链写入撤销证明,其写入撤销证明的过程可以参照上述的区块链的数据写入过程。该撤销证明中可以包括对之前发布过的某一身份证明,例如上述的第一数字签名进行撤销的,以及利用身份证明发布节点的私钥对撤销说明进行数字签名得到第五数字签名。区块链网络中的其他节点可以通过身份证明发布节点的公钥对第五数字签名进行验证,从而确定撤销说明的合法性。
综上所述,本公开提供的基于区块链的身份认证方法中,由于被认证方的身份信息和身份证明发布节点的身份信息均记录在区块链中,不会因为某个或某些节点的故障导致无法获取身份信息,因此能够避免单点故障对整个系统的影响,并且在区块链网络中,由于任何一个节点只要配置了身份证明发布节点的私钥,其角色就是身份认证发布节点,因此身份证明发布节点不是固定的某一节点,攻击者无法对对身份认证信息发布节点进行定位,从而无法对身份认证节点发起攻击,从而保证了整个系统的安全,因此能够解决由于单点故障问题和安全问题而影响整个系统的可用性和安全性的问题,保证整个系统的可用性和安全性。
图6是根据一实施例示出的一种基于区块链的身份认证装置框图,该装置600可以应用于认证方节点,用于执行图2或图3至图5任一所示的方法,参见图6,该装置600可以包括:接收模块610、第一验证模块620、第二验证模块630以及确定模块640,其中:
接收模块610,用于接收被认证方节点发送的认证请求,认证请求中包括被认证方节点的身份信息和身份证明发布节点的身份信息;
第一验证模块620,用于在确认被认证方节点的身份信息、身份证明发布节点的身份信息,以及身份证明发布节点对被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据身份证明发布节点的公钥对第一数字签名进行验证;身份证明发布节点的公钥是根据身份证明发布节点的身份信息获取的;
第二验证模块630,用于在第一数字签名通过验证后,验证被认证方是否掌握与被认证方节点的公钥对应的私钥;被认证方节点的公钥是根据被认证方节点的身份信息获取的;
确定模块640,用于当确认被认证方已掌握与被认证方节点的公钥对应的私钥时,确定被认证方节点通过身份认证。
可选的,图7是根据图6所示实施例示出的一种第二验证模块框图,如图7所示,第二验证模块630包括:
发送子模块631,用于在第一数字签名通过验证后,向被认证方节点发送验证信息;
接收子模块632,用于接收被认证方节点根据被认证方节点的私钥对验证信息进行数字签名得到的第二数字签名;
验证子模块633,用于根据被认证方节点的公钥对第二数字签名进行验证;
确认子模块634,用于确定当第二数字签名通过验证时,确认被认证方已掌握与被认证方节点的公钥对应的私钥。
或者,图8是根据图6所示实施例示出的另一种第二验证模块框图,如图8所示,第二验证模块630包括:
接收子模块635,用于接收被认证方节点发送的验证信息,以及被认证方节点根据被认证方节点的私钥对验证信息进行数字签名得到的第三数字签名;验证信息是被认证方节点根据预设的信息生成规则生成的,信息生成规则预设置在被认证方节点和认证方节点;
信息验证子模块636,用于验证验证信息是否是按照信息生成规则生成的;
签名验证子模块637,用于当验证信息是按照信息生成规则生成的时,根据被认证方节点的公钥对第三数字签名进行验证;
确认子模块638,用于当第三数字签名通过验证时,确认被认证方已掌握与被认证方节点的公钥对应的私钥。
可选的,当身份证明发布节点存在上一级身份证明发布节点时,第一验证模块620用于:
从区块链中获取上一级身份证明发布节点的公钥,以及上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据上一级身份证明发布节点的公钥对第四数字签名进行验证;
在第四数字签名通过验证后,根据从区块链中获取的身份证明发布节点的公钥对第一数字签名进行验证。
或者,第一验证模块620用于:
在第一数字签名通过验证后,从区块链中获取上一级身份证明发布节点的公钥,以及上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名得到的第四数字签名;根据上一级身份证明发布节点的公钥对第四数字签名进行验证;
发送模块还用于在第四数字签名通过验证后,第二验证模块630验证被认证方是否掌握与被认证方节点的公钥对应的私钥。
可选的,被认证方节点的身份信息包括被认证方节点的账户地址或者被认证方节点的公钥,被认证方节点的账户地址是根据被认证方节点的公钥获取的;身份证明发布节点的身份信息包括:身份证明发布节点的账户地址或者身份证明发布节点的公钥,身份证明发布节点的账户地址是根据身份证明发布节点的公钥获取的。
图9是根据一实施例示出的另一种基于区块链的身份认证装置框图,该装置900应用于被认证方节点,用于执行图1或图3至图5任一所示的方法,参见图9,该装置900可以包括:装置包括:认证请求模块910和验证模块920,其中:
认证请求模块910,用于向认证方发送认证请求,认证请求中包括被认证方节点的身份信息和身份证明发布节点的身份信息;
验证模块920,用于在认证方节点在确认被认证方节点的身份信息、身份证明发布节点的身份信息、身份证明发布节点对被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在第一数字签名通过认证方节点的验证后,与认证方节点进行被认证方是否掌握与被认证方节点的公钥对应的私钥的验证;当认证方节点确认被认证方已掌握与被认证方节点的公钥对应的私钥时,被认证方节点通过身份认证。
可选的,图10是根据图9所示实施例示出的一种验证模块框图,如图10所示,验证模块920包括:
接收子模块921,用于在第一数字签名通过认证方节点的验证后,接收认证方节点发送的验证信息;
签名子模块922,用于根据被认证方节点的私钥对验证信息进行数字签名得到第二数字签名;
发送子模块923,用于向认证方节点发送第二数字签名,当第二数字签名通过认证方的验证时,被认证方节点被确认已掌握与被认证方节点的公钥对应的私钥。
可选的,图11是根据图9所示实施例示出的另一种验证模块框图,如图11所示,验证模块920包括:
信息生成子模块923,用于在第一数字签名通过认证方节点的验证后,根据预设的信息生成规则生成验证信息;信息生成规则预设置在被认证方节点和认证方节点;
签名子模块924,用于根据被认证方节点的私钥对验证信息进行数字签名得到第三数字签名;
发送子模块925,用于向认证方节点发送验证信息以及第三数字签名;当认证方节点确认验证信息是按照信息生成规则生成的,并且认证方节点根据被认证方节点的公钥对第三数字签名进行的验证通过验证时,被认证方节点被确认已掌握与被认证方节点的公钥对应的私钥。
可选的,图12是根据一实施例示出的又一种基于区块链的身份认证装置框图,装置900还包括:身份证明请求模块930,用于:
向区块链写入身份证明请求,身份证明请求中包括被认证方节点的身份信息,用于身份证明发布节点在区块链中确认被认证方节点的身份信息,并根据身份证明发布节点的私钥对被认证方节点的身份信息进行数字签名得到第一数字签名,并将第一数字签名写入区块链。
可选的,在身份证明发布节点向区块链写入用于撤销第一数字签名的撤销证明后,被认证方节点的第一数字签名被撤销,撤销证明中包括对第一数字签名的撤销说明,以及通过身份证明发布节点的私钥对撤销说明进行数字签名得到第五数字签名。
可选的,被认证方节点的身份信息包括被认证方节点的账户地址或者被认证方节点的公钥,被认证方节点的账户地址是根据被认证方节点的公钥获取的;身份证明发布节点的身份信息包括:身份证明发布节点的账户地址或者身份证明发布节点的公钥,身份证明发布节点的账户地址是根据身份证明发布节点的公钥获取的。
综上所述,由于被认证方的身份信息和身份证明发布节点的身份信息均记录在区块链中,不会因为某个或某些节点的故障导致无法获取身份信息,因此能够避免单点故障对整个系统的影响,并且在区块链网络中,由于任何一个节点只要配置了身份证明发布节点的私钥,其角色就是身份认证发布节点,因此身份证明发布节点不是固定的某一节点,攻击者无法对对身份认证信息发布节点进行定位,从而无法对身份认证节点发起攻击,从而保证了整个系统的安全,因此能够解决由于单点故障问题和安全问题而影响整个系统的可用性和安全性的问题,保证整个系统的可用性和安全性。
本公开实施例还提供一种非临时性计算机可读存储介质1,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行一种基于区块链的身份认证方法,该基于区块链的身份认证方法应用于认证方节点,该基于区块链的身份认证方法包括:接收被认证方节点发送的认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息,以及所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证;所述身份证明发布节点的公钥是根据所述身份证明发布节点的身份信息获取的;在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥;所述被认证方节点的公钥是根据所述被认证方节点的身份信息获取的;当确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,确定所述被认证方节点通过身份认证。
可选的,所述在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:在所述第一数字签名通过验证后,向所述被认证方节点发送验证信息;接收所述被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第二数字签名;根据所述被认证方节点的公钥对所述第二数字签名进行验证;当所述第二数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述在所述第一数字签名通过验证后,向所述被认证方确认所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:接收所述被认证方节点发送的验证信息,以及被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第三数字签名;所述验证信息是所述被认证方节点根据预设的信息生成规则生成的,所述信息生成规则预设置在所述被认证方节点和所述认证方节点;验证所述验证信息是否是按照所述信息生成规则生成的;当所述验证信息是按照所述信息生成规则生成的时,根据所述被认证方节点的公钥对所述第三数字签名进行验证;当所述第三数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
可选的,当所述身份证明发布节点存在上一级身份证明发布节点时,所述根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,包括:
从所述区块链中获取所述上一级身份证明发布节点的公钥,以及所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;在所述第四数字签名通过验证后,根据从所述区块链中获取的所述身份证明发布节点的公钥对所述第一数字签名进行验证。
可选的,所述在所述第一数字签名通过验证后,在验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥之前,还包括:在所述第一数字签名通过验证后,从所述区块链中获取所述上一级身份证明发布节点的公钥,以及所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;在所述第四数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
本公开实施例还提供一种用户节点2,所述用户节点2包括:
上述的非临时性计算机可读存储介质1;以及
一个或者多个处理器,用于执行上述的非临时性计算机可读存储介质1中的程序。
本公开实施例还提供另一种非临时性计算机可读存储介质3,所述非临时性计算机可读存储介质3中包括一个或多个程序,所述一个或多个程序用于执行一种基于区块链的身份认证方法,该基于区块链的身份认证方法应用于被认证方节点,该基于区块链的身份认证方法包括:向认证方发送认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;在所述认证方节点在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息、所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证;当所述认证方节点确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,所述被认证方节点通过身份认证。
可选的,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:在所述第一数字签名通过所述认证方节点的验证后,接收所述认证方节点发送的验证信息;根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第二数字签名;向所述认证方节点发送所述第二数字签名,当所述第二数字签名通过所述认证方的验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:在所述第一数字签名通过所述认证方节点的验证后,根据预设的信息生成规则生成验证信息;所述信息生成规则预设置在所述被认证方节点和所述认证方节点;根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第三数字签名;向所述认证方节点发送所述验证信息以及所述第三数字签名;当所述认证方节点确认所述验证信息是按照所述信息生成规则生成的,并且所述认证方节点根据所述被认证方节点的公钥对所述第三数字签名进行的验证通过验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
可选的,所述身份证明发布节点对所述被认证方节点的身份信息和所述第一数字签名写入所述区块链的方法包括:向所述区块链写入身份证明请求,所述身份证明请求中包括所述被认证方节点的身份信息,用于所述身份证明发布节点在所述区块链中确认所述被认证方节点的身份信息,并根据所述身份证明发布节点的私钥对所述被认证方节点的身份信息进行数字签名得到所述第一数字签名,并将所述第一数字签名写入所述区块链。
可选的,在所述身份证明发布节点向所述区块链写入用于撤销所述第一数字签名的撤销证明后,所述被认证方节点的所述第一数字签名被撤销,所述撤销证明中包括对所述第一数字签名的撤销说明,以及通过所述身份证明发布节点的私钥对所述撤销说明进行数字签名得到第五数字签名。
可选的,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
本公开实施例还提供另一种用户节点4,所述用户节点4包括:
上述的非临时性计算机可读存储介质3;以及
一个或者多个处理器,用于执行上述的非临时性计算机可读存储介质3中的程序。
本公开实施例还提供一种身份认证系统,所述系统包括:
区块链;
至少一个上述的用户节点1,作为认证方节点;
至少一个上述的用户节点4,作为被认证方节点;以及
至少一个身份证明发布节点;
其中,所述区块链,所述至少一个上述的用户节点1,所述至少一个上述的用户节点4以及所述至少一个身份证明发布节点属于同一区块链网络。
可选的,所述系统中身份证明发布节点和用户节点的关系可以包括以下三种:
在第一种实现方式中,如图13所示,图13是根据一实施例示出的一种身份认证系统结构框图,在图13中,所述至少一个身份证明发布节点为一个身份证明发布节点,该身份证明发布节点用于向区块链发布区块链网络中的每个用户节点的身份证明;
其中,以第一用户节点为例,该第一用户节点为任一用户节点,身份证明发布节点向区块链发布第一用户节点的身份证明包括:身份证明发布节点在区块链中确认第一用户节点的身份信息,并根据身份证明发布节点的私钥对第一用户节点的身份信息进行数字签名,并将得到的数字签名写入区块链。
在第二种实现方式中,如图14a所示,图14a是根据一实施例示出的另一种身份认证系统结构框图,在图14a中,所述至少一个身份证明发布节点至少包括一个身份证明发布节点和该身份证明发布节点的上一级身份证明发布节点,身份证明发布节点用于向区块链发布每个用户节点的身份证明,上一级身份证明发布节点用于向区块链发布身份证明发布节点的身份证明;另外,如图14b所示,图14b是根据一实施例示出的又一种身份认证系统结构框图,在图14b中,上述的上一级身份证明发布节点也可能存在更上一级的身份证明发布节点,这里称为上上一级身份证明发布节点,上一级身份证明发布节点,用于向区块链发布上一级身份证明发布节点的身份证明,并且,身份证明发布节点可以不用发布每个用户节点的身份证明,而是由身份证明发布节点、上一级身份证明发布节点以及上一级身份证明发布节点各自负责一部分用户节点的身份证明的发布。并且,上上一级身份证明发布节点可以作为另一部分用户节点的身份证明发布节点,当然,还可能存在更高一级的身份证明发布节点,以此类推,不再一一列举。
其中,以第一用户节点为例,该第一用户节点为任一用户节点,身份证明发布节点向区块链发布第一用户节点的身份证明包括:身份证明发布节点在区块链中确认第一用户节点的身份信息,并根据身份证明发布节点的私钥对第一用户节点的身份信息进行数字签名,并将得到的数字签名写入区块链;上一级身份证明发布节点向区块链发布身份证明发布节点的身份证明包括:上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。上上一级身份证明发布节点向区块链发布上一级身份证明发布节点的身份证明包括:上上一级身份证明节点根据上上一级身份证明节点的私钥对上一级身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。
另外,上上一级身份证明节点和上上一级身份证明发布节点向区块链发布用户节点的身份证明的方法与上述的身份证明发布节点向区块链发布第一用户节点的身份证明的方法相同,不在赘述。
在第三种实现方式中,如图15所示,图15是根据一实施例示出的又一种身份认证系统结构框图,该身份认证系统可以包括多个身份证明发布子系统,每个身份证明发布子系统中可以包括至少一个身份证明发布节点和至少一个用户节点;
其中,当第一身份证明发布子系统中包括一个身份证明发布节点时,该身份证明发布节点用于向区块链发布第一身份证明发布子系统的第一用户节点的身份证明,该第一用户节点为第一身份证明发布子系统中的任一用户节点;第一身份证明发布子系统为该多个身份证明发布子系统中的任一身份证明发布子系统;
当第一身份证明发布子系统中至少包括一个身份证明发布节点和身份证明发布节点的上一级身份证明发布节点,身份证明发布节点用于向区块链发布第一身份证明发布子系统的第一用户节点的身份证明,上一级身份证明发布节点用于向区块链发布身份证明发布节点的身份证明;
其中,身份证明发布节点向区块链发布第一身份证明发布子系统的第一用户节点的身份证明包括:身份证明发布节点在区块链中确认第一用户节点的身份信息,并根据身份证明发布节点的私钥对第一用户节点的身份信息进行数字签名,并将得到的数字签名写入区块链;
上一级身份证明发布节点向区块链发布身份证明发布节点的身份证明包括:上一级身份证明节点根据上一级身份证明节点的私钥对身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入区块链。即可以理解为每个身份证明发布子系统可以包括如图13、或图14a或图14b所示的结构。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (32)

1.一种基于区块链的身份认证方法,其特征在于,应用于认证方节点,所述方法包括:
接收被认证方节点发送的认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息,以及所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证;所述身份证明发布节点的公钥是根据所述身份证明发布节点的身份信息获取的;
在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥;所述被认证方节点的公钥是根据所述被认证方节点的身份信息获取的;
当确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,确定所述被认证方节点通过身份认证。
2.根据权利要求1所述的方法,其特征在于,所述在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:
在所述第一数字签名通过验证后,向所述被认证方节点发送验证信息;
接收所述被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第二数字签名;
根据所述被认证方节点的公钥对所述第二数字签名进行验证;
当所述第二数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
3.根据权利要求1所述的方法,其特征在于,所述在所述第一数字签名通过验证后,向所述被认证方确认所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥,包括:
接收所述被认证方节点发送的验证信息,以及被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第三数字签名;所述验证信息是所述被认证方节点根据预设的信息生成规则生成的,所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
验证所述验证信息是否是按照所述信息生成规则生成的;
当所述验证信息是按照所述信息生成规则生成的时,根据所述被认证方节点的公钥对所述第三数字签名进行验证;
当所述第三数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
4.根据权利要求1所述的方法,其特征在于,当所述身份证明发布节点存在上一级身份证明发布节点时,所述根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,包括:
从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,所述身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的。
5.根据权利要求1所述的方法,其特征在于,所述在所述第一数字签名通过验证后,在验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥之前,还包括:
在所述第一数字签名通过验证后,从所述区块链中获取上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
7.一种基于区块链的身份认证方法,其特征在于,应用于被认证方节点,所述方法包括:
向认证方发送认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
在所述认证方节点确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息、所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证;
当所述认证方节点确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,所述被认证方节点通过身份认证。
8.根据权利要求7所述的方法,其特征在于,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:
在所述第一数字签名通过所述认证方节点的验证后,接收所述认证方节点发送的验证信息;
根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第二数字签名;
向所述认证方节点发送所述第二数字签名,当所述第二数字签名通过所述认证方的验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
9.根据权利要求7所述的方法,其特征在于,所述在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证,包括:
在所述第一数字签名通过所述认证方节点的验证后,根据预设的信息生成规则生成验证信息;所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第三数字签名;
向所述认证方节点发送所述验证信息以及所述第三数字签名;
当所述认证方节点确认所述验证信息是按照所述信息生成规则生成的,并且所述认证方节点根据所述被认证方节点的公钥对所述第三数字签名进行的验证通过验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
10.根据权利要求7所述的方法,其特征在于,所述身份证明发布节点对所述被认证方节点的身份信息和所述第一数字签名写入所述区块链的方法包括:
向所述区块链写入身份证明请求,所述身份证明请求中包括所述被认证方节点的身份信息,用于所述身份证明发布节点在所述区块链中确认所述被认证方节点的身份信息,并根据所述身份证明发布节点的私钥对所述被认证方节点的身份信息进行数字签名得到所述第一数字签名,并将所述第一数字签名写入所述区块链。
11.根据权利要求7所述的方法,其特征在于,在所述身份证明发布节点向所述区块链写入用于撤销所述第一数字签名的撤销证明后,所述被认证方节点的所述第一数字签名被撤销,所述撤销证明中包括对所述第一数字签名的撤销说明,以及通过所述身份证明发布节点的私钥对所述撤销说明进行数字签名得到第五数字签名。
12.根据权利要求7-11任一项所述的方法,其特征在于,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
13.一种基于区块链的身份认证装置,其特征在于,应用于认证方节点,所述装置包括:
接收模块,用于接收被认证方节点发送的认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
第一验证模块,用于在确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息,以及所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中时,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证;所述身份证明发布节点的公钥是根据所述身份证明发布节点的身份信息获取的;
第二验证模块,用于在所述第一数字签名通过验证后,验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥;所述被认证方节点的公钥是根据所述被认证方节点的身份信息获取的;
确定模块,用于当确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,确定所述被认证方节点通过身份认证。
14.根据权利要求13所述的装置,其特征在于,所述第二验证模块包括:
发送子模块,用于在所述第一数字签名通过验证后,向所述被认证方节点发送验证信息;
接收子模块,用于接收所述被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第二数字签名;
验证子模块,用于根据所述被认证方节点的公钥对所述第二数字签名进行验证;
确认子模块,用于确定当所述第二数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
15.根据权利要求13所述的装置,其特征在于,所述第二验证模块包括:
接收子模块,用于接收所述被认证方节点发送的验证信息,以及被认证方节点根据所述被认证方节点的私钥对所述验证信息进行数字签名得到的第三数字签名;所述验证信息是所述被认证方节点根据预设的信息生成规则生成的,所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
信息验证子模块,用于验证所述验证信息是否是按照所述信息生成规则生成的;
签名验证子模块,用于当所述验证信息是按照所述信息生成规则生成的时,根据所述被认证方节点的公钥对所述第三数字签名进行验证;
确认子模块,用于当所述第三数字签名通过验证时,确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥。
16.根据权利要求13所述的装置,其特征在于,当所述身份证明发布节点存在上一级身份证明发布节点时,所述第一验证模块用于:
从所述区块链中获取所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,根据所述身份证明发布节点的公钥对所述第一数字签名进行验证,所述身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的。
17.根据权利要求13所述的装置,其特征在于,所述第一验证模块用于:
在所述第一数字签名通过验证后,从所述区块链中获取上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名得到的第四数字签名;
根据所述上一级身份证明发布节点的公钥对所述第四数字签名进行验证;所述上一级身份证明发布节点的公钥是从所述区块链中获取的,或者是预先存储的;
在所述第四数字签名通过验证后,所述第二验证模块验证所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥。
18.根据权利要求13-17任一项所述的装置,其特征在于,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
19.一种基于区块链的身份认证装置,其特征在于,应用于被认证方节点,所述装置包括:
认证请求模块,用于向认证方发送认证请求,所述认证请求中包括所述被认证方节点的身份信息和身份证明发布节点的身份信息;
验证模块,用于在所述认证方节点确认所述被认证方节点的身份信息、所述身份证明发布节点的身份信息、所述身份证明发布节点对所述被认证方节点的身份信息进行数字签名得到的第一数字签名已写入区块链中,并且在所述第一数字签名通过所述认证方节点的验证后,与所述认证方节点进行所述被认证方是否掌握与所述被认证方节点的公钥对应的私钥的验证;当所述认证方节点确认所述被认证方已掌握与所述被认证方节点的公钥对应的私钥时,所述被认证方节点通过身份认证。
20.根据权利要求19所述的装置,其特征在于,所述验证模块包括:
接收子模块,用于在所述第一数字签名通过所述认证方节点的验证后,接收所述认证方节点发送的验证信息;
签名子模块,用于根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第二数字签名;
发送子模块,用于向所述认证方节点发送所述第二数字签名,当所述第二数字签名通过所述认证方的验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
21.根据权利要求19所述的装置,其特征在于,所述验证模块包括:
信息生成子模块,用于在所述第一数字签名通过所述认证方节点的验证后,根据预设的信息生成规则生成验证信息;所述信息生成规则预设置在所述被认证方节点和所述认证方节点;
签名子模块,用于根据所述被认证方节点的私钥对所述验证信息进行数字签名得到第三数字签名;
发送子模块,用于向所述认证方节点发送所述验证信息以及所述第三数字签名;当所述认证方节点确认所述验证信息是按照所述信息生成规则生成的,并且所述认证方节点根据所述被认证方节点的公钥对所述第三数字签名进行的验证通过验证时,所述被认证方节点被确认已掌握与所述被认证方节点的公钥对应的私钥。
22.根据权利要求19所述的装置,其特征在于,所述装置还包括:身份证明请求模块,用于:
向所述区块链写入身份证明请求,所述身份证明请求中包括所述被认证方节点的身份信息,用于所述身份证明发布节点在所述区块链中确认所述被认证方节点的身份信息,并根据所述身份证明发布节点的私钥对所述被认证方节点的身份信息进行数字签名得到所述第一数字签名,并将所述第一数字签名写入所述区块链。
23.根据权利要求19所述的装置,其特征在于,在所述身份证明发布节点向所述区块链写入用于撤销所述第一数字签名的撤销证明后,所述被认证方节点的所述第一数字签名被撤销,所述撤销证明中包括对所述第一数字签名的撤销说明,以及通过所述身份证明发布节点的私钥对所述撤销说明进行数字签名得到第五数字签名。
24.根据权利要求19-23任一项所述的装置,其特征在于,所述被认证方节点的身份信息包括所述被认证方节点的账户地址或者所述被认证方节点的公钥,所述被认证方节点的账户地址是根据所述被认证方节点的公钥获取的;所述身份证明发布节点的身份信息包括:所述身份证明发布节点的账户地址或者所述身份证明发布节点的公钥,所述身份证明发布节点的账户地址是根据所述身份证明发布节点的公钥获取的。
25.一种非临时性计算机可读存储介质,其特征在于,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行权利要求1至6中任一项所述的方法。
26.一种用户节点,其特征在于,所述用户节点包括:
权利要求25中所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
27.一种非临时性计算机可读存储介质,其特征在于,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行权利要求7至12中任一项所述的方法。
28.一种用户节点,其特征在于,所述用户节点包括:
权利要求27中所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
29.一种身份认证系统,其特征在于,所述系统包括:
区块链;
至少一个权利要求26所述的用户节点,作为认证方节点;
至少一个权利要求28所述的用户节点,作为被认证方节点;以及
至少一个身份证明发布节点;
其中,所述区块链,所述至少一个权利要求26所述的用户节点,所述至少一个权利要求28所述的用户节点以及所述至少一个身份证明发布节点属于同一区块链网络。
30.根据权利要求29所述的系统,其特征在于,所述至少一个身份证明发布节点为一个身份证明发布节点,所述身份证明发布节点用于向所述区块链发布第一用户节点的身份证明;所述第一用户节点为任一用户节点;
其中,所述身份证明发布节点向所述区块链发布第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链。
31.根据权利要求29所述的系统,其特征在于,所述至少一个身份证明发布节点至少包括一个身份证明发布节点和所述身份证明发布节点的上一级身份证明发布节点,所述身份证明发布节点用于向所述区块链发布第一用户节点的身份证明,所述第一用户节点为任一用户节点,所述上一级身份证明发布节点用于向所述区块链发布所述身份证明发布节点的身份证明;
其中,所述身份证明发布节点向所述区块链发布第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链;
所述上一级身份证明发布节点向所述区块链发布所述身份证明发布节点的身份证明包括:所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。
32.根据权利要求29所述的系统,其特征在于,所述系统包括多个身份证明发布子系统,每个身份证明发布子系统中包括至少一个身份证明发布节点和至少一个用户节点;
其中,当第一身份证明发布子系统中包括一个身份证明发布节点时,所述身份证明发布节点用于向所述区块链发布所述第一身份证明发布子系统的第一用户节点的身份证明,所述第一用户节点为所述第一身份证明发布子系统中的任一用户节点;所述第一身份证明发布子系统为所述多个身份证明发布子系统中的任一身份证明发布子系统;
当第一身份证明发布子系统中至少包括一个身份证明发布节点和所述身份证明发布节点的上一级身份证明发布节点,所述身份证明发布节点用于向所述区块链发布所述第一身份证明发布子系统的所述第一用户节点的身份证明,所述上一级身份证明发布节点用于向所述区块链发布所述身份证明发布节点的身份证明;
其中,所述身份证明发布节点向所述区块链发布所述第一身份证明发布子系统的所述第一用户节点的身份证明包括:所述身份证明发布节点在所述区块链中确认所述第一用户节点的身份信息,并根据所述身份证明发布节点的私钥对所述第一用户节点的身份信息进行数字签名,并将得到的数字签名写入所述区块链;
所述上一级身份证明发布节点向所述区块链发布所述身份证明发布节点的身份证明包括:所述上一级身份证明节点根据所述上一级身份证明节点的私钥对所述身份证明发布节点的公钥进行数字签名,并将得到的数字签名写入所述区块链。
CN201680003232.XA 2016-09-18 2016-09-18 基于区块链的身份认证方法、装置、节点及系统 Active CN107079037B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/099254 WO2018049656A1 (zh) 2016-09-18 2016-09-18 基于区块链的身份认证方法、装置、节点及系统

Publications (2)

Publication Number Publication Date
CN107079037A CN107079037A (zh) 2017-08-18
CN107079037B true CN107079037B (zh) 2018-10-23

Family

ID=59623775

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680003232.XA Active CN107079037B (zh) 2016-09-18 2016-09-18 基于区块链的身份认证方法、装置、节点及系统

Country Status (5)

Country Link
US (1) US10581615B2 (zh)
EP (1) EP3486817B1 (zh)
JP (1) JP6684930B2 (zh)
CN (1) CN107079037B (zh)
WO (1) WO2018049656A1 (zh)

Families Citing this family (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180343120A1 (en) * 2016-10-26 2018-11-29 Black Gold Coin, Inc. Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features
US10749681B2 (en) * 2016-10-26 2020-08-18 Black Gold Coin, Inc. Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features
US11115418B2 (en) * 2016-12-23 2021-09-07 Cloudminds (Shanghai) Robotics Co., Ltd. Registration and authorization method device and system
US10693636B2 (en) * 2017-03-17 2020-06-23 Guigen Xia Authenticated network
EP3379447B1 (de) * 2017-03-22 2022-04-27 Siemens Aktiengesellschaft Verfahren und vorrichtung zum manipulationssicheren speichern von informationen bezüglich objektbezogener massnahmen
US10762479B2 (en) * 2017-04-05 2020-09-01 Samsung Sds Co., Ltd. Method and system for processing blockchain-based real-time transaction
WO2018201147A2 (en) * 2017-04-28 2018-11-01 Neuromesh Inc. Methods, apparatus, and systems for controlling internet-connected devices having embedded systems with dedicated functions
CN107395665B (zh) * 2017-05-22 2020-04-24 创新先进技术有限公司 一种区块链业务受理及业务共识方法及装置
CN107360001B (zh) 2017-07-26 2021-12-14 创新先进技术有限公司 一种数字证书管理方法、装置和系统
CN107734502B (zh) * 2017-09-07 2020-02-21 京信通信系统(中国)有限公司 基于区块链的微基站通信管理方法、系统及设备
CN107453870A (zh) * 2017-09-12 2017-12-08 京信通信系统(中国)有限公司 基于区块链的移动终端认证管理方法、装置及相应的移动终端
CN107579817A (zh) * 2017-09-12 2018-01-12 广州广电运通金融电子股份有限公司 基于区块链的用户身份验证方法、装置及系统
CN108243182B (zh) * 2017-10-26 2020-08-18 招商银行股份有限公司 区块链的管理授权方法、子管理端、根管理端及存储介质
WO2019093963A1 (zh) * 2017-11-10 2019-05-16 华为国际有限公司 基于异构身份的交互系统及方法
CN107682378A (zh) * 2017-11-22 2018-02-09 国民认证科技(北京)有限公司 一种基于区块链的实名认证方法及系统
CN108009825A (zh) * 2017-11-29 2018-05-08 江苏安凰领御科技有限公司 一种基于区块链技术的身份管理系统及方法
CN108702622A (zh) * 2017-11-30 2018-10-23 深圳前海达闼云端智能科技有限公司 移动网络接入认证方法、装置、存储介质及区块链节点
WO2019111506A1 (ja) * 2017-12-04 2019-06-13 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
CN108055258B (zh) * 2017-12-08 2021-02-05 苏州朗润创新知识产权运营有限公司 一种身份数据管理方法、系统和计算机可读存储介质
WO2019127153A1 (zh) * 2017-12-27 2019-07-04 深圳达闼科技控股有限公司 区块生成方法、装置、存储介质、区块链网络
CN108234135B (zh) * 2017-12-29 2021-02-26 苏州朗润创新知识产权运营有限公司 一种业务认证方法、系统和计算机可读存储介质
CN108492180B (zh) * 2018-02-14 2020-11-24 创新先进技术有限公司 资产管理方法及装置、电子设备
CN108416589A (zh) * 2018-03-08 2018-08-17 深圳前海微众银行股份有限公司 区块链节点的连接方法、系统及计算机可读存储介质
GB201804479D0 (en) * 2018-03-21 2018-05-02 Nchain Holdings Ltd Computer-implemented system and method
CN110311883B (zh) * 2018-03-27 2020-11-10 华为技术有限公司 身份管理方法、设备、通信网络及存储介质
EP3779703B1 (en) * 2018-04-02 2022-09-21 Sony Group Corporation Information processing device, information processing method, and program
CN108564692B (zh) * 2018-04-10 2021-04-13 周伟 一种基于区块链的解锁验证方法以及解锁系统
WO2019204094A1 (en) * 2018-04-19 2019-10-24 Walmart Apollo, Llc Systems and methods for decentralized content distribution
CN108777675B (zh) * 2018-04-26 2020-04-14 平安科技(深圳)有限公司 电子装置、基于区块链的身份验证方法和计算机存储介质
CN110475249B (zh) 2018-05-10 2021-08-20 华为技术有限公司 一种认证方法、相关设备及系统
CN108809953B (zh) * 2018-05-22 2020-09-01 飞天诚信科技股份有限公司 一种基于区块链的匿名身份认证的方法及装置
CN108830983B (zh) * 2018-05-29 2021-03-02 广州足迹体育文化发展有限公司 一种基于区块链的门禁系统及其工作方法
CN108684041B (zh) * 2018-05-31 2021-06-11 上海邑游网络科技有限公司 登录认证的系统和方法
US10855667B2 (en) 2018-06-01 2020-12-01 Paypal, Inc. Using keys with targeted access to the blockchain to verify and authenticate identity
CN108881252B (zh) * 2018-06-28 2021-06-01 腾讯科技(深圳)有限公司 身份认证数据处理方法、装置、计算机设备和存储介质
CN108881287A (zh) * 2018-07-18 2018-11-23 电子科技大学 一种基于区块链的物联网节点身份认证方法
CN109150836A (zh) * 2018-07-21 2019-01-04 江苏飞搏软件股份有限公司 区块链实体身份管理系统及方法
CN108650279A (zh) * 2018-07-24 2018-10-12 孔德键 网络信息安全获取方法及网络交易方法及网络安全系统
CN109167763B (zh) * 2018-08-16 2021-05-28 国网浙江省电力有限公司电力科学研究院 一种基于区块链的电力行业电子数据保全方法及系统
US11140177B2 (en) * 2018-08-31 2021-10-05 Cisco Technology, Inc. Distributed data authentication and validation using blockchain
CN109194651B (zh) * 2018-09-04 2021-10-19 深信服科技股份有限公司 一种身份认证方法、装置、设备及存储介质
WO2020050390A1 (ja) * 2018-09-07 2020-03-12 日本電信電話株式会社 権利者端末、利用者端末、権利者プログラム、利用者プログラム、コンテンツ利用システムおよびコンテンツ利用方法
CN109308658A (zh) * 2018-09-11 2019-02-05 北京永恒纪元科技有限公司 一种高效安全的去中心化资产托管清算平台系统
CN109218319A (zh) * 2018-09-21 2019-01-15 四川长虹电器股份有限公司 一种基于区块链的身份认证系统及认证方法
CN109117674A (zh) * 2018-09-25 2019-01-01 深圳市元征科技股份有限公司 一种客户端验证加密方法、系统、设备及计算机介质
CN109067801B (zh) * 2018-09-29 2021-09-03 平安科技(深圳)有限公司 一种身份认证方法、身份认证装置及计算机可读介质
CN111600716B (zh) * 2018-10-26 2023-09-29 创新先进技术有限公司 认证方法及装置、电子设备
CN109451011B (zh) * 2018-10-31 2021-10-22 维沃移动通信有限公司 一种基于区块链的信息存储方法及移动终端
CN112381646A (zh) * 2018-10-31 2021-02-19 创新先进技术有限公司 基于区块链的隐私交易及其应用方法和装置
CN110046482A (zh) * 2018-12-25 2019-07-23 阿里巴巴集团控股有限公司 身份核实方法及其系统
CN111400727B (zh) * 2019-01-03 2023-08-22 菜鸟智能物流控股有限公司 区块链的访问控制方法和装置以及电子设备
CN110046996B (zh) * 2019-01-18 2020-09-15 阿里巴巴集团控股有限公司 数据处理方法和装置
JP6811339B2 (ja) 2019-03-27 2021-01-13 アドバンスド ニュー テクノロジーズ カンパニー リミテッド 高可用な高信頼実行環境を使用したブロックチェーンネットワークのためのパブリックデータの読み出し
CN115967534A (zh) 2019-03-27 2023-04-14 创新先进技术有限公司 使用可信执行环境检索区块链网络的公开数据
EP3910907B1 (en) 2019-03-29 2023-08-02 Advanced New Technologies Co., Ltd. Retrieving access data for blockchain networks using highly available trusted execution environments
CN110035081A (zh) * 2019-04-11 2019-07-19 中国电子科技集团公司电子科学研究院 一种基于区块链的发布/订阅体系架构
CN110223075B (zh) * 2019-05-22 2022-11-15 深圳壹账通智能科技有限公司 身份认证方法、装置、计算机设备和存储介质
CN110210209A (zh) * 2019-06-06 2019-09-06 中星技术股份有限公司 管理摄像设备的方法和装置
FR3099017B1 (fr) * 2019-07-16 2021-08-06 Idemia Identity & Security France Procédé de vérification d’une transaction dans une base de données de type chaîne de blocs
CN110535659B (zh) * 2019-09-03 2020-11-03 北京海益同展信息科技有限公司 用于处理数据请求的方法、装置、电子设备和计算机可读介质
CN112446701B (zh) * 2019-09-03 2024-04-05 上海唯链信息科技有限公司 一种基于区块链的身份认证方法、设备和存储装置
CN110493007B (zh) * 2019-09-06 2021-07-13 腾讯科技(深圳)有限公司 一种基于区块链的信息验证方法、装置、设备及存储介质
CN110602083B (zh) * 2019-09-10 2022-04-29 上海黔易数据科技有限公司 一种数字身份认证数据的安全传输与存储方法
CN110601853B (zh) * 2019-09-17 2021-05-11 腾讯科技(深圳)有限公司 一种区块链私钥生成方法以及设备
CN110851857B (zh) * 2019-10-14 2022-07-01 上海唯链信息科技有限公司 一种在区块链上实现身份背书的方法及装置
CN111182020B (zh) * 2019-10-17 2021-12-07 腾讯科技(深圳)有限公司 签章业务处理方法、装置、介质及电子设备
CN110990484B (zh) * 2019-11-27 2023-10-24 深圳前海环融联易信息科技服务有限公司 基于区块链的信息存储方法、系统、计算机设备及存储介质
CN111245600B (zh) * 2019-12-03 2022-12-16 江苏艾佳家居用品有限公司 基于区块链技术的鉴权认证方法和系统
CN110971408A (zh) * 2019-12-25 2020-04-07 上海沄界信息科技有限公司 基于区块链网络的tee节点认证方法及认证系统
CN111324881B (zh) * 2020-02-20 2020-10-30 铭数科技(青岛)有限公司 一种融合Kerberos认证服务器与区块链的数据安全分享系统及方法
CN111339188B (zh) * 2020-02-20 2023-10-31 百度在线网络技术(北京)有限公司 基于区块链的媒介内容处理方法、装置、设备和介质
CN113472521A (zh) * 2020-03-30 2021-10-01 山东浪潮质量链科技有限公司 基于区块链的实名数字身份管理方法、签名设备和验证设备
US11665159B2 (en) 2020-04-22 2023-05-30 Kyndryl, Inc. Secure resource access by amalgamated identities and distributed ledger
CN111737707B (zh) * 2020-05-14 2022-09-27 云南云烁巴克云科技有限公司 基于区块链的验证包生成、验证方法、服务器和电子设备
KR102537774B1 (ko) * 2020-07-30 2023-05-30 다퍼 랩스 인크. 기밀 지식의 특화된 증명을 제공하는 시스템들 및 방법들
US20220277278A1 (en) * 2021-03-01 2022-09-01 Entrust Corporation Personalized document processing system with subscription based functionality
CN113515756B (zh) * 2021-03-29 2023-05-09 中国雄安集团数字城市科技有限公司 基于区块链的高可信数字身份管理方法及系统
CN113271294A (zh) * 2021-04-25 2021-08-17 深圳前海华兆新能源有限公司 基于区块链技术的边缘计算网关身份认证方法
CN113507495B (zh) * 2021-05-31 2022-03-25 暨南大学 一种基于区块链的车载以太网络安全通信方法及系统
CN114598531B (zh) * 2022-03-10 2024-07-23 上海星图比特信息技术服务有限公司 身份认证方法及设备
CN114448735B (zh) * 2022-04-11 2022-06-17 江苏通付盾科技有限公司 基于点对点通信的区块链身份注册和验证方法、装置
CN114640475B (zh) * 2022-05-19 2022-09-06 广东省绿算技术有限公司 去中心化的身份认证方法、装置、计算机设备及存储介质
CN115567324B (zh) * 2022-11-24 2023-09-15 湖南天河国云科技有限公司 数据加密传输方法、系统、计算机设备和存储介质
CN116112187B (zh) * 2023-04-10 2023-07-14 山东海量信息技术研究院 一种远程证明方法、装置、设备及可读存储介质
CN118245093B (zh) * 2024-05-27 2024-08-30 北京比格大数据有限公司 授权客户端应用更新方法、装置、计算机设备和存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4323163B2 (ja) * 2002-11-25 2009-09-02 三菱電機株式会社 サーバ装置
JP2004355213A (ja) * 2003-05-28 2004-12-16 Nippon Telegr & Teleph Corp <Ntt> 属性認証装置、属性検証装置、および取引仲介装置
JP4770157B2 (ja) * 2004-11-18 2011-09-14 三菱電機株式会社 情報通信システム
CN104320262B (zh) * 2014-11-05 2017-07-21 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统
US20160162897A1 (en) * 2014-12-03 2016-06-09 The Filing Cabinet, LLC System and method for user authentication using crypto-currency transactions as access tokens
US20160164884A1 (en) * 2014-12-05 2016-06-09 Skuchain, Inc. Cryptographic verification of provenance in a supply chain
US9374373B1 (en) * 2015-02-03 2016-06-21 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Encryption techniques for improved sharing and distribution of encrypted content
US9436923B1 (en) 2015-02-26 2016-09-06 Skuchain, Inc. Tracking unitization occurring in a supply chain
US9967334B2 (en) * 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
US9870562B2 (en) * 2015-05-21 2018-01-16 Mastercard International Incorporated Method and system for integration of market exchange and issuer processing for blockchain-based transactions
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
US20180285879A1 (en) * 2015-10-17 2018-10-04 Banqu, Inc. Blockchain-based identity and transaction platform
CN105701372B (zh) * 2015-12-18 2019-04-09 布比(北京)网络技术有限公司 一种区块链身份构建及验证方法
CN105719172A (zh) 2016-01-19 2016-06-29 布比(北京)网络技术有限公司 一种信息发布方法及装置
CN105790954B (zh) 2016-03-02 2019-04-09 布比(北京)网络技术有限公司 一种构建电子证据的方法和系统

Also Published As

Publication number Publication date
CN107079037A (zh) 2017-08-18
WO2018049656A1 (zh) 2018-03-22
US20190288854A1 (en) 2019-09-19
EP3486817A1 (en) 2019-05-22
US10581615B2 (en) 2020-03-03
EP3486817B1 (en) 2020-11-11
JP2019519987A (ja) 2019-07-11
JP6684930B2 (ja) 2020-04-22
EP3486817A4 (en) 2019-09-11

Similar Documents

Publication Publication Date Title
CN107079037B (zh) 基于区块链的身份认证方法、装置、节点及系统
ES2308725T3 (es) Firmas de pregunta-respuesta y protocolos de seguridad de diffie-hellman.
JP5093350B2 (ja) 安全性が強化されたトラステッドネットワークコネクト方法
EP2905719A1 (en) Device and method certificate generation
CN105099707B (zh) 一种离线认证方法、服务器及系统
CN106330838B (zh) 一种动态签名方法及应用该方法的客户端和服务器
CN109981582A (zh) 一种基于区块链的物联网设备身份认证方法
CN101442411A (zh) 一种p2p网络中对等用户结点间的身份认证方法
CN1937498A (zh) 一种动态密码认证方法、系统及装置
KR101740956B1 (ko) 자체 인증 서명을 기반으로 하는 공공 감사 방법 및 시스템
CN110636051B (zh) 一种基于多用户ca数字证书的区块链交易方法
CN109302412A (zh) 基于CPK的VoIP通信处理方法、终端、服务器及存储介质
CN104901809B (zh) 基于口令和智能卡的远程认证协议方法
CN108737323A (zh) 一种数字签名方法、装置及系统
JP5980238B2 (ja) 認証方法、rfチップドキュメント、rfチップリーダー、及びコンピュータプログラム製品
CN105578464B (zh) 一种增强的wlan证书鉴别方法、装置及系统
CN109167771A (zh) 基于联盟链的鉴权方法、装置、设备及可读存储介质
CN108496194A (zh) 一种验证终端合法性的方法、服务端及系统
CN116996235B (zh) 联合建模的安全认证方法、装置及系统
CN110166471A (zh) 一种Portal认证方法及装置
CN108833381A (zh) 软件定义网络的可信连接方法及系统
CN106572066B (zh) 一种实体身份有效性验证方法及其装置
CN106572063B (zh) 一种多ttp参与的实体身份有效性验证方法及装置
CN106572065B (zh) 一种多ttp参与的实体身份有效性验证方法及装置
CN109902515A (zh) 一种真实数据验证方法及系统

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
TR01 Transfer of patent right

Effective date of registration: 20210304

Address after: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Patentee after: Dalu Robot Co.,Ltd.

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: Shenzhen Qianhaida Yunyun Intelligent Technology Co.,Ltd.

TR01 Transfer of patent right
CP03 Change of name, title or address

Address after: 201111 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Patentee after: Dayu robot Co.,Ltd.

Address before: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Patentee before: Dalu Robot Co.,Ltd.

CP03 Change of name, title or address