

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.

# Bekannte Probleme mit der PKCS \#11 -Bibliothek für AWS CloudHSM
<a name="ki-pkcs11-sdk"></a>

Die folgenden Probleme wirken sich auf die PKCS \#11 -Bibliothek für aus. AWS CloudHSM

**Topics**
+ [Problem: Der AES-Schlüsselumbruch in Version 3.0.0 der PKCS \#11-Bibliothek validiert IVs nicht vor der Verwendung](#ki-pkcs11-1)
+ [Problem: PKCS \#11 SDK 2.0.4 und frühere Versionen verwendeten immer die Standard-IV von `0xA6A6A6A6A6A6A6A6A6A6 für das Umschließen und Entpacken von` AES-Schlüsseln](#ki-pkcs11-2)
+ [Problem: Das `` CKA\_DERIVE-Attribut wurde nicht unterstützt und nicht verarbeitet](#ki-pkcs11-3)
+ [Problem: Das `` CKA\_SENSITIVE-Attribut wurde nicht unterstützt und nicht verarbeitet](#ki-pkcs11-4)
+ [Problem: Mehrteiliges Hashing und Signatur werden nicht unterstützt.](#ki-pkcs11-5)
+ [Problem: `C_ behandelt CKA_MODULUS_BITS oder CKA_PUBLIC_EXPONENT in der privaten Vorlage GenerateKeyPair` nicht auf eine Weise, die den Standards entspricht](#ki-pkcs11-6)
+ [Problem: Die Puffer für die API-Operationen `C_Encrypt und C_Decrypt dürfen 16 KB nicht überschreiten, wenn der CKM_AES_GCM-Mechanismus verwendet` wird `` ``](#ki-pkcs11-8)
+ [Problem: Die Schlüsselableitung Elliptic-curve Diffie-Hellman (ECDH) wird teilweise im HSM ausgeführt](#ki-pkcs11-9)
+ [Problem: Die Überprüfung der secp256k1-Signaturen schlägt auf EL6-Plattformen wie CentOS6 und RHEL 6 fehl](#ki-pkcs11-10)
+ [Problem: Eine falsche Reihenfolge von Funktionsaufrufen führt zu undefinierten Ergebnissen, anstatt dass sie fehlschlagen](#ki-pkcs11-11)
+ [Problem: Die schreibgeschützte Sitzung wird in SDK 5 nicht unterstützt](#ki-pkcs11-13)
+ [Problem: Die `` cryptoki.h-Header-Datei ist Windows-only](#ki-pkcs11-14)
+ [Problem: `C_ GetAttributeValue` gibt `` CKR\_DEVICE\_ERROR zurück, wenn gedrosselt wird](#ki-pkcs11-15)
+ [Problem: Die PKCS \#11 -Bibliothek wiederholt keine gedrosselten Speichervorgänge für Zertifikate](#ki-pkcs11-16)

## Problem: Der AES-Schlüsselumbruch in Version 3.0.0 der PKCS \#11-Bibliothek validiert IVs nicht vor der Verwendung
<a name="ki-pkcs11-1"></a>

Wenn Sie einen IV angeben, der kürzer als 8 Byte ist, wird er vor der Verwendung mit unvorhersehbaren Bytes aufgefüllt. 

**Anmerkung**  
Dies wirkt sich nur `C_WrapKey` mit `CKM_AES_KEY_WRAP`-Mechanismus aus.
+ **Auswirkung:** Wenn Sie in der Version 3.0.0 der PKCS \#11-Bibliothek eine IV angeben, die kürzer als 8 Byte ist, können Sie den Schlüssel möglicherweise nicht entpacken. 
+ **Problemumgehungen: **
  + Wir empfehlen Ihnen dringend, auf die Version 3.0.1 oder höher der PKCS \#11-Bibliothek zu aktualisieren, die die IV-Länge während des AES-Schlüsselumbruchs korrekt durchsetzt. Ändern Sie Ihren Umbruchcode, um einen NULL-IV zu übergeben, oder geben Sie den Standard-IV von `0xA6A6A6A6A6A6A6A6` an. Weitere Informationen finden Sie unter [ Benutzerdefinierte IVs mit Non-Compliant Länge für AES-Schlüsselumbruch. ](troubleshooting-aes-keys.md)
  + Wenn Sie mit der Version 3.0.0 der PKCS \#11-Bibliothek Schlüssel mit einer IV von weniger als 8 Byte umgewandelt haben, wenden Sie sich bitte an uns, um [Unterstützung](https://aws.amazon.com/support) zu erhalten.
+ **Auflösungsstatus:** Dieses Problem wurde in Version 3.0.1 der PKCS \#11-Bibliothek behoben. Um Schlüssel mit AES-Schlüsselumbruch zu umschließen, geben Sie einen IV an, der NULL oder 8 Byte lang ist.

## Problem: PKCS \#11 SDK 2.0.4 und frühere Versionen verwendeten immer die Standard-IV von `0xA6A6A6A6A6A6A6A6A6A6 für das Umschließen und Entpacken von` AES-Schlüsseln
<a name="ki-pkcs11-2"></a>

User-provided IVs wurden stillschweigend ignoriert.

**Anmerkung**  
Dies wirkt sich nur `C_WrapKey` mit `CKM_AES_KEY_WRAP`-Mechanismus aus.
+ **Auswirkung:** 
  + Wenn Sie PKCS \#11 SDK 2.0.4 oder eine frühere Version und ein vom Benutzer bereitgestelltes IV verwendet haben, werden Ihre Schlüssel mit dem Standard-IV von `0xA6A6A6A6A6A6A6A6` umgebrochen.
  + Wenn Sie PKCS \#11 SDK 3.0.0 oder höher und einen vom Benutzer bereitgestellten IV verwendet haben, werden Ihre Schlüssel mit dem vom Benutzer bereitgestellten IV umschlossen.
+ **Problemumgehungen:**
  + Um Schlüssel zu entpacken, die mit PKCS \#11 SDK 2.0.4 oder früher umschlossen sind, verwenden Sie den Standard-IV von `0xA6A6A6A6A6A6A6A6`. 
  + Um Schlüssel zu entpacken, die mit PKCS \#11 SDK 3.0.0 oder höher umschlossen sind, verwenden Sie den vom Benutzer bereitgestellten IV.
+ **Auflösungsstatus:** Wir empfehlen dringend, dass Sie Ihren Umbruch- und Entpackungscode so ändern, dass ein NULL-IV übergeben wird, oder geben Sie den Standard-IV von `0xA6A6A6A6A6A6A6A6` an.

## Problem: Das `` CKA\_DERIVE-Attribut wurde nicht unterstützt und nicht verarbeitet
<a name="ki-pkcs11-3"></a>
+ **Stand der Lösung: **Wir haben Fehlerbehebungen implementiert, um `CKA_DERIVE` zu akzeptieren, wenn es auf `FALSE` festgelegt ist. Wenn `CKA_DERIVE` auf `TRUE` eingestellt ist, wird es erst dann unterstützt, wenn wir die Schlüsselableitungsfunktion AWS CloudHSM hinzufügen. Sie müssen Ihren Client und Ihr(e) SDK(s) auf Version 1.1.1 oder höher aktualisieren, um dieses Problem zu beheben.

## Problem: Das `` CKA\_SENSITIVE-Attribut wurde nicht unterstützt und nicht verarbeitet
<a name="ki-pkcs11-4"></a>
+ **Stand der Lösung: **Wir haben Korrekturen implementiert, mit denen das Attribut `CKA_SENSITIVE` akzeptiert und berücksichtigt wird. Sie müssen Ihren Client und Ihr(e) SDK(s) auf Version 1.1.1 oder höher aktualisieren, um dieses Problem zu beheben.

## Problem: Mehrteiliges Hashing und Signatur werden nicht unterstützt.
<a name="ki-pkcs11-5"></a>
+ **Auswirkung: **`C_DigestUpdate` und `C_DigestFinal` werden nicht implementiert. `C_SignFinal` ist ebenfalls nicht implementiert und schlägt mit `CKR_ARGUMENTS_BAD` für einen Nicht-`NULL`-Puffer fehl. 
+ **Problemumgehung: ** Hashen Sie Ihre Daten in Ihrer Anwendung und verwenden Sie sie AWS CloudHSM nur zum Signieren des Hashs. 
+ **Stand der Lösung: **Wir korrigieren den Client und die SDKs, sodass mehrteiliges Hashings korrekt implementiert wird. Aktualisierungen werden im AWS CloudHSM -Forum und auf der Seite des Versionsverlaufs bekanntgegeben.

## Problem: `C_ behandelt CKA_MODULUS_BITS oder CKA_PUBLIC_EXPONENT in der privaten Vorlage GenerateKeyPair` nicht auf eine Weise, die den Standards entspricht
<a name="ki-pkcs11-6"></a>
+ **Auswirkung: **`C_GenerateKeyPair` sollte `CKA_TEMPLATE_INCONSISTENT` zurückgeben, wenn die private Vorlage `CKA_MODULUS_BITS` oder `CKA_PUBLIC_EXPONENT` enthält. Stattdessen generiert es einen privaten Schlüssel, für den alle Nutzungsfelder auf `FALSE` gesetzt sind. Der Schlüssel kann nicht verwendet werden. 
+ **Problemumgehung: **Wir empfehlen, dass Ihre Anwendung die Nutzungsfeldwerte zusätzlich zum Fehlercode auswertet.
+ **Stand der Lösung: **Wir implementieren Korrekturen, um die richtige Fehlermeldung zurückzugeben, wenn eine fehlerhafte private Schlüsselvorlage verwendet wird. Die aktualisierte PKCS\#11-Bibliothek wird auf der Seite des Versionsverlaufs bekanntgegeben. 

## Problem: Die Puffer für die API-Operationen `C_Encrypt und C_Decrypt dürfen 16 KB nicht überschreiten, wenn der CKM_AES_GCM-Mechanismus verwendet` wird `` ``
<a name="ki-pkcs11-8"></a>

AWS CloudHSM unterstützt keine mehrteilige Verschlüsselung. AES-GCM 
+ **Auswirkung: **Sie können den `CKM_AES_GCM`-Mechanismus nicht zum Verschlüsseln von Daten verwenden, die größer als 16 KB sind.
+ **Problemumgehung: ** Sie können einen alternativen Mechanismus wie`CKM_AES_CBC`,, verwenden`CKM_AES_CBC_PAD`, oder Sie können Ihre Daten in Teile unterteilen und jedes Teil einzeln verschlüsseln. `AES_GCM` Wenn Sie ihn verwenden`AES_GCM`, müssen Sie die Aufteilung Ihrer Daten und die anschließende Verschlüsselung selbst verwalten. AWS CloudHSM führt keine mehrteilige AES-GCM Verschlüsselung für Sie durch. Beachten Sie, dass FIPS erfordert, dass der Initialisierungsvektor (IV) für auf dem `AES-GCM` HSM generiert wird. Daher wird die IV für jeden Teil Ihrer AES-GCM verschlüsselten Daten unterschiedlich sein. 
+ **Stand der Lösung: **Wir korrigieren das SDK, sodass es explizit fehlschlägt, wenn der Datenpuffer zur groß ist. Wir geben für die `C_EncryptUpdate`- und `C_DecryptUpdate`-API-Operationen `CKR_MECHANISM_INVALID` zurück. Wir werten Alternativen zur Unterstützung größerer Puffer aus, ohne dabei eine mehrteilige Verschlüsselung verwenden zu müssen. Updates werden im AWS CloudHSM Forum und auf der Seite mit der Versionsgeschichte angekündigt.

## Problem: Die Schlüsselableitung Elliptic-curve Diffie-Hellman (ECDH) wird teilweise im HSM ausgeführt
<a name="ki-pkcs11-9"></a>

Der private EC-Schlüssel verbleibt zu jeder Zeit innerhalb des HSM, der Prozess zur Schlüsselableitung wird aber in mehreren Schritten durchgeführt. Dies hat zur Folge, dass auf dem Client Zwischenergebnisse eines jeden Schritts verfügbar sind.
+ **Auswirkung: ** In Client SDK 3 ist der mithilfe des `CKM_ECDH1_DERIVE` Mechanismus abgeleitete Schlüssel zuerst auf dem Client verfügbar und wird dann in das HSM importiert. Ein Schlüssel-Handle wird dann an Ihre Anwendung zurückgegeben.
+ **Problemumgehung: ** Wenn Sie SSL/TLS Offload in implementieren AWS CloudHSM, ist diese Einschränkung möglicherweise kein Problem. Wenn Ihre Anwendung vorschreibt, dass Ihr Schlüssel zu jeder Zeit innerhalb einer FIPS-Begrenzung verbleibt, sollten Sie mit einem alternativen Protokoll ohne erforderliche ECDH-Schlüsselableitung arbeiten.
+ **Lösungsstatus: ** SDK 5.16 unterstützt jetzt ECDH mit Key Derivation, die vollständig innerhalb des HSM durchgeführt wird.

## Problem: Die Überprüfung der secp256k1-Signaturen schlägt auf EL6-Plattformen wie CentOS6 und RHEL 6 fehl
<a name="ki-pkcs11-10"></a>

 Der Grund hierfür ist, dass die PKCS \#11-Bibliothek von CloudHSM während der Initialisierung des Überprüfungsvorgangs einen Netzwerkaufruf vermeidet, indem sie OpenSSL zur Überprüfung von EC-Kurvendaten verwendet. Da secp256k1 durch das Standard-OpenSSL-Paket auf EL6-Plattformen nicht unterstützt wird, schlägt die Initialisierung fehl.
+ **Auswirkung: **Die secp256k1-Signaturüberprüfung schlägt auf EL6-Plattformen fehl. Der Überprüfungsaufruf schlägt fehl und es wird eine `CKR_HOST_MEMORY`-Fehlermeldung angezeigt.
+ **Problemumgehung: **Wir empfehlen die Verwendung von Amazon Linux 1 oder einer beliebigen EL7-Plattform, wenn Ihre PKCS \#11-Anwendung secp256k1-Signaturen überprüfen soll. Alternativ können Sie ein Upgrade auf eine Version des OpenSSL-Pakets durchführen, das die secp256k1-Kurve unterstützt.
+ **Stand der Lösung: **Wir implementieren zurzeit Korrekturen, die es ermöglichen, auf das HSM zurückzugreifen, wenn die lokale Kurvenvalidierung nicht verfügbar ist. Die aktualisierte PKCS \#11-Bibliothek wird auf der Seite des [Versionsverlaufs](client-history.md) bekanntgegeben.

## Problem: Eine falsche Reihenfolge von Funktionsaufrufen führt zu undefinierten Ergebnissen, anstatt dass sie fehlschlagen
<a name="ki-pkcs11-11"></a>
+ **Auswirkung**: Wenn Sie eine falsche Reihenfolge von Funktionen aufrufen, ist das Endergebnis falsch, obwohl die einzelnen Funktionsaufrufen erfolgreich sind. Beispielsweise stimmen entschlüsselte Daten möglicherweise nicht mit dem ursprünglichen Klartext überein oder Signaturen lassen sich möglicherweise nicht verifizieren. Dieses Problem betrifft sowohl einteilige als auch mehrteilige Operationen.

  Die folgenden Tabellen zeigen die richtigen Funktionsaufrufsequenzen für PKCS \#11 -Operationen.

  **Richtige Sequenzen für einteilige Operationen: **    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/cloudhsm/latest/userguide/ki-pkcs11-sdk.html)

  **Richtige Sequenzen für mehrteilige Operationen: **    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/cloudhsm/latest/userguide/ki-pkcs11-sdk.html)
+  **Problemumgehung**: Ihre Anwendung sollte gemäß der PKCS \#11 -Spezifikation die richtige Reihenfolge von Funktionsaufrufen sowohl für einteilige als auch für mehrteilige Operationen verwenden, wie in den obigen Tabellen dargestellt. Ihre Anwendung sollte sich nicht darauf verlassen, dass die CloudHSM PKCS \#11-Bibliothek unter diesen Umständen einen Fehler zurückgibt. 

## Problem: Die schreibgeschützte Sitzung wird in SDK 5 nicht unterstützt
<a name="ki-pkcs11-13"></a>
+ **Problem: ** SDK 5 unterstützt nicht das Öffnen von Sitzungen mit. Read-Only `C_OpenSession`
+ **Auswirkung:** Wenn Sie versuchen, einen Aufruf an `C_OpenSession` ohne Angabe von `CKF_RW_SESSION` zu tätigen, schlägt der Aufruf mit der folgenden Fehlermeldung `CKR_FUNCTION_FAILED` fehl. 
+ **Problemumgehung:** Wenn Sie eine Sitzung öffnen, müssen Sie die `CKF_SERIAL_SESSION | CKF_RW_SESSION`-Flags an den `C_OpenSession`-Funktionsaufruf übergeben. 

## Problem: Die `` cryptoki.h-Header-Datei ist Windows-only
<a name="ki-pkcs11-14"></a>
+ **Problem: ** Bei den AWS CloudHSM Client SDK 5-Versionen 5.0.0 bis 5.4.0 unter Linux `/opt/cloudhsm/include/pkcs11/cryptoki.h` ist die Header-Datei nur mit Windows-Betriebssystemen kompatibel.
+ **Auswirkung: Es können Probleme auftreten, wenn ** Sie versuchen, diese Header-Datei in Ihre Anwendung auf Linux-based Betriebssystemen aufzunehmen.
+ **Lösungsstatus: ** Führen Sie ein Upgrade auf AWS CloudHSM Client SDK 5 Version 5.4.1 oder höher durch, die eine Linux-compatible Version dieser Header-Datei enthält.

## Problem: `C_ GetAttributeValue` gibt `` CKR\_DEVICE\_ERROR zurück, wenn gedrosselt wird
<a name="ki-pkcs11-15"></a>

Wenn ein Anruf gedrosselt wird, kehrt er zurück. `C_GetAttributeValue` `CKR_DEVICE_ERROR` Andere gedrosselte Operationen kehren zurück. `CKR_FUNCTION_FAILED`
+ **Auswirkung: ** Wenn Ihre Anwendung nur einen Wiederholungsversuch durchführt`CKR_FUNCTION_FAILED`, werden diese gedrosselten Anfragen nicht erneut versucht.
+ **Problemumgehung: Wiederholen ** Sie gedrosselte Operationen mit exponentiellem Backoff sowohl bei als auch. `CKR_DEVICE_ERROR` `CKR_FUNCTION_FAILED` Wenn die Drosselung weiterhin besteht, fügen Sie Ihrem Cluster weitere HSMs hinzu, um die gesamte Lese- und Schreibrate zu erhöhen, oder reduzieren Sie Ihre Anforderungsrate. Weitere Informationen finden Sie unter [HSM-Drosselung](troubleshoot-hsm-throttling.md).
+ **Lösungsstatus: ** Dieses Problem wurde in [ Client SDK 5.18.0 behoben. ](latest-releases.md#client-version-5-18-0) `C_GetAttributeValue`kehrt jetzt zurück, wenn der `CKR_FUNCTION_FAILED` Zertifikatsspeicher und das Lesen von Schlüsselattributen gedrosselt wurden. Führen Sie ein Upgrade auf Version 5.18.0 oder höher durch, um von dem Update zu profitieren.

## Problem: Die PKCS \#11 -Bibliothek wiederholt keine gedrosselten Speichervorgänge für Zertifikate
<a name="ki-pkcs11-16"></a>

Wenn Sie die Ratengrenzwerte für Zertifikatsspeichervorgänge überschreiten, wiederholt die PKCS \#11 -Bibliothek diese gedrosselten Vorgänge nicht automatisch.
+ **Auswirkung: ** Ein gedrosselter Vorgang zum Speichern von Zertifikaten gibt einen Fehler an Ihre Anwendung zurück, anstatt automatisch erneut versucht zu werden.
+ **Problemumgehung: ** Wiederholen Sie den gedrosselten Zertifikatsspeichervorgang in Ihrer Anwendung mit exponentiellem Backoff. Wenn die Drosselung weiterhin besteht, fügen Sie Ihrem Cluster weitere HSMs hinzu, um die gesamte Lese- und Schreibrate zu erhöhen, oder reduzieren Sie Ihre Anforderungsrate. Weitere Informationen finden Sie unter [HSM-Drosselung](troubleshoot-hsm-throttling.md).
+ **Lösungsstatus: ** Dieses Problem wurde in [ Client SDK 5.18.0 behoben. ](latest-releases.md#client-version-5-18-0) Die PKCS \#11 -Bibliothek versucht jetzt automatisch, gedrosselte Zertifikatsspeichervorgänge erneut durchzuführen. Führen Sie ein Upgrade auf Version 5.18.0 oder höher durch, um von dem Update zu profitieren.