全文摘要
本发明实施例公开了一种密钥管理方法,应用于密码机,该方法包括:获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;获取安全芯片对第一密钥密文解密得到的第一密钥;使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。本发明实施例还公开了对应的密钥调用方法和密码机。通过本发明实施例的密钥管理和调用方法以及密码机,能够在确保工作效率的同时,极大地减轻密码机安全芯片的负担。
主设计要求
1.一种密钥管理方法,应用于密码机,该方法包括:获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;获取安全芯片对第一密钥密文解密得到的第一密钥;使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
设计方案
1.一种密钥管理方法,应用于密码机,该方法包括:
获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;
获取安全芯片对第一密钥密文解密得到的第一密钥;
使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
2.如权利要求1所述的方法,其特征在于,获取第一密钥密文包括:
从所述外存储器获取第一密钥密文。
3.如权利要求1或2所述的方法,其特征在于,在获取第一密钥密文之前,所述方法还包括:
在安全芯片内生成并存储第三密钥;
将第一密钥传递给安全芯片,从安全芯片获得使用第三密钥对第一密钥进行加密生成的第一密钥密文。
4.如权利要求1或2所述的方法,其特征在于,在获取第一密钥密文之前,所述方法还包括:
在安全芯片内生成并存储第三密钥;
在安全芯片内生成第一密钥,并从安全芯片获得使用第三密钥对第一密钥进行加密生成的第一密钥密文。
5.如权利要求3所述的方法,其特征在于,生成第一密钥包括:在密码机的内存储器中生成第一密钥。
6.一种密码机,其特征在于,包括:
外存储器;
处理器,其配置为获取第一密钥密文传递给安全芯片,使用从安全芯片返回的第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到所述外存储器中;
安全芯片,其配置为对第一密钥密文解密得到第一密钥。
7.一种密码机,其特征在于,包括处理器,其配置为执行预定的计算机可执行指令以实施如权利要求1-5中任一项所述的密钥管理方法。
8.一种密钥调用方法,应用于密码机,该方法包括:
获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;
获取安全芯片对第一密钥密文解密得到的第一密钥;
从密码机的外存储器获取第二密钥密文,使用第一密钥对第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算。
9.如权利要求8所述的方法,其特征在于,获取第一密钥密文包括:
从所述外存储器获取第一密钥密文。
10.一种密码机,其特征在于,包括:
外存储器;
处理器,其配置为获取第一密钥密文传递给安全芯片,使用从安全芯片返回的第一密钥对从所述外存储器获取的第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算;
安全芯片,其配置为对第一密钥密文解密得到第一密钥。
11.一种密码机,其特征在于,包括处理器,其配置为执行预定的计算机可执行指令以实施如权利要求7或8所述的密钥管理方法。
设计说明书
技术领域
本发明涉及信息安全技术领域,特别涉及一种密钥管理方法、密钥调用方法及密码机。
背景技术
在密码机体系中,由安全芯片存储密钥等重要数据并进行关键的密码学运算以确保较高的安全性。
然而,当密码学运算负担较大或使用的安全芯片性能不是很高时,密码机就可能成为整个密码系统的性能瓶颈,同时,安全芯片若长期持续在较大压力下工作,芯片故障的概率也会提升。
发明内容
有鉴于此,本发明实施例提出了一种密钥管理方法、密钥调用方法及密码机,能够在密码学运算量较大时减低密码机安全芯片的工作负担,同时确保安全性和工作效率。
为此,本发明实施例提出了一种密钥管理方法,应用于密码机,该方法包括:获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;获取安全芯片对第一密钥密文解密得到的第一密钥;使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
可选地,获取第一密钥密文包括:从所述外存储器获取第一密钥密文。
可选地,在获取第一密钥密文之前,所述方法还包括:在安全芯片内生成并存储第三密钥;将第一密钥传递给安全芯片,从安全芯片获得使用第三密钥对第一密钥进行加密生成的第一密钥密文。
可选地,在获取第一密钥密文之前,所述方法还包括:在安全芯片内生成并存储第三密钥;在安全芯片内生成第一密钥,并从安全芯片获得使用第三密钥对第一密钥进行加密生成的第一密钥密文。
可选地,生成第一密钥包括:在密码机的内存储器中生成第一密钥。
本发明实施例还提出了一种密码机,包括:外存储器;处理器,其配置为获取第一密钥密文传递给安全芯片,使用从安全芯片返回的第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到所述外存储器中;安全芯片,其配置为对第一密钥密文解密得到第一密钥。
本发明实施例同时提出了一种密码机,包括处理器,其配置为执行预定的计算机可执行指令以实施上述任一实施例的密钥管理方法。
本发明实施例相应地提出了一种密钥调用方法,应用于密码机,该方法包括:获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;获取安全芯片对第一密钥密文解密得到的第一密钥;从密码机的外存储器获取第二密钥密文,使用第一密钥对第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算。
可选地,获取第一密钥密文包括:从所述外存储器获取第一密钥密文。
本发明实施例还提出了一种密码机,包括:外存储器;处理器,其配置为获取第一密钥密文传递给安全芯片,使用从安全芯片返回的第一密钥对从所述外存储器获取的第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算;安全芯片,其配置为对第一密钥密文解密得到第一密钥。
本发明实施例同时提出了一种密码机,包括处理器,其配置为执行预定的计算机可执行指令以实施上述任一实施例的密钥管理方法。
通过本发明实施例的密钥管理方法、密钥调用方法和密码机,将第二密钥通过利用安全芯片解密才能得到的第一密钥进行加密后存储到密码机的外存储器中,使得即使密码学运算负担较大时,以及\/或者即使使用中低端的安全芯片,也不会对安全芯片造成太大的计算压力,同时能够保持较高的安全性。
附图说明
图1为本发明一个实施例的密钥管理方法的示意性流程图;
图2为本发明另一个实施例的密钥管理方法的示意性流程图;
图3为本发明一个实施例的密码机的结构示意框图;
图4为本发明一个实施例的密钥调用方法的示意性流程图;
图5为本发明一个实施例的密码机的结构示意框图;
图6为本发明一个实施例中的整体密钥体系架构的示意图。
具体实施方式
下面参照附图对本发明各个实施例进行详细说明。
图1为本发明一个实施例的密钥管理方法的示意性流程图,本发明实施例的密钥管理方法应用于密码机。
如图1所示,本发明实施例的密钥管理方法包括:
S11、获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;
S12、获取安全芯片对第一密钥密文解密得到的第一密钥;
S13、使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
密码机是具有加解密、数字签名、身份认证、随机数生成等功能的服务设备,可用于对应用系统的敏感业务数据进行加密和解密处理,或用于对用户所请求的密码学任务进行处理。
密码机可以包括处理器、安全芯片、内存储器和外存储器。处理器例如可以使用通用CPU来实现,用于指令的生成或处理。安全芯片中集成有密码学算法,可用于对数据进行上述加解密等处理。内存储器可用于临时存储处理器进行处理时所需的指令、参数、数据等,外存储器一般用来预先存储处理器上需要运行的程序指令。
第二密钥为安全芯片对应用系统业务或者用户的密码学任务请求进行处理时使用的密钥,当应用系统业务不止一个或者请求密码学任务的用户不止一个时,第二密钥可以包括对应数量的多个密钥。例如安全芯片使用第二密钥中的与用户A对应的密钥A对用户A所请求的密码学任务进行诸如加解密、数字签名等密码学处理,使用第二密钥中的与用户B对应的密钥B对用户B所请求的密码学任务进行处理,等等。
本发明实施例中为了在确保安全性的同时降低安全芯片的负担,将每个第二密钥(即现有技术中存储在安全芯片中的密钥)用第一密钥加密后存储在密码机的外存储器中,并且将用于加密第二密钥的第一密钥通过安全芯片使用预先内置的密钥进行加密后存储在密码机的具备存储功能的模块中,或者存储在与密码机外接或通信的具备存储功能的设备中。
在本发明实施例中,当需要将上述第二密钥设置\/安装到密码机中时,密码机的处理器从密码机的存储了第一密钥密文的存储模块或者与密码机外接或通信的存储了第一密钥密文的设备中读取第一密钥密文,将第一密钥密文传递给密码机的安全芯片,安全芯片使用预先内置的密钥对第一密钥密文进行解密后将解密得到的第一密钥返回给处理器或者输出到密码机的内存储器中,处理器随后使用第一密钥对需要设置\/安装到密码机中的一个或多个第二密钥分别进行加密得到一个以上第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
当需要使用第二密钥时,密码机的处理器从密码机的外存储器读取所需的第二密钥密文,从密码机的存储了第一密钥密文的存储模块或者与密码机外接或通信的存储了第一密钥密文的设备中读取第一密钥密文并利用安全芯片解密得到第一密钥,用第一密钥对第二密钥密文解密得到第二密钥,并使用第二密钥对应用系统的业务或者用户提交的密码学任务请求进行相应的处理。
通过本发明实施例的密钥管理方法,将需要设置\/安装到密码机中的第二密钥通过利用安全芯片解密才能得到的第一密钥进行加密后存储到密码机的外存储器中,安全芯片仅需负责对用于加解第二密钥的第一密钥的密文进行解密处理,而无需负责存储第二密钥以及对第二密钥加密生成密文的工作,使得即使需要设置\/安装的第二密钥较多,或密码学运算负担较大时,或即使使用中低端的安全芯片,也不会对安全芯片造成太大的计算压力,同时由于用来加密第二密钥的第一密钥的密文只能由安全芯片解密得到第一密钥,因此整体上能够保持较高的安全性。
在本发明一些实施例中,密码机的处理器在利用密码机的安全芯片对第一密钥进行加密生成第一密钥密文后,可以将第一密钥密文存储在密码机的外存储器中,则当需要将第二密钥设置\/安装到密码机中时,密码机的处理器从密码机的外存储器中读取第一密钥密文,并利用安全芯片对第一密钥密文解密得到第一密钥以对第二密钥进行加密。在本实施例中,密码机的存储第一密钥密文的外存储器可以与密码机的存储第二密钥密文的外存储器为同一存储模块,也可以为不同存储模块。例如,第一密钥密文和第二密钥密文可以均存储在密码机内的非易失性存储器中,诸如SSD或ROM等;或者第一密钥密文可以存储在管理员的便携存储设备中,第二密钥密文可以存储在密码机内的非易失性存储器中。此外,第一密钥密文还可以存储在能够通过通信网络与密码机进行通信的设备中。同样由于第一密钥密文只能由密码机的安全芯片解密得到第一密钥,因此第一密钥密文的存储位置不会影响本发明实施例的密钥管理方法的安全性。
图2为本发明另一个实施例的密钥管理方法的示意性流程图。
如图2所示,本发明实施例的密钥管理方法包括:
S101、在安全芯片内生成并存储第三密钥;
S102、将第一密钥传递给安全芯片,从安全芯片获得使用第三密钥对第一密钥进行加密生成的第一密钥密文;
S11、获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;
S12、获取安全芯片对第一密钥密文解密得到的第一密钥;
S13、使用第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到密码机的外存储器中。
在本发明实施例中,S11-S13与图1所示实施例相同,S101-S102是准备阶段的处理,在此重点对S101-S102进行详细说明。
本实施例中,由密码机的处理器将第一密钥传递给密码机的安全芯片进行加密。密码机的安全芯片为第一密钥生成第三密钥作为专用的加解密密钥并存储在安全芯片内部,安全芯片的特性能够确保第三密钥是不可读取到安全芯片外部的,只能在安全芯片内部使用。
安全芯片从处理器接收到第一密钥后,使用上述的第三密钥对第一密钥进行加密生成第一密钥密文,将第一密钥密文返回给处理器进行相应的存储,具体存储位置参见前述实施例。
本发明实施例通过由安全芯片为第一密钥生成专用的加解密密钥,进一步提高了密钥管理上的便利性和安全性。
在本发明其他一些实施例中,安全芯片也可以不必为第一密钥生成专用的加解密密钥,可以使用安全芯片预先内置的一个固定密钥作为第一密钥的加解密密钥。
在本发明一些实施例中,密码机的处理器可以在密码机的内存储器中生成第一密钥,再将生成的第一密钥传递给安全芯片进行加密。在本发明另一些实施例中,密码机的处理器也可以在密码机的内存储器中生成一个随机数,并将预存的一个字符串或者密码机的设备标识等与该生成的随机数组合成第一密钥,再将组合得到的第一密钥传递给安全芯片进行加密。
上述实施例中,由密码机的处理器将用于对第二密钥加密的第一密钥传递给安全芯片进行加密,但本发明不限于此。在本发明一些实施例中,第一密钥也可以在安全芯片内生成,并使用在安全芯片内生成的第三密钥来加密并返回给密码机的处理器。通过本发明实施例,能够进一步增加本发明的密钥管理方法的安全性。
图3为本发明一个实施例的密码机的结构示意框图。
如图3所示,本发明实施例的密码机包括外存储器31、处理器32和安全芯片33。处理器32配置为从外存储器31或其他存储设备获取第一密钥密文传递给安全芯片33,使用从安全芯片33返回的第一密钥对至少一个第二密钥进行加密得到至少一个第二密钥密文,并将第二密钥密文存储到外存储器31中。安全芯片33配置为对第一密钥密文解密得到第一密钥。
本发明实施例的密码机中上述各个模块的可行的工作过程具体可详见前述的密钥管理方法实施例,在此不再赘述。
本发明实施例的密码机除了可以通过硬件的方式来实现之外,还可以通过软件的方式来实现。例如,本发明一个实施例的密码机可以包括处理器和安全芯片,处理器可以配置为执行预定的计算机可执行指令以实施上述密钥管理方法实施例中进行的处理。
通过本发明实施例的密码机,将需要设置\/安装到密码机中的第二密钥通过利用安全芯片解密才能得到的第一密钥进行加密后存储到密码机的外存储器中,安全芯片仅需负责对用于加解第二密钥的第一密钥的密文进行解密处理,而无需负责存储第二密钥以及对第二密钥加密生成密文的工作,使得即使需要设置\/安装的第二密钥较多,或密码学运算负担较大时,或即使使用中低端的安全芯片,也不会对安全芯片造成太大的计算压力,同时由于用来加密第二密钥的第一密钥的密文只能由安全芯片解密得到第一密钥,因此整体上能够保持较高的安全性。
图4为本发明一个实施例的密钥调用方法的示意性流程图。本发明实施例的密钥调用方法应用于密码机。
如图4所示,本发明实施例的密钥调用方法包括:
S41、获取第一密钥密文,并将第一密钥密文传递给密码机的安全芯片;
S42、获取安全芯片对第一密钥密文解密得到的第一密钥;
S43、从密码机的外存储器获取第二密钥密文,使用第一密钥对第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算。
本发明实施例中,第二密钥为安全芯片对应用系统业务或者用户的密码学任务请求进行处理时使用的密钥,当应用系统业务不止一个或者请求密码学任务的用户不止一个时,第二密钥可以包括对应数量的多个密钥。第二密钥预先使用了第一密钥进行加密并且加密后形成的第二密钥密文存储在密码机的外存储器中。在使用第一密钥对第二密钥加密之前或之后,利用密码机的安全芯片进行对第一密钥的加密操作并将加密生成的第一密钥密文存储在密码机的具备存储功能的模块中,或者存储在与密码机外接或通信的具备存储功能的设备中。
当需要使用第二密钥时,密码机的处理器从密码机的外存储器读取所需的第二密钥密文,从密码机的存储了第一密钥密文的存储模块或者与密码机外接或通信的存储了第一密钥密文的设备中读取第一密钥密文并利用安全芯片解密得到第一密钥,用第一密钥对第二密钥密文解密得到第二密钥,并使用第二密钥对应用系统的业务或者用户提交的密码学任务请求进行相应的密码学处理。
通过本发明实施例的密钥调用方法,将处理业务或用户请求需要使用的第二密钥通过利用安全芯片解密才能得到的第一密钥进行加密后存储到密码机的外存储器中,安全芯片仅需负责对用于加解第二密钥的第一密钥的密文进行解密处理,而无需负责存储第二密钥以及对第二密钥密文解密得到第二密钥以及使用第二密钥进行密码学运算的工作,使得即使存储的第二密钥较多,或密码学运算负担较大时,或即使使用中低端的安全芯片,也不会对安全芯片造成太大的计算压力,同时由于用来解密第二密钥密文的第一密钥的密文只能由安全芯片解密得到第一密钥,因此整体上能够保持较高的安全性。
在本发明一些实施例中,密码机的处理器在利用密码机的安全芯片对第一密钥进行加密生成第一密钥密文后,可以将第一密钥密文存储在密码机的外存储器中,则当需要使用第二密钥时,密码机的处理器从密码机的外存储器中读取第一密钥密文,并利用安全芯片对第一密钥密文解密得到第一密钥以对第二密钥密文进行解密。在本实施例中,密码机的存储第一密钥密文的外存储器可以与密码机的存储第二密钥密文的外存储器为同一存储模块,也可以为不同存储模块。例如,第一密钥密文和第二密钥密文可以均存储在密码机内的非易失性存储器中,诸如闪存或ROM等;或者第一密钥密文可以存储在管理员的便携存储设备中,第二密钥密文可以存储在密码机内的非易失性存储器中。此外,第一密钥密文还可以存储在能够通过通信网络与密码机进行通信的设备中。同样由于第一密钥密文只能由密码机的安全芯片解密得到第一密钥,因此第一密钥密文的存储位置不会影响本发明实施例的密钥管理方法的安全性。
图5为本发明一个实施例的密码机的结构示意框图。
如图5所示,本发明实施例的密码机包括外存储器51、处理器52和安全芯片53。处理器52配置为获取第一密钥密文传递给安全芯片53,使用从安全芯片53返回的第一密钥对从外存储器51获取的第二密钥密文进行解密得到第二密钥,从而使用第二密钥进行密码学运算。安全芯片53配置为对第一密钥密文解密得到第一密钥。
本发明实施例的密码机中上述各个模块的可行的工作过程具体可详见前述的密钥调用方法的实施例,在此不再赘述。
本发明实施例的密码机除了可以通过硬件的方式来实现之外,还可以通过软件的方式来实现。例如,本发明一个实施例的密码机可以包括处理器和安全芯片,处理器可以配置为执行预定的计算机可执行指令以实施上述密钥调用方法实施例中进行的处理。
通过本发明实施例的密码机,将处理业务或用户请求需要使用的第二密钥通过利用安全芯片解密才能得到的第一密钥进行加密后存储到密码机的外存储器中,安全芯片仅需负责对用于加解第二密钥的第一密钥的密文进行解密处理,而无需负责存储第二密钥以及对第二密钥密文解密得到第二密钥以及使用第二密钥进行密码学运算的工作,使得即使存储的第二密钥较多,或密码学运算负担较大时,或即使使用中低端的安全芯片,也不会对安全芯片造成太大的计算压力,同时由于用来解密第二密钥密文的第一密钥的密文只能由安全芯片解密得到第一密钥,因此整体上能够保持较高的安全性。
图6为本发明一个实施例中的整体密钥体系架构的示意图。
如图6所示,在密码机初始化阶段,管理员使用管理员锁对密码机进行身份认证后,由密码机内的安全芯片生成管理密钥,通过安全芯片的特性来保证管理密钥对外部是不可读的,只能在安全芯片内部使用。这里的管理密钥对应上文中用于对第一密钥进行加解密的密钥。然后,密码机的处理器进行(未示出)在密码机的内存储器中生成主密钥的操作,并将主密钥传递到安全芯片中,安全芯片使用管理密钥对主密钥进行加密后,输出主密钥密文,并存储在外存储器中。这里的主密钥对应上文中的第一密钥。
在用户密钥安装阶段,密码机的处理器从密码机的外存储器中读取主密钥密文并传递给安全芯片,安全芯片使用管理密钥解密主密钥密文,并将主密钥明文输出到内存储器中。之后,处理器使用主密钥加密用户密钥,并将用户密钥密文保存到外存储器中。这里的用户密钥对应于上文中的第二密钥。
在用户密钥使用阶段,密码机的处理器从密码机的外存储器中读取主密钥密文并传递给安全芯片,安全芯片使用管理密钥解密主密钥密文,并将主密钥明文输出到内存储器中。处理器从密码机的外存储器中读取需要使用的用户密钥密文,并使用主密钥解密,然后使用用户密钥进行所需的密码学运算。
以上对本发明的多个实施例进行了详细说明,但需要说明的是,上述实施例仅为示例性的,并不旨在限制本发明,本领域技术人员在不脱离本发明构思的范围内基于上述实施例得出的各种修改、变型实施例均落在本发明要求保护的范围内。
设计图
相关信息详情
申请码:申请号:CN201910185150.7
申请日:2019-03-12
公开号:CN109768862A
公开日:2019-05-17
国家:CN
国家/省市:11(北京)
授权编号:CN109768862B
授权时间:20191122
主分类号:H04L 9/08
专利分类号:H04L9/08
范畴分类:39B;40B;
申请人:北京深思数盾科技股份有限公司
第一申请人:北京深思数盾科技股份有限公司
申请人地址:100193 北京市海淀区西北旺东路10号院东区5号楼5层510
发明人:孙吉平;钟灵剑
第一发明人:孙吉平
当前权利人:北京深思数盾科技股份有限公司
代理人:邓玉婷;黄威
代理机构:11225
代理机构编号:北京金信知识产权代理有限公司 11225
优先权:关键词:当前状态:审核中
类型名称:外观设计