Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: хэш
 
 автор: winflip   (14.09.2007 в 18:29)   письмо автору
 
 

в чем суть хэша и почему его нельзя сломать

   
 
 автор: Unkind   (15.09.2007 в 13:14)   письмо автору
 
   для: winflip   (14.09.2007 в 18:29)
 

Хеш - контрольная сумма какой-то информации, полученная с помощью какого криптографического алгоритма.
Взломать хеш действительно нельзя. Байты не ломают. Можно найти уязвимость в алгоритме генерации хеша, если, конечно, таковая там существует.

   
 
 автор: Trianon   (15.09.2007 в 13:39)   письмо автору
 
   для: Unkind   (15.09.2007 в 13:14)
 

Несколько неточное, вернее неполное определение.

>Хеш - контрольная сумма какой-то информации, полученная с помощью какого криптографического алгоритма.

Это можно с некоторой натяжкой назвать описанием криптохеша.

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

Алгоритмы вычисления хеша могут быть совершенно различными. Главное , чтоб он с как можно более близкими вероятностями выбирал значение из выходного множества.
Для контрольного суммирования этого вполне хватает, поскольку проверка целостности данных не ставит задачу защиты от подделок - только от случайных искажений.

Для криптологических применений (построение дайджеста сообщения, генерация ЭЦП, формирование ключа по паролю и т.п.) формулируется еще одно важное требование -
нужно, чтобы обратная задача - поиск строки аргумента по известному значению хеша - была возможно более трудоемкой. В идеале - полный перебор по входному множеству с полным вычислением хеша для каждого кандидата и сравнением вычисленного с искомым.


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

К примеру из квинтилиона (10^18 ) возможных строк хеш создает миллион (10^6) значений.
Если он близок к идеальному, то каждому конкретному из значений результата будет соответствовать приблизительно 10^(18-6) = 10^12 т.е. триллион входных строк.
И никакой возможности установить, какая из строк в действительности была хеширована, невозможно, поскольку такой могла оказаться любая из них.

   
 
 автор: winflip   (15.09.2007 в 16:04)   письмо автору
 
   для: Trianon   (15.09.2007 в 13:39)
 

Спасибо

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования