El algoritmo Datafly es un algoritmo para proporcionar anonimato en datos médicos. Fue desarrollado por Latanya Arvette Sweeney entre 1997 y 1998. [ 1 ] [ 2 ] El anonimato se logra mediante la generalización, sustitución, inserción y eliminación automática de información según corresponda, sin perder muchos de los detalles presentes en los datos. El método puede utilizarse en tiempo real en la seguridad basada en roles dentro de una institución, y en modo por lotes para exportar datos desde una institución. Las organizaciones publican y reciben datos médicos con todos los identificadores explícitos —como el nombre— eliminados, con la creencia errónea de que se mantiene la confidencialidad del paciente porque los datos resultantes parecen anónimos. Sin embargo, los datos restantes pueden utilizarse para reidentificar a las personas mediante la vinculación o comparación de los datos con otras bases de datos o mediante el análisis de características únicas que se encuentran en los campos y registros de la propia base de datos .
El algoritmo Datafly ha sido criticado por intentar lograr la anonimización mediante la sobregeneralización. El algoritmo selecciona el atributo con el mayor número de valores distintos como el primero en generalizarse. [ 3 ]
Algoritmo principal
A continuación se presenta un esquema del algoritmo Datafly. [ 4 ]
Entrada : Tabla privadaPT; cuasi-identificador QI = ( A 1 , ..., A n ),restricción de k -anonimato k ; jerarquías de generalización de dominio DGH A i , donde i = 1,..., n con funciones acompañantes f A i , y pérdida, que es un límite en el porcentaje de tuplas que se pueden suprimir. PT[id] es el conjunto de identificadores únicos o claves para cada tupla.
Salida : MGT una generalización de PT[QI] que impone k -anonimato
Supone que : | PT | ≤ k , y la pérdida * | PT | = k
algoritmo Datafly :
// Construir una lista de frecuencias que contenga secuencias únicas de valores a través del cuasi-identificador en PT,
// junto con el número de ocurrencias de cada secuencia.
- 1. Sea freq un vector expandible y colapsable sin elementos inicialmente. Cada elemento tiene la forma ( QI, frecuencia, SID ), donde SID = { id i : ∃ t [ id ] ∈ [ id ] ⇒ t [ id ] = id i }; y, frecuencia = |SID|. Por lo tanto, freq también es accesible como una tabla sobre (QI, frecuencia, SID).
- 2. deja pos0, total0
- 3. mientras total ≠ |PT| hacer
- 3.1 freq[pos]( t [QI], ocurre, SID ) donde t [QI] ∈ [QI], ( t [ QI ],__, ___ )freq; ocurre = |PT| - |PT[QI] – { t [QI]}|; y, SID = { id i : ∃ t [ id ]PT[id] ⇒ t [ id ] = id i }
- 3.2 pospos + 1, totaltotal + ocurre
- // Crea una solución generalizando el atributo con el mayor número de valores distintos.
- // y suprimiendo no más del número de tuplas permitido.
- 4. deja abajo0
- 5. para pos1 a |freq| hacer
- 5.1 ( __, recuento )frecuencia[pos]
- 5.2 si count < k entonces hacer
- 5.2.1 abajodebajo + recuento
- 6. Si belowk > k, entonces haga: // Nota. pérdida * |PT| = k .
- 6.1 frecuenciageneralizar(frecuencia)
- 6.2 Ir al paso 4
- 7. de lo contrario hazlo
- // afirmar: el número de tuplas a suprimir en freq es ≤ pérdida * |PT|
- 7.1 frecuenciasuprimir(freq, belowk)
- 7.2 MGTreconstruir(frec)
- 8. Regresar MGT.
Referencias
- ↑ Latanya Sweeney. "Datafly: un sistema para proporcionar anonimato en datos médicos" . Consultado el 19 de enero de 2014 .
- ↑ L. Sweeney, Datafly: un sistema para proporcionar anonimato en datos médicos. Seguridad de bases de datos, XI: Estado y perspectivas, T. Lin y S. Qian (eds.), Elsevier Science, Ámsterdam, 1998.
- ↑ Xiong, Li . "Anonimización de datos - Algoritmos de generalización" (PDF) . Archivado del original (PDF) el 16 de enero de 2014. Recuperado el 19 de enero de 2014 .
- ↑ Latanya Sweeney (2001). Control de divulgación computacional: una introducción a la protección de la privacidad de datos (tesis). MIT. pág. 113. hdl : 1721.1/8589 .
Enlaces externos
- Detalles del algoritmo Datafly
- Privacidad
- Anonimato
- historiales médicos
- Protección de datos
- conjuntos de datos
- Ofuscación