Введение в QubKey

Локальный менеджер паролей Rust: архитектура .rkvey, нулевое разглашение и стек Tauri.

QubKey — это локальный менеджер паролей с открытым исходным кодом, разработанный как система цифрового хранилища, а не простой зашифрованный файл. Каждый уровень — формат, криптография, индекс и приложение — предназначен для совместной работы и комплексной защиты ваших секретов.

Нативное настольное приложение сочетает в себе Rust (криптографическое ядро), Tauri (облегченную системную оболочку) и React (пользовательский интерфейс). Ваши секреты хранятся в файле .rkvey (Rust Key Vault) на диске, зашифрованном с использованием проверенных примитивов и строгого разделения задач.

Эта документация предназначена для физических лиц, обеспечивающих защиту своих учетных данных, и технических групп, оценивающих архитектуру. Начните с Установка или Первое хранилище ; см. Примечания к выпуску для истории сборки; информацию о безопасности см. в разделе Архитектура.

Философия дизайна

  1. Хранилище — это система: идентификация, конфигурация, индекс и данные — это отдельные уровни.
  2. Криптовалюта не является чем-то само собой разумеющимся — шифрование, генерация и целостность встроены в формат.
  3. Устойчивость обязательна — WAL, безопасное крепление и восстановление после выбора деталей модели.

Диаграмма: обзор приложения

UI

Интерфейс (React + Таури)

  • Сейф
  • Папки
  • Поиск
  • Генератор
  • Одноразовые коды
  • Панель управления
  • Синхронизировать
  • Совместное использование
  • Расширение для браузера
Core

Ядро ржавчины (QubKey Core)

  • Формат .rkvey v5
  • Вывод Argon2id
  • Аутентифицированное шифрование
  • Индекс поиска
  • Безопасные коммиты
  • Очистка памяти
  • Восстановление после сбоя
Storage

Файл .rkvey v5 в файловой системе

  • Преамбула
  • Зашифрованный заголовок
  • Зашифрованный индекс
  • Секретные отсеки
  • Вложения
  • История коммитов

Основные принципы

Local-first

Файл вашего хранилища находится в вашей файловой системе. Для основных операций не требуется Интернет — ваши данные никогда не проходят через сервер QubKey.

Zero-knowledge

Мастер-пароль никогда не покидает ваш компьютер. Восстановление зависит от ключа восстановления, который вы сохраняете при создании — QubKey не может его прочитать или сбросить.

Open source

Ядро Rust, оболочка Tauri и интерфейс React имеют открытый исходный код (MIT) и могут быть проверены сообществом и группами безопасности.

Почему Ржавчина?

ВыгодаРеализацияПреимущество
Memory safetyCompiler guaranteeУстраняет переполнение буфера, использование после освобождения и гонки данных — распространенные источники уязвимостей C/C++
Zeroizationzeroize crateГарантированное удаление ключей и секретов в оперативной памяти при блокировке хранилища
PerformanceNativeКалиброванный Argon2id без непредсказуемого GC — стабильная, предсказуемая разблокировка (~500 мс)
CryptoRustCryptoПроверенные примитивы AEAD и Argon2 — никаких собственных повторных реализаций

Технический стек

КомпонентТехнологияРоль
ЯдроРжавчинаКриптовалюта, формат .rkvey, WAL
Оболочка рабочего столаТаврБезопасный IPC, доступ к файлам
Пользовательский интерфейсРеакция + TypeScriptUX, поиск, панель мониторинга
ШифрованиеAES-256-GCM, XChaCha20AEAD за въезд
ВыводАргон2идМастер-пароль → мастер-ключ
Формат.рквей v4Многоуровневый свод

Структура проекта

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

20 типов записи

QubKey предлагает 20 типов (EntryType, дискриминанты 0–19). Каждый тип также принимает зашифрованные вложения (многофайловые, папки). См. полный каталог для каждого варианта схемы EntryData.

Следующие шаги