Analisis risiko identifikasi ulang

Analisis risiko identifikasi ulang (atau hanya analisis risiko) adalah proses menganalisis data sensitif untuk menemukan properti yang dapat meningkatkan risiko penelitian subjek, atau informasi sensitif tentang individu yang diungkap. Anda dapat menggunakan metode analisis risiko sebelum de-identifikasi untuk membantu menentukan strategi de-identifikasi yang efektif, atau setelah de-identifikasi untuk memantau setiap perubahan atau pencilan.

De-identifikasi adalah proses menghapus informasi identifikasi dari data. Perlindungan Data Sensitif dapat mendeteksi dan melakukan de-identifikasi data sensitif untuk Anda, sesuai dengan cara Anda mengonfigurasinya agar sesuai dengan persyaratan organisasi Anda.

Sebaliknya, identifikasi ulang adalah proses mencocokkan data yang telah dide-identifikasi dengan data lain yang tersedia untuk menentukan pemilik data tersebut. Identifikasi ulang paling sering dibicarakan dalam konteks informasi pribadi yang sensitif, seperti data medis atau keuangan.

Untuk mengetahui informasi selengkapnya tentang cara menggunakan Perlindungan Data Sensitif untuk mengukur berbagai jenis risiko, lihat Mengukur identifikasi ulang dan risiko pengungkapan.

Istilah dan teknik analisis risiko

Jika Anda tidak melakukan de-identifikasi data sensitif dengan benar atau memadai, Anda berisiko mengidentifikasi ulang data tersebut atau mempelajari informasi sensitif tentang individu, yang dapat memiliki implikasi privasi yang serius. Perlindungan Data Sensitif dapat membantu menghitung risiko ini, menurut beberapa metrik.

Sebelum masuk ke metrik, kami akan mendefinisikan beberapa istilah umum terlebih dahulu:

  • ID: ID dapat digunakan untuk mengidentifikasi individu secara unik. Misalnya, nama lengkap seseorang atau nomor tanda pengenal yang dikeluarkan pemerintah dianggap sebagai ID.
  • ID kuasi: ID kuasi tidak mengidentifikasi individu secara unik, tetapi, jika digabungkan dan direferensikan silang dengan data individu, ID tersebut dapat secara substansial meningkatkan kemungkinan bahwa penyerang akan dapat mengidentifikasi kembali individu. Misalnya, kode pos dan usia dianggap kuasi-ID.
  • Data sensitif: Data sensitif adalah data yang dilindungi dari paparan yang tidak sah. Atribut seperti kondisi kesehatan, gaji, tindak pidana, dan lokasi geografis biasanya dianggap sebagai data sensitif. Perhatikan bahwa bisa saja terjadi tumpang-tindih antara ID dan data sensitif.
  • Class kesetaraan: Class ekuivalensi adalah grup baris dengan ID kuasi yang identik.

Ada empat teknik yang dapat digunakan Perlindungan Data Sensitif untuk mengukur tingkat risiko terkait set data:

  • k-anonymity: Properti set data yang menunjukkan identifikasi ulang datanya. Set data bersifat k-anonim jika ID semu untuk setiap orang dalam set data identik dengan setidaknya k – 1 orang lain juga dalam set data tersebut.
  • l-ragam: Perluasan dari k-anonymity yang juga mengukur keragaman nilai sensitif untuk setiap kolom tempat nilai tersebut terjadi. Set data memiliki l-beragam jika, untuk setiap set baris dengan ID kuasi yang identik, ada setidaknya l nilai berbeda untuk setiap atribut sensitif.
  • k-map: Menghitung risiko identifikasi ulang dengan membandingkan set data subjek yang telah dide-identifikasi dengan set data identifikasi ulang—atau "serangan"—yang lebih besar. Perlindungan Data Sensitif tidak mengetahui set data serangan, tetapi secara statistik membuat modelnya menggunakan data yang tersedia untuk publik seperti Sensus AS, menggunakan model statistik kustom (ditunjukkan sebagai satu atau beberapa tabel BigQuery), atau dengan melakukan ekstrapolasi dari distribusi nilai dalam set data input. Setiap set data—set data sampel dan set data identifikasi ulang—berbagi satu atau beberapa kolom ID semu.
  • Kehadiran delta (bahwa-kehadiran): Memperkirakan probabilitas bahwa pengguna tertentu dalam populasi yang lebih besar ada dalam set data. Ini digunakan ketika keanggotaan dalam {i>dataset <i}adalah informasi sensitif. Serupa dengan k-map, Perlindungan Data Sensitif tidak mengetahui set data serangan, tetapi secara statistik memodelkannya menggunakan data yang tersedia untuk publik, distribusi yang ditentukan pengguna, atau ekstraksi dari set data input.

Tentang k-anonymity

Saat mengumpulkan data untuk tujuan penelitian, de-identifikasi bisa sangat penting untuk membantu menjaga privasi peserta. Pada saat yang sama, de-identifikasi dapat menyebabkan set data kehilangan manfaat praktisnya. k-anonymity dibuat dari kebutuhan untuk mengukur identifikasi ulang set data dan untuk menyeimbangkan kegunaan data orang yang telah dilakukan de-identifikasi dan privasi orang-orang yang datanya digunakan. Ini adalah properti set data yang dapat digunakan untuk menilai pengidentifikasian ulang data dalam set data.

Sebagai contoh, pertimbangkan satu set data pasien:

ID Pasien Nama Lengkap Kode Pos Usia Kondisi ...
746572 Joni J. Jacobsen 98122 29 Penyakit jantung
652978 Debora D. Dreb 98115 29 Diabetes, Tipe II
075321 Abraham A Abernathy 98122 54 Kanker, Hati
339012 Karen K. Krakow 98115 88 Penyakit jantung
995212 Andi W. Wertheimer 98115 54 Asma
...

Set data ini berisi ketiga jenis data yang telah kami jelaskan sebelumnya: ID, quasi-ID, dan data sensitif.

Jika data sensitif seperti kondisi kesehatan tidak disamarkan atau disamarkan, penyerang berpotensi menggunakan quasi-ID yang terkait dengan setiap data, berpotensi melakukan referensi silang dengan set data lain yang berisi ID semu serupa, dan mengidentifikasi ulang orang-orang yang menerima data sensitif tersebut.

Set data dikatakan bersifat k-anonim jika setiap kombinasi nilai untuk kolom demografis dalam set data muncul untuk minimal k data yang berbeda. Ingat kembali bahwa sekelompok baris dengan ID kuasi yang identik disebut "class kesetaraan". Misalnya, jika Anda telah melakukan de-identifikasi quasi-ID secukupnya sehingga ada minimal empat baris yang nilai quasi-ID-nya identik, nilai k-anonymity set data adalah 4.

ID entitas dan menghitung k-anonymity

Opsi penting yang disertakan oleh Perlindungan Data Sensitif saat menghitung k-anonimitas adalah ID entitas (ID) opsional. Dengan ID entitas, Anda dapat menentukan k-anonymity secara lebih akurat dalam skenario umum ketika beberapa baris set data Anda terkait dengan pengguna yang sama. Sebaliknya, jika setiap baris, terlepas dari pengguna, dihitung secara terpisah, jumlah total pengguna yang digunakan untuk menghitung nilai k-anonymity set data akan dibuat tinggi secara artifisial. Hal ini membuat nilai k-anonymity yang dihitung menjadi tidak akurat.

Pertimbangkan kumpulan data sederhana berikut:

ID Pengguna Kode pos (ZIP code)
01 42000
02 17000
02 42000
03 17000
03 42000
03 42000
04 42000
04 17000

Tanpa menggunakan ID entitas untuk mencatat kapan baris yang berbeda milik pengguna yang sama, total jumlah pengguna yang digunakan saat menghitung k-anonymity adalah 8, meskipun jumlah pengguna sebenarnya adalah 4. Dalam set data ini, menggunakan metode penghitungan k-anonymity tradisional (tanpa ID entity), 3 orang memiliki nilai k-anonymity sebesar 3, dan 5 orang memiliki nilai k-anonymity sebesar 5, meskipun hanya ada 4 orang yang sebenarnya dalam database.

Menggunakan ID entity menyebabkan Perlindungan Data Sensitif mempertimbangkan multiset kode pos yang dikaitkan dengan pengguna sebagai quasi-ID saat menghitung k-anonymity. Dalam kasus contoh kami, sebenarnya ada tiga nilai quasi-ID "komposit" karena ada tiga kombinasi berbeda dari quasi-ID yang ditetapkan kepada pengguna: 42000, multiset 17000 dan 42000, dan multiset 17000, 42000, dan 42000. Keduanya terkait dengan pengguna sebagai berikut:

  • [42000] dikaitkan dengan 1 pengguna unik (01).
  • [17000, 42000] dikaitkan dengan 2 pengguna unik (02 dan 04).
  • [17000, 42000, 42000] dikaitkan dengan 1 pengguna unik (03).

Seperti yang Anda lihat, metode ini memperhitungkan bahwa pengguna dapat terjadi lebih dari satu kali dalam database kode pos kami, dan memperlakukan mereka sebagaimana mestinya saat menghitung k-anonymity.

resource k-anonymity

Untuk informasi lebih lanjut tentang k-anonymity, lihat Melindungi Privasi saat Mengungkap Informasi: k-Anonymity and Its Enforcement through Generalization and Suppression, oleh Pierangela Samarati dan Latanya Sweeney dari Data Privacy Lab Harvard University.

Untuk mempelajari cara menghitung k-anonymity dengan Perlindungan Data Sensitif, dengan atau tanpa ID entity, lihat Menghitung k-anonymity untuk set data.

Tentang l-beragam

l-keragaman terkait erat dengan k-anonymity, dan dibuat untuk membantu mengatasi kerentanan set data yang telah dide-identifikasi terhadap serangan seperti:

  • Serangan homogenitas, ketika penyerang memprediksi nilai sensitif untuk sekumpulan data yang dianonimkan k dengan memanfaatkan homogenitas nilai dalam sekumpulan data k.
  • Serangan pengetahuan latar belakang, yaitu penyerang memanfaatkan pengaitan antara nilai kuasi-ID yang memiliki atribut sensitif tertentu untuk mempersempit kemungkinan nilai atribut.

l-beragam mencoba mengukur seberapa jauh penyerang dapat mempelajari orang dalam hal class k-anonymity dan ekuivalensi (kumpulan baris dengan nilai quasi-ID yang identik). Set data memiliki l-ragam jika, untuk setiap kelas kesetaraan, ada setidaknya l nilai unik untuk setiap atribut sensitif. Untuk setiap class kesetaraan, berapa banyak atribut sensitif yang ada dalam set data? Misalnya, jika l-keragaman = 1, itu berarti semua orang memiliki atribut sensitif yang sama, jika l-keragaman = 2, itu berarti setiap orang memiliki salah satu dari dua atribut sensitif, dan seterusnya.

l-beragam sumber daya

Untuk informasi selengkapnya tentang l-keberagaman, lihat l-Diversity: Privacy Beyond k-Anonymity, oleh Ashwin Machanavajjhala, Johannes Gerke, dan Daniel Kifer dari Cornell University Department of Computer Science.

Untuk mempelajari cara menghitung l-beragam dengan Perlindungan Data Sensitif, lihat Menghitung l-beragam untuk set data.

Tentang k-map

k-map sangat mirip dengan k-anonymity, hanya saja mengasumsikan bahwa penyerang kemungkinan besar tidak tahu siapa yang ada dalam set data. Gunakan k-map jika set data Anda relatif kecil, atau jika tingkat upaya yang diperlukan dalam menggeneralisasi atribut akan terlalu tinggi.

Sama seperti k-anonymity, k-map mengharuskan Anda menentukan kolom mana dari database yang merupakan quasi-ID. Di sini, Anda menyatakan data apa yang kemungkinan besar akan digunakan penyerang untuk mengidentifikasi ulang subjek. Selain itu, penghitungan nilai k-map memerlukan set data identifikasi ulang: tabel yang lebih besar untuk dibandingkan baris dalam set data asli.

Perhatikan contoh {i>dataset<i} kecil berikut ini. Data sampel ini adalah bagian dari {i>database<i} hipotetis yang lebih besar, yang dikumpulkan dari survei yang jawabannya mencakup informasi sensitif.

Kode pos (ZIP code) usia
85535 79
60629 42

Jika berdiri sendiri, informasi ini tampaknya sama untuk kedua individu. Bahkan, mempertimbangkan k-anonymity untuk set data yang lebih besar dapat menyebabkan pernyataan bahwa subjek yang sesuai dengan baris kedua sangat dapat diidentifikasi. Namun, jika Anda mencadangkan dan mempertimbangkan data, Anda akan menyadari kenyataannya. Secara khusus, pertimbangkan kode pos Amerika Serikat 85535, yang saat ini tinggal sekitar 20 orang. Mungkin hanya ada satu orang yang berusia tepat 79 tahun yang tinggal di kode pos 85535. Bandingkan ini dengan kode pos 60629, yang merupakan bagian dari area metropolitan Chicago dan menampung lebih dari 100.000 orang. Ada sekitar 1.000 orang yang berusia tepat 42 tahun di kode pos itu.

Baris pertama dalam {i>dataset<i} kecil kita mudah diidentifikasi ulang, tetapi tidak yang kedua. Namun, menurut k-anonymity, kedua baris tersebut mungkin benar-benar unik dalam set data yang lebih besar.

k-map, seperti k-anonymity, mengharuskan Anda menentukan kolom database mana yang merupakan quasi-ID. API analisis risiko Perlindungan Data Sensitif menyimulasikan set data identifikasi ulang untuk memperkirakan langkah-langkah yang mungkin dilakukan penyerang untuk membandingkan set data asli guna mengidentifikasi ulang data. Untuk contoh sebelumnya, karena data ini menangani lokasi AS (kode pos) dan data pribadi (usia), dan karena kami berasumsi bahwa penyerang tidak tahu siapa yang berpartisipasi dalam survei, set data identifikasi ulang bisa jadi adalah semua orang yang tinggal di AS.

Setelah memiliki kuasi-ID dan set data identifikasi ulang, Anda dapat menghitung nilai k-map: Data Anda memenuhi k-map dengan nilai k jika setiap kombinasi nilai untuk kuasi-ID muncul setidaknya k kali dalam set data identifikasi ulang.

Dengan definisi ini, dan bahwa baris pertama dalam database kami kemungkinan hanya terkait dengan satu orang di AS, contoh set data tidak memenuhi persyaratan nilai k-map 2 atau lebih. Untuk mendapatkan nilai k-map yang lebih besar, kita dapat menghapus nilai usia seperti yang telah kita lakukan di sini:

Kode pos (ZIP code) usia
85535 **
60629 **

Seperti disebutkan sebelumnya, kode pos 85535 memiliki sekitar 20 orang dan 60629 memiliki lebih dari 100.000 orang. Oleh karena itu, kita dapat memperkirakan bahwa set data baru yang digeneralisasi ini memiliki nilai k-map sekitar 20.

resource k-map

Untuk mengetahui informasi selengkapnya tentang k-map dan hubungannya dengan k-anonymity, lihat Protecting Privacy Using k-Anonymity, oleh Khaled El Emam dan Fida Kamal Dankar, dalam Journal of the American Medical Informatics Association.

Untuk mempelajari cara menghitung estimasi k-map dengan Perlindungan Data Sensitif, lihat Menghitung k-map untuk set data.

Tentang kehadiran roda

Kehadiran delta (kehadiran DIV) memperkirakan risiko yang terkait dengan penyerang yang ingin mengetahui apakah target mereka ada dalam set data. Hal ini sedikit berbeda dengan risiko identifikasi ulang karena tujuannya bukan untuk menemukan catatan persis mana yang sesuai dengan individu mana yang bersangkutan, hanya untuk mengetahui apakah seorang individu merupakan bagian dari set data tersebut. Penggunaan metrik ini sangat sesuai jika semua individu dalam set data memiliki atribut sensitif yang sama; misalnya, semuanya memiliki diagnosis medis yang sama.

Seperti metrik risiko lainnya, kehadiran /* mengharuskan Anda untuk menentukan kolom mana pada database yang merupakan quasi-ID. Dengan demikian, Anda menyatakan data apa yang kemungkinan besar akan digunakan penyerang untuk mengetahui individu mana yang berada dalam {i>dataset<i}. Seperti k-map, komputasi bahwa kehadiran memerlukan set data serangan: tabel yang lebih besar untuk dibandingkan dengan baris dalam set data asli.

Perhatikan contoh {i>dataset<i} kecil berikut ini. Sampel data ini adalah bagian dari {i>database<i} hipotetis yang lebih besar yang berisi orang-orang dengan penyakit genetik tertentu.

Kode pos (ZIP code) usia
85942 72
85942 72
62083 53

Di Amerika Serikat, kode pos 85942, ada sekitar 2 orang yang berusia 72 tahun, dan di kode pos 62083, ada sekitar 5 orang yang berusia 53 tahun. Dua data pertama tidak dapat diidentifikasi ulang dengan tepat karena keduanya memiliki ID semu yang sama. Namun, karena hanya dua individu yang berbagi ID semu ini dalam populasi yang lebih besar, penyerang dapat menyimpulkan bahwa keduanya menderita penyakit genetik. Kehadiran /* mengukur risiko khusus ini dengan menghitung rasio orang dengan ID kuasi tertentu yang ada dalam set data.

Kehadiran {/, seperti metrik risiko lainnya, mengharuskan Anda untuk menentukan kolom mana pada database Anda yang merupakan quasi-ID. Dan seperti untuk estimasi k-map, API analisis risiko Perlindungan Data Sensitif melakukan simulasi set data populasi untuk memperkirakan set data yang mungkin digunakan penyerang guna mengetahui siapa yang ada dalam set data tersebut. Untuk contoh kita sebelumnya, karena berurusan di lokasi AS (kode pos) dan data pribadi (usia), dan karena kita berasumsi bahwa penyerang tidak tahu siapa yang memiliki penyakit genetik, {i>dataset<i} populasi ini bisa jadi adalah semua orang yang tinggal di AS.

Setelah memiliki quasi-ID dan set data re-identifikasi, Anda dapat menghitung nilai kehadiran /*: data Anda memenuhi kehadiran /* dengan nilai {/ jika setiap kombinasi nilai untuk ID kuasi muncul paling banyak /* * k kali di set data, dengan k adalah jumlah total orang dengan nilai kuasi-ID ini dalam populasi tersebut. Tidak seperti k pada k-anonymity atau k-map, nilai /* dalam kehadiran des adalah bilangan riil antara 0 dan 1.

Mengingat definisi ini, dan bahwa kedua orang yang berusia 72 tahun dalam kode pos 85942 dalam populasi umum juga ada dalam database kami, set data ini tidak memenuhi keberadaan /* untuk setiap bukan yang benar-benar lebih kecil dari 1. Untuk mendapatkan nilai kehadiran /* yang lebih rendah, kita dapat menghapus nilai usia dari dua baris pertama:

Kode pos (ZIP code) usia
85942 **
85942 **
62083 53

Sekarang, karena 80 orang tinggal di kode pos 85942, nilai /* untuk dua data pertama adalah sekitar 2/80 = 2,5%; dan nilai /* untuk data ketiga adalah sekitar 1/5 = 20%. Oleh karena itu, kita dapat memperkirakan bahwa set data umum yang baru ini memiliki nilai kehadiran goritma sekitar 20%.

Sumber daya kehadiran bahwa

Untuk informasi lebih lanjut tentang estimasi kehadiran /* berdasarkan data statistik, lihat /*-Presence without Complete World Knowledge, oleh Mehmet Ercan Nergiz dan Chris Clifton dari Department of Computer Science Technical Reports di Purdue University.

Untuk mempelajari cara menghitung perkiraan kehadiran /* dengan Perlindungan Data Sensitif, lihat Menghitung kehadiran /* untuk set data.