StateWarden wykorzystuje rozdzieloną architekturę Zero-Trust. Dzięki oddzieleniu warstwy sterowania (Control Plane) od warstwy danych (Data Plane) i przeniesieniu zadań przetwarzania na Agenta działającego na urządzeniu końcowym system skaluje się liniowo i zachowuje poufność kryptograficzną.
1. Komponenty podstawowe
StateWarden działa w oparciu o trzy wyspecjalizowane komponenty. Wstępne provisionowanie odbywa się z użyciem kryptografii postkwantowej (ML-KEM/Kyber), po czym wszystkie komponenty komunikują się wyłącznie przez kanały TLS z wzajemnym uwierzytelnianiem (mTLS).
Agent: przetwarzanie brzegowe i kryptografia
Agent StateWarden to skompilowany plik binarny wdrażany na urządzeniach końcowych (Windows i Linux).
- Lokalna deduplikacja: Agent dzieli dane na bloki i oblicza ich skróty lokalnie. Przesyła wyłącznie bloki unikalne w skali całego Realmu, co zmniejsza wymagania dotyczące przepustowości sieci.
- Silnik PrimeKEM: Przed transmisją Agent szyfruje dane zgodnie z modelem Cascade Cryptography. Klucz szyfrujący znajduje się wyłącznie w pamięci ulotnej Agenta.
- Bezpośredni transfer danych: Agent przesyła dane bezpośrednio do warstwy danych, bez kierowania ich przez serwer centralny.
Artemis: warstwa sterowania (orkiestracja)
Artemis to warstwa orkiestracji odpowiedzialna za planowanie zadań, egzekwowanie polityk, kontrolę dostępu opartą na rolach (RBAC) oraz monitorowanie.
- Broker metadanych: Artemis zarządza metadanymi (np. harmonogramami i statusami kopii zapasowych), ale nie przetwarza ani nie przechowuje właściwych bloków danych ani kluczy odszyfrowujących. Podczas parowania agentów komponent provisionuje tożsamości przy użyciu ładunku hybrydowego PQ (PQ-Hybrid Payload, Kyber + AES-256-GCM).
- Silnik limitów: Artemis równoważy obciążenie w warstwie danych, planuje zadania tak, aby zapobiegać skokom ruchu sieciowego, i wymusza limity wykorzystania dla poszczególnych urządzeń.
Driad: warstwa danych (magazyn)
Węzły Driad zapewniają infrastrukturę magazynową dla zaszyfrowanych bloków danych.
- Niezmienialny magazyn obiektów binarnych: Driad odbiera zaszyfrowane bloki od Agentów i organizuje je w magazynie adresowanym zawartością (content-addressable storage, CAS), co umożliwia deduplikację.
- Architektura rozproszona: Driad działa w modelu „Device Affinity". Komponent Artemis równoważy przychodzące strumienie kopii zapasowych między dostępne węzły magazynowe.
- Weryfikacja zgodności: Driad przeprowadza weryfikację Read-After-Write (RAW) bloków, aby upewnić się, że dane zapisane na dysku są zgodne ze skrótem wygenerowanym przez Agenta.
2. Przebieg interakcji: wykonanie kopii zapasowej
- Polecenie: Artemis przetwarza politykę kopii zapasowych i wysyła zadanie do docelowego Agenta.
- Przetwarzanie: Agent odbiera zadanie, tworzy migawkę (przy użyciu Smart CBT lub VSS), dzieli dane na bloki i szyfruje je silnikiem PrimeKEM.
- Transmisja: Agent nawiązuje połączenie mTLS z przypisanym węzłem Driad i przesyła strumieniowo zaszyfrowane bloki.
- Finalizacja: Agent kompiluje manifest kopii zapasowej, szyfruje go, wysyła go do Driad, a postęp i wyniki zgłasza z powrotem do Artemis.
3. Perymetr bezpieczeństwa
W wyniku rozdzielenia architektury:
- Warstwa sterowania (Artemis) nie ma dostępu do bloków danych ani kluczy odszyfrowujących.
- Warstwa danych (Driad) przechowuje zaszyfrowane, zdeduplikowane obiekty binarne bez kontekstu i bez kluczy odszyfrowujących.
Taki podział ogranicza dostęp do danych w postaci jawnej wyłącznie do Agenta na urządzeniu końcowym.