id: Гость   вход   регистрация
текущее время 05:01 20/04/2024
Автор темы: Гость, тема открыта 26/03/2009 13:18 Печать
Категории: криптография
https://www.pgpru.com/Форум/Криптография/ВопросОЦелесообразностиИспользованияБлочныхШифровкаскады
создать
просмотр
ссылки

Вопрос о целесообразности использования блочных шифров


Добрый день.


О криптографии знаю не много.
Последние пару дней читал всевозможные форумы/FAQ-и.


И вот что бросаеться сразу в глаза:
почему используют болчные шифры, в то в ремя когда трудно обеспечить стойкий режим работы таких шифров? И почему именно 128 бит, а не более? Не лучше использовать длину блока скажем 1024 бит?


Да возмоджно связано с тем что такие алгоритмы часто реализуються на микросхемах...
Но все же...


[какой-то глюк с форумом, второй раз пишу, а ничего нет]


 
На страницу: 1, 2, 3, 4 След.
Комментарии
— unknown (26/03/2009 13:32)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

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


Наоборот, ни одного потокового шифра, равного по доказуемой стойкости блочному, не создано. Нет нормальной теории потоковых шифров, у многих есть "различители", конкурс eCrypt на лучший потоковый шифр длится долго и результаты пока неубедительны.


И почему именно 128 бит, а не более?


Размер блока или размер ключа?

Блок 64 бита – даёт утечку открытого текста в некоторых режимах шифрования на примерно 8 гигабайтах, а 128 – на примерно 32000000000 гигабайтах.

размер ключа 64 бит может быть подобран современными компьютерными мощностями, 128 бит требует на подбор при минимальных затратах энергии (1 электронвольт, теоретический физический предел) столько, сколько её потребуется на то, чтобы растопить льды Антарктиды. Дальнейший рост симметричного ключа – только перестраховка от атак на несовершенство шифра, режима шифрования или протокола или изобретения квантовых компьютеров, а даже при росте мощностей обычных – основные проблемы возникают у асимметричных алгоритмов, которые и становятся слабым звеном.


Да возмоджно связано с тем что такие алгоритмы часто реализуються на микросхемах...


необязательно. В дешёвых микросхемах (старые мобильники, WiFi) как раз используют дешёвые микросхемы для более скоростного потокового шифрования, а нормальный блочный шифр редко где встречается, нормально реализованный в бытовом или массовом железе.
— unknown (26/03/2009 13:40, исправлен 26/03/2009 13:41)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
По поводу 1024-битных блоков:

Чем больше длина блока, тем сложнее добиться правильной, с точки зрения криптостойкости, диффузии – распространения изменений вдоль блока.

Размеры S-блоков внутри шифра увеличить нельзя – резкий рост памяти, С другими нелинейными элементами тоже могут быть проблемы в дизайне. придётся увеличивать число раундов и возможно вводить ещё что-то, снижающее скорость и повышающее требование к ресурсам.

И шифр да, должен быть универсальным: какой-то сервер этим же шифром может обрабатывать сотни тысяч соединений и лишний килобайты и миллисекунды могут перемножиться в большие величины. И тот же шифр и на микросхемах должен работать с крошечным ОЗУ и слабыи процессором.

Специально конструируют шифры с большим блоком – для ядра хэш-функций и в попытках создать особо стойкое дисковое шифрование (где размер сектора например 4096 бит и хорошо бы его весь и перешифровывать при записи).
— Konrad (27/03/2009 09:29)   <#>
размер ключа 64 бит может быть подобран современными компьютерными мощностями, 128 бит требует на подбор при минимальных затратах энергии (1 электронвольт, теоретический физический предел) столько, сколько её потребуется на то, чтобы растопить льды Антарктиды.

При ключе 128 бит =>2^128 стойкость шифра равна корень(2^128)=2^64.
log(2^64)=19,3.

Теперь 10^9( частота процессора)+ 10^3 (процессоров)+10^2 ( таких компов)+
+ 10^log( 60сек*60мин*24часа*31день)=10^20,4.
Соответственно с большой вероятностью взлом блочного шифра за месяц.
( +тут не учтены оптимизации, слабые места реализации и т.д.).

И шифр да, должен быть универсальным

Вот этого я не понимаю.

Опыт жизни показывает – для конкретной цели нужен конкретный инструмент.
(есть легковушки, есть автобусы, есть грузовики и т.д., и ни у кого не возникает вопроса а зачем столько автомобилей?).
какой-то сервер этим же шифром может обрабатывать сотни тысяч соединений и лишний килобайты и миллисекунды могут перемножиться в большие величины.

Вот для таких целей использовать современные блочные шифры, но

скажем мне нужно отправить письмо размером 3 Кб, то зачем мне простой шифр? Тут уже нужна надежность..
Размеры S-блоков внутри шифра увеличить нельзя – резкий рост памяти, С другими нелинейными элементами тоже могут быть проблемы в дизайне. придётся увеличивать число раундов и возможно вводить ещё что-то, снижающее скорость и повышающее требование к ресурсам.

Домашний ПК: 2ГГцпроцессор,2Гб оперативка и т.д., этого мало для того чтобы отказаться от ЭС- блоков на 4 бита, и перейти на более крупные блоки?
— unknown (27/03/2009 10:08)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

При ключе 128 бит =>2^128 стойкость шифра равна корень(2^128)=2^64.
log(2^64)=19,3.

Только при специфических атаках. В том виде, как шифр реализован в программах шифрования его стойкость и остаётся 2128.


И шифр да, должен быть универсальным

Вот этого я не понимаю.


Потому что на шифрование нужен единый стандарт. И даже на его анализ уходят годы и усилия множества людей. И даже на стандарты не хватает усилия исследователей. Так, до сих пор не решены проблемы стандартизации режимов дискового шифрования, например. Нет доверяемого стандарта на режим шифрования с аутентификацией.

А с криптопримитивами (блочными шифрами, хэшами и пр.), если кто-то будет изобретать под каждую задачу – качественных работ по полному анализу не ждите.

Зоопарк шифров никто не будет поддерживать. Гораздо больше вероятности, что ошибка дизайна "сверхнадёжного" и "сверхтяжёлого" шифра останется незамеченной.
— Konrad (27/03/2009 11:08)   <#>
Я ведь пишу с точки зрения простого потребителя.

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

И судя по моим поискам в гугле, таких(очень сложных) шифров практически нет.
— unknown (27/03/2009 13:22, исправлен 27/03/2009 13:36)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Я ведь пишу с точки зрения простого потребителя.

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

как простой потребитель может оценить, какой шифр надёжный?

Кто из серьёзных криптографов будет тратить своё время не на разработку и анализ стандарта шифрования, а распылять силы на шифры узкого применения? Криптопримитив – это не программа, которая должна просто работать. Для того, чтобы он обрёл репутацию, нужно внимание и изучение всего сообщества.

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

Или случайно допустить трудновыявляемый дефект.

По поводу – "есть спрос – есть товар" – напоминает аналогию с лекарствами и рекламу фарма-индустрии, которая потакает некомпетентному спросу (хочу чтобы просто лечило и желательно от всего) и получает прибыли.

Шифры – это не товар. Это результат деятельности прикладных научных исследований. Они бесплатны (кроме практически никому не нужных исключений).
— SATtva (27/03/2009 17:46, исправлен 27/03/2009 17:46)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Если есть спрос (есть люди которые хотят шифровать надежными шифрами), то будет и товар, независимо от того что кто-то не хочеть это поддерживать.

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

Есть каскадное шифрование несколькими различными шифрами с помощью независимых ключей.
— Konrad (30/03/2009 15:15)   <#>
Спасибо.
При каскадном шифровании какие режимы посоветуете?
— unknown (30/03/2009 16:05)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Самое простое – такие же как и при обычном. Рассматривать каскад, как единый шифр, который можно использовать в любых режимах.

А вот режимы, в которых отдельные шифры каскада связываются друг с другом по-отдельности, могут как повышать, так и снижать стойкость, поэтому к ним можно относится с подозрением.
— Сергей (04/05/2009 21:36)   <#>
Подскажите, пожалуйста, имеет ли смысл последовательно (каскадно, как я понял) шифровать файл с использованием разных алгоритмов шифрования (например одного блочного и одного потокового шифра), но одним и тем же ключом. Повысит ли это стойкость файла к взлому, или понизит?
— Гость (04/05/2009 22:05)   <#>
Почти наверняка повысит.
— SATtva (05/05/2009 08:16)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
...Но, тем не менее, устоявшаяся практика состоит в использовании уникальных несвязанных ключей для каждого алгоритма в каскаде. В ином случае, если один из алгоритмов окажется уязвим, теоретически появится возможность восстановить ключ всего шифртекста.
— unknown (05/05/2009 09:13, исправлен 05/05/2009 09:13)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
каскадом шифров называется последовательное шифрование разными шифрами с независимыми ключами. Это как-бы в определении заложено. В некоторых работах рекомендуется использовать шифры с одинаковым размером блока, а число шифров в каскаде должно быть нечётным и даже простым.

Для выработки нескольких условно независимых ключей из одного можно использовать KDF (Key Derivation Function) – криптостойкую функцию генерации производных ключей.
— unknown (05/05/2009 09:33, исправлен 05/05/2009 09:34)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Смотрите работы:

Cryptanalysis of Multiple Modes of Operation

Cryptanalysis of Triple-Modes of Operation

Там рассмотрены и каскады из разных шифров и режимов, в частности случай:

A multiple mode may not be weaker than its strongest component, if the component keys are chosen independently

А во многих случаях тупое смешивание в каскад (там на примере одного шифра – DES, но с разными шифрами и одним ключом скорее всего будет также):

In a previous paper we analyzed multiple modes of operation and showed that the security of many multiple modes is significantly smaller than expected. In this paper we extend these results, with new cryptanalytic techniques, and show that all the (cascaded) triple modes of operation are not much more secure than a single encryption

— Почкин (05/05/2009 13:24)   <#>
В моём понимании, каскадность это страховка на случай будущей компрометации одного из использованных алгоритмов. (Допустим, перехваченная шифровка всё ещё представляет ценность через n лет, когда использованный алгоритм уже не стоек.) Для усиления обычной стойкости дальше 256-битного ключа мне кажется идти бессмысленно.
На страницу: 1, 2, 3, 4 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3