Qu'est-ce qui est privé, et pourquoi est-ce important ?

Confidentialité des données et anonymisation en Python

Rebeca Gonzalez

Data engineer

Scandale Facebook et Cambridge Analytica

Impact de la protection des données

  • Accès non autorisé aux données personnelles de 87 millions de personnes
  • Création de profils psychologiques d'électeurs américains
  • Influence pendant les campagnes politiques

Mark Zuckerberg au tribunal face aux conséquences du non-respect des droits en matière de protection des données

Confidentialité des données et anonymisation en Python

Qu'est-ce que la vie privée ?

Personnes marchant dans la rue

Confidentialité des données et anonymisation en Python

Flux d'information et vie privée

Système de reconnaissance faciale appliqué au visage d'une femme dans la rue, avec une icône GPS au-dessus de sa tête

Confidentialité des données et anonymisation en Python

Flux d'information et vie privée

  • Comment circulent vos informations personnelles

 

« L'aptitude à garantir des flux d'information conformes aux normes sociales et juridiques. »

Système de reconnaissance faciale appliqué au visage d'une femme dans la rue, avec une icône GPS au-dessus de sa tête

Confidentialité des données et anonymisation en Python

Données personnelles identifiables (PII)

Des données qui, seules ou combinées à d'autres données pertinentes, permettent d'identifier une personne.

Formulaire papier avec des champs pour les informations personnelles et un stylo

Confidentialité des données et anonymisation en Python

PII sensibles

  • Clairement relatives à une personne
  • Leur exposition peut causer un préjudice, de l'embarras ou des désagréments

Dessin d'un homme entouré de fenêtres contextuelles semblant afficher des informations personnelles

Confidentialité des données et anonymisation en Python

PII sensibles

  • Nom complet
  • Numéro de sécurité sociale (SSN)
  • Informations financières
  • Dossiers médicaux

Image RGPD montrant les sanctions maximales en cas de non-conformité

Confidentialité des données et anonymisation en Python

PII non sensibles

Données qui ne permettent pas, seules, de retrouver une personne

  • Genre
  • Profession
  • Code postal
  • Ville de naissance
Confidentialité des données et anonymisation en Python

PII non sensibles

Données qui ne permettent pas, seules, de retrouver une personne, comme le genre, la profession, le code postal ou la ville de naissance.

  • Genre
  • Profession
  • Code postal
  • Ville de naissance
Peuvent quand même identifier une personne si combinées à d'autres infos !

Texte « Chef de gouvernement en Europe » et une date de naissance, avec des lignes pointant vers le visage d'Angela Merkel

1 Photo d'Angela Merkel issue de Wikimedia Commons.
Confidentialité des données et anonymisation en Python

RGPD : Règlement général sur la protection des données (UE)

Protège les PII des personnes vivant en Europe ou dont les données y sont traitées.

Principes clés du RGPD

  1. Licéité, loyauté et transparence
  2. Limitation des finalités
  3. Minimisation des données
  4. Exactitude
  5. Limitation de la conservation

En savoir plus ici

Image RGPD montrant les sanctions maximales en cas de non-conformité

Confidentialité des données et anonymisation en Python

Suppression de données

Suppression ciblée d'informations pour protéger la vie privée des personnes.

Suppression d'attributs
  • Supprimer entièrement des colonnes
Suppression de cellules/enregistrements
  • Supprimer ou remplacer des données dans des lignes ou cellules
Confidentialité des données et anonymisation en Python

Suppression d'attributs sur un jeu de données

# Suppression d'attribut sur la PII sensible "name"
suppressed_salaries = salaries.drop('name', axis="columns")


# Explorer le jeu de données obtenu suppressed_salaries.head()
     gender    status    salary     pay_basis    position_title
0    Male    Employee    64400.0    Per Annum    DEPUTY DIRECTOR
1    Male    Employee    43600.0    Per Annum    ASSOCIATE DIRECTOR
2    Male    Employee    120000.0   Per Annum    SPECIAL ASSISTANT TO THE PRESIDENT AND DEPUTY ...
3    Male    Employee    86200.0    Per Annum    LEAD ADVANCE REPRESENTATIVE
4    Male    Employee    106000.0   Per Annum    SPECIAL ASSISTANT TO THE PRESIDENT AND DIRECTO...
Confidentialité des données et anonymisation en Python

Suppression d'enregistrements sur un jeu de données

# Explorer le DataFrame
salaries.head()
      hours    performance    salary 
0     72       51             $80,500.00 
1     20       99             $2,805,000.00 
3     75       62             $75,800.00 
4     74       58             $60,000.00 
5     70       54             $79,000.00 
Confidentialité des données et anonymisation en Python

Suppression d'enregistrements sur un jeu de données

# Supprimer les lignes avec des salaires supérieurs à 2,000,000
salaries = salaries.drop(salaries[salaries.Salary > 2000000].index)

# Afficher le DataFrame résultant
salaries.head()
      hours    performance    salary 
0     72       51             80500 
2     75       62             75800 
3     74       58             60000 
4     70       54             79000 
5     68       53             62000 
Confidentialité des données et anonymisation en Python

Suppression et attaques par recoupement

Image montrant deux tables : à gauche les données médicales obtenues après suppression d'attributs, et à droite des données d'inscription d'électeurs avec certaines données communes

Confidentialité des données et anonymisation en Python

Passons à la pratique !

Confidentialité des données et anonymisation en Python

Preparing Video For Download...