1.格上基于身份的强前向安全数字签名方法,其特征在于:
(1)使用基于格密码的陷门生成算法和格基委派算法生成密钥,使得该方法能够抵抗量子计算机的攻击;
(2)通过格基委派技术和哈希函数对密钥进行更新,保证不必每次检测出密钥泄露就撤销当前密钥系统,提高了签名的效率和安全性。
2.根据权利要求1所述的格上基于身份的强前向安全签名方法,该方法一共包含两个实体,分别是基于身份的密码系统IBC用户、密钥生成中心PKG,具体实施步骤包含以下四个算法:(1)系统初始化
输入安全参数n,运行陷门生成算法和哈希函数生成公共参数PP=(A0,B0,H1,H2),以(A0,B0)为主公钥,以格基委派算法生成的 为主私钥并令(2)密钥提取及更新算法
一个身份为ID的IBC用户向PKG发送密钥请求,PKG收到用户请求后,会选择一个适合的周期T为该用户一次性生成T个周期的密钥;PKG运行格基委派算法生成T个周期的一系列密m×m钥(SKID||0,SKID||1……SKID||T)∈Z ;(SKID||0,SKID||1……SKID||T)作为该用户的全部周期的密钥,PKG把密钥(SKID||0,SKID||1……SKID||T)通过安全信道发送给用户;当T周期内的密钥使用完或失效后,身份为ID的用户可以再次向PKG发送密钥请求,PKG会再运行算法为用户生成一系列密钥为用户所用;
(3)签名算法
*
在此算法中,身份为ID的用户需要对某个消息m∈{0,1}使用用户私钥签名;用户首先确定当前所在的周期,假设当前周期为i,用户使用自己在第i周期的私钥SKID||i,随机向量和ID的身份哈希值H(ID)进行签名,签名结果为ei=(ci,zi);用户随机选择*
消息m∈{0,1} ,计算ci=H2(A°ID||i·yi,m),其中A°ID||i=AID||i+A'ID||i,AID||i和A'ID||i均为主公钥和身份的hash运算,具体的有AID||i=A0·(H1(ID||0)H1(ID||1)……H1(ID‑1 ‑1||i)) ,A′ID||i=B0·(H1(ID||T)H1(ID||T‑1)……H1(ID||i)) ;然后计算zi=SKID||i·ci+yi,以概率 输出当前周期i的签名ei=(ci,zi);TID||i=A°ID||i·SKID||i,那么第i周期用户的公钥为PKID||i=(A°ID||i,TID||i);
(4)验证算法
任何得到签名和公钥的人都可以作为验证者,验证者在获得身份为ID的用户的签名ei后,使用用户在第i周期的公钥PKID||i对消息签名对进行验证,如果ci=H2(A°ID||i·zi‑TID||i·ci,m)成立,那么验证通过,否则验证失败。