Здравствуйте, гость Правила · Помощь

»  Шпионский код Подписаться | Сообщить другу | Версия для печати
      » 4/02/2006, 21:10,  Страга 
Да, это тоже справедливо. Но тот вариант все же сложноват. Для стратегов
      » 4/02/2006, 21:58,  Jim_Hokins 
Сашун ( "4/".$m["фев"]."/2006," 06:49)
Задача на "открытый код" с множественными решениями.

Одно из решений:

Имеется 5 одинаковых записок с текстом:

"Количество вражеских танков равно сумме чисел на трех записках. Число этой записки N".

Очевидно, что это решение удовлетворяет условию задачи.

Для того, чтобы искомое число равнялось сумме чисел с трех разных листков (любых из пяти),
необходимо и достаточно, чтобы числа на всех листочках были одинаковыми.
А если они одинаковые, то для определения искомого числа достаточно значения
числа с одного единственного листка (путем умножения этого числа на три).
Таким образом такое решение не удовлетворяет условиям задачи.
      » 5/02/2006, 00:00,  Тоня 
Про вариант Сашуна написали. Вариант Растлителя не даёт однозначного определения шифруемого числа врагу, это хорошо. Можно и расширить. Хотя мне представляется это более сложным, чем шифр с помощью элементарных уравнений (можно составить алгоритм решения для шифровальщиков, не проблема). Пример шифра, приведёного Растлителем неудачен - в строках 4 и 5, например, нет других пересечений, кроме "47". Если врагу шифр известен, число засвечено. Понятно, что можно "довести до ума", Растлитель просто был небрежен. :) Например, так, если поаккуратнее:
1. а бвгд
2. а бежз
3. а веик
4. а гжил
5. а дзкл

Каждая буква - число. "а" - шифруемое число. Разумеется, числа в строках "перемешать" произвольным образом. В любых двух записках встретятся "а" 2 раза и другое число 2 раза. Можно увеличить число пересечений по тому же принципу, чтобы встречались не две пары, а больше, но для каждой пары необходимо увеличить длину строки ещё на 4 числа. В любых трёх - пересечение будет только "а".
      » 5/02/2006, 00:30,  Страга 
Нет, Тоня, мой шифр - дерьмо, никуда не годится, открещиваюсь. Дантес прав, нельзя число светить, даже много "пересечений" не гарантируют должного эффекта, а писанина растет лавинообразно.
А сашуковский вариант зря критикуете. Джим Хокинс, что значит "достаточно умножить на три"? Сие никому не известно, что на что надо умножать, известно лишь, что надо суммировать ДАННЫЕ ТРЕХ ЗАПИСОК. Только получив три записки и получаешь искомое число. Можно усложнить, элементарно. Он и пишет - "открытый код" с множественными решениями, это - самое простое
      » 5/02/2006, 01:01,  Тоня 
//Можно усложнить, элементарно.
Как? Пример?
Вариант Сашуна остроумен, прост. Плох тем, что, если врагу известен принцип шифрования, он получит искомое число, перехватив одну всего лишь записку. (Из постановки вопроса мы, действительно, не можем понять - надо ли страховаться от того, что врагу известно, каким образом мы шифруемся). Тут нужны комментарии автора вопроса.
      » 5/02/2006, 02:47,  Jim_Hokins 
Растлитель ( "4/".$m["фев"]."/2006," 21:30)
А сашуковский вариант зря критикуете. Джим Хокинс, что значит "достаточно умножить на три"? Сие никому не известно, что на что надо умножать, известно лишь, что надо суммировать ДАННЫЕ ТРЕХ ЗАПИСОК. Только получив три записки и получаешь искомое число. Можно усложнить, элементарно. Он и пишет - "открытый код" с множественными решениями, это - самое простое

Уважаемый Растлитель !
Я человек прямой и говорю то, что вижу !
А вижу я, что Сашун пишет:
Имеется 5 одинаковых записок с текстом:
"Количество вражеских танков равно сумме чисел на трех записках. Число этой записки N".

Исходя из его логики очевидно, что на пяти записках будет пять различных чисел
N1, N2, N3, N4 и N5.
Пусть зашифрованное число равно M.
Тогда к примеру берем два уравнения
N1+N2+N3=M
N1+N2+N4=M
Несложным преобразованием получаем, что N3=N4.
Аналогично получаем, что N1=N2=N3=N4=N5.
Таким образом, зная, что записок на самом деле пять, спокойно можно умножать значение числа из одной записки на три.

Тут подумал и понял, что по условиям задачи враг ведь не знает, что записок не три, а пять...
Так что действительно он сможет вычислить данные только по трем запискам ...
Извините.
Вариант подходит.
Не к реальной жизни подходит, а к текущим условиям задачи.

А элементарное усложнение, как Вы это называете - всего лишь переход к системе уравнений (имхо) как и предлагала Тоня.

Это сообщение отредактировал Jim_Hokins - 5/02/2006, 02:56
      » 5/02/2006, 03:07,  Страга 
"Все мозги разбил на части, все извилины заплел ..."
Вариант Тони хороший, только ответ это, подразумеваю, будет неверный. Тот, Сашука, как раз ближе к реальной жизни. Минус отметила Тоня - если узнают принцип кодирования, достаточно и одной записки. Но минусы имеет каждый шифр. Я вообще-то с кодировкой в армии не сталкивался, но предполагаю, что даже мало мальски усложненные алгебраические формулы военные не используют. Знаете анекдот про "военный" косинус?
      » 5/02/2006, 03:40,  Сашун 
Ежели ПО УСЛОВИЮ требуется, чтобы по ДВУМ запискам нельзя было определить число, а по трем можно, так сам код и шифрование - лишние.




--------------------
С уважением, А.Малышев
      » 5/02/2006, 04:53,  Jim_Hokins 
Сам я в армии тоже не служил.
Но предполагаю, что военные шифровальщики все-таки проходят специальное обучение :)
      » 5/02/2006, 05:16,  Страга 
Конечно, проходят. Я не хочу сказать, что там неучи или идиоты. Но алгебра в военном шифровании не используется, там другие приоритеты - простейшая логика, простейший счет. Наряду с высочайшей надежностью. Не потому, что в науках не секут, просто чтобы напрочь исключить возможность ошибки. Вариант Сашука в этом плане идеален
« Предыдущая тема | Перечень тем | Следующая тема »
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей: