Rotación de claves

En este tema, se analiza la rotación de claves en Cloud Key Management Service. Si deseas obtener instrucciones específicas para rotar una clave, consulta Cómo rotar claves.

¿Por qué rotar claves?

En el caso de la encriptación simétrica, se recomienda usar el servicio de rotación de claves de manera periódica y automática como medida de seguridad. Algunos estándares de la industria, como las Normas de seguridad de datos para la industria de tarjetas de pago (PCI DSS), requieren la rotación regular de claves.

Cloud Key Management Service no admite la rotación automática de claves asimétricas. Consulta la sección Consideraciones para las claves asimétricas a continuación.

La rotación de claves proporciona los siguientes beneficios:

  • Limitar la cantidad de mensajes encriptados con la misma versión de clave ayuda a evitar ataques que habilita el criptoanálisis. Las recomendaciones del ciclo de vida de la clave dependen del algoritmo de la clave, así como de la cantidad de mensajes producidos o de la cantidad total de bytes encriptados con la misma versión de clave. Por ejemplo, el ciclo de vida de la clave recomendado para las claves de encriptación simétrica en modo Galois/contador (GCM) se basa en la cantidad de mensajes encriptados, como se indica en https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf.

  • En el caso de que una clave se vea comprometida, la rotación regular limita la cantidad de mensajes reales que sean vulnerables.

    Si sospechas que la versión de una clave está en peligro, inhabilítala y revoca el acceso a ella lo antes posible.

  • La rotación regular de claves garantiza que tu sistema sea resistente a la rotación manual, ya sea debido a una violación de la seguridad o a la necesidad de migrar tu aplicación a un algoritmo criptográfico más fuerte. Valida los procedimientos de rotación de claves antes de que ocurra un incidente de seguridad real.

También puedes rotar una clave de forma manual, ya sea porque está comprometida, o bien para modificar tu aplicación para que use un algoritmo diferente.

Con qué frecuencia se deben rotar claves

Te recomendamos que rotes las claves automáticamente con regularidad. Un programa de rotación define la frecuencia de la rotación y, opcionalmente, la fecha y hora de la primera rotación. El programa de rotación se puede basar en la antigüedad de la clave, o bien en la cantidad o el volumen de mensajes encriptados con una versión de clave.

Algunas reglamentaciones de seguridad requieren una rotación periódica y automática de claves. La rotación automática de claves en un período definido, como cada 90 días, aumenta la seguridad con una complejidad administrativa mínima.

También debes rotar una clave de forma manual si sospechas que se vulneró su seguridad o cuando los lineamientos de seguridad requieren que migres una aplicación a un algoritmo de claves más sólido. Puedes programar una rotación manual para una fecha y hora en el futuro. La rotación manual de una clave no pausa, modifica ni afecta una programación de rotación automática existente para la clave.

No confíes en la rotación manual o irregular como componente principal de la seguridad de tu aplicación.

Consideraciones sobre las claves asimétricas

Cloud KMS no admite la rotación automática de claves asimétricas, ya que se requieren pasos adicionales para poder usar la versión nueva de las claves asimétricas.

  • En el caso de las claves asimétricas que se usan para la firma, debes distribuir la parte de la clave pública de la versión de clave nueva. Luego, puedes especificar la versión de clave nueva en las llamadas al método CryptoKeyVersions.asymmetricSign para crear una firma y actualizar las aplicaciones a fin de que usen la versión de clave nueva.

  • En el caso de las claves asimétricas que se usan para la encriptación, debes distribuir e incorporar la parte pública de la versión de clave nueva a las aplicaciones que encriptan datos y otorgar acceso a la parte privada para las aplicaciones que desencriptan datos.

¿Qué sigue?