Pergeseran tanggal

Tanggal adalah jenis data yang sangat umum. Jika tanggal dapat dianggap sebagai data sensitif atau informasi identitas pribadi (PII), Anda mungkin perlu menggeneralisasi, meng-obfuscate, atau menyamarkannya.

Salah satu metode untuk melakukannya adalah generalisasi atau pengelompokan. Namun, bergantung pada kasus penggunaan dan konfigurasi, bucketing dapat menghapus utilitas pada tanggal. Misalnya, jika Anda menggeneralisasi semua tanggal menjadi hanya satu tahun, Anda dapat kehilangan urutan peristiwa yang terjadi dalam tahun tersebut. Metode alternatif untuk menyamarkan tanggal yang mengatasi masalah ini adalah pergeseran tanggal.

Teknik perubahan tanggal menggeser kumpulan tanggal secara acak, tetapi mempertahankan urutan dan durasi jangka waktu. Pergeseran tanggal biasanya dilakukan sesuai konteks untuk individu atau entitas. Artinya, tanggal setiap individu digeser oleh sejumlah waktu yang unik bagi individu tersebut.

Contoh pergeseran tanggal

Pertimbangkan data berikut:

user_id tanggal action
1 2009-06-09 run
1 2009-06-03 walk
1 2009-05-23 melakukan crawling
2 2010-11-03 melakukan crawling
2 2010-11-22 walk
... ... ...

Jika Anda menggeneralisasi tanggal ini ke tahun, maka Anda mendapatkan:

user_id date_year action
1 2009 run
1 2009 walk
1 2009 melakukan crawling
2 2010 melakukan crawling
2 2010 walk
... ... ...

Tapi sekarang Anda tidak lagi memahami urutan per pengguna.

Sebagai gantinya, coba ubah tanggal:

user_id tanggal action
1 2009-07-17 run
1 2009-07-11 walk
1 2009-06-30 melakukan crawling
2 2011-01-26 melakukan crawling
2 2011-02-14 walk
... ... ...

Perhatikan perbedaan tanggal, namun urutan dan durasi dipertahankan. Besarnya tanggal digeser berbeda antara user_id 1 dan 2.

Perubahan tanggal di Perlindungan Data Sensitif

Objek JSON yang akan dikonfigurasi untuk metode content.deidentify Perlindungan Data Sensitif sebagai berikut:

deidentify_config {
  record_transformations {
    field_transformations {
      fields {
        name: "date"
      }
      primitive_transformation {
        date_shift_config {
          upper_bound_days: 100
          lower_bound_days: -100
          entity_field_id {
            name: "user_id"
          }
          crypto_key {
            unwrapped {
              key: "123456789012345678901234567890ab"
            }
          }
        }
      }
    }
  }
}

Batas atas dan bawah pergeseran ditentukan oleh nilai upper_bound_days dan lower_bound_days. Konteks atau cakupan yang menjadi tujuan perubahan tersebut didasarkan pada nilai entity_id_field, yang dalam hal ini adalah "user_id".

Perhatikan juga penggunaan crypto_key. Hal ini mirip dengan cara penggunaannya dalam pseudonimisasi. Kunci tersebut akan memungkinkan Anda menjaga integritas pergeseran tanggal ini di beberapa permintaan atau operasi data.

Referensi

Untuk informasi selengkapnya tentang cara melakukan de-identifikasi data menggunakan pergeseran tanggal dan metode lain di Perlindungan Data Sensitif, lihat:

Untuk informasi referensi API tentang transformasi primitif dalam Perlindungan Data Sensitif, lihat: