OpenAI

Preguntas frecuentes técnicas de EKM

Respuestas a preguntas técnicas frecuentes sobre el comportamiento, los permisos y el ciclo de vida de claves en EKM

Última actualización: yesterday

Conceptos de cifrado

Flujo de alto nivel

  • Controlas una clave maestra en tu nube que OpenAI nunca ve

  • Tu clave maestra se utiliza para cifrar las claves de cifrado de datos (DEK) utilizadas por OpenAI

  • OpenAI utiliza las DEK para cifrar los datos en reposo. Un DEK se cifra con tu clave maestra, lo que genera un eDEK (DEK cifrado), que se almacena junto con tus datos

  • Para leer los datos, OpenAI toma la eDEK, solicita a tu KMS que la descifre para convertirla en una DEK y luego descifra tus datos.

¿Cómo funciona el cifrado EKM?

Consulta nuestro artículo para obtener información detallada: Descripción general de la administración empresarial de claves (EKM) de OpenAI

¿OpenAI almacena mis DEK?

No: almacenamos las DEK cifradas (eDEK), que genera tu KMS. Para descifrar los datos, pedimos a tu KMS que descifre el eDEK para convertirlo nuevamente en el DEK.

¿OpenAI guarda en caché mis DEK?

Sí, solo en la memoria. Esto es por rendimiento, para evitar tener que acceder a tu KMS en cada solicitud de cifrado o descifrado de datos. Los DEK nunca se escriben en el almacenamiento.

Permisos de la nube

¿Qué permisos tendrá OpenAI para usar mi KMS?

Solo los permisos que nos otorgas mediante la política que configures. Solo necesitamos, como mínimo, operaciones de cifrado y descifrado. Crea también una nueva clave en tu cloud KMS para OpenAI en lugar de reutilizar claves existentes destinadas a producción.

¿Cuándo obtiene OpenAI permisos para acceder a mi KMS?

Se deben haber completado todos estos pasos: 1. haber reconocido la identidad de OpenAI (mediante una política de confianza, identidad de carga de trabajo, entre otros, según el proveedor de nube), 2. haber creado una política para acceder al KMS y 3. haber asignado a la identidad de OpenAI el permiso para acceder a la política. Si solo creas el KMS sin seguir todos estos pasos, OpenAI no tendrá acceso.

¿Debo almacenar mi clave maestra en mi nube?

No, depende de ti cómo gestionar tu clave maestra. Puedes optar por una solución gestionada en la nube o una externa donde tu clave se almacene por separado. OpenAI solo necesita ejecutar las operaciones de cifrado/descifrado en tu KMS; cómo la clave maestra realiza estas operaciones es un detalle de implementación que nos resulta opaco.

Ciclo de vida de la clave

Rotación de DEK/eDEK (controlada por OpenAI)

¿Con qué frecuencia se rotan las DEK/eDEK?

Cada 24 horas en la ruta de cifrado (solicitando un par de claves DEK/eDEK).

Cada 1 hora para la ruta de la clave de descifrado (DEK -> eDEK)

¿Debo hacer algo cuando cambia la DEK?

No: la rotación de DEK/eDEK se realiza dentro de OpenAI. Siempre que tu clave maestra siga siendo válida, cualquier eDEK cifrado con tu clave maestra podrá seguir descifrarse en la DEK, que luego se utiliza para descifrar tus datos.

Rotación y revocación de la clave maestra (controlada por ti)

¿Con qué frecuencia se produce la rotación y la revocación de claves?

Esto lo determinas tú, ya que OpenAI no tiene visibilidad de tu clave maestra.

¿Cuál es la diferencia entre la rotación de claves y la revocación de claves?

La revocación de claves elimina el acceso a los datos cifrados con claves anteriores. La rotación de claves cifra los datos con una nueva clave, pero mantiene el acceso de lectura a los datos anteriores.

¿Qué sucede si revoco mi clave maestra?

Si se revoca una clave o se eliminan los permisos, el espacio de trabajo eventualmente dejará de funcionar una vez que caduquen las claves almacenadas en caché. En ese momento, OpenAI ya no puede descifrar los datos almacenados ni cifrar datos nuevos. En la práctica, los datos se “destruyen”.

¿Qué tan rápido entra en vigor la revocación?

OpenAI almacena en caché las DEK en la memoria para optimizar el rendimiento y la resiliencia. La revocación generalmente surte efecto en el plazo de una hora, una vez que las claves almacenadas en caché expiran y la revalidación falla.

¿Puede probarse la revocación de forma segura?

No se recomienda probar la revocación en un espacio de trabajo de producción porque hará que los datos existentes queden inaccesibles de forma permanente. Sin embargo, los clientes pueden (y deberían) probar la revocación en un entorno aislado para verificar el comportamiento correcto y validar sus supuestos de confianza.

Si una clave se revoca de forma permanente, ¿se puede recuperar el espacio de trabajo adjuntando una nueva clave?

No. Una vez que se pierde la clave, los datos no se pueden recuperar por diseño. La única solución es crear un nuevo espacio de trabajo.

¿Qué debemos hacer si un espacio de trabajo queda inaccesible debido a cambios en las claves?

La solución recomendada es crear un nuevo espacio de trabajo. Actualizar el KMS no recuperará los datos existentes.

¿Cuál sería el plan de reversión si decidimos dejar de usar CMEK?

Actualmente, no hay un plan de reversión. Una vez que se crea un espacio de trabajo con CMEK, todos los datos asociados se cifran mediante claves gestionadas por el cliente y no se puede acceder a ellos sin esas claves. La única forma de dejar de usar CMEK es crear un nuevo espacio de trabajo; los datos cifrados existentes permanecerán inaccesibles de forma permanente.

¿Qué sucede cuando cambio mi clave maestra?

Se generará nuevo material criptográfico para el cifrado, por lo que las nuevas solicitudes de cifrado usarán la nueva clave. Sin embargo, el identificador de KMS (ARN o nombre de clave) sigue siendo el mismo y los datos antiguos aún se pueden descifrar. Muchos proveedores de nube ofrecen rotación automática de claves (AWS, GCP, Azure).

¿OpenAI vuelve a cifrar los datos antiguos cuando cambio mi clave maestra?

No. El nuevo material criptográfico solo se utilizará para cifrar datos nuevos.

¿Cuánto tiempo toma para que una rotación o revocación de claves surta efecto?

1 hora. Esto se debe a que los DEK/eDEK se almacenan en caché en la memoria y volvemos a validar estas entradas con tu KMS cada hora.

Cambio del identificador de KMS

¿Cambiar el identificador de KMS es una revocación de clave o una rotación de clave?

Revocación de claves. Una clave no puede descifrar datos cifrados con otra clave.

¿Puede OpenAI ayudarme a cambiar mi identificador de KMS para un espacio de trabajo de ChatGPT?

Si confirmas que tu intención es revocar tu clave, podemos ayudarte a hacerlo en un espacio de trabajo de ChatGPT. Ten en cuenta que, cuando se actualiza el ARN de KMS, los datos anteriores seguirán siendo inaccesibles, por lo que terminarás con una combinación de datos inaccesibles y accesibles después del cambio.

¿Puede OpenAI ayudarme a cambiar mi identificador de KMS para un proyecto de API?

Si estás usando la API, esta facilita archivar y crear nuevos proyectos. Archiva el proyecto cuyos datos no son accesibles, registra una nueva configuración de EKM con OpenAI y crea un nuevo proyecto de API con la nueva clave de KMS.

¿Qué sucede si quiero cambiar regularmente mi identificador de KMS por mi cuenta?

No recomendamos esto, ya que probablemente no quieras revocar tu clave con regularidad. Sin embargo, aún puedes hacerlo si usas un proveedor de nube que admita un alias de clave de KMS (ejemplo de AWS). Puedes registrar ese alias de clave KMS con OpenAI y luego, en tu proveedor de nube, puedes reemplazar en cualquier momento el identificador de KMS subyacente al que apunta el alias para emitir una revocación de clave.

Comportamiento de Beta frente a GA

¿Existen riesgos conocidos o cambios a nivel del sistema al usar la versión beta del cifrado en producción?

El entorno beta es funcionalmente equivalente a GA y no se prevén pasos de migración. El riesgo principal es que algunas funciones para casos límite aún no admitan contenido cifrado debido a rutas de código incompletas. Estas son poco frecuentes y se están resolviendo activamente. Los datos están completamente cifrados y protegidos independientemente de estos posibles problemas.

¿Habrá pasos de migración de beta a GA?

No. Los espacios de trabajo que usan la beta de cifrado serán compatibles automáticamente en GA sin que el usuario deba realizar ninguna acción.

Detalles técnicos adicionales

Cifrado de sobre y permisos

¿Necesitamos otorgar permisos de GenerateDataKey a OpenAI para EKM?

No. OpenAI solo requiere permisos de cifrar y descifrar en tu clave KMS. El permiso GenerateDataKey no es necesario para la integración con EKM.

¿OpenAI utiliza cifrado de envoltura para los datos de los clientes?

Sí. OpenAI utiliza un modelo de cifrado por envoltura:

  • Customer KMS: administra las claves de cifrado (KEK). OpenAI nunca ve ni almacena las KEK.

  • Infraestructura de OpenAI: genera y administra claves de cifrado de datos (claves DEK). Cada clave DEK se cifra (protegida) con su KEK antes de almacenarse.

  • Flujo de datos:

    • Los datos de clientes están cifrados con una DEK.

    • Tu DEK se cifra con tu KEK y produce un eDEK.

    • El eDEK se almacena junto con los datos cifrados.

    • Para descifrar datos, OpenAI solicita a tu KMS que descifre el eDEK, recupera el DEK y descifra el contenido.

¿Por qué OpenAI eligió este modelo en lugar de dejar que KMS administrara tanto las KEK como las DEK?

Existen dos enfoques comunes para el cifrado de sobres:

KEK y DEK gestionados por KMS:

Ventajas: Implementación más simple, no es necesario mantener una infraestructura de cifrado.

Contras: Cada solicitud de cifrado/descifrado va al KMS, lo que aumenta la latencia y el costo, y genera un único punto de falla.

KEKs administradas por KMS / DEK administradas por OpenAI (Nuestro enfoque):

Ventajas: latencia y costo significativamente menores, mejor escalabilidad y fiabilidad, y funcionamiento continuo durante interrupciones parciales de KMS (hasta el TTL de la caché de DEK).

Desventajas: Implementación ligeramente más compleja del lado de OpenAI.

Este diseño permite a OpenAI ofrecer sólidas garantías de seguridad, a la vez que minimiza el riesgo operativo y los costos para los clientes.

¿Con qué frecuencia se rotan las DEK?

Cada DEK se rota aproximadamente cada 60 minutos. Esto proporciona aislamiento temporal: incluso si una DEK se viera comprometida de alguna manera, el impacto se limitaría a los datos cifrados dentro de esa ventana de una hora.

Volumen de solicitudes de KMS y observabilidad

Vemos muchas menos solicitudes de KMS que mensajes de los usuarios. ¿Estos números deberían coincidir?

No, no se correlacionarán directamente.

Debido a que OpenAI almacena en caché las DEK en memoria por motivos de rendimiento, las llamadas a KMS solo se realizan cuando una DEK necesita descifrarse, no en cada operación de cifrado o descifrado. Como resultado, debes esperar:

  • Menos solicitudes de KMS que interacciones de usuarios.

  • Picos ocasionales cuando las DEK almacenadas en caché expiran (aproximadamente cada hora) o cuando se necesita acceder a datos cifrados más antiguos.

  • Llamadas adicionales al recuperar datos históricos, como cuando un usuario continúa una conversación de larga duración y deben cargarse DEK antiguos.

El número exacto de solicitudes de KMS depende del estado de la caché, el comportamiento del usuario, los patrones de acceso a los datos y la duración de la conversación, y por lo tanto no se correlacionará directamente con el volumen de mensajes.

¿Este artículo te fue útil?