Estrazione delle chiavi tramite JCE - 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à.

Estrazione delle chiavi tramite JCE

La Java Cryptography Extension (JCE) utilizza un'architettura che consente di collegare diverse implementazioni di crittografia. AWS CloudHSM presenta uno di questi provider JCE che scarica le operazioni crittografiche sull'HSM. Affinché la maggior parte degli altri provider JCE lavori con le chiavi archiviate in AWS CloudHSM, devono estrarre i byte chiave dai moduli HSM in testo non crittografato nella memoria della macchina per utilizzarli. I moduli HSM in genere consentono di estrarre le chiavi solo come oggetti soggetti a wrapping, non come testo in chiaro. Tuttavia, per supportare i casi d'uso di integrazione tra provider, AWS CloudHSM consente un'opzione di configurazione opt-in per consentire l'estrazione dei byte delle chiavi in chiaro.

Importante

JCE scarica le operazioni su AWS CloudHSM ogni volta che viene specificato il provider AWS CloudHSM o viene utilizzato un oggetto chiave AWS CloudHSM. Non è necessario estrarre le chiavi in chiaro se si prevede che l'operazione avvenga all'interno dell'HSM. L'estrazione delle chiavi in testo non crittografato è necessaria solo quando l'applicazione non può utilizzare meccanismi sicuri come eseguire e annullare il wrapping di una chiave a causa delle restrizioni imposte da una libreria di terze parti o da un provider JCE.

Per impostazione predefinita, il provider JCE AWS CloudHSM consente l'estrazione di chiavi pubbliche per funzionare con provider JCE esterni. I seguenti metodi sono sempre consentiti:

Classe Metodo Formato (getEncoded)
Chiave pubblica EC getEncoded() X.509
getW() N/D
RSAPublicKey getEncoded() X.509
getPublicExponent() N/D
CloudHsmRsaPrivateCrtKey getPublicExponent() N/D

Per impostazione predefinita, il provider JCE AWS CloudHSM non consente l'estrazione di byte di chiave in chiaro per le chiavi private o segrete. Se il tuo caso d'uso lo richiede, puoi abilitare l'estrazione dei byte di chiave in chiaro per le chiavi private o segrete alle seguenti condizioni:

  1. L'attributo EXTRACTABLE per le chiavi private e segrete è impostato su vero.

    • Per impostazione predefinita, l'attributo EXTRACTABLE per le chiavi private e segrete è impostato su vero. Le chiavi EXTRACTABLE sono chiavi che possono essere esportate dall'HSM. Per ulteriori informazioni, vedi Attributi Java supportati per Client SDK 5.

  2. L'attributo WRAP_WITH_TRUSTED per le chiavi private e segrete è impostato su falso.

Consentire al provider JCE AWS CloudHSM di estrarre chiavi private segrete da AWS CloudHSM

Importante

Questa modifica alla configurazione consente l'estrazione di tutti i byte chiave EXTRACTABLE in chiaro dal cluster HSM. Per una maggiore sicurezza, è consigliabile prendere in considerazione l'utilizzo di metodi di wrapping di chiavi per estrarre la chiave dall'HSM in modo sicuro. Ciò impedisce l'estrazione involontaria dei byte della chiave dall'HSM.

  1. Utilizza i seguenti comandi per consentire l'estrazione delle chiavi private o segrete in JCE:

    Linux
    $ /opt/cloudhsm/bin/configure-jce --enable-clear-key-extraction-in-software
    Windows
    C:\Program Files\Amazon\CloudHSM\> .\configure-jce.exe --enable-clear-key-extraction-in-software
  2. Una volta abilitata l'estrazione delle chiavi in chiaro, vengono abilitati i seguenti metodi per estrarre le chiavi private in memoria.

    Classe Metodo Formato (getEncoded)
    Chiave getEncoded() RAW
    ECPrivateKey getEncoded() PKCS #11
    getS() N/D
    RSAPrivateCrtKey getEncoded() X.509
    getPrivateExponent() N/D
    getPrimeP() N/D
    getPrimeQ() N/D
    getPrimeExponentP() N/D
    getPrimeExponentQ() N/D
    getCrtCoefficient() N/D

Se desideri ripristinare il comportamento predefinito e non consentire a JCE di esportare le chiavi in chiaro, esegui il seguente comando:

Linux
$ /opt/cloudhsm/bin/configure-jce --disable-clear-key-extraction-in-software
Windows
C:\Program Files\Amazon\CloudHSM\> .\configure-jce.exe --disable-clear-key-extraction-in-software