# Cifrado de datos transparente

El cifrado de datos transparente (en inglés: transparent data encryption, a menudo abreviado a TDE) es una tecnología empleada por Microsoft, IBM y Oracle para cifrar archivos de datos de SQL Server, Azure SQL Database y Azure Synapse Analytics, lo que se conoce como cifrado de datos en reposo. TDE ofrece cifrado a nivel de archivo. TDE resuelve el problema de proteger los datos en reposo, cifrando las bases de datos tanto en el disco duro como en los medios de respaldo. No protege los datos en tránsito ni los datos en uso. Las empresas suelen emplear TDE para resolver problemas de cumplimiento, como PCI DSS, que requieren la protección de datos en reposo.
Microsoft ofrece TDE como parte de SQL Server de Microsoft 2008, 2008 R2, 2012, 2014, 2016, 2017 y 2019. TDE solo era compatible con las ediciones Evaluation, Developer, Enterprise y Datacenter de SQL Server hasta que también estuvo disponible en la edición estándar para 2019 . SQL TDE es compatible con módulos de seguridad de hardware de Thales e-Seguridad, Townsend Seguridad y SafeNet, Inc.
IBM ofrece TDE como parte de DB2 a partir de la versión 10.5 fixpack 5. También se admite en las versiones en la nube del producto de forma predeterminada, Db2 en la nube y Db2 Warehouse en la nube.
Oracle requiere la opción Oracle Advanced Security para Oracle 10g y 11g para habilitar TDE. Oracle TDE aborda los requisitos de cifrado asociados con los mandatos de seguridad y privacidad públicos y privados, como PCI y California SB 1386. El cifrado de columna de Oracle Advanced Security TDE se introdujo en Oracle DataBase 10g Release2. El cifrado de espacio de tabla TDE de seguridad avanzada de Oracle y la compatibilidad con módulos de seguridad hardware (HSM) se introdujeron con Oracle Database 11gR1. Las claves para TDE se pueden almacenar en un HSM para administrar claves entre servidores, proteger claves con hardware e introducir una separación de tareas.
La misma clave se utiliza para cifrar columnas en una tabla, independientemente del número de columnas que se cifran. Estas claves de cifrado se cifran utilizando la clave maestra del servidor de la base de datos y se almacenan en una tabla de diccionario en la base de datos

## Microsoft SQL Server TDE

SQL Server utiliza una jerarquía de cifrado que permite compartir bases de datos dentro de un clúster o migrar a otras instancias sin volver a cifrarlas. La jerarquía consta de una combinación de cifrados simétricos y asimétricos:
* La API de protección de datos de Windows (DPAPI) protege una única clave maestra de servicio (SMK) para toda la instancia.
* La clave maestra del servicio cifra la clave maestra de la base de datos (DMK).
* La clave maestra de la base de datos se utiliza junto a un certificado para cifrar la clave de cifrado de la base de datos.
* La clave de cifrado de la base de datos se utiliza para cifrar los archivos de la base de datos subyacentes con el cifrado AES o 3DES.
* La base de datos maestra que contiene información a nivel de sistema, cuentas de usuario y servicios de administración no está encriptada.
Durante las copias de seguridad de la base de datos, la compresión se produce después del cifrado. Debido al hecho de que los datos fuertemente cifrados no se pueden comprimir. Las copias de seguridad de la bases de datos cifradas TDE requieren recursos adicionales.
Para habilitar el arranque automático, SQL Server almacena las claves de cifrado de nivel más bajo en el almacenamiento persistente (utilizando el almacén DPAPI). Esto presenta un posible problema de seguridad porque las claves almacenadas se pueden recuperar directamente de un sistema en vivo o de copias de seguridad y se pueden utilizar para descifrar las bases de datos.