Electronic Code Book

From CryptoWiki
Jump to: navigation, search

(ECB) Electronic Code Book (Режим электронной кодовой книги) - одна из схем симметричного шифрования, при которой каждый блок открытого текста заменяется блоком шифротекста. В ГОСТ 28147—89 называется режимом простой замены. Самая простая схема симметричного шифрования, основная идея заключается в разбиении открытого текста на блоки по N бит (зависит от размера блока входных данных алгоритма шифрования) и их последовательное шифрование/расшифрование на одном ключе каждого из блоков открытого/шифрованного текста.

Симметричные схемы шифрования

Contents

Постановка задачи защиты информации (Security challenge)

Схема ECB достаточно проста в реализации, дает возможность осуществлять шифрование/расшифрование данных параллельно, так как нет какой-либо зависимости блоков данных, в случае сбоя при шифровании/расшифровании данных ошибка распространяется только в пределах одного блока и не влияет на другие. В схеме ECB имеются следующие проблемы:

  • Одинаковые блоки в исходном тексте имеют одинаковый вид в соответствующих блоках зашифрованного текста. Если в зашифрованном тексте некоторые блоки одинаковы, то те же блоки исходного текста так же одинаковы. Криптоаналитик может дешифровать только один из этих блоков, чтобы найти содержание их всех.
  • Независимость блоков дает возможность для замены некоторых блоков зашифрованного текста без знания ключа. Злоумышленник может заменить часть блоков в сообщении блоками, перехваченными в ходе предыдущего сообщения на том же ключе.
  • В случае потери или вставки хотя бы одного бита в шифротекст, произойдет смещение битов и границ блоков, что приведет к ошибочной дешифрации всех последующих блоков шифротекста (исправима, при реализации методов контроля границ блоков шифротекста)

Теоретические основы решения задачи (Theoretical issues)

Математически схема шифрования может быть описана следующим образом:

ECB 1.PNG

где ECB 2.PNG – открытый текст, Mi.PNG – блоки открытого текста по N бит, t – количество блоков, на которое разбит открытый текст, ECB 3.PNG – блоки шифротекста, соответствующие блокам Mi.PNG открытого текста, Ek.PNG и Dk.PNG – алгоритмы шифрования и расшифрования на ключе k.

CTS (CipherText Stealing) захват зашифрованного текста

Блок-схема работы шифра по схеме ECB CTS

Последний блок открытого текста (с номером t) может содержать меньше N бит, в таком случае его необходимо дополнять, что не всегда возможно – в таком случае применяют технику CTS (CipherText Stealing) захват зашифрованного текста, которая позволяет использовать схему симметричного шифрования ECB без дополнения открытого текста до кратного N числу бит.

В этой методике последние два блока исходного текста MtMt 1.PNG зашифрованы отдельно, по-другому принципу и в другом порядке. Предположим, что Mt 1.PNG имеет N бит, а Mt n.PNG бит, причем n < N.

CTS 1.PNG

где Headn.PNG – функция, отсекающая крайние левые n бит, Tailnn.PNG – функция, отсекающая крайние правые N-n бит.

При расшифровании применяют следующие вычисления:

CTS 2.PNG

При такой реализации немного нарушаются особенности ECB схемы шифрования – ошибка в 1 бите Ct 1.PNG приводит к ошибкам в MtMt 1.PNG, а ошибка в блоке Ct.PNG – приводит к ошибке в блоке Mt 1.PNG.

Практические применения криптографических конструкций, особенности их реализации (Practical issues)

Блок-схема работы DES по схеме ECB

Схема шифрования ECB одна из самых простых схем работы, на практике ее можно встретить практически в любой реализации симметричного блочного шифрования (ГОСТ 28147-89, DES, AES и др), однако, учитывая все особенности режима работы, не рекомендуется применять ECB для шифрования сообщений, которые содержат более одного блока и их передачи по несекретному каналу.

Чаще всего используют данную схему симметричного шифрования в тех задачах, где необходимы ее преимущества – возможность параллельной обработки и отсутствие порядка шифрования блоков данных (шифрование большой базы данных)

Рассмотрим более конкретное применение схемы симметричного шифрования ECB с использованием алгоритма шифрования DES:

исходный файл M, согласно схеме ECB разбивается на блоки по 8 байт (64 бит). Каждый из этих блоков открытого текста шифруется независимо с использованием одного и того же ключа шифрования DES

Однако при шифровании файлов .EXE или .DOC по схеме ECB не рекомендуется, поскольку заголовок таких файлов вполне определен и имеет одинаковую структуру, что является отличной "стартовой площадкой" для взлома ключа шифрования

Глоссарий (Glossary)

Библиографический указатель (Bibliography)

Список литературы к разделу "Симметричные схемы шифрования"


Другие статьи по теме Симметричные схемы шифрования:

  1. (ECB) Electronic Code Book (Режим электронной кодовой книги)
    • (ECB CTS) CipherText Stealing (Захват зашифрованного текста)
  2. (CBC) Cipher Block Chaining Режим сцепления блоков шифротекста
    • (CBC CTS) CipherText Stealing (Захват зашифрованного текста)
    1. (BC) block chaining Режим сцепления блоков
    2. (CBC$) Cipher Block Chaining with random IV (initialization vector) Режим сцепления блоков со случайным вектором инициализации
    3. (CBCC) cipher block chaining with checksum Режим сцепления блоков шифротекста с контрольной суммой
    4. (PCBC) propagating cipher block chaining Режим сцепления блоков с распространением ошибок
    5. (CBCPD) cipher block chaining of plaintext difference Сцепления блоков текста по различиям открытого текста
  3. (CFB) Cipher Feed Back Режим обратной связи по шифротексту
  4. (OFB) Output Feed Back Режим обратной связи по выходу
  5. (OFBNLF) output feedback with a nonlinear function Режим нелинейной обратной связи по выходу
  6. (PBC) plaintext block chaining Сцепление блоков открытого текста
  7. (PFB) plaintext feedback Режим обратной связи по открытому тексту
  8. (CTR) Counter Режим счетчика
  9. Кратное шифрование
    1. Двойное
      • Метод Дэвиса-Прайса
    2. Тройное
      • Схема Тачмена
      • Схема с тремя ключами