Architektura bezpieczeństwa: Pełny stos techniczny
Vaultaire nie opiera się na jednym algorytmie ani jednej sprytnej sztuczce. Wykorzystuje warstwową architekturę kryptograficzną, w której każdy komponent ma określone zadanie, a awaria którejkolwiek z warstw nie zagraża pozostałym. Oto każdy szyfr, protokół i decyzja projektowa, która stoi między Twoimi prywatnymi danymi a resztą świata. Stos zabezpieczeń
Vaultaire wykorzystuje AES-256-GCM do szyfrowania plików, PBKDF2 z 600 000 iteracji do wyprowadzania klucza, ChaCha20 do ochrony metadanych i Apple Secure Enclave do sprzętowego zarządzania kluczami. Każdy plik otrzymuje swój własny wektor inicjujący, każdy skarbiec ma swoją własną sól, a klucze są usuwane z pamięci, gdy aplikacja się blokuje.
Stos kryptograficzny
Większość aplikacji zabezpieczających wybiera jeden algorytm szyfrowania i kończy go. Vaultaire wykorzystuje sześć różnych, współpracujących ze sobą mechanizmów kryptograficznych, każdy wybrany dla konkretnego modelu zagrożenia. Zawartość pliku szyfrowana jest jednym szyfrem. Metadane są szyfrowane za pomocą innego. Klucze są uzyskiwane za pomocą kosztownej obliczeniowo funkcji. Zabezpieczenia sprzętowe przechowują wynik. Architektura o zerowej wiedzy gwarantuje, że nawet osoby, które zbudowały Vaultaire, nie będą miały dostępu do Twoich danych.
Nie jest to złożoność sama w sobie. Każda warstwa adresuje inną powierzchnię ataku.AES-256-GCMobsługuje masowe szyfrowanie plików, ponieważ jest szybkie i przyspieszane sprzętowo na krzemie Apple.ChaCha20chroni metadane, ponieważ są one trwałe i odporne na ataki związane z synchronizacją pamięci podręcznej.PBKDF2wyprowadza klucze w setkach tysięcy iteracji, co sprawia, że ataki typu brute-force są nie do zniesienia obliczeniowego. TheSecure Enclaveprzechowuje kluczowe materiały, ponieważ sama ochrona programowa nie wystarczy, gdy ktoś ma fizyczny dostęp do Twojego urządzenia.
Warstwy te tworzą razem architekturę zapewniającą głęboką obronę. Osoba atakująca musiałaby złamać jednocześnie wiele niezależnych prymitywów kryptograficznych., , co jest scenariuszem mocno mieszczącym się w obszarze matematycznie niemożliwym.
Pomyśl o bezpieczeństwie Vaultaire jak o serii drzwi do skarbców bankowych, z których każde wymaga innego rodzaju klucza. Wyłamanie się przez jedne drzwi nie pomoże w następnych. The Szyfr plikuSzyfr metadanych, Funkcja wyprowadzania klucza, i Enklawa sprzętowato niezależne bariery. Atakujący musi pokonać wszystkich, a nie tylko jednego.
AES-256-GCM: Szyfrowanie plików
Każde zdjęcie, wideo i dokument przechowywane w Vaultaire są szyfrowane przy użyciu AES-256-GCM, , zaawansowanego standardu szyfrowania z 256-bitowym kluczemTryb Galois/licznika. Jest to ten sam szyfr, którego używa rząd USA do przechowywania ściśle tajnych informacji. To nie jest porównanie marketingowe. Jest to dosłownie ten sam algorytm, ten sam rozmiar klucza i ten sam tryb działania.
Wartość “256” w AES-256 odnosi się do długości klucza w bitach. Klucz 256-bitowy ma 2 Możliwe wartości256. Dla porównania: jest ich około 1080atomy w obserwowalnym wszechświecie. Gdyby każdy atom był superkomputerem testującym miliard kluczy na sekundę, działającym od Wielkiego Wybuchu, zbadałby mniej niż jedną bilionową z bilionowej części jednego procenta przestrzeni klucza.AES-256nie będzie brutalnie wymuszane. Niedzisiejszy. Nie w tym stuleciu. Nie zanim gwiazdy się wypalą.
Dlaczego tryb GCM ma znaczenie
AES to szyfr blokowy., szyfruje dane w 128-bitowych fragmentach. “mode” określa sposób łączenia tych fragmentów. GCM (tryb Galois/Counter) zapewnia dwie funkcje, których nie zapewniają prostsze tryby, takie jak CBC: szyfrowanie równoległe i wbudowane uwierzytelnianie.
Element uwierzytelniający jest krytyczny. GCM generuje znacznik kryptograficzny dla każdego zaszyfrowanego pliku. Ta etykieta pełni funkcję plomby zabezpieczającej. Jeśli nawet pojedynczy bit tekstu zaszyfrowanego zostanie zmodyfikowany, przez złośliwego aktora lub uszkodzony sektor dysku, , znacznik uwierzytelniający nie będzie zgodny i deszyfrowanie zakończy się niepowodzeniem. Nie otrzymasz uszkodzonych danych. Otrzymujesz wyraźny sygnał, że coś jest nie tak. Ta właściwość nazywa się szyfrowaniem uwierzytelnionym i zapobiega całej klasie ataków, w których przeciwnik modyfikuje zaszyfrowane dane w celu manipulowania odszyfrowanymi danymi wyjściowymi.
PBKDF2: Wyprowadzanie klucza
Twój klucz szyfrowania nie bierze się znikąd. Jest on wyprowadzany na podstawie wzorca (lub tajnej frazy) za pomocą funkcji wyprowadzania klucza, , algorytmu zaprojektowanego specjalnie w celu zamiany danych wejściowych podanych przez człowieka na klucz kryptograficzny. Vaultaire wykorzystuje PBKDF2 (funkcję wyprowadzania klucza na podstawie hasła 2) z HMAC-SHA512, standardem zalecanym przez NIST używanym w systemach rządowych i finansowych na całym świecie.
Jak PBKDF2 chroni Twój wzór
Podstawową ideą stojącą za PBKDF2 jest celowa powolność. Pobiera Twój wzór i przeprowadza go przez setki tysięcy rund szyfrowania kryptograficznego. Każda runda trwa ułamek sekundy. Dla Ciebie narysowanie wzoru i oczekiwanie na odszyfrowanie jest niemal natychmiastowe. W przypadku atakującego próbującego odgadnąć wzorce przy użyciu brutalnej siły ten ułamek sekundy mnoży się przez każde odgadnięcie.
Vaultaire konfiguruje PBKDF2 z dużą liczbą iteracji, specjalnie skalibrowaną dla nowoczesnego sprzętu. Przy tych parametrach każda próba wyprowadzenia klucza wymaga znaczącej pracy obliczeniowej. Osoba atakująca próbująca odgadnąć miliard wzorców potrzebowałaby lat ciągłych obliczeń, , aby uzyskać Skarbiecpojedynczy Skarbiec. Zakłada to, że znają sól, która jest unikalna dla każdego skarbca i przechowywana na Twoim urządzeniu.
Każdy skarbiec otrzymuje własną kryptograficznie losową sól. Oznacza to, że dwóch użytkowników, którzy przypadkowo narysują ten sam wzór, wygeneruje zupełnie różne klucze szyfrowania. Wstępnie obliczone tabele przeglądowe (tabele tęczowe) są bezużyteczne, ponieważ sól sprawia, że każde wyprowadzenie klucza skarbca’ jest unikalne. Osoba atakująca musi zaczynać od zera dla każdego skarbca, na który celuje.
ChaCha20: Ochrona metadanych
Szyfrowanie zawartości pliku nie wystarczy. Nazwy plików, daty utworzenia, wymiary miniatur i struktura skarbca to metadane, , a metadane mogą być równie odkrywcze jak same dane. Plik o nazwie “tax-return-2025.pdf” informuje atakującego dokładnie, co znajduje się w środku, nawet jeśli zawartość jest zaszyfrowana. Sygnatura czasowa pokazuje, kiedy korzystałeś ze skarbca. Rozmiar miniatury pokazuje, czy jest to zdjęcie, czy film.
Vaultaire szyfruje wszystkie metadane za pomocą ChaCha20, szyfru strumieniowego zaprojektowanego przez Daniel J. Bernstein. ChaCha20 jest używany razem z AES, a nie zamiast niego z konkretnego powodu: różnorodności kryptograficznej.
Po co osobny szyfr dla metadanych?
Użycie tego samego algorytmu zarówno w przypadku zawartości plików, jak i metadanych oznacza, że teoretyczny przełom w stosunku do tego algorytmu ujawniłby wszystko na raz. Używając AES-256-GCM do zawartości plików i ChaCha20 do metadanych, Vaultaire gwarantuje, że nawet w niezwykle mało prawdopodobnym przypadku naruszenia jednego szyfru, druga warstwa pozostanie nienaruszona.
ChaCha20 ma również praktyczne zalety w zakresie metadanych. Jest to czysty szyfr programowy, , który nie opiera się na sprzętowych instrukcjach AES, , co sprawia, że jego wydajność jest idealnie stała niezależnie od szyfrowanych danych. Eliminuje to boczne kanały pomiaru czasu pamięci podręcznej – klasę ataków, w których przeciwnik mierzy, ile czasu zajmuje szyfrowanie, aby wywnioskować informacje o kluczu lub zwykłym tekście. W przypadku małych, ustrukturyzowanych danych, takich jak metadane, ta właściwość dotycząca stałego czasu jest szczególnie ważna.
Architektura wiedzy zerowej
Oto pytanie, które warto zadać w odniesieniu do dowolnej aplikacji zabezpieczającej: co się stanie, jeśli firma, która za nią stoi, zostanie zhakowana, wezwana do sądu lub po prostu stanie się złośliwa?
W przypadku większości aplikacji odpowiedź jest niewygodna. Przechowują Twoje dane, klucze lub jedno i drugie. Nakaz sądu nakazuje im je oddać. Naruszenie danych ujawnia to. Dostęp do niego uzyskuje nieuczciwy pracownik. Bezpieczeństwo aplikacji ’ jest tak silne, jak bezpieczeństwo operacyjne firmy ’, , a historia pokazuje, że firmy są regularnie naruszane.
Vaultaire jest zbudowany w oparciu o architekturę o zerowej wiedzy. Oznacza to, że firma produkująca Vaultaire nigdy nie ma dostępu do Twoich kluczy szyfrujących, Twojego wzoru, tajnej frazy ani niezaszyfrowanych danych. Nie podczas synchronizacji. Nie podczas tworzenia kopii zapasowej. Nigdy. Operacje kryptograficzne odbywają się całkowicie na Twoim urządzeniu. To, co opuszcza Twoje urządzenie, , jeśli coś się dzieje,, jest już zaszyfrowane kluczami, które posiadasz tylko Ty.
Co oznacza wiedza zerowa w praktyce
Jeśli organ ścigania doręczy Vaultaire wezwanie do sądu z żądaniem podania danych, firma może się w pełni zastosować i przekazać dokładnie nic przydatnego. Nie ma kluczy do poddania się. Nie ma hasła głównego. Nie ma tylnych drzwi. Zaszyfrowane obiekty BLOB przechowywane w iCloud są matematycznie nie do odróżnienia od losowego szumu bez Twojego klucza, a Twój klucz istnieje tylko w Twojej głowie (jako wzór) i chwilowo w Twoim urządzeniu’s Secure Enclave (kiedy aplikacja jest otwarta).
To nie jest decyzja polityczna. To jest architektoniczne. Vaultairenie możema dostęp do Twoich danych niezależnie od zamiaru, zachęty lub nacisków prawnych. System jest tak zaprojektowany, że nie ma takiej możliwości.
Architektura zerowej wiedzy oznacza, że nie musisz ufać Vaultaire jako firmie. Nie musisz ufać, że serwery są bezpieczne, że pracownicy są uczciwi lub że rząd nie zapuka.Matematyka chroni Cię przed wszystkimi, łącznie z osobami, które napisały obliczenia matematyczne. Integracja
Secure Enclave
Zabezpieczenia oparte wyłącznie na oprogramowaniu mają pułap. Niezależnie od tego, jak ostrożnie aplikacja obsługuje klucze szyfrujące w pamięci, system operacyjny, inne aplikacje lub narzędzia dostępu fizycznego mogą teoretycznie odczytać tę pamięć. Apple’s Secure Enclave usuwa tę lukę, zapewniając izolowane sprzętowo środowisko dla kluczowych operacji.
Secure Enclave to dedykowany koprocesor wbudowany w każdy nowoczesny iPhone. Ma własną zaszyfrowaną pamięć, własny proces uruchamiania i własną granicę bezpieczeństwa. Klucze przechowywane w Secure Enclave nigdy go nie opuszczają., nawet główny procesor nie może ich odczytać. Zamiast tego aplikacja wysyła dane do Secure Enclave, który wewnętrznie wykonuje operacje kryptograficzne i zwraca tylko wynik.
Vaultaire wykorzystuje Secure Enclave do zarządzania kluczami. Kiedy narysujesz wzór, a funkcja wyprowadzania klucza wygeneruje klucz szyfrowania, klucz ten zostanie przekazany do Secure Enclave. Wszystkie kolejne operacje szyfrowania i deszyfrowania są delegowane do sprzętu. Klucz nigdy nie istnieje w przestrzeni pamięci aplikacji’ w formie, którą można wyodrębnić za pomocą debugera, narzędzia jailbreak lub systemu obrazowania kryminalistycznego.
Oznacza to, że nawet jeśli atakujący ma dostęp root do Twojego iPhone, , scenariusz wymagający wyrafinowanego jailbreaka, , klucze szyfrowania pozostają niedostępne. Secure Enclave to oddzielny chip z własnym krzemem. Kompromitowanie iOS nie zagraża Enklawie.
Wektory inicjujące dla poszczególnych plików
Kiedy szyfrujesz dwa identyczne pliki tym samym kluczem, naiwna implementacja dałaby identyczny tekst zaszyfrowany. To jest problem. Osoba atakująca, która widzi dwa identyczne zaszyfrowane obiekty BLOB, wie, , bez odszyfrowywania czegokolwiek,, , że dwa oryginalne pliki są takie same. W skarbcu pełnym zdjęć tego rodzaju analiza wzorców może ujawnić informacje nawet poprzez szyfrowanie.
Vaultaire eliminuje to, generując unikalny, kryptograficznie losowy wektor inicjujący (IV) dla każdego pojedynczego pliku. IV jest łączony z kluczem szyfrującym podczas operacji AES-256-GCM, zapewniając, że nawet bajt po bajcie pliki identyczne dają zupełnie inny tekst zaszyfrowany. Dwie kopie tego samego zdjęcia, zaszyfrowane tym samym kluczem, będą wyglądać jak całkowicie niepowiązane dane losowe.
Dane IV są przechowywane razem z zaszyfrowanymi plikami, ale nie są tajne., Ich bezpieczeństwo wynika z unikalności, a nie poufności. Każdy IV jest generowany przy użyciu kryptograficznego generatora liczb losowych urządzenia’, który pobiera entropię ze sprzętowych źródeł szumu. Prawdopodobieństwo dwukrotnego wygenerowania tego samego IV jest astronomicznie małe: w przybliżeniu 1 do 296dla 96-bitowych IV GCM’. Potok szyfrowania
Zarządzanie pamięcią: klucze, które ulegają samozniszczeniu
Częstą awarią oprogramowania zabezpieczającego jest pozostawianie wrażliwych danych w pamięci, gdy nie są już potrzebne. Klucze szyfrujące, wygenerowane hasła i odszyfrowane dane mogą pozostać w pamięci RAM długo po tym, jak aplikacja zakończy ich używanie. Narzędzia kryminalistyczne mogą zrzucać pamięć urządzenia i wyszukiwać te pozostałości., to technika znana jako atak zimnego rozruchu lub analiza zrzutu pamięci.
Vaultaire przyjmuje agresywne podejście do higieny pamięci. Po zamknięciu aplikacji lub zablokowaniu skarbca następujące zdarzenia mają miejsce w następującej kolejności:
- Klucze szyfrujące zostały nadpisane.Miejsca pamięci przechowujące kluczowy materiał są wypełniane zerami, następnie losowymi danymi, a następnie ponownie zerami. To nie jest proste cofnięcie alokacji., pamięć jest aktywnie czyszczona, aby zapobiec odzyskaniu.
- Wyprowadzony materiał klucza został usunięty.Wartości pośrednie z obliczeń PBKDF2, bufory tymczasowe i wszelkie odszyfrowane dane w pamięci podręcznej są zerowane. Klucze
- Secure Enclave są unieważnione.Kluczowe odniesienia w Secure Enclave są oznaczone do zniszczenia, co gwarantuje, że nie można ich ponownie wykorzystać bez ponownego wyprowadzenia ze wzorca.
- Odszyfrowane miniatury i podglądy zostaną usunięte.Wszelkie dane obrazów zapisane w pamięci podręcznej są nadpisywane przed całkowitym zamknięciem aplikacji.
Następnym razem, gdy otworzysz Vaultaire, zaczniesz od zera. Rysujesz wzór, klucz jest świeży, a Secure Enclave otrzymuje nowe odniesienie do klucza. Nie ma tokena sesji, danych uwierzytelniających w pamięci podręcznej ani skrótu. Każde uruchomienie aplikacji jest kryptograficznie niezależne od poprzedniego.
Często zadawane pytania
Czy AES-256 jest naprawdę niezniszczalny?
Nie można udowodnić, że żaden algorytm szyfrowania jest niezniszczalny w absolutnym matematycznym sensie. Jednak AES-256 przetrwał ponad dwie dekady publicznej kryptoanalizy prowadzonej przez globalną społeczność badawczą. Najbardziej znany atak na AES-256 zmniejsza efektywną siłę klucza z 256 bitów do około 254,4 bitów., , co jest redukcją tak nieistotną, że nie mającą żadnego praktycznego wpływu. Złamanie AES-256 brutalną siłą wymagałoby więcej energii niż istnieje w Układzie Słonecznym. Ze względów praktycznych jest on nie do złamania z jakąkolwiek technologią, która obecnie istnieje lub jest teoretycznie możliwa do przewidzenia.
Dlaczego warto używać PBKDF2 do wyprowadzania klucza?
PBKDF2 z HMAC-SHA512 to standard zalecany przez NIST, oparty na dziesięcioleciach sprawdzonych analiz bezpieczeństwa. W połączeniu z dużą liczbą iteracji Vaultaire’ i losowymi solami na skarbiec, ataki brute-force wymagają lat obliczeń na skarbiec. PBKDF2 jest zaimplementowany natywnie w frameworku CommonCrypto Apple’, co pozwala uniknąć zależności od stron trzecich i zapewnia, że wyprowadzanie klucza odbywa się w wzmocnionym, kontrolowanym kodzie systemowym.
Jakie dane Vaultaire wysyła do swoich serwerów?
Brak. Vaultaire nie ma serwerów odbierających Twoje dane. Jeśli włączysz opcję tworzenia kopii zapasowych iCloud, Twoje zaszyfrowane dane będą przechowywane na Twoim osobistym koncie iCloud, , zaszyfrowane zanim opuszczą Twoje urządzenie z kluczami, których Apple nie posiada. Vaultaire firma nigdy nie otrzymuje, nie przetwarza ani nie przechowuje żadnych danych użytkownika, zaszyfrowanych ani innych.
Czy jailbreak iPhone może zagrozić mojemu skarbcowi?
Ucieczka z więzienia daje atakującemu dostęp root do iOS, ale Secure Enclave jest fizycznie oddzielnym koprocesorem z własną granicą bezpieczeństwa. Jailbreaking iOS nie powoduje jailbreaka Secure Enclave. Przechowywane tam klucze szyfrujące pozostają niedostępne nawet przy pełnej kontroli systemu operacyjnego. Jednakże urządzenie po jailbreaku zwiększa powierzchnię ataku w przypadku rejestrowania naciśnięć klawiszy lub przechwytywania ekranu, dlatego Vaultaire zaleca używanie urządzenia bez jailbreaka w celu zapewnienia maksymalnego bezpieczeństwa.
Po co stosować dwa różne szyfry dla plików i metadanych?
Różnorodność kryptograficzna. Jeśli w AES zostanie wykryta luka (bardzo mało prawdopodobna, ale nie niemożliwa), Twoje metadane będą nadal chronione przez ChaCha20 i odwrotnie. Dodatkowo ChaCha20 oferuje charakterystykę wydajności w stałym czasie, która jest idealna dla małych, ustrukturyzowanych danych, takich jak nazwy plików i znaczniki czasu, eliminując kategorię ataków kanału bocznego, które teoretycznie mogłyby mieć wpływ na AES w implementacjach opartych wyłącznie na oprogramowaniu.
Co stanie się z moimi kluczami, jeśli aplikacja ulegnie awarii?
iOS odzyskuje całą pamięć aplikacji po zakończeniu, niezależnie od tego, czy jest to płynne, czy nie. Odniesienia do kluczy Secure Enclave są powiązane z sesją aplikacji ’ i są automatycznie unieważniane po zakończeniu procesu. Nawet w przypadku awarii kluczowy materiał nie jest zachowywany w dostępnej formie. Następne uruchomienie wymaga wprowadzenia pełnego wzorca i wygenerowania świeżego klucza., Nie ma możliwości wznowienia poprzedniej sesji.
Zobacz stos w akcji
Sześć warstw kryptograficznych. Wymagane zerowe zaufanie. Pobierz Vaultaire i poznaj architekturę bezpieczeństwa, która chroni Cię przed wszystkimi, , łącznie z nami.
Pobierz Vaultaire za darmo