太阳城集团

  • / 24
  • 下载费用:30 金币  

数据查询方法、装置及节点设备.pdf

摘要
申请专利号:

太阳城集团CN201680002915.3

申请日:

2016.12.30

公开号:

CN106716421A

公开日:

2017.05.24

当前法律状态:

实审

有效性:

审中

法律详情: 实质审查的生效IPC(主分类):G06F 17/30申请日:20161230|||公开
IPC分类号: G06F17/30; H04L29/06 主分类号: G06F17/30
申请人: 深圳前海达闼云端智能科技有限公司
发明人: 骆磊
地址: 518000 广东省深圳市前海深港合作区前湾一路1号A栋201室(入驻深圳市前海商务秘书有限公司)
优先权:
专利代理机构: 北京英创嘉友知识产权代理事务所(普通合伙) 11447 代理人: 姚再英;魏嘉熹
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201680002915.3

授权太阳城集团号:

|||

法律状态太阳城集团日:

2017.06.16|||2017.05.24

法律状态类型:

实质审查的生效|||公开

摘要

本发明公开了一种数据查询方法、装置及节点设备,所述方法包括:接收查询请求,确定与所述查询请求对应的待查询数据的安全等级;根据所述安全等级确定查询节点,所述查询节点为区块链网络中的节点;发送所述查询请求给所确定的所述查询节点;接收所述查询节点返回的查询结果,如果比例最高的查询结果满足预设条件,将所述比例最高的查询结果作为所述待查询数据对应的查询结果。本公开根据不同安全等级确定不同的查询策略,避免了单个节点被攻击、数据被篡改等导致的查询错误;提高查询结果的可信度和正确率,防止区块链数据被篡改带来的查询错误和安全风险。

权利要求书

1.一种数据查询方法,其特征在于,应用于区块链网络的区块链节点,所述方法包括:
接收查询请求,确定与所述查询请求对应的待查询数据的安全等级;
根据所述安全等级确定查询节点,所述查询节点为区块链网络中的节点;
发送所述查询请求给所确定的所述查询节点;
接收所述查询节点返回的查询结果,如果比例最高的查询结果满足预设条件,将所述
比例最高的查询结果作为所述待查询数据对应的查询结果。
2.根据权利要求1所述的方法,其特征在于,接收查询请求,确定与所述查询请求对应
的待查询数据的安全等级的步骤包括:
在存储有所述待查询数据与安全等级的对应关系的区块中,查询所述待查询数据对应
的安全等级。
3.根据权利要求1所述的方法,其特征在于,如果比例最高的查询结果满足预设条件,
将所述比例最高的查询结果作为所述待查询数据对应的查询结果的步骤包括:
将所述比例最高的查询结果作为第一候选结果;
当返回的查询结果为所述第一候选结果的查询节点数与查询节点总数的比值大于或
等于所述待查询数据对应的查询成功判断阈值时,将所述比例最高的查询结果作为所述待
查询数据对应的查询结果。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当比例最高的查询结果未满足预设条件时,对查询节点的数量进行调整;
根据调整后的查询节点数量,确定查询节点;
将所述查询请求转发给所确定的所述查询节点;以及
根据查询节点返回的查询结果,确定所述待查询数据对应的查询结果。
5.根据权利要求4所述的方法,其特征在于,根据查询节点返回的查询结果,确定所述
待查询数据对应的查询结果的步骤包括:
将比例最高的查询结果作为第二候选结果;
当返回的查询结果为所述第二候选结果的查询节点数与查询节点总数的比值小于所
述待查询数据对应的查询成功判断阈值时,向区块链网络发布预警太阳城集团。
6.一种数据查询方法,其特征在于,应用于区块链网络的区块链节点,所述方法包括:
根据目标区块链节点发送的查询请求,确定与所述查询请求对应的待查询数据的安全
等级;
根据所述安全等级确定响应所述查询请求的概率;
当根据所述概率,确定响应所述查询请求时,返回查询结果给所述目标区块链节点。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当重复接收到所述查询请求时,对所述概率进行调整;
当根据调整后的概率,确定响应所述查询请求时,返回查询结果给所述目标区块链节
点。
8.根据权利要求6所述的方法,其特征在于,所述返回查询结果给所述目标区块链节点
的步骤包括:
当所述查询请求中包括交易哈希时,根据所述交易哈希,确定所述待查询数据所在的
区块;
从确定的区块中获取数据,以及将获取的数据作为查询结果返回给所述目标区块链节
点。
9.根据权利要求6所述的方法,其特征在于,所述返回查询结果给所述目标区块链节点
的步骤包括:
当所述查询请求中包括交易哈希时,根据所述交易哈希,对交易哈希对应的交易进行
验证;
将验证结果作为所述查询结果返回给所述目标区块链节点,所述验证结果至少包括:
交易是否已被记录到区块中,以及得到的确认区块数。
10.根据权利要求6所述的方法,其特征在于,所述返回查询结果给所述目标区块链节
点的步骤包括:
当所述查询请求中包括账户地址时,根据所述账户地址,确定账户地址所对应的区块;
从确定的区块中获取数据,以及将获取的数据作为所述查询结果返回给所述目标区块
链节点。
11.根据权利要求6所述的方法,其特征在于,所述返回查询结果给所述目标区块链节
点的步骤包括:
当所述查询请求中包括查询关键字时,根据所述查询关键字,对区块链进行遍历,获得
与关键字相对应的数据;以及
将与所述关键字相对应的数据作为所述查询结果返回给所述目标区块链节点。
12.一种数据查询装置,其特征在于,应用于区块链网络的区块链节点,所述装置包括:
安全等级确定模块,被配置为接收查询请求,确定与所述查询请求对应的待查询数据
的安全等级;
第一查询节点确定模块,被配置为根据所述安全等级确定查询节点,所述查询节点为
区块链网络中的节点;
第一查询请求转发模块,被配置为发送所述查询请求给所确定的所述查询节点;
第一查询结果确定模块,被配置为接收所述查询节点返回的查询结果,如果比例最高
的查询结果满足预设条件,将所述比例最高的查询结果作为所述待查询数据对应的查询结
果。
13.根据权利要求12所述的装置,其特征在于,所述安全等级确定模块,被配置为在存
储有所述待查询数据与安全等级的对应关系的区块中,查询所述待查询数据对应的安全等
级。
14.根据权利要求12所述的装置,其特征在于,第一查询结果确定模块包括:
第一候选结果确定子模块,被配置为将所述比例最高的查询结果作为第一候选结果;
第一查询结果确定子模块,被配置为在返回的查询结果为所述第一候选结果的查询节
点数与查询节点总数的比值大于或等于所述待查询数据对应的查询成功判断阈值时,将所
述比例最高的查询结果作为所述待查询数据对应的查询结果。
15.根据权利要求12所述的装置,其特征在于,所述装置还包括:
查询节点调整模块,被配置为当比例最高的查询结果未满足预设条件时,对查询节点
的数量进行调整;
第二查询节点确定模块,被配置为根据调整后的查询节点数量,确定查询节点;
第二查询请求转发模块,被配置为将所述查询请求转发给所确定的所述查询节点;以

第二查询结果确定模块,被配置为根据查询节点返回的查询结果,确定所述待查询数
据对应的查询结果。
16.根据权利要求15所述的装置,其特征在于,第二查询结果确定模块包括:
第二候选结果确定子模块,被配置为将比例最高的查询结果作为第二候选结果;
预警太阳城集团发布子模块,被配置为在返回的查询结果为所述第二候选结果的查询节点数
与查询节点总数的比值小于所述待查询数据对应的查询成功判断阈值时,向区块链网络发
布预警太阳城集团。
17.一种数据查询装置,其特征在于,应用于区块链网络的区块链节点,所述装置包括:
安全等级确定模块,被配置为根据目标区块链节点发送的查询请求,确定与所述查询
请求对应的待查询数据的安全等级;
查询概率确定模块,被配置为根据所述安全等级确定响应所述查询请求的概率;
第一查询结果返回模块,被配置为在根据所述概率,确定响应所述查询请求时,返回查
询结果给所述目标区块链节点。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
概率调整模块,被配置为在重复接收到所述查询请求时,对所述概率进行调整;
第二查询结果返回模块,被配置为在根据调整后的概率,确定响应所述查询请求时,返
回查询结果给所述目标区块链节点。
19.根据权利要求17所述的装置,其特征在于,所述第一查询结果返回模块包括:
第一区块确定子模块,被配置为在所述查询请求中包括交易哈希时,根据所述交易哈
希,确定所述待查询数据所在的区块;
第一查询结果确定子模块,被配置为从确定的区块中获取数据,以及将获取的数据作
为查询结果返回给所述目标区块链节点。
20.根据权利要求17所述的装置,其特征在于,所述第一查询结果返回模块包括:
交易验证子模块,被配置为在所述查询请求中包括交易哈希时,根据所述交易哈希,对
交易哈希对应的交易进行验证;
第二查询结果确定子模块,被配置为将验证结果作为所述查询结果返回给所述目标区
块链节点,所述验证结果至少包括:交易是否已被记录到区块中,以及得到的确认区块数。
21.根据权利要求17所述的装置,其特征在于,所述第一查询结果返回模块包括:
第二区块确定子模块,被配置为当所述查询请求中包括账户地址时,根据所述账户地
址,确定账户地址所对应的区块;
第三查询结果确定子模块,被配置为从确定的区块中获取数据,以及将获取的数据作
为所述查询结果返回给所述目标区块链节点。
22.根据权利要求17所述的装置,其特征在于,所述第一查询结果返回模块包括:
第三区块确定子模块,被配置为当所述查询请求中包括查询关键字时,根据所述查询
关键字,对区块链进行遍历,获得与关键字相对应的数据;以及
第四查询结果确定子模块,被配置为将与所述关键字相对应的数据作为所述查询结果
返回给所述目标区块链节点。
23.一种计算机程序产品,其特征在于,所述计算机程序产品包含能够由可编程的装置
执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行权利要求
1至5中任一项所述的方法的代码部分。
24.一种非临时性计算机可读存储介质,其特征在于,所述非临时性计算机可读存储介
质中包括一个或多个程序,所述一个或多个程序用于执行权利要求1至5中任一项所述的方
法。
25.一种节点设备,其特征在于,包括:
权利要求24中所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
26.一种计算机程序产品,其特征在于,所述计算机程序产品包含能够由可编程的装置
执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行权利要求
6至11中任一项所述的方法的代码部分。
27.一种非临时性计算机可读存储介质,其特征在于,所述非临时性计算机可读存储介
质中包括一个或多个程序,所述一个或多个程序用于执行权利要求6至11中任一项所述的
方法。
28.一种节点设备,其特征在于,包括:
权利要求27中所述的非临时性计算机可读存储介质;以及
一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。

说明书

数据查询方法、装置及节点设备

技术领域

本公开涉及区块链技术领域,尤其涉及一种数据查询方法、装置及节点设备。

背景技术

区块链是由区块链网络中所有节点共同参与维护的去中心化分布式数据库系统,
它是由一系列基于密码学方法产生的数据块组成,每个数据块即为区块链中的一个区块。
根据产生太阳城集团的先后顺序,区块被有序地链接在一起,形成一个数据链条,被形象地称为区
块链。区块链有其特有的区块产生、交易产生和验证协议,具有不可篡改、不可伪造和完全
可追溯等安全特性。

区块链网络基于P2P网络,每个参与交易和区块存储、验证、转发的P2P网络节点都
是一个区块链网络中的节点。区块链数据对每个节点是完全公开的,节点可以随意查看任
何一个区块任意一笔交易的太阳城集团。

相关技术中,当查询者需要查询区块链中的数据时,若查询者本身就是区块链网
络中的一个节点,则只要从自己存储的区块链副本中进行查询即可;若查询者并不是区块
链网络中的节点,则需要向区块链网络中的节点发送查询请求,以实现数据查询。

由于区块链网络中的单一节点有被数据篡改或黑客攻击的可能性,因此,若某一
节点的区块链副本已经被篡改了,则查询者向其发送查询请求后会接收到错误的查询结
果。

发明内容

为克服相关技术中存在的问题,本公开提供一种数据查询方法、装置及节点设备。

根据本公开实施例的第一方面,提供一种数据查询方法,应用于区块链网络的区
块链节点,所述方法包括:

接收查询请求,确定与所述查询请求对应的待查询数据的安全等级;

根据所述安全等级确定查询节点,所述查询节点为区块链网络中的节点;

发送所述查询请求给所确定的所述查询节点;

接收所述查询节点返回的查询结果,如果比例最高的查询结果满足预设条件,将
所述比例最高的查询结果作为所述待查询数据对应的查询结果。

根据本公开实施例的第二方面,提供一种数据查询方法,应用于区块链网络的区
块链节点,所述方法包括:

根据目标区块链节点发送的查询请求,确定与所述查询请求对应的待查询数据的
安全等级;

根据所述安全等级确定响应所述查询请求的概率;

当根据所述概率,确定响应所述查询请求时,返回查询结果给所述目标区块链节
点。

根据本公开实施例的第三方面,提供一种数据查询装置,应用于区块链网络的区
块链节点,所述装置包括:

安全等级确定模块,被配置为接收查询请求,确定与所述查询请求对应的待查询
数据的安全等级;

第一查询节点确定模块,被配置为根据所述安全等级确定查询节点,所述查询节
点为区块链网络中的节点;

第一查询请求转发模块,被配置为发送所述查询请求给所确定的所述查询节点;

第一查询结果确定模块,被配置为接收所述查询节点返回的查询结果,如果比例
最高的查询结果满足预设条件,将所述比例最高的查询结果作为所述待查询数据对应的查
询结果。

根据本公开实施例的第四方面,提供一种数据查询装置,应用于区块链网络的区
块链节点,所述装置包括:

安全等级确定模块,被配置为根据目标区块链节点发送的查询请求,确定与所述
查询请求对应的待查询数据的安全等级;

查询概率确定模块,被配置为根据所述安全等级确定响应所述查询请求的概率;

第一查询结果返回模块,被配置为在根据所述概率,确定响应所述查询请求时,返
回查询结果给所述目标区块链节点。

根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品
包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置
执行时用于执行上述第一方面的方法的代码部分。

根据本公开实施例的第六方面,提供一种非临时性计算机可读存储介质,所述非
临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行上述第
一方面所述的方法。

根据本公开实施例的第七方面,提供一种节点设备,包括:

上述第六方面所述的非临时性计算机可读存储介质;以及

一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。

根据本公开实施例的第八方面,提供一种计算机程序产品,其特征在于,所述计算
机程序产品包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可
编程的装置执行时用于执行上述第二方面所述的方法的代码部分。

根据本公开实施例的第九方面,提供一种非临时性计算机可读存储介质,所述非
临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行上述第
二方面所述的方法。

根据本公开实施例的第十方面,提供一种节点设备,包括:

上述第九方面所述的非临时性计算机可读存储介质;以及

一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。

本公开实施例至少包括以下有益效果:根据不同安全等级确定不同的查询策略,
避免了单个节点被攻击、数据被篡改等导致的查询错误;提高查询结果的可信度和正确率,
防止区块链数据被篡改带来的查询错误和安全风险。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具
体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是本公开一实施例的区块链网络的示意图;

图2是本公开一实施例的数据查询方法的流程示意图;

图3是本公开另一实施例的数据查询方法的流程示意图;

图4是本公开一实施例中候选结果未满足预先条件时的处理流程示意图;

图5是本公开一实施例中查询失败时,目标区块链节点发布太阳城集团的示意图;

图6是本公开一实施例的数据查询方法的流程示意图;

图7是本公开另一实施例的数据查询方法的流程示意图;

图8是本公开一实施例的数据查询装置的框图;

图9是本公开另一实施例的数据查询装置的框图;

图10是根据一示例性实施例示出的一种用于数据查询方法的装置的框图。

具体实施方式

在对本公开提供的区块链权限控制方法、装置及节点设备进行说明之前,先对本
公开各个实施例所涉及的区块链进行介绍。

本公开实施例中,将区块链中的数据根据属性设置不同安全等级,而不同安全等
级的数据在查询时则对应不同的查询节点随机抽取比例,进而由相应数量的查询节点进行
数据查询;并根据查询节点返回的查询结果统计是否达到该安全级数据的查询成功判断阈
值,如果达到查询成功判断阈值则认为此查询结果可信,达不到查询成功判断阈值则需要
以更高比例或者直接以百分百的比例进行第二次查询,如果第二次查询依然达不到相应安
全级数据对应的查询成功判断阈值,则可进行预警或由人工及其他方式判定此数据的准确
性。由此,本公开实施例的数据查询方法、装置和节点设备可提高查询结果的可信度和正确
率,防止区块链数据被篡改带来的查询错误和安全风险。

本公开实施例的,区块链数据的查询方法,可应用于查询端不是区块链中的节点
的场景,也可应用于查询端是区块链中的节点的场景,提高查询结果的可信度和正确率,防
止区块链数据被篡改带来的查询错误和安全风险。

在对本公开提供的数据查询方法、装置和节点设备进行说明之前,先对本公开各
个实施例所涉及的区块链进行介绍。

区块链节点:区块链是由区块链网络中所有节点共同参与维护的去中心化分布式
数据库系统,它是由一系列基于密码学方法产生的数据块组成,每个数据块即为区块链中
的一个区块。根据产生太阳城集团的先后顺序,区块被有序地链接在一起,形成一个数据链条,被
形象地称为区块链。下面对区块链网络的一些概念进行介绍。

区块链网络中的节点可以称为区块链节点,其中区块链网络基于P2P(Peer to
Peer,对等网络)网络,每个参与交易和区块存储、验证、转发的P2P网络节点都是一个区块
链网络中的节点。

用户身份:区块链中的用户身份可以使用公钥或者是根据该公钥生成的账户地址
表示,并且公钥和私钥是成对出现的,其中私钥由用户掌握而不发布到上述的区块链网络
中,公钥或者上述的账户地址可随意发布在区块链网络中。其中,公钥可以通过特定的哈希
和编码后成为上述的账户地址。值得一提的是,用户身份和区块链节点不存在一一对应关
系,用户可以在任意一个区块链节点上使用自己的私钥。

区块链数据写入:由区块链节点通过向区块链网络发布交易(Transaction)实现
向区块链写入数据。该交易包括:区块链节点按照预设的交易数据格式对生成的交易数据
包,以及利用该区块链节点自己的私钥对该交易数据包进行的数字签名,该数字签名用于
证明该区块链节点的用户的身份;而后,该交易被发布到区块链网络后,被区块链网络中的
“矿工”(即执行PoW(Proof Of Work,工作证明)共识竞争机制的区块链节点)记录入区块链
中产生的新区块,并将该新区块发布到区块链网络中,在该新区块以及该新区块所记录的
交易其他区块链节点验证通过和接受后,该新区块所记录的交易即被写入区块链。其中,区
块链中的新区块是由上述的“矿工”通过执行PoW或PoS等共识竞争机制而定期产生的,因此
产生新区块的太阳城集团间隔通常和上述的预设技术要求相关,通过设置不同的预设技术要求可
以改变区块链产生新区块的太阳城集团间隔。

参见图1,为本公开一实施例的区块链网络的示意图。

该区块链网络100中包括:一个或多个区块链节点101,这些区块链节点101可以各
种形式来实施,例如,可以为手机、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字
助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、服务器、矿机等。

在一个实施例中,区块链中的每个区块包括区块头和区块主体。区块主体保存交
易数据。交易数据通过默克尔树进行保存。默克尔树根的哈希值存储到区块头中。区块头至
少包括:上一区块头的哈希值、默克尔树根的哈希值、太阳城集团戳和区块号等。

交易数据可为任何类型的数据,包括但不限于:各种类型的统计数据(例如,人口
数据、医疗数据等),各种类型的货币交易数据(例如,转账交易数据),以及各种类型的请求
数据(例如,查询请求、节点加入请求等)等。

本公开实施例中,为了保证太阳城集团查询的安全性,将对区块链数据按照数据属性进
行安全等级设置,不同的安全等级对应不同的查询策略,提高数据查询的安全性和准确率。

参见表1,为本公开一实施例的不同安全等级的区块链数据与不同的查询策略的
对应关系。

表1


其中,查询节点比例是指,查询节点数与区块链节点总数的比值,如式(1)所示。在
本公开的一实施例中,查询节点为响应查询请求的节点,或接收到查询请求的节点。


其中,n为查询节点数,N为区块链网络中的区块链节点总数。

查询成功判定阈值是指,查询节点返回的查询结果中,比例最高的查询结果的数
量与查询节点总数的比值,如式(2)所示。


其中,m为比例最高的查询结果的数量。

应理解,由于区块链中可能存在一些查询节点因关机或死机等异常造成无法响应
任何请求的情况,公式(1)和公式(2)中的n包括了这些本应响应查询请求,返回查询结果,
但由于异常未返回查询结果的查询节点以及返回查询结果的查询节点的总数。

在本公开的一实施例中,可根据区块链数据所属的类别,确定其安全等级。第一安
全等级的区块链数据可为与个人太阳城集团相关的数据、货币交易数据等;第二安全等级的区块
链数据可为各种类型的统计数据;第三安全等级的区块链数据可为各种类型的请求数据
(例如,查询请求、节点加入请求等)。应理解,区块链数据的安全等级可根据实际情况进行
设定,并不限于这里所给出的示例。

在另一些实施例中,在新建区块时,确定要写入到区块链的数据的安全等级。将数
据的安全等级与数据一起写入到区块链中。由此,在进行数据查询时,可从区块链中查询到
数据的安全等级。

上述表1所示的区块链数据的安全等级与查询策略的对应关系被存储到区块链的
一区块中。当区块链节点接收到查询请求时,可根据查询请求,确定待查询数据,并从区块
链的区块中查询区块链数据的安全等级与查询策略的对应关系,确定待查询数据的查询策
略。

参见图2,为本公开一实施例的数据查询方法的流程示意图。该方法包括以下步
骤:

在步骤201中,接收查询请求,确定与查询请求对应的待查询数据的安全等级。

在步骤202中,根据安全等级确定查询节点。

在步骤203中,发送查询请求给所确定的查询节点。

在步骤204中,接收查询节点返回的查询结果,如果比例最高的查询结果满足预设
条件,将比例最高的查询结果作为待查询数据对应的查询结果。

以下将结合图3至图5对本公开实施例的数据查询方法进行介绍。

参见图3,在步骤301中,目标区块链节点根据查询请求,确定待查询数据的安全等
级。

在一个实施例中,当要进行数据查询时,查询端生成查询请求,并将查询请求发送
给目标区块链节点。这里的查询端为非区块链网络中的电子设备。

在另一实施例中,查询请求由目标区块链节点自己生成,即该目标区块链节点即
为查询端。

查询请求中包括以下太阳城集团中的至少一者:交易哈希、账户地址和查询关键字。

当查询请求中包括交易哈希时,确定的待查询数据可包括:交易哈希对应的交易
是否生效、货币交易数据等。在一个实施例中,当查询请求中包括交易哈希时,将待查询数
据的安全等级确定为第一安全等级。

当查询请求中包括账户地址时,确定的待查询数据可包括:账户地址对应的账户
的太阳城集团、账户地址对应的账户的交易记录等。在一个实施例中,当查询请求中包括账户地址
时,将待查询数据的安全等级确定为第一安全等级。

当查询请求中包括查询关键字时,确定的待查询数据可包括:与关键字相对应的
数据。在一个实施例中,可根据关键字,确定待查询数据的安全等级,当关键字包括:账户、
交易等太阳城集团时,将待查询数据的安全等级确定为第一安全等级;当关键字未包括账户、交易
等太阳城集团时,将待查询数据的安全等级确定为第二安全等级或其它等级。

由此,本公开实施例,可实现根据查询请求,确定待查询数据的安全等级。

在步骤302中,目标区块链节点根据待查询数据的安全等级,确定查询策略。

在本公开的一实施例中,可从存储有上述表1所示的对应关系的区块中,查询安全
等级对应的查询策略。

在步骤303中,目标区块链节点根据安全等级对应的查询策略,确定查询节点。

在步骤304中,目标区块链节点向查询节点转发查询请求。

在本公开的一实施例中,每个区块链节点均保存有区块链网络中的所有节点的地
址太阳城集团,并在有新节点加入区块链网络和有节点退出区块链网络时,更新所保存的地址信
息。由此,目标区块链节点可根据存储的区块链节点的地址太阳城集团,例如IP地址太阳城集团,随机选
择和查询策略相对应个数的区块链节点作为查询节点,并根据区块链节点的IP地址,进行
查询请求的转发。例如,根据查询策略确定查询节点比例为w1%时,在区块链网络的节点中
随机选择w1%×N个节点作为查询节点,根据其IP地址,向这w1%×N个查询节点发送查询
请求。

应理解,目标区块链节点所确定的查询节点中可包括自身,且包括自身时,无需进
行查询请求的转发。

在步骤305中,目标区块链节点接收查询节点返回查询结果。

接收到查询请求的查询节点,根据查询请求进行查询,获得查询结果,并将查询结
果返回给目标区块链节点。在一个实施例中,目标区块链节点在转发查询请求时,将自己的
地址太阳城集团与查询请求一起进行转发,由此,查询节点在获取到查询结果时,可根据目标区块
链节点的地址太阳城集团,将查询结果返回给目标区块链节点。

查询节点根据查询请求获取查询结果时:当查询请求中包括交易哈希时,查询节
点根据交易哈希,确定待查询数据所在的区块,并从相应的区块中获取数据,以及将获取的
数据作为查询结果返回给目标区块链节点。

在一些实施例中,查询节点根据交易哈希,对交易哈希对应的交易进行验证,即根
据交易哈希,在区块链中进行查询,判断交易是否被记录到某个区块中,并且根据区块在区
块链中的位置,确定该区块得到了多少确认。由此,查询结果包括交易验证结果,该交易验
证结果至少包括:交易是否已被记录到区块中,以及得到的确认区块数。

当查询请求中包括账户地址时,查询节点根据账户地址,确定账户地址所对应的
区块,并从相应的区块中获取数据,以及将获取的数据作为查询结果返回给目标区块链节
点。

当查询请求中包括查询关键字时,查询节点根据查询关键字,对区块链进行遍历,
获得与关键字相对应的数据,以及将与关键字相对应的数据作为查询结果返回给目标区块
链节点。

在步骤306中,目标区块链节点根据查询节点返回的查询结果,确定候选结果。

目标区块链节点接收查询节点返回的查询结果,并将不同查询结果进行统计,将
比例最高的查询结果作为候选结果。例如,若返回的查询结果数为100个,其中有85个查询
结果都为A,则将A为比例最高的查询结果,将其作为候选结果。

在步骤307中,当候选结果满足预设条件时,将候选结果作为待查询数据对应的查
询结果。

在一个实施例中,预设条件为:返回的查询结果为候选结果的查询节点数与查询
节点总数的比值大于或等于待查询数据对应的查询成功判断阈值。由此,目标区块链节点
将返回的查询结果为候选结果的查询节点数与查询节点总数相比,当比值大于或等于待查
询数据对应的查询策略中的查询成功判定阈值时,即将候选结果作为待查询数据对应的查
询结果。

在本公开的实施例中,并不是所有的查询节点都会返回查询结果,例如,查询节点
可能由于异常(例如,被非法控制,被篡改,关机或故障等)未返回查询结果,但比值的计算
中,将返回的查询结果为候选结果的查询节点数与查询节点总数相比,从而使得未返回查
询结果的查询节点对查询结果会产生影响,提高查询结果的可参考性,降低查询风险。

参见图4,当候选结果未满足预设条件时,则重新进行查询。在本公开的一实施例
中,重新进行查询时,对查询节点的数量进行调整,以提高查询结果的可信度和正确率。

在步骤401中,目标区块链节点按照第一预设比例增加查询节点的数量。

在本公开的实施例中,第一预设比例可设置为10%-50%。在一些实施例中,若第
一次查询未成功(即候选结果未满足预设条件),则将查询节点的比例提高至100%。

在步骤402中,目标区块链节点向查询节点转发查询请求。

在步骤403中,目标区块链节点接收查询节点返回查询结果。

在步骤404中,目标区块链节点根据查询节点返回的查询结果,确定候选结果。

在步骤405中,当候选结果满足预设条件时,将候选结果作为待查询数据对应的查
询结果。

应理解,步骤402-405和上述步骤304-307的实施原理相同,在此不再赘述。且在步
骤405中,确定候选结果是否满足预设条件时,查询成功判定阈值与步骤307中相同。当然,
在一些实施例中,也可在步骤405中,将查询成功判定阈值按比例提高,本公开对此不作限
定。

参见图5,在本公开的实施例中,当进行该第二次查询时,候选结果仍未满足预设
条件,则第二次查询失败,目标区块链节点发布预警太阳城集团到区块链网络中。该预警太阳城集团中包
括:查询请求中的交易哈希、账户地址或查询关键字。该预警太阳城集团用于提示区块链网络中的
节点,查询请求所对应的数据出现安全风险。在一个实施例中,若查询端为非区块链网络中
的节点设备,则目标区块链节点向查询端发送提示太阳城集团,该提示太阳城集团用于提示查询结果不
可用或查询无效等。

应理解,当第二次查询失败时,还可进行第三次、第四次……查询,查询的次数可
根据实际情况进行设置,直到查询次数达到最大查询次数,仍查询失败时,按照图5所示输
出预警太阳城集团和提示太阳城集团。每增加一次查询,可将查询节点的比例提高一次。

本公开实施例的数据查询方法,根据不同安全等级确定不同的查询策略,避免了
单个节点被攻击、数据被篡改等导致的查询错误;提高查询结果的可信度和正确率,防止区
块链数据被篡改带来的查询错误和安全风险;可避免因只通过单个节点进行查询,而该单
个节点被攻击或数据被篡改,而使查询到错误太阳城集团的可能性;另一方面,也避免了所有的查
询请求都采用同一比例查询节点进行查询带来的资源浪费,以及每次查询都通过100%的
区块链节点进行查询对所有区块链节点带来的负担,可在保证查询结果可靠性的情况下,
降低对区块链并发性造成的负面影响。

参见图6,为本公开另一实施例的数据查询方法的流程示意图。该方法包括以下步
骤:

在步骤601中,根据目标区块链节点发送的查询请求,确定与查询请求对应的待查
询数据的安全等级;

在步骤602中,根据安全等级确定响应查询请求的概率;

在步骤603中,当根据概率,确定响应查询请求时,返回查询结果给目标区块链节
点。

在本公开的该实施例中,目标区块链节点(即接收到查询端发送的查询请求的区
块链节点或自身产生查询请求的区块链节点)将查询请求发布到区块链网络中,使得区块
链网络中的所有节点都可接收到查询请求。接收到查询请求的区块链节点,可根据查询请
求所对应的查询策略,确定响应查询请求的概率,从而按照概率进行查询结果的返回。

参见图7,在本公开一实施例的数据查询方法中,在步骤701中,目标区块链节点将
查询请求发布到区块链网络中。

与上述图3所示的实施例相同,查询请求可为目标区块链节点自己生成,或非区块
链网络中的电子设备生成。

在该实施例中,目标区块链节点将查询请求发送给与自己连接的区块链节点,而
这些区块链节点又将查询请求发送给其它区块链节点,使得区块链网络中的每个区块链节
点都可以接收到查询请求。

在步骤702中,接收到查询请求的区块链节点,根据查询请求,确定待查询数据的
安全等级。

在步骤703中,根据待查询数据的安全等级,确定查询策略。

应理解,步骤702确定待查询数据的安全等级,以及步骤703确定查询策略的实施
原理与上述图3所示的实施例相同,在此不再赘述。

在步骤704中,区块链节点根据安全等级对应的查询策略,确定响应查询请求的概
率。

在本公开的一实施例中,响应查询请求的概率和上述表1中查询节点的比例相同,
由此,区块链节点可从存储表1所示太阳城集团的区块中查询到与不同安全等级对应的响应查询
请求的概率。

由于安全等级和响应查询请求的概率是相对应的,因此,区块链节点可根据安全
等级获得自己需要响应查询请求的概率。在一个实施例中,区块链节点获得响应查询请求
的概率后,即以生成随机数的方法来确定自身是否响应此查询请求。

例如,若响应查询请求的概率为80%,则随机数可以为1至10之间的任意整数。则
可知1,2,3,4,5,6,7,8,9,10这十个数字在随机数组里面出现的概率都是10%。由于响应查
询请求的概率为80%,则可设定如果生成的随机数是1或2则不响应查询请求,如果生成的
随机数是3至10之间的任一数则响应查询请求。按照此方法,由于每个节点都有80%的概率
会返回结果,根据概率论原理,则区块链网络中正常工作的节点中约80%会响应查询请求,
而返回查询结果。因为区块链中可能存在一些节点因关机或死机等原因造成无法响应任何
请求,因此80%的区块链网络中的节点总数应作为之后判定查询结果是否满足查询成功判
定阈值百分比的分母。而响应查询请求的区块链节点返回的查询结果中占比例最高的查询
结果的数量则为判定是否满足查询成功判定阈值百分比的分子。

应理解,区块链节点还可根据其它的方式,确定是否响应查询请求,例如,若安全
等级对应的查询节点比例高于一预设值时,则响应查询请求的方式,本公开实施例对此不
作限定。

在步骤705中,响应查询请求的查询节点,返回查询结果给目标区块链节点。

应理解,查询节点获取查询结果的实施过程和上述图2所示实施例相同,在此不再
赘述。

在步骤706中,目标区块链节点根据查询节点返回的查询结果,确定候选结果。

在步骤707中,当候选结果满足预设条件时,将候选结果作为待查询数据对应的查
询结果。

应理解,步骤706和步骤707和上述图3所示实施例的步骤306和307的实施过程相
同,在此不再赘述。

当候选结果未满足查询结果判别阈值预设条件时,则重新进行查询。在本公开的
一实施例中,重新进行查询时,目标区块链节点重新将查询请求发布到区块链网络中,区块
链节点若再次接收到相同的查询请求,则将响应查询请求的概率按照第二预设比例增加,
第二预设比例可设置为10%-50%。在一些实施例中,若第一次查询未成功(即候选结果未
满足预设条件),则将再次接收到同样的查询请求的区块链节点将响应查询请求的概率提
高至100%,即区块链网络中的所有接收到查询请求的节点均响应查询请求

响应查询请求的查询节点将查询结果返回给目标区块链节点。目标区块链节点根
据查询节点返回的查询结果,确定候选结果。

当候选结果满足预设条件时,将候选结果作为待查询数据对应的查询结果。

应理解,确定候选结果是否满足预设条件时,查询成功判定阈值可保持不变,或比
例提高,本公开对此不作限和上述图4所示的实施例相同,当进行第二次查询时,候选结果
仍未满足预设条件,则第二次查询失败,目标区块链节点发布预警太阳城集团到区块链网络中。该
预警太阳城集团中包括:查询请求中的交易哈希、账户地址或查询关键字。该预警太阳城集团用于提示区
块链网络中的节点,查询请求所对应的数据出现安全风险。在一个实施例中,若查询端为非
区块链网络中的节点设备,则目标区块链节点向查询端发送提示太阳城集团,该提示太阳城集团用于提
示查询结果不可用或查询无效等。

应理解,当第二次查询失败时,还可进行第三次、第四次……查询,查询的次数可
根据实际情况进行设置,直到查询次数达到最大查询次数,仍查询失败时,按照图5所示输
出预警太阳城集团和提示太阳城集团。每增加一次查询,可将响应查询请求的概率提高一次。

本公开实施例的数据查询方法,根据不同安全等级确定不同的查询策略,避免了
单个节点被攻击、数据被篡改等导致的查询错误;提高查询结果的可信度和正确率,防止区
块链数据被篡改带来的查询错误和安全风险;可避免因只通过单个节点进行查询,而该单
个节点被攻击或数据被篡改,而使查询到错误太阳城集团的可能性;另一方面,也避免了所有的查
询请求都采用同一比例查询节点进行查询带来的资源浪费,以及每次查询都通过100%的
区块链节点进行查询对所有区块链节点带来的负担,可在保证查询结果可靠性的情况下,
降低对区块链并发性造成的负面影响。

参见图8,本公开实施例还提供一种数据查询装置,应用于区块链网络的区块链节
点,该装置包括:

安全等级确定模块801,被配置为接收查询请求,确定与所述查询请求对应的待查
询数据的安全等级;

第一查询节点确定模块802,被配置为根据所述安全等级确定查询节点,所述查询
节点为区块链网络中的节点;

第一查询请求转发模块803,被配置为发送所述查询请求转发给所确定的所述查
询节点;

第一查询结果确定模块804,被配置为接收所述查询节点返回的查询结果,如果比
例最高的查询结果满足预设条件,将所述比例最高的查询结果作为所述待查询数据对应的
查询结果。

在一个实施例中,所述安全等级确定模块801,被配置为在存储有所述待查询数据
与安全等级的对应关系的区块中,查询所述待查询数据对应的安全等级。

在一个实施例中,第一查询结果确定模块804包括:

第一候选结果确定子模块,被配置为将所述比例最高的查询结果作为第一候选结
果;

第一查询结果确定子模块,被配置为在返回的查询结果为所述第一候选结果的查
询节点数与查询节点总数的比值大于或等于所述待查询数据对应的查询成功判断阈值时,
将所述比例最高的查询结果作为所述待查询数据对应的查询结果。

在一个实施例中,所述装置800还包括:

查询节点调整模块805,被配置为当比例最高的查询结果未满足预设条件时,对查
询节点的数量进行调整;

第二查询节点确定模块806,被配置为根据调整后的查询节点数量,确定查询节
点;

第二查询请求转发模块807,被配置为将所述查询请求转发给所确定的所述查询
节点;以及

第二查询结果确定模块808,被配置为根据查询节点返回的查询结果,确定所述待
查询数据对应的查询结果。

在一个实施例中,第二查询结果确定模块808包括:

第二候选结果确定子模块,被配置为将比例最高的查询结果作为第二候选结果;

预警太阳城集团发布子模块,被配置为在返回的查询结果为所述第二候选结果的查询节
点数与查询节点总数的比值小于所述待查询数据对应的查询成功判断阈值时,向区块链网
络发布预警太阳城集团。

参见图9,本公开实施例还提供一种数据查询装置,应用于区块链网络的区块链节
点,该装置900包括:

安全等级确定模块901,被配置为根据目标区块链节点发送的查询请求,确定与所
述查询请求对应的待查询数据的安全等级;

查询概率确定模块902,被配置为根据所述安全等级确定响应所述查询请求的概
率;

第一查询结果返回模块903,被配置为在根据所述概率,确定响应所述查询请求
时,返回查询结果给所述目标区块链节点。

在一个实施例中,装置900还包括:

概率调整模块904,被配置为在重复接收到所述查询请求时,对所述概率进行调
整;

第二查询结果返回模块905,被配置为在根据调整后的概率,确定响应所述查询请
求时,返回查询结果给所述目标区块链节点

在一个实施例中,第一查询结果返回模块903包括:

第一区块确定子模块,被配置为在所述查询请求中包括交易哈希时,根据所述交
易哈希,确定所述待查询数据所在的区块;

第一查询结果确定子模块,被配置为从确定的区块中获取数据,以及将获取的数
据作为查询结果返回给所述目标区块链节点。

在一个实施例中,第一查询结果返回模块903包括:

交易验证子模块,被配置为在所述查询请求中包括交易哈希时,根据所述交易哈
希,对交易哈希对应的交易进行验证;

第二查询结果确定子模块,被配置为将验证结果作为所述查询结果返回给所述目
标区块链节点,所述验证结果至少包括:交易是否已被记录到区块中,以及得到的确认区块
数。

在一个实施例中,第一查询结果返回模块903包括:

第二区块确定子模块,被配置为当所述查询请求中包括账户地址时,根据所述账
户地址,确定账户地址所对应的区块;

第三查询结果确定子模块,被配置为从确定的区块中获取数据,以及将获取的数
据作为所述查询结果返回给所述目标区块链节点。

在一个实施例中,第一查询结果返回模块903包括:

第三区块确定子模块,被配置为当所述查询请求中包括查询关键字时,根据所述
查询关键字,对区块链进行遍历,获得与关键字相对应的数据;以及

第四查询结果确定子模块,被配置为将与所述关键字相对应的数据作为所述查询
结果返回给所述目标区块链节点。

太阳城集团上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法
的实施例中进行了详细描述,此处将不做详细阐述说明。

图10是根据一示例性实施例示出的一种用于数据查询方法的装置1000的框图,该
装置1000可以是区块链中的节点设备。如图10所示,该装置1000可以包括:处理器1001,存
储器1002,多媒体组件1003,输入/输出(I/O)接口1004,以及通信组件1005。

其中,处理器1001用于控制该装置1000的整体操作,以完成上述的数据查询方法
的全部或部分步骤。存储器1002用于存储操作系统,各种类型的数据以支持在该装置1000
的操作,这些数据的例如可以包括用于在该装置1000上操作的任何应用程序或方法的指
令,以及应用程序相关的数据。该存储器1002可以由任何类型的易失性或非易失性存储设
备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称
SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only
Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only
Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只
读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。

多媒体组件1003可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组
件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外
部音频信号。所接收的音频信号可以被进一步存储在存储器1002或通过通信组件1005发
送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口1004为处理器1001和其
他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是
虚拟按钮或者实体按钮。通信组件1005用于该装置1000与其他设备之间进行有线或无线通
信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或
4G,或它们中的一种或几种的组合,因此相应的该通信组件1005可以包括:Wi-Fi模块,蓝牙
模块,NFC模块。

在一示例性实施例中,装置1000可以被一个或多个应用专用集成电路
(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital
Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,
简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列
(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元
件实现,用于执行上述的数据查询方法。

在另一示例性实施例中,还提供了一种计算机程序产品,所述计算机程序产品包
含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置执
行时用于执行上述的数据查询方法的代码部分。

在另一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介
质,例如包括指令的存储器1002,上述指令可由装置1000的处理器1001执行以完成上述的
数据查询方法。示例地,该非临时性计算机可读存储介质可以是ROM、随机存取存储器
(Random Access Memory,简称RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实
施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简
单变型,这些简单变型均属于本公开的保护范围。

流程图中或在本公开的实施例中以其他方式描述的任何过程或方法描述可以被
理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码
的模块、片段或部分,并且本公开实施方式的范围包括另外的实现,其中可以不按所示出或
讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应
被本公开的实施例所述技术领域的技术人员所理解。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛
盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可
能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本
公开的思想,其同样应当视为本公开所公开的内容。

关 键 词:
数据 查询 方法 装置 节点 设备
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
太阳城集团本文
本文标题:数据查询方法、装置及节点设备.pdf
链接地址:http://zh228.com/p-6059878.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');