0Pricing
Cloud & IT Cert Prep · Lekcja

Szyfrowanie kopertowe i klucze danych

Zobaczą Państwo, jak KMS chroni klucz danych szyfrujący właściwe dane.

Szyfrowanie kopertowe i klucze danych to bezpłatna lekcja Cloud & IT Cert Prep na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cloud & IT Cert Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.

Problem dużych danych

KMS może bezpośrednio szyfrować tylko małe dane (około 4 KB). Rzeczywiste dane, pliki, woluminy i bazy danych są znacznie większe.

Rozwiązaniem jest szyfrowanie kopertowe: duże dane są szyfrowane za pomocą klucza danych, a następnie ten klucz danych jest szyfrowany kluczem KMS. W ten sposób AWS szyfruje dane na dużą skalę.

Czym jest klucz danych

Klucz danych to zwykły klucz szyfrujący (na przykład AES-256), generowany przez KMS do szyfrowania właściwych danych.

  • W przeciwieństwie do kluczy KMS tekst jawny klucza danych opuszcza KMS na krótko, aby można było go użyć.
  • KMS zwraca również zaszyfrowaną kopię klucza danych.

GenerateDataKey

Wywołują Państwo GenerateDataKey, podając klucz KMS. KMS zwraca:

  • Klucz danych w tekście jawnym do natychmiastowego zaszyfrowania danych.
  • Zaszyfrowany klucz danych (opakowany kluczem KMS), który należy przechowywać razem z szyfrogramem.

Następnie należy usunąć z pamięci klucz danych w tekście jawnym.

aws kms generate-data-key \
  --key-id alias/my-app-key \
  --key-spec AES_256

Schemat szyfrowania kopertowego

Przepływ wygląda następująco:

  • Zaszyfrować dane za pomocą klucza danych w tekście jawnym.
  • Przechowywać zaszyfrowany klucz danych obok szyfrogramu.
  • Usunąć klucz danych w tekście jawnym.

Klucz danych znajduje się „w kopercie” zapieczętowanej kluczem KMS — stąd nazwa.

Odszyfrowywanie za pomocą koperty

Aby odszyfrować dane, należy odwrócić ten proces:

  • Przesłać zaszyfrowany klucz danych do KMS za pomocą operacji Decrypt.
  • KMS zwróci klucz danych w tekście jawnym.
  • Użyć go do odszyfrowania danych, a następnie go usunąć.

Tylko KMS może rozpakować klucz danych, dlatego dostęp do klucza KMS kontroluje całość operacji.

Dlaczego szyfrowanie kopertowe jest pomocne

Szyfrowanie kopertowe łączy najlepsze cechy obu rozwiązań:

  • Szybkie, lokalne szyfrowanie dużych danych za pomocą klucza danych.
  • Silna scentralizowana kontrola, ponieważ klucz danych jest bezużyteczny bez klucza KMS.

Zmniejsza również liczbę wywołań KMS, ponieważ jeden klucz danych może chronić dużą ilość danych.

Buforowanie kluczy danych

W przypadku obciążeń o dużej liczbie operacji AWS Encryption SDK może buforować klucze danych, aby używać ich ponownie podczas wielu operacji szyfrowania.

Zmniejsza to koszty żądań KMS i opóźnienia. Można skonfigurować limity, aby buforowany klucz nie był używany zbyt długo ani zbyt szeroko, równoważąc wydajność i bezpieczeństwo.

Jak usługi używają tego wewnętrznie

Po włączeniu szyfrowania dla S3, EBS lub RDS AWS wykonuje za Państwa szyfrowanie kopertowe.

Usługa żąda klucza danych z klucza KMS, szyfruje dane i przechowuje opakowany klucz danych. Wystarczy wybrać klucz KMS — mechanizm szyfrowania kopertowego działa automatycznie.

AWS Encryption SDK

AWS Encryption SDK to biblioteka po stronie klienta, która prawidłowo implementuje szyfrowanie kopertowe we własnych aplikacjach.

Obsługuje generowanie kluczy danych, kontekst szyfrowania oraz przechowywanie opakowanego klucza razem z szyfrogramem, dzięki czemu nie muszą Państwo samodzielnie implementować podatnych na błędy elementów obsługi kryptografii.

GenerateDataKeyWithoutPlaintext

Wariant GenerateDataKeyWithoutPlaintext zwraca tylko zaszyfrowany klucz danych.

Używa się go, gdy chcą Państwo wygenerować i przechować klucz danych teraz, ale odszyfrować go dopiero później, w chwili użycia. Dzięki temu klucz w tekście jawnym nie znajduje się w pamięci, dopóki nie jest rzeczywiście potrzebny, co ogranicza ryzyko związane z kluczami przygotowanymi z wyprzedzeniem.

Dlaczego ma to znaczenie na egzaminie

Szyfrowanie kopertowe wyjaśnia, dlaczego KMS skaluje się i w jaki sposób pojedynczy klucz KMS chroni terabajty danych.

Należy spodziewać się pytań dotyczących przepływu GenerateDataKey, tego, co opuszcza KMS (klucz danych, na krótko), oraz tego, dlaczego kontrolowanie klucza KMS oznacza kontrolowanie wszystkich danych pochodnych.

Szybkie sprawdzenie

Proszę sprawdzić schemat szyfrowania kopertowego.

Podsumowanie

Dowiedzieli się Państwo o szyfrowaniu kopertowym.

  • GenerateDataKey zwraca klucz danych w tekście jawnym oraz zaszyfrowany klucz danych.
  • Należy lokalnie zaszyfrować dane kluczem w tekście jawnym, przechować opakowany klucz i usunąć klucz w tekście jawnym.
  • Tylko klucz KMS może rozpakować klucz danych, zapewniając centralną kontrolę nad wszystkimi danymi.

Często zadawane pytania

Czy lekcja „Szyfrowanie kopertowe i klucze danych” jest bezpłatna?

Tak — pełny tekst „Szyfrowanie kopertowe i klucze danych” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cloud & IT Cert Prep, przejdź na CoddyKit PRO. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.

Co nauczysz się w „Szyfrowanie kopertowe i klucze danych”?

Zobaczą Państwo, jak KMS chroni klucz danych szyfrujący właściwe dane. Ćwiczysz Cloud & IT Cert Prep z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Cloud & IT Cert Prep?

Nie wymagamy żadnego doświadczenia. Cloud & IT Cert Prep w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Szyfrowanie kopertowe i klucze danych”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Cloud & IT Cert Prep?

Tak. Każda lekcja Cloud & IT Cert Prep zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Czym są klucze KMS i do czego służą
  2. Klucze symetryczne, asymetryczne i wieloregionowe
  3. Zasady kluczy, uprawnienia delegowane i warunki
  4. Szyfrowanie kopertowe i klucze danych
← Powrót do Cloud & IT Cert Prep