Oryx (шифр)

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

ORYX — алгоритм потокового шифрования с длиной ключа 96 бит (экспортный вариант шифра использовал только 32 бита ключа). Использовался для защиты данных в сотовых сетях, таких как IS-136 и CDMA2000. Из-за ошибок проектирования он использовал только 16-битный ключ. Так, узнав первые 25-27 байт любых данных, можно его взломать за операций.[1]

Описание алгоритма[править | править код]

Шифр ORYX состоит из четырех компонентов: три 32-битных РСЛОС, которые обозначены как LFSRA, LFSRB и LFSRK, S-box, содержащий известные перестановки P (значения от 0 до 255).

Функции обратной связи для LFSRK

Функции обратной связи для LFSRA определены как

и

Функции обратной связи для LFSRB

Алгоритм работы:

  1. LFSRK работает один раз.
  2. LFSRA работает один раз, с одним из полиномов в зависимости от состояния LFSRK.
  3. LFSRB работает один или два раза, в зависимости от состояния LFSRK.
  4. Старшие байты в LFSRA, LFSRB и LFSRK скомбинированы в байт Keystream:

Keystream={High8K + L[High8A] + L[High8B]} mod 256

См. также[править | править код]

  • A5, используется в стандарте сотовой связи GSM.

Примечания[править | править код]

  1. [D. Wagner, L. Simpson, E. Dawson, J. Kelsey, W. Millan, and B. Schneier http://www.schneier.com/paper-oryx.pdf Архивная копия от 24 марта 2012 на Wayback Machine «Cryptanalysis of ORYX»], Fifth Annual Workshop on Selected Areas in Cryptography, Springer Verlag, August 1998, to appear.

Ссылки[править | править код]