Neler gizlidir ve neden önemlidir?

Python ile Veri Gizliliği ve Anonimleştirme

Rebeca Gonzalez

Data engineer

Facebook ve Cambridge Analytica skandalı

Veri gizliliğinin etkisi

  • 87 milyon kişinin kişisel bilgilerine yetkisiz erişim
  • Amerikalı seçmenlerin psikolojik profillerini oluşturma
  • Siyasi kampanyalarda ikna etme

Veri gizliliği haklarına uymamanın sonuçlarıyla yüzleşen mahkemede Mark Zuckerberg

Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik nedir?

Sokakta yürüyen insanlar

Python ile Veri Gizliliği ve Anonimleştirme

Bilgi akışı ve gizlilik

Sokakta bir kadının yüzüne uygulanan yüz tanıma sistemi; başının üstünde bir GPS simgesi

Python ile Veri Gizliliği ve Anonimleştirme

Bilgi akışı ve gizlilik

  • Kişisel bilgilerinizin nasıl aktığı

 

"Sosyal ve yasal normları karşılayan bilgi akışlarını sağlama yetisi."

Sokakta bir kadının yüzüne uygulanan yüz tanıma sistemi; başının üstünde bir GPS simgesi

Python ile Veri Gizliliği ve Anonimleştirme

Kişisel olarak tanımlanabilir bilgi (PII)

Tek başına veya başka verilerle birlikte bir kişiyi tanımlayabilen veriler.

Kişisel bilgi detaylarını yazma alanı olan kağıt form ve bir kalem

Python ile Veri Gizliliği ve Anonimleştirme

Hassas PII

  • Açıkça bir kişiye ait
  • İfşa zarar, utanç veya rahatsızlık verebilir

Bir adam ve etrafında kişisel bilgi gibi görünen açılır pencereler çizimi

Python ile Veri Gizliliği ve Anonimleştirme

Hassas PII

  • Tam ad
  • Sosyal Güvenlik Numarası (SSN)
  • Finansal bilgiler
  • Tıbbi kayıtlar

GDPR: düzenlemelere uymayanlar için azami yaptırımları gösteren görsel

Python ile Veri Gizliliği ve Anonimleştirme

Hassas olmayan PII

Tek başına bir kişiye ulaşmak için kullanılamayan veriler

  • Cinsiyet
  • Meslek
  • Posta kodu
  • Doğum ili/şehri
Python ile Veri Gizliliği ve Anonimleştirme

Hassas olmayan PII

Cinsiyet, meslek, posta kodu veya doğum ili/şehri gibi, tek başına bir kişiye ulaşmak için kullanılamayan veriler.

  • Cinsiyet
  • Meslek
  • Posta kodu
  • Doğum ili/şehri
Başka bilgilerle birleştirildiğinde yine de tanımlama yapabilir!

"Avrupa'da hükümet başı" yazısı ve bir doğum tarihi; Angela Merkel'in yüzüne işaret eden çizgiler

1 Angela Merkel fotoğrafı: Wikimedia Commons.
Python ile Veri Gizliliği ve Anonimleştirme

GDPR: AB Genel Veri Koruma Tüzüğü

Avrupa’da yaşayanların veya verisi Avrupa’da işlenenlerin PII’sini korur.

GDPR’ın temel ilkeleri

  1. Hukuka uygunluk, adillik ve şeffaflık
  2. Amaç sınırlaması
  3. Veri minimizasyonu
  4. Doğruluk
  5. Saklama sınırlaması

Daha fazlası burada

GDPR: düzenlemelere uymayanlar için azami yaptırımları gösteren görsel

Python ile Veri Gizliliği ve Anonimleştirme

Veri bastırma

Konu gizliliğini korumak için seçili bilgileri kaldırma.

Öznitelik bastırma
  • Sütunları tamamen kaldırma
Hücre/kayıt bastırma
  • Satır veya hücrelerdeki veriyi kaldırma/değiştirme
Python ile Veri Gizliliği ve Anonimleştirme

Bir veri setinde öznitelik bastırma

# Hassas PII "name" üzerinde öznitelik bastırma
suppressed_salaries = salaries.drop('name', axis="columns")


# Elde edilen veri setini inceleyin 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...
Python ile Veri Gizliliği ve Anonimleştirme

Bir veri setinde kayıt bastırma

# DataFrame'i inceleyin
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 
Python ile Veri Gizliliği ve Anonimleştirme

Bir veri setinde kayıt bastırma

# 2.000.000'dan yüksek maaşlı satırları düşürün
salaries = salaries.drop(salaries[salaries.Salary > 2000000].index)

# Ortaya çıkan DataFrame'i görün
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 
Python ile Veri Gizliliği ve Anonimleştirme

Bastırma ve bağlantı saldırıları

İki tabloyu gösteren görsel: solda öznitelik bastırma sonrası oluşan tıbbi veriler, sağda bazı ortak verileri içeren seçmen kayıtları

Python ile Veri Gizliliği ve Anonimleştirme

Hadi pratik yapalım!

Python ile Veri Gizliliği ve Anonimleştirme

Preparing Video For Download...