一种面向对象的安全芯片及其加密方法与流程

文档序号:11693185阅读:285来源:国知局
一种面向对象的安全芯片及其加密方法与流程

本发明涉及信息安全技术领域,并且更具体地,涉及一种面向对象的安全芯片及其加密方法。



背景技术:

目前,各类信息采集系统信息集成度、融合度更高,系统依赖性更强,业务系统之间、业务系统与外界用户之间实时交互更加丰富与频繁,系统接入的终端数量庞大、类型多样,终端设备接入方式和接入环境比较复杂、并发量比较大,导致其运行环境日趋复杂,来自公网的信息安全威胁也日趋增多。安全芯片作为保护终端信息安全的重要介质,在身份识别、安全隔离、信息加密、完整性保护和抗抵赖等方面发挥着不可替代的重要作用。然而,现有安全芯片大多采用7816通信接口或单路串行外围通信接口spi(serialperipheralinterface),通信效率及并发处理能力相对较低,安全通信灵活性相对较弱,无法满足面向对象协议的安全传输要求,很难适应当前信息采集系统复杂的业务应用环境。因此,亟需研发面向对象的适用于多业务处理能力的安全芯片及其加密方法,提高信息采集系统的安全性。



技术实现要素:

为了解决背景技术存在的上述问题,本发明提供一种面向对象的安全芯片,所述安全芯片包括:

中央处理单元cpu,其用于协调安全芯片中除中央处理单元cpu以外的其他功能模块,使其正常工作;

对称密码算法单元,其采用国密对称密码算法对数据进行加解密运算;

非对称密码算法单元,其采用国密非对称密码算法,实现数字证书的签名、验签,计算信息摘要以及通信双方的密钥协商;

通信单元,其用于在安全芯片和安全隔离网关之间以及安全芯片和业务前置密码机之间进行数据通信,所述通信单元包括iso/iec7816通信接口和多个串行外围通信接口spi;

安全保护单元,通过电压监测、频率监测、存储器数据加密和总线加扰安全防护功能来保证安全芯片的正常运行;

数据存储单元,其用于存储固定密钥、数字证书、应用广播密钥和初始向量、外部认证密钥、内部认证密钥、本地加密计算mac密钥、本地解密验证mac密钥和文件保护密钥;

中断源,其用于向cpu提出事件的中断请求;

定时/计数器,其采用可编程芯片计数、定时,所述定时/计数器包括单地址链路协商计数器lsctr、终端主动上报计数器arctr和单地址应用协商计数器asctr;以及

随机数发生器,其用于产生随机数进行加解密运算。

进一步地,所述安全芯片适用于用电信息采集系统接入的终端。

进一步地,所述中央处理单元cpu是32位的。

进一步地,所述数据存储单元只用于存储密钥,经安全芯片加密运算后的数据存储在终端的数据存储区。

根据本发明的另一方面,本发明提供一种面向对象的安全芯片的加密方法,所述方法包括:

步骤一、安全芯片与安全隔离网关之间建立传输层加密链接,实现终端设备的接入认证和传输层数据的加密传输;

步骤二、安全芯片与业务前置密码机之间建立应用层加密链接,所述应用层加密链接用于对指令进行权限控制;

步骤三、安全芯片根据数据标识码对数据进行分类,将数据分为无安全性要求数据、低安全性要求数据、中安全性要求数据和高安全性要求数据,并根据数据分类配置数据安全模式和业务密钥后进行数据传输,其中,对于无安全性要求数据执行步骤四,对于低安全性要求数据执行步骤五,对于中安全性要求数据执行步骤六,对于高安全性要求数据执行步骤七;

步骤四、无安全性要求数据的安全模式为无需安全加密,数据以明文方式传输,在数据交互前无需配置密钥,即由安全芯片将待传输数据明文按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性和解码后按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码后发送给业务前置服务器,业务前置服务器根据明文数据执行操作;

步骤五、低安全性要求数据的安全模式为无需安全加密,但需要计算mac校验码,数据以明文加mac方式传输,在数据交互前需配置mac密钥,即由安全芯片采用应用层mac密钥计算数据mac校验码mac1,然后采用传输层mac密钥计算明文和mac1数据的mac校验码mac2,之后将明文、mac1和mac2数据按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性和mac2后,解码并按照应用层数据编码格式发送明文和mac1给业务前置密码机,业务前置密码机解码后验证mac1是否正确,如果正确将明文数据发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作;

步骤六、中安全性要求数据的安全模式为需要安全加密,但不需要计算mac校验码,数据以密文方式传输,在数据交互前需配置数据加密密钥,即由安全芯片采用应用层数据加密密钥加密数据明文为密文,然后采用传输层数据加密密钥加密后,按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性后解密该数据为经过应用层数据加密密钥加密后的数据,并按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码并解密密文数据为明文数据后发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作;

步骤七、高安全性要求数据的安全模式为需要安全加密和计算mac校验码,数据以密文加mac方式传输,在数据交互前需配置数据加密密钥和mac计算密钥,由安全芯片采用应用层数据加密密钥加密数据明文为密文1并用mac密钥计算得到mac校验码mac1,然后将密文1和mac1采用传输层数据加密密钥和mac密钥加密并计算mac校验码后得到密文2和mac2,将密文2和mac2按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到数据并验证数据完整性后,首先验证mac2是否正确,如果正确,解密密文2为密文1和mac1,然后将密文1和mac1按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码后首先验证mac1是否正确,如果正确,解密密文1为明文数据后发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作。

进一步地,所述加密方法适用于用电信息采集系统接入的终端的安全芯片。

进一步地,在所述加密方法中安全芯片、安全隔离网关和业务前置密码机中预埋用于密钥协商的数据加密密钥、mac计算密钥和数字证书。

进一步地,所述方法适用于所述业务前置密码机向安全芯片发送指令并处理数据的过程。

进一步地,所述加密方法的步骤一包括:

安全芯片组成报文1,将所述报文1发送给安全隔离网关,其中所述报文1包括密文信息eks1(r1||flag||lsctr)、消息鉴别码mac1以及签名信息s1,所述flag为加密算法及安全模式标识,所述lsctr为单地址链路协商计数器,所述密文信息eks1(r1||flag||lsctr)由安全芯片取随机数r1,加密r1||flag||lsctr后得到,所述消息鉴别码mac1由flag、lsctr和r1计算得到,安全芯片将flag、lsctr和随机数r1进行签名形成所述签名信息s1;

安全隔离网关接收报文1后,首先解密密文信息eks1(r1||flag||lsctr)得到随机数r′1、flag和lsctr,然后验证签名s1、lsctr的有效性和消息鉴别码mac1,验证通过说明安全芯片身份合法且数据未被篡改,生成随机数r2,计算ksnew=mixbits(r′1,r2),然后利用密钥衍生算法计算ksnew分别得到数据加密密钥、mac计算密钥和初始向量,并组成报文2发送给安全芯片,其中,所述报文2包括密文信息eks2(r'1||r2||flag||lsctr)、消息鉴别码mac2以及签名信息s2,所述密文信息eks2(r'1||r2||flag||lsctr)由安全隔离网关加密r'1||r2||flag||lsctr后得到,所述消息鉴别码mac2由flag、lsctr和r'1||r2计算得到,安全隔离网关将flag、lsctr和随机数r'1、r2进行签名形成所述签名信息s2;

安全芯片接收报文2后,首先解密密文信息eks2(r1||r2||flag||lsctr)得到随机数r″1、r′2、flag’和lsctr’,若r″1与r1、flag与flag’相同,说明安全隔离网关采用的密码算法和安全模式与安全芯片一致,则验证签名s2、lsctr’的有效性和消息鉴别码mac2,若验证通过,说明安全隔离网关身份合法,然后计算k′snew=mixbits(r1,r'2),利用密钥衍生算法计算k′snew分别得到数据加密密钥、mac计算密钥和初始向量。安全芯片组成报文3发送给安全隔离网关,其中,所述报文3包括消息鉴别码mac3,所述消息鉴别码mac3由数据加密密钥、mac计算密钥和初始向量计算得到;以及

安全隔离网关收到报文3后,首先验证mac3,若验证通过说明r'2与r2相同,安全芯片采用的密码算法和安全模式与安全隔离网关一致,双方产生的数据加密密钥、mac计算密钥和初始向量相同,则密钥协商成功,安全芯片与信息采集系统安全隔离网关之间建立传输层加密链接。

进一步地,所述加密方法的步骤二包括:

安全芯片组成报文1,将所述报文1发送给业务前置密码机,其中,所述报文1包括密文信息eks1(r1||flag||lsctr)、消息鉴别码mac1以及签名信息s1,所述flag为加密算法及安全模式标识,所述lsctr为单地址链路协商计数器,所述密文信息eks1(r1||flag||lsctr)由安全芯片取随机数r1,加密r1||flag||lsctr后得到,所述消息鉴别码mac1由flag、lsctr和r1计算得到,安全芯片将flag、lsctr和随机数r1进行签名形成所述签名信息s1;

业务前置密码机接收报文1后,首先解密密文信息eks1(r1||flag||lsctr)得到随机数r′1、flag和lsctr,然后验证签名s1、lsctr的有效性和消息鉴别码mac1,验证通过说明安全芯片身份合法且数据未被篡改,生成随机数r2,计算ksnew=mixbits(r′1,r2),然后利用密钥衍生算法计算ksnew分别得到数据加密密钥、mac计算密钥和初始向量,并组成报文2发送给安全芯片,所述报文2包括密文信息eks2(r'1||r2||flag||lsctr)、消息鉴别码mac2以及签名信息s2,所述密文信息eks2(r'1||r2||flag||lsctr)由业务前置密码机加密r'1||r2||flag||lsctr后得到,所述消息鉴别码mac2由flag、lsctr和r'1||r2计算得到,业务前置密码机将flag、lsctr和随机数r'1、r2进行签名形成所述签名信息s2;

安全芯片接收报文2后,首先解密密文信息eks2(r1||r2||flag||lsctr)得到随机数r″1、r′2、flag’和lsctr’,若r″1与r1、flag与flag’相同,说明业务前置密码机采用的密码算法和安全模式与安全芯片一致,则验证签名s2、lsctr’的有效性和消息鉴别码mac2,若验证通过,说明业务前置密码机身份合法,然后计算k′snew=mixbits(r1,r'2)利用密钥衍生算法计算k′snew分别得到数据加密密钥、mac计算密钥和初始向量,安全芯片组成报文3发送给业务前置密码机,其中,所述报文3包括消息鉴别码mac3,所述所述消息鉴别码mac3由数据加密密钥、mac计算密钥和初始向量计算得到;以及

前置密码机收到报文3后,首先验证mac3,若验证通过说明r'2与r2相同,安全芯片采用的密码算法和安全模式与业务前置密码机一致,双方产生的数据加密密钥、mac计算密钥和初始向量相同,则密钥协商成功,安全芯片与信息采集系统业务前置密码机之间建立应用层加密链接。

本发明所述的面向对象的安全芯片及其加密方法,结合采集终端本身的业务需求,对协议中的链路用户数据提供加解密或计算数据校验码功能,保证数据传输的私密性、防重放、防篡改、抗抵赖,并在在建立应用连接过程中提供安全认证、动态密钥协商功能,通过动态密钥实现数据加解密或计算数据校验码,提高了传输数据的安全性,而且根据对象标识灵活配置安全模式是明文、明文加数据校验码、密文还是密文加数据校验码,使信息安全防护和具体业务分离,提高系统数据传输的安全性和灵活性。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1是本发明具体实施方式的面向对象的安全芯片的结构图;

图2是本发明具体实施方式的面向对象的安全芯片加密方法的流程图;

图3是本发明具体实施方式的安全芯片与安全隔离网关之间建立传输层加密链接的方法的流程图;以及

图4是本发明具体实施方式的安全芯片与业务前置密码机之间建立应用层加密链接的方法的流程图。

具体实施方式

现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。

除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。

图1是本发明具体实施方式的面向对象的安全芯片的结构图,如图1所示,本发明所述的安全芯片100包括中央处理单元cpu101、对称密码算法单元102、非对称密码算法单元103、通信单元104、安全保护单元105、数据存储单元106、中断源107和定时/计数器108。

中央处理单元cpu101,其用于协调安全芯片中除中央处理单元cpu以外的其他功能模块,使其正常工作;

对称密码算法单元102,其采用国密对称密码算法对数据进行加解密运算;

非对称密码算法单元103,其采用国密非对称密码算法,实现数字证书的签名、验签,计算信息摘要以及通信双方的密钥协商;

通信单元104,其用于在安全芯片和安全隔离网关之间以及安全芯片和业务前置密码机之间进行数据通信,所述通信单元包括iso/iec7816通信接口和多个串行外围通信接口spi;

安全保护单元105,通过电压监测、频率监测、存储器数据加密和总线加扰安全防护功能来保证安全芯片的正常运行;

数据存储单元106,其用于存储固定密钥、数字证书、应用广播密钥和初始向量、外部认证密钥、内部认证密钥、本地加密计算mac密钥、本地解密验证mac密钥和文件保护密钥;

中断源107,其用于向cpu提出事件的中断请求;

定时/计数器108,其采用可编程芯片计数、定时,所述定时/计数器包括单地址链路协商计数器lsctr、终端主动上报计数器arctr和单地址应用协商计数器asctr;以及

随机数发生器109,其用于产生随机数进行加解密运算。

优选地,所述安全芯片适用于用电信息采集系统接入的终端。

优选地,所述中央处理单元cpu101是32位的。

优选地,所述数据存储单元106只用于存储密钥,经安全芯片加密运算后的数据存储在终端的数据存储区。

图2是本发明具体实施方式的面向对象的安全芯片加密方法的流程图。如图2所示,面对对象的安全芯片加密方法从步骤s201开始。

在步骤s201,安全芯片与安全隔离网关之间建立传输层加密链接,实现终端设备的接入认证和传输层数据的加密传输;

在步骤s202,安全芯片与业务前置密码机之间建立应用层加密链接,所述应用层加密链接用于对指令进行权限控制;

在步骤s203,安全芯片根据数据标识码对数据进行分类,将数据分为无安全性要求数据、低安全性要求数据、中安全性要求数据和高安全性要求数据,并根据数据分类配置数据安全模式和业务密钥后进行数据传输,其中,对于无安全性要求数据执行步骤四,对于低安全性要求数据执行步骤五,对于中安全性要求数据执行步骤六,对于高安全性要求数据执行步骤七;

在步骤s204,无安全性要求数据的安全模式为无需安全加密,数据以明文方式传输,在数据交互前无需配置密钥,即由安全芯片将待传输数据明文按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性和解码后按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码后发送给业务前置服务器,业务前置服务器根据明文数据执行操作;

在步骤s205,低安全性要求数据的安全模式为无需安全加密,但需要计算mac校验码,数据以明文加mac方式传输,在数据交互前需配置mac密钥,即由安全芯片采用应用层mac密钥计算数据mac校验码mac1,然后采用传输层mac密钥计算明文和mac1数据的mac校验码mac2,之后将明文、mac1和mac2数据按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性和mac2后,解码并按照应用层数据编码格式发送明文和mac1给业务前置密码机,业务前置密码机解码后验证mac1是否正确,如果正确将明文数据发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作;

在步骤s206,中安全性要求数据的安全模式为需要安全加密,但不需要计算mac校验码,数据以密文方式传输,在数据交互前需配置数据加密密钥,即由安全芯片采用应用层数据加密密钥加密数据明文为密文,然后采用传输层数据加密密钥加密后,按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到并验证数据完整性后解密该数据为经过应用层数据加密密钥加密后的数据,并按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码并解密密文数据为明文数据后发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作;

在步骤s207,高安全性要求数据的安全模式为需要安全加密和计算mac校验码,数据以密文加mac方式传输,在数据交互前需配置数据加密密钥和mac计算密钥,由安全芯片采用应用层数据加密密钥加密数据明文为密文1并用mac密钥计算得到mac校验码mac1,然后将密文1和mac1采用传输层数据加密密钥和mac密钥加密并计算mac校验码后得到密文2和mac2,将密文2和mac2按照传输层数据编码格式编码后发送给安全隔离网关,安全隔离网关收到数据并验证数据完整性后,首先验证mac2是否正确,如果正确,解密密文2为密文1和mac1,然后将密文1和mac1按照应用层数据编码格式发送给业务前置密码机,业务前置密码机解码后首先验证mac1是否正确,如果正确,解密密文1为明文数据后发送给业务前置服务器,业务前置服务器根据明文数据执行相应的操作。

优选地,所述加密方法适用于用电信息采集系统接入的终端的安全芯片。

优选地,在所述加密方法中安全芯片、安全隔离网关和业务前置密码机中预埋用于密钥协商的数据加密密钥、mac计算密钥和数字证书。

优选地,所述方法适用于所述业务前置密码机向安全芯片发送指令并处理数据的过程。

图3是本发明具体实施方式的安全芯片与安全隔离网关之间建立传输层加密链接的方法的流程图。如图3所示,所述安全芯片与安全隔离网关之间建立传输层加密链接的方法从步骤s301开始。

在步骤s301,安全芯片组成报文1,将所述报文1发送给安全隔离网关,其中所述报文1包括密文信息eks1(r1||flag||lsctr)、消息鉴别码mac1以及签名信息s1,所述flag为加密算法及安全模式标识,所述lsctr为单地址链路协商计数器,所述密文信息eks1(r1||flag||lsctr)由安全芯片取随机数r1,加密r1||flag||lsctr后得到,所述消息鉴别码mac1由flag、lsctr和r1计算得到,安全芯片将flag、lsctr和随机数r1进行签名形成所述签名信息s1;

在步骤s302,安全隔离网关接收报文1后,首先解密密文信息eks1(r1||flag||lsctr)得到随机数r′1、flag和lsctr,然后验证签名s1、lsctr的有效性和消息鉴别码mac1,验证通过说明安全芯片身份合法且数据未被篡改,生成随机数r2,计算ksnew=mixbits(r′1,r2),然后利用密钥衍生算法计算ksnew分别得到数据加密密钥、mac计算密钥和初始向量,并组成报文2发送给安全芯片,其中,所述报文2包括密文信息eks2(r'1||r2||flag||lsctr)、消息鉴别码mac2以及签名信息s2,所述密文信息eks2(r'1||r2||flag||lsctr)由安全隔离网关加密r'1||r2||flag||lsctr后得到,所述消息鉴别码mac2由flag、lsctr和r'1||r2计算得到,安全隔离网关将flag、lsctr和随机数r′1、r2进行签名形成所述签名信息s2;

在步骤s303,安全芯片接收报文2后,首先解密密文信息eks2(r1||r2||flag||lsctr)得到随机数r″1、r'2、flag’和lsctr’,若r″1与r1、flag与flag’相同,说明安全隔离网关采用的密码算法和安全模式与安全芯片一致,则验证签名s2、lsctr’的有效性和消息鉴别码mac2,若验证通过,说明安全隔离网关身份合法,然后计算k′snew=mixbits(r1,r'2),利用密钥衍生算法计算k′snew分别得到数据加密密钥、mac计算密钥和初始向量。安全芯片组成报文3发送给安全隔离网关,其中,所述报文3包括消息鉴别码mac3,所述消息鉴别码mac3由数据加密密钥、mac计算密钥和初始向量计算得到;以及

在步骤s304,安全隔离网关收到报文3后,首先验证mac3,若验证通过说明r'2与r2相同,安全芯片采用的密码算法和安全模式与安全隔离网关一致,双方产生的数据加密密钥、mac计算密钥和初始向量相同,则密钥协商成功,安全芯片与信息采集系统安全隔离网关之间建立传输层加密链接。

图4是本发明具体实施方式的安全芯片与业务前置密码机之间建立应用层加密链接的方法的流程图。如图所示,安全芯片与业务前置密码机之间建立应用层加密链接的方法从步骤s401开始。

在步骤s401,安全芯片组成报文1,将所述报文1发送给业务前置密码机,其中,所述报文1包括密文信息eks1(r1||flag||lsctr)、消息鉴别码mac1以及签名信息s1,所述flag为加密算法及安全模式标识,所述lsctr为单地址链路协商计数器,所述密文信息eks1(r1||flag||lsctr)由安全芯片取随机数r1,加密r1||flag||lsctr后得到,所述消息鉴别码mac1由flag、lsctr和r1计算得到,安全芯片将flag、lsctr和随机数r1进行签名形成所述签名信息s1;

在步骤s402,业务前置密码机接收报文1后,首先解密密文信息eks1(r1||flag||lsctr)得到随机数r′1、flag和lsctr,然后验证签名s1、lsctr的有效性和消息鉴别码mac1,验证通过说明安全芯片身份合法且数据未被篡改,生成随机数r2,计算ksnew=mixbits(r′1,r2),然后利用密钥衍生算法计算ksnew分别得到数据加密密钥、mac计算密钥和初始向量,并组成报文2发送给安全芯片,所述报文2包括密文信息eks2(r'1||r2||flag||lsctr)、消息鉴别码mac2以及签名信息s2,所述密文信息eks2(r'1||r2||flag||lsctr)由业务前置密码机加密r'1||r2||flag||lsctr后得到,所述消息鉴别码mac2由flag、lsctr和r'1||r2计算得到,业务前置密码机将flag、lsctr和随机数r′1、r2进行签名形成所述签名信息s2;

在步骤s403,安全芯片接收报文2后,首先解密密文信息eks2(r1||r2||flag||lsctr)得到随机数r″1、r'2、flag’和lsctr’,若r″1与r1、flag与flag’相同,说明业务前置密码机采用的密码算法和安全模式与安全芯片一致,则验证签名s2、lsctr’的有效性和消息鉴别码mac2,若验证通过,说明业务前置密码机身份合法,然后计算k′snew=mixbits(r1,r'2)利用密钥衍生算法计算k′snew分别得到数据加密密钥、mac计算密钥和初始向量,安全芯片组成报文3发送给业务前置密码机,其中,所述报文3包括消息鉴别码mac3,所述所述消息鉴别码mac3由数据加密密钥、mac计算密钥和初始向量计算得到;以及

在步骤s404,前置密码机收到报文3后,首先验证mac3,若验证通过说明r'2与r2相同,安全芯片采用的密码算法和安全模式与业务前置密码机一致,双方产生的数据加密密钥、mac计算密钥和初始向量相同,则密钥协商成功,安全芯片与信息采集系统业务前置密码机之间建立应用层加密链接。

通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该【装置、组件等】”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。

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