Twaish/blackbox

GitHub: Twaish/blackbox

Blackbox 是一个适用于 Windows 和 Linux 的本地优先加密文件保险库,使用 AES-256-GCM 在本地加密文件与元数据,让用户完全掌控数据存储位置和同步方式。

Stars: 0 | Forks: 0

Blackbox Logo

Blackbox

Local-first encrypted file vault for Windows and Linux

Download · Report Bug · Request Feature

Blackbox Screenshot

Blackbox 是一个开源、本地优先的加密文件保险库,适用于 Windows 和 Linux。 文件和元数据在本地使用 AES-256-GCM 进行加密。保险库以标准目录的形式存储在您的文件系统上,允许您决定数据的存放位置,以及如何进行备份或同步。 ## 功能 * 本地优先存储 * AES-256-GCM 认证加密 * 使用 scrypt 进行基于密码的密钥派生 * 加密的文件元数据 * 用于上传和文件访问的流式加密与解密 * 保险库目录直接存储在磁盘上 * 更改保险库密码无需重新加密已存储的文件 * 开源 (GPL-3.0) ## 工作原理 每个保险库包含: ``` vault/ ├── manifest.json ├── data/ │ ├── │ └── ... └── meta/ ├── └── ... ``` ### 加密模型 Blackbox 采用双密钥设计: 1. 使用 `scrypt` 从您的密码派生出密钥加密密钥 (KEK)。 2. 在创建保险库时会生成一个随机的数据加密密钥 (DEK)。 3. DEK 使用 KEK 进行加密,并存储在保险库清单中。 4. 文件和元数据使用 DEK 和 AES-256-GCM 进行加密。 这使得在更改密码时,无需重新加密保险库中的每个文件。 ### 文件格式 加密文件存储格式如下: ``` [ IV | Ciphertext | Authentication Tag ] ``` 其中: * IV = 12 字节 * Authentication Tag = 16 字节 * Cipher = AES-256-GCM ## 存储 Blackbox 不需要数据库。 保险库内容作为加密文件直接存储在文件系统上,便于使用外部工具进行备份、移动和同步。 ## 同步 Blackbox 不提供内置的云存储或同步功能。 由于保险库是标准目录,因此可以与以下工具配合使用: * Syncthing * Nextcloud * Dropbox * Google Drive * iCloud Drive * OneDrive 使用第三方同步服务时,加密的保险库数据可能会被复制到这些服务中。 ## 安全说明 * 密码不会存储在保险库清单中。 * 保险库元数据在静态存储时会被加密。 * 加密和解密均在本地执行。 * 丢失保险库密码可能导致加密数据无法恢复。 * Blackbox 不提供密码恢复功能。 ## 平台支持 * Windows 10+ * Windows 11 * Linux ## 安装 从项目的 Releases 页面下载最新版本。 或者,从源码构建: ``` git clone https://github.com/Twaish/blackbox.git cd blackbox npm i npm run build:release:local ``` ## 开发 ``` npm i npm run dev ``` 构建生产环境的二进制文件: ``` npm run build:release:local ``` ## 许可证 Blackbox 采用 GPL-3.0 许可证授权。 有关详细信息,请参阅 `LICENSE` 文件。 ## 免责声明 没有任何软件能保证绝对的安全。您数据的安全性取决于密码强度、设备安全性、操作系统完整性以及备份习惯等因素。 在存储敏感信息之前,请审查源代码并评估该项目是否符合您的安全要求。
标签:AES-256-GCM, MITM代理, 数据加密, 文件管理, 暗色界面, 本地优先, 桌面应用, 自动化攻击