news.ycombinator.com/item?id=6851117 — это та ссылка? Не думаю, что это тот же ученый, на HN некий Сергей Яхонтов, а здесь — Панюков Анатолий Васильевич.
Ключевой момент — источником такой новости никак не может стать сайт с заголовками вроде «Тайна Бермудского треугольника всплыла сама!». И заголовок новости будет не будет содержать «челябинский ученый» (не потому что в Челябинске ученых быть не может, а потому что если будет возможен хоть какой-то шанс верности доказательства, не будет иметь значения из какого города или страны доказавший).
К сожалению, похоже, что не очень походящий. У него всего 12 публикаций (как-то невероятно мало для профессора; может, конечно, не всё проиндексировано) и всё по каким-то несвязанным темам. Да и судя по названиям некоторые статьи довольно простенькие.
Учился у этого профессора. На первом курсе читал алгоритмы. Очень своеобразный человек. Ничего толком объяснить не может, но видно, что в глове шестёрёнки крутятся очень здорово.
И это хорошо, даже если доказательство неверно, по крайней мере это даст еще информации о том, где искать не стоит. Вот что настораживает, так это отсутствие peer review. Как только хотя бы 2-3 независимых эксперта (из других университетов, организаций, стран) скажут, что доказательство имеет право на жизнь, тогда уже можно подозревать сенсацию. А пока очередная попытка, коих тысячи (ну или десятки более-менее качественных).
Я достаточно некомпетентен в данном вопросе, но объясните — вот такое заключение верно ли:
Решение в принципе может быть найдено либо перебором, либо функцией. Проверить решение можно также — либо перебором, либо обратной функцией. Существование обратной функции для любой данной в принципе не всегда возможно (те же самые хэш-функции). Таком образом, трудоемкость поиска решения больше трудоемкости его проверки.
Или я что неправильно понимаю?
Стоп. Если рассматривать криптографически стойкую функцию, то мы должны иметь: необратимость и стойкость к коллизиям разного рода.
Необратимость по определению хэш функйии должна присутствовать. Сама функциия нахождения коллизии по результату работы хэш функции и будет являться обратной. Такой вариант исключаем. Остается ваш вариант — «быстрая функция поиска коллизий». Понятие «быстрая» будет рассматриваться в контексте скорости вычисления самой хэш-функции. Гипотетически, можно иметь огромный словарь значений и тогда скорость работы функции будет равна скорости поиска значения. Если значение хэш функции использовать в качестве адреса, то коллизия может быть найдена за одну итеррацию — не зависимо от сложности вычисления самой хэш функции.
Вопрос в том — куда определить трудоемкость составления этого словаря?
Если ее учитывать в процессе поиска коллизии, то этот процесс однозначно сложнее вычисления самого значения. Иначе в чем смысл самой алгоритмизации вычисления хэш-функции?
Если же ее НЕ учитывать, то процесс поиска коллизии гипотетически для любой хэш-функции проще, чем ее вычисление.
Так. Стоять. Я не хочу: чтобы мы путались в терминах.
Пусть у вас есть функция F( X ) = Y
Обратной ей называется функция G(Y), такая что F(G(Y)) = Y
Обратная функция не обязана находить X. Обратная функция обязана находить значение из класса эквивалентности относительно исходной функции. (любое значение, которое даёт Y)
Именно это я называл поиском коллизий, и оно почти так используется в литературе. (С поправкой на рандомизируемость)
Теперь второе ваше утверждение:
>>Необратимость по определению хэш функции должна присутствовать.
Ни для одной хеш-функции не доказано, что она необратима именно алгоритмически. Более того, не доказано, что существует хотя бы одна необратимая функция в принципе. Более того, нахождение (доказательство) хотя бы одной трудно обратимой функции будет автоматические доказывать, что P!=NP.
То есть, интуитивно кажется, что восстановить по x=SHA512(4TbPornImage.iso) сам 4TbPornImage.iso должно быть сложно. Но нет никаких разумных доказательств того, что нельзя написать полиномиальную функцию BSHA(x), которая будет гарантированно выдавать какой-то бессмысленный набор байт z такой что SHA512(z)=x.
>>Гипотетически, можно иметь огромный словарь
Вам потребуется бесконечный словарь. То есть функция. Конечно, её сложность надо учитывать.
Отдельно
На самом деле, существование односторонних функций — вещь еще более сильная, чем P!=NP.
То есть, возможно, P!=NP, но при этом односторонних функций всё-таки не существует.
(Иными словами, P!=NP гарантирует только необратимость в худшем случае, а для существования односторонних функций нужна трудность в среднем)
Но если так-то дело дрянь, потому что и всей магии P=NP нету, и криптография тоже разваливается.
Бывают обратные функции справа и слева, соответственно F` и F``, такие что
F(F'(y)) = y и F``(F(x)) = x, если F` = F`` то её просто называют обратной функцией G, для нее x = F(G(x)) = G(F(x))
Хеш функции H делаются как раз так, чтобы не было очевидной функции H`, такой что H(H`(x)) = x.
Для взлома RSA нужно иметь функцию обратную умножению пары простых чисел (F`), причем такую, чтобы F`(F(x,y)) = (x,y).
И такая функция есть, и если докажут что P=NP, то её можно будет считать за полиномиальное время.
Да, в свете недавних событий с хабом Dura Lex, это утверждение звучит весьма обосновано!
Не совсем понятно чем Математика лучше или хуже, чем Dura Lex.
Куцая информация о товарще. Думал сам запостить новость, но везде одно и то же: решил задачу, суровый челябинский мужик. На самом деле есть одно но: пока доказательство не будет проверено и подтверждено, ничего существенного в этом нет.
Челябинский математик опубликовал попытку доказательства P=NP