首页 / 专利库 / 心理学与精神病学 / 感知 / 可验证智能感知终端数据聚集方法及系统

可验证智能感知终端数据聚集方法及系统

阅读:976发布:2021-04-12

专利汇可以提供可验证智能感知终端数据聚集方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种可验证的智能 感知 终端的网络数据聚集方法及其应用系统。方法首先由网络数据聚集 服务器 生成和公布全局参数、收集和生成全部智能感知终端的注册信息和加密的备用数据项集合并分发给不同数据聚集结点;其次通过数据聚集结点对智能感知终端进行认证并交互地完成数据聚集过程;最后利用整个网络数据收集过程中所公布的所有数据完成数据统计以及网络数据收集过程的正确性、完整性验证。该方法的主要特点是数据收集的过程中智能感知终端提交的数据具有隐私安全性、统计简单性和可验证性。,下面是可验证智能感知终端数据聚集方法及系统专利的具体信息内容。

1.一种利用网络数据聚集系统进行网络数据聚集的方法,所述系统包括网络数据聚集服务器、多个网络数据聚集节点和多个智能感知终端,其特征在于所述方法包括:
在网络数据聚集过程开始之前,利用线下方式和/或在线方式对多个智能感知终端中的每个智能感知终端进行注册,为每个智能感知终端生成公钥私钥对,将公钥作为其自身的假名并发送给数据聚集服务器,并且在智能感知终端自身的存储单元中保存私钥,其中所述智能感知终端将利用私钥对其提交的数据报告进行数字签名,以保证数据不被篡改,数据聚集服务器验证所述智能感知终端的合法性后,将所述智能感知终端的公钥保存到合法假名列表中;
向网络数据聚集系统中的多个智能感知终端广播消息以启动网络数据聚集过程,所述消息附带所述网络数据聚集服务器的数字签名,以防止攻击者对所述消息的篡改;
利用网络数据聚集服务器的初始化单元生成公共参数,
根据公共参数选取随机数,并且根据随机数计算生成秘密随机数;
根据所述公共参数以及秘密随机数计算与秘密随机数相关联的安全证书;
根据所述公共参数、秘密随机数以及与秘密随机数相关联的安全证书生成加密的备选数据项的集合;
网络数据聚集服务器的数据聚集单元将所述加密的备选数据项集合输入到网络中各个数据聚集节点的后台数据库中,将所有合法的智能感知终 端的认证信息的列表输入到各个数据聚集节点的后台数据库;
所述多个数据聚集节点中的每一个利用网络数据聚集服务器中存储的多个智能感知终端的注册信息对多个智能感知终端中的每一个进行认证,通过认证的智能感知终端在加密的备选数据项中确定与所述智能感知终端相关联的数据,所述数据聚集节点记录四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>,将所述四元组作为数据报告提交给数据聚集服务器;
网络数据聚集服务器的数据统计单元根据网络中收集到的智能感知终端的四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>进行数据统计,根据所述数据统计确定数据聚集结果;以及将确定的数据聚集结果利用电子公告方式进行公布,并且提供对所述确定的数据聚集结果的查询和验证。
2.根据权利要求1所述的方法,其特征在于:
所述公共参数包括以下部分:1)两个大素数p、q,满足2q=p-1,且要求根据p形成的群上的离散对数问题困难性假设成立,从而保证加密的备选数据项不被破解;2)在 中随机选取的q阶元素g、h:由g生成的 的循环子群为G;3)智能感知终端最大可能值n,加密的备选数据项数目N=εn,其中ε≥2为安全系数;4)安全哈希函数H1:{0,1}*→Zq,其中Zq为群并且被用于生成加密的备选数据项时构造非交互式零知识证明;5)备选的数据项集合为{C1,C2,…,Cm},m为备选数据项数目;
所述公共参数q、m和N满足条件: 其中 和  分别表示取
上整和取下整;
所述随机数从集合[0,1,…,2e]中选取,其中
3.根据权利要求1所述的方法,其特征在于:
所述智能感知终端是传感器、销售终端、个人数字助理、智能手机、平板计算机和无线电话中的一个。
4.根据权利要求2所述的方法,其中生成加密的备选数据项集合的过程具体包括:
1)根据公共参数选取随机数,并且根据随机数计算生成秘密随机数包括:
从整数集合[0,1,…,2e]中取2m个组,其中每组N-1个随机数:
{k1,1,k1,2,...,k1,N-1},{k2,1,k2,2,...,k2,N-1},…,{km,1,km,2,...,km,N-1},{t1,1,t1,2,...,t1,N-1},{t2,1,t2,2,...,t2,N-1},…,{tm,1,tm,2,...,tm,N-1}其中k和t表示随机数;
然后计算:


基于以上结果再计算:


按照上述方法生成的{k1,k2,...,kN}、{t1,t2,...,tN}必然满足:

在生成加密的备选数据项集合的过程中用安全方式将{k1,k2,...,kN}、{t1,t2,...,tN}作为秘密随机数进行保存;
2)根据所述公共参数以及秘密随机数计算与秘密随机数的安全承诺包 括:
计算:

其中{W1,W2,...,WN}满足:

将{W1,W2,...,WN}用于关于秘密随机数{k1,k2,...,kN}、{t1,t2,...,tN}的安全证书;安全承诺不会泄露秘密随机数的任何信息,一旦公布安全承诺,生成方无法采用不同的秘密随机数来产生加密的备选数据项;
3)根据所述公共参数、秘密随机数以及秘密随机数的安全承诺生成加密的备选数据项集合包括:

vj,i=kj+2e(i-1), i=1,2,…,m,
j=1,2,…,N
以上生成的小集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}构成加密的备选数据项,所述加密的备选数据项共有N个:{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,…,N),其组成加密的备选数据项集合。
5.根据权利要求4所述的方法,其特征在于:
所述加密的备选数据项有效性验证的具体过程如下:
1)在确定与所述智能感知终端相关联的备选数据项时,如果智能感知终端选择了“备选数据项Ci”,则数据聚集节点将与Ci对应的加密的备选数据项{d1,d2,...,dm}和(vj,i,Pj,i)输出,并附上了智能感知终端的数字签名;
2)在智能感知终端选择确认时,如果选择了“重新选择”选项,则数据 聚集节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}输出,并且进行重新选择;
3)智能感知终端能够实时地进行验证:对于两组数字{d1,d2,...,dm}和{d′1,d′2,...,d′m},除了di-d′i=1,其他的m-1个数字都相等;如果不满足,则说明数据聚集节点的数据存在错误;
4)结束数据提交后,智能感知终端还能够验证输出的Pj,0、Pj,i以及数据聚集节点的数字签名是否有效;如果无效,则终端向数据聚集服务器报告该数据聚集节点的数据存在错误;
5)如果加密的备选数据项子项(vj,i,Pj,i)被用做有效性验证,则其对应的加密的备选数据项相当于被作废;数据聚集节点只将(vj,0,Pj,0)提交到数据聚集服务器。
6.一种网络数据聚集系统,所述系统包括网络数据聚集服务器、多个网络数据聚集节点和多个智能感知终端,其特征在于,
所述网络数据聚集服务器包括:
公告单元,向网络数据聚集系统中的多个智能感知终端广播消息以启动网络数据聚集过程,所述消息附带所述网络数据聚集服务器的数字签名,以防止攻击者对所述消息的篡改;以及,将确定的数据聚集结果利用电子公告方式进行公布,并且提供对所述确定的数据聚集结果的查询和验证;
注册单元,在网络数据聚集过程开始之前,利用线下方式和/或在线方式对每个智能感知终端进行注册,为每个智能感知终端生成公钥私钥对,将公钥作为其自身的假名并发送给数据聚集服务器,并且在智能感知终端自身的存储单元中保存私钥,其中所述智能感知终端将利用私钥对其提交的数据报告进行数字签名,以保证数据不被篡改,数据聚集服务器验证所 述智能感知终端的合法性后,将所述智能感知终端的公钥保存到合法假名列表中;
初始化单元,生成公共参数,根据公共参数选取随机数,并且根据随机数计算生成秘密随机数;根据所述公共参数以及秘密随机数计算与秘密随机数相关联的安全证书;根据所述公共参数、秘密随机数以及与秘密随机数相关联的安全证书生成加密的备选数据项的集合;
数据聚集单元,将所述加密的备选数据项集合输入到网络中各个数据聚集节点的后台数据库中;将所有合法的智能感知终端的认证信息的列表输入到各个数据聚集节点的后台数据库;
数据统计单元,根据网络中收集到的智能感知终端的四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>进行数据统计,根据所述数据统计确定数据聚集结果;
数据聚集节点,利用网络数据聚集服务器中存储的多个智能感知终端的注册信息对相应的智能感知终端进行认证,通过认证的智能感知终端在加密的备选数据项中确定与所述智能感知终端相关联的数据,所述数据聚集节点记录四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>,将所述四元组作为数据报告提交给数据聚集服务器;
数据智能感知终端,在加密的备选数据项中确定与所述智能感知终端相关联的数据。
7.根据权利要求6所述的网络数据聚集系统,其特征在于:
所述公共参数包括以下部分:1)两个大素数p、q,满足2q=p-1,且要求根据p形成的群上的离散对数问题困难性假设成立,从而保证加 密的备选数据项不被破解;2)在 中随机选取的q阶元素g、h:由g生成的 的循环子群为G;3)智能感知终端最大可能值n,加密的备选数据项数目N=εn,其中ε≥2为安全系数;4)安全哈希函数H1:{0,1}*→Zq,其中Zq为群并且被用于生成加密的备选数据项时构造非交互式零知识证明;5)备选的数据项集合为{C1,C2,…,Cm},m为备选数据项数目;
所述系统公共参数q、m和N满足条件: 其中 和 分别表示
取上整和取下整;
所述随机数从集合[0,1,…,2e]中选取,其中
8.根据权利要求6所述的网络数据聚集系统,其特征在于:
所述智能感知终端是传感器、销售终端、个人数字助理、智能手机、平板计算机和无线电话中的一个。
9.根据权利要求7所述的网络数据聚集系统,其中生成加密的备选数据项集合具体包括:
1)根据公共参数选取随机数,并且根据随机数计算生成秘密随机数包括:
从整数集合[0,1,…,2e]中取2m组,其中每组N-1个随机数:
{k1,1,k1,2,...,k1,N-1},{k2,1,k2,2,...,k2,N-1},…,{km,1,km,2,...,km,N-1},{t1,1,t1,2,...,t1,N-1},{t2,1,t2,2,...,t2,N-1},…,{tm,1,tm,2,...,tm,N-1}其中k和t表示随机数;
然后计算:


基于以上结果再计算:


容易证明按照上述方法生成的{k1,k2,...,kN}、{t1,t2,...,tN}必然满足:

{k1,k2,...,kN}、{t1,t2,...,tN}在生成加密的备选数据项过程中作为秘密随机数用安全方式进行保存;
2)根据所述公共参数以及秘密随机数计算与秘密随机数的安全承诺包括:
计算:

很容易证明{W1,W2,...,WN}满足:

可以将{W1,W2,...,WN}看做关于秘密随机数{k1,k2,...,kN}、{t1,t2,...,tN}的安全承诺;安全承诺不会泄露秘密随机数的任何信息,一旦公布安全承诺,生成方无法采用不同的秘密随机数用于产生加密的备选数据项;
3)根据所述公共参数、秘密随机数以及秘密随机数的安全承诺生成加密的备选数据项集合包括:
vj,0=kj,
vj,i=kj+2e(i-1), i=1,2,…,m,
j=1,2,…,N
以上生成的{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}构成一个加密的备选数据项,这 样的加密的备选数据项共有N个(组成加密的备选数据项集合):{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,…,N)。
10.根据权利要求9所述的网络数据聚集系统,其特征在于:
所述加密的备选数据项有效性验证的具体过程如下:
1)在智能感知终端选择时,假设智能感知终端选择了“备选项Ci”,则数据聚集节点将与Ci对应的加密的备选数据项{d1,d2,...,dm}和(vj,i,Pj,i)输出,并附上了自己的数字签名;
2)在智能感知终端选择确认时,如果智能感知终端选择了“重新选择”选项,则数据聚集节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}输出,并回到选择界面;
3)智能感知终端当场验证:对于两组数字{d1,d2,...,dm}和{d′1,d′2,...,d′m},除了di-d′i=1,其他的m-1个数字都相等;如果不满足,则说明数据聚集节点在作弊;
4)结束加密的备选数据项提交后,智能感知终端还可以借助于软件验证输出的Pj,0、Pj,i以及数据聚集节点的数字签名是否有效;如果无效,则智能感知终端可以向网络数据聚集服务器投诉该数据聚集节点;
5)如果加密的备选数据项子项(vj,i,Pj,i)被用于做有效性验证,则该加密的备选数据项相当于被作废,数据聚集节点只将(vj,0,Pj,0)提交到网络数据聚集服务器。

说明书全文

可验证智能感知终端数据聚集方法及系统

技术领域

[0001] 概括地,本发明涉及计算机信息安全技术领域,并且具体地涉及一种具有可验证性等特点的智能感知终端数据聚集方法及其系统。

背景技术

[0002] 目前,数据聚集系统通常由位于中心的聚集服务器,以及分散到各地的多个聚集节点和多个终端构成。终端采集所在现场的数据后,经过简单的处理,将数据通过有线,或WIFI、蓝牙、ZigBee等无线方式提交给距离最近的聚集节点,聚集节点生成加密的数据报
告,再将这些报告通过计算机网络传送给聚集服务器。聚集过程结束后,聚集服务器对汇集的所有现场数据报告进行统计、分析,并公布统计结果。终端可以是有线通信终端,如普通的PC机,更多地可能是移动终端,如智能手机、PDA、平板电脑笔记本电脑等。通过配置不同的感知模,终端能够采集多种类型的现场数据,包括通信网络性能参数,所在现场的环境温度、空气质量、交通状况、自由市场商品价格等。因此终端数据聚集系统可以被应用到多种场景下,聚集数据的统计分析结果对决策者把握宏观局势提供了有的帮助。
[0003] 与传统的基于无线传感器网络(WSN:Wireless Sensor Network)的聚集系统相比,终端数据聚集系统的感知节点具有智能性和移动性,能够对数据进行预处理,并且可以在移动过程中采集更多的数据,也不用担心电源问题,另外还可以利用现有的已经分布到
各地的移动终端,无需额外部署感知节点。但是在大规模分布式数据采集中采用终端也会
带来新的安全威胁。首先是隐私问题。参与数据采集的终端,如手机等,往往是伴随着其使用者移动的,因此这些终端在提交采集数据的同时,也暴露了其用户的身份、位置、活动规律等隐私信息。其次是数据完整性问题,由于终端不受中央服务器的控制,一些恶意节点会冒充合法终端反复发送数据,以影响统计结果的完整性。数据在向中央服务器传送过程中
也可能被恶意的中继节点修改。另外,进行数据统计的服务器也可能篡改统计结果,使得数据的最终用户无法确信统计结果的真实性。
[0004] 为此,现有技术中存在对即在隐藏个体终端提交数据的同时,仍然能够获得聚集数据的统计结果,并且该结果的完整性不依赖于数据聚集服务器的诚实性的聚集系统和方
法。

发明内容

[0005] 本发明所描述的智能感知终端数据聚集系统能够保护感知终端的隐私性,即在隐藏个体终端提交数据的同时,仍然能够获得聚集数据的统计结果,并且该结果的完整性不
依赖于数据聚集服务器的诚实性,任何第三方都可以根据公开数据验证统计结果的真实
性。每个数据智能感知终端还可以验证自己的数据是否被计入最终的统计结果,该特点增
加了聚集过程的透明度,增强了普通用户参与数据聚集的信心。
[0006] 本发明要解决的问题是提供一种新的智能终端网络数据聚集方法及其相关系统,使得该智能感知终端数据聚集方法及其系统具有隐私安全、可验证等网络数据聚集应用中
所需求的重要优点。
[0007] 上述智能感知终端数据聚集系统的数据聚集过程中所涉及到的重要组成部分及主要流程详细说明如下:
[0008] 优选地,数据聚集系统的构成为:智能感知终端数据聚集系统由位于中心的数据聚集服务器,多个数据聚集节点,和分散到各地的智能感知终端构成。智能感知终端采集现场数据后,经过简单的处理,将数据通过有线,或wIFI、蓝牙、zigBee等无线方式提交给最近的数据聚集节点,数据聚集节点生成加密数据报告,再将这些数据报告通过计算机网络传
送给数据聚集服务器。聚集过程结束后,数据聚集服务器对汇集的所有现场数据进行统计、分析,并公布统计结果。数据聚集系统的客户从数据聚集服务器上查询统计分析结果和原
始数据。
[0009] 下面描述该系统中各个主要组成部分的功能。
[0010] 优选地,数据聚集服务器包括:
[0011] 公告单元:公告单元用于向系统的各个参与方广播消息,存放在公告单元上数据可以被任何人在任何时间查询。数据聚集服务器只能在公告单元消息列表尾部追加新的的
消息,并且每个消息都附带了数据聚集服务器的数字签名,以防止攻击者篡改和服务器抵
赖。
[0012] 注册单元:每个参与数据聚集的智能终端在聚集过程开始之前首先利用线下和在线相结合的方式向数据聚集服务器注册。每个终端Ti生成一对公私钥对(vi,xi),并将公钥yi作为自己的假名发送给数据聚集服务器,私钥xi由终端自己秘密保存。Ti将利用xi对自己提交的数据报告进行数字签名,以保证数据来源的可靠性。服务器验证该终端的合法性后,将其公钥yi保存到合法智能感知终端假名列表T_List中。
[0013] 初始化单元:负责生成公共参数、秘密随机数、加密的备选数据项集合。加密的备选数据项集合生成之后,秘密随机数可以丢弃。初始化过程结束后,公共参数被追加到公告单元消息列表的尾部。
[0014] 数据聚集单元:(1)将加密的备选数据项集合拆除多个子集分别输入到各个数据聚集节点的后台数据库。(2)将所有合法智能感知终端的认证信息列表T_List输入到各个
数据聚集节点的后台数据库。(3)从各个数据聚集节点收集数据。
[0015] 数据统计发布单元:根据网络中所有数据智能感知终端提交的加密数据报告进行数据统计,根据数据统计结果给出统计结论。同时,利用电子公告系统将所有数据智能感知终端提交的数据报告公布,以便于客户查询和验证统计结果。
[0016] 优选地,数据聚集节点包括:
[0017] 数据聚集节点要完成的功能包括:(1)安全存储加密的备选数据项集合。(2)对智能感知终端的合法性进行验证。防范一些恶意终端冒充合法终端多次参与数据聚集过程以
破坏聚集结果的完整性。(3)接收智能感知终端的数据,将其翻译成对应的加密数据报告。
(4)利用交互方式向终端证明生成的加密数据报告真实地封装了终端提交的数据。
[0018] 优选地,智能感知终端包括:
[0019] 智能感知终端通过感知模块获得现场数据并生成相应的被数据聚集节点认可的数据选项。等移动到某个数据聚集节点的传输范围内时,将数据选项发送给该节点,同时以交互方式验证节点生成的加密数据报告的有效性。最后智能感知终端利用自己的私钥xi为
最终确定的加密数据报告生成数字签名。
[0020] 根据本发明的另一方面,提供一种网络数据聚集的方法,所述方法包括以下过程:基本的数据聚集过程由初始化阶段、终端注册阶段、数据聚集阶段和统计阶段组成。(1)在初始化阶段,数据聚集服务器负责生成公共参数、秘密随机数、加密的备选数据项集合。加密的备选数据项集合生成之后,秘密随机数可以丢弃。初始化过程结束后,公共参数被追加到公告单元消息列表的尾部,供其他参与者下载。加密的备选数据项集合拆除多个子集分
别输入到各个数据聚集节点的后台数据库。在该阶段各个数据聚集节点需要生成自己的用
于认证的公私钥对(Yi,Xi)。所有合法数据聚集节点的公钥Yi形成列表N_List,并将N_List追加到数据聚集服务器的公告单元。(2)在注册阶段,每个参与数据聚集的智能终端在聚集阶段开始之前首先向数据聚集服务器注册。每个终端Ti生成一对公私钥对(yi,xi),公钥yi作为智能感知终端假名保存到终端认证信息列表T_List中。私钥xi由终端自己负责秘密保
存。(3)在数据聚集阶段,智能感知终端首先与距离自己最近的数据聚集节点进行交互式认证,然后将现场采集的数据发送给该数据聚集节点。该节点接收到终端的数据后,将其翻译成对应的加密数据报告。终端可以以交互方式验证该节点生成的加密数据报告的有效性。
数据聚集节点最后生成的数据报告格式为一个4元组(智能感知终端假名,加密数据项,智
能感知终端的签名,数据聚集节点的签名)。有效的数据报告最终通过计算机网络发送给数据聚集服务器,由服务器将它们发布到公告单元。(4)在数据统计阶段,数据聚集服务器利用搜集到的所有数据报告计算统计结果。其他参与者也可以在没有解密密钥的条件下根据
公告单元上的数据报告利用简单的算法计算统计结果以验证数据的完整性。
[0021] 根据本发明的优选的实施方式,所述网络数据聚集的方法进一步包括:
[0022] 初始化阶段
[0023] 数据聚集过程初始化阶段的主要工作是由数据聚集服务器负责生成公共参数、秘密随机数、加密的备选数据项集合。假定数据聚集服务器的公钥PKVA已经用可靠的方式分发给了数据聚集系统的所有参与者。和公钥PKVA对应的私钥SKVA由多个子服务器利用限秘
密共享方案共同持有。数据聚集服务器具体要完成的初始化工作如下。
[0024] 生成公共参数
[0025] 数据聚集服务器负责生成如下公共参数:
[0026] 1.生成两个大素数p、q,满足2q=p-1,且在群 上离散对数问题难解。即,生成两个大素数p、q,满足2q=p-1,且要求根据p形成的群 上的离散对数问题困难性假设成立,
从而保证加密的数据项不被破解。
[0027] 2.在 ,中随机选取q阶元素g、h,并设由g生成的 的循环子群为G。因为g和h是多个数据聚集服务器的子服务器共同随机选取的,所以在离散对数问题困难性假设下,没
有人能知道h关于g的离散对数。
[0028] 3.安全哈希函数H1:{0,1}*→Zq,它将被用于生成加密备选数据项时构造非交互式零知识证明。
[0029] 4.假定参与数据聚集的终端最多有n个(实际肯定小于等于n),数据聚集服务器需要事先确定加密的备选数据项的数目N=εn,其中ε≥2为一个安全系数。每个智能感知终端平均可支配备选数据项的数目为ε,其中只有一项作为有效选项,其它选项可以被智能感知终端用来检验数据聚集节点的可信度。ε越大,参与验证工作的终端越多,数据聚集节点的作弊行为越容易被检验出来。显然,ε越大,系统的开销也越大,因此实际部署时要在安全性和效率之间做一个权衡。建议ε取5或10。
[0030] 数据聚集服务器生成的上述公共参数,包括p、q、g、h、n、N、哈希函数H1的描述信息、备选数据项集合{C1,C2,...,Cm},在数据聚集开始之前都要公布到公告单元,并且附上数据聚集服务器的数字签名。任何参与者都可以获得这些公共参数,并利用公钥PKVA验证公共信息的权威性。
[0031] 另外,系统正常运行必须假设参数N和m满足条件: 其中和 分别表示取上整和取下整。
[0032] 生成加密的备选数据项集合
[0033] 假设备选数据项集合为{C1,C2,...,Cm},且参数N和m满足条件设 在数据聚集阶段开始之前,数据聚集服务器的各
参与方利用如下方式联合生成N个加密的备选数据项集合。
[0034] 1.从整数集合[0,1,…,2e]中取2m组(每组N-1个)随机数:
[0035] {k1,1,k1,2,...,k1,N-1},{k2,1,k2,2,...,k2,N-1},...,{km,1,km,2,...,km,N-1},[0036] {t1,1,t1,2,...,t1,N-1}{t2,1,t2,2,...,t2,N-1},...,{tm,1,tm,2,...,tm,N-1}[0037] 然后计算:
[0038]
[0039]
[0040] 基于以上结果再计算:
[0041]
[0042]
[0043] 容易证明按照上述方法生成的{k1,k2,...,kN}、{t1,t2,...,tN}必然满足:
[0044]
[0045] {k1,k2,...,kN}、{t1,t2,...,tN}在生成加密备选数据项集合过程中作为秘密值安全方式进行保存。
[0046] 2.数据聚集服务器计算:
[0047]
[0048] 很容易证明{W1,W2,...,WN}满足:
[0049]
[0050] 可以将{W1,W2,...,WN}看成是关于秘密随机数{k1,k2,...,kN}、{t1,t2,...,tN}的安全证书(Commitment)。安全证书不会泄露秘密随机数的任何信息,并且在离散对数问题困难性假设下,一旦公布安全证书,数据聚集服务器将无法采用不同的一组随机数{k′1,k′2,...,k′N}、{t′1,t′2,...,t′N}用于生产备选数据项集合。
[0051] 3.数据聚集服务器生成加密备选数据项集合:
[0052]
[0053] vj,i=kj+2e(i-1), i=1,2,…,m,
[0054] j=1,2,…,N
[0055] 上式中Pj,i=NIZK{tj|A(tj)}表示关于秘密值tj的非交互式零知识证明。通过Pj,i,数据聚集服务器能够在不泄露秘密值tj的前提下,证明满足断言A(tj)成立,从而在不泄露kj的前提下证明vj,i的构造方法符合协议规定。构造该非交互式零知识证明将会用到哈希函数H1:{0,1}*→Zq。
[0056] {(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}构成一个加密的备选数据项组,这样的备选项组共有N个,构成加密的备选数据项集合:{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,...,N)。在提交数据时,如果智能感知终端选择Ci,则将数据聚集节点将选项(vj,i,Pj,i)报告给数据聚集服务器。而(vj,0,Pj,0)较为特殊,将被用于数据有效性验证。
[0057] 4.数据聚集服务器会将上述生成的N个加密备选数据项{(vj,0,Pj,,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,...,N)划分成多个子集(按照数据聚集节点数目),并分别用安全方式导入到多个数据聚集节点的后台数据库中。
[0058] 5.数据聚集服务器将{k1,k2,...,kN}、{t1,t2,...,tN}等秘密值删除,将{W1,W2,...,WN}公布到公告单元上并附上自己的数字签名。任何参与者都可以通过验证是否成立检验数据聚集服务器生成的加密备选数据项集合是否符合协议要求。
[0059] 注册阶段
[0060] 在注册阶段,每个参与数据聚集的智能终端在聚集阶段开始之前首先利用线下和在线相结合的方式向数据聚集服务器注册。具体注册方法为:
[0061] 1.数据聚集服务器的管理者利用线下方式(Offline)验证智能终端的合法性,例如检验终端持有人的身份证或终端的产品ID。检验失败,则立即终止注册过程。
[0062] 2.每个终端Ti生成一对公私钥对(yi,xi)。所采用的公钥签名算法可以是任何一种被证明安全的算法,如RSA算法、DSA算法等。数据聚集服务器和智能终端双方对采用哪类算法已经事先做了约定。
[0063] 3.终端Ti将公钥yi发送给数据聚集服务器。为证明该终端持有与公钥yi对应的私钥,服务器生成一个随机数r,并以r||timestamp作为质询消息m,其中timestamp表示时间戳。服务器令终端生成关于m的数字签名sig(m),然后检验签名sig(m)的有效性。检验失败,则立即终止注册过程,否则继续进行下一步。
[0064] 4.通过检验后,公钥yi被作为该智能终端的假名保存到数据聚集服务器的认证信息列表AC_List中。私钥xi由终端自己负责秘密保存。
[0065] 5.所有合法数据节点的公钥列表N_List被下载到智能终端的存储器中。注册过程结束。
[0066] 在上述注册过程中,只有数据聚集服务器知道假名yi与实际终端ID的对应关系,而对于数据聚集节点、数据聚集系统的用户而言无法获得该对应关系。因此,这里提供一定的终端用户隐私性保护。
[0067] 数据聚集阶段
[0068] 在数据聚集阶段,智能感知终端首先与距离自己最近的数据聚集节点进行交互式认证,然后将现场采集的数据发送给该数据聚集节点。数据聚集节点再将这些数据通过计
算机网络传送给数据聚集服务器。具体的工作过程如下。
[0069] 1.当数据感知智能终端达到某个数据聚集节点的有效通信范围内后,首先与该节点完成交互式认证。由于终端持有所有合法数据聚集节点的公钥列表N_List,所以可以利
用“质询—响应”方法对合法数据聚集节点进行认证。另一方面,由于数据聚集节点可以从数据聚集服务器上获得合法终端的列表T_List,所以可以利用“质询—响应”方法对合法的数据感知智能终端进行认证。
[0070] 2.交互认证通过之后,数据聚集节点向智能终端发送所有备选数据项明文,即将集合{C1,C2,...,Cm}发送给终端。
[0071] 3.终端根据现场实测数据从{C1,C2,...,Cm}中选择对应的选项(假定为Ci),并将自己的选择发送给数据聚集节点。
[0072] 4.数据聚集节点从加密的备选数据项集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,...,N)中任取一个选项组{(vk,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)},然后将与Ci对应的(vj,i,Pj,i)作为最终生成的加密备选数据项。
[0073] 数据聚集节点将vj,i所对应的二进制串从低位到高位划分为m个部分,每个部分包含e个比特(最高位部分所包含比特数可能大于e),然后用m个部分二进制串生成m个对应的十进制数字(d1,d2,...,dm)。
[0074] 数据聚集节点将选项(vj,i,Pj,i)、(d1,d2,...,dm)和自己的数字签名SN发送给终端。
[0075] 5.终端验证节点数字签名有效性之后有两种选择:“重新输入”和“提交”。
[0076] 如果选择“提交”,则终端利用自己的私钥xi对要提交的数据{(vj,i,Pj,i),(d1,d2,...,dm)}生成数字签名ST,然后将签名ST发送给数据聚集节点。数据聚集节点生成最终的数据报告Report={yi,(vj,i,Pj,i),(d1,d2,...,dm),SN,ST},其中yi是终端的假名。数据聚集节点将数据报告发送给数据聚集服务器,并向终端返回成功消息。提交成功之后,智能感知终端保存数据报告,并离开。
[0077] 如果终端选择“重新输入”,则数据聚集节点启动“数据报告有效性验证”流程(后面结束其详细流程)验证数据聚集节点生成的加密数据项{(vj,i,Pj,i),(d1,d2,...,dm)}是否真正对应该终端的提交的数据Ci。验证通过之后,再回到第3步,终端重新提交数据,节点重新生成对应的加密数据项。
[0078] 6.在数据聚集期结束后,每个数据聚集节点都将自己剩余的备用备选数据项集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}的(vj,0,Pj,0)部分发送到数据聚集服务器,并注明为“作废”。
[0079] 经过以上6步,每个智能感知终端的数据报告以加密的形式提交到了数据聚集服备器的公告单元,任何人都可以查询。
[0080] 上面第5步的“数据报告有效性验证”的具体流程如下:
[0081] (1)数据聚集节点接收到终端的“重新输入”请求之后,数据聚集节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}发送给终端。
[0082] (2)智能感知终端当场验证:对于两组数字{d1,d2,...,dm}和{d′1,d′2,...,d′m},除了di-d′i=1,其他的m-1个数字都相等。如果不满足,则说明数据聚集节点在作弊。
[0083] (3)智能感知终端验证节点输出的Pj,0、Pj,i以及数据聚集节点的数字签名SN是否有效。如果无效,则终端终止向该节点提交数据,并且可以保留相关证据以后想数据聚集服务器投诉该节点。
[0084] (4)如果数据项(vj,i,Pj,i)被用于做有效性验证,则该数据项相当于被作废。数据聚集节点只将(vi,0,Pj,0)提交到数据聚集服务器。
[0085] 数据统计阶段
[0086] 数据聚集过程结束后,数据聚集服务器公告单元上的信息被定。数据聚集服务器首先检查公告单元上的数据报告列表中是否包含N项,如果小于N则说明某些备用数据项
丢失。将丢失的备用数据项补齐之后,任何人都可以根据公告单元上的信息计算统计结果。
[0087] 设公告单元上公布的数据项集合为{(v1,P1),(v2,P2),…,(vN,PN)},每个vi(1≤i≤N)对应的m个十进制数字为{di,1,di,2,...,di,m}。
[0088] 那么,选项Cj(1≤j≤m)最终的统计结果Rj为
[0089]
[0090] 即通过简单的模加法运算即可获得统计结果。而每个数据报告的有效性可以通过零知识证明Pi以及相关数字签名的有效性进行检验。
[0091] 自统计算法的原理如下:根据生成加密的备用数据选项集合的过程可以看出,每个加密的数据选项vj(1≤j≤N)如果没有被标记为作废,则可表示为 的形
式,其中bj∈{1,2,...,m};如果被标记为作废,则可以表示为vj=kj的形式。bj的值取决于对应智能感知终端的实际选择。如果智能感知终端选择了备选项Ci,则bj=i。
[0092] 进一步,kj可以表示为 的形式。因此,与vj对应的m个十进制数字dj,i(i=1,2,...,m)可以表示为ki,j+bi,j的形式。其中bi,j取值0或1,如果为1,则表示为选择备选数据项Ci。如果bj=i,则bi,j=1,而bk,j=0(k≠i)。在vj为作废时,bi,j(i=1,2,...,m)都等于0,即不选择任何备选数据项。
[0093] 根据生成备用意见选项集合的过程,已知 因此,
[0094]
[0095] 即Ri为备选项Ci的支持数。
[0096] 根据本发明的数据聚集方法与现有方法相比具有以下优点:
[0097] 统计简单
[0098] 所设计数据聚集系统的优点之一是统计简单。该特点主要体现在以下两个方面。
[0099] 1.自统计性。数据聚集过程结束后,任何系统用户都可以根据数据聚集服务器公告单元上的公开信息计算统计结果。整个统计过程不需要信任和依赖任何统计中心,因此
大大增加了数据聚集的透明度。
[0100] 2.统计算法简单。统计过程中只需要用到非常简单的模加法运算。实现统计算法的计算机程序也将非常简单易懂,无需依赖少数的安全专家实现的软件,因此进一步增加
了统计结果的可信度。
[0101] 可验证性
[0102] 根据所设计的数据聚集方法,几乎在整个数据聚集过程各个环节都具有可验证性,即观察者或参与方可以检验该环节是否存在作弊行为。这种加强的可验证性保证了数
据聚集结果的的完整性和可信性。
[0103] 1.对备选数据项集合生成过程的验证
[0104] 在备选数据项集合的生成过程中,可以通过检验公告单元上公开的随机承诺值(W1,W2,...,WN}是否满足:
[0105]
[0106] 来验证生成备选数据项集合的秘密随机值{k1,k2,...,kN}、{t1,t2,...,tN}是否符合下述条件:
[0107]
[0108] 上述两个条件是实现自统计的关键。另外,在离散对数问题困难性假设下,一旦公布安全证书{W1,W2,...,WN},数据聚集服务器将无法采用一组不同的随机数{k′1,k′2,...,k′N}、{t′1,t′2,...,t′N}用于产生备选数据项集合,因此防范了数据聚集服务器在意见征集阶段与数据聚集节点合谋修改备选数据项的作弊行为。
[0109] 2.备选数据项正确性验证
[0110] 任何参与方都可以通过检验零知识证明Pj,i的有效性验证数据聚集服务器生成的数据项vj,i的正确性,即验证vj,i中用加密方式封装的备选项是否属于指定的备选项集合{C1,C2,...,Gm},并且仅封装了其中的一个备选项。
[0111] 3.数据聚集节点诚实性验证
[0112] 在聚集数据提交过程中,如果参与数据聚集的智能终端选择了备选项Ci,一个不诚实的数据聚集节点生成的数据报告可能对应备选项Ck(k≠i),这样就违背了智能感知终
端的意愿。
[0113] 系统采用如下验证方法防范上述作弊行为:智能感知终端首先随机选择一个备选项Ci,则数据聚集节点将与Ci对应的加密数据报告(包含{d1,d2,...,dm}和(vj,i,Pj,i))输出,并附上了自己的签名。之后如果终端放弃“确认提交”,则节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}输出。通过对比两组数字及检验Pj,i和Pj,0的有效性,就可以检验节点输出的数据报告是否真正和Ci对应。在该开始生成报告后,节点无法确定智能感知
终端选择“确认提交”还是“放弃”,一旦猜错,节点将无法抵赖,因为节点已输出自己的数字签名。因此针对单个智能感知终端的验证,节点作弊成功的概率只有1/2。如果有f个智能感f
知终端做过检验,则节点能够作弊成功的概率为(1/2)。由备选数据项集合生成的过程可
知,备用备选数据项的数目N=εn,ε取5或10。因此每个智能感知终端平均可以使用5或10个备用意见选项,平均有4或9个检验机会。大规模数据聚集中,只要有小部分智能感知终端对节点的诚实性做过检验,节点能够成功作弊的概率非常小。
[0114] 4.智能感知终端合法性验证
[0115] 任何人都可以根据数据聚集服务器上公开的信息验证:只有经过认证的合法智能感知终端假名列表T_List中的终端提交了数据报告,每个数据报告都附带了与假名yi相匹
配的的数字签名。。
[0116] 5.智能感知终端验证自己的数据报告是否被计入最终结果
[0117] 在完成意见提交后,智能感知终端可以获得数据聚集服务器公告单元输出的数据。智能感知终端可以检查自己的数据报告是否出现在公告单元上公布的数据报告列表
中。如果没有,则可以向数据聚集服务器申诉,数据聚集服务器根据终端保存的证据(数据报告中有数据聚集数据聚集节点的签名)找到作弊节点。
[0118] 隐私安全性
[0119] 数据聚集过程中的隐私安全性是指除了终端用户自己,攻击者无法确定该终端实际提交了哪个备选数据项。所设数据聚集系统从如下几个方面对终端隐私性进行保护:
[0120] 1.公布到数据聚集服务器公告单元的数据报告都采用了加密形式。(数据项格式为vj=kj+2e(bj-1),其中kj可以被视为加密密钥),数据项的有效性证明Pj也不会暴露备选项信息(这是由零知识证明的特性保证的),因此除了数据聚集服务器之外(知道ki),任何人都
无法通过公告单元上公布的数据报告判断智能感知终端实际提交的数据。
[0121] 2.数据聚集节点虽然知道数据选项vj中加密的备选项,但它们只知道智能感知终端的假名,并不能将数据选项vj与智能感知终端的真实身份信息关联起来。
[0122] 需要注意的是,这些附图意在描述方法的一般特性、在特定示例性实施方式中使用的结构和/或材料,并意在对下面提供的描述进行补充。然而,这些附图不是按比例的,并且也不是精确地反映任意给出的实施方式的精细结构或性能特性,并且也不应解释为通过
示例性实施方式对所包含的数值范围或属性进行定义或限定。在各个附图中使用同样或相
同的附图标记意在指示存在同样或相同的元素或特征。

附图说明

[0123] 已经大致地描述了本发明,现在参照附图,其不必按照规定比例绘制,其中:
[0124] 图1是根据本发明优选实施方式的智能感知终端数据聚集系统的结构示意图;
[0125] 图2是根据本发明优选实施方式的数据聚集服务器的结构示意图;
[0126] 图3是根据本发明优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图
[0127] 图4是根据本发明另一优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图;以及
[0128] 图5是根据本发明再一优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图。

具体实施方式

[0129] 尽管示例性实施方式能够进行各种修改并采用替代形式,但是其实施方式作为实施例在附图中给出,并将在这里进行详细描述。然而,应当理解的是,不应将示例性实施方式限定为所公开的特定形式,相反,示例性实施方式意在涵盖落入权利要去范围内的所有
修改、等同物和替代物。在整个附图的描述中,相同的附图标记表示相同的元素。
[0130] 下面结合附图和具体实施方式,以一次大范围网络数据聚集过程为例,对本发明所描述的网络数据聚集系统及其相关方法做进一步的说明。
[0131] 图1是根据本发明优选实施方式的智能感知终端数据聚集系统的结构示意图。如图1所示,智能感知终端数据聚集系统100包括:客户终端101、数据聚集服务器102、多个数据聚集节点103(103a,103b,…,103n)和多个智能感知终端(104a,104b,104c,104d,104e和
104f)。优选地,客户终端101可以是能够运行和存储各种应用的任意类型设备,例如个人数字助理(PDA)、智能手机、平板计算机、无线电话、移动计算设备、照相机、视频记录器、音频/视频播放器、定位设备(例如,全球定位系统(GPS)设备)、游戏设备、无线电设备或各种其它类似的设备或其组合。
[0132] 优选地,数据聚集服务器102是能够实现数据聚集的任何计算机设备,可以是单独的服务器或多个服务器组成的集群服务器。数据聚集服务器102包括:公告单元、注册单元、初始化单元、数据聚集单元和数据统计单元,其中将在下面详细介绍各个单元的具体功能。
优选地,多个数据聚集节点103(103a,103b,…,103n)中的每一个适于利用网络数据聚集服务器中存储的多个智能感知终端的注册信息对相应的智能感知终端进行认证,通过认证的
智能感知终端在加密的备选数据项中确定与所述智能感知终端相关联的数据,所述数据聚
集节点记录四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>,做为数据报告提交给数据聚集服务器。优选地,多个数据聚集节点中的每一个均符合收集来自至少一个智能感知终端的数据。如图1所示,数据聚集节点103a与智能感知终端104a和104b连接,负责收集来自智能感知终端104a和104b的数据。数据聚集节点103b与
智能感知终端104c连接,负责收集来自智能感知终端104c的数据。数据聚集节点103n与智
能感知终端104d、104e和104f连接,负责收集来自智能感知终端104d、104e和104f的数据。
每个数据聚集节点分别负责对其各自连接的智能感知终端进行认证。
[0133] 优选地,多个智能感知终端(104a,104b,104c,104d,104e和104f)中的每一个适于在加密的备选数据项中确定与所述智能感知终端相关联的数据。所述多个智能感知终端可以是地理上分散的或地理上邻近的。优选地,智能感知终端可以是各种类型的传感器,例如声音传感器、湿度传感器、温度传感器、压力传感器等。优选地,智能感知终端可以是各种服务终端,例如ATM自动存款机、ATM自动取款机、ATM自动存取款机。优选地,智能感知终端可以是能够运行和存储各种应用的任意类型设备,例如个人数字助理(PDA)、智能手机、平板计算机、无线电话、移动计算设备、照相机、视频记录器、音频/视频播放器、定位设备(例如,全球定位系统(GPS)设备)、游戏设备、无线电设备或各种其它类似的设备或其组合。
[0134] 优选地,数据聚集服务器负责维护数据聚集节点和智能感知终端之间的对应关系(例如连接关系),并将上述关系存储在相应的存储单元中。当智能感知终端从一个数据聚
集节点切换到另一数据聚集节点、当智能感知终端下线、或新的智能感知终端上线时,数据聚集服务器负责分配、修改、记录数据聚集节点和智能感知终端之间的对应关系。
[0135] 图2是根据本发明优选实施方式的数据聚集服务器的结构示意图。优选地,数据聚集服务器102包括:公告单元、注册单元、初始化单元、数据聚集单元和数据统计单元。
[0136] 优选地,注册单元用于在网络数据聚集过程开始之前,利用线下和在线相结合的方式对每个智能感知终端进行注册。优选地,可以利用在线的方式通过互联网对每个智能
感知终端进行注册。或者,可以通过线下在指定地点书面签署注册协议的方式进行注册。在注册步骤之后,为每个智能感知终端生成公钥私钥对,将公钥作为其自身的假名并发送给
数据聚集服务器,并且在其自身的存储单元中保存私钥。优选地,所述假名指的是智能感知终端的别名。优选地,所述智能感知终端将利用私钥对其自身提交的数据报告进行数字签
名,以保证数据不被篡改。数据聚集服务器验证所述智能感知终端的合法性后,将所述智能感知终端的公钥保存到合法假名列表中。优选地,通过所述数字签名防止数据聚集节点和
数据聚集服务器对数据进行篡改。
[0137] 优选地,初始化单元用于生成公共参数,并且根据公共参数选取随机数,从而根据随机数计算生成秘密随机数。优选地,初始化单元根据所述公共参数以及秘密随机数计算与秘密随机数相关联的安全证书。优选地,初始化单元根据所述公共参数、秘密随机数以及与秘密随机数相关联的安全证书生成加密的备选数据项集合;
[0138] 优选地,数据聚集单元用于将所述加密的备选数据项集合输入到网络中各个数据聚集节点的后台数据库中。优选地,数据聚集单元将所有合法的智能感知终端的认证信息
的列表输入到各个数据聚集节点的后台数据库;
[0139] 优选地,数据统计单元用于根据网络中收集到的智能感知终端的四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>进行数据统计,根据所述数据统计确定数据聚集结果。以图1为例进行说明,智能感知终端104a的四元组可以是<智能感知终端104a的公钥,加密的数据项,智能感知终端104a的签名,数据聚集节点103a的签名>。其中,加密的数据项是数据聚集系统要收集的实际有效数据,例如网络带宽、链路使用率、节点负载等智能感知终端能够收集的数据。
[0140] 另外,数据聚集节点,利用网络数据聚集服务器中存储的多个智能感知终端的注册信息对相应的智能感知终端进行认证,通过认证的智能感知终端在加密的备选数据项中
确定与所述智能感知终端相关联的数据,所述数据聚集节点记录四元组<智能感知终端假
名,加密数据项,智能感知终端的签名,数据聚集节点的签名>,做为数据报告提交给数据聚集服务器。数据智能感知终端用于在加密的备选数据项中确定与所述智能感知终端相关联
的数据。
[0141] 图3是根据本发明优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图。如图3所示,所述方法包括以下四个阶段:
[0142] 1.初始化阶段:
[0143] 在数据聚集过程的初始化阶段,首先确立数据聚集服务器,之后由该数据聚集服务器负责生成公共参数、秘密随机数、加密的备选数据项集合。此处假定数据聚集服务器的公钥PKVA已经用可靠的方式分发给了数据聚集系统的所有参与者。和公钥PKVA对应的私钥
SKVA由多个子服务器利用门限秘密共享方案共同持有。数据聚集服务器具体完成如下的初
始化工作。
[0144] 1.1.生成公共参数
[0145] 数据聚集服务器生成如下公共参数:
[0146] 1)生成两个大素数p、q,满足2q=p-1,且在群 上离散对数问题难以求解。即,两个大素数p、q,满足2q=p-1,且要求根据p形成的群 上的离散对数问题困难性假设成立,
从而保证加密的数据项不被破解。
[0147] 2)在 中随机选取q阶元素g、h,并设由g生成的 的循环子群为G,同时确保没有人能知道h关于g的离散对数。
[0148] 3)安全哈希函数H1:{0,1}*→zq,它将被用于生成加密备选数据项时构造非交互式零知识证明。
[0149] 4)假定参与数据聚集的终端最多有n个(实际肯定小于等于n),数据聚集服务器需要事先确定加密的备选数据项的数目N=εn,其中ε>2为一个安全系数。
[0150] 数据聚集服务器生成的上述公共参数,包括p、q、g、h、n、N、哈希函数H1的描述信息、备选数据项集合{C1,C2,...,Cm},在数据聚集开始之前都公布到公告单元,并且附上数据聚集服务器的数字签名。
[0151] 另外,系统正常运行必须假设参数N和m满足条件: 其中和 分别表示取上整和取下整。
[0152] 1.2.生成加密的备选数据项集合:
[0153] 假设备选数据项集合为{C1,C2,...,Cm},且参数N和m满足条件设 在数据聚集阶段开始之前,数据聚集服务器的各参与方利用如下方式联
合生成N个加密的备选数据项集合。
[0154] 1)从整数集合[0,1,…,2e]中取2m组(每组N-1个)随机数:
[0155] {k1,1,k1,2,...,k1,N-1},{k2,1,k2,2,...,k2,N-1},...,{km,1,km,2,...,km,N-1},[0156] {t1,1,t1,2,...,t1,N-1},{t2,1,t2,2,...,t2,N-1},…,{tm,1,tm,2,...,tm,N-1}[0157] 然后计算:
[0158]
[0159]
[0160] 基于以上结果再计算:
[0161]
[0162]
[0163] 容易证明按照上述方法生成的{k1,k2...,kN}、{t1,t2...,tN}必然满足:
[0164]
[0165] {k1,k2...,kN}、{t1,t2,...,tN}在生成加密备选数据项集合过程中作为秘密值安全方式进行保存。
[0166] 2)数据聚集服务器计算:
[0167]
[0168] 很容易证明{W1,W2,...,WN}满足:
[0169]
[0170] 可以将{W1,W2,...,WN}看成是关于秘密随机数{k1,k2,...,kN}、{t1,t2,...,tN}的安全证书(Commitment)。
[0171] 3)数据聚集服务器生成加密备选数据项集合:
[0172]
[0173] i=1,2,…,m,
[0174] j=1,2,…,N
[0175] 上式中Pj,i=NIZK{tj|A(tj)}表示关于秘密值tj的非交互式零知识证明。通过Pj,i,数据聚集服务器能够在不泄露秘密值tj的前提下,证明满足断言A(tj)成立,从而在不泄露kj的前提下证明vj,i的构造方法符合协议规定。构造该非交互式零知识证明将会用到哈希函数H1:{0,1}*→zq。
[0176] {(vj,0Pj,0),(vj,1,Pj,1),...,(vj,mPj,m)}构成一个加密的备选数据项组,这样的备选项组共有N个,构成加密的备选数据项集合:{(vj,0,Pj,0),(vj,iPj,1),...,(yj,m,Pj,m)}(j=1,2,...,N)。在提交数据时,如果智能感知终端选择Ci,则将数据聚集节点将选项(vj,i,Pj,i)报告给数据聚集服务器。而(vj,0,Pj,0)较为特殊,将被用于数据有效性验证。
[0177] 4)数据聚集服务器将上述生成的N个加密备选数据项{(vj,0,Pj,0),(vj,1,Pj,1),...,(Pj,m,Pj,m)}(j=1,2,...,N)划分成多个子集(按照数据聚集节点数目),并分别用安全方式导入到多个数据聚集节点的后台数据库中。
[0178] 5)数据聚集服务器将{k1,k2...,tN}、{t1,t2,...,tN}等秘密值删除,将{W1,W2,...,WN}公布到公告单元上并附上自己的数字签名。任何参与者都可以通过验证 是否成立检验数据聚集服务器生成的加密备选数据项集合是否符合协议要求。
[0179] 2.注册阶段:
[0180] 在注册阶段,每个参与数据聚集的智能终端在聚集阶段开始之前首先利用线下和在线相结合的方式向数据聚集服务器注册。具体注册方法为:
[0181] 2.1.数据聚集服务器的管理者利用线下方式(Offline),检验终端的产品ID来验证智能终端的合法性。检验失败,则立即终止注册过程。
[0182] 2.2.每个终端Ti采用与数据聚集服务器事先约定好的RSA算法生成一对公私钥对(yi,xi)。
[0183] 2.3.终端Ti将公钥yi发送给数据聚集服务器。为证明该终端持有与公钥yi对应的私钥,服务器生成一个随机数r,并以r||timestamp作为质询消息m,其中timestamp表示时间戳。服务器令终端生成关于m的数字签名sig(m),然后检验签名sig(m)的有效性。检验失败,则立即终止注册过程,否则继续进行下一步。
[0184] 2.4.通过检验后,公钥yi被作为该智能终端的假名保存到数据聚集服务器的认证信息列表AC_List中。私钥xi由终端秘密保存。
[0185] 2.5.所有合法数据节点的公钥列表N_List被下载到智能终端的存储器中。注册过程结束。
[0186] 3.数据聚集阶段:
[0187] 在数据聚集阶段,智能感知终端首先与距离自己最近的数据聚集节点进行交互式认证,然后将现场采集的数据发送给该数据聚集节点。数据聚集节点再将这些数据通过计
算机网络传送给数据聚集服务器。具体的工作过程如下。
[0188] 3.1.当数据感知智能终端达到某个数据聚集节点的有效通信范围内后,首先与该节点完成交互式认证。由于终端持有所有合法数据聚集节点的公钥列表N_List,所以可以
利用“质询—响应”方法对合法数据聚集节点进行认证。另一方面,由于数据聚集节点可以从数据聚集服务器上获得合法终端的列表T_List,所以可以利用“质询—响应”方法对合法的数据感知智能终端进行认证。
[0189] 3.2.交互认证通过之后,数据聚集节点向智能终端发送所有备选数据项明文,即将集合{C1,C2,...,Cm}发送给终端。
[0190] 3.3.终端根据现场实测数据从{C1,C2,...,Cm}中选择对应的选项(假定为Ci),并将自己的选择发送给数据聚集节点。
[0191] 3.4.数据聚集节点从加密的备选数据项集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,...,N)中任取一个选项组{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)},然后将与Ci对应的(vj,i,Pj,i)作为最终生成的加密备选数据项。
[0192] 数据聚集节点将vj,i所对应的二进制串从低位到高位划分为m个部分,每个部分包含e个比特(最高位部分所包含比特数可能大于e),然后用m个部分二进制串生成m个对应的十进制数字(d1,d2,...,dm)。
[0193] 数据聚集节点将选项(vj,i,Pj,i)、(d1,d2,...,dm)和自己的数字签名SN发送给终端。
[0194] 3.5.终端验证节点数字签名有效性之后有两种选择:“重新输入”和“提交”。
[0195] 如果选择“提交”,则终端利用自己的私钥xi对要提交的数据{(vj,i,Pj,i),(d1,d2,...,dm)}生成数字签名ST,然后将签名ST发送给数据聚集节点。数据聚集节点生成最终的数据报告Report={yi,(vj,i,Pj,i),(d1,d2,...,dm),SN,ST},其中yi是终端的假名。数据聚集节点将数据报告发送给数据聚集服务器,并向终端返回成功消息。提交成功之后,智能感知终端保存数据报告,并离开。
[0196] 如果终端选择“重新输入”,则数据聚集节点启动“数据报告有效性验证”流程(后面结束其详细流程)验证数据聚集节点生成的加密数据项{(vj,i,Pj,i),(d1,d2,...,dm)}是否真正对应该终端的提交的数据Ci。验证通过之后,再回到第3.3步,终端重新提交数据,节点重新生成对应的加密数据项。
[0197] 3.6.在数据聚集期结束后,每个数据聚集节点都将自己剩余的备用备选数据项集合{(vj,0,Pj,0),(vj,i,Pj,1),...,(vj,m,Pj,m)}的(vj,0,Pj,0)部分发送到数据聚集服务器,并注明为“作废”。
[0198] 经过以上6步,每个智能感知终端的数据报告以加密的形式提交到了数据聚集服务器的公告单元,任何人都可以查询。
[0199] 上面第5步的“数据报告有效性验证”的具体流程如下:
[0200] (1)数据聚集节点接收到终端的“重新输入”请求后,数据聚集节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}发送给终端。
[0201] (2)智能感知终端当场验证:对于两组数字{d1,d2,...,dm}和{d′1,d′2,...,d′m},除了di-d′i=1,其他的m-1个数字都相等。如果不满足,则说明数据聚集节点在作弊。
[0202] (3)智能感知终端验证节点输出的Pj,0、Pj,i以及数据聚集节点的数字签名SN是否有效。如果无效,则终端终止向该节点提交数据,并且可以保留相关证据以后想数据聚集服务器投诉该节点。
[0203] (4)如果数据项(vj,j,Pj,i)被用于做有效性验证,则该数据项相当于被作废。数据聚集节点只将(vj,0,Pj,0)提交到数据聚集服务器。
[0204] 4.数据统计阶段:
[0205] 数据聚集过程结束后,数据聚集服务器公告单元上的信息被锁定。数据聚集服务器首先检查公告单元上的数据报告列表中是否包含N项,如果小于N则说明某些备用数据项
丢失。将丢失的备用数据项补齐之后,任何人都可以根据公告单元上的信息计算统计结果。
具体计算方法如下。
[0206] 设公告单元上公布的数据项集合为{(v1,P1),(v2,P2),…,(vN,PN)},每个vi(1≤i≤N)对应的m个十进制数字为{di,1,di,2,...,di,m}。
[0207] 那么,选项Cj(1≤j≤m)最终的统计结果Rj为
[0208]
[0209] 即通过简单的模加法运算即可获得统计结果。而每个数据报告的有效性可以通过零知识证明Pi的有效性以及数字签名的有效性进行检验。
[0210] 图4是根据本发明另一优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图。所述方法从步骤401开始,数据聚集开始作为起点。然后进行到步骤402,智能感知终端首先与距离自己最近的数据聚集节点进行交互式认证,然后将现场采集的数据发
送给该数据聚集节点。数据聚集节点再将这些数据通过计算机网络传送给数据聚集服务
器。当数据感知智能终端达到某个数据聚集节点的有效通信范围内后,首先与该节点完成
交互式认证。由于终端持有所有合法数据聚集节点的公钥列表N_List,所以可以利用“质
询—响应”方法对合法数据聚集节点进行认证。另一方面,由于数据聚集节点可以从数据聚集服务器上获得合法终端的列表T_List,所以可以利用“质询—响应”方法对合法的数据感知智能终端进行认证。
[0211] 在步骤403,判断是否通过交互式认证。当未通过交互式认证时,进行到步骤412,过程结束。当通过交互式认证时,进行步骤404,数据聚集节点向智能终端发送所有备选数据项明文,即将集合{C1,C2,...,Cm}发送给终端。
[0212] 终端根据现场实测数据从{C1,C2,...,Cm}中选择对应的选项(假定为Ci),并将自己的选择发送给数据聚集节点。
[0213] 数据聚集节点从加密的备选数据项集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}(j=1,2,...,N)中任取一个选项组{(vj,0,Pj,0),(vj.1,Pj,1),...,(vj,m,Pj,m)},然后将与Ci对应的(vj,i,Pj,i)作为最终生成的加密备选数据项。
[0214] 数据聚集节点将vj,i所对应的二进制串从低位到高位划分为m个部分,每个部分包含e个比特(最高位部分所包含比特数可能大于e),然后用m个部分二进制串生成m个对应的
十进制数字(d1,d2,...,dm)。数据聚集节点将选项(vj,i,Pj,i)、(d1,d2,...,dm)和自己的数字签名SN发送给终端。
[0215] 在步骤405,聚集节点生成数据报告。
[0216] 在步骤406,终端验证节点数字签名有效性之后进行选择:“重新输入”和“撮交”。
[0217] 如果选择“提交”,则进行步骤407,终端利用自己的私钥xi对要提交的数据{(vj,j,Pj,i),(d1,d2,...,dm)}生成数字签名ST,然后将签名ST发送给数据聚集节点。在步骤408,数据聚集节点生成最终的数据报告Report={yi,(vj,i,Pj,i),(d1,d1,...,dm),SN,ST},其中yi是终端的假名。数据聚集节点将数据报告发送给数据聚集服务器,并向终端返回成功消息。提交成功之后,智能感知终端保存数据报告,并离开。
[0218] 如果在步骤406选择“重新输入”,进行步骤409,要求数据聚集及公布证据。步骤410,数据聚集节点启动“数据报告有效性验证”流程(后面结束其详细流程二验证数据聚集节点生成的加密数据项{(vj,i,Pj,i),(d1,d2,...,dm)}是否真正对应该终端的提交的数据Ci。在步骤411,确定是否通过验证,如果未通过验证,则进行步骤412,过程结束;如果通过验证,则返回到步骤404,终端重新提交数据,节点重新生成对应的加密数据项。
[0219] 优选地,在步骤412处,数据聚集期结束后,每个数据聚集节点都将自己剩余的备用备选数据项集合{(vj,0,Pj,0),(vj,1,Pj,1),...,(vj,m,Pj,m)}的(vj,0,Pj,0)部分发送到数据聚集服务器,并注明为“作废”。
[0220] 经过步骤,每个智能感知终端的数据报告以加密的形式提交到了数据聚集服务器的公告单元,任何人都可以查询。
[0221] 优选地,上面的“数据报告有效性验证”的具体流程如下:
[0222] (1)数据聚集节点接收到终端的“重新输入”请求后,数据聚集节点将(vj,0,Pj,0)及vj,0对应的m个十进制数{d′1,d′2,...,d′m}发送给终端。
[0223] (2)智能感知终端当场验证:对于两组数字{d1,d2,...,dm}和{d′1,d′2,...,d′m},除了di-d′i=1,其他的m-1个数字都相等。如果不满足,则说明数据聚集节点在作弊。
[0224] (3)智能感知终端验证节点输出的Pj,0、Pj,i以及数据聚集节点的数字签名SN是否有效。如果无效,则终端终止向该节点提交数据,并且可以保留相关证据以后想数据聚集服务器投诉该节点。
[0225] (4)如果数据项(vj,i,Pj,i)被用于做有效性验证,则该数据项相当于被作废。数据聚集节点只将(vj,0,Pj,0)提交到数据聚集服务器。
[0226] 图5是根据本发明再一优选实施方式的利用网络数据聚集系统进行数据聚集的方法的流程图。方法500适用于包括网络数据聚集服务器、多个网络数据聚集节点和多个智能感知终端的系统。方法500从步骤501开始,在网络数据聚集过程开始之前,利用线下和在线相结合的方式对多个智能感知终端中的每个智能感知终端进行注册,为每个智能感知终端
生成公钥私钥对,将公钥作为其自身的假名并发送给数据聚集服务器,并且在其自身的存
储单元中保存私钥,其中所述智能感知终端将利用私钥对其提交的数据报告进行数字签
名,以保证数据不被篡改,数据聚集服务器验证所述智能感知终端的合法性后,将所述智能感知终端的公钥保存到合法假名列表中。
[0227] 在步骤502,向网络数据聚集系统中的多个智能感知终端广播消息以启动网络数据聚集过程,所述消息附带所述网络数据聚集服务器的数字签名,以防止攻击者对所述消
息的篡改。
[0228] 在步骤503,利用网络数据聚集服务器的初始化单元生成公共参数。
[0229] 在步骤504,根据公共参数选取随机数,并且根据随机数计算生成秘密随机数。
[0230] 在步骤505,根据所述公共参数以及秘密随机数计算与秘密随机数相关联的安全证书。
[0231] 在步骤506,根据所述公共参数、秘密随机数以及与秘密随机数相关联的安全证书生成加密的备选数据项集合。
[0232] 在步骤507,网络数据聚集服务器的数据聚集单元将所述加密的备选数据项集合输入到网络中各个数据聚集节点的后台数据库中,将所有合法的智能感知终端的认证信息
的列表输入到各个数据聚集节点的后台数据库。
[0233] 在步骤508,所述多个数据聚集节点中的每一个利用网络数据聚集服务器中存储的多个智能感知终端的注册信息对多个智能感知终端中的每一个进行认证,通过认证的智
能感知终端智能感知终端在加密的备选数据项中确定与所述智能感知终端相关联的数据,
所述数据聚集节点记录四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>,做为数据报告提交给数据聚集服务器。
[0234] 在步骤509,网络数据聚集服务器的数据统计单元根据网络中收集到的智能感知终端的四元组<智能感知终端假名,加密数据项,智能感知终端的签名,数据聚集节点的签名>进行数据统计,根据所述数据统计确定数据聚集结果。
[0235] 在步骤510,将确定的数据聚集结果利用电子公告方式进行公布,并且提供对所述确定的数据聚集结果的查询和验证。
[0236] 然而,应当注意的是,与合适的物理量相关联的所有这些术语以及相似术语仅仅是应用于这些量的便利的标签。除非特别声明,或者从讨论中明显得到,诸如“处理”、“计算”、“估计”、“确定”、“显示”等的术语,涉及计算机系统或相似的电子计算设备的动作和处理,以将计算机系统的寄存器和存储器中表述为物理量、电子量的数据进行操纵并转换为
计算机系统存储器或寄存器或其他这样的信息存储器、传输或显示设备中表示为物理量的
其他相似的数据。
[0237] 还需要说明的是,示例性实施方式的软件实现方面典型地是在一些形式的程序存储介质上进行编码,或在一些类型的传输介质上实现。计算机可读介质可以是磁(例如,软盘硬盘驱动器)或光(例如,致密盘只读存储器,或“CD ROM”),并可以是只读或随机存取的。相似地,传输介质可以是双绞线、同轴电缆、光纤或本领域公知的其它合适的传输介质。
示例性实施方式不局限于任何指定实现的这些方面。
相关专利内容
标题 发布/更新时间 阅读量
一种智能感知桌面装置、感知方法及感知系统 2020-05-13 116
感知系统 2020-05-11 648
感知系统 2020-05-11 270
功率感知填充 2020-05-13 732
感知阅读装置 2020-05-13 8
体感网感知终端系统、感知节点及感知方法 2020-05-13 453
感知装置 2020-05-11 86
手势感知器 2020-05-12 963
感知锚杆 2020-05-12 110
一种感知卡 2020-05-11 401
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈