Enkripsi data
From LimeSurvey Manual
Pendahuluan
Fitur Enkripsi data dibuat untuk membantu administrator survei menyesuaikan diri dengan regulasi perlindungan data baru yang diberlakukan di berbagai belahan dunia (misalnya GDPR).
Fitur ini memungkinkan enkripsi data pribadi yang terdapat di pusat basis data partisipan dan/atau tabel partisipan survei. Selain itu, Anda juga dapat mengenkripsi data yang dikumpulkan dari responden jika atribut pertanyaan enkripsi diaktifkan.
Perlu diingat bahwa data Anda akan selalu terlihat di antarmuka LimeSurvey. Hanya entri basis data yang dienkripsi - siapa pun yang mengakses server tempat LimeSurvey di-host tidak dapat melihat data tersebut. Karena itu, harap berhati-hati dalam memberikan hak akses global dan survei.
Kapan data perlu dienkripsi?
Tidak ada satu jawaban yang benar untuk pertanyaan ini. Jawabannya sangat bergantung pada:
- jenis data yang Anda kumpulkan
- lokasi survei Anda
- undang-undang nasional atau federal
Pada umumnya, penting untuk mengenkripsi data yang dapat mengidentifikasi pribadi (misalnya, seperti yang direkomendasikan dalam General Data Protection Regulation). Karena itu, kolom seperti nama depan, nama belakang, alamat surel, nomor telepon, alamat, dan sebagainya dapat digunakan untuk mengidentifikasi jawaban yang dikirimkan oleh seseorang.
Dalam kasus lain, data yang perlu dienkripsi tidak selalu terbatas pada contoh di atas. Pada skenario tertentu (misalnya, dalam penelitian medis), Anda mungkin perlu mengenkripsi sebagian besar data jika jawaban dapat dilacak kembali ke orang yang mengirimkannya.
Oleh karena itu, harap sesuaikan survei dan pengumpulan data Anda dengan peraturan perundang-undangan setempat!
Pengaturan
Terdapat tiga tempat di LimeSurvey untuk mengatur enkripsi data:
Atribut pertanyaan
Atribut pertanyaan "Dienkripsi" digunakan untuk mengaktifkan enkripsi data pada jawaban yang bersangkutan. Atribut ini dinonaktifkan secara bawaan. Setelah survei diaktifkan, atribut ini tidak dapat diubah.

Atribut peserta
Tiga atribut inti (nama depan, nama belakang, dan surel) selalu ditampilkan di tabel partisipan survei, dengan enkripsi diaktifkan secara bawaan.
Setiap atribut peserta baru akan memiliki enkripsi yang dinonaktifkan secara bawaan.
Enkripsi dapat diaktifkan atau dinonaktifkan kapan saja.
Manajemen atribut pusat basis data partisipan
Tiga atribut inti (nama depan, nama belakang, dan surel) selalu ditampilkan di pusat basis data partisipan, dengan enkripsi diaktifkan secara bawaan.
Setiap atribut peserta baru akan memiliki enkripsi yang dinonaktifkan secara bawaan.
Enkripsi dapat diaktifkan atau dinonaktifkan kapan saja.
Lanjutan
Pustaka Sodium digunakan untuk menyediakan fungsi enkripsi dan dekripsi data pada LimeSurvey.
Sodium adalah pustaka perangkat lunak modern dan mudah digunakan untuk enkripsi, dekripsi, tanda tangan, hash kata sandi, dan lainnya. Pustaka ini merupakan fork dari NaCl yang portabel, dapat dikompilasi lintas platform, dapat diinstal, dan dapat dikemas, dengan API yang kompatibel serta API tambahan untuk meningkatkan kemudahan penggunaan. Tujuannya adalah menyediakan semua operasi inti yang diperlukan untuk membangun alat kriptografi tingkat tinggi.
Sodium bersifat lintas platform dan lintas bahasa. Pustaka ini berjalan pada berbagai kompiler dan sistem operasi, termasuk Windows (dengan MinGW atau Visual Studio, x86 dan x86_64), iOS, dan Android. Versi Javascript dan WebAssembly juga tersedia dan didukung sepenuhnya. Binding untuk semua bahasa pemrograman umum tersedia dan didukung dengan baik.
Bahasa pemrograman PHP versi 7.2.0 dan yang lebih baru menyertakan ekstensi Sodium (disebut ext/sodium) sebagai pustaka kriptografi inti. Versi 2 ekstensi PHP di PECL kompatibel dengan ext/sodium pada PHP 7.2.
LimeSurvey menggunakan pustaka Sodium Compat untuk menjembatani berbagai versi PHP.
Pustaka ini secara tentatif mendukung PHP 5.2.4 - 7.x (terbaru), tetapi secara resmi hanya mendukung versi PHP yang belum EOL.
Metode enkripsi/dekripsi data yang digunakan di LimeSurvey didasarkan pada tanda tangan kunci publik. Kunci publik dan kunci rahasia dapat ditemukan di berkas /application/config/security.php. Kunci dibuat secara otomatis saat fitur enkripsi pertama kali digunakan.
Pencarian sebagian string tidak dapat dilakukan pada kolom basis data yang berisi data terenkripsi, hanya pencarian dengan kecocokan persis.
Kesalahan
Kemungkinan kesalahan saat menggunakan enkripsi data:
- library doesn't exists: Pustaka PHP Sodium harus terpasang agar fitur enkripsi data dapat digunakan. Berikut panduan cara memasang pustaka tersebut: Sodium installation. Jika Anda tidak ingin menggunakan enkripsi data, Anda harus menonaktifkan enkripsi di pengaturan atribut.
- wrong decryption key: kunci dekripsi telah berubah sejak data terakhir disimpan, sehingga data tidak dapat didekripsi. Satu-satunya cara untuk mendekripsi data adalah mengambil kunci asli dari cadangan dan mengganti kunci dekripsi saat ini dengan kunci asli tersebut.
Catatan: jika kesalahan wrong decryption key hanya terjadi saat LimeSurvey mengirim surel (misalnya saat Anda menyelesaikan survei), buka Konfigurasi > Pengaturan global > Pengaturan surel, lalu masukkan kembali kata sandi SMTP Anda dan tekan Simpan.[1]
Jika tidak, Anda masih dapat mencoba membandingkan dan akhirnya memulihkan kunci dekripsi Anda dari cadangan (Anda membuat cadangan, bukan? Hmm?).