Большой Воронежский Форум
Страница 2 из 3
< 12 3 >
» Программирование>возможно ли решить уравнение?
MadFish 21:47 12.10.2009
да выкинте вы эти ашки (а1,а3) вообще, они в алгоритме только для "красоты" и не работают в принципе!!! невозможно "зафиксировать" k3(она переменная считается по значениям в массиве которые мы собственно и ищем) "зафиксировать" мы можем только константы. как зафиксируем считай нашли решение. [Ответ]
MadFish 21:47 12.10.2009

Сообщение от xxx-men:
будет всегда 666, п

не будет у тебя массивы ровно по 522 элемента.

блин... как ты будешь нумеровать 144 (666-522) элемент 0,144,144 или 5,149,149 однохрентвенно изнfчально по алгоритму, и знание того что ты можешь нумеровать элементы массива Arr1 разными способами не поможет тебе найти ЗНАЧЕНИЕ элементов/ [Ответ]
olexus 21:51 12.10.2009
xxx-men, а разве массивы не по 522 элемента? [Ответ]
xxx-men 21:52 12.10.2009
ну 666%522

Сообщение от MadFish:
да выкинте вы эти ашки (а1,а3) вообще,

a1 выкинуть нельзя, т.к. сначала надо получить массив arr2, а он только от нее зависит.
[Ответ]
olexus 21:54 12.10.2009
xxx-men, нужно для случая а1=а2=а3=0 пробовать брутфорсить. получим const1 и const 2 дальше проще. [Ответ]
xxx-men 21:57 12.10.2009

Сообщение от olexus:
. получим const1 и const 2

как????? их можно получить только последними... [Ответ]
MadFish 22:07 12.10.2009

Сообщение от xxx-men:
как????? их можно получить только последними...

ИМЕННО!!! кажись моя идея пошла в массы набираешь 522 значения резулта (для а2=0<=522 а1=0 а3=а2)
а дальше для каждого значения пытаешься найти наименьшие константы (см мои предыдущие посты) как нашел наименьшие удовлетворяющие всем 522 значениям резулта значит нашел решение. но это, конечно, неоптимально. говорю же должна!!!! быть еще другая зависимость меду к1 и к2. поспрашивай математиков.
[Ответ]
xxx-men 22:11 12.10.2009
так результы будут не чистые суммы, а заксоренные из массива arr2 [Ответ]
MadFish 22:16 12.10.2009
и что? это-то тривиально. перебираешь все к3 (0.1.2.3.4...xxx) ->Аrr2[k3]=result ^ k3;
k3=k2+k1; перебираешь все к1(0.1.2.3.4...xxx) к2=к3-к1.
итп. я сразу говорил: "долго муторно и нафиг никому не нужно!!!!"

гораздо эффективнее использовать терморектальный криптоанализ. Засунуть паяльник в задницу автору программы и ненавязчего поинтересоваться какие там константы и массивы
[Ответ]
xxx-men 22:21 12.10.2009

Сообщение от MadFish:
Аrr2[k3]=result ^ k3;

неугадал, я не могу перебирать все значения k3, я могу перебирать только их индексы. [Ответ]
MadFish 22:23 12.10.2009

Сообщение от xxx-men:
неугадал, я не могу перебирать все значения k3, я могу перебирать только их индексы.

А кто тебе запрещает????
Я тебе даю свое разрешение, даже блогословение если оно тебе нужно. Перебирай все k3 от нуля до result и будет тебе счастье, ищущий да обрящет!!!! гыыыыы [Ответ]
xxx-men 22:31 12.10.2009

Сообщение от MadFish:
А кто тебе запрещает????

"интерфейс" [Ответ]
MadFish 22:33 12.10.2009

Сообщение от xxx-men:
"интерфейс"

это что-то новенькое. Изначально про "интерфейс" ничего не было, я что-то пропустил? [Ответ]
xxx-men 22:37 12.10.2009

Сообщение от xxx-men:
я могу отправить настоящему клиенту любые a1, a2, a3, и получить верный result

ну какбы, вот такой там "интерфейс" [Ответ]
MadFish 22:44 12.10.2009

Сообщение от xxx-men:
Сообщение от xxx-menПосмотреть сообщение
я могу отправить настоящему клиенту любые a1, a2, a3, и получить верный result
ну какбы, вот такой там "интерфейс"

и че? получаешь резулт(и так 522 раза для всех а2 бла-бла-бла) .
по резулту "предполагаешь" к3 (от 0 до резулт) ибо arr2 у тебя тоже нема. по к3 "предполагаешь" к2 и к1. для них ищещь минимальновозможные константы 1 и 2. наиболее часто встречающуюся пару констант для всех резулт объявляешь "верной" по ним ищещь значение arr1 и соответственно arr2. ловишь фан от решенной задачи. но если найти простую зависимость между к1 и к2 можно будет сделать на порядки проще. ИМХО [Ответ]
xxx-men 22:54 12.10.2009
последний раз когда работало было так:
DWORD const1 = 0x00FEEDFE;
DWORD const2 = 0xA784ED90; [Ответ]
MadFish 22:59 12.10.2009
ну и попробуй как первую из версий, считай что ты их нашел попробуй для конкретных резулт построить массивы (но я бы как программер скорее поменял константы чем массивы их менять проще и быстрее а массивы оставил бы теже ) и все же поспрашивай у математиков ну сто пудова можно упростить а^b+a^c или найти какую-то простую зависимость. [Ответ]
olexus 23:07 12.10.2009
для частного случая а1=а2=а3=0..N
k1=arr1_0^const1
k2=arr1_0^const2
отсюда делим 1 на 2 получаем:
k1^const1=k2^const2

arr2_i+k1+k2=(k1+k2)^result , i=0..N
то есть начиная с индекса k1+k2 есть прямая зависимость с резултом для arr2 [Ответ]
MadFish 23:14 12.10.2009
olexus, да нет там никакой зависимости от индексов. то что у тебя разные значения индексов будут показывать на один и тотже элемент массива arr1 монопенисуально, не путай человека, ему надо найти значения массива, с индексом нет кореляциии никакой!!! массив забит случайными числами!!! [Ответ]
olexus 23:17 12.10.2009
MadFish, читать умеешь? [Ответ]
MadFish 23:19 12.10.2009
olexus, и читать, и думать, и ясно выражать свои мысли ИМХО. что конкретно тебе не понравилось в моем высказывании? Два массива случайных чисел, две случайные константы, какие могут быть зависимости случайного значения от индекса массива? [Ответ]
olexus 23:25 12.10.2009

Сообщение от olexus:
для частного случая а1=а2=а3=0..N
....
то есть начиная с индекса k1+k2 есть прямая зависимость с резултом для arr2

где сказано про корреляцию с индексом? [Ответ]
MadFish 23:28 12.10.2009
olexus, а ты сам-то читаешь то что пишешь? "начиная с индекса k1+k2 есть прямая зависимость с резултом для arr" (на всякий пожарный "Корреля́ция — взаимосвязь двух или нескольких величин" а уж примая она, обратная и по каким законам идет распределение не суть важно) [Ответ]
olexus 23:31 12.10.2009
MadFish, в свете последнего высказывания с выдергиванием слов из контекста мне с вами не о чем говорить.. [Ответ]
MadFish 23:32 12.10.2009
olexus, не настаиваю. [Ответ]
olexus 23:34 12.10.2009
ну и лесом [Ответ]
MadFish 09:57 13.10.2009
xxx-men, можешь еще посмотреть в сторону линейного и диффиринциального криптоанализа, но это уже не мой профиль [Ответ]
xxx-men 10:21 13.10.2009
a1=0; a2=0^a1; a3=0^a1;
a1=1; a2=0^a1; a3=0^a1;
a1=2; a2=0^a1; a3=0^a1; //В этом случае k3 константа, _k0
a1=3; a2=0^a1; a3=0^a1;
a1=4; a2=0^a1; a3=0^a1;
.....
a1=0; a2=0^a1; a3=1^a1;
a1=1; a2=0^a1; a3=1^a1;
a1=2; a2=0^a1; a3=1^a1; //В этом случае k3 константа, _k1
a1=3; a2=0^a1; a3=1^a1;
a1=4; a2=0^a1; a3=1^a1;
.....
a1=0; a2=0^a1; a3=2^a1;
a1=1; a2=0^a1; a3=2^a1;
a1=2; a2=0^a1; a3=2^a1; //В этом случае k3 константа, _k2
a1=3; a2=0^a1; a3=2^a1;
a1=4; a2=0^a1; a3=2^a1;
.....
смотрим на формулу: result = k3 ^ Arr2[(a1 + k3) % 0x20a]; k3 константа, a1 = 0...n;
вытягиваем массивы результов.
_result0[] = _k0 ^ Arr2[(a1 + _k0) % 0x20a];
_result1[] = _k1 ^ Arr2[(a1 + _k1) % 0x20a]; // массивы будут смещены на неизвесное число.
_result2[] = _k2 ^ Arr2[(a1 + _k2) % 0x20a];
//-------------------------------------------------------------------------
_result0[] = _k0 ^ Arr2[];
_result1[] = _k1 ^ Arr2[]; //решаем систему уравнений
_result2[] = _k2 ^ Arr2[];
Arr2[] = _result0[] ^ _k0;
Arr2[] = _result1[] ^ _k1;
Arr2[] = _result2[] ^ _k2;
_result0[]^_result1[] = _k0^_k1; где _k0^_k1 константа.
теперь по одному элементу смещаем массив _result1 , пока перексоривание с _result0 не начнет выдавать константу, смещение запишем в n01;
короче, получаем:
_k0^_k1 = _result0[0]^_result1[0] = _result0[1]^_result1[1] =.... = r01xor
_k0 + n01 + 0x20a * i = _k1; где i = -n...n, ~8+ милионов вариантов.
r01xor^k1 + n01 + 0x20a*i = _k1; и как отсюда выдрать k1?
или проще:
n^X +m =X; n,m знаем, как решить это уравнение? [Ответ]
xxx-men 10:40 13.10.2009

Сообщение от xxx-men:
n^X +m =X; n,m знаем, как решить это уравнение?

перебрать 4 милиарда вариантов Х, и пля сделать это 8 милионов раз.
у кого есть мощный компьютер? [Ответ]
MadFish 11:11 13.10.2009
xxx-men, говорил же муторно, дорого и нафиг никому не нужно Возми хорошую книжку по криптоанализу, раз тебя так торкнуло. Ростовцев А.Г., Маховенко Е.Б. - Теоретическая криптография. думаю поможет. [Ответ]
Страница 2 из 3
< 12 3 >
Вверх