Pull to refresh

Comments 13

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

Криптографами доказано, что повторное использование ключа в случае One Time Pad шифрования — это моментальное убивание всей безопасности, так что шифротекст часто можно расшифровать используя «Ciphertext Only Attack» (не знаю как зовется по русски, т.к. учил это по англоязычным лекциям), т.е. имея только 2 разных сообщения закриптованных одинаковым ключом, с большой вероятностью можно восстановить или все сообщение или неплохую его часть.
Так здесь же нет шифрования.
One Time Pad — это шифрование (криптография). Я же описал метод стеганографии.
Ну и я не претендую на авторство. Просто описал ход мыслей своих и даже, если кто-то уже такой принцип использовал, то если честно, я о нем не знал…
Если присмотреться внимательнее, то это самое обычное шифрование, где ключ стенограммы — это на самом деле шифротекст, а контейнер — это на самом деле шифроключ. И выходит что в случае повторного использования ключа вам прийдется решать задачу подбора ключа (контейнера), так что-бы шифруемый текст выдавал нужный результат («стегано-ключ»). Мне честно говоря не очень понятно как вы это будете делать, так что-бы результат выглядил правдоподобным файлом ;) Количество «заранее заготовленных файлов» в данном случае нужно такое-же, как и количество возможных собщений, — для текста из 30 кириличных букв — 33^30 =~ 3.6e+45

Проводя дальнейшую аналогию с криптографией — на самом деле если зашифровать 1 стегано-ключем 2 раза — это будет не совсем то-же самое что и 2 раза один ключ в случае One Time Pad, т.к. у вас ключ получается на порядок длиннее чем сообщение, и каждый раз используюется рандомная его часть, однако с возрастанием количества сообщений, «запрятанных» в контейнере, безопасность будет неизбежно падать.

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

Как говорят профессора от криптографии — никогда не изобретайте криптографию сами, ошибки неизбежны. Даже в самых выверенных реализациях вроде OpenSSL они встречаются, и порой фатальные. Так что — лучше разделать стеганографию и криптографию, и сначала криптовать используя надежные алгоритмы, а потом — прятать полученное в изображении или еще где-то, без использования «стеганографических ключей».
Ну все же тут все таки скрывается сам факт передачи информации, то думаю уместнее назвать это стеганографией.

Вы правильно написали, что будет сложность с подбором контейнера.

Учту все замечания и если соберусь еще писать на эту тематику, то посильнее погружусь в теорию.
Только маленькая поправка — это будет стенографией, если вы сможете скрыть факт передачи ключа. А это тоже как-то сделать надо ;)
Случаев может быть много разных. Например, я человеку передаю вживую ключ, мы разъезжаемся, используем этот ключ, а контейнеры один за одним пересылаем разные.

Вообще, Вы дали много пищи для мозгов. Буду думать :)
Sign up to leave a comment.

Articles

Change theme settings