Czym jest Szyfrogram?
Szyfrogram to zaszyfrowane wyjście algorytmu kryptograficznego — przemieszana reprezentacja oryginalnych danych niemożliwa do odczytania bez odpowiedniego klucza deszyfrowania.
Szyfrogram jest odpowiednikiem tekstu jawnego. Gdy algorytm szyfrowania przetwarza tekst jawny kluczem, wynikiem jest szyfrogram — dane wyglądające losowo, nieujawniające nic o oryginalnej treści osobie niemającej klucza deszyfrowania. Transformacja jest odwracalna wyłącznie przy użyciu właściwego klucza.
Dobry szyfrogram jest nieodróżnialny od losowych danych. Nowoczesne algorytmy szyfrowania, takie jak AES-256-GCM, zapewniają brak wykrywalnych wzorców, odchyleń statystycznych i częściowego wycieku informacji w szyfrogramie. Atakujący analizujący szyfrogram nie może ustalić długości oryginalnej wiadomości poza grubym przybliżeniem, języka, w którym została napisana, ani żadnej części jej treści.
Szyfrogramy można bezpiecznie przechowywać w niezaufanych środowiskach — bazach danych, chmurze lub serwerach firm trzecich — ponieważ ich bezpieczeństwo zależy od klucza, a nie od kontroli dostępu nośnika. To zasada leżąca u podstaw szyfrowania danych w spoczynku: nawet gdy nośnik zostaje skompromitowany, dane pozostają chronione, dopóki klucz jest bezpieczny.
Jak Vaulted używa Szyfrogram
Jedyną formą twojego sekretu, która kiedykolwiek istnieje na serwerze Vaulted, jest szyfrogram. Gdy tworzysz sekret, szyfrowanie AES-256-GCM w przeglądarce przekształca tekst jawny w szyfrogram, który jest następnie kodowany base64url i przechowywany w Redis razem z wektorem inicjalizacji. Serwer przechowuje, dostarcza i usuwa szyfrogramy, nigdy nie mając możliwości odszyfrowania ich z powrotem do tekstu jawnego.