реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> Поточное шифрование ATA
Oldring
сообщение Jan 11 2005, 19:02
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(jeka @ Nov 21 2004, 02:55)
Да, устройства интересные. Но немного смутило отсутствие радиатора и строчка:
- "Real-time" transparent automatic encryption with 1.6 Gigabit per second throughput.
Слабо мне верится в устойчивость от взлома данного метода кодирования хотя-бы потому что данные по всей видимости не сжимаются, а на диске некоторые сектора содержат стандартный код. Безусловно, для защиты от "дурака" сойдет на ура, но в серьезных системах такую штуку вряд-ли можно применять. Можно было б какую-никакую избыточность сделать, предварительно архивировать данные, а еще лучше кодировать их по случайному избыточному коду.
*


Для нормальных алгоритмов шифрования это совершенно некритично.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
koziy_mf
сообщение Jan 13 2005, 20:36
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 434
Регистрация: 20-10-04
Пользователь №: 921



То есть Вы хотите сказать, что для нормального алгоритма шифрования даже если мне и известна часть расшифрованных данных, то это мне ни в коей мере не может помочь найти ключ для расшифровки остальной части? Верно?

Если, например, Blowfish при шифровании создает в зависимости от выбранного ключа 10 основных и 2 дополнительные матрицы, затем разбивает входные данные блоками по 64 байта (кажется) и затем шифрует эти данные (перестановкой) используя значения элементов в этих матрицах, то я НИКАК по куску известных мне данных не могу "восстановить" сами матрицы и, соответственно, ключ (хотя найдя матрицы - и ключ не нужен, ведь это и есть ключ, если известен, конечно, метод шифрования).

Если это не так, тогда однозначно нужно после разбивки данных на фрагменты сжимать каждый фрагмент (пусть по LZH), и сколько "свободного" места остается в каждом фрагменте - заполнять случайным мусором, а потом шифровать.
Хотя, сдругой стороны злоумышленник (люблю это слово) имея кусок данных, зная места разбиения фрагментов (это из алгоритма шифрования) может точно также сжать кусок по LZH, и, если мусор был добавлен не произвольно, а в конце, например, использовать такой фрагмент без окончания для дальнейших действий.
Можно, правда, и мусор раскидывать, используя определенные значения матриц шифрования, и сами значения мусоров (*))) тоже генерить исходя из ключа. Так, чтобы цикл получился. Тогда, даже и имея известную часть данных, использование их будет безсмысленно.

Я понимаю - что, в общем то - пустословлю по отношению к конкретике - то есть все не на формулах а на догадках. И тем не менее это помагает потом определиться с выбором и засесть за конуретную литературу.

Поправте, в чем не прав. Критика поддерживается!


--------------------
Жизнь не такая долгая, чтобы писать программы на ассемблере...
Go to the top of the page
 
+Quote Post
ASN
сообщение Jan 14 2005, 07:05
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



Цитата(koziy_mf @ Jan 13 2005, 23:36)
Для нормального алгоритма шифрования даже если мне и известна часть расшифрованных данных, это не может помочь найти ключ для расшифровки?
*

Не совсем. Есть такие понятие как линейный и дифференциальный криптоанализ. Для гарантированного вскрытия ключа для нормальных алгоритмов необходимо определённое количество пар зашифрованного и открытого текста. Если количество пар текстов очень велико, то набрать их просто невозможно. Таким образом, решение простым перебором "в лоб" наиболее простое.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Jan 17 2005, 12:46
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(ASN @ Jan 14 2005, 11:05)
Цитата(koziy_mf @ Jan 13 2005, 23:36)
Для нормального алгоритма шифрования даже если мне и известна часть расшифрованных данных, это не может помочь найти ключ для расшифровки?
*

Не совсем. Есть такие понятие как линейный и дифференциальный криптоанализ. Для гарантированного вскрытия ключа для нормальных алгоритмов необходимо определённое количество пар зашифрованного и открытого текста. Если количество пар текстов очень велико, то набрать их просто невозможно. Таким образом, решение простым перебором "в лоб" наиболее простое.
*



Про понятия я в курсе.

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

BTW AES, например, доказуемо устойчив к линейному и дифференциальному криптоанализу.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
ASN
сообщение Jan 17 2005, 21:10
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



Oldring
Уважаемый, про понятия я, конечно же, не Вам отписал. blush.gif Извиняюсь, что не указал адресат. smile.gif
IMHO, просто сжимать исходные данные - это, по существу, выполнить дополнительное зашифрование. То есть достаточно зашифровать одним алгоритмом, и зашифровать этот же текст ещё раз другим (наподобие TripleDES). Если при этом, использовать различные ключи (или один ключ длиной 128 бит), то сложность даже для атаки «встреча посередине» становиться слишком большой, а дешифрование данных невозможным. Сжатие данных – это способ снизить расход ключа, но ценой значительного увеличения вычислительных мощностей. Тем более, что это эффективно только если исходные данные принципиально сжимаемы. IMHO, для современных форматов хранения аудио- и видео- записей (а также для исполняемых файлов) это свойство исходных данных отсутствует. Так что, ничего проще и надёжней, чем генератор гаммы, IMHO, предложить нереально. Тут ведь речь идёт о скорость в единицы мегабит в секунду.
jeka
То, что слабо вериться устойчивость ко взлому 1,6 Гбит в секунду, IMHO, верно. Тут вот какое дело – ключ размазан по шифруемому тексту и объём зашифрованной информации является критичным. То есть теоретически, на достаточно большом промежутке зашифрованных данных начнёт проявляться статистическая зависимость, и ключ станет уязвим к корреляционной атаке. Как это возможно сделать я лично себе не представляю, но умные дядьки (на подобие Б. Шнаера, В. Столлингса и прочих) уверены, что возможно.
koziy_mf
Разрабатывать, (в смысле, «исследовать» для собственного образования) различные алгоритмы преобразования информации (например, с целью повышения «достоверности хранения» или «устойчивости к передачи») Вам никто запретить не может. Это Ваше право. В том числе и в USA. Вы даже можете публиковать Ваши наработки в открытой печати, но не в электронном виде. Вы не имеет право также продавать или сдавать в аренду Ваши устройства.
Если уж встала задача аппаратного зашифрования, то, IMHO, проще скачать с opencores.org пару корок, купить Evolution board и всю критичную инфу гонять бы через сей девайс. Хотя, ежели кому-то очень надо «хакнуть» Вашу инфу, то они это сделают очень просто: либо просто считают всё информацию прямо с экрана монитора, либо выкрадут ключ – ведь 128 бит абсолютно случайной информации не в голове же хранить. smile.gif. Так что, IMHO, Вы всё правильно делаете – простецкий программный маскиратор и «случайная» длинная фраза, захешированная в пароль – самое то.
Go to the top of the page
 
+Quote Post
koziy_mf
сообщение Jan 25 2005, 07:18
Сообщение #21


Местный
***

Группа: Свой
Сообщений: 434
Регистрация: 20-10-04
Пользователь №: 921



Nu spasibo - teper' mojno spat' spokoyno *) I posledniy vopros - A chto takoe "атакa «встреча посередине»" ? V dvuh slovah, dlia barana v kriptografii.


--------------------
Жизнь не такая долгая, чтобы писать программы на ассемблере...
Go to the top of the page
 
+Quote Post
ASN
сообщение Jan 25 2005, 09:51
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



koziy_mf
Если очень вкратце, то криптоаналитик подбирает тексты таким образом, чтобы высчилять значения сразу обоих ключей, то есть количество текстов равно не 2**(n*n), а 2**(n+1). Лучше, конечно, почитать Ваше нынешнего "соотечественника" Б. Шнаера. Там всё подробно описано... Это очень интересная область - я, например, прочитал дважды просто для собственного развития smile.gif.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Jan 27 2005, 17:28
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(ASN @ Jan 18 2005, 01:10)
То, что слабо вериться устойчивость ко взлому 1,6 Гбит в секунду, IMHO, верно. Тут вот какое дело – ключ размазан по шифруемому тексту и объём зашифрованной информации является критичным. То есть теоретически, на достаточно большом промежутке зашифрованных данных начнёт проявляться статистическая  зависимость, и ключ станет уязвим к корреляционной атаке. Как это возможно сделать я лично себе не представляю, но умные дядьки (на подобие Б. Шнаера, В. Столлингса и прочих) уверены, что возможно.


Возьмем, например, AES-128. 1.6 ГБит в секунду - это 80 ns на блок. Что же в этом невероятного? Особенно, с учетом хорошей конвейеризуемости алгоритма? Или я что-то пропустил, и AES уже скомпрометирован?

IMHO шеноновские теоретические границы, связанные с equivocation, не имеют никакого отношения к _практической_ возможности взлома современных шифров. Допустим, нам известен результат шифрования AES-128 с некоторым неизвестным ключем блока из 128 нулевых бит. Очевидно, этих 128 бит достаточно для определения ключа. Полным перебором. Но какая от этого практическая польза?


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
lvitaly
сообщение Jan 27 2005, 18:05
Сообщение #24


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 27-08-04
Из: Moscow
Пользователь №: 554



Цитата(Oldring @ Jan 27 2005, 20:28)
Возьмем, например, AES-128. 1.6 ГБит в секунду - это 80 ns на блок. Что же в этом невероятного? Особенно, с учетом хорошей конвейеризуемости алгоритма?
*


Я бы не сказал, что 80 нс на блок - это так уж тривиально. Обработка блока в AES - 43 раунда, кажется. Если взять наш ГОСТ - 32 раунда. 2 нс на такой раунд вряд ли представляются тривиальной задачей. Особенно если делать на FPGA, а не на ASIC.

Кроме того, очень хотелось бы услышать - что имеется в виду в данном случае под конвееризацией алгоритма шифрования?
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 27 2005, 18:17
Сообщение #25


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



А кто-нибудь пробовал реализовать наш ГОСТ на ПЛИС? wink.gif

Если пробовал, то очень интересно, какая получалась рабочая частота проекта при учете того, что шифрование блока выполняется за 32 такта. Т.е. раунд за такт.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
lvitaly
сообщение Jan 27 2005, 20:18
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 27-08-04
Из: Moscow
Пользователь №: 554



Цитата(makc @ Jan 27 2005, 21:17)
А кто-нибудь пробовал реализовать наш ГОСТ на ПЛИС? wink.gif

Если пробовал, то очень интересно, какая получалась рабочая частота проекта при учете того, что шифрование блока выполняется за 32 такта. Т.е. раунд за такт.
*


Я думаю, что пробовали многие. Лично у меня выходило 132 МГц такт, 35 тактов на блок. Использовал Xilinx Virtex-2. Задачи добиться более высокой частоты не было.
Go to the top of the page
 
+Quote Post
ASN
сообщение Jan 28 2005, 06:45
Сообщение #27


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



Oldring
Уважаемый, я же указал, что "...Как это возможно сделать я лично себе не представляю, но умные дядьки (на подобие Б. Шнаера, В. Столлингса и прочих) уверены, что возможно.(с) ASN" smile.gif. Я же интересующийся любитель, а не профессионал smile.gif.
lvitaly
Yes! a14.gif ГОСТ
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 28 2005, 08:09
Сообщение #28


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(lvitaly @ Jan 27 2005, 23:18)
Цитата(makc @ Jan 27 2005, 21:17)
А кто-нибудь пробовал реализовать наш ГОСТ на ПЛИС? wink.gif

Если пробовал, то очень интересно, какая получалась рабочая частота проекта при учете того, что шифрование блока выполняется за 32 такта. Т.е. раунд за такт.
*


Я думаю, что пробовали многие. Лично у меня выходило 132 МГц такт, 35 тактов на блок. Использовал Xilinx Virtex-2. Задачи добиться более высокой частоты не было.
*



А каким образом в этом случае реализовывались сумматор по модулю 32 и узел замены? Ведь, если я правильно понимаю, проблема скорости подобного шифратора лежит в большой длине комбинаторных путей, которые получаются из этого самого узла замены и сумматоров.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
lvitaly
сообщение Jan 28 2005, 09:42
Сообщение #29


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 27-08-04
Из: Moscow
Пользователь №: 554



Цитата(makc @ Jan 28 2005, 11:09)
А каким образом в этом случае реализовывались сумматор по модулю 32 и узел замены? Ведь, если я правильно понимаю, проблема скорости подобного шифратора лежит в большой длине комбинаторных путей, которые получаются из этого самого узла замены и сумматоров.
*

Да, это самый длинный путь. Но есть нормальный способ решения именно этой проблемы. Большего, увы, я Вам не скажу, поскольку начинаются конкретные know how. Я занимаюсь ГОСТом (и сопутствующими ГОСТами) уже несколько лет, так что если нужно что-то сделать в этой области - милости просим в мыло.
Go to the top of the page
 
+Quote Post
ASN
сообщение Jan 28 2005, 09:46
Сообщение #30


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



makc
Просто, без изысков smile.gif
Код
variable Math33: Math_32_Type;
variable CY: std_logic;
...
    PM   := PERMUTE_4x4(C.CM1);
    Math33:= ADDC_32(C.N4,N6,CY);
    CY    := Math33(KEY_VECTOR_LENGTH);
...

Что такое PERMUTE_4x4 по предыдущей ссылке. На выходе KeyData - триггеры, тогда путь становиться минимально возможным. Поэтому и 35 тактов (данные, то в CM1 := ADD_32(KD,N1) будут только на следующем такте) wink.gif.
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 09:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01503 секунд с 7
ELECTRONIX ©2004-2016