@2010255113

Хеширование хеша. Сколько уникальных хешей получится?

Возьмём для примера SHA2-256. Возьмём случайное число от 0 до 2^256 - 1 в формате байт. Хешируем его. Затем полученный хеш будем хешировать много раз. Всего получится 2^256 итераций хеширования. Получится ли при этом все 2^256 возможных вариантов хешей? Или какой-то вариант потеряется? Какой ответ будет для, например, SHA3-256?
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 1
mayton2019
@mayton2019
Bigdata Engineer
Или какой-то вариант потеряется?


Биткоин использует формулу двойного SHA. Но мне кажется что это идет не от идеи улучшить качество распределения а скорее от идеи сломать действующие радужные таблички которые могут быть (теоретически) где-то сгенерированы и использоваться для недобрых целей.

По поводу вопроса. Да. Скорее всего какой-то вариант потеряется в силу свойства хеш-функций. Это свойство сюрьекции. Что существует какие-то 2 аргумента что функция даст одно значение для них двоих. Для тройного "ША" будет скорее всего ситуация еще хуже. Тоесть еще больше коллизий. Но мы эти коллизии чорта с два найдем просто в силу того что числа слишком большие и переборные методы здесь нам не друзья.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы