CN115221549A - Lpc总线安全访问方法、系统、终端及存储介质 - Google Patents

Lpc总线安全访问方法、系统、终端及存储介质 Download PDF

Info

Publication number
CN115221549A
CN115221549A CN202210549674.1A CN202210549674A CN115221549A CN 115221549 A CN115221549 A CN 115221549A CN 202210549674 A CN202210549674 A CN 202210549674A CN 115221549 A CN115221549 A CN 115221549A
Authority
CN
China
Prior art keywords
lpc
bios
request
lpc bus
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210549674.1A
Other languages
English (en)
Inventor
张国磊
王宏伟
贡维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210549674.1A priority Critical patent/CN115221549A/zh
Publication of CN115221549A publication Critical patent/CN115221549A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及服务器技术领域,具体提供一种LPC总线安全访问方法、系统、终端及存储介质,包括:设置BIOS在默认状态下不对LPC总线进行初始化;在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。本发明通过对LPC初始化的过程进行变更,在对LPC初始化过程中加入对CPU请求进行识别的步骤,从而避免了其它恶意请求登录篡改BMC,提升了服务器的安全性能。

Description

LPC总线安全访问方法、系统、终端及存储介质
技术领域
本发明涉及服务器技术领域,具体涉及一种LPC总线安全访问方法、系统、终端及存储介质。
背景技术
服务器中除CPU以外,运行了一个独立于CPU的系统BMC,BMC用来对服务器的主板进行监控,并提供对外的接口,对外的接口主要包括IPMI等多种形式。
IPMI可以通过网络、LPC以及I2C对外提供服务,目前BMC和CPU之间普遍采用LPC这种方式。LPC总线(Low pin count Bus),是在IBM PC兼容机中用于把低带宽设备和“老旧设备”连接到CPU上。那些常见低速设备有:BIOS,串口,并口,PS/2的键盘和鼠标,软盘控制器,比较新的设备有可信平台模块。LPC总线通常和主板上的南桥物理相连,南桥在IBM PC AT平台上通常连接了一系列的“老旧”设备,例如两个可编程中断控制器,可编程计时器和两个ISA DMA控制器。
现有的基于LPC的通信方案中,运行在CPU上的操作系统无需获取任何额外的权限便可以通过基于LPC的IPMI对BMC进行控制,存在安全隐患。
发明内容
针对现有技术由于运行在CPU上的操作系统无需获取任何额外的权限便可以通过基于LPC的IPMI对BMC进行控制而导致的安全隐患,本发明提供一种LPC总线安全访问方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种LPC总线安全访问方法,包括:
设置BIOS在默认状态下不对LPC总线进行初始化;
在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
进一步的,在BIOS内设置LPC总线访问密钥对,包括:
BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;
BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
进一步的,BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求,包括:
BIOS预先将各项目对应的加解密算法和密钥对保持至请求解析列表;
BIOS在接收到操作系统发送的加密请求后,从所述请求解析列表查找对应的加解密算法和私钥对所述加密请求进行解密。
进一步的,所述方法还包括:
BIOS将项目公钥和项目编码同步发送至操作系统,以便操作系统利用所述项目编码标记基于项目公钥生成的加密请求;
BIOS从加密请求提取项目编码,并根据所述项目编码从请求解析列表中查找对应的加解密算法和私钥,所述请求解析列表以映射的方式保存项目编码、加解密算法和私钥。
进一步的,BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线,包括:
BIOS基于所述LPC总线开启请求调用初始化所述LPC总线的功能项,执行对LPC总线的初始化;
BIOS在LPC总线初始化完成后读取LPC地址;
BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器。
进一步的,在BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器之后,所述方法还包括:
操作系统创建监控线程,通过所述监控线程监控所述寄存器是否存在数据更新;
若所述监控线程监控到所述寄存器存在数据更新,则从寄存器读取更新的LPC地址;
操作系统基于所述LPC地址对BMC接口层驱动重新初始化,以获取访问LPC的权限。
第二方面,本发明提供一种LPC总线安全访问系统,包括:
默认设置单元,用于设置BIOS在默认状态下不对LPC总线进行初始化;
加密设置单元,用于在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
请求解析单元,用于BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
请求执行单元,用于BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
进一步的,所述加密设置单元包括:
秘钥生成模块,用于BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;
公钥发布模块,用于BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
进一步的,所述请求解析单元包括:
信息保存模块,用于BIOS预先将各项目对应的加解密算法和密钥对保持至请求解析列表;
信息查找模块,用于BIOS在接收到操作系统发送的加密请求后,从所述请求解析列表查找对应的加解密算法和私钥对所述加密请求进行解密。
进一步的,所述系统还包括:
请求标记模块,用于BIOS将项目公钥和项目编码同步发送至操作系统,以便操作系统利用所述项目编码标记基于项目公钥生成的加密请求;
标记解析模块,用于BIOS从加密请求提取项目编码,并根据所述项目编码从请求解析列表中查找对应的加解密算法和私钥,所述请求解析列表以映射的方式保存项目编码、加解密算法和私钥。
进一步的,所述请求执行单元包括:
功能执行模块,用于BIOS基于所述LPC总线开启请求调用初始化所述LPC总线的功能项,执行对LPC总线的初始化;
地址读取模块,用于BIOS在LPC总线初始化完成后读取LPC地址;
地址刷新模块,用于BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器。
进一步的,所述请求执行单元还包括:
线程创建模块,用于操作系统创建监控线程,通过所述监控线程监控所述寄存器是否存在数据更新;
地址获取模块,用于若所述监控线程监控到所述寄存器存在数据更新,则从寄存器读取更新的LPC地址;
权限获取模块,用于操作系统基于所述LPC地址对BMC接口层驱动重新初始化,以获取访问LPC的权限。
第三方面,提供一种终端,包括:
处理器、存储器,其中,
该存储器用于存储计算机程序,
该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。
第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本发明的有益效果在于,本发明提供的LPC总线安全访问方法、系统、终端及存储介质,通过设置BIOS使其在默认状态下不对LPC总线进行初始化,然后在操作系统需要开启LPC时向BIOS发送基于公钥加密的请求,由BIOS利用匹配的私钥解密后识别请求并根据请求执行对LPC总线的初始化。本发明通过对LPC初始化的过程进行变更,在对LPC初始化过程中加入对CPU请求进行识别的步骤,从而避免了其它恶意请求登录篡改BMC,提升了服务器的安全性能。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的方法的另一示意性流程图。
图3是本发明一个实施例的系统的示意性框图。
图4为本发明实施例提供的一种终端的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
BMC,执行伺服器远端管理控制器,英文全称为Baseboard ManagementController.为基板管理控制器。它可以在机器未开机的状态下,对机器进行固件升级、查看机器设备、等一些操作。在BMC中完全实现IPMI功能需要一个功能强大的16位元或32位元微控制器以及用于数据储存的RAM、用于非挥发性数据储存的快闪记忆体和韧体,在安全远程重启、安全重新上电、LAN警告和系统健康监视方面能提供基本的远程可管理性。除了基本的IPMI功能和系统工作监视功能外,通过利用2个快闪记忆体之一储存以前的BIOS,mBMC还能实现BIOS快速元件的选择和保护。例如,在远程BIOS升级後系统不能启动时,远程管理人员可以切换回以前工作的BIOS映像来启动系统。一旦BIOS升级後,BIOS映像还能被锁住,可有效防止病毒对它的侵害。
BIOS是英文"Basic Input Output System"的缩略词,直译过来后中文名称就是"基本输入输出系统"。在IBM PC兼容系统上,是一种业界标准的固件接口。它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CM操作系统中读写系统设置的具体信息。其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。此外,BIOS还向作业系统提供一些系统参数。系统硬件的变化是由BIOS隐藏,程序使用BIOS功能而不是直接控制硬件。现代作业系统会忽略BIOS提供的抽象层并直接控制硬件组件。
CPU中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
ACPI表示高级配置和电源管理接口(Advanced Configuration and PowerManagement Interface)。对于Windows 2000,ACPI定义了Windows 2000、BIOS和系统硬件之间的新型工作接口。这些新接口包括允许Windows 2000控制电源管理和设备配置的机制。高级配置与电源接口(Advanced Configuration and Power Interface),简称ACPI,1997年由Intel、Microsoft、Toshiba所共同制定提供操作系统应用程序管理所有电源管理接口。当前,ACPI的电源管理特性从以前只适用便携式计算机(例如膝上型计算机)到桌上型电脑、工作站和服务器。例如,系统可能会进入极低功率消耗状态。这些就是可利用在多数桌面型电脑上的“睡眠”和“休眠”设置。睡眠和休眠状态可以通过移动鼠标,按键盘按键,从另外一台电脑接收一条信息(如果连接到了一个局域网)或者重大系统错误来唤醒系统。如果ACPI在BIOS和其他系统硬件中被实现,它就可以由操作系统所调用(触发)。ACPI可以实现的功能包括:系统电源管理(System power management)、设备电源管理(Devicepower management)、处理器电源管理(Processor power management)、设备和处理器性能管理(Device and processor performance management)、配置/即插即用(Configuration/Plug and Play)、系统事件(System Event)、电池管理(Batterymanagement)、温度管理(Thermal management)、嵌入式控制器(Embedded Controller)、SMBus控制器(SMBus Controller)。Windows 98是支持ACPI的第一个微软的操作系统。FreeBSD v5.0是支持ACPI的第一个UNIX操作系统Linux、NetBSD和OpenBSD都至少有一些支持ACPI。
图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种LPC总线安全访问系统。
如图1所示,该方法包括:
步骤110,设置BIOS在默认状态下不对LPC总线进行初始化;
步骤120,在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
步骤130,BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
步骤140,BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
具体地,该方法包括:a)BIOS默认不对LPC总线进行初始化;b)服务器操作系统需要开启LPC时,先使用BIOS的公钥对控制指令加密,并传递给BIOS;c)BIOS对指令进行解密,解密通过后开启LPC总线,并刷新ACPI;d)服务器操作系统监控ACPI,发生变化后对IPMI_SI驱动重新初始化。该方法通过设置BIOS使其在默认状态下不对LPC总线进行初始化,然后在操作系统需要开启LPC时向BIOS发送基于公钥加密的请求,由BIOS利用匹配的私钥解密后识别请求并根据请求执行对LPC总线的初始化。本发明通过对LPC初始化的过程进行变更,在对LPC初始化过程中加入对CPU请求进行识别的步骤,从而避免了其它恶意请求登录篡改BMC,提升了服务器的安全性能。
为了便于对本发明的理解,下面以本发明LPC总线安全访问方法的原理,结合实施例中对LPC总线进行安全访问的过程,对本发明提供的LPC总线安全访问方法做进一步的描述。
现有方案中,BIOS在开机过程中会将LPC总线初始化,并通过ACPI传递给操作系统,操作系统从ACPI读取LPC地址,然后开始初始化BIOS接口层驱动,初始化完成后操作系统即可正常通过LPC访问BMC。显然,现有技术中,操作系统无需获取任何额外的权限便可以通过基于LPC的IPMI对BMC进行控制。
现有的方案中运行在CPU上的OS无需获取任何额外的权限便可以通过基于LPC的IPMI对BMC进行控制,存在安全隐患。基于这一技术问题,本申请提供一种LPC总线安全访问方法,具体的,请参考图2,所述方法包括:
S1、设置BIOS在默认状态下不对LPC总线进行初始化。
更新BIOS的初始配置,设置在默认状态下不启动LPC总线初始化功能项。重启服务器以使配置生效,修改后的BIOS在开机过程中不再对LPC总线进行初始化。
S2、在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥。
BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
具体地,为增强BIOS的安全性,可为重要功能项设置专属的内置数字证书,内置数字证书包括公钥和私钥组成的密钥对。BIOS将公钥发送至需要调用功能项的目标交互端。例如,BIOS将LPC总线初始化功能项的内置数字证书中的公钥发送至操作系统,操作系统将接收的公钥保存至LPC初始化请求存储模块。此外,若有多个功能项均需发送秘钥至操作系统,则需要对公钥进行区分,此时各功能项使用的密钥对是不同的,选择不同的密钥对以避免由于某个密钥对泄漏导致的全部功能项密钥对泄漏。为了对各功能项进行区分,为各功能项生成项目编码,如编码001表示LPC总线初始化功能项。将项目编码与公钥绑定后发送至操作系统。
通过为功能项目生成内置数字证书,并将公钥和私钥保存在数字证书保证了私钥的安全性。
S3、BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求。
BIOS预先将各项目对应的加解密算法和密钥对保持至请求解析列表;BIOS在接收到操作系统发送的加密请求后,从所述请求解析列表查找对应的加解密算法和私钥对所述加密请求进行解密。具体地,BIOS将项目公钥和项目编码同步发送至操作系统,以便操作系统利用所述项目编码标记基于项目公钥生成的加密请求;BIOS从加密请求提取项目编码,并根据所述项目编码从请求解析列表中查找对应的加解密算法和私钥,所述请求解析列表以映射的方式保存项目编码、加解密算法和私钥。
BIOS在将项目编码与公钥绑定后发送至操作系统后,操作系统在发送LPC初始化请求时,利用公钥及RSA加密算法对LPC初始化请求进行加密,得到加密请求。将项目编码写入加密请求的头部。BIOS在接收到操作系统发送的加密请求后,从请求头部提取项目编码,根据项目编码确认是请求LPC总线初始化功能项。从LPC总线初始化功能项的内置数字证书读取私钥,并利用私钥对加密请求进行解密,得到LPC初始化请求。
S4、BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
BIOS基于所述LPC总线开启请求调用初始化所述LPC总线的功能项,执行对LPC总线的初始化;BIOS在LPC总线初始化完成后读取LPC地址;BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器。操作系统创建监控线程,通过所述监控线程监控所述寄存器是否存在数据更新;若所述监控线程监控到所述寄存器存在数据更新,则从寄存器读取更新的LPC地址;操作系统基于所述LPC地址对BMC接口层驱动重新初始化,以获取访问LPC的权限。
操作系统在向BIOS发送加密请求后,创建监控线程,实时监控高级配置和电源管理接口的寄存器的数据更新情况,以便及时获取到LPC地址。然后操作系统即可基于LPC地址对IPMI_SI驱动重新初始化。初始化完成后操作系统即可与BMC通过LPC总线正常通信。
相较于现有技术的LPC总线初始化方法,本申请保证了对登录BMC的对象的身份识别,避免恶意请求通过LPC总线登录BMC甚至篡改BMC。
如图3所示,该系统300包括:
默认设置单元310,用于设置BIOS在默认状态下不对LPC总线进行初始化;
加密设置单元320,用于在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
请求解析单元330,用于BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
请求执行单元340,用于BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
可选地,作为本发明一个实施例,所述加密设置单元包括:
秘钥生成模块,用于BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;
公钥发布模块,用于BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
可选地,作为本发明一个实施例,所述请求解析单元包括:
信息保存模块,用于BIOS预先将各项目对应的加解密算法和密钥对保持至请求解析列表;
信息查找模块,用于BIOS在接收到操作系统发送的加密请求后,从所述请求解析列表查找对应的加解密算法和私钥对所述加密请求进行解密。
可选地,作为本发明一个实施例,所述系统还包括:
请求标记模块,用于BIOS将项目公钥和项目编码同步发送至操作系统,以便操作系统利用所述项目编码标记基于项目公钥生成的加密请求;
标记解析模块,用于BIOS从加密请求提取项目编码,并根据所述项目编码从请求解析列表中查找对应的加解密算法和私钥,所述请求解析列表以映射的方式保存项目编码、加解密算法和私钥。
可选地,作为本发明一个实施例,所述请求执行单元包括:
功能执行模块,用于BIOS基于所述LPC总线开启请求调用初始化所述LPC总线的功能项,执行对LPC总线的初始化;
地址读取模块,用于BIOS在LPC总线初始化完成后读取LPC地址;
地址刷新模块,用于BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器。
可选地,作为本发明一个实施例,所述请求执行单元还包括:
线程创建模块,用于操作系统创建监控线程,通过所述监控线程监控所述寄存器是否存在数据更新;
地址获取模块,用于若所述监控线程监控到所述寄存器存在数据更新,则从寄存器读取更新的LPC地址;
权限获取模块,用于操作系统基于所述LPC地址对BMC接口层驱动重新初始化,以获取访问LPC的权限。
图4为本发明实施例提供的一种终端400的结构示意图,该终端400可以用于执行本发明实施例提供的LPC总线安全访问方法。
其中,该终端400可以包括:处理器410、存储器420及通信单元430。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器420可以用于存储处理器410的执行指令,存储器420可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器420中的执行指令由处理器410执行时,使得终端400能够执行以下上述方法实施例中的部分或全部步骤。
处理器410为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器410可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元430,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
因此,本发明通过设置BIOS使其在默认状态下不对LPC总线进行初始化,然后在操作系统需要开启LPC时向BIOS发送基于公钥加密的请求,由BIOS利用匹配的私钥解密后识别请求并根据请求执行对LPC总线的初始化。本发明通过对LPC初始化的过程进行变更,在对LPC初始化过程中加入对CPU请求进行识别的步骤,从而避免了其它恶意请求登录篡改BMC,提升了服务器的安全性能,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种LPC总线安全访问方法,其特征在于,包括:
设置BIOS在默认状态下不对LPC总线进行初始化;
在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
2.根据权利要求1所述的方法,在BIOS内设置LPC总线访问密钥对,包括:
BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;
BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
3.根据权利要求1所述的方法,其特征在于,BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求,包括:
BIOS预先将各项目对应的加解密算法和密钥对保持至请求解析列表;
BIOS在接收到操作系统发送的加密请求后,从所述请求解析列表查找对应的加解密算法和私钥对所述加密请求进行解密。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
BIOS将项目公钥和项目编码同步发送至操作系统,以便操作系统利用所述项目编码标记基于项目公钥生成的加密请求;
BIOS从加密请求提取项目编码,并根据所述项目编码从请求解析列表中查找对应的加解密算法和私钥,所述请求解析列表以映射的方式保存项目编码、加解密算法和私钥。
5.根据权利要求1所述的方法,其特征在于,BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线,包括:
BIOS基于所述LPC总线开启请求调用初始化所述LPC总线的功能项,执行对LPC总线的初始化;
BIOS在LPC总线初始化完成后读取LPC地址;
BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器。
6.根据权利要求5所述的方法,其特征在于,在BIOS将LPC地址刷新至高级配置和电源管理接口的寄存器之后,所述方法还包括:
操作系统创建监控线程,通过所述监控线程监控所述寄存器是否存在数据更新;
若所述监控线程监控到所述寄存器存在数据更新,则从寄存器读取更新的LPC地址;
操作系统基于所述LPC地址对BMC接口层驱动重新初始化,以获取访问LPC的权限。
7.一种LPC总线安全访问系统,其特征在于,包括:
默认设置单元,用于设置BIOS在默认状态下不对LPC总线进行初始化;
加密设置单元,用于在BIOS内设置LPC总线访问密钥对,所述密钥对包括公钥和私钥;
请求解析单元,用于BIOS接收服务器操作系统发送的加密请求,所述加密请求利用所述公钥加密,利用所述私钥对所述加密请求进行解密从而得到LPC总线开启请求;
请求执行单元,用于BIOS根据所述LPC总线开启请求对LPC总线进行初始化,并将初始化完成后的LPC地址写入指定地址,以使服务器操作系统同步读取LPC地址并基于LPC地址访问LPC总线。
8.根据权利要求7所述的系统,其特征在于,所述加密设置单元包括:
秘钥生成模块,用于BIOS为不同项目分别设置项目专属的数字证书,所述数字证书包括公钥和私钥组成的密钥对;
公钥发布模块,用于BIOS将LPC初始化项目的内置数字证书的公钥发送至操作系统。
9.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-6任一项所述的方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一项所述的方法。
CN202210549674.1A 2022-05-20 2022-05-20 Lpc总线安全访问方法、系统、终端及存储介质 Pending CN115221549A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210549674.1A CN115221549A (zh) 2022-05-20 2022-05-20 Lpc总线安全访问方法、系统、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210549674.1A CN115221549A (zh) 2022-05-20 2022-05-20 Lpc总线安全访问方法、系统、终端及存储介质

Publications (1)

Publication Number Publication Date
CN115221549A true CN115221549A (zh) 2022-10-21

Family

ID=83608174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210549674.1A Pending CN115221549A (zh) 2022-05-20 2022-05-20 Lpc总线安全访问方法、系统、终端及存储介质

Country Status (1)

Country Link
CN (1) CN115221549A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116643997A (zh) * 2023-07-26 2023-08-25 苏州浪潮智能科技有限公司 基板管理控制器、基本输入输出系统调试方法、装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116643997A (zh) * 2023-07-26 2023-08-25 苏州浪潮智能科技有限公司 基板管理控制器、基本输入输出系统调试方法、装置
CN116643997B (zh) * 2023-07-26 2023-09-22 苏州浪潮智能科技有限公司 基板管理控制器、基本输入输出系统调试方法、装置

Similar Documents

Publication Publication Date Title
EP3582129B1 (en) Technologies for secure hardware and software attestation for trusted i/o
US8201239B2 (en) Extensible pre-boot authentication
US5937063A (en) Secure boot
US8909940B2 (en) Extensible pre-boot authentication
JP6053786B2 (ja) Arm(登録商標)トラストゾーン実施のためのファームウェア基盤トラステッドプラットフォームモジュール(tpm)
US7841000B2 (en) Authentication password storage method and generation method, user authentication method, and computer
US8838950B2 (en) Security architecture for system on chip
US8065509B2 (en) Persistent security system and method
US8146150B2 (en) Security management in multi-node, multi-processor platforms
US20080168545A1 (en) Method for Performing Domain Logons to a Secure Computer Network
JP2015057722A (ja) プラットフォーム・ファームウェア・アーマリング技術
BRPI0615811A2 (pt) sistema operacional encerrado em unidade de processamento
JP2006507548A (ja) 認証コード方法及び装置
JP2005519366A (ja) 優れたセキュリティのためのセキュリティデバイスの直接接続により埋め込まれたプロセッサ
US20130227262A1 (en) Authentication device and authentication method
US11636209B2 (en) Data structure measurement comparison
CN114035842B (zh) 固件配置方法、计算系统配置方法、计算装置以及设备
CN112749383A (zh) 软件认证方法和相关产品
CN115221549A (zh) Lpc总线安全访问方法、系统、终端及存储介质
Safford et al. Take control of TCPA
US11960737B2 (en) Self-deploying encrypted hard disk, deployment method thereof, self-deploying encrypted hard disk system and boot method thereof
CN111783120A (zh) 一种数据的交互方法、计算设备、bmc芯片及电子设备
US11797679B2 (en) Trust verification system and method for a baseboard management controller (BMC)
CN113342735A (zh) 一种处理器芯片及电子设备
US20230030501A1 (en) System and method for maintaining trusted execution in an untrusted computing environment using a secure communication channel

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination