Cifrar y descifrar datos

El AO realiza operaciones de cifrado y descifrado a través de la CLI aislada de Google Distributed Cloud (GDC) al KMS mediante un cliente gRPC.

Antes de empezar

Antes de realizar operaciones criptográficas, descarga, instala y configura la CLI de gdcloud para acceder al servidor de la API Management. Para ello, consulta la información general sobre la herramienta de línea de comandos gcloud.

Para obtener los permisos que necesitas para realizar operaciones criptográficas, pide al administrador de gestión de identidades y accesos de tu organización que te asigne el rol de desarrollador de KMS (kms-developer).

Cifrar datos

Para cifrar datos, usa el comando gdcloud kms keys encrypt. Este comando cifra un archivo de texto sin formato con la clave AEAD y lo escribe en un archivo de texto cifrado con nombre.

  • Para cifrar datos, proporciona el nombre de la clave y lo siguiente:

    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
    

    Sustituye las siguientes variables:

    • NAMESPACE: el espacio de nombres del proyecto. Por ejemplo: kms-test1.
    • KEY_NAME: el nombre de la clave usada para cifrar el texto sin formato. Por ejemplo, key-1.
    • PLAINTEXT_PATH: la ruta al archivo que contiene el texto sin cifrar que se va a cifrar.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: un archivo opcional que contiene datos autenticados adicionales (AAD). AAD se usa para comprobar la integridad y protege tus datos frente a ataques de delegado confuso. El AAD y el texto sin formato tienen un límite de tamaño de 64 KB.
    • CIPHERTEXT_PATH: la ruta al archivo que contiene el texto sin formato cifrado.

    Después de ejecutar el comando, verás un archivo que has especificado en la marca --ciphertext-file que contiene el contenido cifrado del archivo de texto sin formato.

Descifrar datos

Para descifrar datos, usa el comando gdcloud kms keys decrypt. Este comando descifra un archivo de texto cifrado determinado con la clave AEAD y lo escribe en un archivo de texto sin cifrar con un nombre específico.

  • Para descifrar el texto cifrado, introduce el nombre de la clave y lo siguiente:

    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
    

    Sustituye las siguientes variables:

    • NAMESPACE: el espacio de nombres del proyecto.
    • KEY_NAME: el nombre de la clave utilizada para cifrar el texto sin cifrar.
    • CIPHERTEXT_PATH: la ruta del archivo que quieres descifrar.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: un archivo opcional que contiene datos autenticados adicionales (AAD). AAD se usa para comprobar la integridad y protege tus datos frente a ataques de delegado confuso. El AAD y el texto sin formato tienen un límite de tamaño de 64 KB.
    • PLAINTEXT_PATH: la ruta al archivo que contiene el texto sin cifrar descifrado.

    Después de ejecutar el comando, verás un archivo que has especificado en la marca --plaintext-file que contiene los datos descifrados.