Интересен вариант шифрования чисел через игру Судоку, т.е. брать числовую последовательность 167323487263826364872634, и из нее получать судоку, желательно с обратным вариантом.
Мне Вижу это как аналог Base64 только там словарь это набор чисел и букв, а тут это какой то шаблон судоку а каждый из чисел это изменение этого судоку в ту или иную сторону.
Ищу хотя бы примерный алгоритмом, ибо в том что я описал выше - не имеет путь дешифрования.
UPD**
Я понимаю что имея числовую последовательность от 1-9 которая не имеет повторов, в целом не сложно засунуть сообщение из 9 чисел, но если у нас она имеет повторы? а именно 2 числа подряд, то в таком случаи судоку не решаема, или если числа идут группами 123****123 то это приводит к отсутствию решения судоку. По этому я и думал что надо иметь готовое судоку, и на него влиять входными значениями, тогда судоку будет как то меняться( по логическим законам ), но обратная сторона чем длиннее сообщение тем сложнее его вернуть.
Андрей: т.е. по факту они просто берут сообщение и в зависимости от длины(9,16 и т.д.) генерируют судоку, которое после решиться их методом(одним из 3х). После создают такое судоку которое имеет 1 решение любим способом, и решая его достают от туда данные?! НО тут у них не учтено что данные могут повторяться а именно 114591 или 1953233.
Если Вас устраивает общий подход, изложенный в статье (то есть Вы согласны с тем, что именно мы называем ключом, а что шифрограммой), то вариантов обойти Вашу локальную проблему есть сразу несколько.
1. Вы можете произвести перекодирование бинарного сообщения в перестановку. Конечно, это увеличит длину сообщения, но все его символы станут уникальными.
2. Вы можете назвать ключом не элементы одного квадрата, а ячейки, расположенные аналогично правилу "разместить 8 ладей на шахматном поле так, чтобы они не атаковали друг друга попарно". Правда, длина сообщения будет ограничена 8 символами.
Наверняка можно придумать еще и другие способы ...