Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.05.19;
Скачать: CL | DM;

Вниз

Дешифровка по кодовому слову   Найти похожие ветки 

 
AV ©   (2012-10-25 21:43) [40]


> сказал что мы можем к нему обращаться с любым текстом и
> любым(16 символов) ключевым словом и он на даёт зашифрованный
> текст

Обратись

с текстом
A
Ключ
AAAA-AAAA-AAAA-AAAA

с текстом
B
Ключ
AAAA-AAAA-AAAA-AAAA

с текстом
AB
Ключ
AAAA-AAAA-AAAA-AAAA


 
Sha ©   (2012-10-25 22:28) [41]

лучше с текстом #0
и ключами:
#1#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#0#1#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#0#0#1#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#0#0#0#1-#0#0#0#0-#0#0#0#0-#0#0#0#0
#0#0#0#0-#1#0#0#0-#0#0#0#0-#0#0#0#0
#0#0#0#0-#0#1#0#0-#0#0#0#0-#0#0#0#0
#0#0#0#0-#0#0#1#0-#0#0#0#0-#0#0#0#0
#0#0#0#0-#0#0#0#1-#0#0#0#0-#0#0#0#0
#0#0#0#0-#0#0#0#0-#1#0#0#0-#0#0#0#0
#0#0#0#0-#0#0#0#0-#0#1#0#0-#0#0#0#0
#0#0#0#0-#0#0#0#0-#0#0#1#0-#0#0#0#0
#0#0#0#0-#0#0#0#0-#0#0#0#1-#0#0#0#0
#0#0#0#0-#0#0#0#0-#0#0#0#0-#1#0#0#0
#0#0#0#0-#0#0#0#0-#0#0#0#0-#0#1#0#0
#0#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#1#0
#0#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#1
если этого будет мало добавим еще


 
Sha ©   (2012-10-25 22:32) [42]

вот ключи эти тоже спроси
#2#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#4#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#8#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#16#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#32#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#64#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
#128#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0


 
Rouse_ ©   (2012-10-25 22:44) [43]


> 96
>
> но ключ тот же
> ABCD-EFGH-IJKL-MNOP

не ключи разные.
ABCD-EFGH-IJKL-MNOP
и второй для войны и мира
ABCD-EFGH-IKLM-NOPQ


 
Rouse_ ©   (2012-10-25 22:45) [44]

Меня больше смущает 147 для kkkk-kkkk-kkkk-kkkk, тут явно не банальный ксор


 
AV ©   (2012-10-26 01:08) [45]

Автору.

В общем,
надо два разных текста по одному ключу прогнать
Тексты как можно проще. В идеале, как сказал Sha.
Если препод придерется, что это не текст, то как я предложил.
хотя даже лучше нет. Лучше "пробел" или @
Ключ тоже, или все "пробелы" или @

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

- первый текст
@@@@-@@@@-@@@@-@@@@ - ключ

@ - второй текст
@@@@-@@@@-@@@@-@@@@ - ключ


 
Германн ©   (2012-10-26 02:26) [46]

< Я сам то не делаю нам преподаватель дал несколько вариантов
> и сказал что мы можем к нему обращаться с любым текстом
> и любым(16 символов) ключевым словом и он на даёт зашифрованный
> текст

)))


 
han_malign   (2012-10-26 08:50) [47]


> Меня больше смущает 147 для kkkk-kkkk-kkkk-kkkk, тут явно не банальный ксор

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

И нужно понимать - значащие символы ключа - любые(Sha © [42]), или только печатаемые?
То есть у нас 2^127 перестановок, или значительно меньше???


 
Rouse_ ©   (2012-10-26 10:27) [48]


> - там банальная таблица - нужно понять алгоритм  перестановки
> на основании ключа...

Банальную таблицу ухохочешся составлять.
Если исходить из данного постулата: "По заявлению преподавателя тут всё очень просто", то должно быть что-то другое.
Ну типа Key[n] - Key[N+1] + Key[N+2] и т.п.


 
brother ©   (2012-10-26 10:29) [49]

Вот препод от вас отмазался ;) а окажется Key[n] + xor + ключевая таблица ;)


 
Rouse_ ©   (2012-10-26 10:51) [50]

Кстати это и не CRC8 (инициализация таблицы в диапазоне полинома 1..255 не подходит)


 
AV ©   (2012-10-26 11:11) [51]


> Ну типа Key[n] - Key[N+1] + Key[N+2] и т.п.

согласен

для примера
Оригинальный текст:ABCDEFGHIJKLMNOP
Шифрованный текст:!"#$%&"()*+,-./0
ключевое слово : ABCD-EFGH-IJKL-MNOP
Подходит OR по ключу + 1 = 96

Что уже не подходит для других.

Нужно что-то типа ключа, где все 0 и только 1 бит установлен.
#32 - пробел
#64 - @
подошли бы


 
han_malign   (2012-10-26 12:20) [52]


> "По заявлению преподавателя тут всё очень просто", то должно быть что-то другое.

- просто - на полгода...

и либо здесь ошибка
> Инокентий [14]
>
> Оригинальный текст:
> aaaaaaaaaaaaaaaa
> ssssssssssssssss
> dddddddddddddddd
> ffffffffffffffff
>
> Шифрованный:
> тттттттттттттттт
> аааааааааааааааа
> чччччччччччччччч
> хххххххххххххххx
>
> Ключевое слово:
> kkkk-kkkk-kkkk-kkkk

$61 - $F2
$64 - $F7
$66 - $F5
$73 - $E0
- либо таки таблица


 
Rouse_ ©   (2012-10-26 13:28) [53]


> и либо здесь ошибка

Почему же ошибка? Если отнимать - да цифры разные, а если ксорить - то во всех 4 есть ключ = 147

 Writeln($61 xor $F2);
 Writeln($64 xor $F7);
 Writeln($66 xor $F5);
 Writeln($73 xor $E0);


 
han_malign   (2012-10-26 14:22) [54]

- да чего-то я попутал...

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

И на самом деле нужно исследовать ключ, а не шифровку...

Тогда в первую очередь нужно проверить коммутативность групп ключа:
- 4 (по идее ортогональные) перестановки в подгруппе: 1234-..., 2134, 1243, 3412
- возможно 4 раза(X-0-0-0, 0-X-0-0, 0-0-X-0, 0-0-0-X) т.к. подгруппы могут по разному кодироваться.
- тоже самое для групп 1111-2222-3333-4444, ...
(и того 20 ключей)
а дальше уже смотреть куда копать...


 
Rouse_ ©   (2012-10-26 14:28) [55]

ну я вот примерно таким-же способом как ты описал и крутил kkkk-kkkk-kkkk-kkkk дабы 147 получить, чистые сложение отрицания - не подходят, чистые ксоры то-же, получается что похоже зависимость от положения байта ключа в самом ключе в качестве модификатора + еще что-то...


 
Инокентий   (2012-10-26 16:02) [56]


> A
> Ключ
> AAAA-AAAA-AAAA-AAAA
>


шифрованный:.
шифрованный вид в хексе:04


> с текстом
> B
> Ключ
> AAAA-AAAA-AAAA-AAAA
>


шифрованный:.
шифрованный вид в хексе:07

> с текстом
> AB
> Ключ
> AAAA-AAAA-AAAA-AAAA


шифрованный:..
шифрованный вид в хексе:04 07


 
Инокентий   (2012-10-26 16:03) [57]

>AV
Тест выше для AV то что Вы просили


 
Инокентий   (2012-10-26 16:24) [58]


> AV ©   (26.10.12 01:08) [45]
> Автору.
>
> В общем,
> надо два разных текста по одному ключу прогнать
> Тексты как можно проще. В идеале, как сказал Sha.
> Если препод придерется, что это не текст, то как я предложил.
>
> хотя даже лучше нет. Лучше "пробел" или @
> Ключ тоже, или все "пробелы" или @
>
> Итого
> все пробелы (чем меньше разрешит, тем лучше)
> второй - все @(чем меньше разрешит, тем лучше)
> Ключ из них же, но один и тот же для обоих текстов.
>
> один пробел - первый текст
> @@@@-@@@@-@@@@-@@@@ - ключ
>


шифрованный:`
шифрованный вид в хексе:60


> @ - второй текст
> @@@@-@@@@-@@@@-@@@@ - ключ


шифрованный:.
шифрованный вид в хексе:00


 
Инокентий   (2012-10-26 16:43) [59]


> Sha ©   (25.10.12 22:28) [41]
> лучше с текстом #0
> и ключами:
> #1#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #0#1#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #0#0#1#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #0#0#0#1-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #0#0#0#0-#1#0#0#0-#0#0#0#0-#0#0#0#0
> #0#0#0#0-#0#1#0#0-#0#0#0#0-#0#0#0#0
> #0#0#0#0-#0#0#1#0-#0#0#0#0-#0#0#0#0
> #0#0#0#0-#0#0#0#1-#0#0#0#0-#0#0#0#0
> #0#0#0#0-#0#0#0#0-#1#0#0#0-#0#0#0#0
> #0#0#0#0-#0#0#0#0-#0#1#0#0-#0#0#0#0
> #0#0#0#0-#0#0#0#0-#0#0#1#0-#0#0#0#0
> #0#0#0#0-#0#0#0#0-#0#0#0#1-#0#0#0#0
> #0#0#0#0-#0#0#0#0-#0#0#0#0-#1#0#0#0
> #0#0#0#0-#0#0#0#0-#0#0#0#0-#0#1#0#0
> #0#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#1#0
> #0#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#1
> если этого будет мало добавим еще
>
> <Цитата>
> Sha ©   (25.10.12 22:32) [42]
> вот ключи эти тоже спроси
> #2#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #4#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #8#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #16#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #32#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #64#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0
> #128#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0


А вот с этим по труднее будет,если я правильно Вас понял то надо без# писать т.к. ключ состоит из 16 символов


 
AV ©   (2012-10-26 16:52) [60]


> Инокентий

ага

итак, xor на этот раз 69  
// что как бэ говорит, что мы еще по ээ мучаемся, причем не по-человечьи   :)
или 0100 0101

имеется ключ - 65 (0100 0001)  по 16 (0001 0000) раз

пока ничего
(просто так, записал, что бы видно было. Может что потом придет)


 
AV ©   (2012-10-26 16:53) [61]


> шифрованный:`
> шифрованный вид в хексе:60
>
>
> > @ - второй текст
> > @@@@-@@@@-@@@@-@@@@ - ключ
>
>
> шифрованный:.
> шифрованный вид в хексе:00

а вот это интереснее..
подумаю дома


 
Инокентий   (2012-10-26 17:14) [62]


> > Sha ©   (25.10.12 22:28) [41]
> > лучше с текстом #0
> > и ключами:
> > #1#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0


в блокноте ец
в хексе e5 f6

#1#0#0#0-#0#0#0#0-#0#0#0#0-#0#0#0#0 я дал ему этот ключ он его прямо так и применил с решётками


 
Инокентий   (2012-10-26 17:17) [63]

у меня тут ещё есть интересные примеры если помогут

В качестве оригинального текста используется 1 пробел

Ключ: kkkk-kkkk-kkkk-kkkl
шифрованный: °
шифрованный вид в хексе: b0

Ключ: kkkk-kkkk-kkkk-kkkm
шифрованный: ±
шифрованный вид в хексе: b1

Ключ: kkkk-kkkk-kkkk-kkkn
шифрованный: ®
шифрованный вид в хексе: ae

Ключ: kkkk-llll-mmmm-nnnn
шифрованный: «
шифрованный вид в хексе: ab

Ключ: kkkk-kkkk-kkkq-kkkk
шифрованный: Q
шифрованный вид в хексе: 51


 
Sha ©   (2012-10-26 18:12) [64]

> я дал ему этот ключ он его прямо так и применил с решётками

кто из вас прикололся?


 
Инокентий   (2012-10-26 18:41) [65]


> Sha ©   (26.10.12 18:12) [64]
> > я дал ему этот ключ он его прямо так и применил с решётками
>
> кто из вас прикололся?

В смысле?


 
Sha ©   (2012-10-26 18:53) [66]

#0 означает символ номер 0, т.е. его Ord()=0, т.е его шестнадцатеричное значение равно $00.

Кто из вас с преподом сделал вид, что этого не знает?

Или никто? :-)


 
Инокентий   (2012-10-26 19:00) [67]

Я думал что это именно код)))) Да это однозначно моя ошибка, извините)))


 
Sha ©   (2012-10-26 22:56) [68]

функцию для последней цифры ключа подобрал


function GetXorValue(start: integer; const s: string): byte;
var
 i, val: integer;
begin;
 Result:=start;
 for i:=1 to Length(s) do begin;
   val:=Ord(s[i]) + (Ord(s[i]) xor 1) and 1 * 2;
   Result:=Result-val;
   end;
 end;

const
 TestKeys: array[0..3] of string= (
   "kkkk-kkkk-kkkk-kkkk",
   "kkkk-kkkk-kkkk-kkkl",
   "kkkk-kkkk-kkkk-kkkm",
   "kkkk-kkkk-kkkk-kkkn"
   );

procedure TForm1.Button1Click(Sender: TObject);
var
 i, start: integer;
 b: byte;
begin;
 start:=256;
 while start>0 do begin;
   dec(start);
   if GetXorValue(start, TestKeys[Low(TestKeys)])=147 then break;
   end;
 Memo1.Lines.Add(Format("start=%.2x",[start]));
 for i:=Low(TestKeys) to High(TestKeys) do begin;
   b:=GetXorValue(start, TestKeys[i]);
   Memo1.Lines.Add(Format("xor=%.2x   code=%.2x",[b, b xor $20]));
   end;
 end;

{вывод:
start=CA
xor=93   code=B3
xor=90   code=B0
xor=91   code=B1
xor=8E   code=AE
}



Страницы: 1 2 вся ветка

Текущий архив: 2013.05.19;
Скачать: CL | DM;

Наверх




Память: 0.61 MB
Время: 0.008 c
15-1358322148
O'ShinW
2013-01-16 11:42
2013.05.19
Браузер(FireFox), зараза, стал переходить на httpS


15-1357803286
O'ShinW
2013-01-10 11:34
2013.05.19
GetLastError своими руками.


2-1351095337
Newersim
2012-10-24 20:15
2013.05.19
Вопрос по трею


15-1358195403
Юрий
2013-01-15 00:30
2013.05.19
С днем рождения ! 15 января 2013 вторник


2-1351253875
i2e
2012-10-26 16:17
2013.05.19
сменить цвет выделенной ячейки StringGrid