информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetВсе любят медЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / theory
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
О криптоанализе 24.04.03 11:16  Число просмотров: 2831
Автор: Alexander N. Brandt Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Здраствуйте уважаемые господа. Позвольте представить вам
> мои рассуждения по этому вопросу.
> Для начала классифицируем возможные атаки на ч.я.
> Условимся X - входная последовательность Y - выходная
> последовательность

>
> 2. С выбором X. Необходим доступ к ч.я. Формируем такие X
> которые могут помочь нам раскрыть алгоритм к примеру из
> одних нулей (единиц), из нулей и одной единицы и т.д.

Вообщем, вот этот способ как раз подходит.
Но всё на самом деле не так сложно, как вы описываете. Никакого гаммирования, привязки ко времени,
и прочих "весёлостей" там нет - одному данному входному X соответствует одно
(всегда одно и то же для данного Х) выходное значение Y такой же длинны, хотя для разных входных
X может быть одно и то же Y, как показано ниже.
Значения на вход можем подавать какие угодно, непосредственно дизассемблировать внутренний
алгоритм ч.я. не представляется возможным.
Заложить в модель заранее вычисленные таблицы для всех возможных входных Х при максимальной
длинне Х = 30 байт - тоже не самое правильное решение.
Эксперименты с ч.я. дают возможность предполагать, что алгоритм этот несложен, и оперирует
с 32-х разрядными числами, т.е. Х разбивается на блоки по 4 байта, значение младших (слева
направо) 4-х байт влияет на значение следующего блока, но от него не зависит.
Чтобы немного пояснить вышесказанное, приведу таблицу соответствий Х => Y:

00 73
0000 0A4A
000000 1290DA
00000000 48CBFA64
0000000000 48CBFA6403 --> 4 первых байта остались такими же.
000000000000 48CBFA644BB8
ну и так далее.

01 FC
02 4D
11 74
12 2C
73 8E

Вот ещё интересные ответы:
E2 58
OE 59

17 20
B0 20

52 83
D2 83

40 FF
FF BA

DE DE !!! и такое вот бывает.

OD 45
D0 47

Если приведённое выше несколько прояснило ситуацию, то вопрос, в принципе, остаётся прежним -
каким образом можно вычислить алгоритм, по которому для заданных Х формируются Y.
Что-то мне подсказывает, что там всё одними сдвигами/ксорками обходится.
Если у кого появились идеи по этому поводу - просьба поделиться... :)

> Теперь несколько мыслей о возможных вариантах действия.
> Проводить подобный анализ имеет смысл, если есть
> вероятность, что алгоритм слабый, иначе в одиночку это
> неподсильная задача. Можно попытаться подавать на вход

Как оценить вероятность того, что алгоритм слабый?

За ссылки - спасибо большое, только, как я понял из беглого ознакомления, в большинстве
источников исходят из того, что алгоритм заранее известен.

<theory> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach