CN112866241A - 一种基于区块链的数字身份更新方法、设备及存储介质 - Google Patents

一种基于区块链的数字身份更新方法、设备及存储介质 Download PDF

Info

Publication number
CN112866241A
CN112866241A CN202110057187.9A CN202110057187A CN112866241A CN 112866241 A CN112866241 A CN 112866241A CN 202110057187 A CN202110057187 A CN 202110057187A CN 112866241 A CN112866241 A CN 112866241A
Authority
CN
China
Prior art keywords
digital identity
hash value
updated
value corresponding
public key
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.)
Pending
Application number
CN202110057187.9A
Other languages
English (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.)
Mrray Chengdu Technology Co ltd
Original Assignee
Mrray Chengdu Technology Co ltd
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 Mrray Chengdu Technology Co ltd filed Critical Mrray Chengdu Technology Co ltd
Priority to CN202110057187.9A priority Critical patent/CN112866241A/zh
Publication of CN112866241A publication Critical patent/CN112866241A/zh
Pending legal-status Critical Current

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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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
    • 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/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/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
    • H04L9/3252Cryptographic 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 using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于区块链的数字身份更新方法、设备及存储介质,该方法中,由于客户端发送的更新请求采用拟更新数字身份的当前私钥进行签名,只有验签通过才能对拟更新数字身份进行更新,从而保证数字身份的持有者才能对数字身份进行更新;同时,由于写入区块链上的是数字身份对应公钥的Hash值,能够隐藏数字身份的公钥,从而提高数字身份更新过程中的安全性。

Description

一种基于区块链的数字身份更新方法、设备及存储介质
技术领域
本发明涉及区块链技术,尤其涉及一种基于区块链的数字身份更新方法、设备及存储介质。
背景技术
数字化活动的基础,就是用户的数字化身份。只有保证用户数字身份的真实有效,其所关联的一系列活动、交易等的信息数据才是真实有效的。所以,发展数字身份系统是必然的,而区块链技术凭借其去中心化、多方共识、难以篡改、公开透明、可追溯等特征,在一定程度上也提供了一个相对可信的解决方案。
中国专利申请CN108768933A公开了一种区块链平台上自主可监管数字身份认证系统,,该系统主要包括终端、区块链数字身份平台、第三方平台,第三方平台向终端发起属性信息认证请求,由终端对该属性信息认证请求进行验证并授权,得到请求授权信息,并将其传输至区块链数字身份平台;区块链数字身份平台根据该请求授权信息,查询区块链上的属性证书,获得第三方平台待认证属性的认证信息,并将该认证信息传输至第三方平台,供其对待认证的属性进行认证,从而实现通过查询区块链上的属性证书而获得终端的数字身份信息;但是,由于区块链数字身份平台上的属性证书是由签发平台在审核通过终端属性证书的申请后,公布至该区块链数字身份平台的,使该系统严重依赖签发平台的可信度,且难以从根本上提升数字身份认证的透明度与安全性。
因此,需要一种具有高透明度、高安全性的基于区块链的数字身份更新方法。
发明内容
鉴于以上所述现有技术的不足,本发明的目的在于:提供一种基于区块链的数字身份更新方法,客户端发送的更新请求采用拟更新数字身份的当前私钥进行签名,能够保证数字身份的持有者才能对数字身份进行更新;同时,由于写入区块链上的是数字身份对应公钥的Hash值,能够隐藏数字身份的公钥,从而提高数字身份更新过程的安全性。
为实现上述发明目的,本发明提供以下技术方案:
一种基于区块链的数字身份更新方法,其应用于区块链节点,所述方法包括以下步骤:
S1:接收客户端发送的更新请求;其中,所述更新请求包括:拟更新数字身份的新公钥对应的Hash值、拟更新数字身份的当前公钥以及用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息;而且,所述更新请求采用拟更新数字身份的当前私钥签名;
S2:查询哈希表中是否已记录所述新公钥对应的Hash值;其中,若未记录,则根据所述索引信息,查询出拟更新数字身份对应的Hash值,并继续执行步骤S3,否则,拒绝所述更新请求;
S3:验证拟更新数字身份对应的Hash值与根据所述当前公钥而计算出的Hash值是否一致;若一致,则继续执行步骤S4,否则,拒绝所述更新请求;
S4:根据所述当前公钥,对所述更新请求进行验签;若验签通过,则继续执行步骤S5,否则,拒绝所述更新请求;
S5:所述新公钥对应的Hash值写入区块链,以完成对拟更新数字身份的更新,并将所述新公钥对应的Hash值更新至所述哈希表。
根据一种具体的实施方式,本发明基于区块链的数字身份更新方法中,所述更新请求为为序列化对象;而且,所述序列化对象包括:对所述新公钥对应的Hash值、所述当前公钥以及所述索引信息进行序列化而得到的第一序列化结果,以及对所述第一序列化结果的签名数据进行序列化而得到的第二序列化结果;其中,所述签名数据由所述当前私钥对所述第一序列化结果进行签名而得到。
进一步地,所述更新请求还包括工作量证明参数;而且,所述第一序列化结果通过对所述新公钥对应的Hash值、所述当前公钥、所述索引信息以及所述工作量证明参数进行序列化而得到;所述工作量证明参数用于调整所述第一序列化结果,使根据所述第一序列化结果计算出的Hash值满足工作量证明条件。
再进一步地,所述工作量证明条件为由所述第一序列化结果计算出的Hash值的前N位数值为零;其中,N为设定值。
根据一种具体的实施方式,本发明基于区块链的数字身份更新方法中,步骤S1还包括:计算所述第一序列化结果对应Hash值,并判断所述第一序列化结果对应Hash值是否满足所述工作量证明条件;若满足,则继续执行步骤S2,否则,拒绝所述更新请求。
根据一种具体的实施方式,本发明基于区块链的数字身份更新方法中,步骤S5还包括:将所述新公钥对应的Hash值写入区块链后,将用于指示更新后数字身份对应的Hash值在区块链上的记录位置的索引信息发送所述客户端。
根据一种具体的实施方式,本发明基于区块链的数字身份更新方法中,通过公私钥对生成器生成公私钥对,且所述公私钥对生成器指定椭圆曲线加密算法并以安全随机数为随机源。
根据一种具体的实施方式,本发明基于区块链的数字身份更新方法中,采用SHA-256哈希运算计算Hash值。
本发明的另一发明,还提供一种区块链节点设备,其包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,实现本发明基于区块链的数字身份更新方法。
本发明的另一发明,还提供一种计算机存储介质,所述计算机存储介质中存储有程序指令,所述程序指令被执行时,用于实现本发明基于区块链的数字身份更新方法。
与现有技术相比,本发明的有益效果:
1、本发明基于区块链的数字身份更新方法,由于客户端发送的更新请求采用拟更新数字身份的当前私钥进行签名,只有验签通过才能对拟更新数字身份进行更新,从而保证数字身份的持有者才能对数字身份进行更新;同时,由于写入区块链上的是数字身份对应公钥的Hash值,能够隐藏数字身份的公钥,从而提高数字身份更新过程中的安全性。
2、本发明基于区块链的数字身份更新方法中,由于更新请求序列化对象对应的Hash值需要满足工作量证明条件,才可得到一个可使用的更新请求,以发起一次数字身份的更新,所以客户端需要进行大量的迭代运算,来确定工作量证明参数;而区块链节点只需进行一次运算验证即可,因此,本发明针对攻击者使用粉尘攻击阻塞数字身份更新的行为,在客户端可承受的运算代价基础上,又极大地能够影响系统正常工作的运算代价,从而保证数字身份更新的安全性。
附图说明
图1为本发明区块链节点与客户端的交互流程示意图;
图2为本发明在一种实施例中区块链节点与客户端的交互流程示意图;
图3为本发明区块链节点与客户端的交互架构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
本发明中,用户的数字身份以公钥的Hash值的形式存储在区块链上,而用户通过持有私钥来控制数字身份的使用。如图1所示,以客户端向区块链节点请求更新数字身份的过程,来说明本发明基于区块链的数字身份更新方法。
在客户端这一侧,首先需要生成更新请求,该更新请求包括:拟更新数字身份的新公钥对应的Hash值、拟更新数字身份的当前公钥以及用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息。而且,更新请求采用拟更新数字身份的当前私钥进行签名,同时,签名算法采用基于椭圆曲线的签名算法ECDSA。
在生成更新请求时,客户端已有拟更新数字身份的当前公钥以及索引信息,只需要生成拟更新数字身份的新的公私钥对即可,在实施时,客户端对通过公私钥对生成器生成公私钥对,且该公私钥对生成器指定椭圆曲线加密算法并以安全随机数为随机源,而安全随机数使用符合密码学安全标准的随机数生成器SecureRandom类生成。生成新的公私钥对后,新私钥由用户控制,而新公钥则通过哈希计算得到对应的Hash值。
同时,更新请求为序列化对象,即该序列化对象包括:通过对新公钥对应的Hash值、当前公钥以及索引信息进行序列化而得到的第一序列化结果,以及通过对第一序列化结果的签名数据进行序列化而得到的第二序列化结果。其中,签名数据由当前私钥对第一序列化结果进行签名而得到。在实施时,该序列化对象中的第二序列化结果通过字符串连接符连接在第一序列化结果之后。
实际上,序列化是将对象的状态信息转换为可以存储或传输的形式的过程,所以,客户端向区块链节点发送的更新请求为序列化对象,对应地,区块链节点需要通过反序列化来还原序列化对象,得到原始的数据或信息。
为了保证反序列化能够得到原始的数据或信息,更新请求被定义为包括:Hash字段、prevID字段和prevPubKey字段。其中,Hash字段用于写入拟更新数字身份的新公钥对应的Hash值,prevID字段用于写入用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息,以及prevPubKey字段用于写入拟更新数字身份的当前公钥。
当客户端生成更新请求后,则将该更新请求发送至区块链节点。具体的,客户端配置有区块链SDK可以与区块链节点进行数据交互;而在区块链节点这一侧,需要按照以下步骤进行工作:
S1:接收客户端发送的更新请求;在接收到客户端发送的更新请求后,由于更新请求为序列化对象;因此,通过对更新请求进行反序列化,并结合更新请求定义的字段,可得到拟更新数字身份的新公钥对应的Hash值、拟更新数字身份的当前公钥、用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息,以及签名数据。
S2:查询哈希表中是否已记录所述新公钥对应的Hash值;其中,若未记录,则根据所述索引信息,查询出拟更新数字身份对应的Hash值,并继续执行步骤S3,否则,拒绝所述更新请求。
具体的,区块链节点上设置的哈希表用于记录所有已注册数字身份的公钥的Hash值。而为了避免数字身份更新时出现数字身份重复,使用Contains函数查询该哈希表中是否已记录拟更新数字身份的新公钥对应的Hash值。
S3:根据步骤S1中得到的索引信息,查询到存储在区块链上的拟更新数字身份对应的Hash值,并验证拟更新数字身份对应的Hash值与根据步骤S1中得到的当前公钥而计算出的Hash值是否一致;若一致,则继续执行步骤S4,否则,拒绝所述更新请求。
S4:根据所述当前公钥,对所述更新请求进行验签;若验签通过,则继续执行步骤S5,否则,拒绝所述更新请求;具体的,结合当前公钥、签名数据以及更新请求本身,并使用ECDSA验签算法进行验签。如果验签不通过,则表明数字身份更新过程受到攻击或者信息被篡改,则拒绝更新请求,保证数字身份更新的安全性。
S5:所述新公钥对应的Hash值写入区块链,以完成对拟更新数字身份的更新,并将新公钥对应的Hash值更新至哈希表。
因此,本发明基于区块链的数字身份更新方法,由于客户端发送的更新请求采用拟更新数字身份的当前私钥进行签名,只有验签通过才能对拟更新数字身份进行更新,从而保证数字身份的持有者才能对数字身份进行更新;同时,由于写入区块链上的是数字身份对应公钥的Hash值,能够隐藏数字身份的公钥,从而提高数字身份更新过程中的安全性。
如图2所示,在客户端这一侧,其生成的该更新请求除了包括:拟更新数字身份的新公钥对应的Hash值、拟更新数字身份的当前公钥以及用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息。还包括:工作量证明参数。
因此,更新请求被定义为包括:Hash字段、prevID字段、prevPubKey字段和nonce字段。其中,Hash字段用于写入拟更新数字身份的新公钥对应的Hash值,prevID字段用于写入用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息,以及prevPubKey字段用于写入拟更新数字身份的当前公钥,nonce字段用于写入工作量证明参数。
同时,由于更新请求为序列化对象,那么在本实施例中,该序列化对象的第一序列化结果通过对新公钥对应的Hash值、所述当前公钥、所述索引信息以及所述工作量证明参数进行序列化而得到。而且,客户端需要在根据序列化对象而计算出的Hash值满足工作量证明条件时,才能生成一个可使用的更新请求。因此,设置工作量证明参数用于调整所述第一序列化结果,使根据第一序列化结果计算出的Hash值满足工作量证明条件。
所以,在生成更新请求时,首先配置工作量证明参数为初始值,然后进行迭代运算,每次迭代运算中,需要计算一次相应第一序列化结果象的Hash值,并判断该Hash值是否满足工作量证明条件,若不满足,则更新工作量证明参数,即数值加一;若满足,则将当前的工作量证明参数写入更新请求的nonce段。
本发明中,所述工作量证明条件为由所述第一序列化结果计算出的Hash值的前N位数值为零;其中,N为设定值。换言之,被判断是否满足工作量证明条件的Hash值小于某目标值即可。
那么,对于客户端而言,需要生成的更新请求,必须计算出满足工作量证明条件的更新请求,具体表达式如下:
DIDStr=Serislize(DID)
Hash(DIDStr)<Taraget
其中,DIDStr表示序列化对象的第一序列化结果,Hash(DIDStr)表示第一序列化结果对应的Hash值。假如设定N为7,则目标值为:0000000XXXXXX…XXXXX,则以初始值为0计算开始,需要进行约为2^7次运算,才可得到一个可使用的更新请求,以发起一次数字身份的更新。
在本实施例中,对于区块链节点这一侧,接收到客户端发送的更新请求后,由于该更新请求为序列化对象,因此,步骤S1还包括:计算更新请求的第一序列化结果对应Hash值,并判断第一序列化结果对应Hash值是否满足工作量证明条件;若满足,则继续执行步骤S2,否则,拒绝所述更新请求。
本发明中,由于更新请求序列化对象对应的Hash值需要满足工作量证明条件,才可得到一个可使用的更新请求,以发起一次数字身份的更新,所以客户端需要进行大量的迭代运算,来确定工作量证明参数;而区块链节点只需进行一次运算验证即可,因此,本发明针对攻击者使用粉尘攻击阻塞数字身份更新的行为,在客户端可承受的运算代价基础上,又极大地能够影响系统正常工作的运算代价,从而保证数字身份更新的安全性。
在一些实施例中,若区块链节点拒绝更新请求,则发送相应的提示至客户端。而且,本发明基于区块链的数字身份更新方法中,步骤S5还包括:将所述新公钥对应的Hash值写入区块链后,将用于指示更新后数字身份对应的Hash值在区块链上的记录位置的索引信息发送所述客户端。如此,用户便可通过索引信息进行查询或者验证等操作,将数字身份应用到各种身份认证的场景中。
本发明基于区块链的数字身份更新方法中,在实施时采用SHA-256哈希运算计算Hash值。也可采用其它类型的哈希运算,如MD4,MD5。
本发明基于区块链的数字身份更新方法中,在实施时,将公钥的Hash至写入区块链的过程包括区块生成过程和区块验证过程。具体的,在生成过程中采用BlockGen算法,其输入是当前区块链末端的最新区块,以及用户提交的拟更新数字身份的新公钥的Hash值,其输出是合法的新的区块。其中,新区块中的index字段赋值为前驱区块的index值,previoousHash字段赋值为前驱区块的哈希值,hash字段赋值为当前区块序列化之后的SHA-256哈希值。
而在区块验证过程中采用BlockAuth算法,其输入为新生成的区块,使用BlockAuth算法验证区块的合法性,验证新区块的index,previousHash,以及hash字段的值是否合法。如果区块中包含多个数字身份,则需要验证每条去中心化数字身份信息是否合法,若都合法,则通过区块校验输出校验成功,否则输出校验失败。
另外,在一些具体的应用中,如用户具体的隐私信息的存储与保护,可将本发明的更新请求定义为还包括URL字段,URL字段用于写入一个统一资源定位符URL,该统一资源定位符URL指向一个由用户控制的或者用户信任的具有访问控制结构的存储设施,该存储设施用于存放用户的隐私信息。
如图3所示,本发明区块链节点与客户端的交互架构,其中,区块链网络100中的区块链节点上配置有服务端200,该服务端200作为一个子系统,能够实现本发明基于区块链的数字身份生成方法。
本发明的一些实施例中,本发明还提供一种区块链节点设备,其包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,实现本发明基于区块链的数字身份更新方法。
本发明的另一发明,还提供一种计算机存储介质,所述计算机存储介质中存储有程序指令,所述程序指令被执行时,用于实现本发明基于区块链的数字身份更新方法。
应该理解到,本发明所揭露的系统,可通过其它的方式实现。例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,模块之间的通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种基于区块链的数字身份更新方法,其特征在于,应用于区块链节点,所述方法包括以下步骤:
S1:接收客户端发送的更新请求;其中,所述更新请求包括:拟更新数字身份的新公钥对应的Hash值、拟更新数字身份的当前公钥以及用于指示拟更新数字身份对应的Hash值在区块链上的记录位置的索引信息;而且,所述更新请求采用拟更新数字身份的当前私钥签名;
S2:查询哈希表中是否已记录所述新公钥对应的Hash值;其中,若未记录,则根据所述索引信息,查询出拟更新数字身份对应的Hash值,并继续执行步骤S3,否则,拒绝所述更新请求;
S3:根据所述索引信息,查询到记录在区块链上的拟更新数字身份对应的Hash值,并验证拟更新数字身份对应的Hash值与根据所述当前公钥而计算出的Hash值是否一致;若一致,则继续执行步骤S4,否则,拒绝所述更新请求;
S4:根据所述当前公钥,对所述更新请求进行验签;若验签通过,则继续执行步骤S5,否则,拒绝所述更新请求;
S5:所述新公钥对应的Hash值写入区块链,以完成对拟更新数字身份的更新,并将所述新公钥对应的Hash值更新至所述哈希表。
2.如权利要求1所述的基于区块链的数字身份更新方法,其特征在于,所述更新请求为序列化对象;而且,所述序列化对象包括:对所述新公钥对应的Hash值、所述当前公钥以及所述索引信息进行序列化而得到的第一序列化结果,以及对所述第一序列化结果的签名数据进行序列化而得到的第二序列化结果;其中,所述签名数据由所述当前私钥对所述第一序列化结果进行签名而得到。
3.如权利要求2所述的基于区块链的数字身份更新方法,其特征在于,所述更新请求还包括工作量证明参数;而且,所述第一序列化结果通过对所述新公钥对应的Hash值、所述当前公钥、所述索引信息以及所述工作量证明参数进行序列化而得到;所述工作量证明参数用于调整所述第一序列化结果,使根据所述第一序列化结果计算出的Hash值满足工作量证明条件。
4.如权利要求3所述的基于区块链的数字身份更新方法,其特征在于,所述工作量证明条件为由所述第一序列化结果计算出的Hash值的前N位数值为零;其中,N为设定值。
5.如权利要求4所述的基于区块链的数字身份更新方法,其特征在于,步骤S1还包括:计算所述第一序列化结果对应Hash值,并判断所述第一序列化结果对应Hash值是否满足所述工作量证明条件;若满足,则继续执行步骤S2,否则,拒绝所述更新请求。
6.如权利要求1所述的基于区块链的数字身份更新方法,其特征在于,步骤S5还包括:完成对拟更新数字身份的更新后,将用于指示更新后数字身份对应的Hash值在区块链上的记录位置的索引信息发送所述客户端。
7.如权利要求1所述的基于区块链的数字身份更新方法,其特征在于,通过公私钥对生成器生成公私钥对,且所述公私钥对生成器指定椭圆曲线加密算法并以安全随机数为随机源。
8.如权利要求1~7任一项所述的基于区块链的数字身份更新方法,其特征在于,采用SHA-256哈希运算计算Hash值。
9.一种区块链节点设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,实现如权利要求1~8任一项所述的基于区块链的数字身份更新方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有程序指令,所述程序指令被执行时,用于实现如权利要求1~8任一项所述的基于区块链的数字身份更新方法。
CN202110057187.9A 2021-01-15 2021-01-15 一种基于区块链的数字身份更新方法、设备及存储介质 Pending CN112866241A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110057187.9A CN112866241A (zh) 2021-01-15 2021-01-15 一种基于区块链的数字身份更新方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110057187.9A CN112866241A (zh) 2021-01-15 2021-01-15 一种基于区块链的数字身份更新方法、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112866241A true CN112866241A (zh) 2021-05-28

Family

ID=76005817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110057187.9A Pending CN112866241A (zh) 2021-01-15 2021-01-15 一种基于区块链的数字身份更新方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112866241A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113704272A (zh) * 2021-10-25 2021-11-26 北京大学 一种人机物融合环境下的数字对象状态表达方法及装置
CN114338665A (zh) * 2021-12-01 2022-04-12 浪潮软件股份有限公司 基于区块链的申报材料防篡改系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106487821A (zh) * 2017-01-04 2017-03-08 北京天云智汇科技有限公司 一种基于互联网区块链技术的数字签名方法
CN107579817A (zh) * 2017-09-12 2018-01-12 广州广电运通金融电子股份有限公司 基于区块链的用户身份验证方法、装置及系统
CN109150836A (zh) * 2018-07-21 2019-01-04 江苏飞搏软件股份有限公司 区块链实体身份管理系统及方法
CN109522698A (zh) * 2018-10-11 2019-03-26 平安科技(深圳)有限公司 基于区块链的用户认证方法及终端设备
CN109872154A (zh) * 2019-01-31 2019-06-11 中国—东盟信息港股份有限公司 一种基于区块链交易数据的身份实名认证系统
CN109981675A (zh) * 2019-04-04 2019-07-05 西安电子科技大学 一种数字身份认证和属性加密的身份信息保护方法
US20190245680A1 (en) * 2018-02-07 2019-08-08 Raouf Boutaba Blockchain based secure naming and update verification
US20200026834A1 (en) * 2018-07-23 2020-01-23 One Kosmos Inc. Blockchain identity safe and authentication system
CN111488614A (zh) * 2020-04-08 2020-08-04 北京瑞策科技有限公司 基于业务数据区块链的数字身份存储方法及装置
CN111586049A (zh) * 2020-05-08 2020-08-25 国网电子商务有限公司 一种针对移动互联网的轻量级密钥认证方法及装置
CN111986755A (zh) * 2020-08-24 2020-11-24 中国人民解放军战略支援部队信息工程大学 一种基于区块链和属性基加密的数据共享系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106487821A (zh) * 2017-01-04 2017-03-08 北京天云智汇科技有限公司 一种基于互联网区块链技术的数字签名方法
CN107579817A (zh) * 2017-09-12 2018-01-12 广州广电运通金融电子股份有限公司 基于区块链的用户身份验证方法、装置及系统
US20190245680A1 (en) * 2018-02-07 2019-08-08 Raouf Boutaba Blockchain based secure naming and update verification
CN109150836A (zh) * 2018-07-21 2019-01-04 江苏飞搏软件股份有限公司 区块链实体身份管理系统及方法
US20200026834A1 (en) * 2018-07-23 2020-01-23 One Kosmos Inc. Blockchain identity safe and authentication system
CN109522698A (zh) * 2018-10-11 2019-03-26 平安科技(深圳)有限公司 基于区块链的用户认证方法及终端设备
CN109872154A (zh) * 2019-01-31 2019-06-11 中国—东盟信息港股份有限公司 一种基于区块链交易数据的身份实名认证系统
CN109981675A (zh) * 2019-04-04 2019-07-05 西安电子科技大学 一种数字身份认证和属性加密的身份信息保护方法
CN111488614A (zh) * 2020-04-08 2020-08-04 北京瑞策科技有限公司 基于业务数据区块链的数字身份存储方法及装置
CN111586049A (zh) * 2020-05-08 2020-08-25 国网电子商务有限公司 一种针对移动互联网的轻量级密钥认证方法及装置
CN111986755A (zh) * 2020-08-24 2020-11-24 中国人民解放军战略支援部队信息工程大学 一种基于区块链和属性基加密的数据共享系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
翁启: "一种基于区块链的数字身份认证方案", 《中国优秀硕士学位论文全文数据库》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113704272A (zh) * 2021-10-25 2021-11-26 北京大学 一种人机物融合环境下的数字对象状态表达方法及装置
CN113704272B (zh) * 2021-10-25 2022-01-18 北京大学 一种人机物融合环境下的数字对象状态表达方法及装置
CN114338665A (zh) * 2021-12-01 2022-04-12 浪潮软件股份有限公司 基于区块链的申报材料防篡改系统

Similar Documents

Publication Publication Date Title
CN112866242B (zh) 一种基于区块链的数字身份验证方法、设备及存储介质
US11271759B2 (en) Secure digital signatures using physical unclonable function devices with reduced error rates
CN109618326B (zh) 用户动态标识符生成方法及服务注册方法、登录验证方法
CN108933667B (zh) 一种基于区块链的公钥证书的管理方法及管理系统
WO2020073513A1 (zh) 基于区块链的用户认证方法及终端设备
US8285647B2 (en) Maintaining privacy for transactions performable by a user device having a security module
CN110138562B (zh) 智能设备的证书签发方法、装置及系统
US9185111B2 (en) Cryptographic authentication techniques for mobile devices
WO2018184447A1 (zh) 基于区块链的数字证书删除方法、装置及系统、存储介质
US10887110B2 (en) Method for digital signing with multiple devices operating multiparty computation with a split key
CN112989309B (zh) 基于多方授权的登录方法、认证方法、系统及计算设备
CN112866241A (zh) 一种基于区块链的数字身份更新方法、设备及存储介质
KR20220065049A (ko) 블록체인 상의 보증된 데이터를 저장하기 위한 컴퓨터 구현 방법 및 시스템
CN105553667A (zh) 一种动态口令的生成方法
CN115333803A (zh) 用户密码加密处理方法、装置、设备及存储介质
Khan et al. A brief review on cloud computing authentication frameworks
TWI773161B (zh) 數位簽章私鑰驗證方法
CN109257381A (zh) 一种密钥管理方法、系统及电子设备
Liou et al. T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs
KR102329221B1 (ko) 블록체인 기반 사용자 인증 방법
CN116318784B (zh) 身份认证方法、装置、计算机设备和存储介质
CN115242471B (zh) 信息传输方法、装置、电子设备及计算机可读存储介质
CN111737766A (zh) 一种在区块链中判断数字证书签名数据合法性的方法
CN112910845A (zh) 一种基于区块链的数字身份生成方法、设备及存储介质
KR102192477B1 (ko) Fido 기반 인증 대용의 암묵인증방법, 시스템 및 프로그램

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20210528

RJ01 Rejection of invention patent application after publication