Güvenlik mimarisi
Rust/Tauri yığını, .rkvey v5 formatı, bölmeler, ertelenmiş şifre çözme ve tehdit modeli.
QubKey güvenliği katmanlı mimari ve derinlemesine savunma ilkesine dayanır: dosya sistemi, .rkvey v5 formatı, kriptografi ve Rust uygulama çekirdeği sırlarınızı her adımda korur — depolamadan kilidi açmaya kadar.
Her katman tamamlayıcı bir garanti sunar. Sistem düzeyinde bir koruma eksikse (ör. disk şifrelemesi yok), uygulama ve kripto katmanları kasanızı yine de korur. v5 formatında bir girişin sırları yalnızca görüntülediğinizde veya kopyaladığınızda çözülür — kasa açıldığında veya listede değil.
Arayüz (React + Tauri)
- Kasa
- Klasörler
- Aramak
- Jeneratör
- Tek kullanımlık kodlar
- Kontrol Paneli
- Senkronizasyon
- Paylaşma
- Tarayıcı uzantısı
Pas çekirdeği (QubKey Çekirdeği)
- .rkvey v5 biçimi
- Argon2id türetme
- Kimliği doğrulanmış şifreleme
- Arama dizini
- Güvenli taahhütler
- Bellek silme
- Kilitlenme kurtarma
Dosya sistemindeki .rkvey v5 dosyası
- Önsöz
- Şifreli başlık
- Şifreli dizin
- Gizli bölmeler
- Ekler
- Kaydetme geçmişi
Güvenlik katmanları
Kilidi açma akışı
Kilidi açma katı bir pipeline izler: ana parola Rust çekirdeğine gider, Argon2id ana anahtarı türetir, alt anahtarlar başlık ve B-Tree dizinini çözer. Giriş bölmeleri (sırlar, ekler) şifreli kalır ve yalnızca gerektiğinde okunur. Kilitlemede tüm anahtarlar ve sırlar bellekten silinir.
Ana şifre + Tuz
.rkvey giriş bölümü (düz metin)
- Rust çekirdeğine (Tauri IPC) girildi — hiçbir zaman WebView'a maruz kalmadı
- Giriş bölümünde saklanan rastgele tuz (16 bayt)
Argon2id
- 64 MB RAM · 3 yineleme · p=4 (varsayılan 'KdfParams')
- GPU / ASIC direnci
- Platforma bağlı olarak ~250–500 ms kalibre edildi
Ana anahtar
256 bit · `KeyManager::derive_master_key`
Alt anahtar türetme
HKDF-SHA256(ana, tuz=dosya∥girişi, bilgi=tür)
başlık_anahtarı
Güvenli Başlık
indeks_anahtarı
B-Ağaç Endeksi
bölme_anahtarı
Bölmeler
AEAD şifre çözme
- AES-256-GCM veya XChaCha20-Poly1305
- Başlık · Dizin · Bölmeler (talep üzerine)
Kilit açıldıktan sonra hafıza
- Liste / görünüm: yalnızca meta veriler
- Yalnızca talep üzerine şifresi çözülen sırlar ve ekler
Kilit
- `KeyManager::clear_keys()` + sıfırlama
- Sırlar silindi ve pano temizlendi
Tehdit modeli
QubKey, yerel bir parola yöneticisinin en yaygın tehdit senaryoları için tasarlanmıştır. Tablo saldırı vektörünü ve entegre karşı önlemi (.rkvey-v5 formatı) açıklar.
| Tehdit | Vektör | QubKey yanıtı |
|---|---|---|
| Yetkisiz dosya erişimi | .rkvey hırsızlığı veya kopyası | AEAD şifreleme + Argon2id türetme |
| Ağ üzerinden sızıntı | Bulut dinleme / MITM | Local-first: QubKey sırlarınızı yüklemez |
| Veri bozulması | yazma sırasında çökme | Doğrulanmış append-only commit'ler + başlangıçta kurtarma |
| Kasa manipülasyonu | Manuel dosya değişikliği | Bölme başına AEAD kimlik doğrulama + checksum'lar |
| Bellek anlık görüntüsü (gezinme) | kasa açık, liste / görünüm | sırlar siz gösterene kadar şifreli kalır |
| Zayıf ana parola | çevrimdışı denemeler | Kalibre Argon2id (~500 ms) + entropi ölçer |
| Parola yeniden kullanımı | diğer sitelerde sızıntılar | Güvenlik panosu (yerel algılama) |
| Pano sızıntıları | gizli kopyalama | Pano zaman aşımı (30 sn) + kilitlemede silme |
| Yan kanal saldırısı | kripto işlemlerinde zamanlama | Sabit süreli uygulamalar (RustCrypto) |
En iyi uygulamalar
Bu model, QubKey'in mimarisiyle doğrudan ele aldığı tehditleri kapsar. Optimal koruma için QubKey'i sistem en iyi uygulamalarıyla birleştirin: disk şifrelemesi açık, güncel işletim sistemi ve güçlü ana parola.
Entegre koruma
| Alan | QubKey verilerinizi nasıl korur |
|---|---|
| Beklemedeki veri | AEAD (AES-256-GCM / XChaCha20), Argon2id anahtarı, bölme başına ayrı anahtar |
| Kasa bütünlüğü | Doğrulanmış append-only commit'ler, checksum'lar ve atomik yazmalar |
| Gizlilik | Zero-knowledge: sırlarınız cihazınızda şifreli kalır |
| Ertelenmiş şifre çözme | liste ve görünüm sırlar olmadan; görüntüleme / kopyalama yalnızca gerektiğinde |
| Anahtar türetme | Ana parolayı korumak için kalibre Argon2id (~500 ms, 64 MB) |
| Uygulama | İzole Rust çekirdeği, Tauri IPC arayüzü, kilitlemede zeroization |
| Tarayıcı eklentisi | Yerel Native Messaging — eklenti ana parolayı asla almaz |
| Senkronizasyon | İsteğe bağlı şifreli çok cihazlı senkronizasyon (bulut veya self-host) veya şifreli .rkvey dosyası (bulut, USB, NAS) |
Güven mimarisi
Zero-knowledge
QubKey güveni birkaç tamamlayıcı düzeyde organize eder:
-
Erişimi siz kontrol edersiniz — ana parola ve isteğe bağlı kurtarma anahtarı kasa erişimini yönetir. QubKey bunları okuyamaz veya sıfırlayamaz.
-
Sistem entegrasyonu — QubKey işletim sistemi güvenliğinizi kullanır: dosya izinleri, disk şifrelemesi (FileVault, BitLocker, LUKS), güvenli depolama (Keychain, Credential Manager) ve süreç izolasyonu.
-
Rust / arayüz ayrımı — tüm kriptografi Rust çekirdeğinde derleme zamanı bellek güvenliğiyle çalışır. React arayüzü Tauri IPC üzerinden iletişim kurar; WebView ana parolaya doğrudan erişemez.
-
Dikkatli bellek yönetimi (v5) — kilidi açarken yalnızca başlık ve dizin çözülür. Sırlar ve ekler açık bir eyleme kadar şifreli kalır (görüntüleme, kopyalama, indirme). Kilitlemede: zeroization ve boş pano.
-
Tarayıcı eklentisi — Yerel Native Messaging; eklenti ana parolayı asla almaz.
Koruma özellikleri
Otomatik kilitleme
Yapılandırılabilir hareketsizlikten sonra kasa kilitlenir (varsayılan: 5 dk). Zeroization ve pano silmeyi tetikler.
Ertelenmiş şifre çözme
Giriş sırları yalnızca görüntülediğinizde veya kopyaladığınızda çözülür. Liste ve görünüm korumalı alanları göstermez.
Zeroization
Kilitlemede sırlar RAM'den silinir (Rust zeroize crate); önbellekler temizlenir, yalnızca gerektiğinde geçici şifre çözme.
Pano zaman aşımı
Pano 30 saniye sonra otomatik temizlenir. Kasa ayarlarında yapılandırılabilir.