Введение в QubKey
Локальный менеджер паролей Rust: архитектура .rkvey, нулевое разглашение и стек Tauri.
QubKey — это локальный менеджер паролей с открытым исходным кодом, разработанный как система цифрового хранилища, а не простой зашифрованный файл. Каждый уровень — формат, криптография, индекс и приложение — предназначен для совместной работы и комплексной защиты ваших секретов.
Нативное настольное приложение сочетает в себе Rust (криптографическое ядро), Tauri (облегченную системную оболочку) и React (пользовательский интерфейс). Ваши секреты хранятся в файле .rkvey (Rust Key Vault) на диске, зашифрованном с использованием проверенных примитивов и строгого разделения задач.
Эта документация предназначена для физических лиц, обеспечивающих защиту своих учетных данных, и технических групп, оценивающих архитектуру. Начните с Установка или Первое хранилище ; см. Примечания к выпуску для истории сборки; информацию о безопасности см. в разделе Архитектура.
Философия дизайна
- Хранилище — это система: идентификация, конфигурация, индекс и данные — это отдельные уровни.
- Криптовалюта не является чем-то само собой разумеющимся — шифрование, генерация и целостность встроены в формат.
- Устойчивость обязательна — WAL, безопасное крепление и восстановление после выбора деталей модели.
Диаграмма: обзор приложения
Интерфейс (React + Таури)
- Сейф
- Папки
- Поиск
- Генератор
- Одноразовые коды
- Панель управления
- Синхронизировать
- Совместное использование
- Расширение для браузера
Ядро ржавчины (QubKey Core)
- Формат .rkvey v5
- Вывод Argon2id
- Аутентифицированное шифрование
- Индекс поиска
- Безопасные коммиты
- Очистка памяти
- Восстановление после сбоя
Файл .rkvey v5 в файловой системе
- Преамбула
- Зашифрованный заголовок
- Зашифрованный индекс
- Секретные отсеки
- Вложения
- История коммитов
Основные принципы
Local-first
Файл вашего хранилища находится в вашей файловой системе. Для основных операций не требуется Интернет — ваши данные никогда не проходят через сервер QubKey.
Zero-knowledge
Мастер-пароль никогда не покидает ваш компьютер. Восстановление зависит от ключа восстановления, который вы сохраняете при создании — QubKey не может его прочитать или сбросить.
Open source
Ядро Rust, оболочка Tauri и интерфейс React имеют открытый исходный код (MIT) и могут быть проверены сообществом и группами безопасности.
Почему Ржавчина?
| Выгода | Реализация | Преимущество |
|---|---|---|
Memory safety | Compiler guarantee | Устраняет переполнение буфера, использование после освобождения и гонки данных — распространенные источники уязвимостей C/C++ |
Zeroization | zeroize crate | Гарантированное удаление ключей и секретов в оперативной памяти при блокировке хранилища |
Performance | Native | Калиброванный Argon2id без непредсказуемого GC — стабильная, предсказуемая разблокировка (~500 мс) |
Crypto | RustCrypto | Проверенные примитивы AEAD и Argon2 — никаких собственных повторных реализаций |
Технический стек
| Компонент | Технология | Роль |
|---|---|---|
| Ядро | Ржавчина | Криптовалюта, формат .rkvey, WAL |
| Оболочка рабочего стола | Тавр | Безопасный IPC, доступ к файлам |
| Пользовательский интерфейс | Реакция + TypeScript | UX, поиск, панель мониторинга |
| Шифрование | AES-256-GCM, XChaCha20 | AEAD за въезд |
| Вывод | Аргон2ид | Мастер-пароль → мастер-ключ |
| Формат | .рквей v4 | Многоуровневый свод |
Структура проекта
20 типов записи
QubKey предлагает 20 типов (EntryType, дискриминанты 0–19). Каждый тип также принимает зашифрованные вложения (многофайловые, папки). См. полный каталог для каждого варианта схемы EntryData.
Пароли
Пароль, SSHKey, PGPKey, TokenLogin, Passkey, RecoveryCodes
Финансовый
Кредитная карта, банковский счет, криптокошелек
Личность
NationalID, паспорт, водительские права, HealthID, профиль, контактный адрес
Примечание
Примечание, RecoveryPhrase, ConfigSnippet
Документ
Документ
Доступ к устройству
Wi-Fi
Следующие шаги
Установка
macOS, Windows — необходимые условия для расширения
Первое хранилище
Создание хранилища, мастер-пароль и ключ восстановления
Руководство пользователя
Хранилище, инструменты, настройки, панель управления — шаг за шагом
Модель шифрования
Формат .rkvey, деривация Argon2id, AEAD и изоляция каждой записи.