首页 › 博客 › LocalBox2FA 指南 › 给 2FA 密钥加一道密码
EN中文日本語DeutschESFR

给浏览器里的 2FA 密钥加一道密码(2026)

TOTP 密钥不是密码。它是生成某个账号所有 6 位验证码的种子。只要有人复制走一次,就能在任何设备上一直算出有效验证码,而你察觉不到。密码泄露了可以改,密钥泄露了只会被悄悄复制——唯一的补救是逐个账号关掉 2FA 再重新绑定。

而在浏览器验证器里,这份密钥就放在点一下图标就能打开的弹窗里:没有提示、没有 PIN、没有第二步。任何人坐到你没锁屏的电脑前,或者拷走你的浏览器配置文件,都能把列表读一遍。LocalBox2FA 的主密码就是补这个缺口,可选、默认关闭。下面说清楚它做了什么、故意不做什么,以及怎么用才不至于把自己锁在外面。

第二把钥匙,躺在一个没上锁的抽屉里

2FA 的前提是第二因素放在攻击者拿不到的地方。手机上,那个地方在锁屏之后;浏览器扩展里,密钥只是 chrome.storage.local 中的一个值,靠系统账户兜底,仅此而已。工位几个人共用、笔记本开着盖放在会议室,这条线就变得很细。

LocalBox2FA 本身刻意做得很小:Manifest V3,权限只有 storage 一项,外加一个指向许可证服务器的 host 权限——只在你激活、校验或停用许可证时联系,从不携带你的数据。TOTP 用 Web Crypto 在浏览器内计算,没有我们的账号系统,也没有分析。跨设备同步可选且默认关闭;开启后,密封的记录会通过 chrome.storage.sync 镜像到你自己登录的浏览器账户,主密码始终留在设备上。这让密钥默认留在你自己的机器上,但拦不住另一个使用这台机器的人。

主密码到底加密了什么

主密码可选,默认关闭。开启之后,范围只有这些:

name、digits、period、algorithm 和添加日期在存储里仍是明文。这么切分是有意的,但锁定时界面会把整个列表挡住,下一节讲的就是这件事。加密和算码在同一个地方完成,数据不出设备。

为什么每次都要输——这是设计

没有「记住我」,没有 24 小时免输,也没有生物识别捷径。每次打开弹窗,都要输一次密码。

不妨算一下省掉它的代价:扩展必须把派生密钥,或者能解开它的钥匙,持久化到某个地方。谁拿到那个值,谁就能不输密码打开你的保险箱——这正是这个功能要防的事。所以代价是每次输一遍,收益是关掉弹窗就真的结束访问。别人在你锁屏时拿走笔记本,拿到的是密文,不是一串能用的验证码。

锁定之后会发生什么

锁定状态下,弹窗只有解锁界面。账号列表完全不渲染,不解锁就不知道保险箱里放了哪些服务。

这是有意的取舍。加密只覆盖 secret,可只要把列表画出来,你在用哪些账号就暴露了,所以干脆整屏挡住,先要密码。解锁之后,验证码、搜索、改名、加密记录上的 🔐 标记全都回来。

名字在存储里仍是明文,浏览器配置被拷走一样读得到,所以别在名字里写敏感信息:「工作邮箱」没问题,账号后四位、PIN 不该出现在这里。

怎么开启、怎么关闭

打开弹窗 → 设置 → 设一个主密码。唯一要求是非空:没有长度、大小写、符号规则。作者是有意这么定的——复杂度规则往往把人推向又短又好猜的模式,而一句你每天都能顺手敲出来的长口令更实用。

随时可以在设置里关掉。关闭后密钥材料被删除,记录回到明文。

老记录:不迁移、不清空

不迁移、不清空、不用重新粘贴密钥。storage key 没变,明文记录和加密记录同处一个列表。开启保护后新加的条目以加密形式保存,老条目照常工作,只是没有 🔐 标记。

忘记密码:没有回头路

AES-GCM 没有后门,也没有重置链接、恢复密钥或客服后门。密码忘了,密钥就真的没了——客服也解不开。

唯一的出口是「清空全部」:二次确认,然后删除所有记录,从头再来。对这类工具来说这是正确的行为,也因此值得养成一个习惯:开启加密之前先导出。导出是免费的,会生成一份 name:secret 的纯文本;把它放在离线位置,并当作密钥本身一样保管。

把密码写下来放进实物抽屉也不算坏主意。纯本地工具,本来就没有账号找回这回事。

这一层挡得住什么、挡不住什么

说准确一点:它挡得住同事在你没锁屏时点开图标,挡得住别人从拷贝走的配置文件里读原始值,也挡得住浏览器数据没被保护的失窃笔记本。它挡不住以你的权限运行的恶意软件、键盘记录器、在你解锁时读取弹窗内存的进程,以及知道你密码的人。它不是磁盘加密,也不能替代锁屏。

它是抽屉上的第二把锁,不是保险库大门。

只收费一件事:主密码加密、TOTP 验证码、二维码显示、搜索、导出、导入、清空全部免费。唯一收费的是可选的跨设备同步,需要主密码和许可证。 Chrome 网上应用店 · Edge 附加组件。

常见问题

主密码加密是免费的吗?

是。主密码加密、TOTP 验证码、二维码显示、导出、导入和清空全部免费。唯一收费的是可选的跨设备同步,需要开启主密码并持有许可证。

忘记主密码还能找回吗?

不能。密钥用 AES-GCM 加密,没有后门,也没有找回通道,开发者同样无法解密。密码丢失后唯一的办法是「清空全部」,二次确认后删除所有记录。开启加密之前请先导出备份。

开启加密后旧记录会丢吗?

不会。storage key 没有变化,明文记录和加密记录可以共存。已有条目照常可读,开启保护后新添加的记录以加密形式保存。不迁移、不清空、不用重新录入密钥。

为什么每次打开弹窗都要输密码?

因为派生出的密钥只存在于弹窗内存中,从不写入存储。弹窗关闭,密钥随之销毁,之后没有任何东西可以接着解锁。要做「记住我」,就必须把密钥材料持久化,而这正是这个功能要消除的风险。

锁着的时候还能看到账号列表吗?

看不到。弹窗被解锁界面整屏替换,列表不渲染,连一个名字都读不到。name、digits 和日期在 chrome.storage.local 里确实没加密,但锁定期间什么都不会显示。

数据会被上传吗?

默认不会。所有数据都留在本机的 chrome.storage.local 里。如果你开启可选的跨设备同步,密封后的记录及其名称和 TOTP 参数会通过 chrome.storage.sync 镜像到你自己的浏览器账户;主密码和派生密钥始终不离开设备。扩展是 Manifest V3,权限只有 storage 一项,外加一个指向许可证服务器的 host 权限(仅用于激活、校验或停用许可证,不携带你的数据)。TOTP 用 Web Crypto 在本地计算,没有我们的账号系统,也没有分析。

在 VKT 扩展目录 中探索更多工具,或通过 [email protected] 联系我们。

继续阅读

Windows 浏览器 TOTP 验证器:在 Chrome/Edge 里直接生成两步验证码(2026)
手机丢了,Google Authenticator 验证码怎么找回?两步验证恢复完整指南(2026)