Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS KMS verwendet konfigurierbare kryptografische Algorithmen, sodass das System schnell von einem zugelassenen Algorithmus oder Modus zu einem anderen migrieren kann. Der anfängliche Standardsatz kryptografischer Algorithmen wurde aufgrund ihrer Sicherheitseigenschaften und Leistung aus den vom Federal-Information-Processing-Standard-(FIPS)-geprüften Algorithmen ausgewählt.
Entropie und Zufallszahlengenerierung
AWS KMS Die Schlüsselgenerierung erfolgt in der AWS KMS HSMs. Sie HSMs implementieren einen hybriden Zufallszahlengenerator, der NIST
SP800-90A Deterministic Random Bit Generator (DRBG) CTR_DRBG using AES-256
Symmetrische Schlüsseloperationen (nur Verschlüsselung)
Alle darin verwendeten Befehle zur Verschlüsselung mit symmetrischen Schlüsseln HSMs verwenden die Advanced Encryption Standards (AES), im Galois Counter Mode (GCM
AES-GCM ist ein authentifiziertes Verschlüsselungsschema. Neben der Verschlüsselung von Klartext zur Erzeugung von Verschlüsselungstext berechnet es ein Authentifizierungs-Tag über den Verschlüsselungstext und alle zusätzlichen Daten, für die eine Authentifizierung erforderlich ist (zusätzlich authentifizierte Daten oder AAD). Mit dem Authentifizierungs-Tag wird sichergestellt, dass die Daten aus der angeblichen Quelle stammen und dass der Verschlüsselungstext und AAD nicht geändert wurden.
Oft wird die AWS Erwähnung des AAD in unseren Beschreibungen weggelassen, insbesondere wenn es um die Verschlüsselung von Datenschlüsseln geht. Durch umgebenden Text wird in diesen Fällen impliziert, dass die zu verschlüsselnde Struktur zwischen dem zu verschlüsselnden Klartext und dem zu schützenden Klartext-AAD aufgeteilt ist.
AWS KMS bietet Ihnen die Möglichkeit, Schlüsselmaterial in eine zu importieren, AWS KMS key anstatt sich auf die Generierung des Schlüsselmaterials AWS KMS zu verlassen. Dieses importierte Schlüsselmaterial kann mit RSAES-OAEP
Asymmetrische Schlüsseloperationen (Verschlüsselung, digitale Signatur und Signaturüberprüfung)
AWS KMS unterstützt die Verwendung asymmetrischer Schlüsseloperationen sowohl für die Verschlüsselung als auch für die digitale Signatur und für Schlüsselvereinbarungen. Asymmetrische Schlüsseloperationen basieren auf einem mathematisch verwandten Paar aus öffentlichem und privatem Schlüssel, das Sie zur Verschlüsselung und Entschlüsselung, Signierung und Signaturüberprüfung oder zum Ableiten gemeinsamer Geheimnisse verwenden können. Der private Schlüssel wird niemals unverschlüsselt verlassen. AWS KMS Sie können den öffentlichen Schlüssel intern verwenden, AWS KMS indem Sie die AWS KMS API-Operationen aufrufen, oder Sie können den öffentlichen Schlüssel herunterladen und ihn außerhalb von AWS KMS verwenden.
AWS KMS unterstützt die folgenden asymmetrischen Chiffren.
-
RSA-OAEP (zur Verschlüsselung) und RSA-PSS und RSA-PKCS-#1-v1_5 (zum Signieren und Verifizieren) – Unterstützt RSA-Schlüssellängen (in Bit): 2048, 3072 und 4096 für unterschiedliche Sicherheitsanforderungen.
-
Elliptische Kurve (ECC) — Wird zum Signieren und Verifizieren oder zum Ableiten von gemeinsamen Geheimnissen verwendet, aber nicht für beides. Unterstützt ECC-Kurven: NIST P256, P384, P521, SECP 256k1.
-
SM2 (Nur Regionen in China) — Wird für die Verschlüsselung und Entschlüsselung, das Signieren und Verifizieren oder für das Ableiten von gemeinsamen Geheimnissen verwendet, aber Sie müssen eine Schlüsselverwendung wählen. Unterstützt SM2 PKE für die Verschlüsselung und SM2 DSA für das Signieren.
Schlüsselableitungsfunktionen
Eine Funktion zur Schlüsselableitung wird verwendet, um zusätzliche Schlüssel aus einem anfänglichen Geheimnis oder Schlüssel abzuleiten. AWS KMS verwendet eine Schlüsselableitungsfunktion (KDF), um Schlüssel pro Anruf für jede Verschlüsselung unter einem abzuleiten. AWS KMS keyAlle KDF-Operationen verwenden das KDF im Zählermodus unter
AWS KMS interne Verwendung digitaler Signaturen
Digitale Signaturen werden auch verwendet, um Befehle und Kommunikationen zwischen AWS KMS Entitäten zu authentifizieren. Alle Dienstentitäten verfügen über ein Schlüsselpaar des elliptischen Kurvendigitalsignaturalgorithmus (ECDSA). Sie führen ECDSA gemäß der Definition in: Verwendung von Algorithmen der Elliptic Curve Cryptography (ECC) in der kryptografischen Nachrichtensyntax (CMS)
Umschlagverschlüsselung
Wenn Sie Daten verschlüsseln, sind die Daten geschützt. Sie müssen aber jetzt den Verschlüsselungsschlüssel schützen. Eine Strategie besteht darin, ihn zu verschlüsseln. Envelope-Verschlüsselung bezeichnet das Verschlüsseln von Klartextdaten mit einem Datenschlüssel und die anschließende Verschlüsselung des Datenschlüssels mit einem anderen Schlüssel.
Sie können auch den Datenverschlüsselungsschlüssel mit einem anderen Verschlüsselungsschlüssel verschlüsseln und diesen Verschlüsselungsschlüssel mit einem weiteren Verschlüsselungsschlüssel verschlüsseln. Doch schließlich muss ein Schlüssel als Klartext verbleiben, damit Sie die Schlüssel und die Daten entschlüsseln können. Dieser Top-Level-Klartext-Verschlüsselungsschlüssel zum Verschlüsseln von Schlüsseln wird als Stammschlüssel bezeichnet.

AWS KMS hilft Ihnen dabei, Ihre Verschlüsselungsschlüssel zu schützen, indem sie sicher gespeichert und verwaltet werden. Der in AWS KMS den AWS KMS FIPS 140-3 Security Level 3-validierten Hardware-Sicherheitsmodulen gespeicherte Root-Schlüssel AWS KMS keys, auch bekannt als, darf diese niemals unverschlüsselt
Eine grundlegende Konstruktion, die in vielen kryptographischen Systemen verwendet wird, ist die Envelope-Verschlüsselung. Bei der Envelope-Verschlüsselung werden zwei oder mehr kryptografische Schlüssel verwendet, um eine Nachricht zu sichern. Typischerweise wird ein Schlüssel von einem längerfristigen statischen Schlüssel k abgeleitet, und ein anderer Schlüssel ist ein Schlüssel pro Nachricht, msgKey, der erzeugt wird, um die Nachricht zu verschlüsseln. Der Umschlag (Envelope) wird durch Verschlüsseln der Nachricht gebildet: ciphertext = Encrypt(msgKey, message) . Anschließend wird der Nachrichtenschlüssel mit dem statischen Langzeitschlüssel verschlüsselt: encKey = Encrypt(k, msgKey) . Schließlich werden die beiden Werte (encKey, Ciphertext) in eine einzelne Struktur oder eine Envelope-veschlüsselte Nachricht verpackt.
Der Empfänger mit Zugriff auf k kann die Envelope-Nachricht öffnen, indem er zuerst den verschlüsselten Schlüssel entschlüsselt und dann die Nachricht entschlüsselt.
AWS KMS bietet die Möglichkeit, diese längerfristigen statischen Schlüssel zu verwalten und den Prozess der Umschlagverschlüsselung Ihrer Daten zu automatisieren.
Zusätzlich zu den im AWS KMS Service bereitgestellten Verschlüsselungsfunktionen bietet das AWS Encryption SDK clientseitige Envelope-Verschlüsselungsbibliotheken. Sie können diese Bibliotheken verwenden, um Ihre Daten und die Verschlüsselungsschlüssel zu schützen, die zum Verschlüsseln dieser Daten verwendet werden.

Envelope-Verschlüsselung bietet mehrere Vorteile:
-
Schutz von Datenschlüsseln
Wenn Sie einen Datenschlüssel verschlüsseln, müssen Sie sich nicht darum sorgen, wo Sie den verschlüsselten Schlüssel speichern, da die Sicherheit dieses Datenschlüssels inhärent durch Verschlüsselung geschützt ist. Sie können den verschlüsselten Datenschlüssel sicher neben den verschlüsselten Daten speichern.
-
Verschlüsselung der gleichen Daten unter mehreren Schlüsseln
Verschlüsselungsoperationen können zeitaufwendig sein, insbesondere wenn die zu verschlüsselnden Daten große Objekte sind. Statt Rohdaten mit verschiedenen Schlüsseln mehrmals neu zu verschlüsseln, können Sie einfach die Datenschlüssel, die die Rohdaten schützen, neu verschlüsseln.
-
Kombination der Stärken mehrerer Algorithmen
Im Allgemeinen sind symmetrische Schlüsselalgorithmen schneller und erzeugen kleinere Verschlüsselungstexte als öffentliche Schlüsselalgorithmen. Algorithmen mit öffentlichem Schlüssel unterstützen jedoch eine inhärente Rollentrennung und eine einfachere Schlüsselverwaltung. Die Envelope-Verschlüsselung vereint die Stärken aller Strategien.
Kryptografische Operationen
Bei AWS KMSkryptografischen Vorgängen handelt es sich um API-Operationen, die KMS-Schlüssel zum Schutz von Daten verwenden. Da KMS-Schlüssel im System verbleiben AWS KMS, müssen Sie anrufen, AWS KMS um einen KMS-Schlüssel für einen kryptografischen Vorgang zu verwenden.
Um kryptografische Operationen mit KMS-Schlüsseln durchzuführen, verwenden Sie den AWS SDKs, AWS Command Line Interface (AWS CLI) oder den. AWS -Tools für PowerShell Sie können keine kryptografischen Operationen in der AWS KMS -Konsole ausführen. Beispiele für das Aufrufen der kryptografischen Operationen in mehreren Programmiersprachen finden Sie unter Codebeispiele für die AWS KMS Verwendung AWS SDKs.
In der folgenden Tabelle sind die AWS KMS kryptografischen Operationen aufgeführt. Außerdem werden die Anforderungen an den Schlüsseltyp und die Schlüsselnutzung für KMS-Schlüssel angezeigt, die in der Operation verwendet werden.
Operation | Schlüsseltyp | Schlüsselnutzung |
---|---|---|
Decrypt | Symmetrisch oder asymmetrisch | ENCRYPT_DECRYPT |
DeriveSharedSecret | Asymmetrisch | KEY_AGREEMENT |
Encrypt | Symmetrisch oder asymmetrisch | ENCRYPT_DECRYPT |
GenerateDataKey | Symmetrisch | ENCRYPT_DECRYPT |
GenerateDataKeyPair | Symmetrisch [1] - nicht unterstützt bei KMS-Schlüsseln in benutzerdefinierten Schlüsselspeichern. |
ENCRYPT_DECRYPT |
GenerateDataKeyPairWithoutPlaintext | Symmetrisch [1] - nicht unterstützt bei KMS-Schlüsseln in benutzerdefinierten Schlüsselspeichern. |
ENCRYPT_DECRYPT |
GenerateDataKeyWithoutPlaintext | Symmetrisch | ENCRYPT_DECRYPT |
GenerateMac | HMAC | GENERATE_VERIFY_MAC |
GenerateRandom | Bei dieser Operation wird kein KMS-Schlüssel verwendet. | N/A |
ReEncrypt | Symmetrisch oder asymmetrisch | ENCRYPT_DECRYPT |
Sign | Asymmetrisch | SIGN_VERIFY |
Verify | Asymmetrisch | SIGN_VERIFY |
VerifyMac | HMAC | GENERATE_VERIFY_MAC |
[1] Generiert ein asymmetrisches Datenschlüsselpaar, das durch einen symmetrischen KMS-Schlüssel geschützt ist.
Informationen zu den Berechtigungen für kryptografische Operationen finden Sie unter AWS KMS Berechtigungen.
Damit alle Benutzer AWS KMS schnell reagieren und einen hohen Funktionsumfang haben, werden AWS KMS Kontingente für die Anzahl der pro Sekunde aufgerufenen kryptografischen Operationen eingerichtet. Details hierzu finden Sie unter Gemeinsame Kontingente für kryptografische Operationen.