一种对称密钥在线更新的方法

文档序号:7812862阅读:197来源:国知局
一种对称密钥在线更新的方法
【专利摘要】本发明所提供的一种对称密钥在线更新的方法,包括步骤:A、客户端发起密钥更新请求;B、服务端判断与客户端的上次密钥更新是否正确,是则进入步骤C,否则进入步骤D;C、所述服务端与所述客户端依据本次密钥进行密钥更新;D、所述服务端与所述客户端依据上次密钥进行密钥更新。由上,在更新时,双方并不确认本次更新是否成功,而是在下次使用密钥判断时才判断本次密钥是否更新成功,即便在密钥更新过程中出现客户端与服务端密钥不一致的情况时,也不影响下一次的密钥更新操作以及操作业务的进行。
【专利说明】一种对称密钥在线更新的方法

【技术领域】
[0001]本发明涉及信息安全【技术领域】,特别涉及一种对称密钥在线更新的方法。

【背景技术】
[0002]目前在很多的业务系统中,客户端与后台之间传输的敏感信息的机密性和完整性保护使用的主要是对称密钥体系,基于安全性的考虑,对称密钥需要定期进行更新。
[0003]对称密钥的更新方式包括离线和在线两种。
[0004]离线更新包括后台定期将密钥更新后,派人到客户端进行更新。
[0005]在线更新包括客户端定期在线从后台获取新的密钥后,更新本地密钥。首次采用在线更新的方式,需要通过离线方式将密钥安全的输入到客户端,之后进行在线密钥更新时,后台会利用前一次的密钥保护新的密钥进行下发,客户端利用前一次的密钥解密后就可以将新的密钥导入到客户端中。
[0006]如果采用离线更新密钥的方式,则每次更新密钥会投入非常多的人力来进行,特别是在客户端数量比较庞大的情况下,且客户端在密钥更新过程中不能再进行任何业务操作。
[0007]如果采用在线更新密钥的方式,在密钥更新后,客户端与服务端都会通过握手信息确定是否同步成功,若不成功,则回退至密钥更新前的状态。在实际情况中,可能出现网络或者其他原因,客户端无法通知服务端此次密钥更新是否成功,则会出现客户端未更新密钥而服务端更新密钥的情况,导致客户端与后台的密钥出现不一致的情况。


【发明内容】

[0008]有鉴于此,本发明的主要目的在于,提供一种对称密钥在线更新的方法,在更新时,双方并不确认本次更新是否成功,而是在下次使用密钥判断时才判断本次密钥是否更新成功,即便在密钥更新过程中出现客户端与服务端密钥不一致的情况时,也不影响下一次的密钥更新操作以及操作业务的进行。
[0009]所述对称密钥在线更新的方法包括步骤:
[0010]A、客户端发起密钥更新请求;
[0011]B、服务端判断与客户端的上次密钥更新是否正确,是则进入步骤C,否则进入步骤D ;
[0012]C、所述服务端与所述客户端依据本次密钥进行密钥更新;
[0013]D、所述服务端与所述客户端依据上次密钥进行密钥更新。
[0014]由上,在更新时,双方并不确认本次更新是否成功,而是在下次使用密钥判断时才判断本次密钥是否更新成功,即便在密钥更新过程中出现客户端与服务端密钥不一致的情况时,也不影响下一次的密钥更新操作以及操作业务的进行。
[0015]可选的,步骤B中服务端判断与客户端的上次密钥更新是否正确包括:
[0016]客户端发送客户端当前密钥校验值CKVi至服务端;
[0017]所述服务端判断客户端当前密钥校验值CKVi与服务端的当前密钥校验值SKVi是否相等。
[0018]可选的,步骤B中服务端判断与客户端的上次密钥更新是否正确还包括:
[0019]所述服务端判断客户端当前密钥校验值CKVi与服务端的上次密钥校验值SKVp1是否相等。
[0020]由上,在下次使用密钥判断时才判断本次密钥是否更新成功。
[0021]可选的,所述步骤C包括:
[0022]Cl:所述服务端生成一密钥SKmw ;
[0023]C2:所述服务端依据服务端当前密钥SKi加密所生成的密钥SKnew,以计算得出新密钥 SKitoew;
[0024]C3:所述服务端将所生成的密钥SKmw替换当前密钥SKi ;
[0025]C4:所述服务端将所述新密钥SKitoew发送至客户端;
[0026]C5:所述客户端采用客户端当前密钥CKi对所述新密钥Skitew解密,得到服务端所生成的密钥SKnrat,将其替换当前密钥CKitj
[0027]由上,客户端与服务端正常进行对称密钥在线更新。
[0028]可选的,所述步骤Cl还包括:依据所生成密钥SKnew计算其密钥校验值SKVnew ;
[0029]所述步骤C3还包括:将所述密钥校验值SKVnrat替换所述服务端的当前密钥校验值SKV1
[0030]可选的,所述步骤D包括:
[0031]Dl:服务端将上次密钥SK 替换本次密钥SK i ;
[0032]D2:所述服务端生成一密钥SKnew ;
[0033]D3:所述服务端依据所述上次密钥SK η加密所述生成的密钥SKnew,计算得出新密
Sk1-Priew ;
[0034]D4:将生成所述密钥SKnew替换当前密钥SKi ;
[0035]D5:服务端将所述新密钥Slvitoew发送至客户端;
[0036]D6:所述客户端采用客户端当前密钥CKi对所述新密钥Skpltoew解密,得到服务端所生成的密钥SKnrat,将其替换当前密钥CKitj
[0037]由上,即便在密钥更新过程中出现客户端与服务端密钥不一致的情况时,也不影响下一次的密钥更新操作以及操作业务的进行。
[0038]可选的,所述步骤D2还包括:依据所生成密钥SKnew计算其密钥校验值SKVnew ;
[0039]所述骤D4还包括:将所述密钥校验值SKVnrat替换所述服务端的当前密钥校验值SKV1
[0040]可选的,所述密钥校验值为密钥经过HASH算法运算后的结果。

【专利附图】

【附图说明】
[0041 ] 图1为本发明的流程图。

【具体实施方式】
[0042]本发明所提供的对称密钥在线更新的方法,密钥更新时,双方并不确认本次更新是否成功,而是在下次使用密钥判断时才判断本次密钥是否更新成功,即便在密钥更新过程中出现客户端与服务端密钥不一致的情况时,也不影响下一次的密钥更新操作以及操作业务的进行。
[0043]客户端进行出厂设置时,服务端会通过离线方式将初始密钥(FSK)下发给客户端,客户端导入初始密钥(FSK)。此时,客户端的当前密钥(Cki)、服务端的上次密钥(SKp1)和服务端的当前密钥(SKi)均与所述初始密钥(FSK)相同。客户端的当前密钥校验值(CKVi)、服务端的上次密钥校验值(SKV H)以及服务端的当前密钥校验值(SKVi)相同。
[0044]所述密钥校验值为密钥经过HASH算法运算后的结果,即SKVi = H(SKi),SKV =H (SKh),CKVi = H (CKi),式中 H 表示 HASH 算法。
[0045]本发明所提供的对称密钥在线更新的方法流程图如图1所示,包括步骤:
[0046]SlO:客户纟而发起'钥更新。
[0047]客户端根据策略定期进行密钥更新,密钥更新请求同时会将当前密钥校验值(CKVi)发给服务端。
[0048]S20:服务端判断上次密钥更新是否正确。
[0049]服务端根据客户端的当前密钥校验值(CKVi)可以判断出之前的密钥更新操作是否正常。例如当客户端的当前密钥校验值(CKVi)与服务端的当前密钥校验值(SKVi)相等,则之前密钥更新操作正常,进入步骤S30 ;反之当客户端的当前密钥校验值(CKVi)与服务端的上次密钥校验值(SKV H)相等,则之前密钥更新操作出现异常,进入步骤S40。
[0050]S30:采用本次密钥在线更新密钥。
[0051]由于客户端的当前密钥校验值(CKVi)与服务端的当前密钥校验值(SKVi)相等,则可推导出客户端的当前密钥(CKi)与服务端的当前密钥(SKi)同样也相等。
[0052]服务端对应生成一密钥(SKnew),并采用HASH算法计算该密钥校验值(SKVnew),并依据服务端的当前密钥(SKi)加密所生成的密钥(SKnew),以计算得出新密钥(Skiitew)tj进一步的,通过HASH算法计算得出与所述新密钥相对应的新密钥校验值(SKVitoew),SKVitoew =H (Sk^new) ο
[0053]服务端将所生成的密钥(SKnrat)替换当前密钥(SKi),并将计算得出的密钥校验值(SKVnew)替换当前密钥校验值(SKVi)。此后,服务端将所述新密钥(Skitorat)以及新密钥相对应的新密钥校验值(SKViitew)在线发送至客户端。
[0054]客户端接收到所述新密钥(Skitew),采用客户端当前密钥(CKi)对所述新密钥(Skitaew)解密,得到服务端所生成的密钥(SKnJ,将其替换当前密钥(CKi)15
[0055]由上,服务端与客户端的密钥更新完成。
[0056]S40:采用上次密钥在线更新密钥。
[0057]如果之前的密钥更新操作出现异常,则服务端更新密钥成功,但是客户端因为网络或者其他原因更新密钥失败,客户端的当前密钥校验值(CKVi)与服务端的上次密钥校验值(SKV H)相等,则可推导出客户端的当前密钥(CKi)与服务端的上次密钥(SK H)同样也相等,服务端将上次密钥(SK H)替换本次密钥(SK i)。
[0058]服务端对应生成一密钥(SKnew)并采用HASH算法计算该密钥校验值(SKVnew),依据服务端的上次密钥(SK H)加密所生成的密钥(SKnew),以计算得出新密钥(SkgtoJ。进一步的,通过HASH算法计算得出与所述新密钥相对应的新密钥校验值(SKVplitaew),SKVpltoew =H (Sk1-Pnew)。
[0059]服务端将所生成的密钥(SKnew)替换当前密钥(SKi),并将计算得出的密钥校验值(SKVnrat)替换当前密钥校验值(SKVi),将所述新密钥(Skplitew)以及新密钥校验值(SKVi^ltaew)在线发送至客户端。
[0060]客户端接收到所述新密钥(Sk^J,采用最新更新的密钥,即当前密钥(CKi)对所述新密钥(Sk ^ltaew)解密,同样可得到服务端所生成的密钥(SKmw),将其替换当前密钥(CKi),由此服务端与客户端的密钥更新完成。
[0061]采用本发明上述方法,如果在密钥更新操作出现异常的情况下,服务端和客户端的当前密钥是不一致的,在使用密钥进行业务操作的时候,首先会使用当前密钥进行业务操作,如果验证失败,再使用之前密钥进行密钥操作,由于客户端的当前密钥要么与服务端的当前密钥一致,要么与服务端的之前密钥一致,因此经过最多两次运算,能够保证无论密钥更新操作是否正常,后续的业务操作都能正常进行。由此双方同步更新密钥后并不进行确认是否同步更新成功,免去了在密钥更新过程中出现客户端与服务端密钥不一致的情况时,影响下一次的密钥更新操作以及操作业务的进行的弊端。
[0062]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明。总之,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种对称密钥在线更新的方法,其特征在于,包括步骤: A、客户端发起密钥更新请求;B、服务端判断与客户端的上次密钥更新是否正确,是则进入步骤C,否则进入步骤D; C、所述服务端与所述客户端依据本次密钥进行密钥更新; D、所述服务端与所述客户端依据上次密钥进行密钥更新。
2.根据权利要求1所述的方法,其特征在于,步骤B中服务端判断与客户端的上次密钥更新是否正确包括: 客户端发送客户端当前密钥校验值CKVi至服务端; 所述服务端判断客户端当前密钥校验值CKVi与服务端的当前密钥校验值SKVi是否相坐寸ο
3.根据权利要求2所述的方法,其特征在于,步骤B中服务端判断与客户端的上次密钥更新是否正确还包括: 所述服务端判断客户端当前密钥校验值CKVi与服务端的上次密钥校验值SKVg是否相坐寸O
4.根据权利要求1所述的方法,其特征在于,所述步骤C包括: Cl:所述服务端生成一密钥SKnew ; C2:所述服务端依据服务端当前密钥SKi加密所生成的密钥SKn?,以计算得出新密钥qv.C3:所述服务端将所生成的密钥SKnrat替换当前密钥SKi ; C4:所述服务端将所述新密钥SKitoew发送至客户端; C5:所述客户端采用客户端当前密钥CKi对所述新密钥Skitew解密,得到服务端所生成的密钥SKnrat,将其替换当前密钥CKitj
5.根据权利要求4所述的方法,其特征在于,所述步骤Cl还包括:依据所生成密钥SKnew计算其密钥校验值SKVmw ; 所述步骤C3还包括:将所述密钥校验值SKVmw替换所述服务端的当前密钥校验值SKV1
6.根据权利要求1所述的方法,其特征在于,所述步骤D包括: Dl:服务端将上次密钥SK η替换本次密钥SK i ; D2:所述服务端生成一密钥SKnew ; D3:所述服务端依据所述上次密钥SK η加密所述生成的密钥SKnew,计算得出新密钥Sk1-Pnew ; D4:将生成所述密钥SKnrat替换当前密钥SKi ; D5:服务端将所述新密钥Skplftiew发送至客户端; D6:所述客户端采用客户端当前密钥CKi对所述新密钥Slvitoew解密,得到服务端所生成的密钥SKnrat,将其替换当前密钥CKitj
7.根据权利要求6所述的方法,其特征在于,所述步骤D2还包括:依据所生成密钥SKnew计算其密钥校验值SKVmw ; 所述骤D4还包括:将所述密钥校验值SKVnrat替换所述服务端的当前密钥校验值SKVitl
8.根据权利要求5或7所述的方法,其特征在于,所述密钥校验值为密钥经过HASH算法运算后的结果。
【文档编号】H04L9/08GK104168110SQ201410433066
【公开日】2014年11月26日 申请日期:2014年8月28日 优先权日:2014年8月28日
【发明者】管延军, 蒋红宇, 安晓江 申请人:北京海泰方圆科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1