RU2408991C2 - Protection of confidentiality in communication system - Google Patents

Protection of confidentiality in communication system Download PDF

Info

Publication number
RU2408991C2
RU2408991C2 RU2008133206/09A RU2008133206A RU2408991C2 RU 2408991 C2 RU2408991 C2 RU 2408991C2 RU 2008133206/09 A RU2008133206/09 A RU 2008133206/09A RU 2008133206 A RU2008133206 A RU 2008133206A RU 2408991 C2 RU2408991 C2 RU 2408991C2
Authority
RU
Russia
Prior art keywords
session
user
key
application
identifier
Prior art date
Application number
RU2008133206/09A
Other languages
Russian (ru)
Other versions
RU2008133206A (en
Inventor
Эйдриан ЭСКОТТ (US)
Эйдриан ЭСКОТТ
Джеймс СЭМПЛ (GB)
Джеймс СЭМПЛ
Original Assignee
Квэлкомм Инкорпорейтед
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Квэлкомм Инкорпорейтед filed Critical Квэлкомм Инкорпорейтед
Publication of RU2008133206A publication Critical patent/RU2008133206A/en
Application granted granted Critical
Publication of RU2408991C2 publication Critical patent/RU2408991C2/en

Links

Images

Abstract

FIELD: information technologies.
SUBSTANCE: user generates identifier of secondary key on the basis of secondary key and the first variable of session related to the first session, and sends identifier of secondary key to application, generates traffic key related to specified identifier of secondary key and executes safe communication with specified application with the help of specified traffic key during the first session. At the same time the second variable of session is matched with the specified application for communication during subsequent second session.
EFFECT: improved confidentiality of user in communication system.
33 cl, 3 dwg

Description

Заявление о приоритете 35 U.S.C. §119Priority Statement 35 U.S.C. §119

По настоящей заявке на выдачу патента испрашивается приоритет по предварительной заявке № 60/758,971, поданной 13 января 2006 года, и предварительной заявке № 60/762,771, поданной 27 января 2006 года, обе переданы правопреемнику настоящей заявки, и полные раскрытия которых, таким образом, включены по ссылке в данный документ.This patent application claims priority in provisional application No. 60 / 758,971, filed January 13, 2006, and provisional application No. 60 / 762,771, filed January 27, 2006, both of which are assigned to the assignee of this application, and the full disclosures of which, therefore, incorporated by reference in this document.

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

Настоящее изобретение, в целом, относится к связи, а более конкретно к защите конфиденциальности пользователя в системах связи.The present invention generally relates to communication, and more particularly to protecting user privacy in communication systems.

Уровень техникиState of the art

Так как современные устройства получили возможность связываться с произвольными серверами приложений, существует необходимость аутентифицировать и защищать такие связи. В системах с асимметричным или открытым ключом устройство (или "пользователь") может представить открытый ключ серверу приложений (или "приложению"), тогда как отдельный закрытый ключ сохраняется конфиденциальным. В системах с общим или симметричным ключом пользователь может проводить связи с приложением с помощью удостоверения пользователя, которое может быть "анонимным" в том, что удостоверение пользователя может не открывать, кем фактически является пользователь. При приеме этого удостоверения пользователя приложение может затем получить ключ, связанный с этим удостоверением пользователя, чтобы войти в зашифрованную связь с пользователем. Ключ может быть заранее известен приложению, или он может быть получен от сервера ключей, например, третьей стороны, которой доверяют и пользователь, и приложение.Since modern devices have the ability to communicate with arbitrary application servers, there is a need to authenticate and secure such communications. On systems with an asymmetric or public key, a device (or “user”) can present the public key to the application server (or “application”), while a separate private key is kept confidential. On systems with a shared or symmetric key, the user can communicate with the application using a user identity, which may be “anonymous” in that the user identity may not reveal who the user actually is. Upon receiving this user identity, the application can then retrieve the key associated with this user identity to enter into encrypted communication with the user. The key can be known in advance by the application, or it can be obtained from a key server, for example, a third party that is trusted by both the user and the application.

Существуют конкретные способы, в которых конфиденциальность пользователя может быть скомпрометирована в этих системах, даже когда используется "анонимное" удостоверение пользователя. Например, если пользователь обменивается одним и тем же удостоверением пользователя с приложением во множестве сеансов, приложение может вывести частную информацию о пользователе, связывая сеансы пользователя друг с другом. Это называется "атакой по возможности связывания". Например, в беспроводной сети использование одного удостоверения, чтобы обратиться к нескольким базовым станциям, может привести к отслеживанию пользователя в сети. Альтернативно, если пользователь обращается к нескольким разным приложениям с помощью одного и того же удостоверения пользователя, тогда третья сторона может установить, к каким приложениям пользователь обратился, и когда пользователь обратился к ним, пассивно подслушивая передачу удостоверения пользователя между приложением и сервером ключей. Это потенциально открывает частную информацию о предпочтениях пользователя. Та же информация может быть получена третьей стороной, непосредственно запрашивающей приложения, к которым осуществлен доступ.There are specific ways in which user privacy may be compromised on these systems, even when a “anonymous” user identity is used. For example, if a user exchanges the same user identity with an application in multiple sessions, the application can display private user information by linking the user sessions to each other. This is called a "bind attack". For example, in a wireless network, using a single identity to access multiple base stations can lead to user tracking on the network. Alternatively, if a user accesses several different applications using the same user identity, then a third party can determine which applications the user has accessed and when the user has accessed them by passively listening to the transfer of the user identity between the application and the key server. This potentially reveals private information about user preferences. The same information may be obtained by a third party directly requesting the accessed applications.

Раскрытие изобретенияDisclosure of invention

Один аспект настоящего изобретения представляет способ защиты конфиденциальности пользователя, содержащий формирование вторичного удостоверения, связанного с пользователем на основе ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; и отправку упомянутой вторичного удостоверения приложению.One aspect of the present invention is a method for protecting user privacy, comprising generating a secondary identity associated with the user based on a key and at least one parameter comprising a session variable; and sending said secondary identity to the application.

Другой аспект настоящего изобретения предоставляет способ защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, упомянутый способ содержит прием от пользователя вторичного удостоверения, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; передачу упомянутого вторичного удостоверения упомянутому серверу ключей; и прием от упомянутого сервера ключей информации, связанной с упомянутым пользователем.Another aspect of the present invention provides a method of protecting user privacy during communication in a system having a key server, said method comprising receiving from the user a secondary identity generated from a key and at least one parameter containing a session variable; transmitting said secondary identity to said key server; and receiving, from said server, keys of information related to said user.

Еще один аспект настоящего изобретения предоставляет способ защиты конфиденциальности пользователя, содержащий прием от пользователя вторичного удостоверения ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; и идентификацию упомянутого ключа из упомянутого вторичного удостоверения ключа.Another aspect of the present invention provides a method for protecting user privacy, comprising: receiving from the user a secondary key identity generated from a key and at least one parameter comprising a session variable; and identifying said key from said secondary key identity.

Еще один аспект настоящего изобретения предоставляет способ защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, упомянутый способ содержит прием от запрашивающего приложения вторичного удостоверения, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; и идентификацию упомянутого пользователя из упомянутого вторичного удостоверения.Another aspect of the present invention provides a method of protecting user privacy during communication in a system having a key server, said method comprising receiving from a requesting application a secondary identity generated from a key and at least one parameter containing a session variable; and identifying said user from said secondary identity.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя, содержащее генератор вторичного удостоверения для формирования вторичного удостоверения, связанного с пользователем, на основе ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; передатчик для отправки упомянутого вторичного удостоверения приложению.Another aspect of the present invention provides a device for protecting user privacy, comprising: a secondary identity generator for generating a secondary identity associated with the user based on a key and at least one parameter comprising a session variable; a transmitter for sending said secondary identity to the application.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, упомянутое устройство содержит приемник для приема от пользователя вторичного удостоверения, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; и передатчик для передачи упомянутого вторичного удостоверения пользователя упомянутому серверу ключей.Another aspect of the present invention provides a device for protecting user privacy during communication in a system having a key server, said device comprising a receiver for receiving from a user a secondary identity generated from a key and at least one parameter containing a session variable; and a transmitter for transmitting said secondary user identity to said key server.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя, содержащее приемник для приема от пользователя вторичного удостоверения ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; процессор для идентификации упомянутого ключа из упомянутого вторичного удостоверения ключа.Another aspect of the present invention provides a device for protecting user privacy, comprising: a receiver for receiving from a user a secondary key identity generated from a key and at least one parameter comprising a session variable; a processor for identifying said key from said secondary key identity.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, упомянутое устройство содержит приемник для приема от запрашивающего приложения вторичного удостоверения, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; и процессор для идентификации упомянутого пользователя из упомянутого вторичного удостоверения.Another aspect of the present invention provides a device for protecting user privacy during communication in a system having a key server, said device comprising a receiver for receiving from a requesting application a secondary identity generated from a key and at least one parameter containing a session variable; and a processor for identifying said user from said secondary identity.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя во время связи с приложением, упомянутое устройство содержит средство для формирования вторичного удостоверения; средство для отправки упомянутого вторичного удостоверения приложению.Another aspect of the present invention provides an apparatus for protecting user privacy during communication with an application, said apparatus comprising means for generating a secondary identity; means for sending said secondary identity to the application.

Еще один аспект настоящего изобретения предоставляет устройство для защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, упомянутое устройство содержит приемник для приема от запрашивающего приложения вторичного удостоверения, сформированного из ключа и, по меньшей мере, одного параметра, содержащего переменную сеанса; средство для идентификации упомянутого пользователя из упомянутого вторичного удостоверения; и передатчик для передачи информации, связанной с упомянутым пользователем, упомянутому запрашивающему приложению.Another aspect of the present invention provides a device for protecting user privacy during communication in a system having a key server, said device comprising a receiver for receiving from a requesting application a secondary identity generated from a key and at least one parameter containing a session variable; means for identifying said user from said secondary identity; and a transmitter for transmitting information related to said user to said requesting application.

Краткое описание чертежейBrief Description of the Drawings

Фиг. 1 иллюстрирует вариант осуществления настоящего изобретения, в котором сервер ключей используется для того, чтобы способствовать зашифрованной связи между пользователем и приложением.FIG. 1 illustrates an embodiment of the present invention in which a key server is used to facilitate encrypted communication between a user and an application.

Фиг. 2 иллюстрирует вариант осуществления процесса или способа, в котором пользователь может установить безопасную связь с приложением согласно варианту осуществления, показанному на Фиг. 1.FIG. 2 illustrates an embodiment of a process or method in which a user can establish secure communication with an application according to the embodiment shown in FIG. one.

Фиг. 3 иллюстрирует вариант осуществления процесса или способа, в котором пользователь может безопасно связаться с приложением, без использования сервера ключей.FIG. 3 illustrates an embodiment of a process or method in which a user can securely contact an application without using a key server.

Осуществление изобретенияThe implementation of the invention

Чтобы защитить конфиденциальность пользователя, существует необходимость в предоставлении безопасной связи между пользователем и приложением, без открытия фактического удостоверения пользователя приложению или третьей стороне, подслушивающей связь, или иного предоставления возможности приложению определять, что другие сеансы начинаются от того же пользователя. Изобретение, раскрытое в данном документе, устраняет этот недостаток.To protect user privacy, there is a need to provide secure communication between the user and the application, without revealing the actual user identity to the application or third party eavesdropping on the communication, or otherwise allowing the application to determine that other sessions are starting from the same user. The invention disclosed herein eliminates this drawback.

Ссылка теперь направлена на Фиг. 1, которая иллюстрирует вариант осуществления системы 100 связи, в которой сервер ключей используется для того, чтобы способствовать зашифрованной связи между пользователем и приложением.The link is now directed to FIG. 1, which illustrates an embodiment of a communication system 100 in which a key server is used to facilitate encrypted communication between a user and an application.

Система 100 связи может быть любой голосовой системой, системой передачи данных или мультимедийной системой, например, работающей по стандарту и/или протоколу связи, такому как WCDMA (широкополосный множественный доступ с кодовым разделением каналов), cdma2000 или IP-стандарт (протокол Интернета) или любой другой подходящий стандарт или протокол. Вариант осуществления может использоваться, например, как расширение к универсальной архитектуре самозагрузки, как определено в различных стандартах связи. (См., например, "Generic Authentication Architecture (GAA): Generic bootstrapping architecture," 3GPP TS 33.220 и "Generic Bootstrapping Architecture (GBA) Framework," 3GPP2 S.S0109-0 Версия 1).The communication system 100 may be any voice system, data transmission system, or multimedia system, for example, operating on a communication standard and / or protocol, such as WCDMA (Code Division Multiple Access), cdma2000, or IP (Internet Protocol) or any other suitable standard or protocol. An embodiment may be used, for example, as an extension to a universal bootstrapping architecture, as defined in various communication standards. (See, for example, “Generic Authentication Architecture (GAA): Generic bootstrapping architecture,” 3GPP TS 33.220 and “Generic Bootstrapping Architecture (GBA) Framework,” 3GPP2 S.S0109-0 Version 1).

Как иллюстрировано на Фиг. 1, пользователь 114 (также именуемый как пользовательское оборудование) может обратиться к приложению 116 в системе 100. Приложение 116 может быть выделенным сервером в сети, обслуживающим определенное приложение, например, VoIP (голос по протоколу Интернета), или сам элемент сети. Приложение 116 может также быть программным приложением, сохраненным на серверах или других устройствах в сети. В варианте осуществления (не показан) приложение 116 может находиться в том же физическом устройстве, что и сервер 126 ключей. Каждое приложение может иметь свою собственную выделенную схему передатчика/приемника (не показана) для связи с пользователем 114 и/или сервером 126 ключей, или несколько приложений могут совместно использовать общую схему передатчика/приемника. Может быть отмечено, что приложение может включать в себя несколько физических объектов, например приложение может быть полностью мобильной сетью, содержащей множество базовых станций.As illustrated in FIG. 1, user 114 (also referred to as user equipment) can access application 116 in system 100. Application 116 can be a dedicated server on the network serving a specific application, for example, VoIP (Voice over Internet Protocol), or the network element itself. Application 116 may also be a software application stored on servers or other devices on a network. In an embodiment (not shown), application 116 may reside in the same physical device as key server 126. Each application may have its own dedicated transmitter / receiver circuit (not shown) for communication with user 114 and / or key server 126, or several applications may share a common transmitter / receiver circuit. It may be noted that the application may include several physical entities, for example, the application may be a fully mobile network containing multiple base stations.

В одном варианте осуществления пользователь 114 может предварительно сохранить ключ 102 в своей памяти. И ключ 102, и тот факт, что он сохранен у пользователя 114, известны серверу 126 ключей. Ключ 102 может быть уникальным для пользователя 114 или группы пользователей, которая включает в себя пользователя 114. Ключ 102 может использоваться постоянно или только в течение конкретного периода времени. В варианте осуществления ключ 102 известен только авторизованным сторонам, таким как сервер 126 ключей и пользователь 114.In one embodiment, user 114 may pre-store key 102 in his memory. Both the key 102 and the fact that it is stored with the user 114 are known to the key server 126. The key 102 may be unique to the user 114 or a group of users, which includes the user 114. The key 102 may be used continuously or only for a specific period of time. In an embodiment, key 102 is known only to authorized parties, such as key server 126 and user 114.

В одном варианте осуществления как пользователь 114, так и сервер 126 ключей могут формировать temp_ID 108 (также именуемый вторичным удостоверением) с помощью следующей общей формулы:In one embodiment, both user 114 and key server 126 can generate temp_ID 108 (also called secondary identity) using the following general formula:

temp_id=F(ключ, m Уравнение (1) temp_id = F (key, m Equation (1)

В Уравнении (1) F - это предварительно определенная алгоритмическая функция, такая как криптографическая хэш-функция. Альтернативно, F может быть функцией, которая последовательно связывает один или более параметров с выводом одной или более хэш-функций. F также может быть функцией, которая выполняет хэширование по комбинации ряда параметров с выводом одной или более других хэш-функций. В одном варианте осуществления предварительно определенная алгоритмическая функция может быть защищенным алгоритмом хэширования SHA-1 (См. публикацию федерального стандарта обработки информации 180-1 (1995).)In Equation (1), F is a predefined algorithmic function, such as a cryptographic hash function. Alternatively, F may be a function that sequentially associates one or more parameters with the output of one or more hash functions. F may also be a function that performs hashing by combining a number of parameters with the output of one or more other hash functions. In one embodiment, the predefined algorithmic function may be a SHA-1 protected hash algorithm. (See publication of Federal Information Processing Standard 180-1 (1995).)

Также в Уравнении (1) m означает набор параметров, который может включать в себя, например, удостоверение пользователя, одну или более зависимых от сеанса переменных и/или другие параметры. Сеанс может означать установление связи между пользователем и приложением, в которой используется тот же temp_ID. В варианте осуществления m, как правило, включает в себя, по меньшей мере, одну переменную сеанса, которая может изменяться каждый раз, когда выполняется обмен temp_ID с приложением. Такая переменная может быть цифровым увеличивающимся счетчиком использований, временной отметкой или выводом генератора псевдослучайных чисел. Будет понятно, что более крупные переменные сеанса могут использоваться для большей безопасности ценой большей сложности осуществления. В варианте осуществления переменная сеанса может быть 16-битным значением счетчика.Also in Equation (1), m means a set of parameters, which may include, for example, a user identity, one or more session-dependent variables and / or other parameters. A session can mean establishing a connection between a user and an application that uses the same temp_ID. In an embodiment, m typically includes at least one session variable that may change each time a temp_ID exchange is performed with the application. Such a variable may be a digital incrementing usage counter, timestamp or output of a pseudo random number generator. It will be appreciated that larger session variables can be used for greater security at the cost of greater implementation complexity. In an embodiment, the session variable may be a 16-bit counter value.

Обращаясь опять к Фиг. 1, как F, так и m известны пользователю 114 и серверу 126 ключей. В одном варианте осуществления сервер 126 ключей может предварительно вычислить и сохранить значения temp_ID на основе данного ключа 102 и всех возможных значений параметра m, так что данный temp_ID, ключ 102, используемый, чтобы сформировать его, может быть быстро идентифицирован.Referring again to FIG. 1, both F and m are known to user 114 and key server 126. In one embodiment, the key server 126 can pre-compute and store the temp_ID values based on the given key 102 and all possible values of the parameter m, so that the given temp_ID, the key 102 used to generate it, can be quickly identified.

Фиг. 2 иллюстрирует вариант осуществления процесса или способа 200, в котором пользователь 114 может установить безопасную связь с приложением 116 согласно варианту осуществления, показанному на Фиг. 1. Сначала, на этапе 201 пользователь 114 вычисляет temp_ID 108 из ключа и набора m параметров и отправляет temp_ID 108 приложению 116.FIG. 2 illustrates an embodiment of a process or method 200 in which user 114 can establish secure communication with an application 116 according to the embodiment shown in FIG. 1. First, at step 201, user 114 calculates temp_ID 108 from the key and a set of m parameters and sends temp_ID 108 to application 116.

На этапе 202, после того как принят temp_ID 108, отправленный пользователем 114, приложение 116 отправляет temp_ID 108 серверу 126 ключей.At step 202, after the temp_ID 108 sent by the user 114 is received, the application 116 sends the temp_ID 108 to the key server 126.

Как описано ранее, в одном варианте осуществления сервер 126 ключей имеет предварительно сохраненный набор temp_ID и ключей в своей памяти. На этапе 203 сервер 126 ключей использует temp_ID 108, принятый от приложения 116, чтобы идентифицировать ключ 102. Как упомянуто ранее, каждый ключ может соответствовать уникальному пользователю. В этом примере ключ 102 соответствует пользователю 114. Сервер 126 ключей может, поэтому, сопоставить temp_ID 108 с пользователем 114, как показано на этапе 203.As described previously, in one embodiment, the key server 126 has a previously stored set of temp_ID and keys in its memory. At step 203, the key server 126 uses temp_ID 108 received from the application 116 to identify the key 102. As mentioned earlier, each key can correspond to a unique user. In this example, the key 102 corresponds to the user 114. The key server 126 can therefore map temp_ID 108 to the user 114, as shown in step 203.

На этапе 203 сервер 126 ключей может дополнительно сформировать sub_key 238 (также называемый ключом трафика в данном документе) на основе ключа 102. Это формирование подключа может использовать другую алгоритмическую функцию и содержать параметры, известные только пользователю 114 и серверу 126 ключей. В одном варианте осуществления значение temp_ID 108 само может использоваться в формировании связанных подключей. В альтернативном варианте осуществления любое число подключей 238 может быть сформировано посредством взятия хэш-функции (например, SHA-1) ключа 102 и соответствующего порядкового номера.At step 203, the key server 126 may optionally generate a sub_key 238 (also called a traffic key in this document) based on the key 102. This subkey generation may use another algorithmic function and contain parameters known only to the user 114 and the key server 126. In one embodiment, temp_ID 108 can itself be used to form related subkeys. In an alternative embodiment, any number of subkeys 238 may be generated by taking a hash function (e.g., SHA-1) of key 102 and the corresponding sequence number.

На этапе 204 сервер 126 ключей отправляет sub_key 238 приложению 116. Сервер 126 ключей может также отправить другую информацию о пользователе 114 приложению 116.At step 204, the key server 126 sends the sub_key 238 to the application 116. The key server 126 can also send other user information 114 to the application 116.

Пользователь 114 может независимо сформировать sub_key 238 (или "ключ трафика") из параметров, уже известных ему. Таким образом, с помощью sub_key 238, известного и приложению 116, и пользователю 114, обе стороны могут использовать sub_key 238, чтобы зашифровать и расшифровать данные 240, отправленные между ними, как изображено на этапе 205.User 114 may independently generate sub_key 238 (or a “traffic key”) from parameters already known to him. Thus, using sub_key 238, known to both the application 116 and the user 114, both parties can use sub_key 238 to encrypt and decrypt the data 240 sent between them, as shown in step 205.

Обращаясь обратно к Фиг. 1, если пользователь 114 впоследствии обращается к другому приложению 122, temp_ID, отличный от temp_ID 108, может быть вычислен в соответствии с уравнением (1), как описано выше. Если функция F выбрана, так что связь между temp_ID 108 и другими temp_ID, используемыми во время других сеансов тем же пользователем, трудно различима, неавторизованной стороне будет трудно связать перехваченный temp_ID с каким-либо отдельным пользователем, таким образом, сохраняя конфиденциальность удостоверения пользователя.Turning back to FIG. 1, if user 114 subsequently accesses another application 122, temp_ID other than temp_ID 108 may be calculated in accordance with equation (1) as described above. If the function F is selected so that the connection between temp_ID 108 and other temp_IDs used by other users during other sessions is difficult to distinguish, it will be difficult for the unauthorized party to associate the intercepted temp_ID with any particular user, thus preserving the confidentiality of the user's identity.

В одном варианте осуществления набор m параметров, используемый, чтобы сформировать temp_ID в уравнении (1), может включать в себя удостоверение приложения (app_ID), соответствующего приложению, к которому осуществлен доступ. В этом способе сервер 126 ключей может указать из temp_ID 108, был ли в действительности пользователем 114 осуществлен доступ к приложению 116, запрашивающему пользовательскую информацию у сервера 126 ключей. Для безопасности сервер 126 ключей может выбрать отправку информации о пользователе 114, включающую в себя удостоверение пользователя и конкретный для пользователя ключ, только приложению 116, чей app_ID соответствует app_ID, использованному, чтобы сформировать temp_ID 108. Это предотвращает получение информации о пользователе 114 от сервера 126 ключей другим приложением, таким как приложение 118, к которому не обращался пользователь 114.In one embodiment, the set of m parameters used to generate temp_ID in equation (1) may include an application identity (app_ID) corresponding to the accessed application. In this method, the key server 126 may indicate from temp_ID 108 whether the user 114 actually accessed the application 116 requesting user information from the key server 126. For security, the key server 126 may choose to send user information 114, which includes the user's identity and user-specific key, only to the application 116, whose app_ID matches the app_ID used to generate temp_ID 108. This prevents receiving information about user 114 from the server 126 keys by another application, such as application 118, which was not accessed by user 114.

В варианте осуществления пользователь 114 может даже быть приглашен, чтобы сформировать temp_ID, когда пользователь 114 еще не знает app_ID приложения, к которому он желает получить доступ. В этом случае пользователь может, тем не менее, сформировать temp_ID, используя фиксированный "универсальный" или "по умолчанию" app_ID вместо конкретного для приложения app_ID. В этом варианте осуществления сервер ключей может быть выполнен с возможностью узнавать temp_ID, содержащий в себе такой "универсальный" или "по умолчанию" app_ID, и предоставляет конкретные для пользователя данные приложению, даже если универсальный app_ID не соответствует app_ID запрашивающего приложения. В более позднее время, после того как пользователь выяснил app_ID приложения, пользователь может сформировать новый temp_ID на основе правильного app_ID.In an embodiment, user 114 may even be invited to generate temp_ID when user 114 does not yet know the app_ID of the application that he wishes to access. In this case, the user can, however, generate temp_ID using the fixed "universal" or "default" app_ID instead of the application-specific app_ID. In this embodiment, the key server can be configured to recognize a temp_ID containing such a “universal” or “default” app_ID, and provides user-specific data to the application, even if the universal app_ID does not match the app_ID of the requesting application. At a later time, after the user has determined the app_ID of the application, the user can generate a new temp_ID based on the correct app_ID.

В другом варианте осуществления изобретения, если новый набор m' параметров согласован пользователем и приложением во время сеанса, тогда, запрашивая сервер ключей, приложение может определить новый temp_ID, который должен использоваться во время последующего сеанса. Чтобы выполнить это, приложение может предоставить, например, новый набор m' параметров вместе с temp_ID, первоначально принятым от пользователя, серверу ключей. Это предохраняет пользователя от необходимости передавать новый temp_ID приложению каждый раз, когда требуется использование нового temp_ID.In another embodiment of the invention, if the new set of m 'parameters is agreed upon by the user and the application during the session, then by requesting the key server, the application can determine the new temp_ID to be used during the subsequent session. To accomplish this, the application can provide, for example, a new set of m 'parameters along with temp_ID, originally received from the user, to the key server. This prevents the user from having to pass the new temp_ID to the application each time a new temp_ID is required.

Фиг. 3 иллюстрирует вариант осуществления процесса или способа 300, в котором пользователь 114 может безопасно связаться с приложением 116 без использования сервера ключей. В этом варианте осуществления предполагается, что пользователь 114 и приложение 116 уже совместно используют ключ K через некоторую схему распространения ключа до начала связи, изображенной на Фиг. 3. В варианте осуществления ключ K является переменной, известной только авторизованным сторонам, таким как пользователь и приложение.FIG. 3 illustrates an embodiment of a process or method 300 in which user 114 can safely communicate with application 116 without using a key server. In this embodiment, it is assumed that the user 114 and the application 116 are already sharing the key K through some key distribution scheme before starting the communication shown in FIG. 3. In an embodiment, key K is a variable known only to authorized parties, such as a user and an application.

На этапе 301 пользователь 114 может формировать Derived_Key_ID 310 как следующее:At step 301, user 114 may configure Derived_Key_ID 310 as follows:

Derived_Key_ID=F(K, переменная сеанса, другие параметры) Уравнение (2),Derived_Key_ID = F (K, session variable, other parameters) Equation (2),

где F снова является предварительно определенной алгоритмической функцией, переменная сеанса является зависимой от сеанса переменной, такой как значение счетчика, а другие параметры могут включать в себя любой параметр, явно не перечисленный в данном документе, который известен и пользователю 114, и приложению 116. Как ранее отмечено, переменная сеанса может изменяться каждый раз, когда temp_ID обменивается с приложением, и может быть цифровым увеличивающимся счетчиком использований, временной меткой или выводом генератора псевдослучайных чисел. Будет понятно, что более крупные переменные сеанса могут использоваться для большей безопасности ценой большей сложности осуществления. В варианте осуществления переменная сеанса может быть 16-битным значением счетчика.where F is again a predefined algorithmic function, the session variable is a session-dependent variable, such as a counter value, and other parameters may include any parameter not explicitly listed in this document that is known to both user 114 and application 116. How previously noted, the session variable may change every time temp_ID is exchanged with the application, and may be a digital incrementing usage counter, timestamp or pseudo-random generator output sat down. It will be appreciated that larger session variables can be used for greater security at the cost of greater implementation complexity. In an embodiment, the session variable may be a 16-bit counter value.

На этапе 302 пользователь 114 отправляет Derived_Key_ID 310 приложению 116. На этапе 303 приложение 116, которое предварительно вычислило набор Derived_Key_ID по всем возможным значениям ключа K, переменную сеанса и другие параметры и сохранило этот набор в памяти, может идентифицировать ключ K, переменную сеанса, использованную, чтобы сформировать принятый Derivded_Key_ID 310, и связанного пользователя 114. Когда обе стороны знают значения K, переменную 331 сеанса и другие параметры, обе стороны могут вычислить общий ключ Derived_K 332 как следующее:At step 302, user 114 sends Derived_Key_ID 310 to application 116. At step 303, application 116, which previously calculated the set of Derived_Key_ID from all possible values of the key K, the session variable, and other parameters, stored in memory, can identify the key K, the session variable used to form the received Derivded_Key_ID 310, and the associated user 114. When both parties know the values of K, the session variable 331, and other parameters, both sides can calculate the common key Derived_K 332 as the following:

Derived_K=G(K, переменная сеанса, другие параметры) Уравнение (3),Derived_K = G (K, session variable, other parameters) Equation (3),

где G является другой предварительно определенной алгоритмической функцией, а переменная 331 сеанса соответствует переменной сеанса, используемой для того, чтобы сформировать Derived_key_ID 310 в уравнении (2). Может быть отмечено, что функция G может быть выбрана, чтобы быть такой же что и использованная, чтобы сформировать sub_key 238, описанный ранее со ссылкой на Фиг. 2. Безопасная связь может теперь быть проведена с помощью Derived_K 332, чтобы отправить и принять зашифрованные данные 340, как показано на этапе 304.where G is another predetermined algorithmic function, and the session variable 331 corresponds to the session variable used to generate Derived_key_ID 310 in equation (2). It may be noted that the function G can be selected to be the same as that used to generate the sub_key 238 described previously with reference to FIG. 2. A secure connection can now be made using Derived_K 332 to send and receive encrypted data 340, as shown in step 304.

В дополнительном варианте осуществления изобретения, если новый набор m' параметров согласован пользователем и приложением во время сеанса, тогда приложение может определить с помощью уравнения (3) новый temp_ID, который должен использоваться во время последующего сеанса. Это обеспечит защиту против атак по возможности связи третьей стороной. Например, пользователь может изменять свои temp_ID во время сеансов с разными базовыми станциями в мобильной сети, чтобы избежать отслеживания подслушивающей третьей стороной.In a further embodiment of the invention, if the new set m 'of parameters is agreed by the user and the application during the session, then the application can determine using equation (3) the new temp_ID to be used during the subsequent session. This will provide protection against attacks if possible by third party communications. For example, a user may change their temp_ID during sessions with different base stations on a mobile network in order to avoid tracking by an eavesdropping third party.

Может быть отмечено, что вышеупомянутые варианты осуществления были описаны в контексте систем с общим ключом или симметричных криптографических систем, системы с открытым ключом или асимметричные криптографические системы также восприимчивы к атакам по возможности связи, где пользователь повторно использует один и тот же открытый ключ. Аспекты настоящего изобретения могут также применяться, чтобы изменить закрытый ключ и, следовательно, открытый ключ согласно зависимой от сеанса переменной и/или удостоверения приложения. Может быть отмечено, однако, что в системах с открытым ключом служебные данные регистрации и процессы выдачи сертификата, требуемые каждый раз, когда пара открытый/закрытый ключ изменяется, могут привести к тому, что пара открытый/закрытый ключ предпочтительно используется в течение продолжительного периода времени.It may be noted that the above embodiments have been described in the context of shared key systems or symmetric cryptographic systems, public key systems or asymmetric cryptographic systems are also susceptible to communication attacks where the user reuses the same public key. Aspects of the present invention may also be used to modify the private key and, therefore, the public key according to the session-dependent variable and / or application identity. It may be noted, however, that in public-key systems, the registration overhead and certificate issuance processes required each time a public / private key pair is changed may result in the public / private key pair being preferably used for an extended period of time .

Согласно варианту осуществления память в каждом из сервера 126 ключей и пользователя 114 может быть либо энергозависимого, либо энергонезависимого типа, такого как накопитель на жестком магнитном диске или схема RAM (оперативное запоминающее устройство). Как альтернатива, память может быть сделана из других типов схем, таких как EEPROM (электрически стираемое программируемое постоянное запоминающее устройство), EPROM (электрически программируемое постоянное запоминающее устройство), ROM (постоянное запоминающее устройство), ASIC (специализированная интегральная микросхема), магнитный диск, оптический диск и другие, хорошо известные в области техники.According to an embodiment, the memory in each of the key server 126 and the user 114 may be of either a volatile or non-volatile type, such as a hard disk drive or a RAM (random access memory) circuit. Alternatively, the memory can be made of other types of circuits, such as EEPROM (Electrically Erasable Programmable Read-Only Memory), EPROM (Electrically Programmable Read-Only Memory), ROM (Read-Only Memory), ASIC (Specialty Integrated Circuit), Magnetic Disk, optical disk and others well known in the art.

Должно быть отмечено, что изобретение может быть осуществлено как процесс или способ и быть закодировано как машиночитаемые инструкции, переносимые на любом машиночитаемом носителе, известном в данной области техники. Здесь, термин "машиночитаемый носитель" ссылается на любой носитель, который участвует в предоставлении инструкций какому-либо процессору, такому как процессоры в сервере 126 ключей и пользователе 114, показанных на Фиг. 1. Такой носитель может быть накопительного типа и может принимать форму энергозависимого или энергонезависимого носителя хранения, как также описано ранее, например, в описании памяти и сервера 126 ключей и пользователя 114. Такой носитель может также быть передающего типа и может включать в себя коаксиальный кабель, медный провод, оптический кабель и радиоинтерфейс, передающий звуковые или электромагнитные волны, способные передавать сигналы, читаемые машинами или компьютерами.It should be noted that the invention can be implemented as a process or method and be encoded as machine-readable instructions carried on any computer-readable medium known in the art. Here, the term "machine-readable medium" refers to any medium that is involved in providing instructions to any processor, such as the processors in the key server 126 and user 114, shown in FIG. 1. Such a medium may be a storage type and may take the form of a volatile or non-volatile storage medium, as also described previously, for example, in the description of the memory and the key server 126 and user 114. Such a medium may also be a transmission type and may include a coaxial cable , copper wire, optical cable, and a radio interface that transmits sound or electromagnetic waves capable of transmitting signals read by machines or computers.

Специалисты в данной области техники поймут, что информация и сигналы могут быть представлены с помощью любой из множества различных технологий и методик. Например, данные, инструкции, команды, информация, сигналы, биты, символы и микросхемы, которые могут быть приведены в качестве примера по всему описанию выше, могут быть представлены напряжениями, токами, электромагнитными волнами, магнитными полями или частицами, оптическими полями или частицами либо любым их сочетанием.Those skilled in the art will understand that information and signals can be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and microcircuits, which can be exemplified throughout the description above, can be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination of them.

Специалисты в данной области техники дополнительно примут во внимание, что различные иллюстративные логические блоки, модули, схемы и этапы алгоритма, описанные в связи с раскрытыми в данном документе вариантами осуществления, могут быть реализованы как электронные аппаратные средства, вычислительное программное обеспечение либо их сочетания. Чтобы понятно проиллюстрировать эту взаимозаменяемость аппаратных средств и программного обеспечения, различные иллюстративные компоненты, блоки, модули, схемы и этапы были описаны выше в целом на основе их функциональности. Реализована ли эта функциональность в качестве аппаратных средств или программного обеспечения, зависит от конкретного варианта применения и структурных ограничений, накладываемых на систему в целом. Высококвалифицированные специалисты могут реализовать описанную функциональность различными способами для каждого отдельного применения, но такие решения реализации не должны быть интерпретированы как вызывающие отступление от области применения настоящего изобретения.Those skilled in the art will further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computing software, or combinations thereof. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally based on their functionality. Whether this functionality is implemented as hardware or software depends on the particular application and structural constraints imposed on the system as a whole. Highly qualified specialists can implement the described functionality in various ways for each individual application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

Различные иллюстративные логические блоки, модули и схемы, описанные в связи с раскрытыми в данном документе вариантами осуществления, могут быть реализованы или выполнены с помощью процессора общего назначения, процессора цифровых сигналов (DSP), специализированной интегральной схемы (ASIC), программируемой пользователем матричной БИС (FPGA) или другого программируемого логического устройства, дискретного логического элемента или транзисторной логики, дискретных компонентов аппаратных средств или любого их сочетания, предназначенного для того, чтобы выполнять описанные в данном документе функции. Процессором общего назначения может быть микропроцессор, но в альтернативном варианте, процессором может быть любой традиционный процессор, контроллер, микроконтроллер или конечный автомат. Процессор также может быть реализован как сочетание вычислительных устройств, к примеру, сочетание DSP и микропроцессора, множество микропроцессоров, один или более микропроцессоров вместе с ядром DSP либо любая другая подобная конфигурация.The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or implemented using a general purpose processor, digital signal processor (DSP), specialized integrated circuit (ASIC), user-programmable matrix LSI ( FPGA) or other programmable logic device, discrete logic element or transistor logic, discrete hardware components, or any combination thereof designed to I have to perform the functions described in this document. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor can also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors together with a DSP core, or any other similar configuration.

Этапы способа или алгоритма, описанные в связи с раскрытыми в данном документе вариантами осуществления, могут быть реализованы непосредственно в аппаратных средствах, в программном модуле, приводимом в исполнение процессором, или в их сочетании. Программный модуль может размещаться в ОЗУ, флэш-памяти, ПЗУ, памяти типа ЭППЗУ, памяти типа ЭСППЗУ, регистрах, на жестком диске, сменном диске, компакт-диске или любой другой форме носителя хранения, известной в данной области техники. Типичный носитель хранения соединяется с процессором, причем процессор может считывать информацию и записывать информацию на носитель хранения. В альтернативном варианте носитель хранения данных может быть встроен в процессор. Процессор и носитель хранения данных могут постоянно размещаться в ASIC. ASIC может постоянно размещаться в пользовательском терминале. В альтернативном варианте процессор и носитель хранения данных могут постоянно размещаться как дискретные компоненты в пользовательском терминале.The steps of a method or algorithm described in connection with the embodiments disclosed herein may be implemented directly in hardware, in a software module executed by a processor, or in a combination thereof. The software module may reside in RAM, flash memory, ROM, EEPROM type memory, EEPROM type memory, registers, a hard disk, a removable disk, a compact disk, or any other form of storage medium known in the art. A typical storage medium is connected to a processor, wherein the processor can read information and write information to the storage medium. Alternatively, the storage medium may be integrated in the processor. The processor and storage medium may reside in an ASIC. ASIC can reside in a user terminal. Alternatively, the processor and the storage medium may reside as discrete components in a user terminal.

Предшествующее описание раскрытых вариантов осуществления предоставлено, чтобы дать возможность любому специалисту в данной области техники создавать или использовать настоящее изобретение. Различные модификации в этих вариантах осуществления будут явными для специалистов в данной области техники, а описанные в данном документе общие принципы могут быть применены к другим вариантам осуществления без отступления от духа и объема изобретения. Таким образом, настоящее изобретение не предназначено, чтобы быть ограниченным показанными в данном документе вариантами осуществления, а должно удовлетворять самой широкой области применения, согласованной с принципами и новыми признаками, раскрытыми в данном документе. В то время как были описаны типичные варианты осуществления, специалистам в области техники будет понятно, что эти и другие изменения в форме и деталях могут быть сделаны здесь без отступления от объема и духа изобретения.The foregoing description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications in these embodiments will be apparent to those skilled in the art, and the general principles described herein may be applied to other embodiments without departing from the spirit and scope of the invention. Thus, the present invention is not intended to be limited by the embodiments shown herein, but rather should satisfy the broadest possible scope consistent with the principles and new features disclosed herein. While typical embodiments have been described, those skilled in the art will appreciate that these and other changes in form and detail can be made here without departing from the scope and spirit of the invention.

Claims (33)

1. Способ защиты конфиденциальности пользователя, содержащий этапы, на которых
формируют первый идентификатор вторичного ключа, связанный с пользователем, на основании ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
отправляют упомянутый первый идентификатор вторичного ключа на приложение;
формируют первый ключ трафика, связанный с упомянутым первым идентификатором вторичного ключа; и
осуществляют безопасную связь с упомянутым приложением с помощью упомянутого первого ключа трафика во время первого сеанса, включая согласование с упомянутым приложением второй переменной сеанса для связи с последующим вторым сеансом.
1. A method for protecting user privacy, comprising the steps of:
generating a first secondary key identifier associated with the user based on the key and at least one parameter containing the first session variable associated with the first session;
sending said first secondary key identifier to the application;
generating a first traffic key associated with said first secondary key identifier; and
securely communicating with said application using said first traffic key during a first session, including negotiating a second session variable with said application for communication with a subsequent second session.
2. Способ по п.1, в котором упомянутый пользователь связывается с одним и тем же приложением, по меньшей мере, в течение двух сеансов.2. The method according to claim 1, in which said user is associated with the same application for at least two sessions. 3. Способ по п.1, в котором упомянутый пользователь связывается с другим приложением в каждом сеансе в течение, по меньшей мере, двух сеансов.3. The method according to claim 1, wherein said user communicates with another application in each session for at least two sessions. 4. Способ по п.1, в котором упомянутая первая переменная сеанса содержит значение счетчика.4. The method of claim 1, wherein said first session variable comprises a counter value. 5. Способ по п.1, в котором упомянутая первая переменная сеанса содержит временную отметку.5. The method of claim 1, wherein said first session variable comprises a time stamp. 6. Способ по п.1, в котором упомянутая первая переменная сеанса содержит вывод генератора псевдослучайных чисел.6. The method of claim 1, wherein said first session variable comprises outputting a pseudo random number generator. 7. Способ по п.4, в котором упомянутое значение счетчика содержит вывод счетчика приращений, причем упомянутый вывод отличается для каждого сеанса.7. The method of claim 4, wherein said counter value comprises an increment counter output, said output being different for each session. 8. Способ по п.1, в котором другой параметр, по меньшей мере, одного параметра содержит идентификатор приложения, связанный с упомянутым приложением при связи с упомянутым пользователем.8. The method of claim 1, wherein the other parameter of the at least one parameter comprises an application identifier associated with said application in communication with said user. 9. Способ по п.8, в котором упомянутый идентификатор приложения содержит универсальный идентификатор приложения, причем упомянутый универсальный идентификатор приложения используется, когда идентификатор упомянутого приложения при осуществлении связи с пользователем неизвестен пользователю.9. The method of claim 8, wherein said application identifier comprises a universal application identifier, said universal application identifier being used when the identifier of said application in communication with a user is unknown to the user. 10. Способ по п.1, в котором упомянутый этап формирования первого идентификатора вторичного ключа на основании упомянутого, по меньшей мере, одного параметра содержит этап, на котором применяют хэш-функцию к упомянутому, по меньшей мере, одному параметру.10. The method according to claim 1, wherein said step of generating a first secondary key identifier based on said at least one parameter comprises the step of applying a hash function to said at least one parameter. 11. Способ по п.1, в котором упомянутый этап формирования первого идентификатора вторичного ключа на основании упомянутого, по меньшей мере, одного параметра содержит этап, на котором соединяют, по меньшей мере, один из упомянутого, по меньшей мере, одного параметра с выводом хэш-функции, примененной, по меньшей мере, к одному из упомянутого, по меньшей мере, одного параметра.11. The method according to claim 1, wherein said step of generating a first secondary key identifier based on said at least one parameter comprises the step of connecting at least one of said at least one parameter to an output a hash function applied to at least one of the at least one parameter. 12. Способ защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, при этом упомянутый способ содержит этапы, на которых
принимают от пользователя первый идентификатор вторичного ключа, сформированный из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
передают упомянутый первый идентификатор вторичного ключа на упомянутый сервер ключей;
принимают от упомянутого сервера ключей информацию, связанную с упомянутым пользователем; и
используют упомянутую информацию для осуществления безопасной связи с упомянутым пользователем во время первого сеанса, включая согласование с пользователем второй переменной сеанса для осуществления связи с последующим вторым сеансом.
12. A method for protecting user privacy during communication in a system having a key server, said method comprising the steps of
receiving from the user a first secondary key identifier formed from a key and at least one parameter containing a first session variable associated with the first session;
transmitting said first secondary key identifier to said key server;
receive information from said key server related to said user; and
using said information to securely communicate with said user during the first session, including negotiating a second session variable with the user to communicate with the subsequent second session.
13. Способ по п.12, в котором упомянутая информация, связанная с упомянутым пользователем, содержит вторичный ключ, и упомянутый вторичный ключ используется для связи с упомянутым пользователем.13. The method of claim 12, wherein said information associated with said user comprises a secondary key, and said secondary key is used to communicate with said user. 14. Способ по п.13, в котором упомянутый вторичный ключ, принятый от упомянутого сервера ключей, формируется на основании, по меньшей мере, одного из упомянутого, по меньшей мере, одного параметра.14. The method of claim 13, wherein said secondary key received from said key server is generated based on at least one of said at least one parameter. 15. Способ по п.12, в котором упомянутый первый идентификатор вторичного ключа формируется из упомянутого, по меньшей мере, одного параметра посредством применения хэш-функции к упомянутому, по меньшей мере, одному параметру.15. The method of claim 12, wherein said first secondary key identifier is generated from said at least one parameter by applying a hash function to said at least one parameter. 16. Способ по п.12, в котором упомянутая первая переменная сеанса содержит значение счетчика.16. The method of claim 12, wherein said first session variable comprises a counter value. 17. Способ по п.12, в котором другой параметр, по меньшей мере, одного параметра дополнительно содержит идентификатор приложения, связанный с приложением, запрашиваемым упомянутым пользователем.17. The method of claim 12, wherein the other parameter of the at least one parameter further comprises an application identifier associated with the application requested by said user. 18. Способ по п.17, в котором упомянутый сервер ключей выполнен с возможностью не предоставлять упомянутую информацию, если упомянутый идентификатор приложения не соответствует идентификатору приложения, связанному с запрашивающим приложением.18. The method of claim 17, wherein said key server is configured to not provide said information if said application identifier does not match an application identifier associated with the requesting application. 19. Способ по п.12, дополнительно содержащий этапы, на которых
передают упомянутому серверу ключей упомянутую вторую переменную сеанса, связанную с упомянутым последующим вторым сеансом;
принимают от упомянутого сервера ключей дополнительную информацию, связанную с упомянутым пользователем, на основании упомянутой второй переменной сеанса; и
используют упомянутую дополнительную информацию для осуществления безопасной связи с упомянутым пользователем во время последующего второго сеанса с упомянутым пользователем.
19. The method according to item 12, further comprising stages, in which
transmitting to said key server said second session variable associated with said subsequent second session;
receive from said key server additional information associated with said user based on said second session variable; and
using said additional information to securely communicate with said user during a subsequent second session with said user.
20. Способ защиты конфиденциальности пользователя, содержащий этапы, на которых
принимают от пользователя первый идентификатор вторичного ключа, сформированный из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
идентифицируют упомянутый ключ из упомянутого первого идентификатора вторичного ключа;
формируют вторичный ключ на основании, по меньшей мере, одного из упомянутого, по меньшей мере, одного параметра;
используют во время первого сеанса зашифрованную связь с упомянутым пользователем с помощью упомянутого вторичного ключа; и
согласуют с пользователем во время первого сеанса информацию, связанную с последующим вторым сеансом.
20. A method for protecting user privacy, comprising the steps of:
receiving from the user a first secondary key identifier formed from a key and at least one parameter containing a first session variable associated with the first session;
identifying said key from said first secondary key identifier;
forming a secondary key based on at least one of the at least one parameter;
during the first session, using encrypted communication with said user using said secondary key; and
agree with the user during the first session information related to the subsequent second session.
21. Способ по п.20, в котором упомянутая первая переменная сеанса содержит значение счетчика, которое увеличивается бесконечно малыми приращениями до или после входа в сеанс связи.21. The method according to claim 20, in which said first session variable contains a counter value that increases in infinitely small increments before or after entering a communication session. 22. Способ по п.21, дополнительно содержащий этап, на котором
используют упомянутую информацию для осуществления связи с упомянутым пользователем во время последующего второго сеанса с упомянутым пользователем.
22. The method according to item 21, further containing a stage on which
using said information to communicate with said user during a subsequent second session with said user.
23. Устройство для защиты конфиденциальности пользователя, содержащее
генератор идентификатора вторичного ключа для формирования первого идентификатора вторичного ключа, связанного с пользователем, на основании ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
передатчик для отправки упомянутого первого идентификатора вторичного ключа на приложение; и
генератор ключей для формирования первого ключа трафика, причем упомянутое устройство безопасно связывается с упомянутым приложением с помощью упомянутого сформированного первого ключа трафика во время первого сеанса, включая согласование с приложением второй переменной сеанса для осуществления связи с последующим вторым сеансом.
23. A device for protecting user privacy, containing
a secondary key identifier generator for generating a first secondary key identifier associated with the user based on the key and at least one parameter containing a first session variable associated with the first session;
a transmitter for sending said first secondary key identifier to the application; and
a key generator for generating a first traffic key, said device safely communicating with said application using said generated first traffic key during the first session, including coordinating with the application a second session variable for communicating with the subsequent second session.
24. Устройство по п.23, в котором упомянутое устройство связывается с одним и тем же приложением, по меньшей мере, в течение двух сеансов.24. The device according to item 23, in which said device is associated with the same application for at least two sessions. 25. Устройство по п.23, в котором упомянутый пользователь связывается с другим приложением в каждом сеансе в течение, по меньшей мере, двух сеансов.25. The device according to item 23, in which said user communicates with another application in each session for at least two sessions. 26. Устройство для защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, при этом упомянутое устройство содержит
приемник для приема от пользователя первого идентификатора вторичного ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса; и
передатчик для передачи упомянутого первого идентификатора вторичного ключа на упомянутый сервер ключей;
причем приемник дополнительно выполнен с возможностью принимать от упомянутого сервера ключей информацию, связанную с упомянутым пользователем;
и причем упомянутая информация используется упомянутым устройством для осуществления безопасной связи с упомянутым пользователем во время первого сеанса, включая согласование с пользователем второй переменной сеанса для осуществления связи с последующим вторым сеансом.
26. A device for protecting user privacy during communication in a system having a key server, said device comprising
a receiver for receiving from the user a first secondary key identifier generated from the key and at least one parameter containing the first session variable; and
a transmitter for transmitting said first secondary key identifier to said key server;
moreover, the receiver is further configured to receive information related to said user from said key server;
and wherein said information is used by said device to securely communicate with said user during a first session, including negotiating a second session variable with a user to communicate with a subsequent second session.
27. Устройство для защиты конфиденциальности пользователя, содержащее
приемник для приема от пользователя первого идентификатора вторичного ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса;
процессор для идентификации упомянутого ключа из упомянутого первого идентификатора вторичного ключа; и
генератор для формирования вторичного ключа на основании, по меньшей мере, одного из упомянутого, по меньшей мере, одного параметра;
причем упомянутое устройство осуществляет связь с упомянутым пользователем с помощью упомянутого вторичного ключа во время первого сеанса; и
причем процессор выполнен с дополнительной возможностью согласовывать с пользователем во время первого сеанса информацию, связанную с последующим вторым сеансом.
27. Device for protecting user privacy, containing
a receiver for receiving from the user a first secondary key identifier generated from the key and at least one parameter containing the first session variable;
a processor for identifying said key from said first secondary key identifier; and
a generator for generating a secondary key based on at least one of the at least one parameter;
wherein said device communicates with said user using said secondary key during the first session; and
moreover, the processor is made with the additional opportunity to coordinate with the user during the first session information related to the subsequent second session.
28. Устройство для защиты конфиденциальности пользователя во время связи с приложением, при этом упомянутое устройство содержит
средство для формирования первого идентификатора вторичного ключа, связанного с пользователем, на основании ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
средство для отправки упомянутого первого вторичного идентификатора на приложение; и
средство для формирования первого ключа трафика, связанного с упомянутым первым идентификатором вторичного ключа, причем упомянутое устройство осуществляет безопасную связь с упомянутым приложением с помощью упомянутого сформированного ключа трафика во время первого сеанса, включая согласование с приложением второй переменной сеанса для осуществления связи с последующим вторым сеансом.
28. A device for protecting user privacy during communication with the application, said device comprising
means for generating a first secondary key identifier associated with the user based on the key and at least one parameter containing the first session variable associated with the first session;
means for sending said first secondary identifier to the application; and
means for generating a first traffic key associated with said first secondary key identifier, said device communicating securely with said application using said generated traffic key during the first session, including negotiating with the application a second session variable for communicating with the subsequent second session.
29. Машиночитаемый носитель, на котором хранятся инструкции, причем хранимые инструкции, в случае выполнения их процессором, побуждают процессор осуществлять способ, содержащий этапы, на которых
формируют первый идентификатор вторичного ключа, связанный с пользователем, на основании ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
отправляют упомянутый первый идентификатор вторичного ключа на приложение;
формируют первый ключ трафика, связанный с упомянутым первым идентификатором вторичного ключа; и
безопасно связываются с упомянутым приложением с помощью первого ключа трафика во время первого сеанса, включая согласование с приложением второй переменной сеанса для осуществления связи с последующим вторым сеансом.
29. A machine-readable medium on which instructions are stored, the stored instructions, if executed by a processor, cause the processor to implement a method comprising the steps of
generating a first secondary key identifier associated with the user based on the key and at least one parameter containing the first session variable associated with the first session;
sending said first secondary key identifier to the application;
generating a first traffic key associated with said first secondary key identifier; and
safely communicating with the application using the first traffic key during the first session, including negotiating with the application a second session variable to communicate with the subsequent second session.
30. Устройство для защиты конфиденциальности пользователя во время связи в системе, имеющей сервер ключей, при этом устройство содержит
средство для приема от пользователя первого идентификатора вторичного ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
средство для передачи упомянутого первого идентификатора вторичного ключа на упомянутый сервер ключей;
средство для приема от упомянутого сервера ключей информации, связанной с упомянутым пользователем; и
средство для использования упомянутой информации для осуществления безопасной связи с упомянутым пользователем во время первого сеанса, включая согласование с пользователем второй переменной сеанса для осуществления связи с последующим вторым сеансом.
30. A device for protecting user privacy during communication in a system having a key server, the device comprising
means for receiving from a user a first secondary key identifier generated from a key and at least one parameter containing a first session variable associated with the first session;
means for transmitting said first secondary key identifier to said key server;
means for receiving, from said server, keys of information related to said user; and
means for using said information to securely communicate with said user during the first session, including negotiating with the user a second session variable for communicating with the subsequent second session.
31. Машиночитаемый носитель, на котором хранятся инструкции, причем хранимые инструкции, в случае выполнения их процессором, побуждают процессор осуществлять способ, содержащий этапы, на которых
принимают от пользователя первый идентификатор вторичного ключа, сформированный из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
передают упомянутый первый идентификатор вторичного ключа на сервер ключей;
принимают от упомянутого сервера ключей информацию, связанную с упомянутым пользователем; и
используют упомянутую информацию для осуществления безопасной связи с упомянутым пользователем во время первого сеанса, включая согласование с пользователем второй переменной сеанса для осуществления связи с последующим вторым сеансом.
31. A machine-readable medium on which instructions are stored, the stored instructions, if executed by the processor, cause the processor to implement a method comprising the steps of
receiving from the user a first secondary key identifier formed from a key and at least one parameter containing a first session variable associated with the first session;
transmitting said first secondary key identifier to a key server;
receive information from said key server related to said user; and
using said information to securely communicate with said user during the first session, including negotiating a second session variable with the user to communicate with the subsequent second session.
32. Устройство для защиты конфиденциальности пользователя, содержащее
средство для приема от пользователя первого идентификатора вторичного ключа, сформированного из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
средство для идентификации упомянутого ключа из упомянутого первого идентификатора вторичного ключа;
средство для формирования вторичного ключа на основании, по меньшей мере, одного из упомянутого, по меньшей мере, одного параметра;
средство для использования во время первого сеанса зашифрованной связи с упомянутым пользователем с помощью упомянутого вторичного ключа; и
средство для согласования с пользователем во время первого сеанса информации, связанной с последующим вторым сеансом.
32. A device for protecting user privacy, comprising
means for receiving from a user a first secondary key identifier generated from a key and at least one parameter containing a first session variable associated with the first session;
means for identifying said key from said first identifier of a secondary key;
means for generating a secondary key based on at least one of said at least one parameter;
means for use during the first session of encrypted communication with said user using said secondary key; and
means for coordinating with the user during the first session information related to the subsequent second session.
33. Машиночитаемый носитель, на котором хранятся инструкции, причем хранимые инструкции в случае выполнения их процессором побуждают процессор осуществлять способ, содержащий этапы, на которых
принимают от пользователя первый идентификатор вторичного ключа, сформированный из ключа и, по меньшей мере, одного параметра, содержащего первую переменную сеанса, связанную с первым сеансом;
идентифицируют упомянутый ключ из упомянутого первого идентификатора вторичного ключа;
формируют вторичный ключ на основании, по меньшей мере, одного из упомянутого, по меньшей мере, одного параметра;
используют во время первого сеанса зашифрованную связь с упомянутым пользователем с помощью упомянутого вторичного ключа; и
согласуют с пользователем во время первого сеанса информацию, связанную с последующим вторым сеансом.
33. A computer-readable medium on which instructions are stored, the stored instructions, if executed by the processor, cause the processor to implement a method comprising the steps of
receiving from the user a first secondary key identifier formed from a key and at least one parameter containing a first session variable associated with the first session;
identifying said key from said first secondary key identifier;
forming a secondary key based on at least one of the at least one parameter;
during the first session, using encrypted communication with said user using said secondary key; and
agree with the user during the first session information related to the subsequent second session.
RU2008133206/09A 2006-01-13 2007-01-12 Protection of confidentiality in communication system RU2408991C2 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US75897106P 2006-01-13 2006-01-13
US60/758,971 2006-01-13
US76277106P 2006-01-27 2006-01-27
US60/762,771 2006-01-27
US11/621,916 2007-01-10

Publications (2)

Publication Number Publication Date
RU2008133206A RU2008133206A (en) 2010-02-20
RU2408991C2 true RU2408991C2 (en) 2011-01-10

Family

ID=42126733

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008133206/09A RU2408991C2 (en) 2006-01-13 2007-01-12 Protection of confidentiality in communication system

Country Status (2)

Country Link
RU (1) RU2408991C2 (en)
TW (1) TW200803400A (en)

Also Published As

Publication number Publication date
RU2008133206A (en) 2010-02-20
TW200803400A (en) 2008-01-01

Similar Documents

Publication Publication Date Title
US8788807B2 (en) Privacy protection in communication systems
JP7119040B2 (en) Data transmission method, device and system
US8726019B2 (en) Context limited shared secret
US9282095B2 (en) Security and privacy enhancements for security devices
EP2082525B1 (en) Method and apparatus for mutual authentication
JP2021516917A (en) Methods and devices for controlling data access privileges
CN111095963A (en) Method and architecture for secure ranging
CN106998316B (en) Authentication method, application client and gateway equipment
US7620186B2 (en) Method for establishing an encrypted communication by means of keys
WO2018084859A1 (en) Data encryption control using multiple controlling authorities
US20210167963A1 (en) Decentralised Authentication
TW200537959A (en) Method and apparatus for authentication in wireless communications
TW200527877A (en) Method and application for authentication of a wireless communication using an expiration marker
EP3398318A1 (en) Methods and systems for enabling legal-intercept mode for a targeted secure element
US9876774B2 (en) Communication security system and method
RU2408991C2 (en) Protection of confidentiality in communication system
CN114079924A (en) Message processing method and device, related equipment and storage medium
Patalbansi Secure Authentication and Security System for Mobile Devices in Mobile Cloud Computing
CN113556736A (en) Access method, server, terminal to be accessed, electronic device and storage medium
CN101366230A (en) Privacy protection in communication systems
JP3721176B2 (en) Authentication system and encrypted communication system
CN116419224A (en) Communication method and device integrating trusted metrics

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20110113