具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
针对以上问题,本发明的一方面提供了一种网站用户数据处理方法。本发明的方法实现过期后自删除,压缩了数据所有者用户数据的自删除文件在有效期限内的任意时刻对授权用户可用;一旦过期,能够自删除并对任何人不可读而无需人为干预,从而保护数据机密性和涉密安全。在自删除文件有效期限内,需要实现不同授权用户访问不同安全级别的用户数据块,以实现细粒度访问控制。利用已有的基础设施和安全设备实现安全自删除,不需要额外的安全服务和专用特殊的安全设备。并且具有简单高效的私钥管理机制。图1是根据本发明实施例的网站用户数据处理方法流程图。
本发明的用户数据具有时效性,用于保护数据所有者用户数据的安全,该内容只有在有效期限内对授权用户有效。数据所有者在压缩自删除文件时需要决定其有效时间。数据所有者和授权用户都可以连接到网络,以便能够与私钥计算服务器、网络存储服务器集群门户网站、分布式存储网络进行交互,实现有效期限内加密数据的分发与抽取,以及自删除文件的压缩与解压缩。私钥计算服务器、数据所有者和授权用户可信。私钥计算服务器是可信服务器,是密码体系的核心组件,用于产生公共参数和生成私钥;数据所有者是自删除文件的创建者,是可信的;授权用户是可信的,不会主动泄露或备份获得的自删除文件或相关私钥数据。而存储服务器集群门户网站是不可信的。提供存储服务的同时,可能异地多次备份自删除文件或被迫泄露。
本发明的方法将分级安全、非对称加密、基于身份的加密和分布式存储网络相结合,提供保护数据全周期安全的自删除方案。
本发明的系统包含以下实体:用户数据所有者、存储服务器集群门户网站、授权用户、大规模分散的分布式存储网络、私钥计算服务器和潜在的入侵者。
数据所有者将用户数据加密并压缩成自删除文件并发送给存储服务器集群门户网站,生成密文并分发到分布式存储网络中。存储服务器集群门户网站用于存储自删除文件,并认证只有授权用户才能访问适当的自删除文件,一般为分布式存储网络或云存储服务器。授权用户:数据所有者指定的群组中的用户数据共享者。不同的授权用户拥有不同的身份,具有不同的访问权限。分布式存储网络节点用于存储密文片段,并完成过期后片段的安全清除。私钥计算服务器用于支持私钥的产生与管理。潜在的入侵者主要来自对存储服务器集群门户网站中存储的自删除文件的入侵和对分布式存储网络的入侵两个方面。
本发明的方法的核心安全目标是确保存储服务器集群门户网站中存储包含涉密信息的数据在过期后能够安全自删除。在本发明的方法方案中,能够访问相同自删除文件的数据所有者和授权用户相互信任,不会主动泄露用户数据。潜在的入侵者分为3种类型:用户数据过期后入侵自删除文件,如存储服务器集群门户网站可能提供自删除文件副本;在有效期限内入侵分布式存储网络本身,在过期之前收集分布式存储网络节点中保存的密文以试图恢复出用户数据的解密私钥;在任意时刻,同时入侵自删除文件和分布式存储网络。
本发明的方法分为如下两个阶段:
第1个阶段为加密和压缩阶段。将用户数据的明文加密后经过处理、压缩、分发并分别保存到分布式存储网络和存储服务器集群门户网站。数据所有者将用户数据划分成多个具有不同安全级别的用户数据块m,经私钥k分别加密后汇总得到密文集合C,再经过耦合算法处理得到耦合密文C′,最后将C′抽取并分解成两部分:用于分发到分布式存储网络的分发密文CDH和用于压缩成自删除文件的压缩密文CDL。
采用非对称加密算法加密k的密文Ck,结合CDH经过插值多项式处理后得到密文S,结合访问键值L将S分发到分布式存储网络的各节点中保存。CDL结合L并压缩成自删除文件,然后保存到存储服务器集群门户网站中。
第2个阶段为解压缩和解密阶段。主要是授权用户的访问阶段。首先从存储服务器集群门户网站和分布式存储网络中分别获得相关的自删除文件和密文集合S,然后经过一系列处理后,最终恢复出原始用户数据的明文。
为了更清楚和详尽地描述本发明的方法,下面从系统层面和算法层面分别展开。
(1)系统初始化阶段,给定安全参数κ,在初始化过程中产生系统公共参数和密钥参数。具体地,确定密文片段的个数n,门限值δ,每次抽取的比特数量p,抽取的次数t,一个散列函数H:{0,1}*→G1,一个非对称加密算法E:({0,1}*,{0,1}l)→{0,1}*,一个随机对称私钥k,一个双线性对函数e:G1×G1→G2(G1和G2均为大素数阶q的有限域加法循环群和乘法循环群,且G1的生成元为g)和一个私钥生成算法FK:G3→{0,1}l(这里l为算法E的私钥长度).
(2)数据所有者将包含涉密信息的数据依据其涉密程度的不同划分成多个具有安全级别的用户数据块mi,需要在不同的用户间共享。
本发明的方法采取如下私钥分配策略:同一授权用户访问不同安全级别的用户数据块选择使用不同的私钥,访问相同安全级别的不同用户数据块选择使用相同的私钥;不同授权用户访问同一个用户数据块选择使用不同的私钥。与已有方案相比,本发明的方法能够减少私钥的数量,提高私钥管理效率。
(3)数据所有者依据授权用户的权限将用户数据块mi∈M分类,然后调用加密函数加密m后汇总为密文C。由于本发明的方法需要将部分密文抽取出来并发布到分布式存储网络中,通过增加私钥空间的长度以抵抗入侵,压缩密文用来压缩自删除文件以增加对自删除文件入侵的难度。因此,需要对密文进行适当处理:
利用耦合过程对密文进行耦合计算后得到耦合密文C′,所述耦合过程包括:
首先将C等分成u比特的块,最后一块如果不足u比特则补0,假设共v块,则C=(C1,…,Ci,…,Cv),耦合各密文块如下:
C′1=C1⊕H(C2,…,Ci,…,Cv),
C′2=C2⊕H(C′1,C3…,Ci,…,Cv),…
C′i=Ci⊕H(C′1,…,C′i-1,Ci+1,…,Cv),
…
C′v=Cv⊕H(C′1,…,C′i,…,C′v-1)。
最后,耦合后的密文即为C′=(C′1,…,C′i,…,C′v);
然后通过抽取过程得到用于分发到分布式存储网络的分发密文CDH和用于压缩自删除文件的压缩密文CDL,具体地:
给定C′,对于i=1,2,…,t(t<v),算法每次抽取耦合密文C′(i)中的[1,p×k]比特,表示为di,C′(i+1)表示第i次抽取后的密文。抽取出的密文表示为CDH=(d1,…,di,…,dt),其中di=(d[i][0],d[i][1],…,d[i][δ-1])。最终抽取后的密文表示为压缩密文CDL。
(4)密文片段的产生过程具体为:
首先,数据所有者依据用户数据授权用户的身份Ii创建一个伪私钥r,已知系统公钥y,计算出该用户的加密私钥为IEK=FK(e(H(Ii)r,y))。同时,数据所有者生成一个伪公钥z=gr并安全发布给该授权用户,然后再调用加密函数加密k后变为Ck;
其次,通过多项式运算方法产生多项式Qi(x);具体地:
给定CDH=(d1,…,di,…,dt)和Ck,算法首先将Ck等分成δ块,即Ck=(c0,…,ci,…,cδ-1),并产生t+1个插值多项式如下:
Q1(x)=d[1][δ-1]xδ-1+d[1][δ-2]xδ-2+…+d[1][0],
…
Qi(x)=d[i][δ-1]xδ-1+d[i][δ-2]xδ-2+…+d[i][0],
…
Qt(x)=d[t][δ-1]xδ-1+d[t][δ-2]xδ-2+…+d[t][0],
Qt+1(x)=cδ-1xδ-1+cδ-2xδ-2+…+c1x+c0
然后,利用密文片段生成过程产生密文片段集合S,具体地:
给定t+1个多项式,算法随机选择n个大于1的自然数x1,…,xi,…,xn,然后计算片段si=(xi,Q1(xi),Q2(xi),…,Qt+1(xi)),最终获得n个密文片段S=(s1,…,si,…,sn)。
最后,在密文发布过程中结合L将S分解成元组<li,si>并分发到分布式存储网络中。同时,数据所有者删除加密私钥IEK和k。
(5)压缩自删除文件:已知压缩密文CDL、L,数据所有者调用压缩方法将CDL压缩成自删除文件,然后将其保存到存储服务器集群门户网站中。
(6)在用户数据的有效期限内,数据所有者群组中的授权用户通过身份认证后,执行如下操作:
首先,从存储服务器集群门户网站中获得相应的自删除文件,调用解压缩函数获得键值L和CDL;然后,依据L并从分布式存储网络中抽取足够多的S并恢复出Ck和CDH,将得到的CDH和CDL重构成耦合密文C′,再通过去耦合过程恢复出原始密文C,具体地:
Cv=C′v⊕H(C′1,…,C′i,…,C′v-1),
Cv-1=C′v-1⊕H(C′1,…,C′i,…,C′v-2,Cv),
…
Ci=C′i⊕H(C′1,…,C′i-1,Ci+1,…,Cv),
…
C1=C′1⊕H(C2,…,Ci,…,Cv)。
从而得到原始密文C=(C1,…,Ci,…,Cv)
同时,利用上述私钥生成过程FK获得解密私钥IDK,再调用解密函数获得原始私钥k;最后,授权用户调用解密函数,使用k解密C得到原始用户数据的明文块m。通过以上操作过程,不同授权用户访问不同安全级别的不同用户数据块,实现用户数据有效期限内的细粒度访问控制。
(7)当压缩了用户数据的自删除文件在处理结束,并超过有效期限后,本发明将利用分布式存储网络节点周期性数据自更新功能,即每个节点将自动丢弃所存的S以释放存储空间来保存新数据,而无需人工干预。因此,当自删除文件过期后,分布式存储网络中保存的S被安全删除。由于无法获取到S,不能恢复出Ck和CDH,从而不能获得原始用户数据的加密私钥k;另一方面,由于缺少CDH,即使过期后任何实体(包括数据所有者)从存储服务器集群门户网站获得相应的自删除文件副本,也不可能重构出耦合密文C′,最终无法获得原始密文C。因此,当自删除文件过期后,由于无法恢复出原始私钥和原始密文,实现用户数据的安全自删除。
综上所述,本发明提出了一种网站用户数据处理方法,有效管理加密算法的复杂私钥,提供分级安全和粒度访问控制策略;实现超期后数据安全自删除,无需额外人工干预。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的程序代码来实现,从而,可以将它们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。