5.2. Электронная шифровальная книга (ECB)
89
Каждая из этих схем одинаково хорошо подходит для дополнения откры-
того текста. Никаких криптографических нюансов, связанных со схемами до-
полнения, не существует. Любая схема будет приемлема, если она обратима.
Мы лишь привели примеры наиболее простых схем дополнения.
После того как открытый текст дополнен до длины, кратной размеру бло-
ка, он разбивается на блоки. В результате этого открытый текст
P
превра-
щается в последовательность блоков
P
1
, . . . , P
k
. Количество блоков
k
может
быть подсчитано по формуле
d
(
l
(
P
) + 1)
/b
e
, где
d
. . .
e
—
функция округления
сверху, которая округляет число до следующего целого числа. В оставшейся
части главы будем предполагать, что открытый текст
P
состоит из целого
числа блоков
P
1
, . . . , P
k
.
Когда шифрованный текст будет расшифрован с использованием одного
из рассмотренных далее режимов работы, добавленные байты следует уда-
лить. Перед этим необходимо убедиться, что дополнение было выполнено
корректно. Следует проверить правильность значения каждого из добавлен-
ных байтов. Неправильное дополнение должно быть обработано так же, как
и ошибка аутентификации.
5.2
Электронная шифровальная книга (ECB)
Самый простой
метод шифрования открытого текста, длина которого пре-
вышает длину блока, называется режимом
электронной шифровальной книги
(electronic codebook — ECB)
. Он определяется следующим образом:
C
i
=
E
(
K, P
i
)
для
i
= 1
, . . . , k.
Данный режим довольно прост: каждый блок сообщения шифруется от-
дельно. Разумеется, на практике все не может быть так просто, иначе зачем
посвящать целую главу обсуждению режимов работы блочных шифров? Ни-
когда не используйте режим ECB! Он обладает серьезными недостатками
и включен в эту книгу только затем, чтобы посоветовать вам держаться от
него подальше.
Так какими же недостатками обладает ECB? Если два блока просто-
го текста одинаковы, соответствующие блоки шифрованного текста также
будут одинаковы, что непременно заметит злоумышленник. В зависимости
от структуры сообщения, подобный недостаток может привести к серьезной
утечке информации.
Существует довольно много ситуаций, в которых повторяются большие
блоки текста. Например, в данной главе часто повторяется словосочетание
“блоки шифрованного текста”. Если сообщение содержит два повторяющихся