СПОСОБ И УСТРОЙСТВО ПОЛУЧЕНИЯ КЛЮЧА(ЕЙ) ЗАЩИТЫ
METHOD AND APPARATUS FOR OBTAINING SECURITY KEY(S)

УРОВЕНЬ ТЕХНИКИ
Беспроводная глобальная сеть (WWAN) может работать согласно стандарту Института инженеров по электротехнике и электронике (IEEE) 801.16, который также может называться WiMAX. Сеть WiMAX может безопасным образом передавать данные между, например, базовой станцией (BS) и мобильной станцией (MS).
Согласно стандарту IEEE 802.1x для установления безопасного соединения между BS и MS, BS может запросить MS отправить свой идентификатор устройства (ID) по беспроводному соединению небезопасным образом, чтобы получить ключи защиты для защиты идентификатора устройства и установления безопасного соединения с помощью ключей. Однако отправка идентификатора устройства по беспроводному соединению небезопасным образом может привлечь к MS внимание злоумышленников.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Объект, рассматриваемый в качестве изобретения, в частности указан и конкретно заявлен в заключительной части описания. Однако изобретение как в отношении его организации, так и в отношении способа его работы, вместе с его задачами, признаками и преимуществами, может быть лучше всего понято с помощью ссылки на следующее подробное описание при его чтении совместно с сопроводительными чертежами, на которых:
фиг.1 представляет собой изображение части системы беспроводной связи согласно некоторым примерам вариантов выполнения настоящего изобретения; и
фиг.2 представляет собой изображение блок-схемы последовательности операций способа согласования ключа защиты по беспроводному соединению системы беспроводной связи согласно примеру варианта выполнения изобретения.
Следует иметь в виду, что для простоты и ясности иллюстрации элементы, показанные на фигурах, не обязательно были изображены в масштабе. Например, размеры некоторых элементов могут быть преувеличены по сравнению с другими элементами для большей ясности. Кроме того, там, где это уместно, номера позиций могут повторяться на фигурах для указания соответствующих или аналогичных элементов.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
В нижеследующем подробном описании изложены многочисленные конкретные детали для обеспечения полного понимания изобретения. Однако специалистам в данной области техники будет понятно, что настоящее изобретение может быть осуществлено без этих конкретных деталей. В других случаях известные способы, процедуры, компоненты и цепи не были описаны подробно, чтобы не затруднять понимание настоящего изобретения.
Некоторые нижеследующие части подробного описания представлены с точки зрения алгоритмов и символических представлений операций в битах данных или бинарных цифровых сигналах. Эти алгоритмические описания и представления могут быть техническими приемами, используемыми специалистами в области техники обработки сигналов и/или в области техники беспроводной связи для передачи сущности их работы другим специалистам в области техники.
Если специально не утверждается иное, следует понимать, что на протяжении описания изобретения, как очевидно из нижеследующего описания, использование таких терминов, как «обработка», «вычисление», «расчет», «определение» и т.п., указывает на действия и/или процессы компьютерной и/или вычислительной системы и/или контроллера доступа к среде (MAC) и/или коммуникационного процессора или подобного электронного вычислительного устройства, которые манипулируют и/или преобразуют данные, представленные в виде физических, например электронных, величин в регистрах вычислительной системы и/или памяти, в другие данные, аналогично представленные как физические величины в памяти вычислительной системы, регистров или других таких систем хранения, передачи информации и т.п. Кроме того, термин «множество» может использоваться на протяжении описания изобретения для описания двух или более компонентов, устройств, элементов, параметров и т.п. Например, «множество мобильных станций» описывает две или более мобильных станции.
Следует понимать, что настоящее изобретение может использоваться во множестве приложений. Хотя настоящее изобретение не ограничено в этом отношении, цепи и технические приемы, раскрытые здесь, могут использоваться во многих устройствах, например коммуникационных устройствах радиосистем. Коммуникационные устройства, которые предполагается включить в рамки настоящего изобретения, включают в себя, в качестве примера, мобильные станции, базовые станции и точки доступа радиосистем, таких как, например, беспроводная локальная сеть (WLAN), которая также может упоминаться как WiFi, беспроводная общегородская сеть (WMAN), которая также может упоминаться как WiMAX, беспроводная персональная сеть (WPAN), такая как, например, Bluetooth™, приемно-передающие радиопередатчики, передатчики цифровых систем, передатчики аналоговых систем, сотовые радиотелефонные передатчики, цифровые абонентские линии, системы сотовой связи стандарта «Долгосрочное развитие сетей связи» (LTE) и т.п.
Некоторые варианты выполнения изобретения могут быть реализованы, например, с использованием машинно-читаемой среды, такой как, например, запоминающая схема и/или изделие, которое может сохранять инструкцию и/или ряд инструкций, которые при выполнении машиной обеспечивают выполнение машиной способа и/или операции в соответствии с вариантами выполнения изобретения. Такая машина может включать в себя, например, любую подходящую обрабатывающую платформу, вычислительную платформу, вычислительное устройство, обрабатывающее устройство, вычислительную систему, обрабатывающую систему, компьютер, процессор и т.п. и может быть реализована с использованием любой подходящей комбинации аппаратных средств и/или программного обеспечения. Машинно-читаемая среда или изделие могут включать в себя, например, любой подходящий тип блока памяти, запоминающего устройства, изделия памяти, запоминающей среды, устройства хранения, изделия для хранения, носителя данных и/или блока хранения данных и т.п. Инструкции могут включать в себя любой подходящий тип кода, например, исходный код, компилируемый код, интерпретируемый код, исполняемый код, статический код, динамический код и т.п. и могут быть реализованы с использованием любого подходящего языка программирования высокого уровня, низкого уровня, объектно-ориентированного, визуального, компилируемого и/или интерпретируемого, например, C, C++, Java, ассемблер, машинные коды и т.п.
В соответствии с вариантами выполнения изобретения канал и/или беспроводное соединение может быть физической средой передачи. Физическая среда передачи может использоваться для передачи сигналов, таких как, например, информационные сигналы данных, обучающие сигналы, контрольные сигналы, сигналы поднесущих, сигналы преамбулы и т.п., которые могут модулироваться посредством одной или более схем модуляции. Кроме того, канал и/или беспроводное соединение могут быть комбинацией физической среды передачи, компонентов передатчика и/или приемника, например, потерь на трассе, помех, интерференции и т.п. Специалистам в области техники следует понимать, что варианты выполнения изобретения могут работать со многими типами сигналов, часть из которых указана здесь, и изобретение никоим образом не ограничивается этими сигналами.
Согласно примеру варианта выполнения изобретения мобильная станция может отправить беспроводным образом одностороннюю перестановку реального идентификатора станции, которая имеет такой же размер, что и идентификатор станции, и тем самым может позволить ключу быть связанным с реальным идентификатором станции, не раскрывая его. Как только было проведено согласование ключей на основании перестановки реального идентификатора станции, может быть отправлен реальный идентификатор станции, защищенный этими ключами, и базовая станция может повторно вычислить перестановку реального идентификатора станции для подтверждения, что ключи были вычислены из реального идентификатора станции, хотя следует понимать, что объем настоящего изобретения не ограничивается в этом отношении.
В одном варианте выполнения способ, устройство и система могут выполнять согласование ключей по беспроводному соединению системы беспроводной связи. Например, в мобильной станции может быть принято первое сообщение от базовой станции, которое включает в себя случайное NONCE, при этом случайное NONCE является числом или двоичной последовательностью, которая используется только однажды в сообщении в целях безопасности. Может быть вычислена перестановка идентификатора мобильной станции (MSID*). Может быть отправлено второе сообщение, которое включает в себя случайное NONCE мобильной станции, случайное NONCE базовой станции и первое значение проверки целостности (ICV). Упомянутой мобильной станцией может быть принято третье сообщение, которое включает в себя NONCE мобильной станции, случайное NONCE базовой станции и второе ICV. В мобильной станции может быть принято третье сообщение, которое включает в себя NONCE мобильной станции, случайное NONCE базовой станции и второе ICV, если базовая станция подтвердила первое ICV. Может быть подтверждено второе ICV. По безопасному соединению может быть послано четвертое сообщение, которое включает в себя идентификатор мобильной станции. Могут использоваться другие последовательности сообщений и обмен сообщениями с другим содержанием согласно вариантам выполнения изобретения.
На фиг.1 показано изображение части системы беспроводной связи 100 согласно примеру варианта выполнения изобретения. Хотя объем настоящего изобретения не ограничивается этим вариантом выполнения, система 100 беспроводной связи, например система WiMAX и т.п., может включать в себя базовую станцию (BS) 110, мобильную станцию (MS) 160, восходящую линию 102 связи и нисходящую линию 104 связи.
Например, BS 110 может включать в себя процессор 120, память 130, модулятор 135, демодулятор 140, систему 150 приемников-передатчиков с множеством входов - множеством выходов (MIMO) и множество антенн 156. MS 160 может включать в себя процессор 170, память 165, модулятор 180, демодулятор 185, систему 190 приемников-передатчиков с множеством входов - множеством выходов (MIMO) и множество антенн 196. Кроме того, процессор 120 может включать в себя вычислительный модуль 125, компаратор 127, а процессор 170 может включать в себя вычислительный модуль 175. Система MIMO 150 может включать в себя по меньшей мере два передатчика (TX) 154 и по меньшей мере два приемника (RX) 152. Система MIMO 190 может включать в себя по меньшей мере два передатчика (TX) 194 и по меньшей мере два приемника (RX) 192, хотя следует понимать, что варианты выполнения настоящего изобретения не ограничиваются этим примером.
Согласно вариантам выполнения изобретения, процессоры 120 и 170 могут включать в себя процессор MAC. Процессор MAC может выполнять инструкции, связанные со стандартом IEEE 802.16, что при необходимости может приводить к установлению связи по безопасному соединению между MS 160 и BS 110 после согласования ключей защиты согласно некоторым функциям безопасности.
Согласно другому варианту выполнения изобретения процессоры 120 и 170 могут включать в себя процессор MAC. Процессор MAC может выполнять инструкции, связанные со стандартами проекта партнерства по созданию сетей третьего поколения (3GPP) и/или «Долгосрочного развития сетей связи» (LTE), что при необходимости может приводить к установлению связи по безопасному соединению между MS 160 и BS 110 после согласования ключей защиты согласно некоторым функциям безопасности.
Согласно примеру варианта выполнения изобретения функции безопасности могут предоставить абонентам секретность, подлинность и конфиденциальность в системе беспроводной связи 100, например, сети Усовершенствованного радиоинтерфейса (AAI), сети стандарта «Долгосрочное развитие сетей связи» (LTE) и т.п.
Например, функции безопасности могут применять криптографические преобразования к протокольным блокам данных (PDU) контроллера MAC, передающимся через соединения между MS 160, например, усовершенствованной MS (AMS) и BS 110, например, усовершенствованной BS (ABS).
Согласно некоторым примерам вариантов выполнения изобретения, установление подлинности BS 110 и MS 160 может быть выполнено с помощью сервера 106 аутентификации, авторизации и учета (AAA). Например, сервер AAA 106 может при необходимости использовать расширяемый протокол проверки подлинности (EAP) для установления подлинности. После установления подлинности MS 160 согласовывает ключ(и) с BS 110 и/или с аутентификатором, который находится в шлюзе 108 сети доступа (ASN-GW) или чем-то подобном. Например, BS 110 может отправить по нисходящей линии 104 связи первое сообщение. MS 160 может принять первое сообщение с помощью по меньшей мере одного из приемников MIMO 190 (например, приемника RX 192). Первое сообщение может модулироваться согласно схеме модуляции с множественным доступом с ортогональным частотным разделением (OFDMA) и может включать в себя случайное NONCE. В вариантах выполнения настоящего изобретения случайное NONCE может быть определено как число или двоичная последовательность, которое используется только один раз за цикл жизни ключа и/или проверки подлинности в целях безопасности.
Демодулятор 185 может демодулировать сообщение. Вычислительный модуль 175 может при необходимости вычислить перестановку идентификатора мобильной станции (MSID*) из случайного NONCE и может сохранить идентификатор MSID* в памяти 165. Согласно вариантам выполнения изобретения идентификатор *MSID также может быть определен как параметр, который нуждается в перестановке.
Например, вычислительный модуль 175 может вычислять идентификатор MSID* согласно выражению
MSID*=DOT16KDF(MSID|BSID|NONCE_BS,48),
в котором
MSID является идентификатором (ID) мобильной станции,
BSID может использоваться для обеспечения различных перестановок для каждого BSID;
NONCE_BS является NONCE базовой станции и
DOT16KDF является хеш-функцией получения ключа для получения одного или более ключей защиты из MSID, BSID и NONCE_BS.
Согласно примеру варианта выполнения изобретения NONCE_BS может использоваться для получения различной перестановки каждый раз, когда MS соединяется с одной и той же BS, таким образом, перестановка будет труднорешаемой. Идентификатор MSID* может быть только что полученным в соответствии с NONCE_BS, чтобы гарантировать на BS конфиденциальность местоположения MS.
Кроме того, вычислительный модуль 175 может вычислять ключи защиты из идентификатора MSID* согласно выражению Security_keys=DOT16KDF(Parentkey,MSID*|XXX|YYY|,size), в котором
Parentkey является родительским ключом, из которого могут быть получены ключи;
XXX является дополнительными параметрами для заданного ключа, такими как, например, идентификатор BSID;
YYY является общей строкой, которая определяется для каждого ключа;
и size является размером ключа.
Согласно примерам вариантов выполнения изобретения ключ защиты в YYY может включать в себя парный главный ключ (PMK), ключи авторизации (AK), транспортные ключи шифрования (TEK) и т.п. Например, получение ключа PMK может быть выполнено следующим образом:
PMK=Dot16KDF(MSK,NONCE_MS|NONCE_BS|"PMK",160).
Где:
NONCE_MS - случайное число, генерируемое MS и отправляемое на BS во время согласования ключей.
NONCE_BS - случайное число, генерируемое BS и отправляемое на MS во время согласования ключей.
Ключ AK при необходимости может быть получен из ключа PMK и может принадлежать паре MS и BS. Например, получение ключа AK может быть выполнено следующим образом:
AK=Dot16KDF(PMK,MSID*|BSID|CMAC_KEY_COUNT|"AK",160).
Где:
MSID* - перестановка идентификатора MSID (то есть MAC-адрес станции AMS), отправленный станцией MS станции BS во время согласования ключей, это может использоваться для связывания ключа с идентификатором MSID.
CMAC_KEY_COUNT - счетчик, который используется для обеспечения различных ключей AK для одинаковых пар BS-MS при передачах обслуживания.
Ключи CMAC могут быть получены из ключа AK и могут использоваться для проверки подлинности сообщений в, по меньшей мере, некоторых из управляющих сообщений. Например, при необходимости в WiMAX может быть два ключа CMAC: один используется для восходящей линии связи и один - для нисходящей линии связи. Получение ключей CMAC выполняется следующим образом:
CMAC_KEY_U|CMAC_KEY_D=Dot16KDF(AK,"CMAC_KEYS",256).
Каждый ключ имеет размер 128 битов. Согласно этому примеру ключи могут быть получены каждый раз, когда получен новый ключ AK.
Получение ключей TEK может быть выполнено следующим образом:
i
TEK=Dot16KDF(AK,SAID|COUNTER_TEK=i|"TEK",128), где
SAID является идентификатором ассоциации безопасности (SAID), которой может принадлежать ключ TEK. TEK является транспортным ключом шифрования, который используется для шифрования данных. В некоторых примерах вариантов выполнения время жизни ключей TEK равно времени жизни ключей AK.
Хотя объем настоящего изобретения не ограничивается этим примером варианта выполнения изобретения, процессор 170, например процессор MAC, может генерировать второе сообщение. Например при необходимости второе сообщение может включать в себя NONCE мобильной станции, случайное NONCE базовой станции и первое значение проверки целостности (ICV), например, ключ кода проверки подлинности сообщения на основании шифра (CMAC).
Согласно одному варианту выполнения модулятор 180 может модулировать второе сообщение согласно схеме модуляции OFDMA. Согласно другому варианту выполнения изобретения модулятор 180 при необходимости может модулировать второе сообщение согласно схеме модуляции с ортогональным частотным разделением с мультиплексированием на одной несущей (SC-FDMA).
Хотя объем настоящего изобретения не ограничивается этим примером, BS 110 может работать следующим образом. По меньшей мере один из передатчиков MIMO 150 (например, TX 154) может отправить, используя антенны 156, первое сообщение и третье сообщение на MS 160. По меньшей мере один из приемников MIMO 150 (например, RX 152) при необходимости может принять второе сообщение и четвертое сообщение по безопасному соединению. Вычислительный модуль 125 может вычислить множество ключей защиты и может проверить первое ICV второго сообщения. Вычислительный модуль 125 может вычислить упомянутое множество ключей защиты из упомянутого идентификатора MSID* согласно выражению
Security_keys=DOT16KDF(Parentkey,MSID*|XXX|YYY|,size), в котором
Parentkey является родительским ключом, из которого могут быть получены ключи;
XXX является дополнительными параметрами для заданного ключа, такими как, например, идентификатор BSID;
YYY является общей строкой, которая определяется для каждого ключа;
и size является размером ключа.
Кроме того, вычислительный модуль 125 может вычислять перестановку идентификатора мобильной станции (MSID**) согласно выражению:
MSID**=DOT16KDF(MSID|BSID|NONCE_BS,48),
в котором
MSID является идентификатором (ID) мобильной станции,
BSID является идентификатором базовой станции,
NONCE_BS является NONCE базовой станции и
DOT16KDF является хеш-функцией получения ключа для получения одного или более ключей защиты из идентификаторов MSID, BSID и NONCE_BS. Компаратор 127 может сравнить вычисленный MSID** с MSID* и при необходимости может установить упомянутое безопасное соединение на основании сравнения.
На фиг.2 показано изображение блок-схемы последовательности операций способа согласования ключей защиты по беспроводному соединению системы беспроводной связи безопасным образом согласно примеру варианта выполнения изобретения.
Вариант выполнения способа может начинаться с того, что BS (например, BS 110) отправляет первое сообщение MS (например, MS 160), как показано линией 201 со стрелкой. Первое сообщение при необходимости может включать в себя случайное NONCE BS (например, NONCE_BS).
MS может принять первое сообщение и может вычислить перестановку идентификатора мобильной станции (MSID*). Расчет MSID* может выполняться согласно выражению MSID*=DOT16KDF(MSID|BSID|NONCE_BS,48) (текстовый блок 210). MS может вычислить ключи защиты согласно выражению Security_Keys=DOT16KDF(MSID*|XXX|YYY|size) (текстовый блок 220) и при необходимости может сохранить их в памяти, например памяти 180.
Согласно этому примеру способа MS может отправить второе сообщение беспроводным образом BS (линия 202 со стрелкой). Второе сообщение может включать в себя идентификатор MSID*, NONCE_BS, NONCE_MS и первое значение проверки целостности (ICV). BS может принять второе сообщение и может вычислить ключ защиты, основанный на идентификаторе MSID* согласно выражению Security_Keys=DOT16KDF(MSID*|XXX|YYY|size) (текстовый блок 230). BS при необходимости может сохранить ключи защиты в памяти, например памяти 130.
BS может вычислить ICV сообщения и может сверить вычисленное ICV с ICV принятого сообщения (ромб 240). BS может сообщить об ошибке при обработке, если ICV принятого сообщения не совпадает с вычисленным ICV (текстовый блок 250). В противном случае BS может отправить третье сообщение беспроводным образом мобильной станции (стрелка 203). Третье сообщение может включать в себя NONCE мобильной станции, случайное NONCE базовой станции и ICV третьего сообщения, хотя объем настоящего изобретения не ограничивается в этом отношении.
MS может принять третье сообщение и может проверить ICV второго сообщения (ромб 260). Если ICV второго сообщения не совпадает с принятым ICV, MS может сообщить об ошибке при обработке (текстовый блок 252). Если принятое ICV было проверено, MS может отправить по безопасному соединению беспроводным образом четвертое сообщение (стрелка 204). Четвертое сообщение при необходимости может содержать зашифрованный реальный идентификатор MS.
BS может принять четвертое сообщение и может повторно вычислить перестановку идентификатора MS (MSID**) согласно выражению:
MSID**=DOT16KDF(MSID|BSID|NONCE_BS,48) (текстовый блок 280). BS может сравнить вычисленный идентификатор MSID** с MSID* (ромб 290) и, если они совпадают, BS может установить безопасное беспроводное соединение с MS с помощью реального идентификатора MSID (стрелка 205). В противном случае BS может сообщить об ошибке при обработке (текстовый блок 254), хотя объем настоящего изобретения не ограничивается в этом отношении.
Хотя объем настоящего изобретения не ограничивается в этом отношении, как только ключи установлены, MS может отправить реальный идентификатор MSID BS, зашифрованный одним из полученных ключей и/или при необходимости как часть зашифрованного сообщения. Таким образом, реальный идентификатор MSID может не раскрываться, и может быть скрыто соответствие между реальным MSID и идентификатором распределения ресурсов беспроводного соединения, таким как, например, идентификатор соединения (CID), как определено в IEEE 802.16e, и/или идентификатор станции и/или идентификатор потока, как определено в IEEE 802.16m. С этого момента истинный идентификатор MSID известен сети и BS (например, текущей обслуживающей BS и/или другим BS, которые принадлежат одному и тому же аутентификатору). BS и/или MS могут вычислять идентификатор MSID* самостоятельно всякий раз, когда есть потребность получить новые ключи, как, например, при передаче обслуживания, когда идентификатор BSID изменяется, таким образом, новые ключи могут быть установлены с обеих сторон (MS и целевой BS передачи обслуживания), которые связаны с MSID через MSID* без потребности снова передавать MSID или MSID* беспроводным образом.
В варианте выполнения способ согласования ключей по беспроводному соединению системы беспроводной связи может включать в себя отправку перестановки идентификатора мобильной станции (MSID*) небезопасным способом, получение из упомянутой перестановки идентификатора мобильной станции (MSID*) первого набора ключей, с помощью которых затем устанавливают защищенное соединение, по которому далее отправляют идентификатор мобильной станции (MSID). Также на основании упомянутого идентификатора MSID может быть получен второй набор ключей, с использованием которого далее осуществляют связь по безопасному соединению.
Хотя объект изобретения был описан терминами, характерными для структурных особенностей и/или методологических действий, следует понимать, что объект изобретения, определенный в прилагаемой формуле изобретения, не обязательно ограничивается заданными особенностями или действиями, описанными выше. Скорее заданные особенности и действия, описанные выше, раскрыты в качестве примеров реализации формулы изобретения.