Я хотів, щоб деякі відповіді були обговорені в одному дописі.
По-перше, не думайте про хеш MD5 як про рядок символів, а як про шістнадцяткове число. Отже, кожна цифра є шістнадцятковою (0-15 або 0-F) і представляє чотири біти, а не вісім.
Беручи до уваги, що один байт або вісім бітів представлені двома шістнадцятковими цифрами, наприклад b ' 1111 1111
' = 0xFF
= 255
.
Хеші MD5 мають довжину 128 бітів і, як правило, представлені 32 шістнадцятковими цифрами.
Хеші SHA-1 мають довжину 160 бітів і, як правило, представлені 40 шістнадцятковими цифрами.
Для сім'ї SHA-2, я думаю, довжина хешу може бути однією з попередньо визначених наборів. Тож SHA-512 може бути представлений 128 шістнадцятковими цифрами.
Знову ж таки, ця публікація лише заснована на попередніх відповідях.