Идентификация и аутентификация в системах мобильной связи
Процедуры идентификации и аутентификации предназначены для защиты законных абонентов от попыток обмана со стороны злоумышленников.
Под идентификацией оборудования понимается процедура отождествления МС, претендующей на услуги сети, с одной из множества зарегистрированных в ЦКМС. Идентификатор МС обычно содержит коды изготовителя и места сборки МС, электронный серийный номер. Процедура идентификации позволяет сети узнать статус этой МС, т.е. перечень предоставляемых услуг, уровень приоритета в получении доступа, установления канала связи и т.п. В системе связи стандарта GSM в регистре идентификации оборудования ЦК имеется три списка: белый, серый и черный. МС, занесенной в белый список, разрешено пользоваться сетью. В сером списке хранятся идентификаторы МС, имеющих неурегулированные вопросы с сетью (требуют ремонта, имеют задолженности по оплате услуг). В черный список включены утерянные или украденные МС, а также незаконно размноженные (клонированные). Следует отметить, что, кроме идентификации оборудования стандарты систем связи предусматривают и другие виды идентификации (абонента, управления, сети).
Под аутентификацией понимается процедура установления подлинности какого-то объекта. Различают аутентификацию сообщения, абонента, устройства, массивов данных. Поясним принципы построения этих процедур.
Аутентификация сообщения
Целью аутентификации сообщения является подтверждение или отрицание следующих предположений:
• сообщение исходит от законного абонента;
• сообщение при передаче не изменилось;
• сообщение доставлено по требуемому адресу;
• последовательность принятых сообщений соответствует последовательности отправленных.
Проверка подлинности особенно важна для шифрограмм, поскольку у получателя они вызывают больше доверия, чем открытый текст. Методы аутентификации разрабатываются в предположении, что установление подлинности производится исключительно по самому сообщению без привлечения каких-либо внешних средств. Для этого на передающей стороне в сообщение X вводится дополнительно код хэш-функции, который также называют сигнатурой, контрольной комбинацией, имитовставкой, дайджестом сообщения [48, 49]. Как уже отмечалось, сообщение X предварительно преобразуется в число или набор чисел X
Хэш-функция h(Х) отображает X произвольной длины l в последовательность символов фиксированной длины т. Чтобы снижение скорости передачи при таком дополнении не было значительным, естественно требование: т «I.
Проверка подлинности сообщения (X,h(X)) заключается в сравнении h'(Х), вычисленного по принятому X, со значением h(Х), выделенным из самого сообщения. Если они равны, то принимается решение, что при передаче (Х,h(Х)) не изменилось. В противном случае фиксируется искажение переданного сообщения.
Так как т«1, то возможно, что нескольким сообщениям Х1 Х2,..., Xj, называемым коллизиями, соответствует одно значение хэш-функции h(Х1) = h(Х2) = ... = h(Xj). Ясно, что замена
переданного сообщения на любую коллизию не будет обнаружена при проверке подлинности. Вероятность успешной подделки сообщения определяется разрядностью значения h(X). На практике используются длины в 64-150 бит. К хэш-функции предъявляются следующие требования: чувствительность к всевозможным изменениям в тексте (вставки, изъятия, перестановки и пр.),
отсутствие эффективных алгоритмов поиска коллизий, однонаправленность, простота вычислений значения h(X).
Отметим, что необходимость однонаправленности следует из описания, например, протокола распределения ключей (рис. 8.3).
Предложено много способов хэширования. Разработан и государственный стандарт на имитовставку. В качестве примера рассмотрим хэш-функцию(8.3)
Обратим внимание, что выражение (8.3) подобно функции (8.1), однонаправленность которой поясняется примером 8.1.
Процедура вычисления значения h(X) является рекуррентной и применяется к сообщению X, разбитому на блоки Х1 ,Х2,..., Хк,
(8.4) где Hj - значение функции на /-м шаге; Но - произвольное начальное число.
Пример 8.2 (см. [48]). Пусть /7 = 21, а сообщение "ДВА" представлено номерами букв в русском алфавите, т.е. X = (5,3,1). Выберем произвольно Н0=6. Тогда из (8.4) в предположении X1=5, Х2=3, Х3=1 получим H1=(6 + 5)2mod21 = 16, Н2=4, Н3=4. Сообщение после хэширования имеет вид Х' = (5,З,1,4) или "ДВАГ".
Однако и злоумышленник, зная алгоритм хэширования, может создать фальшивое или изменить истинное сообщение, вычислить и добавить правильное значение хэш-функции. Поэтому рекуррентная процедура типа (8.4) выполняется с использованием секретных параметров. В качестве ключей могут выступать специальные секретные числа, значения Hj блоки сообщения Xj и их комбинации. На рис. 8.4 показана возможная схема
шифрования хэш-функции, когда в качестве ключа используется ее предыдущее значение.
Рассмотренная процедура аутентификации предполагает наличие доверия между абонентами, обменивающимися информацией, т.е. защищает от обмана со стороны внешнего нарушителя. В жизни существует много ситуаций, когда доверие между
абонентами отсутствует (обмен электронными документами между коммерческими организациями, между клиентом и банком и т.п.). В этом случае возможен обман со стороны законных абонентов. Например, отправитель абонент А может впоследствии отказаться от своего сообщения, получатель может изменить (подменить) полученный документ и утверждать потом, что в таком виде его прислал абонент А.
Прогнозы развития систем мобильной связи показывают, что наибольших успехов следует ожидать в области электронной коммерции [37]. Предполагается, что с помощью мобильного телефона можно будет совершать всевозможные банковские операции. В этих условиях становится важной задача защиты от возможного обмана законными абонентами.
Для аутентификации сообщений при отсутствии доверия используется электронная подпись. Ее назначение аналогично функциям ручной подписи на бумажных документах. Однако принадлежность ручной подписи данному тексту обеспечивается целостностью бумаги, на которой написан документ и поставлена подпись. В электронном виде единство документа и соответствующей ему подписи достигается за счет введения связи между текстом и видом подписи.
Поясним эту технологию на примере системы RSA. Пусть (d, n) и (е, n) - соответственно секретный и открытый ключи абонента А.
Постановка электронной подписи (ЭП) под документом X заключается в его хэшировании и шифровании значения хэш-Функции Нх с помощью секретного ключа (d, n). К Нх могут добавляться идентификатор абонента А, номер сообщения, время Управления и другие сведения, предназначенные для защиты от возможного обмана. В результате подписанный документ имеет вид Y = (X, ЭП), где ЭП = Чdx mod n.
Проверка подписи А абонентом Б включает следующие операции:
• расшифровку ЭП с помощью открытого ключа абонента А, т.е.
• вычисление по X значения хэш-функции Нх;
• сравнение Н'х с Нх.
Если эти значения равны, то принимается решение, что X - подлинное сообщение, исходящее от абонента А. Различие означает, что либо X изменено (может быть и из-за искажений в канале связи), либо отправлено другим абонентом.
Абонент А не может отказаться от Y, так как только он, обладая секретным ключом, способен создать ЭП, при расшифровке которой с помощью его открытого ключа будет выполняться равенство. Абонент Б не может изменить X и выдать его за истинное, так как, не зная ключа (d, n), не может создать ЭП, соответствующую измененному X. Выделение из Y электронной подписи и присоединение ее к новому документу также будет обнаружено: фальшивому сообщению соответствует значение Нф, не равное Нх. Обман будет успешным, если истинное X заменяется его коллизией.
Следует указать на идейную общность методов защиты сообщений от помех (см. гл. 7) и от злоумышленников. В обоих случаях в сообщение вводятся дополнительные символы, функционально связанные с сообщением. В помехоустойчивых кодах эти связи выбираются так, чтобы можно было обнаруживать и исправлять наиболее вероятные искажения в канале связи. Для защиты от злоумышленника функциональные зависимости делаются секретными, при этом учитываются интеллектуальные и технические возможности противника. Принципы построения помехоустойчивых кодов могут быть применены и для шифрования. Так, известна асимметричная система шифрования Мак-Элиса, основанная на сложности декодирования линейных кодов.
Аутентификация абонента
Назначением аутентификации абонента является установление подлинности абонента, претендующего на услуги сети. Для этого разработаны криптографические протоколы, в результате выполнения которых законные пользователи достигают своих целей, а притязания злоумышленников отвергаются.
Самым распространенным методом аутентификации является использование паролей - секретной последовательности символов (букв и/или цифр). При попытке доступа к устройству абонент вводит свой пароль, который сравнивается с хранящимся в памяти устройства и приписанным данному абоненту. Доступ разрешается только в случае их совпадения. Так, в стандарте GSM пароль, так называемый PIN {personal identification number) код, служит для активизации МС. Трехкратный неправильный ввод PIN кода блокирует SIM карту и работа данной МС запрещается.
Парольная аутентификация обладает хорошей стойкостью при условии использования достаточно длинного, случайного пароля, а также, если предусмотрена защита от перехвата пароля при его вводе и от несанкционированного считывания его из памяти устройства. Так как МС при вводе PIN кода находится в руке абонента, можно считать, что эти требования выполняются.
Для удаленных устройств используются более сложные протоколы, защищающие от возможного перехвата передаваемых сигналов. Они реализуют принцип доказательства с нулевым знанием или с нулевым разглашением. Абонент (МС) не предъявляет проверяющему (ЦКМС) собственный секрет, а только демонстрирует, что им владеет. Обычно абоненту предлагается вычислить значение некоторой функции и сообщить его проверяющему, который также способен провести подобные вычисления. Сравнение этих значений позволяет установить подлинность абонента.
На рис. 8.5 приведена упрощенная схема аутентификации МС в сотовой системе стандарта GSM (см. также рис. 8.3). При поступлении от МС запроса ЦКМС передает в ответ случайное число RAND. По алгоритму A3 с помощью секретного числа К,, полученного МС при регистрации и хранящегося в SIM, абонент вычисляет отклик SRES (signed response) и сообщает его ЦКМС. Центр коммутации независимо вычисляет SRES' и сравнивает его с принятым по радиоканалу. При их совпадении МС посылается сигнал подтверждения о состоявшейся аутентификации. При несовпадении - сигнал о том, что опознание не состоялось.
Здесь секретом, который при обмене не разглашается, является число Кj . Чтобы по перехваченным сигналам RAND и SRES нельзя было вскрыть секрет Кj, SRES вычисляется односторонней функцией
В корпоративных системах вводится защита от имитации центра связи. Абонент должен быть уверен, что получил доступ к законной системе, а не созданной противником. Так, в транкинговых системах стандарта TETRA наряду с аутентификацией МС предусматривается аутентификация сети. Принципиально она не отличается от показанной на рис. 8.5, только проверяющим подлинность является абонент, а не сеть.
Применяя псевдонимы, связанные с идентификаторами IMSI, оперативно изменяемые в процессе взаимодействия МС с ЦКМС, можно, помимо прочего, засекретить местоположение МС. Так, в системе GSM после каждой регистрации МС присваивается новый временный идентификатор TMSI (см. рис. 8.5). Секретность направлений обмена сообщениями между абонентами обеспечивается ЦКМС путем закрытия сигналов управления.