Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.05.19;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.59 MB
Время: 0.006 c
15-1358139314
Дмитрий С
2013-01-14 08:55
2013.05.19
Пространства между строками.


15-1358278961
DevilDevil
2013-01-15 23:42
2013.05.19
Статья по Ribbon в ExpressBars(DevExpress)


2-1351213528
FIL-23
2012-10-26 05:05
2013.05.19
Поиск в Query


15-1358109002
Юрий
2013-01-14 00:30
2013.05.19
С днем рождения ! 14 января 2013 понедельник


2-1350981057
Инокентий
2012-10-23 12:30
2013.05.19
Дешифровка по кодовому слову





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский