phoodul/secretbank
GitHub: phoodul/secretbank
一款基于依赖图的密钥管理工具,通过可视化凭据与项目、部署之间的关系链,帮助团队在轮换或撤销密钥时准确评估影响范围,并内置供应链风险检测能力。
Stars: 0 | Forks: 0
# Secretbank
了解你的依赖图的密钥管理器。


## 关于
Secretbank 是一个开放核心的桌面和移动应用程序,超越了简单的密钥存储。
它描绘了 API 密钥如何与你的项目、部署和 URL 相关联——这样你在轮换或撤销密钥之前,总能了解其
影响范围。当提供商报告数据泄露时,Secretbank
会自动将其与你的密码库匹配,并准确显示哪些服务面临风险。
## 功能
### 现已提供
- **零知识密码库** — 密钥在设备上加密;中继服务器绝不会看到明文
- **密码库章程恢复** — Diceware 6 词 + 4 位数字验证器,支持可选的 Shamir 2-of-3 拆分。丢失你的密码,而不是你的密码库。
- **依赖图** — 可视化映射:颁发者 → 凭据 → 用途 → 项目 → 部署 → URL
- **影响范围预览** — 在撤销密钥之前模拟哪些会中断
- **供应链风险图** — 将 `package.json` / `Cargo.toml` 依赖项与 OSV.dev 咨询源进行匹配
- **事件源** — 自动将 NVD / GitHub Advisory 警报与密码库中的凭据匹配
- **紧急开关** — 带有两步确认的一键撤销
- **RAILGUARD** — 为 AI 编辑器自动生成 `.cursorrules` / `CLAUDE.md` / Copilot 指令
- **CLI + MCP** — `Secretbank run -- cmd`(Doppler 风格的依赖图环境变量注入)以及用于 Claude / Cursor / Copilot 的 stdio MCP server
- **VS Code + JetBrains 插件** — 包悬停提示、供应链诊断、影响范围图
- **多设备 E2EE 同步** — Yjs CRDT + XChaCha20-Poly1305,通过 Cloudflare Workers 中继
- **开放核心** — 本地密码库和图引擎为 AGPL-3.0;中继服务和高级连接器为企业版 (EE)
### 路线图(无确定的日期)
- **通用密码库**(1Password 风格的 URL/用户名/密码)— M24,正在积极设计中
- 针对 Stripe / GitHub / AWS 密钥的**自动撤销**
- 结合提供商钩子的**自动轮换**
- **浏览器扩展** (Chrome / Firefox / Safari)
- **团队/组织/共享密码库** (RBAC + SSO)
- **移动应用** (iOS / Android,通过 Tauri Mobile)
## 技术栈
| 层级 | 技术 |
| :------------------- | :-------------------------------------------- |
| 桌面/移动端外壳 | Tauri v2 (Rust 后端 + Web 前端) |
| 后端 | Rust (tokio, sqlx, age, reqwest) |
| 前端 | React 19 + TypeScript |
| 样式 | Tailwind CSS v4 + shadcn/ui + Radix UI |
| 数据库 | SQLite (本地,通过 tauri-plugin-sql) |
| 加密 | age crate (X25519 + ChaCha20-Poly1305) |
| 同步 | Yjs / SecSync CRDT + Cloudflare Workers 中继 |
## 平台
| 平台 | 状态 |
| :---------------------- | :---------- |
| Windows / macOS / Linux | MVP (M0–M8) |
| iOS / Android | MVP (M11) |
| 只读 Web 查看器 | MVP (M12) |
## 入门指南
### 前置条件
- [Node.js 20+](https://nodejs.org/)
- [Rust stable](https://rustup.rs/) — `rustup install stable`
- [pnpm](https://pnpm.io/) — `npm install -g pnpm`
- [Tauri v2 系统依赖](https://v2.tauri.app/start/prerequisites/)
### 开发
```
pnpm install
pnpm tauri dev # desktop (hot reload)
```
移动端(从 M11 开始提供):
```
pnpm tauri android dev
pnpm tauri ios dev
```
### 生产构建
```
pnpm tauri build
```
## 开发命令
| 命令 | 描述 |
| :----------------------------------------------------------------------------- | :-------------------- |
| `cargo test --workspace --manifest-path src-tauri/Cargo.toml` | Rust 单元测试 |
| `cargo clippy --workspace --manifest-path src-tauri/Cargo.toml -- -D warnings` | Rust lint |
| `pnpm typecheck` | TypeScript 类型检查 |
| `pnpm lint` | ESLint |
| `pnpm format` | Prettier 格式化 |
架构和任务详情:[`docs/architecture.md`](./docs/architecture.md) · [`docs/task.md`](./docs/task.md)
用户指南:**[secretbank.app/guide.html](https://secretbank.app/guide.html)** (English / 한국어 / 简体中文 — 在浏览器中打印为 PDF) · 原始 Markdown:[`USER_GUIDE.en.md`](./docs/USER_GUIDE.en.md) · [`USER_GUIDE.ko.md`](./docs/USER_GUIDE.ko.md) · [`USER_GUIDE.zh.md`](./docs/USER_GUIDE.zh.md)
发布 / 政策:[`docs/RELEASE_GUIDE.md`](./docs/RELEASE_GUIDE.md) · [`docs/PRIVACY.md`](./docs/PRIVACY.md) · [`docs/TERMS.md`](./docs/TERMS.md) · [`SECURITY.md`](./SECURITY.md)
登录页源码:[`site/`](./site/)
## 许可证
本仓库遵循按目录区分双许可证的**开放核心**模式:
| 路径 | 许可证 | 范围 |
| :--------- | :------------------------------------------------------------------ | :------------------------------------------------------------------------------- |
| `/` (根目录) | **AGPL-3.0-or-later** ([LICENSE](./LICENSE)) | OSS 核心:桌面应用、本地密码库、依赖图、审计日志、RAILGUARD 等。 |
| `/ee/` | **Secretbank 企业许可证 v1.0** ([ee/LICENSE](./ee/LICENSE)) | Cloudflare Workers 中继、高级连接器、自动轮换、同步后端。 |
有关开源核心和企业版之间的边界,请参阅 [LICENSE_FAQ.md](./LICENSE_FAQ.md) 和 [`ee/README.md`](./ee/README.md)。
在生产环境中使用 `/ee/` 代码需要订阅官方的 Secretbank 托管服务或签订书面企业许可协议。
## 韩语摘要
Secretbank는 API 키를 단순 보관하는 것을 넘어 **의존성 그래프**를 통해 "어떤 키가 어느 프로젝트·배포 환경에 쓰이고,
폐기 시 무엇이 깨지는지"를 추적합니다. 로컬 볼트는 `age` 암호화로 보호되며, 서버는 암호문만 릴레이하는
**Zero-Knowledge 아키텍처**를 사용합니다. 데스크톱(Windows/macOS/Linux)을 우선 지원하고, 모바일(iOS/Android)은 Tauri Mobile 로드맵으로 진행 예정.
**현재 v0.1.0-pre8 무료 베타** — 멀티 디바이스 E2EE 동기화 / auto-revoke / 자동 rotation 까지 모든 기능이 무료입니다.
유료 Pro 도입은 (1) 직접 dogfooding 1주 이상, (2) 약관/개인정보/결제 법적 자문, (3) **일반 비밀번호 vault 기능 추가 (M24)**,
(4) 첫 100~500 사용자 피드백 수집 후 결정합니다. 핵심 데스크톱 앱과 그래프 엔진은 영구 **AGPL-3.0 오픈소스**이며,
릴레이 서버 등 일부는 EE 라이선스로 별도 제공됩니다 (Open Core).
자세한 결정 근거: [docs/project-decisions.md](./docs/project-decisions.md) (2026-05-03 항목).
标签:AI辅助编程, API密钥管理, Cargo安全, CRDT, DevSecOps, JetBrains插件, MCP服务器, npm安全, OSV.dev, Rust, StruQ, VSCode插件, XChaCha20-Poly1305, 上游代理, 依赖关系图, 分布式同步, 包管理器安全, 可视化界面, 安全助手, 安全合规, 密钥轮换, 开源, 数据加密, 桌面应用, 爆炸半径分析, 环境变量注入, 离线可用, 移动应用, 程序员工具, 端到端加密, 端点检测与响应, 网络代理, 网络流量审计, 脱壳工具, 自动化攻击, 跨平台同步, 身份与访问管理, 零知识证明