Dla zaawansowanych: przegląd architektury
Usługa Dropbox została opracowana z wykorzystaniem wielu warstw ochrony, włączając w to bezpieczne przesyłanie danych, szyfrowanie, konfigurację sieci, kontrolę z poziomu aplikacji rozproszoną w skalowalnej i bezpiecznej infrastrukturze.
Infrastruktura plików
Użytkownicy Dropbox mogą uzyskać dostęp do plików i folderów w dowolnym momencie z wielu interfejsów, w tym klientów komputerowych, przeglądarkowych i mobilnych lub poprzez aplikacje innych firm połączone z Dropbox. Wszystkie z nich mają ustawienia i funkcje bezpieczeństwa, które przetwarzają i chronią dane użytkowników, zapewniając jednocześnie łatwy dostęp. Klienty te łączą się z bezpiecznymi serwerami, aby zapewnić dostęp do plików, umożliwiają udostępnianie plików innym i aktualizację połączonych urządzeń, gdy pliki są dodawane, zmieniane lub usuwane.

Nasza infrastruktura plików składa się z następujących elementów:
Serwery metadanych
Niektóre podstawowe informacje o danych użytkownika, tzw. metadane, są przechowywane we własnej, odrębnej usłudze przechowywania i działają jak indeks danych na kontach użytkowników. Metadane obejmują podstawowe informacje o koncie i użytkowniku, np. adres e-mail, imię i nazwisko oraz nazwy urządzeń. Metadane zawierają również podstawowe informacje o plikach, w tym nazwy i typy plików, które pomagają obsługiwać funkcje takie jak historia wersji, odzyskiwanie i synchronizacja.
Bazy metadanych
Metadane plików są przechowywane w usłudze bazy danych wspieranej przez system MySQL i w razie potrzeby są partycjonowane i replikowane, aby spełnić wymagania z zakresu wydajności i wysokiej dostępności.
Serwery bloków
Dropbox z założenia zapewnia unikalny mechanizm bezpieczeństwa, który wykracza poza tradycyjne szyfrowanie w celu ochrony danych użytkownika. Serwery bloków przetwarzają pliki pochodzące z różnych aplikacji Dropbox, dzieląc każdy z nich na bloki, szyfrując każdy blok przy użyciu silnego szyfru oraz synchronizując tylko te bloki, które uległy modyfikacji pomiędzy kolejnymi wersjami pliku. Gdy aplikacja Dropbox wykrywa nowy plik lub zmiany w istniejącym pliku, powiadamia serwery bloków o zmianie, a nowe lub zmodyfikowane bloki plików zostają przetworzone i przesłane do serwerów przechowywania bloków. Dodatkowo serwery bloków mogą być wykorzystywane do dostarczania plików użytkownikom i umożliwiania im podglądu.
Serwery przechowywania bloków
Właściwa zawartość plików użytkowników jest przechowywana w zaszyfrowanych blokach na serwerach przechowywania bloków. Właściwa zawartość plików użytkowników jest przechowywana w zaszyfrowanych blokach na serwerach przechowywania bloków. Przed przekazaniem klient Dropbox dzieli pliki na bloki plików w ramach przygotowań do przechowywania. Serwery przechowywania bloków działają jako system Content-Addressable Storage (CAS), a każdy zaszyfrowany blok pliku jest pobierany na podstawie jego wartości skrótu.
Serwery podglądu
Serwery podglądu odpowiadają za tworzenie podglądów plików. Podglądy to renderowanie pliku użytkownika w innym formacie pliku, który lepiej nadaje się do szybkiego wyświetlania na urządzeniu użytkownika końcowego. W celu wygenerowania podglądów serwery podglądu pobierają bloki plików z serwerów przechowywania bloków. Po otrzymaniu żądania podglądu pliku serwery podglądu pobierają podgląd z pamięci podręcznej serwerów przechowywania podglądów i przesyłają je do serwerów bloków. Podglądy są ostatecznie dostarczane użytkownikom przez serwery bloków.
Serwery przechowywania podglądów
Podglądy z pamięci podręcznej są przechowywane w zaszyfrowanych formatach na serwerach przechowywania podglądów.
Usługa powiadomień
Jest to osobna usługa służąca do monitorowania kont Dropbox pod względem zmian. Nie są tutaj przechowywane ani przenoszone żadne dane plików ani metadane. Każdy klient nawiązuje połączenie typu long poll z usługą powiadomień, a następnie oczekuje. W przypadku zmiany jakiegokolwiek pliku w Dropbox usługa powiadomień sygnalizuje zmianę odpowiedniemu klientowi (klientom) poprzez zamknięcie połączenia long poll. Zamknięcie połączenia oznacza, że w celu zsynchronizowania wszelkich zmian klient musi się bezpiecznie połączyć z serwerami metadanych.
Infrastruktura Dropbox Paper
Użytkownicy Dropbox mogą w dowolnym czasie uzyskiwać dostęp do dokumentów Paper przy użyciu klientów internetowych i mobilnych albo za pośrednictwem innych aplikacji połączonych z aplikacją Dropbox Paper. Klienty te łączą się z bezpiecznymi serwerami, aby zapewnić dostęp do dokumentów Paper, umożliwić udostępnianie dokumentów innym osobom i aktualizować połączone urządzenia, gdy dokumenty są dodawane, zmieniane lub usuwane.

Infrastruktura Dropbox Paper składa się z następujących elementów:
Serwery aplikacji Paper
Serwery aplikacji Paper przetwarzają żądania użytkowników, renderują u użytkowników wyjściową postać edytowanych dokumentów Paper i wykonują zadania związane z powiadomieniami. Serwery aplikacji Paper zapisują zmiany użytkowników w bazach danych Paper, gdzie trafiają one do trwałej pamięci masowej. Sesje komunikacji między serwerami aplikacji Paper i bazami danych Paper są szyfrowane silnym szyfrem.
Bazy danych Paper
Właściwa zawartość dokumentów Paper użytkowników, a także pewne metadane na temat tych dokumentów, są szyfrowane w trwałej pamięci masowej w bazach danych Paper. Obejmuje to informacje o każdym dokumencie Paper (takie jak jego tytuł, członkowie i uprawnienia, powiązania z projektem i folderem itd.) oraz zawartość samego dokumentu, łącznie z komentarzami i zadaniami. Bazy danych Paper są partycjonowane i replikowane odpowiednio do potrzeb, aby spełnić wymagania z zakresu wydajności i wysokiej dostępności.
Serwery metadanych
Paper korzysta z tych samych serwerów metadanych opisanych na schemacie infrastruktury Dropbox do przetwarzania informacji o dokumentach Paper, takich jak historia wersji pliku Paper doc i członkostwo w folderach udostępnionych. Dropbox bezpośrednio zarządza serwerami metadanych, które znajdują się w zewnętrznych, kolokowanych centrach danych.
Bazy metadanych
Paper korzysta z tych samych baz danych metadanych opisanych na schemacie infrastruktury Dropbox do przechowywania informacji związanych z dokumentami Paper, takich jak udostępnianie, uprawnienia i powiązania folderów. Metadane dokumentów Paper są przechowywane w usłudze bazy danych opartej na systemie MySQL i w razie potrzeby są partycjonowane i replikowane, aby spełnić wymagania z zakresu wydajności i wysokiej dostępności.
Serwery przechowywania obrazów Paper
Obrazy przesłane do dokumentów Paper są przechowywane na serwerach obrazów Paper i w takiej postaci szyfrowane. Transmisja danych obrazów między aplikacją Paper i serwerami obrazów Paper odbywa się w ramach zaszyfrowanej sesji.
Serwery podglądu
Serwery podglądu tworzą podglądy obrazów przesłanych do dokumentów Paper i hiperłączy osadzonych w tych dokumentach. W przypadku obrazów przesyłanych do dokumentów Paper serwery podglądu pobierają dane dotyczące obrazu przechowywane na serwerach przechowywania obrazów Paper za pośrednictwem zaszyfrowanego kanału. W przypadku hiperłączy osadzonych w dokumentach Paper serwery podglądu pobierają dane dotyczące obrazu i tworzą jego podgląd przy użyciu szyfrowania, zgodnie z tym, co określa łącze źródłowe. Podglądy są ostatecznie dostarczane użytkownikom przez serwery bloków.
Serwery przechowywania podglądów
Do przechowywania podglądów obrazów w pamięci podręcznej aplikacja Paper korzysta z serwerów przechowywania podglądów opisanych na schemacie infrastruktury Dropbox. Fragmenty podglądu z pamięci podręcznej są przechowywane w zaszyfrowanych formatach na serwerach przechowywania podglądów.
Zarówno specjalne wewnętrzne zespoły ds. bezpieczeństwa, jak i specjaliści innych firm chronią te usługi poprzez identyfikację i ograniczanie zagrożeń oraz luk w zabezpieczeniach. Te grupy przeprowadzają regularne testy i audyty aplikacji, sieci i innych elementów związanych z bezpieczeństwem, aby zapewnić bezpieczeństwo zaplecza sieciowego po naszej stronie. Ponadto nasza polityka odpowiedzialnego ujawniania luk promuje odkrywanie i zgłaszanie luk w zabezpieczeniach.
Centra danych
Systemy korporacyjne i produkcyjne Dropbox mieszczą się w centrach danych innych firm i zarządzanych przez dostawców usług z USA. Ci zewnętrzni dostawcy usług są odpowiedzialni za fizyczne, środowiskowe i operacyjne kontrole bezpieczeństwa w ramach infrastruktury Dropbox. Dropbox odpowiada za bezpieczeństwo aplikacji oraz bezpieczeństwo logiczne i sieciowe naszej infrastruktury znajdującej się w centrach danych innych firm.
Szyfrowanie
Pliki Dropbox i dokumenty Paper podczas przechowywania są szyfrowane za pomocą 256-bitowego algorytmu Advanced Encryption Standard (AES). Aby chronić dane przesyłane między aplikacjami Dropbox (obecnie są to aplikacje komputerowa, mobilna, interfejs API i przeglądarka) oraz naszymi serwerami, Dropbox do transferu danych używa protokołu Secure Sockets Layer (SSL)/Transport Layer Security (TLS), tworząc bezpieczny tunel chroniony 128-bitowym lub dłuższym kluczem szyfrującym AES (Advanced Encryption Standard). Podobnie dane przesyłane między klientem Paper (aplikacją mobilną, interfejsem API lub przeglądarką) i usługami hostowanymi są szyfrowane przy użyciu protokołu SSL/TLS.
Przypinanie certyfikatu
Dropbox obsługuje przypinanie certyfikatu (cerificate pinning) zarówno w aplikacji komputerowej jak i w klientach mobilnych synchronizacji plików oraz udostępniania. Przypinanie certyfikatu to dodatkowy mechanizm pozwalający upewnić się, że nasze aplikacje łączą się tylko z serwerami, które mają certyfikaty cyfrowe pochodzące z autoryzowanych urzędów certyfikacji. Używamy tej funkcji w celu ochrony przed atakami ze strony państw kontrolujących „podstępne” urzędy certyfikacji, a także ochrony użytkowników przed lokalnym złośliwym oprogramowaniem, które może przejmować połączenia.
Funkcja PFS (Perfect forward secrecy)
W przypadku kontrolowanych przez nas punktów końcowych (komputerów stacjonarnych i urządzeń mobilnych) oraz nowoczesnych przeglądarek stosujemy silne szyfry i obsługujemy funkcję doskonałego utajnienia przekazywania (PFS). Dzięki wdrożeniu funkcji doskonałego utajnienia przekazywania sprawiliśmy, że prywatny klucz naszego certyfikatu nie może zostać wykorzystany do odszyfrowania wcześniejszego ruchu internetowego. Zapewnia to dodatkową ochronę szyfrowanej komunikacji z Dropbox, co zasadniczo oznacza oddzielenie każdej sesji od wszystkich poprzednich sesji. Dodatkowo w sieci oznaczamy wszystkie pliki cookie uwierzytelniania jako bezpieczne i włączamy mechanizm HTTP Strict Transport Security (HSTS).
Zarządzanie kluczami
Infrastruktura zarządzania kluczami Dropbox została zaprojektowana z myślą o kontroli bezpieczeństwa operacyjnego, technicznego i proceduralnego, z bardzo ograniczonym bezpośrednim dostępem do kluczy. Generowanie, wymiana i przechowywanie kluczy szyfrowania są rozproszone w celu zdecentralizowanego przetwarzania.
Dropbox zarządza szyfrowaniem plików w imieniu użytkowników, co pozwala na wyeliminowanie złożoności, obsługę zaawansowanych funkcji produktu i zapewnienie silnej kontroli kryptograficznej. Klucze szyfrowania plików są tworzone, przechowywane i chronione za pomocą kontroli oraz zasad bezpieczeństwa infrastruktury systemu produkcyjnego. Dostęp do systemów produkcyjnych jest ograniczony za pomocą unikatowych par kluczy SSH. Zasady i procedury bezpieczeństwa wymagają ochrony kluczy SSH. Procesem bezpiecznej wymiany kluczy publicznych zarządza wewnętrzny system, a klucze prywatne są przechowywane w bezpieczny sposób.
Więcej szczegółów na temat naszych funkcji kontroli i widoczności można znaleźć w Centrum zaufania.