Αρχιτεκτονική ασφαλείας: Πλήρης τεχνική βάση

Το Vaultaire δεν στηρίζεται σε έναν μόνο αλγόριθμο ούτε σε ένα έξυπνο τέχνασμα. Χρησιμοποιεί στρωματοποιημένη κρυπτογραφική αρχιτεκτονική όπου κάθε συστατικό έχει συγκεκριμένο ρόλο και η αποτυχία ενός στρώματος δεν θέτει σε κίνδυνο τα υπόλοιπα. Αυτή είναι η περιγραφή κάθε αλγορίθμου, πρωτοκόλλου και αρχιτεκτονικής απόφασης που στέκεται ανάμεσα στα ιδιωτικά σας δεδομένα και τον υπόλοιπο κόσμο.

Χρήσεις Vaultaire AES-256-GCM για επικυρωμένη κρυπτογράφηση σε ευρετήρια θησαυροφυλακίου, τυλιγμένα κλειδιά, κεφαλίδες αρχείων, περιεχόμενο, μικρογραφίες και μεταδεδομένα. PBKDF2-HMAC-SHA512 αντλεί ένα τοπικό κλειδί θυρίδας από το μοτίβο και ένα σε όλη τη συσκευή Keychain αλάτι. Αυτό το κλειδί αποθήκευσης αναδιπλώνει ένα ξεχωριστό τυχαίο κύριο κλειδί 256-bit, το οποίο εκτελεί την κρυπτογράφηση του αρχείου μέσω CryptoKit στη διαδικασία εφαρμογής.

Κρυπτογραφική βάση

Ο Vaultaire χρησιμοποιεί αρκετούς κρυπτογραφικούς μηχανισμούς που λειτουργούν συντονισμένα, ο καθένας επιλεγμένος για μια συγκεκριμένη εργασία. PBKDF2 μετατρέπει ένα ανθρώπινο διαπιστευτήριο σε θησαυροφυλάκιο ή κλειδί ανάκτησης. AES-256-GCM προστατεύει ευρετήρια, περιτυλίγματα, μεταδεδομένα, μικρογραφίες και περιεχόμενο αρχείων. Ένα τυχαίο κύριο κλειδί διαχωρίζει την κρυπτογράφηση αρχείων μεγάλης διάρκειας από ένα μεταβλητό μοτίβο. Keychain και iOS Η προστασία δεδομένων προστατεύει τα αρχεία αλατιού και ανάκτησης που συνδέονται με τη συσκευή ενώ η συσκευή είναι κλειδωμένη. Κανένα κλειδί αποκρυπτογράφησης που διατηρείται από τον πάροχο δεν παρέχει στον προγραμματιστή πρόσβαση ρουτίνας στο θησαυροφυλάκιο απλό κείμενο.

Αυτό δεν είναι πολυπλοκότητα για χάρη του. Κάθε επίπεδο απευθύνεται σε διαφορετική επιφάνεια επίθεσης. AES-256-GCM συνδυάζει το απόρρητο με τον έλεγχο ταυτότητας, επομένως το τροποποιημένο κρυπτογραφημένο κείμενο αποτυγχάνει στην επαλήθευση. PBKDF2 αυξάνει το κόστος δοκιμής κάθε μοτίβου ή φράσης. Το τυχαίο κύριο κλειδί σημαίνει ότι μια αλλαγή μοτίβου μπορεί να αναδιπλώσει ένα κλειδί αντί να κρυπτογραφήσει εκ νέου κάθε αρχείο. Keychain προστασία δεδομένων προστατεύει τα τοπικά αρχεία αλατιού και ανάκτησης, ενώ η εφαρμογή εξακολουθεί να αναγνωρίζει ότι η συμμετρική κρυπτογράφηση συμβαίνει στη μνήμη διεργασιών.

Μαζί, αυτά τα στρώματα σχηματίζουν μια αρχιτεκτονική άμυνας σε βάθος, αλλά δεν είναι όλα ανεξάρτητα εμπόδια. Ένα εικαστικό μοτίβο μπορεί να ελεγχθεί σε σχέση με το όνομα αρχείου ευρετηρίου και AES-GCM έλεγχο ταυτότητας και μια παραβιασμένη ξεκλείδωτη συσκευή μπορεί να παρατηρήσει κλειδιά ή απλό κείμενο στη διαδικασία της εφαρμογής. Η αρχιτεκτονική επομένως εξαρτάται από την εντροπία διαπιστευτηρίων, PBKDF2 κόστος, iOS προστασία της συσκευής και σωστό χειρισμό κρυπτογράφησης με έλεγχο ταυτότητας καθώς και την ισχύ του ίδιου του AES.

Άμυνα σε βάθος

Σκεφτείτε την ιεραρχία του Vaultaire ως ένα σύνολο από ένθετα κλειδωμένα δοχεία. Το μοτίβο που προέρχεται κλειδί θησαυροφυλάκιου ανοίγει το ευρετήριο ελέγχου ταυτότητας. Ο δείκτης απελευθερώνει ένα τυλιγμένο τυχαίο κύριο κλειδί. Αυτό το κύριο κλειδί προστατεύει τα αρχεία και τα μεταδεδομένα. PBKDF2, AES-GCM, Keychain, και iOS Η Προστασία δεδομένων συνεισφέρει διαφορετικές ιδιότητες, αλλά ο ισχυρισμός ασφαλείας είναι τόσο ισχυρός όσο η πλήρης αλυσίδα.

AES-256-GCM: Κρυπτογράφηση αρχείων

Κάθε φωτογραφία, βίντεο και έγγραφο που είναι αποθηκευμένο στο Vaultaire είναι κρυπτογραφημένο με AES-256-GCM — το Advanced Encryption Standard με κλειδί 256-bit Λειτουργία Galois/Counter. Ο Vaultaire χρησιμοποιεί επίσης AES-GCM για ευρετήρια αποθήκευσης, κεφαλίδες αρχείων, μικρογραφίες και φακέλους κλειδιών. Ο αλγόριθμος και το μέγεθος του κλειδιού είναι τυποποιημένα. Η ασφάλεια του Vaultaire εξακολουθεί να εξαρτάται από τον χειρισμό, τη διαχείριση κλειδιών, την ισχύ των διαπιστευτηρίων και την ορθότητα υλοποίησης.

Ο αριθμός “256” στο AES-256 δηλώνει το μήκος κλειδιού σε bits. Ένα 256-bit κλειδί έχει 2256 πιθανές τιμές. Για σύγκριση: στο παρατηρήσιμο σύμπαν υπάρχουν περίπου 1080 άτομα. Αν κάθε άτομο ήταν υπερυπολογιστής που δοκιμάζει ένα δισεκατομμύριο κλειδιά ανά δευτερόλεπτο και λειτουργούσε από τη Μεγάλη Έκρηξη, θα είχαν εξερευνήσει λιγότερο από ένα τρισεκατομμυριοστό τρισεκατομμυριοστού τοις εκατό του χώρου κλειδιών. Το AES-256 δεν θα σπάσει με ωμή βία. Όχι σήμερα. Όχι αυτόν τον αιώνα. Όχι πριν σβήσουν τα άστρα.

Γιατί έχει σημασία ο τρόπος GCM

Το AES είναι block cipher: κρυπτογραφεί δεδομένα σε 128-bit blocks. Ο “τρόπος” καθορίζει πώς συνδυάζονται αυτά τα blocks. Το GCM (Galois/Counter Mode) παρέχει δύο πράγματα που απλούστεροι τρόποι όπως το CBC δεν παρέχουν: παραλληλισμένη κρυπτογράφηση και ενσωματωμένη πιστοποίηση.

Το μέρος της πιστοποίησης είναι κρίσιμο. Το GCM δημιουργεί κρυπτογραφικό tag για κάθε κρυπτογραφημένο αρχείο. Αυτό το tag λειτουργεί ως σφραγίδα κατά παραποίησης. Αν τροποποιηθεί ένα μόνο bit του κρυπτοκειμένου, είτε από κακόβουλο παράγοντα είτε από κατεστραμμένο τομέα δίσκου, το tag πιστοποίησης δεν θα ταιριάζει και η αποκρυπτογράφηση θα αποτύχει. Δεν λαμβάνετε κατεστραμμένα δεδομένα. Λαμβάνετε σαφές σήμα ότι κάτι δεν πάει καλά. Αυτή η ιδιότητα λέγεται authenticated encryption και αποτρέπει μια ολόκληρη κατηγορία επιθέσεων όπου ο αντίπαλος τροποποιεί κρυπτογραφημένα δεδομένα για να χειραγωγήσει την αποκρυπτογραφημένη έξοδο.

PBKDF2: Παραγωγή κλειδιών

Ο Vaultaire αντλεί διαφορετικά κλειδιά για διαφορετικές εργασίες. Το μοτίβο και μια ολόκληρη συσκευή Keychain τροφή με αλάτι PBKDF2-HMAC-SHA512 για 600.000 επαναλήψεις για την παραγωγή του τοπικού κλειδιού θυρίδας. Μια ντετερμινιστική παραγωγή μοτίβου παράγει το ξεχωριστό εφεδρικό κλειδί σύννεφο. Η κανονικοποιημένη φράση ανάκτησης φτάνει τις 800.000 PBKDF2 επαναλήψεις για την παραγωγή του κλειδιού για ένα φάκελο ανάκτησης. Καμία από αυτές τις παράγωγες δεν μετατρέπει ένα ανθρώπινο διαπιστευτήριο σε 256 bit εντροπίας απλώς και μόνο επειδή η έξοδος έχει μήκος 256 bit.

Πώς προστατεύει το PBKDF2 το μοτίβο σας

Η βασική ιδέα πίσω PBKDF2 είναι σκόπιμη εργασία. Παίρνει το σειριακό μοτίβο ή την κανονικοποιημένη φράση και εκτελεί εκατοντάδες χιλιάδες HMAC-SHA512 επαναλήψεις. Ένας νόμιμος χρήστης πληρώνει αυτό το κόστος μία φορά κατά τη διάρκεια μιας προσπάθειας ξεκλειδώματος ή ανάκτησης. Ένας εισβολέας το πληρώνει για κάθε υποψήφιο, αν και οι παράλληλες επιλογές υλικού και εφαρμογής καθορίζουν το πραγματικό ποσοστό εικασίας.

Το Vaultaire διαμορφώνει PBKDF2 με 600.000 επαναλήψεις για κλειδιά που προέρχονται από μοτίβο. Αυτό καθιστά κάθε εικασία πιο ακριβή, αλλά μια υπεύθυνη εκτίμηση επίθεσης πρέπει να αναφέρει έναν μετρημένο χρόνο ανά υποψήφιο και υποθέσεις υλικού. Με ακριβώς 1 ms ανά υποψήφιο, 1.000.000.000 σειριακές εικασίες χρειάζονται περίπου 11,6 ημέρες, όχι χρόνια. Το αποτέλεσμα των 256 bit δεν επεκτείνει την εντροπία ενός προβλέψιμου σχεδίου.

Η τοπική παραγωγή προτύπων χρησιμοποιεί ένα κρυπτογραφικά τυχαίο αλάτι για τη συσκευή, αποθηκευμένο ως WhenUnlockedThisDeviceOnly Keychain αντικείμενο. Το αλάτι δεν είναι μυστικό και το μοιράζονται τα θησαυροφυλάκια αυτής της συσκευής. Αποτρέπει την εφαρμογή ενός πίνακα που έχει δημιουργηθεί για μια συσκευή απευθείας σε μια άλλη συσκευή με διαφορετικό αλάτι, αλλά δεν αναγκάζει έναν εισβολέα να ξεκινήσει από την αρχή για κάθε θησαυροφυλάκιο στην ίδια συσκευή.

256-bit
Μήκος κλειδιού κρυπτογράφησης
6
Κρυπτογραφικά στρώματα
0
Κλειδιά αποθηκευμένα σε διακομιστές

AES-256-GCM: Προστασία μεταδεδομένων

Η κρυπτογράφηση του περιεχομένου αρχείων δεν αρκεί. Τα ονόματα αρχείων, οι ημερομηνίες δημιουργίας, οι διαστάσεις μικρογραφιών και η δομή θησαυροφυλακίου είναι μεταδεδομένα, και τα μεταδεδομένα μπορεί να αποκαλύψουν εξίσου πολλά με τα ίδια τα δεδομένα. Ένα αρχείο με όνομα “φορολογική-δηλωση-2025.pdf” λέει στον επιτιθέμενο ακριβώς τι υπάρχει μέσα, ακόμα κι αν το περιεχόμενο είναι κρυπτογραφημένο. Ένα timestamp δείχνει πότε χρησιμοποιήσατε το θησαυροφυλάκιο. Το μέγεθος μικρογραφίας αποκαλύπτει αν κάτι είναι φωτογραφία ή βίντεο.

Το Vaultaire προστατεύει αυτά τα μεταδεδομένα με AES-256-GCM, όχι ChaCha20. Ονόματα αρχείων και MIME οι τύποι κωδικοποιούνται σε κρυπτογραφημένες κεφαλίδες αρχείων. Το κρυπτογραφημένο ευρετήριο αποθήκευσης περιέχει εγγραφές αρχείων, ημερομηνίες, πληροφορίες μεγέθους, διάταξη αποθήκευσης και το τυλιγμένο κύριο κλειδί. Τα δεδομένα μικρογραφιών κρυπτογραφούνται επίσης κάτω από το τυχαίο κύριο κλειδί.

Γιατί πιστοποιημένη κρυπτογράφηση για μεταδεδομένα;

Τα μεταδεδομένα χρειάζονται ακεραιότητα καθώς και εμπιστευτικότητα. AES-GCM παράγει μια ετικέτα ελέγχου ταυτότητας για κάθε κρυπτογραφημένη τιμή, έτσι το Vaultaire μπορεί να απορρίψει μια τροποποιημένη κεφαλίδα, ευρετήριο, μικρογραφία ή φάκελο αντί να αποδέχεται απλό κείμενο ελεγχόμενο από τον εισβολέα. Η σχεδίαση χρησιμοποιεί σκόπιμα μια κατασκευή κρυπτογράφησης με έλεγχο ταυτότητας σε αυτές τις μορφές αποθήκευσης αντί να ισχυρίζεται κρυπτογραφική ποικιλομορφία που δεν παρέχει η υλοποίηση.

Ο ίδιος κρυπτογράφηση δεν σημαίνει ότι το ίδιο κλειδί ή nonce επαναχρησιμοποιείται τυφλά. Το κλειδί αποθήκευσης προστατεύει το ευρετήριο και τυλίγει το τυχαίο κύριο κλειδί. το κύριο κλειδί προστατεύει το υλικό αρχείου. CryptoKit δημιουργεί επαληθευμένα σφραγισμένα κουτιά με φρέσκα nonces, ενώ η μορφή ροής του Vaultaire εξάγει ένα ξεχωριστό nonce για κάθε παραγγελθέν κομμάτι. Οι σχετικές εγγυήσεις προέρχονται από τον διαχωρισμό κλειδιών, την πειθαρχία και τον έλεγχο ταυτότητας, όχι από έναν δεύτερο κρυπτογράφηση μεταδεδομένων.

Αρχιτεκτονική μηδενικής γνώσης

Αξίζει να τεθεί μια ερώτηση για οποιαδήποτε εφαρμογή ασφαλείας: τι συμβαίνει αν η εταιρεία πίσω από αυτή παραβιαστεί, κληθεί να καταθέσει ή απλώς αλλάξει στρατηγική;

Για τις περισσότερες εφαρμογές η απάντηση είναι ανησυχητική. Κρατούν τα δεδομένα σας, τα κλειδιά σας ή και τα δύο. Ένας δικαστικός εντολός τα αναγκάζει να τα παραδώσουν. Μια παραβίαση τα εκθέτει. Ένας δυσαρεστημένος υπάλληλος έχει πρόσβαση σε αυτά. Η ασφάλεια της εφαρμογής είναι τόσο ισχυρή όσο η επιχειρησιακή ασφάλεια της εταιρείας, και η ιστορία δείχνει ότι οι εταιρείες παραβιάζονται συχνά.

Το Vaultaire δεν λειτουργεί λογαριασμό ή υπηρεσία αποθήκευσης που λαμβάνει το μοτίβο, τη μυστική φράση, τα κλειδιά αποκρυπτογράφησης ή τα αναγνώσιμα περιεχόμενα του θησαυρού. Η κρυπτογράφηση και η αποκρυπτογράφηση συμβαίνουν στη διαδικασία εφαρμογής στη συσκευή σας. Πότε iCloud Η δημιουργία αντιγράφων ασφαλείας είναι ενεργοποιημένη, η εφαρμογή στέλνει επικυρωμένο κρυπτογραφημένο κείμενο στο ιδιωτικό σας CloudKit βάση δεδομένων αντί για μια υπηρεσία θησαυροφυλακίου ελεγχόμενη από το Vaultaire.

Τι σημαίνει στην πράξη η αρχιτεκτονική μηδενικής γνώσης

Εάν μια υπηρεσία επιβολής του νόμου κοινοποιήσει στον Vaultaire μια κλήτευση που απαιτεί απλό κείμενο θησαυροφυλακίου, η εταιρεία δεν διατηρεί το μοτίβο, τη φράση ανάκτησης, το κλειδί θυρίδας, το εφεδρικό κλειδί ή το κύριο κλειδί που απαιτείται για την αποκρυπτογράφηση του. Κρυπτογραφημένο iCloud εγγραφές ζωντανά στο χρήστη CloudKit ιδιωτική βάση δεδομένων. Στη συσκευή, ωστόσο, το υλικό ανάκτησης διατηρείται σε κρυπτογραφημένο Keychain βάση δεδομένων και συμμετρικά κλειδιά υπάρχουν στη μνήμη της εφαρμογής ενώ CryptoKit κρυπτογραφεί ή αποκρυπτογραφεί ένα ανοιχτό θησαυροφυλάκιο.

Αυτό το όριο παρόχου είναι μια αρχιτεκτονική ιδιοκτησία, όχι μια υπόσχεση ότι κάθε μέρος του περιβάλλοντος πελάτη βρίσκεται εκτός του μοντέλου εμπιστοσύνης. Το Vaultaire δεν διαθέτει κλειδί αποκρυπτογράφησης από την πλευρά του διακομιστή, το οποίο μπορεί να παραδώσει για τη συνήθη ανάκτηση του θησαυροφυλακίου. Η εφαρμογή που αποστέλλεται, iOS, η ξεκλείδωτη συσκευή και η κρυπτογραφική εφαρμογή εξακολουθούν να μπορούν να επεξεργάζονται αναγνώσιμα δεδομένα και πρέπει να είναι αξιόπιστα ανάλογα.

Σκόπιμη αβεβαιότητα εμπιστοσύνης

Το όριο παρόχου του Vaultaire αφαιρεί ένα κλειδί αποκρυπτογράφησης που κατέχει η εταιρεία από την κανονική σχεδίαση. Αυτό μειώνει τα όσα μπορεί να αποκαλύψει μια παραβίαση του Vaultaire. Δεν καταργεί την ανάγκη να εμπιστευτείτε τον πελάτη που αποστέλλεται, iOS, την κατάσταση της συσκευής ή την υλοποίηση της τεκμηριωμένης ιεραρχίας κλειδιών. Αυτά τα όρια θα πρέπει να αξιολογούνται χωριστά αντί να συμπτύσσονται σε απόλυτη υπόσχεση.

Keychain και το όριο εφαρμογής-διαδικασίας

της Apple Secure Enclave μπορεί να προστατεύει τα υποστηριζόμενα ιδιωτικά κλειδιά και συμμετέχει σε μέρη της αρχιτεκτονικής ασφάλειας της πλατφόρμας, αλλά τα δημόσια API της δεν δέχονται αυθαίρετα PBKDF2-παράγεται συμμετρικό κλειδί και εκτελέστε Vaultaire's AES-GCM λειτουργίες αρχείων μέσα στον συνεπεξεργαστή. Επομένως, ο Vaultaire δεν περιγράφει τον κρυπτογράφηση του θησαυροφυλακίου ως Secure Enclave AES.

Ο Vaultaire χρησιμοποιεί συνηθισμένο iOS Keychain Στοιχεία γενικού κωδικού πρόσβασης για το τυχαίο αλάτι της συσκευής, την κρυπτογραφημένη βάση δεδομένων ανάκτησης και το τυχαίο κλειδί που προστατεύει αυτήν τη βάση δεδομένων. Αυτά τα στοιχεία χρησιμοποιούν την κλάση προσβασιμότητας WhenUnlockedThisDeviceOnly. Keychain και η προστασία δεδομένων δημιουργούν ένα σημαντικό όριο συσκευής, ειδικά όταν το τηλέφωνο είναι κλειδωμένο, αλλά αυτή η αρχιτεκτονική είναι διαφορετική από μια μη εξαγώγιμη Secure Enclave κλειδί.

Όταν σχεδιάζετε το μοτίβο, CommonCrypto αντλεί το κλειδί του θησαυροφυλακίου στη διαδικασία της εφαρμογής. CryptoKit και το CryptoEngine του Vaultaire στη συνέχεια χρησιμοποιούν συμμετρικά byte κλειδιού σε αυτή τη διαδικασία για να ελέγξουν την ταυτότητα και να αποκρυπτογραφήσουν το ευρετήριο, να ξετυλίξουν το κύριο κλειδί και να επεξεργαστούν αρχεία. Η εφαρμογή διαγράφει την ενεργή κατάσταση όταν κλειδώνει, αλλά ένας επαρκώς προνομιούχος εισβολέας που παρατηρεί μια ξεκλείδωτη συνεδρία έχει διαφορετική ευκαιρία από έναν εξεταστή που κρατά μόνο κρυπτογραφημένο κείμενο κλειδωμένης συσκευής.

Ένα jailbrock ή με άλλο τρόπο παραβιασμένο λειτουργικό σύστημα μπορεί να στοχεύσει την εισαγωγή μοτίβων, τη μνήμη εφαρμογών, τις αποκρυπτογραφημένες προεπισκοπήσεις, τις εξαγωγές ή την οθόνη. Ο Vaultaire συνιστά ένα τρέχον, μη jailbroken iPhone γιατί ο σχεδιασμός βασίζεται σε iOS απομόνωση διαδικασίας, Keychainκαι Προστασία Δεδομένων. Δεν ισχυρίζεται ότι ο συμβιβασμός ρίζας αφήνει απρόσιτα τα συμμετρικά κλειδιά ενός ανοιχτού θησαυροφυλακίου.

Αρχικοποιητικά διανύσματα ανά αρχείο

Όταν κρυπτογραφείτε δύο πανομοιότυπα αρχεία με το ίδιο κλειδί, μια αφελής υλοποίηση θα παρήγαγε πανομοιότυπο κρυπτοκείμενο. Αυτό είναι πρόβλημα. Επιτιθέμενος που βλέπει δύο πανομοιότυπα κρυπτογραφημένα blobs γνωρίζει χωρίς να αποκρυπτογραφήσει τίποτα ότι δύο αρχεία πηγής είναι ίδια. Σε θησαυροφυλάκιο γεμάτο φωτογραφίες, αυτό το είδος ανάλυσης μοτίβων μπορεί να αποκαλύψει πληροφορίες παρά την κρυπτογράφηση.

Το Vaultaire αποτρέπει το ντετερμινιστικό κρυπτογραφημένο κείμενο δημιουργώντας ένα νέο κρυπτογραφικό μηδέν για κάθε AES-256-GCM λειτουργία σφράγισης. Οι κεφαλίδες και το περιεχόμενο των αρχείων σφραγίζονται χωριστά και τα μεγάλα αρχεία χρησιμοποιούν μια πιστοποιημένη μορφή ροής με μια τυχαία βασική μηδενική και μια διακριτή μηδενική για κάθε διατεταγμένο κομμάτι. Επομένως, δύο αντίγραφα της ίδιας φωτογραφίας δεν παράγουν την ίδια κρυπτογραφημένη αναπαράσταση.

Τα nonces αποθηκεύονται με το κρυπτογραφημένο κείμενο και δεν είναι μυστικά. η απαίτηση ασφαλείας τους είναι η μοναδικότητα κάτω από ένα δεδομένο κλειδί. Ο Vaultaire ζητά nonces 96-bit από την κρυπτογραφική τυχαία γεννήτρια της Apple για κρυπτογράφηση μίας λήψης και καταγράφει το βασικό μηδενικό στοιχείο στην κεφαλίδα ροής. Ο κίνδυνος σύγκρουσης διέπεται από τον αριθμό των κρυπτογραφήσεων κάτω από ένα κλειδί, επομένως η υλοποίηση δημιουργεί μια νέα τιμή αντί να παρουσιάζει το μέγεθος των 96 bit ως σταθερό ένα σε 296 εγγύηση εφ' όρου ζωής.

Pipeline κρυπτογράφησης
Το μοτίβο σας
Είσοδος πλέγματος 5×5
PBKDF2
KDF υψηλής επανάληψης
Κλειδί Vault
Ευρετήριο + περιτύλιγμα κλειδιού
Τυχαίο Κύριο Κλειδί
AES-GCM αρχεία + μεταδεδομένα

Διαχείριση μνήμης: Εκκαθάριση ενεργού κλειδιού

Ένα συνηθισμένο σφάλμα λογισμικού ασφαλείας είναι η παραμονή ευαίσθητων δεδομένων στη μνήμη περισσότερο από όσο χρειάζεται. Κλειδιά κρυπτογράφησης, παρεγμένοι κωδικοί και αποκρυπτογραφημένα δεδομένα μπορεί να παραμένουν στη RAM πολύ αφότου η εφαρμογή σταμάτησε να τα χρησιμοποιεί. Εγκληματολογικά εργαλεία μπορούν να εξάγουν τη μνήμη συσκευής και να ψάχνουν για αυτά τα υπολείμματα, τεχνική γνωστή ως cold boot attack ή ανάλυση dump μνήμης.

Το Vaultaire περιορίζει το χρονικό διάστημα που παραμένουν διαθέσιμα τα δεδομένα ενεργού κλειδιού και αποκρυπτογραφημένης διεπαφής χρήστη. Όταν η εφαρμογή κλειδώνει ή η περίοδος λειτουργίας καταρρέει, ο κώδικάς της ακολουθεί διάφορες διαδρομές εκκαθάρισης:

  • Η κατάσταση ενεργού θησαυροφυλάκιου πέφτει. Η εφαρμογή καταργεί την τρέχουσα συνεδρία κλειδιού θυρίδας αποθήκευσης και απαιτεί νέο ξεκλείδωμα πριν από την παρουσίαση περιεχομένου θυρίδας.
  • Τα περιτυλίγματα κλειδιών διαγράφουν τα ιδιόκτητα buffer. Τα ασφαλή κοντέινερ byte του Vaultaire αντικαθιστούν τα buffer που κατέχουν όταν αυτά τα κοντέινερ εκχωρούνται.
  • Η κατάσταση του κύριου κλειδιού στην κρυφή μνήμη δεν είναι έγκυρη. Το αποκρυπτογραφημένο κύριο κλειδί που διατηρείται για το ανοιχτό ευρετήριο απορρίπτεται στις σχετικές διαδρομές κλειδώματος και επαναφοράς προσωρινής μνήμης.
  • Οι αποκρυπτογραφημένες κρυφές μνήμες διεπαφής χρήστη διαγράφονται όπου ελέγχονται από το Vaultaire. Η εκκαθάριση μικρογραφιών και προεπισκόπησης μειώνει την υπολειπόμενη κατάσταση εφαρμογής, χωρίς να διεκδικεί έλεγχο σε κάθε αντίγραφο που δημιουργείται από το Swift, iOS, ή άλλη διαδικασία.

Την επόμενη φορά που το Vaultaire θα ανοίξει σε κλειδωμένη κατάσταση, σχεδιάζετε το μοτίβο και η εφαρμογή εξάγει ξανά το κλειδί αποθήκευσης προτού μπορέσει να ελέγξει την ταυτότητα του ευρετηρίου και να ξετυλίξει το κύριο κλειδί. Πρόκειται για εκκαθάριση συνεδρίας, όχι για ισχυρισμό ότι κάθε αντίγραφο προσωρινής μνήμης έλαβε μια αποδεδειγμένη διαγραφή πολλαπλών περασμάτων ή ότι Secure Enclave κλειδί αναφοράς καταστράφηκε. Ένα τρακάρισμα προκαλεί iOS για να ανακτήσετε τη διαδικασία, αλλά ο κώδικας εκκαθάρισης δεν μπορεί να εκτελεστεί μετά από κάθε απότομο τερματισμό.

Συχνές ερωτήσεις

Είναι το AES-256 πραγματικά αδύνατο να σπάσει;

AES-256 είναι ένας τυποποιημένος, βαριά αναλυμένος κρυπτογράφηση μπλοκ. Καμία πρακτική επίθεση δεν εφαρμόζεται σωστά AES-256-GCM με ένα τυχαίο κλειδί 256-bit είναι δημοσίως γνωστό, αλλά αυτό δεν καθιστά ολόκληρο το θησαυροφυλάκιο άθραυστο. Εντροπία διαπιστευτηρίων, PBKDF2 Το κόστος, ο χειρισμός χωρίς προβλήματα, η φύλαξη κλειδιού, η ανάκτηση, η κατάσταση της συσκευής και τα ελαττώματα εφαρμογής παραμένουν μονοπάτια επίθεσης.

Γιατί χρησιμοποιείται PBKDF2 για παραγωγή κλειδιών;

Χρήσεις Vaultaire PBKDF2-HMAC-SHA512 μέσω CommonCrypto: 600.000 επαναλήψεις για μοτίβα και 800.000 για φράσεις ανάκτησης. Η τοπική παραγωγή μοτίβου χρησιμοποιεί ένα τυχαίο, σε όλη τη συσκευή αλάτι που είναι αποθηκευμένο σε Keychain. PBKDF2 αυξάνει το κόστος κάθε εικασίας, αλλά δεν προσθέτει εντροπία στο μοτίβο, επομένως ο χρόνος επίθεσης εξαρτάται από την ισχύ των διαπιστευτηρίων, τη μετρημένη ταχύτητα υλικού και τον παραλληλισμό.

Τι δεδομένα στέλνει το Vaultaire στους διακομιστές του;

Κανένα. Το Vaultaire δεν έχει διακομιστές που δέχονται τα δεδομένα σας. Αν ενεργοποιήσετε αντίγραφο iCloud, τα κρυπτογραφημένα δεδομένα αποθηκεύονται στον προσωπικό σας λογαριασμό iCloud, κρυπτογραφημένα πριν φύγουν από τη συσκευή σας. Η εταιρεία Vaultaire δεν δέχεται, δεν επεξεργάζεται και δεν αποθηκεύει ποτέ δεδομένα χρηστών.

Μπορεί ένα iPhone με jailbreak να παραβιάσει το θησαυροφυλάκιό μου;

Ένα jailbreak αποδυναμώνει ουσιαστικά τα όρια της συσκευής. του Vaultaire AES-GCM οι λειτουργίες εκτελούνται στη διαδικασία της εφαρμογής CryptoKit, επομένως υπάρχουν συμμετρικά byte κλειδιού στη μνήμη της εφαρμογής ενώ είναι ανοιχτό ένα θησαυροφυλάκιο. Ο συμβιβασμός σε επίπεδο ρίζας μπορεί να στοχεύσει είσοδο, μνήμη, στιγμιότυπα οθόνης ή αποκρυπτογραφημένη έξοδο. Keychain και η Προστασία δεδομένων εξακολουθούν να προσθέτουν εμπόδια ενώ η συσκευή είναι κλειδωμένη, αλλά ο Vaultaire δεν ισχυρίζεται ότι τα κλειδιά AES του παραμένουν απομονωμένα μέσα Secure Enclave.

Πώς κρυπτογραφούνται τα μεταδεδομένα;

Το Vaultaire δεν χρησιμοποιεί το ChaCha20 για μεταδεδομένα θησαυροφυλάκιο. Ονόματα αρχείων, MIME τύποι, χρονικές σημάνσεις, δεδομένα μικρογραφιών, δομή θησαυροφυλακίου και το τυλιγμένο κύριο κλειδί προστατεύονται AES-256-GCM επικυρωμένο κρυπτογραφημένο κείμενο. Η χρήση μιας επικυρωμένης κατασκευής διατηρεί συνεπείς τους ελέγχους εμπιστευτικότητας και ακεραιότητας σε όλη τη μορφή αποθήκευσης.

Τι συμβαίνει με τα κλειδιά μου αν η εφαρμογή κρασάρει;

iOS διεκδικεί εκ νέου την τερματισμένη διαδικασία και η επόμενη εκκίνηση απαιτεί νέο ξεκλείδωμα πριν ο Vaultaire επαναφέρει την κατάσταση ενεργού κλειδιού. Το Vaultaire δεν δημιουργεί εύρος περιόδου σύνδεσης Secure Enclave Αναφορές AES. Ενώ τα περιτυλίγματα κλειδιών του διαγράφουν τα buffer τους κατά την κατανομή και οι διαδρομές κλειδώματος πέφτουν σε ενεργή κατάσταση, το Swift και iOS δεν δικαιολογούν την εγγύηση ότι κάθε παροδικό αντίγραφο αντικαταστάθηκε πριν από την κατάρρευση.

Δείτε τη βάση σε δράση

Επαληθευμένη κρυπτογράφηση, πολυεπίπεδα κλειδιά, ακριβή παραγωγή και κανένα κλειδί θησαυροφυλακίου που φυλάσσεται από τον πάροχο. Πραγματοποιήστε λήψη του Vaultaire για να χρησιμοποιήσετε την αρχιτεκτονική που περιγράφεται εδώ, με τα όρια της συσκευής και των διαπιστευτηρίων του να αναφέρονται ξεκάθαρα.

Κατεβάστε το Vaultaire δωρεάν