Егор Нестеров
31 января 22:33.
245

Как хэш-код документа может защитить получателя? Если враг может просто перехватить файл и отредактировать его.

Ответить
Ответить
Комментировать
1
Подписаться
0
2 ответа
Поделиться

Подобные меры защиты работают статистически.  Можно сказать "на русский авось".  Но - работают!  Дело в том, что не разобраться с хэш-кодом перехваченного документа корректно ошибка дурацкая, но вполне возможная.  И даже при случайном "повреждении данных" хэшкод всё ещё может соответствовать.  Теоретически.  Но на практике - эта система неплохо, с хорошей т.е. вероятностью - работает.

1
0

Если верить документации вероятность немного ниже чем то, что завтра во время прогулки в вас попадет метеорит.

0
Ответить

Смотря сколько бит в хэшкоде.  Что и от длины документа должно зависеть.  К примеру, если в коде десять бит, то вероятность совпадения со случайным числом 1/1024.  Одна тысячная - это не астрономически малая величина.

0
Ответить
Ещё 2 комментария
  1. от длины документа хэшкод вообще не зависит.
  2. где вы видели хэш на 10 бит? в школьных самостоятельных? Минимальный хэш что я видел - 5 шестнадцатеричных чисел. Это 2 в восьмидесятой степени комбинаций.
0
Ответить

O temporo, o moro!

Вообще-то, в мои времена - чего только не было.  В отрасли, а не в школе.  Хэш код в два-три бита мог использоваться для проверки целостности машинного слова, например.  Вроде и смешно.  Но сильно повреждённые данные себя, всё же, выдавали.  Статистически.

Современные системы и даже антивирусы - тоже едва ли все используют для проверки целостности данных длинные хэш коды.

0
Ответить

Спасибо за ответ. Помучаю ещё немного - на примере. Мне пришёл пдф файл с хэш кодом и числовой код в смс с этим же хэш кодом для подписания первого.
Факт ввода в условное поле числового кода подразумевает мое согласие с документом? То есть подразумевает что я сравнил хеш сумму в файле и в смс. Значит содержимое инициировано отправителем корректно?

0
Ответить

Это означает что документ тот самый из которого создали хеш код и ничего больше. Смысл в том что бы вам не подменили файл.

+1
Ответить
Ещё 1 комментарий

Точнее, смысл тот, что вам не подменили хеш код.  Теперь, заново рассчитав хэш код файла и сравнив с тем, что пришёл мы узнаем, что файл - практически наверняка не подменили.

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

0
Ответить

В этом смысл всего этого? )

0
Ответить
Ещё 2 комментария

И ещё что меня сломало окончательно. Если файл уже включает информацию о хеш сумме, то как ее смогли вывести на документ, если после вывода на документе, уже и хеш сумма другая. Это просто взрыв

0
Ответить

Вот как бы это сделали вы лично?

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

0
Ответить
Прокомментировать

Хэш-код как раз предотвращает изменение документа. В этом и есть его смысл. Если враг перехватил документ и изменил его, то у нового документа будет другой хэш-код, не совпадающий со старым. И получатель тут же поймет, что документ изменен и недостоверен.
Тут естественно, что у врагов не должно быть доступа к хэш-коду. Он передается по другим каналам, либо вместе с документом, но алгоритм его расчета неизвестен.

0
0
Прокомментировать
Ответить
Читайте также на Яндекс.Кью
Читайте также на Яндекс.Кью