当前位置: 首页 > 专利查询>同济大学专利>正文

前向安全的不可拆分数字签名方法技术

技术编号:10674258 阅读:250 留言:0更新日期:2014-11-26 10:37
本发明专利技术公开了一种前向安全的不可拆分数字签名方法,该方法中包括算法有:密钥生成算法KGen,密钥升级算法KUpd,不可拆分签名方法生成算法UndSigFunGen,不可拆分签名算法FSUndSig,不可拆分签名验证算法FSUndVrfy,签名算法Sign,验证算法Vrfy。本发明专利技术在白盒攻击环境下,可实现前向安全的不可拆分数字签名。整个方案中,移动代理不需要携带私有密钥当它们产生的数字签名代表原始签名,因此私钥将不会受到影响。加密的功能与原始签署者的要求相结合,所以签名算法的误操作可被防止。该方案并不需要专门的密钥分发机构,同时即便签名者被攻破,该方案仍具有前向安全性。

【技术实现步骤摘要】
前向安全的不可拆分数字签名方法
本专利技术涉及信息安全
,具体涉及移动安全代理技术,应用于电子商务、移动计算等。
技术介绍
随着越来越多的基于移动代理技术进入实践阶段,如果没有合适的、安全的、可信的和隐秘的技术来保护敏感的商业数据并且让商业伙伴们有充分的信心来一起合作的话,这些应用是不可能成功实现的。然而,移动代理面临着巨大的安全威胁,当前移动安全代理领域上基于身份的不可拆分数字签名方法可以很好的并安全有效的完成任务。但是,基于身份的不可拆分数字签名方法必须需要一个中心化分发密钥的安全机构,而实际上有很多情况是没有这种具有权威性,可靠性的机构的。因此这里急需一个不依靠密钥分发机构的,又同时具有高安全性,高可靠性的方法来保护移动代理。该方案是建立在双线性对基础上的。其安全性依赖于对在Diffie-Hellman组求解计算Diffie-Hellman问题的困难度上。其中大部分基本概念,例如群、环、域,在近世代数一科中都属于标准概念。相似技术(产品)简述:为了解决在以往的传统电子签名方案实现中,移动代理在代理原始用户活动时,生成电子签名需要自身携带签名算法以及签名密钥的过程中,会让攻击者从代理端伪造签名算法,甚至破解签名密钥的安全问题。采用Kotzanikolaous,P.,Burmester,M.,Chrissikopoulos,V.,SecureTransactionswithMobileAgentsinHostileEnvironments,proceedingofACISP2000,pp289-297,2000;YangShi,XiaopingWang,LimingCao,et.al.ASecuritySchemeofElectronicCommerceforMobileAgentsUsesUndetachableDigitalSignatures.TheThirdInternationalConferenceonInformationSecurity,ACMPress,2004:pp.242-243.和YangShi,XiaopingWang,LimingCao,JianxinRen.SecureMobileAgentsinElectronicCommercebyUsingUndetachableSignaturesfromPairings.Proc.The4thInternationalConferenceonElectronicBusiness,pp.1038-1043.三篇文献给出的任意一种不可拆分电子签名,可以在一定程度上控制签名密钥或者签名方法的泄露。为了解决在没有可靠密钥分发机构情况下,密钥生成者会被攻击得到签名密钥的安全威胁H.Krawezyk.Simpleforward-securesignaturesfromanySignatureseheme.Proceedingsofthe7thACMConferenceonComputerandCommunicationsSeeurity,2000,pp.108-115.文献提出了前向安全签名方法来解决这类问题,而且,即便当签名者主机被攻陷形成白盒攻击环境时,仍能保证签名密钥是前向安全的,即该方案密钥是随时间变化的,在被攻陷的时间点之前的已经使用过的签名密钥都是无法获取的,故名前向安全。但是这几种签名方案各自并不能满足目前移动代理安全性的需求。
技术实现思路
众所周知,签名密钥是一个签名方案的核心,如果签名密钥被盗,那么整个签名方法就失去了作用,因此上文提到的前向安全签名方法可以让签名密钥随时间的流逝而更新,没过一个时间段就不可逆地更新一次密钥,这样,即便当签名者被攻陷后,仍能保证当前时间片段以前的签名密钥的安全性,即,已经签名过得数据无法再仿造。但是,目前前向安全的签名方案又无法达到不可拆分签名的效果。同时具有两种特点的签名方案成为了目前移动代理安全领域的空白,因为公开的签名方案中,并没有方案有效的方案是两种特点结合,因为这种结合可以说是相当困难的。而本专利技术的目的在于克服目前这两种方案在移动代理安全领域各自的不足,既能解决生成电子签名需要自身携带签名算法以及签名密钥的过程中,会让攻击者从代理端伪造签名算法,甚至破解签名密钥的安全问题,又能解除移动代理在路过某恶意主机时可能会形成白盒攻击(WBAC)环境时所面临的威胁,同时也不需要专门的安全机构来颁发证书或者是密钥,增加了签名方法的适用范围,再者,不仅使通讯风险更加低,也抵消了权威机构被攻破的巨大威胁,填补了移动安全领域该项的空白。本专利技术的创新在于通过特殊的算法设计,进而同时达到前向安全和不可拆分签名的安全特征。它并不是单纯简单的算法拼装,而是通过理论推理论证以及相应的实验而达到的两种安全方案的有机结合。为此,本专利技术给出的技术方案为:一种前向安全的不可拆分数字签名方法,其特征在于,它包括八个步骤如下:步骤1.某客户在一台客户端计算机上完成购物,随即,计算机生成移动代理,之后客户端计算机根据规定好的安全级别下(输入需要的安全指数k)运行算法1.,算法定义如下算法1.密钥生成算法:KGen(1k)输入总共的时间片段数T和1k当k∈□(□为自然数)时一个安全参数,算法输出公共密钥设置以及初始密钥S0。Ω解释说明:上述中,关于安全参数1k是一个概念性说法,k就是安全指数,可以简单理解为加密系统是k位长度的,当具体实现时,视项目需求和采用的公钥加密系统(比如hyperelliptic椭圆曲线等)而定。Ω中G1是一个阶为q乘法循环群,G2同样是一个阶为q的乘法循环群。G和P是G1和G2各自的固定生成元。是一个线性映射,将G1和G2中的元素先做笛卡尔积,然后映射到GT中的元素上。和H2:{0,1}*→G1是两个特殊的哈希映射,作用就是分别将任意二进制数值映射到和G1,是以质数q为阶且无零元的整数加法群。注解:假设存在同态映射ψ:G2→G1有ψ(P)=G。定义:在(G1,G2)上的判定Diffie-Hellman问题(co-DDH):给出P,Pa∈G2和Y,Yb∈G1作为输入,如果a=b那么输出yes,否则输出no。当输出为yes时,我们称(P,Pa,Y,Yb)是一个Diffie-Hellman元组(co-DHT)。假设:我们假设是可以被快速计算的,因此co-DDH在(G1,G2)上是容易解决的。本方法就是建立在这个假设上的。初始密钥S0生成:从中随即取出S0,计算U0For(j=1;j≤T;j++)doEndFor循环完毕,抹除sj,j=1,…,T,存储CERTj,j=1,…,T注释:在此,本算法假设U0是个数据集合体,因此,将全局设定Ω存储在U0,也就是公钥元素携带着全局信息。KGen(1k)算法完成,输出公钥U0和初始密钥S0,进行下一步。步骤2然后客户端向算法2输入公钥U0、初始密钥s0、CERTj和当前时间片j,然后运行算法2,其定义如下:算法2.KUpd(sj-1,CERTj,j,U0)BEGIN<U0′,j′,Uj′,Λj>←CERTjreturn⊥//aborterasesj-1returnsjEND抹除S0后,算法返回S1,进行下一步步骤3.客户端完成交易,准备发送本文档来自技高网
...
前向安全的不可拆分数字签名方法

【技术保护点】
一种前向安全的不可拆分数字签名方法,其特征在于,它包括八个步骤如下: 步骤1.某客户在一台客户端计算机上完成购物,随即,计算机生成移动代理,之后客户端计算机根据规定好的安全级别下(输入需要的安全指数k)运行算法1.,算法定义如下 算法1.密钥生成算法:KGen(1k)输入总共的时间片段数T和1k当k∈□(□为自然数)时一个安全参数,算法输出公共密钥设置以及初始密钥S0;Ω中G1是一个阶为q乘法循环群,G2同样是一个阶为q的乘法循环群;G和P是G1和G2各自的固定生成元;是一个线性映射,将G1和G2中的元素先做笛卡尔积,然后映射到GT中的元素上;和H2:{0,1}*→G1是两个特殊的哈希映射,作用就是分别将任意二进制数值映射到和G1,是以质数q为阶且无零元的整数加法群;定义:在(G1,G2)上的判定Diffie‑Hellman问题(co‑DDH):给出P,Pa∈G2和Y,Yb∈G1作为输入,如果a=b那么输出yes,否则输出no;当输出为yes时,称(P,Pa,Y,Yb)是一个Diffie‑Hellman元组(co‑DHT); 将全局设定Ω存储在U0,也就是公钥元素携带着全局信息; KGen(1k)算法完成,输出公钥U0和初始密钥S0,进行下一步; 步骤2然后客户端向算法2输入公钥U0、初始密钥s0、CERTj和当前时间片j,然后运行算法2,其定义如下: 算法2. KUpd(sj‑1,CERTj,j,U0) BEGIN <U0′,j′,Uj′,Λj>←CERTjreturn  ⊥  //abort erase  sj‑1return  sjEND 抹除S0后,算法返回S1,进行下一步; 步骤3.客户端完成交易,准备发送移动代理进行交易; 如果当前密钥过期执行步骤4,否则执行步骤5; 步骤4.客户端以上一时期密钥Sj‑1,当前时期j,公钥U0以及算法1生成的CERTj为输入,重新运行KUpd,得到下一时间段密钥Sj,进行下一步; 步骤5.客户端以REQ_C||IDC,sj,CERTj为输入,其中REQ_C||IDC是客户需求和用户ID属于敏感数据运行算法3,其定义如下: 算法3. UndSigFunGen(REQ_C||IDC,sj,CERTj) Begin H←H2(REQ_C||IDC); End 输出使代理携带;随后客户端运行算法6为代理敏感数据签名,输入为敏感数据、当前时间片段j 以及当前密钥Sj,算法定义如下 算法6. Sign(sj,j,Msg) Begin return  σjEnd 输出为j时期的签名,同样使代理携带;进行下一步 步骤6.商店接收到代理,先用算法7检验代理的合法性,即检验σj,输入为公钥、签名消息、签名和当前时期,算法定义如下: 算法7. Vrfy(U0,σ,j,Msg) Begin <CERTj,σ′>←σ;<U0′,j′,Uj′,Λj>←CERTjIf(U0≠U0′)  return  0 If(j≠j′)  return  0 Else  return  1 End 如果输出为0,退出交易 如果输出为1,判断是否代理继续在商店间迁移,如果需要,重复该步骤,即进行步骤6;否则进行步骤7; 步骤7.在此,商店已经做出最终决策,如果完成交易,那么生成CONTRACT和其他交易信息作为输入,运行算法4,定义如下: 算法4. UndSig(Msg) Begin h=H1(Msg) End 输出为最终的不可拆分签名,在此记为Z。保存到代理中,然后使代理迁移回到客户端,进行下一步。 步骤8.客户端收到交易完成的代理,以U0,Z,j,Msg,REQ_C||IDC为输入,其中Msg为CONTRACT和其他交易信息,运行算法5检验Msg的合法性,算法定义如下: 算法5. UndVrfy(U0,Z,j,Msg,REQ_C||IDC) Begin <<CERTj,Z′>,j>←Z;<U0′,j′,Uj′,Λj>←CERTjIf(U0≠U0′)  return  0 If(j≠j′)  return  0 If(Msg does not satisfy REQ_C)  return  0 else  return  1 End 如果算法输出为0,则终止交易; 否则输出为1,完成交易。 如果用户仍需要交易,直接跳到步骤3。...

【技术特征摘要】
1.一种前向安全的不可拆分数字签名方法,其特征在于,它包括八个步骤如下:步骤1.某客户在一台客户端计算机上完成购物,随即,计算机生成移动代理,之后客户端计算机根据规定好的安全级别下(输入需要的安全指数k)运行算法1,算法定义如下算法1.密钥生成算法KGen(1k):输入总共的时间片段数T和1k当(为自然数)时一个安全参数,该算法输出公共密钥设置以及初始密钥s0;Ω中G1是一个阶为q乘法循环群,G2同样是一个阶为q的乘法循环群;G和P是G1和G2各自的固定生成元;是一个线性映射,将G1和G2中的元素先做笛卡尔积,然后映射到GT中的元素上;和H2:{0,1}*→G1是两个特殊的哈希映射,作用就是分别将任意二进制数值映射到和G1,是以质数q为阶且无零元的整数加法群;定义:在(G1,G2)上的判定Diffie-Hellman问题(co-DDH):给出P,Pa∈G2和Y,Yb∈G1作为输入,如果a=b那么输出yes,否则输出no;当输出为yes时,称(P,Pa,Y,Yb)是一个Diffie-Hellman元组(co-DHT);将公共密钥设置Ω存储在U0,也就是公钥元素携带着全局信息;KGen(1k)算法完成,输出公钥U0和初始密钥s0,进行下一步;步骤2然后客户端向算法2输入公钥U0、初始密钥s0、CERTj和当前时间片j,然后运行算法2,其定义如下:算法2.KUpd(sj-1,CERTj,j,U0)BEGIN<U0',j',Uj',Λj>←CERTjreturn⊥//aborterasesj-1returnsjEND抹除s0后,算法返回s1,进行下一步;步骤3.客户端完成交易,准备发送移动代理进行交易;如果当前密钥过期执行步骤4,否则执行步骤5;步骤4.客户端以上一时期密钥sj-1,当前时期j,公钥U0以及算法1生成的CERTj为输入,重新运行KUpd,得到下一时间段密钥sj,进行下一步;步骤5.客户端以REQ_C||IDC,sj,CERTj为输入,其中REQ_C||IDC是客户需求和用户ID属于敏感数据运行算法3,其定义如下:算法3.UndSigFunGen(REQ_C||IDC,sj,CERTj)BeginH←H2(REQ_C||IDC);End输出使代理携带;随后客户端运行算法6为代理敏感数据签名,输入为敏感数据、当前时间片段j...

【专利技术属性】
技术研发人员:史扬刘琴穆斌赵钦佩韩景轩
申请(专利权)人:同济大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1