View a markdown version of this page

Meccanismi supportati per il provider JCE per AWS CloudHSM Client SDK 5 - AWS CloudHSM

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 il provider JCE per AWS CloudHSM Client SDK 5

Questo argomento fornisce informazioni sui meccanismi supportati per il provider JCE con AWS CloudHSM Client SDK 5. Per informazioni sulle interfacce Java Cryptography Architecture (JCA) e sulle classi di motore supportate da AWS CloudHSM, consulta i seguenti argomenti.

Funzioni di generazione chiavi e coppie di chiavi

La libreria AWS CloudHSM software per Java consente di utilizzare le seguenti operazioni per generare funzioni di chiave e coppia di chiavi.

  • RSA

  • EC

  • EdDSA (Ed25519)vedi nota2

  • ML-DSA

  • AES

  • DESede (Triple DES)vedi nota1

  • GenericSecret

Funzioni di cifratura

La libreria AWS CloudHSM software per Java supporta le seguenti combinazioni di algoritmo, modalità e spaziatura interna.

Algoritmo Modalità Padding Note
AES CBC

AES/CBC/NoPadding

AES/CBC/PKCS5Padding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

Implementa Cipher.UNWRAP_MODE for AES/CBC NoPadding

AES ECB

AES/ECB/PKCS5Padding

AES/ECB/NoPadding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

AES CTR

AES/CTR/NoPadding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

AES GCM

AES/GCM/NoPadding

Implementa Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

Quando esegue la AES-GCM crittografia, l'HSM ignora il vettore di inizializzazione (IV) nella richiesta e utilizza un IV generato. Al termine dell'operazione, è necessario chiamare Cipher.getIV() per ottenere il IV.

AESWrap ECB

AESWrap/ECB/NoPadding

AESWrap/ECB/PKCS5Padding

AESWrap/ECB/ZeroPadding

Implementa Cipher.WRAP_MODE e Cipher.UNWRAP_MODE.

DESede (Triple DES) CBC

DESede/CBC/PKCS5Padding

DESede/CBC/NoPadding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE. Vedi la nota 1 di seguito per una modifica imminente.

DESede (Triple DES) ECB

DESede/ECB/NoPadding

DESede/ECB/PKCS5Padding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE. Vedi la nota 1 di seguito per una modifica imminente.

RSA ECB

RSA/ECB/PKCS1Padding vedi nota 1

RSA/ECB/OAEPPadding

RSA/ECB/OAEPWithSHA-1ANDMGF1Padding

RSA/ECB/OAEPWithSHA-224ANDMGF1Padding

RSA/ECB/OAEPWithSHA-256ANDMGF1Padding

RSA/ECB/OAEPWithSHA-384ANDMGF1Padding

RSA/ECB/OAEPWithSHA-512ANDMGF1Padding

Implementa Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

RSA ECB

RSA/ECB/NoPadding

Implementa Cipher.ENCRYPT_MODE e Cipher.DECRYPT_MODE.

RSAAESWrap ECB

RSAAESWrap/ECB/OAEPPadding

RSAAESWrap/ECB/OAEPWithSHA-1ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-224ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-256ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-384ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-512ANDMGF1Padding

Implementa Cipher.WRAP_MODE e Cipher.UNWRAP_MODE.

Funzioni di firma e verifica

La libreria AWS CloudHSM software per Java supporta i seguenti tipi di firma e verifica. Con Client SDK 5 e gli algoritmi di firma con hashing, i dati vengono sottoposti a hashing localmente nel software prima di essere inviati all'HSM per. signature/verification Ciò significa che non ci sono limiti alla dimensione dei dati che possono essere sottoposti a hash dall'SDK.

Tipi di firma RSA

  • NONEwithRSA

  • RSASSA-PSS

  • SHA1withRSA

  • SHA1withRSA/PSS

  • SHA1withRSAandMGF1

  • SHA224withRSA

  • SHA224withRSAandMGF1

  • SHA224withRSA/PSS

  • SHA256withRSA

  • SHA256withRSAandMGF1

  • SHA256withRSA/PSS

  • SHA384withRSA

  • SHA384withRSAandMGF1

  • SHA384withRSA/PSS

  • SHA512withRSA

  • SHA512withRSAandMGF1

  • SHA512withRSA/PSS

Tipi di firma ECDSA

  • NONEwithECDSA

  • SHA1withECDSA

  • SHA224withECDSA

  • SHA256withECDSA

  • SHA384withECDSA

  • SHA512withECDSA

ML-DSA tipi di firma

  • ML-DSA

  • ML-DSA-44

  • ML-DSA-65

  • ML-DSA-87

  • ML-DSA-EXTERNAL-MU

Tipi di firma EdDSA vedi nota 2

  • Ed25519o EdDSA (Dimensione massima dei dati: 16.000 byte)

  • Ed25519ph

Funzioni di digest

La libreria AWS CloudHSM software per Java supporta i seguenti riassunti dei messaggi. 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 possono essere sottoposti a hash dall'SDK.

  • SHA-1

  • SHA-224

  • SHA-256

  • SHA-384

  • SHA-512

Hash-based funzioni del codice di autenticazione dei messaggi (HMAC)

La libreria AWS CloudHSM software per Java supporta i seguenti algoritmi HMAC.

  • HmacSHA1(Dimensione massima dei dati in byte: 16288)

  • HmacSHA224(Dimensione massima dei dati in byte: 16256)

  • HmacSHA256(Dimensione massima dei dati in byte: 16288)

  • HmacSHA384(Dimensione massima dei dati in byte: 16224)

  • HmacSHA512(Dimensione massima dei dati in byte: 16224)

Cipher-based funzioni del codice di autenticazione dei messaggi (CMAC)

I CMAC (codici di autenticazione dei Cipher-based messaggi) creano codici di autenticazione dei messaggi (MAC) utilizzando un codice a blocchi e una chiave segreta. Differiscono dagli HMAC in quanto utilizzano un metodo a chiave simmetrica a blocchi per i MAC anziché un metodo di hashing.

La libreria AWS CloudHSM software per Java supporta i seguenti algoritmi CMAC.

  • AESCMAC

Funzioni chiave dell'accordo

La libreria AWS CloudHSM software per Java supporta ECDH con Key Derivation Functions (KDF). Sono supportati i seguenti tipi di KDF:

  • ECDHwithX963SHA1KDFSupporta l'algoritmo X9.63 KDF SHA1 3

  • ECDHwithX963SHA224KDFSupporta l'algoritmo X9.63 KDF SHA224 3

  • ECDHwithX963SHA256KDFSupporta l'algoritmo KDF SHA256 X9.63 3

  • ECDHwithX963SHA384KDFSupporta l'algoritmo KDF SHA384 X9.63 3

  • ECDHwithX963SHA512KDFSupporta l'algoritmo X9.63 KDF SHA512 3

Converti le chiavi in specifiche chiave utilizzando le principali fabbriche

È possibile utilizzare le fabbriche di chiavi per convertire le chiavi in specifiche chiave. AWS CloudHSM ha due tipi di fabbriche chiave per JCE:

SecretKeyFactory: Utilizzato per importare o derivare chiavi simmetriche. Usando SecretKeyFactory, puoi passare una chiave supportata o una supportata in cui importare o KeySpec derivare chiavi simmetriche. AWS CloudHSM Di seguito sono riportate le specifiche supportate per: KeyFactory

  • Le seguenti KeySpec classi SecretKeyFactory del generateSecret metodo For sono supportate:

    • KeyAttributesMappuò essere utilizzato per importare byte di chiave con attributi aggiuntivi come chiave CloudHSM. Un esempio può essere trovato qui.

    • SecretKeySpecpuò essere utilizzato per importare una specifica di chiave simmetrica come chiave CloudHSM.

    • AesCmacKdfParameterSpecpuò essere utilizzato per derivare chiavi simmetriche utilizzando un'altra chiave AES CloudHSM.

Nota

SecretKeyFactoryil translateKey metodo accetta qualsiasi chiave che implementa l'interfaccia chiave. https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/Key.html

KeyFactory: Utilizzato per importare chiavi asimmetriche. Usando KeyFactory, puoi passare una chiave supportata o supportata in KeySpec cui importare una chiave asimmetrica. AWS CloudHSM Per ulteriori informazioni, fai riferimento a queste risorse:

  • KeyFactoryIl generatePublic metodo di For, sono supportate le seguenti KeySpec classi:

  • Per il generatePrivate metodo KeyFactory For, sono supportate le seguenti KeySpec classi:

ML-DSA limitazione dell'importazione delle chiavi

AWS CloudHSM non supporta l'importazione di ML-DSA chiavi tramite KeyFactory (generatePublicegeneratePrivate). Per utilizzare ML-DSA le chiavi, generale direttamente sull'HSM utilizzando. KeyPairGenerator ML-DSA KeyFactorySupporta l'esportazione di chiavi pubbliche utilizzando getKeySpec (restituisceX509EncodedKeySpec).

KeyFactoryIl translateKey metodo di For, accetta qualsiasi chiave che implementa l'interfaccia https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/Key.html chiave.

Annotazioni sui meccanismi

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

[2] Supportato solo su istanze hsm2m.medium in modalità non FIPS.

[3] Le funzioni di derivazione chiave (KDF) sono specificate nella pubblicazione speciale 800-56A del NIST, revisione 3. https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf