本发明属于信息安全领域,包括用于加密的密钥分发技术,具体涉及一种无可信中心的属性密钥分发方法。
背景技术:
近年来,越来越多人利用互联网在多个用户之间分享他们的个人数据,包括私人数据、消息等。在传统的数据共享环境下,用户需要获取访问信息的密钥;而可信中心生成密钥,一旦被入侵或者发生“权威欺骗”,也是无法得到用户的信任。那么用户将自己进行数据加密,然后存储在云环境中,这类数据保护方法是比较好的保护机制,但需要大量的资源进行密钥的管理,效率比较低。在现有的系统中,可以通过使用多个管理机构进行密钥生成和分发给用户。在多密钥生成中心的环境下,为了避免通信成本,每个中心都应该生成彼此独立的密钥。因此降低了密钥生成的复杂性,不需要多个机构之间的合作。
现有的密钥管理方案中,基于cp-abe的多授权机构密钥管理方案能够很好地解决可信中心的“权威欺骗”问题。与秘密共享思想类似,将单个管理中心的信任和工作量分成n个份额,分发给n个成员,任意m或者m个以上成员相互交换能够恢复分发的密钥。大多数方案采用拉格朗日插值法进行恢复,运算量较大,使密钥分发的开销较大。因此我们要解决cp-abe方案中的第三方信任依赖问题以及密钥恢复的计算开销问题。
技术实现要素:
本发明旨在解决现有技术中基于密钥分发中可信中心的“权威欺骗”和拉格朗日插值法还原属性计算大的问题。提出了一种无可信中心的属性密钥分发方法。本发明的技术方案如下:
一种无可信中心的属性密钥分发方法,其包括以下步骤:
1)、首先,由云存储服务商csc产生用户属性,将属性分成若干个属性块并分发给用户,同时发送的还有用于属性块验证的验证函数和验证参数;
2)、然后,用户接到自己的属性块后生成属性份额,并与其它用户相互交换属性份额,通过中国剩余定理还原属性,同时用1)中接收的验证函数和验证参数验证还原属性的正确性;
3)、接着,用户将2)中还原的属性集合和csc分发的标识参数发送给密钥授权中心,多个密钥授权中心根据用户属性生成属性参数并分发给用户;
4)、最后用户通过接收的属性参数计算得属性密钥。
进一步的,所述步骤1)用户属性的生成及分发具体包括步骤;
a1、csc为具有相同属性的用户{u1,u2,...,ui}分发一对公私钥{pki,ski},并创建属性代码att;
a2、生成参数s0,令s0=att,同时生成n个与s0相同长度的参数s0,s1,...,sn,并通过多项式f(x)=s0+s1x+s2x2+...+sn-1xn-1,计算属性块m1=f(1),m2=f(2),...,mn=f(n);
a3、计算验证函数t=m1*m2*...*mn,验证参数t=tmods0;
a4、使用用户ui的公钥pki加密属性块mi,c(mi)=enc(mi,pki,rsa),并将加密后的属性块c(mi)、验证函数t和验证参数t发送给相应用户。
进一步的,所述步骤2)用户属性还原具体包括步骤;
b1、用户ui接到自己的加密属性块c(mi)后,使用私钥ski解密得到自己的属性块mi;
b2、选取公共参数:大素数q,正整数序列{dn|n=1,2,...},其中d1<d2<...<dn且满足以下条件;
1)(di,dj)=1(di,dj∈dn且i≠j);
2)(di,q)=1(i=1,2,...,n,di∈dn);
3)
令
b3、用户ui的属性块mi,令y=mi+aq,其中a为满足0≤y≤d的任意正整数,计算yi=ymoddi,并将yi作为属性份额发送给其它用户;
b4、设e为参与属性恢复的t个成员的集合,令de=пi≤edi,e中成员的属性份额可以构建包括含t个同余方程的方程组:
根据中国剩余定理,方程组有唯一解m:
y=(∑i∈eyi·d′e,i·de\{i})modde
其中de\{i}=πj∈e,j≠1dj,d′e,i为de\{i}的乘法逆元,则属性m为:
m=ymodq
b5、验证属性的有效性:计算验证参数副本ti,ti=tmodm,若ti=t,则说明属性是正确的,否则表示分发失败。
进一步的,所述步骤3)将属性集合和标识参数发送给密钥授权中心具体包括步骤;
c1、用户ui收到csc分发的属性集mi和用户标识a,用户将属性集合mi={α1,...,αk,...,αn}和用户标识a发送给属性密钥授权中心{kac1,kac2,...,kacj,...,kacx},其中αk∈mi,k≤n,x为授权中心数量。
c2、每个授权中心kacj为用户随机选择一个用户标识参数
c3、用户ui得到属性标识参数集
进一步的,所述步骤4)属性密钥生成具体包括步骤;
d1、用户ui用得到的属性参数集计算得到属性标识参数ui;
d2、计算两部份属性密钥sk1和sk2:
用户得到自己的属性私钥
本发明的优点及有益效果如下:
1.用户将接到的属性块与其它用户相互交换后得到属性块集合,使用中国剩余定理进行属性的还原。这样的还原方案与拉格朗日插值法相比,具有更高计算效率,实现复杂度较低。
2.多个密钥授权中心发送属性参数给用户,可以保护用户属性密钥抵抗来自单个密钥管理中心的攻击,降低可信中心的依赖,解决可信中心的“权威欺骗”问题。
本方案采用多个管理中心进行密钥的生成与分发,在保证数据机密性的情况下,降低了计算开销,提高了效率。
附图说明
图1是本发明提供优选实施例基于无可信中心的高效属性密钥分发方法优选实施例流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
如图1所示,本发明提出一种可以实现无可信中心的高效属性密钥分发方法的系统,其由用户属性的分发,属性的还原,属性参数的分发和属性密钥的生成四个部分组成。首先由云存储服务商csc将生成的共同属性切分之后,经过加密发送给用户,同时发送的还有验证函数和验证参数。接着用户解密自己的属性块后生成属性份额,并与其它用户交换属性份额,然后通过中国剩余定理还原属性。然后由多个密钥产生中心完成属性参数的生成并分发给请求用户。最后用户根据属性参数集合计算得到自己的属性密钥。
一种无可信中心的高效属性密钥分发方法包括用户属性的分发,属性的还原,属性参数的分发和属性密钥的生成四个步骤,每个步骤的具体描述如下:
步骤一:用户属性分发;
1.csc为具有相同属性的用户{u1,u2,...,ui}分发一对公私钥{pki,ski},并创建属性代码att;
2.生成参数s0,令s0=att。同时生成n个与s0相同长度的参数s0,s1,...,sn,并通过多项式f(x)=s0+s1x+s2x2+...+sn-1xn-1,计算属性块m1=f(1),m2=f(2),...,mn=f(n);
3.计算验证函数t=m1*m2*...*mn,验证参数t=tmods0;
4.使用用户ui的公钥pki加密属性块mi,c(mi)=enc(mi,pki,rsa),并将加密后的属性块c(mi)、验证函数t和验证参数t发送给相应用户。
步骤二:用户属性还原;
1.初始化,中国剩余定理:
一元线性同余方程组:
中国剩余定理:假设整数m1,m2,...,mn两两互素。则对任意整数a1,...,an,方程组(s)必有解,且通解为:
且在模m的意义下,方程组存在唯一解:
其中,m=m1...mn,mi=m/mi,
2.用户ui接到自己的加密属性块c(mi)后,使用私钥ski解密得到自己的属性块mi;
3.选取公共参数:大素数q,正整数序列{dn|n=1,2,...},其中d1<d2<...<dn且满足以下条件;
1)(di,dj)=1(di,dj∈dn且i≠j);
2)(di,q)=1(i=1,2,...,n,di∈dn);
3)
令
4.用户ui的属性块mi,令y=mi+aq,其中a为满足0≤y≤d的任意正整数。计算yi=ymoddi,并将yi作为属性份额发送给其它用户。
5.设e为参与属性恢复的t个成员的集合,令de=πi≤edi。e中成员的属性份额可以构建包括含t个同余方程的方程组:
根据中国剩余定理,方程组有唯一解m:
y=(∑i∈eyi·d′e,i·de\{i})modde
其中de\{i}=πj∈e,j≠1dj,d′e,i为de\{i}的乘法逆元,则属性m为:
m=ymodq
6.验证属性的有效性:计算验证参数副本ti,ti=tmodm。若ti=t,则说明属性是正确的,否则表示分发失败。
步骤三:属性参数分发;
1.用户ui收到csc分发的属性集mi和用户标识a。用户将属性集合mi={α1,...,αk,...,αn}和用户标识a发送给属性密钥授权中心{kac1,kac2,...,kacj,...,kacx},其中αk∈mi,k≤n,x为授权中心数量。
2.每个授权中心kacj为用户随机选择一个用户标识参数
3.用户ui得到属性标识参数集
步骤四:属性密钥生成;
1.用户ui用得到的属性参数集计算的到属性标识参数ui:
2.计算两部份属性密钥sk1和sk2:
用户得到自己的属性私钥
本发明为解决基于拉格朗日插值法的属性还原方案运算量大,实现复杂度高的问题,使用中国剩余定理进行属性的还原。由于中国剩余定理是已知某个数关于一些两两互素的数的同余类集,可以重构这个数。所以与拉格朗日插值法相比,计量更小,具有更高的计算效率。而多个密钥产生中心进行属性参数的分发,不会导致可信中心可能引起的不诚实行为的问题,具有更高的安全性。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。