首页> 中国专利> CFL集中管理模式实现方法

CFL集中管理模式实现方法

摘要

本发明《CFL集中管理模式实现方法》,属于信息安全技术领域,涉及密钥认证体制。本发明CFL集中管理模式实现方法由CFL证书生成中心的标识公私钥生成元集生成算法、CFL证书生成中心为用户证书标识签名中的标识随机数k生成算法、CFL证书生成中心为用户生成工作公私钥标识算法、CFL证书生成算法、CFL证书验证算法5个算法构成,并给出了这5个算法的具体实施方式。证明了CFL集中管理模式实现方法具有良好的信息安全性质。

著录项

  • 公开/公告号CN106059775A

    专利类型发明专利

  • 公开/公告日2016-10-26

    原文格式PDF

  • 申请/专利号CN201610394133.0

  • 发明设计人 范修斌;

    申请日2016-06-07

  • 分类号H04L9/32;H04L9/08;

  • 代理机构

  • 代理人

  • 地址 100039 北京市丰台区大成里秀园13号楼东侧楼

  • 入库时间 2023-06-19 00:46:44

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-26

    授权

    授权

  • 2018-01-05

    著录事项变更 IPC(主分类):H04L9/32 变更前: 变更后: 申请日:20160607

    著录事项变更

  • 2016-11-23

    实质审查的生效 IPC(主分类):H04L9/32 申请日:20160607

    实质审查的生效

  • 2016-10-26

    公开

    公开

说明书

技术领域

本发明属于信息安全技术领域,涉及密钥认证体制。

背景技术

在基于国家商用密码算法SM2、SM3以及SM4的CFL认证算法中,对用户的CFL证书进行CFL签名验证,其过程如下:

设CFL签名验证所需要的标识私钥生成元集和标识公钥生成元集如下:

标识私钥生成元集IDSKG(Identity Secret Key Generation):CFL证书生成中心为用户证书签名的主系统密钥为

IDSKG={sk0,sk1,…,skL-1},

其中各元素独立生成,且两两不同,通过随机性检测,并为CFL证书生成中心所独有,L是IDSKG中元素的总个数。

标识公钥生成元集IDPKG(Identity Public Key Generation):CFL证书生成中心主系统密钥对应的公钥序列为

IDPKG={pk0,pk1,…,pkL-1},

其中pki是公钥密码算法中私钥ski对应的公钥,i=0,…,L-1。

CFL的标识私钥生成函数为:

IDSK=F(IDSKG,S)=sks(0)⊙sks(1)⊙…⊙sks(t-1)

其中“⊙”为中的加法,n为SM2中椭圆曲线基点的周期,IDSK是CFL证书生成中心为用户的CFL证书签名生成的签名私钥,

S=(S(0),S(1),…,S(t-1)),

S=θ(h),θ为CFL控选方式,h=H(ID)=(h0,h1,…,ht-1),ID为用户的标识,H为CFL证书生成签名过程中的hash函数,S(i),(i=0,1,…,t-1)为第i拍时选取标识私钥生成元集中元素的位置,又称S(i),i=0,1,…,t-1为CFL控选方式θ的控选序列,因此CFL标识私钥生成函数又可写为:

IDSK=F(IDSKG,S)=F(IDSKG,θ(h))=F(IDSKG,θ(H(ID)))。

CFL的标识公钥生成函数为:

IDPK=F′(IDPKG,S)=pks(0)⊙′pks(1)⊙′…⊙′pks(t-1)

其中“⊙′”为SM2中点群的加法,IDPK是CFL证书验证的签名验证公钥。

CFL的标识公钥生成函数又可写为:

IDPK=F′(IDPKG,S)=F′(IDPKG,θ(h))=F′(IDPKG,θ(H(ID)))。

CFL证书生成和CFL证书验证算法为:

(1)CFL证书生成中心的CFL证书生成算法

1)用户自主生成工作公私钥。

2)用户将自身信息及工作公钥发送给CFL证书生成中心。

3)CFL证书生成中心根据用户标识ID,计算h=H(ID)。

4)CFL证书生成中心计算CFL控选方式θ(h)=S。

5)CFL证书生成中心利用标识私钥生成元集IDSKG计算CFL标识私钥生成函数

IDSK=F(IDSKG,S)=F(IDSKG,θ(h))=F(IDSKG,θ(H(ID)))

=skS(0)⊙skS(1)⊙…⊙skS(t-1).

生成用户的标识私钥IDSK。

6)CFL证书生成中心利用用户的标识私钥对用户标识进行签名,用户标识以及签名构成用户的CFL证书。

(2)验证方对用户CFL证书的验证算法

1)用户将CFL证书发送给验证方。

2)验证方根据该用户标识ID,计算h=H(ID)。

3)验证方计算CFL控选方式θ(h)=S。

4)验证方计算CFL标识公钥生成函数

IDPK=F′(IDPKG,S)=F′(IDPKG,θ(h))=F′(IDPKG,θ(H(ID)))

=pkS(0)⊙′pkS(1)⊙′…⊙′pkS(t-1).

生成用户的标识公钥IDPK。

5)验证方利用标识公钥IDPK对用户CFL证书签名进行验证。

由上述CFL证书生成中心的CFL证书生成算法可知,CFL用户的工作公私钥由自己自主生成,不利于集中管理。为此,本发明给出了基于国家商用密码算法SM2,SM3,SM4的CFL集中管理模式实现方法,并给出了CFL集中管理模式实现方法的安全性分析。

本发明中Ukey代表用户的安全硬件,包括U盾、密码卡、安全芯片卡、手机安全芯片、蓝牙用户端安全硬件产品。

发明内容

本发明CFL集中管理模式实现方法由下述五个算法构成:

算法1:CFL集中管理模式CFL证书生成中心的标识公私钥生成元集生成算法;

算法2:CFL集中管理模式CFL证书生成中心为用户证书标识签名中的标识随机数k生成算法;

算法3:CFL集中管理模式CFL证书生成中心为用户生成工作公私钥标识算法;

算法4:CFL集中管理模式CFL证书生成算法;

算法5:CFL集中管理模式CFL证书验证算法。

具体实施方式

本发明CFL集中管理模式实现方法由下述五个算法构成:

算法1:CFL集中管理模式CFL证书生成中心的标识公私钥生成元集生成算法

1)CFL证书生成中心利用随机数发生器随机生成标识私钥生成元集:

IDSKG={sk0,sk1,…,skL-1}

其中元素要独立产生,通过随机性检测,且两两不同,并为CFL证书生成中心所独有。

2)CFL证书生成中心基于标识私钥生成元集生成对应的标识公钥生成元集:

IDPKG={pk0,pk1,…,pkL-1},

其中pki是公钥密码算法中私钥ski对应的公钥,i=0,…,L-1。

3)CFL证书生成中心公开发布标识公钥生成元集。

算法2:CFL集中管理模式CFL证书生成中心为用户证书标识签名中的标识随机数k生成算法

1)CFL证书生成中心利用随机数发生器生成签名算法中的标识随机数生成元集为IDRG={r0,r1,…,rL-1},其中元素独立产生,且两两不等,通过随机性检测,并为CFL证书生成中心所独有。

2)CFL证书生成中心根据用户的标识,产生签名算法中的标识随机数k的生成函数为:

k=IDR=F(IDRG,S)=F(IDRG,θ(h))=F(IDRG,θ(H(ID)))=rS(0)⊙rS(1)⊙…⊙rS(t-1).

算法3:CFL集中管理模式CFL证书生成中心为用户生成工作公私钥标识算法

1)CFL证书生成中心基于用户标识,计算SM3(ID)=h。

2)CFL证书生成中心将256比特h分成前后128比特,即h=h0||h1

3)CFL证书生成中心计算其中BK0,BK1为CFL证书生成中心关于SM4加解密的两组密钥。BK0,BK1由CFL证书生成中心的随机数发生器独立生成,且不相等,通过随机性检测,并为CFL证书生成中心所独有。

4)CFL证书生成中心将作为用户U的工作私钥。将RAPK=RASK·P mod E作为用户U的工作公钥,其中E为SM2中的椭圆曲线,P为SM2的基点。

算法4:CFL集中管理模式CFL证书生成算法

1)CFL证书生成中心先为各代理窗口和自己配发工作公私钥以及CFL证书。

2)CFL证书生成中心根据每个Ukey的标识码IDUkey,根据算法3,计算

SM3(IDUkey)=h=h0||h1,SM4(BK0,h0)=KU0,SM4(BK1,h1)=KU1,

RASK1=KU0||KU1,RAPK1=RASK1·Pmod>E,

称RAPK1,RASK1为每个Ukey的临时工作公私钥对。

3)CFL证书生成中心利用SM2,以自己的工作私钥对IDUkey||RAPK1进行签名,得签名值为SIGN,其中签名中的随机数IDR由IDUkey||RAPK1经算法2生成,即

k=IDR=F(IDRG,θ(H(IDUkey||RAPK1))).

4)CFL证书生成中心将临时工作公私钥对RASK1,RAPK1、签名值SIGN写入Ukey,并配发给各代理窗口。

5)用户到代理窗口通过身份证、身份检查领取写入临时工作公私钥对以及签名值SIGN的Ukey。

6)用户利用自己的计算机,登录CFL证书生成中心,下载相关应用软件,对Ukey中的签名值,利用CFL证书生成中心的工作公钥进行验证,验证通过后,用户利用SM2,以自己的临时工作私钥,将IDUkey||RAPK1进行签名,得签名值SIGN′,用户利用CFL证书生成中心的公钥将IDUkey||RAPK1加密生成密文用户将发给CFL证书生成中心。

7)CFL证书生成中心利用自己的工作私钥,解密得用户的IDUkey||RAPK1,验证RAPK1由IDUkey生成的正确性,以及验证SIGN′。

8)上述验证通过后,用户填写自己的标识信息ID1。用户填写或采集自己的专有信息ID2,例如指纹信息、虹膜、口令,我们称HUFU1=ID2为用户CFL证书虎符1。用户利用SM2,以自己的临时工作私钥RASK1,对ID1||ID2进行签名,得签名SIGN″,并利用CFL证书生成中心的工作公钥对ID1||ID2进行加密生成密文并将发送给CFL证书生成中心。

9)CFL证书生成中心解密得用户的ID1,ID2,并对签名SIGN″进行验证。验证通过后,计算θ(SM3(ID1||ID2)),利用算法2,生成为用户证书签名的随机数IDR1。CFL证书生成中心为用户添加发证时间、发证单位、证书序列号、证书有限期信息ID3,计算θ(SM3(ID1||ID2||ID3)),利用算法2,生成为用户证书签名的随机数IDR2。利用算法3,为用户生成工作公私钥RAPK2,RASK2,再计算

IDSK=F(IDSKG,θ(SM3(ID1||ID2||ID3))),

IDPK=F′(IDPKG,θ(SM3(ID1||ID2||ID3))),

即生成为用户证书签名的标识公私钥对IDPK,IDSK。

10)CFL证书生成中心利用SM2,随机数IDR1,以RASK2对ID1||ID2生成签名SIGN1

11)CFL证书生成中心利用SM2,随机数IDR2、以IDSK对ID1||ID2||ID3||RAPK2生成签名SIGN2

12)CFL证书生成中心将ID1,SIGN1,ID3,RASK2,RAPK2,SIGN2用RAPK1进行加密发给用户。用户方将ID1,SIGN1,ID3,RASK2,RAPK2,SIGN2的密文写入Ukey后以RASK1在Ukey中解密。用户用RAPK2验证SIGN1,用IDPK验证SIGN2

13)用户将CU=ID1||ID2||SIGN1||ID3||RAPK2||SIGN2作为CFL证书,将HUFU2=ID1||SIGN1||ID3||RAPK2||SIGN2作为CFL证书虎符2。

14)用户删除Ukey中的临时工作公私钥对RASK1,RAPK1

算法5:CFL集中管理模式CFL证书认证算法

1)用户将自己的CFL证书虎符2以及虎符1合成自己的CFL证书CU

2)用户将自己的证书添加应用时的时间戳信息ID4,并计算SM3(ID1||ID2||ID3||RAPK2||ID4),用户利用SM2,以自己的工作私钥对其生成签名SIGN3,称为用户的动态CFL证书。并用应用服务器的工作公钥将ID1||ID2||ID3||RAPK2||ID4加密发给应用服务器。同时将SIGN1,SIGN2,SIGN3发给应用服务器。

3)应用服务器利用自己的工作私钥解密得用户的ID1||ID2||ID3||RAPK2||ID4

4)应用服务中对用户动态CFL证书进行三次签名验证。

5)应用服务器将自己的证书添加应用时的时间戳信息ID4,并计算SM3(ID1||ID2||ID3||RAPK2||ID4),ID2可以是应用服务器的相关专有信息,应用服务器利用SM2,以自己的工作私钥对其生成签名SIGN3,生成应用服务器的动态CFL证书并利用用户的工作公钥RAPK2加密发给用户。

6)用户用自己的工作私钥解密得应用服务器的动态CFL证书

7)用户对应用服务器动态CFL证书进行三次签名验证。

若用户需要的签名验证公私钥与加解密公私钥是两对的,则添加另外两组SM4加解密密钥,并生成两张CFL证书即可,其中一张用于加解密,另一张用于签名验证。

CFL集中管理模式安全性分析

命题1 CFL集中管理模式CFL证书生成中心为用户证书标识签名中的标识随机数k生成算法具有可恢复性。

证明由算法2的流程可知,标识随机数k是标识的函数,只要知道用户标识,CFL证书生成中心就可以计算标识随机数k=IDR。因此命题成立。

命题2 CFL集中管理模式CFL证书生成中心为用户生成的临时工作公私钥标识算法具有可恢复性。

证明由算法3的流程可知,CFL证书生成中心为用户生成的临时工作公私钥对是用户Ukey标识码IDUkey的函数,因此只要知道IDUkey,CFL证书生成中心就可以计算用户的临时工作公私钥对。因此命题成立。

命题3 CFL集中管理模式CFL证书生成中心为用户生成的临时工作公私钥的签名算法具有可恢复性。

证明由命题2以及签名中的随机数由IDUkey以及临时工作公钥决定,因此命题成立。

命题4 CFL集中管理模式实现方法CFL证书生成中心为用户生成工作公私钥标识算法具有可恢复性。

证明同样由算法3的流程可知,CFL证书生成中心为用户生成工作公私钥对也是用户标识的函数,因此只要知道用户标识,CFL证书生成中心就可以计算用户的工作公私钥对。因此命题成立。

命题5 CFL集中管理模式实现方法CFL证书生成中心为用户生成CFL证书具有可恢复性。

证明由算法4的流程可知,CFL证书生成中心为用户生成CFL证书的过程中产生的参数都是用户Ukey的标识码IDUkey或者是用户标识的函数。因此可知命题成立。

由命题1至命题5,可知CFL集中管理模式确实支持集中管理。

命题6 CFL集中管理模式实现方法是密钥不可恢复可证明安全的。

证明由于CFL用户证书中的所有参数以及临时工作公私钥都是基于CFL证书生成中心的密码参数经过公钥密码变换或者是分组密码算法给出的,没有直接透漏任何私钥信息,因此在理论上,攻击者的攻击方式都转化成为了相应的数学难题,即极微本原问题的攻击。故命题成立。

命题7在假设SM3为随机预言机的情况下,CFL集中管理模式实现方法是EUF-CMA(适应性选择消息攻击下具有存在性不可伪造性)安全的。

证明假设S′是攻击者的伪签名,则:

Pr(M=m,S=σ)=Pr(M=m)×Pi(S=σ)=122n.

对于合法的签名,因此:

|Pr(M=m,Σ=σ)-Pr(M=m,Σ=σ)|=|12n-122n|12n<12n.

|Pr(M=m,Σ=σ)-Pr(M=m,Σ=σ)|×nC<nC2n.

故命题成立。

命题8 CFL集中管理模式实现方法的CFL证书的签名标识私钥是一人一密的、用户的工作公钥对攻击者来说是一人一密的。

证明因为CFL证书的签名标识私钥、用户的工作公钥对都是用户标识的函数,因此易知命题成立。

命题9 CFL集中管理模式实现方法的CFL证书生成中心的签名私钥生成元集相比PKI、IBC具有高安全性。

证明由于CFL证书生成中心的签名私钥生成元集有L个,也就是说其可信根个数是PKI、IBC的L倍,故当L较大时,命题成立。

命题10 CFL集中管理模式实现方法含有动态认证、虎符认证属性。

证明由算法4、5的流程可知该命题成立。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号