VEST

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

VEST (англ. Very Efficient Substitution Transposition, очень эффективная перестановка) — это серия аппаратных поточных шифров общего назначения, которые обеспечивают однопроходное шифрование с аутентификацией и могут работать как хеш-функция, стойкая к коллизиям второго рода. Шифры VEST разработаны в Synaptic Laboratories. Все шифры этой серии поддерживают режим работы с ключами переменной длины.

Шифры VEST были разработаны Шоном О’Нейлом (Sean O’Neil). Впервые были представлены на турнире eStream в 2005 году, прошли во второй отборочный тур, но не попали в третий и, соответственно, не прошли в финал.

Применение поточных шифров

[править | править код]

Поточные шифры начали активно использовать в годы войны, ещё до появления электроники.

Преимущества поточных шифров:

  • Простота проектирования;
  • Простота аппаратной реализации;
  • Высокая скорость шифрования (важно при магистральном шифровании больших потоков информации);
  • Отсутствие эффекта размножения ошибок, который присутствует в блочных шифрах;
  • Обеспечивают высокую криптостойкость

Поточные шифры и их применение:

  • RC4 (системы защиты информации в компьютерных сетях, например в протоколах SSL и TSL);
  • A3 (процесс аутентификации в глобальном цифровом стандарте для мобильной сотовой связи GSM);
  • A5 (обеспечения конфиденциальности передаваемых данных между телефоном и базовой станцией в европейской системе мобильной цифровой связи GSM);
  • SEAL (криптографический алгоритм)(является одним из самых быстрых шифров)
  • Также поточные шифры используются в:

Одним из примеров поточных шифров является шифр VEST

Аппаратная реализация

[править | править код]

Общая структура

[править | править код]

Схема шифрования состоит из четырёх основных компонентов: нелинейный счетчик, линейный счетчик-диффузор, биективный накапливающий регистр с большим числом состояний и линейный смеситель на выходе. Ядро шифров VEST можно представить как взаимно-однозначные регистры сдвига с нелинейной обратной связью (NLFSRs) с множеством параллельных обратных связей, работающие вместе с системой нелинейных модульных счетчиков (RNS) с очень длинным периодом. Модульный счетчик состоит из 16 регистров сдвига с нелинейной обратной связью с взаимно простыми длинами периодов. Счетчик-диффузор — это набор 6-битовых линейных смесителей с обратной связью, сжимающий выходные данные с 16 счетчиков в 10 бит. Ядро накапливающего регистра — регистр сдвига с нелинейной параллельной обратной связью, на вход которого подаются выходные 10 бит от счетчика-диффузора. Выходной смеситель — набор 6-битовых линейных смесителей.

Счетчик-диффузор

[править | править код]

Биты, поступившие на вход счетчика-диффузора, смешиваются перед подачей их на вход накапливающего регистра по следующему правилу:








Накапливающий регистр

[править | править код]

Младшие пять бит , , , , преобразуются нелинейными функциями , , , , , которые образуют блок подстановки. Значения этих функций линейно смешиваются с пятью выходными битами , , , , счетчика-диффузора и возвращаются обратно в состояние регистра в , , , , соответственно. Биты , , , , линейно смешивают со значениями следующих пяти функций с обратной связью , , , , и с пятью битами счетчика-диффузора , , , , и возвращаются в состояние регистра в , , , , соответственно. Биты от до линейно смешиваются с значениями функций ,…, , а в режиме шифрования с аутентификацией ещё и с битами шифротекста.

Работу ядра накапливающего регистра (в режиме без аутентификации) можно изобразить с следующем виде:

;

;

;

Режимы работы

[править | править код]

Загрузка ключа

[править | править код]

Перед генерацией ключевого потока, шифрованием данных или хешированием шифр работает в режиме загрузки ключа, состоящий из раундов, где  — длина ключа в битах. Формируется последовательность битов, состоящая из 15 нулей, ключа, единичного бита и ещё 15 нулей. Эта последовательность загружается с регистры начиная с младшего бита по 16 бит до тех пор, пока единичный бит не окажется в первом регистре. Далее происходят следующие операции:

;

;

;

Хеширование

[править | править код]

Этот режим используется для хеширования данных и для загрузки вектора инициализации. Входные данные хешируются по 8 бит за раунд:

;

;

;

;

Генерация ключевого потока

[править | править код]

В этом режиме на вход не подаются никакие данные. А биты с выхода складываются с открытым текстом по модулю 2.

Шифрование с аутентификацией

[править | править код]

В этом режиме биты зашифрованного сообщения попадают обратно в регистр.

Криптостойкость

[править | править код]

На данный момент не известно ни одной атаки на шифры VEST, которая работала бы быстрее, чем атака полным перебором ключей или внутренних состояний регистра.

Тест на случайность

[править | править код]

Каждая компонента шифров VEST была тщательно проверена лучшим из существующих тестов на случайность. Отдельные потоки выходных данных с накапливающего регистра, смешанные с выходными данными счетчиков, и выходные данные шифров VEST практически не отличаются от случайной последовательности. Из-за короткого периода отдельные счетчики не проходят тест на случайность, но линейная комбинация трех или четырёх таких счетчиков успешно проходят тест на случайность

Проверка алгебраической структуры на наличие дефектов

[править | править код]

Проверки алгебраической структуры шифров VEST показывают, что при любом контролируемом изменении состояний накапливающего регистра появляющаяся взаимосвязь между входными и выходными битами не отличается от случайной последовательности уже после четырёх раундов.

Применение

[править | править код]

Смарт-карты

[править | править код]

Смарт-карты часто используют как защищённый способ предоставления услуг. Использование сильного, быстрого, малоэнергозатратного шифрования в таких системах — необходимое условие. Программное шифрование недостаточно быстрое и сильно энергозатратное, и его не всегда удобно использовать на уровне «железа».

Устройства идентификации

[править | править код]

Шифр VEST-4 удовлетворяет необходимым требованиям радиочастотной идентификации:

  • шифрование с аутентификацией;
  • низкая стоимость;
  • массовый параллелизм;
  • высокая надежность;
  • низкие энергозатраты.

Беспроводные сети

[править | править код]