SHA256 секретный вопрос - PullRequest
       19

SHA256 секретный вопрос

4 голосов
/ 16 апреля 2011

Имея такой результат для некоторой строки STR, было:

SHA256(STR)=3f7c54571faee024e3fd68603c5c95f6a4c8ef73a398840b974f3f57737a116f 

Можно ли получить результат SHA256(myOwnString+STR)?(«+» используется в качестве конкатенации)

Есть ли какие-либо известные атаки для этого сценария?

Ответы [ 2 ]

3 голосов
/ 16 апреля 2011

myOwnString+STR будет совершенно другой строкой, чем STR - поэтому эти два будут иметь совершенно разные хэши; и, глядя на эти хэши, вы не сможете догадаться, что они являются результатом применения вашей хеш-функции к STR и чего-то, основанного на STR.

Именно поэтому мы обычно рекомендуем использовать соль при хешировании паролей - см. Соль (криптография) , об этом.

2 голосов
/ 16 апреля 2011

То, что вы описываете, оценивает «свойство лавины» хеш-функции;если вы немного измените вход, насколько изменится выход?Любая приличная функция хеширования должна иметь возможность полностью искажать результат, даже если ввод изменяется только на один бит.Вот почему такие вещи, как соли и одноразовые значения, работают хорошо, потому что добавление нескольких байтов к исходной строке (которая сама по себе может быть слабой, короткой или предсказуемой, как пароли) изменяет результат хеширования на что-то совершенно другое и не связанное с оригиналом.

, чтобы ответить на ваш вопрос более точно:

Атака 2008 года ломает сопротивление прообразу для 46 из 80 раундов SHA-512 и 41 из 64 раундов SHA-256. [1]Столкновение атак до 24 шагов SHA-256

и

Есть две атаки с прорезью встреч в середине против SHA-2 с уменьшенным числомраундов.Первый атакует 41-раундовый SHA-256 из 64 раундов с временной сложностью 2253,5 и пространственной сложностью 216 и 46-раундовым SHA-512 из 80 раундов с временем 2511,5 и пробелом 23. Второй атакует 42-раундовыйSHA-256 с временной сложностью 2251,7 и пространственной сложностью 212 и 42-кратным SHA-512 с временем 2502 и пространством 222.

Так что да, он ослаблен, но еще никуда не годится.И я не нашел никаких атак, связанных с расширением входной длины.

...