Pengantar

Dalam dunia cybersecurity, melindungi data sensitif seperti password adalah hal yang sangat penting. Banyak kasus kebocoran data terjadi karena penyimpanan password yang tidak aman, misalnya disimpan dalam bentuk plain text.

Untuk mengatasi masalah ini, digunakan teknik hashing dan salting. Kedua metode ini menjadi standar dalam sistem keamanan modern untuk melindungi kredensial pengguna dari serangan seperti brute force dan rainbow table.


Apa Itu Hashing?

Hashing adalah proses mengubah data (seperti password) menjadi string unik dengan panjang tetap menggunakan algoritma tertentu.

Karakteristik Hashing

  • Satu arah (tidak bisa dikembalikan ke bentuk asli)
  • Output selalu memiliki panjang tetap
  • Sensitif terhadap perubahan kecil pada input

Contoh Algoritma Hash

  • SHA-256
  • bcrypt
  • Argon2

Menurut NIST, hashing digunakan untuk menjaga integritas dan keamanan data (dikutip dari NIST).

baca juga : Border Gateway Protocol (BGP): Tulang Punggung Routing Internet Global


Apa Itu Salting?

Salting adalah proses menambahkan nilai acak (salt) ke password sebelum dilakukan hashing.

Tujuan Salting

  • Mencegah serangan rainbow table
  • Membuat hash setiap password menjadi unik
  • Meningkatkan keamanan penyimpanan password

Contoh

Password: admin123
Salt: x9$!k
Hasil: hash(admin123 + x9$!k)


Mengapa Hashing Saja Tidak Cukup?

Masalah Tanpa Salting

Jika dua user memiliki password yang sama:

  • Hash mereka akan identik
  • Mudah ditebak oleh attacker

Risiko Rainbow Table

Penyerang dapat menggunakan database hash yang sudah diketahui untuk mencocokkan password.

baca juga : Database Normalization: Cara Efektif Menghindari Duplikasi Data


Cara Kerja Salting & Hashing

Proses Umum

  1. User memasukkan password
  2. Sistem menambahkan salt
  3. Password + salt di-hash
  4. Hasil hash disimpan di database

Saat Login

  1. User memasukkan password
  2. Sistem mengambil salt
  3. Password + salt di-hash ulang
  4. Dibandingkan dengan hash di database


Algoritma Hash yang Direkomendasikan

bcrypt

  • Menggunakan salt secara otomatis
  • Lambat (baik untuk keamanan)

Argon2

  • Lebih modern dan aman
  • Digunakan dalam banyak sistem terbaru

PBKDF2

  • Digunakan dalam standar keamanan

Best Practice Keamanan Password

Gunakan Salt Unik

Setiap user harus memiliki salt berbeda.

Gunakan Algoritma yang Kuat

Hindari MD5 dan SHA-1.

Tambahkan Iterasi (Key Stretching)

Meningkatkan waktu komputasi untuk memperlambat serangan.

Gunakan Library Terpercaya

Hindari membuat sistem hashing sendiri.


Kesalahan Umum yang Harus Dihindari

Menyimpan Password Plain Text

Sangat berbahaya dan mudah dicuri.

Menggunakan Hash Tanpa Salt

Rentan terhadap serangan.

Menggunakan Algoritma Lemah

Seperti MD5 atau SHA-1.


Peran Salting & Hashing dalam Cybersecurity

Salting dan hashing menjadi fondasi dalam:

  • Sistem login
  • Autentikasi pengguna
  • Proteksi database
  • Keamanan aplikasi web

Tanpa kedua teknik ini, sistem akan sangat rentan terhadap kebocoran data.

baca juga : Cold Storage vs Hot Storage: Mana yang Lebih Tepat untuk Data Anda?


Kesimpulan

Salting dan hashing adalah teknik penting dalam menjaga keamanan password. Hashing memastikan password tidak disimpan dalam bentuk asli, sementara salting menambahkan lapisan perlindungan tambahan agar hash lebih sulit ditebak.

Dengan menerapkan best practice seperti penggunaan algoritma kuat dan salt unik, sistem dapat melindungi data pengguna secara lebih efektif dari berbagai serangan siber.