QubKey 简介

本地优先 Rust 密码管理器:.rkvey 架构、零知识和 Tauri 堆栈。

QubKey 是一个本地优先开源密码管理器,设计为数字保险库系统 — 而不是一个简单的加密文件。每一层(格式、密码学、索引和应用程序)都旨在协同工作并端到端地保护您的秘密。

本机桌面应用程序结合了Rust(加密核心)、Tauri(轻量级系统外壳)和React(UI)。您的秘密位于磁盘上的 .rkvey (Rust Key Vault) 文件中,使用经过验证的原语和严格的关注点分离进行加密。

本文档适用于确保其凭据的个人和评估架构的技术团队。从 安装第一个保管库 开始;有关构建历史,请参阅发行说明;为了安全起见,请参阅架构

设计理念

  1. 保险库是一个系统 — 标识、配置、索引和数据是不同的层。
  2. 加密货币不是附加的——加密、派生和完整性都内置于该格式中。
  3. 弹性是前面的 — WAL、安全提交和崩溃恢复是模型的一部分。

图:应用概述

UI

界面(React + Tauri)

  • 避难所
  • 文件夹
  • 搜索
  • 发电机
  • 一次性代码
  • 仪表板
  • 同步
  • 分享
  • 浏览器扩展
Core

Rust 核心(QubKey 核心)

  • .rkvey v5 格式
  • Argon2id 推导
  • 认证加密
  • 搜索索引
  • 安全提交
  • 内存擦除
  • 崩溃恢复
Storage

文件系统上的 .rkvey v5 文件

  • 前言
  • 加密标头
  • 加密索引
  • 秘密隔间
  • 附件
  • 提交历史

核心原则

Local-first

您的保管库文件位于您的文件系统上。核心操作不需要互联网——您的数据永远不会通过 QubKey 服务器传输。

Zero-knowledge

主密码永远不会离开您的机器。恢复依赖于您在创建时保存的 恢复密钥 - QubKey 无法读取或重置它。

Open source

Rust 核心、Tauri shell 和 React 前端都是开源(MIT)——可由社区和安全团队审核。

为什么会生锈?

效益实施优势
Memory safetyCompiler guarantee消除缓冲区溢出、释放后使用和数据争用——常见的 C/C++ 漏洞来源
Zeroizationzeroize crate当保险库锁定时,保证擦除 RAM 中的密钥和机密
PerformanceNative校准的 Argon2id,无需不可预测的 GC — 稳定、可预测的解锁(​​~500 毫秒)
CryptoRustCrypto已审核的 AEAD 和 Argon2 原语 — 无需自行重新实现

技术栈

组件技术角色
核心铁锈加密、.rkvey 格式、WAL
桌面外壳金牛座安全IPC、文件访问
用户界面反应 + 打字稿用户体验、搜索、仪表板
加密AES-256-GCM、XChaCha20每个条目 AEAD
推导氩气2id主密码→主密钥
格式.rkvey v4分层金库

项目结构

main.rs
Cargo.toml
App.tsx
package.json

20 种条目类型

QubKey 提供 20 种类型EntryType,判别式 0–19)。每种类型还接受加密附件(多文件、文件夹)。请参阅每个 EntryData 变体模式的完整目录

后续步骤