Keyfile 双重保护 — 为敏感 Vault 添加额外密钥文件
Keyfile 是什么
Keyfile 是一个小型文件(通常几 KB),它包含一个随机生成的密钥。当你同时使用主密码 + Keyfile 来保护一个 Vault 时:
- 解锁 Vault 需要两把钥匙同时到位——主密码(你记住的)+ Keyfile(你持有的)
- 任何一把钥匙单独都没用——只有同时有密码和文件才能解密 Vault
这类似于银行保险箱需要钥匙 + 密码双重验证。
Keyfile 能保护什么场景
| 威胁场景 | 只用主密码 | 主密码 + Keyfile |
|---|---|---|
| 电脑被偷,主密码被暴力破解 | ❌ 可能被破解 | ✅ 需要同时拿到 Keyfile 文件 |
| 主密码被钓鱼骗到 | ❌ 直接解锁 | ✅ 还需要 Keyfile |
| 云账号被攻破拿到 Vault 文件 | ❌ 只需要主密码 | ✅ 还需要 Keyfile |
| 设备上有恶意软件窃取主密码 | ❌ 直接解锁 | ✅ 还需要 Keyfile |
Keyfile 让攻击者的任务难度翻倍——他们不仅要拿到你记得的主密码,还要拿到一个物理存在的文件。
Keyfile 不能保护什么
- 设备被盗 + Keyfile 也在设备上(攻击者拿到设备 + 主密码 + Keyfile)
- 你自己把 Keyfile 丢了(Vault 也打不开)
- 主密码泄露 + Keyfile 也泄露(两把钥匙一起丢了)
所以 Keyfile 的关键在于:Keyfile 和主密码不放在同一个地方。
设置步骤
为现有 Vault 添加 Keyfile
Enpass 中可以为已有 Vault 后期追加 Keyfile:
- 确保 Vault 已解锁
- Enpass → 设置 → Vaults → 选目标 Vault → 安全设置
- 找到 Keyfile 选项 → 生成新 Keyfile / Generate New Keyfile
- 设置主密码(验证身份)
- Enpass 生成 Keyfile 文件 → 选择保存位置
- Vault 自动重新加密 → Keyfile 启用完成
新 Vault 创建时启用 Keyfile
创建 Vault 的流程中,在设置密码那一步,除了输入主密码,还可以勾选"添加 Keyfile / Add Keyfile"。流程类似——Enpass 生成 Keyfile 文件 → 选位置保存 → 完成。
Keyfile 应该存在哪
关键原则:Keyfile 和 Vault 不在同一个位置。以下是推荐方案:
| Vault 存储位置 | Keyfile 存储位置(推荐) |
|---|---|
| iCloud / Google Drive / Dropbox 等云盘 | 另一个云盘(存 Vault 的云盘里也放 Keyfile → 等于没加第二层) |
| 本机文件夹 | USB 硬盘 / 另一台设备 / 纸质备份(二维码形式打印) |
| Wi-Fi Sync(局域网) | USB 硬盘(不在局域网里的物理隔离) |
实用方案
- 方案 A:Vault 存 Google Drive,Keyfile 存 Dropbox(双云隔离)
- 方案 B:Vault 存云盘,Keyfile 存 USB 硬盘(物理隔离)
- 方案 C:Vault 存云盘,Keyfile 的一份存 USB + 一份存纸质二维码(最保险)
Keyfile 丢失怎么办
情景一:有备份文件
如果你在启用 Keyfile 之前做过 Enpass 原生备份,那个备份文件不包含 Keyfile 加密——用主密码就能恢复。恢复后 Vault 变成没有 Keyfile 的状态,然后重新启用 Keyfile 并更小心地保管。
情景二:没有备份、只有带 Keyfile 的 Vault 文件
无解。 加密 Vault 用的是主密码 + Keyfile 共同派生的密钥——缺了 Keyfile 就永远无法解密。
黄金法则
启用 Keyfile 之前,先做一份完整的手动备份(不带 Keyfile 的版本)。 这是你的安全绳。
Keyfile vs 其他二次验证方式
| 维度 | Keyfile | 2FA / TOTP | 硬件安全密钥(YubiKey) |
|---|---|---|---|
| 能跨设备同步吗 | ❌ 文件需要手动传输 | ✅ TOTP 密钥在 Vault 里 | ❌ 物理设备 |
| 增加物理携带成本 | 小文件 | 无(Enpass 内置) | 必须带硬件 |
| 抗钓鱼 | ✅ 钓鱼无法获取 Keyfile | ✅ 钓鱼无法获取 TOTP | ✅ 钓鱼无法让 YubiKey 签名 |
| Enpass 原生支持 | ✅ | ✅(内置 TOTP 生成) | ❌(Passkey 场景用) |
| 忘记后的补救 | 可能有备份 | Vault 里有 TOTP 密钥(但也在 Vault 里,Vault 打不开等于没救) | 另一把 YubiKey |
结论:Keyfile 和 TOTP 2FA 是不同维度的保护——前者保护 Vault 解锁本身,后者保护网站账号登录。两者可以同时用。
日常使用中 Keyfile 的行为
- 桌面端:解锁时 Enpass 自动从你上次选的路径加载 Keyfile(如果还在那个位置),或者提示你选择 Keyfile 文件
- 移动端:移动设备上 Keyfile 功能支持有限(因为文件系统访问受限)。如果有跨设备 Keyfile 需求,可能需要手动把 Keyfile 传输到移动设备
- 换设备:新设备上添加 Vault 时,需要同时提供 Vault 文件 + Keyfile 文件
给哪些 Vault 加 Keyfile
不需要给所有 Vault 都加 Keyfile——操作成本会增加。推荐:
| Vault | 加 Keyfile 吗 | 理由 |
|---|---|---|
| 主保险库(含所有密码) | ✅ 建议加 | 最重要、敏感信息最多 |
| 工作 Vault | ✅ 建议加 | 公司数据安全要求高 |
| 家庭共用 Vault | ✅ 建议加 | 保护全家数据 |
| 测试 Vault(只有几条无关密码) | ❌ 不用 | 成本收益比不划算 |
下一步
把所有安全设置做完后,看看 Vault 分享给家人怎么弄——参见 Vault 级家庭共享。