Criptare e decriptare i dati

Questo documento descrive come criptare e decriptare i dati utilizzando le chiavi di Key Management System (KMS) con la gcloud CLI.

Questo documento è destinato ai gruppi di operatori di applicazioni che devono eseguire operazioni di crittografia nei progetti GDC. Per saperne di più, consulta la sezione Pubblico della documentazione di GDC air-gapped.

Prima di iniziare

Prima di criptare o decriptare i dati, devi disporre delle autorizzazioni necessarie e preparare l'ambiente.

Richiedi ruoli IAM

Per criptare e decriptare i dati, contatta l'amministratore IAM dell'organizzazione per richiedere il ruolo Sviluppatore KMS (kms-developer) nello spazio dei nomi del progetto.

Prepara l'ambiente

Cripta i dati

Per criptare i dati, utilizza il comando gdcloud kms keys encrypt. Questo comando cripta un determinato file di testo non crittografato utilizzando la chiave AEAD e lo scrive in un file di testo crittografato denominato.

  • Per criptare i dati, inserisci il nome della chiave e quanto segue:

    gdcloud kms keys encrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \
      --plaintext-file=PLAINTEXT_PATH \
      --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \
      --ciphertext-file=CIPHERTEXT_PATH
    

    Sostituisci le seguenti variabili:

    • NAMESPACE: lo spazio dei nomi del progetto, ad esempio: kms-test1.
    • KEY_NAME: il nome della chiave utilizzata per criptare il testo non crittografato, ad esempio key-1.
    • PLAINTEXT_PATH: il percorso del file che contiene il testo non crittografato da criptare.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: un file facoltativo che contiene dati autenticati aggiuntivi (AAD). AAD viene utilizzato per i controlli di integrità e protegge i dati da un attacco di tipo "confused deputy". AAD e il testo non crittografato hanno un limite di dimensioni di 64 KB.
    • CIPHERTEXT_PATH: il percorso del file che contiene il testo normale criptato.

    Dopo aver eseguito il comando, vedrai un file specificato nel flag --ciphertext-file che contiene i contenuti criptati del file di testo non crittografato.

Decripta i dati

Per decriptare i dati, utilizza il comando gdcloud kms keys decrypt. Questo comando decripta un determinato file di testo cifrato utilizzando la chiave AEAD e lo scrive in un file di testo normale denominato.

  • Per decriptare il testo cifrato, inserisci il nome della chiave e quanto segue:

    gdcloud kms keys decrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \
     --ciphertext-file=CIPHERTEXT_PATH \
     --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \
     --plaintext-file=PLAINTEXT_PATH
    

    Sostituisci le seguenti variabili:

    • NAMESPACE: lo spazio dei nomi del progetto.
    • KEY_NAME: il nome della chiave utilizzata per criptare il testo non crittografato.
    • CIPHERTEXT_PATH: il percorso del file che vuoi decriptare.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: un file facoltativo che contiene dati autenticati aggiuntivi (AAD). AAD viene utilizzato per i controlli di integrità e protegge i dati da un attacco di tipo "confused deputy". AAD e il testo non crittografato hanno un limite di dimensioni di 64 KB.
    • PLAINTEXT_PATH: il percorso del file che contiene il testo non crittografato decriptato.

    Dopo aver eseguito il comando, vedrai un file specificato nel flag --plaintext-file che contiene i dati decriptati.