格上多权威的密钥策略基于属性的加密方法_2

文档序号:9290071阅读:来源:国知局
用陷门生成算法 TrapGen(lA)生成nXm维的矩阵~£ZnXm以及随机均匀满秩的m维矩阵,使得 1MA丨(A,):以及,最后公开~£ZnXm作为属性i的公钥,保存8,4厂"作为 属性i的私钥;
[0051] 步骤(1. 6)、中心权威CA公开Apk=(认丄Etl])作为系统的公钥。
[0052] 步骤2、密钥生成:
[0053] 具体按照以下步骤实施:
[0054] 步骤(2. 1)、首先输入公共参数GP、系统公钥Apk= ({AJ1E[1])以及访问策略 policy,中心权威CA利用线性秘密共享技术(LSSS),将访问策略policy转换成对应的线性 秘密共享矩阵LGZlx0,指派线性秘密共享矩阵L的第i行对应属性iG[1],这里的属性 是指二元属性,列jG[1,0 ]是从1到0的数,其中0 < 1是policy的函数。对于二元 属性列表g|/]s当且仅当Attrib'中属性对应的矩阵L的行所张成的行向量空间中 包含向量[1,0,…0]GZe时,二元属性列表』[^满足该访问策略L;
[0055] 步骤(2. 2)、中心权威CA随机选择向量,…u,eZf使得Ul=(suu12,u13,… Ui 0) ;U2(S 2,U22,*",U20) ? ? ? ;Ui (S i,Ui2,*",Ui0),其 中Si,S2,".SiEZq疋 # 的对应分量,UyGzq(i=1,…1;j=1,2, ???,0)是随机选择的,其 中包含在公共参数GP= {l,q,n,m,s}中;
[0056] 步骤(2. 3)、中心权威CA计算线性秘密共享矩阵L与向量Ul的乘积,令 £u(. i= 1,…1.,其中L是访问结构policy的线性秘密共享生成矩阵;
[0057] 步骤(2. 4)、中心权威CA发送…A广f给拥有属性i的权威,其中i= 1,… 1.;
[0058] 步骤(2. 5)、拥有属性i的权威使用私钥,通过原像抽样算法 Algorithm:SamplePre(A,,B,,<",〇),抽取密钥使得為邊―讲__:E %,其中
j =1,???,1,a-m'? (l〇gm) > ||b, I ?a^logm) 9
[0059]步骤(2. 6)、属性i关于访问线性秘密共享矩阵L的解密密钥为, 由上述步骤(2. 5)知AKHCO,..-。):,*#,,#,,-.,,一^ 据原像抽样算法AlgorithmSampkPrc(A,,B,,W)得到的efeZf的概率分布统计接近于分布 C'且以压倒性概率使得|ef|如'成立。
[0060] 步骤3、消息加密:
[0061] 具体按照以下步骤实施:
[0062] 步骤(3. 1)、输入属性公钥、属性列表*以及消息比特MsgG{〇, 1},随机均 勾选择向量:xe5
[0063] 步骤(3.2)、根据高斯噪声参数分布18随机选择低范数的高斯噪声标量 xZq,对于每一个属性AttribiEAttrib根据参数分布(^丨\>随机选择各分量间独立同 分布的高斯噪声向量30e
[0064] 步骤(3. 3)、根据属性列表Attrib构造向量,设置向量f的第i个分量为Sy 这里(1彡i彡1),其中Si对应公共参数GP中s=(ss2,…,sf的第i个分量s;,如果属 性i包含在属性列表^中,即iGAttrib;当属性i不被包含在属性列表*'*£[/] _, 即kAttrib时,设置向量f的第i个分量为0 ;并且设置向量f的第i(1+1 <i<n)个分量 为 0,这里(1+1 <i<n);
[0065] 步骤(3. 4)、根据属性列表likp]加密消息比特MsgG{〇, 1}得
[0066]
[0068] 步骤(3. 5)、最终输出密文为C= (C。,Q),?
[0069] 步骤4、消息解密:
[0070] 具体按照以下步骤实施:
[0071 ] 步骤(4. 1)、输入密文C= (C。,Q),W6 /to#,属性公钥Apk以及一组属性在访问 策略policy下解密密钥usk,要求该组属性属于」""&[/]且满足访问策略policy;
[0072] 步骤(4. 2)、找到向量g= ,…,{〇, 1} 1使得
[0073] gT ? L=(1,0,…,0); V/_ e [/]:(义=〇) v ((/ e .4价//))八a)矣〇,'即找到线性秘密共 享矩阵L行的线性组合张成向量(1,0,…,0),其中属性列表Attrib满足policy ;
[0074]步骤(4. 3)、令usk={uski,iG[1]八iGAttrib八g# 0},其中 ?為=@4",??,#;)是属性i的在访问策略policy下解密密钥;
[0075]步骤(4.4)、计;i
如果g.j= 0,那么
[0076] 步骤(4. 5)、输出消息比特,如果|r|<f,则输出0,否则输出1。
[0077] 下面证明本发明格上多权威的密钥策略基于属性的加密方法的正确性与安全 性:
[0078] (1)正确性证明:
[0079] 证明:如果解密者可以计算
并且知道解密密钥集合usk = {uskj, jG[1]八jGAttrib}则解密者计算:
[0080]
[0081] 上述证明中使用到了ZWi,事实上,因为gL=(1,0,…,0),LuHW.U'丫屯 =(Si,ui2,…,uie)T那么有
[0084] 因]tl
[0085] 这里向量f是根据属性列表Attrib构造的,
,因此,我们可以 通过设置合适的参数使得以压倒性概率有
[0086]
[0087] 参数的设置:选取合适的参数来保证解密可以以很高的概率成功,并且保证本发 明的安全性规约是有意义的,本申请中安全参数是A,并且给定了属性个数的上界为1,其 他的参数的选择遵循以下的规则:
[0088] a、对于困难性LWE(learnwitherror)假设,需要设_:&2在;
[0089] b、对于由Alwen和Peikert两个学者提出的格上陷门生成算法TrapGen,要求 m^ 5nlogq;
[0090] c、对于SampleGaussian(A,B,〇,c),有 ||e(;1|卜。士 ;
[0091] d、为了保证正确性成立,需要保证方程
成立,由 于a= 根据相关定理,有
[0092]
[0093] 因此只要不等式押+ 營成立,本发明就是正确的,因此假设 S是一个实数使得n1+5>nlogq,并按如下要求设置n,m,〇,q,a。
[0094] 1.格的维数n=人,属性上界1=nE对于某个实数eG(〇,1);
[0095] 2.m=n1'5^: 5nlogq;
[0096] 3. 〇 =m? ?(logm);
[0097] 4?噪声参_
[0098] 5.模数q是一个素数并且满足#丨+ + 。.
[0099] (2)安全性证明:
[0100] 如果存在一个概率多项式时间的算法A在选择属性列表攻击下以优势e>0攻破 上述方案,那么就存在概率多项式时间算法B以优势e判定问题,其中,a=O(poly(n)),
[0101] 证明:在LWE问题中,给定挑战者B-个预言机0的访问权,其中这个预言机可能 是嵌入密钥x6巧的伪随机预言机〇x,也可能是完全随机预言机0$,挑战者B是通过利用假 如敌手A以不可忽略的概率攻破本申请的方案,来构造算法以一个不可忽略的概率来解决 判定性LWE问题,具体的算法规约过程如下:
[0102] 实例:假设挑战者B随机选择(lm+1)个向量<??<,…乂…< 并访问预言机〇 获得(lm+1)个LWE预言机样本并标记如下:
[0103]
[0104] 目标:敌手A宣布想要攻击的目标属性列表,记为Attrib%即想要挑战的目标,
[0105] 设置:B构造公开属性公钥Apk如下:
[0106] 1向量》eg是从索引为〇的抽样中得到,即令s = w。;
[0107] 2对于每一个iG[1]并且使得属性iGAttril/的对应公钥矩阵AeZf"是根 据LWE预言机到索引为i的样本构造的,即;
[0108] 3对于每一个iG[1]且属件/gAUrib'的对应的矩阵六;是根据真实方案中利用 TrapGen算法构造的,其中TrapGen算法是结合一个低范数的满秩矩阵使得A0,此 处的LWE抽样中所有索引:fgAUrib'的样本未被使用;
[0109] 将构造的公钥Apk=({AJiEtl],s)给敌手A;
[0110] 询问:允许敌手A对于访问策略policy的密钥进行适应性的询问,限制条件为目 标属性列表Attril/不能满足访问策略policy,挑战者构造并返回满足访问策略policy的 属性的解密密钥,
[0111] 具体构造如下:
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1