一种接口控制器、基板管理控制器及安全系统的制作方法

文档序号:12120736阅读:261来源:国知局
一种接口控制器、基板管理控制器及安全系统的制作方法与工艺

本发明涉及计算机技术领域,特别涉及一种接口控制器、基板管理控制器及安全系统。



背景技术:

服务器越来越多的应用在各个领域,用户为了对服务器的健康状态进行监控管理,通常采用BMC(Baseboard Management Controller,基板管理控制器)监控服务器的物理特征。

目前,BMC是独立的管理控制单元,不能和安全处理单元相连,而本身安全控制能力低,用户在使用BMC对服务器进行监控管理时,如果未使用专用网络、采用弱身份认证、密码复杂度低等不安全操作,会使服务器出现安全风险,比如被植入恶意代码,因此,使用BMC对服务器进行监控管理安全性较低。



技术实现要素:

本发明实施例提供了一种接口控制器、基板管理控制器及安全系统。以便于提高使用BMC对服务器进行监控管理安全性。

第一方面,本发明实施例提供了一种接口控制器,该接口控制器包括:

控制单元、存储单元、命令寄存器;其中,

所述控制单元,用于接收BMC的处理器发来的待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元中,将所述命令字写入到所述命令寄存器中,并且获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元中;

所述存储单元,用于保存所述控制单元写入的所述待处理数据,根据所述外部安全处理单元发来的读取所述待处理数据的命令,向所述外部安全处理单元输出所述待处理数据,并且,保存所述控制单元写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果;

所述命令寄存器,用于保存所述控制单元写入的所述命令字,根据所述外部安全处理单元发来的读取所述命令字的命令,向所述外部安全处理单元输出所述命令字。

优选地,进一步包括:长度寄存器;

所述控制单元,进一步用于确定所述待处理数据的长度值,将所述长度值写入所述长度寄存器中;

所述长度寄存器,用于保存所述控制单元写入的所述长度值,根据所述外部安全处理单元发来的读取所述长度值的命令,向所述外部安全处理单元输出所述长度值,以使所述外部安全处理单元根据所述长度值从所述存储单元读取所述待处理数据。

优选地,

所述接口控制器进一步包括:时钟模块,用于为所述外部安全处理单元提供时钟信号。

优选地,

所述接口控制器进一步包括:复位模块,用于向所述外部安全处理单元输出复位信号,使得所述外部安全处理单元根据所述复位信号复位。

优选地,

所述接口控制器进一步包括:休眠模块,用于向所述外部安全处理单元输出休眠信号,使得所述外部安全处理单元根据所述休眠信号进入休眠模式。

优选地,

所述命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字;

当所述命令字为所述加密命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述加密命令字对所述待处理数据进行加密处理得到的所述处理结果;

当所述命令字为所述解密命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述解密命令字对所述待处理数据进行解密处理得到的所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算得到的所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述密钥生成命令字,利用所述待处理数据生成的密钥。

第二方面,本发明实施例提供了一种基板管理控制器,该基板管理控制器包括:如第一方面任一所述的接口控制器和处理器;

所述处理器与所述接口控制器相连;

所述处理器,用于向所述接口控制器中的控制单元发送待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字。

优选地,

所述处理器与所述接口控制器通过AMBA(Advanced Microcontroller Bus Architecture,片上总线)总线相连。

第三方面,本发明实施例提供了一种安全系统,该安全系统包括:

如第二方面所述的基板管理控制器和安全处理单元;

所述安全处理单元与所述基板管理控制器中的接口控制器相连;

所述安全处理单元,用于从所述接口控制器中的存储单元中读取待处理数据,从所述接口控制器中的命令寄存器中读取用于控制所述安全处理单元处理所述待处理数据的命令字,根据所述命令字对所述待处理数据进行处理,生成处理结果,将所述输出给所述接口控制器中的控制单元。

优选地,

所述命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字;

当所述命令字为所述加密命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述加密命令字对所述待处理数据进行加密处理,生成所述处理结果;

当所述命令字为所述解密命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述解密命令字对所述待处理数据进行解密处理,生成所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算,生成所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述密钥生成命令字,利用所述待处理数据生成密钥。

优选地,

在所述接口控制器包括长度寄存器时,

所述安全处理单元,用于读取所述长度寄存器中保存的所述待处理数据的长度值,根据所述长度值从所述存储单元读取所述待处理数据。

优选地,

所述安全处理单元包括:TCM(Trusted Cryptography Module,可信密码模块)模块。

可见,本发明实施例提供了一种接口控制器、基板管理控制器及安全系统,该接口控制器包括控制单元、命令寄存器、存储单元;其中,所述控制单元,用于接收BMC的处理器发来的待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元中,将所述命令字写入到所述命令寄存器中,并且获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元中;所述存储单元,用于保存所述控制单元写入的所述待处理数据,根据所述外部安全处理单元发来的读取所述待处理数据的命令,向所述外部安全处理单元输出所述待处理数据,并且,保存所述控制单元写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果;所述命令寄存器,用于保存所述控制单元写入的所述命令字,根据所述外部安全处理单元发来的读取所述命令字的命令,向所述外部安全处理单元输出所述命令字。本方案提供的接口控制器,将BMC的处理器与外部的安全处理单元连接到了一起,通过控制单元接收BMC的处理器发来的待处理数据和待处理数据的命令字,并将待处理数据和及其对应的命令字发送给外部安全处理单元,以供外部处理单元进行相应的安全处理。并接收外部单元的安全处理结果,且根据处理器发来的读取指令将处理结果输出给处理器,由于通过接口控制器将处理器提供的数据在外部安全处理单元进行了安全处理,因此提高使用BMC对服务器进行监控管理安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例提供的一种接口控制器的结构示意图;

图2是本发明另一个实施例提供的一种接口控制器的结构示意图;

图3是本发明一个实施例提供的一种基板管理控制器的结构示意图;

图4是本发明一个实施例提供的一种安全系统的结构示意图;

图5是本发明另一个实施例提供的一种安全系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种接口控制器,该接口控制器包括:

控制单元101、存储单元102、命令寄存器103;其中,

所述控制单元101,用于接收BMC的处理器发来的待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元102中,将所述命令字写入到所述命令寄存器103中,并且获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元102中;

所述存储单元102,用于保存所述控制单元101写入的所述待处理数据,根据所述外部安全处理单元发来的读取所述待处理数据的命令,向所述外部安全处理单元输出所述待处理数据,并且,保存所述控制单元101写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果;

所述命令寄存器103,用于保存所述控制单元101写入的所述命令字,根据所述外部安全处理单元发来的读取所述命令字的命令,向所述外部安全处理单元输出所述命令字。

根据上述实施例,该接口控制器包括控制单元、命令寄存器、存储单元;其中,所述控制单元,用于接收BMC的处理器发来的待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元中,将所述命令字写入到所述命令寄存器中,并且获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元中;所述存储单元,用于保存所述控制单元写入的所述待处理数据,根据所述外部安全处理单元发来的读取所述待处理数据的命令,向所述外部安全处理单元输出所述待处理数据,并且,保存所述控制单元写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果;所述命令寄存器,用于保存所述控制单元写入的所述命令字,根据所述外部安全处理单元发来的读取所述命令字的命令,向所述外部安全处理单元输出所述命令字。本方案提供的接口控制器,将BMC的处理器与外部的安全处理单元连接到了一起,通过控制单元接收BMC的处理器发来的待处理数据和待处理数据的命令字,并将待处理数据和及其对应的命令字发送给外部安全处理单元,以供外部处理单元进行相应的安全处理。并接收外部单元的安全处理结果,且根据处理器发来的读取指令将处理结果输出给处理器,由于通过接口控制器将处理器提供的数据在外部安全处理单元进行了安全处理,因此提高使用BMC对服务器进行监控管理安全性。

在本发明一个实施例中,如图2所示,为了保证外部安全处理单元可以快速准确的读取存储单元中的待处理数据,所述接口控制器,还可以进一步包括长度寄存器201。

所述控制单元101,进一步用于确定所述待处理数据的长度值,将所述长度值写入所述长度寄存器201中;

所述长度寄存器201,用于保存所述控制单元101写入的所述长度值,根据所述外部安全处理单元发来的读取所述长度值的命令,向所述外部安全处理单元输出所述长度值,以使所述外部安全处理单元根据所述长度值从所述存储单元102读取所述待处理数据。

长度寄存器的形式可以根据具体的业务要求来确定,比如可以选用长度寄存器的长度为32bit。长度寄存器用于存放控制单元写入的待处理数据的长度值,这个长度值是待处理数据的总长度值,单位为字节,比如8字节。当外部安全处理单元发来的读取所述长度值的命令,将长度值8字节输出至外部安全处理单元,以使外部安全处理单元根据长度值8字节从存储单元中读取相应的待处理数据。

根据上述实施例,通过控制单元,确定待处理数据的长度值,并将长度值写入长度寄存器中,长度寄存器根据外部安全处理单元发来的读取长度值的命令,向外部安全处理单元输出长度值,以使外部安全处理单元根据长度值从存储单元读取对应的待处理数据。由于外部安全处理单元是根据获取的长度值来读取对应长度值的待处理数据,因此有效地提高了外部安全处理单元读取存储单元中的待处理数据的速度和准确性。

在本发明一个实施例中,为了BMC的处理器和外部安全处理单元时钟同步,所述接口控制器可以进一步包括时钟模块。

所述时钟模块,用于为所述外部安全处理单元提供时钟信号;

由于时钟直接影响着外部安全处理单元中记录文件的安全、错误检查和复原、存取安全与确认等处理过程,因此要做到时钟同步,时钟模块在外部安全处理单元提供时钟信息的时候,检测到高电平时有效,在上升沿被采样。

根据上述实施例,在所述接口控制器进一步包括时钟模块,利用时钟模块为外部安全处理单元提供时钟信息,以使BMC的处理器和外部安全处理单元时钟同步。

在本发明一个实施例中,当外部安全处理单元处于异常工作状态时,使得安全处理单元在不断电的情况下,可以重新启动,所述接口控制器可以进一步包括复位模块。

所述复位模块,用于向所述外部安全处理单元输出复位信号,使得所述外部安全处理单元根据所述复位信号复位;

当外部安全处理单元,处于异常工作状态,比如死机,不能进行安全处理时,可以通过复位模块向外部安全处理单元输出复位信号,使得外部安全处理单元根据复位信号进行复位。

根据上述实施例,在所述接口控制器进一步包括复位模块,利用复位模块向外部安全处理单元输出复位信号,使得外部安全处理单元根据复位信号进行复位处理,可以在外部安全处理单元处于异常工作状态时,使得安全处理单元在不断电的情况下,可以重新启动。

在本发明一个实施例中,在不需要外部安全处理单元进行安全处理时,所述接口控制器可以进一步包括休眠模块。

所述休眠模块,用于向所述外部安全处理单元输出休眠信号,使得所述外部安全处理单元根据所述休眠信号进入休眠模式。

当不需要外部安全处理单元进行安全处理的时候,可以通过休眠模块向外部安全处理单元输出休眠信号,使得外部安全处理单元根据休眠信号进入休眠模型,当外部处理单元切换到休眠后,自动将内存中的数据全部转存到一个休眠文件中,然后切断供电。这样当恢复的时候,从休眠文件的内容直接读入内存,并恢复到休眠之前的状态。

根据上述实施例,在所述接口控制器进一步包括休眠模块,利用休眠模块向外部安全处理单元输出休眠信号,使得外部安全处理单元根据休眠信号进入休眠模式。

在本发明一个实施例中,所述控制单元接收BMC的处理器发来用于控制外部安全处理单元处理所述待处理数据的命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字。

当所述命令字为所述加密命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述加密命令字对所述待处理数据进行加密处理得到的所述处理结果;

当所述命令字为所述解密命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述解密命令字对所述待处理数据进行解密处理得到的所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算得到的所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述控制单元,在执行所述获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取所述外部安全处理单元根据所述密钥生成命令字,利用所述待处理数据生成的密钥。

其中,加密命令字、解密命令字、哈希算法命令字和密钥生成命令字可以根据具体的业务要求来确定具体的命令字,比如加密命令字可以是sha1,解密命令字可以是openssl,哈希算法命令字可以是hash,密钥生成命令字git。

根据上述实施例,所述控制单元接收BMC的处理器发来用于控制外部安全处理单元处理所述待处理数据的命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字。可以根据具体的业务要求来选择具体的命令字的形式。

如图3所示,本发明实施例提供了一种基板管理控制器,该基板管理控制器包括:所述的接口控制器301和处理器302;

所述处理器302与所述接口控制器301相连;

所述处理器302,用于向所述接口控制器301中的控制单元发送待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字。

根据上述实施例,将处理器与接口控制器相连,处理器向接口控制器发送待处理数据和用于控制外部安全处理单元处理待处理数据的命令字,以使接口控制可以外部安全处理单元提供待处理数据及对待处理数据进行安全处理的命令字,因此提高使用BMC对服务器进行监控管理安全性。

在本发明一个实施例中,由于处理器与接口控制器相连并进行数据传输,它们之间可以通过AMBA总线相连。

如图4所示,本发明实施例提供了一种安全系统,该安全系统包括:所述的基板管理控制器401和安全处理单元402;

所述安全处理单元402与所述基板管理控制器401中的接口控制器4011相连;

所述安全处理单元402,用于从所述接口控制器4011中的存储单元中读取待处理数据,从所述接口控制器4011中的命令寄存器中读取用于控制所述安全处理单元处理所述待处理数据的命令字,根据所述命令字对所述待处理数据进行处理,生成处理结果,将所述输出给所述接口控制器4011中的控制单元。

根据上述实施例,将安全处理单元与基板管理控制器中的接口控制器相连;安全处理单元,从接口控制器中的存储单元中读取待处理数据,从接口控制器中的命令寄存器中读取用于控制安全处理单元处理待处理数据的命令字,根据命令字对所述待处理数据进行处理,生成处理结果,将所述输出给所述接口控制器中的控制单元。可以看出通过基板管理控制器中接口控制器将待处理数据及待处理数据对应的命令字传输至安全处理单元,安全处理单元根据命令字对待处理数据进行相应的安全处理,并将处理后的数据又通过接口控制器返回,因此提高使用BMC对服务器进行监控管理安全性。

在本发明一个实施例中,用于控制安全处理单元处理待处理数据的命令字包括所述命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字;

当所述命令字为所述加密命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述加密命令字对所述待处理数据进行加密处理,生成所述处理结果;

当所述命令字为所述解密命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述解密命令字对所述待处理数据进行解密处理,生成所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算,生成所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述外部安全处理单元,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述密钥生成命令字,利用所述待处理数据生成密钥。

在本发明一个实施例中,在所述接口控制器包括长度寄存器时,所述安全处理单元,用于读取所述长度寄存器中保存的所述待处理数据的长度值,根据所述长度值从所述存储单元读取所述待处理数据。

在本发明一个实施例中,所述安全处理单元包括可信密码模块TCM模块。

下面以安全系统中包括BMC和安全处理单元为TCM模块,其中,BMC中包括接口控制器和ARM处理器为例,对本发明实施例提供的安全系统进行说明,如图5所示,该安全系统可以包括:

BMC50和TCM模块51,其中,BMC50包括ARM处理器501和接口控制器502。

ARM处理器501,用于向所述接口控制器502中的控制单元5021发送待处理数据和用于控制TCM模块51处理所述待处理数据的命令字。

TCM模块51与BMC50中的接口控制器502相连,包括:利用AMBA总线503将ARM处理器501和接口控制器502相连,通过AMBA总线将ARM处理器提供的待处理数据和用于控制TCM模块处理所述待处理数据的命令字传输给接口控制器502。利用LCLK信号线,将接口控制器的clk引脚与TCM模块的clk引脚连接。利用nLFRAME信号线,将接口控制器的nLFRAME引脚与TCM模块的frame引脚连接。利用nLRESET信号线,将接口控制器的nLRESET引脚与TCM模块的reset引脚连接。利用LAD[3..0]信号线,将接口控制器的LAD[3..0]引脚与TCM模块的DATA[3..0]引脚连接。利用nLPCPD信号线,将接口控制器的nLPCPD引脚与TCM模块的PD引脚连接。利用IRQ信号线,将接口控制器的IRQ引脚与TCM模块的Interrupt引脚连接。

接口控制器502,包括:控制单元5021、存储单元5022、命令寄存器5023、长度寄存器5024、时钟模块5025、复位模块5026、休眠模块5027和控制寄存器5028。

所述控制单元5021,用于接收BMC50中的ARM处理器501发来的待处理数据和用于控制TCM模块51处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元5022中,将所述命令字写入到所述命令寄存器5023中,并确定所述待处理数据的长度值,将所述长度值写入所述长度寄存器5024中。

所述控制单元5021,进一步用于在所述接口控制器502处于开始工作状态时,将所述控制寄存器5028的第1位设置为1,使得所述接口控制器502进入数据传输状态,触发所述TCM模块51读取所述待处理数据,当第1位设置为0时,使得所述接口控制器停止数据传输状态。

所述控制单元5021,进一步用于在所述接口控制器502处于数据传输状态时,将所述控制寄存器5028的第2位设置为1,使得所述TCM模块51进入运算状态,触发所述TCM模块51对所述待处理数据进行预算。当第2位设置为0时,所述TCM模块51运算未完成。

所述控制单元5021,进一步用于在所述TCM模块51处于运算状态时,将所述控制寄存器5028的第3位设置为1,使得所述TCM模块51进入运算完成状态,触发所述TCM模块51生成处理结果,当第3位设置为0,所述TCM模块处于查询状态。

其中,所述命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字。具体包括的类型可以根据具体的业务要求来确定,比如加密命令字可以是sha1,解密命令字可以是openssl,哈希算法命令字可以是hash,密钥生成命令字git。

当所述命令字为所述加密命令字时,

所述控制单元5021,在执行所述获取TCM模块根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取TCM模块根据所述加密命令字对所述待处理数据进行加密处理得到的所述处理结果;

当所述命令字为所述解密命令字时,

所述控制单元5021,在执行所述获取TCM模块根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取TCM模块根据所述解密命令字对所述待处理数据进行解密处理得到的所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述控制单元5021,在执行所述获取TCM模块根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取TCM模块根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算得到的所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述控制单元5021,在执行所述获取TCM模块根据所述命令字对所述待处理数据进行处理后的处理结果时,用于获取TCM模块根据所述密钥生成命令字,利用所述待处理数据生成的密钥。

在本实施例中,所述命令字为哈希算法命令字hash,那么控制单元通过AMBA总线接收ARM处理器发来的待处理数据和命令字哈希算法命令字hash,并将待处理数据写入到存储单元中,将哈希算法命令字hash写入到命令寄存器中。

所述存储单元5022,用于保存所述控制单元5021写入的所述待处理数据,根据所述TCM模块51发来的读取所述待处理数据的命令,向TCM模块51输出所述待处理数据。

存储单元可是RAM存储区,具体的大小可以根据具体的业务要求来确定,可以设置RAM区的大小为1KB(32bit*256),该RAM存储区的作用是存放发送到TCM模块的待运算数据,以及TCM模块运算完成后的返回数据结果。

所述命令寄存器5023,用于保存所述控制单元5021写入的所述命令字,根据TCM模块51发来的读取所述命令字的命令,向所述TCM模块51输出所述命令字。

在本实施例中,命令寄存器保存控制单元写入的哈希算法命令字hash,根据TCM模块发来的读取命令字的命令,向TCM模块输出哈希算法命令字hash。

所述长度寄存器5024,用于保存所述控制单元5021写入的所述长度值,根据TCM模块51发来的读取所述长度值的命令,向TCM模块51输出所述长度值,以使TCM模块51根据所述长度值从所述存储单元5022读取所述待处理数据。

长度寄存器的形式可以根据具体的业务要求来确定,比如可以选用长度寄存器的长度为32bit。长度寄存器用于存放控制单元写入的待处理数据的长度值,这个长度值是待处理数据的总长度值,单位为字节,比如8字节。当TCM模块发来的读取所述长度值的命令,将长度值8字节输出到TCM模块,以使TCM模块根据长度值8字节从存储单元中读取相应的待处理数据。

所述时钟模块5025,通过LCLK信号线,为TCM模块提供时钟信号。

由于时钟直接影响着外部安全处理单元中记录文件的安全、错误检查和复原,存取安全与确认等处理过程,因此要做到时钟同步,时钟模块在外外部安全处理单元提供时钟信息的时候,检测到高电平时有效,在上升沿被采样。

所述复位模块5026,通过nLRESET信号线,向所述外部安全处理单元输出复位信号,使得所述外部安全处理单元根据所述复位信号复位

当外部安全处理单元,处于异常工作状态,比如死机,不能在进行安全处理时,可以通过复位模块向外部安全处理单元输出复位信号,使得外部安全处理单元根据复位信号进行复位。

所述休眠模块5027,通过nLPCPD信号线,向所述外部安全处理单元输出休眠信号,使得所述外部安全处理单元根据所述休眠信号进入休眠模式。

当不需要外部安全处理单元进行安全处理的时候,可以通过休眠模块向外部安全处理单元输出休眠信号,使得外部安全处理单元根据休眠信号进入休眠模型,当外部处理单元切换到休眠后,自动将内存中的数据全部转存到一个休眠文件中,然后切断对所有的供电。这样当恢复的时候,从休眠文件的内容直接读入内存,并恢复到休眠之前的状态。

所述TCM模块51,用于从所述接口控制器502中的存储单元5022中读取待处理数据,从所述接口控制器502中的命令寄存器5023中读取用于控制所述TCM模块51处理所述待处理数据的命令字,读取所述长度寄存器5024中保存的所述待处理数据的长度值,根据所述长度值从所述存储单元5022读取所述待处理数据。根据所述命令字对所述待处理数据进行处理,生成处理结果,将所述输出给所述接口控制器502中的控制单元5021。

所述命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字;

当所述命令字为所述加密命令字时,

所述TCM模块51,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述加密命令字对所述待处理数据进行加密处理,生成所述处理结果;

当所述命令字为所述解密命令字时,

所述TCM模块51,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述解密命令字对所述待处理数据进行解密处理,生成所述处理结果;

当所述命令字为所述哈希算法命令字时,

所述TCM模块51,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述哈希算法命令字,利用所述哈希算法命令字对应的哈希算法对所述待处理数据进行哈希运算,生成所述处理结果;

当所述命令字为所述密钥生成命令字时,

所述TCM模块51,在执行所述根据所述命令字对所述待处理数据进行处理,生成处理结果时,用于根据所述密钥生成命令字,利用所述待处理数据生成密钥。

在本实施例中,命令字为哈希算法命令字hash,TCM模块根据哈希算法命令字hash对所述待处理数据进行哈希运算,生成处理结果,并将处理结果输出给接口控制器中的控制单元。

所述控制单元5021,获取所述TCM模块51根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元5022中。

所述存储单元5022,保存所述控制单元5021写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果。

综上,本发明各个实施例至少可以实现如下有益效果:

1、在本发明实施例中,该接口控制器包括控制单元、命令寄存器、存储单元;其中,所述控制单元,用于接收BMC的处理器发来的待处理数据和用于控制外部安全处理单元处理所述待处理数据的命令字,将所述待处理数据写入到所述存储单元中,将所述命令字写入到所述命令寄存器中,并且获取所述外部安全处理单元根据所述命令字对所述待处理数据进行处理后的处理结果,将所述处理结果写入到所述存储单元中;所述存储单元,用于保存所述控制单元写入的所述待处理数据,根据所述外部安全处理单元发来的读取所述待处理数据的命令,向所述外部安全处理单元输出所述待处理数据,并且,保存所述控制单元写入的所述处理结果,根据所述处理器发来的读取所述处理结果的命令,向所述处理器输出所述处理结果;所述命令寄存器,用于保存所述控制单元写入的所述命令字,根据所述外部安全处理单元发来的读取所述命令字的命令,向所述外部安全处理单元输出所述命令字。本方案提供的接口控制器,将BMC的处理器与外部的安全处理单元连接到了一起,通过控制单元接收BMC的处理器发来的待处理数据和待处理数据的命令字,并将待处理数据和及其对应的命令字发送给外部安全处理单元,以供外部处理单元进行相应的安全处理。并接收外部单元的安全处理结果,且根据处理器发来的读取指令将处理结果输出给处理器,由于通过接口控制器将处理器提供的数据在外部安全处理单元进行了安全处理,因此提高使用BMC对服务器进行监控管理安全性。

2、在本发明实施例中,通过控制单元,确定待处理数据的长度值,并将长度值写入长度寄存器中,长度寄存器根据外部安全处理单元发来的读取长度值的命令,向外部安全处理单元输出长度值,以使外部安全处理单元根据长度值从存储单元读取对应的待处理数据。由于是外部安全处理单元是根据获取的长度值来读取对应长度值的待处理数据,因此有效地提高了外部安全处理单元读取存储单元中的待处理数据的速度和准确性。

3、在本发明实施例中,在所述接口控制器进一步包括时钟模块,利用时钟模块为外部安全处理单元提供时钟信息,以使BMC的处理器和外部安全处理单元时钟同步。

4、在本发明实施例中,在所述接口控制器进一步包括复位模块,利用复位模块向外部安全处理单元输出复位信号,使得外部安全处理单元根据复位信号进行复位处理,可以在外部安全处理单元处于异常工作状态时,使得安全处理单元在不断电的情况下,可以重新启动。

5、在本发明实施例中,在所述接口控制器进一步包括休眠模块,利用休眠模块向外部安全处理单元输出休眠信号,使得外部安全处理单元根据休眠信号进入休眠模式。

6、在本发明实施例中,所述控制单元接收BMC的处理器发来用于控制外部安全处理单元处理所述待处理数据的命令字包括:加密命令字、解密命令字、哈希算法命令字、密钥生成命令字。可以根据具体的业务要求来选择具体的命令字的形式。

7、在本发明实施例中,将处理器与接口控制器相连,处理器向接口控制器发送待处理数据和用于控制外部安全处理单元处理待处理数据的命令字,以使接口控制可以外部安全处理单元提供待处理数据及对待处理数据进行安全处理的命令字,因此提高使用BMC对服务器进行监控管理安全性。

8、在本发明实施例中,将安全处理单元与基板管理控制器中的接口控制器相连;安全处理单元,从接口控制器中的存储单元中读取待处理数据,从接口控制器中的命令寄存器中读取用于控制安全处理单元处理待处理数据的命令字,根据命令字对所述待处理数据进行处理,生成处理结果,将所述输出给所述接口控制器中的控制单元。可以看出通过基板管理控制器中接口控制器将待处理数据及待处理数据对应的命令字传输至安全处理单元,安全处理单元根据命令字对待处理数据进行相应的安全处理,并将处理后的数据又通过接口控制器返回,因此提高使用BMC对服务器进行监控管理安全性。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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