发明名称 一种用于证明远程平台安全属性的远程证明方法
摘要 本发明公开了一种用于证明远程平台安全属性的远程证明方法,属于安全认证技术领域。本发明包括系统参数生成步骤、属性证书颁布步骤、证明步骤、验证步骤和证书颁布者对不满足安全属性的证书进行撤销的撤销步骤。本发明的证明方法中引入了指定验证者签名的思想,在属性证书颁布中嵌入了证明者的私有信息,即首先由TPM选取一个随机数作为秘密值保存起来。然后属性证书颁布者将此随机数包含在属性证书中。因为只有持有随机数的证明者才能验证属性证书的正确性。证明者为了向验证者证明自己持有有效的属性证书,则必须将属性证书中的随机数去除掉,这样验证者才能使用属性证书颁布者的公钥验证的有效性。
申请公布号 CN102685092B 申请公布日期 2014.11.19
申请号 CN201110386340.9 申请日期 2011.11.29
申请人 河海大学 发明人 李继国;许峰;孙传明
分类号 H04L29/06(2006.01)I;H04L9/32(2006.01)I;H04L9/30(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 许方
主权项 一种用于证明远程平台安全属性的远程证明方法,其特征在于,包括以下步骤:步骤A:属性证书颁布者生成用于颁布证书和远程证明的系统参数;所述系统参数包括公钥和私钥,其具体生成步骤如下:步骤A‑1,令G<sub>1</sub>,G<sub>2</sub>和G<sub>T</sub>均为素数阶q的循环群,随机选取G<sub>1</sub>生成元P<sub>1</sub>和G<sub>2</sub>生成元P<sub>2</sub>;属性证书颁布者随机选取整数<img file="FDA0000551145590000011.GIF" wi="140" he="76" />作为私钥,其中<img file="FDA0000551145590000012.GIF" wi="70" he="76" />表示集合{0,1,2,…,q‑2,q‑1},计算公钥P<sub>I</sub>=xP<sub>2</sub>;e:G<sub>1</sub>×G<sub>2</sub>→G<sub>T</sub>是满足条件的双线性映射;满足以下三个条件:(1)双线性:设<img file="FDA0000551145590000013.GIF" wi="221" he="76" />P<sub>1</sub>∈G<sub>1</sub>,P<sub>2</sub>∈G<sub>2</sub>,满足e(xP<sub>1</sub>,yP<sub>2</sub>)=e(P<sub>1</sub>,P<sub>2</sub>)<sup>xy</sup>;(2)非退化性:存在P<sub>1</sub>∈G<sub>1</sub>,P<sub>2</sub>∈G<sub>2</sub>使得e(P<sub>1</sub>,P<sub>2</sub>)≠1;(3)可计算性:对于P<sub>1</sub>∈G<sub>1</sub>,P<sub>2</sub>∈G<sub>2</sub>,存在一个多项式时间的高效算法可以计算出e(P<sub>1</sub>,P<sub>2</sub>);步骤A‑2,令H<sub>1</sub>、H<sub>2</sub>、H<sub>3</sub>、H<sub>4</sub>为四个抗碰撞的哈希函数,其中<img file="FDA0000551145590000014.GIF" wi="371" he="77" /><img file="FDA0000551145590000015.GIF" wi="745" he="77" />和<img file="FDA0000551145590000016.GIF" wi="368" he="77" />步骤A‑3,属性证书颁布者将上述系统参数{G<sub>1</sub>,G<sub>2</sub>,G<sub>T</sub>,P<sub>1</sub>,P<sub>2</sub>,P<sub>I</sub>,e,H<sub>1</sub>,H<sub>2</sub>,H<sub>3</sub>,H<sub>4</sub>}作为公钥公开,私钥x保密;步骤B:在证明者向属性证书颁布者提出颁布证书请求时,由可信平台模块(TPM)模拟器将证明者选取的一个随机数进行处理后作为秘密值嵌入属性证书中,然后由属性证书颁布者根据证明者提供的平台配置为证明者提供属性证书;具体步骤如下:步骤B‑1:属性证书颁布者选择随机数n<sub>I</sub>,然后将其发送给TPM模拟器;步骤B‑2:由TPM模拟器选择证明者提供的随机数<img file="FDA0000551145590000017.GIF" wi="188" he="83" />计算证明者提供的平台配置cs,然后计算TPM模拟器的私钥f,f的计算方法为:f=H<sub>2</sub>(DaaSeed||K<sub>I</sub>)modq;其中,K<sub>I</sub>是由直接匿名认证(DAA)证书颁布者提供的参数,DaaSeed是TPM模拟器内部用于计算f的种子;步骤B‑3,由TPM模拟器计算:U=u·P<sub>1</sub>,F=f·P<sub>1</sub>,c=H<sub>3</sub>(n<sub>I</sub>||F||U||cs),s=u+c·f(modq);然后将(F,c,s,cs)发送给属性证书颁布者;步骤B‑4:属性证书颁布者根据(F,c,s,cs)计算U'=s·P<sub>1</sub>‑c·F,然后检查公式:<img file="FDA0000551145590000018.GIF" wi="460" he="104" />是否成立;如果成立进入下一步骤,否则退出;步骤B‑5:假设cs满足的属性为ps,计算:t=H<sub>1</sub>(cs||ps),cre=x·t·U';然后将(cre,ps)发送给TPM模拟器;步骤B‑6:由TPM模拟器计算t=H<sub>1</sub>(cs||ps)和u·t·P<sub>1</sub>,将u·t·P<sub>1</sub>发送给验证者,最后由验证者验证下式:<img file="FDA0000551145590000021.GIF" wi="518" he="103" />当验证通过则将cre作为属性证书颁布,否则退出;步骤C:证明者根据步骤A所述系统参数,从属性证书中去除在步骤B中嵌入的秘密值,然后由证明者对属性证书进行签名;具体步骤如下:步骤C‑1:验证者选择随机数n<sub>v</sub>作为新鲜因子,将该随机数n<sub>v</sub>发送给TPM模拟器;步骤C‑2:TPM模拟器选择随机数<img file="FDA0000551145590000022.GIF" wi="136" he="78" />作为盲化因子,计算:T<sub>0</sub>=r·P<sub>1</sub>,T<sub>1</sub>=r·f·t·P<sub>1</sub>,T<sub>2</sub>=r·f·u<sup>‑1</sup>·cre,T<sub>3</sub>=r·f·P<sub>1</sub>,b=H<sub>4</sub>(n<sub>v</sub>||T<sub>0</sub>||T<sub>1</sub>||T<sub>2</sub>||T<sub>3</sub>||ps),a=r+b·r·f(modq);步骤C‑3:证明者将(T<sub>0</sub>,T<sub>1</sub>,T<sub>2</sub>,T<sub>3</sub>,a,b)作为属性证书的签名σ,然后将(σ,ps)发送给验证者;步骤D:验证者获得证明者的签名后,用属性证书颁布者提供的公钥验证证明者的签名;具体步骤如下:步骤D‑1:验证<img file="FDA0000551145590000023.GIF" wi="851" he="103" />若验证该公式成立则继续下面的验证,否则退出;步骤D‑2:属性证书颁布者将不符合安全属性的属性证书添加进撤销列表中,验证者对于撤销列表中所有的(cs<sub>i</sub>,ps<sub>j</sub>)进行验证,当H<sub>1</sub>(cs<sub>i</sub>||ps<sub>j</sub>)·T<sub>3</sub>=T<sub>1</sub>成立,则退出;反之进入下一步骤;步骤D‑3:验证e(T<sub>1</sub>,P<sub>I</sub>)=e(T<sub>2</sub>,P<sub>2</sub>),当验证成立,表明平台配置cs<sub>i</sub>满足属性ps<sub>j</sub>,验证通过;否则,表明平台配置cs<sub>i</sub>不满足属性ps<sub>j</sub>,验证失败退出。
地址 210098 江苏省南京市鼓楼区西康路1号