Secure Boot(安全启动)
Secure Boot(安全启动)的原理基于链式验证,这是一种确保计算机在启动过程中只加载和执行经过认证的软件的机制。这个过程涉及到硬件、固件和操作系统的多个层面。以下是Secure Boot的基本原理:
-
密钥和证书:Secure Boot使用一组密钥和证书来验证启动过程中的软件。这些密钥通常存储在UEFI固件中,包括一个或多个密钥对(公钥和私钥)。
-
签名的启动加载程序:在启动过程中,UEFI固件会检查启动加载程序(如Windows的引导管理器)的数字签名。这个签名必须由受信任的证书颁发机构(CA)签发,以确保启动加载程序未被篡改。
-
链式验证:启动加载程序接着会验证操作系统内核和其他关键驱动程序的签名。这是一个连续的过程,每个组件都会验证下一个组件的签名,直到整个启动链被验证。
-
固件和硬件支持:Secure Boot需要UEFI固件的支持,以及硬件层面的安全特性,如可信平台模块(TPM)和一次性可编程存储器(eFUSE)。
Secure Boot与硬盘的关系主要体现在以下几个方面:
-
启动加载程序的存储:启动加载程序通常存储在硬盘上的特定分区中,Secure Boot在启动时会从这些分区加载并验证它们。
-
操作系统的安装:在安装操作系统时,安装程序会将必要的密钥和证书嵌入到硬盘上的UEFI分区中,以便在启动时进行验证。
-
安全性:Secure Boot通过确保只有经过验证的软件被加载,从而提高了系统的安全性。这包括防止恶意软件在启动过程中加载,这可能涉及到对硬盘上的操作系统和启动文件的保护。
总的来说,Secure Boot是一种多层次的安全机制,它确保了从硬件到操作系统的每个组件都是可信的。硬盘在这个过程中扮演了存储关键启动文件和密钥的角色,但Secure Boot的实施和管理主要发生在UEFI固件层面。
=====================================
在安装操作系统时,生成的密钥通常会存储一份在UEFI固件中。这个过程是Secure Boot机制的一部分,确保了启动过程中的安全性。以下是这个过程的一般步骤:
-
密钥生成:在安装操作系统的过程中,会生成一对密钥,通常包括一个公钥和一个私钥。这些密钥用于对启动文件进行签名和验证。
-
密钥存储:生成的公钥会被嵌入到操作系统的启动文件中,而私钥则被安全地存储在UEFI固件的非易失性存储区域。这个区域通常是只读的,以防止未授权的访问和修改。
-
签名验证:在启动过程中,UEFI固件会使用存储的私钥来验证启动文件(如启动加载程序)的签名。如果签名有效,说明启动文件未被篡改,系统可以继续启动。
-
信任链建立:操作系统的启动文件(如Windows的引导加载程序)会包含一个由操作系统发布者签名的证书。UEFI固件中的密钥会用来验证这个证书,从而建立起一个信任链,确保只有经过验证的软件被加载。
-
安全启动:一旦验证通过,UEFI固件会将控制权交给启动加载程序,启动加载程序接着会验证操作系统内核和其他关键组件的签名,确保整个启动过程的安全性。
这种密钥存储和管理机制是Secure Boot的核心部分,它确保了即使在硬件级别,启动过程也得到了保护。通过这种方式,Secure Boot能够有效地防止恶意软件在系统启动时加载,提高了系统的安全性。
==========================================
当UEFI安全模式下提示"verification failed: (0x1a) security violation"错误时,这通常意味着启动过程中遇到了安全策略的违反。要解决这个问题,可以尝试以下步骤:
- 关闭安全启动模式:您可以尝试临时关闭UEFI的安全启动模式。进入BIOS设置,找到安全启动(Secure Boot)选项并将其关闭,这样可以暂时绕过安全验证以便进行系统维护或安装。完成必要的操作后记得重新开启安全启动以保证系统安全。
- 使用MOK管理:如果您需要保持安全启动开启,可以通过添加一个Machine Owner Key(MOK)来允许特定的软件或驱动程序在安全启动下运行。这通常涉及以下步骤:
- 在启动菜单选择进入MOK management。
- 选择从磁盘注册密钥(enroll key from disk)或注册哈希值(enroll hash from disk)。
- 按照屏幕上的提示找到相应的密钥文件或哈希值,并进行注册。
- 确认并重新启动电脑以应用更改。
此外,如果以上方法都不可行,可能需要检查您的硬件设备是否存在兼容性问题,或者尝试使用其他工具重新制作可启动U盘。
需要注意的是,这些步骤可能因不同的硬件和BIOS版本而有所不同,具体操作时应参考您的设备手册或联系制造商的技术支持获取帮助。
=========================
在UEFI(统一可扩展固件接口)中选择“Reset to setup mode”或类似选项通常是为了重置UEFI设置到出厂默认状态,或者是为了进入一个特殊的配置模式,以便进行更深入的系统设置。这个操作可能会影响UEFI中的各种设置,包括安全启动(Secure Boot)相关的密钥。
根据搜索结果中的信息,进入“Setup mode”通常允许用户从外部修改UEFI固件中的安全启动密钥。这意味着在“Setup mode”下,用户可以导入新的密钥,或者在某些情况下,清除现有的密钥。如果在这个模式下清除了密钥,那么原有的密钥通常无法恢复,因为它们是存储在UEFI固件的非易失性存储区域中的,一旦清除,就无法通过正常的UEFI界面恢复。
然而,这并不意味着操作系统无法启动。安全启动的密钥主要用于验证操作系统和启动加载程序的签名。如果这些密钥被清除,系统可能会回退到一个更宽松的启动模式,允许未签名的软件启动。这可能需要用户在操作系统中重新配置安全启动设置,或者在需要的情况下,重新安装操作系统。
在执行这样的操作之前,建议备份所有重要的数据和系统设置,并且确保了解所做更改的后果。如果你不熟悉这些过程,最好咨询专业人士或查阅详细的技术文档。
相关文章:
Secure Boot(安全启动)
Secure Boot(安全启动)的原理基于链式验证,这是一种确保计算机在启动过程中只加载和执行经过认证的软件的机制。这个过程涉及到硬件、固件和操作系统的多个层面。以下是Secure Boot的基本原理: 密钥和证书:Secure Boot…...
大厂面试经验:如何对加密后的数据进行模糊查询操作
加密后的数据对模糊查询不是很友好,本篇就针对加密数据模糊查询这个问题来展开讲一讲实现的思路。 为了数据安全我们在开发过程中经常会对重要的数据进行加密存储,常见的有:密码、手机号、电话号码、详细地址、银行卡号、信用卡验证码等信息…...

修改docker默认存储位置【高版本的docker】
一、修改docker默认存储位置 1、停服务 systemctl stop docker 2、修改/etc/docker/daemon.json添加新的dcoker路径 如"data-root": "/mnt/hdd1/docker" 3、保存后重启服务:systemctl restart docker 二、其他服务的命令 systemctl disab…...

CleanMyMac X2024免费Mac电脑清理和优化工具
CleanMyMac X是一款专业的 Mac 清理和优化工具,它具备一系列强大的功能,可以帮助用户轻松管理和维护他们的 Mac 电脑。以下是一些关于 CleanMyMac X 的主要功能和特点: 智能清理:CleanMyMac X 能够智能识别并清理 Mac 上的无用文件…...

吴恩达机器学习全课程笔记第四篇
目录 前言 P61-P68 激活函数 Softmax算法 P69-P73 Adam算法 更多类型的层 模型评估 P74-P79 偏差和方差 建立表现基准 学习曲线 偏差和方差与神经网络 前言 这是吴恩达机器学习笔记的第四篇,第三篇笔记请见: 吴恩达机器学习全课程笔记第…...
大数据分析师常用函数
常用函数 当进行大数据分析时,SQL中的函数非常丰富,以下是更详细的展开: 窗口函数 (Window Functions): ROW_NUMBER(): 为结果集中的每一行分配一个唯一的整数,用于排序。RANK(): 为结果集中的每一行分配一个排名,相同值会有相同的排名,但会跳过相同排名数量。DENSE_RAN…...

MySQL 主从读写分离入门——基本原理以及ProxySQL的简单使用
一、读写分离工作原理 读写分离的工作原理:在大型网站业务中,当单台数据库无法满足并发需求时,通过主从同步方式同步数据。设置一台主服务器负责增、删、改,多台从服务器负责查询,从服务器从主服务器同步数据以保持一…...

ROS2从入门到精通:理论与实战
ROS是什么? 随着人工智能技术的飞速发展与进步,机器人的智能化已经成为现代机器人发展的终极目标。机器人发展的速度在不断提升,应用范围也在不断拓展,例如自动驾驶、移动机器人、操作机器人、信息机器人等。机器人系统是很多复杂…...
docker 安装minio 一脚shell脚本
要创建一个用于安装Minio的Docker的Shell脚本,你可以按照以下步骤进行。这个脚本会执行以下操作: 拉取Minio的Docker镜像。创建一个Docker容器并映射端口。设置Minio的访问密钥和秘密密钥。持久化存储数据到本地目录。 以下是一个简单的Shell脚本示例&…...
【数据库】mybatis使用总结
文章目录 1. 批量插入、检索<foreach>2. <if> 判断等于情况3. 模糊查询(pgsql为例)4. 分页5. <resultMap > 中collection 和association 6. no conflict do update 1. 批量插入、检索<foreach> <insert id"insertSystemService" >in…...

VR元宇宙的概念|VR体验店加盟|虚拟现实设备销售
VR元宇宙是一个结合了虚拟现实(Virtual Reality)和增强现实(Augmented Reality)等技术的概念,代表着一个虚拟的多维度世界。它是一个由数字化的空间构成的虚拟环境,可以通过虚拟现实设备进行交互和探索。 元…...

MySQL进阶:全局锁、表级锁、行级锁总结
👨🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:MySQL进阶:MySQL事务、并发事务问题及隔离级别 📚订阅专栏:MySQL进阶 希望文章对你们有所帮助…...

Python用函数实现代码复用
归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言📝 生命对某些人来说是美丽的,…...

2024年腾讯云优惠代金券领取入口整理汇总,收藏级笔记
腾讯云优惠代金券领取入口共三个渠道,腾讯云新用户和老用户均可领取8888元代金券,可用于云服务器等产品购买、续费和升级使用,阿腾云atengyun.com整理腾讯云优惠券(代金券)领取入口、代金券查询、优惠券兑换码使用方法…...

nn.Linear() 使用提醒
原本以为它是和nn.Conv2d()一样,就看第二个维度的数值,今天才知道,它是只看最后一个维度的数值!!! 例子1 Descripttion: Result: Author: Philo Date: 2024-02-27 14:33:50 LastEditors: Philo LastEditT…...
python difflib --- 计算差异的辅助工具
此模块提供用于比较序列的类和函数。 例如,它可被用于比较文件,并可产生多种格式的不同文件差异信息,包括 HTML 和上下文以及统一的 diff 数据。 有关比较目录和文件,另请参阅 filecmp 模块。 class difflib.SequenceMatcher 这…...
HTML5浮动
1.标准文档流组成 块级元素(block) 内联元素(inline) 2.display属性 作用:指定HTML标签的显示方式 常用属性 值 说明 block 块级元素的默认值,元素会被显示为块级元素,该元素前后会带有换行…...

Unity 向量计算、欧拉角与四元数转换、输出文本、告警、错误、修改时间、定时器、路径、
using System.Collections; using System.Collections.Generic; using UnityEngine;public class c2 : MonoBehaviour {// 定时器float t1 0;void Start(){// 向量Vector3 v1 new Vector3(0, 0, 2);Vector3 v2 new Vector3(0, 0, 3);// 计算两个向量的夹角Debug.Log(Vector3…...
前端实现浏览器打印
浏览器的print方法直接调用会打印当前页面的所有元素,使用iframe可以实现局部打印所需要的模块。 组件printView,将传入的信息放入iframe中,调用浏览器的打印功能 <template><div class"print"><iframeid"if…...

iOS卡顿原因与优化
iOS卡顿原因与优化 1. 卡顿简介 卡顿: 指用户在使用过程中出现了一段时间的阻塞,使得用户在这一段时间内无法进行操作,屏幕上的内容也没有任何的变化。 卡顿作为App的重要性能指标,不仅影响着用户体验,更关系到用户留…...

业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...

超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
JVM垃圾回收机制全解析
Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...

R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...