Рейтинг:1

"Исправление" режима PCBC?

флаг ng

В режим PCBC, один шифрует и расшифровывает через $$ C_i = E(P_i \oplus P_{i-1} \oplus C_{i-1}) \Longleftrightarrow P_i = D(C_i) \oplus P_{i-1} \oplus C_{i-1} $$ (куда $P_0 \oплюс C_0 = IV$), который имеет хорошее распространение ошибок при изменении любого $C_i$ нарушит расшифровку всех $P_j$ куда $j\gei$.

Однако, есть ошибка в этом обмене $C_i$ и $C_{i+1}$ не влияет на расшифровку последующих открытых текстов $P_j$ (за $j > я + 1$). Википедия также упоминает об этом, говоря

Если в сообщении, зашифрованном в режиме PCBC, происходит обмен двумя соседними блоками зашифрованного текста, это не влияет на расшифровку последующих блоков.[27] По этой причине PCBC не используется в Kerberos v5.

Но что, если мы вместо этого сделали "xor" после шифрование? Другими словами, шифровать/дешифровать через $$C_i = E(P_i) \oplus P_{i-1} \oplus C_{i-1} \Longleftrightarrow P_i = D(C_i \oplus P_{i-1} \oplus C_{i-1})$$ (куда $P_0 \oплюс C_0 = IV$). Похоже, что это простое изменение исправит эти ошибки подкачки зашифрованного текста для PCBC и при этом сохранит его отличные свойства распространения ошибок...

fgrieu avatar
флаг ng
Я готов поспорить, что остается какое-то изменение зашифрованного текста, не требующее ключа, которое не меняет остальную часть зашифрованного текста. Мета-аргументом является то, что FPCBC не используется на практике. Я предлагаю, чтобы ОП нашла эту атаку и сделала хороший ответ. Когда они принимают себя, они получают (небольшое) вознаграждение в виде репутации, и за них можно проголосовать как обычно.
флаг ng
Будет ли это путем изменения IV и первого блока зашифрованного текста? Первый блок открытого текста $P_1 = D(C_1 \oplus IV)$, так что мы можем изменить и $C_1$, и $IV$ вместе (при условии, что $(C_1 \oplus IV)$ остается прежним!), не затрагивая расшифровка любого открытого текста...
fgrieu avatar
флаг ng
Предлагаемый режим не является CPA-безопасным. В частности, когда мы многократно шифруем открытый текст, состоящий из одного и того же блока, зашифрованный текст представляет собой чередование двух блоков, и это легко обнаружить. Таким образом, только с этой элементарной точки зрения он уступает CTR, CBC, OFB, CFB и PCBC. Вполне вероятно, что он даже не прошел бы усиленный [тест пингвина] (https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Electronic_codebook_(ECB)) с использованием более крупного изображения с большими черно-белыми областями. Это не отвечает на вопрос о свойстве замены зашифрованного текста, но делает его спорным.
Рейтинг:1
флаг ng

Кажется, пока эта схема исправляет проблема "подкачки зашифрованного текста", это позволяет модифицировать первый блок зашифрованного текста $C_1$ и $IV$ вместе, никак не влияя на расшифровку сообщения.

Это связано с тем, что первый блок открытого текста $P_1 = D(C_1 \oplus IV)$, и поэтому $C_1$ и $IV$ можно модифицировать «вместе», не меняя $(C_1\oplus IV)$ и так вообще не влияя на расшифровку чего-либо в сообщении...

** Редактировать: как указал fgrieu в комментариях, этот режим шифрования даже не является CPA-безопасным. Например, если мы предоставляем открытый текст с повторяющимися блоками $P_i = P_{i+1} = \cdots$, то зашифрованный текст будет иметь $C_j = C_{j+2}$ для всех $j > я+1$

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.