Bases de datos

Proteja sus datos con Actian Vector, Parte 6

Martin Fuerderer

6 de noviembre de 2025

Proteja sus datos con Actian Vector

La entrada anterior de esta serie explicaba cómo cambiar sólo la frase de contraseña de una base de datos encriptada en Actian Vector. Aunque en la mayoría de los casos esto satisface los requisitos de seguridad, también es posible cambiar la "clave principal". Esto hace que los metadatos de la base de datos se vuelvan a cifrar con una nueva clave.

Gestión de claves de cifrado para el cifrado en reposo

Giro de la tecla principal

En lugar de cambiar únicamente la frase de contraseña en Actian Vector, también es posible cambiar, es decir, "rotar" la clave principal.

Esta operación se realiza junto con el cambio de la frase de contraseña. Se utiliza la sentencia SQL ALTER PASSPHRASE, donde adicionalmente se especifica la opción WITH NEWKEY que cambia la clave principal generando un nuevo valor aleatorio para ella. Dado que la "clave de base de datos" y otras claves se derivan de la clave principal, estas claves también cambian. A su vez, esto significa que todo lo cifrado con estas claves debe descifrarse con las claves antiguas para volver a cifrarse con las nuevas claves.

Para el cifrado de bases de datos, se cifra todo el contenedor de las "claves de tabla" con la clave de la base de datos, en lugar de sólo las "claves de tabla" individuales del contenedor. Como este contenedor no sólo contiene las claves de las tablas, sino también muchos metadatos diferentes de la base de datos, el contenedor puede ser bastante grande, por lo que descifrar y volver a cifrar todo su contenido puede ser una operación lenta.

Además, los metadatos del contenedor con las claves de tabla también incluyen información de registro de la base de datos. La recodificación de estos metadatos debido a un cambio de clave principal afecta al rollforward del registro durante una restauración de la base de datos: el rollforward del registro no puede realizarse más allá del punto de un cambio de clave principal.

Por lo tanto, se recomienda realizar un nuevo punto de control completo (es decir, una copia de seguridad de la base de datos) después de cambiar la clave principal para garantizar que se dispone de copias de seguridad válidas de la base de datos. Además, para poder iniciar una restauración a partir de una copia de seguridad de la base de datos tomada antes de un cambio de frase de contraseña, se requiere la antigua frase de contraseña que estaba en vigor en el momento en que se tomó la copia de seguridad.

Cambiar la frase de contraseña y girar la clave principal

Las claves de las tablas no se modifican al cambiar la clave principal y, por tanto, los datos de usuario de las tablas y los índices no se ven afectados. Las siguientes sentencias SQL cambian la frase de contraseña junto con la clave principal:

SET AUTOCOMMIT ON;
ALTER PASSPHRASE '<old passphrase>' TO '<new passphrase>' WITH NEWKEY;

El DBA tiene que recordar la nueva frase de contraseña.

Se comprueba que la antigua frase de contraseña es correcta. A continuación, se desencripta la antigua clave principal con la antigua "clave de protección" derivada de la antigua frase de contraseña. La antigua clave de la base de datos (aún en memoria) se utiliza para descifrar el contenedor con las claves de las tablas. Se genera aleatoriamente una nueva clave principal. La nueva clave de base de datos se deriva de la nueva clave principal y se utiliza para volver a cifrar el contenedor con las claves de tabla sin modificar.

La nueva clave principal se vuelve a cifrar con la nueva clave de protección derivada de la nueva frase de contraseña. A continuación, se conserva la nueva clave principal cifrada. La nueva clave de la base de datos y otras nuevas claves derivadas también de la nueva clave principal se mantienen en memoria.

El siguiente gráfico muestra el efecto de cambiar la tecla principal:

proteger sus datos con actian vector captura de pantalla

El cifrado de las claves de tabla cambia, ya que todo el contenedor de las claves de tabla se vuelve a cifrar con la nueva clave de base de datos. Pero las claves de tabla en sí permanecen inalteradas, y con ello no se tocan los datos de usuario cifrados en tablas e índices.

¿Cuándo debe girar la llave principal?

En general, el objetivo principal de rotar una clave de cifrado es reducir la cantidad de datos que se cifran con una sola clave. En caso de que la clave se vea comprometida, esto reduce la cantidad de material filtrado. Esto se aplica bien al cifrado de comunicaciones, donde en el flujo de datos comunicados la rotación de la clave, durante la comunicación, cambia el cifrado de los datos siguientes. Sin embargo, con los datos en reposo, la rotación de claves significa que los datos existentes se descifran con la clave antigua y, a continuación, se cifran inmediatamente con la nueva clave: la cantidad de datos cifrados sigue siendo la misma.

Por ello, para el cifrado de datos en reposo, el caso más importante para la rotación inmediata de claves es cuando la clave ha sido comprometida o se sospecha que lo ha sido.

Por supuesto, si se exige una rotación periódica de las claves para cumplir los requisitos externos, entonces no queda más remedio que seguir los procedimientos prescritos.

Además de estas situaciones, deben considerarse cuidadosamente las circunstancias individuales para determinar qué intervalos de rotación de claves son sensatos. Esto incluye factores como la frecuencia con la que se actualizan los datos existentes, la cantidad de datos que se añaden con el tiempo, el tiempo que se tarda en realizar la rotación de claves, lo que significa para la gestión de copias de seguridad y restauración, etc. No existe una receta general válida para todos.

Explore otros blogs sobre cómo proteger sus datos con Actian Vector:

Fotografía de Martin Fuerderer

Sobre Martin Fuerderer

Martin Fuerderer es ingeniero de software principal de HCLSoftware, con más de 25 años de experiencia en el desarrollo de servidores de bases de datos. Recientemente se ha centrado en las funciones de seguridad de los entornos de bases de datos, garantizando el cumplimiento de las normativas y una sólida protección de los datos. Martin ha contribuido a importantes lanzamientos de productos y colabora frecuentemente con sus colegas para perfeccionar los estándares de seguridad de las bases de datos. En el blog de Actian, Martin comparte sus conocimientos sobre el desarrollo de servidores de bases de datos seguros y las mejores prácticas. Consulte sus últimas publicaciones para obtener orientación sobre la protección de los datos empresariales.