本申请涉及数据安全及身份认证,特别涉及一种匿名可追踪身份认证方法及装置。
背景技术:
1、互联网的发展使信息化服务逐渐渗透到人们生活的方方面面,传统活动逐渐被网上活动所替代,然而,互联网复杂、开放的特性也充满了未知的元素。随着隐私泄露、信息窃取等事件的发生,人与人之间的信任问题、隐私保护问题逐渐成为热点话题,而身份认证技术、隐私保护技术等安全技术也成为热点研究方向。
2、身份认证作为一种确认身份、授权的方式,被广泛应用于通信、金融、社交等方面。通过身份认证,可以确认用户是否拥有某种资源的访问权限或使用权限。
3、一种常用的身份认证方法是利用一个在线的身份提供者或证书发行者,用户每次进行身份验证时,发行人为用户身份的各种属性提供证明,但要求发行人时刻在线,增加了系统的负担。另外一种典型方法是用户通过离线的证书授权中心(certificateauthority,简称ca)预先得到关于各种属性的数字证书,然后直接向验证者出示数字证书,整个认证过程无需ca的参与。数字证书使用密码学技术,产生标识各方用户身份信息的一串数字,通过公开算法在互联网上提供验证用户身份的方式,数字证书由ca颁发,任何人可在网上验证数字证书的有效性。
技术实现思路
1、本申请提供一种匿名可追踪身份认证方法及装置,以解决认证过程中用户身份信息过度暴露和匿名证书无法监管等问题。
2、本申请第一方面实施例提供一种匿名可追踪身份认证方法,包括以下步骤:生成ca密钥对;基于所述ca密钥对得到用户的密钥对,并且生成追踪参数,使得利用所述用户的密钥对和所述追踪参数完成用户注册;根据所述用户的密钥对和ca发送给所述用户的随机数,生成所述用户的证书请求;根据所述证书请求、所述ca密钥对的公钥进行证书请求验证;在验证通过后,根据所述ca密钥对、所述证书请求及用户的属性值得到所述用户的初始证书;基于所述用户的密钥对、所述属性值、所述初始证书输出匿名证书与自随机化后的用户公钥;基于所述匿名证书、所述ca密钥对的公钥及验证者指定的用户属性值进行证书验证;在验证通过后,基于所述匿名证书和ca的追踪参数列表,得到所述匿名证书所对应的用户的公钥和所述追踪参数,以追踪所述用户的真实身份。
3、可选地,在本申请的一个实施例中,所述生成ca密钥对包括:获取安全参数1λ;运行setup算法,得到系统公共参数pp和生成及验证用户证书的所述ca密钥对(isk,ipk)。
4、可选地,在本申请的一个实施例中,所述基于所述ca密钥对得到用户的密钥对,并且生成追踪参数,使得利用所述用户的密钥对和所述追踪参数完成用户注册,包括:根据所述系统公共参数pp和所述ca密钥对(isk,ipk)中的公钥ipk,运行keygen算法,得到所述用户的密钥对(upk,usk),且生成追踪参数t;将所述用户的公钥和所述追踪参数发送给ca,以用于注册。
5、可选地,在本申请的一个实施例中,所述根据所述证书请求、所述ca密钥对的公钥进行证书请求验证,包括:基于所述证书请求certqst、所述公钥ipk,运行vercq算法,生成字符b∈{0,1},其中,若b=1,则验证通过,ca为用户生成证书,否则,ca拒绝所述用户的证书请求;通过ca将所述用户的公钥upk和所述追踪参数t存入列表中,以在身份追踪时,将计算结果与所述用户的公钥upk和所述追踪参数t进行比对,基于比对结果确定所述用户的身份。
6、可选地,在本申请的一个实施例中,在得到所述用户的初始证书之后,还包括:将所述初始证书发送给所述用户;在所述用户验证所述初始证书通过后,判定所述初始证书有效。
7、可选地,在本申请的一个实施例中,所述基于所述匿名证书、所述ca密钥对的公钥及验证者指定的用户属性值进行证书验证,包括:所述匿名证书、所述ca密钥对的公钥及验证者指定的用户属性值,输出字符b∈{0,1},若b=1,则验证通过,出示的证书有效,否则出示的证书无效。
8、本申请第二方面实施例提供一种匿名可追踪身份认证装置,包括:生成模块,用于生成ca密钥对;用户注册模块,用于基于所述ca密钥对得到用户的密钥对,并且生成追踪参数,使得利用所述用户的密钥对和所述追踪参数完成用户注册;证书请求模块,用于根据所述用户的密钥对和ca发送给所述用户的随机数,生成所述用户的证书请求;证书请求验证模块,用于根据所述证书请求、所述ca密钥对的公钥进行证书请求验证;初始证书生成模块,用于在验证通过后,根据所述ca密钥对、所述证书请求及用户的属性值得到所述用户的初始证书;匿名证书出示模块,用于基于所述用户的密钥对、所述属性值、所述初始证书输出匿名证书与自随机化后的用户公钥;匿名证书验证模块,用于基于所述匿名证书、所述ca密钥对的公钥及验证者指定的用户属性值进行证书验证;身份追踪模块,用于在验证通过后,基于所述匿名证书和ca的追踪参数列表,得到所述匿名证书所对应的用户的公钥和所述追踪参数,以追踪所述用户的真实身份。
9、可选地,在本申请的一个实施例中,所述初始证书生成模块,还用于,在得到所述用户的初始证书之后,将所述初始证书发送给所述用户,在所述用户验证所述初始证书通过后,判定所述初始证书有效。
10、本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的匿名可追踪身份认证方法。
11、本申请第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上述实施例所述的匿名可追踪身份认证方法。
12、本申请的实施例通过生成ca密钥对,用户注册,证书请求,证书请求验证,生成初始证书,出示匿名证书,匿名证书验证,身份追踪进行匿名可追踪身份认证。用户可以选择性的出示自己的属性,从而尽可能保护隐私,同时ca能够根据匿名证书追踪到用户的公钥,能够起到监管的作用。解决了相关技术中认证过程中用户身份信息过度暴露和匿名证书无法监管的问题。
13、本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
1.一种匿名可追踪身份认证方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述生成ca密钥对包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述ca密钥对得到用户的密钥对,并且生成追踪参数,使得利用所述用户的密钥对和所述追踪参数完成用户注册,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述证书请求、所述ca密钥对的公钥进行证书请求验证,包括:
5.根据权利要求4所述的方法,其特征在于,在得到所述用户的初始证书之后,还包括:
6.根据权利要求4或5所述的方法,其特征在于,所述基于所述匿名证书、所述ca密钥对的公钥及验证者指定的用户属性值进行证书验证,包括:
7.一种匿名可追踪身份认证装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述初始证书生成模块,还用于,在得到所述用户的初始证书之后,将所述初始证书发送给所述用户,在所述用户验证所述初始证书通过后,判定所述初始证书有效。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-6任一项所述的匿名可追踪身份认证方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-6任一项所述的匿名可追踪身份认证方法。