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

一种基于身份的匿名认证方法与系统技术方案

技术编号:17783832 阅读:39 留言:0更新日期:2018-04-22 15:00
本发明专利技术涉及一种基于身份的匿名认证方法与系统,包括:服务器生成两个部分私钥并分别发送给参与认证的双方P1和P2。P1和P2在认证过程中生成主要认证码

【技术实现步骤摘要】
一种基于身份的匿名认证方法与系统
本专利技术属于信息安全领域,特别是基于身份的认证方法及系统。
技术介绍
匿名认证协议是网络安全通信的重要组成部分。通过执行匿名认证协议,两个参与者间在公共信道上可以相互认证,并协商一个会话密钥,以便实现开放网络中的安全通信。在基于传统公钥密码认证的匿名协议中,通信双方拥有一对公私钥:公钥和私钥,其中私钥用于生成认证信息,公钥来验证信息的合法性。为了解决基于传统公钥密码的匿名认证协议中存在证书管理困难问题,科研人员利用公钥的思想提出了基于身份的匿名认证协议。在这种协议中,用户的身份(姓名、身份证号码、电子邮件地址等)就是用户的公钥,大大降低了系统法人复杂度。私钥是密码系统最机密的信息,是安全通信的基础,私钥的安全度直接决定了系统的安全水平。为了增强私钥的安全性,避免单点密钥丢失引起的安全隐患,通常采用秘密共享/门限技术来设计有效的密钥管理方案。这种方法把私钥分割成多个份额,并分散到多个用户或设备中,使得只有获得足够多的份额的用户才可以重构私钥,而少于门限数量的份额则无法重构私钥。然而,在恢复私钥时,拿到完整私钥的用户可以在其他方不知情的情况下进行非法认证,威胁到其他用户的权益和系统的安全。针对这种情况,本专利技术设计了一种基于身份的两方分布式匿名认证方案,用户可以实现在两个设备之间分布式地生成认证信息,该认证信息必须由认证方选定的两个可信设备共同参与完成,并且在认证信息的生成过程中不需要恢复完整的认证私钥,保证了私钥的安全性。
技术实现思路
本专利技术的目的在于被认证方在不同时泄露自己的两个部分私钥,并且无需获得完整的认证私钥的情况下,可由两个部分私钥共同生成基于身份的可认证信息。针对本专利技术的目的,本专利技术提出了一个基于身份的两方分布式信息生成的认证方案,下面给出具体描述。一种基于身份的匿名认证方法,其特征在于,包括:密钥分发步骤:产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中P是循环加法点群的一个基点,该点群的阶为素数q;然后生成一个认证私钥DID=h(s,ID)P,以及一个随机数rID使之满足将部分认证密钥发送P1,发送给P2。分布式认证步骤:参与认证的双方P1和P2,分别生成一个随机数r1和r2。P1首先计算R1=r1P,使用同态加密方法加密r1得到C1,随后发送C1和R1给P2。P2计算R2=r2P,同时P2通过同态加密的性质,可以计算出的密文C2,并将此密文C2和R2发送给P1。P1解密C2,并利用自己的部分认证密钥计算得到主要认证码r1r2DIDmodq和R,用异或操作和哈希算法计算出伪地址AID,生成第三个临时公钥R3=r3P,用哈希算法生成最终认证码然后将认证信息(AID,R,R3,α,T)发送给服务器,服务器将验证得到认证信息再反馈给用户,成功完成三次握手后,服务器与用户之间即可建立安全通信。在上述的一种基于身份的匿名认证方法,所述密钥分发步骤具体包括:步骤2.1、产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中P是循环加法点群的一个基点,该点群的阶为素数q;步骤2.2、计算用户私钥DID=h(s,ID)P,其中h(ID)表示用户身份ID的哈希值;步骤2.3、生成一个随机数rID,计算第一部分私钥以及第二部分私钥其中步骤2.4、生成同态加密算法的一对公私钥对(pk,sk);将发送给第一参与方P1,将发送给第二参与方P2;在上述的一种基于身份的匿名认证方法,所述分布式认证步骤具体包括:步骤3.1、P1生成第一个随机数r1,计算第一个临时公钥R1=r1P,使用同态加密算法的公钥pk对r1做加密,即第一个密文C1=Encpk(r1)。P1把(R1,C1)发送给P2。步骤3.2、P2生成第二个随机数r2,计算第二个临时公钥R2=r2P,计算第二个密文其中ρ是随机数。P2把(R2,C2)发送给P1。步骤3.3、P1使用同态加密算法的私钥做解密,计算C2的明文主要认证码目标临时公钥R=r1R2。P1生成第三个随机数r3,计算第三个临时公钥R3=r3P和伪地址AID=ID^h(R3,r3Ppub)和最终认证码其中T为当前时间戳。P1将认证信息(AID,R,R3,α,T)发送给服务器。步骤3.4、服务器接收到认证信息后,用其私钥计算R′=sR3,用户真实地址ID=AID^h(R3,R′)和主要认证码计算最终认证码判断计算出来的认证码α是否与用户发送过来的α相等,如果不相等则终止协议,如果相等则计算把(β,T′)发送给用户,其中T′是当前时间戳。步骤3.5、P1计算判断该值是否与接收到的β,若相等,则建立通信连接,否则终止本次通信。一种基于身份的匿名认证系统,其特征在于,包括:服务器:用户首先向服务器注册,服务器为用户提供认证私钥,服务器产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中G是循环加法点群的一个基点,该点群的阶为素数q;服务器为用户生成一个认证私钥DID=h(s,ID)P,以及一个随机数满足密钥分发单元:用于将部分私钥发送P1,发送给P2。分布式认证单元:参与认证的双方P1和P2,通过分布式认证单元分别生成一个随机数r1和r2。P1首先计算R1=r1P,使用同态加密方法加密r1得到C1,随后发送C1和R1给P2。P2计算R2=r2P,同时P2通过同态加密的性质,可以计算出的密文C2,并将此密文C2和R2发送给P1。P1解密C2,并利用自己的部分私钥计算得到主要认证码r1r2DIDmodq和R,用异或操作和哈希算法计算出伪地址AID,生成第三个临时公钥R3=r3P,用哈希算法生成最终认证码将认证信息(AID,R,R3,α,T)发送给服务器,服务器将验证的到认证信息再反馈给用户,成功完成三次握手后,服务器与用户之间即可建立安全通信。在上述的一种基于身份的匿名认证方法,所述密钥分发单元进行密钥分发的方法具体包括:步骤2.1、产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中G是循环加法点群的一个基点,该点群的阶为素数q;步骤2.2、计算用户私钥DID=h(s,ID)P,其中h(ID)表示用户身份ID的哈希值;步骤2.3、生成一个随机数rID,计算第一部分私钥以及第二部分私钥其中步骤2.4、生成同态加密算法的一对公私钥对(pk,sk);将发送给第一参与方P1,将发送给第二参与方P2;在上述的一种基于身份的匿名认证方法,所述分布式认证单元进行分布式认证的方法具体包括:步骤3.1、P1生成第一个随机数r1,计算第一个临时公钥R1=r1P,使用同态加密算法的公钥pk对r1做加密,即第一个密文C1=Encpk(r1)。P1把(R1,C1)发送给P2。步骤3.2、P2生成第二个随机数r2,计算第二个临时公钥R2=r2P,计算第二个密文其中ρ是随机数。P2把(R2,C2)发送给P1。步骤3.3、P1使用同态加密算法的私钥做解密,计算C2的明文主要认证码目标临时公钥R=r1R2。P1生成第三个随机数r3,计算第三个临时公钥R3=r3本文档来自技高网...
一种基于身份的匿名认证方法与系统

【技术保护点】
一种基于身份的匿名认证方法,其特征在于,包括:密钥分发步骤:产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中P是循环加法点群的一个基点,该点群的阶为素数q;然后生成一个认证私钥DID=h(s,ID)P,以及一个随机数满足

【技术特征摘要】
1.一种基于身份的匿名认证方法,其特征在于,包括:密钥分发步骤:产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中P是循环加法点群的一个基点,该点群的阶为素数q;然后生成一个认证私钥DID=h(s,ID)P,以及一个随机数满足生成一个认证私钥DID=h(s,ID)P,以及一个随机数rID使之满足将部分私钥发送P1,发送给P2;分布式认证步骤:参与认证的双方P1和P2,分别生成一个随机数r1和r2;P1首先计算R1=r1P,使用同态加密方法加密r1得到C1,随后发送C1和R1给P2;P2计算R2=r2P,同时P2通过同态加密的性质,可以计算出的密文C2,并将此密文C2和R2发送给P1;P1解密C2,并利用自己的部分私钥计算得到主要认证码r1r2DIDmodq和R,用异或操作和哈希算法计算出伪地址AID,生成第三个临时公钥R3=r3P,用哈希算法生成最终认证码将认证信息(AID,R,R3,α,T)发送给服务器,服务器将验证的到认证信息再反馈给用户,成功完成三次握手后,服务器与用户之间即可建立安全通信。2.根据权利要求1所述的一种基于身份的匿名认证方法,其特征在于,所述密钥分发步骤具体包括:步骤2.1、产生一个满足安全参数的随机大整数作为主私钥s,并计算对应的公钥Ppub=sP,主私钥秘密保存,公钥公开发布,其中P是循环加法点群的一个基点,该点群的阶为素数q;步骤2.2、计算用户私钥DID=h(s,ID)P,其中h(ID)表示用户身份ID的哈希值;步骤2.3、生成一个随机数rID,计算第一部分私钥以及第二部分私钥其中步骤2.4、生成同态加密算法的一对公私钥对(pk,sk);将发送给第一参与方P1,将发送给第二参与方P2。3.根据权利要求1所述的一种基于身份的匿名认证方法,其特征在于,所述分布式认证步骤具体包括:步骤3.1、P1生成第一个随机数r1,计算第一个临时公钥R1=r1P,使用同态加密算法的公钥pk对r1做加密,即第一个密文C1=Encpk(r1);P1把(R1,C1)发送给P2;步骤3.2、P2生成第二个随机数r2,计算第二个临时公钥R2=r2P,计算第二个密文其中ρ是随机数;P2把(R2,C2)发送给P1;步骤3.3、P1使用同态加密算法的私钥做解密,计算C2的明文主要认证码目标临时公钥R=r1R2;P1生成第三个随机数r3,计算第三个临时公钥R3=r3P和伪地址AID=ID^h(R3,r3Ppub)和最终认证码其中T为当前时间戳,^表示异或操作;P1将认证信息(AID,R,R3,α,T)发送给服务器;步骤3.4、服务器接收到认证信息后,用其私钥计算R′=sR3,用户真实地址ID=AID^h(R3,R′)和主要认证码计算认证码判断计算出来的认证码α是否与用户发送过来的α相等,如果不相等则终止协议,如果相等则计算把(β,T′)发送给用户,其中T′是当前时间戳;步骤3.5、P1计算判断该值是否与接收到的β,若相等,则建立通信连接,否则终止本次通信。4.一种基于身份的匿名...

【专利技术属性】
技术研发人员:何德彪王婧冯琦
申请(专利权)人:武汉大学
类型:发明
国别省市:湖北,42

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

1