

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Problemi noti della libreria PKCS \#11 per AWS CloudHSM
<a name="ki-pkcs11-sdk"></a>

I seguenti problemi riguardano la libreria PKCS \#11 per. AWS CloudHSM

**Topics**
+ [Problema: il wrapping della chiave AES nella versione 3.0.0 della libreria PKCS \#11 non convalida gli IV prima dell'uso](#ki-pkcs11-1)
+ [Problema: PKCS \#11 SDK 2.0.4 e le versioni precedenti utilizzavano sempre l'IV predefinito di `0xA6A6A6A6A6A6A6A6 per il avvolgimento e lo sblocco delle chiavi AES`](#ki-pkcs11-2)
+ [Problema: l'attributo `CKA_DERIVE non` era supportato e non era gestito](#ki-pkcs11-3)
+ [Problema: l'attributo `CKA_SENSITIVE` non era supportato e non veniva gestito](#ki-pkcs11-4)
+ [Problema: l'hashing e la firma in più parti non sono supportati](#ki-pkcs11-5)
+ [Problema: `C_ GenerateKeyPair` non gestisce `CKA_MODULUS_BITS o CKA_PUBLIC_EXPONENT nel` modello privato in modo conforme agli standard](#ki-pkcs11-6)
+ [`Problema: i buffer per le operazioni delle API C_Encrypt e C_Decrypt non possono superare i 16 KB quando si utilizza il meccanismo CKM_AES_GCM`](#ki-pkcs11-8)
+ [Problema: Elliptic-curve Diffie-Hellman (ECDH) la derivazione delle chiavi viene eseguita parzialmente all'interno dell'HSM](#ki-pkcs11-9)
+ [Problema: la verifica delle firme secp256k1 non riesce su piattaforme EL6 come CentOS6 e RHEL 6](#ki-pkcs11-10)
+ [Problema: una sequenza errata di chiamate di funzione fornisce risultati indefiniti anziché dare errore](#ki-pkcs11-11)
+ [Problema: la sessione di sola lettura non è supportata in SDK 5](#ki-pkcs11-13)
+ [Problema: il file di intestazione `cryptoki.h` è Windows-only](#ki-pkcs11-14)

## Problema: il wrapping della chiave AES nella versione 3.0.0 della libreria PKCS \#11 non convalida gli IV prima dell'uso
<a name="ki-pkcs11-1"></a>

Se specifichi un IV di lunghezza inferiore a 8 byte, viene riempito con byte imprevedibili prima dell'uso. 

**Nota**  
Questo ha impatto su `C_WrapKey` solo con il meccanismo `CKM_AES_KEY_WRAP`.
+ **Impatto:** se fornisci un IV inferiore a 8 byte nella versione 3.0.0 della libreria PKCS \#11, potrebbe non essere possibile annullare il wrapping della chiave. 
+ **Soluzioni alternative: **
  + Si consiglia vivamente di eseguire l'aggiornamento alla versione 3.0.1 o successiva della libreria PKCS \#11, che applica correttamente la lunghezza degli IV durante il wrapping delle chiavi AES. Modifica il codice di wrapping per passare un IV NULL o specifica l'IV predefinito `0xA6A6A6A6A6A6A6A6`. Per ulteriori informazioni, consulta [IV personalizzati con Non-Compliant lunghezza per AES Key Wrap](troubleshooting-aes-keys.md).
  + Se hai eseguito il wrapping delle chiavi con la versione 3.0.0 della libreria PKCS \#11 utilizzando un IV inferiore a 8 byte, contattaci per ricevere [supporto](https://aws.amazon.com/support).
+ **Stato della risoluzione:** questo problema è stato risolto nella versione 3.0.1 della libreria PKCS \#11. Per eseguire il wrapping delle chiavi utilizzando il wrapper delle chiavi AES, specificare un IV di lunghezza NULL o 8 byte.

## Problema: PKCS \#11 SDK 2.0.4 e le versioni precedenti utilizzavano sempre l'IV predefinito di `0xA6A6A6A6A6A6A6A6 per il avvolgimento e lo sblocco delle chiavi AES`
<a name="ki-pkcs11-2"></a>

User-provided Gli IV venivano ignorati silenziosamente.

**Nota**  
Questo ha impatto su `C_WrapKey` solo con il meccanismo `CKM_AES_KEY_WRAP`.
+ **Impatto:** 
  + Se utilizzi PKCS \#11 SDK 2.0.4 o una versione precedente e un IV fornito dall'utente, le chiavi vengono sottoposte al wrapping con l'IV predefinito `0xA6A6A6A6A6A6A6A6`.
  + Se hai utilizzato PKCS \#11 SDK 3.0.0 o versione successiva e un IV fornito dall'utente, le chiavi vengono sottoposte al wrapping con l'IV fornito dall'utente.
+ **Soluzioni alternative:**
  + Per annullare il wrapping delle chiavi sottoposte al wrapping con PKCS \#11 SDK 2.0.4 o versioni precedenti utilizza l'IV predefinito `0xA6A6A6A6A6A6A6A6`. 
  + Per annullare il wrapping delle chiavi sottoposte al wrapping con PKCS \#11 SDK 3.0.0 o versioni successive, utilizza l'IV fornito dall'utente.
+ **Stato della risoluzione:** si consiglia vivamente di modificare il codice di wrapping e annullamento del wrapping per passare un IV NULL o specificare l'IV predefinito `0xA6A6A6A6A6A6A6A6`.

## Problema: l'attributo `CKA_DERIVE non` era supportato e non era gestito
<a name="ki-pkcs11-3"></a>
+ **Stato risoluzione: **abbiamo implementato le correzioni per accettare `CKA_DERIVE` se impostato su `FALSE`. `CKA_DERIVE` impostato su `TRUE` non sarà supportato fino a quando non si aggiungerà il supporto per la funzione di derivazione della chiave su AWS CloudHSM. Per trarre vantaggio dalla correzione, è necessario aggiornare il client e gli SDK alla versione 1.1.1 o successiva.

## Problema: l'attributo `CKA_SENSITIVE` non era supportato e non veniva gestito
<a name="ki-pkcs11-4"></a>
+ **Resolution status (Stato di risoluzione)**: abbiamo implementato correzioni per accettare e rispettare correttamente l'attributo `CKA_SENSITIVE`. Per trarre vantaggio dalla correzione, è necessario aggiornare il client e gli SDK alla versione 1.1.1 o successiva.

## Problema: l'hashing e la firma in più parti non sono supportati
<a name="ki-pkcs11-5"></a>
+ **Impact (Impatto): **`C_DigestUpdate` e `C_DigestFinal` non sono implementati. `C_SignFinal` anche non è implementato e avrà esito negativo con `CKR_ARGUMENTS_BAD` per un buffer non-`NULL`. 
+ **Soluzione alternativa: esegui** l'hash dei dati all'interno dell'applicazione e utilizzali AWS CloudHSM solo per firmare l'hash. 
+ **Resolution status: (Stato di risoluzione) **stiamo correggendo il client e gli SDK per implementare correttamente l'hashing in più parti. Gli aggiornamenti saranno annunciati nel forum AWS CloudHSM e nella pagina della cronologia delle versioni.

## Problema: `C_ GenerateKeyPair` non gestisce `CKA_MODULUS_BITS o CKA_PUBLIC_EXPONENT nel` modello privato in modo conforme agli standard
<a name="ki-pkcs11-6"></a>
+ **Impact: (Impatto) **`C_GenerateKeyPair` dovrebbe restituire `CKA_TEMPLATE_INCONSISTENT` quando il modello privato contiene `CKA_MODULUS_BITS` o `CKA_PUBLIC_EXPONENT`. Genera invece una chiave privata per la quale tutti i campi di utilizzo sono impostati su `FALSE`. La chiave non può essere utilizzata. 
+ **Workaround: (Soluzione) **consigliamo che l'applicazione verifichi i valori dei campi di utilizzo oltre al codice di errore.
+ **Resolution status: (Stato di risoluzione) **stiamo implementando correzioni per restituire il corretto messaggio di errore quando viene utilizzato un modello di chiavi private non corretto. L'aggiornamento della libreria PKCS \#11 sarà annunciato nella pagina della cronologia delle versioni. 

## `Problema: i buffer per le operazioni delle API C_Encrypt e C_Decrypt non possono superare i 16 KB quando si utilizza il meccanismo CKM_AES_GCM`
<a name="ki-pkcs11-8"></a>

AWS CloudHSM non supporta AES-GCM la crittografia multiparte.
+ **Impact: (Impatto) **non è possibile utilizzare il meccanismo `CKM_AES_GCM` per crittografare dati di dimensioni superiori a 16 KB.
+ **Soluzione alternativa:** puoi utilizzare un meccanismo alternativo come `CKM_AES_CBC``CKM_AES_CBC_PAD`, oppure puoi dividere i dati in parti e crittografare ogni parte singolarmente. `AES_GCM` Se lo utilizzi`AES_GCM`, devi gestire la divisione dei dati e la successiva crittografia. AWS CloudHSM non esegue la AES-GCM crittografia multiparte per te. Si noti che FIPS richiede la generazione del vettore di inizializzazione (IV) sull'`AES-GCM`HSM. Pertanto, l'IV per ogni dato AES-GCM crittografato sarà diverso. 
+ **Resolution status: (Stato di risoluzione) **stiamo correggendo l'SDK in modo che restituisca esplicitamente un errore se il buffer dei dati è di dimensioni eccessive. Restituiamo `CKR_MECHANISM_INVALID` per le operazioni API `C_EncryptUpdate` e `C_DecryptUpdate`. Stiamo valutando alternative per supportare buffer più grandi senza dover ricorrere alla crittografia in più parti. Gli aggiornamenti verranno annunciati nel AWS CloudHSM forum e nella pagina della cronologia delle versioni.

## Problema: Elliptic-curve Diffie-Hellman (ECDH) la derivazione delle chiavi viene eseguita parzialmente all'interno dell'HSM
<a name="ki-pkcs11-9"></a>

La chiave privata EC rimane sempre all'interno dell'HSM, ma il processo di derivazione della chiave viene eseguito in più fasi. Pertanto, nel client sono disponibili i risultati intermedi di ciascuna fase.
+ **Impatto:** in Client SDK 3, la chiave derivata utilizzando il `CKM_ECDH1_DERIVE` meccanismo è inizialmente disponibile sul client e quindi viene importata nell'HSM. Un handle della chiave viene quindi restituito all'applicazione.
+ **Soluzione alternativa:** se state implementando SSL/TLS Offload in AWS CloudHSM, questa limitazione potrebbe non essere un problema. Se l'applicazione richiede che la chiave rimanga sempre all'interno di un limite FIPS, prendere in considerazione l'utilizzo di un protocollo alternativo che non si basi sulla derivazione della chiave ECDH.
+ **Stato della risoluzione:** SDK 5.16 ora supporta ECDH con Key Derivation, che viene eseguita interamente all'interno dell'HSM.

## Problema: la verifica delle firme secp256k1 non riesce su piattaforme EL6 come CentOS6 e RHEL 6
<a name="ki-pkcs11-10"></a>

 Questo si verifica perché la libreria PKCS\#11 di CloudHSM evita una chiamata di rete durante l'inizializzazione dell'operazione di verifica utilizzando OpenSSL per verificare i dati della curva CE. Poiché Secp256k1 non è supportato dal pacchetto OpenSSL predefinito sulle piattaforme EL6, l'inizializzazione non riesce.
+ **Impatto: **la verifica della firma Secp256k1 non riuscirà sulle piattaforme EL6. La chiamata di verifica non riuscirà e restituirà un errore `CKR_HOST_MEMORY`.
+ **Soluzione alternativa: **si consiglia di utilizzare Amazon Linux 1 o qualsiasi piattaforma EL7 se l'applicazione PKCS\#11 richiede di verificare le firme secp256k1. In alternativa, eseguire l'aggiornamento del pacchetto OpenSSL a una versione che supporti la curva secp256k1.
+ **Stato della risoluzione: **stiamo implementando correzioni per tornare a HSM se la convalida della curva locale non è disponibile. L'aggiornamento della libreria PKCS \#11 sarà annunciato nella pagina della [cronologia delle versioni](client-history.md).

## Problema: una sequenza errata di chiamate di funzione fornisce risultati indefiniti anziché dare errore
<a name="ki-pkcs11-11"></a>
+ **Impatto**: se si chiama una sequenza errata di funzioni, il risultato finale non è corretto anche se le singole chiamate di funzione danno esito positivo. Ad esempio, i dati decrittografati potrebbero non corrispondere al testo in chiaro originale oppure potrebbe venire meno la verifica delle firme. Questo problema riguarda sia le operazioni a parte singola che quelle in più parti.

  Le tabelle seguenti mostrano le sequenze di chiamate di funzione corrette per le operazioni PKCS \#11.

  **Sequenze corrette per le operazioni su una sola parte:**    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/ki-pkcs11-sdk.html)

  **Sequenze corrette per operazioni in più parti:**    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/ki-pkcs11-sdk.html)
+  **Soluzione alternativa**: l'applicazione deve, in conformità alla specifica PKCS \#11, utilizzare la sequenza corretta di chiamate di funzione per le operazioni in una o più parti, come illustrato nelle tabelle precedenti. L'applicazione non deve fare affidamento sulla libreria PKCS \#11 di CloudHSM per restituire un errore in questa circostanza. 

## Problema: la sessione di sola lettura non è supportata in SDK 5
<a name="ki-pkcs11-13"></a>
+ **Problema:** l'SDK 5 non supporta l'apertura di sessioni con. Read-Only `C_OpenSession`
+ **Impatto: **se tenti di chiamare `C_OpenSession` senza fornire `CKF_RW_SESSION`, la chiamata darà esito negativo con l'errore `CKR_FUNCTION_FAILED`. 
+ **Soluzione alternativa: **quando si apre una sessione, è necessario trasferire i flag `CKF_SERIAL_SESSION | CKF_RW_SESSION` alla chiamata di funzione `C_OpenSession`. 

## Problema: il file di intestazione `cryptoki.h` è Windows-only
<a name="ki-pkcs11-14"></a>
+ **Problema:** con le versioni di AWS CloudHSM Client SDK 5 da 5.0.0 a 5.4.0 su Linux, il file di intestazione è compatibile solo con i sistemi operativi Windows. `/opt/cloudhsm/include/pkcs11/cryptoki.h`
+ **Impatto:** è possibile che si verifichino problemi quando si tenta di includere questo file di intestazione nell'applicazione sui sistemi operativi. Linux-based 
+ **Stato della risoluzione:** aggiornamento alla versione 5.4.1 o successiva di AWS CloudHSM Client SDK 5, che include una Linux-compatible versione di questo file di intestazione.