Fungsi Pseudo-Random (PRF)

Primitif Pseudo-Random Function (PRF) memungkinkan Anda menghasilkan output pseudo-random yang stabil dengan panjang arbitrer untuk input tertentu.

Karena Tink beroperasi pada kumpulan kunci, primitif ini menampilkan kumpulan PRF yang sesuai, bukan PRF tunggal. PRF diindeks oleh ID kunci 32-bit. Fungsi ini dapat digunakan untuk merotasi kunci yang digunakan untuk menyamarkan suatu informasi, tanpa kehilangan pengaitan sebelumnya.

PRF memiliki properti berikut:

  • Deterministik: Menghitung PRF untuk input tertentu akan selalu menghasilkan output yang sama.
  • Keacakan: Output PRF tidak dapat dibedakan dengan byte acak.

Pilih jenis kunci

Sebaiknya gunakan HMAC_SHA256_PRF untuk sebagian besar penggunaan, tetapi ada juga opsi lainnya.

Secara umum, hal berikut berlaku:

  • HMAC_SHA512_PRF mungkin lebih cepat atau mungkin tidak, tergantung ukuran input dan spesifikasi hardware yang Anda gunakan.
  • HMAC_SHA512_PRF adalah mode paling konservatif yang dapat digunakan untuk pesan dalam jumlah yang hampir tidak terbatas.
  • AES_CMAC_PRF paling cepat pada sistem yang mendukung akselerasi hardware AES-NI.

Jaminan keamanan minimal

  • Tanpa pengetahuan tentang kunci, PRF tidak dapat dibedakan dengan fungsi acak
  • Keamanan minimal 128-bit, juga dalam skenario multi-pengguna (saat penyerang tidak menargetkan kunci tertentu, tetapi semua kunci dari kumpulan hingga 232 kunci)
  • Tersedia setidaknya 16 byte output

Contoh kasus penggunaan

Kasus penggunaan untuk PRF mencakup penyamaran deterministik informasi identitas pribadi (PII), fungsi hash dengan kunci, dan pembuatan sub-ID yang tidak memungkinkan bergabung dengan set data asli tanpa mengetahui kuncinya.

Meskipun PRF dapat digunakan untuk membuktikan keaslian pesan, penggunaan primitif MAC direkomendasikan untuk kasus penggunaan tersebut, karena memiliki dukungan untuk verifikasi, menghindari masalah keamanan yang sering terjadi selama verifikasi, dan memiliki dukungan otomatis untuk rotasi kunci. Hal ini juga memungkinkan algoritma non-deterministik.