Aplikacja musi zaszyfrować setki plików wideo w jej obrębie przed ich zapisaniem, używając unikalnego klucza dla każdego wideo. Jak deweloper powinien zaimplementować szyfrowanie w aplikacji?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Wywołać KMS GenerateDataKey, aby uzyskać klucz danych, zaszyfrować każde wideo tym kluczem danych i zapisać zarówno zaszyfrowany klucz danych, jak i zaszyfrowane dane..
Dlaczego to jest odpowiedź
Prawidłowa odpowiedź to wywołanie KMS GenerateDataKey, ponieważ jest to zalecany sposób szyfrowania dużych ilości danych za pomocą AWS KMS. KMS GenerateDataKey zwraca klucz danych w postaci jawnej oraz zaszyfrowany klucz danych. Aplikacja używa jawnego klucza danych do szyfrowania każdego pliku wideo lokalnie, co jest wydajniejsze niż wysyłanie każdego bloku danych do KMS. Zaszyfrowany klucz danych jest następnie przechowywany obok zaszyfrowanego wideo. Aby odszyfrować wideo, aplikacja pobiera zaszyfrowany klucz danych i używa KMS Decrypt do jego odszyfrowania, a następnie używa jawnego klucza danych do odszyfrowania wideo. Bezpośrednie użycie API KMS Encrypt do zaszyfrowania danych jest nieefektywne dla dużych plików, ponieważ KMS ma limit rozmiaru danych, które można zaszyfrować w jednym wywołaniu. Generowanie klucza szyfrowania w aplikacji za pomocą biblioteki kryptograficznej nie jest bezpieczne, ponieważ klucze nie są zarządzane przez KMS i nie ma gwarancji ich bezpiecznego przechowywania ani rotacji. Szyfrowanie po stronie serwera S3 z kluczem AWS KMS jest opcją, ale pytanie dotyczy szyfrowania w aplikacji przed zapisaniem, a nie po przesłaniu do S3.
Zdaj egzamin — bez niekończącego się szukania odpowiedzi
Uzyskaj wszystkie zweryfikowane pytania i wyjaśnienia do tego egzaminu w jednym miejscu i zaoszczędź godziny przygotowań. Ponad 1000 certyfikacji · Ponad 20 języków · Zacznij za darmo.
Zdaj egzamin szybciej → Karta nie jest wymagana