一种高性能密码卡安全管理方法、装置和系统与流程

allin2023-03-08  140



1.本技术涉及网络安全技术领域,特别是涉及一种高性能密码卡安全管理方法、装置和系统。


背景技术:

2.随着网络技术的快速发展,网络信息安全问题逐渐成为人们关注的焦点。为了保证数据的安全性,可以对网络中的数据进行加密处理。相关技术中,可以在设备中集成密码卡,由密码卡对数据进行加密和解密操作。
3.为了提高数据处理速度,可以在设备中集成多个密码卡进行数据加密和解密操作。相应的,在获取到待处理数据后,可以将待处理数据平均分配给各密码卡,由各密码卡分别进行业务处理。
4.然而,由于各密码卡的性能不同,采用上述处理方式,并不能充分利用每个密码卡的处理性能,也就使得设备的数据处理效率不高。


技术实现要素:

5.本技术实施例的目的在于提供一种高性能密码卡安全管理方法、装置和系统,能够充分利用密码卡的处理性能,提高数据处理的效率。具体技术方案如下:第一方面,为了达到上述目的,本技术实施例公开了一种高性能密码卡安全管理系统,所述高性能密码卡安全管理系统包括主机和多个密码卡,所述主机与多个密码卡分别通过dma(direct memory access,直接存储访问)通道通信连接,其中:所述主机,用于在接收到请求报文时,获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量,并通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据;每一密码卡,用于在接收到所述主机发送的数据时,调用该密码卡中的逻辑处理核心对接收到的数据进行业务处理。
6.第二方面,为了达到上述目的,本技术实施例公开了一种高性能密码卡安全管理方法,所述方法应用于主机,所述主机与多个密码卡分别通过直接存储访问dma通道通信连接,所述方法包括:在接收到请求报文时,获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据。
7.可选的,在通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据之前,所述方法还包括:
针对每一密码卡,基于与该密码卡之间的各dma通道当前的负载量和该密码卡需要处理的数据量,确定与该密码卡之间的每一dma通道需要传输的数据量;所述通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据,包括:针对与该密码卡之间的每一dma通道,从该密码卡需要处理的数据量对应的数据中,确定该dma通道需要传输的数据量对应的数据,作为该dma通道需要传输的数据;分别通过与该密码卡之间的每一dma通道,向该密码卡发送该dma通道需要传输的数据。
8.可选的,所述获取各密码卡当前的业务负载量,包括:针对每一密码卡,计算该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和,作为该密码卡当前的业务负载量。
9.可选的,所述分别通过与该密码卡之间的每一dma通道,向该密码卡发送该dma通道需要传输的数据,包括:针对与该密码卡之间的每一dma通道,生成该dma通道需要传输的数据对应的链表;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;向该密码卡发送该dma通道需要传输的数据对应的链表中首结点的地址,以使该密码卡基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
10.可选的,所述方法还包括:获取每一密码卡的状态信息,向管理平台发送所述状态信息,以使所述管理平台基于所述状态信息确定该密码卡发生指定异常事件时生成针对所述指定异常事件的修复指令,并发送给所述主机;接收所述修复指令,向该密码卡下发所述修复指令,以使该密码卡执行所述修复指令对应的修复操作。
11.可选的,每一密码卡的状态信息包含以下至少一项:该密码卡的配置信息、该密码卡的安全状态信息和该密码卡的业务负载量。
12.可选的,所述在接收到请求报文时,获取各密码卡当前的业务负载量,包括:在接收到请求报文时,若所述请求报文符合预设协议规则,则获取各密码卡当前的业务负载量;所述方法还包括:若所述请求报文不符合所述预设协议规则,则执行第一告警处理。
13.可选的,所述方法还包括:当检测到预设的驱动文件异常和/或dma通道的数据传输状态异常时,执行第二告警处理;其中,所述驱动文件用于实现所述主机与各密码卡之间通过dma通道进行数据传输。
14.第三方面,为了达到上述目的,本技术实施例公开了一种高性能密码卡安全管理方法,所述方法包括:通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据;其中,所述目标密码卡需要处理的数据量为:所述主机基于通信
连接的各密码卡当前的业务负载量和接收到请求报文所指示的待处理数据的数据量确定的;所述主机与各密码卡通过dma通道通信连接;调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理。
15.可选的,每一密码卡当前的业务负载量表示为:该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和。
16.可选的,所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理,包括:基于所述目标密码卡中各逻辑处理核心当前的负载量,调用各逻辑处理核心对接收到的数据进行业务处理。
17.可选的,所述通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据,包括:通过与所述主机之间的每一dma通道,接收所述目标密码卡需要处理的数据量对应的数据中该dma通道需要传输的数据;其中,每一dma通道需要传输的数据为:所述主机基于与所述目标密码卡之间的各dma通道当前的负载量,以及所述目标密码卡需要处理的数据量对应的数据确定的。
18.可选的,所述通过与所述主机之间的每一dma通道,接收所述目标密码卡需要处理的数据量对应的数据中该dma通道需要传输的数据,包括:针对与所述主机之间的每一dma通道,从所述主机获取该dma通道需要传输的数据对应的链表中首结点的地址;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
19.可选的,所述方法还包括:在接收到所述主机发送的针对指定异常事件的修复指令时,执行所述修复指令对应的修复操作;其中,所述修复指令为:管理平台基于所述主机发送的所述目标密码卡的状态信息确定所述目标密码卡发生指定异常事件时向所述主机发送的。
20.可选的,所述目标密码卡的状态信息包含以下至少一项:所述目标密码卡的配置信息、所述目标密码卡的安全状态信息和所述目标密码卡的业务负载量。
21.可选的,在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,所述方法还包括:将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
22.可选的,在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,所述方法还包括:基于所述目标用户提供的身份鉴别数据,以及所述预设内存空间中记录的所述目标用户对应的身份鉴别数据,对所述目标用户进行身份认证;若所述目标用户通过身份认证,则将所述预设内存空间中记录的所述目标用户对
应的密钥存储至预设缓存空间;所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理,包括:调用所述目标密码卡中的逻辑处理核心,以基于从所述预设缓存空间中获取的所述目标用户对应的密钥对接收到的数据进行业务处理。
23.第四方面,为了达到上述目的,本技术实施例公开了一种目标密码卡,所述目标密码卡与主机通过直接存储访问dma通道通信连接,所述主机还与除所述目标密码卡以外的其他密码卡通过dma通道通信连接;所述目标密码卡包括主处理组件和逻辑处理组件,所述逻辑处理组件包含至少一个逻辑处理核心,其中:所述主处理组件,用于执行上述第三方面任一项所述的高性能密码卡安全管理方法。
24.可选的,所述目标密码卡还包括敏感数据管理组件,用于将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
25.可选的,所述敏感数据管理组件,还用于基于所述目标用户提供的身份鉴别数据,以及所述预设内存空间中记录的所述目标用户对应的身份鉴别数据,对所述目标用户进行身份认证;若所述目标用户通过身份认证,则将所述预设内存空间中记录的所述目标用户对应的密钥存储至预设缓存空间;所述主处理组件,用于调用所述密码卡中的逻辑处理核心,以基于从所述预设缓存空间中获取的所述目标用户对应的密钥对接收到的数据进行业务处理。
26.第五方面,为了达到上述目的,本技术实施例公开了一种高性能密码卡安全管理装置,所述装置应用于主机,所述主机与多个密码卡分别通过直接存储访问dma通道通信连接,所述装置包括:业务负载量获取模块,用于在接收到请求报文时,获取各密码卡当前的业务负载量;第一负载均衡模块,用于基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;数据发送模块,用于通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据。
27.可选的,所述业务负载量获取模块,具体用于针对每一密码卡,计算该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和,作为该密码卡当前的业务负载量。
28.可选的,所述装置还包括:第二负载均衡模块,用于通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据之前,针对每一密码卡,基于与该密码卡之间的各dma通道当前的负载量和该密码卡需要处理的数据量,确定与该密码卡之间的每一dma通道需要传输的数据量;所述数据发送模块,具体用于针对与该密码卡之间的每一dma通道,从该密码卡需要处理的数据量对应的数据中,确定该dma通道需要传输的数据量对应的数据,作为该dma
通道需要传输的数据;分别通过与该密码卡之间的每一dma通道,向该密码卡发送该dma通道需要传输的数据。
29.可选的,所述数据发送模块,具体用于针对与该密码卡之间的每一dma通道,生成该dma通道需要传输的数据对应的链表;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;将该dma通道需要传输的数据对应的链表中首结点的地址存储至该密码卡对应的存储空间,以使该密码卡从所述存储空间获取该首结点的地址,并基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
30.可选的,所述装置还包括:状态信息发送模块,用于获取每一密码卡的状态信息,向管理平台发送所述状态信息,以使所述管理平台基于所述状态信息确定该密码卡发生指定异常事件时生成针对所述指定异常事件的修复指令,并发送给所述主机;修复指令下发模块,用于接收所述修复指令,向该密码卡下发所述修复指令,以使该密码卡执行所述修复指令对应的修复操作。
31.可选的,每一密码卡的状态信息包含以下至少一项:该密码卡的配置信息、该密码卡的安全状态信息和该密码卡的业务负载量。
32.可选的,所述业务负载量获取模块,具体用于在接收到请求报文时,若所述请求报文符合预设协议规则,则获取各密码卡当前的业务负载量;所述装置还包括:第一告警模块,用于若所述请求报文不符合所述预设协议规则,则执行第一告警处理。
33.可选的,所述装置还包括:第二告警模块,用于当检测到预设的驱动文件异常和/或dma通道的数据传输状态异常时,执行第二告警处理;其中,所述驱动文件用于实现所述主机与各密码卡之间通过dma通道进行数据传输。
34.第六方面,为了达到上述目的,本技术实施例公开了一种高性能密码卡安全管理装置,所述装置包括:数据接收模块,用于通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据;其中,所述目标密码卡需要处理的数据量为:所述主机基于通信连接的各密码卡当前的业务负载量和接收到请求报文所指示的待处理数据的数据量确定的;所述主机与各密码卡通过dma通道通信连接;处理模块,用于调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理。
35.可选的,每一密码卡当前的业务负载量表示为:该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和。
36.可选的,所述处理模块,具体用于基于所述目标密码卡中各逻辑处理核心当前的负载量,调用各逻辑处理核心对接收到的数据进行业务处理。
37.可选的,所述数据接收模块,具体用于通过与所述主机之间的每一dma通道,接收所述目标密码卡需要处理的数据量对应的数据中该dma通道需要传输的数据;其中,每一dma通道需要传输的数据为:所述主机基于与所述目标密码卡之间的各dma通道当前的负载量,以及所述目标密码卡需要处理的数据量对应的数据确定的。
38.可选的,所述数据接收模块,具体用于针对与所述主机之间的每一dma通道,从所述目标密码卡对应的存储空间获取该dma通道需要传输的数据对应的链表中首结点的地址;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
39.可选的,所述装置还包括:修复模块,用于在接收到所述主机发送的针对指定异常事件的修复指令时,执行所述修复指令对应的修复操作;其中,所述修复指令为:管理平台基于所述主机发送的所述目标密码卡的状态信息确定所述目标密码卡发生指定异常事件时向所述主机发送的。
40.可选的,所述目标密码卡的状态信息包含以下至少一项:所述目标密码卡的配置信息、所述目标密码卡的安全状态信息和所述目标密码卡的业务负载量。
41.可选的,所述装置还包括:敏感数据管理模块,用于将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
42.可选的,所述装置还包括:认证模块,用于在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,基于所述目标用户提供的身份鉴别数据,以及所述预设内存空间中记录的所述目标用户对应的身份鉴别数据,对所述目标用户进行身份认证;缓存模块,用于若所述目标用户通过身份认证,则将所述预设内存空间中记录的所述目标用户对应的密钥存储至预设缓存空间;所述处理模块,具体用于调用所述目标密码卡中的逻辑处理核心,以基于从所述预设缓存空间中获取的所述目标用户对应的密钥对接收到的数据进行业务处理。
43.第七方面,为了达到上述目的,本技术实施例公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序时,实现上述任一所述的高性能密码卡安全管理方法步骤。
44.第八方面,为了达到上述目的,本技术实施例公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的高性能密码卡安全管理方法步骤。
45.第九方面,为了达到上述目的,本技术实施例公开了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的高性能密码卡安全管理方
法。
46.本技术实施例有益效果:本技术实施例提供的高性能密码卡安全管理系统包括主机和多个密码卡,主机与多个密码卡分别通过dma通道通信连接。在接收到请求报文时,主机获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量,并通过与每一密码卡之间的dma通道,发送待处理数据中该密码卡需要处理的数据量对应的数据。在接收到主机发送的数据时,每一密码卡调用该密码卡中的逻辑处理核心对接收到的数据进行业务处理。
47.基于上述处理,主机能够结合各密码卡当前的业务负载量,向密码卡分发数据进行业务处理,也就能够充分利用密码卡的处理性能,进而,提高数据处理的效率。
48.当然,实施本技术的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
49.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
50.图1为本技术实施例提供的一种高性能密码卡安全管理系统的结构图;图2为本技术实施例提供的一种高性能密码卡安全管理方法的交互图;图3为本技术实施例提供的另一种高性能密码卡安全管理方法的交互图;图4为本技术实施例提供的另一种高性能密码卡安全管理方法的交互图;图5为本技术实施例提供的另一种高性能密码卡安全管理方法的交互图;图6为本技术实施例提供的另一种高性能密码卡安全管理系统的结构图;图7为本技术实施例提供的一种高性能密码卡安全管理装置的结构图;图8为本技术实施例提供的一种高性能密码卡安全管理装置的结构图;图9为本技术实施例提供的一种电子设备的结构图。
具体实施方式
51.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本技术保护的范围。
52.相关技术中,并未公开主机如何对多个密码卡进行负载均衡,而为了能够充分利用密码卡的处理性能,提高数据处理的效率,本技术实施例提供了一种高性能密码卡安全管理系统。
53.本技术实施例中的密码卡可以为高性能密码卡,即,符合《gm/t0028-2014密码模块安全技术要求》等国密规范的高性能基础密码设备。该密码卡能够适用于各类密码应用系统进行密码运算和密钥管理,为业务系统提供安全的应用层密码服务,包括:密钥管理、
消息验证、数据加密、签名的产生和验证等,保证业务数据产生、传输、接收到处理整个过程的安全性、有效性、完整性、不可抵赖性。
54.参见图1,图1为本技术实施例提供的一种高性能密码卡安全管理系统的结构图,该系统包括主机101和多个密码卡102,本技术实施例仅以密码卡102包括密码卡1、密码卡2和密码卡3为例进行说明,实际应用场景中与主机101通信连接的密码卡102的数目并不限于此。主机101与多个密码卡102分别通过dma通道通信连接。
55.主机101,用于在接收到请求报文时,获取各密码卡102当前的业务负载量;基于各密码卡102当前的业务负载量和请求报文所指示的待处理数据的数据量,确定每一密码卡102需要处理的数据量,并通过与每一密码卡102之间的dma通道,发送待处理数据中该密码卡102需要处理的数据量对应的数据。
56.每一密码卡102,用于在接收到主机101发送的数据时,调用该密码卡102中的逻辑处理核心对接收到的数据进行业务处理。
57.基于本技术实施例提供的高性能密码卡安全管理系统,主机能够结合各密码卡当前的业务负载量,向密码卡分发数据进行业务处理,也就能够充分利用密码卡的处理性能,进而,提高数据处理的效率。
58.关于上述高性能密码卡安全管理系统的其他实施例,可以参考后续关于主机和目标密码卡的实施例的相关介绍。
59.与上述高性能密码卡安全管理系统相对应,本技术实施例还提供了一种高性能密码卡安全管理方法,该方法可以应用于上述高性能密码卡安全管理系统中的主机和目标密码卡,目标密码卡可以为上述高性能密码卡安全管理系统中的任一密码卡。本技术实施例中的主机也可以称为上位机,例如,该主机可以为个人电脑,也可以为服务器,但并不限于此。
60.参见图2,图2为本技术实施例提供的一种高性能密码卡安全管理方法的交互图,该方法可以包括以下步骤:s201:在接收到请求报文时,主机获取各密码卡当前的业务负载量。
61.s202:主机基于各密码卡当前的业务负载量和请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量。
62.s203:主机通过与目标密码卡之间的dma通道,发送待处理数据中目标密码卡需要处理的数据量对应的数据。
63.s204:目标密码卡调用自身的逻辑处理核心对接收到的数据进行业务处理。
64.基于本技术实施例提供的高性能密码卡安全管理方法,主机能够结合各密码卡当前的业务负载量,向各密码卡分发数据进行业务处理,也就能够充分利用密码卡的处理性能,进而,提高数据处理的效率。
65.当用户在主机所属的业务系统中进行业务操作时,该主机可以获取到对应的请求报文,并获取当前各密码卡的业务负载量,并基于该业务负载量,向各密码卡分发待处理数据中各自需要处理的数据。密码卡对接收到的数据进行业务处理表示对数据进行加密操作,或者,对数据进行解密操作。
66.一种实现方式中,主机中可以部署有接口库,该接口库用于提供与其他设备通信连接的接口。例如,提供符合国密gb/t36322标准的应用接口规范的调用接口,另外,也可以
提供与物联网和云系统等连接的轻量级restful接口。主机与各密码卡之间可以基于pcie(peripheral component interconnect express,外围组件快速连接标准)接口标准进行数据通信。例如,主机与密码卡之间可以配置有dma通道,以进行数据通信。
67.另外,上述接口库中可以集成有负载均衡算法,进而,主机可以基于该接口库按照负载均衡的方式,确定请求报文所指示的待处理数据中每一密码卡需要处理的数据。例如,该负载均衡算法可以为加权轮询算法。
68.每一密码卡中包含的逻辑处理核心的数目由该密码卡的硬件配置确定。每一逻辑处理核心可以包含多个逻辑器件,通过该多个逻辑器件对数据进行加解密。
69.每一密码卡可以包括:基于sm4算法进行数据处理的核心,和/或,基于sm3算法进行数据处理的核心。例如,每一密码卡可以包含64个基于sm4算法进行数据处理的核心,以及64个基于sm3算法进行数据处理的核心。
70.在一个实施例中,业务负载量包括:各密码卡与主机之间的dma通道当前的负载量,和/或,各密码卡中逻辑处理核心当前的负载量。
71.示例性地,dma通道的负载量可以表示为:dma通道当前传输的数据量与dma通道的最大允许传输数据量的比值。例如,一个dma通道的最大允许传输数据量可以为4g bytes。
72.若该密码卡与主机之间存在多个dma通道,则可以计算各dma通道当前传输的数据量的总和(可以称为第一和值),以及各dma通道的最大允许传输数据量的总和(可以称为第二和值),然后,计算第一和值与第二和值的比值,得到该密码卡与主机之间的dma通道当前的负载量。
73.密码卡中逻辑处理核心当前的负载量可以表示为:密码卡中逻辑处理核心当前待处理的数据量与最大允许处理数据量的比值。
74.若该密码卡包含多个逻辑处理核心,则可以计算各逻辑处理核心当前待处理的数据量的总和(可以称为第三和值),以及各逻辑处理核心的最大允许处理数据量的总和(可以称为第四和值),然后,计算第三和值与第四和值的比值,得到该密码卡中逻辑处理核心当前的负载量。
75.一种实现方式中,上述步骤s201可以包括以下步骤:在接收到请求报文时,针对每一密码卡,主机计算该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和,作为该密码卡当前的业务负载量。
76.其中,dma通道的负载量的权重,以及逻辑处理核心的负载量的权重,可以根据该密码卡中与主机之间的dma通道的性能,以及该密码卡中的逻辑处理核心的性能确定。例如,若该密码卡与主机之间的dma通道的性能较高,则可以设置dma通道的负载量的权重较高;若该密码卡中逻辑处理核心的性能较高,则可以设置逻辑处理核心的负载量的权重较高。
77.一种实现方式中,主机可以计算各密码卡的业务负载量的比值,进而,将待处理数据的数据量按照该比值进行划分,得到每一密码卡需要处理的数据量,并按照确定出的数据量,从待处理数据中获取对应数据量的数据,也就得到每一密码卡需要处理的数据。得到的各密码卡需要处理的数据量与各自的业务负载量成反比,例如,三个密码卡的业务负载量的比值为:4:5:6,则确定出的该三个密码卡需要处理的数据量的比值为:6:5:4。
78.在另一种实现方式中,主机可以按照业务负载量从小到大的顺序,结合各密码卡
当前的最大允许处理数据量,确定各密码卡需要处理的数据量。例如,确定当前业务负载量最小的密码卡(可以称为第一密码卡),并计算第一密码卡当前的支持数据量(即最大允许处理数据量与待处理的数据量的差值,可以称为第一支持数据量)。若待处理数据不大于该第一支持数据量,则主机可以确定第一密码卡需要处理的数据量为待处理数据的数据量,即待处理数据全部由第一密码卡进行处理。
79.若待处理数据大于该第一支持数据量,则主机可以确定第一密码卡需要处理的数据量为该第一支持数据量,向第一密码卡发送待处理数据中相应大小的数据(可以称为第一数据)。然后,主机可以确定除第一密码卡外的其他密码卡中当前业务负载量最小的密码卡(可以称为第二密码卡),并计算第二密码卡当前的支持数据量(可以称为第二支持数据量)。若待处理数据中除第一数据外的其他数据(可以称为第二数据)不大于该第二支持数据量,则主机可以确定第二密码卡需要处理的数据量为第二数据的数据量,即第二数据全部由第二密码卡进行处理。若第二数据大于该第二支持数据量,则主机可以确定第二密码卡需要处理的数据量为该第二支持数据量,向第二密码卡发送待处理数据中相应大小的数据。以此类推,直至将所有待处理数据发送给各密码卡。
80.在一个实施例中,主机与密码卡之间的多个dma通道可以划分为不同的类型,例如,用于传输命令的命令通道和用于传输运算数据的算法通道。传输的命令可以为密钥管理命令、dma配置命令。基于上述处理,能够实现不同类型的数据传输的隔离。
81.在一个实施例中,参见图3,在图2的基础上,在步骤s203之前,该方法还可以包括以下步骤:s205:针对每一密码卡,主机基于与该密码卡之间的各dma通道当前的负载量和该密码卡需要处理的数据量,确定与该密码卡之间的每一dma通道需要传输的数据量。
82.相应的,步骤s203包括:s2031:针对与目标密码卡之间的每一dma通道,主机从目标密码卡需要处理的数据量对应的数据中,确定该dma通道需要传输的数据量对应的数据,作为该dma通道需要传输的数据。
83.s2032:主机分别通过与目标密码卡之间的每一dma通道,向目标密码卡发送该dma通道需要传输的数据。
84.在本技术实施例中,每一密码卡可以通过多个dma通道与主机通信连接。主机基于各dma通道的负载量,确定每一dma通道需要传输的数据量的方式,与上述实施例中基于各密码卡的业务负载量,确定每一密码卡需要处理的数据量的方式类似,可以参考相关的介绍。相应的,目标密码卡通过与主机之间的每一dma通道,接收目标密码卡需要处理的数据中该dma通道需要传输的数据。例如,每一密码卡可以通过4个dma通道与主机通信。
85.如此,主机能够基于各dma通道的负载量,与密码卡之间进行数据传输,也就能够提高主机与密码卡之间传输数据的效率,进而,进一步提高数据处理的效率。
86.在一个实施例中,密码卡中可以设置有bar(base address register,基地址寄存器)寄存器和主处理组件,bar寄存器与密码卡中的指定运算寄存器进行地址空间映射。主处理组件与指定运算寄存器之间通过片内高速总线相连。相应的,主处理组件可以基于地址空间映射的方式,获取主机发送的待处理数据,并调用逻辑处理核心进行业务处理。另外,在获取到逻辑处理核心的处理结果后,主处理组件可以通过地址空间映射,将处理结果
返回给主机。例如,主处理组件可以包括arm(advanced reduced instruction set computer machines,高性能精简指令集计算机)处理器。
87.一种实现方式中,上述步骤s2032可以包括以下步骤:针对与该密码卡之间的每一dma通道,生成该dma通道需要传输的数据对应的链表;向该密码卡发送该dma通道需要传输的数据对应的链表中首结点的地址,以使该密码卡基于该首结点的地址,通过该dma通道从主机获取该dma通道需要传输的数据。
88.其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据。
89.在本技术实施例中,主机与密码卡之间可以结合xdma(advanced extensible interface direct memory access,高级可扩展接口直接存储访问)与sg(scatter gather,分散聚集)模式进行数据传输。
90.一种实现方式中,可以在主机中配置主机与密码卡的共享内存空间。主机和每一密码卡可以协商该密码卡在共享内存空间中对应的起始地址。进而,针对每一密码卡,主机可以按照该密码卡对应的起始地址,将该密码卡需要处理的数据存储至共享内存空间中,得到对应的偏移地址。然后,主机可以向该密码卡发送该偏移地址,相应的,该密码卡可以按照该偏移地址在共享内存空间中进行数据读取,得到该密码卡需要处理的数据。
91.示例性地,若一个密码卡需要处理的数据对应共享内存空间中物理上不连续的多个数据块,则主机可以生成该密码卡需要处理的数据对应的链表,即,确定每一dma通道需要传输的数据对应的链表,并通过该dma通道向该密码卡发送该链表中首结点的地址。
92.相应的,针对与主机之间的每一dma通道,目标密码卡可以基于该dma通道需要传输的数据对应的链表中首结点的地址,从主机获取该dma通道需要传输的数据。例如,在获取该首结点的地址后,目标密码卡可以按照该地址从共享内存空间内读取数据,得到首结点的数据域存储的数据和下一个结点的地址。进而,根据该地址从共享内存空间内读取数据,得到下一个结点的数据域存储的数据,以此类推,直至获取到最后一个结点的数据域存储的数据,得到该dma通道需要传输的数据。
93.另外,在获取逻辑处理核心的处理结果后,密码卡可以按照对应的起始地址,将处理结果存储至共享内存空间中,相应的,主机则可以从共享内存空间中获取上述处理结果。
94.在一个实施例中,参见图4,在图2的基础上,上述步骤s204可以包括:s2041:目标密码卡基于自身的各逻辑处理核心当前的负载量,调用各逻辑处理核心对接收到的数据进行业务处理。
95.在本技术实施例中,目标密码卡可以基于各逻辑处理核心当前的负载量和该目标密码卡需要处理的数据量,确定每一逻辑处理核心需要处理的数据量,进而,调用每一逻辑处理核心,对该目标密码卡需要处理的数据中该逻辑处理核心需要处理的数据量对应的数据进行业务处理。
96.其中,确定每一逻辑处理核心需要处理的数据量的方式,与上述实施例中基于各密码卡的业务负载量,确定每一密码卡需要处理的数据量的方式类似,可以参考相关的介绍。
97.如此,密码卡能够基于各逻辑处理核心的负载量,将数据分发给各逻辑处理核心进行业务处理,能够充分利用逻辑处理核心的处理性能,提升了密码卡并发运算效率,进一
步提高数据处理的效率。
98.在一个实施例中,该方法还可以包括以下步骤:步骤一:主机获取目标密码卡的状态信息,向管理平台发送状态信息,以使管理平台基于状态信息确定该目标密码卡发生指定异常事件时生成针对指定异常事件的修复指令,并发送给主机。
99.步骤二:接收修复指令,向该目标密码卡下发修复指令。
100.步骤三:目标密码卡执行修复指令对应的修复操作。
101.在本技术实施例中,管理平台可以为部署有云密码卡管理服务的设备。一种实现方式中,云密码卡管理服务与主机属于同一网段,或者,云密码卡管理服务通过代理服务与主机通信连接。相应的,管理平台则可以通过云密码卡管理服务与该主机进行通信。
102.在一个实施例中,主机中的接口库还可以集成有用于对密码卡的状态信息进行监控的agent(代理),进而,基于上述代理,主机可以获取各密码卡的状态信息,并向管理平台发送。
103.在一个实施例中,一个密码卡的状态信息可以包括以下至少一项:该密码卡的配置信息、该密码卡的安全状态信息和该密码卡的运行负载量。
104.密码卡的配置信息可以包括以下至少一项:产品序列号、硬件版本、固件版本、驱动库的版本和接口库的版本。其中,驱动库中记录有驱动文件,驱动文件用于实现主机与密码卡之间通过dma通道进行数据传输。
105.安全状态信息包含以下至少一项:第一敏感数据的数量和存储位置、内核模块(即驱动库)的状态,以及密码卡与主机之间的dma通道的配置信息。例如,第一敏感数据可以包括:根密钥、二级密钥、用户鉴别数据。内核模块的状态可以包括:内核模块的签名校验值是否通过校验、内核模块的动态二进制特征扫描值。dma通道的配置信息可以包括dma通道的优先级、数据传输的循环模式等。
106.密码卡的运行负载量包含以下至少一项:密码卡cpu的占有率、存储资源的占有率、逻辑处理核心的占有率、dma通道的实时数据传输量,以及dma通道当前传输的数据量(即实时传输数据量)与最大允许数据传输量的比值。
107.相应的,管理平台可以基于一个密码卡的状态信息,确定该密码卡是否发生指定异常事件。
108.一种实现方式中,管理平台可以获取密码卡的样本状态信息,并进行聚类分析,确定出密码卡发生指定异常事件时的状态信息,并生成对应的特征向量(可以称为异常特征向量)。然后,针对每一密码卡,管理平台可以生成该密码卡的状态信息对应的特征向量,并计算该特征向量与异常特征向量之间的相似度。若相似度大于预设阈值,则可以确定该密码卡发生指定异常事件。
109.另一种实现方式中,基于密码卡的样本状态信息和对应的标签(表示样本状态信息是否异常)对预测网络模型进行训练。进而,针对每一密码卡,管理平台可以将该密码卡的状态信息输入至训练好的预测网络模型,得到该密码卡发生指定异常事件的概率,以确定该密码卡是否发生指定异常事件。
110.例如,管理平台基于密码卡的状态信息,确定密码卡发生通信数据阻塞,且确定出由dma通道异常或逻辑处理核心异常导致的,则管理平台可以下发针对上述异常的预设修
复配置的安全指令(即修复指令)进行异常修复。
111.相关技术中,并无公开如何实现对密码卡的监控和修复,而基于本技术实施例提供的方法,能够实现自动化问题修复,提高大量密码卡的可维护性。
112.在一个实施例中,参见图5,在图2的基础上,上述步骤s201可以包括以下步骤:s2011:在接收到请求报文时,若请求报文符合预设协议规则,主机获取各密码卡当前的业务负载量。
113.相应的,该方法还可以包括以下步骤:若请求报文不符合预设协议规则,主机执行第一告警处理(图中未标出)。
114.在本技术实施例中,在接收到请求报文时,主机可以判断该请求报文是否符合预设协议规则。若不符合,表明该请求报文可能为恶意报文,则可以进行告警处理,而无需调用逻辑处理核心对该请求报文所指示的数据进行业务处理。例如,主机可以将该请求报文上送至管理平台。预设协议规则可以表示密码卡支持的应用层协议规则。反之,主机可以获取各密码卡当前的业务负载量,并基于上述步骤s201-s203进行处理。
115.在一个实施例中,该方法还可以包括以下步骤:当检测到预设的驱动文件异常和/或dma通道的数据传输状态异常时,主机执行第二告警处理。
116.其中,驱动文件用于实现主机与各密码卡之间通过dma通道进行数据传输。
117.一种实现方式中,主机中可以部署有驱动库,驱动库中记录有驱动文件,驱动文件用于实现主机与密码卡之间通过dma通道进行数据传输,即,基于驱动文件可以实现主机基于负载均衡,通过不同的dma通道向密码卡发送数据。
118.在一个实施例中,驱动库中还可以集成有监控进程,用于对驱动文件进行监控,以判断驱动文件是否异常。例如,可以通过判断驱动文件的文件名是否发生修改,和/或,判断驱动文件的哈希值是否与预设哈希值一致,确定驱动文件是否异常。
119.另外,主机还可以对各dma通道的数据传输状态进行监控,以确定是否发生异常。例如,各dma通道传输数据时队列的上溢或下溢异常。
120.在一个实施例中,该方法还可以包括以下步骤:目标密码卡将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
121.在本技术实施例中,目标密码卡可以基于三级密钥管理方式,对目标用户对应的敏感数据进行管理。三级密钥可以包括:根密钥、二级密钥和三级密钥。根密钥用于加密二级密钥;二级密钥用于加密三级密钥;三级密钥用于对业务数据进行加解密。
122.其中,敏感数据(可以称为第二敏感数据)可以包括:根密钥、二级密钥、密钥访问控制码和身份鉴别数据。不同类型的第二敏感数据在预设内存空间中的存储地址不连续。例如,根密码与二级密钥表示不同类型的第二敏感数据;二级密钥与密钥访问控制码表示不同类型的第二敏感数据;根密钥与密钥访问控制码表示不同类型的第二敏感数据。密钥访问控制码表示基于三级密钥管理方式对密钥进行加密时的加密参数。身份鉴别数据表示目标用户通过身份认证所需要提供的数据。目标用户表示使用主机进行操作的用户。
123.在一个实施例中,基于用户的角色,根密钥可以分为管理员对应的根密钥和普通用户对应的根密钥。另外,每一个用户还可以在初始化时设置对应的二级密钥、各级密钥对应的密钥访问控制码,以及身份鉴别数据。
124.一种实现方式中,在预设内存空间中,第二敏感数据均以密文的方式存储。例如,
在目标用户将usbkey(通用串行总线密钥)设备与密码卡连接时,密码卡可以获取usbkey设备发送的随机数,并结合目标用户提供的身份鉴别数据,通过预设算法,计算得到加密密钥,以对根密钥进行加密。密码卡还可以基于根密钥以及根密钥对应的iv值,按照sm4-cbc(cipher block chaining,密文分组链接模式)加密算法对二级密钥进行加密。例如,预设内存空间可以为emmc( embedded multi media card,嵌入式多媒体卡);身份鉴别数据可以为pin(personal identification number,个人识别码);预设算法可以为pbkdf2(password-based key derivation function,基于口令的密钥派生函数)算法。
125.不同类型的第二敏感数据在预设内存空间中的存储地址不连续,由于存储地址不连续的存储区域的限制访问次数不同,因此,能够基于存储空间的不同以限制不同类型的敏感数据的访问次数,以实现对不同类型的敏感数据的针对性管理。
126.在一个实施例中,在上述步骤s204之前,该方法还可以包括以下步骤:步骤1:目标密码卡基于目标用户提供的身份鉴别数据,以及预设内存空间中记录的目标用户对应的身份鉴别数据,对目标用户进行身份认证。
127.步骤2:若目标用户通过身份认证,目标密码卡则将预设内存空间中记录的目标用户对应的密钥存储至预设缓存空间。
128.相应的,上述步骤s204包括:目标密码卡调用自身的逻辑处理核心,以基于从预设缓存空间中获取的目标用户对应的密钥对接收到的数据进行业务处理。
129.在一个实施例,在目标用户需要进行业务处理时,可以将usbkey设备与密码卡连接,并提供身份鉴别数据。密码卡可以生成随机数,并向usbkey设备发送。usbkey设备基于用户提供的身份鉴别数据和该随机数进行运算,并向密码卡发送运算结果。另外,密码卡基于该随机数和目标用户注册时的身份鉴别数据进行计算,得到运算结果,若该运算结果与usbkey设备发送的运算结果一致,则密码卡确定目标用户通过身份认证,并将目标用户对应的密钥存储至预设缓存空间。后续,在业务处理过程中,密码卡可以直接从预设缓存空间中获取密钥进行与密钥相关的运算,能够减少密钥获取的时延,以提高数据处理效率。例如,存储至预设缓存空间的密钥可以包括根密钥和/或二级密钥;预设缓存空间可以为ddr(double data rate synchronous dynamic random access memory,双倍数据率同步动态随机存取存储器)。
130.在一个实施例中,目标用户对应的密钥可以以密文的方式存储在预设缓存空间,也可以以明文的方式存储在预设缓存空间。预设缓存空间属于密码卡,且与主机隔离,能够保证密钥等敏感数据的安全性。
131.基于上述处理,能够实现多级密钥管理,分层加密,分区管控。同时,设计了高速的密钥缓存机制,可以实现密钥的一次加载多次调用,提升了密码卡的安全性和运行效率。
132.另外,在进行身份认证时,密码卡还可以确定目标用户的角色,以确定其具有的权限。如普通用户仅能使用密钥进行密码运算,而无法创建、修改、删除密钥。即,针对目标用户权限以外的操作,密码卡直接拒绝处理。
133.在一个实施例中,密码卡中可以记录密钥的标识,进而,主机只需要提供相应的标识,密码卡就可以确定对应的密钥,以进行数据处理。即,主机与密码卡之间无需进行密钥的传输,进而,能够进一步保证敏感数据的安全性。例如,上述标识可以分别用1-4096表示。
134.基于相同的发明构思,本技术实施例还提供了一种目标密码卡,该目标密码卡与
主机通过dma通道通信连接,主机还与除该目标密码卡以外的其他密码卡通过dma通道通信连接;该目标密码卡包括主处理组件和逻辑处理组件,逻辑处理组件包含至少一个逻辑处理核心,其中:主处理组件,用于执行上述实施例中的高性能密码卡安全管理方法。
135.在一个实施例中,主处理组件可以包括arm处理器,逻辑处理组件可以包括fpga(现场可编程门阵列,field-programmable gate array)。
136.在一个实施例中,主处理组件用于执行上述高性能密码卡安全管理方法中对密钥进行管理以外的其他处理,相应的,目标密码卡还可以包括敏感数据管理组件。敏感数据管理组件用于将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
137.在一个实施例中,敏感数据管理组件,还用于基于目标用户提供的身份鉴别数据,以及预设内存空间中记录的目标用户对应的身份鉴别数据,对目标用户进行身份认证;若目标用户通过身份认证,则将预设内存空间中记录的目标用户对应的密钥存储至预设缓存空间。相应的,主处理组件,用于调用密码卡中的逻辑处理核心,以基于从预设缓存空间中获取的目标用户对应的密钥对接收到的数据进行业务处理。
138.在一个实施例中,敏感数据管理组件可以包括mcu(微控制单元,microcontroller unit),用于对敏感数据进行管理,以及对用户进行身份认证。
139.参见图6,图6为本技术实施例提供的一种高性能密码卡安全管理系统的结构图。
140.图6中,该系统包括主机、密码卡和云密码卡管理中心。主机中部署有接口库和驱动库,通过接口库实现各密码卡之间的负载均衡,通过驱动库实现主机与密码卡通过dma通道进行数据传输。
141.密码卡中设置有:arm处理器,用于通过dma通道从主机获取待处理数据,并调用fpga中的逻辑处理核心进行业务处理;fpga,用于对数据进行业务处理;mcu,用于对敏感数据进行管理,以及对用户进行身份认证;emmc,用于存储敏感数据;ddr,用于缓存密钥;算法芯片,用于生成身份认证过程中所需的随机数。
142.云密码卡管理中心,用于获取主机上传的密码卡的状态信息,确定密码卡是否发生指定异常事件,以对密码卡进行监控。另外,在确定密码卡发生指定异常事件时,还可以向密码卡下发修复指令,以实现自动化运维。
143.基于相同的发明构思,本技术实施例还提供了一种高性能密码卡安全管理装置,装置应用于主机,主机与多个密码卡分别通过直接存储访问dma通道通信连接,参见图7,图7为本技术实施例提供的一种高性能密码卡安全管理装置的结构图,所述装置包括:业务负载量获取模块701,用于在接收到请求报文时,获取各密码卡当前的业务负载量;第一负载均衡模块702,用于基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;数据发送模块703,用于通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据。
144.可选的,所述业务负载量获取模块701,具体用于针对每一密码卡,计算该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加
权和,作为该密码卡当前的业务负载量。
145.可选的,所述装置还包括:第二负载均衡模块,用于通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据之前,针对每一密码卡,基于与该密码卡之间的各dma通道当前的负载量和该密码卡需要处理的数据量,确定与该密码卡之间的每一dma通道需要传输的数据量;所述数据发送模块703,具体用于针对与该密码卡之间的每一dma通道,从该密码卡需要处理的数据量对应的数据中,确定该dma通道需要传输的数据量对应的数据,作为该dma通道需要传输的数据;分别通过与该密码卡之间的每一dma通道,向该密码卡发送该dma通道需要传输的数据。
146.可选的,所述数据发送模块703,具体用于针对与该密码卡之间的每一dma通道,生成该dma通道需要传输的数据对应的链表;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;将该dma通道需要传输的数据对应的链表中首结点的地址存储至该密码卡对应的存储空间,以使该密码卡从所述存储空间获取该首结点的地址,并基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
147.可选的,所述装置还包括:状态信息发送模块,用于获取每一密码卡的状态信息,向管理平台发送所述状态信息,以使所述管理平台基于所述状态信息确定该密码卡发生指定异常事件时生成针对所述指定异常事件的修复指令,并发送给所述主机;修复指令下发模块,用于接收所述修复指令,向该密码卡下发所述修复指令,以使该密码卡执行所述修复指令对应的修复操作。
148.可选的,每一密码卡的状态信息包含以下至少一项:该密码卡的配置信息、该密码卡的安全状态信息和该密码卡的业务负载量。
149.可选的,所述业务负载量获取模块701,具体用于在接收到请求报文时,若所述请求报文符合预设协议规则,则获取各密码卡当前的业务负载量;所述装置还包括:第一告警模块,用于若所述请求报文不符合所述预设协议规则,则执行第一告警处理。
150.可选的,所述装置还包括:第二告警模块,用于当检测到预设的驱动文件异常和/或dma通道的数据传输状态异常时,执行第二告警处理;其中,所述驱动文件用于实现所述主机与各密码卡之间通过dma通道进行数据传输。
151.基于相同的发明构思,本技术实施例还提供了一种高性能密码卡安全管理装置,参见图8,图8为本技术实施例提供的一种高性能密码卡安全管理装置的结构图,所述装置包括:数据接收模块801,用于通过与主机之间的dma通道,接收所述主机发送的待处理
数据中目标密码卡需要处理的数据量对应的数据;其中,所述目标密码卡需要处理的数据量为:所述主机基于通信连接的各密码卡当前的业务负载量和接收到请求报文所指示的待处理数据的数据量确定的;所述主机与各密码卡通过dma通道通信连接;处理模块802,用于调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理。
152.可选的,每一密码卡当前的业务负载量表示为:该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和。
153.可选的,所述处理模块802,具体用于基于所述目标密码卡中各逻辑处理核心当前的负载量,调用各逻辑处理核心对接收到的数据进行业务处理。
154.可选的,所述数据接收模块801,具体用于通过与所述主机之间的每一dma通道,接收所述目标密码卡需要处理的数据量对应的数据中该dma通道需要传输的数据;其中,每一dma通道需要传输的数据为:所述主机基于与所述目标密码卡之间的各dma通道当前的负载量,以及所述目标密码卡需要处理的数据量对应的数据确定的。
155.可选的,所述数据接收模块801,具体用于针对与所述主机之间的每一dma通道,从所述目标密码卡对应的存储空间获取该dma通道需要传输的数据对应的链表中首结点的地址;其中,该dma通道需要传输的数据对应的链表包含至少一个结点;每一结点包含数据域和下一个结点的地址;各结点中的数据域用于存储该dma通道需要传输的数据;基于该首结点的地址,通过该dma通道从所述主机获取该dma通道需要传输的数据。
156.可选的,所述装置还包括:修复模块,用于在接收到所述主机发送的针对指定异常事件的修复指令时,执行所述修复指令对应的修复操作;其中,所述修复指令为:管理平台基于所述主机发送的所述目标密码卡的状态信息确定所述目标密码卡发生指定异常事件时向所述主机发送的。
157.可选的,所述目标密码卡的状态信息包含以下至少一项:所述目标密码卡的配置信息、所述目标密码卡的安全状态信息和所述目标密码卡的业务负载量。
158.可选的,所述装置还包括:敏感数据管理模块,用于将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。
159.可选的,所述装置还包括:认证模块,用于在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,基于所述目标用户提供的身份鉴别数据,以及所述预设内存空间中记录的所述目标用户对应的身份鉴别数据,对所述目标用户进行身份认证;缓存模块,用于若所述目标用户通过身份认证,则将所述预设内存空间中记录的所述目标用户对应的密钥存储至预设缓存空间;所述处理模块,具体用于调用所述目标密码卡中的逻辑处理核心,以基于从所述预设缓存空间中获取的所述目标用户对应的密钥对接收到的数据进行业务处理。
160.本技术实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完
成相互间的通信,存储器903,用于存放计算机程序;处理器901,用于执行存储器903上所存放的程序时,实现上述任一所述的高性能密码卡安全管理方法。
161.上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
162.通信接口用于上述电子设备与其他设备之间的通信。
163.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
164.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
165.在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一高性能密码卡安全管理方法的步骤。
166.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一高性能密码卡安全管理方法。
167.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk (ssd))等。
168.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
169.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、密码卡、系统、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
170.以上所述仅为本技术的较佳实施例,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。

技术特征:
1.一种高性能密码卡安全管理系统,其特征在于,所述高性能密码卡安全管理系统包括主机和多个密码卡,所述主机与多个密码卡分别通过直接存储访问dma通道通信连接,其中:所述主机,用于在接收到请求报文时,获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量,并通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据;每一密码卡,用于在接收到所述主机发送的数据时,调用该密码卡中的逻辑处理核心对接收到的数据进行业务处理。2.一种高性能密码卡安全管理方法,其特征在于,所述方法应用于主机,所述主机与多个密码卡分别通过直接存储访问dma通道通信连接,所述方法包括:在接收到请求报文时,获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据。3.根据权利要求2所述的方法,其特征在于,在通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据之前,所述方法还包括:针对每一密码卡,基于与该密码卡之间的各dma通道当前的负载量和该密码卡需要处理的数据量,确定与该密码卡之间的每一dma通道需要传输的数据量;所述通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据,包括:针对与该密码卡之间的每一dma通道,从该密码卡需要处理的数据量对应的数据中,确定该dma通道需要传输的数据量对应的数据,作为该dma通道需要传输的数据;分别通过与该密码卡之间的每一dma通道,向该密码卡发送该dma通道需要传输的数据。4.根据权利要求2所述的方法,其特征在于,所述获取各密码卡当前的业务负载量,包括:针对每一密码卡,计算该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和,作为该密码卡当前的业务负载量。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取每一密码卡的状态信息,向管理平台发送所述状态信息,以使所述管理平台基于所述状态信息确定该密码卡发生指定异常事件时生成针对所述指定异常事件的修复指令,并发送给所述主机;接收所述修复指令,向该密码卡下发所述修复指令,以使该密码卡执行所述修复指令对应的修复操作。6.根据权利要求2所述的方法,其特征在于,所述在接收到请求报文时,获取各密码卡当前的业务负载量,包括:在接收到请求报文时,若所述请求报文符合预设协议规则,则获取各密码卡当前的业
务负载量;所述方法还包括:若所述请求报文不符合所述预设协议规则,则执行第一告警处理;当检测到预设的驱动文件异常和/或dma通道的数据传输状态异常时,执行第二告警处理;其中,所述驱动文件用于实现所述主机与各密码卡之间通过dma通道进行数据传输。7.一种高性能密码卡安全管理方法,其特征在于,所述方法包括:通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据;其中,所述目标密码卡需要处理的数据量为:所述主机基于通信连接的各密码卡当前的业务负载量和接收到请求报文所指示的待处理数据的数据量确定的;所述主机与各密码卡通过dma通道通信连接;调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理。8.根据权利要求7所述的方法,其特征在于,每一密码卡当前的业务负载量表示为:该密码卡与所述主机之间的dma通道当前的负载量,与该密码卡中逻辑处理核心当前的负载量的加权和。9.根据权利要求7所述的方法,其特征在于,所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理,包括:基于所述目标密码卡中各逻辑处理核心当前的负载量,调用各逻辑处理核心对接收到的数据进行业务处理。10.根据权利要求7所述的方法,其特征在于,所述通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据,包括:通过与所述主机之间的每一dma通道,接收所述目标密码卡需要处理的数据量对应的数据中该dma通道需要传输的数据;其中,每一dma通道需要传输的数据为:所述主机基于与所述目标密码卡之间的各dma通道当前的负载量,以及所述目标密码卡需要处理的数据量对应的数据确定的。11.根据权利要求7所述的方法,其特征在于,所述方法还包括:在接收到所述主机发送的针对指定异常事件的修复指令时,执行所述修复指令对应的修复操作;其中,所述修复指令为:管理平台基于所述主机发送的所述目标密码卡的状态信息确定所述目标密码卡发生指定异常事件时向所述主机发送的。12.根据权利要求7所述的方法,其特征在于,在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,所述方法还包括:将目标用户对应的不同类型的敏感数据分别存储至预设内存空间中地址不连续的空间。13.根据权利要求12所述的方法,其特征在于,在所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理之前,所述方法还包括:基于所述目标用户提供的身份鉴别数据,以及所述预设内存空间中记录的所述目标用户对应的身份鉴别数据,对所述目标用户进行身份认证;若所述目标用户通过身份认证,则将所述预设内存空间中记录的所述目标用户对应的密钥存储至预设缓存空间;
所述调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理,包括:调用所述目标密码卡中的逻辑处理核心,以基于从所述预设缓存空间中获取的所述目标用户对应的密钥对接收到的数据进行业务处理。14.一种目标密码卡,其特征在于,所述目标密码卡与主机通过直接存储访问dma通道通信连接,所述主机还与除所述目标密码卡以外的其他密码卡通过dma通道通信连接;所述目标密码卡包括主处理组件和逻辑处理组件,所述逻辑处理组件包含至少一个逻辑处理核心,其中:所述主处理组件,用于执行如权利要求7-13任一项所述的高性能密码卡安全管理方法。15.一种高性能密码卡安全管理装置,其特征在于,所述装置应用于主机,所述主机与多个密码卡分别通过直接存储访问dma通道通信连接,所述装置包括:业务负载量获取模块,用于在接收到请求报文时,获取各密码卡当前的业务负载量;第一负载均衡模块,用于基于各密码卡当前的业务负载量和所述请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;数据发送模块,用于通过与每一密码卡之间的dma通道,发送所述待处理数据中该密码卡需要处理的数据量对应的数据。16.一种高性能密码卡安全管理装置,其特征在于,所述装置包括:数据接收模块,用于通过与主机之间的dma通道,接收所述主机发送的待处理数据中目标密码卡需要处理的数据量对应的数据;其中,所述目标密码卡需要处理的数据量为:所述主机基于通信连接的各密码卡当前的业务负载量和接收到请求报文所指示的待处理数据的数据量确定的;所述主机与各密码卡通过dma通道通信连接;处理模块,用于调用所述目标密码卡中的逻辑处理核心对接收到的数据进行业务处理。17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求2-6,或7-13任一所述的方法步骤。

技术总结
本申请实施例提供了一种高性能密码卡安全管理方法、装置和系统,涉及网络安全技术领域。在接收到请求报文时,主机获取各密码卡当前的业务负载量;基于各密码卡当前的业务负载量和从请求报文所指示的待处理数据的数据量,确定每一密码卡需要处理的数据量;通过与每一密码卡之间的DMA通道,发送待处理数据中该密码卡需要处理的数据量对应的数据,每一密码卡在接收到主机发送的数据时,调用该密码卡中的逻辑处理核心对接收到的数据进行业务处理。如此,能够充分利用密码卡的处理性能,提高数据处理的效率。处理的效率。处理的效率。


技术研发人员:王滨 陈达 陈加栋 吴飞 姚相振
受保护的技术使用者:杭州海康威视数字技术股份有限公司
技术研发日:2022.05.31
技术公布日:2022/7/5
转载请注明原文地址: https://www.8miu.com/read-5522.html

最新回复(0)