Guía práctica para la protección de datos

En la actualidad, recopilar información personal y de usuarios es algo común que atraviesa tanto a empresas privadas como a organismos del Estado. La información de cada individuo suele estar acompañada de datos privados y personales que podrían identificarse si se cruzan con otras fuentes de información.  El proceso de anonimización consiste en eliminar la posibilidad de asociar registros de datos con los individuos a los que esos registros se refieren. Se trata de una metodología de trabajo que permite que la población, terceros o miembros de organizaciones puedan hacer uso de esos datos sin vulnerar la identidad y privacidad del individuo.  En el documento de trabajo Anónimos pero no tanto: cómo hacer una gestión de datos eficiente sin poner en riesgo la privacidad se profundiza sobre posibles soluciones al problema de compartir información sin violar el derecho a la privacidad. Esta es una guía práctica de anonimización con el software libre de Python para trabajar en conjuntos de datos sin que pierdan su granularidad y evitando posibles riesgos de identificación.

Algunas consideraciones a la hora hacer el proceso de anonimización

  1. Preservar la identidad de las personas que conforman una base de datos es una práctica que se debe tener siempre presente. La preservación de la identidad es un derecho del ciudadano y una obligación de quien dispone de la información.
  2. Siempre es importante tener en cuenta el escenario en que van a ser utilizados los datos, para poder evaluar los riesgos de que sean compartidos y con ello la rigurosidad del proceso.
  3. Es importante focalizarse en tener la información que se necesita para el análisis y no acumular información de más. 
  4. Es deseable buscar un equilibrio entre la seguridad de los datos personales y la riqueza de contar con información de calidad: lo que se gana en seguridad se resigna en calidad de análisis.

Pasos para lograr una anonimización efectiva

A la hora de realizar el proceso de anonimización, existen cuatro factores que resulta fundamental identificar: 
  1. Datos: ¿Con qué otras bases se puede cruzar la información que se intenta proteger? Se deben analizar todas las variables que tienen en la base y pensar si estas pueden cruzarse con alguna otra fuente de datos externa que permita la reidentificación de los individuos. Si alguna de estas variables es sensible de ser cruzada entonces tenemos que, de alguna manera, enmascararla o encriptarla.
  2. Riesgos: Esto es importante para priorizar o no la encriptación de los datos y va a depender de los escenarios de uso. Si el riesgo de que se reidentifique a los ciudadanos es alto y con ello se vulnera su identidad, entonces se sugiere evitarlo modificando y anonimizando la base de datos. Este riesgo va a depender de cómo se utilicen los datos y si estos van a ser públicos o no.
  3. Soluciones: Además de eliminar columnas innecesarias, aquellas incluidas pueden atravesar un proceso de hashing y encriptado o de remoción de datos personales.
  4. Ataques y problemas: Teniendo en cuenta que los ataques pueden cambiar con el paso del tiempo es necesario revisar las soluciones pensando en estos riesgos. Esto involucra considerar nuevos datos publicados que constituyan un nuevo riesgo de reidentificación.
Antes de poner en práctica cualquier metodología de anonimización, es fundamental hacer las preguntas correctas: ¿se necesitan todas las variables que se están almacenando? ¿Las variables que se guardan son todas necesarias para llevar a cabo el posterior análisis o algunas son redundantes? Como se puede ver, no son preguntas que requieran un saber científico o técnico sobre datos: son preguntas que apuntan a consideraciones morales y éticas. Son preguntas que cualquier persona debería estar en condiciones de responder, no solo la ciencia de datos. Para más información relevante sobre este tema, se recomienda leer Data Minimization: Key To Protecting Privacy And Reducing Harm (Acces Now, 2021).

Algunas librerías para aplicar en Python

Scrubadub: Esta librería permite quitar información personal de textos. Esto incluye nombres, direcciones de correo electrónico, urls, usuarios de Twitter o Instagram, fechas de nacimiento, entre otros. Es útil para tratar aquellos campos donde haya un texto con partes a enmascarar. Hashlib: Es una librería de Python que permite encriptar datos con una serie de distintos algoritmos. Los algoritmos de hashing son funciones matemáticas usadas para transformar datos en valores o códigos hash y que sea imposible identificar el contenido original de ese dato.   

En el siguiente enlace, se puede acceder al repositorio asociado a este documento, donde proponemos el uso de herramientas para proteger datos, que no pretenden ser exhaustivas ni completamente abarcativas. ejemplificadas en el lenguaje Python; y descargar todos los datos.

Publicaciones relacionadas