Может ли MD5-хэш начинаться с нуля? Как насчет SHA-1?Может ли MD5-хэш начинаться с нуля?
ответ
Да:
$ echo -n "363" | md5sum
00411460f7c92d2124a67ea0f4cb5f85 -
$ echo -n "351" | sha1sum
0026476a20bfbd08714155bb66f0b4feb2d25c1c
Foun d, выполнив следующие действия в ударе:
for i in {1..1000} ; do echo $(echo -n $i | md5sum) $i ; done | sort | head
MD5-хэш "а" = 0cc175b9c0f1b6a831c399e269772661
SHA1 хэш "9" = 0ade7c2cf97f75d009975f4d720d1fa6c19f4897
Конечно. Или два нуля. Или больше. В общем, вероятность «случайного» ввода хеширования к результату с k ведущими нулевыми nybbles составляет около 2 ** (- 4k).
md5 а = 0cc175b9c0f1b6a831c399e269772661
<?php echo md5('a'); ?>
Sha1 из г = 042dc4512fa3d391c5170cf3aa61e6a638f84342
<?php echo sha1('i'); ?>
почему не: D
В криптографической хэш любой данный бит должен быть в равной степени вероятно, будет 0 или 1 для случайных входов.
Но разве иногда нет конкретных форматов вывода, связанных с хэш-алгоритмом? Например. Расширенный формат DES начинается и заканчивается символом подчеркивания. –
Конечно, но это не часть хэша, это просто разметка. – Chris
Я нашел хэш MD5, который начинается с нулевого байта!
2 Строка символов
Unicode # 7358 # 34823
$returnValue = md5('Ჾ蠇');
результат:
00000000 5e0a51c8 313ffb43 8a3a2861
Попробуйте со строкой: jk8ssl
echo md5('jk8ssl')
генерации:
00000000 18e6137a c2caab16 074784a6
я не нашел еще лучше ^^
вы нашли лучше? – oliholz
Престижность поиска буквенно-цифровой строки. Очень приятно. – HughHughTeotl
Эта нить довольно стар, но есть некоторые очень высокие & очень низкое значение хеша для SHA1 и MD5 здесь: http://www.crysys.hu/hashgame/allrecord.php
One из них имеет 7 байт ведущих нулей.
Более интересным вопросом будет любая проблема, с которой вы сталкиваетесь, что заставило вас задаться этим вопросом в первую очередь. – 2012-01-07 19:48:33
Я не уверен, что вы все еще рядом, но могу ли я спросить, почему вы спрашивали, может ли он начинаться с 0? Я столкнулся с проблемой, когда хэш, похоже, удаляет главный результат 0 и добавляет F в конец: S – Chris
Просто запустите этот вопрос, так как мой менеджер попросил меня предоставить тестовый пример хеш-значения, который содержит нуль байт. – neuront