

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

# Riferimento per i comandi della AWS CloudHSM Key Management Utility
<a name="key_mgmt_util-reference"></a>

Lo strumento da riga di comando **key\$1mgmt\$1util** consente di gestire le chiavi nei moduli di sicurezza hardware (HSM) del AWS CloudHSM cluster, incluse la creazione, l'eliminazione e la ricerca delle chiavi e dei relativi attributi. Include vari comandi, ognuno dei quali è descritto in dettaglio in questo argomento.

Per una guida rapida, vedi [Guida introduttiva a AWS CloudHSM key\$1mgmt\$1util](key_mgmt_util-getting-started.md). Per informazioni sull'interpretazione degli attributi chiave, vedi. [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md) Per informazioni sullo strumento a riga di comando cloudhsm\$1mgmt\$1util, che include i comandi di gestione dell'HSM e degli utenti del cluster, vedi [AWS CloudHSM Utilità di gestione (CMU)](cloudhsm_mgmt_util.md). 

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) a HSM come crypto user (CU). 

Per elencare tutti i comandi key\$1mgmt\$1util, digita:

```
Command: help
```

Per ottenere assistenza su un determinato comando key\$1mgmt\$1util, digita:

```
Command: <command-name> -h
```

Per terminare la sessione key\$1mgmt\$1util, digita:

```
Command: exit
```

I seguenti argomenti descrivono i comandi in key\$1mgmt\$1util.

**Nota**  
Alcuni comandi in key\$1mgmt\$1util e cloudhsm\$1mgmt\$1util hanno lo stesso nome. Tuttavia, i comandi hanno in genere una sintassi diversa, un output diverso e funzionalità leggermente diverse.


| Comando | Description | 
| --- | --- | 
|  [aesWrapUnwrap](key_mgmt_util-aesWrapUnwrap.md) | Consente di crittografare e decodificare i contenuti di una chiave in un file. | 
| [EliminaChiave](key_mgmt_util-deleteKey.md) | Elimina una chiave da. HSMs | 
| [StringaErrore2](key_mgmt_util-Error2String.md) | Consente di recuperare l'errore che corrisponde a un codice di errore esadecimale. | 
| [Esci](key_mgmt_util-exit.md) | Esce da key\$1mgmt\$1util. | 
| [exportPrivateKey](key_mgmt_util-exportPrivateKey.md) | Consente di esportare su un file su disco una copia di una chiave privata. | 
| [exportPubKey](key_mgmt_util-exportPubKey.md) | Consente di esportare da un HSM su un file una copia di una chiave pubblica. | 
| [exSymKey](key_mgmt_util-exSymKey.md) | Esporta una copia in testo semplice di una chiave simmetrica da a un file. HSMs  | 
| [extractMaskedObject](key_mgmt_util-extractMaskedObject.md) | Estrae una chiave da un HSM come un file oggetto nascosto. | 
| [TrovaChiave](key_mgmt_util-findKey.md) | Consente di cercare le chiavi in base al valore dell'attributo della chiave. | 
| [findSingleKey](key_mgmt_util-findSingleKey.md) |  Verifica che esista una chiave su tutti i componenti del cluster. HSMs  | 
| [Gen DSAKey Pair](key_mgmt_util-genDSAKeyPair.md) |  Genera una coppia di key pair DSA ([Digital Signing Algorithm](https://en.wikipedia.org/wiki/Digital_Signature_Algorithm)) nel tuo HSMs. | 
| [coppia di geni ECCKey](key_mgmt_util-genECCKeyPair.md) |  Genera una coppia di chiavi [Elliptic Curve Cryptography](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography) (ECC) nel tuo. HSMs | 
| [coppia di geni RSAKey](key_mgmt_util-genRSAKeyPair.md) |  Genera una coppia di chiavi asimmetriche [RSA](https://en.wikipedia.org/wiki/RSA_%28cryptosystem%29) nel tuo. HSMs | 
| [genSymKey](key_mgmt_util-genSymKey.md) |  Genera una chiave simmetrica nel tuo HSMs | 
| [OttieniAttributo](key_mgmt_util-getAttribute.md) |  Consente di recuperare i valori degli attributi di una chiave di AWS CloudHSM e li scrive in un file. | 
| [getCaviumPrivChiave](key_mgmt_util-getCaviumPrivKey.md) |  Crea una versione falsa in formato PEM di una chiave privata e la esporta in un file.  | 
| [OttieniCertificato](key_mgmt_util-getCert.md) |  Consente di recuperare certificati di partizioni HSM e li salva in un file.  | 
| [getKeyInfo](key_mgmt_util-getKeyInfo.md) |  Ottiene l'utente HSM IDs degli utenti che possono utilizzare la chiave.  Se la chiave è controllata dal quorum, consente di recuperare il numero di utenti del quorum. | 
| [help](key_mgmt_util-help.md) |  Visualizza informazioni di aiuto sui comandi disponibili in key\$1mgmt\$1util.  | 
| [importPrivateKey](key_mgmt_util-importPrivateKey.md) | Importa una chiave privata in un HSM. | 
| [importPubKey](key_mgmt_util-importPubKey.md) | Importa una chiave pubblica in un HSM. | 
| [imSymKey](key_mgmt_util-imSymKey.md) |  Consente di importare nell'HSM una copia in testo normale di una chiave simmetrica da un file.  | 
| [insertMaskedObject](key_mgmt_util-insertMaskedObject.md) | Inserisce un oggetto nascosto da un file su disco in un HSM contenuto nel cluster correlato al cluster di origine dell'oggetto. I cluster correlati sono qualsiasi cluster [generati da un backup del cluster di origine](create-cluster-from-backup.md). | 
| [Convalida il file chiave utilizzando AWS CloudHSM KMU](key_mgmt_util-IsValidKeyHandlefile.md) | Determina se un determinato file contiene o meno una chiave privata reale o una chiave PEM di esempio. | 
| [listAttributes](key_mgmt_util-listAttributes.md) |  Elenca gli attributi di una AWS CloudHSM chiave e le costanti che li rappresentano. | 
| [ElencaUtenti](key_mgmt_util-listUsers.md) |  Ottiene gli utenti inclusi in HSMs, il tipo e l'ID utente e altri attributi.  | 
| [loginHSM e logoutHSM](key_mgmt_util-loginHSM.md) |  Accedere e disconnettersi da un cluster. HSMs   | 
| [ImpostaAttributo](key_mgmt_util-setAttribute.md) | Consente di convertire una chiave di sessione in una chiave persistente. | 
| [Firma](key_mgmt_util-sign.md) | Generare una firma per un file utilizzando una chiave privata scelta. | 
| [unWrapKey](key_mgmt_util-unwrapKey.md) |  Importa una chiave incapsulata (crittografata) da un file in. HSMs | 
| [Verifica](key_mgmt_util-verify.md) | Verifica se una determinata chiave è stata utilizzata per firmare un determinato file. | 
| [wrapChiave](key_mgmt_util-wrapKey.md) |  Consente di esportare una copia crittografata di una chiave dai moduli HSM a un file.  | 

# Crittografa e decrittografa un AWS CloudHSM file usando KMU
<a name="key_mgmt_util-aesWrapUnwrap"></a>

Utilizzate il **aesWrapUnwrap** comando in AWS CloudHSM key\$1mgmt\$1util per crittografare o decrittografare il contenuto di un file su disco. Questo comando è concepito per eseguire e annullare il wrapping delle chiavi di crittografia, ma è possibile utilizzarlo su qualsiasi file che contenga meno di 4 KB (4096 byte) di dati.

**aesWrapUnwrap**utilizza AES Key Wrap con imbottitura PKCS \$15. Utilizza una chiave AES sull'HSM come chiave di wrapping o di annullamento del wrapping. Quindi scrive il risultato su un altro file su disco. 

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) a HSM come crypto user (CU). 

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

```
aesWrapUnwrap -h

aesWrapUnwrap -m <wrap-unwrap mode>
              -f <file-to-wrap-unwrap> 
              -w <wrapping-key-handle>               
              [-i <wrapping-IV>] 
              [-out <output-file>]
```

## Esempi
<a name="aesWrapUnwrap-examples"></a>

Questi esempi mostrano come utilizzare **aesWrapUnwrap** per crittografare e decodificare una chiave di crittografia in un file. 

**Example : eseguire il wrapping di una chiave di crittografia**  
Questo comando utilizza **aesWrapUnwrap** per eseguire il wrapping di una chiave Triple DES simmetrica che è stata [esportata dall'HSM in testo normale](key_mgmt_util-exSymKey.md) nel file `3DES.key`. È possibile utilizzare un comando simile per eseguire il wrapping di qualsiasi chiave salvata in un file.   
Il comando utilizza il parametro `-m` con il valore `1` per indicare la modalità di wrapping. Utilizza il parametro `-w` per specificare la chiave AES nell'HSM (handle della chiave `6`) come chiave di wrapping. Scrive la risultante chiave con wrapping nel file `3DES.key.wrapped`.  
L'output indica che il comando ha avuto successo e che l'operazione ha utilizzato il valore IV predefinito, che è quello preferito.  

```
 Command:  aesWrapUnwrap -f 3DES.key -w 6 -m 1 -out 3DES.key.wrapped

        Warning: IV (-i) is missing.
                 0xA6A6A6A6A6A6A6A6 is considered as default IV
result data:
49 49 E2 D0 11 C1 97 22
17 43 BD E3 4E F4 12 75
8D C1 34 CF 26 10 3A 8D
6D 0A 7B D5 D3 E8 4D C2
79 09 08 61 94 68 51 B7

result written to file 3DES.key.wrapped

        Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS
```

**Example : annullare il wrapping di una chiave di crittografia**  
Questo esempio mostra come utilizzare **aesWrapUnwrap** per annullare il wrapping (decodificare) di una chiave con wrapping (crittografata) in un file. È possibile eseguire un'operazione come questa prima di importare una chiave sull'HSM. Ad esempio, se si tenta di utilizzare il [imSymKey](key_mgmt_util-imSymKey.md)comando per importare una chiave crittografata, viene restituito un errore perché la chiave crittografata non ha il formato richiesto per una chiave di testo semplice di quel tipo.  
Il comando annulla il wrapping della chiave nel file `3DES.key.wrapped` e scrive il testo normare sul file `3DES.key.unwrapped`. Il comando utilizza il parametro `-m` con il valore `0` per indicare la modalità di annullamento del wrapping. Utilizza il parametro `-w` per specificare la chiave AES nell'HSM (handle della chiave `6`) come chiave di wrapping. Scrive la risultante chiave con wrapping nel file `3DES.key.unwrapped`.   

```
 Command:  aesWrapUnwrap -m 0 -f 3DES.key.wrapped -w 6 -out 3DES.key.unwrapped

        Warning: IV (-i) is missing.
                 0xA6A6A6A6A6A6A6A6 is considered as default IV
result data:
14 90 D7 AD D6 E4 F5 FA
A1 95 6F 24 89 79 F3 EE
37 21 E6 54 1F 3B 8D 62

result written to file 3DES.key.unwrapped

        Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS
```

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

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

**-m**  
Specifica la modalità. Per eseguire il wrapping (crittografare) il contenuto del file, digita `1`; per annullare il wrapping (decodificare) il contenuto del file, digita `0`.  
Obbligatorio: sì

**-f**  
Specifica il file su cui eseguire il wrapping. Inserisci un file che contiene meno di 4 KB (4096 byte) di dati. Questa operazione è stata progettata per eseguire e annullare il wrapping delle chiavi di crittografia.  
Obbligatorio: sì

**-w**  
Specifica la chiave di wrapping. Immetti l'handle di una chiave AES sull'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, usa [genSymKey](key_mgmt_util-genSymKey.md)per generare una chiave AES (tipo 31).  
Obbligatorio: sì

**-i**  
Specifica un valore iniziale (IV) alternativo per l'algoritmo. Utilizza il valore predefinito a meno che non si abbia una condizione speciale che richiede un'alternativa.  
Default: `0xA6A6A6A6A6A6A6A6`. Il valore predefinito è stabilito nella specifica dell'algoritmo [Wrapping Chiave AES](https://tools.ietf.org/html/rfc3394).  
Obbligatorio: no

**-output**  
Specifica un nome alternativo per il file di output che contiene la chiave con o senza wrapping. Il valore predefinito è `wrapped_key` (per le operazioni di wrapping) e `unwrapped_key` (per le operazioni di annullamento del wrapping) nella directory locale.  
Se il file esiste, il comando **aesWrapUnwrap** lo sovrascrive senza preavviso. Se il comando ha esito negativo, **aesWrapUnwrap** crea un file di output senza contenuto.  
Impostazione predefinita: per il wrapping: `wrapped_key`; per l'annullamento del wrapping: `unwrapped_key`.  
Obbligatorio: no

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

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

Utilizzate il **deleteKey** comando contenuto in AWS CloudHSM key\$1mgmt\$1util per eliminare una chiave dal modulo di sicurezza hardware (HSM) in un cluster. AWS CloudHSM Puoi eliminare soltanto una chiave alla volta. L'eliminazione di una chiave di una coppia di chiavi non influisce sull'altra chiave della coppia.

Soltanto il proprietario della chiave può eliminarla. Gli utenti che condividono la chiave possono utilizzarla nelle operazioni di crittografia, ma non eliminarla. 

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="deleteKey-syntax"></a>

```
deleteKey -h 

deleteKey -k
```

## Esempi
<a name="deleteKey-examples"></a>

Questi esempi mostrano come utilizzare per eliminare le chiavi dal tuo. **deleteKey** HSMs

**Example : eliminazione di una chiave**  
Questo comando elimina la chiave con l'handle `6`. Se il comando ha esito positivo, **deleteKey** restituisce messaggi di operazione riuscita da ciascun HSM del cluster.  

```
Command: deleteKey -k 6

        Cfm3DeleteKey returned: 0x00 : HSM Return: SUCCESS

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

**Example : eliminazione di una chiave (errore)**  
Se il comando non riesce perché nessuna chiave dispone dell'handle specificato, **deleteKey** restituisce un messaggio di errore di handle in oggetto non valido.  

```
Command: deleteKey -k 252126

        Cfm3FindKey returned: 0xa8 : HSM Error: Invalid object handle is passed to this operation

        Cluster Error Status
        Node id 1 and err state 0x000000a8 : HSM Error: Invalid object handle is passed to this operation
        Node id 2 and err state 0x000000a8 : HSM Error: Invalid object handle is passed to this operation
```
Se il comando non riesce perché l'utente corrente non è il proprietario della chiave, il comando restituisce un errore di accesso negato.  

```
Command:  deleteKey -k 262152

Cfm3DeleteKey returned: 0xc6 : HSM Error: Key Access is denied.
```

## Parameters
<a name="deleteKey-parameters"></a>

**-h**  
Visualizza il testo di aiuto per il comando.   
Obbligatorio: sì

**-k**  
Specifica l'handle della chiave da eliminare. Per cercare gli handle di chiave nell'HSM, utilizza [findKey](key_mgmt_util-findKey.md).  
Campo obbligatorio: sì

## Argomenti correlati
<a name="deleteKey-seealso"></a>
+ [findKey](key_mgmt_util-findKey.md)

# Descrivi un AWS CloudHSM errore utilizzando KMU
<a name="key_mgmt_util-Error2String"></a>

Utilizzate il comando **Error2String** helper in key\$1mgmt\$1util per restituire l'errore che corrisponde a un codice di errore esadecimale AWS CloudHSM key\$1mgmt\$1util. Puoi usare questo comando per la risoluzione dei problemi di comandi e script.

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="Error2String-syntax"></a>

```
Error2String -h

Error2String -r <response-code>
```

## Esempi
<a name="Error2String-examples"></a>

Questi esempi mostrano come utilizzare **Error2String** per ottenere la stringa di errore per un codice di errore key\$1mgmt\$1util. 

**Example : ottenere una descrizione dell'errore**  
Questo comando ottiene la descrizione dell'errore per il codice di errore `0xdb`. La descrizione spiega che un tentativo di accedere a key\$1mgmt\$1util non è riuscito perché il tipo di utente è errato. Solo gli utenti crittografici (CU) possono accedere a key\$1mgmt\$1util.  

```
        Command:  Error2String -r 0xdb
        
        Error Code db maps to HSM Error: Invalid User Type.
```

**Example : trovare il codice di errore**  
Questo esempio illustra dove trovare il codice di errore in un errore key\$1mgmt\$1util. Il codice di errore, `0xc6`, viene visualizzato dopo la stringa: `Cfm3<command-name> returned: `.  
In questo esempio, [getKeyInfo](key_mgmt_util-getKeyInfo.md)indica che l'utente corrente (utente 4) può utilizzare la chiave nelle operazioni crittografiche. Tuttavia, quando l'utente cerca di utilizzare [deleteKey](key_mgmt_util-deleteKey.md) per eliminare la chiave, il comando restituisce il codice di errore `0xc6`.   

```
        Command:  deleteKey -k 262162

        Cfm3DeleteKey returned: <0xc6> : HSM Error: Key Access is denied

        Cluster Error Status

        Command:  getKeyInfo -k 262162
        
        Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

       Owned by user 3

       also, shared to following 1 user(s):

                4
```
Se l'errore `0xc6` ti viene notificato, puoi utilizzare un comando **Error2String** come questo per individuare l'errore. In questo caso, il comando `deleteKey` ha avuto esito negativo causando un errore di accesso negato in quanto la chiave è condivisa con l'utente corrente, ma è di proprietà di un altro utente. Solo i proprietari delle chiavi dispongono dell'autorizzazione per eliminare una chiave.  

```
        Command:  Error2String -r 0xa8
        
        Error Code c6 maps to HSM Error: Key Access is denied
```

## Parameters
<a name="Error2String-parameters"></a>

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

**-r**  
Specifica un codice di errore esadecimale. L'indicatore esadecimale `0x` è obbligatorio.  
Obbligatorio: sì

# Uscire dalla AWS CloudHSM KMU
<a name="key_mgmt_util-exit"></a>

Utilizzate il **exit** comando in AWS CloudHSM key\$1mgmt\$1util per uscire da key\$1mgmt\$1util. Una volta completata la disconnessione, verrà di nuovo visualizzata la riga di comando standard.

Prima di eseguire qualsiasi comando key\$1mgmt\$1util, devi [avviare key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start).

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

```
exit
```

## Parameters
<a name="exit-parameters"></a>

Questo comando non ha parametri.

## Argomenti correlati
<a name="exit-seealso"></a>
+ [Avvio di key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start)

# Esportazione di una AWS CloudHSM chiave privata tramite KMU
<a name="key_mgmt_util-exportPrivateKey"></a>

Utilizzate il **exportPrivateKey** comando in AWS CloudHSM key\$1mgmt\$1util per esportare una chiave privata asimmetrica da un modulo di sicurezza hardware (HSM) a un file. L'HSM non consente l'esportazione diretta di chiavi in chiaro. Il comando esegue il wrapping della chiave privata utilizzando una chiave di wrapping AES specificata dall'utente, decodifica i byte soggetti a wrapping e copia la chiave privata in chiaro in un file.

Tuttavia, il comando **exportPrivateKey** non rimuove la chiave da HSM, non ne modifica gli [attributi della chiave](key-attribute-table.md) oppure impedisce di utilizzare la chiave in altre operazioni di crittografia. È possibile esportare la stessa chiave più volte.

È possibile esportare solo le chiavi private che hanno il valore dell'attributo `OBJ_ATTR_EXTRACTABLE` impostato su `1`. È necessario specificare una chiave di wrapping AES con un valore di attributo `1` `OBJ_ATTR_WRAP` e `OBJ_ATTR_DECRYPT`. Per trovare gli attributi della chiave, utilizza il comando [**getAttribute**](key_mgmt_util-getAttribute.md).

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) a HSM come crypto user (CU).

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

```
exportPrivateKey -h

exportPrivateKey -k <private-key-handle>
                 -w <wrapping-key-handle>
                 -out <key-file>
                 [-m <wrapping-mechanism>]
                 [-wk <wrapping-key-file>]
```

## Esempi
<a name="exportPrivateKey-examples"></a>

Questo esempio illustra come utilizzare **exportPrivateKey** per esportare una chiave privata da un HSM.

**Example : Esporta una chiave privata**  
Questo comando esporta una chiave privata con handle `15` utilizzando una chiave di wrapping con handle `16` per un file PEM chiamato `exportKey.pem`. Se il comando ha esito positivo, **exportPrivateKey** restituisce un messaggio di operazione riuscita.  

```
Command: exportPrivateKey -k 15 -w 16 -out exportKey.pem

Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS

PEM formatted private key is written to exportKey.pem
```

## Parameters
<a name="exportPrivateKey-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-k`**  
Specifica l'handle della chiave privata da esportare.  
Obbligatorio: sì

**`-w`**  
Specifica l'handle di una chiave di wrapping. Questo parametro è obbligatorio. Per trovare le handle della chiave, utilizza il comando [**findKey**](key_mgmt_util-findKey.md).  
Per determinare se una chiave può essere utilizzata come chiave di wrapping, utilizzare [**getAttribute**](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_WRAP` (262). Per creare una chiave di wrapping, utilizza [**genSymKey**](key_mgmt_util-genSymKey.md) per creare una chiave AES (tipo 31).  
Se si utilizza il parametro `-wk` per specificare una chiave di annullamento del wrapping esterna, la chiave di wrapping `-w` viene utilizzata per eseguire il wrapping della chiave durante l'esportazione, ma non per annullarlo.  
Obbligatorio: sì

**`-out`**  
Consente di specificare il nome del file in cui verrà scritta la chiave privata esportata.  
Obbligatorio: sì

**`-m`**  
Specifica il meccanismo di wrapping della chiave privata in fase di esportazione. L'unico valore valido è `4`, che rappresenta il `NIST_AES_WRAP mechanism.`  
Default: 4 (`NIST_AES_WRAP`)  
Obbligatorio: no

**`-wk`**  
Specifica la chiave da utilizzare per eseguire l'annullamento del wrapping della chiave esportata. Inserire il percorso e il nome di un file che contiene una chiave AES non crittografata.  
Quando includi questo parametro. **exportPrivateKey** utilizza la chiave nel file `-w` per eseguire il wrapping della chiave esportata e utilizza la chiave specificata dal parametro `-wk` per annullarlo.  
Impostazione predefinita: Utilizza il codice di wrapping specificato nel parametro `-w` per eseguire il wrapping e per annullarlo.  
Obbligatorio: no

## Argomenti correlati
<a name="exportPrivateKey-seealso"></a>
+ [importPrivateKey](key_mgmt_util-importPrivateKey.md)
+ [wrapKey](key_mgmt_util-wrapKey.md)
+ [unWrapKey](key_mgmt_util-unwrapKey.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)

# Esporta una AWS CloudHSM chiave pubblica usando KMU
<a name="key_mgmt_util-exportPubKey"></a>

Utilizzate il **exportPubKey** comando in AWS CloudHSM key\$1mgmt\$1util per esportare una chiave pubblica in un HSM in un file. È possibile utilizzarlo per esportare le chiavi pubbliche che generi su un HSM. È inoltre possibile utilizzare questo comando per esportare le chiavi pubbliche importate in un HSM, ad esempio quelle importate tramite il comando **[**importPubKey**](key_mgmt_util-importPubKey.md)**.

L'operazione **exportPubKey** copia il materiale della chiave su un file specificato. Tuttavia, non rimuove la chiave dall'HSM, non ne modifica gli [attributi](key-attribute-table.md) e neppure impedisce di utilizzare la chiave in altre operazioni di crittografia. È possibile esportare la stessa chiave più volte.

È possibile esportare solo le chiavi pubbliche che hanno il valore `OBJ_ATTR_EXTRACTABLE` pari a `1`. Per trovare gli attributi della chiave, utilizza il comando **[getAttribute](key_mgmt_util-getAttribute.md)**.

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

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

```
exportPubKey -h

exportPubKey -k <public-key-handle>
             -out <key-file>
```

## Esempi
<a name="exportPubKey-examples"></a>

Questo esempio illustra come utilizzare **exportPubKey** per esportare una chiave pubblica da un HSM.

**Example : Esporta una chiave pubblica**  
Questo comando esporta una chiave pubblica con handle `10` su un file denominato `public.pem`. Se il comando ha esito positivo, **exportPubKey** restituisce un messaggio di operazione riuscita.  

```
Command: exportPubKey -k 10 -out public.pem

PEM formatted public key is written to public.pem

Cfm3ExportPubKey returned: 0x00 : HSM Return: SUCCESS
```

## Parameters
<a name="exportPubKey-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-k`**  
Specifica l'handle della chiave pubblica da esportare.  
Obbligatorio: sì

**`-out`**  
Specifica il nome del file in cui verrà scritta la chiave pubblica esportata.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="exportPubKey-seealso"></a>
+ [importPubKey](key_mgmt_util-importPubKey.md)
+ [Genera Chiavi](generate-keys.md)

# Esporta una copia in testo semplice di una AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-exSymKey"></a>

Utilizzate il **exSymKey** comando dello strumento AWS CloudHSM key\$1mgmt\$1util per esportare una copia in testo semplice di una chiave simmetrica dal modulo di sicurezza hardware (HSM) e salvarla in un file su disco. Per esportare una copia crittografata (su cui è stato eseguito il wrapping) di una chiave, usa [wrapKey](key_mgmt_util-wrapKey.md). Per importare una chiave in testo semplice, come quelle che esporta, usa. `exSymKey` [imSymKey](key_mgmt_util-imSymKey.md)

Durante il processo di esportazione, il comando **exSymKey** utilizza una chiave AES specificata (la *chiave di wrapping*) per effettuare il *wrapping* (crittografia) e quindi *annullare il wrapping* (decodifica) della chiave da esportare. Tuttavia, il risultato dell'operazione di esportazione è una chiave di testo non crittografato (*su cui è stato annullato il wrapping*) su disco.

Soltanto il proprietario della chiave, ovvero l'utente CU che ha creato la chiave, è in grado di esportarla. Gli utenti che condividono la chiave possono utilizzarla nelle operazioni di crittografia, ma non possono esportarla.

L'operazione **exSymKey** copia il materiale della chiave su un file specificato, ma non rimuove la chiave dall'HSM, non ne modifica gli [attributi](key-attribute-table.md), né impedisce l'utilizzo della chiave nelle operazioni di crittografia. È possibile esportare la stessa chiave più volte.

**exSymKey** esporta solo le chiavi simmetriche. Per esportare le chiavi pubbliche, utilizzare [exportPubKey](key_mgmt_util-exportPubKey.md). Per esportare le chiavi private, utilizzare [exportPrivateKey](key_mgmt_util-exportPrivateKey.md).

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) a HSM come crypto user (CU). 

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

```
exSymKey -h

exSymKey -k <key-to-export>
         -w <wrapping-key>
         -out <key-file>
         [-m 4] 
         [-wk <unwrapping-key-file> ]
```

## Esempi
<a name="exSymKey-examples"></a>

Questi esempi mostrano come utilizzare per **exSymKey** esportare le chiavi simmetriche che possiedi dal tuo. HSMs

**Example : esportazione di una chiave simmetrica 3DES**  
Questo comando esporta una chiave simmetrica Triple DES (3DES) (handle chiave `7`). Utilizza una chiave AES esistente (handle chiave `6`) sull'HSM come chiave di wrapping. Quindi scrive il testo non crittografato della chiave 3DES sul file `3DES.key`.  
L'output indica che la chiave `7` (la chiave 3DES) è stata sottoposta a wrapping e all'annullamento del wrapping e che è stata scritta sul file `3DES.key`.  
Anche se l'output dice che una "Chiave simmetrica wrapped" è stata scritta sul file di output, il file di output contiene una chiave di testo non crittografata (unwrapped).

```
        Command: exSymKey -k 7 -w 6 -out 3DES.key

       Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS


Wrapped Symmetric Key written to file "3DES.key"
```

**Example : esportazione con una chiave di wrapping solo per la sessione**  
Questo esempio illustra come utilizzare una chiave che esiste solo nella sessione come chiave di wrapping. Poiché sulla chiave da esportare è stato eseguito il wrapping che è poi stato immediatamente annullato ed è stata distribuita come testo non crittografato, non è necessario conservare la chiave di wrapping.  
Questa serie di comandi esporta dall'HSM una chiave AES con handle di chiave `8`. Utilizza una chiave di sessione AES creata specificatamente per questo scopo.  
Il primo comando consente di [genSymKey](key_mgmt_util-genSymKey.md)creare una chiave AES a 256 bit. Utilizza il parametro `-sess` per creare una chiave che esiste solo nella sessione corrente.  
L'output indica che l'HSM crea la chiave `262168`.  

```
        Command:  genSymKey -t 31 -s 32 -l AES-wrapping-key -sess

        Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Created.  Key Handle: 262168

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
```
Quindi, l'esempio verifica che la chiave `8`, la chiave da esportare, sia una chiave simmetrica estraibile. Inoltre verifica che la chiave di wrapping, la chiave `262168`, sia una chiave AES che esiste solo nella sessione. È possibile utilizzare il comando [findKey](key_mgmt_util-findKey.md), ma questo esempio esporta gli attributi di entrambe le chiavi su file e utilizza `grep` per trovare i valori di attributo rilevanti nel file.  
Questi comandi utilizzano `getAttribute` con un valore `-a` di `512` (tutti) per ottenere tutti gli attributi per le chiavi `8` e `262168`. Per ulteriori informazioni sugli attributi delle chiavi, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  

```
getAttribute -o 8 -a 512 -out attributes/attr_8
getAttribute -o 262168 -a 512 -out attributes/attr_262168
```
Questi comandi utilizzano `grep` per verificare gli attributi della chiave da esportare (chiave `8`) e la chiave di wrapping valida solo per la sessione (chiave `262168`).  

```
    // Verify that the key to be exported is a symmetric key.
    $  grep -A 1 "OBJ_ATTR_CLASS" attributes/attr_8    
    OBJ_ATTR_CLASS
    0x04
   
    // Verify that the key to be exported is extractable.
    $  grep -A 1 "OBJ_ATTR_KEY_TYPE" attributes/attr_8
    OBJ_ATTR_EXTRACTABLE
    0x00000001

    // Verify that the wrapping key is an AES key
    $  grep -A 1 "OBJ_ATTR_KEY_TYPE" attributes/attr_262168
    OBJ_ATTR_KEY_TYPE
    0x1f

    // Verify that the wrapping key is a session key
    $  grep -A 1 "OBJ_ATTR_TOKEN" attributes/attr_262168
    OBJ_ATTR_TOKEN
    0x00    
    
    // Verify that the wrapping key can be used for wrapping
     $  grep -A 1 "OBJ_ATTR_WRAP" attributes/attr_262168
    OBJ_ATTR_WRAP
    0x00000001
```
Infine, utilizziamo un comando **exSymKey** per esportare la chiave `8` utilizzando la chiave di sessione (chiave `262168`) come chiave di wrapping.  
Quando la sessione scade, la chiave `262168` non è più disponibile.  

```
        Command:  exSymKey -k 8 -w 262168 -out aes256_H8.key

        Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS


Wrapped Symmetric Key written to file "aes256_H8.key"
```

**Example : utilizzo di una chiave di wrapping esterna**  
Questo esempio illustra come utilizzare una chiave di wrapping esterna per esportare una chiave dall'HSM.  
Quando si esegue l'esportazione di una chiave dall'HSM, è necessario specificare una chiave AES nell'HSM che funga da chiave di wrapping. Per impostazione predefinita, la chiave di wrapping viene utilizzata per eseguire e annullare il wrapping della chiave da esportare. Tuttavia, è possibile utilizzare il parametro `-wk` per ordinare a **exSymKey** di utilizzare una chiave esterna in un file su disco per annullare il wrapping. Quando si esegue questa operazione, la chiave specificata dal parametro `-w` effettua il wrapping della chiave di destinazione e la chiave nel file specificata dal parametro `-wk` annulla il wrapping della chiave.   
Poiché la chiave di wrapping deve essere una chiave AES, ovvero una chiave simmetrica, la chiave di wrapping nell'HSM e la chiave di unwrapping su disco devono avere lo stesso materiale chiave. Per eseguire questa operazione, è necessario importare la chiave di wrapping sull'HSM o esportare la chiave di wrapping dall'HSM prima dell'operazione di esportazione.   
Questo esempio crea una chiave al di fuori dell'HSM e la importa nell'HSM. Utilizza la copia interna della chiave per effettuare il wrapping di una chiave simmetrica esportata e la copia della chiave nel file per annullare il wrapping.  
Il primo comando utilizza OpenSSL per generare una chiave AES a 256 bit. Memorizza la chiave sul file `aes256-forImport.key`. Il comando OpenSSL non restituisce alcun output, ma è possibile utilizzare diversi comandi per confermare che l'operazione sia avvenuta con successo. Questo esempio utilizza lo strumento **wc** (conteggio delle parole), che conferma che il file contiene 32 byte di dati.  

```
$  openssl rand -out keys/aes256-forImport.key 32

$ wc keys/aes256-forImport.key
 0  2 32 keys/aes256-forImport.key
```
Questo comando utilizza il comando [imSymKey](key_mgmt_util-imSymKey.md) per importare la chiave AES dal file `aes256-forImport.key` all'HSM. Quando il comando viene completato, la chiave esiste nell'HSM con handle `262167` e nel file `aes256-forImport.key`.  

```
Command:  imSymKey -f keys/aes256-forImport.key -t 31 -l aes256-imported -w 6

        Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Unwrapped.  Key Handle: 262167

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Questo comando utilizza la chiave in un'operazione di esportazione. Il comando utilizza **exSymKey** per esportare la chiave `21`, una chiave AES a 192 bit. Per effettuare il wrapping della chiave, utilizza la chiave `262167`, che è la copia importata nell'HSM. Per annullare il wrapping della chiave, utilizza lo stesso materiale chiave nel file `aes256-forImport.key`. Quando il comando viene completato, la chiave `21` viene esportata sul file `aes192_h21.key`.  

```
        Command:  exSymKey -k 21 -w 262167 -out aes192_H21.key -wk aes256-forImport.key

        Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS

Wrapped Symmetric Key written to file "aes192_H21.key"
```

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

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

**-k**  
Specifica l'handle della chiave da esportare. Questo parametro è obbligatorio. Specifica l'handle della chiave simmetrica posseduta. Questo parametro è obbligatorio. Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-findKey.md).  
Per verificare che una chiave possa essere esportata, utilizza il comando [getAttribute](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_EXTRACTABLE`, che è rappresentato dalla costante `354`. Inoltre, puoi esportare solo le chiavi di tua proprietà. Per trovare il proprietario di una chiave, usa il [getKeyInfo](key_mgmt_util-getKeyInfo.md)comando.  
Obbligatorio: sì

**-w**  
Specifica l'handle di una chiave di wrapping. Questo parametro è obbligatorio. Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-findKey.md).  
Una *chiave di wrapping* è una chiave nell'HSM che viene utilizzata per crittografare (eseguire il wrapping) e quindi decodificare (annullare il wrapping) della chiave da esportare. Solo le chiavi AES possono essere utilizzate come chiavi di wrapping.  
Puoi usare qualsiasi chiave AES (di qualsiasi dimensione) come chiave di wrapping. Poiché la chiave di wrapping effettua e quindi annulla immediatamente il wrapping della chiave di destinazione, puoi utilizzare una chiave AES valida solo per la sessione come chiave di wrapping. 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`. Per creare una chiave di wrapping, utilizza [genSymKey](key_mgmt_util-genSymKey.md) per creare una chiave AES (tipo 31).  
Se utilizzi il parametro `-wk` per specificare una chiave di unwrapping esterna, la chiave di wrapping `-w` viene utilizzata per eseguire il wrapping della chiave durante l'esportazione, ma non per annullarlo.  
La chiave 4 rappresenta una chiave interna non supportata. Ti consigliamo di utilizzare una chiave AES che crei e gestisci come chiave di wrapping.
Obbligatorio: sì

**-output**  
Specifica il percorso e il nome del file di output. Quando il comando viene completato, questo file contiene la chiave esportata in testo non crittografato. Se il file già esiste, il comando lo sovrascrive senza preavviso.  
Obbligatorio: sì

**-m**  
Specifica il meccanismo di wrapping. L'unico valore valido è `4`, che rappresenta il meccanismo `NIST_AES_WRAP`.  
Obbligatorio: no  
Impostazione predefinita: 4

**-wk**  
Utilizza la chiave AES nel file specificato per annullare il wrapping della chiave esportata. Inserire il percorso e il nome di un file che contiene una chiave AES non crittografata.   
Quando includi questo parametro. `exSymKey` utilizza la chiave nell'HSM specificata dal parametro `-w` per eseguire il wrapping della chiave esportata e utilizza la chiave nel file `-wk` per annullarne il wrapping. I valori di parametro `-w` e `-wk` devono determinare la stessa chiave non crittografata.  
Obbligatorio: no  
Impostazione predefinita: utilizzo della chiave di wrapping sull'HSM per annullare il wrapping.

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

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

Utilizzate il **extractMaskedObject** comando in AWS CloudHSM key\$1mgmt\$1util per estrarre una chiave da un modulo di sicurezza hardware (HSM) e salvarla in un file come oggetto mascherato. Gli oggetti nascosti sono oggetti *clonati* che possono essere utilizzati solo dopo averli inseriti nuovamente nel cluster originale utilizzando il comando **[insertMaskedObject](key_mgmt_util-insertMaskedObject.md)**. È possibile inserire solo un oggetto mascherato nello stesso cluster da cui è stato generato, o un clone dello stesso cluster. Questo include qualsiasi versione clonata del cluster generata dalla [copia di un backup tra le regioni](copy-backup-to-region.md) e [utilizzando tale backup per creare un nuovo cluster](create-cluster-from-backup.md).

Gli oggetti mascherati sono un modo efficiente per scaricare e sincronizzare le chiavi, incluse cui le chiavi nonestraibili (ovvero chiavi che hanno un valore [`OBJ_ATTR_EXTRACTABLE`](key-attribute-table.md) di `0`). [In questo modo, le chiavi possono essere sincronizzate in modo sicuro tra cluster correlati in diverse regioni senza la necessità di aggiornare il file di configurazione. AWS CloudHSM](configure-tool.md)

**Importante**  
Dopo l'inserimento, gli oggetti mascherati vengono decodificati e viene loro affidato un handle diverso dall'handle della chiave originale. Un oggetto mascherato include tutti i metadati associati alla chiave originale, tra cui attributi, proprietà e informazioni di condivisione, nonché le impostazioni del quorum. Se è necessario sincronizzare le chiavi tra i cluster in un'applicazione, utilizzare invece [syncKey](cloudhsm_mgmt_util-syncKey.md) in the cloudhsm\$1mgmt\$1util.

Prima di eseguire qualsiasi comando è necessario [avviare key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start) e [accedere](key_mgmt_util-log-in.md) al modulo HSM. Il comando **extractMaskedObject** può essere utilizzato dal CU che possiede la chiave o qualsiasi CO.

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

```
extractMaskedObject -h

extractMaskedObject -o <object-handle>
                    -out <object-file>
```

## Esempi
<a name="extractMaskedObject-examples"></a>

Questo esempio illustra come utilizzare **extractMaskedObject** per estrarre una chiave da un HSM come oggetto mascherato.

**Example : Estrazione di un oggetto mascherato**  
Questo comando consente di estrarre un oggetto mascherato da un HSM di una chiave con handle `524295` e salvarlo come un file chiamato `maskedObj`. Se il comando ha esito positivo, **extractMaskedObject** restituisce un messaggio di operazione riuscita.  

```
Command: extractMaskedObject -o 524295 -out maskedObj

Object was masked and written to file "maskedObj"

        Cfm3ExtractMaskedObject returned: 0x00 : HSM Return: SUCCESS
```

## Parameters
<a name="extractMaskedObject-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-o`**  
Specifica l'handle della chiave da estrarre come oggetto mascherato.  
Obbligatorio: sì

**`-out`**  
Consente di specificare il nome del file in cui l'oggetto mascherato verrà salvato.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="extractMaskedObject-seealso"></a>
+ [insertMaskedObject](key_mgmt_util-insertMaskedObject.md)
+ [syncKey](cloudhsm_mgmt_util-syncKey.md)
+ [Copiare un backup tra regioni](copy-backup-to-region.md)
+ [Creazione di un AWS CloudHSM cluster da un backup precedente](create-cluster-from-backup.md)

# Cerca AWS CloudHSM le chiavi per attributi usando KMU
<a name="key_mgmt_util-findKey"></a>

Utilizzate il **findKey** comando in AWS CloudHSM key\$1mgmt\$1util per cercare le chiavi in base ai valori degli attributi chiave. Quando un chiave soddisfa tutti i criteri impostati, **findKey** restituisce l'handle della chiave. Senza parametri, **findKey** restituisce gli handle della chiave di tutte le chiavi utilizzabili nell'HSM. Per trovare i valori degli attributi di una determinata chiave, utilizzare [getAttribute](key_mgmt_util-getAttribute.md).

Come tutti i comandi key\$1mgmt\$1util, **findKey** è specifico per l'utente. Restituisce solo le chiavi che l'utente corrente può utilizzare nelle operazioni di crittografia. Ciò include le chiavi che l'utente corrente possiede e le chiavi che sono state condivise con l'utente corrente. 

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

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

```
findKey -h 

findKey [-c <key class>] 
        [-t <key type>]
        [-l <key label>] 
        [-id <key ID>]
        [-sess (0 | 1)] 
        [-u <user-ids>]
        [-m <modulus>]
        [-kcv <key_check_value>]
```

## Esempi
<a name="findKey-examples"></a>

Questi esempi mostrano come utilizzare per trovare e identificare le chiavi **findKey** nel tuo. HSMs

**Example : trovare tutte le chiavi**  
Questo comando trova tutte le chiavi per l'utente corrente nell'HSM. L'output include le chiavi che l'utente possiede e condivide e tutte le chiavi pubbliche in HSMs.  
Per ottenere gli attributi di una chiave con un determinato handle della chiave, utilizzare [getAttribute](key_mgmt_util-getAttribute.md). Per determinare se l'utente corrente possiede o condivide una particolare chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md)o [findAllKeys](cloudhsm_mgmt_util-findAllKeys.md)in cloudhsm\$1mgmt\$1util.  

```
Command: findKey

Total number of keys present 13

 number of keys matched from start index 0::12
6, 7, 524296, 9, 262154, 262155, 262156, 262157, 262158, 262159, 262160, 262161, 262162

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

**Example : trovare le chiavi per tipo, utente e sessione**  
Questo comando trova le chiavi AES persistenti che l'utente corrente e l'utente 3 possono utilizzare (l'utente 3 potrebbe essere in grado di utilizzare altre chiavi che l'utente corrente non può visualizzare).  

```
Command: findKey -t 31 -sess 0 -u 3
```

**Example : trovare chiavi per classe ed etichetta**  
Questo comando trova tutte le chiavi pubbliche per l'utente corrente con l'etichetta `2018-sept`.  

```
Command: findKey -c 2 -l 2018-sept
```

**Example : trovare le chiavi RSA per modulo**  
Questo comando trova le chiavi RSA (tipo 0) per l'utente corrente, create utilizzando il modulo nel file `m4.txt`.  

```
Command: findKey -t 0 -m m4.txt
```

## Parameters
<a name="findKey-parameters"></a>

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

**-t**  
Trova le chiavi del tipo specificato. Inserire la costante che rappresenta la classe della chiave. Ad esempio, per trovare le chiavi 3DES, digitare `-t 21`.  
Valori validi:   
+ 0: [RSA](https://en.wikipedia.org/wiki/RSA_(cryptosystem))
+ 1: [DSA](https://en.wikipedia.org/wiki/Digital_Signature_Algorithm)
+ 3: [EC](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography)
+ 16: [GENERIC\$1SECRET](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226962)
+ 18: [RC4](https://en.wikipedia.org/wiki/RC4)
+ 21: [Triple DES (3DES)](https://en.wikipedia.org/wiki/Triple_DES)
+ 31: [AES](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)
Obbligatorio: no

**-c**  
Trova le chiavi nella classe specificata. Inserire la costante che rappresenta la classe della chiave. Ad esempio, per trovare le chiavi pubbliche, digitare `-c 2`.  
Valori validi per ogni tipo di chiave:  
+ 2: pubblica. Questa classe contiene le chiavi pubbliche delle coppie di chiavi pubbliche-private.
+ 3: privata. Questa classe contiene le chiavi private delle coppie di chiavi pubbliche-private.
+ 4: segreta. Questa classe contiene tutte le chiavi simmetriche.
Obbligatorio: no

**-l**  
Trova le chiavi con l'etichetta specificata. Digitare l'etichetta esatta. Non è possibile utilizzare caratteri jolly o espressioni regolari nel valore `--l`.  
Obbligatorio: no

**-id**  
Trova la chiavi con l'ID specificato. Digitare la stringa ID esatta. Non è possibile utilizzare caratteri jolly o espressioni regolari nel valore `-id`.  
Obbligatorio: no

**-sessione**  
Trova le chiavi per stato della sessione. Per trovare le chiavi che sono valide solo nella sessione corrente, digitare `1`. Per trovare le chiavi persistenti, digitare `0`.  
Obbligatorio: no

**-u**  
Trova le chiavi che gli utenti specificati e l'utente corrente condividono. Digitare un elenco separato da virgole di utenti HSM IDs, ad esempio o. `-u 3` `-u 4,7` Per trovare il numero IDs di utenti su un HSM, usa [ListUsers](key_mgmt_util-listUsers.md).  
Quando si specifica un ID utente, **findKey** restituisce le chiavi per quell'utente. Quando si specificano più utenti IDs, **findKey** restituisce le chiavi che tutti gli utenti specificati possono utilizzare.  
Poiché **findKey** restituisce solo le chiavi che l'utente corrente può utilizzare, i risultati `-u` sono sempre identici alle chiavi dell'utente corrente o un sottoinsieme di queste. Per ottenere tutte le chiavi possedute o condivise con qualsiasi utente, i funzionari di crittografia (COs) possono utilizzare [findAllKeys](cloudhsm_mgmt_util-findAllKeys.md)in cloudhsm\$1mgmt\$1util.  
Obbligatorio: no

**-m**  
Trova le chiavi create utilizzando il modulo RSA nel file specificato. Digitare il percorso del file che archivia il modulo.  
-m specifica il file binario contenente il modulo RSA da associare (opzionale).  
Obbligatorio: no

**-kcv**  
Trova le chiavi con il valore di controllo della chiave specificato.  
Il *valore di controllo chiave* (KCV) è un hash o checksum a 3 byte di una chiave che viene generato quando l'HSM importa o genera una chiave. Puoi anche calcolare un KCV al di fuori dell'HSM, ad esempio dopo aver esportato una chiave. È quindi possibile confrontare i valori KCV per confermare l'identità e l'integrità della chiave. Per ottenere il KCV di una chiave, usa [getAttribute](key_mgmt_util-getAttribute.md).  
AWS CloudHSM utilizza il seguente metodo standard per generare un valore di controllo della chiave:  
+ **Chiavi simmetriche**: primi 3 byte del risultato della crittografia a blocchi zero con la chiave.
+ **Coppie di chiavi asimmetriche**: primi 3 byte dell'hash SHA-1 della chiave pubblica.
+ **Chiavi HMAC**: KCV per le chiavi HMAC attualmente non supportato.
Obbligatorio: no

## Output
<a name="findKey-output"></a>

L'output **findKey** elenca il numero totale di chiavi corrispondenti e i relativi handle della chiave.

```
        Command:  findKey
Total number of keys present 10

 number of keys matched from start index 0::9
6, 7, 8, 9, 10, 11, 262156, 262157, 262158, 262159

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

## Argomenti correlati
<a name="findKey-seealso"></a>
+ [findSingleKey](key_mgmt_util-findSingleKey.md)
+ [getKeyInfo](key_mgmt_util-getKeyInfo.md)
+ [OttieniAttributo](key_mgmt_util-getAttribute.md)
+ [findAllKeys](cloudhsm_mgmt_util-findAllKeys.md)in cloudhsm\$1mgmt\$1util
+ [Riferimento per l'attributo della chiave](key-attribute-table.md)

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

Utilizzate il **findSingleKey** comando nello strumento AWS CloudHSM key\$1mgmt\$1util per verificare che esista una chiave su tutti i moduli di sicurezza hardware (HSM) del cluster. AWS CloudHSM 

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) a HSM come crypto user (CU). 

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

```
findSingleKey -h

findSingleKey -k <key-handle>
```

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

**Example**  
Questo comando verifica che la chiave `252136` esista su tutti e tre i componenti del cluster. HSMs   

```
Command: findSingleKey -k 252136
Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS

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

## Parameters
<a name="findSingleKey-parameters"></a>

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

**-k**  
Specifica l'handle di una chiave nel modulo HSM. Questo parametro è obbligatorio.   
Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-listUsers.md).  
Campo obbligatorio: sì

## Argomenti correlati
<a name="findSingleKey-seealso"></a>
+ [findKey](key_mgmt_util-listUsers.md)
+ [getKeyInfo](key_mgmt_util-listUsers.md)
+ [getAttribute](key_mgmt_util-findKey.md)

# Genera una coppia di key pair AWS CloudHSM DSA usando KMU
<a name="key_mgmt_util-genDSAKeyPair"></a>

Utilizzate il **genDSAKeyPair** comando nello strumento AWS CloudHSM key\$1mgmt\$1util per generare una coppia di chiavi [DSA (Digital Signing Algorithm](https://en.wikipedia.org/wiki/Digital_Signature_Algorithm)) nei moduli di sicurezza hardware (HSM). Devi specificare la lunghezza del modulo; il comando genera il valore del modulo. Puoi anche assegnare un ID, condividere la chiave con altri utenti HSM, creare chiavi non estraibili e chiavi che scadono al termine della sessione. Quando il comando viene eseguito correttamente, restituisce l'*handle della chiave* che l'HSM assegna alle chiavi pubbliche e private. Puoi utilizzare gli handle per identificare le chiavi per altri comandi.

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

**Suggerimento**  
Per trovare gli attributi di una chiave che hai creato, ad esempio tipo, lunghezza, etichetta e ID, usa [getAttribute](key_mgmt_util-getAttribute.md). Per trovare le chiavi per un determinato utente, usa. [getKeyInfo](key_mgmt_util-getKeyInfo.md) Per trovare le chiavi in base ai valori degli attributi, usa [findKey](key_mgmt_util-findKey.md). 

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

```
genDSAKeyPair -h

genDSAKeyPair -m <modulus length> 
              -l <label> 
              [-id <key ID>] 
              [-min_srv <minimum number of servers>] 
              [-m_value <0..8>]
              [-nex] 
              [-sess] 
              [-timeout <number of seconds> ]
              [-u <user-ids>] 
              [-attest]
```

## Esempi
<a name="genDSAKeyPair-examples"></a>

Questi esempi mostrano come utilizzare **genDSAKeyPair** per creare una coppia di chiavi DSA.

**Example : creazione di una coppia di chiavi DSA**  
Questo comando crea una coppia di chiavi DSA con un'etichetta `DSA`. L'output indica che l'handle della chiave pubblica è `19` e l'handle della chiave privata è `21`.  

```
Command: genDSAKeyPair -m 2048 -l DSA

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 19    private key handle: 21

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

**Example : creazione di una coppia di chiavi DSA solo per la sessione**  
Questo comando crea una coppia di chiavi DSA valida solo nella sessione corrente. Il comando assegna un ID univoco di `DSA_temp_pair` oltre all'etichetta richiesta (non univoca). È possibile creare una coppia di chiavi come questa per firmare e verificare un token solo per la sessione. L'output indica che l'handle della chiave pubblica è `12` e l'handle della chiave privata è `14`.  

```
Command: genDSAKeyPair -m 2048 -l DSA-temp -id DSA_temp_pair -sess

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 12    private key handle: 14

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Per confermare che la coppia di chiavi esiste solo nella sessione, utilizza il parametro `-sess` di [findKey](key_mgmt_util-findKey.md) con un valore di `1` (vero).  

```
  Command: findKey -sess 1

  Total number of keys present 2

 number of keys matched from start index 0::1
12, 14

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

**Example : creazione di una coppia di chiavi DSA non estraibili e condivise**  
Questo comando crea una coppia di chiavi DSA. La chiave privata è condivisa con altri tre utenti e non può essere esportata dall'HSM. Le chiavi pubbliche possono essere utilizzate da qualsiasi utente e possono sempre essere estratte.   

```
        Command:  genDSAKeyPair -m 2048 -l DSA -id DSA_shared_pair -nex -u 3,5,6

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 11    private key handle: 19

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

**Example : creazione di una coppia di chiavi controllate dal quorum**  
Questo comando crea una coppia di chiavi DSA con l'etichetta `DSA-mV2`. Il comando utilizza il parametro `-u` per condividere la chiave privata con gli utenti 4 e 6. Utilizzare il parametro `-m_value` per richiedere un quorum di almeno due approvazioni per le operazioni di crittografia che utilizzano la chiave privata: Viene inoltre utilizzato il parametro `-attest` per verificare l'integrità del firmware in cui la coppia di chiavi è generata.  
L'output indica che il comando genera una chiave pubblica con handle `12` e una chiave privata con handle `17` e che il controllo di attestazione sul firmware del cluster ha avuto esito positivo.  

```
        Command:  genDSAKeyPair -m 2048 -l DSA-mV2 -m_value 2 -u 4,6 -attest

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 12    private key handle: 17

        Attestation Check : [PASS]

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Questo comando utilizza [getKeyInfo](key_mgmt_util-getKeyInfo.md)la chiave privata (key handle`17`). L'output conferma che la chiave è di proprietà dell'utente corrente (utente 3) e che è condivisa con gli utenti 4 e 6 (e non con altri). L'output mostra anche che l'autenticazione del quorum è abilitata e la dimensione del quorum è due.  

```
        Command:  getKeyInfo -k 17

        Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

        Owned by user 3

        also, shared to following 2 user(s):

                 4
                 6
         2 Users need to approve to use/manage this key
```

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

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

**-m**  
Specifica la lunghezza del modulo in bit. L’unico valore valido è `2048`.  
Obbligatorio: sì

**-l**  
Specifica un'etichetta definita dall'utente per la coppia di chiavi. Digita una stringa. La stessa etichetta si applica a entrambe le chiavi della coppia. La dimensione massima per `label` è di 127 caratteri.  
Puoi usare qualsiasi frase che ti aiuti a identificare la chiave. Poiché l'etichetta non deve essere necessariamente univoca, è possibile utilizzarla per raggruppare e classificare le chiavi.   
Obbligatorio: sì

**-id**  
Specifica un identificatore definito dall'utente per la coppia di chiavi. Digita una stringa univoca nel cluster. L'impostazione predefinita è una stringa vuota. L'ID specificato si applica a entrambe le chiavi della coppia.  
Impostazione predefinita: nessun valore ID.  
Obbligatorio: no

**-min\$1srv**  
Speciifica il numero minimo HSMs su cui la chiave viene sincronizzata prima della scadenza del valore del `-timeout` parametro. 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

**-m\$1valore**  
Specifica il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave privata della coppia. Digita un valore da `0` a `8`.  
Questo parametro stabilisce un requisito di autenticazione del quorum per la chiave privata. Il valore predefinito `0` disabilita la funzionalità di autenticazione del quorum per la chiave. Quando l'autenticazione del quorum è abilitata, il numero specificato di utenti deve firmare un token per approvare le operazioni crittografiche che utilizzano la chiave privata e le operazioni che condividono o annullano la condivisione della chiave privata.  
Per trovare il codice `m_value` di una chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Questo parametro è valido soltanto quando il parametro `-u` nel comando condivide la coppia di chiavi con un numero sufficiente di utenti per soddisfare il requisito `m_value`.  
Impostazione predefinita: 0  
Obbligatorio: no

**-nex**  
Rende la chiave privata non estraibile. La chiave privata generata non può essere [esportata dall'HSM](export-keys.md). Le chiavi pubbliche sono sempre estraibili.  
Impostazione predefinita: sia la chiave pubblica che quella privata nella coppia di chiavi sono estraibili.  
Obbligatorio: no

**-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

**-timeout**  
Speciifica per quanto tempo (in secondi) il comando attende che una chiave venga sincronizzata 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

**-u**  
Condivide la chiave privata della coppia con gli utenti specificati. Questo parametro fornisce agli altri utenti crittografici HSM (CUs) il permesso di utilizzare la chiave privata nelle operazioni crittografiche. Le chiavi pubbliche possono essere utilizzate da qualsiasi utente senza condividerle.  
Digitate un elenco separato da virgole di utenti HSM, ad esempio -. IDs `u 5,6` Non includere l'ID utente dell'HSM dell'utente attuale. [Per trovare l'utente HSM IDs di CUs sull'HSM, usa ListUsers.](key_mgmt_util-listUsers.md) Quindi, per condividere o interrompere la condivisione di una chiave esistente, utilizza [shareKey](cloudhsm_mgmt_util-shareKey.md) in cloudhsm\$1mgmt\$1util.   
Impostazione predefinita: soltanto l'utente attuale può utilizzare la chiave privata.   
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

## Argomenti correlati
<a name="genDSAKeyPair-seealso"></a>
+ [RSAKeygen Pair](key_mgmt_util-genRSAKeyPair.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [ECCKeycoppia di generi](key_mgmt_util-genECCKeyPair.md)

# Genera una coppia di chiavi AWS CloudHSM ECC usando KMU
<a name="key_mgmt_util-genECCKeyPair"></a>

Utilizzate il `genECCKeyPair` comando nello strumento AWS CloudHSM key\$1mgmt\$1util per generare una coppia di chiavi [Elliptic Curve Cryptography (ECC) nei vostri moduli di sicurezza hardware (HSM](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography)). Quando si esegue il comando `genECCKeyPair`, è necessario specificare l'identificatore della curva ellittica e un'etichetta per la coppia di chiavi. Inoltre, è possibile condividere la chiave privata con altri utenti CU, creare chiavi non estraibili, chiavi controllate da quorum e chiavi che scadono al termine della sessione. Quando il comando viene completato con successo, restituisce gli handle che l'HSM assegna alle chiavi ECC pubbliche e private. Puoi utilizzare gli handle per identificare le chiavi per altri comandi.

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

**Suggerimento**  
Per trovare gli attributi di una chiave che hai creato, ad esempio tipo, lunghezza, etichetta e ID, usa [getAttribute](key_mgmt_util-getAttribute.md). Per trovare le chiavi per un determinato utente, usa. [getKeyInfo](key_mgmt_util-getKeyInfo.md) Per trovare le chiavi in base ai valori degli attributi, usa [findKey](key_mgmt_util-findKey.md). 

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

```
genECCKeyPair -h

genECCKeyPair -i <EC curve id> 
              -l <label> 
              [-id <key ID>]
              [-min_srv <minimum number of servers>]
              [-m_value <0..8>]
              [-nex]
              [-sess]
              [-timeout <number of seconds> ]
              [-u <user-ids>]
              [-attest]
```

## Esempi
<a name="genECCKeyPair-examples"></a>

Gli esempi seguenti mostrano come utilizzare **genECCKeyPair** per creare coppie di chiavi ECC in HSMs.

**Example : creare ed esaminare una coppia di chiavi ECC**  
Questo comando usa una curva ellittica NID\$1secp384r1 e un'etichetta `ecc14` per creare una coppia di chiavi ECC. L'output indica che l'handle della chiave privata è `262177` e l'handle della chiave pubblica è `262179`. L'etichetta si applica a entrambe le chiavi, sia pubblica che privata.  

```
Command: genECCKeyPair -i 14 -l ecc14

        Cfm3GenerateKeyPair returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 262179    private key handle: 262177

        Cluster Error Status
        Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Dopo aver generato la chiave, è possibile esaminarne gli attributi. Utilizza [getAttribute](key_mgmt_util-getAttribute.md) per scrivere tutti gli attributi (rappresentati dalla costante `512`) della nuova chiave privata ECC sul file `attr_262177`.  

```
Command: getAttribute -o 262177 -a 512 -out attr_262177
got all attributes of size 529 attr cnt 19
Attributes dumped into attr_262177

        Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS
```
Quindi utilizza il comando `cat` per visualizzare il contenuto del file degli attributi `attr_262177`. L'output indica che la chiave è una chiave privata basata su una curva ellittica che può essere utilizzata per firmare, ma non per la crittografia, la decodifica, il wrapping, l'annullamento del wrapping o la verifica. La chiave è persistente ed esportabile.  

```
$  cat attr_262177

OBJ_ATTR_CLASS
0x03
OBJ_ATTR_KEY_TYPE
0x03
OBJ_ATTR_TOKEN
0x01
OBJ_ATTR_PRIVATE
0x01
OBJ_ATTR_ENCRYPT
0x00
OBJ_ATTR_DECRYPT
0x00
OBJ_ATTR_WRAP
0x00
OBJ_ATTR_UNWRAP
0x00
OBJ_ATTR_SIGN
0x01
OBJ_ATTR_VERIFY
0x00
OBJ_ATTR_LOCAL
0x01
OBJ_ATTR_SENSITIVE
0x01
OBJ_ATTR_EXTRACTABLE
0x01
OBJ_ATTR_LABEL
ecc2
OBJ_ATTR_ID

OBJ_ATTR_VALUE_LEN
0x0000008a
OBJ_ATTR_KCV
0xbbb32a
OBJ_ATTR_MODULUS
044a0f9d01d10f7437d9fa20995f0cc742552e5ba16d3d7e9a65a33e20ad3e569e68eb62477a9960a87911e6121d112b698e469a0329a665eba74ee5ac55eae9f5
OBJ_ATTR_MODULUS_BITS
0x0000019f
```

**Example Utilizzo di una curva EEC non valida**  
Questo comando tenta di creare una coppia di chiavi ECC utilizzando una curva NID\$1X9\$162\$1prime192v1. Poiché questa curva ellittica non è valida per la modalità FIPS HSMs, il comando ha esito negativo. Il messaggio segnala che un server del cluster non è disponibile, ma in genere ciò non indica un problema relativo al cluster. HSMs   

```
Command:  genECCKeyPair -i 1 -l ecc1

        Cfm3GenerateKeyPair returned: 0xb3 : HSM Error: This operation violates the current configured/FIPS policies

        Cluster Error Status
        Node id 0 and err state 0x30000085 : HSM CLUSTER ERROR: Server in cluster is unavailable
```

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

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

**-i **  
Specifica l'identificatore per la curva ellittica. Inserisci un identificatore.   
Valori validi:   
+ **2**: NID\$1X9\$162\$1prime256v1
+ **14**: NID\$1secp384r1
+ **16**: NID\$1secp256k1
Obbligatorio: sì

**-l**  
Specifica un'etichetta definita dall'utente per la coppia di chiavi. Digita una stringa. La stessa etichetta si applica a entrambe le chiavi della coppia. La dimensione massima per `label` è di 127 caratteri.  
Puoi usare qualsiasi frase che ti aiuti a identificare la chiave. Poiché l'etichetta non deve essere necessariamente univoca, è possibile utilizzarla per raggruppare e classificare le chiavi.   
Obbligatorio: sì

**-id**  
Specifica un identificatore definito dall'utente per la coppia di chiavi. Digita una stringa univoca nel cluster. L'impostazione predefinita è una stringa vuota. L'ID specificato si applica a entrambe le chiavi della coppia.  
Impostazione predefinita: nessun valore ID.  
Obbligatorio: no

**-min\$1srv**  
Speciifica il numero minimo HSMs su cui la chiave viene sincronizzata prima della scadenza del valore del `-timeout` parametro. 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

**-m\$1valore**  
Specifica il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave privata della coppia. Digita un valore da `0` a `8`.  
Questo parametro stabilisce un requisito di autenticazione del quorum per la chiave privata. Il valore predefinito `0` disabilita la funzionalità di autenticazione del quorum per la chiave. Quando l'autenticazione del quorum è abilitata, il numero specificato di utenti deve firmare un token per approvare le operazioni crittografiche che utilizzano la chiave privata e le operazioni che condividono o annullano la condivisione della chiave privata.  
Per trovare il codice `m_value` di una chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Questo parametro è valido soltanto quando il parametro `-u` nel comando condivide la coppia di chiavi con un numero sufficiente di utenti per soddisfare il requisito `m_value`.  
Impostazione predefinita: 0  
Obbligatorio: no

**-nex**  
Rende la chiave privata non estraibile. La chiave privata generata non può essere [esportata dall'HSM](export-keys.md). Le chiavi pubbliche sono sempre estraibili.  
Impostazione predefinita: sia la chiave pubblica che quella privata nella coppia di chiavi sono estraibili.  
Obbligatorio: no

**-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

**-timeout**  
Speciifica per quanto tempo (in secondi) il comando attende che una chiave venga sincronizzata 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

**-u**  
Condivide la chiave privata della coppia con gli utenti specificati. Questo parametro fornisce agli altri utenti crittografici HSM (CUs) il permesso di utilizzare la chiave privata nelle operazioni crittografiche. Le chiavi pubbliche possono essere utilizzate da qualsiasi utente senza condividerle.  
Digitate un elenco separato da virgole di utenti HSM, ad esempio -. IDs `u 5,6` Non includere l'ID utente dell'HSM dell'utente attuale. [Per trovare l'utente HSM IDs di CUs sull'HSM, usa ListUsers.](key_mgmt_util-listUsers.md) Quindi, per condividere o interrompere la condivisione di una chiave esistente, utilizza [shareKey](cloudhsm_mgmt_util-shareKey.md) in cloudhsm\$1mgmt\$1util.   
Impostazione predefinita: soltanto l'utente attuale può utilizzare la chiave privata.   
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

## Argomenti correlati
<a name="genECCKeyPair-seealso"></a>
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [RSAKeygen Pair](key_mgmt_util-genRSAKeyPair.md)
+ [DSAKeycoppia di generi](key_mgmt_util-genDSAKeyPair.md)

# Genera una coppia di key pair AWS CloudHSM RSA usando KMU
<a name="key_mgmt_util-genRSAKeyPair"></a>

[Utilizzate il **genRSAKeyPair** comando nello strumento AWS CloudHSM key\$1mgmt\$1util per generare una coppia di chiavi asimmetrica RSA.](https://en.wikipedia.org/wiki/RSA_(cryptosystem)) Occorre specificare il tipo di chiave, la lunghezza del modulo e un esponente pubblico. Il comando genera un modulo della lunghezza specificata e crea la coppia di chiavi. È possibile assegnare un ID, condividere la chiave con altri utenti HSM, creare chiavi non estraibili e chiavi che scadono al termine della sessione. Quando il comando viene completato con successo, restituisce un handle che l'HSM assegna alla chiave. È possibile utilizzare l'handle per identificare la chiave per altri comandi.

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

**Suggerimento**  
Per trovare gli attributi di una chiave che hai creato, ad esempio tipo, lunghezza, etichetta e ID, usa [getAttribute](key_mgmt_util-getAttribute.md). Per trovare le chiavi per un determinato utente, usa. [getKeyInfo](key_mgmt_util-getKeyInfo.md) Per trovare le chiavi in base ai valori degli attributi, usa [findKey](key_mgmt_util-findKey.md). 

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

```
genRSAKeyPair -h

genRSAKeyPair -m <modulus length>
              -e <public exponent> 
              -l <label> 
              [-id <key ID>] 
              [-min_srv <minimum number of servers>] 
              [-m_value <0..8>]
              [-nex] 
              [-sess] 
              [-timeout <number of seconds> ]
              [-u <user-ids>] 
              [-attest]
```

## Esempi
<a name="genRSAKeyPair-examples"></a>

Questi esempi mostrano come utilizzare per **genRSAKeyPair** creare coppie di chiavi asimmetriche in. HSMs

**Example : crea ed esamina una coppia di chiavi RSA**  
Questo comando crea una coppia di chiavi RSA con un modulo a 2048 bit e un esponente di 65537. L'output indica che l'handle della chiave pubblica è `2100177` e l'handle della chiave privata è `2100426`.  

```
Command: genRSAKeyPair -m 2048 -e 65537 -l rsa_test 

Cfm3GenerateKeyPair returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 2100177    private key handle: 2100426

        Cluster Status:
        Node id 0 status: 0x00000000 : HSM Return: SUCCESS
        Node id 1 status: 0x00000000 : HSM Return: SUCCESS
```
Il comando successivo utilizza [getAttribute](key_mgmt_util-getAttribute.md) per ottenere gli attributi della chiave pubblica appena creata. Scrive l'output nel file `attr_2100177`. È seguito da un comando **cat** che ottiene il contenuto del file degli attributi. Per informazioni sull'interpretazione degli attributi delle chiavi, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  
I risultanti valori esadecimali confermano che è una chiave pubblica (`OBJ_ATTR_CLASS 0x02`) con un tipo di RSA (`OBJ_ATTR_KEY_TYPE 0x00`). È possibile utilizzare questa chiave pubblica per la crittografia (`OBJ_ATTR_ENCRYPT 0x01`), ma non per la decodifica (`OBJ_ATTR_DECRYPT 0x00`). I risultati includono anche la lunghezza della chiave (512, `0x200`), il modulo, la lunghezza del modulo (2048, `0x800`) e l'esponente pubblico (65537, `0x10001`).  

```
Command:  getAttribute -o 2100177 -a 512 -out attr_2100177

Attribute size: 801, count: 26
Written to: attr_2100177 file

        Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS

$  cat attr_2100177
OBJ_ATTR_CLASS
0x02
OBJ_ATTR_KEY_TYPE
0x00
OBJ_ATTR_TOKEN
0x01
OBJ_ATTR_PRIVATE
0x01
OBJ_ATTR_ENCRYPT
0x01
OBJ_ATTR_DECRYPT
0x00
OBJ_ATTR_WRAP
0x01
OBJ_ATTR_UNWRAP
0x00
OBJ_ATTR_SIGN
0x00
OBJ_ATTR_VERIFY
0x01
OBJ_ATTR_LOCAL
0x01
OBJ_ATTR_SENSITIVE
0x00
OBJ_ATTR_EXTRACTABLE
0x01
OBJ_ATTR_LABEL
rsa_test
OBJ_ATTR_ID

OBJ_ATTR_VALUE_LEN
0x00000200
OBJ_ATTR_KCV
0xc51c18
OBJ_ATTR_MODULUS
0xbb9301cc362c1d9724eb93da8adab0364296bde7124a241087d9436b9be57e4f7780040df03c2c
1c0fe6e3b61aa83c205280119452868f66541bbbffacbbe787b8284fc81deaeef2b8ec0ba25a077d
6983c77a1de7b17cbe8e15b203868704c6452c2810344a7f2736012424cf0703cf15a37183a1d2d0
97240829f8f90b063dd3a41171402b162578d581980976653935431da0c1260bfe756d85dca63857
d9f27a541676cb9c7def0ef6a2a89c9b9304bcac16fdf8183c0a555421f9ad5dfeb534cf26b65873
970cdf1a07484f1c128b53e10209cc6f7ac308669112968c81a5de408e7f644fe58b1a9ae1286fec
b3e4203294a96fae06f8f0db7982cb5d7f
OBJ_ATTR_MODULUS_BITS
0x00000800
OBJ_ATTR_PUBLIC_EXPONENT
0x010001
OBJ_ATTR_TRUSTED
0x00
OBJ_ATTR_WRAP_WITH_TRUSTED
0x00
OBJ_ATTR_DESTROYABLE
0x01
OBJ_ATTR_DERIVE
0x00
OBJ_ATTR_ALWAYS_SENSITIVE
0x00
OBJ_ATTR_NEVER_EXTRACTABLE
0x00
```

**Example : genera una coppia di chiavi RSA condivise**  
Questo comando genera una coppia di chiavi RSA e condivide la chiave privata con l'utente 4, un altro CU sull'HSM. Il comando utilizza il parametro `m_value` per richiedere almeno due approvazioni prima che la chiave privata nella coppia possa essere utilizzata in un'operazione di crittografia. Quando si utilizza il parametro `m_value`, è necessario utilizzare anche `-u` nel comando e `m_value` non può superare il numero totale di utenti (numero di valori in `-u` \$1 proprietario).  

```
 Command:  genRSAKeyPair -m 2048 -e 65537 -l rsa_mofn -id rsa_mv2 -u 4 -m_value 2

        Cfm3GenerateKeyPair returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 27    private key handle: 28

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

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

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

**-m**  
Specifica la lunghezza del modulo in bit. Il valore minimo è 2048.   
Obbligatorio: sì

**-e**  
Specifica l'esponente pubblico. Il valore deve essere un numero dispari maggiore o uguale a 65537.  
Obbligatorio: sì

**-l**  
Specifica un'etichetta definita dall'utente per la coppia di chiavi. Digita una stringa. La stessa etichetta si applica a entrambe le chiavi della coppia. La dimensione massima per `label` è di 127 caratteri.  
Puoi usare qualsiasi frase che ti aiuti a identificare la chiave. Poiché l'etichetta non deve essere necessariamente univoca, è possibile utilizzarla per raggruppare e classificare le chiavi.   
Obbligatorio: sì

**-id**  
Specifica un identificatore definito dall'utente per la coppia di chiavi. Digita una stringa univoca nel cluster. L'impostazione predefinita è una stringa vuota. L'ID specificato si applica a entrambe le chiavi della coppia.  
Impostazione predefinita: nessun valore ID.  
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

**-m\$1valore**  
Specifica il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave privata della coppia. Digita un valore da `0` a `8`.  
Questo parametro stabilisce un requisito di autenticazione del quorum per la chiave privata. Il valore predefinito `0` disabilita la funzionalità di autenticazione del quorum per la chiave. Quando l'autenticazione del quorum è abilitata, il numero specificato di utenti deve firmare un token per approvare le operazioni crittografiche che utilizzano la chiave privata e le operazioni che condividono o annullano la condivisione della chiave privata.  
Per trovare il codice `m_value` di una chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Questo parametro è valido soltanto quando il parametro `-u` nel comando condivide la coppia di chiavi con un numero sufficiente di utenti per soddisfare il requisito `m_value`.  
Impostazione predefinita: 0  
Obbligatorio: no

**-nex**  
Rende la chiave privata non estraibile. La chiave privata generata non può essere [esportata dall'HSM](export-keys.md). Le chiavi pubbliche sono sempre estraibili.  
Impostazione predefinita: sia la chiave pubblica che quella privata nella coppia di chiavi sono estraibili.  
Obbligatorio: no

**-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

**-timeout**  
Speciifica per quanto tempo (in secondi) il comando attende che una chiave venga sincronizzata 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

**-u**  
Condivide la chiave privata della coppia con gli utenti specificati. Questo parametro fornisce agli altri utenti crittografici HSM (CUs) il permesso di utilizzare la chiave privata nelle operazioni crittografiche. Le chiavi pubbliche possono essere utilizzate da qualsiasi utente senza condividerle.  
Digitate un elenco separato da virgole di utenti HSM, ad esempio -. IDs `u 5,6` Non includere l'ID utente dell'HSM dell'utente attuale. [Per trovare l'utente HSM IDs di CUs sull'HSM, usa ListUsers.](key_mgmt_util-listUsers.md) Quindi, per condividere o interrompere la condivisione di una chiave esistente, utilizza [shareKey](cloudhsm_mgmt_util-shareKey.md) in cloudhsm\$1mgmt\$1util.   
Impostazione predefinita: soltanto l'utente attuale può utilizzare la chiave privata.   
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

## Argomenti correlati
<a name="genRSAKeyPair-seealso"></a>
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [DSAKeygen Pair](key_mgmt_util-genDSAKeyPair.md)
+ [ECCKeycoppia di generi](key_mgmt_util-genECCKeyPair.md)

# Genera una chiave AWS CloudHSM simmetrica usando KMU
<a name="key_mgmt_util-genSymKey"></a>

Utilizzate il **genSymKey** comando nello strumento AWS CloudHSM key\$1mgmt\$1util per generare una chiave simmetrica nei vostri moduli di sicurezza hardware (HSM). È possibile specificare il tipo e le dimensioni della chiave, assegnare un ID e un'etichetta e condividere la chiave con altri utenti HSM. È anche possibile creare chiavi non estraibili e chiavi che scadono al termine della sessione. Quando il comando viene completato con successo, restituisce un handle che l'HSM assegna alla chiave. È possibile utilizzare l'handle per identificare la chiave per altri comandi.

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="genSymKey-syntax"></a>

```
genSymKey -h

genSymKey -t <key-type>
          -s <key-size> 
          -l <label> 
          [-id <key-ID>] 
          [-min_srv <minimum-number-of-servers>] 
          [-m_value <0..8>]
          [-nex] 
          [-sess] 
          [-timeout <number-of-seconds> ]
          [-u <user-ids>] 
          [-attest]
```

## Esempi
<a name="genSymKey-examples"></a>

Questi esempi mostrano come utilizzare per creare chiavi simmetriche nel tuo. **genSymKey** HSMs

**Suggerimento**  
Per utilizzare le chiavi create con questi esempi per le operazioni HMAC, è necessario impostare `OBJ_ATTR_SIGN` e `OBJ_ATTR_VERIFY` a `TRUE` dopo aver generato la chiave. Per impostare questi valori, utilizza **setAttribute** in CloudHSM Management Utility (CMU). Per ulteriori informazioni, vedi [setAttribute](cloudhsm_mgmt_util-setAttribute.md).

**Example Generazione di una chiave AES**  
Questo comando crea una chiave AES a 256 bit con un'etichetta `aes256`. L'output indica che l'handle della nuova chiave è `6`.  

```
Command: genSymKey -t 31 -s 32 -l aes256

        Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Created.  Key Handle: 6

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

**Example : Creazione di una chiave di sessione**  
Questo comando crea una chiave AES non estraibile a 192 bit valida solo per la durata della sessione corrente. È possibile creare una chiave come questa per eseguire il wrapping (e subito dopo annullare il wrapping) di una chiave in fase di esportazione.   

```
Command: genSymKey -t 31 -s 24 -l tmpAES -id wrap01 -nex -sess 
```

**Example : Risultato rapido**  
Questo comando crea una chiave generica a 512 byte con un'etichetta di `IT_test_key`. Il comando non attende che la chiave venga sincronizzata con tutte HSMs le chiavi del cluster. Restituisce invece un risultato non appena la chiave viene creata in qualsiasi HSM (`-min_srv 1`) o in 1 secondo (`-timeout 1`), qualunque sia la soluzione più rapida. Se la chiave non è sincronizzata al numero minimo specificato HSMs prima della scadenza del timeout, non viene generata. È possibile utilizzare un comando come questo in uno script che crea numerose chiavi, come il loop `for` nell'esempio seguente.   

```
Command: genSymKey -t 16 -s 512 -l IT_test_key -min_srv 1 -timeout 1

$  for i in {1..30}; 
     do /opt/cloudhsm/bin/key_mgmt_util singlecmd loginHSM -u CU -s example_user -p example_pwd genSymKey -l aes -t 31 -s 32 -min_srv 1 -timeout 1; 
 done;
```

**Example : Creazione di una chiave generica con autorizzazione del quorum**  
Questo comando crea una chiave segreta generica a 2048 bit con l'etichetta `generic-mV2`. Il comando utilizza il parametro `-u` per condividere la chiave con un altro utente di crittografia, l'utente 6. Usa il parametro `-m_value` per richiedere un quorum di almeno due approvazioni per le operazioni di crittografia che utilizzano la chiave. Il comando utilizza inoltre il parametro `-attest` per verificare l'integrità del firmware in cui la chiave viene generata.  
L'output indica che il comando ha generato una chiave con handle `9` e che il controllo di attestazione sul firmware del cluster ha avuto esito positivo.  

```
                Command:  genSymKey -t 16 -s 2048 -l generic-mV2 -m_value 2 -u 6 -attest

        Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Created.  Key Handle: 9

        Attestation Check : [PASS]

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

**Example : Creazione e analisi di una chiave**  
Questo comando crea una chiave Triple DES con un'etichetta `3DES_shared` e un ID `IT-02`. La chiave può essere utilizzata dall'utente corrente e dagli utenti 4 e 5. Il comando ha esito negativo se l'ID non è univoco nel cluster o se l'utente corrente è l'utente 4 o 5.   
L'output indica che la nuova chiave ha un handle `7`.  

```
Command: genSymKey -t 21 -s 24 -l 3DES_shared -id IT-02 -u 4,5

       Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Created.  Key Handle: 7

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Per verificare che la nuova chiave 3DES sia di proprietà dell'utente corrente e sia condivisa con gli utenti 4 e 5, utilizza **[getKeyInfo](key_mgmt_util-getKeyInfo.md)**. Il comando usa l'handle assegnato alla nuova chiave (`Key Handle: 7`).  
L'output conferma che la chiave è di proprietà dell'utente 3 ed è condivisa con gli utenti 4 e 5.  

```
Command:  getKeyInfo -k 7

        Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

        Owned by user 3

        also, shared to following 2 user(s):

                 4, 5
```
Per verificare le altre proprietà della chiave, utilizza [getAttribute](key_mgmt_util-getAttribute.md). Il primo comando usa `getAttribute` per ottenere tutti gli attributi (`-a 512`) dell'handle di chiave 7 (`-o 7`) e li scrive nel file `attr_7`. Il secondo comando usa `cat` per ottenere il contenuto del file `attr_7`.   
Questo comando conferma che la chiave 7 è una chiave simmetrica (`OBJ_ATTR_CLASS 0x04`) 3DES (`OBJ_ATTR_KEY_TYPE 0x15`) a 192 bit (`OBJ_ATTR_VALUE_LEN 0x00000018` o 24 byte) con un'etichetta `3DES_shared` (`OBJ_ATTR_LABEL 3DES_shared`) e un ID `IT_02` (`OBJ_ATTR_ID IT-02`). La chiave è persistente (`OBJ_ATTR_TOKEN 0x01`) ed estraibile (`OBJ_ATTR_EXTRACTABLE 0x01`) e può essere utilizzata per la crittografia, la decodifica e il wrapping.   
Per trovare gli attributi di una chiave che hai creato, ad esempio tipo, lunghezza, etichetta e ID, usa [getAttribute](key_mgmt_util-getAttribute.md). Per trovare le chiavi per un determinato utente, usa. [getKeyInfo](key_mgmt_util-getKeyInfo.md) Per trovare le chiavi in base ai valori degli attributi, usa [findKey](key_mgmt_util-findKey.md). 
Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  

```
Command:  getAttribute -o 7 -a 512 -out attr_7

got all attributes of size 444 attr cnt 17
Attributes dumped into attr_7 file

        Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS


$  cat attr_7

OBJ_ATTR_CLASS
0x04
OBJ_ATTR_KEY_TYPE
0x15
OBJ_ATTR_TOKEN
0x01
OBJ_ATTR_PRIVATE
0x01
OBJ_ATTR_ENCRYPT
0x01
OBJ_ATTR_DECRYPT
0x01
OBJ_ATTR_WRAP
0x00
OBJ_ATTR_UNWRAP
0x00
OBJ_ATTR_SIGN
0x00
OBJ_ATTR_VERIFY
0x00
OBJ_ATTR_LOCAL
0x01
OBJ_ATTR_SENSITIVE
0x01
OBJ_ATTR_EXTRACTABLE
0x01
OBJ_ATTR_LABEL
3DES_shared
OBJ_ATTR_ID
IT-02
OBJ_ATTR_VALUE_LEN
0x00000018
OBJ_ATTR_KCV
0x59a46e
```
Per utilizzare le chiavi create con questi esempi per le operazioni HMAC, è necessario impostare `OBJ_ATTR_SIGN` e `OBJ_ATTR_VERIFY` a `TRUE` dopo aver generato la chiave. Per impostare questi valori, usa **setAttribute** in CMU. Per ulteriori informazioni, vedi [setAttribute](cloudhsm_mgmt_util-setAttribute.md).

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

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

**-t**  
Specifica il tipo di chiave simmetrica. Inserisci la costante che rappresenta il tipo di chiave. Ad esempio, per creare una chiave AES, digita `-t 31`.  
Valori validi:   
+ 16: [GENERIC\$1SECRET](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226962). Una *chiave segreta generica* è una matrice di byte non conforme a un determinato standard, come i requisiti per una chiave AES. 
+ 18: [RC4](https://en.wikipedia.org/wiki/RC4). RC4 le chiavi non sono valide in modalità FIPS HSMs
+ 21: [Triple DES (3DES)](https://en.wikipedia.org/wiki/Triple_DES). In conformità alle 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).
+ 31: [AES](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)
Obbligatorio: sì

**-s**  
Specifica le dimensioni della chiave in byte. Ad esempio, per creare una chiave a 192 bit, digita `24`.   
Valori validi per ogni tipo di chiave:  
+ AES: 16 (128 bit), 24 (192 bit), 32 (256 bit)
+ 3DES: 24 (192 bit)
+ Segreta generica: <3584 (28672 bit)
Obbligatorio: sì

**-l**  
Specifica un'etichetta definita dall'utente per la chiave. Digita una stringa.  
Puoi usare qualsiasi frase che ti aiuti a identificare la chiave. Poiché l'etichetta non deve essere necessariamente univoca, è possibile utilizzarla per raggruppare e classificare le chiavi.   
Obbligatorio: sì

**-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

**-id**  
Specifica un identificatore definito dall'utente per la chiave. Digita una stringa univoca nel cluster. L'impostazione predefinita è una stringa vuota.   
Impostazione predefinita: nessun valore ID.  
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

**-m\$1valore**  
Specifica il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave importata. Digitare un valore da `0` a `8`.  
Questo parametro stabilisce un requisito di autenticazione del quorum per la chiave. Il valore predefinito, `0`, disabilita la funzionalità di autenticazione del quorum per la chiave. Quando su una chiave è abilitata la funzionalità di autenticazione del quorum, restituisce anche il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave.  
Per trovare il codice `m_value` di una chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Questo parametro è valido soltanto quando il parametro `-u` nel comando condivide la chiave con un numero sufficiente di utenti per soddisfare il requisito `m_value`.  
Impostazione Predefinita: 0  
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

**-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

**-timeout**  
Speciifica per quanto tempo (in secondi) il comando attende che una chiave venga sincronizzata 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

**-u**  
Condivide la chiave con gli utenti specificati. Questo parametro fornisce agli altri utenti crittografici HSM (CUs) il permesso di utilizzare questa chiave nelle operazioni crittografiche.  
Digitate un elenco separato da virgole di utenti HSM, ad esempio -. IDs `u 5,6` Non includere l'ID utente dell'HSM dell'utente attuale. [Per trovare l'utente HSM IDs di CUs sull'HSM, usa ListUsers.](key_mgmt_util-listUsers.md) Quindi, per condividere o interrompere la condivisione di una chiave esistente, utilizza [shareKey](cloudhsm_mgmt_util-shareKey.md) in cloudhsm\$1mgmt\$1util.   
Impostazione predefinita: soltanto l'utente attuale può utilizzare la chiave.   
Obbligatorio: no

## Argomenti correlati
<a name="genSymKey-seealso"></a>
+ [exSymKey](key_mgmt_util-exSymKey.md)
+ [RSAKeygen Pair](key_mgmt_util-genRSAKeyPair.md)
+ [DSAKeycoppia di generi](key_mgmt_util-genDSAKeyPair.md)
+ [ECCKeycoppia di generi](key_mgmt_util-genECCKeyPair.md)
+ [setAttribute](cloudhsm_mgmt_util-setAttribute.md)

# Ottieni un attributo AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-getAttribute"></a>

Utilizzate il **getAttribute** comando in AWS CloudHSM key\$1mgmt\$1util per scrivere uno o tutti i valori degli attributi per una chiave di un file. AWS CloudHSM Se l'attributo specificato non esiste per il tipo di chiave, ad esempio il modulo di una chiave AES, **getAttribute** restituisce un errore. 

Gli *attributi chiave* sono le proprietà di una chiave. Includono caratteristiche quali tipo di chiave, classe, etichetta e ID, nonché i valori che rappresentano le azioni eseguibili con la chiave, ad esempio crittografia, decodifica, wrapping, firma e verifica. 

Puoi utilizzare il comando **getAttribute** solo sulle chiavi di tua proprietà e su quelle condivise con te. Puoi eseguire questo comando o il comando [getAttribute](cloudhsm_mgmt_util-getAttribute.md) in cloudhsm\$1mgmt\$1util, che ottiene un valore di attributo di una chiave da tutti i HSMs componenti di un cluster e lo scrive su stdout o su un file. 

Per ottenere un elenco di attributi e delle costanti che li rappresentano, utilizza il comando [listAttributes](key_mgmt_util-listAttributes.md). Per modificare i valori degli attributi delle chiavi esistenti, utilizza [setAttribute](key_mgmt_util-setAttribute.md) in key\$1mgmt\$1util e [setAttribute](cloudhsm_mgmt_util-setAttribute.md) in cloudhsm\$1mgmt\$1util. Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).

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) a HSM come crypto user (CU). 

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

```
getAttribute -h 

getAttribute -o <key handle> 
             -a <attribute constant> 
             -out <file>
```

## Esempi
<a name="getAttribute-examples"></a>

Questi esempi mostrano come utilizzare per ottenere gli attributi delle chiavi nel tuo. **getAttribute** HSMs

**Example : ottenere il tipo di chiave**  
Questo esempio mostra come ottenere il tipo di chiave, ad esempio per una chiave AES, 3DES o generica, ma anche una coppia di chiavi RSA o basata su curva ellittica.  
Il primo comando esegue [listAttributes](key_mgmt_util-listAttributes.md), che ottiene gli attributi di una chiave e le costanti che li rappresentano. L'output indica che la costante per il tipo di chiave è `256`. Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  

```
Command: listAttributes

Description
===========
The following are all of the possible attribute values for getAttributes.

      OBJ_ATTR_CLASS                  = 0
      OBJ_ATTR_TOKEN                  = 1
      OBJ_ATTR_PRIVATE                = 2
      OBJ_ATTR_LABEL                  = 3
      OBJ_ATTR_KEY_TYPE               = 256
      OBJ_ATTR_ID                     = 258
      OBJ_ATTR_SENSITIVE              = 259
      OBJ_ATTR_ENCRYPT                = 260
      OBJ_ATTR_DECRYPT                = 261
      OBJ_ATTR_WRAP                   = 262
      OBJ_ATTR_UNWRAP                 = 263
      OBJ_ATTR_SIGN                   = 264
      OBJ_ATTR_VERIFY                 = 266
      OBJ_ATTR_LOCAL                  = 355
      OBJ_ATTR_MODULUS                = 288
      OBJ_ATTR_MODULUS_BITS           = 289
      OBJ_ATTR_PUBLIC_EXPONENT        = 290
      OBJ_ATTR_VALUE_LEN              = 353
      OBJ_ATTR_EXTRACTABLE            = 354
      OBJ_ATTR_KCV                    = 371
```
Il secondo comando esegue **getAttribute**. Richiede il tipo di chiave (attributo `256`) per l'handle di chiave `524296` e lo scrive nel file `attribute.txt`.   

```
Command: getAttribute -o 524296 -a 256 -out attribute.txt
Attributes dumped into attribute.txt file
```
L'ultimo comando ottiene i contenuti del file della chiave. L'output indica che il tipo di chiave è `0x15` o `21`, che è una chiave Triple DES (3DES). Per le definizioni dei valori della classe e del tipo, vedere il [Riferimento agli attributi delle chiavi](key-attribute-table.md).  

```
$  cat attribute.txt
OBJ_ATTR_KEY_TYPE
0x00000015
```

**Example : ottieni tutti gli attributi di una chiave**  
Questo comando ottiene tutti gli attributi della chiave con handle `6` e li scrive nel file `attr_6`. Utilizza il valore di attributo `512`, che rappresenta tutti gli attributi.   

```
Command: getAttribute -o 6 -a 512 -out attr_6
        
got all attributes of size 444 attr cnt 17
Attributes dumped into attribute.txt file

        Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS>
```
Questo comando mostra i contenuti di un file degli attributi di esempio con i valori di tutti gli attributi. Tra i valori, indica che la chiave è di tipo AES a 256 bit con ID `test_01` ed etichetta `aes256`. La chiave è estraibile e persistente, ovvero non è una chiave solo di sessione. Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  

```
$  cat attribute.txt

OBJ_ATTR_CLASS
0x04
OBJ_ATTR_KEY_TYPE
0x15
OBJ_ATTR_TOKEN
0x01
OBJ_ATTR_PRIVATE
0x01
OBJ_ATTR_ENCRYPT
0x01
OBJ_ATTR_DECRYPT
0x01
OBJ_ATTR_WRAP
0x01
OBJ_ATTR_UNWRAP
0x01
OBJ_ATTR_SIGN
0x00
OBJ_ATTR_VERIFY
0x00
OBJ_ATTR_LOCAL
0x01
OBJ_ATTR_SENSITIVE
0x01
OBJ_ATTR_EXTRACTABLE
0x01
OBJ_ATTR_LABEL
aes256
OBJ_ATTR_ID
test_01
OBJ_ATTR_VALUE_LEN
0x00000020
OBJ_ATTR_KCV
0x1a4b31
```

## Parameters
<a name="getAttribute-parameters"></a>

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

**-o**  
Specifica l'handle della chiave di destinazione. È possibile specificare una sola chiave in ogni comando. Per individuare l'handle di una chiave, utilizza [findKey](key_mgmt_util-findKey.md).  
La chiave specificata deve inoltre essere in tuo possesso o condivisa con te. Per trovare gli utenti di una chiave, usa [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Obbligatorio: sì

**-a**  
Identifica l'attributo. Inserisci una costante che rappresenti un attributo oppure immetti `512` per tutti gli attributi. Ad esempio, per ottenere il tipo di chiave, digita `256`, che è la costante per l'attributo `OBJ_ATTR_KEY_TYPE`.  
Per elencare gli attributi e le relative costanti, utilizza [listAttributes](key_mgmt_util-listAttributes.md). Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  
Obbligatorio: sì

**-output**  
Scrive l'output nel file specificato. Immetti un percorso file. L'output non può essere scritto su `stdout`.   
Se il file specificato esiste, **getAttribute** lo sovrascrive senza preavviso.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="getAttribute-seealso"></a>
+ [getAttribute](cloudhsm_mgmt_util-getAttribute.md) su cloudhsm\$1mgmt\$1util
+ [listAttributes](key_mgmt_util-listAttributes.md)
+ [setAttribute](key_mgmt_util-setAttribute.md)
+ [findKey](key_mgmt_util-findKey.md)
+ [Riferimento per l'attributo della chiave](key-attribute-table.md)

# Esporta una AWS CloudHSM chiave in un formato PEM falso usando KMU
<a name="key_mgmt_util-getCaviumPrivKey"></a>

Utilizzate il comando **getCaviumPrivKey** in AWS CloudHSM key\$1mgmt\$1util per esportare una chiave privata da un modulo di sicurezza hardware (HSM) in formato PEM falso. Il file PEM falso, che non contiene l'effettivo materiale della chiave privata ma fa invece riferimento alla chiave privata nell'HSM, può quindi essere utilizzato per stabilire l'offload dal server Web a. SSL/TLS AWS CloudHSM[Per ulteriori informazioni, consulta [SSL/TLS Offload su Linux con Tomcat o SSL/TLS Offload su Linux con](third-offload-linux-jsse.md) NGINX o Apache.](third-offload-linux-openssl.md)

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) a HSM come crypto user (CU).

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

```
getCaviumPrivKey -h

getCaviumPrivKey -k <private-key-handle>
                 -out <fake-PEM-file>
```

## Esempi
<a name="getCaviumPrivKey-examples"></a>

Questo esempio illustra come utilizzare **getCaviumPrivKey** per esportare una chiave privata in un formato PEM falso.

**Example : Esportare un file PEM falso**  
Questo comando crea ed esporta una versione PEM falsa di una chiave privata con handle `15` e la salva su un file chiamato `cavKey.pem`. Se il comando ha esito positivo, **exportPrivateKey** restituisce un messaggio di operazione riuscita.  

```
Command: getCaviumPrivKey -k 15 -out cavKey.pem

Private Key Handle is written to cavKey.pem in fake PEM format

        getCaviumPrivKey returned: 0x00 : HSM Return: SUCCESS
```

## Parameters
<a name="getCaviumPrivKey-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-k`**  
Specifica l'handle della chiave privata da esportare in formato PEM falso.  
Obbligatorio: sì

**`-out`**  
Consente di specificare il nome del file in cui la chiave PEM falsa verrà scritta.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="getCaviumPrivKey-seealso"></a>
+ [importPrivateKey](key_mgmt_util-importPrivateKey.md)
+ [SSL/TLS Offload su Linux utilizzando Tomcat](third-offload-linux-jsse.md)
+ [SSL/TLS Offload su Linux utilizzando NGINX o Apache](third-offload-linux-openssl.md)

# Ottieni certificati di partizione HSM usando KMU AWS CloudHSM
<a name="key_mgmt_util-getCert"></a>

Usa il **getCert** comando contenuto in AWS CloudHSM key\$1mgmt\$1util per recuperare i certificati di partizione di un modulo di sicurezza hardware (HSM) e salvarli in un file. Quando esegui il comando, specifichi il tipo di certificato da recuperare. A tale scopo, utilizza uno dei corrispondenti numeri interi come descritto nella sezione [Parametri](#kmu-getCert-parameters) che segue. Per ulteriori informazioni sul ruolo di ognuno di questi certificati, vedi la pagina relativa alla [Verifica dell'identità del modulo HSM](verify-hsm-identity.md).

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="kmu-getCert-syntax"></a>

```
getCert -h 

getCert -f <file-name> 
        -t <certificate-type>
```

## Esempio
<a name="kmu-getCert-examples"></a>

Questo esempio illustra come utilizzare **getCert** per recuperare un certificato root cliente del cluster e salvarlo come file.

**Example : recuperare un certificato root cliente**  
Questo comando esporta un certificato root cliente (rappresentato da un numero intero `4`) e lo salva in un file chiamato `userRoot.crt`. Se il comando ha esito positivo, **getCert** restituisce un messaggio di operazione riuscita.  

```
Command: getCert -f userRoot.crt -s 4

Cfm3GetCert() returned 0 :HSM Return: SUCCESS
```

## Parameters
<a name="kmu-getCert-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-f`**  
Consente di specificare il nome del file in cui il certificato recuperato verrà salvato.  
Obbligatorio: sì

**-s**  
Valore intero che specifica il tipo di certificato da recuperare. Di seguito sono elencati i valori interi e i tipi di certificato corrispondenti:  
+ **1** – Certificato root del produttore
+ **2** – Certificato hardware del produttore
+ **4** – Certificato root del cliente
+ **8** – Certificato del cluster (firmato dal certificato root del cliente)
+ **16** – Certificato del cluster (concatenato al certificato root del cliente)
Campo obbligatorio: sì

## Argomenti correlati
<a name="kmu-getCert-seealso"></a>
+ [Verifica dell'identità HSM](verify-hsm-identity.md)

# Ottieni gli utenti di una AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-getKeyInfo"></a>

Utilizzate il **getKeyInfo** comando contenuto in AWS CloudHSM key\$1mgmt\$1util per restituire l'utente del modulo di sicurezza hardware (HSM) IDs degli utenti che possono utilizzare la chiave, inclusi il proprietario e gli utenti crittografici (CU) con cui la chiave è condivisa. Quando su una chiave è abilitata la funzionalità di autenticazione del quorum, **getKeyInfo** restituisce anche il numero di utenti che devono approvare le operazioni di crittografia che utilizzano la chiave. Puoi eseguire il comando **getKeyInfo** solo sulle chiavi di tua proprietà e su quelle condivise con te.

Quando esegui il comando **getKeyInfo** su chiavi pubbliche, **getKeyInfo** restituisce solo il proprietario della chiave, anche se tutti gli utenti HSM possono utilizzare la chiave pubblica. Per trovare l'utente HSM IDs degli utenti nel tuo HSMs, usa [ListUsers](key_mgmt_util-listUsers.md). Per trovare le chiavi di un utente specifico, utilizza [Trova chiave](key_mgmt_util-findKey.md) `-u`.

Le chiavi che hai creato sono di tua proprietà. Puoi condividere una chiave con altri utenti nel momento in cui la crei. Quindi, per condividere o interrompere la condivisione di una chiave esistente, utilizza [shareKey](cloudhsm_mgmt_util-shareKey.md) in cloudhsm\$1mgmt\$1util.

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="getKeyInfo-syntax"></a>

```
getKeyInfo -h

getKeyInfo -k <key-handle>
```

## Esempi
<a name="getKeyInfo-examples"></a>

Questi esempi mostrano come utilizzare **getKeyInfo** per ottenere informazioni sugli utenti di una chiave.

**Example : ottenere gli utenti di una chiave simmetrica**  
Questo comando consente di ottenere gli utenti che possono utilizzare la chiave AES (simmetrica) con l'handle di chiave `9`. L'output indica che l'utente 3 possiede la chiave e l'ha condivisa con l'utente 4.  

```
Command:  getKeyInfo -k 9

       Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

       Owned by user 3

       also, shared to following 1 user(s):

                4
```

**Example : ottenere gli utenti di una coppia di chiavi asimmetriche**  
Questi comandi utilizzano **getKeyInfo** per ottenere gli utenti che possono utilizzare le chiavi in una coppia di chiavi RSA (asimmetriche). La chiave pubblica ha l'handle `21`. La chiave privata presenta l'handle `20`.   
Quando esegui **getKeyInfo** sulla chiave privata (`20`), restituisce il proprietario della chiave (3) e gli utenti crittografici (CUs) 4 e 5, con cui la chiave è condivisa.   

```
Command:  getKeyInfo -k 20

       Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

       Owned by user 3

       also, shared to following 2 user(s):

                4
                5
```
Quando esegui **getKeyInfo** sulla chiave pubblica (`21`), il comando restituisce solo il proprietario della chiave, l'utente (3).   

```
Command:  getKeyInfo -k 21

       Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

       Owned by user 3
```
Per verificare se l'utente 4 può utilizzare la chiave pubblica (e tutte le chiavi pubbliche sul modulo HSM), utilizza il parametro `-u` di [findKey](key_mgmt_util-findKey.md).   
L'output indica che nella coppia di chiavi l'utente 4 può utilizzare sia la chiave pubblica (`21`) sia quella privata (`20`). L'utente 4 può inoltre utilizzare tutte le altre chiavi pubbliche e qualsiasi chiave privata che abbia creato o che sia stata condivisa con lui.   

```
Command:  findKey -u 4
Total number of keys present 8

 number of keys matched from start index 0::7
11, 12, 262159, 262161, 262162, 19, 20, 21

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

**Example : ottenere il valore di autenticazione del quorum (m\$1value) per una chiave**  
Questo esempio mostra come ottenere il valore `m_value` per una chiave, che corrisponde al numero di utenti nel quorum che deve approvare tutte le operazioni di crittografia che utilizzano la chiave.  
Quando l'autenticazione del quorum è abilitata su una chiave, un quorum di utenti deve approvare tutte le operazioni di crittografia che utilizzano la chiave. Per abilitare l'autenticazione del quorum e impostarne le dimensioni, utilizza il parametro `-m_value` durante la creazione della chiave.  
Questo comando utilizza [gen RSAKey Pair](key_mgmt_util-genRSAKeyPair.md) per creare una coppia di chiavi RSA condivisa con l'utente 4. Si serve del parametro `m_value` per abilitare l'autenticazione del quorum sulla chiave privata nella coppia e per impostare il quorum a due utenti. Il numero di utenti deve essere sufficiente per fornire le approvazioni necessarie.  
L'output mostra che il comando ha creato la chiave pubblica `27` e la chiave privata `28`.  

```
 Command:  genRSAKeyPair -m 2048 -e 195193 -l rsa_mofn -id rsa_mv2 -u 4 -m_value 2

        Cfm3GenerateKeyPair returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 27    private key handle: 28

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
```
Questo comando utilizza **getKeyInfo** per ottenere informazioni sugli utenti della chiave privata. L'output indica che la chiave è di proprietà dell'utente 3 ed è condivisa con l'utente 4. Inoltre, mostra che un quorum di due utenti deve approvare ogni operazione di crittografia che utilizza la chiave.  

```
Command:  getKeyInfo -k 28

        Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

        Owned by user 3

        also, shared to following 1 user(s):

                 4
         2 Users need to approve to use/manage this key
```

## Parameters
<a name="getKeyInfo-parameters"></a>

**-h**  
Visualizza il testo di aiuto per il comando.   
Obbligatorio: sì

**-k**  
Specifica l'handle di una chiave nel modulo HSM. Specifica l'handle di una chiave di cui sei proprietario o che è condivisa con te. Questo parametro è obbligatorio.   
Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-listUsers.md).  
Campo obbligatorio: sì

## Argomenti correlati
<a name="getKeyInfo-seealso"></a>
+ [getKeyInfo](cloudhsm_mgmt_util-getKeyInfo.md)in cloudhsm\$1mgmt\$1util
+ [ElencaUtenti](key_mgmt_util-listUsers.md)
+ [findKey](key_mgmt_util-findKey.md)
+ [findAllKeys](cloudhsm_mgmt_util-findAllKeys.md)in cloudhsm\$1mgmt\$1util

# Visualizza le informazioni di aiuto per AWS CloudHSM KMU
<a name="key_mgmt_util-help"></a>

Utilizzate il comando in key\$1mgmt\$1util per visualizzare informazioni su tutti i **help** comandi key\$1mgmt\$1util disponibili. AWS CloudHSM 

Prima di eseguire il comando **help**, devi [avviare key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start).

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

```
help
```

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

Questo esempio mostra l'output del comando `help`.

**Example**  

```
Command:  help

Help Commands Available:

Syntax: <command> -h


   Command               Description
   =======               ===========

   exit                   Exits this application
   help                   Displays this information

        Configuration and Admin Commands
   getHSMInfo             Gets the HSM Information
   getPartitionInfo       Gets the Partition Information
   listUsers              Lists all users of a partition
   loginStatus            Gets the Login Information
   loginHSM               Login to the HSM
   logoutHSM              Logout from the HSM

        M of N commands
   getToken               Initiate an MxN service and get Token
   delToken               delete Token(s)
   approveToken           Approves an MxN service
   listTokens             List all Tokens in the current partition

        Key Generation Commands

        Asymmetric Keys:
   genRSAKeyPair          Generates an RSA Key Pair
   genDSAKeyPair          Generates a DSA Key Pair
   genECCKeyPair          Generates an ECC Key Pair

        Symmetric Keys:
   genPBEKey              Generates a PBE DES3 key
   genSymKey              Generates a Symmetric keys

        Key Import/Export Commands
   createPublicKey        Creates an RSA public key
   importPubKey           Imports RSA/DSA/EC Public key
   exportPubKey           Exports RSA/DSA/EC Public key
   importPrivateKey       Imports RSA/DSA/EC private key
   exportPrivateKey       Exports RSA/DSA/EC private key
   imSymKey               Imports a Symmetric key
   exSymKey               Exports a Symmetric key
   wrapKey                Wraps a key from from HSM using the specified handle
   unWrapKey              UnWraps a key into HSM using the specified handle

        Key Management Commands
   deleteKey              Delete Key
   setAttribute           Sets an attribute of an object
   getKeyInfo             Get Key Info about shared users/sessions
   findKey                Find Key
   findSingleKey          Find single Key
   getAttribute           Reads an attribute from an object

        Certificate Setup Commands
   getCert                Gets Partition Certificates stored on HSM

        Key Transfer Commands
   insertMaskedObject     Inserts a masked object
   extractMaskedObject    Extracts a masked object

        Management Crypto Commands
   sign                   Generates a signature
   verify                 Verifies a signature
   aesWrapUnwrap          Does NIST AES Wrap/Unwrap

        Helper Commands
   Error2String           Converts Error codes to Strings
                          save key handle in fake PEM format
   getCaviumPrivKey       Saves an RSA private key handle
                          in fake PEM format
   IsValidKeyHandlefile   Checks if private key file has
                          an HSM key handle or a real key
   listAttributes         List all attributes for getAttributes
   listECCCurveIds        List HSM supported ECC CurveIds
```

## Parameters
<a name="loginHSM-parameters"></a>

Questo comando non ha parametri.

## Argomenti correlati
<a name="loginHSM-seealso"></a>
+ [loginHSM e logoutHSM](key_mgmt_util-loginHSM.md)

# Importa una chiave privata usando AWS CloudHSM KMU
<a name="key_mgmt_util-importPrivateKey"></a>

Utilizzate il **importPrivateKey** comando in AWS CloudHSM key\$1mgmt\$1util per importare una chiave privata asimmetrica da un file a un modulo di sicurezza hardware (HSM). L'HSM non consente l'importazione diretta di chiavi in formato cleartext. Il comando crittografa la chiave privata utilizzando una chiave di wrapping AES specificata dall'utente e decrittografa la chiave all'interno dell'HSM. [Se state cercando di associare una chiave a un AWS CloudHSM certificato, fate riferimento a questo argomento.](ksp-library-associate-key-certificate.md)

**Nota**  
Non è possibile importare una chiave PEM protetta da password utilizzando una chiave simmetrica o privata.

È necessario specificare una chiave di wrapping AES con un valore di attributo `1` `OBJ_ATTR_UNWRAP` e `OBJ_ATTR_ENCRYPT`. Per trovare gli attributi della chiave, utilizza il comando [**getAttribute**](key_mgmt_util-getAttribute.md).

**Nota**  
 Questo comando non offre la possibilità di contrassegnare la chiave importata come non esportabile. 

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="importPrivateKey-syntax"></a>

```
importPrivateKey -h

importPrivateKey -l <label>
                 -f <key-file>
                 -w <wrapping-key-handle>
                 [-sess]
                 [-id <key-id>]
                 [-m_value <0...8>]
                 [min_srv <minimum-number-of-servers>]
                 [-timeout <number-of-seconds>]
                 [-u <user-ids>]
                 [-wk <wrapping-key-file>]
                 [-attest]
```

## Esempi
<a name="importPrivateKey-examples"></a>

Questo esempio illustra come utilizzare **importPrivateKey** per importare una chiave privata in un HSM.

**Example : Importare una chiave privata**  
Questo comando importa la chiave privata da un file denominato `rsa2048.key` con l'etichetta `rsa2048-imported` e una chiave di wrapping con handle `524299`. Quando il comando viene completato, **importPrivateKey** restituisce un'handle per la chiave importata e un messaggio di successo.  

```
Command: importPrivateKey -f rsa2048.key -l rsa2048-imported -w 524299

BER encoded key length is 1216

Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

Private Key Unwrapped.  Key Handle: 524301

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

## Parameters
<a name="importPrivateKey-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-l`**  
Specifica un'etichetta definita dall'utente per la chiave privata.  
Obbligatorio: sì

**`-f`**  
Specifica il nome del file della chiave da importare.  
Obbligatorio: sì

**`-w`**  
Specifica l'handle di una chiave di wrapping. Questo parametro è obbligatorio. Per trovare le handle della chiave, utilizza il comando [**findKey**](key_mgmt_util-findKey.md).  
Per determinare se una chiave può essere utilizzata come chiave di wrapping, utilizzare [**getAttribute**](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_WRAP` (262). Per creare una chiave di wrapping, utilizza [**genSymKey**](key_mgmt_util-genSymKey.md) per creare una chiave AES (tipo 31).  
Se utilizzi il parametro `-wk` per specificare una chiave di unwrapping esterna, la chiave di wrapping `-w` viene utilizzata per eseguire il wrapping della chiave durante l'importazione, ma non per annullarlo.  
Obbligatorio: sì

**`-sess`**  
Specifica la chiave importata come una chiave di sessione.  
Impostazione predefinita: la chiave importata è detenuta come persistente (token) nel cluster.  
Obbligatorio: no

**`-id`**  
Specifica l'ID della chiave da importare.  
Impostazione predefinita: nessun valore ID.  
Obbligatorio: no

**`-m_value`**  
Specifica il numero di utenti che devono approvare le operazioni di cifratura che utilizzano la chiave importata. Inserire un valore da **0** a **8**.  
Questo parametro è valido soltanto quando il parametro `-u` nel comando condivide la chiave con un numero sufficiente di utenti per soddisfare il requisito `m_value`.  
Impostazione Predefinita: 0  
Obbligatorio: no

**`-min_srv`**  
Speciifica il numero minimo HSMs su cui la chiave importata viene sincronizzata prima della scadenza del valore del `-timeout` parametro. 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 il numero di secondi di attesa per la sincronizzazione della chiave HSMs quando il `min-serv` parametro è incluso. Se non viene specificato un numero, il processo prosegue a tempo indefinito.  
Impostazione predefinita: nessun limite  
Obbligatorio: no

**`-u`**  
Specifica l'elenco degli utenti con cui condividere la chiave privata importata. Questo parametro concede agli altri utenti di crittografia HSM (CUs) il permesso di utilizzare la chiave importata nelle operazioni crittografiche.  
Immettete un elenco separato da virgole di utenti HSM, ad esempio. IDs `-u 5,6` Non includere l'ID utente dell'HSM dell'utente attuale. [Per trovare l'utente HSM IDs di CUs sull'HSM, usa ListUsers.](key_mgmt_util-listUsers.md)  
Impostazione predefinita: soltanto l'utente attuale può utilizzare la chiave importata.  
Obbligatorio: no

**`-wk`**  
Specifica la chiave da utilizzare per eseguire il wrapping della chiave importata. Inserire il percorso e il nome di un file che contiene una chiave AES non crittografata.  
Quando si include questo parametro, **importPrivateKey** utilizza la chiave nel file `-wk` per eseguire il wrapping della chiave importata. Utilizza inoltre la chiave specificata dal parametro `-w` per annullare il wrapping.  
Impostazione predefinita: Utilizza il codice di wrapping specificato nel parametro `-w` per eseguire il wrapping e per annullarlo.  
Obbligatorio: no

**`-attest`**  
Esegue un controllo di attestazione sulla risposta firmware per assicurare che il firmware su cui viene eseguito il cluster non è stata compromesso.  
Obbligatorio: no

## Argomenti correlati
<a name="importPrivateKey-seealso"></a>
+ [wrapKey](key_mgmt_util-wrapKey.md)
+ [unWrapKey](key_mgmt_util-unwrapKey.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [exportPrivateKey](key_mgmt_util-exportPrivateKey.md)

# Importa una chiave pubblica usando AWS CloudHSM KMU
<a name="key_mgmt_util-importPubKey"></a>

Utilizzate il **importPubKey** comando in AWS CloudHSM key\$1mgmt\$1util per importare una chiave pubblica in formato PEM in un modulo di sicurezza hardware (HSM). È possibile utilizzarlo per importare le chiavi pubbliche generate al di fuori del HSM. È inoltre possibile utilizzare il comando per importare le chiavi esportate da HSM, ad esempio quelle esportate tramite il comando [exportPubKey](key_mgmt_util-exportPubKey.md).

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) a HSM come crypto user (CU).

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

```
importPubKey -h

importPubKey -l <label>
             -f <key-file>
             [-sess]
             [-id <key-id>]
             [min_srv <minimum-number-of-servers>]
             [-timeout <number-of-seconds>]
```

## Esempi
<a name="importPubKey-examples"></a>

Questo esempio illustra come utilizzare **importPubKey** per importare una chiave pubblica in un HSM.

**Example : Importa una chiave pubblica**  
Questo comando importa una chiave pubblica da un file con nome `public.pem` con l'etichetta `importedPublicKey`. Quando il comando viene completato, **importPubKey** restituisce un'handle per la chiave importata e un messaggio di successo.  

```
Command: importPubKey -l importedPublicKey -f public.pem

Cfm3CreatePublicKey returned: 0x00 : HSM Return: SUCCESS

Public Key Handle: 262230

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

## Parameters
<a name="importPubKey-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-l`**  
Specifica un'etichetta definita dall'utente per la chiave pubblica.  
Obbligatorio: sì

**`-f`**  
Specifica il nome del file della chiave da importare.  
Obbligatorio: sì

**`-sess`**  
Designa la chiave importata come una chiave di sessione.  
Impostazione predefinita: la chiave importata è detenuta come persistente (token) nel cluster.  
Obbligatorio: no

**`-id`**  
Specifica l'ID della chiave da importare.  
Impostazione predefinita: nessun valore ID.  
Obbligatorio: no

**`-min_srv`**  
Speciifica il numero minimo con cui la chiave importata viene HSMs 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 il numero di secondi di attesa per la sincronizzazione della chiave HSMs quando il `min-serv` parametro è incluso. Se non viene specificato un numero, il processo prosegue a tempo indefinito.  
Impostazione predefinita: nessun limite  
Obbligatorio: no

## Argomenti correlati
<a name="importPubKey-seealso"></a>
+ [exportPubKey](key_mgmt_util-exportPubKey.md)
+ [Genera Chiavi](generate-keys.md)

# Importa una chiave simmetrica in testo semplice usando KMU AWS CloudHSM
<a name="key_mgmt_util-imSymKey"></a>

Utilizzate il **imSymKey** comando dello strumento AWS CloudHSM key\$1mgmt\$1util per importare una copia in testo semplice di una chiave simmetrica da un file nel modulo di sicurezza hardware (HSM). È possibile utilizzarlo per importare le chiavi generate con qualsiasi metodo diverso dall'HSM e le chiavi che sono state esportate da un HSM, ad esempio le chiavi che il comando, scrive in un file. [exSymKey](key_mgmt_util-exSymKey.md) 

Durante il processo di importazione, **imSymKey** utilizza una chiave AES selezionata (la *chiave di wrapping*) per *effettuare il wrapping* (crittografare) e quindi *annullare il wrapping* (decodificare) della chiave da importare. Tuttavia, **imSymKey** funziona solo per i file che contengono le chiavi in testo non crittografato. Per esportare e importare chiavi crittografate, usa [[unWrapKey](key_mgmt_util-unwrapKey.md)WrapKey](key_mgmt_util-wrapKey.md) e i comandi. 

Inoltre, il comando **imSymKey** importa solo le chiavi simmetriche. Per importare le chiavi pubbliche, utilizzare [importPubKey](key_mgmt_util-importPubKey.md). Per importare chiavi private, usa [importPrivateKey](key_mgmt_util-importPrivateKey.md)o [wrapKey](key_mgmt_util-wrapKey.md). 

**Nota**  
Non è possibile importare una chiave PEM protetta da password utilizzando una chiave simmetrica o privata.

Le chiavi importate funzionano in modo molto smile alle chiavi generate nell'HSM. Tuttavia, il valore dell'[attributo OBJ\$1ATTR\$1LOCAL](key-attribute-table.md) è pari a zero, a indicare che non è stato generato a livello locale. È possibile utilizzare il comando seguente per condividere una chiave simmetrica durante l'importazione. È possibile utilizzare il comando `shareKey` in [cloudhsm\$1mgmt\$1util](cloudhsm_mgmt_util.md) per condividere la chiave dopo l'importazione. 

```
imSymKey -l aesShared -t 31 -f kms.key -w 3296 -u 5
```

Dopo l'importazione di una chiave, assicurarsi 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="imSymKey-syntax"></a>

```
imSymKey -h

imSymKey -f <key-file>
         -w <wrapping-key-handle>  
         -t <key-type>
         -l <label>
         [-id <key-ID>]
         [-sess]
         [-wk <wrapping-key-file> ]
         [-attest]
         [-min_srv <minimum-number-of-servers>]
         [-timeout <number-of-seconds> ]
         [-u <user-ids>]
```

## Esempi
<a name="imSymKey-examples"></a>

Questi esempi mostrano come **imSymKey** importare chiavi simmetriche nel tuo. HSMs

**Example : importazione di una chiave simmetrica AES**  
Questo esempio utilizza **imSymKey** per importare una chiave simmetrica AES in. HSMs   
Il primo comando utilizza OpenSSL per generare una chiave simmetrica AES a 256 bit casuale. Memorizza la chiave nel file `aes256.key`.  

```
$  openssl rand -out aes256.key 32
```
Il secondo comando consente **imSymKey** di importare la chiave AES dal `aes256.key` file in. HSMs Utilizza la chiave 20, una chiave AES nell'HSM, come chiave di wrapping e specifica un'etichetta di `imported`. A differenza dell'ID, l'etichetta non deve essere univoca nel cluster. Il valore del parametro (tipo) `-t` è `31`, che rappresenta AES.   
L'output indica che la chiave nel file è stata sottoposta a wrapping e all'annullamento del wrapping, quindi importata nell'HSM, dove le è stato assegnato l'handle 262180.  

```
Command:  imSymKey -f aes256.key -w 20 -t 31 -l imported

        Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Unwrapped.  Key Handle: 262180

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
```
Il comando successivo utilizza [getAttribute](key_mgmt_util-getAttribute.md) per ottenere l'attributo OBJ\$1ATTR\$1LOCAL ([attributo 355](key-attribute-table.md)) della chiave appena importata e lo scrive sul file `attr_262180`.  

```
Command:  getAttribute -o 262180 -a 355 -out attributes/attr_262180
Attributes dumped into attributes/attr_262180_imported file

        Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS
```
Quando si analizza il file degli attributi, è possibile verificare che il valore dell'attributo `OBJ_ATTR_LOCAL` è zero, il che indica che il materiale chiave non è stato generato nell'HSM.   

```
$  cat attributes/attr_262180_local
OBJ_ATTR_LOCAL
0x00000000
```

**Example : spostamento di una chiave simmetrica tra cluster**  
Questo esempio illustra come utilizzare [exSymKey](key_mgmt_util-exSymKey.md) e **imSymKey** per spostare una chiave AES non crittografata tra i cluster. È possibile utilizzare un processo come questo per creare un wrapping AES esistente su HSMs entrambi i cluster. Una volta inserita la chiave di wrapping condivisa, è possibile utilizzare [WrapKey [unWrapKey](key_mgmt_util-unwrapKey.md)](key_mgmt_util-wrapKey.md)e spostare le chiavi crittografate tra i cluster.  
L'utente CU che esegue questa operazione deve disporre dell'autorizzazione per accedere a entrambi i cluster. HSMs   
Il primo comando utilizza [exSymKey](key_mgmt_util-exSymKey.md) per esportare la chiave 14, una chiave AES a 32 bit, dal cluster 1 al file `aes.key`. Utilizza la chiave 6, una chiave AES HSMs nel cluster 1, come chiave di wrapping.   

```
Command: exSymKey -k 14 -w 6 -out aes.key

        Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS


Wrapped Symmetric Key written to file "aes.key"
```
L'utente accede quindi a key\$1mgmt\$1util nel cluster 2 ed esegue un **imSymKey** comando per importare la chiave nel file nel cluster 2. `aes.key` HSMs Questo comando utilizza la chiave 252152, una chiave AES nel cluster 2, come chiave di wrapping. HSMs   
Poiché le chiavi di wrapping utilizzate da [exSymKey](key_mgmt_util-exSymKey.md) e **imSymKey** eseguono il wrapping e immediatamente annullano il wrapping delle chiavi di destinazione, le chiavi di wrapping su cluster diversi non devono essere le stesse.   
L'output indica che la chiave è stata importata nel cluster 2 e che le è stato assegnato un handle di 21.   

```
Command:  imSymKey -f aes.key -w 262152 -t 31 -l xcluster

        Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Unwrapped.  Key Handle: 21

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
```
Per dimostrare che la chiave 14 del cluster 1 e la chiave 21 del cluster 2 hanno lo stesso materiale chiave, ottieni il valore di controllo della chiave (KCV) di ciascuna chiave. Se i valori KCV sono gli stessi, il materiale chiave è lo stesso.  
Il comando seguente utilizza [getAttribute](key_mgmt_util-getAttribute.md) nel cluster 1 per scrivere il valore dell'attributo KCV (attributo 371) della chiave 14 sul file `attr_14_kcv`. Poi, utilizza un comando **cat** per ottenere il contenuto del file `attr_14_kcv`.  

```
Command:  getAttribute -o 14 -a 371 -out attr_14_kcv
Attributes dumped into attr_14_kcv file

$  cat attr_14_kcv
OBJ_ATTR_KCV
0xc33cbd
```
Questo comando simile utilizza [getAttribute](key_mgmt_util-getAttribute.md) nel cluster 2 per scrivere il valore dell'attributo KCV (attributo 371) della chiave 21 sul file `attr_21_kcv`. Poi, utilizza un comando **cat** per ottenere il contenuto del file `attr_21_kcv`.  

```
Command:  getAttribute -o 21 -a 371 -out attr_21_kcv
Attributes dumped into attr_21_kcv file

$  cat attr_21_kcv
OBJ_ATTR_KCV
0xc33cbd
```
L'output indica che i valori KCV delle due chiavi sono gli stessi, il che dimostra che il materiale chiave è lo stesso.  
Poiché lo stesso materiale chiave esiste in entrambi i cluster, ora è possibile condividere le chiavi crittografate tra i cluster senza mai esporre la chiave in chiaro. HSMs Ad esempio, è possibile utilizzare il comando `wrapKey` con la chiave di wrapping 14 per esportare una chiave crittografata dal cluster 1 e quindi utilizzare `unWrapKey` con la chiave di wrapping 21 per importare la chiave crittografata nel cluster 2.

**Example : importazione di una chiave di sessione**  
Questo comando utilizza i parametri `-sess` di **imSymKey** per importare una chiave Triple DES a 192 bit valida solo per la sessione corrente.   
Il comando utilizza il parametro `-f` per specificare il file che contiene la chiave da importare, il parametro `-t` per specificare il tipo di chiave e il parametro `-w` per specificare la chiave di wrapping. Utilizza il parametro `-l` per specificare un'etichetta che qualifichi la chiave e il parametro `-id` per creare un identificatore intuitivo, ma univoco per la chiave. Viene inoltre utilizzato il parametro `-attest` per verificare il firmware che importa la chiave.   
L'output indica che la chiave è stata sottoposta a wrapping e all'annullamento del wrapping, importata nell'HSM e che le è stato assegnato l'handle di 37. Inoltre, il controllo di attestazione ha avuto esito positivo, il che indica che il firmware non è stato danneggiato.  

```
Command:  imSymKey -f 3des192.key -w 6 -t 21 -l temp -id test01 -sess -attest

        Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

        Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Unwrapped.  Key Handle: 37

        Attestation Check : [PASS]

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Quindi, è possibile utilizzare i comandi [getAttribute](key_mgmt_util-getAttribute.md) o [findKey](key_mgmt_util-findKey.md) per verificare gli attributi della chiave appena importata. Il comando seguente utilizza **findKey** per verificare che la chiave 37 disponga del tipo, dell'etichetta e dell'ID specificati dal comando e che sia una chiave di sessione. Come illustrato alla riga 5 dell'output, **findKey** indica che l'unica chiave corrispondente a tutti gli attributi è la chiave 37.   

```
Command:  findKey -t 21 -l temp -id test01 -sess 1
Total number of keys present 1

 number of keys matched from start index 0::0
37

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

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

**-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

**-f**  
Specifica il file che contiene la chiave da importare.  
Il file deve contenere una copia in testo semplice di una chiave AES o Triple DES della lunghezza specificata. RC4 e le chiavi DES non sono valide in modalità FIPS. HSMs  
+ **AES**: 16, 24 o 32 byte
+ **Triple DES (3DES)**: 24 byte
Obbligatorio: sì

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

**-id**  
Specifica un identificatore definito dall'utente per la chiave. Digita una stringa univoca nel cluster. L'impostazione predefinita è una stringa vuota.   
Impostazione predefinita: nessun valore ID.  
Obbligatorio: no

**-l**  
Specifica un'etichetta definita dall'utente per la chiave. Digita una stringa.  
Puoi usare qualsiasi frase che ti aiuti a identificare la chiave. Poiché l'etichetta non deve essere necessariamente univoca, è possibile utilizzarla per raggruppare e classificare le chiavi.   
Obbligatorio: sì

**-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

**-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

**-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

**-t**  
Specifica il tipo di chiave simmetrica. Inserisci la costante che rappresenta il tipo di chiave. Ad esempio, per creare una chiave AES, immetti `-t 31`.  
Valori validi:   
+ 21: [Triple DES (3DES)](https://en.wikipedia.org/wiki/Triple_DES).
+ 31: [AES](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)
Obbligatorio: sì

**-u**  
Condivide la chiave importata con utenti specificati. Questo parametro fornisce agli altri utenti crittografici HSM (CUs) il permesso di utilizzare questa chiave nelle operazioni crittografiche.   
Digita un ID o un elenco separato da virgole di utenti HSM, ad esempio -u. IDs `5,6` Non includere l'ID utente dell'HSM dell'utente attuale. Per trovare l'ID, è possibile utilizzare il comando [listUsers](https://docs.aws.amazon.com/cloudhsm/latest/userguide/cloudhsm_mgmt_util-listUsers.html) nello strumento a riga di comando cloudhsm\$1mgmt\$1util o il comando [listUsers](https://docs.aws.amazon.com/cloudhsm/latest/userguide/key_mgmt_util-listUsers.html) nello strumento a riga di comando key\$1mgmt\$1util.   
Obbligatorio: no

**-w**  
Specifica l'handle di una chiave di wrapping. Questo parametro è obbligatorio. Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-findKey.md).  
Una *chiave di wrapping* è una chiave nell'HSM che viene utilizzata per crittografare ("eseguire il wrapping") e quindi decodificare ("annullare il wrapping) la chiave durante il processo di importazione. Solo le chiavi AES possono essere utilizzate come chiavi di wrapping.  
Puoi usare qualsiasi chiave AES (di qualsiasi dimensione) come chiave di wrapping. Poiché la chiave di wrapping effettua e quindi annulla immediatamente il wrapping della chiave di destinazione, puoi utilizzare una chiave AES valida solo per la sessione come chiave di wrapping. Per determinare se una chiave può essere utilizzata come una chiave di wrapping, utilizza [getAttribute](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_WRAP` (262). Per creare una chiave di wrapping, utilizza [genSymKey](key_mgmt_util-genSymKey.md) per creare una chiave AES (tipo 31).  
Se si utilizza il parametro `-wk` per specificare una chiave di wrapping esterna, la chiave di wrapping `-w` viene utilizzata per annullare il wrapping della chiave importata, ma non per eseguirlo.  
La chiave 4 è una chiave interna non supportata. Ti consigliamo di utilizzare una chiave AES che crei e gestisci come chiave di wrapping.
Obbligatorio: sì

**-wk**  
Utilizza la chiave AES nel file specificato per eseguire il wrapping della chiave importata. Inserire il percorso e il nome di un file che contiene una chiave AES non crittografata.   
Quando includi questo parametro. **imSymKey** utilizza la chiave nel file `-wk` per eseguire il wrapping della chiave importata e utilizza la chiave nell'HSM specificato dal parametro `-w` per annullarne il wrapping. I valori di parametro `-w` e `-wk` devono determinare la stessa chiave non crittografata.  
Impostazione predefinita: utilizzo della chiave di wrapping sull'HSM per annullare il wrapping.  
Obbligatorio: no

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

# Inserisci un oggetto mascherato usando AWS CloudHSM KMU
<a name="key_mgmt_util-insertMaskedObject"></a>

Utilizzate il **insertMaskedObject** comando in AWS CloudHSM key\$1mgmt\$1util per inserire un oggetto mascherato da un file in un modulo di sicurezza hardware (HSM) designato. Gli oggetti nascosti sono *oggetti* clonati estratti da un HSM utilizzando il comando [**extractMaskedObject**](key_mgmt_util-extractMaskedObject.md). Possono essere utilizzati solo dopo averli inseriti nel cluster originale. È possibile inserire solo un oggetto mascherato nello stesso cluster da cui è stato generato, o un clone dello stesso cluster. Questo include qualsiasi versione clonata del cluster originale generata dalla [copia di un backup tra le regioni](copy-backup-to-region.md) e [utilizzando tale backup per creare un nuovo cluster](create-cluster-from-backup.md).

Gli oggetti mascherati sono un modo efficiente per scaricare e sincronizzare le chiavi, incluse cui le chiavi nonestraibili (ovvero chiavi che hanno un valore [`OBJ_ATTR_EXTRACTABLE`](key-attribute-table.md) di `0`). [In questo modo, le chiavi possono essere sincronizzate in modo sicuro tra cluster correlati in diverse regioni senza la necessità di aggiornare il file di configurazione. AWS CloudHSM](configure-tool.md)

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) a HSM come crypto user (CU).

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

```
insertMaskedObject -h

insertMaskedObject -f <filename>
                   [-min_srv <minimum-number-of-servers>]
                   [-timeout <number-of-seconds>]
```

## Esempi
<a name="insertMaskedObject-examples"></a>

Questo esempio illustra come utilizzare **insertMaskedObject** per inserire un file oggetto nascosto in un HSM.

**Example : Insert a masked object**  
Questo comando inserisce un oggetto nascosto in un HSM da un file denominato `maskedObj`. Quando il comando viene completato, **insertMaskedObject** restituisce un'handle della chiave per la chiave decrittografata dall'oggetto nascosto e un messaggio di successo.  

```
Command: insertMaskedObject -f maskedObj

Cfm3InsertMaskedObject returned: 0x00 : HSM Return: SUCCESS
        New Key Handle: 262433

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

## Parameters
<a name="insertMaskedObject-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-f`**  
Specifica il nome del file dell'oggetto nascosto da inserire.  
Obbligatorio: sì

**`-min_srv`**  
Specifica il numero minimo di server su cui l'oggetto nascosto inserito è sincronizzato prima che il valore del parametro `-timeout` scada. Se l'oggetto non è sincronizzato sul numero di server specificato nel tempo allocato, non viene inserito.  
Impostazione predefinita: 1  
Obbligatorio: no

**`-timeout`**  
Specifica il numero di secondi di attesa per la sincronizzazione della chiave tra i server quando viene incluso il parametro `min-serv`. Se non viene specificato un numero, il processo prosegue a tempo indefinito.  
Impostazione predefinita: nessun limite  
Obbligatorio: no

## Argomenti correlati
<a name="insertMaskedObject-seealso"></a>
+ [extractMaskedObject](key_mgmt_util-extractMaskedObject.md)
+ [syncKey](cloudhsm_mgmt_util-syncKey.md)
+ [Copiare un backup tra regioni](copy-backup-to-region.md)
+ [Creazione di un AWS CloudHSM cluster da un backup precedente](create-cluster-from-backup.md)

# Convalida il file chiave utilizzando AWS CloudHSM KMU
<a name="key_mgmt_util-IsValidKeyHandlefile"></a>

Usa il **IsValidKeyHandlefile** comando in AWS CloudHSM key\$1mgmt\$1util per scoprire se un file di chiave contiene una vera chiave privata o una falsa chiave RSA PEM. Un file PEM falso non contiene il materiale della chiave privata, ma i riferimenti alla chiave privata nell'HSM. Tale file può essere utilizzato per stabilire l'offload dal tuo server web a. SSL/TLS AWS CloudHSM Per ulteriori informazioni, consulta [SSL/TLS Offload su Linux con Tomcat o SSL/TLS Offload su Linux con](third-offload-linux-jsse.md) [NGINX o Apache](third-offload-linux-openssl.md).

**Nota**  
**IsValidKeyHandlefile**funziona solo con le chiavi RSA.

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) a HSM come crypto user (CU).

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

```
IsValidKeyHandlefile -h

IsValidKeyHandlefile -f <rsa-private-key-file>
```

## Esempi
<a name="IsValidKeyHandlefile-examples"></a>

Questi esempi mostrano come utilizzare **IsValidKeyHandlefile** per stabilire se un determinato file chiave contiene il materiale di chiavi reali o il materiale di chiavi PEM false.

**Example : Convalida una vera chiave privata**  
Questo comando conferma che il file chiamato `privateKey.pem` contiene materiale di chiavi reali.  

```
Command: IsValidKeyHandlefile -f privateKey.pem

Input key file has real private key
```

**Example : Invalida una chiave PEM falsa**  
Questo comando conferma che il file chiamato `caviumKey.pem` contiene materiale di chiavi PEM false ottenuto dall'handle della chiave `15`.  

```
Command: IsValidKeyHandlefile -f caviumKey.pem
            
Input file has invalid key handle: 15
```

## Parameters
<a name="IsValidKeyHandlefile-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-h`**  
Visualizza il testo di aiuto per il comando.  
Obbligatorio: sì

**`-f`**  
Speciifica il file di chiave privata RSA da verificare per verificare la presenza di materiale chiave valido.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="IsValidKeyHandlefile-seealso"></a>
+ [getCaviumPrivChiave](key_mgmt_util-getCaviumPrivKey.md)
+ [SSL/TLS Offload su Linux utilizzando Tomcat](third-offload-linux-jsse.md) 
+ [SSL/TLS Offload su Linux utilizzando NGINX o Apache](third-offload-linux-openssl.md)

# Elenca gli attributi di una AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-listAttributes"></a>

Utilizzate il **listAttributes** comando in AWS CloudHSM key\$1mgmt\$1util per elencare gli attributi di una chiave e le costanti che li rappresentano. AWS CloudHSM Puoi utilizzare queste costanti per identificare gli attributi nei comandi [getAttribute](key_mgmt_util-getAttribute.md) e [setAttribute](key_mgmt_util-setAttribute.md). Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).

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) a HSM come crypto user (CU). 

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

Questo comando non ha parametri.

```
listAttributes
```

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

Questo comando elenca gli attributi della chiave che puoi ottenere e modificare in key\$1mgmt\$1util e le costanti che li rappresentano. Per informazioni sull'interpretazione degli attributi delle chiavi, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md). 

Per rappresentare tutti gli attributi nel comando [getAttribute](key_mgmt_util-getAttribute.md) di key\$1mgmt\$1util, utilizza `512`.

```
Command: listAttributes

Following are the possible attribute values for getAttributes:

      OBJ_ATTR_CLASS                  = 0
      OBJ_ATTR_TOKEN                  = 1
      OBJ_ATTR_PRIVATE                = 2
      OBJ_ATTR_LABEL                  = 3
      OBJ_ATTR_KEY_TYPE               = 256
      OBJ_ATTR_ENCRYPT                = 260
      OBJ_ATTR_DECRYPT                = 261
      OBJ_ATTR_WRAP                   = 262
      OBJ_ATTR_UNWRAP                 = 263
      OBJ_ATTR_SIGN                   = 264
      OBJ_ATTR_VERIFY                 = 266
      OBJ_ATTR_LOCAL                  = 355
      OBJ_ATTR_MODULUS                = 288
      OBJ_ATTR_MODULUS_BITS           = 289
      OBJ_ATTR_PUBLIC_EXPONENT        = 290
      OBJ_ATTR_VALUE_LEN              = 353
      OBJ_ATTR_EXTRACTABLE            = 354
      OBJ_ATTR_KCV                    = 371
```

## Argomenti correlati
<a name="listAttributes-seealso"></a>
+ [listAttributes](cloudhsm_mgmt_util-listAttributes.md) in cloudhsm\$1mgmt\$1util
+ [OttieniAttributo](key_mgmt_util-getAttribute.md)
+ [setAttribute](key_mgmt_util-setAttribute.md)
+ [Riferimento per l'attributo della chiave](key-attribute-table.md)

# Elenca tutti AWS CloudHSM gli utenti che utilizzano KMU
<a name="key_mgmt_util-listUsers"></a>

Utilizzate il **listUsers** comando in AWS CloudHSM key\$1mgmt\$1util per inserire gli utenti nei moduli di sicurezza hardware (HSM), insieme al tipo di utente e ad altri attributi.

In key\$1mgmt\$1util, ListUsers restituisce un output che rappresenta HSMs tutto il cluster, anche se non è coerente. Per ottenere informazioni sugli utenti in ciascun HSM, utilizza il comando [listUsers ](#key_mgmt_util-listUsers) in cloudhsm\$1mgmt\$1util.

I comandi utente in key\$1mgmt\$1util **listUsers** e [getKeyInfo](key_mgmt_util-getKeyInfo.md), sono comandi di sola lettura che crypto users () sono autorizzati a eseguire. CUs Gli altri comandi di gestione utenti fanno parte di cloudhsm\$1mgmt\$1util. Vengono eseguiti da crypto officer (CO) che dispongono di autorizzazioni di gestione degli utenti.

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="listUsers-syntax"></a>

```
listUsers 

listUsers -h
```

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

Questo comando elenca gli utenti del cluster e i relativi attributi. HSMs È possibile utilizzare l'`User ID`attributo per identificare gli utenti in altri comandi, ad esempio [findKey](key_mgmt_util-findKey.md)[,](key_mgmt_util-getAttribute.md) getAttribute e. [getKeyInfo](key_mgmt_util-getKeyInfo.md)

```
Command:  listUsers

        Number Of Users found 4

        Index       User ID     User Type       User Name           MofnPubKey    LoginFailureCnt         2FA
        1                1      PCO             admin                     NO               0               NO
        2                2      AU              app_user                  NO               0               NO
        3                3      CU              alice                     YES              0               NO
        4                4      CU              bob                       NO               0               NO
        5                5      CU              trent                     YES              0               NO

        Cfm3ListUsers returned: 0x00 : HSM Return: SUCCESS
```

L'output include i seguenti attributi degli utenti:
+ **ID utente**: identifica l'utente nei comandi key\$1mgmt\$1util e [cloudhsm\$1mgmt\$1util](cloudhsm_mgmt_util.md).
+ [Tipo utente](understanding-users-cmu.md): stabilisce quali operazioni può eseguire l'utente sull'HSM.
+ **Nome utente**: visualizza il nome intuitivo definito dall'utente.
+ **MofnPubKey**: indica se l'utente ha registrato una coppia di chiavi per la firma dei token di [autenticazione del quorum](quorum-authentication.md).
+ **LoginFailureCnt**: indica il numero di volte in cui l'utente ha effettuato l'accesso senza successo. 
+ **2FA**: indica che l'utente ha abilitato l'autenticazione a più fattori. 

## Parameters
<a name="listUsers-parameters"></a>

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

## Argomenti correlati
<a name="listUsers-seealso"></a>
+ [listUsers](#key_mgmt_util-listUsers) su cloudhsm\$1mgmt\$1util
+ [findKey](key_mgmt_util-findKey.md)
+ [getAttribute](key_mgmt_util-getAttribute.md)
+ [getKeyInfo](key_mgmt_util-getKeyInfo.md)

# Accedere e disconnettersi da un HSM utilizzando KMU AWS CloudHSM
<a name="key_mgmt_util-loginHSM"></a>

Utilizzate i **logoutHSM** comandi **loginHSM** and in AWS CloudHSM key\$1mgmt\$1util per accedere e disconnettervi dai moduli di sicurezza hardware (HSM) in un cluster. Una volta effettuato l'accesso a HSMs, è possibile utilizzare key\$1mgmt\$1util per eseguire una serie di operazioni di gestione delle chiavi, tra cui la generazione, la sincronizzazione e il wrapping di chiavi pubbliche e private.

Prima di eseguire qualsiasi comando key\$1mgmt\$1util, devi [avviare key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start). [Per gestire le chiavi con key\$1mgmt\$1util, devi accedere come utente crittografico (CU). HSMs ](understanding-users-cmu.md#crypto-user-cmu)

**Nota**  
Se superi cinque tentativi di accesso errati, il tuo account viene bloccato. Se il cluster è stato creato prima di febbraio 2018, l'account viene bloccato dopo 20 tentativi di accesso errati. Per sbloccare l'account, un responsabile della crittografia (CO) deve reimpostare la password utilizzando il comando [ModificaPswd](cloudhsm_mgmt_util-changePswd.md) in cloudhsm\$1mgmt\$1util.  
Se disponi di più HSM nel cluster, potresti avere consentiti più tentativi di accesso errati prima che l'account venga bloccato. Questo perché il client CloudHSM bilancia il carico tra diversi. HSMs Pertanto, il tentativo di accesso potrebbe non iniziare sullo stesso HSM ogni volta. Se stai testando questa funzionalità, ti consigliamo di farlo su un cluster con un solo HSM attivo. 

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

```
loginHSM -h

loginHSM -u <user type>
         { -p | -hpswd } <password>
         -s <username>
```

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

Questo esempio mostra come accedere e disconnettersi da un cluster con i HSMs `loginHSM` comandi and. `logoutHSM`

**Example : Accedere a HSMs**  
Questo comando consente di accedere HSMs come utente crittografico (`CU`) con nome utente `example_user` e password`aws`. L'output mostra che hai effettuato l'accesso HSMs a tutti gli utenti del cluster.  

```
Command:  loginHSM -u CU -s example_user -p aws

Cfm3LoginHSM returned: 0x00 : HSM Return: SUCCESS
    
Cluster Status
Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
```

**Example : accedi con una password nascosta**  
Questo comando è lo stesso dell'esempio precedente, tranne che questa volta si specifica che il sistema deve nascondere la password.  

```
Command:  loginHSM -u CU -s example_user -hpswd
```
Il sistema ti invita a inserire la tua password. Si immette la password, il sistema la nasconde e l'output mostra che il comando ha avuto successo e che ci si è connessi al. HSMs  

```
Enter password: 

Cfm3LoginHSM returned: 0x00 : HSM Return: SUCCESS
    
Cluster Status
Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
Node id 2 and err state 0x00000000 : HSM Return: SUCCESS

Command:
```

**Example : Esci dal HSMs**  
Questo comando consente di disconnettersi da. HSMs L'output mostra che l'utente si è disconnesso da tutti gli utenti del HSMs cluster.  

```
Command: logoutHSM

Cfm3LogoutHSM returned: 0x00 : HSM Return: SUCCESS
    
Cluster Status
Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
```

## Parameters
<a name="loginHSM-parameters"></a>

**-h**  
Mostra aiuto per questo comando.

**-u**  
Specifica il tipo di utente di accesso. Per utilizzare key\$1mgmt\$1util, è necessario accedere come CU.  
Obbligatorio: sì

**-s**  
Specifica il nome utente di accesso.  
Obbligatorio: sì

**\$1-p \$1 -hpswd\$1**  
Specificare la password di accesso con `-p`. La password viene visualizzata in testo normale quando la digiti. Per nascondere la password, utilizza il parametro opzionale `-hpswd` piuttosto di `-p` e segui le istruzioni.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="loginHSM-seealso"></a>
+ [Esci](key_mgmt_util-exit.md)

# Imposta gli attributi delle AWS CloudHSM chiavi usando KMU
<a name="key_mgmt_util-setAttribute"></a>

Utilizzate il **setAttribute** comando in AWS CloudHSM key\$1mgmt\$1util per convertire una chiave valida solo nella sessione corrente in una chiave persistente che esiste fino a quando non la eliminate. L'operazione viene effettuata modificando il valore dell'attributo token della chiave (`OBJ_ATTR_TOKEN`) da falso (`0`) a vero (`1`). Puoi modificare solo gli attributi di chiavi di tua proprietà.

Inoltre, puoi utilizzare il comando **setAttribute** in cloudhsm\$1mgmt\$1util per modificare l'etichetta, eseguire e annullare il wrapping e crittografare e decodificare gli attributi.

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

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

```
setAttribute -h 

setAttribute -o <object handle> 
             -a 1
```

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

Questo esempio mostra come convertire una chiave di sessione in una chiave persistente. 

Il primo comando utilizza il `-sess` parametro di [genSymKey](key_mgmt_util-genSymKey.md)per creare una chiave AES a 192 bit valida solo nella sessione corrente. L'output indica che l'handle della nuova chiave di sessione è `262154`.

```
Command: genSymKey -t 31 -s 24 -l tmpAES -sess
      
        Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS

        Symmetric Key Created.  Key Handle: 262154

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

Questo comando utilizza [findKey](key_mgmt_util-findKey.md) per trovare le chiavi di sessione nella sessione corrente. L'output conferma che la chiave `262154` è una chiave di sessione.

```
Command:  findKey -sess 1

Total number of keys present 1

 number of keys matched from start index 0::0
262154

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

Questo comando utilizza **setAttribute** per convertire la chiave `262154` da una chiave di sessione a una chiave persistente. Per farlo, modifica il valore dell'attributo token della chiave (`OBJ_ATTR_TOKEN`) da `0` (falso) a `1` (vero). Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).

Il comando utilizza il parametro `-o` per specificare l'handle della chiave (`262154`) e il parametro `-a` per specificare la costante che rappresenta l'attributo token (`1`). Quando si esegue il comando, viene richiesto un valore per l'attributo token. L'unico valore valido è `1` (vero): il valore per una chiave persistente.

```
Command: setAttribute -o 262154 -a 1
         This attribute is defined as a boolean value.
          Enter the boolean attribute value (0 or 1):1

        Cfm3SetAttribute returned: 0x00 : HSM Return: SUCCESS

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

Per confermare che la chiave `262154` è ora persistente, questo comando utilizza **findKey** per cercare le chiavi di sessione (`-sess 1`) e le chiavi persistenti (`-sess 0`). Questa volta, il comando non trova alcuna chiave di sessione, ma restituisce `262154` nell'elenco delle chiavi persistenti.

```
Command: findKey -sess 1

Total number of keys present 0

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS



Command: findKey -sess 0

Total number of keys present 5

 number of keys matched from start index 0::4
6, 7, 524296, 9, 262154

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

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

## Parameters
<a name="setAttribute-parameters"></a>

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

**-o**  
Specifica l'handle della chiave di destinazione. È possibile specificare una sola chiave in ogni comando. Per individuare l'handle di una chiave, utilizza [findKey](key_mgmt_util-findKey.md).  
Obbligatorio: sì

**-a**  
Specifica la costante che rappresenta l'attributo da modificare. L'unico valore valido è `1`, che rappresenta l'attributo token, `OBJ_ATTR_TOKEN`.  
Per ottenere gli attributi e i valori interi, utilizza [listAttributes](key_mgmt_util-listAttributes.md).  
Campo obbligatorio: sì

## Argomenti correlati
<a name="setAttribute-seealso"></a>
+ [setAttribute](cloudhsm_mgmt_util-setAttribute.md) in cloudhsm\$1mgmt\$1util
+ [getAttribute](key_mgmt_util-getAttribute.md)
+ [listAttributes](key_mgmt_util-listAttributes.md)
+ [Riferimento per l'attributo della chiave](key-attribute-table.md)

# Genera una firma usando AWS CloudHSM KMU
<a name="key_mgmt_util-sign"></a>

Utilizzate il **sign** comando in AWS CloudHSM key\$1mgmt\$1util per utilizzare una chiave privata scelta per generare una firma per un file.

Per utilizzare **sign**, è necessario disporre innanzitutto di una chiave privata nell'HSM. È possibile generare una chiave privata con i comandi **[genSymKey](key_mgmt_util-genSymKey.md)**, **[genRSAKeyPair](key_mgmt_util-genRSAKeyPair.md)** o **[genECCKeyPair](key_mgmt_util-genECCKeyPair.md)**. È anche possibile importarne uno con il comando **[importPrivateKey](key_mgmt_util-importPrivateKey.md)**. Per ulteriori informazioni, vedi [Generare chiavi](generate-keys.md).

Il comando **sign** utilizza un meccanismo di firma designato dall'utente, rappresentato da un numero intero, per firmare un file di messaggio. Per un elenco dei possibili meccanismi di firma, vedi [Parametri](#sign-parameters).

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="sign-syntax"></a>

```
sign -h

sign -f <file name>
     -k <private key handle>
     -m <signature mechanism>
     -out <signed file name>
```

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

Questo esempio illustra come utilizzare **sign** per firmare un file.

**Example : firma un file**  
Questo comando firma un file denominato `messageFile` con una chiave privata con handle `266309`. Utilizza il meccanismo di firma `SHA256_RSA_PKCS` (`1`) e salva il file firmato risultante come `signedFile`.  

```
Command: sign -f messageFile -k 266309 -m 1 -out signedFile

Cfm3Sign returned: 0x00 : HSM Return: SUCCESS

signature is written to file signedFile

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

## Parameters
<a name="sign-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-f`**  
Nome del file da firmare.  
Obbligatorio: sì

**`-k`**  
L'handle della chiave privata da utilizzare per la firma.  
Obbligatorio: sì

**`-m`**  
Numero intero che rappresenta il meccanismo di firma da utilizzare per la firma. I possibili meccanismi corrispondono ai seguenti numeri interi:      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/key_mgmt_util-sign.html)
Obbligatorio: sì

**`-out`**  
Il nome del file in cui viene salvato il file firmato.  
Campo obbligatorio: sì

## Argomenti correlati
<a name="sign-seealso"></a>
+ [Verifica](key_mgmt_util-verify.md)
+ [importPrivateKey](key_mgmt_util-importPrivateKey.md)
+ [Gen. Pair RSAKey](key_mgmt_util-genRSAKeyPair.md)
+ [ECCKeycoppia di generi](key_mgmt_util-genECCKeyPair.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [Genera Chiavi](generate-keys.md)

# 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)

# Verifica la firma di un file utilizzando AWS CloudHSM KMU
<a name="key_mgmt_util-verify"></a>

Utilizzate il **verify** comando in AWS CloudHSM key\$1mgmt\$1util per confermare se un file è stato firmato o meno con una determinata chiave. Per farlo, il comando **verify** confronta un file firmato rispetto a un file di origine e analizza se sono correlati a livello di crittografia in base a un determinato meccanismo di firma e a una chiave pubblica. I file possono essere registrati con l'operazione. AWS CloudHSM **[sign](key_mgmt_util-sign.md)**

I meccanismi di firma sono rappresentati dai numeri interi elencati nella sezione [parametri](#verify-parameters).

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="verify-syntax"></a>

```
verify -h

verify -f <message-file>
       -s <signature-file>
       -k <public-key-handle>
       -m <signature-mechanism>
```

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

Questi esempi mostrano come utilizzare **verify** per controllare se una determinata chiave pubblica è stato utilizzata per firmare un determinato file.

**Example : verifica della firma di un file**  
Questo comando tenta di verificare se un file denominato `hardwarCert.crt` è stato firmato dalla chiave pubblica `262276` tramite il meccanismo di firma `SHA256_RSA_PKCS` per produrre il file firmato `hardwareCertSigned`. Poiché i parametri dati rappresentano una vera e propria relazione di firma, il comando restituisce un messaggio di successo.  

```
Command: verify -f hardwareCert.crt -s hardwareCertSigned -k 262276 -m 1

Signature verification successful

Cfm3Verify returned: 0x00 : HSM Return: SUCCESS
```

**Example : Dimostrare un rapporto di firma falso**  
Questo comando verifica se un file denominato `hardwareCert.crt` è stato firmato dalla chiave pubblica `262276` tramite il meccanismo di firma `SHA256_RSA_PKCS` per produrre il file firmato `userCertSigned`. Poiché i parametri dati non rappresentano una vera e propria relazione di firma, il comando restituisce un messaggio di errore.  

```
Command: verify -f hardwarecert.crt -s usercertsigned -k 262276 -m 1
Cfm3Verify returned: 0x1b

CSP Error: ERR_BAD_PKCS_DATA
```

## Parameters
<a name="verify-parameters"></a>

Questo comando accetta i parametri seguenti.

**`-f`**  
Il nome del file di messaggio originale.  
Obbligatorio: sì

**`-s`**  
Il nome del file firmato.  
Campo obbligatorio: sì

**`-k`**  
L'handle della chiave pubblica che si pensa sia stata utilizzata per firmare il file.  
Obbligatorio: sì

**`-m`**  
Numero intero che rappresenta il meccanismo di firma suggerito utilizzato per firmare il file. I possibili meccanismi corrispondono ai seguenti numeri interi:      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/key_mgmt_util-verify.html)
Campo obbligatorio: sì

## Argomenti correlati
<a name="verify-seealso"></a>
+ [Firma](key_mgmt_util-sign.md)
+ [getCert](key_mgmt_util-genECCKeyPair.md)
+ [Genera Chiave](generate-keys.md)

# Esporta qualsiasi AWS CloudHSM chiave usando KMU
<a name="key_mgmt_util-wrapKey"></a>

Utilizzate il **wrapKey** comando in AWS CloudHSM key\$1mgmt\$1util per esportare una copia crittografata di una chiave simmetrica o privata dal modulo di sicurezza hardware (HSM) in un file. Quando esegui **wrapKey**, devi specificare la chiave da esportare, una chiave sull'HSM per crittografare la chiave da esportare (eseguirne il wrapping) e il file di output.

Il comando `wrapKey` scrive la chiave crittografata su un file specificato, ma non rimuove la chiave dall'HSM, né ne impedisce l'utilizzo nelle operazioni di crittografia. È possibile esportare la stessa chiave più volte. 

Soltanto il proprietario della chiave, ovvero l'utente CU che ha creato la chiave, è in grado di esportarla. Gli utenti che condividono la chiave possono utilizzarla nelle operazioni di crittografia, ma non possono esportarla.

Per reimportare la chiave crittografata nell'HSM, usa. [unWrapKey](key_mgmt_util-unwrapKey.md) Per esportare una chiave in testo semplice da un HSM, utilizzate [exSymKey](key_mgmt_util-exSymKey.md)o come appropriato. [exportPrivateKey](key_mgmt_util-exportPrivateKey.md) Il [aesWrapUnwrap](key_mgmt_util-aesWrapUnwrap.md)comando non può decrittografare (scartare) le chiavi che eseguono la crittografia. **wrapKey**

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) a HSM come crypto user (CU). 

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

```
wrapKey -h

wrapKey -k <exported-key-handle>
        -w <wrapping-key-handle>
        -out <output-file>
        [-m <wrapping-mechanism>]
        [-aad <additional authenticated data filename>]
        [-t <hash-type>]
        [-noheader]
        [-i <wrapping IV>]  
        [-iv_file <IV file>]
        [-tag_size <num_tag_bytes>>]
```

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

**Example**  
Questo comando esporta una chiave simmetrica Triple DES (3DES) a 192 bit (handle di chiave `7`). Utilizza una chiave AES a 256 bit nell'HSM (handle di chiave `14`) per eseguire il wrapping della chiave `7`, quindi scrive la chiave 3DES crittografata nel file `3DES-encrypted.key`.  
L'output indica che la chiave `7` (la chiave 3DES) è stata sottoposta a wrapping e che è stata scritta sul file specificato. La chiave crittografata è di 307 byte.  

```
        Command:  wrapKey -k 7 -w 14 -out 3DES-encrypted.key -m 4

        Key Wrapped.

        Wrapped Key written to file "3DES-encrypted.key length 307

        Cfm2WrapKey returned: 0x00 : HSM Return: SUCCESS
```

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

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

**-k**  
L'handle della chiave che si desidera esportare. Digita l'handle della chiave simmetrica o privata posseduta. Per trovare gli handle della chiave, utilizza il comando [findKey](key_mgmt_util-findKey.md).  
Per verificare che una chiave possa essere esportata, utilizza il comando [getAttribute](key_mgmt_util-getAttribute.md) per ottenere il valore dell'attributo `OBJ_ATTR_EXTRACTABLE`, che è rappresentato dalla costante `354`. Per informazioni sull'interpretazione degli attributi chiave, vedi [AWS CloudHSM riferimento agli attributi chiave per KMU](key-attribute-table.md).  
Puoi esportare solo le chiavi di tua proprietà. Per trovare il proprietario di una chiave, usa il comando. [getKeyInfo](key_mgmt_util-getKeyInfo.md)  
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ì

**-output**  
Il percorso e il nome del file di output. Quando il comando viene completato, questo file contiene una copia crittografata della chiave esportata. Se il file già esiste, il comando lo sovrascrive senza preavviso.  
Obbligatorio: sì

**-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-wrapKey.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 = (Bytes-2\$1 Bytes-2). modulusLengthIn 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**  
Il valore che rappresenta l'algoritmo hash. CloudHSM supporta i seguenti algoritmi:      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/key_mgmt_util-wrapKey.html)
Obbligatorio: no

**-aad**  
Il nome del file contenente `AAD`.  
Valido solo per i meccanismi `AES_GCM` e `CLOUDHSM_AES_GCM`.
Obbligatorio: no

**-no intestazione**  
Omette l'intestazione che specifica gli [attributi della chiave](key_mgmt_util-reference.md) specifici per CloudHSM. Utilizzare questo parametro *solo* se prevedi di annullare il wrapping della chiave con strumenti all'esterno di key\$1mgmt\$1util.  
Obbligatorio: no

**-i**  
Il vettore di inizializzazione (IV) (valore esadecimale).  
Valido solo se passato con il parametro `-noheader` per i meccanismi `CLOUDHSM_AES_KEY_WRAP` e `NIST_AES_WRAP`.
Obbligatorio: no

**-iv\$1file**  
Il file in cui si desidera scrivere il valore IV ottenuto in risposta.  
Valido solo se passato con il parametro `-noheader` per il meccanismo `AES_GCM`.
Obbligatorio: no

**-tag\$1size**  
La dimensione del tag da salvare insieme al blob oggetto del wrapping.  
Valido solo se passato con il parametro `-noheader` per i meccanismi `AES_GCM` e `CLOUDHSM_AES_GCM`. La dimensione minima del tag è otto.
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="wrapKey-seealso"></a>
+ [exSymKey](key_mgmt_util-exSymKey.md)
+ [imSymKey](key_mgmt_util-imSymKey.md)
+ [unWrapKey](key_mgmt_util-unwrapKey.md)

# AWS CloudHSM riferimento agli attributi chiave per KMU
<a name="key-attribute-table"></a>

I comandi AWS CloudHSM key\$1mgmt\$1util utilizzano costanti per rappresentare gli attributi delle chiavi in un modulo di sicurezza hardware (HSM). Questo argomento può aiutarti a identificare gli attributi, individuare le costanti che li rappresentano nei comandi e comprenderne i valori. 

Puoi impostare gli attributi di una chiave al momento della sua creazione. Per modificare l'attributo token, che indica se una chiave è persistente o se è presente solo nella sessione, utilizza il comando [setAttribute](key_mgmt_util-setAttribute.md) in key\$1mgmt\$1util. Utilizza il comando `setAttribute` in cloudhsm\$1mgmt\$1util per modificare l'etichetta, eseguire e annullare il wrapping o crittografare e decodificare gli attributi.

Per ottenere un elenco degli attributi e delle relative costanti, utilizza [listAttributes](key_mgmt_util-listAttributes.md). Per ottenere i valori degli attributi di una chiave, utilizza [getAttribute](key_mgmt_util-getAttribute.md).

Nella tabella seguente sono elencati gli attributi della chiave, le relative costanti e i valori validi.


| Attributo | Costante | Valori | 
| --- | --- | --- | 
|  OBJ\$1ATTR\$1ALL  |  512  |  Rappresenta tutti gli attributi.  | 
|  OBJ\$1ATTR\$1ALWAYS\$1SENSITIVE  |  357  |  **0**: Falso.  **1**: Vero.   | 
|  OBJ\$1ATTR\$1CLASS  |  0  | **2**: chiave pubblica in una coppia di chiavi pubblica-privata.3: chiave privata in una coppia di chiavi pubblica-privata.**4**: chiave segreta (simmetrica). | 
|  OBJ\$1ATTR\$1DECRYPT  |  261  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per decodificare i dati.  | 
|  OBJ\$1ATTR\$1DERIVE  |  268  |  **0**: Falso. **1**: Vero. La funzione ricava la chiave.   | 
|  OBJ\$1ATTR\$1DESTROYABLE  |  370  |  **0**: Falso.  **1**: Vero.   | 
|  OBJ\$1ATTR\$1ENCRYPT  |  260  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per crittografare i dati.   | 
|  OBJ\$1ATTR\$1EXTRACTABLE  |  354  |  **0**: Falso.  **1**: Vero. La chiave può essere esportata da. HSMs  | 
|  OBJ\$1ATTR\$1ID  | 258 |  Stringa definita dall'utente. Deve essere univoca nel cluster. L'impostazione predefinita è una stringa vuota. | 
|  OBJ\$1ATTR\$1KCV  |  371  |  Valore di controllo della chiave. Per ulteriori informazioni, vedi [Ulteriori dettagli](#key-attribute-table-details).  | 
|  OBJ\$1ATTR\$1KEY\$1TYPE  | 256 |  **0**: RSA.**1**: DSA.**3**: EC. **16**: segreta generica. **18**: RC4. **21**: Triple DES (3DES). **31**: AES. | 
|  OBJ\$1ATTR\$1LABEL  |  3  | Stringa definita dall'utente. Non è necessario che sia univoca nel cluster. | 
|  OBJ\$1ATTR\$1LOCAL  |  355  |  **0**. Falso. La chiave è stata importata in HSMs. **1**: Vero.   | 
|  OBJ\$1ATTR\$1MODULUS  |  288  |  Il modulo utilizzato per creare una coppia di chiavi RSA. Per le chiavi EC, questo valore rappresenta la codifica DER del valore ANSI X9.62 «Q» in formato ECPoint esadecimale. Per altri tipi di chiavi, questo attributo non esiste.  | 
|  OBJ\$1ATTR\$1MODULUS\$1BITS  |  289  |  La lunghezza del modulo utilizzato per creare una coppia di chiavi RSA. Per le chiavi EC, questo rappresenta l'ID della curva ellittica utilizzata per generare la chiave. Per altri tipi di chiavi, questo attributo non esiste.  | 
|  OBJ\$1ATTR\$1NEVER\$1EXTRACTABLE  |  356  |  **0**: Falso.  **1**: Vero. HSMsLa chiave non può essere esportata da.   | 
|  OBJ\$1ATTR\$1PUBLIC\$1EXPONENT  |  290  |  L'esponente pubblico utilizzato per creare una coppia di chiavi RSA. Per altri tipi di chiavi, questo attributo non esiste.  | 
|  OBJ\$1ATTR\$1PRIVATE  |  2  |  **0**: Falso.  **1**: Vero. Questo attributo indica se gli utenti non autenticati possono elencare gli attributi della chiave. Poiché il provider CloudHSM PKCS\$111 attualmente non supporta le sessioni pubbliche, tutte le chiavi (incluse le chiavi pubbliche di una coppia di chiavi pubblica-privata) hanno l'attributo impostato su 1.  | 
|  OBJ\$1ATTR\$1SENSITIVE  |  259  |  **0**: Falso. Chiave pubblica in una coppia di chiavi pubblica-privata. **1**: Vero.   | 
|  OBJ\$1ATTR\$1SIGN  |  264  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per la firma (chiavi private).  | 
|  OBJ\$1ATTR\$1TOKEN  |  1  |  **0**: Falso. Chiave di sessione. **1**: Vero. Chiave persistente.  | 
|  OBJ\$1ATTR\$1TRUSTED  |  134  |  **0**: Falso. **1**: Vero.  | 
|  OBJ\$1ATTR\$1UNWRAP  |  263  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per decodificare le chiavi.  | 
|  OBJ\$1ATTR\$1UNWRAP\$1TEMPLATE  |  1073742354  |  I valori devono utilizzare il modello di attributo applicato a qualsiasi chiave di cui è stato annullato il wrapping utilizzando questa chiave di wrapping.   | 
|  OBJ\$1ATTR\$1VALUE\$1LEN  |  353  |  Lunghezza della chiave in byte.  | 
|  OBJ\$1ATTR\$1VERIFY  |  266  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per la verifica (chiavi pubbliche).  | 
|  OBJ\$1ATTR\$1WRAP  |  262  |  **0**: Falso.  **1**: Vero. La chiave può essere utilizzata per crittografare le chiavi.  | 
|  OBJ\$1ATTR\$1WRAP\$1TEMPLATE  |  1073742353  |  I valori devono utilizzare il modello di attributo per abbinare la chiave sottoposta a wrapping usando questa chiave di wrapping.   | 
|  OBJ\$1ATTR\$1WRAP\$1WITH\$1TRUSTED  |  528  |  **0**: Falso.  **1**: Vero.   | 

## Ulteriori dettagli
<a name="key-attribute-table-details"></a>

**Valore di controllo della chiave (kcv)**  
Il *valore di controllo chiave* (KCV) è un hash o checksum a 3 byte di una chiave che viene generato quando l'HSM importa o genera una chiave. Puoi anche calcolare un KCV al di fuori dell'HSM, ad esempio dopo aver esportato una chiave. È quindi possibile confrontare i valori KCV per confermare l'identità e l'integrità della chiave. Per ottenere il KCV di una chiave, usa [getAttribute](key_mgmt_util-getAttribute.md).  
AWS CloudHSM utilizza il seguente metodo standard per generare un valore di controllo della chiave:  
+ **Chiavi simmetriche**: primi 3 byte del risultato della crittografia a blocchi zero con la chiave.
+ **Coppie di chiavi asimmetriche**: primi 3 byte dell'hash SHA-1 della chiave pubblica.
+ **Chiavi HMAC**: KCV per le chiavi HMAC non è attualmente supportato.