Einführung
Verschlüsselung ist ein Prozess, der Klartext als Eingabe und wandelt sie in eine Ausgabe um (Geheimtext), die keine Informationen über die KlartextVerschlüsselung bietet zusätzlichen Schutz für Ihre Daten und stellt sicher, dass Angreifer, die versehentlich in die Hände von Daten gelangen, ohne Zugriff auf die Verschlüsselungsschlüssel nicht darauf zugreifen können. Selbst wenn ein Angreifer die Speichergeräte mit Ihren Daten in die Hände bekommt, kann er sie weder lesen noch entschlüsseln.
Datenverschlüsselungsoptionen
Cloud-Speicher verschlüsselt Daten serverseitig, bevor sie auf die Festplatte geschrieben werden – ohne zusätzliche Kosten. Neben diesem Standard gibt es weitere Möglichkeiten, Daten bei der Nutzung von Cloud-Speicher zu verschlüsseln.
Nachfolgend sind die verfügbaren Verschlüsselungsoptionen für Google Cloud aufgeführt:
Serverseitige Verschlüsselung
Google Cloud Storage führt standardmäßig eine serverseitige Verschlüsselung aller hochgeladenen Objekte durch. Alle Daten werden in Blöcke aufgeteilt, die bis zu mehreren GB groß sein können. Mit Umschlagverschlüsselungwird jeder Datenblock mit einem eindeutigen Datenverschlüsselungsschlüssel (DEK) verschlüsselt, der wiederum mit einem Schlüsselverschlüsselungsschlüssel (KEK) verschlüsselt ist. Die verschlüsselte Version des DEK wird dann zusammen mit den verschlüsselten Daten gespeichert, und die verschlüsselten Datenblöcke werden auf die Speichersysteme von Google verteilt.
Google Cloud Storage unterstützt serverseitige Verschlüsselung mit zwei Schlüsseloptionen:
Vom Kunden bereitgestellte Verschlüsselungsschlüssel:
Mit der Option „Customer-Supplied Encryption Key“ (CSEK) müssen Benutzer ihren eigenen AES 256
symmetrischen Schlüssel und geben Sie ihn an Google Cloud Storage für Verschlüsselung/Entschlüsselung Operationen. Der CSEK wird nur im Speicher des Speichersystems gespeichert und bleibt niemals auf einem Google Cloud-Gerät erhalten
Der Cloud-Speicher speichert den Benutzerschlüssel nicht dauerhaft auf den Servern von Google und verwaltet ihn auch nicht anderweitig. Stattdessen gibt der Benutzer für jeden Cloud-Speichervorgang einen Schlüssel an, der nach Abschluss des Vorgangs vom Google-Server gelöscht wird. Der vom Kunden bereitgestellte Verschlüsselungsschlüssel wird gehasht und anschließend aus dem Speichersystem gelöscht. Der kryptografische Hash dient zur Validierung (zukünftiger Anfragen), kann jedoch nicht zum Entschlüsseln von Daten oder zur Rekonstruktion eines Schlüssels verwendet werden. Wenn der Kunde den Verschlüsselungsschlüssel bereitstellt, verwendet der Cloud-Speicher diesen beim Verschlüsseln
- die Objektdaten
- die Prüfsumme des Objekts
- der Hash des Objekts
Cloud Storage verwendet standardmäßige serverseitige Schlüssel, um die verbleibenden Metadaten für das Objekt zu verschlüsseln, einschließlich des Objektnamens. Der unten erwähnte Arbeitsablauf für die Verschlüsselung und Entschlüsselung lautet:
- Der CSEK wird zusammen mit dem Datenupload an Google Cloud Storage übermittelt
- Daten werden in Unterdateiblöcke aufgeteilt
- Ein Google Cloud Storage-System ruft eine von Google verwaltete gemeinsame kryptografische Bibliothek namens CrunchyCrypt auf, um einen einzigartigen Einmalschlüssel namens DEK zu generieren
- Jeder Datenblock wird mit einem DEK verschlüsselt
- Das Speichersystem verwendet dann den CSEK als KEK und verschlüsselt den DEK
- Der verschlüsselte DEK wird zusammen mit dem verschlüsselten Chiffretextblock in Google Cloud Storage gespeichert, während die Klartextversion des DEK aus dem Speicher gelöscht wird.
- Der vom Kunden bereitgestellte Verschlüsselungsschlüssel wird gehasht und anschließend aus dem Speichersystem gelöscht. Der kryptografische Hash dient zur Validierung zukünftiger Anfragen, kann jedoch nicht zum Entschlüsseln von Daten oder zur Rekonstruktion des Schlüssels verwendet werden.
- Der Client oder die Anwendung fordert Daten von Google Cloud Storage an und stellt dabei den CSEK bereit.
- Google Cloud Storage identifiziert die Blöcke, in denen die Daten gespeichert sind, und wo sich die Blöcke befinden, und ruft die Blöcke ab
- Für jeden Datenblock ruft das Speichersystem den verschlüsselten DEK ab und entschlüsselt ihn mit dem CSEK
- Sobald die Entschlüsselung mit DEK abgeschlossen ist, verwirft das Speichersystem den DEK und sendet die entschlüsselten Daten an den Client oder die Anwendung, die die Daten angefordert hat.
Vom Kunden verwaltete Verschlüsselungsschlüssel:
Vom Kunden verwaltete Verschlüsselungsschlüssel sind Schlüssel, die vom Cloud Key Management Service (KMS) für Benutzer generiert werden und die der Benutzer selbst verwaltet. Diese Schlüssel fungieren als zusätzliche Verschlüsselungsebene über der Standardverschlüsselung von Cloud Storage. Der Ver- und Entschlüsselungs-Workflow:
- Daten werden nach dem Hochladen in die Google Cloud in Unterdateiblöcke aufgeteilt
- Ein Google Cloud Storage-System ruft eine von Google verwaltete gemeinsame kryptografische Bibliothek namens CrunchyCrypt auf, um einen einzigartigen DEK zur einmaligen Verwendung zu generieren
- Jeder Datenblock wird mit einem DEK verschlüsselt
- Das Speichersystem sendet dann den DEK an Googles Key Management Service (KMS) mit dem zugehörigen Key Encryption Key (KEK) des Speichersystems verschlüsselt werden
- Der verschlüsselte DEK wird zusammen mit dem verschlüsselten Chiffretextblock in Google Cloud Storage gespeichert, während die Klartextversion des DEK aus dem Speicher gelöscht wird.
- Wenn Daten angefordert werden, identifiziert Google Cloud Storage die Blöcke, in denen die Daten gespeichert sind, und wo sich die Blöcke befinden, und ruft die Blöcke ab
- Für jeden Datenblock ruft das Speichersystem den verschlüsselten DEK ab und sendet ihn zur Entschlüsselung an Googles KMS
- KMS sendet den entschlüsselten DEK an das Speichersystem, wo er zur Entschlüsselung der Daten verwendet wird
- Das Speichersystem verwirft den DEK und sendet die entschlüsselten Daten an den Client, der die Daten angefordert hat
Clientseitige Verschlüsselung:
Mit dieser Option erstellen und verwalten Benutzer ihre eigenen Verschlüsselungsschlüssel. Sie müssen die Daten verschlüsseln, bevor sie an den Cloud-Speicher gesendet werden. Die verschlüsselten Daten auf der Clientseite kommen verschlüsselt im Cloud-Speicher an. Beim Empfang der Daten werden sie erneut verschlüsselt. Diese zweite Verschlüsselung wird als serverseitige Verschlüsselung bezeichnet und vom Cloud-Speicher verwaltet. Beim Abrufen der Daten entfernt der Cloud-Speicher die serverseitige Verschlüsselungsebene, der Benutzer muss die clientseitige Ebene jedoch selbst entschlüsseln.
Vorteile
Vom Kunden verwaltete Schlüssel bieten die folgenden Vorteile:
- Mehr Kontrolle über den Datenzugriff:
- Vom Kunden verwaltete Schlüssel bieten Kunden mit sensiblen Daten ein zusätzliches Maß an Sicherheit.
- Wenn der Kunde den Zugriff sperrt, können die Daten nicht mehr entschlüsselt werden
- Stoppen Sie Datenlecks:
- In diesem Fall ermöglicht die Deaktivierung kundenverwalteter Schlüssel den Kunden, die fortlaufende Exfiltration ihrer Daten zu stoppen.
- Mehr Kontrolle über den Datenlebenszyklus:
- Mit kundenverwalteten Schlüsseln werden sensible Daten mit dem Schlüssel des Kunden verschlüsselt. Ohne die Zustimmung des Kunden/Benutzers kann niemand die Daten entschlüsseln
- Der Kunde hat die volle Kontrolle über den Lebenszyklus der Daten
- und geschützt
- Rechenressourcen werden mit dem branchenführenden AES-256-Standard verschlüsselt und Google behält die Schlüssel der Benutzer niemals, was bedeutet, dass Google die ruhenden Daten der Benutzer nicht entschlüsseln kann.
- Klubportal CMS
- Vom Kunden bereitgestellte Verschlüsselungsschlüssel decken alle Arten von ruhenden Daten für Compute Engine ab, einschließlich Boot- und persistenter Datenträger.
- Schnell
- Google Compute Engine verschlüsselt bereits ruhende Benutzerdaten und vom Kunden bereitgestellte Verschlüsselung Schlüssel geben dem Benutzer mehr Kontrolle ohne zusätzlichen Aufwand.
