СПОСОБ УЛУЧШЕНИЯ КЛЮЧА СИСТЕМЫ GPRS, УСТРОЙСТВО SGSN, ПОЛЬЗОВАТЕЛЬСКОЕ УСТРОЙСТВО, HLR/HSS И СИСТЕМА GPRS
METHOD FOR IMPROVING GPRS KEY, SGSN DEVICE, USER DEVICE, HLR / HSS AND GPRS SYSTEM

Область техники, к которой относится изобретение
Настоящая заявка относится к области защиты связи и, в частности, к способу улучшения ключа системы GPRS, узлу SGSN, UE, HLR/HSS и к системе GPRS.
Уровень техники
Для осуществления функции передачи данных оборудование пользователя (User Equipment, UE) обычно получает доступ к сети мобильной связи, такой как система пакетной радиосвязи общего пользования (GPRS, General Packet Radio Service) оператора, используя модуль идентификации абонента (SIM, Subscriber Identity Module) или универсальный модуль идентификации абонента (USIM, Universal Subscriber Identity Module), с тем, чтобы осуществлять связь с другими UE, людьми или мобильными сетями. Чтобы гарантировать безопасность связи для UE, прежде чем UE получит доступ к сети мобильной связи, обычно необходимо выполнить аутентификацию между стороной сети и UE, чтобы обеспечить истинность стороны сети и UE, и генерировать ключ шифрования и ключ целостности для обеспечения защиты с помощью шифрования и защиты целостности сообщения связи. Однако на предшествующем уровне техники, когда UE, которое использует SIM, получает доступ к сети GPRS, только сторона сети может осуществлять одностороннюю идентификацию UE и выполнять защиту шифрованием сообщения связи, тогда как UE не может выполнять аутентификацию стороны сети и не может осуществлять защиту целостности сообщения связи. Когда UE, которое использует USIM, получает доступ к сети GPRS, можно осуществить двухстороннюю аутентификацию между стороной сети и UE. Однако для сообщения связи может осуществляться только защита с помощью шифрования, а защита целостности сообщения связи обеспечиваться не может. Существующими угрозами для безопасности является следующее: в одном варианте, если UE не может выполнять аутентификацию сообщения со стороны сети, UE может быть подвергнуто атаке со стороны неконтролируемой базовой станции; в другом варианте, если для сообщения связи не может обеспечиваться защита целостности, связь между UE и стороной сети может подвергнуться атаке с ухудшением алгоритма и потенциальному риску для безопасности, такому как перехват сообщений, или может даже существовать фальсификация контента сообщения. Для некоторых UE, которые требуют высокозащищенной связи, таких как UE для Интернета вещей (Internet of Things) и UE для межмашинной связи, необходимо незамедлительно обеспечить способ повышения безопасности связи для этого типа UE в сети GPRS.
Раскрытие сущности изобретения
Варианты осуществления настоящей заявки раскрывают способ улучшения ключа системы GPRS, устройства SGSN, UE, HLR/HSS и системы GPRS, который может улучшить ключ в системе GPRS и повысить защищенность связи для UE первого типа в сети GPRS.
Первый случай для вариантов осуществления настоящей заявки раскрывает способ улучшения ключа системы GPRS, где упомянутый способ может содержать этапы, на которых
принимают с помощью SGSN сообщение запроса, переданное от UE;
приобретают с помощью SGSN вектор аутентификации от HLR/HSS, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности;
если SGSN определяет, что UE является UE первого типа, выбирают для UE алгоритм шифрования и алгоритм целостности и передает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE; и
получают с помощью SGSN второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, при этом
второй ключ шифрования и выбранный алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на первый случай, в первом возможном способе реализации сообщение запроса содержит идентификатор UE и определение с помощью SGSN, что UE является UE первого типа, содержит этапы, на которых:
передают с помощью SGSN идентификатор UE на HLR/HSS для определения HLR/HSS, в соответствии с идентификатором UE, что UE является UE первого типа, и передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа; и
принимают с помощью SGSN информацию указания типа UE, переданную от HLR/HSS, и определяют, что UE является UE первого типа.
Со ссылкой на первый случай, во втором возможном способе осуществления определение SGSN, что UE является UE первого типа, содержит этап, на котором:
если сообщение запроса содержит информацию указания типа UE, с помощью SGSN определяют, что UE является UE первого типа, где информация указания типа UE используется для указания, что UE является UE первого типа.
Со ссылкой на первый случай или на первый или второй возможный способ осуществления первого случая, в третьем возможном способе осуществления получение с помощью SGSN второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью SGSN промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью SGSN второй ключ шифрования, соответствующий промежуточному ключу и характеристической строке шифрования, и вычисляют с помощью SGSN второй ключ целостности, соответствующий промежуточному ключу и характеристической строке целостности; или
вычисляют с помощью SGSN промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью SGSN второй ключ шифрования, соответствующий промежуточному ключу, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования, и вычисляют с помощью SGSN второй ключ целостности, соответствующий промежуточному ключу, второму указанию типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на первый случай или на первый или второй возможный способ осуществления первого случая, в четвертом возможном способе осуществления вычисление с помощью SGSN второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности в векторе аутентификации, содержит этапы, на которых:
вычисляют с помощью SGSN промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности; и используют с помощью SGSN первый заданный бит промежуточного ключа в качестве второго ключа шифрования, и используют второй заданный бит промежуточного ключа в качестве второго ключа целостности; или
вычисляют с помощью SGSN второй ключ шифрования, соответствующий первому ключу шифрования, первому указанию типа алгоритма и идентификатору выбранного алгоритма шифрования, и вычисляют с помощью SGSN второй ключ целостности, соответствующий первому ключу целостности, второму указанию типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
используют с помощью SGSN первый ключ шифрования или первый заданный бит первого ключа шифрования в качестве второго ключа шифрования, и используют с помощью SGSN первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на первый случай или на третий или четвертый возможный способ осуществления первого случая, в пятом возможном способе осуществления
вектор аутентификации является пятиразрядным байтом вектора аутентификации; и
первый ключ шифрования является ключом шифрования (ciphering key, CK) в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом целостности (integrity key IK) в пятиразрядном байте вектора аутентификации.
Со ссылкой на пятый возможный способ осуществления первого случая, в шестом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Второй случай вариантов осуществления настоящей заявки раскрывает способ улучшения ключа системы GPRS, где упомянутый способ может содержать этапы, на которых
передают с помощью UE сообщение запроса на SGSN;
принимают с помощью UE алгоритм шифрования и алгоритм целостности, передаваемые от SGSN; и
приобретают с помощью UE второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, при этом
второй ключ шифрования и алгоритм шифрования используют для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используют для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на второй случай, в первом возможном способе осуществления сообщение запроса, переданное от UE к SGSN содержит информацию указания типа UE, где информация указания типа UE используется для указания, что UE является UE первого типа.
Со ссылкой на второй случай или первый возможный способ осуществления, во втором возможном вырианте осуществления, приобретение с помощью UE второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью UE промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью UE второй ключ шифрования, соответствующий промежуточному ключу и характеристической строке шифрования, и вычисляют с помощью UE второй ключ целостности, соответствующий промежуточному ключу и характеристической строке целостности; или
вычисляют с помощью UE промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью UE второй ключ шифрования, соответствующий промежуточному ключу, первого указания типа алгоритма и идентификатору алгоритма шифрования, и вычисляют с помощью UE второй ключ целостности, соответствующий промежуточному ключу, второго указания типа алгоритма и идентификатору алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на второй случай или на первый возможный способ осуществления второго случая, в третьем возможном способе осуществления вычисление с помощью UE второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью UE промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности; и используют с помощью UE первый заданный бит промежуточного ключа в качестве второго ключа шифрования, и используют второй заданный бит промежуточного ключа в качестве второго ключа целостности; или
вычисляют с помощью UE второй ключ шифрования, соответствующий первому ключу шифрования, первому указанию типа алгоритма и идентификатору алгоритма шифрования, и вычисляют с помощью UE второй ключ целостности, соответствующий первому ключу целостности, второму указанию типа алгоритма и идентификатору алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
используют с помощью UE первый ключ шифрования или первый заданный бит первого ключа шифрования в качестве второго ключа шифрования, и используют с помощью UE первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на второй вариант или на третий возможный способ осуществления второго случая, в четвертом возможном способе осуществления первый ключ шифрования является ключом шифрования CK в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом целостности IK в пятиразрядном байте вектора аутентификации.
Со ссылкой на четвертый возможный способ осуществления второго случая, в пятом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Третий случай настоящей заявки раскрывает способ улучшения ключа системы GPRS, где упомянутый способ может содержать этапы, на которых:
принимают с помощью HLR/HSS идентификатор оборудования пользователя UE, переданный от SGSN;
определяют с помощью HLR/HSS, соответствующего идентификатору UE, что UE является UE первого типа; и
передают с помощью HLR/HSS информацию указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Четвертый случай настоящей заявки раскрывает устройство SGSN, где упомянутый устройство содержит:
приемный модуль, выполненный с возможностью приема сообщения запроса, переданного от UE;
модуль приобретения, выполненный с возможностью приобретения вектора аутентификации от HLR/HSS, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности;
модуль выбора, выполненный с возможностью выбора для UE алгоритма шифрования и алгоритма целостности и передачи на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, когда SGSN определяет, что UE является UE первого типа; и
модуль получения, выполненный с возможностью получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, где
второй ключ шифрования и выбранный алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на четвертый случай, в первом возможном способе осуществления сообщение запроса содержит идентификатор UE и устройство SGSN дополнительно содержит:
передающий модуль, выполненный с возможностью передачи идентификатора UE на HLR/HSS, с тем, чтобы HLR/HSS определила в соответствии с идентификатором UE, является ли UE оборудованием пользователя UE первого типа, и передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа; и
первый модуль определения, выполненный с возможностью приема информации указания типа UE, переданной от HLR/HSS, и определения, что UE является UE первого типа.
Со ссылкой на четвертый случай, во втором возможном способе осуществления устройство SGSN дополнительно содержит:
второй модуль определения, выполненный с возможностью определения, что UE является UE первого типа, где информация указания типа UE используется для указания, что UE является UE первого типа, когда сообщение запроса содержит информацию указания типа UE.
Со ссылкой на четвертый случай или на первый или второй возможный способ осуществления четвертого случая, в третьем возможном способе осуществления модуль получения содержит первый вычислительный блок, второй вычислительный блок и третий вычислительный блок, где
первый вычислительный блок выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, второй вычислительный блок выполнен с возможностью вычисления промежуточного ключа и характеристической строки шифрования, и третий вычислительный блок выполнен с возможностью вычисления второго ключа целостности, соответствующего промежуточному ключу и характеристической строке целостности; или
первый вычислительный блок выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, второй вычислительный блок выполнен с возможностью вычисления промежуточного ключа, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования, и третий вычислительный блок выполнен с возможностью вычисления второго ключа целостности, соответствующего промежуточному ключу, второго указания типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на четвертый случай или на первый или второй возможный способ осуществления четвертого случая, в четвертом возможном способе осуществления
модуль получения конкретно выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и использования первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использования второго заданного бита промежуточного ключа в качестве второго ключа целостности; или
модуль получения содержит четвертый вычислительный блок, выполненный с возможностью вычисления второго ключа шифрования, соответствующего первому ключу шифрования, первому указанию типа алгоритма и идентификатору выбранного алгоритма шифрования, и пятый вычислительный блок, выполненный с возможностью вычисления второго ключа целостности, соответствующего первому ключу целостности, второму указанию типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
модуль получения конкретно выполнен с возможностью использования первого ключа шифрования в векторе аутентификации или заданного бита первого ключа шифрования в качестве второго ключа шифрования, и использования первого ключа целостности в векторе аутентификации или заданного бита первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на третий или четвертый возможный способ осуществления четвертого случая, в пятом возможном способе осуществления
вектор аутентификации является пятиразрядным байтом вектора аутентификации; и
первый ключ шифрования является ключом шифрования (ciphering key, CK) в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом целостности (integrity key IK) в пятиразрядном байте вектора аутентификации.
Со ссылкой на пятый возможный способ осуществления четвертого случая, в шестом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Пятый случай настоящей заявки раскрывает машиночитаемый носитель для хранения данных, где на машиночитаемом носителе для хранения данных хранится программа и когда программа работает, то выполняются этапы, описанные в первом варианте или в первом-шестом возможных способах осуществления первого случая.
Шестой случай настоящей заявки обеспечивает устройство SGSN, где упомянутое устройство может содержать приемное устройство, передающее устройство и процессор, причем приемное устройство, передающее устройство и процессор соединяются, используя шину;
приемное устройство выполнено с возможностью приема сообщения запроса, переданного от UE;
процессор выполнен с возможностью:
приобретения от HLR/HSS вектора аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности;
выбора алгоритма шифрования и алгоритма целостности для UE, когда SGSN определяет, что UE является UE первого типа; и
получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности; и
передающее устройство выполнено с возможностью передачи на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, где
второй ключ шифрования и выбранный алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на шестой случай, в первом возможном способе осуществления сообщение запроса содержит идентификатор UE;
передающее устройство дополнительно выполнено с возможностью передачи идентификатора UE на HLR/HSS, с тем, чтобы HLR/HSS определила в соответствии с идентификатором UE, является ли UE оборудованием пользователя UE первого типа, и передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа; и
определения процессором, что UE является UE первого типа, содержит этапы, на которых принимают с помощью процессора информацию указания типа UE, переданную от HLR/HSS, и определения, что UE является UE первого типа.
Со ссылкой на шестой случай, во втором возможном способе осуществления определение процессором, что UE является UE первого типа, содержит этап, на котором:
если сообщение запроса содержит информацию указания типа UE, с помощью процессора определяют, что UE является UE первого типа, где информация указания типа UE используется для указания, что UE является UE первого типа.
Со ссылкой на шестой случай или на первый или второй возможный способ осуществления шестого случая, в третьем возможном способе осуществления получение процессором второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью процессора промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью процессора второй ключ шифрования, соответствующий промежуточному ключу и характеристической строке шифрования, и вычисляют с помощью процессора второй ключ целостности, соответствующи промежуточному ключу и характеристической строке целостности; или
вычисляют с помощью процессора промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности, вычисляют с помощью процессора второй ключ шифрования, соответствующий промежуточному ключу, первому указанию типа алгоритма и идентификатору выбранного алгоритма шифрования, и вычисляют с помощью процессора второй ключ целостности, соответствующий промежуточному ключу, второму указанию типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на шестой случай или на первый или второй возможный способ осуществления шестого случая, в четвертом возможном способе осуществления получение процессором второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью процессора промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности; и используют с помощью процессора первый заданный бит промежуточного ключа в качестве второго ключа шифрования, и используют второй заданный бит промежуточного ключа в качестве второго ключа целостности; или
вычисляют с помощью процессора второй ключ шифрования, соответствующий первому ключу шифрования в векторе аутентификации, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования, и вычисляют с помощью процессора второй ключ целостности, соответствующий первому ключу целостности в векторе аутентификации, второго указания типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
используют с помощью процессора первый ключ шифрования или заданный бит первого ключа шифрования в качестве второго ключа шифрования, и используют с помощью процессора первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на третий или четвертый возможный способ осуществления шестого случая, в пятом возможном способе осуществления
вектор аутентификации является пятиразрядным байтом вектора аутентификации; и
первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
Со ссылкой на пятый возможный способ осуществления шестого случая, в шестом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Седьмой случай настоящей заявки раскрывает UE, где UE может содержать:
передающий модуль, выполненный с возможностью передачи сообщения запроса на SGSN;
приемный модуль, выполненный с возможностью приема алгоритма шифрования и алгоритма целостности, посылаемых от SGSN; и
модуль приобретения, выполненный с возможностью приобретения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, причем
второй ключ шифрования и алгоритм шифрования используют для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности используют для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на седьмой случай, в первом возможном способе осуществления сообщение запроса, переданное от UE на SGSN содержит информацию указания типа UE, где информация указания типа UE используется для указания, что UE является UE первого типа.
Со ссылкой на седьмой случай или на первый возможный способ осуществления седьмого случая, во втором возможном способе осуществления модуль приобретения содержит первый вычислительный блок, второй вычислительный блок и третий вычислительный блок, где
первый вычислительный блок выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, второй вычислительный блок выполнен с возможностью вычисления промежуточного ключа и характеристической строки шифрования, и третий вычислительный блок выполнен с возможностью вычисления второго ключа целостности, соответствующего промежуточному ключу и характеристической строке целостности; или
первый вычислительный блок выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, второй вычислительный блок выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, первому указанию типа алгоритма и идентификатору алгоритма шифрования, и третий вычислительный блок выполнен с возможностью вычисления второго ключа целостности, соответствующего промежуточному ключу, второму указанию типа алгоритма и идентификатору алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на седьмой случай или на первый возможный способ осуществления седьмого случая, в третьем возможном способе осуществления
модуль приобретения конкретно выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и использования первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использования второго заданного бита промежуточного ключа в качестве второго ключа целостности; или
вычислительный модуль содержит четвертый вычислительный блок, выполненный с возможностью вычисления второго ключа шифрования, соответствующего первому ключу шифрования, первому указанию типа алгоритма и идентификатору выбранного алгоритма шифрования, и пятый вычислительный блок, выполненный с возможностью вычисления второго ключа целостности, соответствующего первому ключу целостности, второму указанию типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
модуль приобретения конкретно выполнен с возможностью использования первого ключа шифрования или заданного бита первого ключа шифрования в качестве второго ключа шифрования и использования первого ключа целостности или заданного бита первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на второй или третий возможный способ осуществления седьмого случая, в четвертом возможном способе осуществления первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
Со ссылкой на четвертый возможный способ осуществления седьмого случая, в пятом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Восьмой случай настоящей заявки раскрывает машиночитаемый носитель для хранения данных, где на машиночитаемом носителе для хранения данных хранится программа и когда программа работает, то выполняются этапы, описанные во втором случае или в первом-пятом возможных способах осуществления второго случая.
Девятый случай настоящей заявки раскрывает UE, где UE может содержать передающее устройство, приемное устройство и процессор, где передающее устройство, приемное устройство и процессор соединяются, используя шину;
передающий модуль выполнен с возможностью передачи сообщения запроса на SGSN;
приемный модуль выполнен с возможностью приема алгоритма шифрования и алгоритма целостности, которые передаются от SGSN; и
процессор выполнен с возможностью получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, где
второй ключ шифрования и алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на девятый случай, в первом возможном способе осуществления сообщение запроса, переданное передающим устройством на SGSN, содержит информацию указания типа UE, где информация указания типа UE используется для указания, что UE является UE первого типа.
Со ссылкой на девятый случай или на первый возможный способ осуществления девятого случая, во втором возможном способе осуществления получение процессором второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит:
вычисление с помощью процессора промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, вычисление с помощью процессора второго ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования, и вычисление с помощью процессора второго ключа целостности, соответствующего промежуточному ключу и характеристической строке целостности; или
вычисление с помощью процессора промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности, вычисление с помощью процессора второго ключа шифрования, соответствующего промежуточному ключу, первому указанию типа алгоритма и идентификатору алгоритма шифрования, и вычисление с помощью процессора второго ключа целостности, соответствующего промежуточному ключу, второму указанию типа алгоритма и идентификатору алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
Со ссылкой на девятый случай или на первый возможный способ осуществления девятого случая, в третьем возможном способе осуществления получение процессором второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит:
вычисление с помощью процессора промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и использование с помощью процессора первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использование второго заданного бита промежуточного ключа в качестве второго ключа целостности; или
вычисление с помощью процессора второго ключа шифрования, соответствующего первому ключу шифрования, первого указания типа алгоритма и идентификатору алгоритма шифрования, и вычисление с помощью процессора второго ключа целостности, соответствующего первому ключу целостности, второму указанию типа алгоритма и идентификатору алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
использование с помощью процессора первого ключа шифрования или заданного бита первого ключа шифрования в качестве второго ключа шифрования и использование с помощью процессора первого ключа целостности или заданного бита первого ключа целостности в качестве второго ключа целостности.
Со ссылкой на второй или третий возможный способ осуществления девятого случая, в четвертом возможном способе осуществления первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
Со ссылкой на четвертый возможный способ осуществления девятого случая, в пятом возможном способе осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
Десятый случай настоящей заявки раскрывает HLR/HSS, где упомянутый HLR/HSS может содержать:
приемный модуль, выполненный с возможностью приема идентификатора оборудования UE, который передается узлом обслуживания абонентов GPRS (serving GPRS support node, SGSN);
модуль определения, выполненный с возможностью определения в соответствии с идентификатором UE, что UE является UE первого типа; и
передающий модуль, выполненный с возможностью передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Одиннадцатый случай настоящей заявки раскрывает компьютерный носитель для хранения данных, где на компьютерном носителе для хранения данных хранится программа и когда программа работает, то выполняются этапы, описанные в третьем случае настоящей заявки.
Двенадцатый случай настоящей заявки раскрывает HLR/HSS, где HLR/HSS может содержать передающее устройство, приемное устройство и процессор, причем передающее устройство, приемное устройство и процессор соединяются, используя шину;
приемное устройство выполнено с возможностью приема идентификатора оборудования пользователя UE, который передается узлом SGSN обслуживания абонентов GPRS;
процессор выполнен с возможностью определения в соответствии с идентификатором UE, что UE является UE первого типа; и
передающее устройство выполнено с возможностью передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Тринадцатый случай настоящей заявки раскрывает систему GPRS, где система GPRS содержит устройство SGSN узла обслуживания абонентов GPRS, оборудование пользователя UE и регистр собственных абонентов (home location register, HLR)/сервер приписки собственных абонентов (home subscription system, HSS), где
устройство SGSN выполнено с возможностью приема сообщения запроса, переданного от UE, получения вектора аутентификации от HLR/HSS, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности, если SGSN определяет, что UE является UE первого типа, выбора алгоритма шифрования и алгоритма целостности для UE, передачи выбранного алгоритма шифрования и выбранного алгоритма целостности на UE, и получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности; и
UE выполнено с возможностью передачи сообщения запроса на SGSN, приема алгоритма шифрования и алгоритма целостности, когда они передаются от SGSN, и приобретения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, где
второй ключ шифрования и алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Со ссылкой на тринадцатый случай, в первом возможном способе осуществления HLR/HSS выполнена с возможностью:
приема идентификатора UE, посланного от SGSN;
определения в соответствии с идентификатором UE, что UE является UE первого типа; и
передачи информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
В вариантах осуществления настоящей заявки SGSN принимает сообщение запроса, переданное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, получает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
Краткое описание чертежей
Для более ясного описания технических решений в настоящей заявке ниже кратко представляются сопроводительные чертежи для описания вариантов осуществления. Очевидно, что сопроводительные чертежи в последующем описании представляют просто некоторые варианты осуществления настоящей заявки и специалисты в данной области техники, не прилагая творческих усилий, могут из этих сопроводительных чертежей дополнительно создать другие чертежи.
Фиг. 1 – схематичная блок-схема последовательности выполнения операций варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 2 – схематичная блок-схема последовательности выполнения операций другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 3 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 4 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 5 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 6 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 7 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 8 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 9 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 10 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 11 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 12 – схематичная блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке;
Фиг. 13 – схематичная структурная схема варианта осуществления устройства SGSN, соответствующего настоящей заявке;
Фиг. 14 – схематичная структурная схема варианта осуществления модуля получения устройства SGSN, соответствующего настоящей заявке;
Фиг. 15 – схематичная структурная схема другого варианта осуществления модуля получения устройства SGSN, соответствующего настоящей заявке;
Фиг. 16 – схематичная структурная схема другого варианта осуществления устройства SGSN, соответствующего настоящей заявке;
Фиг. 17 – схематичная структурная схема варианта осуществления UE, соответствующего настоящей заявке;
Фиг. 18 – схематичная структурная схема варианта осуществления модуля приобретения UE, соответствующего настоящей заявке;
Фиг. 19 – схематичная структурная схема другого варианта осуществления модуля приобретения UE, соответствующего настоящей заявке;
Фиг. 20 – схематичная структурная схема другого варианта осуществления UE, соответствующего настоящей заявке;
Фиг. 21 – схематичная структурная схема варианта осуществления HLR/HSS, соответствующей настоящей заявке;
Фиг. 22 – схематичная структурная схема другого варианта осуществления HLR/HSS, соответствующей настоящей заявке;
Фиг. 23 – схематичная структурная схема варианта осуществления системы GPRS, соответствующей настоящей заявке.
Осуществление изобретения
Ниже технические решения ясно и полностью описаны в вариантах осуществления настоящей заявки со ссылкой на сопроводительные чертежи в вариантах осуществления настоящей заявки. Очевидно, что описанные варианты осуществления являются лишь некоторыми, но не всеми вариантами осуществления настоящей заявки. Все другие варианты осуществления, без творческих усилий полученные специалистами в данной области техники, основываясь на вариантах осуществления настоящей заявки, будут попадать в рамки объема защиты настоящей заявки.
Настоящая заявка обеспечивает способ улучшения ключа системы GPRS, устройство SGSN, UE, HLR/HSS и систему GPRS, которые могут улучшить ключ при связи между SGSN и UE и обеспечить защиту с помощью шифрования и защиту целостности для связи между SGSN и UE. В дальнейшем описания приводятся со ссылкой на сопроводительные чертежи.
На фиг. 1 схематично представлена блок-схема последовательности выполнения операций варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 1, способ может содержать следующие этапы:
S101. SGSN принимает сообщение запроса, переданное от UE.
При конкретном осуществлении сообщение запроса, посланное от UE на SGSN (Serving GPRS Support Node, узел обслуживания сети GPRS), может быть сообщением запроса присоединения, сообщением обновления маршрута или другим сообщением, например, сообщением запроса обслуживания. После приема сообщения запроса, посланного от UE, SGSN может приобрести идентификатор UE, которое посылает сообщение запроса. Если UE является UE первого типа, сообщение запроса может нести информацию указания типа UE.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM. UE первого типа может быть UE Интернета вещей (Internet of Things UE), UE для связи "машина-машина" (Machine To Machine, M2M) или другим высокозащищенным UE. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи данных, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или перевода денежных средств. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т. п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
S102. SGSN приобретает от HLR/HSS вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
Регистр собственных абонентов (home location register, HLR), является постоянной базой данных системы GPRS и хранит информацию, требующуюся для управления связью множества мобильных пользователей, и содержит статическую информацию, такую как идентификационная информация, сервисная информация и сервисная авторизация, которые относятся к зарегистрированному мобильному пользователю, и динамическую информацию, такую как информация о местоположении пользователя. Система приписки собственных абонентов HSS (Home Subscription System, HSS) является развитием и обновлением HLR и ответственна, главным образом, за управление абонентскими данными пользователя и информацией о местоположении мобильного пользователя. Поскольку HSS и HLR имеют схожую функцию в сети и многочисленные данные, хранящиеся в HSS, обычно повторно сохраняются в HLR, устройство конвергенции HSS и HLR представляется наружу. В этом варианте осуществления настоящей заявки HLR/HSS может быть устройством HLR, устройством HSS или устройством конвергенции HLR и HSS.
В этом варианте осуществления настоящей заявки вектор аутентификации, приобретенный SGSN от HLR/HSS, является пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности.
В этом варианте осуществления настоящей заявки первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
S103. Если определено, что UE является UE первого типа, SGSN выбирает для UE алгоритм шифрования и алгоритм целостности и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE.
В некоторых реально выполнимых способах осуществления SGSN может посылать на HLR/HSS идентификатор UE. HLR/HSS определяет в соответствии с идентификатором UE, является ли UE оборудованием пользователя UE первого типа. Если принимают информацию указания типа UE, посланную от HLR/HSS, SGSN может определить в соответствии с информацией указания типа UE, что UE является UE первого типа.
В некоторых других реально выполнимых способах реализации, если сообщение запроса, которое посылается от UE на SGSN, несет информацию указания типа UE, SGSN может определить, что UE является UE первого типа.
Как вариант, информация указания типа UE в соответствии с существованием конкретного информационного элемента (Information Element, IE) может указывать, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
При конкретном осуществлении SGSN может сначала приобрести от HLR/HSS вектор аутентификации и затем определить, что UE является UE первого типа, или может сначала определить, что UE является UE первого типа, и затем приобрести от HLR/HSS вектор аутентификации.
При конкретном осуществлении конфигурация UE и SGSN выполняется раздельно с помощью некоторых алгоритмов шифрования и алгоритмов целостности. При посылке на SGSN сообщения запроса, UE посылает на SGSN алгоритм шифрования и алгоритм целостности, которые поддерживаются UE. При приеме от UE сообщения запроса SGSN выбирает алгоритм шифрования, поддерживаемый SGSN, и алгоритм целостности, поддерживаемый SGSN, из числа алгоритмов шифрования и алгоритмов целостности, поддерживаемых UE.
В некоторых осуществимых способах осуществления алгоритм шифрования и алгоритм целостности, выбираемые SGSN, могут использоваться вместе с первым ключом шифрования и первым ключом целостности в векторе аутентификации, чтобы вычислить второй ключ шифрования и второй ключ целостности. Кроме того, шифрование может выполняться для сообщения связи, соответствующего алгоритму шифрования, выбранному SGSN, и второй ключ шифрования должен генерировать шифротекста сообщения. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего алгоритму целостности, выбранному SGSN, и второму ключу целостности. Код MAC аутентификации сообщения может использоваться для проверки целостности сообщения связи.
Как вариант, когда сеть GPRS запрашивает 128-битовый второй ключ шифрования, алгоритм шифрования, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EEA1, алгоритм 128-EEA2 или алгоритм 128-EEA3, а алгоритм целостности, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EIA1, алгоритм 128-EIA2 или алгоритм 128-EIA3. Алгоритм SNOW 3G используется в качестве корневого алгоритма для алгоритма 128-EEA1 и алгоритма 128-EIA1. Алгоритм AES используется в качестве корневого алгоритма для алгоритма 128-EEA2 и алгоритма 128-EIA2. Алгоритм ZUC (алгоритм ZUC) используется в качестве корневого алгоритма для алгоритма 128-EEA3 и алгоритма 128-EIA3.
При конкретном осуществлении во время посылки на UE выбранного алгоритма шифрования и выбранного алгоритма целостности SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN, соответствующей характерному признаку AUTN аутентификации, с тем, чтобы сторона UE выполнила аутентификацию на стороне сети, и может дополнительно вычислить первый ключ CK шифрования и первый ключ IK целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому характерному признаку AUTN аутентификации.
Для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть алгоритма шифрования и алгоритма целостности, которые выбираются SGSN), чтобы выполнять шифрование сообщения связи. Поэтому после выбора алгоритма шифрования и алгоритма целостности для SGSN необходимо послать выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после вычисления второго ключа шифрования и второго ключа целостности, соответствующих первому ключу CK шифрования и первому ключу IK целостности, UE выполнило шифрование сообщения связи, используя алгоритм шифрования и алгоритм целостности, являющиеся теми же самыми, которые используются SGSN, второй ключ шифрования и второй ключ целостности.
S104. SGSN получает второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки после выбора алгоритма шифрования и алгоритма целостности SGSN может получить второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности в векторе аутентификации. Второй ключ шифрования и второй ключ целостности являются улучшенными ключами, основанными на первом ключе шифрования и первом ключе целостности, где второй ключ шифрования и алгоритм шифрования, выбранные SGSN, могут использоваться для выполнения с помощью шифрования защиты сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности, выбранные SGSN, могут использоваться для выполнения защиты сообщения, передаваемого между SGSN и UE, с помощью шифрования.
Как вариант, SGSN может получить второй ключ шифрования и второй ключ целостности, соответствующие только первому ключу шифрования и первому ключу целостности, или может получить второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования, первому ключу целостности, выбранному алгоритму шифрования и выбранному алгоритму целостности.
При конкретном осуществлении не существует порядка следования между этапом S104 посылки для UE алгоритма шифрования и алгоритма целостности, которые выбираются SGSN, и этапом S105 вычисления с помощью SGSN второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности в векторе аутентификации.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности для сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 2 схематично представлена блок-схема последовательности выполнения операций другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 2, способ может содержать следующие этапы.
S201. SGSN принимает сообщение запроса, посланное UE.
S202. SGSN приобретает у HLR/HSS вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
S203. Если определено, что UE является UE первого типа, SGSN выбирает алгоритм шифрования и алгоритм целостности для UE.
S204. SGSN передает на UE выбранный алгоритм шифрования и выбранный алгоритм целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S201-S204 обратитесь к этапам S101-S103 в варианте осуществления, показанном на фиг. 1. Подробности здесь не приводятся.
S205. SGSN вычисляет промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности.
В реально выполнимом способе осуществления операция может выполняться для первого ключа шифрования и первого ключа целостности и затем результат операции ипользуется в качестве входного параметра функции деривации ключа (key derivation function, KDF), чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе осуществления промежуточный ключ может напрямую использовать существующий 64-битовый ключ Kc шифрования GPRS или существующий 128-битовый ключ Kc128 шифрования, то есть существующий ключ Kc (64-битовый) шифрования GPRS можно напрямую использовать в качестве промежуточного ключа или существующий ключ Kc128 (128-битовый) можно напрямую использовать в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
S206. SGSN вычисляет второй ключ шифрования, соответствующий промежуточному ключу, или соответствующий промежуточному ключу и характеристической строке шифрования.
При реально выполнимом способе осуществления SGSN может использовать первый заданный бит промежуточного ключа в качестве второго ключа шифрования. Например, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. В другом дополнительном способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа шифрования.
В другом реально выполнимом способе осуществления SGSN может вычислить второй ключ шифрования, соответствующий промежуточному ключу и шифрованию характеристической строки шифрования. При конкретном осуществлении промежуточный ключ и шифрование характеристической строки шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ шифрования может быть получен с помощью вычисления, используя Kcipher=KDF(Km, "ciphering"), где "ciphering" является характеристической строкой шифрования и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
S207. SGSN вычисляет второй ключ целостности, соответствующий промежуточному ключу, или соответствующий промежуточному ключу и характеристической строке целостности.
При реально выполнимом способе осуществления SGSN может использовать второй заданный бит промежуточного ключа в качестве второго ключа шифрования. Например, если система GPRS требует 64-битового второго ключа шифрования, младшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то младшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. В другом дополнительном способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа шифрования.
В другом реально выполнимом способе осуществления SGSN может вычислить второй ключ шифрования, соответствующий промежуточному ключу и целостности характеристической строки целостности. При конкретном осуществлении промежуточный ключ и целостность характеристической строки целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ целостности может быть получен с помощью вычисления, используя Kintegrity=KDF(Km, "integrity"), где "integrity" является характеристической строкой целостности и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления шифрование характеристической строки шифрования и целостность характеристической строки целостности используются для создания вычисленного второго ключа шифрования и вычисленного второго ключа целостности, разных для легкости их различения. Поэтому целостность характеристической строки целостности может быть любой строкой, несовместимой с шифрованием характеристической строки шифрования.
При конкретном осуществлении между этапом S204 посылки для UE алгоритма шифрования и алгоритма целостности, которые выбираются с помощью SGSN, этапом S205 вычисления промежуточного ключа, этапом S206 вычисления второго ключа шифрования и этапом S207 вычисления второго ключа целостности не существует никакого порядка следования.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 3 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 3, способ может содержать следующие этапы.
S301. SGSN принимает сообщение запроса, посланное UE.
S302. SGSN приобретает от HLR/HSS вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
S303. Если определено, что UE является UE первого типа, SGSN выбирает алгоритм шифрования и алгоритм целостности для UE.
S304. SGSN посылает на UE выбранный алгоритм шифрования и выбранный алгоритм целостности.
S305. SGSN вычисляет промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S301-S305 обратитесь к этапам S201-S205 в варианте осуществления, показанном на фиг. 2. Подробности здесь не приводятся.
S306. SGSN вычисляет второй ключ шифрования, соответствующий промежуточному ключу, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
При конкретном осуществлении промежуточный ключ, первое указание типа алгоритма и идентификатор выбранного алгоритма шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ Kcipher шифрования может быть получен путем вычисления, используя Kcipher=KDF(Km, algorithm type distinguisher1, ciphering algorithm id), где Km – промежуточный ключ, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
S307. SGSN вычисляет второй ключ целостности, соответствующий промежуточному ключу, второго указания типа алгоритма и идентификатору выбранного алгоритма целостности.
При конкретном осуществлении промежуточный ключ, второе указание типа алгоритма и идентификатор выбранного алгоритма целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ Kintegrity целостности может быть получен путем вычисления, используя Kintegrity=KDF(Km, algorithm type distinguisher2, integrity algorithm id), где Km – промежуточный ключ, algorithm type distinguisher2 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве индикатора алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения IE в первого указания типа алгоритма и во второго указания типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
При конкретном осуществлении между этапом S304 посылки для UE алгоритма шифрования и алгоритма целостности, которые выбираются с помощью SGSN, этапом S305 вычисления промежуточного ключа, этапом S306 вычисления второго ключа шифрования и этапом S307 вычисления второго ключа целостности не существует никакого порядка следования.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы UE вычислило второй ключ шифрования и второй ключ целостности и выполнило защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования и второй ключ целостности. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 4 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 4, способ может содержать следующие этапы.
S401. SGSN принимает сообщение запроса, посланное UE.
S402. SGSN получает от HLR/HSS вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S401 и S402 обратитесь к этапам S101 и S1023 в варианте осуществления, показанном на фиг. 1. Подробности здесь не приводятся.
S403. SGSN определяет, что UE является UE первого типа.
В некоторых реально выполнимых способах осуществления SGSN может посылать на HLR/HSS идентификатор UE. HLR/HSS определяет в соответствии с идентификатором UE, является ли UE оборудованием пользователя UE первого типа. При приеме информации указания типа UE, посланной от HLR/HSS, SGSN может определить в соответствии с информацией указания типа UE, что UE является UE первого типа.
В некоторых других реально выполнимых способах реализации, если сообщение запроса, которое посылается от UE на SGSN, несет информацию указания типа UE, SGSN может определить, что UE является UE первого типа.
Как вариант, SGSN может определить в соответствии с существованием или несуществованием конкретного информационного элемента (Information Element, IE) в информации указания типа UE, что UE является UE первого типа. Например, когда информация указания типа UE содержит вышеупомянутый конкретный IE, SGSN может определить, что UE является UE первого типа; когда информация указания типа UE не содержит вышеупомянутый конкретный IE, SGSN может определить, что UE не является UE первого типа. Альтернативно, SGSN может определить, используя контент данных IE в информации указания типа UE, является ли UE оборудованием пользователя UE первого типа. Например, когда контент данных вышеупомянутого IE равен 1, SGSN может определить, что UE является UE первого типа; когда контент данных вышеупомянутого IE равен 0, SGSN может определить, что UE не является UE первого типа.
При конкретном осуществлении SGSN может сначала приобрести от HLR/HSS вектор аутентификации и затем определить, что UE является UE первого типа, или может сначала определить, что UE является UE первого типа, и затем приобрести от HLR/HSS вектор аутентификации.
S404. SGSN выбирает для UE алгоритм шифрования и алгоритм целостности.
При конкретном осуществлении конфигурация UE и SGSN выполняется раздельно с помощью некоторых алгоритмов шифрования и алгоритмов целостности. При посылке на SGSN сообщения запроса, UE посылает на SGSN алгоритм шифрования и алгоритм целостности, которые поддерживаются UE. При приеме от UE сообщения запроса SGSN выбирает алгоритм шифрования, поддерживаемый SGSN, и алгоритм целостности, поддерживаемый SGSN, из числа алгоритмов шифрования и алгоритмов целостности, поддерживаемых UE.
В этом варианте осуществления настоящей заявки алгоритм шифрования и алгоритм целостности, выбираемые SGSN, могут использоваться вместе с первым ключом шифрования и первым ключом целостности в векторе аутентификации, чтобы вычислить второй ключ шифрования и второй ключ целостности. Кроме того, шифрование может выполняться для сообщения связи, соответствующего алгоритму шифрования, выбранному SGSN, и генерированным вторым ключом шифрования, чтобы сформировать шифротекст сообщения. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего алгоритму целостности, выбранному SGSN, и сгенерированному второму ключу целостности. Код MAC аутентификации сообщения не может использоваться для проверки целостности сообщения связи.
Как вариант, когда сеть GPRS запрашивает 128-битовый второй ключ шифрования, алгоритм шифрования, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EEA1, алгоритм 128-EEA2 или алгоритм 128-EEA3, а алгоритм целостности, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EIA1, алгоритм 128-EIA2 или алгоритм 128-EIA3. Алгоритм SNOW 3G используется в качестве корневого алгоритма для алгоритма 128-EEA1 и алгоритма 128-EIA1. Алгоритм AES используется в качестве корневого алгоритма для алгоритма 128-EEA2 и алгоритма 128-EIA2. Алгоритм ZUC (алгоритм ZUC) используется в качестве корневого алгоритма для алгоритма 128-EEA3 и алгоритма 128-EIA3.
S405. SGSN вычисляет второй ключ шифрования, соответствующий первому ключу шифрования, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
Конкретно, SGSN может использовать первый ключ шифрования, первую индикацию типа алгоритма и идентификатор выбранного алгоритма шифрования в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, Kcipher=KDF(CK, algorithm type distinguisher1, ciphering algorithm id), где CK – первый ключ шифрования, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kcipher в качестве второго ключа шифрования.
S406. SGSN вычисляет второй ключ целостности, соответствующий первому ключу целостности, второго указания типа алгоритма и идентификатору выбранного алгоритма целостности.
Конкретно, SGSN может использовать первый ключ IK целостности, первое указание типа алгоритма algorithm type distinguisher2 и идентификатор выбранного алгоритма целостности integrity algorithm id в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, Kintegrity=KDF(IK, algorithm type distinguisher2, integrity algorithm id), где IK – первый ключ целостности, algorithm type distinguisher1 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа целостности, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kintegrity в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа целостности, то старшие 128 битов могут быть выбраны из вычисленного Kintegrity в качестве второго ключа целостности. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kintegrity в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указания алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения первого указания типа алгоритма и второго указания типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
S407. SGSN посылает на UE выбранный алгоритм шифрования и выбранный алгоритм целостности.
При конкретном осуществлении, при посылке на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN, соответствующей характерному признаку AUTN аутентификации, то есть, сторона UE выполняет аутентификацию на стороне сети и может дополнительно вычислить первый ключ CK шифрования и первый ключ IK целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому признаку AUTN аутентификации.
При конкретном осуществлении между этапом S407 посылки для UE алгоритма шифрования и алгоритма целостности, которые выбираются с помощью SGSN, этапом S405 вычисления второго ключа шифрования и этапом S406 вычисления второго ключа целостности не существует никакого порядка следования.
Для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть алгоритма шифрования и алгоритма целостности, которые выбираются SGSN), чтобы выполнять шифрование сообщения связи. Поэтому после выбора алгоритма шифрования и алгоритма целостности для SGSN необходимо послать выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после вычисления второго ключа шифрования и второго ключа целостности, соответствующих первому ключу CK шифрования и первому ключу IK целостности, UE выполнило шифрование сообщения связи, используя алгоритм шифрования и алгоритм целостности, являющиеся теми же самыми, которые используются SGSN, второй ключ шифрования и второй ключ целостности.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, переданное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы UE вычислило второй ключ шифрования и второй ключ целостности и выполнило защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования и второй ключ целостности. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 5 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 5, способ может содержать следующие этапы.
S501. SGSN принимает сообщение запроса, посланное UE.
S502. SGSN получает от HLR/HSS вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S501 и S502 обратитесь к этапам S101 и S1023 в варианте осуществления, показанном на фиг. 1. Подробности здесь не приводятся.
S503. SGSN определяет, что UE является UE первого типа.
S504. SGSN выбирает для UE алгоритм шифрования и алгоритм целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S503 и S504 обратитесь к этапам S303 и S304 в варианте осуществления, показанном на фиг. 3. Подробности здесь не приводятся.
S505. SGSN использует первый ключ шифрования или заданный бит первого ключа шифрования в качестве второго ключа шифрования.
В некоторых реально выполнимых способах осуществления, если первый ключ шифрования является 128-битовым ключом и второй ключ шифрования, требуемый системой GPRS, также является 128-битовым ключом, первый ключ шифрования может использоваться напрямую в качестве второго ключа шифрования. Если второй ключ шифрования, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа шифрования в качестве второго ключа шифрования. Например, в качестве второго ключа шифрования выбираются старшие 64 бита.
S506. SGSN использует первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
В некоторых реально выполнимых способах осуществления, если первый ключ целостности является 128-битовым ключом и второй ключ целостности, требуемый системой GPRS, также является 128-битовым ключом, первый ключ целостности может использоваться напрямую в качестве второго ключа целостности. Если второй ключ целостности, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа целостности в качестве второго ключа целостности. Например, в качестве второго ключа целостности выбираются старшие 64 бита.
В этом варианте осуществления настоящей заявки шифрование может выполняться для сообщения связи, соответствующего второму ключу шифрования и алгоритму шифрования, выбранному SGSN, чтобы генерировать шифротекст сообщения. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего второму ключу целостности и алгоритму целостности, выбранному SGSN. Код MAC аутентификации сообщения не может использоваться для верификации целостности сообщения связи.
S507. SGSN посылает на UE выбранный алгоритм шифрования и выбранный алгоритм целостности.
При конкретном осуществлении, при посылке на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN, соответствующей признаку AUTN аутентификации, то есть сторона UE выполняет аутентификацию на стороне сети и может дополнительно вычислить первый ключ CK шифрования и первый ключ IK целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому характерному признаку AUTN аутентификации.
При конкретном осуществлении между этапом S507 посылки для UE алгоритма шифрования и алгоритма целостности, которые выбираются с помощью SGSN, этапом S505 и этапом S506 не существует никакого порядка следования.
Для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть алгоритма шифрования и алгоритма целостности, которые выбираются SGSN), чтобы выполнять шифрование сообщения связи. Поэтому  после выбора алгоритма шифрования и алгоритма целостности для SGSN необходимо послать выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после вычисления второго ключа шифрования и второго ключа целостности, соответствующих первому ключу CK шифрования и первому ключу IK целостности, UE выполнило шифрование сообщения связи, используя алгоритм шифрования и алгоритм целостности, являющиеся теми же самыми, которые используются SGSN, второй ключ шифрования и второй ключ целостности.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 6 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 6, способ может содержать следующие этапы.
S601. UE посылает сообщение запроса на SGSN.
При конкретном осуществлении сообщение запроса, посланное от UE на SGSN, может быть сообщением запроса присоединения, сообщением обновления маршрута или другим сообщением, например, сообщением запроса обслуживания. После приема сообщения запроса, посланного от UE, SGSN может приобрести идентификатор UE, которое посылает сообщение запроса. Если UE является UE первого типа, сообщение запроса может нести информацию указания типа UE.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM. UE первого типа может содержать UE Интернета вещей (Internet of Things UE), UE для связи "машина-машина" (Machine To Machine, M2M) или другое высокозащищенное UE. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи данных, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или перевода денежных средств. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т. п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
В этом варианте осуществления настоящей заявки для описания используется пример, в котором UE является UE первого типа. В некоторых других реально выполнимых способах реализации, сообщение запроса, которое посылается от UE на SGSN, может содержать информацию указания типа UE, так что SGSN в соответствии с информацией указания типа UE определяет, что UE является UE первого типа.
Как вариант, информация указания типа UE может указывать в соответствии с существованием конкретного информационного элемента (Information Element, IE), что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
При конкретном осуществлении конфигурация UE и SGSN выполняется раздельно с помощью некоторых алгоритмов шифрования и алгоритмов целостности. При посылке на SGSN сообщения запроса, UE посылает на SGSN алгоритм шифрования и алгоритм целостности, которые поддерживаются UE.
S602. UE принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN.
После того, как SGSN принимает от UE сообщение запроса, если определено, что вышеуказанное UE является UE первого типа, SGSN выбирает алгоритм шифрования, поддерживаемый SGSN, и алгоритм целостности, поддерживаемый SGSN, из числа алгоритмов шифрования и алгоритмов целостности, поддерживаемых UE. SGSN посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE и получает второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности в векторе аутентификации.
При конкретном осуществлении, при посылке на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN в соответствии с характерным признаком AUTN аутентификации, так что сторона UE выполняет аутентификацию на стороне сети. UE может дополнительно вычислить первый ключ шифрования и первый ключ целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому характерному признаку AUTN аутентификации. Первый ключ шифрования и первый ключ целостности, которые вычисляются UE, являются такими же, как первый ключ шифрования и первый ключ целостности в векторе аутентификации, который приобретен SGSN от HLR/HSS. Вектор аутентификации, приобретенный SGSN от HLR/HSS, является пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности.
В этом варианте осуществления настоящей заявки первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
В некоторых реально выполнимых способах осуществления алгоритм шифрования и алгоритм целостности, выбираемые SGSN, могут использоваться вместе с первым ключом CK шифрования и первым ключом IK целостности для вычисления второго ключа шифрования и второго ключа целостности. Кроме того, шифрование может выполняться для сообщения связи, соответствующего алгоритму шифрования и генерированному второму ключу шифрования, чтобы сформировать шифротекст сообщения. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего алгоритму целостности и сгенерированному второму ключу целостности. Код MAC аутентификации сообщения не может использоваться для верификации целостности сообщения связи.
Как вариант, когда сеть GPRS запрашивает 128-битовый второй ключ шифрования, алгоритм шифрования, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EEA1, алгоритм 128-EEA2 или алгоритм 128-EEA3, а алгоритм целостности, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EIA1, алгоритм 128-EIA2 или алгоритм 128-EIA3. Алгоритм SNOW 3G используется в качестве корневого алгоритма для алгоритма 128-EEA1 и алгоритма 128-EIA1. Алгоритм AES используется в качестве корневого алгоритма для алгоритма 128-EEA2 и алгоритма 128-EIA2. Алгоритм ZUC (алгоритм ZUC) используется в качестве корневого алгоритма для алгоритма 128-EEA3 и алгоритма 128-EIA3.
S603. UE приобретает второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки, второй ключ шифрования и второй ключ целостности являются улучшенными ключами, основанными на первом ключе шифрования и первом ключе целостности. Второй ключ шифрования и алгоритм шифрования, посланные от SGSN, используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности, посланные от SGSN, используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Как вариант, UE может приобрести второй ключ шифрования и второй ключ целостности, соответствующие только первому ключу шифрования и первому ключу целостности, или может получить второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования, первому ключу целостности и алгоритму шифрования и алгоритму целостности, посланным от SGSN.
После того, как второй ключ шифрования и второй ключ целостности приобретены, для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть алгоритма шифрования и алгоритма целостности, которые посылаются от SGSN), чтобы выполнить шифрование сообщения связи.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 7 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 7, способ может содержать следующие этапы.
S701. UE посылает сообщение запроса на SGSN.
S702. UE принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S701 и S702 обратитесь к этапам S601 и S602 в варианте осуществления, показанном на фиг. 6. Подробности здесь не приводятся.
S703. UE вычисляет промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности.
Когда алгоритм шифрования и алгоритм целостности, посланные от SGSN, приняты, UE дополнительно принимает случайное число RAND и характерный признак AUTN аутентификации, посланные от SGSN. Прежде, чем вычислять промежуточный ключ, сначала может быть вычислен код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, и аутентификация выполняется на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
В реально выполнимом способе осуществления UE может выполнить операцию для первого ключа шифрования и первого ключа целостности и использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе осуществления промежуточный ключ может напрямую использовать существующий 64-битовый ключ Kc шифрования GPRS или существующий 128-битовый ключ Kc128 шифрования, то есть существующий ключ Kc (64-битовый) шифрования GPRS может напрямую использоваться в качестве промежуточного ключа или существующий ключ Kc128 (128-битовый) используется напрямую в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
S704. UE вычисляет второй ключ шифрования, соответствующий промежуточному ключу или соответствующий промежуточному ключу и характеристической строке шифрования.
При реально выполнимом способе осуществления UE может использовать первый заданный бит промежуточного ключа в качестве второго ключа шифрования. Например, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. В другом дополнительном способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа шифрования.
В другом реально выполнимом способе осуществления UE может вычислить второй ключ шифрования, соответствующий промежуточному ключу и шифрованию характеристической строки шифрования. При конкретном осуществлении промежуточный ключ и шифрование характеристической строки шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ шифрования может быть получен с помощью вычисления, используя Kcipher=KDF(Km, "ciphering"), где "ciphering" является характеристической строкой шифрования и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
S705. UE вычисляет второй ключ целостности, соответствующий промежуточному ключу или соответствующий промежуточному ключу и характеристической строке целостности.
При реально выполнимом способе осуществления UE может использовать второй заданный бит промежуточного ключа в качестве второго ключа целостности. Например, если система GPRS требует 64-битового второго ключа шифрования, младшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то младшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. Как вариант, требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа целостности.
В другом дополнительном способе осуществления UE может вычислить второй ключ целостности, соответствующий промежуточному ключу и целостности характеристической строки целостности. При конкретном осуществлении промежуточный ключ и целостность характеристической строки целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ целостности может быть получен с помощью вычисления, используя Kintegrity=KDF(Km, "integrity"), где "integrity" является характеристической строкой целостности и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления шифрование характеристической строки шифрования и целостность характеристической строки целостности используются для создания вычисленного второго ключа шифрования и вычисленного второго ключа целостности, различных для легкости их различения. Поэтому целостность характеристической строки целостности может быть любой строкой, несовместимой с шифрованием характеристической строки шифрования.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 8 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 8, способ может содержать следующие этапы.
S801. UE посылает сообщение запроса на SGSN.
S802. UE принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN.
S803. UE вычисляет промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S801-S803 обратитесь к этапам S701-S703 в варианте осуществления, показанном на фиг. 7. Подробности здесь не приводятся.
S804. UE вычисляет второй ключ шифрования, соответствующий промежуточному ключу, первого указания типа алгоритма и идентификатору алгоритма шифрования.
При конкретном осуществлении промежуточный ключ, первое указание типа алгоритма и идентификатор алгоритма шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ Kcipher шифрования может быть получен путем вычисления, используя Kcipher=KDF(Km, algorithm type distinguisher1, ciphering algorithm id), где Km – промежуточный ключ, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
S805. UE вычисляет второй ключ целостности, соответствующий промежуточному ключу, второму указанию типа алгоритма и идентификатору алгоритма целостности.
При конкретном осуществлении промежуточный ключ, второе указание типа алгоритма и идентификатор выбранного алгоритма целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ Kintegrity целостности может быть получен путем вычисления, используя Kintegrity=KDF(Km, algorithm type distinguisher2, integrity algorithm id), где Km – промежуточный ключ, algorithm type distinguisher2 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различают, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указания алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения IE в первом указании типа алгоритма и во втором указании типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN, и получает второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 9 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 9, способ может содержать следующие этапы.
S901. UE посылает сообщение запроса на SGSN.
S902. UE принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S901 и S902 обратитесь к этапам S601 и S602 в варианте осуществления, показанном на фиг. 6. Подробности здесь не приводятся.
S903. UE вычисляет второй ключ шифрования, соответствующий первому ключу шифрования, первому указанию типа алгоритма и идентификатору алгоритма шифрования.
Когда алгоритм шифрования и алгоритм целостности, посланные от SGSN, приняты, UE дополнительно принимает случайное число RAND и характерный признак AUTN аутентификации, посланные от SGSN. Прежде, чем вычислять второй ключ шифрования или второй ключ целостности, UE может сначала вычислить код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, и выполнить аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN аутентификации, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
Конкретно, UE может использовать первый ключ шифрования, первую индикацию типа алгоритма и идентификатор выбранного алгоритма шифрования в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, Kcipher=KDF(CK, algorithm type distinguisher1, ciphering algorithm id), где CK – первый ключ шифрования, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kcipher в качестве второго ключа шифрования.
S904. UE вычисляет второй ключ целостности, соответствующий первому ключу целостности, второго указания типа алгоритма и идентификатору алгоритма целостности.
Конкретно, UE может использовать первый ключ IK целостности, первое указание типа алгоритма algorithm type distinguisher2 и идентификатор выбранного алгоритма целостности integrity algorithm id в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, Kintegrity=KDF(IK, algorithm type distinguisher2, integrity algorithm id), где IK – первый ключ целостности, algorithm type distinguisher1 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа целостности, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kintegrity в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа целостности, то старшие 128 битов могут быть выбраны из вычисленного Kintegrity в качестве второго ключа целостности. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kintegrity в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указания алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения первого указания типа алгоритма и второго указания типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 10 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 10, способ может содержать следующие этапы.
S1001. UE посылает сообщение запроса на SGSN.
S1002. UE принимает алгоритм шифрования и алгоритм целостности, которые посылаются от SGSN.
В этом варианте осуществления настоящей заявки для конкретных способов осуществления этапов S1001 и S1002 обратитесь к этапам S601 и S602 в варианте осуществления, показанном на фиг. 6. Подробности здесь не приводятся.
S1003. UE использует первый ключ шифрования или заданный бит первого ключа шифрования в качестве второго ключа шифрования.
Когда алгоритм шифрования и алгоритм целостности, посланные от SGSN, приняты, UE дополнительно принимает случайное число RAND и характерный признак AUTN аутентификации, посланные от SGSN. Прежде, чем вычислять второй ключ шифрования или второй ключ целостности, UE может сначала вычислить код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, и выполнить аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN аутентификации, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
В некоторых реально выполнимых способах осуществления, если первый ключ шифрования является 128-битовым ключом и второй ключ шифрования, требуемый системой GPRS, также является 128-битовым ключом, первый ключ шифрования может использоваться напрямую в качестве второго ключа шифрования. Если второй ключ шифрования, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа шифрования в качестве второго ключа шифрования. Например, в качестве второго ключа шифрования выбираются старшие 64 бита.
S1004. UE использует первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
В некоторых реально выполнимых способах осуществления, если первый ключ целостности является 128-битовым ключом и второй ключ целостности, требуемый системой GPRS, также является 128-битовым ключом, первый ключ целостности может использоваться напрямую в качестве второго ключа целостности. Если второй ключ целостности, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа целостности в качестве второго ключа целостности. Например, в качестве второго ключа целостности выбираются старшие 64 бита.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 11 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующего настоящей заявке. Как показано на фиг. 11, способ может содержать следующие этапы.
S1101. HLR/HSS принимает идентификатор UE, посланный от SGSN.
База данных, содержащая информацию об абонентах сети (home location register, HLR), является постоянной базой данных системы GPRS и хранит информацию, требующуюся для управления связью множества мобильных пользователей, содержащую статическую информацию, такую как информация идентичности, сервисная информация и авторизация сервиса, которая относится к зарегистрированному мобильному пользователю, и динамическую информацию, такую как информация о местоположении пользователя. Большая база данных, содержащая информацию об абонентах сети HSS (Home Subscription System, HSS) является развитием и обновлением HLR и ответственна, главным образом, за управление абонентскими данными пользователя и информацией о местоположении мобильного пользователя. Поскольку HSS и HLR имеют схожую функцию в сети и многочисленные данные, хранящиеся в HSS, обычно повторно сохраняются в HLR, устройство конвергенции HSS и HLR представляется наружу. В этом варианте осуществления настоящей заявки HLR/HSS может быть устройством HLR, устройством HSS или устройством конвергенции HLR и HSS.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM.
S1102. HLR/HSS определяет в соответствии с идентификатором UE, что UE является UE первого типа.
При конкретной реализации HLR/HSS хранит различную информацию многочисленных UE. После приема идентификатора UE, посланного от SGSN, HLR/HSS может запросить информацию об UE, с тем, чтобы определить, является ли UE оборудованием пользователя UE первого типа. В этом варианте осуществления настоящей заявки для описания используется пример, в котором UE является UE первого типа.
В этом варианте осуществления настоящей заявки UE первого типа может содержать UE Интернета вещей (Internet of Things UE), UE для связи "машина-машина" (Machine To Machine, M2M) или другое высокозащищенное UE. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи данных, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или перевода денежных средств. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т. п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
S1103. HLR/HSS посылает информацию указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Как вариант, информация указания типа UE может указывать в соответствии с существованием конкретного информационного элемента (Information Element, IE), что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
В этом варианте осуществления настоящей заявки HLR/HSS может дополнительно послать на SGSN вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
В некоторых реально выполнимых способах осуществления вышеупомянутый вектор аутентификации, может быть пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности. Первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ IK целостности является ключом целостности в пятиразрядном байте вектора аутентификации.
В этом варианте осуществления настоящей заявки HLR/HSS может принять идентификатор UE, посланный от SGSN, определить в соответствии с идентификатором UE, что UE является UE первого типа, и послать информацию указания типа UE на SGSN, для указания, что UE является UE первого типа, так чтобы между SGSN и UE первого типа мог быть выполнен процесс улучшения ключа для UE первого типа и безопасность связи для UE первого типа в сети GPRS могла быть повышена.
На фиг. 12 схематично представлена блок-схема последовательности выполнения операций еще одного другого варианта осуществления способа улучшения ключа системы GPRS, соответствующей настоящей заявке. Как показано на фиг. 12, способ может содержать следующие этапы.
S1201. UE посылает сообщение запроса на SGSN.
S1202. SGSN посылает идентификатор UE на HLR/HSS.
S1203. HLR/HSS определяет в соответствии с идентификатором UE, что UE является UE первого типа.
S1204. HLR/HSS посылает на SGSN информацию указания типа UE и вектор аутентификации.
S1205. SGSN выбирает алгоритм шифрования и алгоритм целостности, соответствующие информации указания типа UE и алгоритму, поддерживаемому UE, и получает второй ключ шифрования и второй ключ целостности.
S1206. SGSN посылает запрос аутентификации и шифрования на UE, которое содержит алгоритм шифрования и алгоритм целостности, выбранные SGSN, случайное число RAND и характерный признак AUTN.
S1207. UE выполняет аутентификацию на стороне SGSN и после того, как аутентификация успешно прошла, получает второй ключ шифрования и второй ключ целостности.
S1208. UE посылает на SGSN аутентификацию и ответ RES на шифрование.
S1209. SGSN проверяет значение RES и выполняет аутентификацию на стороне UE.
В этом варианте осуществления настоящей заявки UE посылает на SGSN сообщение запроса. После определения, что UE является UE первого типа, SGSN выбирает алгоритм шифрования и алгоритм целостности. Одновременно UE и SGSN вычисляют улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, и выполняют защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 13 схематично представлена структурная схема варианта осуществления устройства SGSN, соответствующего настоящему изобретению. Как показано на фиг. 13, устройство SGSN может содержать приемный модуль 1301, модуль 1302 приобретения, модуль 1303 выбора и модуль 1304 получения.
Приемный модуль 1301 выполнен с возможностью приема сообщения запроса, посланного от UE.
При конкретном осуществлении сообщение запроса, посланное от UE на SGSN, может быть сообщением запроса присоединения, сообщением обновления маршрута или другим сообщением, например, сообщением запроса обслуживания. После приема сообщения запроса, посланного от UE, SGSN может получить идентификатор UE, которое посылает сообщение запроса. Если UE является UE первого типа, сообщение запроса может нести информацию указания типа UE.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM. UE первого типа может содержать UE Интернета вещей (Internet of Things UE), UE для связи "машина-машина" (Machine To Machine, M2M) или другим высокозащищенным UE. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи данных, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или перевода денежных средств. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т.п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
Модуль 1302 приобретения выполнен с возможностью получения от HLR/HSS вектора аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
База данных, содержащая информацию об абонентах сети (Home Location Register, HLR), является постоянной базой данных системы GPRS и хранит информацию, требующуюся для управления связью множества мобильных пользователей, содержащую статическую информацию, такую как информация идентичности, сервисная информация и авторизация сервиса, которая относится к зарегистрированному мобильному пользователю, и динамическую информацию, такую как информация о местоположении пользователя. Большая база данных, содержащая информацию об абонентах сети HSS (Home Subscription System, HSS) является развитием и обновлением HLR и ответственна, главным образом, за управление абонентскими данными пользователя и информацией о местоположении мобильного пользователя. Поскольку HSS и HLR имеют схожую функцию в сети и многочисленные данные, хранящиеся в HSS, обычно повторно сохраняются в HLR, устройство конвергенции HSS и HLR представляется наружу. В этом варианте осуществления настоящей заявки HLR/HSS может быть устройством HLR, устройством HSS или устройством конвергенции HLR и HSS.
В этом варианте осуществления настоящей заявки вектор аутентификации, полученный SGSN от HLR/HSS, является пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности.
В этом варианте осуществления настоящей заявки первый ключ шифрования является ключом CK шифрования) в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
Модуль 1303 выбора выполнен с возможностью выбора для UE алгоритма шифрования и алгоритма целостности и посылки на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, когда SGSN определяет, что UE является UE первого типа.
В некоторых реально выполнимых способах устройство SGSN может дополнительно содержать передающий модуль и первый модуль определения (не показан на чертеже).
Передающий модуль может быть выполнен с возможностью посылки идентификатора UE на HLR/HSS, с тем, чтобы HLR/HSS определила в соответствии с идентификатором UE, является ли UE оборудованием пользователя UE первого типа, и посылки информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Первый модуль определения может быть выполнен с возможностью приема информации указания типа UE, посланной от HLR/HSS, и определения, что UE является UE первого типа.
В некоторых реально выполнимых способах устройство SGSN может дополнительно содержать второй модуль определения (не показан на чертеже) и второй модуль определения может быть выполнен с возможностью определения, что UE является UE первого типа, где информация указания типа UE используется для указания, что UE является UE первого типа, когда сообщение запроса содержит информацию указания типа UE.
В некоторых реально выполнимых способах устройство SGSN может также содержать передающий модуль, первый модуль определения и второй модуль определения.
Как вариант, информация указания типа UE может указывать в соответствии с существованием конкретного информационного элемента (Information Element, IE), что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
При конкретной реализации SGSN может сначала приобрести от HLR/HSS вектор аутентификации и затем определить, что UE является UE первого типа, или SGSN может сначала определить, что UE является UE первого типа, и затем приобрести от HLR/HSS вектор аутентификации.
При конкретном осуществлении конфигурация UE и SGSN выполняется раздельно с помощью некоторых алгоритмов шифрования и алгоритмов целостности. При посылке на SGSN сообщения запроса, UE посылает на SGSN алгоритм шифрования и алгоритм целостности, которые поддерживаются UE. При приеме от UE сообщения запроса SGSN выбирает алгоритм шифрования, поддерживаемый SGSN, и алгоритм целостности, поддерживаемый SGSN, из числа алгоритмов шифрования и алгоритмов целостности, поддерживаемых UE.
В некоторых осуществимых способах осуществления алгоритм шифрования и алгоритм целостности, выбираемые SGSN, могут использоваться вместе с первым ключом шифрования и первым ключом целостности в векторе аутентификации, чтобы вычислить второй ключ шифрования и второй ключ целостности. Кроме того, шифрование может выполняться для сообщения связи, соответствующего алгоритму шифрования, выбранному SGSN, и второй ключ шифрования должен генерировать сообщение шифротекста. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего алгоритму целостности, выбранному SGSN, и второму ключу целостности. Код MAC аутентификации сообщения не может использоваться для проверки целостности сообщения связи.
Как вариант, когда сеть GPRS запрашивает 128-битовый второй ключ шифрования, алгоритм шифрования, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EEA1, алгоритм 128-EEA2 или алгоритм 128-EEA3, а алгоритм целостности, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EIA1, алгоритм 128-EIA2 или алгоритм 128-EIA3. Алгоритм SNOW 3G используется в качестве корневого алгоритма для алгоритма 128-EEA1 и алгоритма 128-EIA1. Алгоритм AES используется в качестве корневого алгоритма для алгоритма 128-EEA2 и алгоритма 128-EIA2. Алгоритм ZUC (алгоритм ZUC) используется в качестве корневого алгоритма для алгоритма 128-EEA3 и алгоритма 128-EIA3.
При конкретном осуществлении, при посылке на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN, соответствующей характерному признаку AUTN аутентификации, с тем, чтобы сторона UE выполнила аутентификацию на стороне сети, и может дополнительно вычислить первый ключ CK шифрования и первый ключ IK целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому характерному признаку AUTN аутентификации.
Для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть, второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть, алгоритма шифрования и алгоритма целостности, которые выбираются SGSN), чтобы выполнять шифрование сообщение связи. Поэтому после выбора алгоритма шифрования и алгоритма целостности для SGSN необходимо послать выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после вычисления второго ключа шифрования и второго ключа целостности, соответствующих первому ключу CK шифрования и первому ключу IK целостности, UE выполнило шифрование сообщения связи, используя алгоритм шифрования и алгоритм целостности, являющиеся теми же самыми, которые используются SGSN, второй ключ шифрования и второй ключ целостности.
Модуль 1304 получения выполнен с возможностью получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки после выбора алгоритма шифрования и алгоритма целостности SGSN вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности в векторе аутентификации, где первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации. Второй ключ шифрования и второй ключ целостности являются улучшенными ключами, основанными на первом ключе шифрования и первом ключе целостности, где второй ключ шифрования и алгоритм шифрования, выбранные SGSN, могут использоваться для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности, выбранные SGSN, могут использоваться для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE.
Как вариант, SGSN может вычислить второй ключ шифрования и второй ключ целостности, соответствующие только первому ключу шифрования и первому ключу целостности, или может вычислить второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования, первому ключу целостности, выбранному алгоритму шифрования и выбранному алгоритму целостности.
При конкретном осуществлении может не существовать никакого порядка следования между посылкой к UE модулем 1303 алгоритма шифрования и алгоритма целостности, которые выбираются SGSN, и получения модулем 1304 получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности в векторе аутентификации.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, получает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
Далее, со ссылкой на фиг. 14 и 15 подробно описываются структура и функция модуля 1304 получения, показанного на фиг. 13.
В некоторых реально выполнимых способах, как показано на фиг. 14, модуль 1304 получения может содержать первый вычислительный блок 13041, второй вычислительный блок 13042 и третий вычислительный блок 13043.
Первый вычислительный блок 13041 выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности.
В реально выполнимом способе осуществления первый вычислительный блок 13041 может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе осуществления промежуточный ключ может напрямую использовать существующий 64-битовый ключ Kc шифрования GPRS или существующий 128-битовый ключ Kc128 шифрования, то есть, первый вычислительный блок 13041 может напрямую использовать существующий ключ Kc (64-битовый) шифрования GPRS в качестве промежуточного ключа или напрямую использовать существующий ключ Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
Второй вычислительный блок 13042 выполнен с возможностью вычисления ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования.
При конкретном осуществлении промежуточный ключ и шифрование характеристической строки шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ шифрования может быть получен с помощью вычисления, используя Kcipher=KDF(Km, "ciphering"), где "ciphering" является характеристической строкой шифрования и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
Третий вычислительный блок 13043 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования.
При конкретном осуществлении промежуточный ключ и целостность характеристической строки целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ целостности может быть получен с помощью вычисления, используя Kintegrity=KDF(Km, "integrity"), где "integrity" является характеристической строкой целостности и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и Kintegrity, полученный с помощью вычисления в соответствии с заданными 128 битами Km используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от вычисленного Kintegrity в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления шифрование характеристической строки шифрования и целостность характеристической строки целостности используются для создания вычисленного второго ключа шифрования и вычисленного второго ключа целостности, различных для легкости их различения. Поэтому целостность характеристической строки целостности может быть любой строкой, несовместимой с шифрованием характеристической строки шифрования.
В некоторых реально выполнимых способах, как показано на фиг. 14, модуль 1304 получения может содержать первый вычислительный блок 13041, второй вычислительный блок 13042 и третий вычислительный блок 13043.
Первый вычислительный блок 13041 выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности.
В реально выполнимом способе осуществления первый вычислительный блок 13041 может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе первый вычислительный блок 13041 может напрямую использовать существующий ключ шифрования Kc (64-битовый) GPRS в качестве промежуточного ключа или напрямую использовать существующий Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
Второй вычислительный блок 13041 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, первому указанию типа алгоритма и идентификатора выбранного алгоритма шифрования.
При конкретном осуществлении второй вычислительный блок 13042 может использовать промежуточный ключ, первую индикацию типа алгоритма и идентификатор выбранного алгоритма шифрования в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ Kcipher шифрования может быть получен путем вычисления, используя Kcipher=KDF(Km, algorithm type distinguisher1, ciphering algorithm id), где Km – промежуточный ключ, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
Третий вычислительный блок 13043 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, второму указанию типа алгоритма и идентификатору выбранного алгоритма шифрования, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
При конкретном осуществлении третий вычислительный блок 13043 может использовать промежуточный ключ, второе указание типа алгоритма и идентификатор выбранного алгоритма целостности в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ Kintegrity целостности может быть получен путем вычисления, используя Kintegrity=KDF(Km, algorithm type distinguisher2, integrity algorithm id), где Km – промежуточный ключ, algorithm type distinguisher2 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указания алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения IE в первом указании типа алгоритма и во втором указании типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В некоторых реально выполнимых способах, как показано на фиг. 15, модуль 1304 получения может содержать четвертый вычислительный блок 13044 и пятый вычислительный блок 13045.
Четвертый вычислительный блок 13044 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
Конкретно, четвертый вычислительный блок 13044 может использовать первый ключ шифрования, первое указание типа алгоритма и идентификатор выбранного алгоритма шифрования в качестве входных параметров функции KDF деривации ключа для вычисления второго ключа шифрования. Например, Kcipher=KDF(CK, algorithm type distinguisher1, ciphering algorithm id), где CK – первый ключ шифрования, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут быть выбраны из вычисленного Kcipher в качестве второго ключа шифрования. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kcipher в качестве второго ключа шифрования.
Пятый вычислительный блок 13045 вычисляет второй ключ целостности, соответствующий первому ключу целостности, второе указание типа алгоритма и идентификатор выбранного алгоритма целостности.
Конкретно, пятый вычислительный блок 13045 может использовать первый ключ целостности, второе указание типа алгоритма и идентификатор выбранного алгоритма целостности в качестве входных параметров функции KDF деривации ключа для вычисления второго ключа целостности. Например, Kintegrity=KDF(IK, algorithm type distinguisher2, integrity algorithm id), где IK – первый ключ целостности, algorithm type distinguisher1 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа целостности, старшие 64 бита промежуточного ключа могут быть выбраны из вычисленного Kintegrity в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа целостности, то старшие 128 битов могут быть выбраны из вычисленного Kintegrity в качестве второго ключа целостности. В другом реально выполнимом способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбрано из вычисленного Kintegrity в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указателя алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения первого указания типа алгоритма и второго указания типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В некоторых реально выполнимых способах модуль 1304 получения может быть конкретно выполнен с возможностью:
вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и
использования первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использования второго заданного бита промежуточного ключа в качестве второго ключа целостности.
В реально выполнимом способе осуществления модуль 1304 получения может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе модуль 1304 получения может напрямую использовать существующий ключ шифрования Kc (64-битовый) GPRS в качестве промежуточного ключа или напрямую использовать существующий Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
При реально выполнимом способе осуществления модуль 1304 получения может использовать первый заданный бит промежуточного ключа в качестве второго ключа шифрования. Например, если система GPRS требует 64-битового второго ключа шифрования, старшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. В другом дополнительном способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа шифрования.
При реально выполнимом способе модуль 1304 получения может использовать второй заданный бит промежуточного ключа в качестве второго ключа целостности. Например, если система GPRS требует 64-битового второго ключа шифрования, младшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то младшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. В другом дополнительном способе осуществления требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа шифрования.
В некоторых реально выполнимых способах модуль 1304 получения может быть конкретно выполнен с возможностью:
использования первого ключа шифрования или заданного бита первого ключа шифрования в качестве второго ключа шифрования и использования первого ключа целостности или заданного бита первого ключа целостности в качестве второго ключа целостности.
В некоторых реально выполнимых способах осуществления, если первый ключ шифрования является 128-битовым ключом и второй ключ шифрования, требуемый системой GPRS, также является 128-битовым ключом, первый ключ шифрования может использоваться напрямую в качестве второго ключа шифрования. Если второй ключ шифрования, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа шифрования в качестве второго ключа шифрования. Например, в качестве второго ключа шифрования выбираются старшие 64 бита.
В некоторых реально выполнимых способах осуществления, если первый ключ целостности является 128-битовым ключом и второй ключ целостности, требуемый системой GPRS, также является 128-битовым ключом, первый ключ целостности может использоваться напрямую в качестве второго ключа целостности. Если второй ключ целостности, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа целостности в качестве второго ключа целостности. Например, в качестве второго ключа целостности выбираются старшие 64 бита.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, получает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы UE вычислило второй ключ шифрования и второй ключ целостности и выполнило защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования и второй ключ целостности. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 16 схематично представлена структурная схема другого варианта осуществления устройства SGSN, соответствующего настоящей заявке. Как показано на фиг. 16, устройство SGSN может содержать приемное устройство 1601, передающее устройство 1602 и процессор 1603, причем приемное устройство 1601, передающее устройство 1602 и процессор 1603 соединяются, используя шину.
Приемное устройство 1601 выполнено с возможностью приема сообщения запроса, посланного от UE.
Процессор 1603 выполнен с возможностью:
приобретения от HLR/HSS вектора аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности;
выбора алгоритма шифрования и алгоритма целостности для UE, когда SGSN определяет, что UE является UE первого типа; и
получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
Передающее устройство 1602 выполнено с возможностью посылки к UE выбранного алгоритма шифрования и выбранного алгоритма целостности.
Второй ключ шифрования и выбранный алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
В некоторых реально выполнимых способах осуществления сообщение запроса содержит идентификатор UE.
Передающее устройство 1602 дополнительно выполнено с возможностью посылки идентификатора UE на HLR/HSS, с тем, чтобы HLR/HSS определила в соответствии с идентификатором UE, что UE является UE первого типа, и посылки информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Определение процессором 1603, является ли UE оборудованием пользователя UE первого типа, содержит: прием с помощью процессора 1603 информации указания типа UE, посланной от HLR/HSS, и определение, что UE является UE первого типа.
В некоторых реально выполнимых способах определение процессором 1603, является ли UE оборудованием пользователя UE первого типа, содержит:
определение с помощью процессора 1603, что UE является UE первого типа, если сообщение запроса содержит информацию указания типа UE.
В некоторых реально выполнимых способах получение процессором 1603 второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит:
вычисление с помощью процессора 1603 промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности;
вычисление с помощью процессора 1603 второго ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования; и
вычисление с помощью процессора 1603 второго ключа целостности, соответствующего промежуточному ключу и характеристической строке целостности.
В некоторых реально выполнимых способах получение процессором 1603 второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит:
вычисление с помощью процессора промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и использование с помощью процессора первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использование второго заданного бита промежуточного ключа в качестве второго ключа целостности; или
вычисление с помощью процессора второго ключа шифрования, соответствующего первому ключу шифрования в векторе аутентификации, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования, и вычисление с помощью процессора второго ключа целостности, соответствующего первому ключу целостности в векторе аутентификации, второго указания типа алгоритма и идентификатору выбранного алгоритма целостности, где значения первого указания типа алгоритма и второго указания типа алгоритма различны; или
использование с помощью процессора первого ключа шифрования или заданного бита первого ключа шифрования в качестве второго ключа шифрования и использование с помощью процессора первого ключа целостности или заданного бита первого ключа целостности в качестве второго ключа целостности.
В некоторых реально выполнимых способах вектор аутентификации является пятиразрядным байтом вектора аутентификации.
Первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
В некоторых реально выполнимых способах осуществления промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
В этом варианте осуществления настоящей заявки SGSN принимает сообщение запроса, посланное от UE, после определения, что UE является UE первого типа, выбирает алгоритм шифрования и алгоритм целостности, приобретает вектор аутентификации от HLR/HSS, получает улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, которые содержатся в векторе аутентификации, и посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE, с тем, чтобы после того, как UE вычислит второй ключ шифрования и второй ключ целостности, SGSN и UE вместе могли выполнить защиту с помощью шифрования и защиту целостности сообщения связи между SGSN и UE, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 17 схематично представлена структурная схема варианта осуществления UE, соответствующего настоящему изобретению. Как показано на фиг. 17, UE может содержать передающий модуль 1701, приемный модуль 1702 и модуль 1703 приобретения.
Передающий модуль 1701 выполнен с возможностью посылки сообщения запроса на SGSN.
При конкретном осуществлении сообщение запроса, посланное передающим модулем 1701 на SGSN, может быть сообщением запроса присоединения, сообщением обновления маршрута или другим сообщением, например, сообщением запроса обслуживания. После приема сообщения запроса, посланного от UE, SGSN может получить идентификатор UE, которое посылает сообщение запроса. Если UE является UE первого типа, сообщение запроса может нести информацию указания типа UE.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи сообщения, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или перевода. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т.п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
UE в этом варианте осуществления настоящей заявки является UE первого типа. В некоторых других реально выполнимых способах осуществления, сообщение запроса, которое посылается передающим модулем 1701 на SGSN, может содержать информацию указания типа UE, так что SGSN в соответствии с информацией указания типа UE определяет, что UE является UE первого типа.
Как вариант, информация указания типа UE может указывать в соответствии с существованием конкретного информационного элемента (Information Element, IE), что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
При конкретном осуществлении конфигурация UE и SGSN выполняется раздельно с помощью некоторых алгоритмов шифрования и алгоритмов целостности. При посылке на SGSN сообщения запроса, передающий модуль 1701 посылает на SGSN алгоритм шифрования и алгоритм целостности, поддерживаемые UE.
Приемный модуль 1702 выполнен с возможностью приема алгоритма шифрования и алгоритма целостности, посланных от SGSN.
После того, как SGSN принимает от UE сообщение запроса, если определено, что вышеуказанное UE является UE первого типа, SGSN выбирает алгоритм шифрования, поддерживаемый SGSN, и алгоритм целостности, поддерживаемый SGSN, из числа алгоритмов шифрования и алгоритмов целостности, поддерживаемых UE. SGSN посылает выбранный алгоритм шифрования и выбранный алгоритм целостности на UE и получает второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности в векторе аутентификации.
При конкретном осуществлении, при посылке на UE выбранного алгоритма шифрования и выбранного алгоритма целостности, SGSN может дополнительно послать на UE в векторе аутентификации случайное число RAND и характерный признак AUTN аутентификации. UE может выполнить аутентификацию на стороне SGSN в соответствии с характерным признаком AUTN аутентификации, так что сторона UE выполняет аутентификацию на стороне сети. UE может дополнительно вычислить первый ключ шифрования и первый ключ целостности, используя алгоритмы f1-f5, соответствующие принятому случайному числу RAND и принятому характерному признаку AUTN аутентификации. Первый ключ шифрования и первый ключ целостности, которые вычисляются UE, являются такими же, как первый ключ шифрования и первый ключ целостности в векторе аутентификации, который получен SGSN от HLR/HSS. Вектор аутентификации, полученный SGSN от HLR/HSS, является пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности.
В этом варианте осуществления настоящей заявки первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
В некоторых реально выполнимых способах осуществления алгоритм шифрования и алгоритм целостности, выбираемые SGSN, могут использоваться вместе с первым ключом CK шифрования и первым ключом IK целостности в векторе аутентификации, чтобы вычислить второй ключ шифрования и второй ключ целостности. Кроме того, шифрование может выполняться для сообщения связи, соответствующего алгоритму шифрования, и генерированному второму ключу шифрования, чтобы сформировать шифротекст сообщения. Код MAC аутентификации сообщения может быть получен с помощью вычисления, соответствующего алгоритму целостности и сгенерированному второму ключу целостности. Код MAC аутентификации сообщения не может использоваться для проверки целостности сообщения связи.
Как вариант, когда сеть GPRS запрашивает 128-битовый второй ключ шифрования, алгоритм шифрования, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EEA1, алгоритм 128-EEA2 или алгоритм 128-EEA3, а алгоритм целостности, выбранный SGSN, может быть любым из таких алгоритмов, как алгоритм 128-EIA1, алгоритм 128-EIA2 или алгоритм 128-EIA3. Алгоритм SNOW 3G используется в качестве корневого алгоритма для алгоритма 128-EEA1 и алгоритма 128-EIA1. Алгоритм AES используется в качестве корневого алгоритма для алгоритма 128-EEA2 и алгоритма 128-EIA2. Алгоритм ZUC (алгоритм ZUC) используется в качестве корневого алгоритма для алгоритма 128-EEA3 и алгоритма 128-EIA3.
Модуль 1703 приобретения выполнен с возможностью приобретения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
В этом варианте осуществления настоящей заявки, второй ключ шифрования и второй ключ целостности являются улучшенными ключами, основанными на первом ключе шифрования и первом ключе целостности. Второй ключ шифрования и алгоритм шифрования, посланные от SGSN, используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и алгоритм целостности, посланные от SGSN, используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
Как вариант, модуль 1703 приобретения может получить второй ключ шифрования и второй ключ целостности, соответствующие только первому ключу шифрования и первому ключу целостности, или модуль 1703 приобретения может получить второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования, первому ключу целостности и алгоритму шифрования и алгоритму целостности, посланным от SGSN.
После того, как второй ключ шифрования и второй ключ целостности приобретены, для защиты сообщения связи, передаваемого между SGSN и UE, как SGSN, так и UE нуждаются в использовании согласованного ключа (то есть второго ключа шифрования и второго ключа целостности) и согласованного алгоритма (то есть алгоритма шифрования и алгоритма целостности, которые посылаются от SGSN), чтобы выполнить шифрование сообщения связи.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
Далее, со ссылкой на фиг. 18 и 19 подробно описываются структура и функция модуля 1703 приобретения, показанного на фиг. 17.
В некоторых реально выполнимых способах, как показано на фиг. 18, модуль 1703 приобретения может содержать первый вычислительный блок 17031, второй вычислительный блок 17032 и третий вычислительный блок 17033.
Первый вычислительный блок 17031 выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности.
В некоторых реально выполнимых способах осуществления, прежде, чем первый вычислительный блок 17031 вычислит промежуточный ключ, UE сначала вычисляет код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, которые посылаются от SGSN, и выполняет аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
В реально выполнимом способе осуществления первый вычислительный блок 17031 может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе осуществления промежуточный ключ может напрямую использовать существующий 64-битовый ключ Kc шифрования GPRS или существующий 128-битовый ключ Kc128 шифрования, то есть, первый вычислительный блок 17031 может напрямую использовать существующий ключ Kc (64-битовый) шифрования GPRS в качестве промежуточного ключа или напрямую использовать существующий ключ Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
Второй вычислительный блок 17032 выполнен с возможностью вычисления ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования.
При конкретном осуществлении промежуточный ключ и шифрование характеристической строки шифрования могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ шифрования может быть получен с помощью вычисления, используя Kcipher=KDF(Km, "ciphering"), где "ciphering" является характеристической строкой шифрования и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
Третий вычислительный блок 17033 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу и характеристической строке шифрования.
При конкретном осуществлении промежуточный ключ и целостность характеристической строки целостности могут использоваться в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ целостности может быть получен с помощью вычисления, используя Kintegrity=KDF(Km, "integrity"), где "integrity" является характеристической строкой целостности и может генерироваться с помощью кодирования.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления шифрование характеристической строки шифрования и целостность характеристической строки целостности используются для создания вычисленного второго ключа шифрования и вычисленного второго ключа целостности, различных для легкости их различения. Поэтому целостность характеристической строки целостности может быть любой строкой, несовместимой с шифрованием характеристической строки шифрования.
В некоторых реально выполнимых способах, как показано на фиг. 18, модуль 1703 приобретения может содержать первый вычислительный блок 17031, второй вычислительный блок 17032 и третий вычислительный блок 17033.
Первый вычислительный блок 17031 выполнен с возможностью вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности.
В реально выполнимом способе осуществления первый вычислительный блок 17031 может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа, чтобы вычислить промежуточный ключ. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально осуществимом способе первый вычислительный блок 17031 может напрямую использовать существующий ключ шифрования Kc (64-битовый) GPRS в качестве промежуточного ключа или напрямую использовать существующий Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
Второй вычислительный блок 17032 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
При конкретном осуществлении второй вычислительный блок 17032 может использовать промежуточный ключ, первую индикацию типа алгоритма и идентификатор алгоритма шифрования в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ шифрования. Например, второй ключ Kcipher шифрования может быть получен путем вычисления, используя Kcipher=KDF(Km, algorithm type distinguisher1, ciphering algorithm id), где Km – промежуточный ключ, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа шифрования и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc128 используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа шифрования и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа шифрования; или промежуточный ключ Kc (64-битовый) используется в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа шифрования.
Третий вычислительный блок 17033 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, второго указания типа алгоритма и идентификатору выбранного алгоритма шифрования, где значения первого указания типа алгоритма и второго указания типа алгоритма различны.
При конкретном осуществлении третий вычислительный блок 17033 может использовать промежуточный ключ, вторую индикацию типа алгоритма и идентификатор выбранного алгоритма целостности в качестве входных параметров функции KDF деривации ключа, чтобы вычислить второй ключ целостности. Например, второй ключ Kintegrity целостности может быть получен путем вычисления, используя Kintegrity=KDF(Km, algorithm type distinguisher2, integrity algorithm id), где Km – промежуточный ключ, algorithm type distinguisher2 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
При некоторых реально выполнимых способах осуществления система GPRS требует 128-битового второго ключа целостности и в этом случае заданные 128 битов (например, старшие 128 битов) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа шифрования; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 128 битов (например, старшие 128 битов) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc128 может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
При некоторых реально выполнимых способах осуществления система GPRS требует 64-битового второго ключа целостности и в этом случае заданные 64 бита (например, старшие 64 бита) могут отсекаться от вычисленного промежуточного ключа Km в качестве одного из входных параметров функции KDF деривации ключа и выходной результат KDF используется в качестве второго ключа целостности; или вычисленный промежуточный ключ Km может использоваться напрямую в качестве одного из входных параметров функции KDF деривации ключа и заданные 64 бита (например, старшие 64 бита) отсекаются от выходного результата KDF в качестве второго ключа целостности; или промежуточный ключ Kc (64-битовый) может использоваться в качестве одного из входных параметров функции KDF деривации ключа и выходной результат функции KDF деривации ключа используется в качестве второго ключа целостности.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве указателя алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения IE в первом указании типа алгоритма и во втором указании типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В некоторых реально выполнимых способах, как показано на фиг. 19, модуль 1703 приобретения может содержать четвертый вычислительный блок 17034 и пятый вычислительный блок 17035.
Четвертый вычислительный блок 17034 выполнен с возможностью вычисления второго ключа шифрования, соответствующего промежуточному ключу, первого указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
В некоторых реально выполнимых способах осуществления, прежде, чем четвертый вычислительный блок 17034 вычислит второй ключ шифрования и пятый вычислительный блок 17035 вычислит второй ключ целостности, UE сначала вычисляет код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, которые посылаются от SGSN, и выполняет аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
Конкретно, четвертый вычислительный блок 17034 может использовать первый ключ шифрования, первую индикацию типа алгоритма и идентификатор выбранного алгоритма шифрования в качестве входных параметров функции KDF деривации ключа для вычисления второго ключа шифрования. Например, Kcipher=KDF(CK, algorithm type distinguisher1, ciphering algorithm id), где CK – первый ключ шифрования, algorithm type distinguisher1 – первое указание типа алгоритма и ciphering algorithm id – идентификатор алгоритма шифрования, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа шифрования, то в качестве второго ключа шифрования из вычисленного Kcipher могут быть выбраны старшие 64 бита промежуточного ключа; если система GPRS требует 128-битового второго ключа шифрования, то из вычисленного Kcipher в качестве второго ключа шифрования могут быть выбраны старшие 128 битов промежуточного ключа. В другом реально выполнимом способе осуществления из вычисленного Kcipher в качестве второго ключа шифрования может быть случайно выбрано требуемое количество битов, которое не ограничивается в этой заявке.
Пятый вычислительный блок 17035 выполнен с возможностью вычисления второго ключа целостности, соответствующего первому ключу целостности, второго указания типа алгоритма и идентификатору выбранного алгоритма шифрования.
Конкретно, пятый вычислительный блок 17035 может использовать первый ключ целостности, вторую индикацию типа алгоритма и идентификатор выбранного алгоритма целостности в качестве входных параметров функции KDF деривации ключа для вычисления второго ключа целостности. Например, Kintegrity=KDF(IK, algorithm type distinguisher2, integrity algorithm id), где IK – первый ключ целостности, algorithm type distinguisher1 – второе указание типа алгоритма и integrity algorithm id – идентификатор алгоритма целостности, выбранного с помощью SGSN.
Как вариант, если система GPRS требует 64-битового второго ключа целостности, то из вычисленного Kintegrity в качестве второго ключа шифрования могут быть выбраны старшие 64 бита промежуточного ключа; если система GPRS требует 128-битового второго ключа целостности, то из вычисленного Kintegrity в качестве второго ключа целостности могут быть выбраны старшие 128 битов.
В этом варианте осуществления настоящей заявки первое указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма шифрования, и второе указание типа алгоритма используется для указания, что алгоритм, в настоящее время принимающий участие в операции, является алгоритмом типа алгоритма целостности. Значения первого указания типа алгоритма и второго указания типа алгоритма являются разными. В некоторых реально выполнимых вариантах осуществления первое указание типа алгоритма и второе указание типа алгоритма могут содержать один и тот же IE и первое указание типа алгоритма и второе указание типа алгоритма различаются, используя разные значения IE. Например, IE первого указания типа алгоритма и IE второго указания типа алгоритма оба являются отличительными признаками типа алгоритма. Когда отличительный признак алгоритма равен 00, это указывает, что алгоритм имеет тип алгоритма шифрования. Когда отличительный признак алгоритма равен 01, это указывает, что алгоритм имеет тип алгоритма целостности.
В некоторых возможных случаях алгоритм шифрования и алгоритм целостности могут использовать один и тот же идентификатор и в этих случаях каждый алгоритм необходимо уникальным образом распознавать со ссылкой на указание типа алгоритма. Например, если оба алгоритма, алгоритм 128-EEA1 и алгоритм 128-EIA1, используют 1 в качестве индикатора алгоритма, когда алгоритм шифрования и алгоритм целостности, которые выбираются с помощью SGSN, являются алгоритмом 128-EEA1 и алгоритмом 128-EIA1, соответственно, алгоритм 128-EEA1 и алгоритм 128-EIA1 могут различаться, используя разные значения первого указания типа алгоритма и второго указания типа алгоритма. Кроме того, значения вычисленного второго ключа шифрования и вычисленного второго ключа целостности могут быть сделаны различными, так чтобы делать различие между вторым ключом шифрования и вторым ключом целостности.
В некоторых реально выполнимых способах модуль 1703 приобретения может быть конкретно выполнен с возможностью:
вычисления промежуточного ключа, соответствующего первому ключу шифрования и первому ключу целостности; и
использования первого заданного бита промежуточного ключа в качестве второго ключа шифрования и использования второго заданного бита промежуточного ключа в качестве второго ключа целостности.
В некоторых реально выполнимых способах осуществления, прежде, чем модуль 1703 приобретения вычислит промежуточный ключ, UE сначала вычисляет код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, которые посылаются от SGSN, и выполняет аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
В реально выполнимом способе осуществления модуль 1703 приобретения может выполнять операцию для первого ключа шифрования и первого ключа целостности и затем использовать результат операции в качестве входного параметра функции KDF деривации ключа для вычисления промежуточного ключа. Например, промежуточным ключом может быть Km=KDF(CK||IK), где CK||IK указывает, что на первом ключе CK шифрования и на первом ключе IK целостности выполняется совместная операция.
В другом реально выполнимом способе осуществления промежуточный ключ может напрямую использовать существующий 64-битовый ключ Kc шифрования GPRS или существующий 128-битовый ключ Kc128 шифрования, то есть, модуль 1703 приобретения может напрямую использовать существующий ключ Kc (64-битовый) шифрования GPRS в качестве промежуточного ключа или напрямую использовать существующий ключ Kc128 (128-битовый) в качестве промежуточного ключа. Оба ключа Kc и Kc128 генерируются с помощью вычисления, соответствующего CK и IK.
При реально выполнимом способе осуществления модуль 1703 приобретения может использовать первый заданный бит промежуточного ключа в качестве второго ключа шифрования. Например, если система GPRS требует 64-битового второго ключа шифрования, the старшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то старшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. Как вариант, требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа целостности.
При реально выполнимом способе осуществления модуль 1703 приобретения может использовать второй заданный бит промежуточного ключа в качестве второго ключа целостности. Например, если система GPRS требует 64-битового второго ключа шифрования, младшие 64 бита промежуточного ключа могут использоваться напрямую в качестве второго ключа шифрования; если система GPRS требует 128-битового второго ключа шифрования, то младшие 128 битов промежуточного ключа могут напрямую использоваться в качестве второго ключа шифрования. Как вариант, требуемое количество битов, которое не ограничивается в этой заявке, может быть случайно выбранным из промежуточного ключа в качестве второго ключа целостности.
В некоторых реально выполнимых способах модуль 1703 приобретения может быть конкретно выполнен с возможностью:
использования первого ключа шифрования или заданного бита первого ключа шифрования в качестве второго ключа шифрования; и
использования первого ключа целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
В некоторых реально выполнимых способах осуществления, прежде чем модуль 1703 приобретения вычислит второй ключ шифрования или второй ключ целостности, UE может сначала вычислить код XMAC аутентификации ожидаемого сообщения, соответствующий характерному признаку AUTN аутентификации и случайному числу RAND, и выполнить аутентификацию на стороне SGSN, определяя, является ли код XMAC аутентификации ожидаемого сообщения таким же, как код MAC аутентификации сообщения в характерном признаке AUTN аутентификации. После того, как аутентификация на стороне SGSN прошла успешно, UE вычисляет первый ключ CK шифрования и первый ключ IK целостности, соответствующие случайному числу RAND и характерному признаку AUTN, которые посылаются от SGSN, вычисляет ответ RES на случайное число и посылает ответ RES на случайное число на SGSN, с тем, чтобы сторона SGSN выполнила аутентификацию для UE.
В некоторых реально выполнимых способах осуществления, если первый ключ шифрования является 128-битовым ключом и второй ключ шифрования, требуемый системой GPRS, также является 128-битовым ключом, первый ключ шифрования может использоваться напрямую в качестве второго ключа шифрования. Если второй ключ шифрования, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа шифрования в качестве второго ключа шифрования. Например, в качестве второго ключа шифрования выбираются старшие 64 бита.
В некоторых реально выполнимых способах осуществления, если первый ключ целостности является 128-битовым ключом и второй ключ целостности, требуемый системой GPRS, также является 128-битовым ключом, первый ключ целостности может использоваться напрямую в качестве второго ключа целостности. Если второй ключ целостности, требуемый для системы GPRS, является 64-битовым ключом, 64 заданных бита могут быть выбраны из первого ключа целостности в качестве второго ключа целостности. Например, в качестве второго ключа целостности выбираются старшие 64 бита.
В этом варианте осуществления настоящей заявки, UE посылает сообщение запроса на SGSN, принимает алгоритм шифрования и алгоритма целостности, которые посылаются от SGSN, и вычисляет второй ключ шифрования и второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности. Как SGSN, так и UE могут выполнять защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, посланные от SGSN на UE. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 20 схематично представлена структурная схема другого варианта осуществления UE, соответствующего настоящему изобретению. Как показано на фиг. 20, UE может содержать передающее устройство 2001, приемное устройство 2002 и процессор 2003, причем передающее устройство 2001, приемное устройство 2002 и процессор 2003 соединяются, используя шину.
Передающий модуль 2001 выполнен с возможностью посылки сообщения запроса на SGSN.
Приемное устройство 2002 выполнено с возможностью приема алгоритма шифрования и алгоритма целостности, посланных от SGSN.
Процессор 2003 выполнен с возможностью получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
Второй ключ шифрования и алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
В некоторых реально выполнимых способах осуществления сообщение запроса, посланное передающим устройством 2001 на SGSN, содержит информацию указания типа UE, где информация указания типа UE используется для указания, что UE является UE первого типа.
В некоторых реально выполнимых способах осуществления получение процессором 2003 второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью процессора 2003 промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности;
вычисляют с помощью процессора 2003 второй ключ шифрования, соответствующий промежуточному ключу шифрования и характеристической строке шифрования; и
вычисляют с помощью процессора 2003 второй ключ целостности, соответствующий промежуточному ключу и характеристической строке целостности.
В некоторых реально выполнимых способах осуществления приобретение процессором 2003 второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности, содержит этапы, на которых:
вычисляют с помощью процессора 2003 промежуточный ключ, соответствующий первому ключу шифрования и первому ключу целостности; и используют с помощью процессора 2003 первый заданный бит промежуточного ключа в качестве второго ключа шифрования и используют второй заданный бит промежуточного ключа в качестве второго ключа целостности; или
вычисляют с помощью процессора 2003 второй ключ шифрования, соответствующий первому ключу шифрования, первого указания типа алгоритма и идентификатору алгоритма шифрования, и вычисляют с помощью процессора 2003 второй ключ целостности, соответствующий первому ключу целостности, второму указанию типа алгоритма и идентификатору алгоритма целостности; или
используют с помощью процессора 2003 первый ключ шифрования или заданный бит первого ключа шифрования в качестве второго ключа шифрования и используют с помощью процессора 2003 первый ключ целостности или заданный бит первого ключа целостности в качестве второго ключа целостности.
В некоторых реальных способах осуществления первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ целостности является ключом IK целостности в пятиразрядном байте вектора аутентификации.
В некоторых реально выполнимых способах осуществелния промежуточный ключ является 64-битовым ключом Kc шифрования GPRS или 128-битовым ключом Kc128 шифрования.
В этом варианте осуществления настоящей заявки UE посылает на SGSN сообщение запроса, вычисляет второй ключ шифрования и второй ключ целостности, соответствующие алгоритму шифрования и алгоритму целостности, выбранным SGSN, первый ключ шифрования и первый ключ целостности и выполняет защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования и второй ключ целостности. Это повышает безопасность связи для UE первого типа в сети GPRS.
На фиг. 21 схематично представлена структурная схема варианта осуществления HLR/HSS, соответствующая варианту осуществления настоящей заявки. Как показано на фиг. 21, HLR/HSS может содержать приемный модуль 2101, модуль 2102 определения и передающий модуль 2103.
Приемный модуль 2101 выполнен с возможностью приема идентификатора оборудования пользователя UE, который посылается узлом SGSN обслуживания абонентов GPRS.
База данных, содержащая информацию об абонентах сети (home location register, HLR), является постоянной базой данных системы GPRS и хранит информацию, требующуюся для управления связью множества мобильных пользователей, содержащую статическую информацию, такую как информация идентичности, сервисная информация и авторизация сервиса, которая относится к зарегистрированному мобильному пользователю, и динамическую информацию, такую как информация о местоположении пользователя. Расширенная база данных, содержащая информацию об абонентах сети HSS (Home Subscription System, HSS) является развитием и обновлением HLR и ответственна, главным образом, за управление абонентскими данными пользователя и информацией о местоположении мобильного пользователя. Поскольку HSS и HLR имеют схожую функцию в сети и многочисленные данные, хранящиеся в HSS, обычно повторно сохраняются в HLR, устройство конвергенции HSS и HLR представляется наружу. В этом варианте осуществления настоящей заявки HLR/HSS может быть устройством HLR, устройством HSS или устройством конвергенции HLR и HSS.
В этом варианте осуществления настоящей заявки UE осуществляет связь с сетью, используя карту USIM и идентификатором UE может быть IMSI (International Mobile Subscriber Identification Number, международный идентификационный номер оборудования подвижного абонента) карты USIM.
Модуль 2102 определения выполнен с возможностью определения в соответствии с идентификатором UE, что UE является UE первого типа.
При конкретной реализации HLR/HSS хранит различную информацию многочисленных UE. После приема идентификатора UE, посланного от SGSN, HLR/HSS может запросить информацию об UE, с тем, чтобы определить, является ли UE оборудованием пользователя UE первого типа. В этом варианте осуществления настоящей заявки для описания используется пример, в котором UE является UE первого типа.
В этом варианте осуществления настоящей заявки UE первого типа может содержать UE Интернета вещей (Internet of Things UE), UE для связи "машина-машина" (Machine To Machine, M2M) или другое высокозащищенное UE. UE Интернета вещей относится к оборудованию пользователя, имеющему функцию восприятия информации и функцию передачи данных, например, аудиогид, персональный цифровой помощник, коллектор штрихкода, терминал сбора данных и терминал POS, используемый, главным образом, для покупки или трансфера. UE для связи "машина-машина" относится к оборудованию пользователя, имеющему возможности осуществления связи и работы в сети и реализующему атрибут "интеллектуальности", используя датчик, контроллер и т.п., с тем, чтобы обмениваться информацией с человеком, мобильной сетью или другой машиной.
Передающее устройство 2103 выполнено с возможностью посылки информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
Как вариант, информация указания типа UE может указывать в соответствии с существованием конкретного информационного элемента (Information Element, IE), что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если конкретный IE существует в информации указания типа UE, SGSN может определить, что UE является UE первого типа, а если конкретный IE не существует в информации указания типа UE, SGSN может определить, что UE не является UE первого типа. Альтернативно, информация указания типа UE может указывать в соответствии с значением конкретного IE, что UE является UE первого типа. Например, когда SGSN принимает информацию указания типа UE, посланную от HLR/HSS или UE, если значение конкретного IE в информации указания типа UE равно 1, SGSN может определить, что UE является UE первого типа, а если значение конкретного IE равно 0, SGSN может определить, что UE не является UE первого типа.
В этом варианте осуществления настоящей заявки HLR/HSS может дополнительно послать на SGSN вектор аутентификации, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности.
В некоторых реально выполнимых способах осуществления вышеупомянутый вектор аутентификации, может быть пятиразрядным байтом вектора аутентификации, содержащим случайное число RAND, ожидаемую реакцию XRES, характерный признак AUTN аутентификации, ключ CK шифрования и ключ IK целостности. Первый ключ шифрования является ключом CK шифрования в пятиразрядном байте вектора аутентификации и первый ключ IK целостности является ключом целостности в пятиразрядном байте вектора аутентификации.
В этом варианте осуществления настоящей заявки HLR/HSS может принять идентификатор UE, посланный от SGSN, определить в соответствии с идентификатором UE, что UE является UE первого типа, и послать информацию указания типа UE на SGSN, для указания, что UE является UE первого типа, так чтобы между SGSN и UE первого типа мог быть выполнен процесс улучшения ключа для UE первого типа и безопасность связи для UE первого типа в сети GPRS могла быть повышена.
На фиг. 22 схематично представлена структурная схема другого варианта осуществления HLR/HSS, соответствующая варианту осуществления настоящей заявки. Как показано на фиг. 22, HLR/HSS может содержать приемное устройство 2201, передающее устройство 2202 и процессор 2203, причем приемное устройство 2201, передающее устройство 2202 и процессор 2203 соединяются, используя шину.
Приемный модуль 2201 выполнен с возможностью приема идентификатора оборудования пользователя UE, который посылается от SGSN.
Процессор 2203 выполнен с возможностью определения в соответствии с идентификатором UE, что UE является UE первого типа.
Передающее устройство 2202 выполнено с возможностью посылки информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
В этом варианте осуществления настоящей заявки HLR/HSS может принять идентификатор UE, посланный от SGSN, определить в соответствии с идентификатором UE, что UE является UE первого типа, и послать информацию указания типа UE на SGSN, для указания, что UE является UE первого типа, так чтобы между SGSN и UE первого типа мог быть выполнен процесс улучшения ключа для UE первого типа и безопасность связи для UE первого типа в сети GPRS могла быть повышена.
На фиг. 23 схематично представлена структурная схема варианта осуществления системы GPRS, соответствующей варианту осуществления настоящей заявки. Как показано на фиг. 23, система GPRS может содержать устройство 2301 SGSN, UE 2302 и HLR/HSS 2303.
Устройство SGSN выполнено с возможностью: приема сообщения запроса, посланного от UE, приобретения вектора аутентификации от HLR/HSS, где вектор аутентификации содержит первый ключ шифрования и первый ключ целостности, если SGSN определяет, что UE является UE первого типа, выбора алгоритма шифрования и алгоритма целостности для UE, посылки выбранного алгоритма шифрования и выбранного алгоритма целостности на UE, и получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
UE выполнено с возможностью: посылки сообщения запроса на SGSN, приема алгоритма шифрования и алгоритма целостности, посланных от SGSN, и получения второго ключа шифрования и второго ключа целостности, соответствующих первому ключу шифрования и первому ключу целостности.
Второй ключ шифрования и алгоритм шифрования используются для выполнения защиты с помощью шифрования сообщения, передаваемого между SGSN и UE, и второй ключ целостности и выбранный алгоритм целостности используются для выполнения защиты целостности сообщения, передаваемого между SGSN и UE.
В некоторых реально выполнимых способах осуществления HLR/HSS 2303 может быть выполнена с возможностью:
приема идентификатора UE, посланного от SGSN;
определения в соответствии с идентификатором UE, что UE является UE первого типа; и
посылки информации указания типа UE на SGSN, где информация указания типа UE используется для указания, что UE является UE первого типа.
В этом варианте осуществления настоящей заявки UE посылает на SGSN сообщение запроса. После определения, что UE является UE первого типа, SGSN выбирает алгоритм шифрования и алгоритм целостности. Одновременно UE и SGSN вычисляют улучшенный второй ключ шифрования и улучшенный второй ключ целостности, соответствующие первому ключу шифрования и первому ключу целостности, и выполняют защиту с помощью шифрования и защиту целостности сообщения связи, передаваемого между UE и SGSN, используя второй ключ шифрования, второй ключ целостности и алгоритм шифрования и алгоритм целостности, выбранные с помощью SGSN. Это повышает безопасность связи для UE первого типа в сети GPRS.
Соответственно, случай осуществления настоящей заявки дополнительно раскрывает компьютерный носитель для хранения данных, где на компьютерном носителе для хранения данных хранится программа и когда программа работает, то могут выполняться варианты осуществления, описанные на любом из фиг. 1-5 настоящей заявки.
Соответственно, случай осуществления настоящей заявки дополнительно раскрывает другой компьютерный носитель для хранения данных, где на компьютерном носителе для хранения данных хранится программа и когда программа работает, то могут выполняться варианты осуществления, описанные на любом из фиг. 6-5 настоящей заявки.
Соответственно, случай осуществления настоящей заявки дополнительно раскрывает другой компьютерный носитель для хранения данных, где на компьютерном носителе для хранения данных хранится программа и когда программа работает, то могут выполняться варианты осуществления, описанные на фиг. 11 настоящей заявки.
Следует заметить, что для краткости описания представленные выше варианты осуществления способа описаны в виде последовательности действий. Однако специалисты в данной области техники должны понимать, что настоящая заявка не ограничивается описанным порядком действий, поскольку в соответствии с настоящей заявкой некоторые этапы могут выполняться в другом порядке или одновременно. Дополнительно, специалистам в данной области техники следует понимать, что все варианты осуществления, представленные в настоящем описании, являются примерными вариантами осуществления и приведенные в них действия и модули не обязательно требуются для настоящей заявки.
В описанных выше вариантах осуществления описание каждого варианта осуществления имеет соответствующие центральные моменты. Для части, не описанной подробно в варианте осуществления, ссылка может делаться на соответствующие описания в других вариантах осуществления.
Специалисты в данной области техники должны понимать, что все или некоторые этапы способов в вариантах осуществления могут быть реализованы программой, дающей команды соответствующему аппаратурному обеспечению. Программа может храниться на считываемом компьютером носителе для хранения данных. Носителем хранения данных может быть флэш-память, постоянное запоминающее устройство (Read-Only Memory, ROM), оперативная память (Random Access Memory, RAM), магнитный диск и оптический диск.
Выше подробно описывается способ улучшения ключа системы GPRS, устройство SGSN, UE, HLR/HSS и система GPRS, представленные в вариантах осуществления настоящей заявки. В настоящем описании используются конкретные примеры, чтобы представить принцип и способы осуществления настоящей заявки. Описания приведенных выше вариантов осуществления предназначены просто для облегчения понимания способа и основных идей настоящей заявки. Кроме того, что касается конкретных способов осуществления и объема защиты заявки, специалистами в данной области техники могут делаться модификации, соответствующие идее настоящей заявки. В заключение, содержание настоящего описания не должно рассматриваться как ограничение настоящей заявки.