Słownik

Czym jest Architektura zero-knowledge?

Architektura zero-knowledge to projekt systemu, w którym dostawca usługi nie ma możliwości uzyskania dostępu do danych, ich odczytania ani odszyfrowania przechowywanych w imieniu użytkowników, ponieważ wszystkie operacje szyfrowania i deszyfrowania odbywają się po stronie klienta.

Znane również jako: ZK, zero-knowledge encryption, zero-knowledge proof, ZKA

W systemie zero-knowledge serwer pełni rolę wyłącznie zaszyfrowanego magazynu. Odbiera dane już zaszyfrowane przez klienta i zwraca je na żądanie, nigdy jednak nie posiadając kluczy potrzebnych do ich zrozumienia. To odróżnia taki system od większości usług w chmurze, gdzie dostawca przechowuje klucze szyfrowania i mógłby teoretycznie uzyskać dostęp do danych użytkownika — przez nieuczciwego pracownika, nakaz sądowy lub incydent bezpieczeństwa.

Pojęcie „zero-knowledge" w tym kontekście różni się od dowodów zerowej wiedzy w kryptografii, choć oba opierają się na zasadzie nieujawniania niczego ponad to, co absolutnie konieczne. Usługa zero-knowledge wie, że dane istnieją, i może egzekwować kontrolę dostępu — taką jak daty wygaśnięcia czy limity wyświetleń — ale nie może ustalić, co te dane zawierają.

Architektura zero-knowledge fundamentalnie zmienia model zaufania. Zamiast ufać operatorowi usługi, że ochroni twoje dane i będzie działał uczciwie, musisz jedynie zaufać kodowi po stronie klienta działającemu w przeglądarce. To istotna poprawa bezpieczeństwa, ponieważ eliminuje całą klasę zagrożeń: naruszenia po stronie serwera, dostęp osób wewnętrznych i wymuszony dostęp tracą skuteczność, gdy serwer genuinely nie może odczytać tego, co przechowuje.

Jak Vaulted używa Architektura zero-knowledge

Vaulted jest zbudowany jako system zero-knowledge od podstaw. Wszystkie operacje szyfrowania i deszyfrowania odbywają się w twojej przeglądarce przy użyciu Web Crypto API. Serwer otrzymuje i przechowuje wyłącznie szyfrogram, wektor inicjalizacji oraz metadane, takie jak licznik wyświetleń i data wygaśnięcia. Klucz szyfrowania AES-256-GCM jest osadzony we fragmencie URL, który przeglądarki nigdy nie wysyłają do serwerów zgodnie z RFC 3986. Nawet gdyby serwer lub baza danych Vaulted zostały w pełni skompromitowane, atakujący otrzymałby jedynie zaszyfrowane dane bez możliwości ich odszyfrowania.