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 la libreria PKCS #11 per AWS CloudHSM Client SDK 5
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. Le sezioni seguenti riassumono le combinazioni di funzioni e meccanismi supportati da AWS CloudHSM Client SDK 5.
La libreria PKCS #11 supporta i seguenti algoritmi:
-
Crittografia e decrittografia: AES-CBC,, AES-CTR, AES-ECB, AES-GCM, e DES3-CBC DES3-ECB RSA-OAEP RSA-PKCS
-
Firma e verifica: RSA, HMAC, ECDSA (con e senza hashing), EdDSA (Ed25519 e Ed25519ph) e (con modalità mu pura ed esterna) ML-DSA
-
Hash/digest— SHA1, SHA224, SHA256, SHA384 e SHA512
-
Key wrap: AES Key Wrap,, e 1 AES-GCM RSA-AES RSA-OAEP
-
Derivazione della chiave: SP800-108 contatore KDF ed ECDH con KDF (gli algoritmi KDF supportati sono X9.63 con SHA1, SHA224, SHA256, SHA384, SHA512)
Argomenti
Funzioni di generazione chiavi e coppie di chiavi
La libreria AWS CloudHSM software per la libreria PKCS #11 consente di utilizzare i seguenti meccanismi per le funzioni Generate Key e Key Pair.
-
CKM_RSA_PKCS_KEY_PAIR_GEN -
CKM_RSA_X9_31_KEY_PAIR_GEN: il funzionamento di questo meccanismo è identico a quello del meccanismoCKM_RSA_PKCS_KEY_PAIR_GEN, ma offre maggiori garanzie per la generazione dipeq. -
CKM_EC_KEY_PAIR_GEN -
CKM_CLOUDHSM_ML_DSA_KEY_PAIR_GEN3 -
CKM_GENERIC_SECRET_KEY_GEN -
CKM_AES_KEY_GEN -
CKM_DES3_KEY_GEN: modifica imminente indicata nella nota a piè di pagina 5.
Funzioni di firma e verifica
La libreria AWS CloudHSM software per la libreria PKCS #11 consente di utilizzare i seguenti meccanismi per le funzioni Sign and Verify. Con Client SDK 5, l'hashing dei dati viene eseguito localmente nel software. Ciò significa che non ci sono limiti alla dimensione dei dati che l'SDK può sottoporre a hash.
Con gli algoritmi RSA e ECDSA di Client SDK 5, l'hashing viene effettuato in locale, quindi non ci sono limiti di dati. Con HMAC e PureEd DSA (Ed25519), c'è un limite di dati. Per maggiori informazioni, consulta la nota a piè di pagina 2.
RSA
CKM_RSA_X_509CKM_RSA_PKCS: solo operazioni a parte singola.CKM_RSA_PKCS_PSS: solo operazioni a parte singola.CKM_SHA1_RSA_PKCSCKM_SHA224_RSA_PKCSCKM_SHA256_RSA_PKCSCKM_SHA384_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA1_RSA_PKCS_PSSCKM_SHA224_RSA_PKCS_PSSCKM_SHA256_RSA_PKCS_PSSCKM_SHA384_RSA_PKCS_PSSCKM_SHA512_RSA_PKCS_PSS
ECDSA
CKM_ECDSA: solo operazioni a parte singola.CKM_ECDSA_SHA1CKM_ECDSA_SHA224CKM_ECDSA_SHA256CKM_ECDSA_SHA384CKM_ECDSA_SHA512
ML-DSA
EdDSA
CMAC
CKM_AES_CMAC
Funzioni Sign recover e Verify recover
Client SDK 5 non supporta le funzioni Sign Recover e Verify Recover.
Funzioni di digest
La libreria AWS CloudHSM software per la libreria PKCS #11 consente di utilizzare i seguenti meccanismi per le funzioni Digest. Con Client SDK 5, l'hashing dei dati viene eseguito localmente nel software. Ciò significa che non ci sono limiti alla dimensione dei dati che l'SDK può sottoporre a hash.
-
CKM_SHA_1 -
CKM_SHA224 -
CKM_SHA256 -
CKM_SHA384 -
CKM_SHA512
Funzioni di crittografia e decrittografia
La libreria AWS CloudHSM software per la libreria PKCS #11 consente di utilizzare i seguenti meccanismi per le funzioni Encrypt e Decrypt.
-
CKM_RSA_X_509 -
CKM_RSA_PKCS: solo operazioni a parte singola. Modifica imminente indicata nella nota a piè di pagina 5. -
CKM_RSA_PKCS_OAEP: solo operazioni a parte singola. -
CKM_AES_ECB -
CKM_AES_CTR -
CKM_AES_CBC -
CKM_AES_CBC_PAD -
CKM_DES3_CBC: modifica imminente indicata nella nota a piè di pagina 5. -
CKM_DES3_ECB: modifica imminente indicata nella nota a piè di pagina 5. -
CKM_DES3_CBC_PAD: modifica imminente indicata nella nota a piè di pagina 5. CKM_CLOUDHSM_AES_GCM3
Funzioni di derivazione della chiave
La libreria AWS CloudHSM software per la libreria PKCS #11 supporta i seguenti meccanismi di derivazione delle chiavi:
-
CKM_SP800_108_COUNTER_KDF -
CKM_ECDH1_DERIVE- Supporta la derivazione delle chiavi ECDH con i seguenti tipi di KDF definiti dal fornitore: 6
Funzioni di wrapping e annullamento del wrapping
La libreria AWS CloudHSM software per la libreria PKCS #11 consente di utilizzare i seguenti meccanismi per le funzioni Wrap e Unwrap.
Per ulteriori informazioni sul wrapping delle chiavi AES, consulta la pagina sul wrapping delle chiavi AES.
Dimensione massima dei dati per ogni meccanismo
La tabella seguente elenca le dimensioni massime dei dati per ciascun meccanismo:
| Meccanismo | Dimensione massima dei dati in byte |
|---|---|
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 |
CKM_CLOUDHSM_EDDSA(parametri PureEd DSA, NULL) |
16000 |
Annotazioni sui meccanismi
[1] Quando si esegue la AES-GCM crittografia, 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_PARAMSfornita dall'utente. Per evitare confusione tra gli utenti, PKCS #11 SDK nella versione 1.1.1 e successive garantisce che PiV punti a un buffer azzerato quando la crittografia viene inizializzata. AES-GCM[2] 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. Per informazioni sui set di dimensioni massime dei dati per ciascun meccanismo, fare riferimento a. Dimensione massima dei dati per ogni meccanismo
-
Vendor-defined meccanismo [3]. Per utilizzare i meccanismi definiti dal fornitore CloudHSM, le applicazioni PKCS #11 devono includere
/opt/cloudhsm/include/pkcs11/pkcs11t.hdurante 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_PARAMSfornita durante l'inizializzazione del codice. È possibile utilizzare questo meccanismo con le funzioniC_Encrypt,C_WrapKey,C_DecrypteC_UnwrapKey. Quando si utilizza questo meccanismo, la variabile pIV nella strutturaCK_GCM_PARAMSdeve essere impostata suNULL. Quando si utilizza questo meccanismo conC_DecrypteC_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 #5.CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD: AES Key Wrap con riempimento a zeri.CKM_CLOUDHSM_ML_DSA_KEY_PAIR_GEN: Genera una coppia di ML-DSA chiavi. Utilizzate l'CKA_CLOUDHSM_PARAMETER_SETattributo (tipoCK_CLOUDHSM_ML_DSA_PARAMETER_SET_TYPE) per specificare il set di parametri. Valori validi:CKP_CLOUDHSM_ML_DSA_44,CKP_CLOUDHSM_ML_DSA_65,CKP_CLOUDHSM_ML_DSA_87.CKM_CLOUDHSM_ML_DSA: ML-DSA Firma e verifica puramente. Firma o verifica i dati grezzi utilizzando una coppia di ML-DSA chiavi.CKM_CLOUDHSM_EXT_MU_ML_DSA: ML-DSA firma e verifica con mu esterno. Firma o verifica i dati che sono stati preelaborati in un valore mu esterno.CKM_CLOUDHSM_EDDSA: meccanismo di firma EdDSA. Con parametri NULL: PureEd DSA (Ed25519), solo parte singola, massimo 16.000 byte. ConCK_EDDSA_PARAMS(phFlag = CK_TRUE,ulContextDataLen = 0): ED25519ph, componente singolo e multiparte, nessun limite di dimensione. LaCK_EDDSA_PARAMSstruttura segue le specifiche PKCS #11 v3.0. [4] I seguenti
CK_MECHANISM_TYPEeCK_RSA_PKCS_MGF_TYPEsono supportati comeCK_RSA_PKCS_OAEP_PARAMSperCKM_RSA_PKCS_OAEP:-
CKM_SHA_1tramiteCKG_MGF1_SHA1 -
CKM_SHA224tramiteCKG_MGF1_SHA224 -
CKM_SHA256tramiteCKG_MGF1_SHA256 -
CKM_SHA384tramiteCKM_MGF1_SHA384 -
CKM_SHA512tramiteCKM_MGF1_SHA512
-
[5] 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.
[6] Tipi definiti dal fornitore. Per poter utilizzare i tipi definiti dal fornitore di CloudHSM, le applicazioni PKCS #11 devono includerli durante la compilazione.
cloudhsm_pkcs11_vendor_defs.hQuesto si trova in/opt/cloudhsm/include/pkcs11/cloudhsm_pkcs11_vendor_defs.hper piattaforme basate su Linux e per piattaforme basate su WindowsC:\Program Files\Amazon\CloudHSM\include\pkcs11\cloudhsm_pkcs11_vendor_defs.h[7] Supportato solo su istanze hsm2m.medium in modalità non FIPS.
[8] Le funzioni di derivazione delle chiavi (KDF) sono specificate nella pubblicazione speciale 800-56A del NIST, revisione 3. https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf