基于区块链的数据查询方法、装置、服务器及存储介质制造方法及图纸

技术编号:19009259 阅读:54 留言:0更新日期:2018-09-22 09:06
本发明专利技术公开了一种基于区块链的数据查询方法、装置、服务器及存储介质,属于网络技术领域,本方法将数据查询与区块链技术相结合,当获取到用户查询数据的请求时,根据用户标识及数据标识,基于数据权限信息确定用户查询该数据的权限,当确定该用户不具备查询该数据的权限时,根据数据权限信息中的目标策略,获取多个终端的查询许可,当获取到的查询许可符合目标策略时,从存储系统中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时通过不同数据的不同目标策略,提升了数据查询权限设定的灵活性,更加的安全与智能。

Data query method, device, server and storage medium based on block chain

The invention discloses a data inquiry method, device, server and storage medium based on block chain, which belongs to the field of network technology. The method combines data inquiry with block chain technology. When a request for user inquiry data is obtained, the user is determined according to the user identification and data identification and based on the data privilege information. When it is determined that the user does not have the right to query the data, the query permission of multiple terminals is obtained according to the target policy in the data permission information. When the query permission obtained conforms to the target policy, the data is obtained from the storage system. This method improves the security and privacy of data by setting the data permission information, and enhances the flexibility of data query permission setting through different data goals and strategies.

【技术实现步骤摘要】
基于区块链的数据查询方法、装置、服务器及存储介质
本专利技术涉及网络
,特别涉及一种基于区块链的数据查询方法、装置、服务器及存储介质。
技术介绍
随着网络技术的发展,互联网可提供的业务越来越多,各种业务所产生的数据量也急剧膨胀,而在业务处理过程中,会涉及到对业务数据进行存储以及基于存储的查询。但在数据的查询过程中,数据会在设备之间进行传输,因此,可能会造成数据被篡改、泄露或窃取等情况,危害数据安全,所以如何安全高效的进行数据查询成为人们十分关心的问题。目前的数据查询方法,是基于用户账号的权限来进行的。当接收到任一用户的数据查询请求时,会根据该用户账号对应的权限,来判断该用户是否能够查询某项业务数据,从而,在确定该用户具有查询权限时,会返回所请求的业务数据业务。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题:目前的数据查询方法,仅根据用户账号的权限来进行数据查询,无法对不同数据设置不同级别的查询权限,导致数据查询时的安全性低,灵活性差。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种基于区块链的数据查询方法、装置、服务器及存储介质。所述技术方案如下:一方面,提供了一种基于区块链的数据查询方法,所述方法包括:根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;根据所述数据标识,获取区块链系统中的目标区块链中目标区块内的数据权限信息;当所述数据权限信息不包括所述用户标识时,向所述区块链系统中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储系统中获取所述第一数据。一方面,提供了一种基于区块链的数据查询装置,所述装置包括:数据标识获取模块,用于根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;数据权限信息获取模块,用于根据所述数据标识,获取目标区块链中目标区块内的数据权限信息;发送模块,用于当所述数据权限信息不包括所述用户标识时,向所述区块链系统中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;数据获取模块,用于当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储系统中获取所述第一数据。一方面,提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上述基于区块链的数据查询方法所执行的操作。一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上述基于区块链的数据查询方法所执行的操作。本专利技术实施例提供的技术方案带来的有益效果是:通过当获取到用户查询数据的请求时,基于数据权限信息确定用户查询该数据的权限,当确定该用户是数据所有者时,根据数据权限信息中的共识策略,获取多个节点的查询许可,当获取到的查询许可符合目标策略时,从数据存储系统中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时可以为不同数据的不同目标策略,提升了数据查询权限设定的灵活性,使之更加的安全与智能。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种数据存储系统的结构示意图;图2是本专利技术实施例提供的一种基于区块链的数据查询方法的流程图;图3是本专利技术实施例提供的一种数据存储过程的示意图;图4是本专利技术实施例提供的一种数据查询过程的示意图;图5是本专利技术实施例提供的一种基于区块链的数据查询装置的结构示意图;图6是本专利技术实施例提供的一种服务器的示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。下面,对下述具体说明过程中出现的一些名词进行介绍:智能合约:根据特定条件自动执行的合约程序,是用户与区块链进行交互,利用区块链实现业务逻辑的重要途径。例如,各家机构可以通过服务器中部署的区块链上的智能合约接入该数据存储系统,来使用该数据存储系统提供的数据存储以及数据查询等功能。目标策略:该目标策略可以是共识策略的一种,例如背书策略,可以用于指示数据存储系统中背书过程需满足的必要条件。例如,该背书策略可以指示需要背书的多个背书节点,形成一个背书节点集合,背书过程则需要该背书节点集合的联合签名。图1是本专利技术实施例提供的一种数据存储系统的结构示意图。该系统包括多个服务器101、多个存储设备102;其中,多个服务器101可以配置有同一条区块链,也即是,该多个服务器101可以组成区块链系统,各个服务器101分别为该区块链系统中的节点。该多个服务器101可以是同一机构的多个服务器,还可以是属于不同机构的多个服务器,例如,该区块链系统内可以包括医院的各个科室的服务器;当然,该区块链系统内还可以包括保险机构的服务器、银行的服务器等等。各个机构的用户可以通过终端1011来访问机构的服务器,该多个终端设备1011可以为能够访问该多个服务器101的电子设备,该电子设备可以为电脑、智能手机、平板电脑或者其他电子设备。当然,为了进行安全验证、权限管理等服务,区块链系统中配置有CA中心(CertificateAuthority,证书授权中心)103,用于存储各个机构的密钥,区块链系统中的各个服务器可以从CA中心中获取各个机构的密钥,以进行数据的加密和解密等过程。多个存储设备102用于为该多个服务器101提供存储服务,需要说明的是,该多个存储设备102可以组成分布式存储系统,用于采用分布式的形式来对提供存储数据。基于上述图1中所提供的实施环境,在终端有数据存储需求时,可以通过区块链系统所提供的存储机制,将数据存储至分布式系统中的存储设备中,以方便后续查询,下面对存储过程和查询过程进行介绍,图2是本专利技术实施例提供的一种基于区块链的数据查询方法的流程图,该方法的执行主体可以为区块链系统内的服务器,参见图2,该方法可以包括:201、当服务器接收到数据存储请求时,基于该数据存储请求所对应的初始数据,生成第一数据,该第一数据的数据长度为预设数据长度,且该第一数据的维度与数据索引信息表内的数据维度相对应。当服务器需要存储数据时,为了便于后续的存储和查询,可以对数据存储请求对应的初始数据进行规范化,该规范化包括两部分,一是对初始数据的各个维度进行规范化,二是对数据长度进行规范化。具体地,该步骤201可以包括下述步骤一至步骤三:步骤一、将该初始数据在各个维度上的数据信息转换为对应的索引值,得到该初始数据的不同维度的索引值。对于初始数据来说,其可以具有多个不同维度上的信息,因此,为了使得数据的表达方式统一,可以将该初始数据在各个维度上的数据信息转换为标准数值,以表达不同维度上的数据信息。例如,对于一条患者档案来说,其维度可以包括性别维度和科室维度,其中,性别维度包括男性、女性,科室维度包括内科、外科以及眼科等等。需要本文档来自技高网...
基于区块链的数据查询方法、装置、服务器及存储介质

【技术保护点】
1.一种基于区块链的数据查询方法,其特征在于,所述方法包括:根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;根据所述数据标识,获取区块链系统中的目标区块链中目标区块内的数据权限信息;当所述数据权限信息不包括所述用户标识时,向所述区块链系统中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储系统中获取所述第一数据。

【技术特征摘要】
1.一种基于区块链的数据查询方法,其特征在于,所述方法包括:根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;根据所述数据标识,获取区块链系统中的目标区块链中目标区块内的数据权限信息;当所述数据权限信息不包括所述用户标识时,向所述区块链系统中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储系统中获取所述第一数据。2.根据权利要求1所述的方法,其特征在于,所述根据所述数据标识,获取区块链系统中的目标区块链中目标区块内的数据权限信息之后,所述方法还包括:当所述数据权限信息包括所述用户标识时,根据所述数据标识,从所述数据存储系统中获取所述第一数据。3.根据权利要求1所述的方法,其特征在于,所述根据查询请求,获取待查询的第一数据的数据标识包括:获取所述查询请求中的查询条件信息,所述查询条件信息包括至少一个目标维度的目标索引值;根据所述至少一个目标维度的目标索引值,查询所述数据存储系统中的数据索引信息表,得到所述第一数据的数据标识,所述数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值。4.根据权利要求3所述的方法,其特征在于,所述根据所述至少一个目标维度的目标索引值,查询数据索引信息表,得到所述第一数据的数据标识包括:当所述至少一个目标维度的目标索引值的数目为一时,根据一个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第一数据标识,每个第一数据标识的目标维度的索引值等于所述目标索引值;或,当所述至少一个目标维度的目标索引值的数目为至少两个时,根据至少两个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第二数据标识,每个第二数据标识的所述至少两个目标维度的索引值的乘积等于所述至少两个目标索引值的乘积。5.根据权利要求1所述的方法,其特征在于,所述根据所述数据标识,从数据存储系统中获取所述第一数据包括:确定所述数据标识与所述数据索引信息表中第一个数据标识之间的相对位置;根据所述相对位置和预设数据长度,确定所述第一数据在第一文件中的偏移位置,所述第一文件为所述数据索引信息表对应的文件;根据所述第一文件在所述数据存储系统中的存储位置和所述偏移位置,从所述数据存储系统中获取所述第一数据。6.根据权利要求1所述的方法,其特征在于,所述根据所述数据标识,从数据存储系统中获取所述第一数据之后,所述方法还包括:根据所述目标区块中存储的数据特征值,对所述第一数据进行校验;当校验成功时,执行后续对数据的解密步骤;当校验失败时,不执行后续对数据的解密步骤。7.根据权利要求1所述的方法,其特征在于,所述从数据存储系统中获取所述第一数据之后,所述方法还包括:获取所述目标策略中各个目标节点的私钥;基于所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据。8.根...

【专利技术属性】
技术研发人员:尚志豪周洪飞
申请(专利权)人:腾讯科技深圳有限公司腾讯云计算北京有限责任公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1