首页 / 专利库 / 资料储存系统 / 分布式账本 / 区块链 / 区块头 / 基于区块链动态社交外包数据关键词查询验证方法及装置

基于链动态社交外包数据关键词查询验证方法及装置

阅读:366发布:2020-05-12

专利汇可以提供基于链动态社交外包数据关键词查询验证方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 区 块 链 的动态社交外包数据关键词查询验证方法,OSN运营商将社交数据外包至数据提供商,数据提供商向数据消费者提供数据;OSN运营商构建辅助信息区块链网络并向所述的辅助信息区块链网络发布辅助信息,所述辅助信息区块链网络由辅助信息区块链中的 节点 构建区块链;所述的数据消费者通过辅助信息区块链来验证查询数据的真伪,本发明提出一种高效的自平衡Merkle哈希树数据结构,支持社交数据的动态变化,提出支持自平衡Merkle哈希树数据结构的更新 算法 ,允许数据消费者对查询的数据结果的真实性进行高效率的检验,实现了保存辅助信息的去中心化,提升了保存辅助信息的安全性;本发明允许社交数据动态变化,增加了系统的可扩展性。,下面是基于链动态社交外包数据关键词查询验证方法及装置专利的具体信息内容。

1.一种基于链的动态社交外包数据关键词查询验证方法,其特征在于,OSN运营商将动态社交数据外包至数据提供商,所述数据提供商向数据消费者提供数据;所述OSN运营商构建辅助信息区块链网络并向所述的辅助信息区块链网络发布辅助信息,所述辅助信息区块链网络由辅助信息区块链中的节点构建区块链;所述的数据消费者通过辅助信息区块链来验证查询数据的真伪,其中,OSN节点对原始的社交信息进行辅助信息的生成,并将其进行全网广播,当全网超过预定数量的节点接收到该辅助信息后,进行下一个辅助信息的生成及广播;全网节点通过POW机制计算随机哈希散列的数值解争夺记账权,当某一节点争夺到新区块记账权后向全网广播;随后构建新区块并将其加入到所述的辅助信息区块链中,并再次进行广播,当全网超过预定数量的节点接收到区块的信息,则判断该区块信息已经被记录;所述数据消费者通过辅助信息区块链对查询结果的正确性和完整性进行验证。
2.如权利要求1所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,所述OSN运营商基于P2P技术构建辅助信息区块链网络,其中所述节点分为OSN节点和普通节点,通过所述普通节点向全网节点广播信息,生成新区块、验证查询信息;所述OSN节点具有普通节点的功能,同时使用RSA加密技术生成所述OSN节点的公钥和私钥并广播每个节点的辅助信息,其中,所述辅助信息的生成具体步骤包括:
步骤101:所述OSN节点将时间戳内产生的社交数据作为自平衡Merkle哈希树的输入,然后更新所述自平衡Merkle哈希树,直至时间戳截至,将树的根节点存入Cuckoo过滤器
步骤102:OSN运营商对Cuckoo过滤器和时间戳进行hash处理后用私钥进行签名;
步骤103:OSN运营商将时间戳、Cuckoo过滤器、OSN公钥、OSN签名作为辅助信息,广播至全网节点。
3.如权利要求2所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,新区块生成步骤包括:
步骤201:所有节点通过工作量证明法争夺新区块的记账权;
步骤202:当某一节点争夺到记账权后将OSN运营商广播的辅助信息保存至新创建的区块,并使该区块与上一个区块链接形成辅助信息区块链。
4.如权利要求3所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,验证方法包含如下步骤:
步骤301:当数据消费者需要验证查询数据的正确性和完整性时,通过辅助信息区块链网络的节点下载完整的区块链信息;
步骤302:依据时间戳在区块链中找到对应区块中保存的辅助信息;
步骤303:依据所述辅助信息中Cuckoo过滤器和时间戳验证该区块辅助信息中的签名信息;当验证通过时进行步骤304,否则从其他节点重新下载该区块的信息;
步骤304:数据消费者依据获得的查询数据重建Merkle树的根节点;
步骤305:判断根节点是否存在于Cuckoo过滤器,若存在则其判断该数据为正确且完整的;否则判断查询数据为潜在被篡改数据。
5.如权利要求2所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,所述的辅助信息生成进一步包括:
步骤111:OSN节点对某一时间戳内产生的原始社交信息进行预处理,通过非文字符号、停用词的过滤,得到每一条社交信息的关键词集合;
步骤112:根据所述的关键词集合将社交信息进行分类,形成基于关键词的社交信息集合,并根据信息发布时间先后,将其作为自平衡Merkle哈希树的输入更新根节点,直至时间戳内;
步骤113:将得到的所有根节点添加至Cuckoo过滤器;
步骤114:所述的OSN节点将Cuckoo过滤器和时间戳进行SHA256处理,并通过所述OSN节点的私钥进行签名;
步骤115:所述OSN节点将Cuckoo过滤器、时间戳、签名、该OSN节点公钥作为辅助信息进行全网广播。
6.如权利要求5所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,自平衡Merkle哈希树构建进一步包括:
步骤211:若当前树为空树,进入步骤212,否则进入步骤213;
步骤212:记结点N为根结点ROOT,进入步骤219;
步骤213:以树的根结点ROOT和新节点N分别作为左、右孩子,生成新的根结点并记为ROOT;
步骤214:若新的根结点ROOT平衡,进入步骤219,否则进入步骤215;
步骤215:记根结点ROOT为旋转结点RN;
步骤216:调用旋转算法,若RN的左子树高,传入参数1,否则传入参数-1;
步骤217:若RN平衡,则将RN的父结点设置为RN,进入步骤218,否则返回步骤216;
步骤218:若RN为空,进入步骤219,否则返回步骤217;
步骤219:返回根结点ROOT。
7.如权利要求6所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,旋转算法进一步包括:
步骤311:记旋转节点R的父结点为PR;
步骤312:若旋转参数为1,运行步骤313-315,若为-1,则运行步骤316-318;
步骤313:将R的左孩子记为T;
步骤314:将T的右孩子设置为R的左孩子;
步骤315:将R设置为T的右孩子;
步骤316:将R的右孩子记为T;
步骤317:将T的左孩子设置为R的右孩子;
步骤318:将R设置为T的左孩子;
步骤319:若PR为空,进入步骤321,否则进入步骤320;
步骤320:若R为PR的左孩子,则将PR的左孩子改为T,否则将PR的右孩子改为T;
步骤321:若R为空,进入步骤323,否则进入步骤322;
步骤322:更新R,判断PR是否为空,若为空,则记R为根结点ROOT,进入步骤323,否则设置PR为R,返回步骤321;
步骤323:返回根结点ROOT。
8.如权利要求2所述的一种基于区块链的动态社交外包数据关键词查询验证方法,其特征在于,新区块的构建进一步包括:
步骤411:得到记账权的节点将OSN节点广播的辅助信息保存至新创建的区块,所述区块由区块头和区块体构成,所述区块头包括上一个区块的hash值、辅助信息对应时间戳、求解的问题以及对应的随机数,所述区块体包括Cuckoo过滤器、OSN公钥及辅助信息签名;
步骤412:新区块构建完毕后,该节点将区块链接到主链之上并广播至其他节点,当超过预定数量的节点返回接受表示该区块加入至主链。
9.一种电子装置,其特征在于,包括:
处理器;以及,存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-8任一项所述的基于区块链的动态社交外包数据关键词查询验证方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-8任一项所述的基于区块链的动态社交外包数据关键词查询验证方法。

说明书全文

基于链动态社交外包数据关键词查询验证方法及装置

技术领域

[0001] 本发明涉及区块链技术领域,尤其涉及一种基于区块链的动态社交外包数据关键词查询验证方法、装置及存储介质。

背景技术

[0002] 随着互联网技术、移动设备以及通信技术的发展,社交网络服务对人们的日常生活产生了巨大影响。为了充分挖掘社交数据所蕴含的价值,获取完整社交数据是数据分析的基本前提。社交数据外包服务是目前获取完整社交数据的一种主要方式。社交数据外包服务模式包含三个实体:社交网路运营商(Online Social Network,OSN)、第三方数据提供商(Social Data Provider,SDP)以及数据消费者。在该外包服务中,在线社交网络运营商将社交数据外包给第三方社交数据提供商,并将其按需转售给数据消费者。第三方数据提供商在将数据转售给数据消费者的过程中,可能受到经济利益因素的影响对提供的数据进行增加、删除或者修改等行为。当数据消费者使用这些虚假数据必将损害其合法权益。为了验证数据消费者从第三方数据提供商查询得到的数据是否被进行篡改,进而提出了验证数据的真实性验证方法研究。当查询数据是完整的且满足查询条件,即表明该数据没有被第三方数据提供商所篡改,完成真实性的验证。目前问题解决方案的基本思路如下,首先由OSN运营商基于原始数据构造签名信息,然后将原始数据和辅助信息提供给SDP;当数据消费者向SDP查询数据时,后者返回查询数据以及对应的验证信息;最后数据消费者利用公钥检验签名信息,从而验证返回的查询结果的真实性。现有的方案主要分为基于签名链的查询验证方案以及基于MHT的查询方案,上述方案都需要OSN和SDP共同存储用于验证查询数据真实性的辅助信息,随着数据量增加对应的计算开销、存储开销随之增加。此外其他方案引入Bloom过滤器用于构建辅助信息降低其存储开销,但Bloom过滤器自身的假阳性问题会影响检测的效果。

发明内容

[0003] 本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明公开了一种基于区块链的动态社交外包数据关键词查询验证方法,OSN运营商将社交数据外包至数据提供商,所述数据提供商向数据消费者提供数据;所述OSN运营商构建辅助信息区块链网络并向所述的辅助信息区块链网络发布辅助信息,所述辅助信息区块链网络由辅助信息区块链中的节点构建区块链;所述的数据消费者通过辅助信息区块链来验证查询数据的真伪。
[0004] 更进一步地,所述OSN运营商基于P2P技术构建辅助信息区块链网络,其中所述节点分为OSN节点和普通节点,通过所述普通节点向全网节点广播信息,生成新区块、验证查询信息;所述OSN节点具有普通节点的功能,同时使用RSA加密技术生成所述OSN节点的公钥和私钥并广播每个节点的辅助信息。
[0005] 更进一步地,所述辅助信息的生成具体步骤包括:
[0006] 步骤101:所述OSN节点将时间戳内产生的动态社交数据作为输入,然后更新自平衡Merkle哈希树,并将生成的根节点存入Cuckoo过滤器;
[0007] 步骤102:OSN运营商对Cuckoo过滤器和时间戳进行hash处理后用私钥进行签名;
[0008] 步骤103:OSN运营商将时间戳、Cuckoo过滤器、OSN公钥、OSN签名作为辅助信息,广播至全网节点。
[0009] 更进一步地,更新自平衡Merkle哈希树步骤包括:
[0010] 步骤201:若当前树为空树,进入步骤202,否则进入步骤203。
[0011] 步骤202:记输入节点N为根结点ROOT,进入步骤209。
[0012] 步骤203:以树的根结点ROOT和结点N分别为左右孩子,生成新的根结点并记为ROOT。
[0013] 步骤204:若新的根结点ROOT平衡,进入步骤209,否则进入步骤205。
[0014] 步骤205:记根结点ROOT为旋转结点RN。
[0015] 步骤206:调用旋转算法,若RN的左子树高,传入参数1,否则传入参数-1。
[0016] 步骤207:若RN平衡,则将RN的父结点设置为RN,进入步骤208,否则返回步骤206。
[0017] 步骤208:若RN为空,进入步骤209,否则返回步骤207。
[0018] 步骤209:返回根结点ROOT。
[0019] 更进一步地,旋转算法包括:
[0020] 步骤301:记旋转节点R的父结点为PR。
[0021] 步骤302:若参数为1,进入步骤303-305,若为-1,则进入步骤306-308。
[0022] 步骤303:将R的左孩子记为T。
[0023] 步骤304:将T的右孩子设置为R的左孩子。
[0024] 步骤305:将R设置为T的右孩子,进入步骤309。
[0025] 步骤306:将R的右孩子记为T。
[0026] 步骤307:将T的左孩子设置为R的右孩子。
[0027] 步骤308:将R设置为T的左孩子。
[0028] 步骤309:若PR为空,进入步骤311,否则进入步骤310。
[0029] 步骤310:若R为PR的左孩子,则将PR的左孩子改为T,否则将PR的右孩子改为T。
[0030] 步骤311:若R为空,进入步骤313,否则进入步骤312。
[0031] 步骤312:更新R,判断PR是否为空,若为空,则记R为根结点ROOT,进入步骤313,否则设置PR为R,返回步骤311。
[0032] 步骤313:返回根结点ROOT。
[0033] 更进一步地,新区块生成步骤包括:
[0034] 步骤401:所有节点通过工作量证明法争夺新区块的记账权;
[0035] 步骤402:当某一节点争夺到记账权后将OSN运营商广播的辅助信息保存至新创建的区块,并使该区块与上一个区块链接形成辅助信息区块链。
[0036] 更进一步地,验证方法包含如下步骤:
[0037] 步骤501:当数据消费者需要验证查询数据的正确性和完整性时,通过辅助信息区块链网络的节点下载完整的区块链信息;
[0038] 步骤502:依据时间戳在区块链中找到对应区块中保存的辅助信息;
[0039] 步骤503:依据所述辅助信息中Cuckoo过滤器和时间戳验证该区块辅助信息中的签名信息;当验证通过时进行步骤504,否则从其他节点重新下载该区块的信息;
[0040] 步骤504:数据消费者依据获得的查询数据重建Merkle树的根节点;
[0041] 步骤505:判断根节点是否存在于Cuckoo过滤器,若存在则其判断该数据为正确且完整的;否则判断查询数据为潜在被篡改数据。
[0042] 更进一步地,所述OSN节点对原始的社交信息进行辅助信息的生成,并将其进行全网广播,当全网超过预定数量的节点接收到该辅助信息后,进行下一个辅助信息的生成及广播;全网节点通过POW机制计算随机哈希散列的数值解争夺记账权,当某一节点争夺到新区块记账权后向全网广播;随后构建新区块并将其加入到所述的辅助信息区块链中,并再次进行广播,当全网超过预定数量的节点接收到区块的信息,则判断该区块信息已经被记录;所述数据消费者通过辅助信息区块链对查询结果的正确性和完整性进行验证。
[0043] 更进一步地,所述的辅助信息生成进一步包括:
[0044] 步骤111:OSN节点对某一时间戳内产生的原始社交信息进行预处理,通过非文字符号、停用词的过滤,得到每一条社交信息的关键词集合;
[0045] 步骤112:根据所述的关键词集合将社交信息进行分类,形成基于关键词的社交信息集合,并根据社交信息发布的时间先后依次更新自平衡Merkle哈希树,进而构建得到根节点;
[0046] 步骤113:将得到的所有根节点添加至Cuckoo过滤器;
[0047] 步骤114:所述的OSN节点将Cuckoo过滤器和时间戳进行SHA256处理,并通过所述OSN节点的私钥进行签名;
[0048] 步骤115:所述OSN节点将Cuckoo过滤器、时间戳、签名、该OSN节点公钥作为辅助信息进行全网广播。
[0049] 更进一步地,新区块的构建进一步包括:
[0050] 步骤211:得到记账权的节点将OSN节点广播的辅助信息保存至新创建的区块,[0051] 所述区块由区块头和区块体构成,所述区块头包括上一个区块的hash值、辅助信息对应时间戳、求解的问题以及对应的随机数,所述区块体包括Cuckoo过滤器、OSN公钥及辅助信息签名;
[0052] 步骤212:新区块构建完毕后,该节点将区块链接到主链之上并广播至其他节点,当超过预定数量的节点返回接受表示该区块加入至主链。
[0053] 本发明进一步公开了一种电子装置,包括:
[0054] 处理器;以及,存储器,用于存储所述处理器的可执行指令;
[0055] 其中,所述处理器配置为经由执行所述可执行指令来执行上述的基于区块链的动态社交外包数据关键词查询验证方法。
[0056] 本发明进一步公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于区块链的动态社交外包数据关键词查询验证方法。
[0057] 本发明与现有技术相比,取得的有益效果:本发明目的是提供一种基于区块链的动态社交外包数据关键词查询验证方法。该方法采用区块链技术构建区块链网络,该网络中的所有节点保存辅助信息链的信息,实现了保存辅助信息的去中心化,提升了保存辅助信息的安全性;在构建验证查询数据辅助信息方面,首先,提出了一种自平衡Merkle哈希树结构,支持大规模数据的高效动态插入、删除和修改;其次,使用Cuckoo过滤器等技术构建了低存储空间、高效率的辅助信息。此外,该方法允许数据消费者对查询的数据结果的真实性进行高效率的检验。当查询结果满足以下两个要求即表示数据真实性被证明:1、数据正确性:查询数据满足数据消费者提供的查询条件;2、数据完整性:查询数据必须是完整的,不是满足查询条件下完整的查询数据集中截取的一段子集。本方法使用Cuckoo过滤器构建辅助信息,降低了存储开销,同时能够高效的检验查询结果,同时避免了Bloom过滤器假阳性问题,从而准确的验证数据的完整性和正确性;采用P2P技术构建辅助信息区块链,能够辅助信息存储的去中心化,除非攻破了其中50%以上的节点,才有可能对辅助信息区块链的区块信息进行篡改,具有较高的安全性。附图说明
[0058] 从以下结合附图的描述可以进一步理解本发明。图中的部件不一定按比例绘制,而是将重点放在示出实施例的原理上。在图中,在不同的视图中,相同的附图标记指定对应的部分。
[0059] 图1是本发明的一种基于区块链的动态社交外包数据关键词查询验证方法的流程图
[0060] 图2是本发明的一实施例中区块链网络构建的流程图;
[0061] 图3是本发明的一实施例中更新自平衡Merkle哈希树的顺时针旋转图;
[0062] 图4是本发明的一实施例中更新自平衡Merkle哈希树的逆时针旋转图;
[0063] 图5是本发明的一实施例中依据关键词集合对社交信息进行分类方法的流程图;
[0064] 图6是本发明的一实施例中构建的区块链网络中的区块的组成图。

具体实施方式

[0065] 实施例一
[0066] 本实施例的模型架构如图1所示,OSN运营商社交数据外包至数据提供商,数据提供商向数据消费者提供数据;OSN运营商构建辅助信息区块链网络并向其中发布辅助信息,由辅助信息区块链中的节点构建区块链;数据消费者通过辅助信息区块链来验证查询数据的真实性。OSN基于P2P技术构建辅助信息区块链网络,其中节点分为OSN节点和普通节点(可由第三方协助构建,如数据消费者参与普通节点构建)。普通节点能够向全网节点广播信息,生成新区块、验证查询信息。OSN节点具有普通节点的功能,同时还能广播辅助信息(即只有源于OSN节点广播的辅助信息才被视为有效)。每个节点使用RSA加密技术生成该节点的公钥和私钥。该方法分为以下两个部分:辅助信息区块链的生成和验证。
[0067] 辅助信息区块链的生成包括辅助信息生成和区块生成:
[0068] 辅助信息生成具体步骤如下:
[0069] 步骤1:OSN节点首先将时间戳内产生的社交数据依时间顺序作为自平衡Merkle哈希树的输入,更新树的结构并得到根节点,进而将其存入Cuckoo过滤器;
[0070] 步骤2:OSN对Cuckoo过滤器和时间戳进行hash处理后用私钥进行签名;
[0071] 步骤3:OSN将时间戳、Cuckoo过滤器、OSN公钥、OSN签名作为辅助信息,广播至全网节点。
[0072] 区块生成步骤如下:
[0073] 步骤1:所有节点通过工作量证明方法(Proof Of Work,简称POW)争夺新区块的记账权。
[0074] 步骤2:当某一节点争夺到记账权后将OSN广播的辅助信息(该信息尚未保存至区块,且相对其他未保存的辅助信息产生时间戳最早)保存至新创建的区块,并使该区块与上一个区块链接形成辅助信息区块链。
[0075] 验证方法包含如下步骤:
[0076] 步骤1:当数据消费者需要验证查询数据的正确性和完整性,通过在辅助信息区块链网络的节点下载完整的区块链信息;
[0077] 步骤2:依据时间戳在区块链中找到对应区块中保存的辅助信息;
[0078] 步骤3:依据辅助信息中Cuckoo过滤器和时间戳验证区块辅助信息中的签名信息。当验证通过时进行步骤4,否则从其他节点重新下载该区块的信息。
[0079] 步骤4:数据消费者依据获得的查询数据重建Merkle树的根节点。
[0080] 步骤5:判断根节点是否存在于Cuckoo过滤器,如果在其中表示该数据是正确且完整的;否则表示查询数据可能被篡改。
[0081] 实施例二
[0082] 本实施例提供一种基于区块链的动态社交外包数据关键词查询验证方法,具体实施方式如下:
[0083] 1:OSN节点对原始的社交信息进行辅助信息的生成,并将其进行全网广播,如图2所示。当全网超过50%的节点接收到该辅助信息,开始下一个辅助信息的生成及广播。
[0084] 辅助信息生成的具体步骤如下:
[0085] 1.1OSN节点对某一时间戳内产生的原始社交信息进行预处理,通过非文字符号、停用词的过滤,得到每一条社交信息的关键词集合。
[0086] 1.2依据关键词集合将社交信息进行分类,形成基于关键词的社交信息集合,其中社交信息的排序方式是依据该信息发布的时间从前往后。将该集合数据依次输入自平衡Merkle哈希树的构建算法,当出现不平衡现象时,依情况分别调用顺、逆时针算法,算法分别如图3和4,进而得到自平衡Merkle哈希树的根节点,过程如图5所示。
[0087] 1.3将得到的所有根节点添加至Cuckoo过滤器。
[0088] 1.4OSN节点将Cuckoo过滤器和时间戳进行SHA256处理并用该OSN节点的私钥进行签名。
[0089] 1.5该OSN节点将Cuckoo过滤器、时间戳、签名、该OSN节点公钥作为辅助信息进行全网广播。
[0090] 2.全网节点通过POW机制计算随机哈希散列的数值解争夺记账权,当某一节点争夺到新区块记账权后向全网广播;随后构建新区块并将其加入到辅助信息区块链中,并再次进行广播,当全网超过50%的节点接收到区块的信息,表示该区块信息被记录。
[0091] 新区块的构建步骤如下:
[0092] 2.1得到记账权的节点将OSN节点广播的辅助信息(该信息尚未保存至区块,且相对其他未保存的辅助信息产生时间戳最早)保存至新创建的区块。
[0093] 2.2区块的结构如图6所示,由区块头和区块体构成。区块头包括上一个区块的hash值、辅助信息对应时间戳、求解的问题以及对应的随机数。
[0094] 2.3新区块构建完毕后,该节点将区块链接到主链之上并广播至其他节点,当超过50%的节点返回接受表示该区块加入至主链。
[0095] 3.数据消费者通过辅助信息区块链对查询结果的正确性和完整性进行验证。其中步骤如下:
[0096] 3.1数据消费者在辅助信息区块链网络中,通过任意节点发送请求下载辅助信息区块链的信息。
[0097] 3.2依据查询信息的时间戳与区块链中对应区块。
[0098] 3.3通过该区块Cuckoo过滤器、时间戳和公钥验证签名信息。如果验证通过进行3.4操作,否则从其他节点下载区块链信息。
[0099] 3.4数据消费者依据查询信息重新构建Merkle树的根节点,判断其是否在Cuckoo过滤器。如果根节点在其中,表示数据的完整性和正确性得到保证。
[0100] 本实施例采用区块链技术构建区块链网络,该网络中的所有节点保存辅助信息链的信息,实现了保存辅助信息的去中心化,提升了保存辅助信息的安全性;在构建验证查询数据辅助信息方面,使用Cuckoo过滤器等技术构建了低存储空间、高效率的辅助信息。
[0101] 实施例三
[0102] 本实施例提供一种基于区块链的动态社交外包数据关键词查询验证方法,OSN运营商将社交数据外包至数据提供商,所述数据提供商向数据消费者提供数据;所述OSN运营商构建辅助信息区块链网络并向所述的辅助信息区块链网络发布辅助信息,所述辅助信息区块链网络由辅助信息区块链中的节点构建区块链;所述的数据消费者通过辅助信息区块链来验证查询数据的真伪。
[0103] 更进一步地,所述OSN运营商基于P2P技术构建辅助信息区块链网络,其中所述节点分为OSN节点和普通节点,通过所述普通节点向全网节点广播信息,生成新区块、验证查询信息;所述OSN节点具有普通节点的功能,同时使用RSA加密技术生成所述OSN节点的公钥和私钥并广播每个节点的辅助信息。
[0104] 更进一步地,所述辅助信息的生成具体步骤包括:
[0105] 步骤101:所述OSN节点将时间戳内产生的社交数据作为Merkle树的叶子节点,然后构建树的根节点并存入Cuckoo过滤器;
[0106] 步骤102:OSN运营商对Cuckoo过滤器和时间戳进行hash处理后用私钥进行签名;
[0107] 步骤103:OSN运营商将时间戳、Cuckoo过滤器、OSN公钥、OSN签名作为辅助信息,广播至全网节点。
[0108] 更进一步地,新区块生成步骤包括:
[0109] 步骤201:所有节点通过工作量证明法争夺新区块的记账权;
[0110] 步骤202:当某一节点争夺到记账权后将OSN运营商广播的辅助信息保存至新创建的区块,并使该区块与上一个区块链接形成辅助信息区块链。
[0111] 更进一步地,验证方法包含如下步骤:
[0112] 步骤301:当数据消费者需要验证查询数据的正确性和完整性时,通过辅助信息区块链网络的节点下载完整的区块链信息;
[0113] 步骤302:依据时间戳在区块链中找到对应区块中保存的辅助信息;
[0114] 步骤303:依据所述辅助信息中Cuckoo过滤器和时间戳验证该区块辅助信息中的签名信息;当验证通过时进行步骤304,否则从其他节点重新下载该区块的信息;
[0115] 步骤304:数据消费者依据获得的查询数据重建Merkle树的根节点;
[0116] 步骤305:判断根节点是否存在于Cuckoo过滤器,若存在则其判断该数据为正确且完整的;否则判断查询数据为潜在被篡改数据。
[0117] 更进一步地,所述OSN节点对原始的社交信息进行辅助信息的生成,并将其进行全网广播,当全网超过预定数量的节点接收到该辅助信息后,进行下一个辅助信息的生成及广播;全网节点通过POW机制计算随机哈希散列的数值解争夺记账权,当某一节点争夺到新区块记账权后向全网广播;随后构建新区块并将其加入到所述的辅助信息区块链中,并再次进行广播,当全网超过预定数量的节点接收到区块的信息,则判断该区块信息已经被记录;所述数据消费者通过辅助信息区块链对查询结果的正确性和完整性进行验证。
[0118] 更进一步地,所述的辅助信息生成进一步包括:
[0119] 步骤111:OSN节点对某一时间戳内产生的原始社交信息进行预处理,通过非文字符号、停用词的过滤,得到每一条社交信息的关键词集合;
[0120] 步骤112:根据所述的关键词集合将社交信息进行分类,形成基于关键词的社交信息集合,并根据社交信息发布的时间先后进行排序,对所述社交信息集合进行Merkle树的构建得到根节点;
[0121] 步骤113:将得到的所有根节点添加至Cuckoo过滤器;
[0122] 步骤114:所述的OSN节点将Cuckoo过滤器和时间戳进行SHA256处理,并通过所述OSN节点的私钥进行签名;
[0123] 步骤115:所述OSN节点将Cuckoo过滤器、时间戳、签名、该OSN节点公钥作为辅助信息进行全网广播。
[0124] 更进一步地,新区块的构建进一步包括:
[0125] 步骤211:得到记账权的节点将OSN节点广播的辅助信息保存至新创建的区块,[0126] 所述区块由区块头和区块体构成,所述区块头包括上一个区块的hash值、辅助信息对应时间戳、求解的问题以及对应的随机数,所述区块体包括Cuckoo过滤器、OSN公钥及辅助信息签名;
[0127] 步骤212:新区块构建完毕后,该节点将区块链接到主链之上并广播至其他节点,当超过预定数量的节点返回接受表示该区块加入至主链。
[0128] 实施例进一步公开了一种电子装置,包括:
[0129] 处理器;以及,
[0130] 存储器,用于存储所述处理器的可执行指令;
[0131] 其中,所述处理器配置为经由执行所述可执行指令来执行上述的基于区块链的动态社交外包数据关键词查询验证方法。
[0132] 本实施例进一步公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于区块链的动态社交外包数据关键词查询验证方法。
[0133] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0134] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0135] 虽然上面已经参考各种实施例描述了本发明,但是应当理解,在不脱离本发明的范围的情况下,可以进行许多改变和修改。因此,其旨在上述详细描述被认为是例示性的而非限制性的,并且应当理解,以下权利要求(包括所有等同物)旨在限定本发明的精神和范围。以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈