2.1 KiB
2.1 KiB
SPA TOTP Authenticator
一个纯前端、基于浏览器的 TOTP (基于时间的一次性密码) 认证器。它安全、轻量,并将数据完全控制在用户手中。
✨ 功能特性 (Features)
-
完整的 TOTP 管理:
- 添加账户: 支持通过手动输入或直接粘贴
otpauth://
URI 来添加新账户。 - 实时密码: 清晰展示每个账户的实时动态密码和刷新倒计时。
- 一键复制: 方便地将密码复制到剪贴板。
- 删除账户: 安全地从本地存储中移除账户。
- 添加账户: 支持通过手动输入或直接粘贴
-
强大的数据管理:
- 数据持久化: 所有账户信息安全地存储在浏览器的 IndexedDB 中,无需依赖任何云服务。
- 多种导入/导出格式:
- JSON: 用于完整备份和恢复。
- URI 文本 (.txt): 导出为多行
otpauth://
URI,与其他认证器兼容。 - rsc/2fa 格式: 支持
github.com/rsc/2fa
的纯文本格式。
-
纯粹的客户端体验:
- 无需安装: 打开网页即可使用。
- 隐私优先: 任何敏感数据都不会离开您的浏览器。
🛠️ 技术栈 (Tech Stack)
- 构建工具: Vite
- 前端框架: React
- 语言: TypeScript
- 样式: Tailwind CSS
- 数据持久化: IndexedDB (使用
idb
库) - TOTP 核心逻辑:
otpauth
🚀 快速开始 (Getting Started)
-
克隆项目
git clone <repository-url> cd demo-spa-authenicator
-
安装依赖
npm install
-
运行开发服务器
npm run dev
应用将在本地启动 (通常是
http://localhost:5173
)。 -
构建生产版本
npm run build
🔒 数据与安全 (Data & Security)
- 数据完全本地化: 本应用的所有数据(包括您的 TOTP 密钥)都只存储在您当前使用的浏览器的 IndexedDB 中。我们不会收集或将您的数据上传到任何服务器。
- 注意: 清理浏览器数据(例如,清除网站数据或缓存)将永久删除所有已保存的账户。请务必使用导出功能定期备份您的数据。