

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à.

# Scartare una AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-unwrapKey"></a>

Utilizzate il **unWrapKey** comando dello strumento AWS CloudHSM key\$1mgmt\$1util per importare una chiave simmetrica o privata avvolta (crittografata) da un file nell'HSM. È concepito per importare le chiavi di crittografia su cui è stato eseguito il comando [wrapKey](key_mgmt_util-wrapKey.md) nell'interfaccia a riga di comando key\$1mgmt\$1util, ma può essere utilizzato anche per annullare il wrapping delle chiavi effettuato con altri strumenti. Tuttavia, in tali situazioni, ti consigliamo di utilizzare le librerie software [PKCS \$1 11](pkcs11-library.md) o [JCE](java-library.md) per annullare il wrapping della chiave.

Le chiavi AWS CloudHSM importate funzionano come le chiavi generate da. Tuttavia, il valore dell’[attributo OBJ\$1ATTR\$1LOCAL](key-attribute-table.md) è zero e indica che non sono state generate localmente.

Dopo aver importato una chiave, assicurati di contrassegnare o eliminare il file della chiave. Questo comando non evita di importare lo stesso materiale chiave più volte. Di conseguenza, più chiavi con distinti handle e lo stesso materiale chiave rendono difficile monitorare l'utilizzo del materiale chiave ed evitare il superamento dei limiti crittografici.

Prima di eseguire un comando key\$1mgmt\$1util, devi [avviare key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start) e [accedere](key_mgmt_util-log-in.md) all'HSM come crypto user (CU). 

## Sintassi
<a name="unwrapKey-syntax"></a>

```
unWrapKey -h

unWrapKey -f <key-file-name> 
          -w <wrapping-key-handle> 
          [-sess]
          [-min_srv <minimum-number-of-HSMs>]          
          [-timeout <number-of-seconds>]
          [-aad <additional authenticated data filename>]
          [-tag_size <tag size>]
          [-iv_file <IV file>]
          [-attest]
          [-m <wrapping-mechanism>]
          [-t <hash-type>]
          [-nex]
          [-u <user id list>]
          [-m_value <number of users needed for approval>]
          [-noheader]
          [-l <key-label>]
          [-id <key-id>]
          [-kt <key-type>]
          [-kc <key-class>]
          [-i <unwrapping-IV>]
```

## Esempio
<a name="unwrapKey-examples"></a>

Questi esempi mostrano come **unWrapKey** importare una chiave incapsulata da un file in. HSMs Nel primo esempio, abbiamo annullato il wrapping di una chiave eseguito con il comando key\$1mgmt\$1util **[wrapKey](key_mgmt_util-wrapKey.md)**, che quindi aveva un’intestazione. Nel secondo esempio, abbiamo annullato il wrapping di una chiave eseguito al di fuori di key\$1mgmt\$1util, quindi senza intestazione.

**Example : annullare il wrapping di una chiave (con intestazione)**  
Questo comando importa una copia con wrapping di una chiave simmetrica 3DES in un modulo HSM. Il wrapping della chiave viene annullato da una chiave AES con un'etichetta `6`, identica dal punto di vista crittografico a quella utilizzata per eseguire il wrapping della chiave 3DES. L'output indica che è stato effettuato l’annullamento del wrapping della chiave nel file e che è stata importata e che l'handle della chiave importata è `29`.  

```
        Command:  unWrapKey -f 3DES.key -w 6 -m 4

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Key Unwrapped.  Key Handle: 29

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

**Example : annullare il wrapping di una chiave (senza intestazione)**  
Questo comando importa una copia con wrapping di una chiave simmetrica 3DES in un modulo HSM. Il wrapping della chiave viene annullato da una chiave AES con un'etichetta `6`, identica dal punto di vista crittografico a quella utilizzata per eseguire il wrapping della chiave 3DES. Dal momento che il wrapping di questa chiave 3DES non è stato eseguito con key\$1mgmt\$1util, viene specificato il parametro `noheader`, insieme ai parametri richiesti: l’etichetta della chiave (`unwrapped3DES`), la classe della chiave (`4`) e il tipo di chiave (`21`). L'output indica che è stato effettuato l’annullamento del wrapping della chiave nel file ed è stata importata e che l'handle della chiave importata è `8`.  

```
Command: unWrapKey -f 3DES.key -w 6 -noheader -l unwrapped3DES -kc 4 -kt 21 -m 4
      
      Cfm3CreateUnwrapTemplate2 returned: 0x00 : HSM Return: SUCCESS
       Cfm2UnWrapWithTemplate3 returned: 0x00 : HSM Return: SUCCESS

       Key Unwrapped. Key Handle: 8

       Cluster Error Status
       Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
       Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

## Parameters
<a name="unwrapKey-params"></a>

**-h**  
Visualizza l'aiuto per il comando.   
Obbligatorio: sì

**-f**  
Il percorso e il nome del file contenente la chiave su cui è stato eseguito il wrapping.  
Obbligatorio: sì

**-w**  
Specifica la chiave di wrapping. Immettere l'handle di una chiave AES o RSA nell'HSM. Questo parametro è obbligatorio. Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-findKey.md).  
Per creare una chiave di wrapping, utilizzare [genSymKey](key_mgmt_util-genSymKey.md)per generare una chiave AES (tipo 31) o [gen RSAKey Pair per generare una coppia](key_mgmt_util-genRSAKeyPair.md) di chiavi RSA (tipo 0). Se utilizzi una coppia di chiavi RSA, assicurati di eseguire il wrapping della chiave con una e di annullare il wrapping con l'altra. Per determinare se una chiave può essere usata come chiave di wrapping, utilizza [getAttribute](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_WRAP`, che è rappresentato dalla costante `262`.  
Obbligatorio: sì

**-sessione**  
Crea una chiave che esiste solo nella sessione corrente. La chiave non può essere recuperata dopo la fine della sessione.  
Utilizza questo parametro quando hai bisogno di una chiave solo per un breve periodo, ad esempio una chiave di wrapping che crittografa e quindi decodifica rapidamente un'altra chiave. Non utilizzare una chiave di sessione per crittografare dati che potresti aver bisogno di decodificare al termine della sessione.  
Per cambiare una chiave di sessione in una chiave persistente (token), usa [setAttribute](key_mgmt_util-setAttribute.md).  
Impostazione Predefinita: la chiave è persistente.   
Obbligatorio: no

**-min\$1srv**  
Speciifica il numero minimo HSMs su cui la chiave viene sincronizzata prima della scadenza del valore del parametro. `-timeout` Se la chiave non è sincronizzata sul numero di server specificato nel tempo allocato, non viene creata.  
AWS CloudHSM sincronizza automaticamente ogni chiave con ogni HSM del cluster. Per velocizzare il processo, impostate un valore inferiore `min_srv` al numero di componenti del HSMs cluster e impostate un valore di timeout basso. Tuttavia, alcune richieste potrebbero non generare una chiave.  
Impostazione predefinita: 1  
Obbligatorio: no

**-timeout**  
Speciifica per quanto tempo (in secondi) il comando attende la sincronizzazione di una chiave con il numero HSMs specificato dal parametro. `min_srv`   
Questo parametro è valido solo quando il parametro `min_srv` viene utilizzato anche nel comando.  
Impostazione Predefinita: No timeout. Il comando attende a tempo indefinito e viene restituito solo quando la chiave è sincronizzata con il numero minimo di server.  
Obbligatorio: no

**-attestare**  
Esegue un controllo di integrità per verificare che il firmware su cui viene eseguito il cluster non sia stato manomesso.  
Impostazione predefinita: nessun controllo di attestazione.  
Obbligatorio: no

**-nex**  
Rende la chiave non estraibile. La chiave generata non può essere [esportata dall'HSM](export-keys.md).  
Impostazione predefinita: la chiave è estraibile.  
Obbligatorio: no

**-m**  
Il valore che rappresenta il meccanismo di wrapping. CloudHSM supporta i seguenti meccanismi:       
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/key_mgmt_util-unwrapKey.html)
Obbligatorio: sì  
Quando si utilizza il meccanismo di `RSA_OAEP` wrapping, la dimensione massima della chiave che è possibile avvolgere è determinata dal modulo della chiave RSA e dalla lunghezza dell'hash specificato nel modo seguente: Dimensione massima della chiave = modulusLengthIn Bytes- (2\$1 Bytes) -2. hashLengthIn  
Quando si utilizza il meccanismo di wrapping RSA\$1PKCS, la dimensione massima della chiave che è possibile avvolgere è determinata dal modulo della chiave RSA come segue: Dimensione massima della chiave = (modulusLengthInByte -11).

**-t**      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/key_mgmt_util-unwrapKey.html)
Obbligatorio: no

**-no intestazione**  
Se si sta per eseguire l’annullamento del wrapping di una chiave eseguito all'esterno di key\$1mgmt\$1util, è necessario specificare questo parametro e tutti gli altri parametri associati.  
Obbligatorio: no  
Se si specifica questo parametro, è **necessario** specificare anche i seguenti parametri `-noheader`:
+ **-l**

  Specifica l'etichetta da aggiungere alla chiave su cui è stato annullato wrapping.

  Obbligatorio: sì
+ **-kc**

  Specifica la classe della chiave su cui annullare il wrapping. Di seguito sono elencati i valori accettabili:

  3 = chiave privata di una coppia di chiavi pubbliche-private

  4 = chiave segreta (simmetrica)

  Obbligatorio: sì
+ **-kt**

  Specifica il tipo di chiave su cui annullare il wrapping. Di seguito sono elencati i valori accettabili:

  0 = `RSA`

  1 = `DSA`

  3 = `ECC`

  16 = `GENERIC_SECRET`

  21 = `DES3`

  31 = `AES`

  Obbligatorio: sì
È inoltre **possibile** specificare i parametri `-noheader` seguenti:  
+ **-id**

  L'ID da aggiungere alla chiave su cui è stato annullato il wrapping.

  Obbligatorio: no
+ **-i**

  Il vettore di inizializzazione (IV) da utilizzare per annullare il wrapping.

  Obbligatorio: no

[1] In conformità con le linee guida del NIST, ciò non è consentito per i cluster in modalità FIPS dopo il 2023. Per i cluster in modalità non FIPS, è ancora consentito dopo il 2023. Per informazioni dettagliate, vedi [Conformità FIPS 140: meccanismo di deprecazione 2024](compliance-dep-notif.md#compliance-dep-notif-1).

## Argomenti correlati
<a name="unwrapKey-seealso"></a>
+ [wrapKey](key_mgmt_util-wrapKey.md)
+ [exSymKey](key_mgmt_util-exSymKey.md)
+ [imSymKey](key_mgmt_util-imSymKey.md)