Verschlüsselung
Im DRACOON werden verschiedene Verschlüsselungstechnologien eingesetzt, die im Folgenden kurz erklärt werden.
- Server Side Encryption
Die zur Authentifizierung der Benutzer im DRACOON hinterlegten Log-in-Passwörter werden selbstverständlich nicht im Klartext gespeichert, sondern unter Einbeziehung von Gegenmaßnahmen gegen Angriffsversuche (Salting, Peppering, Iterations) mit der modernen und starken bcrypt-Funktion gehashed.
- Channel Encyrption
Als Channel Encryption wird die Verschlüsselung des Übertragungswegs bezeichnet. Die Transportverschlüsselung mittels SSL/TLS stellt heute einen Mindeststandard dar, der eigentlich bei jedem im Internet genutzten Dienst aktiv sein sollte. Mit dieser Technik wird die Übertragung der Log-in-Informationen (Benutzername und Passwort), die Meta-Informationen über vorhandene Dateien und Ordner (Namen, Datentypen, etc.) und natürlich die Dateien selbst noch einmal mit einer zusätzlichen Verschlüsselungsschicht geschützt.
Die Konfiguration wurde dabei genau überprüft und auf eine größtmögliche Sicherheit hin ausgelegt – auch wenn damit Gefahr besteht, veraltete Browser und Betriebssysteme auszuschließen. Doch die Sicherheit der Kundendaten ist wesentlich wichtiger als eine umfassende Kompatibilität.
- Client Side Encryption
Das eigentliche Kernstück des DRACOON ist jedoch die clientseitige Verschlüsselung, die das „Zero-Knowledge“-Prinzip umsetzt und auch den Mitarbeitern der Rechenzentren und der Serviceprovider sowie Administratoren jeglichen Zugriff auf die von bereitgestellten Daten und Informationen effektiv verweigert. Wie dies im Detail funktioniert, wird im folgenden Abschnitt dargestellt. -
Schlüsselverwaltung
Jeder Benutzer, muss sich nach seinem ersten Log-in (bei aktivierter Verschlüsselung) und dem Ändern des Log-in-Passworts ein asymmetrisches Schlüsselpaar erzeugen. Als Input für den dafür benötigten Pseudozufallszahlengenerator werden neben einer Vielzahl an Systemparametern die zufälligen Mausbewegungen und ggf. Tastenanschläge des Benutzers verwendet. Die Erzeugung des RSA-2048-Bit-Schlüsselpaares erfolgt im Hintergrund; der Benutzer wird lediglich dazu aufgefordert, sein Entschlüsselungspasswort zu wählen. Mit Hilfe dieses Passworts wird der soeben erzeugte private Schlüssel unter Verwendung der modernen PBKDF2 (Password-Based Key Derivation Function 2) und AES-256 sehr stark verschlüsselt. Anschließend wird der verschlüsselte private Schlüssel zusammen mit dem öffentlichen Schlüssel in den DRACOON geladen.
Dies ist erforderlich, damit der Benutzer von unterschiedlichen Endgeräten (Browser, Apps, etc.) auf seinen privaten Schlüssel (und damit auf die verschlüsselten Dateien) zugreifen kann.
Upload einer DateiMöchte ein Benutzer eine Datei in einem Datenraum bereitstellen, so erzeugt er sich lokal einen zufälligen Dateischlüssel, mit dem eigentliche Datei noch auf dem Gerät des Benutzers verschlüsselt wird. Dabei kommt AES-CGM mit 256-Bit-Schlüsseln zum Einsatz. Die so verschlüsselte Datei kann der Benutzer nun schon auf dem DRACOON bereitstellen, allerdings besitzt noch keiner der anderen berechtigten Benutzer den für die Entschlüsselung benötigten Dateischlüssel.
Daher erfragt der Benutzer vom DRACOON eine Liste der auf dem Datenraum Berechtigten und erhält die entsprechenden öffentlichen Schlüssel. Mit diesen kann er nun jeweils den Dateischlüssel individuell für den jeweiligen Eigentümer des öffentlichen Schlüssels verschlüsseln und ebenfalls im DRACOON speichern; hier kommt RSA-2048 zum Einsatz.
Somit verlässt auch der Dateischlüssel niemals das Endgerät des Benutzers im Klartext. Damit ist der Upload-Vorgang abgeschlossen.
Download einer Datei
Die in einem Datenraum bereitgestellten Dateien können jederzeit durch die berechtigten Benutzer heruntergeladen werden. Dazu laden sie sich zuerst ihren verschlüsselten privaten Schlüssel herunter und entschlüsseln ihn lokal mit Hilfe ihres Entschlüsselungspasswortes, das sie auf ihrem verwendeten Client eingeben müssen (vgl. Abbildung oben). Ist dies geschehen, so kann der für sie verschlüsselte Dateischlüssel der gewünschten Datei vom DRACOON angefordert und übermittelt werden. Dieser kann mit Hilfe des zuvor erhaltenen privaten Schlüssels auf dem Gerät des Benutzers entschlüsselt werden und steht nun auch vollständig bereit. Im letzten Schritt wird die eigentliche Datei heruntergeladen, die dann mit dem Dateischlüssel entschlüsselt und in der Folge lokal abgespeichert oder geöffnet werden kann.
Somit finden auch bei der Entschlüsselung sämtliche zentralen Schritte unter der vollständigen Kontrolle des Benutzers auf seinem Gerät statt.
Verlust des Entschlüsselungskennwortes -
Vergisst ein Benutzer sein Entschlüsselungskennwort, kann dieses leider nicht wiederhergestellt werden. Durch den konsequenten Einsatz von Zero-Knowledge-Verfahren ist sichergestellt, dass niemand dazu technisch in der Lage ist. Die einzige Lösung an dieser Stelle ist die Erzeugung eines komplett neuen Schlüsselpaares und die Bereitstellung der neuen Schlüssel auf dem DRACOON. Alle Raumadministratoren müssen den Benutzer neu autorisieren, damit er wieder Zugriff auf die Dateien in den Datenraum erhält. Damit können wir sicherstellen, dass selbst mit einem gestohlenen Log-in-Passwort kein Zugriff auf die sensiblen Informationen im DRACOON möglich wird.
War der Benutzer der einzige, der für einen bestimmten Datenraum berechtigt war, so sind die dort abgelegten Dateien verloren, da die starke Verschlüsselung ohne Kenntnis der geeigneten Schlüssel nicht rückgängig gemacht werden kann.
Systemnotfall-Kennwort
Für diese Probleme gibt es jedoch einen Ausweg: Es gibt optional die Möglichkeit, einen Systemnotfall-Kennwort zu definieren, der auch auf beliebige Datenräume berechtigt werden kann (nach Wahl des Raum-Administrators). Dabei wird ein zentrales Passwort festgelegt, mit dem ein Unternehmen auch dann noch in der Lage ist, auf sämtliche Dateien eines Datenraumes zuzugreifen, wenn sämtliche berechtigten Benutzer ihre Entschlüsselungskennwörter vergessen haben. Es empfiehlt sich natürlich, dieses Systemnotfall-Kennwort entsprechend geschützt (z.B. in einem Safe) aufzubewahren.
Kommentare
0 Kommentare
Zu diesem Beitrag können keine Kommentare hinterlassen werden.