macos磁盘加密是filevault、secure enclave与apfs三层协同的体系:filevault用xts-aes-128加密启动盘,密钥由登录密码派生并由secure enclave硬件保护,apfs则提供文件级加密与元数据保护。

macOS 的磁盘加密不是单一技术,而是分层协作的体系:FileVault 负责全盘逻辑加密,Secure Enclave 提供硬件级密钥保护,底层存储本身也具备透明加密能力。三者共同作用,才构成真正可靠的防护。
FileVault 使用 XTS-AES-128 加密启动磁盘
FileVault 是 macOS 原生全磁盘加密方案,仅对启动宗卷生效。它采用 XTS-AES-128 算法,在数据写入时实时加密、读取时自动解密,全程对用户透明。该算法被 NIST 认证,至今无实际可行的密码学攻击方式。
关键细节包括:
- 必须手动开启(系统设置 → 隐私与安全性 → FileVault),Apple Silicon Mac 即使默认启用底层加密,也不等于 FileVault 已激活
- 加密密钥由你的登录密码派生,并由 Secure Enclave 安全封装,不以明文形式存在于内存或磁盘中
- 首次启用需数小时完成初始加密,期间 Mac 可正常使用;后续所有 I/O 操作均由系统自动加解密,日常使用几乎无感知
Secure Enclave 是密钥管理的核心硬件模块
Secure Enclave 是独立于主芯片的安全协处理器,物理隔离、专用固件、不可被操作系统绕过。它不存储你的密码,而是保管由密码派生出的加密密钥,并参与每次加解密的认证流程。
它的作用体现在:
利用 macOS 原生能力实现本地语音识别与合成。通过 yap (Apple Speech.framework) 进行语音转文字,通过 say + ffmpeg 进行文字转语音。完全离线,无需 API 密钥。具备音质检测与智能选声功能。
- 即使 macOS 被完全攻陷,攻击者也无法提取 FileVault 密钥
- 登录时密码验证和密钥解锁均在 Secure Enclave 内部完成,敏感操作不暴露给主系统
- 支持 Touch ID / Face ID 的设备,生物特征模板也仅存于 Secure Enclave 中,不上传、不共享
APFS 文件系统自带加密元数据支持
APFS(而非旧版 HFS+)是 macOS 推荐的文件系统格式,其设计原生支持多层加密结构:
- 每个文件可拥有独立加密密钥(per-file keys),由统一的卷密钥(volume key)保护
- 元数据(如目录结构、权限、时间戳)同样加密,防止通过文件系统结构推测内容
- 支持“加密但未挂载”状态——磁盘插入后不会自动解密,必须输入密码或经认证用户授权
这意味着:即使你用磁盘工具创建了 APFS(加密) 格式的外置硬盘,它的安全机制也与 FileVault 同源,只是作用范围限于该宗卷,而非整个启动盘。
磁盘映像(.dmg)使用 AES-256,但依赖强密码
不同于 FileVault 的系统级加密,.dmg 文件属于应用层加密容器,使用 AES-256 算法(macOS 10.13 起已统一为该标准)。它的安全性不取决于算法强度,而完全由用户密码质量决定:
- 密码必须足够长且不可预测,推荐 4–5 个无关联单词组合(如 “kettle-salmon-velvet-orchid”)
- 禁用“记住密码在钥匙串”,否则登录账户即等同于解锁镜像
- 加密必须在创建或转换阶段完成,无法对已有未加密 .dmg 补加密码
注意:.dmg 加密不调用 Secure Enclave,密钥完全由密码派生并驻留在内存中,因此更强调人为操作规范。










