Menjelaskan enkripsi dan hashing
Salah satu cara mengurangi ancaman keamanan cyber yang umum yaitu mengenkripsi data sensitif atau berharga. Enkripsi adalah proses membuat data tidak dapat dibaca dan digunakan bagi penonton yang tidak sah. Untuk menggunakan atau membaca data terenkripsi, data tersebut harus didekripsi, yang memerlukan penggunaan kunci rahasia.
Ada dua jenis enkripsi tingkat atas: simetris dan asimetris. Enkripsi simetris menggunakan kunci yang sama untuk mengenkripsi dan mendekripsi data. Enkripsi asimetris menggunakan kunci publik dan pasangan kunci privat. Salah satu kunci dapat mengenkripsi data, tetapi kunci yang digunakan untuk mengenkripsi tidak dapat digunakan untuk mendekripsi data terenkripsi. Untuk mendekripsi, Anda memerlukan kunci pasangannya. Misalnya, jika kunci publik digunakan untuk mengenkripsi, maka hanya kunci privat yang sesuai yang dapat digunakan untuk mendekripsi. Enkripsi asimetris digunakan untuk hal-hal seperti mengakses situs di internet menggunakan protokol HTTPS dan solusi penandatanganan data elektronik. Enkripsi dapat melindungi data saat tidak aktif atau saat transit. Untuk informasi tambahan tentang konsep kriptografi, lihat Menjelaskan konsep kriptografi
Enkripsi untuk data tidak aktif
Data tidak aktif adalah data yang disimpan di perangkat fisik, seperti server. Data ini mungkin disimpan dalam database atau akun penyimpanan tetapi, terlepas dari mana data disimpan, enkripsi data tidak aktif memastikan data tidak dapat dibaca tanpa kunci dan rahasia yang diperlukan untuk mendekripsinya.
Jika penyerang memperoleh hard drive dengan data terenkripsi dan tidak memiliki akses ke kunci enkripsi, penyerang tidak akan dapat membaca datanya.
Enkripsi untuk data dalam transit
Data saat transit adalah data yang secara aktif berpindah dari satu lokasi ke lokasi lain, seperti melalui internet atau jaringan privat. Transfer aman dapat ditangani oleh beberapa lapisan yang berbeda. Hal ini bisa dilakukan dengan mengenkripsi data di lapisan aplikasi sebelum mengirimkannya melalui jaringan. HTTPS adalah contoh enkripsi saat transit.
Mengenkripsi data saat transit akan melindungi data dari pengamat eksternal dan menyediakan mekanisme untuk mengirimkan data sambil membatasi risiko pemaparan.
Enkripsi untuk data saat digunakan
Kasus penggunaan umum untuk enkripsi data yang digunakan melibatkan dalam mengamankan data di penyimpanan nonpersistent, seperti cache RAM atau CPU. Hal ini dapat dicapai melalui teknologi yang membuat enklave (anggap ini sebagai kotak kunci aman) yang melindungi data dan menyimpan data terenkripsi saat CPU memproses data.
Hashing
Hashing menggunakan algoritma untuk mengubah teks menjadi nilai dengan panjang tetap unik yang disebut hash. Setiap kali teks yang sama diproses hash menggunakan algoritma yang sama, akan dihasilkan nilai hash yang sama. Kemudian, hash tersebut dapat digunakan sebagai pengidentifikasi unik dari data terkait.
Hashing berbeda dengan enkripsi karena tidak menggunakan kunci dan nilai hash tidak didekripsi kembali ke format aslinya.
Hashing sering digunakan untuk menyimpan kata sandi. Ketika pengguna memasukkan kata sandinya, algoritma yang sama yang membuat hash tersimpan akan membuat hash kata sandi yang dimasukkan. Ini semacam versi kata sandi yang disimpan dan diproses hash. Jika cocok, pengguna telah memasukkan kata sandi dengan benar. Cara ini lebih aman daripada menyimpan kata sandi teks biasa, tetapi algoritma hashing juga diketahui oleh peretas. Karena fungsi hash bersifat deterministik (masukan yang sama menghasilkan keluaran yang sama), peretas dapat menggunakan serangan kamus brute-force dengan melakukan hashing kata sandi. Untuk setiap hash yang cocok, mereka tahu kata sandi yang sebenarnya. Untuk mengurangi risiko ini, kata sandi sering kali “di-salt”. Hal ini mengacu pada penambahan nilai acak dengan panjang tetap ke input fungsi hash untuk membuat hash unik untuk input yang sama.