Максимальная длина для входа/выхода MD5
какова максимальная длина строки, которая может иметь хеширование md5? Или: если он не имеет предела, и если да, то какова будет максимальная длина выходного значения md5?
7 ответов
MD5 обрабатывает сообщение произвольной длины в выход фиксированной длины 128 бит, обычно представляемый как последовательность из 32 шестнадцатеричных цифр.
- длина сообщения неограниченный.
Добавить Длину
64-разрядное представление b (длина сообщения перед добавлены биты заполнения) добавляется к результату предыдущего шаг. В маловероятном случае, если b больше 2^64, то только используются 64 бита низкого порядка b.
- хэш-всегда 128 бит. Если вы закодируете его в качестве шестнадцатеричной строки вы можете кодировать 4 бита на символ, давая 32 символа.
- MD5-это не шифрование. Нельзя "расшифровать" хеш MD5, чтобы получить исходную строку.
Посмотреть подробнее здесь.
вы можете иметь любую длину, но, конечно, на компьютере может быть проблема с памятью, если строковый ввод слишком длинный. Выход всегда 32 символа.
алгоритм был разработан для поддержки произвольной длины ввода. Т. е. вы можете вычислять хэши больших файлов, таких как ISO DVD...
Если есть ограничение для ввода, оно может исходить из среды, в которой используется хэш-функция. Предположим, вы хотите вычислить файл, и среда имеет ограничение MAX_FILE.
но выходная строка всегда будет одинаковой: 32 шестнадцатеричных символа (128 бит)!
нет предела входу md5, о котором я знаю. Некоторые реализации требуют, чтобы весь вход загружался в память перед передачей его в функцию md5 (т. е. реализация действует на блок памяти, а не на поток), но это не является ограничением самого алгоритма. Выход всегда 128 бит. Обратите внимание, что MD5-это не алгоритм шифрования, а также криптографических хэш. Это означает, что вы можете использовать его для проверки целостности куска данных, но не можете отмените хэширование. Также обратите внимание, что md5 считается сломанным, поэтому вы не должны использовать его для чего-либо связанного с безопасностью (по-прежнему хорошо проверять целостность загруженных файлов и т. д.).
вы можете использовать SHA-1 вместо MD5 в, поскольку MD5 считается сломанным.
вы можете узнать больше об уязвимостях MD5 в эта статья в Википедии.