Achter de schermen: overzicht van de architectuur

Dropbox is opgebouwd met meerdere beveiligingslagen, zoals veilige gegevensoverdracht, versleuteling, netwerkconfiguratie en functies op toepassingsniveau, die over een schaalbare, beveiligde infrastructuur zijn verspreid.

Bestandsinfrastructuur

Dropbox-gebruikers kunnen op elk gewenst moment bestanden en mappen openen via verschillende interfaces, zoals de desktoptoepassing, webtoepassing of mobiele apps, of via toepassingen van derden die aan Dropbox zijn gekoppeld. Elk van deze interfaces is voorzien van beveiligingsinstellingen en -functies die de gebruikersgegevens beschermen, maar er tegelijkertijd voor zorgen dat ze gemakkelijk toegankelijk blijven. Al deze clients zijn via beveiligde servers verbonden voor de toegang tot bestanden, het delen van bestanden met anderen en het bijwerken van gekoppelde apparaten wanneer bestanden worden toegevoegd, gewijzigd of verwijderd.

Dropbox gedistribueerde bestandsinfrastructuur

Onze bestandsinfrastructuur bestaat uit de volgende onderdelen:

Metadataservers

Bepaalde basisinformatie over gebruikersgegevens, ook wel metagegevens, wordt in een afzonderlijke opslagservice bewaard en fungeert als index voor de gegevens in gebruikersaccounts. Metagegevens omvatten basisinformatie over accounts en gebruikers, zoals e-mailadressen, namen en apparaatnamen. Metagegevens omvatten ook basisinformatie over bestanden, zoals bestandsnamen en -typen, die functies als versiegeschiedenis, herstel en synchronisatie, helpt ondersteunen.

Metagagevensdatabases

Metagegevens over bestanden worden opgeslagen in een MySQL-gebaseerde databaseservice en worden waar nodig gefragmenteerd en gerepliceerd om te voldoen aan de prestatie- en beschikbaarheidsvereisten.

Blokservers

Standaard biedt Dropbox een uniek beveiligingsmechanisme voor de bescherming van gebruikersgegevens dat verder gaat dan traditionele encryptie. Blokservers verwerken bestanden uit de Dropbox-toepassingen door deze op te splitsen in blokken, elk bestandsblok te versleutelen met een sterke encryptie en alleen blokken te synchroniseren die tussen twee revisies in zijn aangepast. Wanneer een Dropbox-toepassing een nieuw bestand ontdekt of detecteert dat er iets aan een bestaand bestand is gewijzigd, brengt de toepassing de encryptie- en toepassingsservices op de hoogte van die verandering en worden nieuwe of aangepaste bestandsblokken verwerkt en verzonden naar de Blokopslagserver. Bovendien worden blokservers gebruikt om bestanden en voorbeelden aan gebruikers te leveren.

Blokopslagservers

De inhoud van bestanden van gebruikers wordt met de blokopslagservers opgeslagen in versleutelde blokken.De inhoud van bestanden van gebruikers wordt met de blokopslagservers opgeslagen in versleutelde blokken. Voordat bestanden worden verzonden, worden ze door de Dropbox-client opgesplitst in bestandsblokken ter voorbereiding op de opslag. De blokopslagservers fungeren als een CAS-systeem, wat staat voor Content-Addressable Storage, waarbij elk afzonderlijk versleuteld bestandsblok wordt opgehaald aan de hand van de hashwaarde.

Voorbeeldservers

De voorbeeldservers zijn verantwoordelijk voor het genereren van bestandsvoorbeelden. Voorbeelden zijn een weergave van het bestand van een gebruiker in een andere bestandsindeling die geschikter is voor een snelle weergave op het apparaat van een eindgebruiker. Bestandsblokken worden door voorbeeldservers van de blokopslagservers opgehaald om voorbeelden te genereren. Wanneer een bestandsvoorbeeld wordt aangevraagd, wordt het voorbeeld uit de cache opgehaald van de voorbeeldopslagservers en naar de blokservers overgedragen. Vervolgens worden de voorbeelden door blokservers aan gebruikers getoond.

Voorbeeldopslagservers

Voorbeelden in cache worden in een versleutelde indeling in de voorbeeldopslagserves opgeslagen.

Meldingsservice

Dit is een aparte service die uitsluitend controleert of er wijzigingen zijn aangebracht in Dropbox-accounts. Er worden hier geen bestandsgegevens of metagegevens opgeslagen of overgedragen. Elke client brengt een 'long poll'-verbinding tot stand met de meldingsservice en wacht. Bij een verandering aan een bestand in Dropbox geeft de meldingsservice een wijziging door aan de relevante client(s) door de long poll-verbinding te sluiten. Het sluiten van de verbinding is een signaal dat de client een veilige verbinding moet maken met de metagegevensservers om wijzigingen te synchroniseren.

Dropbox Paper-infrastructuur

Dropbox-gebruikers kunnen Paper-documenten op elk gewenst moment openen in onze webapp en mobiele apps, of via apps van derden die aan Dropbox zijn gekoppeld. Al deze clients zijn verbonden met beveiligde servers om toegang tot Paper-documenten te bieden, het delen van documenten met anderen mogelijk te maken, en gekoppelde apparaten bij te werken wanneer documenten worden toegevoegd, gewijzigd of verwijderd.

Dropbox Paper gedistribueerde bestandsinfrastructuur

De Dropbox Paper-infrastructuur bestaat uit de volgende onderdelen:

Paper-appservers

De Paper-appservers verwerken aanvragen van gebruikers, geven de uitvoer van bewerkte Paper-documenten weer aan de gebruiker en voeren meldingsservices uit. Paper-appservers schrijven bewerkingen van gebruikers naar de Paper-databases, waar ze in permanente opslag worden geplaatst. Communicatiesessies tussen de Paper-appservers en Paper-databases worden versleuteld met een sterke codering.

Paper-databases

De feitelijke inhoud van Paper-documenten van gebruikers, alsmede bepaalde metagegevens over deze Paper-documenten, worden in permanente opslag versleuteld in de Paper-databases. Hiertoe behoort informatie over een Paper-document (bijvoorbeeld titel, gedeeld lidmaatschap, machtigingen en project- en mapkoppelingen), maar ook inhoud uit het Paper-document zelf, waaronder opmerkingen en taken. De Paper-databases worden waar nodig gefragmenteerd en gerepliceerd om te voldoen aan de prestatie- en beschikbaarheidsvereisten.

Opslagservers voor Paper-afbeeldingen

Afbeeldingen die worden geüpload naar Paper-documenten, worden in rust versleuteld opgeslagen op de Paper-afbeeldingsopslagservers. De overdracht van afbeeldingsgegevens tussen de Paper-appservers en Paper-afbeeldingopslagsservers wordt uitgevoerd via een versleutelde sessie.

Voorbeeldservers

De voorbeeldservers genereren voorbeelden voor zowel afbeeldingen die naar Paper-documenten worden geüpload, als ingesloten hyperlinks in Paper-documenten. Voor afbeeldingen die naar Paper worden geüpload, worden door de voorbeeldservers via een versleuteld kanaal afbeeldingsgegevens opgehaald die in de opslagservers voor Paper-afbeeldingen zijn opgeslagen. Voor hyperlinks die in Paper zijn ingesloten, worden door de voorbeeldservers afbeeldingsgegevens opgehaald en een voorbeeld van de afbeelding gegenereerd via codering, zoals opgegeven door de bronlink. Vervolgens worden de voorbeelden door blokservers aan gebruikers getoond.

Voorbeeldopslagservers

Paper gebruikt dezelfde voorbeeldopslagservers die worden beschreven in het diagram over de Dropbox-infrastructuur om afbeeldingsvoorbeelden in de cache op te slaan. Onderdelen van voorbeelden in cache worden in een versleutelde indeling in de voorbeeldopslagserves opgeslagen.

Zowel speciaal hiervoor opgestelde interne beveiligingsteams als externe beveiligingsspecialisten beschermen deze services middels het identificeren en verkleinen van risico's en kwetsbaarheden. Deze groepen voeren regelmatig toepassings-, netwerk- en andere beveiligingstests en -audits uit om de beveiliging van ons backend-netwerk te garanderen. Daarnaast willen wij met ons beleid voor verantwoorde openbaarmaking het opsporen en melden van beveiligingsrisico's bevorderen.

Gegevenscentra

De ondernemings- en productiesystemen van Dropbox bevinden zich in gegevenscentra van externe subdienstverleners en providers van beheerde services in de Verenigde Staten. Deze externe dienstverleners zijn verantwoordelijk voor de fysieke, omgevings- en operationele beveilingsmaatregelen aan de buitengrenzen van de Dropbox-infrastructuur. Dropbox is verantwoordelijk voor de logische, netwerk- en toepassingsbeveiliging van onze infrastructuur die zich in gegevenscentra van derden bevindt.

Versleuteling

Dropbox-bestanden en Dropbox Paper-documenten in rust worden versleuteld met 256-bits AES-versleuteling (Advanced Encryption Standard). Voor de bescherming van gegevens die worden verzonden tussen de Dropbox-apps (momenteel desktopapp, mobiele apps, API-app of webapp) en onze servers, maakt Dropbox gebruik van SSL/TLS (Secure Sockets Layer / Transport Layer Security). Hiermee wordt een veilige tunnel tot stand gebracht die wordt beschermd door 128-bits AES-versleuteling (Advanced Encryption Standard) of hoger. Gegevens die worden verzonden tussen een Paper-app (mobiele app, API-app of webapp) en de gehoste services worden ook versleuteld via SSL/TLS.

Certificaten vastmaken

Dropbox maakt certificaten vast op onze desktop- en mobiele clients in moderne browsers die de HTTP Public Key Pinning-specificatie ondersteunen en op onze bureaubladclients en mobiele clients in de meeste scenario's en implementaties. Het vastmaken van certificaten is een extra controle om er zeker van te zijn dat de service waarmee je verbinding maakt, inderdaad is van degenen die ze zeggen te zijn en niet van bedriegers. We gebruiken dit om je te beschermen tegen andere manieren die handige hackers kunnen inzetten om je activiteiten te bespioneren.

Perfect Forward Secrecy

Voor de eindpunten die we beheren (desktopapps en mobiele apps) en moderne browsers gebruiken we sterke versleuteling en ondersteunen we Perfect Forward Secrecy. Met Perfect Forward Secrecy zorgen we ervoor dat onze privé-SSL-sleutel niet kan worden gebruikt om internetverkeer uit het verleden te ontcijferen. Zo voegen we extra bescherming toe aan versleutelde communicatie met Dropbox en wordt elke sessie losgekoppeld van alle vorige sessies. Bovendien markeren we op internet alle authenticatiecookies als veilig en gebruiken we HSTS (HTTP Strict Transport Security).

Sleutelbeheer

De Dropbox-infrastructuur voor sleutelbeheer is ontworpen met operationele, technische en procedurele beveiligingstechnieken met zeer beperkte directe toegang tot sleutels. Het genereren, uitwisselen en opslaan van encryptiesleutels wordt verspreid uitgevoerd voor een gedecentraliseerde verwerking.

Dropbox beheert de bestandsversleuteling namens gebruikers om de complexiteit te reduceren en geavanceerde productfuncties en sterke cryptografische controle mogelijk te maken. Bestandsversleutelingssleutels worden gemaakt, opgeslagen en beschermd door beveiligingsfuncties en het beveiligingsbeleid van de infrastructuur van het productiesysteem. De toegang tot productiesystemen wordt beperkt met unieke SSH-sleutelparen. Beveiligingsbeleid en -processen vereisen bescherming van SSH-sleutels. Een intern systeem beheert de uitwisseling van openbare sleutels, en privésleutels worden veilig opgeslagen.

Zie de Dropbox Business-whitepaper over beveiliging voor meer informatie over onze controle- en zichtbaarheidsfuncties.