Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Алгоритмы > Простейший алгоритм (есть ли преимущество?) |
Автор: mr.Anderson 28.5.2006, 13:28 | ||||
Воть. Мне рассказали, что если я буду юзать в программе шифрования простой алгоритм замены символа на определенную комбинацию (и наоборот), шифротекст можно взломать простым перебором... Но скажите, если у меня будет зашифрован текст, в котором нет повторяющихся символов, тогда разве такой метод взлома сработает? Мне интересно, является ли в таком алгоритме шифровки (замена на определенную комбинацию и наоборот) хорошей защитой метод НЕ использования повторяющихся символов? Например, если предположить, что у меня заменяются символы 1, 2, 3 на такие: "ххх", "yyy", "zzz" соответственно, то в случае шифровки числа 121 получим такое:
Тогда, как я понял, метод перебора сработает. А если вот такое будем шифровать: 123
Такое взломать можно? И какова будет сложность взлома? Сложнее, чем при наличии повтора? Или также? |
Автор: 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 | ||
Именно так и называется |
Автор: 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 | ||
Нет смысла говорить о простейшем алгоритме без определения критерия простоты. Кроме того, док-во существования простейшего алгоритма или проверка алгоритма на простейшесть, в общем случае задачи не решаемые |
Автор: skyboy 28.5.2006, 23:16 |
esperant0, шрифт? Не "шифр", нет? ![]() |
Автор: DeadSoul 28.5.2006, 23:21 |
Естественно, там "шифр". Не надо придиратся к опечаткам |
Автор: ksili 31.5.2006, 10: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 | ||
да нет суть разная первое и третье определение не эквивалентные |