информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsГде водятся OGRы
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / theory
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Наложение гаммы 14.06.02 10:19  
Автор: iddqd <Юрий> Статус: Member
<"чистая" ссылка>
Товарищи, подскажите, где уязвимость в наложении гаммы?
Например, таким образом:
генерится последовательность
blok[n+1]=md5(blok[n]+password)
blok[0]=0
и накладывается по xor на сообщение.
Наложение гаммы 14.06.02 11:27  
Автор: igori Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> blok[n+1]=md5(blok[n]+password)
> blok[0]=0
> и накладывается по xor на сообщение.

Как минимум - для одного пароля гамма каждый раз будет одинаковая.
Отсюда: если поxorить два сообщения с одним паролем, то получиться xor от двух сообщений без всякой гаммы. А если одно из сообщений более-менее известно - то и все остальные, считай, известны.
Для этого надо пользовать случайное число - "синхропосылку" в терминах ГОСТ или "вектор инициализации", IV, "salt" и пр.
Делаешь
IV = rnd(бит этак 64-128)
blok[0] = IV
block[n+1] = f(block[n])
к сообщению приписываешь IV (он несекретен).
Естествено, xorить начинаешь не с block[0] - он известен.

igori
Наложение гаммы 15.06.02 10:14  
Автор: iddqd <Юрий> Статус: Member
<"чистая" ссылка>
> > blok[n+1]=md5(blok[n]+password)
> > blok[0]=0
> > и накладывается по xor на сообщение.
>
> Как минимум - для одного пароля гамма каждый раз будет
> одинаковая.
> Отсюда: если поxorить два сообщения с одним паролем, то
> получиться xor от двух сообщений без всякой гаммы. А если
> одно из сообщений более-менее известно - то и все
> остальные, считай, известны.
> Для этого надо пользовать случайное число - "синхропосылку"
> в терминах ГОСТ или "вектор инициализации", IV, "salt" и
> пр.
> Делаешь
> IV = rnd(бит этак 64-128)
> blok[0] = IV
> block[n+1] = f(block[n])
> к сообщению приписываешь IV (он несекретен).
> Естествено, xorить начинаешь не с block[0] - он известен.
>
> igori

Т.е., грубо говоря, мне нужно сделать так: block[0]=md5(salt+pass), где salt известен и представляет собой случайное число.
Наложение гаммы 17.06.02 15:54  
Автор: igori Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > > blok[n+1]=md5(blok[n]+password)
>
> Т.е., грубо говоря, мне нужно сделать так:
> block[0]=md5(salt+pass), где salt известен и представляет
> собой случайное число.

Угу. И этот salt должен заново генерироваться для каждой операции зашифрования. Причем его качество как "случайного" не очень важно - хоть счетчик бери. Важна неповторяемость. Опасно именно неоднократное использование одного salt.

igori
Наложение гаммы 17.06.02 16:53  
Автор: iddqd <Юрий> Статус: Member
<"чистая" ссылка>
Большое спасибо за помощь!

З.Ы. Об имитостойтости, я так понимаю, не может быть и речи.
1




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


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