Schlüssel für spezielle Zwecke - AWS Key Management Service

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.

Schlüssel für spezielle Zwecke

AWS Key Management Service (AWS KMS) unterstützt mehrere verschiedene Arten von Schlüsseln für unterschiedliche Zwecke.

Wenn Sie einen KMS-Schlüssel erstellen AWS KMS key, erhalten Sie standardmäßig einen symmetrischen Verschlüsselungs-KMS-Schlüssel. Bei AWS KMS einem KMS-Schlüssel mit symmetrischer Verschlüsselung handelt es sich um einen 256-Bit-AES-GCM-Schlüssel, der für die Verschlüsselung und Entschlüsselung verwendet wird, außer in Regionen Chinas, wo er einen symmetrischen 128-Bit-Schlüssel darstellt, der SM4-Verschlüsselung verwendet. Symmetrisches Schlüsselmaterial bleibt niemals unverschlüsselt. AWS KMS Sofern Ihre Aufgabe nicht ausdrücklich asymmetrische Verschlüsselung oder HMAC-Schlüssel erfordert, sind KMS-Schlüssel mit symmetrischer Verschlüsselung, die niemals AWS KMS unverschlüsselt bleiben, eine gute Wahl. Auch AWS -Services, die mit AWS KMS integriert sind, verwenden zum Verschlüsseln Ihrer Daten nur KMS-Schlüssel mit symmetrischer Verschlüsselung. Diese Services unterstützen keine Verschlüsselung mit asymmetrischen KMS-Schlüsseln.

Sie können einen KMS-Schlüssel mit symmetrischer Verschlüsselung verwenden, um Daten AWS KMS zu verschlüsseln, zu entschlüsseln und erneut zu verschlüsseln, Datenschlüssel und Datenschlüsselpaare zu generieren und zufällige Bytefolgen zu generieren. Sie können in einen KMS-Schlüssel mit symmetrischer Verschlüsselung Ihr eigenes Schlüsselmaterial importieren und KMS-Schlüssel mit symmetrischer Verschlüsselung in benutzerdefinierten Schlüsselspeichern erstellen. Eine Tabelle mit den Operationen, die Sie für symmetrische und asymmetrische KMS-Schlüssel ausführen können, finden Sie unter Schlüsseltypreferenz.

AWS KMS unterstützt auch die folgenden speziellen KMS-Schlüsseltypen:

Auswahl eines KMS-Schlüsseltyps

AWS KMS unterstützt verschiedene Arten von KMS-Schlüsseln: symmetrische Verschlüsselungsschlüssel, symmetrische HMAC-Schlüssel, asymmetrische Verschlüsselungsschlüssel und asymmetrische Signaturschlüssel.

KMS-Schlüssel unterscheiden sich, da sie unterschiedliches kryptografisches Schlüsselmaterial enthalten.

  • KMS-Schlüssel mit symmetrischer Verschlüsselung: Stellt einen 256-Bit-AES-GCM-Verschlüsselungsschlüssel dar, außer in den China-Regionen, in denen er einen 128-Bit-SM4-Verschlüsselungsschlüssel darstellt. Symmetrisches Schlüsselmaterial bleibt niemals unverschlüsselt. AWS KMS Um Ihren KMS-Schlüssel für die symmetrische Verschlüsselung zu verwenden, müssen Sie anrufen. AWS KMS

    Symmetrische Verschlüsselungsschlüssel, bei denen es sich um die Standard-KMS-Schlüssel handelt, sind ideal für die meisten Anwendungen. Wenn Sie einen KMS-Schlüssel zum Schutz Ihrer Daten in einem benötigen AWS-Service, verwenden Sie einen symmetrischen Verschlüsselungsschlüssel, sofern Sie nicht angewiesen werden, einen anderen Schlüsseltyp zu verwenden.

  • Asymmetrischer KMS-Schlüssel: Stellt ein mathematisch verwandtes Paar aus öffentlichem und privatem Schlüssel dar, das Sie zur Verschlüsselung und Entschlüsselung, Signierung und Überprüfung oder zum Ableiten gemeinsamer Geheimnisse verwenden können (Sie müssen einen Schlüsselverwendungstyp wählen). 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.

  • HMAC-KMS-Schlüssel (symmetrisch): repräsentiert einen symmetrischen Schlüssel unterschiedlicher Länge, der zum Generieren und Überprüfen von Hash-basierten Nachrichtenauthentifizierungscodes verwendet wird. Das Schlüsselmaterial in einem HMAC-KMS-Schlüssel lässt AWS KMS zu keiner Zeit unverschlüsselt. Um Ihren HMAC-KMS-Schlüssel zu verwenden, müssen Sie anrufen AWS KMS.

Welchen Typ von KMS-Schlüssel Sie erstellen, hängt in erster Linie von Ihrer beabsichtigten Verwendung des KMS-Schlüssels, Ihren Sicherheitsanforderungen und Ihren Autorisierungsanforderungen ab. Denken Sie beim Erstellen des KMS-Schlüssels daran, dass die kryptografische Konfiguration des KMS-Schlüssels, einschließlich der Schlüsselspezifikation und der Schlüsselnutzung, beim Erstellen des KMS-Schlüssels eingerichtet wird und nicht geändert werden kann.

Verwenden Sie die folgende Anleitung, um zu bestimmen, welchen Typ von KMS-Schlüssel Sie für Ihren Anwendungsfall benötigen.

Verschlüsseln und Entschlüsseln von Daten

Verwenden Sie einen symmetrischen KMS-Schlüssel für die meisten Anwendungsfälle, bei denen Daten verschlüsselt und entschlüsselt werden müssen. Der symmetrische Verschlüsselungsalgorithmus, den AWS KMS verwendet, ist schnell, effizient und gewährleistet die Vertraulichkeit und Authentizität von Daten. Er unterstützt authentifizierte Verschlüsselung mit zusätzlichen authentifizierten Daten (AAD), die als Verschlüsselungskontext definiert sind. Für diese Art von KMS-Schlüssel müssen sowohl der Absender als auch der Empfänger verschlüsselter Daten über gültige AWS Anmeldeinformationen für den Anruf AWS KMS verfügen.

Wenn Ihr Anwendungsfall eine Verschlüsselung außerhalb AWS von Benutzern erfordert, die nicht anrufen können AWS KMS, sind asymmetrische KMS-Schlüssel eine gute Wahl. Sie können den öffentlichen Schlüssel des asymmetrischen KMS-Schlüssels verteilen, damit diese Benutzer Daten verschlüsseln können. Ihre Anwendungen, die diese Daten entschlüsseln müssen, können den privaten Schlüssel des asymmetrischen KMS-Schlüssels innerhalb von AWS KMS verwenden.

Signieren von Nachrichten und Verifizieren von Signaturen

Um Nachrichten zu signieren und Signaturen zu überprüfen, müssen Sie einen asymmetrischen KMS-Schlüssel verwenden. Sie können einen KMS-Schlüssel mit einer Schlüsselspezifikation verwenden, die ein RSA-Schlüsselpaar, ein ECC (Elliptic Curve)-Schlüsselpaar oder ein SM2-Schlüsselpaar (nur in den China-Regionen) darstellt. Die ausgewählte Schlüsselspezifikation wird durch den Signaturalgorithmus bestimmt, den Sie verwenden möchten. Die ECDSA-Signaturalgorithmen, die von ECC-Schlüsselpaaren unterstützt werden, sind den RSA-Signaturalgorithmen vorzuziehen. Möglicherweise müssen Sie jedoch eine bestimmte Schlüsselspezifikation und einen bestimmten Signierungsalgorithmus verwenden, um Benutzer zu unterstützen, die Signaturen außerhalb von überprüfen. AWS

Verschlüsseln Sie mit asymmetrischen Schlüsselpaaren

Um Daten mit einem asymmetrischen key pair zu verschlüsseln, müssen Sie einen asymmetrischen KMS-Schlüssel mit einer RSA-Schlüsselspezifikation oder einer SM2-Schlüsselspezifikation verwenden (nur Regionen Chinas). Verwenden Sie den Vorgang Encrypt, um Daten AWS KMS mit dem öffentlichen Schlüssel eines KMS-Schlüsselpaars zu verschlüsseln. Sie können den öffentlichen Schlüssel auch herunterladen und für die Parteien freigeben, die Daten außerhalb von AWS KMS verschlüsseln müssen.

Wenn Sie den öffentlichen Schlüssel eines asymmetrischen KMS-Schlüssels herunterladen, können Sie ihn außerhalb von AWS KMS verwenden. Es unterliegt jedoch nicht mehr den Sicherheitskontrollen, die den KMS-Schlüssel schützen. AWS KMS Sie können beispielsweise keine AWS KMS Schlüsselrichtlinien oder Zuschüsse verwenden, um die Verwendung des öffentlichen Schlüssels zu kontrollieren. Mit den AWS KMS unterstützten Verschlüsselungsalgorithmen können Sie auch nicht kontrollieren, ob der Schlüssel nur für die Verschlüsselung und Entschlüsselung verwendet wird. Weitere Informationen finden Sie unter Besondere Überlegungen zum Herunterladen öffentlicher Schlüssel.

Um Daten zu entschlüsseln, die mit dem öffentlichen Schlüssel außerhalb von verschlüsselt wurden AWS KMS, rufen Sie den Vorgang Decrypt auf. Die Decrypt-Produktion schlägt fehl, wenn die Daten mit einem öffentlichen Schlüssel aus einem KMS-Schlüssel mit der SIGN_VERIFY-Schlüsselnutzung verschlüsselt wurden. Der Vorgang schlägt auch fehl, wenn er mit einem Algorithmus verschlüsselt wurde, der die von Ihnen gewählte Schlüsselspezifikation AWS KMS nicht unterstützt. Weitere Informationen über wichtige Spezifikationen und unterstützte Algorithmen finden Sie unter Asymmetrische Schlüsselspezifikationen.

Um diese Fehler zu vermeiden, AWS KMS muss jeder, der einen öffentlichen Schlüssel außerhalb von verwendet, die Schlüsselkonfiguration speichern. Die AWS KMS Konsole und die GetPublicKeyAntwort enthalten die Informationen, die Sie angeben müssen, wenn Sie den öffentlichen Schlüssel teilen.

Leitet gemeinsame Geheimnisse ab

Um gemeinsame geheime Schlüssel abzuleiten, verwenden Sie einen KMS-Schlüssel mit dem von NIST empfohlenen elliptischen Kurven oder SM2-Schlüsselmaterial (nur Regionen Chinas). AWS KMS verwendet den Elliptic Curve Cryptography Cofactor Diffie-Hellman Primitive (ECDH), um eine wichtige Vereinbarung zwischen zwei Peers herzustellen, indem ein gemeinsames Geheimnis aus ihren öffentlich-privaten Schlüsselpaaren mit elliptischer Kurve abgeleitet wird. Sie können den unverarbeiteten gemeinsamen geheimen Schlüssel, den der DeriveSharedSecretVorgang zurückgibt, verwenden, um einen symmetrischen Schlüssel abzuleiten, mit dem Daten, die zwischen zwei Parteien gesendet werden, ver- und entschlüsselt oder HMACs generiert und verifiziert werden können. AWS KMS empfiehlt, dass Sie die NIST-Empfehlungen zur Schlüsselableitung befolgen, wenn Sie einen symmetrischen Schlüssel aus dem unformatierten gemeinsamen geheimen Schlüssel ableiten.

Generieren und überprüfen von HMAC-Codes.

Verwenden Sie einen HMAC-KMS-Schlüssel, um Hash-basierte Nachrichtenauthentifizierungscodes zu generieren und zu überprüfen. Wenn Sie einen HMAC-Schlüssel erstellen AWS KMS, AWS KMS erstellt und schützt es Ihr Schlüsselmaterial und stellt sicher, dass Sie die richtigen MAC-Algorithmen für Ihren Schlüssel verwenden. HMAC-Codes können auch als Pseudozufallszahlen und in bestimmten Szenarien zum symmetrischen Signieren und Tokenisieren verwendet werden.

HMAC-KMS-Schlüssel sind symmetrische Schlüssel. Beim Erstellen eines HMAC-KMS-Schlüssels in der AWS KMS -Konsole wählen Sie den Schlüsseltyp Symmetric.

Zusammen mit AWS Diensten verwenden

Informationen zum Erstellen eines KMS-Schlüssels für die Verwendung mit einem AWS Dienst, der in integriert ist AWS KMS, finden Sie in der Dokumentation des Dienstes. AWS Dienste, die Ihre Daten verschlüsseln, benötigen einen symmetrischen KMS-Schlüssel.

Zusätzlich zu diesen Überlegungen haben kryptografische Operationen zu KMS-Schlüsseln mit unterschiedlichen Schlüsselspezifikationen unterschiedliche Preise und unterschiedliche Anforderungskontingente. Informationen zur AWS KMS Preisgestaltung finden Sie unter AWS Key Management Service Preise. Weitere Informationen zu Anforderungskontingenten finden Sie unter Anforderungskontingente.

Auswählen der Schlüsselnutzung

Die Schlüsselnutzung eines KMS-Schlüssels bestimmt, ob der KMS-Schlüssel für die Verschlüsselung und Entschlüsselung, Signierung und Verifizierung von Signaturen oder Generierung und Verifizierung von HMAC-Tags verwendet wird. Jeder KMS-Schlüssel kann nur eine Schlüsselverwendung haben. Die Verwendung eines KMS-Schlüssels für mehr als eine Art von Operation macht das Produkt aller Operationen anfälliger gegenüber Angriffen.

Jeder KMS-Schlüssel kann nur eine Schlüsselnutzung haben. Wie in der folgenden Tabelle gezeigt, können KMS-Schlüssel mit symmetrischer Verschlüsselung nur für Verschlüsselung und Entschlüsselung verwendet werden. HMAC-KMS-Schlüssel können nur zum Generieren und Verifizieren von HMAC-Codes verwendet werden. Sie müssen eine Entscheidung über die Verwendung von Schlüsseln für asymmetrische KMS-Schlüssel treffen. Asymmetrische KMS-Schlüssel mit RSA-Schlüsselpaaren können verwendet werden, um Daten zu verschlüsseln oder zu entschlüsseln oder Nachrichten zu signieren und zu verifizieren (aber nicht beides). Asymmetrische KMS-Schlüssel mit von NIST empfohlenen Schlüsselpaaren mit elliptischen Kurven können verwendet werden, um Nachrichten zu signieren und zu verifizieren oder gemeinsame Geheimnisse abzuleiten (aber nicht beides). Asymmetrische KMS-Schlüssel mit ECC_SECG_P256K1 Schlüsselpaaren können nur zum Signieren und Überprüfen von Nachrichten verwendet werden. Asymmetrische KMS-Schlüssel mit SM2-Schlüsselpaaren (nur Regionen Chinas) können verwendet werden, um entweder Daten zu verschlüsseln und zu entschlüsseln, Nachrichten zu signieren und zu verifizieren oder gemeinsame geheime Schlüssel abzuleiten (Sie müssen einen Schlüsselverwendungstyp wählen).

Gültige Schlüsselnutzung für KMS-Schlüsseltypen
KMS-Schlüsseltyp Verschlüsseln und Entschlüsseln

ENCRYPT_DECRYPT

Signieren und überprüfen

SIGN_VERIFY

MAC generieren und verifizieren

GENERATE_VERIFY_MAC

Leitet gemeinsame Geheimnisse ab

SCHLÜSSELVEREINBARUNG

KMS-Schlüssel zur symmetrischen Verschlüsselung
HMAC-KMS-Schlüssel (symmetrisch)
Asymmetrische KMS-Schlüssel mit RSA-Schlüsselpaaren
Asymmetrische KMS-Schlüssel mit ECC-Schlüsselpaaren

Sie müssen einen asymmetrischen KMS-Schlüssel mit von NIST empfohlenem Schlüsselmaterial mit elliptischen Kurven verwenden, um gemeinsame geheime Schlüssel abzuleiten.

Asymmetrische KMS-Schlüssel mit SM2-Schlüsselpaaren (nur China-Regionen)

In der AWS KMS Konsole wählen Sie zuerst den Schlüsseltyp (symmetrisch oder asymmetrisch) und dann die Schlüsselverwendung. Der ausgewählte Schlüsseltyp bestimmt, welche Optionen der Schlüsselverwendung angezeigt werden. Die ausgewählte Schlüsselverwendung bestimmt, welche Schlüsselspezifikationen, falls zutreffend, angezeigt werden.

Um eine Schlüsselverwendung in der AWS KMS Konsole auszuwählen:

  • Für KMS-Schlüssel mit symmetrischer Verschlüsselung (Standard) wählen Sie Verschlüsselung und Entschlüsselung.

  • Wählen Sie für HMAC-KMS-Schlüssel Generate and verify MAC (MAC generieren und überprüfen) aus.

  • Wählen Sie für asymmetrische KMS-Schlüssel mit von NIST empfohlenem Schlüsselmaterial mit elliptischen Kurven (Elliptic Curve, Elliptic Curve) die Option Signieren und verifizieren oder Schlüsselvereinbarung.

  • Wählen Sie für asymmetrische KMS-Schlüssel mit ECC_SECG_P256K1 Schlüsselmaterial die Option Signieren und verifizieren aus.

  • Wählen Sie für asymmetrische KMS-Schlüssel mit RSA-Schlüsselmaterial Encrypt and decrypt (Verschlüsseln und Entschlüsseln)oder Sign and verify (Signieren und Überprüfen).

  • Wählen Sie für asymmetrische KMS-Schlüssel mit SM2-Schlüsselmaterial die Optionen Verschlüsseln und entschlüsseln, Signieren und verifizieren oder Schlüsselvereinbarung aus. Die SM2-Schlüsselspezifikation ist nur in den China-Regionen verfügbar.

Verwenden Sie den Bedingungsschlüssel kms:, damit Prinzipale KMS-Schlüssel nur für eine bestimmte Schlüsselverwendung erstellen können. KeyUsage Sie können mit dem Bedingungsschlüssel kms:KeyUsage Prinzipalen auch, basierend auf seiner Schlüsselnutzung, den Aufruf von API-Operationen für einen KMS-Schlüssel gewähren. Beispielsweise können Sie die Berechtigung zum Deaktivieren eines KMS-Schlüssels nur dann zulassen, wenn die Schlüsselnutzung SIGN_VERIFY lautet.

Auswählen der Schlüsselspezifikation

Wenn Sie einen asymmetrischen KMS-Schlüssel oder HMAC-KMS-Schlüssel erstellen, wählen Sie dessen Schlüsselspezifikation aus. Die Schlüsselspezifikation, die eine Eigenschaft von every ist AWS KMS key, stellt die kryptografische Konfiguration Ihres KMS-Schlüssels dar. Sie wählen die Schlüsselspezifikation, wenn Sie den KMS-Schlüssel erstellen. Sie kann danach nicht mehr geändert werden. Wenn Sie die falsche Schlüsselspezifikation ausgewählt haben, löschen Sie den KMS-Schlüssel und erstellen Sie einen neuen.

Anmerkung

Die Schlüsselspezifikation für einen KMS-Schlüssel wurde als „Kunden-Hauptschlüssel-Spezifikation“ bezeichnet. Der CustomerMasterKeySpec Parameter des CreateKeyVorgangs ist veraltet. Verwenden Sie stattdessen den KeySpec-Parameter. Die Antwort der DescribeKeyOperationen CreateKey und enthält ein KeySpec CustomerMasterKeySpec Und-Element mit demselben Wert.

Die Schlüsselspezifikation bestimmt, ob der KMS-Schlüssel symmetrisch oder asymmetrisch ist, welche Art von Schlüsselmaterial im KMS-Schlüssel enthalten ist und welche Verschlüsselungs-, Signaturalgorithmen oder MAC-Algorithmen (Message Authentication Code) den KMS-Schlüssel AWS KMS unterstützen. Die von Ihnen gewählte Schlüsselspezifikation wird in der Regel durch Ihren Anwendungsfall und gesetzliche Anforderungen bestimmt. Allerdings haben kryptografische Operationen zu KMS-Schlüsseln mit unterschiedlichen Schlüsselspezifikationen unterschiedliche Preise und unterliegen unterschiedlichen Kontingenten. Details zu den Preisen finden Sie unter AWS Key Management Service -Preise. Weitere Informationen zu Anforderungskontingenten finden Sie unter Anforderungskontingente.

Um zu ermitteln, welche Schlüsselspezifikationen die Hauptbenutzer in Ihrem Konto für KMS-Schlüssel verwenden dürfen, verwenden Sie den Bedingungsschlüssel kms:. KeySpec

AWS KMS unterstützt die folgenden Schlüsselspezifikationen für KMS-Schlüssel:

Symmetrische Verschlüsselungsschlüsselspezifikation(Standard)
  • SYMMETRIC_DEFAULT

HMAC-Schlüsselspezifikationen
  • HMAC_224

  • HMAC_256

  • HMAC_384

  • HMAC_512

RSA-Schlüsselspezifikationen (Verschlüsselung und Entschlüsselung -oder- Signatur und Verifizierung)
  • RSA_2048

  • RSA_3072

  • RSA_4096

Elliptic Curve(EC)-Schlüsselspezifikationen
  • Von NIST empfohlene asymmetrische Schlüsselpaare mit elliptischen Kurven (Signierung und Verifizierung oder Ableitung gemeinsam genutzter Geheimnisse)

    • ECC_NIST_P256 (secp256r1)

    • ECC_NIST_P384 (secp384r1)

    • ECC_NIST_P521 (secp521r1)

  • Andere asymmetrische Elliptic Curve-Schlüsselpaare (Signatur und Verifizierung)

    • ECC_SECG_P256K1 (secp256k1), häufig für Kryptowährung verwendet.

SM2-Schlüsselspezifikation (Verschlüsselung und Entschlüsselung — oder — Signierung und Verifizierung — oder Ableitung gemeinsamer Geheimnisse)
  • SM2 (nur China-Regionen)