Как снизить время перебора хэша sha256 на основе цепочки?

У меня есть список хэшей sha256

hash1
hash2
hash3
hash4

Каждое хеш-значение является хэшем от указанного выше значения (hash("sha256","hash1") = hash2). Мне нужно перебрать тот, который следующий в строке (hash0). Есть ли способ уменьшить время перебора, зная, что его хешированное значение равно чистому значению в цепочке? Если да, то как это можно сделать? Или в худшем случае, сколько времени мне потребуется, чтобы расшифровать его? Простите, я очень плохо объясняю. Заранее спасибо.


person Marciel Fonseca    schedule 16.12.2015    source источник
comment
Хэши не являются шифрованием и поэтому не могут быть расшифрованы. Лучшее, что мы можем сделать, это попробовать возможности, известные как грубая сила.   -  person zaph    schedule 17.12.2015


Ответы (1)


Это может занять некоторое время:

На iPhone 6s SHA256 занимает 2,5 мс.
Секунд в году: 23,82 К или около 2^25.
Деление дает 10 ГБ или 2^34 хэша в год.
Деление снова 2^256 / 2^ 34 = 2 ^ 222 или в десятичном виде около 100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 лет.

Посмотрите на хорошую сторону, это намного меньше, чем google лет!

Вот почему говорят, что перебор SHA256 невозможен.

Но вам может повезти, и это займет меньше секунды. Вы чувствуете себя счастливым?

person zaph    schedule 16.12.2015
comment
Вовсе нет после вашего комментария, ха-ха - person Marciel Fonseca; 17.12.2015