En esta página, se analiza la rotación de claves en Cloud Key Management Service. La rotación de claves es el proceso de crear claves de encriptación nuevas para reemplazar las existentes. Si rotas las claves de encriptación con regularidad o después de eventos específicos, puedes reducir las posibles consecuencias de que se vean comprometidas. Si deseas obtener instrucciones específicas para rotar una clave, consulta Rotación de 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 Consideraciones sobre claves asimétricas en este documento.
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 los ataques habilitados por 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 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 de claves periódica garantiza que tu sistema sea resiliente a la rotación manual, ya sea debido a una violación de seguridad o a la necesidad de migrar tu aplicación a un algoritmo de criptografía más sólido. Valida tus 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 se vulneró su seguridad o para modificar tu aplicación y usar 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 rotación y, opcionalmente, la fecha y la hora en que se produce la primera rotación. El programa de rotación se puede basar en la antigüedad de la clave o en el número o el volumen de mensajes encriptados con una versión de clave.
Algunas reglamentaciones de seguridad requieren una rotación de claves automática y periódica. 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.
Después de rotar las claves
La rotación de claves crea versiones de claves activas nuevas, pero no vuelve a encriptar tus datos ni inhabilita ni borra versiones de claves anteriores. Las versiones de clave anteriores permanecen activas y generan costos hasta que se destruyen. La nueva encriptación de datos quita tu dependencia de las versiones de claves anteriores, lo que te permite destruirlas para evitar incurrir en costos adicionales. Para obtener información sobre cómo volver a encriptar tus datos, consulta Vuelve a encriptar datos.
Debes asegurarte de que una versión de clave ya no esté en uso antes de destruirla.
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 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 para 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?
- Rota una clave:
- Habilita o inhabilita una clave.
- Obtén más información para volver a encriptar datos.