156
сразу передает c2 (шифровку m2), злоумышленник, у которого есть неко-
торый доступ к сети, может доставить c2 перед c1 , что заставит сторону
B вывести сообщение в неправильном порядке. Это приведет к несоот-
ветствию просмотров двух сторон своих сеансов связи.
Атака повторного воспроизведения Злоумышленник может воспроиз-
вести (верный) шифротекст c , отправленный ранее оной из сторон. Снова
же, это приведет к несоответствию между тем, что одна сторона послала,
и что вторая сторона получила.
Атака отражением Злоумышленник может взять шифротекст c , отправленный
стороной A стороне B и вернуть его обратно стороне A. И снова же, это вызовет
несоответствие между транскрипциями их сенса связи: Сторона A может выве-
сти
сообщение m, даже если сторона B никогда не отсылала такого сообщения.
К счастью, вышеописанные атаки легко предотвратить используя счетчики,
чтобы решить первые две проблемы и бит направленности, чтобы предотвра-
тить третью. 5 Мы опишем это последовательно. Каждая сторона имеет два
счетчика ctrA,B и ctrB,A , отслеживающих количество сообщений, отправлен-
ных стороной A стороне B (и наоборот, стороной B стороне A) во время сеанса.
Эти счетчики инициализируются на отметке 0 и увеличиваются каждый раз,
когда каждая из сторон отправляет или получает (верное) сообщение. Стороны
также договариваются по биту bA,B, и
определяют bB,A ,
чтобы выступить до-
полнением. (Один из способов это сделать - установить bA,B = 0, если равен-
ство A лексикографически меньше, чем равенство B.
Когда сторона A хочет
передать сообщение m стороне B, она вычисляет шифротекст c ← Enck (bA,B
||ctrA,B|m) и отправляет c; затем она увеличивает счетчик ctrA,B . По получении
c сторона B расшифровывает его; если результат ┴, она тут же отклоняет его.
Иначе, она разбирает дешифрованное сообщение как b»ctr»m. Если b = bA,B и
ctr = ctrA,B , тогда сторона B выводит m и увеличивает ctrA,B ; иначе, сторона B
отклоняет сообщение. Вышеописанны е шаги, с соответствующими изменени-
ями,
применяются, когда сторона B отправляет сообщение стороне A.
Мы отметим, что, так как стороны могут в любом случае сохранять состояние
(а именно, счетчики ctrA,B и ctrB,A), то они могли бы с легкостью использовать
отслеживающую состояние схему аутентифицированного шифрования Π.
Достарыңызбен бөлісу: