CN108848079A - 实现信息验证的方法、***、装置和计算机*** - Google Patents

实现信息验证的方法、***、装置和计算机*** Download PDF

Info

Publication number
CN108848079A
CN108848079A CN201810553455.4A CN201810553455A CN108848079A CN 108848079 A CN108848079 A CN 108848079A CN 201810553455 A CN201810553455 A CN 201810553455A CN 108848079 A CN108848079 A CN 108848079A
Authority
CN
China
Prior art keywords
information
terminal
cryptographic digest
tree construction
party
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
CN201810553455.4A
Other languages
English (en)
Other versions
CN108848079B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810553455.4A priority Critical patent/CN108848079B/zh
Priority to CN201910672000.9A priority patent/CN110460588B/zh
Publication of CN108848079A publication Critical patent/CN108848079A/zh
Application granted granted Critical
Publication of CN108848079B publication Critical patent/CN108848079B/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
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps

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)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明揭示了一种实现信息验证的方法、***、装置和计算机***。所述方法包括:获得所验证信息内容的加密摘要,信息是终端所需要验证的部分关键信息;第三方在相应树结构由叶子节点上溯至根节点获得验证信息对应的认证路径,树结构上叶子节点对应的数值匹配于所有关键信息;通过认证路径对加密摘要验证终端的信息正确存在于树结构匹配的所有关键信息。此过程是面向于部分关键信息的加密摘要实现的信息验证,即部分关键信息并未以明文的形式存在,也不存在所有关键信息的介入,因此不存在所有关键信息被泄露的不安全性,而密文形式,即以加密摘要形式存在的部分关键信息也不存在被泄露的风险,并且是借助于第三方进行的,安全性得到极大提高。

Description

实现信息验证的方法、***、装置和计算机***
技术领域
本发明涉及数据安全技术领域,特别涉及一种实现信息验证的方法、***、装置和计算机***。
背景技术
随着互联网的迅猛发展,各种业务场景在为终端执行网络访问行为之前,往往需要对此而进行一定的信息验证,在确保所验证信息正确的前提下,才会为终端执行网络访问行为。
所进行的信息验证,是鉴定触发网络访问行为的终端是否具备权限的过程,对于网络访问行为所对应的接收端而言,仅限于为具备权限的终端执行所触发的网络访问行为,不具备权限的终端则被接收端所拒绝。
现有的信息验证实现,无一例外都是针对于面向用户所采集的真实信息进行的,在终端所提供信息被验证是对应于用户的真实信息时,确定此终端是具备权限的。
例如,真实信息是已经实名的用户拥有的银行卡***、电话号码等一系列信息。
但是,这实际上是为了追踪溯源而面向于真实信息进行的设置。对于接收端而言,仅仅需要确认所发起网络访问行为的终端是否具备权限即可,与信息内容本身无关,并不关注于信息内容。
现有信息验证的实现,不可避免的带来了真实信息的输入和传递,这也将不可避免的造成终端为进行信息验证而提供的信息被窃取的情况。
由此可知,现有信息验证的实现,存在着所验证信息被泄露,即所有真实信息被泄露的不安全性,亟待改进信息验证的实现,提高信息安全。
发明内容
为了解决相关技术的信息验证实现中安全性不高,信息易于泄露的技术问题,本发明提供了一种实现信息验证的方法、***、装置和计算机***。
一种实现信息验证的方法,所述方法包括:
对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,所述信息是终端所需要验证的部分关键信息;
通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证;
所述第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端所需要验证的所有关键信息;
通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中。
一种实现信息验证的方法,所述方法包括:
接收终端请求进行信息验证所发送的加密摘要,所述终端为网络访问行为的执行发起所述信息验证,所述加密摘要对应于所述终端需要验证的部分关键信息;
在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端需要验证的所有关键信息;
通过所述认证路径对所述加密摘要验证所述终端的信息,所述网络访问行为将在所述终端的信息验证通过时被相应的接收端执行。
一种实现信息验证的***,所述***部署于终端以及对终端进行信息验证的第三方,所述***包括:
验证发起模块,用于对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,所述信息是终端所需要验证的部分关键信息;
请求验证模块,用于通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证;
路径搜索模块,用于在第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端所需要验证的所有关键信息;
加密摘要验证模块,用于在所述第三方通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中。
在一个示例性实施例中,所述验证发起模块包括:
指令接收单元,用于接收终端所触发网络访问行为的信息验证指令;
加密摘要生成单元,用于根据所述信息验证指令指示验证的信息,生成所对应信息内容的加密摘要。
在一个示例性实施例中,所述请求验证模块包括:
签名单元,被配置于所述终端,所述签名单元用于对所述加密摘要执行签名算法获得所对应的数字签名;
请求发起单元,被配置于所述终端,所述请求发起单元用于通过所述数字签名和加密摘要请求所述网络访问行为的接收端验证所述数字签名;
第三方请求单元,被配置于所述网络访问行为的接收端,所述第三方请求单元用于如果所述数字签名验证通过,则通过所述加密摘要请求所述第三方对所述终端进行信息验证。
在一个示例性实施例中,所述第三方请求单元被配置执行:
获取所述终端待验证信息所对应的加密摘要以及对应于所述终端所持有私钥的公钥;
根据所述加密摘要和公钥为所述终端所进行的信息验证向第三方发起信息验证请求,所述信息验证请求携带所述加密摘要和公钥。
在一个示例性实施例中,所述信息验证请求携带终端为所述加密摘要所附加的时间戳,所述***还包括:
超时验证模块,被配置于所述第三方,所述超时验证模块用于根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,则所述超时验证模块拒绝所述终端请求进行的信息验证。
在一个示例性实施例中,所述请求发起单元被配置执行:
获取所持有私钥对应的公钥;
发送所述公钥、数字签名和加密摘要至所述网络访问行为的接收端,以请求所述接收端使用所述公钥根据所述加密摘要验证所述数字签名。
在一个示例性实施例中,所述第三方配置的路径搜索模块包括:
公钥获取单元,用于通过终端所请求进行的信息验证,获得对应于所述终端所持有私钥的公钥;
树查找单元,用于根据获得的所述公钥定位相应的树结构,所述第三方是将公钥和树结构关联存储的;
路径搜索单元,用于在所述树结构上根据请求验证的信息,检索对应于所述信息的叶子节点,从检索得到的所述叶子节点上溯至根节点获得若干节点所构成的认证路径。
在一个示例性实施例中,所述加密摘要验证模块包括:
序列获取单元,用于从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
重构单元,用于根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
比对验证单元,用于验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则所述比对验证单元验证得到所述终端的信息正确。
一种实现信息验证的装置,所述装置包括:
加密摘要接收模块,用于接收终端请求进行信息验证所发送的加密摘要,所述终端为网络访问行为的执行发起所述信息验证,所述加密摘要对应于所述终端需要验证的部分关键信息;
认证路径获得模块,用于在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端需要验证的所有关键信息;
正确性验证模块,用于通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述网络访问行为将在所述终端的信息验证通过时被相应的接收端执行。
在一个示例性实施例中,所述加密摘要接收模块还用于根据终端触发网络访问行为所请求进行的信息验证,接收所述网络访问行为对应接收端发送的信息验证请求,所述信息验证请求携带所验证信息内容的加密摘要和对应于终端所持有私钥的公钥。
在一个示例性实施例中,所述装置还包括:
公钥定位模块,用于根据所述信息验证请求中携带的公钥定位树结构,获得所请求验证信息对应的树结构,
其中,所述树结构用于进行信息所对应加密摘要的存储,并且每一树结构均与唯一对应的公钥关联存储。
在一个示例性实施例中,所述信息验证请求携带终端为所述加密摘要所附加的时间戳,所述装置还包括:
时间戳判断模块,用于根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,所述时间戳判断模块拒绝所述终端请求进行的信息验证,所述终端的信息验证失败。
在一个示例性实施例中,所述正确性验证模块包括:
节点上溯单元,用于从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
树重构单元,用于根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
根节点比对单元,用于验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则所述根节点比对单元验证得到所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述终端的信息验证通过。
一种计算机***,所述计算机***包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如前所述的方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
对于给定信息的验证而言,在对终端的网络访问行为发起信息验证时,获得所验证信息内容,即给定信息所对应内容的加密摘要,并且给定信息是终端所需要验证的部分关键信息,然后通过加密摘要来为终端的网络访问行为请求第三方进行信息验证,第三方根据终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证给定信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于终端所需要验证的所有关键信息,最后通过认证路径对加密摘要验证终端的信息正确存在于树结构匹配的所有关键信息中,此过程是面向于部分关键信息的加密摘要实现的信息验证,给定信息,即部分关键信息并未以明文的形式存在,并且也不存在所有关键信息的介入,因此并不存在所有关键信息被泄露的不安全性,而密文形式,即以加密摘要形式存在的部分关键信息也不存在被泄露的风险,并且是借助于第三方进行的,信息验证的安全性得到极大提高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的本发明所涉及的实施环境的示意简图;
图2是根据一示例性实施例示出的一种装置的框图;
图3是根据一示例性实施例示出的一种实现信息验证的方法的流程图;
图4是根据图3对应实施例对步骤310进行描述的流程图;
图5是根据图3对应实施例示出的对步骤330进行描述的流程图;
图6是根据图5对应实施例示出的对步骤335进行描述的流程图;
图7是根据图6对应实施例示出的一种实现信息验证的方法的流程图;
图8是根据图6对应实施例示出的对步骤333进行描述的流程图;
图9是根据图3对应实施例示出的对步骤330进行描述的流程图;
图10是根据图3对应实施例示出的对步骤370进行描述的流程图;
图11是根据一示例性实施例示出的一种实现信息验证的方法的流程图;
图12是根据另一示例性实施例示出的一种实现信息验证的方法的流程图;
图13是根据图11对应实施例示出的对步骤850进行描述的流程图;
图14是根据一示例性实施例示出的一信息验证实现架构的示意简图;
图15是根据另一示例性实施例示出一信息验证实现架构的示意简图;
图16是根据一示例性实施例示出的第三方、接收端以及终端三者之间实现信息交互所分别对应的数据结构示意图;
图17是一示例性实施例示出的一种实现信息验证的***的框图;
图18是根据图17对应实施例示出的对验证发起模块进行描述的框图;
图19是根据图18对应是实施例示出的对请求验证模块进行描述的框图;
图20是根据图17对应实施例示出的对第三方配置的路径搜索模块进行描述的框图;
图21是根据图17对应实施例示出的对加密摘要验证模块进行描述的框图;
图22是根据一示例性实施例示出的一种实现信息验证的装置的框图;
图23是根据另一示例性实施例示出的正确性验证模块的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的本发明所涉及的实施环境的示意简略图。在一个示例性实施例中,本发明在网络中进行的信息验证,将为各终端所持有的全部关键信息提供安全性保障,使得任意关键信息都不会在所进行的信息验证中发生泄露,进而保护终端所对应用户的隐私。
任一网络访问行为所对应的信息验证,都能够通过本发明所实现的第三方达成,因此,如图1所示的架构,终端110向任意一方发起的网络访问行为,在需要对此而进行信息验证时,网络访问行为所对应的接收端130,都会请求所部署的第三方150对终端110所提供加密摘要进行验证,在鉴定加密摘要所对应需要验证的部分关键信息正确存在于相应树结构所匹配的所有关键信息时,为触发网络访问行为的终端110获得验证通过的结果。
也就是说,对于任意终端,例如,一终端110而言,所发起面向于任意接收端130,例如,1至n个接收端130的网络访问,都将交由第三方150执行信息验证,以通过此架构来保障信息安全。
第三方150进行着所有关键信息的存储,在形态上,第三方150可以是单独机构,也可以是由多方组成的。
也就是说,可通过分布式架构下的区域链来实现第三方150以及第三方150中的所有关键信息存储,以保证关键信息的不可篡改。
通过区域链实现关键信息存储的第三方150,将由若干个节点服务器构成。若干个节点服务器都进行着关键信息的存储,并且都为将用于实现信息验证。若干个节点服务器构成了基于区块链的业务网络,即,进行信息验证的业务网络。由此,无论是关键信息的采集,还是向网络访问行为所对应的接收端130,或者终端110提供信息验证服务,都将基于区域链进行。
图2是根据一示例性实施例示出的一种装置的框图。图1所示的第三方,可以是装置200,例如,装置200可以是服务器。
参照图2,该装置200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(central processing units,CPU)222(例如,一个或一个以上处理器)和存储器232,一个或一个以上存储应用程序242或数据244的存储介质230(例如一个或一个以上海量存储设备)。其中,存储器232和存储介质230可以是短暂存储或持久存储。存储在存储介质230的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器222可以设置为与存储介质230通信,在装置200上执行存储介质230中的一系列指令操作。装置200还可以包括一个或一个以上电源226,一个或一个以上有线或无线网络接口250,一个或一个以上输入输出接口258,和/或,一个或一个以上操作***241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。下述图3、图4、图5、图6、图7和图8所示实施例中所述的由第三方所执行的步骤可以基于该图2所示的装置结构。
图3是根据一示例性实施例示出的一种实现信息验证的方法的流程图。该实现信息验证的方法,在一个示例性实施例中,如图3所示,至少包括以下步骤。
在步骤310中,对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,该信息是终端所需要验证的部分关键信息。
其中,首先应当指出,所指的终端,泛指进行网络访问的任意终端,例如,终端可以是访问某一网站的智能手机、平板电脑等便携移动终端,当然也可以是电脑等电子设备。
随着终端所进行的网络访问,所对应的访问对象,即终端所触发网络访问行为的接收端,根据自身配置往往需要对终端进行信息验证,在终端通过信息验证之后才会为终端执行所触发的网络访问行为。
例如,终端发起浏览某一网站发布的信息时,这一网站跳转进入信息验证页面,此时,终端需要为此而进行信息验证之后,方可浏览信息。
由此可知,终端的网络访问行为,即为终端访问任意对象借助于网络而发起的行为,根据所访问对应的不同,终端的网络访问行为也各不相同。
在终端,将为所触发的网络访问行为而发起信息验证,例如,终端将跳转进入信息验证页面。
此时,终端将获取所验证信息内容的加密摘要,即所验证信息内容是以密文的形式存在,并在随后加以进行验证的,加密摘要这一密文的验证通过便对应了所请求验证信息的验证通过。
应当理解,对终端的网络访问行为发起信息验证,实际也是向终端所对应用户发起的信息验证,因此,所请求验证的信息往往与用户相关。所请求验证的信息往往是一用户或者一类用户所唯一对应的。
因此,所请求验证的信息,必然是终端所需要验证的关键信息。但是,如前所述的,访问对象对终端进行验证的目的在于确定终端是否具备对其执行网络访问行为的权限,所需要验证的信息是终端所持有的关键信息,在一个示例性实施例的具体实现中,还将是终端所对应用户的真实信息。
在对终端的网络访问行为发起信息验证时,将仅对所需要验证的部分关键信息获取加密摘要,而非针对于所有关键信息。
应当进一步说明的是,所进行的信息验证是为了对终端的所有关键信息进行信息是否存在以及是否正确的验证,以此来鉴定终端,甚至于终端所对应的用户是已经备案,例如,已注册而具备权限的。
而在步骤310的执行中,则是以部分关键信息来表征所有关键信息验证的进行,因此,为保证验证的准确性和可靠性,将需要在后续的步骤执行中配合第三方以及第三方中树结构实现。
所指的所有关键信息,是对于一终端,甚至于一终端所对应的用户而言的,是用于描述终端以及终端所对应用户的全部信息。例如,用户所对应的全部真实信息。而部分关键信息则是所有关键信息中某一字段所对应的信息。部分关键信息则是所有关键信息中的一条或者几条关键信息,例如,一个字段所对应的关键信息。
在一些场景下,为终端所对应用户进行的信息验证,是面向于用户的真实信息的,例如,用户的姓名、性别、移动电话号码、地址等一系列真实信息,这些真实信息便构成了终端所对应用户在触发网络访问行为之后需要进行验证的全部关键信息,而其中的姓名这一字段所对应的信息,由于是全部关键信息的一部分,因此将作为部分关键信息而存在。
此外,对于所验证信息内容的加密摘要,可以是对部分关键信息进行哈希化所获得的哈希值。当然,也可通过其它的一些加密函数获得所验证信息内容的加密摘要,在此不进行限定。
当然,通过哈希化而获得所验证信息内容的哈希值,即加密摘要,此加密过程的采用得以将所验证信息内容都转换为一固定长度的密文,有利于后续过程的执行。
在一个示例性实施例中,终端设备为所进行的网络访问跳转执行信息验证,在所跳转进行的信息验证中,获取所提交信息,即部分关键信息对应的加密摘要。此加密摘要唯一的描述了所提交部分关键信息的内容。
对于步骤310,将是通过终端执行的。终端为自身所触发的网络访问行为,发起信息验证,并为此而获取所验证信息内容的加密摘要,此加密摘要将用于实现第三方对终端所触发网络访问行为的信息验证。
可以明确,对于终端而言,所验证的信息内容是始终是由自己所持有的,而不会传播出去,安全性得到稳固保障。
图4是根据图3对应实施例对步骤310进行描述的流程图。该步骤310,如图4所示,在一个示例性实施例中包括以下步骤。
在步骤311中,接收终端所触发网络访问行为的信息验证指令。
在步骤313中,根据信息验证指令指示验证的信息,生成对应信息内容的加密摘要。
其中,终端随着自身被触发网络行为而接收到信息验证指令。这里所指的终端对信息验证指令的接收,是在终端中进行的,实质是终端的一进程对所触发的网络访问行为进行响应,接收到所对应的信息验证指令。
信息验证指令,即为终端在网络访问行为对应接收端控制下跳转执行信息验证的指令。所指的信息验证过程,可以是用户的注册登录过程,也可以是某一类用户对所持有信息加以验证的过程,在此不进行限定。
但无法对应于什么样的信息验证过程,都将随着终端跳转进入信息验证以及所提交的信息,而接收到信息验证指令。例如,在终端所跳转进入的信息验证中,输入账号信息等并提交之后,便接收到信息验证指令。
因此,信息验证指令携带了请求验证的信息,这一信息为终端所需要验证的部分关键信息。对这一信息内容生成加密摘要,即可请求第三方对此给予验证。
在步骤330中,通过加密摘要为网络访问行为请求第三方对终端进行信息验证。
其中,如前所述的,信息验证是在网络访问行为的接收端控制下跳转执行的,也就是说,所进行的信息验证是为了终端在接收端的网络访问而进行的。但是,所进行信息验证的主体在于第三方,因此,终端将通过所获得的加密摘要而为自身触发的网络访问行为请求第三方进行验证。
第三方,是区别于终端以及接收端的一方,并且第三方是独立于终端和接收端之间的。第三方用于实现信息验证,因此,第三方存储了所有信息。也就是说,对于每一终端或者每一终端所对应用户的所有关键信息,都存储于第三方,而网络访问行为的接收端,则没有存储任何关键信息,并且也无法经由信息验证的进行而获得任意关键信息,因此,得以保证了信息的安全性。即便接收端是一非法网站,也无法窃取得到。
所部署的第三方用于为各终端以及各网络访问行为的接收端执行信息验证。也就是说,通过加密摘要而为网络访问行为向第三方请求进行的信息验证,可以是终端所直接向第三方请求进行的,也可以是终端所请求访问的接收端所请求第三方进行的。
例如,终端可为自身网络访问行为的执行请求第三方进行信息验证,以为后续所触发的网络访问行为而提供第三方的信息验证结果。
除此之外,终端被触发网络访问行为之后,一旦需要进行信息验证,则为此而获取了所验证信息内容的加密摘要,终端将通过此加密摘要而响应网络访问行为所对应接收端发起的信息验证,此时,接收端将基于所获得的加密摘要而请求第三方对终端进行信息验证。
由此,可以理解的,第三方是为了进行信息验证而独立部署,且独立存在的,任一终端和接收端都无法获得第三方所存储的数据,并且也无法影响或者干扰第三方所执行的信息验证,得以保证了第三方执行信息验证的独立性和可靠性,任何终端以及接收端无法篡改。
在步骤350中,第三方根据终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于终端所需要验证的所有关键信息。
其中,随着通过加密摘要为终端所触发网络访问行为向第三方请求进行信息验证,第三方将为此而执行终端所请求的信息验证。所进行的信息验证是通过第三方中部署的树结构实现的。
应当理解,第三方作为独立存在的鉴权机构,通过所构建的树结构为终端以及终端所对应的用户进行关所有关键信息的存储。所构建的每一树结构都是唯一对应于一用户或者一类用户,这将根据所进行信息验证的实现灵活部署得到。例如,如果进行的信息验证是面向于每一用户的验证的,比如验证当前请求进行网络访问的用户是否为真实用户,而非机器,则在此场景下,每一树结构都唯一对应于一用户。
又例如,如果进行的信息验证是面向于每一类用户进行的,即验证当前请求进行网络访问的用户是否为某一类或者某一组用户,则在此场景下每一树结构都唯一对应于一类用户,树结构将用于存储此类用户所共有的数据。
第三方根据所获得的加密摘要,在所对应的树结构查找对应于此加密摘要的叶子节点,并由叶子节点溯至根节点,由叶子节点、叶子节点与根节点之间的子节点以及根节点形成认证路径。对于加密摘要而言,通过此加密摘要以及认证路径上的节点,如果能够重构得到与树结构的局部相一致的树结果,便能够验证得到加密摘要是存在于所对应的树结构中的。
对于一用户而言,所有关键信息都所对应于每一字段的内容都将以加密摘要的形式存储于所对应树结构的叶子节点。也就是说,树结构上叶子节点对应的数值是匹配于用户所有关键信息的一个字段的。
在一个示例性实施例中,树结构可以通过对所有关键信息进行层级运算所构建得到。例如,所有关键信息对应于每一字段的信息内容,都生成所对应的加密摘要,然后在所获得的加密摘要中,两两进行合并之后再获得所对应的加密摘要,以此类推,逐层级的向前推进运算,直至最终得到唯一一个数值,此数值即为树结构中根节点对应的数值。
而中间所运算得到的数值,则是每一层节点所分别对应的,叶子节点则是对所有关键信息在每一字段上的信息内容生成的加密摘要。
例如,所构建的树结构可以是Merkle树,每一字段所对应信息内容的哈希值,即为Merkle树中叶子节点对应的数值,而由此往上所存在的节点,则是下一层级两个节点所对应的哈希值合并成字符串之后再哈希化所得到的。
第三方为每一组关键信息,例如前述所指对应于用户的所有关键信息,或者一终端所持有的关键信息,都构建了相应的树结构,并与一公钥相关联。所构建的树结构通过所关联的公钥而对应到终端以及用户。
在一个示例性实施例中,树结构与公钥在第三方的关联存储,是以公钥为索引进行的树结构存储。与之相对应的,在所请求进行的信息验证中,第三方将以所接收到的公钥为索引项,进行索引中所存储公钥的查找,所查找得到的索引映射的树结构。
在另一个示例性实施例中,作为索引的公钥,可以是公钥本身,当然也可能是对公钥通过散列函数进行散列值的运算,再以所得到的散列值为索引进行公钥和树结构的关联存储,以此来进一步的提高安全性。
对公钥通过散列函数所运算得到的散列值,在一个示例性实施例中,可以是哈希值,或者其它的一些形式。
一组关键信息在树结构的作用下,得以为后续的信息验证实现快速高效检索,并且仅需要在树结构的叶子节点上存储每一字段所对应的加密摘要即可,可以不直接进行关键信息的存储,因此,进一步保障所部署第三方的安全性。
在一个示例性实施例中,第三方以单独机构的形式存在,例如,第三方是部署的服务器或者服务器集群,是中心架构下的实现,所构建的树结构将与公钥关联存储,其它位置相应进行的存储则用于实现备份。
在另一个示例性实施例中,采用分布式架构,第三方由多方组成,即多个节点参与,进而形成的信息验证业务网络。第三方的节点之间都存储了相同的数据,也就是说,所有树结构都在第三方的每一节点中存储。
进一步说明的,在每一节点上,一树结构存储在一区块上,区块之间相互链接形成此节点上存储的区块链。所构建的树结构将作为节点上的区块数据进行存储。
由此,对于终端或者网络访问行为的接收端而言,如需要请求第三方进行信息验证,只需要连接至一节点,进而定位至此节点上的区块即可找到用于为自己进行信息验证的树结构。
节点中区块链是对采集所得到的每一组关键信息构建树结构之后创建区块而连接至上一区块所形成的。越早构建得到的树结构,在区块链上的位置越靠前,而最后所构建得到的树结构便置于区块链的尾端。
第三方由多方组成,并且对所构建的诸多树结构上链而以区块链的形式在所组成的每一方,即每一节点中存储,对于进行信息验证的第三方而言,能够有效防止信息篡改的发生,也能够有效的避免信息丢失。
但无论是中心架构的第三方部署,还是分布式架构的第三方部署,都为所进行信息验证提供了区别于终端和网络访问行为接收端的第三方,实现了独立存在且稳定可靠的鉴权机构。
在步骤370中,通过认证路径对加密摘要验证终端的信息正确存在于树结构匹配的所有关键信息中。
其中,如前所述的,由树结构获得了加密摘要所对应的认证路径之后,即可由此加密摘要以及认证路径所指示每一层级的节点值重构树结构,所构建的树结构如果是用户所对应树结构的一部分,则可确认用户所对应树结构匹配的所有关键信息中正确存在了所请求验证的信息。
应当理解,无论是树结构的部分存在,还是整个树结构,都无一例外的对应了相同根节点,因此第三方在通过认证路径对加密摘要验证终端的信息是否正确存在于树结构匹配的所有关键信息时,只需要比对所重新构建得到的根节点所不的数值即可。
如果数值一致,则第三方验证通过,说明加密摘要是用户所对应树结构上一叶子节点所对应的数值;反之,如果数值不相一致,则验证失败,加密摘要并不是用户所对应树结构上叶子节点所对应的数值。
认证路径用于为第三方所进行的信息验证指示所对应的节点,以此来确认加密摘要的存在性和正确性,而并不需要对树结构上的所有节点都进行遍历,非常快速高效。
图5是根据图3对应实施例示出的对步骤330进行描述的流程图。在一示例性实施例中,如图5所示的,步骤330至少包括以下步骤。
在步骤331中,终端对加密摘要执行签名算法获得所对应的数字签名。
其中,如前所述的,终端随着网络访问的进行而需要为所进行的网络访问获得权限,进而方能够继续当前所进行的网络访问,所指的权限是通过所进行的信息验证获得的。
在此信息验证中,一方面是对所请求验证信息的内容,即部分关键信息生成加密摘要,另一方面,在此示例性实施例中,也将对加密摘要签名,获得保证加密摘要安全性,避免加密摘要被篡改的数字签名,此外,也将借助于数字签名使得接收端得以进行身份验证,保证向接收端发起验证的终端的合法性。
终端在生成加密摘要之后,便使用所持有的私钥对加密摘要执行签名算法,获得所对应的数字签名。
应当理解,每一终端,亦可理解为终端所对应的每一用户,都有着唯一存在的私钥,以及对应于私钥的公钥。在终端保存着私钥,以用于自身数据的加密,而所对应的公钥,则可随着自身所进行的信息交互传递至接收端,或者保存于接收端,或者保存于数字签名的管理服务器,以使得接收端从此数字签名的管理服务器中获得,在此不进行限定,公钥的设置将根据实际运营的需要确定。
在步骤333中,通过数字签名和加密摘要请求网络访问行为的接收端验证数字签名。
其中,在终端为所生成的加密摘要生成数字签名之后,终端将通过数字签名和加密摘要请求网络访问行为的接收端对终端进行信息验证,然而,如前所述的,网络访问行为的接收端自身,并不进行信息验证,而将借助于第三方进行信息验证。
但是,接收到终端通过数字签名和加密摘要发起的信息验证请求之后,接收端将对此信息验证请求所对应终端的合法性验证,此过程将是通过所获得的数字签名和加密摘要实现的。
在一个示例性实施例的具体实现中,接收端获取终端所持有私钥对应的公钥,使用公钥解密数字签名得到一字符串,比对这一字符串和加密摘要二者之间是否相一致,如果所得到的字符串和加密摘要二者之间是一致的,则说明加密摘要未被篡改,所请求进行的信息验证是合法的,数字签名验证通过。
如果这一字符串和加密摘要二者之间不相一致,则说明加密摘要已被篡改,所请求进行的信息验证是非法的,数字签名验证失败。
在步骤335中,如果数字签名验证通过,则网络访问行为的接收端通过加密摘要请求第三方对终端进行信息验证。
其中,网络访问行为的接收端仅在数字签名验证通过时,请求第三方执行终端所请求进行的信息验证。
此时,对于网络访问行为的接收端将通过加密摘要和公钥请求第三方对终端进行信息验证。其中,加密摘要是对应于请求验证的信息内容的,公钥则被用于在第三方索引到终端所对应存储的数据,即前述所指的终端所对应的树结构。
通过此示例性实施例,为终端所需进行的信息验证提供了网络访问行为接收端配合下的第三方实现,由于大多数场景都是由于网络访问行为的接收端需要对终端进行信息验证而发起的信息验证过程,因此,如上所述示例性实施例的实现,将得以适配于大多数场景,在提供了一种安全性极佳的信息验证实现的同时,也保证了在各种场景下的通用性。
图6是根据图5对应实施例示出的对步骤335进行描述的流程图。在一个示例性实施例中,步骤335,如图6所示,至少包括以下步骤。
在步骤401中,网络访问行为的接收端获取终端待验证信息所对应的加密摘要以及对应于终端所持有私钥的公钥。
其中,首先应当说明的是,终端待验证信息,即为终端所需要验证的部分关键信息。而加密摘要便是唯一描述终端待验证信息的内容的。例如,所进行的信息验证是面向于用户的真实信息进行的,则终端待验证信息,便是终端所登录用户对应于某一项属性的真实信息,比如对应姓名这一项属性的真实信息,仅仅是用户所对应全部真实信息的部分存在。与之相对应的,在数据的存在形式上,终端待验证信息便是所对应全部真实信息中某一字段所对应的信息。
终端所持有的私钥,在一个示例性实施例中,是终端所登录用户唯一持有的私钥。换而言之,终端所持有的私钥也可理解为终端所存储的私钥。为保证安全性,只会在终端部署唯一一私钥,以用于为终端所进行的信息交互服务,即加密所交互的信息。此私钥有着对应的公钥。
网络访问行为的接收端,通过终端所请求进行的信息验证而获得了终端待验证信息对应的加密摘要,此时,一方面将随着加密摘要的获得,接收端从终端获得随着加密摘要传送的公钥;另一方面,接收端通过自身所进行的存储或者从外部,例如前述所指的数字签名的管理服务器,获得对应于终端所持有私钥的公钥。
此时,对于自身所进行的公钥存储,或者外部所存储的公钥而言,网络访问行为的接收端能够根据终端所登录用户的账号信息,例如用户标识或者终端标识查找得到所需要的公钥。
由此,对应于终端的,网络访问行为的接收端所获得的加密摘要以及公钥二者之间是相对应的。
在步骤403中,根据加密摘要和公钥为终端所进行的信息验证向第三方发起信息验证请求,信息验证请求携带加密摘要和公钥。
其中,网络访问行为的接收端,在根据加密摘要和公钥为终端请求第三方进行信息验证时,将通过加密摘要和公钥生成并向第三方发起信息验证请求。
网络访问行为的接收端通过所发起的信息验证请求,一方面请求第三方进行终端所对应的信息验证,另一方面也将为第三方所即将执行的信息验证提供验证的加密摘要,以及用于避免身份冒用且找到终端所对应数据的公钥。
通过此示例性实施例,实现了网络访问行为的接收端与第三方二者之间的信息交互,任意网络访问行为的接收端,在需要进行终端的信息验证时,都可通过接入第三方来实现所需要进行的信息验证,由此对于网络访问行为的接收端而言,不再需要关注于信息验证的实现,而更多的关注于自身所能够为终端提供的网络访问内容,一方面降低了架设网络访问行为的接收端难度,另一方面也增加了接收端的安全性和可靠性。
图7是根据图6对应实施例示出的一种实现信息验证的方法的流程图。在一个示例性实施例中,信息验证请求携带终端为加密摘要所附加的时间戳,在执行步骤350之前,该实现信息验证的方法如图6所示,还包括以下步骤。
在步骤510中,第三方根据信息验证请求中携带的时间戳判断终端请求进行的信息验证是否超时。
其中,如前所述的,信息验证请求携带加密摘要和对应于终端所持有私钥的公钥,除此之外,在本示例性实施例中,信息验证请求还携带了终端为加密摘要所附加的时间戳。
信息验证请求携带的时间戳用于指示加密摘要的生成时间,进而将使用时间戳来判断当前为终端请求进行的信息验证是否超时,在确保所请求进行的信息验证并未超时下,方可对信息验证请求携带的加密摘要根据公钥执行第三方是否存在了所对应关键信息的验证。
在步骤530中,如果终端请求进行的信息验证超时,拒绝终端请求进行的信息验证。
其中,如果根据信息验证请求中携带的时间戳确认终端所请求进行的信息验证已经超时,即相对于时间戳指示的时间点,当前已经超出了设定的时间范围,此信息验证请求被过晚发起,第三方将拒绝进行所对应的信息验证。
由此,将在时间戳的作用下避免信息的重放,进而保证信息验证的安全性和可靠性。
图8是根据图6对应实施例示出的对步骤333进行描述的流程图。在一个示例性实施例中,如图8所示,该步骤333,至少包括以下步骤。
在步骤601中,终端获取所持有私钥对应的公钥。
在步骤603中,发送公钥、数字签名和加密摘要至网络访问行为的接收端,以请求接收端使用公钥根据加密摘要验证数字签名。
其中,如前所述的,终端为自身所进行的信息交互而部署私钥,并且私钥有着对应的公钥。在终端与网络访问的接收端之间,所进行的信息交互如需要保证安全性,则终端将使用自身所部署的私钥进行信息加密,例如前述所指的签名过程,获得数字签名,进而将加密摘要、数字签名以及公钥一并发送至网络访问行为的接收端,以响应接收端所指示进行的信息验证。
终端在向网络访问行为的接收端发送数字签名和加密摘要的过程中,随之发送公钥,一方面以此来保障所进行的信息验证仅通过密文的形式实现,而并不需要获得加密摘要之外的所需要验证信息相关的任何数据,由此来保证了信息验证的安全性和可靠性,整个信息验证过程仅存在着密文的交互。
另一方面,也将以此来避免了验证所相关的其它信息的介入,使得终端所需进行的信息验证并不需要使用其它关键信息,仅以部分关键信息就能够达成信息验证的目的。
图9是根据图3对应实施例示出的对步骤330进行描述的流程图。在一个示例性实施例中,如图3所示的,该步骤330至少包括以下步骤。
在步骤331中,第三方通过终端请求进行的信息验证,获得对应于终端所持有私钥的公钥。
其中,如前所述的,第三方随着终端所发起的信息验证,在获得对应于终端请求验证信息内容的加密摘要之余,也将获得对应终端所持有私钥的公钥,例如,第三方从网络访问行为的接收端获得此公钥。
随着终端请求进行的信息验证,第三方将作为终端所请求进行信息验证的执行主体,而根据所获得的信息,如加密摘要、公钥为终端进行信息验证。
因此,无论终端通过何种方式向第三方请求进行信息验证,例如,终端通过网络访问行为的接收端向第三方请求进行信息验证,或者终端直接向第三方请求进行信息验证等,第三方都将通过终端请求进行的信息验证来获得对应于终端所持有私钥的公钥。
公钥作为信息交互中解密所加密信息的,例如数字签名的工具,但是在第三方应用为终端执行的信息验证中,所获得的公钥将作为数据的索引,公钥是为终端,或者终端所对应的用户唯一标识所存储的信息的。
在步骤333中,根据获得的公钥定位相应的树结构,第三方是将公钥和树结构关联存储的。
其中,应当理解,第三方为实现信息验证,例如,实现面向于诸多用户的信息验证,每一用户所对应的全部关键信息都是以此用户的公钥为索引进行存储的。
对于终端所请求进行的信息验证而言,实质也是终端所对应用户请求进行的信息验证,因此,用户的公钥便是对应于所在终端持有的私钥的,而用户所对应的全部关键信息即为所在终端对应的全部关键信息。对于第三方而言,请求进行信息验证的主体在于终端,因此第三方是为终端进行着信息验证的。但实质上,第三方也是为终端所对应的用户进行信息验证。
无论是对终端还是对终端上的用户而言,所涉及的全部关键信息都是以终端所持有私钥的公钥为索引而进行关联存储的。
而为实现快速高效查找,全部关键信息是以树结构的方式实现存储,并使公钥和树结构二者之间相互关联。
由此,在第三方通过终端所请求进行的信息验证获得公钥之后,即可由公钥找到相应的树结构,即此公钥所关联的树结构即为加密摘要所在的树结构,因为公钥是唯一对应于一私钥的,因此,也通过公钥来避免了身份冒用的发生。
在步骤335中,在树结构上根据请求验证的信息,检索对应于信息的叶子节点,从检索得到的叶子节点上溯至根节点获得若干节点所构成的认证路径。
其中,请求验证的信息将在第三方以所对应加密摘要的方式完成验证,此加密摘要是对请求验证信息在内容上的一致性描述。在树结构上,根据加密摘要来获取与此加密摘要对应的叶子节点,并根据此叶子节点在上一层级定位所对应的子节点,以此类推,直至到达根节点。
应当说明的是,与加密摘要对应的叶子节点,即为与加密摘要进行两两运算而获得上一层级子节点的叶子节点;叶子节点在上一层级定位所对应的子节点,是加密摘要与所对应叶子节点的节点值合并之后所得到节点值对应的上一子节点与之两两进行运算的。
为加密摘要在树结构上逐层检索得到的子节点,将与加密摘要相配合而构建得到同样到达树结构所对应根节点的路径,即由加密摘要到达树结构上根节点的路径,因此,由所检索得到的叶子节点上溯至根节点便获得了加密摘要的认证路径。
认证路径用于判断加密摘要所对应的信息内容是否确实是真实存在的,换而言之,将通过认证路径来判断加密摘要是否确实真实存在于树结构的叶子节点上。
通过所树结构中的检索以及认证路径的获得,将得以有效的提高第三方进行信息验证的效率,进而能够完成大量的信息验证过程。
图10是根据图3对应实施例示出的对步骤370进行描述的流程图。在一个示例性实施例中,如图10所示的,该步骤370,至少包括以下步骤。
在步骤371中,从认证路径获取沿树结构的叶子节点上溯至根节点的节点值序列。
其中,应当理解,树结构通过所布设的若干层级而在不同层级上分布着若干子节点,并且每一子节点都在上一层级有着唯一对应的父节点,在下一层级也有至少一个子节点。
也就是说,树结构上的节点,包括叶子节点和根节点,都是层层相连的。从所获得的认证路径即可获得层层相连的若干个节点,即一叶子节点上溯至根节点的路径上分布的所有节点,这些节点所分别对应的节点值便构成了节点值序列。
节点值序列包括着顺序存在的若干个节点值,节点值序列将用于对加密摘要进行此加密摘要是否存在于所定位的树结构的判断。
在步骤373中,根据节点值序列对加密摘要进行所对应树结构的构建,获得加密摘要在所构建树结构上根节点对应的数值。
其中,根据树结构所进行的层级运算,也相应对加密摘要和节点值序列中包含的节点值进行层级上,构建加密摘要和节点值序列对应的树结构。
在步骤375中,验证加密摘要在所构建树结构上根节点对应的数值与节点值序列中对应于根节点的节点值是否一致。
其中,对于一树结构而言,无论是以哪一叶子节点为起始,随着层级运算的进行,最终都将归集至唯一的根节点上。如果加密摘要是所定位得到树结构上一叶子节点对应的数值,则加密摘要和节点值序列构建的树结构上根节点对应的数值必然是通过公钥所定位得到树结构上根节点对应的数值,也是节点值序列中对应于根节点的节点值。
在步骤377,如果加密摘要对应的数值与对应根节点的节点值相一致,则验证得到终端的信息正确。
其中,第三方所构建的每一树结构,其叶子节点对应的数值都是匹配于部分关键信息的,以此类推,此树结构上所有叶子节点对应的数值便匹配于所有关键信息。
对于加密摘要和节点值序列进行层级运算而构建的树结构,如果其上根节点对应的数值与节点值序列中对应于根节点的节点值一致,即可证明加密摘要是第三方所构建树结构上一叶子节点对应的数值,进而能够确定加密摘要对应的信息内容,即请求验证的信息内容是第三方所构建树结构上一叶子节点所匹配的部分关键信息。
用于比对的第三方所构建树结构,是通过前述步骤由公钥所定位得到的,此树结构叶子节点上的数值是匹配于终端所需要验证的所有关键信息的,当前请求验证的信息是其中的一部分。因此验证通过加密摘要以及节点值序列构建的树结构是否为公钥所定位得到树结构的一部分,如果二者根节点所对应的数值相同,则此验证通过,也将验证得到终端的信息正确。
通过如上所述的示例性实施例,为互联网络中存在的信息验证搭建了终端以及第三方参与的信息交互***,进而为终端所发起的各种网络访问行为在第三方实现信息验证,将保证了网络访问行为的接收端不再进行关键信息,例如用户所相关的各种隐私和敏感信息的存储,用户所进行的网络访问中不再需要担心网络访问行为接收端,例如各种不安全网站出现泄露信息的情况,保证了网络访问的安全性。
对于终端所进行的网络访问而言,将借助于第三方完成网络访问所需要的信息验证,获得顺畅的网络访问,并且也不需要反复进行各种注册,由此也不需要向所访问的各种站点透露自身信息,保证了终端的网络访问以及信息的安全性。
对于可供终端访问的各种站点,即前述所指的网络访问行为接收端而言,不再需要支持信息验证的实现,而仅借助于第三方即可完成所需要的信息验证,既达到了验证信息的目的,以确认当前请求进行访问的终端是对应于正常用户的,又获得了轻量级的站点实现,网络中的站点架设变得更为简易。
下述为本发明第三方的实现,通过下述方法实施例的执行提供了一种能够为终端实现信息验证的第三方,进而面向于各种终端以及各种网络访问行为的接收端实现信息验证。
图11是根据一示例性实施例示出的一种实现信息验证的方法的流程图。在一个示例性实施例中,如图11所示,该实现信息验证的方法,如图11所示,至少包括以下步骤。
在步骤810中,接收终端请求进行信息验证所发送的加密摘要,终端为网络访问行为的执行发起信息验证,加密摘要对应于终端需要验证的部分关键信息。
在步骤830中,在相应树结构从叶子节点上溯至根节点,获得验证信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于终端需要验证的所有关键信息。
在步骤850中,通过认证路径对加密摘要验证终端的信息,网络访问行为在终端的信息验证通过时被相应的接收端执行。
其中,终端请求进行信息验证所发送的加密摘要,第三方在接收之后便在相应树结构上对此加密摘要进行检索,如若此树结构同样存在着第三方所接收的加密摘要,则终端所请求进行的信息验证通过。
树结构中检索的快速实现是依赖于树结构中子节点的存在方式,进行叶子节点至根节点之间的路径查找,使用所获得的认证路径对加密摘要进行终端的信息验证。
第三方是独立于终端以及网络访问行为的接收端的,用户或者终端持有的一组关键信息,都以树结构的方式存储于第三方,即每一组关键信息都对应了一个树结构,因此第三方能够为终端实现所需要进行的信息验证。
在一个示例性实施例中,第三方作为独立的鉴权机构,将通过可靠的线下方式进行每一组关键信息的采集,分别为所采集的每一组关键信息构建树结构,并以中心架构或者分布式架构与所对应的公钥关联存储树结构。
例如,通过一线下的方式,对所有用户都进行着身份信息的采集,每一用户所采集的所有身份信息便构成了一组关键信息。在此基础上为所有用户进行树结构的构建和存储。
由此所实现的第三方即可为每一用户都实现所需要进行的信息验证,为用户的网络访问提供了一种更为安全快速的信息验证方式。
在一个示例性实施例中,步骤810包括:根据终端触发网络访问行为所请求进行的信息验证,接收网络访问行为对应接收端发送的信息验证请求,信息验证请求携带所验证信息内容的加密摘要和对应于终端所持有私钥的公钥。
其中,网络访问行为的接收端,诸如各种站点,对终端存在着信息验证需求,例如,验证发起访问的用户是否为真实用户,还是仅仅是一机器,以屏蔽机器发起的虚假访问。
此时,将通过第三方实现对终端所信息验证。第三方接收网络访问行为接收端发送的信息验证请求,该信息验证请求用于发起所对应终端的信息验证,所验证的信息内容对应于信息验证请求所携带的加密摘要。
向第三方传递请求验证信息内容所对应的加密摘要,除此之外,还向第三方传送对应于终端所持有私钥的公钥,以便于进行数据的检索。
在另一个示例性实施例中,该实现信息验证的方法,在步骤830之前,还至少包括以下步骤。
根据信息验证请求中携带的公钥定位树结构,获得所验证信息对应的树结构。
其中,树结构用于进行信息所对应加密摘要的存储,并且每一树结构均与唯一对应的公钥关联存储。
应当理解,树结构是唯一对应于一组关键信息的,而请求进行验证的信息,作为这一组关键信息的一部分,也将是对应于一树结构的。
树结构至少用于进行一组关键信息中每一条关键信息所对应加密摘要的存储。也就是说,树结构上叶子节点对应的数值即为一关键信息所对应的加密摘要,这将使得所实现的第三方既能够进行信息验证,而又没有存储真实信息,不会存在信息泄露的风险。
当然,也可在此叶子节点上进行每一关键信息的存储,此时,上一层级的子节点但进行着所对应加密摘要的存储。
图12是根据另一示例性实施例示出的一种实现信息验证的方法的流程图。该实现信息验证的方法,在另一个示例性实施例中,信息验证请求携带终端为加密摘要所附加的时间戳,如图12所示的,在执行步骤830之前,该实现信息验证的方法还包括以下步骤。
在步骤910中,根据信息验证请求中携带的时间戳判断终端请求进行的信息验证是否超时。
在步骤930中,如果终端请求进行的信息验证超时,拒绝终端请求进行的信息验证,终端的信息验证失败。
其中,信息验证请求携带了时间戳,第三方将用于验证所接收到信息验证请求的有效性,以避免信息验证请求所携带的加密摘要被重复使用,即屏蔽所发生的重放攻击。
第三方根据时间戳校验信息验证请求是否超时,如果已经超时,第三方不予验证,由此也使得被窃取的加密摘要无法重复使用。
应当说明的是,信息验证请求所携带的时间戳,是终端在为所请求进行的信息验证进行签名时,附加于数字签名中的。
具体的,终端为所请求进行的信息验证进行生成对应于部分关键信息,例如,一关键信息的加密摘要,对此加密摘要和当前时间戳签名获得数字签名。
与之相对应的,时间戳随着加密摘要而被第三方接收,进而使得第三方将首先使用所接收的时间戳来验证终端请求进行的信息验证是否超时。
图13是根据图11对应实施例示出的对步骤850进行描述的流程图。该步骤850,在一个示例性实施例中,如图13所示,至少包括以下步骤。
在步骤851中,从认证路径获取沿树结构的叶子节点上溯至根节点的节点值序列。
在步骤853中,根据节点值序列对加密摘要进行所对应树结构的构建,获得加密摘要在所构建树结构上根节点对应的数值。
在步骤855中,验证加密摘要在所构建树结构上根节点对应的数值与节点值序列中对应于根节点的节点值是否一致。
在步骤857中,如果加密摘要对应的数值与对应于根节点的节点值相一致,则验证得到终端的信息正确存在于树结构匹配的所有关键信息中,终端的信息验证通过。
通过如上所述的示例性实施例中,在网络中构建了第三方,此第三方能够支持各自终端以及各种网络访问行为所需要进行的信息验证,进而为终端所进行的信息验证新增了途径,增强了信息验证的灵活性以及安全性。
以一网站所需要进行的信息验证为例,结合具体场景描述上述实现信息验证的方法。此网站所需要进行的信息验证,是为了验证当前访问网站的用户是否为真实用户,仅允许真实用户进行访问。
此时,对于终端而言,所指的用户即为当前所登录的用户,简而言之,所指的用户是终端所对应的用户。用户对网站发起的访问,都通过终端所执行的,因此,对用户所进行的信息验证,便是向终端所对应的用户进行的信息验证。
图14是根据一示例性实施例示出的一信息验证实现架构的示意简图。此信息验证实现架构包括第三方1010、借助于第三方1010进行信息验证的网络访问行为接收端1030,以及触发网络访问行为的终端1050。
本场景需要进行信息验证的网站,是网络访问行为接收端1030的其中之一,即图14所标示的Web服务器1031。
终端1050所对应的用户,通过终端1050向Web服务器1031触发网络访问行为之后,Web服务器1031便向第三方1010请求对此用户进行信息验证。
第三方1010存储了每一用户所对应的真实信息,也就是说,在第三方1010,每一用户对应的真实信息都唯一对应着一个树结构,以在此树结构检索请求验证的信息是否正确存在。
对于用户而言,所访问的Web服务器1031较为小众,因此,并不是日常所熟悉的,当前借助于第三方1010完成信息验证,进而得以顺畅执行所触发的网络访问行为,而未将自身的真实信息遗留在Web服务器1031上。
图15是根据另一示例性实施例示出一信息验证实现架构的示意简图。此信息验证实现架构,正如图15所示的,第三方将由多方组成,构成了一个信息验证业务网络1110,网络访问行为的接收端1030将通过对信息验证业务网络的访问而连接至其中的一节点1111,进而通过此节点1111所在区块链上存储的树结构完成终端所需要进行的信息验证。
每一节点1111都通过区块链存储所有用户的真实信息,每一用户的真实信息仍然是对应于树结构而进行存储的,一树结构存在于一区块上。每一节点1111上区块链所存储的树结构相同。
应当理解,任一节点1111都能够通过线下方式进行用户真实信息的采集,对一用户所采集的真实信息,将对每一字段所对应真实信息生成加密摘要,以此类推,获得此用户采集的所有真实信息所对应的所及加密摘要。
每一加密摘要都作为一叶子节点对应的数值,以此来进行层级运算构建树结构,例如Merkle树。在此节点1111上获得进行了真实信息采集的每一用户唯一对应的树结构。
此时,此节点1111将在信息验证业务网络中对其它节点进行点对点传输,以实现所构建树结构的同步。
此时,对于Web服务器1031而言,连接上任意一节点1111就能够进行当前所请求的信息验证。
至此,可以看到,所进行的信息验证,仅提供了加密摘要,而并未提供明文,并且也仅仅是对应于部分关键信息的,因此,可以有效保护隐私。
进一步详细阐述的,无论第三方是如图14所示的架构,还是如图15所示的分布式架构,其内部为真实信息所相应进行的存储都是大致相同的。
图16是根据一示例性实施例示出的第三方、接收端以及终端三者之间实现信息交互所分别对应的数据结构示意图。在此结合终端请求进行信息验证的过程进行说明。
在终端所进行的信息验证生成私钥和所对应的公钥,其中,私钥将是被终端所持有的,公钥则提供给网络访问行为的接收端,例如图16所示的一组织1330以及第三方,即图16所示的第三方机构1350。
在终端对组织1330所发布的内容进行访问之前,都需要进行着用户的身份验证,即前述所指的信息验证过程,以在验证用户为真实用户之后方允许进行访问;反之,如果所进行的身份验证失败,则认为当前发起访问的用户是虚假用户,即机器,进而拒绝此类用户的访问。
基于此,在对终端所进行的用户身份验证中,如图16所示终端中的数据结构,进行用户身份验证的信息是姓名,即用户所对应真实信息中name字段所对应的内容。
终端对自身真实信息中name字段所对应的信息内容生成加密摘要,并使用私钥,即Private Key对加密摘要HASH(name)和时间戳执行签名算法生成数字签名,这一时间戳是生成加密摘要HASH(name)时对应获得的。
终端将所生成的加密摘要HASH(name)、数字签名Sign以及公钥Public Key发送至组织1330,以请求进行用户的身份验证。由于加密摘要,即HASH
(name)是对应于用户的姓名的,因此当前所请求进行的验证是验证此用户的真实姓名是否存在以及正确性。
组织1330在接收到终端所发送的加密摘要HASH(name)、数字签名Sign以及公钥Public Key之后,首先使用公钥Public Key解密数字签名Sign,以获得一串字符以及时间戳,然后比对这一串字符与加密摘要HASH(name)是否一致,如果一致则校验通过,如果不相一致,则说明加密摘要HASH(name)被篡改。
在校验通过之后,组织1330便将加密摘要HASH(name)、时间戳以及公钥PublicKey发送至第三方机构1350,请求第三方机构1350为用户进行身份验证。
第三方机构1350首先对时间戳验证是否超时,如若超时,则拒绝为此用户进行身份验证,进而导致用户的身份验证失败,向组织1330返回验证失败的结果。
如果并未超时,则如图16所示出的第三方机器1350中的数据结构,第三方机构1350将根据组织1330所发送的公钥Public Key查找树结构,对每一树结构所关联公钥Public Key进行查找,以获得组织1330所发送公钥关联的树结构,即如第三方机构1350中示出的Merkle树1351。
Merkle树1351与Public Key关联存储。具体而言,Public Key与Merkle树1351中根节点1400上的节点值,即Root hash关联存储。
正如Merkle树1351所示出的,用户的所有真实信息中,每一字段所对应的信息内容都分别存储于每一叶子节点上。例如,叶子节点1401上存储着name字段所对应信息内容;叶子节点1402上存储着sex字段所对应信息内容;叶子节点1403上存储着mobile字段所对应信息内容;叶子节点1405上存储着address字段所对应信息内容。
由此,将对每一叶子节点上存储的信息内容哈希化,所获得的哈希值将存储叶子节点所对应的上一层级子节点。例如,子节点1501上存储着HASH(name),即name字段所对应信息内容的哈希值;子节点1502上存储着HASH(sex),即sex字段所对应信息内容的哈希值;子节点1503上存储着HASH(mobile),即mobile字段所对应信息内容的哈希值;子节点1505上存储着HASH(address),即address字段所对应信息内容的哈希值。
以此类推,子节点之间两两向上哈希,直至根节点。
第三方机构1350为每一用户的真实信息存储都构建了Merkle树1351,并与此用户的公钥关联存储。
当然,应当说明的是,为每一用户的真实信息构建的Merkle树1351,也可不进行所对应信息内容的存储,而是直接在叶子节点进行每一字段所对应信息内容的哈希值存储,由此既不存储真正的信息内容,又能够实现针对于真正信息内容的验证,安全性高,没有信息被泄露被篡改的风险。
第三方机构1350通过查找得到的Merkle树1351,对加密摘要进行验证,如果此加密摘要是在Merkle树1351上存在且正确的,则向组织1330返回验证通过的结果,此时,用户即可在终端上实现所触发的网络访问。
在此信息交互中,可以看到,组织1330并无法获知用户的真实信息,而对于用户在终端上所提供进行验证的信息,也仅仅是部分真实信息,并且对此而生成的加密摘要也是在终端上执行的,因此,对于终端而言,不存在信息泄露的风险和可能性,避免了身份冒用。
由此,在此信息验证的进行中,仅提供部分真实信息,以此来验证所有真实信息,验证的准确性得到提高的同时,也保护了隐私,避免信息暴露。
下述为本发明装置实施例,可以用于执行本发明上述实现信息验证的方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明实现信息验证的方法实施例。
图17是一示例性实施例示出的一种实现信息验证的***的框图。在一个示例性实施例中,该实现信息验证的***部署于终端以及对终端进行信息验证的第三方,如图17所示,该***包括但不限于:验证发起模块1710、请求验证模块1730、路径搜索模块1750和加密摘要验证模块1770。
验证发起模块1710,用于对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,所述信息是终端所需要验证的部分关键信息;
请求验证模块1730,用于通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证;
路径搜索模块1750,用于在第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端所需要验证的所有关键信息;
加密摘要验证模块1770,用于在所述第三方通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中。
图18是根据图17对应实施例示出的对验证发起模块进行描述的框图。在一个示例性实施例中,该验证发起模块1710,如图18所示,包括但不限于:指令接收单元1711和加密摘要生成单元1713。
指令接收单元1711,用于接收终端所触发网络访问行为的信息验证指令;
加密摘要生成单元1713,用于根据所述信息验证指令指示验证的信息,生成所对应信息内容的加密摘要。
图19是根据图18对应是实施例示出的对请求验证模块进行描述的框图。在一个示例性实施例中,该请求验证模块1730,如图19所示,包括但不限于:签名单元1731、请求发起单元1733和第三方请求单元1735。
签名单元1731,被配置于所述终端,所述签名单元用于对所述加密摘要执行签名算法获得所对应的数字签名;
请求发起单元1733,被配置于所述终端,所述请求发起单元用于通过所述数字签名和加密摘要请求所述网络访问行为的接收端验证所述数字签名;
第三方请求单元1735,被配置于所述网络访问行为的接收端,所述第三方请求单元用于如果所述数字签名验证通过,则通过所述加密摘要请求所述第三方对所述终端进行信息验证。
在一个示例性实施例中,第三方请求单元被配置执行:
获取所述终端待验证信息所对应的加密摘要以及对应于所述终端所持有私钥的公钥;
根据所述加密摘要和公钥为所述终端所进行的信息验证向第三方发起信息验证请求,所述信息验证请求携带所述加密摘要和公钥。
在一个示例性实施例中,信息验证请求携带终端为加密摘要所附加的时间戳,该实现信息验证的***还包括超时验证模块。
超时验证模块,被配置于第三方,超时验证模块用于根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,则所述超时验证模块拒绝所述终端请求进行的信息验证。
在一个示例性实施例中,请求发起单元1733被配置执行:
获取所持有私钥对应的公钥;
发送所述公钥、数字签名和加密摘要至所述网络访问行为的接收端,以请求所述接收端使用所述公钥根据所述加密摘要验证所述数字签名。
图20是根据图17对应实施例示出的对第三方配置的路径搜索模块进行描述的框图。在一个示例性实施例中,如图20所示,该路径搜索模块1750包括但不限于:公钥获取单元1751、树查找单元1753和路径搜索单元1755。
公钥获取单元1751,用于通过终端所请求进行的信息验证,获得对应于所述终端所持有私钥的公钥;
树查找单元1753,用于根据获得的所述公钥定位相应的树结构,所述第三方是将公钥和树结构关联存储的;
路径搜索单元1755,用于在所述树结构上根据请求验证的信息,检索对应于所述信息的叶子节点,从检索得到的所述叶子节点上溯至根节点获得若干节点所构成的认证路径。
图21是根据图17对应实施例示出的对加密摘要验证模块进行描述的框图。在一个示例性实施例中,如图21所示,该加密摘要验证模块1770包括但不限于:序列获取单元1771、重构单元1773和比对验证单元1775。
序列获取单元1771,用于从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
重构单元1773,用于根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
比对验证单元1775,用于验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则所述比对验证单元1775验证得到所述终端的信息正确。
图22是根据一示例性实施例示出的一种实现信息验证的装置的框图。在一个示例性实施例中,该实现信息验证的装置,如图22所示,包括但不限于:加密摘要接收模块1810、认证路径获得模块1830和正确性验证模块1850。
加密摘要接收模块1810,用于接收终端请求进行信息验证所发送的加密摘要,所述终端为网络访问行为的执行发起所述信息验证,所述加密摘要对应于所述终端需要验证的部分关键信息;
认证路径获得模块1830,用于在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端需要验证的所有关键信息;
正确性验证模块1850,用于通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述网络访问行为将在所述终端的信息验证通过时被相应的接收端执行。
在一个示例性实施例中,加密摘要接收模块1810还用于根据终端触发网络访问行为所请求进行的信息验证,接收所述网络访问行为对应接收端发送的信息验证请求,所述信息验证请求携带所验证信息内容的加密摘要和对应于终端所持有私钥的公钥。
在另一个示例性实施例中,该实现信息验证的装置还包括公钥定位模块。该公钥定位模块用于根据所述信息验证请求中携带的公钥定位树结构,获得所请求验证信息对应的树结构,
其中,所述树结构用于进行信息所对应加密摘要的存储,并且每一树结构均与唯一对应的公钥关联存储。
在另一个示例性实施例中,该实现信息验证的装置还包括时间戳判断模块。时间戳判断模块用于根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,所述时间戳判断模块拒绝所述终端请求进行的信息验证,所述终端的信息验证失败。
图23是根据另一示例性实施例示出的正确性验证模块的框图。在一个示例性实施例中,该正确性验证模块1850,如图23所示,包括但不限于:节点上溯单元1851、树重构单元1853和根节点比对单元1855。
节点上溯单元1851,用于从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
树重构单元1853,用于根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
根节点比对单元1855,用于验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则所述根节点比对单元1855验证得到所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述终端的信息验证通过。
可选的,本发明还提供一种计算机***,该计算机***可以用于前述所示实施环境中,执行如上任一所示的方法的全部或者部分步骤。该计算机***包括:
处理器;
用于存储处理器可执行指令的存储器;
所述计算机可读指令被所述处理器执行时实现前述方法。
该实施例中的装置的处理器执行操作的具体方式已经在前述方法的实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (15)

1.一种实现信息验证的方法,其特征在于,所述方法包括:
对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,所述信息是终端所需要验证的部分关键信息;
通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证;
所述第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端所需要验证的所有关键信息;
通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中。
2.根据权利要求1所述的方法,其特征在于,所述对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,包括:
接收终端所触发网络访问行为的信息验证指令;
根据所述信息验证指令指示验证的信息,生成所对应信息内容的加密摘要。
3.根据权利要求1所述的方法,其特征在于,所述通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证,包括:
所述终端对所述加密摘要执行签名算法获得所对应的数字签名;
通过所述数字签名和加密摘要请求所述网络访问行为的接收端验证所述数字签名;
如果所述数字签名验证通过,则所述网络访问行为的接收端通过所述加密摘要请求所述第三方对所述终端进行信息验证。
4.根据权利要求3所述的方法,其特征在于,所述网络访问行为的接收端通过所述加密摘要请求所述第三方对所述终端进行信息验证,包括:
所述网络访问行为的接收端获取所述终端待验证信息所对应的加密摘要以及对应于所述终端所持有私钥的公钥;
根据所述加密摘要和公钥为所述终端所进行的信息验证向第三方发起信息验证请求,所述信息验证请求携带所述加密摘要和公钥。
5.根据权利要求4所述的方法,其特征在于,所述信息验证请求携带终端为所述加密摘要所附加的时间戳,所述第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径之前,所述方法还包括:
所述第三方根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,拒绝所述终端请求进行的信息验证。
6.根据权利要求1所述的方法,其特征在于,所述第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,包括:
所述第三方通过终端所请求进行的信息验证,获得对应于所述终端所持有私钥的公钥;
根据获得的所述公钥定位相应的树结构,所述第三方是将公钥和树结构关联存储的;
在所述树结构上根据请求验证的信息,检索对应于所述信息的叶子节点,从检索得到的所述叶子节点上溯至根节点获得若干节点所构成的认证路径。
7.根据权利要求1所述的方法,其特征在于,所述通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中,包括:
从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则验证得到所述终端的信息正确。
8.一种实现信息验证的方法,其特征在于,所述方法包括:
接收终端请求进行信息验证所发送的加密摘要,所述终端为网络访问行为的执行发起所述信息验证,所述加密摘要对应于所述终端需要验证的部分关键信息;
在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端需要验证的所有关键信息;
通过所述认证路径对所述加密摘要验证所述终端的信息,所述网络访问行为将在所述终端的信息验证通过时被相应的接收端执行。
9.根据权利要求8所述的方法,其特征在于,所述接收终端请求进行信息验证所发送的加密摘要,包括:
根据终端触发网络访问行为所请求进行的信息验证,接收所述网络访问行为对应接收端发送的信息验证请求,所述信息验证请求携带所验证信息内容的加密摘要和对应于终端所持有私钥的公钥。
10.根据权利要求9所述的方法,其特征在于,所述在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径之前,所述方法还包括:
根据所述信息验证请求中携带的公钥定位树结构,获得所请求验证信息对应的树结构,
其中,所述树结构用于进行信息所对应加密摘要的存储,并且每一树结构均与唯一对应的公钥关联存储。
11.根据权利要求9所述的方法,其特征在于,所述信息验证请求携带终端为所述加密摘要所附加的时间戳,所述在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径之前,所述方法还包括:
根据所述信息验证请求中携带的时间戳判断所述终端请求进行的信息验证是否超时;
如果所述终端请求进行的信息验证超时,拒绝所述终端请求进行的信息验证,所述终端的信息验证失败。
12.根据权利要求8所述的方法,其特征在于,所述通过所述认证路径对所述加密摘要验证所述终端的信息,包括:
从所述认证路径获取沿所述树结构的叶子节点上溯至根节点的节点值序列;
根据所述节点值序列对所述加密摘要进行所对应树结构的构建,获得所述加密摘要在所构建树结构上根节点对应的数值;
验证所述加密摘要在所构建树结构上根节点对应的数值与所述节点值序列中对应于根节点的节点值是否一致;
如果所述加密摘要对应的数值与对应于根节点的节点值相一致,则验证得到所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述终端的信息验证通过。
13.一种实现信息验证的***,其特征在于,所述***部署于终端以及对终端进行信息验证的第三方,所述***包括:
验证发起模块,用于对终端的网络访问行为发起信息验证,获得所验证信息内容的加密摘要,所述信息是终端所需要验证的部分关键信息;
请求验证模块,用于通过所述加密摘要为所述网络访问行为请求第三方对终端进行信息验证;
路径搜索模块,用于在第三方根据所述终端请求进行的信息验证,在相应树结构由叶子节点上溯至根节点获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端所需要验证的所有关键信息;
加密摘要验证模块,用于在所述第三方通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中。
14.一种实现信息验证的装置,其特征在于,所述装置包括:
加密摘要接收模块,用于接收终端请求进行信息验证所发送的加密摘要,所述终端为网络访问行为的执行发起所述信息验证,所述加密摘要对应于所述终端需要验证的部分关键信息;
认证路径获得模块,用于在相应树结构从叶子节点上溯至根节点,获得验证所述信息对应的认证路径,相应树结构上叶子节点对应的数值匹配于所述终端需要验证的所有关键信息;
正确性验证模块,用于通过所述认证路径对所述加密摘要验证所述终端的信息正确存在于所述树结构匹配的所有关键信息中,所述网络访问行为将在所述终端的信息验证通过时被相应的接收端执行。
15.一种计算机***,其特征在于,所述计算机***包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至12中任一项所述的方法。
CN201810553455.4A 2018-05-31 2018-05-31 实现信息验证的方法、***、装置和计算机*** Active CN108848079B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810553455.4A CN108848079B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、***、装置和计算机***
CN201910672000.9A CN110460588B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、装置、计算机***和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810553455.4A CN108848079B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、***、装置和计算机***

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910672000.9A Division CN110460588B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、装置、计算机***和存储介质

Publications (2)

Publication Number Publication Date
CN108848079A true CN108848079A (zh) 2018-11-20
CN108848079B CN108848079B (zh) 2021-05-11

Family

ID=64211061

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810553455.4A Active CN108848079B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、***、装置和计算机***
CN201910672000.9A Active CN110460588B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、装置、计算机***和存储介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910672000.9A Active CN110460588B (zh) 2018-05-31 2018-05-31 实现信息验证的方法、装置、计算机***和存储介质

Country Status (1)

Country Link
CN (2) CN108848079B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684878A (zh) * 2018-12-17 2019-04-26 杭州安恒信息技术股份有限公司 一种基于区块链技术隐私信息防篡改方法及***
CN110086818A (zh) * 2019-05-05 2019-08-02 绍兴文理学院 一种云文件安全存储***及访问控制方法
CN113647050A (zh) * 2019-03-25 2021-11-12 美光科技公司 基于块链的存储器命令验证

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112929871A (zh) * 2019-12-05 2021-06-08 上海艾拉比智能科技有限公司 Ota升级包的获取方法、电子设备以及存储介质
CN112861189B (zh) * 2021-02-04 2024-02-06 北京百度网讯科技有限公司 签名的生成方法和验证方法、装置、设备和介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101651719A (zh) * 2009-09-11 2010-02-17 广东宇天信通通信科技有限公司 通信***、均衡服务器及数据验证方法
CN105072086A (zh) * 2015-07-06 2015-11-18 武汉科技大学 一种基于MapReduce的云存储批量审计方法
CN105593872A (zh) * 2013-07-01 2016-05-18 三星电子株式会社 数据认证的方法和设备
CN105868369A (zh) * 2016-03-30 2016-08-17 电子科技大学 一种基于Merkle树结构的数据模型验证***与方法
WO2016131473A1 (en) * 2015-02-16 2016-08-25 Nec Europe Ltd. Method and system for verifying information of a data item in a plurality of different data items
US20170033932A1 (en) * 2013-08-05 2017-02-02 Guardtime Ip Holdings Limited Blockchain-supported, node id-augmented digital record signature method
CN106899412A (zh) * 2017-03-30 2017-06-27 北京链银博科技有限责任公司 一种区块链隐私保护方法、装置及***
CN107181765A (zh) * 2017-07-25 2017-09-19 光载无限(北京)科技有限公司 基于区块链技术的网络数字身份认证方法
CN107196934A (zh) * 2017-05-18 2017-09-22 电子科技大学 一种基于区块链的云数据管理方法
CN107563910A (zh) * 2017-07-21 2018-01-09 广东工业大学 一种基于区块链技术的二手房交易方法
EP3313020A1 (en) * 2016-10-24 2018-04-25 Aliasnet S.R.L. Method of digital identity generation and authentication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595504B2 (en) * 2008-08-12 2013-11-26 Industrial Technology Research Institute Light weight authentication and secret retrieval
CN103685138B (zh) * 2012-08-30 2016-12-21 卓望数码技术(深圳)有限公司 移动互联网上的Android平台应用软件的认证方法和***
CN106330817A (zh) * 2015-06-17 2017-01-11 腾讯科技(深圳)有限公司 一种网页访问方法、装置及终端
CN105939197B (zh) * 2016-03-17 2019-02-12 天地融科技股份有限公司 一种身份认证方法和***
DE102017204536B3 (de) * 2017-03-17 2018-03-08 Bundesdruckerei Gmbh Ausstellen virtueller Dokumente in einer Blockchain
CN106850699B (zh) * 2017-04-10 2019-11-29 中国工商银行股份有限公司 一种移动终端登录认证方法及***
CN107241339B (zh) * 2017-06-29 2020-03-03 北京小米移动软件有限公司 身份验证方法、装置和存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101651719A (zh) * 2009-09-11 2010-02-17 广东宇天信通通信科技有限公司 通信***、均衡服务器及数据验证方法
CN105593872A (zh) * 2013-07-01 2016-05-18 三星电子株式会社 数据认证的方法和设备
US20170033932A1 (en) * 2013-08-05 2017-02-02 Guardtime Ip Holdings Limited Blockchain-supported, node id-augmented digital record signature method
WO2016131473A1 (en) * 2015-02-16 2016-08-25 Nec Europe Ltd. Method and system for verifying information of a data item in a plurality of different data items
CN105072086A (zh) * 2015-07-06 2015-11-18 武汉科技大学 一种基于MapReduce的云存储批量审计方法
CN105868369A (zh) * 2016-03-30 2016-08-17 电子科技大学 一种基于Merkle树结构的数据模型验证***与方法
EP3313020A1 (en) * 2016-10-24 2018-04-25 Aliasnet S.R.L. Method of digital identity generation and authentication
CN106899412A (zh) * 2017-03-30 2017-06-27 北京链银博科技有限责任公司 一种区块链隐私保护方法、装置及***
CN107196934A (zh) * 2017-05-18 2017-09-22 电子科技大学 一种基于区块链的云数据管理方法
CN107563910A (zh) * 2017-07-21 2018-01-09 广东工业大学 一种基于区块链技术的二手房交易方法
CN107181765A (zh) * 2017-07-25 2017-09-19 光载无限(北京)科技有限公司 基于区块链技术的网络数字身份认证方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684878A (zh) * 2018-12-17 2019-04-26 杭州安恒信息技术股份有限公司 一种基于区块链技术隐私信息防篡改方法及***
CN113647050A (zh) * 2019-03-25 2021-11-12 美光科技公司 基于块链的存储器命令验证
CN110086818A (zh) * 2019-05-05 2019-08-02 绍兴文理学院 一种云文件安全存储***及访问控制方法
CN110086818B (zh) * 2019-05-05 2020-05-19 绍兴文理学院 一种云文件安全存储***及访问控制方法

Also Published As

Publication number Publication date
CN110460588B (zh) 2022-11-22
CN110460588A (zh) 2019-11-15
CN108848079B (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
JP7222036B2 (ja) モデルトレーニングシステムおよび方法および記憶媒体
CN108848079A (zh) 实现信息验证的方法、***、装置和计算机***
CN108989346B (zh) 基于账号隐匿的第三方有效身份托管敏捷认证访问方法
CN104378376B (zh) 基于soa的单点登录方法、认证服务器和浏览器
CN104184713B (zh) 终端识别方法、机器识别码注册方法及相应***、设备
US20190139047A1 (en) Block chain based resource management
US11316681B2 (en) User identity authentication method and device, readable storage medium and computer equipment
US20130318581A1 (en) Multi-factor authentication using a unique identification header (uidh)
CN108923932A (zh) 一种去中心化协同验证模型及验证算法
CN105210076B (zh) 弹性、可恢复的动态设备识别
Li et al. A provably secure and lightweight mutual authentication protocol in fog-enabled social Internet of vehicles
CN110096894B (zh) 一种基于区块链的数据匿名共享***及方法
CN106878017A (zh) 用于网络身份认证的方法、用户终端、网站服务器和***
CN112261082B (zh) 基于区块链和安全多方计算的被动dns数据共享方法及***
Miao et al. VKSE-MO: Verifiable keyword search over encrypted data in multi-owner settings
Shao et al. Achieve efficient and verifiable conjunctive and fuzzy queries over encrypted data in cloud
CN114629713B (zh) 身份验证方法、装置及***
CN112448946A (zh) 基于区块链的日志审计方法及装置
CN113591121A (zh) 一种资源访问权限的配置方法、装置、设备和存储介质
CN108156139A (zh) 无证书的可验证多关键字密文查询***及方法
CN112037870B (zh) 支持数据分区的双服务器轻量化可搜索加密方法及***
Jordan et al. Viceroy: Gdpr-/ccpa-compliant enforcement of verifiable accountless consumer requests
CN111132149B (zh) 5g用户终端的注册方法、用户终端设备及介质
CN109729045A (zh) 单点登录方法、***、服务器以及存储介质
Abdussami et al. BSAPM: BlockChain based secured authentication protocol for large scale WSN with FPGA implementation

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