Skip to main content

Modulo que, dado um determinado texto, anónimiza a sua informação.

Project description

Anonimização de dados

"If you think you've anonymized your data, you're probably wrong"

A anonimização de dados é um processo que tem como objetivo remover ou ocultar informações pessoais identificáveis dos dados, de forma a garantir a privacidade dos indivíduos e a proteção de dados sensíveis. Instituições como Tribunais ou Hospitais possuem grandes quantidades de informação que pode ser utilizada para vários fins. Tratando-se de informações sensíveis, tais como acórdãos judiciais e relatórios médicos é necessário proceder à anonimização dos mesmos de modo a garantir a segurança e privacidade das pessoas mencionadas nesses documentos.

Dados considerados para anonimização:

  • Nomes de pessoas, alcunhas e apelidos

  • Moradas e códigos postais

  • Datas

  • Números pessoais ou fiscais, número de passaporte, número de carta de condução ou qualquer outro documento pessoal

  • Endereços de correio eletrónico, endereços web,endereço de redes sociais (e nomes de utilizador)

  • Nomes de Organizações

  • Informação entre aspas

No que diz respeito ao método concreto de anonimização apresentamos as seguintes abordagens:

  • O nome, alcunha e apelido reais são substituídos pelas correspondentes iniciais intercaladas com ponto final;

  • Os endereços de correio electrónico, endereços web e de redes sociais são substituídos pelo tipo de serviços de internet seguido de três pontos. Por exemplo:

    • Endereço de correio electrónico = email...

    • Página web = www...

    • Endereço de rede social = facebook... , twitter... , linkedin... ou instagram...

  • Os nomes de utilizador (handles) do gênero de twitter e instagram são substituidos pelo arroba inicial. Poe exemplo:

    • @spln2223 = @...
  • Os números de cartão de cidadão, carta de condução, segurança social e identificação fiscal são anonimizados através da utilização de uma palavra para a descrição do documento, seguida de três pontos. Por exemplo:

    • Número de passaporte AA000000 = passaporte....
  • A informação entre aspas é considerada sensível e portanto é completamente subsituida por "..."

  • As datas e moradas (e em casos especiais códigos postais) são anonimizados através da utilização de uma palavra que a descreve. Por exemplo:

    • Rua 25 de Abril, Silvares, Guimarães = morada...
    • 4834-300 = codigo-postal...
    • 27 de Agosto = data...

Utilização

shadow [-h] [-i INPUT] [-o OUTPUT] [--nlp]

-h, --help            Mostra uma mensagem de ajuda e termina
-i INPUT, --input INPUT
                    Ficheiro de input
-o OUTPUT, --output OUTPUT
                    Ficheiro de output
--nlp
    Flag opcional para utilização de funcionalidade experimental

Identificação de entidades

Para a maior parte da identificação é utilizado regex, contudo isto não acontece com a identificação de Organizações e identificação de pessoas. No primeiro caso é utilizado um modelo multi-língua do spacy, com o qual obtivemos os melhores resultados. No segundo caso em primeiro lugar procuramos por todos os nomes próprios e apelidos permitidos em Portugal e fazemos match no texto com estes nomes.

Funcionalidade Experimental

Invocando o programa com a flag "--nlp", o programa passa a utilizar um modelo treinado no ficheiro moradas.py. Esta funcionalidade está implementada contudo o modelo continua a não ser extenso o suficiente e sendo obtidos resultados estranhos.

Módulo desenvolvido no contexto da UC de SPLN do Mestrado Integrado em Engenharia Informática da Universidade do Minho (UMinho).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ShadowPT-0.3.tar.gz (3.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shadowpt-0.3-py2.py3-none-any.whl (3.8 MB view details)

Uploaded Python 2Python 3

File details

Details for the file ShadowPT-0.3.tar.gz.

File metadata

  • Download URL: ShadowPT-0.3.tar.gz
  • Upload date:
  • Size: 3.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.2

File hashes

Hashes for ShadowPT-0.3.tar.gz
Algorithm Hash digest
SHA256 3a3c33cefc8e9254a173d4590b65a8294ab37866258b3ad8767fff87b7b83ea7
MD5 0986cc2c25a87f6034e192a81c2e2d77
BLAKE2b-256 c5d18e96613d390345951e4fd1df9eb6444ab764cc2abeb862e58ba7ed0c576d

See more details on using hashes here.

File details

Details for the file shadowpt-0.3-py2.py3-none-any.whl.

File metadata

  • Download URL: shadowpt-0.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.2

File hashes

Hashes for shadowpt-0.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1f1d320a0499640cb5fde2b6c3510c43a4bf70f0a57d8bbe26b9a8d456b13739
MD5 e068d4e72a127dc2a4bea3400ffeba3c
BLAKE2b-256 3aa394cf07bd9cbd61e3f28fff4f30fcf0071bd61c5750bb9ae9fd63e095f88b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page