uefi安全启动

参考博客:UEFI安全启动 - 知乎 (zhihu.com)

UEFI安全引导(Secure Boot)的核心职能就是利用数字签名来确认EFI驱动程序或者应用程序是否是受信任的。在简要地介绍了数字签名的概念(这是安全引导的基础)之后,我们重点介绍UEFI 安全引导是如何利用数字签名以及其他的加密方式(如Hash函数等)来确保系统引导的安全可靠。我们还会讲到Secure Boot的部署方面以及他在操作系统的安全负载方面所起到的协助作用。

数字签名:目前的加密算法是RSA算法,任何持有A的公钥部分并且可以访问签名数据的人,都可以通过数学手段来验证这一点:数据只能被拥有A的私钥的人来签名——也就是说,只有A可以生成该消息——并且它不会被没有私钥的人修改。

OS加载器

UEFI安全引导的用途还包括调用OS加载器(OS Loader)。回想一下,在UEFI中,加载器是一种特殊的UEFI可执行文件。由于操作系统及其加载器的来源通常不同于系统板UEFI固件,加载器安全引导的职能就是将OS供应商的OS加密绑定到极有可能由另一供应商生产的硬件平台上。可能有以下几种情况出现:

1. 本地存储

大多数情况下,操作系统都是存放在本地存储器上的,例如本地的硬盘。UEFI引导管理器首先验证操作系统加载器的签名,如果通过,就将权限移交。在获得控制权后,加载器将加载os,并在此过程中的某一时刻调用 ExitBootServices() 。该调用结束后,只有UEFI运行时服务仍然可用。

由于UEFI变量服务属于运行时服务,因此操作系统仍可能执行与安全引导有关的变量的更新,然而,验证这种更新的有效性的责任仍然在可信固件身上。

2. 可移动介质与网络启动

UEFI也允许从和移动介质加载操作系统。UEFI引导管理器读取引导顺序变量以确定是否优先从可移动介质或者从固定本地存储开始引导。第三种是基于网络的操作系统加载。例如使用PXE下载一个OS Loader。在这过程中,安全引导仍然会验证OS Loader的有效性。

你可能感兴趣的:(安全)