Sebenarnya karena ketika Anda md5 kata sandi menghitung hash. Kemudian string lebih panjang dari 16 karakter yang beberapa "hashes" dapat bertabrakan di antara mereka.
Sebagai contoh jika md5("noroof")
memberi 9ce405c98406f2f6d5326ee6b51d19cd
itu mungkin yang md5("ididntfixedmyroofwhenicould")
bisa memberikan hash yang sama 9ce405c98406f2f6d5326ee6b51d19cd
. Ingat bahwa hash disusun oleh dengan 32 karakter "0123456789abcdf" (untuk md5 dalam kasus ini).
Mungkin mereka memaksa 16 karakter karena algoritma yang menghitung hash memastikan bahwa tidak akan ada tabrakan dalam database dengan kata sandi yang disimpan sebelumnya.