Análise de risco de reidentificação

A análise de risco de reidentificação (ou apenas análise de risco) é o processo de analisar dados confidenciais para encontrar propriedades que possam aumentar o risco de os sujeitos serem identificados ou de informações confidenciais sobre indivíduos serem reveladas. Pode usar métodos de análise de risco antes da anonimização para ajudar a determinar uma estratégia de anonimização eficaz ou após a anonimização para monitorizar eventuais alterações ou valores atípicos.

A desidentificação é o processo de remoção de informações de identificação dos dados. A proteção de dados confidenciais pode detetar e desidentificar dados confidenciais para si de acordo com a forma como a configurou para estar em conformidade com os requisitos da sua organização.

Por outro lado, a reidentificação é o processo de fazer corresponder dados anonimizados com outros dados disponíveis para determinar a pessoa a quem os dados pertencem. A reidentificação é mais frequentemente abordada no contexto de informações pessoais confidenciais, como dados médicos ou financeiros.

Para mais informações sobre a utilização da proteção de dados confidenciais para medir vários tipos de risco, consulte o artigo Medição do risco de reidentificação e divulgação.

Termos e técnicas de análise de risco

Se não remover corretamente ou de forma adequada a identificação de dados confidenciais, corre o risco de um atacante voltar a identificar os dados ou aprender informações confidenciais sobre indivíduos, o que pode ter implicações graves para a privacidade. A proteção de dados confidenciais pode ajudar a calcular este risco, de acordo com várias métricas.

Antes de analisar as métricas, vamos definir alguns termos comuns:

  • Identificadores: os identificadores podem ser usados para identificar exclusivamente um indivíduo. Por exemplo, o nome completo ou o número de identificação emitido por uma entidade governamental de uma pessoa são considerados identificadores.
  • Quasi-identificadores: os quasi-identificadores não identificam exclusivamente um indivíduo, mas, quando combinados e referenciados cruzadamente com registos individuais, podem aumentar substancialmente a probabilidade de um atacante conseguir reidentificar um indivíduo. Por exemplo, os códigos postais e as idades são considerados quase identificadores.
  • Dados confidenciais: os dados confidenciais são dados protegidos contra a exposição não autorizada. Os atributos como condições de saúde, salário, ofensas criminais e localização geográfica são normalmente considerados dados confidenciais. Tenha em atenção que pode haver sobreposição entre identificadores e dados confidenciais.
  • Classes de equivalência: uma classe de equivalência é um grupo de linhas com identificadores quase idênticos.

Existem quatro técnicas que a proteção de dados confidenciais pode usar para quantificar o nível de risco associado a um conjunto de dados:

  • k-anonimato: Uma propriedade de um conjunto de dados que indica a capacidade de reidentificação dos respetivos registos. Um conjunto de dados é k-anónimo se os quase identificadores de cada pessoa no conjunto de dados forem idênticos aos de, pelo menos, k – 1 outras pessoas também no conjunto de dados.
  • l-diversity: Uma extensão da anonimização de k que mede adicionalmente a diversidade dos valores sensíveis para cada coluna em que ocorrem. Um conjunto de dados tem l-diversidade se, para cada conjunto de linhas com identificadores quase idênticos, existirem, pelo menos, l valores distintos para cada atributo sensível.
  • k-map: Calcula o risco de reidentificação comparando um determinado conjunto de dados anonimizado de indivíduos com um conjunto de dados de reidentificação, ou "ataque", maior. A proteção de dados confidenciais não conhece o conjunto de dados de ataque, mas modela-o estatisticamente através de dados disponíveis publicamente, como o censo dos EUA, através de um modelo estatístico personalizado (indicado como uma ou mais tabelas do BigQuery) ou através da extrapolação da distribuição de valores no conjunto de dados de entrada. Cada conjunto de dados (o conjunto de dados de exemplo e o conjunto de dados de reidentificação) partilha uma ou mais colunas de quase identificadores.
  • Delta-presence (δ-presence): Estima a probabilidade de um determinado utilizador numa população maior estar presente no conjunto de dados. Isto é usado quando a associação ao conjunto de dados é, em si, informação sensível. Semelhante ao k-map, a proteção de dados confidenciais não conhece o conjunto de dados de ataque, mas modela-o estatisticamente usando dados disponíveis publicamente, distribuições especificadas pelo utilizador ou extrapolação do conjunto de dados de entrada.

Acerca do k-anonimato

Quando recolhe dados para fins de investigação, a desidentificação pode ser essencial para ajudar a manter a privacidade dos participantes. Ao mesmo tempo, a desidentificação pode resultar na perda da utilidade prática de um conjunto de dados. A anonimidade k foi criada a partir da necessidade de quantificar a reidentificação de um conjunto de dados e equilibrar a utilidade dos dados de pessoas desidentificados e a privacidade das pessoas cujos dados estão a ser usados. É uma propriedade de um conjunto de dados que pode ser usada para avaliar a possibilidade de reidentificação dos registos no conjunto de dados.

Por exemplo, considere um conjunto de dados de pacientes:

ID do paciente Nome completo Código postal Idade Condição
746572 John J. Jacobsen 98122 29 Doença cardíaca
652978 Debra D. Dreb 98115 29 Diabetes tipo II
075321 Abraham A. Abernathy 98122 54 Cancro, fígado
339012 Karen K. Cracóvia 98115 88 Doença cardíaca
995212 William W. Wertheimer 98115 54 Asma

Este conjunto de dados contém os três tipos de dados que descrevemos anteriormente: identificadores, quase identificadores e dados confidenciais.

Se os dados confidenciais, como as condições de saúde, não forem ocultados ou censurados, um atacante pode usar os quase identificadores aos quais cada um está anexado, fazer referências cruzadas com outro conjunto de dados que contenha quase identificadores semelhantes e reidentificar as pessoas às quais esses dados confidenciais se aplicam.

Diz-se que um conjunto de dados é k-anónimo se cada combinação de valores para colunas demográficas no conjunto de dados aparecer para, pelo menos, k registos diferentes. Lembre-se de que um grupo de linhas com quase identificadores idênticos é denominado "classe de equivalência". Por exemplo, se tiver anulado a identificação dos quase identificadores de forma suficiente para haver um mínimo de quatro linhas cujos valores de quase identificadores sejam idênticos, o valor de anonimato k do conjunto de dados é 4.

IDs das entidades e cálculo da k-anonimidade

Uma opção importante que a proteção de dados confidenciais inclui ao calcular o anonimato k é o identificador (ID) de entidade opcional. Um ID da entidade permite-lhe determinar com maior precisão o anonimato k no cenário comum em que várias linhas do seu conjunto de dados correspondem ao mesmo utilizador. Caso contrário, se cada linha, independentemente do utilizador, for contabilizada separadamente, a contagem total de utilizadores usada para calcular o valor de anonimato k do conjunto de dados é artificialmente elevada. Isto torna os valores de anonimato k calculados imprecisos.

Considere o seguinte conjunto de dados simples:

ID do utilizador Código postal
01 42000
02 17000
02 42000
03 17000
03 42000
03 42000
04 42000
04 17000

Sem usar um ID de entidade para indicar quando diferentes linhas pertencem ao mesmo utilizador, o número total de utilizadores usado ao calcular o anonimato k é 8, mesmo que o número real de utilizadores seja 4. Neste conjunto de dados, usando métodos de cálculo de anonimato-k tradicionais (sem um ID de entidade), 3 pessoas têm um valor de anonimato-k de 3 e 5 pessoas têm um valor de anonimato-k de 5, apesar de existirem apenas 4 pessoas reais na base de dados.

A utilização de um ID da entidade faz com que a proteção de dados sensíveis considere o conjunto múltiplo de códigos postais ao qual um utilizador está associado como um quase identificador ao calcular o anonimato k. No caso do nosso exemplo, existem, na verdade, três valores de quase identificadores "compostos" porque existem três combinações distintas de quase identificadores atribuídas aos utilizadores: 42 000, o conjunto múltiplo de 17 000 e 42 000, e o conjunto múltiplo de 17 000, 42 000 e 42 000. Correspondem aos utilizadores da seguinte forma:

  • [42000] está associado a 1 utilizador único (01).
  • [17000, 42000] está associado a 2 utilizadores únicos (02 e 04).
  • [17000, 42000, 42000] está associado a 1 utilizador único (03).

Como pode ver, este método tem em conta que os utilizadores podem ocorrer mais do que uma vez na nossa base de dados de códigos postais e trata-os em conformidade quando calcula o anonimato k.

Recursos de k-anonimato

Para mais informações sobre a anonimização k, consulte o artigo Protecting Privacy when Disclosing Information: k-Anonymity and Its Enforcement through Generalization and Suppression, de Pierangela Samarati e Latanya Sweeney do Harvard University Data Privacy Lab.

Para saber como calcular a anonimização k com a proteção de dados confidenciais, com ou sem IDs de entidades, consulte o artigo Calcular a anonimização k para um conjunto de dados.

Acerca da l-diversidade

A l-diversidade está estreitamente relacionada com o k-anonimato e foi criada para ajudar a resolver a suscetibilidade de um conjunto de dados anónimo a ataques como:

  • Ataques de homogeneidade, nos quais os atacantes preveem valores confidenciais para um conjunto de dados anonimizados com k, tirando partido da homogeneidade dos valores num conjunto de k registos.
  • Ataques de conhecimento de fundo, nos quais os atacantes tiram partido das associações entre valores de quase identificadores que têm um determinado atributo sensível para restringir os valores possíveis do atributo.

A l-diversidade tenta medir o que um atacante pode saber sobre as pessoas em termos de k-anonimato e classes de equivalência (conjuntos de linhas com valores de quase identificadores idênticos). Um conjunto de dados tem l-diversidade se, para cada classe de equivalência, existirem, pelo menos, l valores únicos para cada atributo sensível. Para cada classe de equivalência, quantos atributos confidenciais existem no conjunto de dados? Por exemplo, se a l-diversidade = 1, significa que todos têm o mesmo atributo sensível. Se a l-diversidade = 2, significa que todos têm um de dois atributos sensíveis e assim sucessivamente.

Recursos de l-diversidade

Para mais informações sobre a l-diversidade, consulte l-Diversidade: privacidade além do anonimato k, de Ashwin Machanavajjhala, Johannes Gerke e Daniel Kifer do Departamento de Ciências Informáticas da Universidade de Cornell.

Para saber como calcular a l-diversidade com a Proteção de dados confidenciais, consulte o artigo Calcular a l-diversidade para um conjunto de dados.

Acerca do mapa k

O k-map é muito semelhante ao k-anonimato, exceto que pressupõe que o atacante provavelmente não sabe quem está no conjunto de dados. Use o k-map se o seu conjunto de dados for relativamente pequeno ou se o nível de esforço envolvido na generalização dos atributos for demasiado elevado.

Tal como a anonimização k, a anonimização k-map requer que determine que colunas da sua base de dados são quase identificadores. Ao fazê-lo, está a indicar que dados um atacante vai usar com maior probabilidade para reidentificar os sujeitos. Além disso, o cálculo de um valor de k-map requer um conjunto de dados de reidentificação: uma tabela maior com a qual comparar as linhas no conjunto de dados original.

Considere o seguinte pequeno conjunto de dados de exemplo. Estes dados de amostra fazem parte de uma base de dados hipotética maior, recolhida a partir de um inquérito cujas respostas incluíam informações confidenciais.

Código postal idade
85535 79
60629 42

Por si só, isto parece ser a mesma quantidade de informações para ambos os indivíduos. Na verdade, considerar o anonimato k para o conjunto de dados maior pode levar à afirmação de que o sujeito correspondente à segunda linha é altamente identificável. No entanto, se fizer uma cópia de segurança e considerar os dados, vai perceber que não é o caso. Em particular, considere o código postal 85535 dos Estados Unidos, onde vivem atualmente cerca de 20 pessoas. Provavelmente, só existe uma pessoa com exatamente 79 anos a viver no código postal 85535. Compare isto com o código postal 60629, que faz parte da área metropolitana de Chicago e alberga mais de 100 000 pessoas. Existem aproximadamente 1000 pessoas com exatamente 42 anos nesse código postal.

A primeira linha no nosso pequeno conjunto de dados foi facilmente reidentificada, mas não a segunda. No entanto, de acordo com o k-anonimato, ambas as linhas podem ser completamente exclusivas no conjunto de dados maior.

O k-map, tal como o k-anonimato, requer que determine que colunas da sua base de dados são quase identificadores. As APIs de análise de risco da proteção de dados confidenciais simulam um conjunto de dados de reidentificação para aproximar os passos que um atacante pode seguir para comparar o conjunto de dados original de modo a reidentificar os dados. No nosso exemplo anterior, uma vez que lida com localizações nos EUA (códigos postais) e dados pessoais (idades), e uma vez que assumimos que o atacante não sabe quem participou no inquérito, o conjunto de dados de reidentificação pode ser todas as pessoas que vivem nos EUA.

Agora que tem quasi-identificadores e um conjunto de dados de reidentificação, pode calcular o valor de k-mapa: os seus dados satisfazem o k-mapa com o valor k se cada combinação de valores para os quasi-identificadores aparecer, pelo menos, k vezes no conjunto de dados de reidentificação.

Tendo em conta esta definição e que a primeira linha na nossa base de dados corresponde provavelmente apenas a uma pessoa nos EUA, o conjunto de dados de exemplo não cumpre um requisito de valor de mapa de k de 2 ou mais. Para obter um valor de mapa k maior, podemos remover valores de idade, como fizemos aqui:

Código postal idade
85535 **
60629 **

Conforme mencionado anteriormente, o código postal 85535 tem cerca de 20 pessoas e o código postal 60629 tem mais de 100 000. Por conseguinte, podemos estimar que este novo conjunto de dados generalizado tem um valor de mapa k de cerca de 20.

Recursos de mapas de k

Para mais informações sobre o mapa k e a respetiva relação com o anonimato k, consulte o artigo Protecting Privacy Using k-Anonymity, de Khaled El Emam e Fida Kamal Dankar, no Journal of the American Medical Informatics Association.

Para saber como calcular estimativas de k-map com a proteção de dados confidenciais, consulte o artigo Calcular o k-map para um conjunto de dados.

Acerca da presença de δ

A presença delta (presença δ) estima o risco associado a um atacante que quer saber se o respetivo alvo está no conjunto de dados. Isto é ligeiramente diferente do risco de reidentificação, uma vez que o objetivo não é descobrir que registo exato corresponde a que indivíduo, mas sim saber se um indivíduo faz parte do conjunto de dados. A utilização desta métrica é particularmente adequada se todos os indivíduos no conjunto de dados partilharem um atributo sensível comum; por exemplo, todos têm o mesmo diagnóstico médico.

Tal como as outras métricas de risco, a presença de δ requer que determine que colunas da sua base de dados são quase identificadores. Ao fazê-lo, está a indicar que dados um atacante vai usar com maior probabilidade para descobrir que indivíduos estão no conjunto de dados. Tal como o mapa k, o cálculo da presença δ requer um conjunto de dados de ataque: uma tabela maior com a qual comparar as linhas no conjunto de dados original.

Considere o seguinte pequeno conjunto de dados de exemplo. Estes dados de amostra fazem parte de uma base de dados hipotética maior de pessoas com uma determinada doença genética.

Código postal idade
85942 72
85942 72
62083 53

No código postal 85942 dos Estados Unidos, existem aproximadamente 2 pessoas com 72 anos e, no código postal 62083, existem aproximadamente 5 pessoas com 53 anos. Os dois primeiros registos não são exatamente reidentificáveis porque ambos têm os mesmos quase identificadores. No entanto, uma vez que apenas dois indivíduos partilham estes quase identificadores na população mais vasta, um atacante pode deduzir que ambos sofrem da doença genética. A δ-presença quantifica este risco específico calculando a proporção de pessoas com determinados quase identificadores que estão no conjunto de dados.

A δ-presença, tal como as outras métricas de risco, requer que determine que colunas da sua base de dados são quase identificadores. Tal como na estimativa de k-map, as APIs de análise de risco da Proteção de dados confidenciais simulam um conjunto de dados da população para aproximar o conjunto de dados que um atacante pode usar para descobrir quem está no conjunto de dados. No nosso exemplo anterior, uma vez que se trata de localizações nos EUA (códigos postais) e dados pessoais (idades), e uma vez que assumimos que o atacante não sabe quem tem a doença genética, este conjunto de dados da população pode ser todas as pessoas que vivem nos EUA.

Agora que tem identificadores quase diretos e um conjunto de dados de reidentificação, pode calcular o valor de δ-presença: os seus dados satisfazem a δ-presença com o valor δ se cada combinação de valores para os identificadores quase diretos aparecer, no máximo, δ * k vezes no seu conjunto de dados, em que k é o número total de pessoas com estes valores de identificadores quase diretos no conjunto de dados da população. Ao contrário do k na anonimização de k ou no mapa de k, o δ na presença de δ é um número real entre 0 e 1.

Tendo em conta esta definição e que ambas as pessoas com 72 anos no código postal 85942 na população em geral também estão na nossa base de dados, este conjunto de dados não satisfaz a δ-presença para qualquer δ estritamente inferior a 1. Para obter um valor de δ-presença mais baixo, podemos remover o valor da idade das duas primeiras linhas:

Código postal idade
85942 **
85942 **
62083 53

Agora, uma vez que 80 pessoas vivem no código postal 85942, o valor δ para os dois primeiros registos é de aproximadamente 2 / 80 = 2,5%; e o valor δ para o terceiro registo é de aproximadamente 1 / 5 = 20%. Por conseguinte, podemos estimar que este novo conjunto de dados generalizado tem um valor de presença δ de cerca de 20%.

Recursos de presença δ

Para mais informações sobre a estimativa de δ-presença com base em dados estatísticos, consulte δ-Presence Without Complete World Knowledge, de Mehmet Ercan Nergiz e Chris Clifton do Department of Computer Science Technical Reports da Purdue University.

Para saber como calcular as estimativas de presença δ com a proteção de dados confidenciais, consulte o artigo Calcular a presença δ para um conjunto de dados.