计算机安全旨在保护私密信息。有许多方法可以保护系统。一些用户使用简单的用户名/密码登录方案进行基本保护。其他用户可能会通过加密以不同的方式增加额外的保护,如使用 VPN 和磁盘加密。
如果你的计算机上有敏感的客户数据(你可能在经营一家企业),或被视为知识产权的材料,或者你对隐私非常谨慎,你可能要考虑磁盘加密。
磁盘加密的一些好处包括:
- 保护系统免受黑客的攻击
- 防止数据泄露
- 保护你免受潜在的责任问题
磁盘加密软件可以防止台式机硬盘驱动器、便携式 USB 存储设备或笔记本电脑被访问,除非用户输入正确的身份验证数据。如果你的笔记本电脑丢失或被盗,加密会保护磁盘上的数据。
如今,新的 Windows 系统默认配备了 BitLocker 加密。在 Linux 上,LUKS 是最常用的磁盘加密方式。
想知道什么是 LUKS?我会为你简要介绍这个主题。
技术术语
在继续之前,需要定义一些术语。LUKS 有很多内容,因此将其拆解为细项将有助于你进一步了解。
卷Volume:卷是一个逻辑存储区域,可用于存储数据。在磁盘加密的场景中卷指的是已加密以保护其内容的磁盘部分。
参数Parameters:参数是控制加密算法运行方式的设置。参数可能包括所使用的加密算法、密钥大小以及有关如何执行加密的其他详细信息。
加密类型Cipher type**:它是指用于加密的数学算法。它指的是用于保护加密卷上数据的具体加密算法。
密钥大小Key size:密钥大小是衡量加密算法强度的指标:密钥大小越大,加密强度越高。通常以位数表示,例如 128 位加密或 256 位加密。
头部Header:头部是加密卷开头的特殊区域,包含有关加密的信息,例如所使用的加密算法和加密密钥。
下一个定义对于新手来说可能有些棘手,但了解它还是很重要的,尤其在处理 LUKS 时,这会非常有用。
容器Container:容器是一个特殊的文件,类似于虚拟加密卷。它可以用于存储加密数据,就像加密分区一样。不同之处在于容器是一个文件,可以存储在未加密的分区上,而加密分区是整个磁盘的一部分,已经完全加密。因此,容器是 充当虚拟加密卷的文件。
LUKS 是什么以及它能做什么?
LUKS(Linux 统一密钥设置Linux Unified Key Setup)是由 Clemens Fruhwirth 在 2004 年创建的磁盘加密规范,最初用于 Linux。它是一种知名的、安全的、高性能的磁盘加密方法,基于改进版本的 cryptsetup,使用 dm-crypt 作为磁盘加密后端。LUKS 也是网络附加存储(NAS)设备中常用的加密格式。
LUKS 还可以用于创建和运行加密容器。加密容器具有与 LUKS 全盘加密相同的保护级别。LUKS 还提供多种加密算法、多种加密模式和多种哈希函数,有 40 多种可能的组合。
LUKS 结构示意图
任何文件系统都可以进行加密,包括交换分区。加密卷的开头有一个未加密的头部,它允许存储多达 8 个(LUKS1)或 32 个(LUKS2)加密密钥,以及诸如密码类型和密钥大小之类的加密参数。
这个头部的存在是 LUKS 和 dm-crypt 的一个重要区别,因为头部允许使用多个不同的密钥短语,并能轻松更改和删除它们。然而,值得提醒的是,如果头部丢失或损坏,设备将无法解密。
LUKS 有两个版本,LUKS2 具有更强的头部损坏抗击性,并默认使用 Argon2 加密算法(LUKS1 使用 PBKDF2)。在某些情况下,可以在两个版本之间进行转换,但是 LUKS1 可能不支持某些功能。
希望了解更多信息?
希望本文有助于你对 LUKS 和加密有一些了解。关于使用 LUKS 创建和使用加密分区的确切步骤会因个人需求而异,因此我不会在此处涵盖安装和设置方面的内容。
如果你想要一份指南来帮助你设置 LUKS,可以在这篇文章中找到一个很好的指南:《使用 LUKS 对 Linux 分区进行基本加密指南》。如果你对此还不熟悉,并且想要尝试使用 LUKS,可以在虚拟机或闲置计算机上进行安全学习,以了解其工作原理。