Я просто думал о числах, повторяющихся в хэшах, и мне было интересно, возможно ли, чтобы половина хэша sha512 состояла из 64 последовательных нулей.Возможно ли, чтобы хэш sha512 начинался с 64 нулей?
ответ
Это не менее вероятно, как и любое другое значение хэша, или должно быть.
Очень интересно, интересно, какая строка будет равна этому хешу. – Max00355
Как сказал Крис - у вас должен быть такой же шанс получить такой хэш, как и любой другой хэш. Таким образом, вероятность этого равна 1/2^64.
Если вы хотите найти такой хэш, вы можете надеяться, что его уже нашли и положили в rainbow tables. Я попытался найти такой хеш here, но не смог :)
Также вы можете попробовать его самостоятельно. Я попытался с такой наивной сценарий:
import random
import string
import hashlib
import datetime
s=string.lowercase+string.digits
random.seed(datetime.datetime.utcnow())
while 1:
x = ''.join([random.choice(s) for a in range(random.randint(2,1024))])
if hashlib.sha512(x).hexdigest().startswith('0000000000000000'):
print x
exit()
Но потом мне пришло в голову, что я до сих пор мало шансов. Итак, ожидаемое число итераций алгоритма должно составлять 2^64. Моя машина произвела 100000 итераций в
real 1m7.762s
user 1m5.908s
sys 0m0.123s
Для итераций это 0.0006776 секунд.
Подводя итог - потребовалось бы около 396357000 лет, чтобы получить результат на моей машине без оптимизации.
Ну, удачи!
Примечание для записи, что sha512 - 64 байта, что составляет 512 бит, поэтому существует 2 ** 512 возможных значений sha512. –
- 1. MongoDB: Возможно ли использовать колонки SHA512?
- 2. Vb.net Расшифровать sha512 хэш
- 3. Конвертировать одновременно в SHA512 хэш
- 4. C# - Можно ли использовать хэш с помощью RSA SHA512?
- 5. как хэш SHA512 строка в C#
- 6. Возможно ли, чтобы раздел «Часть» всегда начинался с нечетного номера страницы?
- 7. Как обеспечить, чтобы шаблон начинался с буквы
- 8. setInterval начинался с кнопки или начинался один
- 9. Как хэш строку для SHA512 в Swift?
- 10. Как напечатать SHA512 хэш в C
- 11. Использует ли hash_equals строки, хэшированные с `sha512`?
- 12. Возможно ли, чтобы 32-разрядный NSIS запускал 64-битную программу?
- 13. SHA512 хеширования с Xamarin
- 14. рубин пароль SHA512 хэш-репликация с помощью PHP
- 15. Возможно ли 64-битный операнд прямой памяти на x86-64?
- 16. Php 64-битный целочисленный хэш
- 17. Как я могу воспроизвести хэш SHA512 в C#, который соответствует PHP SHA512?
- 18. Perl: возможно ли Хэш хранить смешанные переменные?
- 19. iOS SecKeyEncrypt OAEP SHA512
- 20. Реализация квитирования клиента SHA512
- 21. Symfony2: Как я могу генерировать хэш пароля sha512?
- 22. как расшифровать SHA512 хэш-значение для фактической строки в C#
- 23. Возможно ли иметь хэш-карту с 4 объектами?
- 24. SHA512 хеширования MYSQL/PHP
- 25. андроид sha512 пример
- 26. Можно ли вычислить только часть хэша SHA512? (C#)
- 27. Переопределение хеша (SHA512)
- 28. Я не хочу, чтобы ботстрап-тур начинался во втором посещении
- 29. Будет ли хэш SHA256 всегда иметь 64 символа?
- 30. «Пересчитать» SHA512 + соль для BLOWFISH + соль - это возможно?
Возможно, если бы это было невозможно, это, по крайней мере, теоретически было бы слабостью. В то же время удачи в поиске ввода, который производит этот конкретный результат. –
Ха-ха, я знаю, это потребует много вычислительной мощности, я уверен. – Max00355
Это мягко сказано. Фактически, используя каждый компьютер на Земле, шансы найти его до того, как мы все умрем, являются незначительными. –