TEMPO.CO, Jakarta - Password merupakan alat keamanan informasi dan data pribadi yang paling umum digunakan. Dengan menggunakan password, beberapa informasi dan data sensitif hanya dapat diakses oleh orang yang mengetahui passwordnya. Namun, belakangan ini marak terjadi kasus pembobolan password di berbagai platform, termasuk peretasan Pusat Data Nasional Sementara 2 (PDNS 2).
Karena itu, untuk terhindar dari yang namanya pembobolan password media sosial atau sejenisnya, dibutuhkan kata kunci yang lumayan rumit sehingga tidak mudah ditebak oleh orang lain demi keamanan akun. Untuk memastikan password benar-benar kuat, dapat dilakukan melalui hash password. Lantas, apa itu hash password?
Hash password adalah metode mengamankan password dengan mengubahnya menjadi serangkaian karakter unik yang tidak dapat dibalikkan. Proses ini menggunakan algoritma hash yang mengubah input (password asli) menjadi output (hash) dengan panjang yang sama. Algoritma seperti SHA-256 atau bcrypt sering digunakan dalam proses ini.
Hash password mengacak data dan mengubahnya menjadi serangkaian karakter yang berbeda. Namun, tidak seperti algoritma enkripsi lain yang mengubah data, hash hampir tidak mungkin dikembalikan. Pasalnya, hash sulit diuraikan ketika diteras.
Kendati demikian, ada beberapa batasan hash, salah satunya tabrakan hash. Hal ini terjadi ketika dua kata sandi yang berbeda memiliki hash yang sama. Namun, kemungkinan terjadinya tabrakan dalam sebagian besar algoritma hash sangatlah rendah. Sebab, hash umumnya dibuat dengan tambahan salt dan pepper.
Salt adalah rangkaian karakter acak yang dibuat dan ditambahkan ke kata sandi sebelum di-hash. Adapun tujuan salt untuk membuat proses hashing lebih rumit, sebelumnya untuk memecahkan kata sandi. Dalam kebanyakan kasus, salt disimpan dalam basis data bersama kata sandi yang di-hash.
Sementara itu, pepper adalah nilai rahasia yang ditambahkan ke kata sandi sebelum proses hashing. Namun, tidak seperti salt, pepper biasanya dikodekan secara permanen ke dalam sistem yang melakukan hashing kata sandi. Dengan ini, membuatnya semakin sulit bagi penyerang potensial untuk memecahkan kata sandi.
Pada awalnya algoritma Message Digest (MDx), seperti MD5 dan Secure Hash Algorithms (SHA), seperti SHA-1 dan SHA-2 kerap digunakan untuk meng-hash kata sandi. Namun, saat ini algoritma Argon2id, bcrypt, dan PBKDF2t lebih banyak digunakan untuk merancang Hash.
Adapun cara kerja hash menyimpan bukan kata sandi sebenarnya. Alhasil, setiap kali pengguna masuk ke perangkat lunak atau aplikasi, nilai yang diberikan akan di-hash terlebih dahulu. Kemudian diperiksa dengan hash yang disimpan dalam database untuk memverifikasi identitas pengguna. Dengan cara ini, peretas tidak dapat masuk meskipun berhasil mendapatkan hash.
Hash password memiliki tujuan penting yang berkaitan dengan keamanan data dan perlindungan user password, di antaranya:
1. Meningkatkan keamanan data user
Hashing memastikan password asli tidak disimpan dalam bentuk teks biasa di database.
2. Mencegah password asli bocor
Jika database diretas, hacker tidak dapat memperoleh password asli karena hanya hash yang tersimpan.
3. Unik dengan teknik salting
Salt yang ditambahkan ke password sebelum hashing, membuat setiap hash unik meskipun password sama.
4. Mematuhi best practice dari cyber security
Menggunakan hash password mengikuti standar keamanan modern dan best practice dalam cyber security.
5. Memenuhi persyaratan
Penggunaan Hash Password membantu perusahaan memenuhi persyaratan seperti GDPR dan PCI DSS.
6. Menjaga kerahasiaan dan integritas data user
Hash password membantu menjaga kerahasiaan dan integritas data user, mengurangi risiko dari berbagai ancaman keamanan.
NORDPASS | AUTHGEAR | REVOU
Pilihan Editor: Seluk-beluk Peretasan: Inilah Anatomi Keamanan dan 8 Serangan Siber