Аутентификация в GSM. Механизмы обеспечения безопасности

Автор: Пользователь скрыл имя, 04 Марта 2013 в 20:14, лабораторная работа

Описание работы

Механизмы обеспечения безопасности включают четыре основных пункта: Аутентификацию, Шифрование, Переназначение TMSI, Идентификацию оборудования.
Непосредственно в самой GSM-сети за аутентификацию отвечает AUC (Центр Аутентификации), генерирующий определенные данные, необходимые во всей последовательности. В самом AUC постоянно хранятся специальные алгоритмы (A3 и A8), IMSI (уникальный идентификатор мобильной станции) и индивидуальный ключ идентификации Ki, а также генератор случайных чисел, отвечающий за выдачу некоторых чисел RAND.

Работа содержит 1 файл

Аутентификация в GSM.docx

— 490.48 Кб (Скачать)

Поволжский Государственный  Университет Телекоммуникаций и  Информатики

Лабораторная  работа № 3

 

Алгоритмы и протоколы  взаимодействия оборудования системы.

Алгоритмы аутентификации. Роуминг. Хэндовер.

A3, A5, A8.

Выполнил:

студент гр. ИБС  – 81

Старостенко Виктор

Проверила:

Фирстова Т.В.

Аутентификация в GSM. Механизмы  обеспечения безопасности.

Механизмы обеспечения  безопасности включают четыре основных пункта:

  1. Аутентификацию
  2. Шифрование
  3. Переназначение TMSI
  4. Идентификацию оборудования

 

 

Непосредственно в самой GSM-сети за аутентификацию отвечает AUC (Центр Аутентификации), генерирующий определенные данные, необходимые во всей последовательности. В самом AUC постоянно хранятся специальные алгоритмы (A3 и A8), IMSI (уникальный идентификатор мобильной станции) и индивидуальный ключ идентификации Ki, а также генератор случайных чисел, отвечающий за выдачу некоторых чисел RAND. Итого имеем:

  • Алгоритмы A3, A8
  • IMSI, Ki
  • RAND

Мы знаем, что для каждой мобильной станции уникальным идентификатором является IMSI, соответственно в IMSI имеется набор ключей KI. В AUC, KI и RAND будут вычисляться с помощью A3 and A8, результаты этого вычисления называются SRES и Kc соответственно.

Значения RAND, SRES, Kc называются триплетами аутентификации в GSM. Причем, в зависимости от числа RAND, значения SRES и Kc формируются различные. Таким образом, в специальном буфере AUC хранятся таблицы, отображающие зависимости между IMSI каждого абонента и его триплетами, количество которых достаточно большое. Далее эти триплеты партиями (по 8-10 комплектов) высылаются на HLR, где временно сохраняются.

Теперь, когда мобильная  станция намерена войти в сеть (совершить звонок, произвести Location Update либо получить доступ к дополнительным услугам сети), она подает по каналу RACH запрос в сеть на выделение канала доступа. После некоторых действий (не относящихся к аутентификации) HLR передает триплеты в гостевой регистр местоположения VLR, откуда на мобильную станцию (через MSC) передается RAND из состава ее индивидуальных триплетов.

На SIM-карте MS также хранятся алгоритмы A3, A8 и IMSI/Ki-значения, посредством которых вычисляются, как и в AUC, SRES и Kc. Затем SRES передается на VLR, где оба значения сравниваются. В случае успешного сравнения, аутентификация завершается и мобильная станция получает доступ в сеть GSM.

 

SIM-карта представляет собой  модуль определения подлинности  абонента. Хранит этот модуль  несколько основных компонентов:

 
• IMSI – международный идентификационный  номер абонента 
• Ki – индивидуальный ключ аутентификации 
• A3 – алгоритм аутентификации 
• A8 – алгоритм формирования ключей шифрования

Аналогичные данные находятся  и в центре аутентификации AUC. Одной  из основных его функцией является передача информации на MSC/VLR, где она  будет использована для процедур аутентификации абонента и шифрования передаваемых по радиоканалу сообщений. Информация, генерируемая в AUC, называется триплетом и состоит из:

• RAND (Random Number) – случайное число 
• SRES (Signed Response) – пароль-отклик 
• Kc (Ciphering Key) – ключ шифрования

При проверке подлинности  абонента из MSC/VLR на мобильную станцию  передается случайное число RAND. Мобильная  станция, используя число RAND, ключ Ki и алгоритм A3 вычисляет результирующее значение,

SRES = Ki [RAND]

и отсылает его обратно  в сеть. Затем значение SRES, полученное от мобильной станции сравнивается со значением SRES в MSC/VLR. При положительном  результате мобильной станции разрешается  передача информации, иначе – блокируется. В целях секретности ключ Ki по радиоканалу не передается.

Шифрование передаваемых данных

Для обеспечения конфиденциальности данных, передаваемых по радиоинтерфейсу между MS и BTS, применяется определенный алгоритм, использующий ключи шифрования. Как я говорил ранее, SIM-карта содержит алгоритм формирования ключей шифрования A8. Процесс вычисления ключей шифрования Kc похож на описанный выше процесс формирования отклика SRES:

Ключ Kc также не передается по радиоканалу для предотвращения его перехвата. Ведь если у злоумышленника будет ключ, то вся наша секретность оказывается под угрозой. 
Когда необходимо установить режим секретности, из сети на мобильную станцию передается командаCMC (Ciphering Mode Command). После получения CMC, мобильная станция начинает шифрование и дешифрование сообщений бит за битом или поточным шифром, использую при этом ключ Kc и алгоритм шифрования A5.

 

А5 — это поточный алгоритм шифрования, используемый для обеспечения конфиденциальности передаваемых данных между телефоном и базовой станцией в европейской системе мобильной цифровой связи GSM (Group Special Mobile).

Шифр основан на побитовом сложении по модулю два (булева операция XOR) генерируемой псевдослучайной последовательности и шифруемой информации. В A5 псевдослучайная последовательность реализуется на основе трёх линейных регистров сдвига с обратной связью. Регистры имеют длины 19, 22 и 23 бита соответственно. Сдвигами управляет специальная схема, организующая на каждом шаге смещение как минимум двух регистров, что приводит к их неравномерному движению. Последовательность формируется путём операции XOR над выходными битами регистров.

Потоковое шифрование

Схема поточного шифра: сложение открытого  текста и последовательности бит  даёт шифротекст

В этом алгоритме каждому  символу открытого текста соответствует  символ шифротекста. Текст не делится на блоки (как в блочном шифровании) и не изменяется в размере. Для упрощения аппаратной реализации и, следовательно, увеличения быстродействия используются только простейшие операции: сложение по модулю 2 (XOR) и сдвиг регистра.

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

Таким образом, безопасность системы полностью зависит от свойств последовательности. В идеальном  случае каждый бит гаммы — это независимая случайная величина, и сама последовательность является случайной. Такая схема была изобретена Вернамом в 1917 году и названа в его честь. Как доказал Клод Шеннон в 1949 году, это обеспечивает абсолютную криптостойкость. Но использование случайной последовательности означает передачу по защищённому каналу сообщения равного по объёму открытому тексту, что значительно усложняет задачу и практически нигде не используется.

В реальных системах создаётся  ключ заданного размера, который  без труда передаётся по закрытому  каналу. Последовательность генерируется на его основе и является псевдослучайной. Большой класс поточных шифров (в том числе A5) составляют шифры, генератор псевдослучайной последовательности которой основан на регистрах сдвига с линейной обратной связью.

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


Разработка стандарта GSM подразумевала  мощный аппарат шифрования, не поддающийся  взлому (особенно в реальном времени). Используемые разработки при надлежащей реализации обеспечивали качественное шифрование передаваемых данных. Именно такую информацию можно получить от компаний распространяющих этот стандарт. Но стоит отметить важный нюанс: прослушивание  разговоров — неотъемлемый атрибут, используемый спецслужбами. Они были заинтересованы в возможности прослушивания телефонных разговоров для своих целей. Таким образом, в алгоритм были внесены изменения, дающие возможность взлома за приемлемое время. Помимо этого, для экспорта A5 модифицировали в A5/2. В MoU (Memorandum of Understand Group Special Mobile standard) признают, что целью разработки A5/2 было понижение криптостойкости шифрования, однако в официальных результатах тестирования говорится, что неизвестно о каких-либо недостатках алгоритма.

Известные уязвимости

С появлением данных о стандарте A5, начались попытки взлома алгоритма, а также поиска уязвимостей. Огромную роль оказали особенности стандарта, резко ослабляющие защиту, а именно:

    • 10 бит ключа принудительно занулены,
    • отсутствие перекрестных связей между регистрами (кроме управления сдвигами),
    • излишняя избыточность шифруемой служебной информации, известной криптоаналитику,
    • свыше 40 % ключей приводит к минимальной длине периода генерируемой последовательности, а именно 
    • вначале сеанса осуществляется обмен нулевыми сообщениями (по одному кадру),
    • в A5/2 движение осуществляется отдельным регистром длиной 1,0 бит.

A3 — алгоритм, используемый в процессе аутентификации в глобальном цифровом стандарте для мобильной сотовой связи GSM. A3 является, таким образом, элементом системы обеспечения конфиденциальности разговора в GSM наряду с алгоритмами A5 и A8. Задача алгоритма — генерация отзыва (SRES — Signed Response) на случайный пароль (RAND — Random), получаемый сотовым телефоном (MS — Mobile Station) от центра коммутации MSC (MSC — Mobile Switching Centre) в процедуре аутентификации. А3 содержится в SIM-карте абонента.

Процесс аутентификации


Суть аутентификации в GSM — избежание клонирования мобильного телефона пользователя. Криптозащита в сети GSM является криптографической системой с открытым ключом. Секретным ключом является 128-битный ключ Ki, которым обладает как абонент, так и Центр Аутентификации (AuC — Authentication Centre). Ki хранится в SIM-карте, также как и алгоритм A3. Также в аутентификации принимают участие Домашний реестр местоположения (HLR — Home Location Registry) и Центр коммутации (MSC — Mobile Switching Centre)

Когда MS запрашивает доступ к сети GSM (например при включении), MSC должен проверить подлинность MS. Для этого MS отправляет в HLR уникальный международный идентификатор абонента (IMSI — International Mobile Subscriber Identity) и запрос на получение набора специальных триплетов. Когда HLR получает IMSI запрос на триплеты, он сначала проверяет свою базу данных, чтобы удостовериться, что MS с таким IMSI действительно принадлежит сети. Если проверка прошла успешно, то HLR отправляет IMSI и запрос установления подлинности в АuC.

AuC использует IMSI, чтобы найти Ki соответствующий этому IMSI. Также AuC генерирует случайное 128-битное число RAND. После этого AuC вычисляет 32-битный отзыв SRES (SRES — Signed Response) при помощи алгоритма A3: SRES = A3(RAND, Ki). Кроме того, AUC вычисляет 64-битный сеансовый ключ Kc при помощи алгоритма A8: Kc = A8(RAND, Ki). Kc в дальнейшем используется в алгоритме A5 для шифрования и расшифрования данных.

RAND, SRES, и Kc как раз образуют триплеты, которые MSC запросил у HLR. AuC генерирует пять таких триплетов и посылает их в HLR, затем HLR пересылает этот набор в MSC. Генерируется именно набор триплетов, чтобы уменьшить передачу сигналов в GSM core network, которая происходила бы каждый раз, когда MS запрашивала бы доступ к сети, а MSC должен был бы проверить подлинность MS. Следует отметить, что набор триплетов уникален для одного IMSI и не может быть использован для какого-либо другого IMSI.

MSC сохраняет Kc и SRES и посылает запрос RAND мобильной станции MS абонента. Получив запрос RAND, MS вычисляет ответ на запрос SRAND при помощи алгоритма A3 и секретного ключа Ki: SRES = A3(RAND, Ki), и посылает его в MSC. Если принятый SRES совпадает с SRES, хранящимся в MSC, то аутентификация считается пройденной успешно.

После пяти сессий аутентификации MSC запрашивает у HLR новый набор  триплетов (RAND, SRES, Kc).

 

В настоящее время принят следующий формат входных и выходных данных RAND, Ki, SRES алгоритма A3: длина Ki — 128 бит длина RAND — 128 бит длина SRES — 32 бита

Время выполнения алгоритма A3 должно быть меньше 500 миллисекунд.

В настоящее время известны следующие  стандартные реализации алгоритма A3:

  • COMP128
  • COMP128-2
  • COMP128-3
  • MILENAGE

 

 

A8 — алгоритм формирования ключа шифрования, который впоследствии используется для обеспечения конфиденциальности передаваемой по радиоканалу информации в стандарте мобильной сотовой связи GSM. A8 является одним из алгоритмов обеспечения секретности разговора в GSM вместе с A5 и A3. Его задача — генерация сеансового ключа Kc для потокового шифрования информации в канале связи между сотовым телефоном (MS — Mobile Station) и базовой станцией (BTS — Basic Transmitter Station) после аутентификации. По причине безопасности формирование Kc происходит в Sim-карте.

Под «безопасностью» в GSM будем понимать невозможность несанкционированного использования системы и секретность переговоров абонентов. В этой статье рассматриваются некоторые механизмы безопасности:

  1. аутентификация
  2. секретность передачи данных

Механизм аутентификации

Для исключения несанкционированного использования ресурсов системы  связи вводятся механизмы аутентификации. У каждого подвижного абонента есть стандартный модуль подлинности  абонента (SIM-карта), которая содержит:

  1. международный идентификационный номер подвижного абонента (IMSI — International Mobile Subscriber Identity)
  2. свой индивидуальный 128-битный ключ аутентификации (Ki)
  3. алгоритм аутентификации (A3), и генерации сеансового ключа (А8).

Информация о работе Аутентификация в GSM. Механизмы обеспечения безопасности