CN108733710A - 外包数据查询验证的方法、装置、电子设备和可读介质 - Google Patents
外包数据查询验证的方法、装置、电子设备和可读介质 Download PDFInfo
- Publication number
- CN108733710A CN108733710A CN201710265401.3A CN201710265401A CN108733710A CN 108733710 A CN108733710 A CN 108733710A CN 201710265401 A CN201710265401 A CN 201710265401A CN 108733710 A CN108733710 A CN 108733710A
- Authority
- CN
- China
- Prior art keywords
- data record
- key
- value
- value data
- bitmap
- 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
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种外包数据查询验证的方法、装置、电子设备和可读介质,能够解决外包Key‑Value存储下的查询验证问题,且能够解决保护数据隐私情况下难以构造查询验证对象的问题。该方法包括:根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集;根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种外包数据查询验证的方法、装置、电子设备和可读介质。
背景技术
近年来,互联网获得了爆炸式发展。人们在享受互联网给生活带来的乐趣和便利的同时,也产生了海量的数据。数据外包不仅能够将数据拥有者从繁重的数据管理任务中解脱出来,从而更多地关注数据本身的价值,同时第三方服务提供者专业高效的管理机制也大大降低了单位数据的管理成本。随着云计算和云存储的迅猛发展,数据外包将会成为未来数据存储管理的主要服务方式。
然而由于第三方的服务提供商和数据拥有者处于不同的市场层次,存在市场利益的交织,服务提供商可能由于市场原因或者操作失误篡改原始数据或者查询结果,导致用户获取的查询结果不可信,伤害用户和数据拥有者的市场利益。因此,外包数据库服务模式面临着一个安全问题:外包数据库的查询验证问题。
根据验证目标的不同,外包数据库的查询验证方案可以分为验证查询结果正确性、完整性以及时效性的方案。验证查询结果的正确性指的是:查询用户需要验证查询结果没有被篡改过,是数据库中的原始记录,并符合用户的查询要求。验证查询结果的完整性指的是:查询用户验证收到的查询结果是完整的,没有缺失任何有效数据记录。验证查询结果的时效性指的是:查询用户需要获得证据验证查询结果是最及时的,证明服务器既没有删除最新版本的数据也没有返回过时的数据。
现有技术中外包数据的查询验证方法主要包括如下两种:
1.基于签名链的查询验证方法。基于签名链的查询验证方法假设数据库的记录都根据某一属性有序,每个记录的数字签名都源于一组摘要,该组摘要包括了该记录本身的摘要值,它的左邻居记录的摘要值和右邻居记录摘要值的级联。根据查询条件和记录的数字签名,服务提供商可以构造验证对象以验证查询结果的正确性和完整性:(1)结果记录的边界值落在了查询范围内;(2)所有的签名都是有效的。其中,条件(1)确保了服务提供商没有遗漏掉查询结果;条件(2)确保没有查询结果被篡改或者伪造。
2.基于Merkle哈希树的查询方法。该方法使用Merkle哈希树作为查询验证结构。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1.基于数字签名链的方法可以处理查询结果正确性和完整性的验证问题,但是数字签名操作的计算代价非常高,而且空间开销也非常大,因此给每个元组维护一个数字签名会带来大量的性能开销;且由于每次数据更新都需要重新计算并传输相应元组的数字签名,也导致了高昂的维护开销。
2.目前基于Merkle哈希树的外包数据查询验证方法都是针对传统的关系型数据库进行设计的,无法支持非关系型数据库,例如Key-Value存储的查询验证。
3.上述两种现有技术的查询验证方法并不支持对数据拥有者的数据隐私保护。数据隐私指的是为满足外包数据库的隐私保护要求,数据拥有者要求第三方服务提供商既不能获得也无法篡改数据记录。而现有的隐私保护下的查询处理方案采用了安全多方计算(SMC)和同态加密(PH)等计算代价较大的方法,在处理查询的同时保护隐私,难以构建验证对象,故而方案的效率不高,不适合大规模数据的应用场景,可用性不大。
4.现有技术的查询验证方法中缺乏验证查询结果时效性的考虑。
发明内容
有鉴于此,本发明实施例提供一种外包数据查询验证的方法、装置、电子设备和可读介质,能够解决外包Key-Value存储下的查询验证问题,且能够解决保护数据隐私情况下难以构造查询验证对象的问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种外包数据查询验证的方法。
本发明实施例的一种外包数据查询验证的方法包括:根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
可选地,所述方法还包括:在根据查询范围向键服务器发送键查询请求之前,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。
可选地,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构还包括:将所述键服务器上的键数据记录进行排序;根据已排序的键数据记录集构建Merkle哈希树,其中,所述Merkle哈希树为二叉树,叶子节点存储键数据记录的哈希值,中间节点存储其两个孩子节点的哈希值的级联。
可选地,所述方法还包括:在根据查询范围向键服务器发送键查询请求之前,利用数字签名技术加密所述树状存储结构的根节点。
可选地,所述验证对象包括:经过数字签名技术加密后的树状存储结构的根节点;遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值。
可选地,根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,验证查询得到的键数据记录集和值数据记录集包括:校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
可选地,所述方法还包括:根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
可选地,所述方法还包括:所述值查询结果中还包括发布时刻所有比值查询请求的查询时刻大的位图;以及验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
为实现上述目的,根据本发明实施例的另一方面,提供了一种外包数据查询验证的装置。
本发明实施例的一种外包数据查询验证的装置包括:键查询模块,用于根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;值查询模块,用于根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;验证模块,用于根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
可选地,所述装置还包括:构建模块,用于在所述键查询模块根据查询范围向键服务器发送键查询请求之前,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。
可选地,所述构建模块还用于:将所述键服务器上的键数据记录进行排序;根据已排序的键数据记录集构建Merkle哈希树,其中,所述Merkle哈希树为二叉树,叶子节点存储键数据记录的哈希值,中间节点存储其两个孩子节点的哈希值的级联。
可选地,所述装置还包括:加密模块,用于在所述键查询模块根据查询范围向键服务器发送键查询请求之前,利用数字签名技术加密所述树状存储结构的根节点。
可选地,所述验证对象包括:经过数字签名技术加密后的树状存储结构的根节点;遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值。
可选地,所述验证模块还用于:校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
可选地,所述装置还包括:位图发布模块,用于根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
可选地,所述装置中:所述值查询结果中还包括发布时刻所有比值查询请求的查询时刻大的位图;以及所述验证模块还用于验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
为实现上述目的,根据本发明实施例的再一方面,提供了一种电子设备。
本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的外包数据查询验证的方法。
为实现上述目的,根据本发明实施例的又一方面,提供了一种计算机可读介质。
本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的外包数据查询验证的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用将外包的Key-Value键值对分离委托存储在服务提供商的两种服务器上,并利用随机数唯一标识一对键值对数据的技术手段,所以克服了数据隐私保护的技术问题,进而达到保护数据隐私的技术效果;通过将键服务器中的键数据记录排序,从而可以将键数据记录利用树状存储结构构建索引查询结构,从而克服了现有技术中只针对关系型数据库,而不能处理外包Key-Value存储下的查询验证问题;通过利用向键服务器查询键数据记录、向值服务器查询值数据记录,并利用返回的验证对象验证查询结果是否被篡改,从而可以实现保护数据隐私的前提下,对Key-Value外包存储的查询验证;通过利用位图向值服务器发送数据记录的变化情况,并利用位图的发布时间与查询结果的返回时间进行对比,从而可以验证查询结果的时效性,保证及时查询服务提供商是否删除最新版本的数据或返回过时的数据。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的外包数据查询验证的方法的主要步骤的示意图;
图2是本发明实施例可以应用于其中的示例性系统架构图示意图;
图3是根据本发明实施例的外包数据查询验证的方法中分离委托的键值对与随机数的对应关系示意图;
图4根据本发明实施例的外包数据查询验证的方法中Merkle哈希树结果的示例图;
图5是根据本发明实施例的外包数据查询验证的装置的主要部分的示意图;
图6是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
对于外包数据库的查询验证问题,为了使用户能够验证查询结果,服务提供商需要在返回给用户查询结果同时还返回一些冗余信息(Verification Object,简称VO)作为证据以便验证。这些冗余信息被称为验证对象。
本发明实施例中,设计了一套外包数据的分离委托策略,通过将外包数据分离存储,解决了数据隐私保护问题;然后基于分离委托数据设计了查询验证方案,解决了隐私保护下的构造验证对象问题;最后,本发明实施例设计了相应的用户验证策略,可以验证外包Key-Value存储查询结果的正确性、完整性以及时效性。
图1是根据本发明实施例的外包数据查询验证的方法的主要步骤的示意图。
如图1所示,本发明实施例的外包数据查询验证的方法主要包括如下步骤:
步骤S11:根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中。本步骤的目的在于根据用户的查询范围获取随机数集,以便后续根据随机数集查询相应的值数据记录集。与此同时,为了后续验证查询结果的需要,还需要返回相应的验证对象。
本发明实施例在,在根据查询范围向键服务器发送键查询请求之前,还可以在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。其中,树状存储结构可以是常用的Merkle哈希树,也可以是类似的MR树、MB+树等,本发明实施例中,树状存储结构并不限于上述类型,只要是树状存储结构即可,以构建键数据记录的验证索引结构。后续以Merkle哈希树为例进行说明。
由此,构建树状存储结构可以包括:将所述键服务器上的键数据记录进行排序;根据已排序的键数据记录集构建Merkle哈希树,其中,本发明实施例在,Merkle哈希树被设定为是二叉树,其叶子节点存储键数据记录的哈希值,中间节点存储它的两个孩子节点的哈希值的级联。并且,本发明实施例在,为了进一步验证数据的需要,还可以利用数字签名技术加密所述树状存储结构的根节点。即可以以数据拥有者的私钥签名的方式对根节点的哈希值签名,并公开数据拥有者的公钥。
本发明实施例中,构建的验证对象可以包括:经过数字签名技术加密后的树状存储结构的根节点;遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值,以供后续验证查询结果之用。
在步骤S11完成随机数集的获取之后,从步骤S12开始进行查询。
步骤S12:根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名。本发明实施例中,该处值数据记录集中每条值数据记录的数字签名是指:在根据查询范围向键服务器发送键查询请求之前,利用数据拥有者的私钥对所述值服务器中存储的值数据记录的摘要值加密后得到的数字串。
步骤S13:根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
具体而言,根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,验证查询得到的键数据记录集和值数据记录集可以包括:校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
需要说明的是,本发明实施例在,为了进一步可以验证查询结果的时效性,还进行了如下程序的设计:根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
相应的,本发明实施例的外包数据查询验证的方法还可以包括:所述值查询结果中还包括发布时刻所有比值查询请求的查询时刻大的位图;以及验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
图2是本发明实施例可以应用于其中的示例性系统架构图示意图;图3是根据本发明实施例的外包数据查询验证的方法中分离委托的键值对与随机数的对应关系示意图;图4根据本发明实施例的外包数据查询验证的方法中Merkle哈希树结果的示例图。以下结合图2、图3、图4,对本发明实施例的外包数据查询验证的方法进行详细说明。
如图2所示,数据隐私保护下的Key-Value存储查询验证的系统框架主要由四部分组成:数据拥有者(Data Owner,简称DO)、键服务器(Key Server,简称KS)、值服务器(ValueServer,简称VS)和用户(即用户使用的与服务提供商(Service Provider,简称SP)的数据库之间进行交互的查询客户端)。
具体实现过程说明如下:
1、外包数据分离委托策略
由于一条键值对形式的数据记录只有在键和值关联在一起的时候才能够表达出完整的信息,为了保护DO的数据隐私,SP不可以同时获得一条数据记录的键和值。本发明实施例中提出DO将外包的Key-Value存储分离委托在两种服务提供商的服务器上,KS和VS。KS只存储所有数据记录的键,而且不会与VS通信。VS只存储所有数据记录的值。一条数据记录的键和值之间引入一个中间层作为关联。本发明实施例中,可以使用一个随机数列表作为这个中间层以绑定键和对应的值,即一个随机数可以唯一标识一个的键值对(各随机数与一对键值对中的键和值分别对于存储在相应的服务器中)。用户一次只与KS或者VS的一方通信。如图3所示,为分离委托的键值对与随机数的对应关系。
2、基于分离委托数据的查询验证方案
1)如前所述,本发明实施例中,在键服务器上可以采用Merkle哈希树作为验证索引结构。
本发明实施例中,Merkle哈希树是一种二叉树。其叶子节点存储的是数据记录的摘要值,而非叶子节点存储的是其子节点哈希值的级联。(其中,非叶子节点即中间节点,它存储的是其孩子节点哈希值的级联。Merkle哈希树是一个数据结构,也可称之为索引数据结构。用于在数据上建立索引,加快查询速度。各叶子节点的记录都是有序排列,可以根据排序进行索引验证)。
如图4所示,为一个索引数据记录x1,x2,x3和x4的Merkle哈希树。由图4可知,Merkle哈希树中的叶子节点存储着数据记录的摘要值,如叶子节点h21=H(x1),中间节点是其孩子节点的级联的哈希值,如中间节点的摘要为h11=H(h21|h22),当用户收到的查询结果是{x1,x2}的时候,SP在检索查询的同时会构造一个VO作为查询证据。VO包括摘要值h12和根节点的签名sroot。VO和查询结果一同发送给用户,而用户只需要计算h21和h22,然后计算h11=H(h21|h22),最后计算出根节点的签名hroot=H(h11|h12)。就可以与收到的根节点签名sroot进行比较以确定收到的查询结果x1和x2是否被服务提供商篡改过。
本发明实施例中,为了构建Merkle哈希树,首先需要对KS上的键数据记录进行排序,然后在已排序的键数据记录集上建立Merkle哈希树。Merkle哈希树的叶子节点索引外包数据的键数据记录。中间节点存储它的两个孩子节点的哈希值的级联。最后数据拥有者使用私钥签名的方案对根节点表示的哈希值签名,并公开数据拥有者的公钥。
2)KS首先根据查询范围[km,kn]在KS上的Merkle哈希树进行自顶向下的遍历,构造出VO,查询出满足查询范围的所有记录KSet以及对应的随机数集合RSet。假设kmin和kmax分别是KSet中最小和最大的记录。则构造VO的过程为:首先遍历从根节点到kmin的节点,如果这些节点存在左兄弟节点,则将左兄弟节点的哈希值保存到VO中。类似地,遍历从根节点到kmax的节点,如果这些节点存在右兄弟节点,则将右兄弟节点的哈希值保存到VO中。最后将根节点保存到VO中。
3)本发明实施例中,为了提供时效性验证功能,还可以每隔一段时间(例如但不限于为每隔15分钟),DO需要发布给VS一个经过数字签名的位图来记录在该时间间隔内更新过的数据记录。其中,位图的每一位代表一条数据记录,如果数据记录发生了更改,位图上的位就被置为1。通过位图,数据记录可以被验证为始终是最新的。本发明实施例中,之所以选择位图,是因为位图是一个sparse的存储结构,不占存储空间和带宽。
4)KS发送KSet、RSet和VO给用户。
5)用户发送RSet给VS,以获取与之对应的值数据记录集作为查询结果。为了验证查询结果的值数据记录不被篡改,VS将值数据记录集中的每条值数据记录的数字签名返回至用户侧,并可存入VO中。如前所述,DO阶段性发布一个经过数字签名的位图给VS。为了验证查询结果的时效性,VS添加所有比查询时刻t新的位图到VO中。
3、验证策略
用户首先验证查询结果的正确性和完整性:
检查结果集中的键数据记录和值数据记录是否与随机数匹配;然后根据VO自底向上迭代构造出MHT(即Merkle hash tree.)根节点的摘要hroot,同时用户使用DO公布的公钥对VO中根节点的摘要进行解密h'root;比较hroot和h'root是否相同,如果二者相同就说明键查询结果中的键数据记录是正确的。否则,用户就可以获知查询结果中的键数据记录出错;最后比较VS返回的签名是否正确,以验证值查询结果在的值数据记录是否被篡改。
除此之外,用户通过检验以下来确保查询结果的时效性:
(1)如果发布位图的时间bn并不比查询结果的时间戳ti新,即bn<ti,则查询结果是最新的;(2)如果bn>ti,则需要进一步检查位图,查看结果记录是否发生过更改。如果发生过更改,则说明返回的查询结果并非是最及时的。
根据本发明实施例的外包数据查询验证的方法可以看出,因为采用将外包的Key-Value键值对分离委托存储在服务提供商的两种服务器上,并利用随机数唯一标识一对键值对数据的技术手段,所以克服了数据隐私保护的技术问题,进而达到保护数据隐私的技术效果;通过将键服务器中的键数据记录排序,从而可以将键数据记录利用树状存储结构构建索引查询结构,从而克服了现有技术中只针对关系型数据库,而不能处理外包Key-Value存储下的查询验证问题;通过利用向键服务器查询键数据记录、向值服务器查询值数据记录,并利用返回的验证对象验证查询结果是否被篡改,从而可以实现保护数据隐私的前提下,对Key-Value外包存储的查询验证;通过利用位图向值服务器发送数据记录的变化情况,并利用位图的发布时间与查询结果的返回时间进行对比,从而可以验证查询结果的时效性,保证及时查询服务提供商是否删除最新版本的数据或返回过时的数据。
图5是根据本发明实施例的外包数据查询验证的装置的主要部分的示意图。
如图5所示,本发明实施例的一种外包数据查询验证的装置50主要包括如下模块:键查询模块501、值查询模块502以及验证模块503。
其中,键查询模块501用于根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;值查询模块502用于根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;验证模块503用于根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
此外,装置50还可以包括:构建模块(图中未示出),用于在所述键查询模块501根据查询范围向键服务器发送键查询请求之前,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。
其中,构建模块还可用于:将所述键服务器上的键数据记录进行排序;根据已排序的键数据记录集构建Merkle哈希树,其中,所述Merkle哈希树为二叉树,叶子节点存储键数据记录的哈希值,中间节点存储其两个孩子节点的哈希值的级联。
另外,装置50还可以包括:加密模块(图中未示出),用于在所述键查询模块501根据查询范围向键服务器发送键查询请求之前,利用数字签名技术加密所述树状存储结构的根节点。
需说明的是,本装置在涉及的验证对象可以但不限于包括:经过数字签名技术加密后的树状存储结构的根节点;遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值。
另外,验证模块503还可用于:校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
本发明实施例中,装置50还包括:位图发布模块(图中未示出),用于根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
基于位图发布模块,在装置50中:所述值查询结果中还可以包括发布时刻所有比值查询请求的查询时刻大的位图;以及所述验证模块503还可用于验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
从以上描述可以看出,因为采用将外包的Key-Value键值对分离委托存储在服务提供商的两种服务器上,并利用随机数唯一标识一对键值对数据的技术手段,所以克服了数据隐私保护的技术问题,进而达到保护数据隐私的技术效果;通过将键服务器中的键数据记录排序,从而可以将键数据记录利用树状存储结构构建索引查询结构,从而克服了现有技术中只针对关系型数据库,而不能处理外包Key-Value存储下的查询验证问题;通过利用向键服务器查询键数据记录、向值服务器查询值数据记录,并利用返回的验证对象验证查询结果是否被篡改,从而可以实现保护数据隐私的前提下,对Key-Value外包存储的查询验证;通过利用位图向值服务器发送数据记录的变化情况,并利用位图的发布时间与查询结果的返回时间进行对比,从而可以验证查询结果的时效性,保证及时查询服务提供商是否删除最新版本的数据或返回过时的数据。
下面参考图6,其示出了适于用来实现本申请实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文主要步骤图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行主要步骤图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括键查询模块、值查询模块以及验证模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,键查询模块还可以被描述为“根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果的模块”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
根据本发明实施例的技术方案,因为采用将外包的Key-Value键值对分离委托存储在服务提供商的两种服务器上,并利用随机数唯一标识一对键值对数据的技术手段,所以克服了数据隐私保护的技术问题,进而达到保护数据隐私的技术效果;通过将键服务器中的键数据记录排序,从而可以将键数据记录利用树状存储结构构建索引查询结构,从而克服了现有技术中只针对关系型数据库,而不能处理外包Key-Value存储下的查询验证问题;通过利用向键服务器查询键数据记录、向值服务器查询值数据记录,并利用返回的验证对象验证查询结果是否被篡改,从而可以实现保护数据隐私的前提下,对Key-Value外包存储的查询验证;通过利用位图向值服务器发送数据记录的变化情况,并利用位图的发布时间与查询结果的返回时间进行对比,从而可以验证查询结果的时效性,保证及时查询服务提供商是否删除最新版本的数据或返回过时的数据。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (18)
1.一种外包数据查询验证的方法,其特征在于,包括:
根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;
根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;
根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在根据查询范围向键服务器发送键查询请求之前,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。
3.根据权利要求2所述的方法,其特征在于,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构还包括:
将所述键服务器上的键数据记录进行排序;
根据已排序的键数据记录集构建Merkle哈希树,其中,所述Merkle哈希树为二叉树,叶子节点存储键数据记录的哈希值,中间节点存储其两个孩子节点的哈希值的级联。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在根据查询范围向键服务器发送键查询请求之前,利用数字签名技术加密所述树状存储结构的根节点。
5.根据权利要求4所述的方法,其特征在于,所述验证对象包括:
经过数字签名技术加密后的树状存储结构的根节点;
遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及
遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值。
6.根据权利要求5所述的方法,其特征在于,根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,验证查询得到的键数据记录集和值数据记录集包括:
校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;
对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及
解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
所述值查询结果中还包括发布时刻所有比值查询请求的查询时刻大的位图;以及
验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
9.一种外包数据查询验证的装置,其特征在于,包括:
键查询模块,用于根据查询范围向键服务器发送键查询请求,获取所述键服务器返回的键查询结果,所述键查询结果包括验证对象、键数据记录集以及与所述键数据记录集对应的随机数集,其中,随机数是指预先设定的、唯一关联一组键值对的数据,与数据拥有者的键数据记录、值数据记录一并对应存储在键服务器和值服务器中;
值查询模块,用于根据所述随机数集向所述值服务器发送值查询请求,获取所述值服务器返回的值查询结果,所述值查询结果包括值数据记录集以及所述值数据记录集中每条值数据记录的数字签名;
验证模块,用于根据所述验证对象和所述值数据记录集中每条值数据记录的数字签名,对所述键数据记录集和所述值数据记录集进行验证。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:构建模块,用于在所述键查询模块根据查询范围向键服务器发送键查询请求之前,在所述键服务器上利用树状存储结构构建键数据记录的查询验证结构。
11.根据权利要求10所述的装置,其特征在于,所述构建模块还用于:
将所述键服务器上的键数据记录进行排序;
根据已排序的键数据记录集构建Merkle哈希树,其中,所述Merkle哈希树为二叉树,叶子节点存储键数据记录的哈希值,中间节点存储其两个孩子节点的哈希值的级联。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
加密模块,用于在所述键查询模块根据查询范围向键服务器发送键查询请求之前,利用数字签名技术加密所述树状存储结构的根节点。
13.根据权利要求12所述的装置,其特征在于,所述验证对象包括:
经过数字签名技术加密后的树状存储结构的根节点;
遍历根节点到查询范围中的最小键数据记录对应的叶子节点,得到的所有节点的左兄弟节点的哈希值;以及
遍历根节点到查询范围中的最大键数据记录对应的叶子节点,得到的所有节点的右兄弟节点的哈希值。
14.根据权利要求13所述的装置,其特征在于,所述验证模块还用于:
校验键数据记录集中的键数据记录、值数据记录集中的值数据记录与所述随机数集中的随机数是否匹配;
对验证对象中的根节点进行解密,并根据所述验证对象自底向上迭代出所述树状存储结构的验证根节点,然后比较所述验证根节点与所述验证对象中的根节点是否相同,以判断所述键数据记录集中的键数据记录是否被篡改;以及
解密所述值数据记录集中每条值数据记录的数字签名,得到所述值数据记录集中的每条值数据记录的验证摘要,并利用摘要算法计算值数据记录集中的每条值数据记录的摘要,比较所述验证摘要和所述摘要是否相同,以判断所述值数据记录集中的每条值数据记录是否被篡改。
15.根据权利要求9所述的装置,其特征在于,所述装置还包括:
位图发布模块,用于根据预设周期从数据拥有者向所述值服务器发布经过数据签名的位图,所述位图的每一位代表一条值数据记录,如果值数据记录发生了更改,则位图上相应的位就被置为1。
16.根据权利要求15所述的装置,其特征在于,所述装置中:
所述值查询结果中还包括发布时刻所有比值查询请求的查询时刻大的位图;以及
所述验证模块还用于验证所述值数据记录集的时效性,包括:比较位图的发布时刻与值查询结果的返回时刻的大小,如果发布位图的发布时刻不大于值查询结果的返回时刻,则所述值数据记录集中的值数据记录为最新,如果发布位图的发布时刻大于值查询结果的返回时刻,则进一步检查位图,以判断所述值数据记录集中的值数据记录是否已发生更改。
17.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
18.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710265401.3A CN108733710A (zh) | 2017-04-21 | 2017-04-21 | 外包数据查询验证的方法、装置、电子设备和可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710265401.3A CN108733710A (zh) | 2017-04-21 | 2017-04-21 | 外包数据查询验证的方法、装置、电子设备和可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108733710A true CN108733710A (zh) | 2018-11-02 |
Family
ID=63933903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710265401.3A Pending CN108733710A (zh) | 2017-04-21 | 2017-04-21 | 外包数据查询验证的方法、装置、电子设备和可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108733710A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020098820A3 (en) * | 2019-12-05 | 2020-10-08 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in blockchain-based system |
WO2020098819A3 (en) * | 2019-12-05 | 2020-10-15 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
WO2020259629A1 (zh) * | 2019-06-24 | 2020-12-30 | 深圳前海微众银行股份有限公司 | 一种基于区块链的数据检验方法及装置 |
CN112214803A (zh) * | 2020-10-21 | 2021-01-12 | 北京八分量信息科技有限公司 | 在可信计算中查询数据的方法、装置及相关产品 |
CN112685791A (zh) * | 2019-10-18 | 2021-04-20 | 陈小虎 | 一种去中心化的私有数据的存取与验证方案 |
CN113239260A (zh) * | 2021-05-18 | 2021-08-10 | 中南大学 | 基于布谷鸟过滤器的多属性外包数据查询验证方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104796290A (zh) * | 2015-04-24 | 2015-07-22 | 广东电网有限责任公司信息中心 | 一种数据安全管控方法及平台 |
CN106209357A (zh) * | 2016-07-06 | 2016-12-07 | 杨炳 | 一种基于云计算平台的密文访问控制系统 |
-
2017
- 2017-04-21 CN CN201710265401.3A patent/CN108733710A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104796290A (zh) * | 2015-04-24 | 2015-07-22 | 广东电网有限责任公司信息中心 | 一种数据安全管控方法及平台 |
CN106209357A (zh) * | 2016-07-06 | 2016-12-07 | 杨炳 | 一种基于云计算平台的密文访问控制系统 |
Non-Patent Citations (1)
Title |
---|
高诗梦: ""基于外包数据库的查询验证方法研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020259629A1 (zh) * | 2019-06-24 | 2020-12-30 | 深圳前海微众银行股份有限公司 | 一种基于区块链的数据检验方法及装置 |
CN112685791A (zh) * | 2019-10-18 | 2021-04-20 | 陈小虎 | 一种去中心化的私有数据的存取与验证方案 |
US11251969B2 (en) | 2019-12-05 | 2022-02-15 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
WO2020098819A3 (en) * | 2019-12-05 | 2020-10-15 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
US10985919B2 (en) | 2019-12-05 | 2021-04-20 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
AU2019379711A1 (en) * | 2019-12-05 | 2021-06-24 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
US11108555B2 (en) | 2019-12-05 | 2021-08-31 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
WO2020098820A3 (en) * | 2019-12-05 | 2020-10-08 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in blockchain-based system |
AU2019379711B2 (en) * | 2019-12-05 | 2022-04-07 | Alipay (Hangzhou) Information Technology Co., Ltd. | Performing map iterations in a blockchain-based system |
CN112214803A (zh) * | 2020-10-21 | 2021-01-12 | 北京八分量信息科技有限公司 | 在可信计算中查询数据的方法、装置及相关产品 |
CN112214803B (zh) * | 2020-10-21 | 2023-12-01 | 北京八分量信息科技有限公司 | 在可信计算中查询数据的方法、装置及相关产品 |
CN113239260A (zh) * | 2021-05-18 | 2021-08-10 | 中南大学 | 基于布谷鸟过滤器的多属性外包数据查询验证方法 |
CN113239260B (zh) * | 2021-05-18 | 2022-04-29 | 中南大学 | 基于布谷鸟过滤器的多属性外包数据查询验证方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108733710A (zh) | 外包数据查询验证的方法、装置、电子设备和可读介质 | |
US20200344073A1 (en) | Method and system for efficient distribution of configuration data utilizing permissioned blockchain technology | |
CN113711536B (zh) | 从区块链网络中提取数据 | |
CN109791591B (zh) | 经由区块链进行身份和凭证保护及核实的方法和系统 | |
CA3009326C (en) | Method and system for blockchain variant using digital signatures | |
CN106384236B (zh) | 基于区块链的ca认证管理方法、装置及系统 | |
US10225078B2 (en) | Managing a database management system using a blockchain database | |
CN106301792B (zh) | 基于区块链的ca认证管理方法、装置及系统 | |
US11475150B2 (en) | Methods and apparatus for implementing state proofs and ledger identifiers in a distributed database | |
CN109347941A (zh) | 一种基于区块链的数据共享平台及其实现方法 | |
CN117278224A (zh) | 用于验证身份属性信息的方法和系统 | |
US11924185B2 (en) | Method and system for general data protection compliance via blockchain | |
CN108897874A (zh) | 用于处理数据的方法和装置 | |
CN115186304B (zh) | 一种基于区块链的交易数据校验方法和系统 | |
CN113271311A (zh) | 一种跨链网络中的数字身份管理方法及系统 | |
US20200153630A1 (en) | Method and system for quantum-resistant hashing scheme | |
CN112311779A (zh) | 应用于区块链系统的数据访问控制方法及装置 | |
CN115618430A (zh) | 一种基于区块链的数据提供方确定方法和系统 | |
CN109918451A (zh) | 基于区块链的数据库管理方法及系统 | |
CN115484057A (zh) | 一种基于联盟链的成绩存证方法及系统 | |
CN110457954A (zh) | 合同管理装置与方法 | |
US11425112B1 (en) | Systems and methods for blockchain validation and data record access employing a blockchain configured banking core and blockchain configured federation proxies | |
CN109657481A (zh) | 数据管理方法及装置 | |
US20210295278A1 (en) | Method and system to delegate issuance capability to a third-party | |
CN116860866A (zh) | 一种基于区块链的数据共享方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181102 |
|
RJ01 | Rejection of invention patent application after publication |