Las Bases de Datos y el RGPD…¡Vamos a Cifrar! (2/3)

Carlos Rodríguez Morales    21 diciembre, 2018

Bien, ya nos hemos acercado a la norma y tenemos claro que a nivel regulatorio el cifrado de datos es un “must have”. Ahora vamos a dedicar un momento a saber algo más acerca del cifrado a nivel de archivos, de disco, etc., pero vamos a centrarnos en el cifrado de las BBDD, de aquellas que cumplen la norma y cómo hacerlo. Aun se usan en las empresas aplicaciones de terceros que no soportan el cifrado en sus bases de datos, por lo que la primera recomendación lógica es la siguiente:

Consulten a su proveedor por el lenguaje de desarrollo y la base de datos usadas por sus aplicaciones. Seguramente las aplicaciones obsoletas no cumplan el regulamiento normativo, y sus datos y los de sus clientes pueden ser susceptibles a ser atacados por terceros y se estén exponiendo a sanciones legales. 

Antes de hablar de los enfoques de cifrado, vamos a ver los diferentes estados de los datos digitales y los respectivos métodos de encriptación: 

  • Datos en reposo: datos que no se mueven activamente de un dispositivo a otro, o de una red a otra, como los datos almacenados en un disco duro, computadora portátil, unidad flash o archivados / almacenados de alguna otra manera. Para proteger los datos en reposo, las empresas pueden simplemente cifrar archivos confidenciales antes de almacenarlos y/o elegir cifrar la propia unidad de almacenamiento. 
  • Datos en movimiento / tránsito: datos que se mueven activamente de una ubicación a otra, como a través de Internet o de una red privada. Para proteger los datos en tránsito, las empresas a menudo eligen cifrar datos confidenciales antes de la transmisión y/o usar conexiones encriptadas (es decir, HTTPS, TLS y FTPS) para proteger el contenido de los datos en tránsito.
  • Datos en uso: datos que se almacenan en una memoria no persistente, generalmente en la memoria de acceso aleatorio (RAM) de la computadora, en el caché de la CPU o en los registros, mientras los equipos informáticos los procesan de forma activa. Los datos en uso son particularmente difíciles de cifrar porque se están procesando activamente y el cifrado puede afectar el rendimiento o hacer que el procesamiento sea imposible. 

Teniendo esto claro podemos ver los enfoques de cifrado, como os decía, cifrado de disco, de sistema de archivos, de aplicación y el que nos ocupa hoy, de bases de datos desde aqui 

Enfoques de cifrado

  • Cifrado de disco completo: utiliza software o hardware de cifrado de disco para cifrar cada bit de los datos que van en un disco o dispositivo de almacenamiento (como SAN o NAS) para evitar el acceso no autorizado al almacenamiento de datos.
  • Cifrado del sistema de archivos: es una forma de cifrado de disco donde los archivos o directorios individuales están cifrados por el propio sistema de archivos. Esto contrasta con el cifrado completo del disco donde se encripta toda la partición o el disco en el que reside el sistema de archivos. Esta es la forma de manejar el cifrado de tipos de datos no estructurados, como correos electrónicos, documentos, imágenes y archivos de audio y video.
  • Cifrado a nivel de la aplicación: una solución de seguridad de datos que, a nivel de la aplicación, cifra los datos confidenciales, por lo que solo las partes autorizadas pueden leerlos. Esta solución puede admitir diferentes mecanismos, como el cifrado para preservar el formato (FPE), el cifrado para preservar el orden (OPE) y la tokenización. Por ejemplo, con FPE, un número de tarjeta de crédito de 16 dígitos sigue siendo un número de 16 dígitos después del proceso de cifrado. Este esquema es útil cuando terceros procesan información que necesita ser encriptada, pero la aplicación que la usa debe ser ajena al cambio.

Y por ultimo, 

  • Cifrado de base de datos: el proceso de conversión de datos, dentro de una base de datos, de formato de texto simple a texto cifrado sin sentido mediante un algoritmo adecuado. El cifrado de la base de datos se puede proporcionar a nivel de archivo o columna. Se han desarrollado varias tecnologías, por ejemplo Transparent Data Encryption (TDE) empleado por Microsoft SQL, IBM DB2 y Oracle DB y MongoDB para cifrar archivos de base de datos, y aunque es seguro, el cifrado se hace en reposo, en el lado del servidor y encripta la base de datos completamente, por lo que es menos funcional, ya veremos mas adelante como se puede utilizar conjuntamente con Always Encrypted de MS SQL, ya que permite el cifrado de datos en reposo y en movimiento, se hace en el lado cliente, sin claves de cifrado en el servidor y permite encriptación por columnas. Para los desarrolladores, la recomendación es .NET 4.6. 

Como os decía, al cifrar los datos en el lado del cliente, Always Encrypted también protege los datos almacenados en columnas cifradas, en reposo y en tránsito, pero a menos que el objetivo sea proteger los datos confidenciales en uso, TDE es la opción recomendada para el cifrado en reposo, y TLS para proteger los datos en tránsito, de hecho, la recomendación es utilizar conjuntamente Always Encrypted, TDE y TLS: 

  • TDE como la primera línea de defensa (y para cumplir con los requisitos de cumplimiento comunes) para cifrar toda la base de datos en reposo. 
  • TLS para proteger todo el tráfico a la base de datos. 
  • Always Encrypted para proteger datos altamente confidenciales de usuarios de alto privilegio y malware en el entorno de base de datos.

También te puede interesar:
» Las Bases de Datos y el RGPD…¡Vamos a Cifrar! (1/3)
» Las Bases de Datos y el RGPD…¡Vamos a Cifrar! (3/3)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *