Можете ли вы «преобразовать» зашифрованный текст в режиме CBC в режим ECB с известным IV? - PullRequest
2 голосов
/ 16 июля 2010

В режиме CBC C2 = Ek (C1 ⊕ P2)

C2 = 2-й блок шифротекста

P2 = 2-ой блок открытого текста

Ek = функция шифрования

Если IV известен (скажем, он установлен в 0), есть ли в любом случае найти блок зашифрованного текста такой, что C2 = Ek (P2)?

Ответы [ 2 ]

4 голосов
/ 16 июля 2010

Если размер сообщения составляет всего 1 блок, а IV - ноль, то в режимах ECB и CBC будет получен эквивалентный зашифрованный текст. Тем не менее, краткий ответ на ваш вопрос NO . В большинстве случаев (например, WEP и WPA) IV известен злоумышленнику, и это не ставит под угрозу систему. Тем не менее, убедитесь, что IV является случайным при использовании режима CBC .

В режиме цепочки блоков шифрования (CBC) каждый блок простого текста сопоставляется с предыдущим блоком шифрованного текста в последовательности. Таким образом, вы не можете расшифровать сообщение полностью, не следуя «цепочке» или серии процедур дешифрования. Это своего рода одноразовая накладка встречает блочный шифр. Алгоритм не так сложен, и вот графическое представление двух. Обратите внимание, что они почти идентичны, за исключением того, что режим CBC добавляет операцию XOR для каждого блока.

alt text

alt text

2 голосов
/ 19 июля 2010

Простой ответ заключается в том, что если то, что вы просите , было бы вообще возможным , тогда CBC в любом случае будет эквивалентен ECB - CBC не получит защиту по сравнению с ECB.Однако в CBC есть утечка информации.Если вам случится наблюдать два одинаковых зашифрованных текста в сообщениях CBC, которые были зашифрованы одним и тем же ключом, Cn = Cm, то вы можете вычислить Pn ⊕ Pm (он равен Cn-1 ⊕ Cm-1).Два идентичных зашифрованных текста вероятны только в двух случаях: во-первых, отправитель повторно использовал IV, а во-вторых, вы наблюдали очень большой объем трафика, зашифрованный тем же ключом (для блочного шифра 128 бит напорядка 16 миллионов ТБ (для 64-битного блочного шифра - порядка 4 ГБ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...