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à.
Meccanismi supportati per Client SDK 3 AWS CloudHSM
La libreria PKCS #11 supporta i seguenti algoritmi per AWS CloudHSM Client SDK 3:
-
Crittografia e decrittografia: AES-CBC, AES-CTR, AES-ECB, AES-GCM, -CBC, -ECB, RSA-OAEP e RSA-PKCS DES3 DES3
-
Firma e verifica: RSA, HMAC e ECDSA; con e senza hashing
-
SHA1 SHA256 SHA384Hash/digest SHA224 —,,, e SHA512
-
Wrapping della chiave: AES Key Wrap,4 AES-GCM, RSA-AES e RSA-OAEP
-
Derivazione chiave: ECDH, 00-108 CTR KDF 5 SP8
Tabella dei meccanismi e delle funzioni della libreria PKCS #11
La libreria PKCS #11 è conforme alla versione 2.40 della specifica PKCS #11. Per richiamare una funzione di crittografia utilizzando PKCS #11, chiamare una funzione con un determinato meccanismo. La seguente tabella riassume le combinazioni di funzioni e meccanismi supportati da AWS CloudHSM.
Interpretazione della tabella delle funzioni del meccanismo PKCS #11
Un segno ✔ indica che supporta il meccanismo della funzione. AWS CloudHSM Non supportiamo tutte le funzioni elencate nella specifica PKCS #11. Un segno ✖ indica che AWS CloudHSM non supporta ancora il meccanismo per una determinata funzione, anche se lo standard PKCS #11 lo consente. Le celle vuote indicano che lo standard PKCS #11 non supporta il meccanismo per una determinata funzione.
Meccanismo |
Funzioni |
||||||
---|---|---|---|---|---|---|---|
|
Generate chiavi o coppie di chiavi |
Sign & Verify (Firma e verifica) |
SR & VR |
Digest |
Encrypt & Decrypt (Crittografia e decrittografia) |
Derive Key (Deriva chiave) |
Avvolgi & UnWrap |
|
✔ |
|
|
|
|
|
|
|
✔2 |
|
|
|
|
|
|
|
|
✔ |
|
|
✔ |
|
|
|
✔1 | ✖ | ✔1 |
|
✔1 | ||
|
|
|
|
|
✔1 |
|
✔6 |
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔1 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
✔ |
|
|
|
|
|
|
|
|
✔1 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
✔3.2 |
|
|
|
|
|
|
|
|
|
|
|
✔5 |
|
|
|
|
|
|
|
✔ |
|
|
✔ |
|
|
|
|
|
|
|
✔ |
|
|
|
|
|
|
|
|
|
|
|
✔ |
|
✖ |
|
|
|
|
|
✔ |
|
✖ |
|
|
|
|
|
✔3.3 |
|
✖ |
|
|
|
|
|
✔ |
|
✖ |
|
✔ |
|
|
|
|
|
|
|
|
|
|
|
✔3.3 |
|
✖ |
|
|
|
|
|
✔ |
|
✖ |
|
|
|
|
|
✔ |
|
✖ |
|
|
|
|
|
|
✔7.1 |
|
|
|
|
|
|
✔7.1 |
|
✔7.1 |
|
|
|
|
✔3.1 |
|
|
|
|
|
✔3.3 |
|
|
|
|
|
|
|
|
|
✔3.1 |
|
|
|
|
|
✔3.3 |
|
|
|
|
|
|
|
|
|
✔3.1 |
|
|
|
|
|
✔3.3 |
|
|
|
|
|
|
|
|
|
✔3.1 |
|
|
|
|
|
✔3.3 |
|
|
|
|
|
|
|
|
|
✔3.1 |
|
|
|
|
|
✔3.3 |
|
|
|
|
|
|
|
|
|
|
|
|
✔ |
|
|
|
|
|
|
|
✔ |
|
|
|
|
|
|
|
✔ |
|
|
|
|
|
|
|
✔7.1 |
|
|
|
|
|
|
|
✔7.1 |
|
|
|
|
|
|
|
✔7.1 |
Annotazioni sui meccanismi
-
[1] Solo operazioni a parte singola.
-
[2] Il meccanismo è identico al meccanismo
CKM_RSA_PKCS_KEY_PAIR_GEN
dal punto di vista funzionale, ma offre maggiori garanzie per le generazionip
eq
. [3.1] AWS CloudHSM approccia l'hashing in modo diverso in base al Client SDK. Per Client SDK 3, la posizione in cui viene eseguito l'hashing varia a seconda della dimensione dei dati e del fatto che si utilizzino operazioni a parte singola o in più parti.
Operazioni a parte singola in Client SDK 3
La Tabella 3.1 elenca la dimensione massima del set di dati per ciascun meccanismo per Client SDK 3. L'intero hash viene calcolato all'interno dell'HSM. Nessun supporto per dimensioni di dati superiori a 16 KB.
Tabella 3.1, Dimensione massima del set di dati per operazioni a parte singola Meccanismo Dimensione massima dei dati CKM_SHA_1
16296 CKM_SHA224
16264 CKM_SHA256
16296 CKM_SHA384
16232 CKM_SHA512
16232 Operazioni in più parti per Client SDK 3
Supporto per dimensioni di dati superiori a 16 KB, ma la dimensione dei dati determina dove avviene l'hashing. I buffer di dati inferiori a 16 KB sono sottoposti a hash all'interno dell'HSM. I buffer di dimensione compresa tra 16 KB e la dimensione massima dei dati del sistema sono sottoposti a hash in locale nel software. Ricorda: le funzioni hash non richiedono segreti crittografici, quindi puoi calcolarle in sicurezza al di fuori dell'HSM.
[3.2] AWS CloudHSM approccia l'hashing in modo diverso in base al Client SDK. Per Client SDK 3, la posizione in cui viene eseguito l'hashing varia a seconda della dimensione dei dati e del fatto che si utilizzino operazioni a parte singola o in più parti.
Operazioni a parte singola per Client SDK 3
La Tabella 3.2 elenca la dimensione massima del set di dati per ciascun meccanismo per Client SDK 3. Nessun supporto per dimensioni di dati superiori a 16 KB.
Tabella 3.2, Dimensione massima del set di dati per operazioni a parte singola Meccanismo Dimensione massima dei dati CKM_SHA1_RSA_PKCS
16296 CKM_SHA224_RSA_PKCS
16264 CKM_SHA256_RSA_PKCS
16296 CKM_SHA384_RSA_PKCS
16232 CKM_SHA512_RSA_PKCS
16232 CKM_SHA1_RSA_PKCS_PSS
16296 CKM_SHA224_RSA_PKCS_PSS
16264 CKM_SHA256_RSA_PKCS_PSS
16296 CKM_SHA384_RSA_PKCS_PSS
16232 CKM_SHA512_RSA_PKCS_PSS
16232 CKM_ECDSA_SHA1
16296 CKM_ECDSA_SHA224
16264 CKM_ECDSA_SHA256
16296 CKM_ECDSA_SHA384
16232 CKM_ECDSA_SHA512
16232 Operazioni in più parti per Client SDK 3
Supporto per dimensioni di dati superiori a 16 KB, ma la dimensione dei dati determina dove avviene l'hashing. I buffer di dati inferiori a 16 KB sono sottoposti a hash all'interno dell'HSM. I buffer di dimensione compresa tra 16 KB e la dimensione massima dei dati del sistema sono sottoposti a hash in locale nel software. Ricorda: le funzioni hash non richiedono segreti crittografici, quindi puoi calcolarle in sicurezza al di fuori dell'HSM.
[3.3] Quando si opera sui dati utilizzando uno dei seguenti meccanismi, se il buffer dati supera la dimensione massima dei dati, l’operazione genera un errore. Per questi meccanismi, tutta l'elaborazione dei dati deve avvenire all'interno dell'HSM. La tabella seguente elenca la dimensione massima dei dati per ciascun meccanismo:
Tabella 3.3, Dimensione massima del set di dati Meccanismo Dimensione massima dei dati CKM_SHA_1_HMAC
16288 CKM_SHA224_HMAC
16256 CKM_SHA256_HMAC
16288 CKM_SHA384_HMAC
16224 CKM_SHA512_HMAC
16224 CKM_AES_CBC
16272 CKM_AES_GCM
16224 CKM_CLOUDHSM_AES_GCM
16224 CKM_DES3_CBC
16280 [4] Quando si esegue la crittografia AES-GCM, l'HSM non accetta i dati del vettore di inizializzazione (IV) dall'applicazione. È necessario utilizzare un IV generato dall’HSM. L'IV da 12 byte fornito dall'HSM viene scritto nel riferimento della memoria indicato dall'elemento pIV della struttura di parametri
CK_GCM_PARAMS
fornita dall'utente. Per evitare confusione, l'SDK PKCS #11 nella versione 1.1.1 e successive assicura che pIV punti a un buffer azzerato quando viene inizializzata la crittografia AES-GCM.-
[5] Solo Client SDK 3. Questo meccanismo viene implementato per supportare i casi di offload SSL/TLS e viene eseguito solo in parte all'interno dell'HSM. Prima di utilizzare il meccanismo, consulta "(Problema) la deviazione della chiave ECDH viene eseguita parzialmente all'interno dell'HSM" in Problemi noti della libreria PKCS #11 per AWS CloudHSM.
CKM_ECDH1_DERIVE
non supporta la curva secp521r1 (P-521). [6] I seguenti
CK_MECHANISM_TYPE
eCK_RSA_PKCS_MGF_TYPE
sono supportati comeCK_RSA_PKCS_OAEP_PARAMS
perCKM_RSA_PKCS_OAEP
:-
CKM_SHA_1
tramiteCKG_MGF1_SHA1
-
CKM_SHA224
tramiteCKG_MGF1_SHA224
-
CKM_SHA256
tramiteCKG_MGF1_SHA256
-
CKM_SHA384
tramiteCKM_MGF1_SHA384
-
CKM_SHA512
tramiteCKM_MGF1_SHA512
-
[7.1] Meccanismo definito dal fornitore. Per utilizzare i meccanismi definiti dal fornitore CloudHSM, le applicazioni PKCS #11 devono includere
/opt/cloudhsm/include/pkcs11t.h
durante la compilazione.CKM_CLOUDHSM_AES_GCM
: questo meccanismo proprietario è un'alternativa programmaticamente più sicura allo standardCKM_AES_GCM
. Antepone il IV generato dall'HSM al testo cifrato invece di scriverlo nuovamente nella strutturaCK_GCM_PARAMS
fornita durante l'inizializzazione del codice. È possibile utilizzare questo meccanismo con le funzioniC_Encrypt
,C_WrapKey
,C_Decrypt
eC_UnwrapKey
. Quando si utilizza questo meccanismo, la variabile pIV nella strutturaCK_GCM_PARAMS
deve essere impostata suNULL
. Quando si utilizza questo meccanismo conC_Decrypt
eC_UnwrapKey
, il IV dovrebbe essere anteposto al testo cifrato che viene scartato.CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD
: AES Key Wrap con riempimento PKCS #5CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD
: AES Key Wrap con riempimento a zeriPer ulteriori informazioni sul wrapping delle chiavi AES, consulta la pagina sul wrapping delle chiavi AES.
[8] 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.