Introduzione a QubKey
Gestore di password Rust locale: architettura .rkvey, conoscenza zero e stack Tauri.
QubKey è un gestore di password local-first, open source progettato come un sistema di sicurezza digitale, non un semplice file crittografato. Ogni livello (formato, crittografia, indice e applicazione) è progettato per collaborare e proteggere i tuoi segreti dall'inizio alla fine.
L'app desktop nativa combina Rust (core crittografico), Tauri (shell di sistema leggera) e React (interfaccia utente). I tuoi segreti risiedono in un file .rkvey (Rust Key Vault) su disco, crittografato con primitive comprovate e rigorosa separazione delle preoccupazioni.
Questa documentazione è destinata ai individui che garantiscono le proprie credenziali e ai team tecnici che valutano l'architettura. Inizia con Installazione o Primo vault ; vedere le Note sulla versione per la cronologia delle build; per la sicurezza, vedere Architettura.
Filosofia progettuale
- Il deposito è un sistema: identificazione, configurazione, indice e dati sono livelli distinti.
- La crittografia non è completa: la crittografia, la derivazione e l'integrità sono integrate nel formato.
- La resilienza è obbligatoria: WAL, commit sicuri e ripristino da crash fanno parte del modello.
Diagramma: panoramica dell'applicazione
Interfaccia (Reagire + Tauri)
- Volta
- Cartelle
- Ricerca
- Generatore
- Codici monouso
- Pannello di controllo
- Sincronizzazione
- Condivisione
- Estensione del browser
Nucleo antiruggine (QubKey Core)
- Formato .rkvey v5
- Derivazione Argon2id
- Crittografia autenticata
- Indice di ricerca
- Impegni sicuri
- Cancellazione della memoria
- Recupero da incidente
File .rkvey v5 sul file system
- Preambolo
- Intestazione crittografata
- Indice crittografato
- Scompartimenti segreti
- Allegati
- Commetti la cronologia
Principi fondamentali
Local-first
Il file del tuo vault risiede nel tuo filesystem. Non è necessaria alcuna connessione Internet per le operazioni principali: i tuoi dati non transitano mai attraverso un server QubKey.
Zero-knowledge
La password principale non lascia mai il tuo computer. Il ripristino si basa sulla chiave di ripristino salvata al momento della creazione: QubKey non può leggerla o reimpostarla.
Open source
Rust core, Tauri shell e frontend React sono open source (MIT) e possono essere verificati dalla community e dai team di sicurezza.
Perché la ruggine?
| Vantaggio | Attuazione | Vantaggio |
|---|---|---|
Memory safety | Compiler guarantee | Elimina buffer overflow, use-after-free e gare di dati: origini comuni di vulnerabilità C/C++ |
Zeroization | zeroize crate | Cancellazione garantita di chiavi e segreti nella RAM quando il vault si blocca |
Performance | Native | Argon2id calibrato senza GC imprevedibile: sblocco stabile e prevedibile (~500 ms) |
Crypto | RustCrypto | Primitive AEAD e Argon2 controllate: nessuna reimplementazione interna |
Stack tecnico
| Componente | Tecnologia | Ruolo |
|---|---|---|
| Nucleo | Ruggine | Criptovaluta, formato .rkvey, WAL |
| Guscio del desktop | Tauri | IPC sicuro, accesso ai file |
| interfaccia utente | Reagire + TypeScript | UX, ricerca, dashboard |
| Crittografia | AES-256-GCM, XChaCha20 | AEAD per voce |
| Derivazione | Argon2id | Password principale → chiave principale |
| Formato | .rkvey v4 | Volta a strati |
Struttura del progetto
20 tipi di voci
QubKey offre 20 tipi (EntryType, discriminanti 0–19). Ciascun tipo accetta anche allegati crittografati (multifile, cartelle). Consulta il catalogo completo per ogni schema di variante EntryData.
Password
Password, chiave SSH, chiave PGP, tokenLogin, passkey, codici di ripristino
Finanziario
Carta di credito, conto bancario, portafoglio cripto
Identità
ID nazionale, passaporto, patente di guida, ID sanitario, profilo, indirizzo contatto
Nota
Nota, RecoveryPhrase, ConfigSnippet
Documento
Documento
Accesso al dispositivo
Wifi
Passaggi successivi
Installazione
macOS, Windows: prerequisiti dell'estensione
Prima volta
Creazione dell'archivio protetto, password principale e chiave di ripristino
Guida per l'utente
Vault, strumenti, impostazioni, dashboard: passo dopo passo
Modello di crittografia
Formato .rkvey, derivazione Argon2id, AEAD e isolamento per voce