Вектор атаки шифрования XOR - PullRequest
       17

Вектор атаки шифрования XOR

0 голосов
/ 19 февраля 2012

Допустим, ключ является строкой длиной 10, абсолютно случайной.
Мы используем ключ для xor большого количества идеально случайных строк длиной 10
Может ли ключ быть восстановлен, если зашифрованные строки скомпрометированы

Ответы [ 4 ]

4 голосов
/ 19 февраля 2012

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

C1 = P1 XOR K

C2 = P2 XOR K

C1 XOR C2 = (P1 XOR K) XOR (P2 XOR K) = P1 XOR P2

Вот почему One Time Pad должен быть One Time Pad. Использование одного и того же случайного ключа дважды делает его ломким. Google "Venona" для примера из реальной жизни.

2 голосов
/ 19 февраля 2012

Да!

Строки могут быть случайными, но они все равно будут следовать некоторой форме кодировки символов (ascii, utf, ebcdic и т. Д.), Поэтому допустимы будут только определенные байты.

Злоумышленник может перебрать возможные ключи, игнорируя те, которые приводят к открытому тексту, который не является допустимым ascii (или w / e). Это можно сделать по одному ключевому символу за раз, поэтому это не 26 ^ 10, а 26 * 10 (для алфавита из 26 символов).

Это небезопасная схема шифрования.

2 голосов
/ 19 февраля 2012

Нет.

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

Причина, по которой XOR не используется в качестве механизма шифрования, - это общеизвестные атаки с открытым текстом, которые не применяются к случайному корпусу.

0 голосов
/ 19 февраля 2012

Звучит как одноразовый блокнот, за исключением того факта, что вы сказали, что один и тот же ключ будет использоваться для большого количества строк.Теперь строки также будут совершенно случайными, но известно ли их содержимое в незашифрованном виде?

...