Рисунок 1.3 - Структурная схема алгоритма А5/1
) А5/2 (алгоритм с пониженной криптостойкостью, путём добавления ещё одного регистра (17 бит), управляющего сдвигами остальных);
Рисунок 1.4 - Структурная схема алгоритма А5/2
) А5/3 (основан на алгоритме Касуми);
Как уже упоминалось, данный шифр является шифром Фейстеля с восьмью раундами. В качестве входных данных используются 128-битный ключ K и строка S. Входная строка делится на правую R0 и левую L0 части, равные по 32 бита каждая. На каждом из восьми раундов обе части преобразуются по следующему правилу:
i = L i - 1; L i = R i - 1 XOR f (L i - 1, RK i) (1.1)
где f определяет функцию раунда, принимающую в качестве аргументов ключ раунда RК i и 32-битное входное значение. Ключ раунда RKi состоит реально из трёх ключей KLi , KOi и KIi , за генерацию которых ответственен элемент распределения ключей (key Scheduling Unit). Функция f состоит из трёх функций FL, FO и FI, которые и используют 3 соответствующих ключа. Функция FL принимает 32-битный входной параметр и с помощью 32-битного ключа KLi генерирует выход также размерности 32 бита.
Рисунок 1.5 - Функция FL
где: ∩ - функция логического «И»,- функция логического «ИЛИ»,
<<< - 1 бит переместить влево.
Функция FO принимает 32-битный входной параметр и два 48-битных ключа KOi и KIi. Последний используется при вызове функции FI.
Рисунок 1.6 - Реализация функции FO
Функция FI принимает 16-битный входной параметр и 16-битный ключ KIi,j и генерирует на их основе 16-битный выход.
а) б)
Рисунок 1.5 - а) Схема реализации шифра Kasumi; б) Функция FI
Из схемы нетрудно выяснить, какие логические операции использует каждая из этих функций. Стоит лишь отметить, что функция FI использует S-box S7 и S9, осуществляющие преобразования входных 7-ми и соответственно 9-ти бит в выходные 7 и 9 бит. На нечётных раундах первой исполняется функция FL, а на чётных - FO.
Итак, сгенерированный алгоритмом Касуми ключ выдаётся впоследствии алгоритмом GEA3 и используется для кодирования данных, транслируемых между мобильной станцией и обслуживающим узлом.
1.3.3 Алгоритм А8
A8 - алгоритм формирования ключа шифрования. По причине безопасности формирование Kc происходит в Sim-карте.
Рисунок 1.6 - Блок-схема вычисления Кс
Фактически алгоритмы A3 и А8 можно было бы реализовать в форме одного-единственного вычисления. Например, в виде единого алгоритма, выходные данные которого состоят из 96 бит: 32 бита для образования SRES и 64 бита для образования Кс. Следует отметить, что длина значимой части ключа Кс, выданная алгоритмом А8, устанавливается группой подписей GSM MoU и может быть меньше 64 бит. В этом случае значимые биты дополняются нулями для того, чтобы в этом формате всегда были использованы все 64 бита.
Всякий раз, когда какая-либо мобильная станция проходит процесс аутентификации, данная мобильная станция и сеть также вычисляют ключ шифрования Кс, используя алгоритм А8 с теми же самыми вводными данными RAND и Ki, которые используются для вычисления SRES посредством алгоритма A3.
Читайте также
Разработка лабораторного стенда Измерение опасных акустических сигналов
Для
человека слух является вторым по информативности после зрения. Поэтому одним из
довольно распространенных каналов утечки информации является акустический
канал. В акустическом канал ...
Проектирование центра обслуживания вызовов
Целью
настоящей курсовой работы является получение знаний о принципах
функционирования современных центров обслуживания вызовов (ЦОВ) и навыков их
проектирования с применением известных ...
Проектирование дискретного устройства
На современном этапе развития транспорта наблюдается бурный рост темпов и
объемов перевозок, особенно на железнодорожном транспорте в силу высокой
скорости и невысокой стоимости грузопер ...