Ασφάλεια
Κρυπτογράφηση τραπεζικού επιπέδου για την ψηφιακή σας ζωή
Αρχιτεκτονική Zero-Knowledge
Το ByteGuard βασίζεται σε μοντέλο ασφαλείας Zero-Knowledge. Δεν βλέπουμε, δεν έχουμε πρόσβαση ούτε αποθηκεύουμε ποτέ τα κλειδιά κρυπτογράφησής σας.
- Κύριος κωδικός: Το προσωπικό σας κλειδί για ξεκλείδωμα της εφαρμογής. Δεν μεταδίδεται ποτέ, δεν αποθηκεύεται ποτέ εξ αποστάσεως.
- Μυστικό κλειδί (Secret Key): Φράση ανάκτησης 12 λέξεων (BIP39) που δημιουργείται κατά τη δημιουργία του θησαυροφυλακίου. Συνδυάζεται με τον κύριο κωδικό για μέγιστη ασφάλεια.
- Τοπική παραγωγή κλειδιών: Argon2id με κόστος μνήμης 64 MB και 3 επαναλήψεις παράγει το κύριο κλειδί τοπικά. HKDF-SHA256 δημιουργεί την ιεραρχία κλειδιών.
- Χωρίς κερκόπορτες: Αν χάσετε τον κύριο κωδικό και το μυστικό κλειδί, δεν μπορούμε να ανακτήσουμε τα δεδομένα σας. Αυτό είναι σκόπιμο.
Λεπτομέρειες κρυπτογράφησης
Πολλαπλά επίπεδα κρυπτογράφησης προστατεύουν κάθε ευαίσθητο δεδομένο.
- Κρυπτογράφηση σε επίπεδο πεδίου: Κάθε ευαίσθητο πεδίο (κωδικοί, αριθμοί καρτών, κλειδιά API) κρυπτογραφείται μεμονωμένα με AES-256-GCM.
- Ιεραρχία κλειδιών: Κύριο κλειδί → Κλειδί κρυπτογράφησης κλειδιών (KEK) → Κλειδί κρυπτογράφησης δεδομένων (DEK). Κάθε στοιχείο έχει το δικό του DEK.
- Μοναδικά IV: Κάθε λειτουργία κρυπτογράφησης χρησιμοποιεί μοναδικό διάνυσμα αρχικοποίησης, εξασφαλίζοντας ότι ίδιο απλό κείμενο παράγει διαφορετικό κρυπτογραφημένο κείμενο.
Αποθήκευση δεδομένων
Τα δεδομένα σας παραμένουν στη συσκευή σας. Ο συγχρονισμός στο cloud είναι προαιρετικός και πάντα κρυπτογραφημένος.
- Τοπικά πρώτα: Όλα τα δεδομένα αποθηκεύονται σε κρυπτογραφημένη τοπική βάση δεδομένων στη συσκευή σας.
- Προαιρετικός συγχρονισμός iCloud: Όταν ενεργοποιηθεί, τα δεδομένα κρυπτογραφούνται στη συσκευή πριν ανέβουν στο ιδιωτικό σας iCloud container μέσω CloudKit.
- Βιομετρική προστασία: Face ID και Touch ID μέσω Secure Enclave. Τα βιομετρικά δεδομένα διαχειρίζεται το iOS, η εφαρμογή δεν έχει ποτέ πρόσβαση.
Τι δεν μπορούμε να κάνουμε
Η αρχιτεκτονική Zero-Knowledge σημαίνει:
- Δεν μπορούμε να δούμε, να αποκτήσουμε πρόσβαση ή να αποκρυπτογραφήσουμε τα αποθηκευμένα δεδομένα σας
- Δεν μπορούμε να επαναφέρουμε τον κύριο κωδικό σας
- Δεν μπορούμε να ανακτήσουμε το θησαυροφυλάκιό σας χωρίς το μυστικό κλειδί
- Δεν μπορούμε να μοιραστούμε τα δεδομένα σας με κανέναν — συμπεριλαμβανομένων των αρχών
- Δεν μπορούμε να εισάγουμε κερκόπορτες στην κρυπτογράφηση
Συμβατότητα ασφάλειας συσκευής
Το ByteGuard σχεδιάστηκε για να λειτουργεί απρόσκοπτα με τις ενσωματωμένες λειτουργίες ασφαλείας της Apple.
- Apple Lockdown Mode: Πλήρως συμβατό με το υψηλότερο επίπεδο ασφάλειας της Apple. Όλες οι λειτουργίες — συμπεριλαμβανομένων AutoFill, συγχρονισμού iCloud και widgets — λειτουργούν κανονικά με ενεργοποιημένη τη λειτουργία κλειδώματος.
- Χωρίς εξάρτηση από WebView: Το ByteGuard δεν χρησιμοποιεί κανένα μηχανισμό απεικόνισης ιστοσελίδων. Τα δεδομένα του θησαυροφυλακίου σας δεν επεξεργάζονται ποτέ μέσω WebKit, εξαλείφοντας μια ολόκληρη κατηγορία φορέων επίθεσης βασισμένων σε πρόγραμμα περιήγησης.
- Ενσωμάτωση Secure Enclave: Ο βιομετρικός έλεγχος ταυτότητας γίνεται εξ ολοκλήρου από το Secure Enclave του iOS. Το ByteGuard δεν αποκτά πρόσβαση ούτε αποθηκεύει ποτέ βιομετρικά δεδομένα.
Device-Level Protection
The biometric quick-unlock boundary is maintained jointly by iOS Keychain and Secure Enclave. The application never holds any Face ID/Touch ID-derived key.
- iOS Keychain ACL: A copy of the Vault DEK is stored in Keychain with kSecAttrAccessibleWhenUnlockedThisDeviceOnly + kSecAccessControlBiometryCurrentSet. Unreadable when the device is locked or Face ID has not authenticated.
- Secure Enclave Takes Over: The Keychain entry is encrypted by a device key inside Secure Enclave. When the app calls SecItemCopyMatching, iOS triggers Face ID; on success SE decrypts and returns the plaintext DEK — the app never touches any SE key.
- Auto-Invalidation on Face ID Re-enrollment: biometryCurrentSet semantics: when the user removes/re-enrolls Face ID in system settings, iOS automatically deletes the Keychain entry. ByteGuard detects the invalidation at launch and forces Master Password re-entry.
- Strict Mode (No Fallback): If biometryCurrentSet is unavailable (simulators, no enrolled biometrics), the DEK cache simply fails — never falls back to a less-protected Keychain entry. Fallback would be weaker than not enabling Face ID at all and would violate user intent.
- Memory Zeroing (Vault DEK): On lock, suspension, or vault switch, the Vault DEK is overwritten three times (zero → random → zero) with a memory barrier defeating compiler optimization. Master Key / KEK are local variables inside the unlock function, released by Swift ARC (not explicitly zeroed). Argon2 internal buffers are zeroed by libsodium via sodium_memzero.
Λήψη στο App Store