Чтобы зашифровать сообщение с помощью ключа одноразовой клавиатуры k , выполните E n c ( m 1 , k ) = m 1 ⊕ k .
Если вы используете одно и то же для шифрования другого сообщения m 2, вы получите E n c ( m 2 , k ) = m 2 ⊕ k , а если вы выполните Xor двух зашифрованных текстов, вы получите ( m 1 ⊕ k ) ⊕ ( m 2 ⊕ к ) = м 1 ⊕ м 2
Итак, хорошо, есть некоторая утечка информации, потому что вы изучаете , но почему это не безопасно? У меня нет способа выучить (скажем) m 1, если я не знаю m 2 . Так почему неправильно использовать k дважды ??
Ответы:
Эта общая стратегия взлома криптосистемы известна как атака открытого текста . Считается, что многие системы, такие как AES и RSA, защищены от этих атак. Но одноразовый блокнот становится совершенно небезопасным против них, если для каждого шифрования не используется новый блокнот, поэтому их называют «одноразовые блокноты».
источник
Это небезопасно именно по той причине, о которой вы упомянули - произошла утечка информации.
По сути, если у вас есть какие-либо предположения о текстовых сообщениях (текст на английском языке, файлы с известной структурой и т. Д.), Это упрощает статистический анализ. Вероятно, использование его дважды не меняет практичность атаки, но использование его много раз с неслучайным открытым текстом в конечном итоге выдает достаточно информации для восстановления ключа.
Наконец, если у вас есть возможность использовать его только два раза , у вас также есть возможность использовать его только один раз - ограничение состоит в том, что эти одноразовые планшеты не должны использоваться потенциально неизвестно и со временем, что повреждает количество раз.
Известные атаки с открытым текстом довольно распространены, достаточно просто заставить механизм шифрования шифровать то, что вы знаете априори. Если нет, вы обычно можете сделать разумные статистические предположения.
источник
Если вы хотите использовать одноразовый блокнот дважды, сначала вам нужно сжать ваше сообщение. И даже тогда, если вы не используете почти идеальный алгоритм сжатия и используете одноразовую площадку несколько раз, энтропии останется достаточно, чтобы теоретически восстановить сообщения. Я не знаю, насколько это будет сложно на практике.
источник
На самом деле, во многих случаях это очень просто. Вот простая визуализация.
источник
Вот интуитивный способ представления подхода без использования математики. Допустим, у вас есть два зашифрованных сообщения, которые были зашифрованы одной и той же временной панелью.
источник