Llegamos a ustedes gracias a:



Reportajes y análisis

11 tecnologías que mejoran la seguridad de las bases de datos

[19/07/2021] Las bases de datos contienen grandes cantidades de información personal, incluyendo algunos datos muy sensibles, lo que crea dolores de cabeza a las empresas que deben conservarlos. Ahora, sofisticadas herramientas y tecnologías están haciendo posible que los desarrolladores de bases de datos tengan su pastel y, para seguir en la metáfora, no cuenten las calorías manteniendo la información privada.

Las soluciones dependen de una inteligente aplicación de las matemáticas. Algunos de los mecanismos más sencillos no son más que versiones modernas de códigos secretos, esencialmente versiones digitales de la clásica rueda decodificadora. Otros son extensiones más complejas que llevan las matemáticas a una mayor flexibilidad y responsabilidad. Muchos son versiones prácticas de ideas que llevan décadas circulando en los laboratorios, pero que por fin son lo suficientemente estables como para confiar en ellas.

[Reciba lo último de CIO Perú suscribiéndose a nuestro newsletter semanal]

Los algoritmos se están convirtiendo en la base para cimentar las relaciones comerciales y garantizar un flujo de trabajo preciso y sin fraudes. Estos enfoques están simplificando la prestación de servicios personalizados a los clientes por parte de las empresas, al tiempo que protegen sus secretos. Y están permitiendo un mejor cumplimiento de la normativa que regula el flujo de datos sin obstaculizar la prestación de servicios.

He aquí once herramientas y tecnologías que están simplificando la confianza en las bases de datos.

1. Cifrado básico

La solución más sencilla a veces es suficiente. Los algoritmos modernos de encriptación bloquean los datos con una clave, de modo que solo pueden ser leídos por alguien que posea la clave. Muchas bases de datos pueden cifrar los datos utilizando estándares como AES. Estas soluciones son las más fuertes contra la pérdida de hardware, quizás por robo. Sin la clave de cifrado adecuada, los datos siguen siendo seguros.

Sin embargo, los algoritmos de encriptación simétrica tienen límites para proteger las computadoras en funcionamiento si un atacante es capaz de colarse. La misma clave que permite a la base de datos procesar operaciones legítimas, podría ser encontrada por el atacante. Muchas bases de datos ofrecen una opción para cifrar la información "en reposo". Oracle, por ejemplo, llama a su opción "cifrado de datos transparente" para enfatizar lo poco que debe hacer el desarrollador.

2. Privacidad diferencial

Esta técnica despliega las matemáticas de una manera diferente. En lugar de encerrar la información en una caja fuerte digital, añade una cantidad de ruido cuidadosamente ajustado para que sea difícil averiguar qué registro corresponde a una persona concreta. Si el ruido se añade correctamente, no distorsionará muchas estadísticas como los promedios. Si se añaden o restan algunos años al azar de las edades de un conjunto de datos, la edad media seguirá siendo la misma, pero puede ser difícil encontrar a una persona por su edad.

La utilidad de la solución varía. Es mejor para entregar conjuntos de datos a socios no confiables que quieran estudiar los datos, generalmente calculando promedios y tamaños de grupos. Muchos algoritmos hacen un buen trabajo añadiendo ruido de forma que no se distorsionen muchas de las estadísticas agregadas. Entender qué algoritmos de aprendizaje automático pueden seguir funcionando bien con bits distorsionados es un área de investigación activa.

Microsoft y Google ofrecen herramientas para integrar los algoritmos con almacenes de datos y algoritmos de aprendizaje automático. El Privacy-On-Beam de Google, por ejemplo, integra el mecanismo de adición de ruido con el procesamiento del pipeline de Apache Beam.

3. Funciones Hash

Estos cálculos, a veces denominados "código de autentificación de mensajes" o "función unidireccional", reducen un archivo grande a un número más pequeño de forma que es prácticamente imposible revertirlo. Dado un resultado o código concreto, se tardará demasiado en encontrar un archivo que produzca ese código concreto.

Estas funciones son una parte esencial de las cadenas de bloques, que las aplican a todos los cambios en los datos de forma que puedan rastrear e identificar las manipulaciones. Evitan el fraude en las transacciones de criptomonedas, y muchos están aplicando estas técnicas a otras bases de datos que necesitan la garantía de que los datos son coherentes. La incorporación de estas técnicas puede ayudar a resolver los problemas de cumplimiento de la normativa.

Los Algoritmos Hash Seguros (SHA) del Instituto Nacional de Estándares y Tecnología (NIST) son una colección de estándares ampliamente utilizados. Algunas de las versiones anteriores, como SHA-0 y SHA-1, tienen debilidades conocidas, pero las versiones más recientes, como SHA-2 y SHA-3, se consideran muy seguras.

4. Firmas digitales

Los algoritmos de firma digital, como RSA o DSA, son cálculos más sofisticados que combinan las propiedades de detección de manipulaciones de las funciones hash con una persona o institución concreta que certifica la información. Se basan en una clave secreta que solo conoce la parte responsable. Las criptomonedas, por ejemplo, vinculan la propiedad de la riqueza a la persona que conoce la clave correcta. Las bases de datos que rastrean la responsabilidad personal pueden incluir firmas digitales que validan transacciones particulares.

5. SNARKs

Un argumento sucinto de conocimiento no interactivo (SNARK) es una versión más sofisticada de las firmas digitales que puede dar fe de información personal compleja sin revelar la información en sí. Este juego de manos se basa en una matemática más sofisticada que a veces se denomina "prueba de conocimiento cero" (ZKP, por sus siglas en inglés).

Las bases de datos que incorporan las ZKP y otras pruebas similares pueden proteger la privacidad de los usuarios, al tiempo que garantizan el cumplimiento de la normativa. Un ejemplo muy sencillo, por ejemplo, podría ser una forma de permiso de conducir digital que certifique que una persona tiene la edad suficiente para beber alcohol sin revelar su fecha de nacimiento. Algunos están estudiando la posibilidad de aplicar esta tecnología a los pasaportes para vacunas.

Los SNARK y otras pruebas no interactivas son una forma activa de investigación. Decenas de implementaciones de algoritmos que utilizan diversos lenguajes de programación constituyen una buena base para nuevos proyectos.

6. Cifrado homomórfico

La única forma de trabajar con datos bloqueados con algoritmos de encriptación tradicionales es descifrarlos, un proceso que puede exponerlos a cualquiera que tenga acceso a la computadora que realiza el trabajo. Los algoritmos de encriptación homomórfica están diseñados para que sea posible realizar cálculos sobre la información encriptada sin descifrarla. Los algoritmos más sencillos permiten realizar una operación aritmética como, por ejemplo, sumar dos números cifrados. Los algoritmos más elaborados pueden realizar cálculos arbitrarios, pero a menudo a un ritmo mucho más lento. Encontrar el enfoque más eficiente para un problema concreto es un área de investigación activa.

IBM, uno de los pioneros de la investigación en este campo, ha publicado un conjunto de herramientas para integrar su cifrado homomórfico con aplicaciones para iOS y MacOS.

7. Procesamiento federado

Algunos desarrolladores dividen su conjunto de datos en partes más pequeñas, a veces dramáticamente más pequeñas, y luego las distribuyen a muchas computadoras independientes. A veces, las ubicaciones están desordenadas, por lo que puede ser imposible predecir qué computadora albergará cada registro. Estas soluciones suelen basarse en paquetes de software diseñados para acelerar el trabajo con los llamados big data, ejecutando los algoritmos de búsqueda o análisis en paralelo. La intención original era la velocidad, pero una mayor resistencia a los ataques puede ser un efecto secundario.

8. Bases de datos totalmente distribuidas

Si dividir un conjunto de datos en varios trozos puede proteger la privacidad, ¿por qué no mil millones de trozos o más? Una solución más común es almacenar los datos directamente donde se crean y utilizan. El smartphone de un usuario suele tener mucha potencia de cálculo y almacenamiento extra. Si hay poca necesidad de análisis y procesamiento centralizados, puede ser más rápido y rentable evitar el envío a un servidor en la nube.

Muchos navegadores, por ejemplo, admiten el almacenamiento local de estructuras de datos complejas. Los estándares del W3C incluyen el almacenamiento local para modelos de tipo documento con claves y valores, así como una versión indexada para modelos más relacionales.

9. Datos sintéticos

Algunos investigadores están creando conjuntos de datos totalmente sintéticos construidos mediante la generación de nuevos valores de forma aleatoria, pero que siguen el mismo patrón y son esencialmente idénticos desde el punto de vista estadístico. Un grupo de investigación conocido como RTI, por ejemplo, creó una versión de los datos del censo de EE.UU. del 2010 llena de personas que viven en direcciones aleatorias. Las personas eran completamente imaginarias, pero sus direcciones e información personal se eligieron para que tuvieran el mismo perfil estadístico básico que los valores reales. Los investigadores pueden probar algoritmos y generar soluciones que pueden ser tan precisas como trabajar con datos reales en muchos casos.

10. Intermediarios y proxies

Algunos investigadores están creando herramientas que limitan la recogida de datos y los preprocesan antes de almacenarlos. Rally de Mozilla, por ejemplo, rastrea los hábitos de navegación para los investigadores que quieren estudiar el flujo de información a través de Internet. Instala un complemento especial mientras dura la investigación y lo elimina al final. La herramienta formaliza la relación y hace cumplir las reglas de recopilación y agregación.

11. Sin datos

La computación sin estado es la base de gran parte de la web, y muchos esfuerzos por la eficiencia tienen éxito cuando reimaginan el trabajo de forma que requiera el menor registro posible. En algunos casos extremos, cuando el cumplimiento de las normas lo hace posible y los usuarios están dispuestos a aceptar un servicio menos personalizado, la eliminación de la base de datos puede hacer lo máximo por la privacidad.


Puede ver también: