View a markdown version of this page

Versionen von AWS Encryption SDK - AWS Encryption SDK

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.

Versionen von AWS Encryption SDK

Die AWS Encryption SDK Sprachimplementierungen verwenden eine semantische Versionierung, damit Sie das Ausmaß der Änderungen in den einzelnen Versionen leichter erkennen können. Eine Änderung der Hauptversionsnummer, z. B. 1. x. x bis 2. x. x, weist auf eine grundlegende Änderung hin, die wahrscheinlich Codeänderungen und eine geplante Bereitstellung erfordert. Wichtige Änderungen in einer neuen Version wirken sich möglicherweise nicht auf jeden Anwendungsfall aus. Lesen Sie in den Versionshinweisen nach, ob Sie davon betroffen sind. Eine Änderung in einer Nebenversion, wie z. B. x .1. x zu x .2. x, ist immer abwärtskompatibel, kann aber veraltete Elemente enthalten.

Verwenden Sie nach Möglichkeit die neueste Version von AWS Encryption SDK in der von Ihnen gewählten Programmiersprache. Die Wartungs- und Support-Richtlinien für jede Version unterscheiden sich je nach Programmiersprachenimplementierung. Einzelheiten zu den unterstützten Versionen in Ihrer bevorzugten Programmiersprache finden Sie in der SUPPORT_POLICY.rst Datei im zugehörigen GitHub Repository.

Wenn Upgrades neue Funktionen beinhalten, die eine spezielle Konfiguration erfordern, um Verschlüsselungs- oder Entschlüsselungsfehler zu vermeiden, stellen wir eine Zwischenversion und detaillierte Anweisungen zu deren Verwendung bereit. Zum Beispiel Versionen 1.7. x und 1.8. x sind als Übergangsversionen konzipiert, die Ihnen beim Upgrade von Versionen vor 1.7 helfen. x auf Versionen 2.0. x und später. Details hierzu finden Sie unter Migrieren Sie Ihre AWS Encryption SDK.

Anmerkung

Das X in einer Versionsnummer steht für einen beliebigen Patch der Haupt- und Nebenversion. Zum Beispiel Version 1.7. x steht für alle Versionen, die mit 1.7 beginnen, einschließlich 1.7.1 und 1.7.9.

Neue Sicherheitsfunktionen wurden ursprünglich in den AWS Encryption CLI-Versionen 1.7 veröffentlicht. x und 2.0. x. Allerdings AWS Encryption CLI Version 1.8. x ersetzt Version 1.7. x und AWS Encryption CLI 2.1. x ersetzt 2.0. x. Einzelheiten finden Sie in der entsprechenden Sicherheitsempfehlung im https://github.com/aws/aws-encryption-sdk-cli/ aws-encryption-sdk-cli-Repository unter. GitHub

Die folgenden Tabellen bieten einen Überblick über die wichtigsten Unterschiede zwischen den unterstützten Versionen von für jede Programmiersprache. AWS Encryption SDK

C

Eine ausführliche Beschreibung aller Änderungen finden Sie CHANGELOG.md im https://github.com/aws/aws-encryption-sdk-c/ aws-encryption-sdk-c-Repository unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. End-of-Support Phase
1,7 Updates für AWS Encryption SDK , die Benutzern früherer Versionen beim Upgrade auf Version 2.0 helfen. x und später. Weitere Informationen finden Sie in Version 1.7. x.
2.x 2.0 Aktualisierungen der AWS Encryption SDK. Weitere Informationen finden Sie in Version 2.0. x. Allgemeine Verfügbarkeit (GA)
2.2 Verbesserungen am Entschlüsselungsprozess von Nachrichten.
2.3 Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu.

C#/.NET

Eine detaillierte Beschreibung aller Änderungen finden Sie CHANGELOG.md im aws-encryption-sdk-net Repository unter GitHub.

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
3.x 3.1.0 Erstversion.

End-of-Support

Version 3.x von AWS Encryption SDK für .NET hat das Ende des Supports erreicht. Bitte führen Sie ein Upgrade auf 4.x durch.

4.x 4,0 Integriert die Unterstützung für den AWS KMS hierarchischen Schlüsselbund, den erforderlichen Verschlüsselungskontext CMM und asymmetrische RSA-Schlüsselringe. AWS KMS Allgemeine Verfügbarkeit (GA)
5.x 5.0 Aktualisierungen auf Version 2. x der Material Providers Library (MPL). Stellt die Unterstützung für das AWS SDK für.NET v3 ein und erfordert das AWS SDK für.NET v4. Allgemeine Verfügbarkeit (GA)

Befehlszeilenschnittstelle (CLI)

Eine ausführliche Beschreibung aller Änderungen finden Sie unter Versionen der AWS Encryption CLI und CHANGELOG.rst im https://github.com/aws/aws-encryption-sdk-cli/ aws-encryption-sdk-cli-Repository auf. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. End-of-Support Phase
1,7 Updates für AWS Encryption SDK , die Benutzern früherer Versionen beim Upgrade auf Version 2.0 helfen. x und später. Weitere Informationen finden Sie in Version 1.7. x.
2.x 2.0 Aktualisierungen der AWS Encryption SDK. Weitere Informationen finden Sie in Version 2.0. x. End-of-Support Phase
2.1

Entfernt den --discovery Parameter und ersetzt ihn durch das discovery Attribut des --wrapping-keys Parameters.

Version 2.1.0 der AWS Encryption CLI entspricht Version 2.0 in anderen Programmiersprachen.

2.2 Verbesserungen beim Entschlüsselungsprozess von Nachrichten.
3.x 3.0 Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu. End-of-Support Phase
4.x 4,0 Die AWS Verschlüsselungs-CLI unterstützt Python 2 oder Python 3.4 nicht mehr. Ab Hauptversion 4. x der AWS Verschlüsselungs-CLI, nur Python 3.5 oder höher wird unterstützt. Allgemeine Verfügbarkeit (GA)
4.1 Die AWS Encryption CLI unterstützt Python 3.5 nicht mehr. Ab Version 4.1. x der AWS Verschlüsselungs-CLI, nur Python 3.6 oder höher wird unterstützt.
4.2 Die AWS Verschlüsselungs-CLI unterstützt Python 3.6 nicht mehr. Ab Version 4.2. x der AWS Verschlüsselungs-CLI, nur Python 3.7 oder höher wird unterstützt.

Java

Eine ausführliche Beschreibung aller Änderungen finden Sie CHANGELOG.rst im https://github.com/aws/aws-encryption-sdk-java/ aws-encryption-sdk-java-Repository unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. End-of-Support Phase
1.3 Fügt Unterstützung für den Manager für kryptografische Materialien und das Zwischenspeichern von Datenschlüsseln hinzu. Zur deterministischen IV-Generation übergegangen.
1.6.1

Weist und ab und ersetzt sie durch AwsCrypto.encryptString() AwsCrypto.decryptString() und. AwsCrypto.encryptData() AwsCrypto.decryptData()

1,7 Aktualisierungen für, AWS Encryption SDK die Benutzern früherer Versionen beim Upgrade auf Version 2.0 helfen. x und später. Weitere Informationen finden Sie in Version 1.7. x.
2.x 2.0 Aktualisierungen der AWS Encryption SDK. Weitere Informationen finden Sie in Version 2.0. x.

Allgemeine Verfügbarkeit (GA)

Version 2.x von AWS-Verschlüsselungs-SDK for Java wird 2024 in den Wartungsmodus wechseln.

2.2 Verbesserungen beim Entschlüsseln von Nachrichten.
2.3 Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu.
2.4 Fügt Unterstützung für AWS SDK for Java 2.x hinzu.
3.x 3.0

Integriert das AWS-Verschlüsselungs-SDK for Java in die Material Providers Library (MPL).

Integriert die Unterstützung für symmetrische und asymmetrische AWS KMS RSA-Schlüsselringe, AWS KMS ECDH-Schlüsselringe, AWS KMS hierarchische Schlüsselringe, Raw AES-Schlüsselringe, Raw RSA-Schlüsselringe, Raw ECDH-Schlüsselringe und den erforderlichen Verschlüsselungskontext CMM. Multi-keyrings

Allgemeine Verfügbarkeit (GA)

Go

Eine ausführliche Beschreibung aller Änderungen finden Sie CHANGELOG.md im Go-Verzeichnis des https://github.com/aws/aws-encryption-sdk/tree/mainline aws-encryption-sdk-Repositorys unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
0.1. x 0,10 Erstversion. Allgemeine Verfügbarkeit (GA)

JavaScript

Eine ausführliche Beschreibung aller Änderungen finden Sie CHANGELOG.md im https://github.com/aws/aws-encryption-sdk-javascript/tree/master/modules aws-encryption-sdk-javascript-Repository unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. End-of-Support Phase
1,7 Updates für AWS Encryption SDK , die Benutzern früherer Versionen beim Upgrade auf Version 2.0 helfen. x und später. Weitere Informationen finden Sie in Version 1.7. x.
2.x 2.0 Aktualisierungen der AWS Encryption SDK. Weitere Informationen finden Sie in Version 2.0. x. End-of-Support Phase
2.2 Verbesserungen am Entschlüsselungsprozess von Nachrichten.
2.3 Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu.
3.x 3.0 Entfernt die CI-Abdeckung für Node 10. Aktualisiert Abhängigkeiten, sodass Knoten 8 und Knoten 10 nicht mehr unterstützt werden.

Wartung

Die Unterstützung für Version 3.x von AWS-Verschlüsselungs-SDK for JavaScript endet am 17. Januar 2024.

4.x 4,0 Für die Verwendung des AWS-Verschlüsselungs-SDK for JavaScript AWS KMS Schlüsselbunds ist kms-client Version 3 erforderlich. Allgemeine Verfügbarkeit (GA)

Python

Eine ausführliche Beschreibung aller Änderungen finden Sie CHANGELOG.rst im https://github.com/aws/aws-encryption-sdk-python/ aws-encryption-sdk-python-Repository unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. End-of-Support Phase
1.3 Fügt Unterstützung für den Manager für kryptografische Materialien und das Zwischenspeichern von Datenschlüsseln hinzu. Zur deterministischen IV-Generation übergegangen.
1,7 Aktualisierungen für AWS Encryption SDK , die Benutzern früherer Versionen beim Upgrade auf Version 2.0 helfen. x und später. Weitere Informationen finden Sie in Version 1.7. x.
2.x 2.0 Aktualisierungen der AWS Encryption SDK. Weitere Informationen finden Sie in Version 2.0. x. End-of-Support Phase
2.2 Verbesserungen am Entschlüsselungsprozess von Nachrichten.
2.3 Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu.
3.x 3.0 Der unterstützt Python 2 oder Python 3.4 nicht AWS-Verschlüsselungs-SDK for Python mehr. Ab der Hauptversion 3. x davon AWS-Verschlüsselungs-SDK for Python, nur Python 3.5 oder höher wird unterstützt. Allgemeine Verfügbarkeit (GA)
4.x 4,0

Integriert das AWS-Verschlüsselungs-SDK for Python in die Material Providers Library (MPL).

Allgemeine Verfügbarkeit (GA)

Rust

Eine detaillierte Beschreibung aller Änderungen finden Sie CHANGELOG.md im Rust-Verzeichnis des https://github.com/aws/aws-encryption-sdk/tree/mainline aws-encryption-sdk-Repositorys unter. GitHub

Hauptversion Details Lebenszyklusphase der SDK-Hauptversion
1.x 1,0 Erstversion. Allgemeine Verfügbarkeit (GA)

Versionsdetails

In der folgenden Liste werden die Hauptunterschiede zwischen den unterstützten Versionen von beschrieben AWS Encryption SDK.

Versionen vor 1.7.x

Anmerkung

Alle 1. x. x Versionen von AWS Encryption SDK befinden sich in der Phase des Supports. Aktualisieren Sie so schnell wie möglich auf die neueste verfügbare Version von AWS Encryption SDK für Ihre Programmiersprache. Um ein Upgrade von einer AWS Encryption SDK Version vor 1.7 durchzuführen. x, Sie müssen zuerst auf 1.7 aktualisieren. x. Details hierzu finden Sie unter Migrieren Sie Ihre AWS Encryption SDK.

Versionen von AWS Encryption SDK früher als 1.7. x bieten wichtige Sicherheitsfunktionen, darunter Verschlüsselung mit dem Advanced Encryption Standard-Algorithmus in Galois/Counter Mode (AES-GCM), eine Funktion zum HMAC-based Extrahieren und Erweitern von Schlüsseln (HKDF), Signieren und einen 256-Bit-Verschlüsselungsschlüssel. Diese Versionen unterstützen jedoch nicht die von uns empfohlenen Best Practices, einschließlich Key Commitment. Wichtiges Engagement

Version 1.7.x

Anmerkung

Alle 1. x. x Versionen von AWS Encryption SDK befinden sich in der Phase des Supports.

Version 1.7. x wurde entwickelt, um Benutzern früherer Versionen von das Upgrade AWS Encryption SDK auf Version 2.0 zu erleichtern. x und später. Wenn Sie mit der noch nicht vertraut sind AWS Encryption SDK, können Sie diese Version überspringen und mit der neuesten verfügbaren Version in Ihrer Programmiersprache beginnen.

Version 1.7. x ist vollständig abwärtskompatibel; es führt keine grundlegenden Änderungen ein und verändert auch nicht das Verhalten von. AWS Encryption SDK Es ist auch abwärtskompatibel; es ermöglicht Ihnen, Ihren Code so zu aktualisieren, dass er mit Version 2.0 kompatibel ist. x. Es enthält neue Funktionen, aktiviert sie jedoch nicht vollständig. Und es erfordert Konfigurationswerte, die Sie daran hindern, alle neuen Funktionen sofort zu übernehmen, bis Sie bereit sind.

Version 1.7. x beinhaltet die folgenden Änderungen:

AWS KMS Aktualisierungen des Masterkey-Anbieters (erforderlich)

Version 1.7. x führt neue Konstruktoren für AWS-Verschlüsselungs-SDK for Java und ein, AWS-Verschlüsselungs-SDK for Python die explizit AWS KMS Masterkey-Anbieter entweder im Strict-Modus oder im Discovery-Modus erstellen. Diese Version fügt der AWS Encryption SDK Befehlszeilenschnittstelle (CLI) ähnliche Änderungen hinzu. Details hierzu finden Sie unter Aktualisierung der AWS KMS Hauptschlüsselanbieter.

  • Im strikten Modus benötigen AWS KMS Masterkey-Anbieter eine Liste von Wrapping-Schlüsseln, und sie verschlüsseln und entschlüsseln nur mit den von Ihnen angegebenen Wrapping-Schlüsseln. Dies ist eine AWS Encryption SDK bewährte Methode, die sicherstellt, dass Sie die Wrapping-Schlüssel verwenden, die Sie verwenden möchten.

  • Im Discovery-Modus AWS KMS akzeptieren Masterkey-Anbieter keine Wrapping-Schlüssel. Sie können sie nicht zum Verschlüsseln verwenden. Beim Entschlüsseln können sie einen beliebigen Wrapping-Schlüssel verwenden, um einen verschlüsselten Datenschlüssel zu entschlüsseln. Sie können die zur Entschlüsselung verwendeten Wrapping-Schlüssel jedoch auf bestimmte Schlüssel beschränken. AWS-Konten Die Kontofilterung ist optional, aber es handelt sich um eine bewährte Methode, die wir empfehlen.

Die Konstruktoren, die frühere Versionen von AWS KMS Masterkey-Providern erstellen, sind in Version 1.7 veraltet. x und in Version 2.0 entfernt. x. Diese Konstruktoren instanziieren Masterkey-Anbieter, die mithilfe der von Ihnen angegebenen Wrapping-Schlüssel verschlüsseln. Sie entschlüsseln jedoch verschlüsselte Datenschlüssel mithilfe des Wrapping-Schlüssels, mit dem sie verschlüsselt wurden, ohne Rücksicht auf die angegebenen Wrapping-Schlüssel. Benutzer können unbeabsichtigt Nachrichten mit Wrapping-Schlüsseln entschlüsseln, die sie nicht verwenden möchten, auch AWS KMS keys in anderen AWS-Konten und Regionen.

An den Konstruktoren für AWS KMS Hauptschlüssel wurden keine Änderungen vorgenommen. Beim Verschlüsseln und Entschlüsseln verwenden AWS KMS Hauptschlüssel nur AWS KMS key die von Ihnen angegebenen Schlüssel.

AWS KMS Aktualisierungen des Schlüsselbunds (optional)

Version 1.7. x fügt den AWS-Verschlüsselungs-SDK for C und AWS-Verschlüsselungs-SDK for JavaScript -Implementierungen einen neuen Filter hinzu, der die AWS KMS Erkennungsschlüsselringe auf bestimmte beschränkt. AWS-Konten Dieser neue Kontofilter ist optional, aber es handelt sich um eine bewährte Methode, die wir empfehlen. Details hierzu finden Sie unter AWS KMS Schlüsselanhänger aktualisieren.

An den Konstruktoren für AWS KMS Schlüsselanhänger wurden keine Änderungen vorgenommen. AWS KMS Standardschlüsselringe verhalten sich im strikten Modus wie Masterkey-Anbieter. AWS KMS Discovery-Schlüsselringe werden explizit im Discovery-Modus erstellt.

Übergabe einer Schlüssel-ID an Decrypt AWS KMS

Ab Version 1.7. x, beim Entschlüsseln verschlüsselter Datenschlüssel gibt das AWS KMS key in seinen Aufrufen der AWS KMS https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html Decrypt-Operation AWS Encryption SDK immer an an. Der AWS Encryption SDK ruft den Schlüssel-ID-Wert für den AWS KMS key aus den Metadaten in jedem verschlüsselten Datenschlüssel ab. Für diese Funktion sind keine Codeänderungen erforderlich.

Die Angabe der Schlüssel-ID von AWS KMS key ist nicht erforderlich, um Chiffretext zu entschlüsseln, der mit einem KMS-Schlüssel für symmetrische Verschlüsselung verschlüsselt wurde, aber es ist eine bewährte Methode. AWS KMS Wie bei der Angabe von Wrapping-Schlüsseln in Ihrem Schlüsselanbieter wird bei dieser Vorgehensweise sichergestellt, dass AWS KMS nur der Wrapping-Schlüssel verwendet wird, den Sie verwenden möchten.

Entschlüsseln Sie Chiffretext mit vollem Einsatz

Version 1.7. x kann Chiffretext entschlüsseln, der mit oder ohne Schlüsselbindung verschlüsselt wurde. Chiffretext mit Schlüsselbindung kann es jedoch nicht verschlüsseln. Mit dieser Eigenschaft können Sie Anwendungen, die mit Schlüsselbindung verschlüsselten Chiffretext entschlüsseln können, vollständig bereitstellen, bevor sie auf einen solchen Chiffretext stoßen. Da diese Version Nachrichten entschlüsselt, die ohne Schlüsselbindung verschlüsselt wurden, müssen Sie keinen Chiffretext erneut verschlüsseln.

Um dieses Verhalten zu implementieren, Version 1.7. x enthält eine neue Konfigurationseinstellung für die Commitment-Richtlinie, die festlegt, ob mit Schlüsselzusage verschlüsselt oder entschlüsselt werden AWS Encryption SDK kann. In Version 1.7. x, der einzig gültige Wert für die Commitment-PolicyForbidEncryptAllowDecrypt, wird bei allen Verschlüsselungs- und Entschlüsselungsvorgängen verwendet. Dieser Wert AWS Encryption SDK verhindert die Verschlüsselung mit einer der neuen Algorithmus-Suites, die eine Schlüsselzusage beinhalten. Er ermöglicht es, Chiffretext mit und ohne Schlüsselbindung AWS Encryption SDK zu entschlüsseln.

In Version 1.7 gibt es zwar nur einen gültigen Wert für die Commitment-Richtlinie. x, wir verlangen, dass Sie diesen Wert explizit festlegen können, wenn Sie die neuen APIs verwenden, die in dieser Version eingeführt wurden. Wenn Sie den Wert explizit festlegen, wird verhindert, dass sich Ihre Verpflichtungsrichtlinie automatisch auf den require-encrypt-require-decrypt Zeitpunkt ändert, an dem Sie auf Version 2.1 aktualisieren. x. Stattdessen können Sie Ihre Verpflichtungsrichtlinie schrittweise migrieren.

Algorithmus-Suiten mit hohem Engagement

Version 1.7. x enthält zwei neue Algorithmus-Suiten, die Key Commitment unterstützen. Eine beinhaltet das Signieren, die andere nicht. Wie frühere unterstützte Algorithmus-Suites enthalten auch diese beiden neuen Algorithmus-Suites Verschlüsselung mit AES-GCM, einem 256-Bit-Verschlüsselungsschlüssel und einer Funktion zum HMAC-based Extrahieren und Erweitern der Schlüsselableitung (HKDF).

Die für die Verschlüsselung verwendete Standard-Algorithmussuite ändert sich jedoch nicht. Diese Algorithmus-Suites wurden zu Version 1.7 hinzugefügt. x, um Ihre Anwendung für die Verwendung in den Versionen 2.0 vorzubereiten. x und später.

Änderungen an der CMM-Implementierung

Version 1.7. x führt Änderungen an der CMM-Schnittstelle (Default Cryptographic Materials Manager) ein, um die Schlüsselbindung zu unterstützen. Diese Änderung betrifft Sie nur, wenn Sie ein benutzerdefiniertes CMM geschrieben haben. Einzelheiten finden Sie in der API-Dokumentation oder im GitHub Repository für Ihre Programmiersprache.

Version 2.0.x

Ausführung 2.0. x unterstützt die neuen Sicherheitsfunktionen AWS Encryption SDK, die in der angeboten werden, einschließlich spezifizierter Wrapping-Schlüssel und Key Commitment. Version 2.0 zur Unterstützung dieser Funktionen. x enthält wichtige Änderungen für frühere Versionen von AWS Encryption SDK. Sie können sich auf diese Änderungen vorbereiten, indem Sie Version 1.7 bereitstellen. x. Ausführung 2.0. x enthält alle neuen Funktionen, die in Version 1.7 eingeführt wurden. x mit den folgenden Ergänzungen und Änderungen.

Anmerkung

Version 2. x. x der AWS-Verschlüsselungs-SDK for Python AWS-Verschlüsselungs-SDK for JavaScript, und die AWS Verschlüsselungs-CLI befinden sich in der Phase des Supports.

Informationen zur Unterstützung und Wartung dieser AWS Encryption SDK Version in Ihrer bevorzugten Programmiersprache finden Sie in der SUPPORT_POLICY.rst Datei im zugehörigen GitHub Repository.

AWS KMS Masterkey-Anbieter

Die ursprünglichen AWS KMS Masterkey-Provider-Konstruktoren, die in Version 1.7 veraltet waren. x wurden in Version 2.0 entfernt. x. Sie müssen AWS KMS Masterkey-Anbieter explizit im strikten Modus oder im Discovery-Modus erstellen.

Verschlüsselter und entschlüsselter Chiffretext mit Schlüsselbindung

Version 2.0. x kann Chiffretext mit oder ohne Schlüsselbindung verschlüsseln und entschlüsseln. Wichtiges Engagement Sein Verhalten wird durch die Festlegung der Verpflichtungsrichtlinie bestimmt. Standardmäßig verschlüsselt es immer mit Schlüsselzusage und entschlüsselt nur Chiffretext, der mit Schlüsselzusage verschlüsselt wurde. Sofern Sie die Commitment-Richtlinie nicht ändern, AWS Encryption SDK werden Chiffretexte, die mit einer früheren Version von, einschließlich Version 1.7, verschlüsselt wurden, nicht entschlüsselt. AWS Encryption SDKx.

Wichtig

Standardmäßig Version 2.0. x entschlüsselt keinen Chiffretext, der ohne Schlüsselbindung verschlüsselt wurde. Wenn Ihre Anwendung möglicherweise auf einen Chiffretext stößt, der ohne Schlüsselbindung verschlüsselt wurde, legen Sie einen Wert für die Verpflichtungsrichtlinie mit fest. AllowDecrypt

In Version 2.0. x, die Richtlinieneinstellung „Verpflichtungen“ hat drei gültige Werte:

  • ForbidEncryptAllowDecrypt— Die Verschlüsselung mit Schlüssel ist AWS Encryption SDK nicht möglich. Es kann Chiffretexte entschlüsseln, die mit oder ohne Schlüsselbindung verschlüsselt wurden.

  • RequireEncryptAllowDecrypt— Sie AWS Encryption SDK müssen mit Schlüsselbindung verschlüsseln. Es kann Chiffretexte entschlüsseln, die mit oder ohne Schlüsselbindung verschlüsselt wurden.

  • RequireEncryptRequireDecrypt(Standard) — Die Verschlüsselung AWS Encryption SDK muss mit Schlüsselbindung erfolgen. Chiffretexte werden nur mit Schlüsselbindung entschlüsselt.

Wenn Sie von einer früheren Version von auf Version 2.0 migrieren. AWS Encryption SDK x, setzen Sie die Commitment-Policy auf einen Wert, der sicherstellt, dass Sie alle vorhandenen Chiffretexte entschlüsseln können, auf die Ihre Anwendung stoßen könnte. Sie werden diese Einstellung wahrscheinlich im Laufe der Zeit anpassen.

Version 2.2.x

Fügt Unterstützung für digitale Signaturen hinzu und begrenzt verschlüsselte Datenschlüssel.

Anmerkung

Version 2. x. x der AWS-Verschlüsselungs-SDK for Python AWS-Verschlüsselungs-SDK for JavaScript, und die AWS Verschlüsselungs-CLI befinden sich in der Phase des Supports.

Informationen zur Unterstützung und Wartung dieser AWS Encryption SDK Version in Ihrer bevorzugten Programmiersprache finden Sie in der SUPPORT_POLICY.rst Datei im zugehörigen GitHub Repository.

Digitale Signaturen

Um den Umgang mit digitalen Signaturen beim Entschlüsseln zu verbessern, AWS Encryption SDK umfasst das die folgenden Funktionen:

  • Non-streaming Modus — gibt Klartext erst zurück, nachdem alle Eingaben verarbeitet wurden, einschließlich der Überprüfung der digitalen Signatur, falls vorhanden. Diese Funktion verhindert, dass Sie Klartext verwenden, bevor Sie die digitale Signatur überprüfen. Verwenden Sie diese Funktion immer dann, wenn Sie mit digitalen Signaturen verschlüsselte Daten entschlüsseln (die Standard-Algorithmus-Suite). Da die AWS Verschlüsselungs-CLI beispielsweise Daten immer im Streaming-Modus verarbeitet, verwenden Sie den - -buffer Parameter, wenn Sie Chiffretext mit digitalen Signaturen entschlüsseln.

  • Unsigned-only Entschlüsselungsmodus — diese Funktion entschlüsselt nur unsignierten Chiffretext. Wenn bei der Entschlüsselung eine digitale Signatur im Chiffretext gefunden wird, schlägt der Vorgang fehl. Verwenden Sie diese Funktion, um zu verhindern, dass unbeabsichtigt Klartext aus signierten Nachrichten verarbeitet wird, bevor Sie die Signatur überprüfen.

Begrenzung der verschlüsselten Datenschlüssel

Sie können die Anzahl der verschlüsselten Datenschlüssel in einer verschlüsselten Nachricht einschränken. Mit dieser Funktion können Sie beim Verschlüsseln einen falsch konfigurierten Masterkey-Anbieter oder Schlüsselbund erkennen oder beim Entschlüsseln bösartigen Chiffretext erkennen.

Sie sollten die Anzahl der verschlüsselten Datenschlüssel einschränken, wenn Sie Nachrichten aus einer nicht vertrauenswürdigen Quelle entschlüsseln. Es verhindert unnötige, teure und potenziell erschöpfende Aufrufe Ihrer wichtigsten Infrastruktur.

Version 2.3.x

Fügt Unterstützung für Schlüssel AWS KMS mit mehreren Regionen hinzu. Details hierzu finden Sie unter Verwenden Sie mehrere Regionen AWS KMS keys.

Anmerkung

Die AWS Encryption CLI unterstützt Schlüssel für mehrere Regionen ab Version 3.0. x.

Ausführung 2. x. x der AWS-Verschlüsselungs-SDK for Python AWS-Verschlüsselungs-SDK for JavaScript, und die AWS Verschlüsselungs-CLI befinden sich in der Phase des Supports.

Informationen zur Unterstützung und Wartung dieser AWS Encryption SDK Version in Ihrer bevorzugten Programmiersprache finden Sie in der SUPPORT_POLICY.rst Datei im zugehörigen GitHub Repository.