Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Простейший алгоритм (есть ли преимущество?)


Автор: mr.Anderson 28.5.2006, 13:28
Воть. Мне рассказали, что если я буду юзать в программе шифрования простой алгоритм замены символа на определенную комбинацию (и наоборот), шифротекст можно взломать простым перебором... Но скажите, если у меня будет зашифрован текст, в котором нет повторяющихся символов, тогда разве такой метод взлома сработает? Мне интересно, является ли в таком алгоритме шифровки (замена на определенную комбинацию и наоборот) хорошей защитой метод НЕ использования повторяющихся символов?
Например, если предположить, что у меня заменяются символы 1, 2, 3 на такие: "ххх", "yyy", "zzz" соответственно, то в случае шифровки числа 121 получим такое:
Код

xxxyyyxxx

Тогда, как я понял, метод перебора сработает. А если вот такое будем шифровать: 123
Код

xxxyyyzzz

Такое взломать можно? И какова будет сложность взлома? Сложнее, чем при наличии повтора? Или также? 

Автор: DeadSoul 28.5.2006, 13:37
sim7, криптоалгоритм НЕ имеет права полагатся на текст, который он шифрует 

Автор: esperant0 28.5.2006, 13:41
В вашем случае ключ должен быть не короче передаваемого сообщения.


"Получается масло-масленное"

Чото бы передать надежно сообщение длины х, надо передать надежно ключ длины х. Не проще сразу передать сообщения.

Поэтому полезность вашего алгоритма не велика 

Автор: maxim1000 28.5.2006, 15:32
если длину ключа сделать равной длине передаваемого текста, можно сделать абсолютно криптостойкий шифр (по-моему так называется)

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

с технической точки зрения такая передача не взламывается 

Автор: DeadSoul 28.5.2006, 15:56
Цитата(maxim1000 @  28.5.2006,  15:32 Найти цитируемый пост)
можно сделать абсолютно криптостойкий шифр (по-моему так называется)

Именно так и называется 

Автор: nworm 28.5.2006, 22:06
А я ещё слышал название совершенный шифр. 

Автор: esperant0 28.5.2006, 22:50
есть еще название идеальный шрифт.

Еще есть невзламываемый шрифт.

  

Автор: cardinal 28.5.2006, 23:03
Простейший алгоритм шифрования это ИМХО xor.  

Автор: esperant0 28.5.2006, 23:09
Цитата(cardinal @ 28.5.2006,  23:03)
Простейший алгоритм шифрования это ИМХО xor.

Нет смысла говорить о простейшем алгоритме без определения критерия простоты.


Кроме того, док-во существования простейшего алгоритма или проверка алгоритма на простейшесть, в общем случае задачи не решаемые 

Автор: skyboy 28.5.2006, 23:16
esperant0, шрифт? Не "шифр", нет?  smile  

Автор: DeadSoul 28.5.2006, 23:21
Цитата(skyboy @  28.5.2006,  23:16 Найти цитируемый пост)
esperant0, шрифт? Не "шифр", нет?     

Естественно, там "шифр". Не надо придиратся к опечаткам 

Автор: ksili 31.5.2006, 10:11
Совершенный шифр - это не идеальный и не невзламываемый, а несколько другое. Совершенный шифр - это шифр в котором (если мы его начинаем взламывать с начала) вероятность значения каждого следующего бита не зависит от значений всех предудыщих битов:
p(x(n)/x(n-1)x(n-2)...x(0)) = 0.5
То есть грубо говоря их значения не корелируют.

Такой шифр не является невзламываемым (вообще говоря таких нет). Просто теоретически взломать его будет трудно.

Вроде так   

Автор: maxim1000 31.5.2006, 10:21
Цитата(ksili @  31.5.2006,  09:11 Найти цитируемый пост)
Совершенный шифр - это шифр в котором (если мы его начинаем взламывать с начала) вероятность значения каждого следующего бита не зависит от значений всех предудыщих битов:
p(x(n)/x(n-1)x(n-2)...x(0)) = 0.5

совершенный шифр определяется несколько иначе:
эффективность любого метода взлома эквивалентна эффективности полного перебора (по крайней мере, это я имел в виду, когда писал "не взламывается") 

Автор: nworm 31.5.2006, 10:49
Я такое определение нашёл.

Совершенный шифр это шифр, для которого  при любых x из пространства открытых текстов, y из пространства шифротекстов выполняется p(x/y)=p(x), то есть по зашифрованному тексту принципиально невозможно получение какой бы то ни было информации об открытом тексте

А вот выполнено ли это у sim7 не понятно... 

Автор: ksili 1.6.2006, 10:18
По-моему, у всех наших трёх определений совершенного шифра суть одна и та же 

Автор: esperant0 3.6.2006, 18:41
Цитата(ksili @ 1.6.2006,  10:18)
По-моему, у всех наших трёх определений совершенного шифра суть одна и та же

да нет
суть разная
первое и третье определение не эквивалентные 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)