Решил вчера задачку на реверсинг хеша, попробуйте теперь и вы: http://www.nerd.nintendo.com/files/HireMe.cppЭто тип для трудоустройства, что тут все равно никому не светит (они вроде только из ЕС нанимают), но сама задачка мне понравилась. Накидайте еще подобного, если есть.
Байтослесарь, ИДИ НАХУЙ.
че дилать над
>>733921 (OP)Я тольк сишку учу, я не умею
Нинтдендо, лол и кек
Это не реверсинг. Алгоритм известен, данные известны. Это математика и криптоанализ.
>>734292Нахождение прообраза (хэш-)функции, если быть точным. Не очень точно выразился в оппосте, но суть ясна, по-моему.
>>734356Поделись, как решал?
Что такое confusion и diffusion?
>>734535Смущение и распространение.
Если матрица diffussion обратима, то решается как нехуйделать.
>>734437Не буду лишать тебя удовольствия от решения. >>734646Очевидно, что она решается. Я, например, решил. Попробуй сам найти и реализовать своё решение.
Нихуя не понял из кода. Дайте математическую модель этой функции. При чем тут матрицы?
>>734535Confusion - матрица подстановки, diffussion - битовая матрица 32х32.Алгоритм состоит и 256 раундов подстановки и умножения вектора на матрицу.
>>734875> матрица подстановкиПросто подстановка.
>>734292Двачую. "Крякнуть" хеш можно просто написав std::cout в двух местах внутри функции Forward;
>>734943По-моему ты не понял сути задачи. Напиши свое решение с cout, там и видно будет.
Где читать теорию по таким хэш-функциям? С матрицами, перестановками.
>>735381Здесь понадобятся основы логики, дискретной математики, алгебры логики. В целом в криптоанализе используется также теория вероятностей. Любые материалы по этим темам подойдут.
>>735415Ну а по созданию таких функций что читать? Я нихуя не понял, как работает ОП-код.
>>735427Криптоанализ и создание криптографических примитивов (хэш-функций, алгоритмов шифрования и т.д.) это две стороны одной медали. Чтобы понять, как создать стойкий алгоритм, нужно знать как эти алгоритмы ломаются. Как говорил Шнайер: "Не надо мне рассказывать, сколько алгоритмов ты создал. Скажи, сколько ты сломал". Он автор книги "Прикладная криптография", которую я не читал, но говорят что она хороша.
>>734741Ну я тут проверил в перекурах, матрица обратна себе самой. Теперь надо подстановку реверснуть и всё ок.
>>733921 (OP)это не хэш, а sp-сеть
>>736252Ну, теперь дело за малым, правда? Попробуй это реализовать. Потом вместе посмеемся.
>>733921 (OP)Олимпиадник да?
>>736887Немного. Соревнования вроде google code jam иногда гоняю, но очень высоко не забираюсь.Олимпиады это все же гонка на время в основном, а здесь надо посидеть, поразмыслить.
>>736596>sp-сетьМожно ли использовать сеть Фейстеля для написания криптолокера про вин апи знаю? На чем основана криптостойкость этой сети?
Побампаю еще немного, может кто-то таки решит.
Ну что же вы, олимпиадники. Неужели СЛИШКОМ СЛОЖНО?
>>741349
Последний раз бампну. Если никто так и не решит, в следующий раз принесу чего попроще.
>>743422Повеселее лучше принеси. Давай CTF уровня /b/ запилим.
>>733921 (OP)> typedef unsigned int u32;Блять что это.
>>743435А мне и это весело. Про свой CTF я тоже думал, но мотивации мало. Скорее всего никто не заинтересуется задачами от анона.
>>743589Это алиас для типа
>>733921 (OP)Можно пояснить суть задачи?
>>743435А что есть CTF?
>>746072В коде определена хэш-функция. Нужно найти прообраз заданной строки для этой хэш-функции, т.е. такую входную строку, которая даст заданную строку на выходе.
>>746516Т.е. найти такую строку, которая после хеширования давала hire me!!!! Да?
>>746967Да. На самом деле нужно написать общий алгоритм обращения хеша, который сработает для любой строки.
>>743893Хуле не uint32_t?
>>746967Т.е. функцию которая по заданной строке и алгоритму хеша найдет прообраз входной строки?