基于BMC的数据加解密处理方法、装置、电子设备及存储介质与流程
未命名
10-14
阅读:86
评论:0

基于bmc的数据加解密处理方法、装置、电子设备及存储介质
技术领域
1.本发明实施例涉及数据处理领域,尤其涉及一种基于bmc的数据加解密处理方法、装置、电子设备及存储介质。
背景技术:
2.基板管理控制器(baseboard management controller,bmc)是运行在服务器主板上的一款独立的芯片,其内部架构完善,主要用于服务器的监控和管理。因为bmc可以直接或间接的控制服务器的运行,因此,其内部的安全机制非常重要。服务器的安全启动是bmc的主要功能之一,通过解密模块进行相关启动文件的签名校验和解密处理。但是安全启动功能相对单一,一般是针对几种密码算法的解密功能实现,且具有一定的时效性,启动完成后即可处于低功耗状态,没有有效的利用硬件资源。另一方面,为了保证bmc远程数据的传输安全,有些bmc芯片还会对远程传输数据进行加密处理,而加密模块,一般是针对几种密码算法的加密功能实现,耦合在待传输数据的处理模块中,根据配置开启或者关闭数据传输加密功能。由此可见,安全启动和数据传输加密过程中,其加、解密功能相对独立且分离,相似密码算法的计算资源重复实现而不会同时使用,实现了多种加解密算法功能也不会同时使用,且嵌入在各自的数据处理流程中,深度绑定,不够灵活,资源浪费。
技术实现要素:
3.鉴于此,为解决上述技术问题或部分技术问题,本发明实施例提供一种基于bmc的数据加解密处理方法、装置、电子设备及存储介质。
4.第一方面,本发明实施例提供一种基于bmc的数据加解密处理方法,包括:
5.获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;
6.获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;
7.基于所述模块状态信息确定针对所述目标数据的处理策略;
8.基于所述处理策略对所述目标数据进行加解密处理。
9.在一个可能的实施方式中,所述方法还包括:
10.若所述模块状态信息满足数据处理状态,则确定所述处理策略为对所述目标数据进行加解密处理;
11.若所述模块状态信息不满足数据处理状态,则确定所述处理策略为对所述目标数据进行调控。
12.在一个可能的实施方式中,所述方法还包括:
13.所述模块状态信息至少包括数据处理模块的空闲状态、输入缓冲通路的占用状态、缓冲通路中先入先出队列的空闲状态、输入通道的中断状态;
14.若所述目标数据为系统安全启动数据,则通过第一通路获取所述系统安全启动数据;
15.将所述系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;
16.调用安全启动数据处理模块对所述缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。
17.在一个可能的实施方式中,所述方法还包括:
18.若所述目标数据为待加解密数据,则获取所述待加解密数据对应的加解密算法;
19.基于所述加解密算法确定对应的目标数据处理模块,判断所述目标数据处理模块的输入缓冲通路的占用状态;
20.若所述输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据;
21.获取所述目标数据处理模块的空闲状态;
22.基于所述目标数据处理模块的空闲状态对所述目标数据进行处理。
23.在一个可能的实施方式中,所述方法还包括:
24.若所述目标数据处理模块处于空闲状态,则将所述待加解密数据存储在空闲的缓冲通路中先入先出队列中;
25.调用所述目标数据处理模块对所述缓冲通路中先入先出队列中存储的待加解密数据进行数据加解密处理,得到加解密完成的数据;
26.若所述目标数据处理模块处于繁忙状态,则将所述待加解密数据缓存在输入缓冲通路中,等待所述目标数据处理模块处于空闲状态时,对所述待加解密数据进行数据加解密处理。
27.在一个可能的实施方式中,所述方法还包括:
28.在对所述待加解密数据完成数据加解密处理后,将得到的加解密完成的数据反馈到获取所述待加解密数据时的存储地址中。
29.在一个可能的实施方式中,所述方法还包括:
30.基于所述目标数据携带的目标存储地址确定对应的传输总线;
31.通过确定的传输总线将所述目标数据存储到所述目标存储地址中。
32.第二方面,本发明实施例提供一种基于bmc的数据加解密处理装置,包括:
33.整合模块,用于获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;
34.获取模块,用于获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;
35.确定模块,用于基于所述模块状态信息确定针对所述目标数据的处理策略;
36.处理模块,用于基于所述处理策略对所述目标数据进行加解密处理。
37.第三方面,本发明实施例提供一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的基于bmc的数据加解密处理程序,以实现上述第一方面中所述的基于bmc的数据加解密处理方法。
38.第四方面,本发明实施例提供一种存储介质,包括:所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面中
所述的基于bmc的数据加解密处理方法。
39.本发明实施例提供的基于bmc的数据加解密处理方案,通过获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;基于所述模块状态信息确定针对所述目标数据的处理策略;基于所述处理策略对所述目标数据进行加解密处理。相比于现有的bmc芯片中的加解密功能和系统安全启动功能独立且分离造成各自的数据处理流程不够灵活、浪费资源的问题。由本方案,通过分析安全启动过程和数据传输过程中所需求的密码算法,将相似密码算法的加解密计算资源融合,优化加解密前后的数据存储,并通过统一的控制模块实现不同密码算法的加解密调度,形成一个独立的专用的数据处理功能模块,从固定数据流程中解耦,可以有效的利用硬件资源,拓展数据安全处理的应用范围,提高数据安全处理的并行性和灵活度。
附图说明
40.图1为本发明实施例提供的一种基于bmc的数据加解密处理架构示意图;
41.图2为本发明实施例提供一种基于bmc的数据加解密处理方法的流程示意图;
42.图3为本发明实施例提供一种数据处理功能模块的架构示意图;
43.图4为本发明实施例提供一种基于bmc的数据加解密处理装置的结构示意图;
44.图5为本发明实施例提供一种电子设备的结构示意图。
具体实施方式
45.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
46.为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
47.图1为本发明实施例提供的一种基于bmc的数据加解密处理架构示意图,如图1所示,将bmc中离散的数据处理模块(加解密计算模块),集中整合到数据处理功能模块(security模块)中,复用相似算法的加密和解密计算资源,共用加解密前后的存储资源,通过针对不同通路数据的分时处理、分类控制,满足bmc中各个功能模块的安全处理需求。其中,server代表服务器端,通过lpc、espi和pcie等总线和bmc芯片互联。bmc芯片中,总线互联模块crossbar实现了主从模块高速总线信号传输的交互处理,cpu及高速外设直接挂载在crossbar上,低速外设通过总线桥接模块busconverter连接,完成高低速总线信号转换。
48.集成后的security模块灵活性更高,不再局限于某个模块中,可以拓展支持多种数据处理方案如下:
49.直连通路
①
:该通路支持固定功能数据安全处理模块和security模块的数据直连。例如安全启动模块,在系统上电时首先工作,保证系统文件安全。本发明实施例中的安全启动模块只保留了传统应用中的系统安全启动控制逻辑,算法相关的数据安全处理过程
集成到了security模块。实际应用时,安全启动模块的工作流程和传统应用保持一致,只是将获取到的待处理的密文数据块、秘钥信息等经通道
①
转至security模块处理,处理完成后反馈结果,完成安全启动验证。通路
①
可扩展支持其它外设模块的直连加解密功能需求。
50.总线通道
②
:该通道支持通过总线进行的各种应用方案下对于security模块的加解密功能配置,如加解密算法功能模式、秘钥信息、数据通路模式、ddr通路的读数据起始地址、返回数据起始地址、数据长度等,配置信息遵从自定义的配置帧格式。此外,该通路也支持通过总线调度的待加解密处理的小规模数据,security模块根据设定的标签(例如axi总线协议中的id值)区分数据,加解密完成后可以通过中断触发等方式反馈处理结果。
51.ddr通道
③
:该通道支持security模块对于ddr中数据的直接读写,可将security模块视为server端、bmccpu或者其它可仿存ddr外设的加解密安全处理的加速器,可通过dma模式将待处理数据存储到ddr中,通过总线通道配置相关信息,security模块完成处理后将数据写回ddr,并触发相应中断信号。dma模式在数据量大的时候使用可以释放cpu资源。
52.网络输出通道
④
:该通路支持security模块加解密处理后的数据直接经emac远程传输。
53.图2为本发明实施例提供一种基于bmc的数据加解密处理方法的流程示意图,如图2所示,该方法具体包括:
54.s21、获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理。
55.本发明实施例中,将bmc中离散的数据处理模块(加解密计算模块),集中整合到数据处理功能模块(security模块)中,复用相似算法的加密和解密计算资源,共用加解密前后的存储资源,通过针对不同通路数据的分时处理、分类控制,满足bmc中各个功能模块的安全处理需求。其中,server代表服务器端,通过lpc、espi和pcie等总线和bmc芯片互联。bmc芯片中,总线互联模块crossbar实现了主从模块高速总线信号传输的交互处理,cpu及高速外设直接挂载在crossbar上,低速外设通过总线桥接模块busconverter连接,完成高低速总线信号转换。
56.其中,为保持security模块的独立性,和无关逻辑解耦,security模块只包含了各个算法的加解密功能模块和数据流存储控制模块,其架构如图3所示,加解密功能模块集中了传统方案中各个模块涉及到的加解密算法功能实现,比如ase、rsa算法等,每个算法的加、解密过程一般不会同时使用,其计算过程相似或者可逆,因此,在进行算法实现时,每种加解密算法可共用一套计算逻辑,多种加解密算法可共用前后的存储资源,可大幅降低资源占用,减小芯片面积。
57.config模块接收解析总线通道的配置信息,供给data_ctrl模块和加解密功能模块;state模块即时更新反馈security模块状态,例如各个算法模块是否空闲、输入缓冲通路是否占用、通路中输入输出fifo(缓冲通路中先入先出队列)空满状态、三个输入通道的中断状态等,security模块根据状态信息完成数据交互和数据处理过程。输入输出fifo作为加解密处理前后的数据输入和输出缓冲,同时完成数据交互和数据处理模块间的时钟转换和数据位宽处理。加解密功能模块按高速数据的流水线处理设计,因此,fifo可根据需求
能够缓冲几组数据即可,无需占用过多资源。每个输入输出fifo可支持一路数据的安全处理,多个通路可支持不同加解密算法的多路数据并行处理,安全处理路数可根据实际应用中的安全处理算法种类多少、加解密处理频率设定。本发明实施例以两路输入输出fifo进行说明。
58.s22、获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息。
59.获取待处理的目标数据,该目标数据携带有目标存储地址,例如,cpu发送数据到ddr中,则目标存储地址为ddr的ip地址。获取待处理的目标数据之后,基于目标数据携带的目标存储地址确定对应的传输总线(ddr通道
③
);通过确定的传输总线将目标数据存储到所述目标存储地址中。
60.进一步的,获取数据处理功能模块(security模块)中各个数据处理模块的模块状态信息,该模块状态信息包括但不限于:数据处理模块的空闲状态、输入缓冲通路的占用状态、缓冲通路中先入先出队列的空闲状态、输入通道的中断状态。可以根据模块状态信息判断是否可以对目标数据进行处理。
61.s23、基于所述模块状态信息确定针对所述目标数据的处理策略。
62.若模块状态信息满足数据处理状态,则确定处理策略为对所述目标数据进行处理。例如,数据处理模块处于空闲状态、输入缓冲通路未被占用、缓冲通路中先入先出队列处于空闲状态、输入通道没有反馈中断,则可以对目标数据立即进行数据处理。
63.可选的,若模块状态信息不满足数据处理状态,则确定处理策略为对所述目标数据进行调控。例如,数据处理模块处于繁忙状态、输入缓冲通路被占用、缓冲通路中先入先出队列处于满数据状态、输入通道反馈中断,则可以对目标数据进行调控,包括缓存到输入缓冲通路中或缓存到未满数据状态的缓冲通路中先入先出队列中。
64.s24、基于所述处理策略对所述目标数据进行加解密处理。
65.若目标数据为系统安全启动数据,则通过第一通路获取系统安全启动数据;将系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;调用安全启动数据处理模块对缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。
66.具体的,data_ctrl模块根据config的配置信息(例如,加解密算法功能模式、秘钥信息、数据通路模式、ddr通路的读数据起始地址、返回数据起始地址、数据长度等信息)和state模块的状态信息,接收并调配各通道数据到加解密功能模块处理。系统上电时,仅安全启动模块工作,安全启动的相关数据(例如,待进行校验的一些信息包括校验文件的完整性、签名等)经通路
①
和security模块交互,此时security模块双路fifo均空闲,可支持双路并行,比如安全启动的签名和解密并行推进,顺序解密核验结果,辅助系统快速启动。系统启动完成正常工作时,安全启动功能可处于低功耗模式。当无加解密需求时,security模块空闲,可处于低功耗模式。
67.可选的,若目标数据为待加解密数据,则获取待加解密数据对应的加解密算法;基于加解密算法确定对应的目标数据处理模块,判断目标数据处理模块的输入缓冲通路的占用状态;若输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据。
68.进一步的,获取目标数据处理模块的空闲状态;若目标数据处理模块处于空闲状
态,则将待加解密数据存储在空闲的缓冲通路中先入先出队列中;调用目标数据处理模块对缓冲通路中先入先出队列中存储的待加解密数据进行数据处理,得到加解密完成的数据;
69.可选的,若目标数据处理模块处于繁忙状态,则将待加解密数据缓存在输入缓冲通路中,等待目标数据处理模块处于空闲状态时,对待加解密数据进行数据处理。
70.具体的,当总线发起加解密功能配置时,config模块解析相关信息,data_ctrl模块调控待处理数据到空闲的fifo输入通路,当检测到输入fifo中存在待处理数据时,加解密功能模块根据配置完成加解密数据处理,结果经输出fifo缓存,实时更新处理过程中的状态信息及发起相应中断,在对待加解密数据完成数据处理后,将得到的加解密完成的数据结果最终写回到ddr、返回到相应外设、经总线读走或者转发到emac远程传输。
71.本发明实施例将传统方案中离散的各个数据处理模块涉及到的多种加、解密算法功能实现整合,集中到一个独立的安全处理模块(数据处理功能模块)中,一方面,可以复用相似算法的加密和解密计算资源,优化并复用多种算法加解密前后的存储资源,能够大幅降低资源占用,减小芯片面积;另一方面,可以将各个加解密算法从嵌入在各个模块的数据流程中解耦,通过统一的控制模块实现不同算法的加解密调度,能够拓展数据安全处理的应用范围,提高数据安全处理的并行性和灵活度。
72.本发明实施例提供的基于bmc的数据加解密处理方法,通过获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;基于所述模块状态信息确定针对所述目标数据的处理策略;基于所述处理策略对所述目标数据进行加解密处理。相比于现有的bmc芯片中的加解密功能和系统安全启动功能独立且分离造成各自的数据处理流程不够灵活、浪费资源的问题。由本方法,通过分析安全启动过程和数据传输过程中所需求的密码算法,将相似密码算法的加解密计算资源融合,优化加解密前后的数据存储,并通过统一的控制模块实现不同密码算法的加解密调度,形成一个独立的专用的数据处理功能模块,从固定数据流程中解耦,可以有效的利用硬件资源,拓展数据安全处理的应用范围,提高数据安全处理的并行性和灵活度。
73.图4为本发明实施例提供一种基于bmc的数据加解密处理装置的结构示意图,如图4所示,具体包括:
74.整合模块401,用于获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;
75.获取模块402,用于获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;
76.确定模块403,用于基于所述模块状态信息确定针对所述目标数据的处理策略;
77.处理模块404,用于基于所述处理策略对所述目标数据进行加解密处理。
78.在一个可能的实施方式中,所述获取模块402,还用于基于所述目标数据携带的目标存储地址确定对应的传输总线;通过确定的传输总线将所述目标数据存储到所述目标存储地址中。
79.在一个可能的实施方式中,所述确定模块403,还用于若所述模块状态信息满足数据处理状态,则确定所述处理策略为对所述目标数据进行加解密处理;若所述模块状态信息不满足数据处理状态,则确定所述处理策略为对所述目标数据进行调控。
80.在一个可能的实施方式中,所述处理模块404,还用于若所述目标数据为系统安全启动数据,则通过第一通路获取所述系统安全启动数据;将所述系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;调用安全启动数据处理模块对所述缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。
81.在一个可能的实施方式中,所述处理模块404,还用于若所述目标数据为待加解密数据,则获取所述待加解密数据对应的加解密算法;基于所述加解密算法确定对应的目标数据处理模块,判断所述目标数据处理模块的输入缓冲通路的占用状态;若所述输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据;获取所述目标数据处理模块的空闲状态;基于所述目标数据处理模块的空闲状态对所述目标数据进行处理。
82.在一个可能的实施方式中,所述处理模块404,还用于若所述目标数据处理模块处于空闲状态,则将所述待加解密数据存储在空闲的缓冲通路中先入先出队列中;调用所述目标数据处理模块对所述缓冲通路中先入先出队列中存储的待加解密数据进行数据加解密处理,得到加解密完成的数据;若所述目标数据处理模块处于繁忙状态,则将所述待加解密数据缓存在输入缓冲通路中,等待所述目标数据处理模块处于空闲状态时,对所述待加解密数据进行数据加解密处理。
83.在一个可能的实施方式中,所述处理模块404,还用于在对所述待加解密数据完成数据加解密处理后,将得到的加解密完成的数据反馈到获取所述待加解密数据时的存储地址中。
84.本实施例提供的基于bmc的数据加解密处理装置可以是如图4中所示的基于bmc的数据加解密处理装置,可执行如图2中基于bmc的数据加解密处理方法的所有步骤,进而实现图2所示基于bmc的数据加解密处理方法的技术效果,具体请参照图2相关描述,为简洁描述,在此不作赘述。
85.图5为本发明实施例提供的一种电子设备的结构示意图,图5所示的电子设备500包括:至少一个处理器501、存储器502、至少一个网络接口504和其他用户接口503。电子设备500中的各个组件通过总线系统505耦合在一起。可理解,总线系统505用于实现这些组件之间的连接通信。总线系统505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统505。
86.其中,用户接口503可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
87.可以理解,本发明实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器
(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。本文描述的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。
88.在一些实施方式中,存储器502存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统5021和应用程序5022。
89.其中,操作系统5021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序5022,包含各种应用程序,例如媒体播放器(media player)、浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序5022中。
90.在本发明实施例中,通过调用存储器502存储的程序或指令,具体的,可以是应用程序5022中存储的程序或指令,处理器501用于执行各方法实施例所提供的方法步骤,例如包括:
91.获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;基于所述模块状态信息确定针对所述目标数据的处理策略;基于所述处理策略对所述目标数据进行加解密处理。
92.在一个可能的实施方式中,若所述模块状态信息满足数据处理状态,则确定所述处理策略为对所述目标数据进行加解密处理;若所述模块状态信息不满足数据处理状态,则确定所述处理策略为对所述目标数据进行调控。
93.在一个可能的实施方式中,所述模块状态信息至少包括数据处理模块的空闲状态、输入缓冲通路的占用状态、缓冲通路中先入先出队列的空闲状态、输入通道的中断状态;若所述目标数据为系统安全启动数据,则通过第一通路获取所述系统安全启动数据;将所述系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;调用安全启动数据处理模块对所述缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。
94.在一个可能的实施方式中,若所述目标数据为待加解密数据,则获取所述待加解密数据对应的加解密算法;基于所述加解密算法确定对应的目标数据处理模块,判断所述目标数据处理模块的输入缓冲通路的占用状态;若所述输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据;获取所述目标数据处理模块的空闲状态;基于所述目标数据处理模块的空闲状态对所述目标数据进行处理。
95.在一个可能的实施方式中,若所述目标数据处理模块处于空闲状态,则将所述待加解密数据存储在空闲的缓冲通路中先入先出队列中;调用所述目标数据处理模块对所述缓冲通路中先入先出队列中存储的待加解密数据进行数据加解密处理,得到加解密完成的数据;若所述目标数据处理模块处于繁忙状态,则将所述待加解密数据缓存在输入缓冲通路中,等待所述目标数据处理模块处于空闲状态时,对所述待加解密数据进行数据加解密处理。
96.在一个可能的实施方式中,在对所述待加解密数据完成数据加解密处理后,将得到的加解密完成的数据反馈到获取所述待加解密数据时的存储地址中。
97.在一个可能的实施方式中,基于所述目标数据携带的目标存储地址确定对应的传输总线;通过确定的传输总线将所述目标数据存储到所述目标存储地址中。
98.上述本发明实施例揭示的方法可以应用于处理器501中,或者由处理器501实现。处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成上述方法的步骤。
99.可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(application specific integrated circuits,asic)、数字信号处理器(digital signal processing,dsp)、数字信号处理设备(dspdevice,dspd)、可编程逻辑设备(programmable logic device,pld)、现场可编程门阵列(field-programmable gate array,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术所述功能的其它电子单元或其组合中。
100.对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
101.本实施例提供的电子设备可以是如图5中所示的电子设备,可执行如图2中基于bmc的数据加解密处理方法的所有步骤,进而实现图2所示基于bmc的数据加解密处理方法的技术效果,具体请参照图2相关描述,为简洁描述,在此不作赘述。
102.本发明实施例还提供了一种存储介质(计算机可读存储介质)。这里的存储介质存储有一个或者多个程序。其中,存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。
103.当存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述在电子设备侧执行的基于bmc的数据加解密处理方法。
104.所述处理器用于执行存储器中存储的基于bmc的数据加解密处理程序,以实现以下在电子设备侧执行的基于bmc的数据加解密处理方法的步骤:
105.获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;基于所述模块状态信息确定针对所述目标数据的处理策略;基于所述
处理策略对所述目标数据进行加解密处理。
106.在一个可能的实施方式中,若所述模块状态信息满足数据处理状态,则确定所述处理策略为对所述目标数据进行加解密处理;若所述模块状态信息不满足数据处理状态,则确定所述处理策略为对所述目标数据进行调控。
107.在一个可能的实施方式中,所述模块状态信息至少包括数据处理模块的空闲状态、输入缓冲通路的占用状态、缓冲通路中先入先出队列的空闲状态、输入通道的中断状态;若所述目标数据为系统安全启动数据,则通过第一通路获取所述系统安全启动数据;将所述系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;调用安全启动数据处理模块对所述缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。
108.在一个可能的实施方式中,若所述目标数据为待加解密数据,则获取所述待加解密数据对应的加解密算法;基于所述加解密算法确定对应的目标数据处理模块,判断所述目标数据处理模块的输入缓冲通路的占用状态;若所述输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据;获取所述目标数据处理模块的空闲状态;基于所述目标数据处理模块的空闲状态对所述目标数据进行处理。
109.在一个可能的实施方式中,若所述目标数据处理模块处于空闲状态,则将所述待加解密数据存储在空闲的缓冲通路中先入先出队列中;调用所述目标数据处理模块对所述缓冲通路中先入先出队列中存储的待加解密数据进行数据加解密处理,得到加解密完成的数据;若所述目标数据处理模块处于繁忙状态,则将所述待加解密数据缓存在输入缓冲通路中,等待所述目标数据处理模块处于空闲状态时,对所述待加解密数据进行数据加解密处理。
110.在一个可能的实施方式中,在对所述待加解密数据完成数据加解密处理后,将得到的加解密完成的数据反馈到获取所述待加解密数据时的存储地址中。
111.在一个可能的实施方式中,基于所述目标数据携带的目标存储地址确定对应的传输总线;通过确定的传输总线将所述目标数据存储到所述目标存储地址中。
112.专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
113.结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
114.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于bmc的数据加解密处理方法,其特征在于,包括:获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;基于所述模块状态信息确定针对所述目标数据的处理策略;基于所述处理策略对所述目标数据进行加解密处理。2.根据权利要求1所述的方法,其特征在于,所述基于所述模块状态信息确定针对所述目标数据的处理策略,包括:若所述模块状态信息满足数据处理状态,则确定所述处理策略为对所述目标数据进行加解密处理;若所述模块状态信息不满足数据处理状态,则确定所述处理策略为对所述目标数据进行调控。3.根据权利要求1所述的方法,其特征在于,所述模块状态信息至少包括数据处理模块的空闲状态、输入缓冲通路的占用状态、缓冲通路中先入先出队列的空闲状态、输入通道的中断状态;所述基于所述处理策略对所述目标数据进行加解密处理,包括:若所述目标数据为系统安全启动数据,则通过第一通路获取所述系统安全启动数据;将所述系统安全启动数据存储在空闲的缓冲通路中先入先出队列中;调用安全启动数据处理模块对所述缓冲通路中先入先出队列中存储的系统安全启动数据进行顺序解密核验,完成系统安全启动。4.根据权利要求3所述的方法,其特征在于,所述基于所述处理策略对所述目标数据进行加解密处理,包括:若所述目标数据为待加解密数据,则获取所述待加解密数据对应的加解密算法;基于所述加解密算法确定对应的目标数据处理模块,判断所述目标数据处理模块的输入缓冲通路的占用状态;若所述输入缓冲通路未被占用,则通过输入缓冲通路获取所述待加解密数据;获取所述目标数据处理模块的空闲状态;基于所述目标数据处理模块的空闲状态对所述目标数据进行处理。5.根据权利要求4所述的方法,其特征在于,所述基于所述目标数据处理模块的空闲状态对所述目标数据进行处理,包括:若所述目标数据处理模块处于空闲状态,则将所述待加解密数据存储在空闲的缓冲通路中先入先出队列中;调用所述目标数据处理模块对所述缓冲通路中先入先出队列中存储的待加解密数据进行数据加解密处理,得到加解密完成的数据;若所述目标数据处理模块处于繁忙状态,则将所述待加解密数据缓存在输入缓冲通路中,等待所述目标数据处理模块处于空闲状态时,对所述待加解密数据进行数据加解密处
理。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:在对所述待加解密数据完成数据加解密处理后,将得到的加解密完成的数据反馈到获取所述待加解密数据时的存储地址中。7.根据权利要求1所述的方法,其特征在于,所述获取待处理的目标数据之后,所述方法还包括:基于所述目标数据携带的目标存储地址确定对应的传输总线;通过确定的传输总线将所述目标数据存储到所述目标存储地址中。8.一种基于bmc的数据加解密处理装置,其特征在于,包括:整合模块,用于获取bmc中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,所述数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取模块,用于获取待处理的目标数据以及所述数据处理功能模块中各个数据处理模块的模块状态信息;确定模块,用于基于所述模块状态信息确定针对所述目标数据的处理策略;处理模块,用于基于所述处理策略对所述目标数据进行加解密处理。9.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的基于bmc的数据加解密处理程序,以实现权利要求1~7中任一项所述的基于bmc的数据加解密处理方法。10.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1~7中任一项所述的基于bmc的数据加解密处理方法。
技术总结
本发明实施例涉及一种基于BMC的数据加解密处理方法、装置、电子设备及存储介质,包括:获取BMC中全部离散的数据加解密处理模块,将全部数据加解密处理模块进行整合,得到数据处理功能模块,数据处理功能模块用于对待处理的目标数据进行加解密调度和加解密处理;获取待处理的目标数据以及数据处理功能模块中各个数据处理模块的模块状态信息;基于模块状态信息确定针对目标数据的处理策略;基于处理策略对目标数据进行处理。由此,将相似密码算法的加解密计算资源融合,并通过统一的控制模块实现不同密码算法的加解密调度,可以有效的利用硬件资源,拓展数据安全处理的应用范围,提高数据安全处理的并行性和灵活度。数据安全处理的并行性和灵活度。数据安全处理的并行性和灵活度。
技术研发人员:王贤坤 邹晓峰 周玉龙 刘同强 张贞雷
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2023.07.24
技术公布日:2023/10/8
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/