Itu akan mengalahkan tujuan menyimpan kata sandi hash.
Saya yakin Anda tahu, tetapi kalau-kalau ide di balik hashing cukup sederhana - Anda menemukan fungsi yang mudah untuk menghitung dalam satu arah tetapi sangat sulit untuk menghitung di arah lain. Sebut saja fungsi itu hash
.
Sekarang, ketika Anda pertama kali membuat kata sandi, katakan hunter2
sistem akan berjalan hash('hunter2')
dan menyimpan hasilnya dalam file shadow.
Kemudian ketika Anda masuk ke sistem Anda mengklaim bahwa kata sandi Anda hunter4
dan sistem memeriksa ini dengan membandingkan hash('hunter4')
dengan nilai yang disimpan dalam file bayangan. Jika hash adalah sistem yang sama akan membiarkan Anda masuk, jika tidak maka sistem akan menolak Anda.
Keuntungan dari hal ini adalah bahwa bahkan jika seseorang berhasil mendapatkan akses ke file bayangan Anda, mereka masih tidak tahu kata sandi Anda dan tidak dapat masuk seperti Anda karena meskipun mereka tahu hash, sangat sulit untuk menentukan kata sandi yang dihasilkan hash ini.
Singkatnya, tidak ada hash yang disimpan dalam /etc/shadow
tidak dan tidak dapat digunakan sebagai pengganti kata sandi pengguna.