通过标识密码算法生成具有生命周期密钥的方法与流程

文档序号:14717645发布日期:2018-06-16 01:53阅读:835来源:国知局

本发明涉及一种密钥生成方法,属于组网或拓扑组网(含区块链中的载体识别)保密通信技术领域。



背景技术:

在保密通信中,密钥的发放和保存至关重要。经过多年的实践证明,以软密钥形式存放的密钥,其安全级别较硬件在安全芯片中封存密钥的方式相比要更低。但硬件采用的在安全芯片中封存密钥的方式,每次通话过程中需要随时用硬件跟移动终端结合做保障,来回的插拔或者将安全芯片固化在移动终端的电路中,影响了用户使用的便捷性。



技术实现要素:

为了确保密钥的安全级别不降低,又解决用户的使用便捷性,本发明克服现有技术的缺陷,提供一种具有一定的生命周期的密钥生成方法,使得用户密钥的安全程度尽量不降低的同时,方便用户的自然使用习惯。

为解决上述技术问题,本发明采用的技术方案如下:

一种通过标识密码算法生成具有生命周期密钥的方法,其特征是,采用标识密码算法生成公私密钥对,将密钥对合成到硬件安全载体中,密钥对包括主标识,主标识为设备模块ID;

用户有加密通信需求时,把硬件安全载体插在设备模块上,调用设备模块上的一个可用于生成个人凭证的APP签发一个个人凭证,保存在设备模块中;

加密通信的被叫方把个人凭证发给呼叫方,呼叫方验证收到的该个人凭证的签名,并通过其他方式获取对方的设备模块ID并比对收到的个人凭证中的ID是否一致,验证通过后,呼叫方采用该个人凭证中按照迪菲-赫尔曼算法生成的共享参数p、a与呼叫方需要加密通信的数据一起生成通信密钥。

设备模块ID采用手机号码、芯片序列号,或者其他可以代表模块唯一性的序号。

密钥对中还包括辅标识。

辅标识包括密钥有效期数据。

该个人凭证内容包括:

主标识||签名辅标识||p||a||时间||签名结果,其中p、a是按照迪菲-赫尔曼算法生成的共享参数。

签名结果为密钥对私钥的签名。

APP签发个人凭证的时间为一预设时间,到期时再签一条或者在被呼叫时临时签发。

本发明所达到的有益效果:

本发明提供一种具有一定的生命周期的密钥生成方法,以硬件安全芯片密钥为主,软密钥为辅,形成硬、软密钥相辅相成的密钥生成与保护方法,使得用户密钥的安全程度尽量不降低的同时,方便用户的自然使用习惯。

附图说明

图1是本发明所依据的原理之一的算法原理图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

本方案采用迪菲-赫尔曼算法思路作为本方法的基础算法应用思路之一。另外,也可采用在凭证中加上加密辅标识,从凭证中取出主、辅标识计算出对方加密公钥,用加密公钥加密一个会话密钥给对方,对方用加密私钥解开就获得会话密钥,实现可控加密通信。即:通过公共信道交换一个信息,就可以创建一个可以用于在公共信道上安全通信的共享密钥。

迪菲-赫尔曼(Diffie-Hellman)密钥交换算法原理流程图如图1所示,Diffie-Hellman密钥交换算法的有效性依赖于计算离散对数的难度。该算法描述如下:

1、有两个全局公开的参数,一个素数p和一个整数a,a是p的一个原根。

2、假设用户A和B希望交换一个密钥,用户A选择一个作为私有密钥的随机数XA<p,并计算公开密钥YA=a^XA mod p。用户A对XA的值保密存放而使YA能被B公开获得。类似地,用户B选择一个私有的随机数XB<p,并计算公开密钥YB=a^XB mod p。用户B对XB的值保密存放而使YB能被A公开获得。

3、用户A产生共享私密密钥的计算方式是K = (YB)^XA mod p。同样,用户B产生共享秘密密钥的计算是K = (YA)^XB mod p。这两个计算产生相同的结果。

针对该算法的应用过程是:要启动安全通讯,通信双方两端必须首先得到相同的共享密钥(主密钥),但共享密钥不能通过网络相互发送,因为这种做法极易泄密。通信双方通过公开或半公开交换一些准备用来生成密钥的"材料数据",在彼此交换过生成密钥的"材料数据"后,通信双方两端可以各自生成出完全一样的共享密钥。在任何时候,通信双方都绝不交换真正的密钥。

通信双方交换的密钥生成"材料数据",长度不等,"材料数据"长度越长,所生成的密钥强度也就越高,密钥破译就越困难。

根据迪菲-赫尔曼算法原理,结合标识密码的算法特性原理,本发明设计了针对设备模块通信的加密密钥生成方法,使得通过该方法的应用,能够生成具有一定的安全生命周期的共享密钥。用户在使用时无需时刻插入硬件安全载体进行实时连接,大大方便用户的使用,同时确保密钥的安全。该方法适用于移动数据通信(语音、数据、传真等)。

但在现代实际应用中,这种单一的算法方法仍然有安全弊端,为此本发明设计出以硬件安全芯片密钥为主,软密钥为辅,制定一定安全生命周期的软密钥,形成硬、软密钥相辅相成的密钥生成与保护方法。

本发明采用标识密码算法生成基于标识密码算法的公私密钥对,按照国家商用密码管理相关规范把密钥对合成到硬件安全载体中(假设硬件安全载体定义为CKey,且双方都各有一个CKey),密钥对的主标识为设备模块ID(如手机号码),辅标识包括密钥有效期等数据。A用户有加密通信需求时,把CKey插在设备模块上,调用设备模块上的一个可用于生成个人凭证的专用APP签发一个A用户的个人凭证,保存在设备模块中备用。

该A用户的个人凭证内容包括:

主标识(设备模块ID)||签名辅标识||p||a||时间||签名结果(密钥对私钥的签名),其中p、a是按照迪菲-赫尔曼算法生成的共享参数。当加密通信的呼叫方要求加密通信时,加密通信的被叫方把个人凭证发给呼叫方,呼叫方验证收到的该个人凭证中的密钥对私钥的签名,并通过认证中心服务器(如数字证书认证中心的RA,即证书注册审批系统)、或者在自身设备中预置对方的设备模块ID等方式,获取对方的设备模块ID并比对收到的个人凭证中的ID是否一致,验证通过后,呼叫方采用该个人凭证中p、a参数与呼叫方需要加密通信的数据一起生成通信密钥。在获取通信密钥后,双方的通信即采用对称加密的方式,开始进行加密通信。

上述方法中,采用签名凭证,并比对凭证中的设备ID,可防止中间人假冒ID进行的攻击,保证了安全性。

签发个人凭证时间可设定在几小时之内,到期再签一条;或者也可在被呼叫时临时签发。

B用户在接收到数据后,对A用户的个人凭证进行验证,验证的方法就是采用非对称算法进行验证,对应我国国密算法就是SM2或SM9算法。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1