La Agencia Española de Protección de Datos (AEPD) ha lanzado una nueva guía sobre el hash como técnica de seudonimización de datos personales.
El RGPD menciona la seudonimización de datos personales entre las medidas técnicas y organizativas recomendadas para mantener un nivel de seguridad adecuado al riesgo. Sin embargo, no especifica cómo se pueden seudonimizar los datos. En este contexto, las funciones hash son una de las alternativas, y a estos efectos la AEPD ha preparado una guía para clarificar su aplicación y funcionamiento. En el blog de hoy detallamos sus elementos clave.
¿Qué significa ‘seudonimización’?
Conforme al RGPD, ‘seudonimización’ significa “el tratamiento de datos personales de manera tal que ya no puedan atribuirse a un interesado sin utilizar información adicional, siempre que dicha información adicional figure por separado y esté sujeta a medidas técnicas y organizativas destinadas a garantizar que los datos personales no se atribuyan a una persona física identificada o identificable”.
¿Qué es una función hash?
¿Alguna vez has intentado escribir un tweet de más de 280 caracteres y no has podido por la limitación de caracteres de Twitter? Las funciones hash han llegado para salvarte.
Una función hash es un proceso que transforma cualquier conjunto arbitrario de datos en una nueva serie de caracteres con una longitud fija, independientemente del tamaño de los datos de entrada. Por ejemplo, el texto completo de El Quijote podría quedar reducido a una serie de cien números tras aplicar una función hash. ¿Cómo? Las funciones hash dividen el mensaje de entrada en diferentes bloques, a los cuales asignan un hash por cada uno de ellos, que después son sumados.
Las funciones hash y el riesgo de reidentificación
¿Cuál es la probabilidad de que los datos de salida de una función hash se reviertan a los de entrada? Imaginemos que queremos asociar un valor hash a cada uno de los números de la Seguridad Social en España. El elemento más relevante a fin de dificultar o facilitar la reidentificación es el denominado “orden” en el espacio de mensajes.
El espacio de mensajes está representado por todos los posibles conjuntos de datos de los cuales se puede generar un hash (en nuestro caso, los números de la Seguridad Social de España). Cuanto más estricto sea el “orden” (por ejemplo, se establece que únicamente entrarán en la prueba los números de la Seguridad Social de mujeres entre 30 y 45 años), más pequeño será el conjunto de números (espacio de mensajes). Esto garantiza la efectividad del hash como identificador único, pero también incrementa la probabilidad de que se pueda identificar el conjunto de datos de entrada a partir del conjunto de datos de salida.
El grado de desorden de un conjunto de datos se denomina entropía. Cuanto menor sea el espacio de mensajes y la entropía, menor será también el riesgo de colisión, pero a su vez será más probable la reidentificación y viceversa: cuanto mayor sea la entropía, mayor será la posibilidad de colisión y menor el riesgo de reidentificación. Este es el motivo por el que resulta esencial medir y controlar la cantidad de información que se someterá a la función hash cuando tratamos de proteger información mediante este vía o cualquier otra técnica de seudonimización o encriptado.
¿Cómo se aplica esto en el día a día? A efectos prácticos, cuantas más variables se incluyan para “ordenar” el espacio de mensajes (edad, sexo, estatus socioeconómico, nacionalidad, etc.), mayor es el riesgo de identificar el contenido del hash (singularizar a un individuo).
El riesgo de re-identificación es incluso mayor cuando se vincula información adicional al hash.
Estrategias para obstaculizar la re-identificación
Una estrategia para dificultar la reidentificación del valor del hash es utilizar un algoritmo de cifrado con una clave que almacena de forma confidencial el responsable o intervinientes en el tratamiento, que cifre bien el mensaje antes de realizar el hash.
La efectividad del encriptado dependerá del entorno (entornos distribuidos pueden incrementar el riesgo), la vulnerabilidad a ataques y el volumen de información encriptada (cuenta más información, más sencillo será llevar a cabo un criptoanálisis), entre otros.
Como una alternativa al encriptado, se pueden añadir campos aleatorios al mensaje original o de entrada, de forma que se obtiene un “mensaje extendido” que incrementa la entriopía.
El propio cálculo del hash (por ejemplo, la selección de un algoritmo concreto y su implementación), elementos relacionados con el espacio de mensajes (como la entriopía), información vinculada y elementos de seguridad física además de factores humanos, suponen una serie de debilidades e introducen diferentes elementos de riesgo que convierten a la función hash en una técnica de seudonimización más que de anonimización.
Conforme a la AEPD, la utilización de las técnicas de hash para seudonimizar o anonimizar la información de carácter personal deberá venir acompañada de un análisis de los riesgos de reidentificación que tiene la técnica de hash concreta empleada en el tratamiento. “Para considerar la técnica de hash como una técnica de anonimización, dicho análisis de riesgos ha de evaluar, además: