УРОВЕНЬ ТЕХНИКИ
Во многих вычислительных сценариях два или более устройств, которые взаимно доступны (например, через проводную или беспроводную сеть), могут пытаться установить сеанс связи, который подвергается шифрованию для удерживания от прослушивания или утечки секретной информации и/или подвергается аутентификации, из условия, чтобы каждое устройство могло верифицировать, что принятые сообщения формировались другим устройством. Например, алгоритм асимметричного шифрования с обменом ключами, такой как алгоритм RSA (Ривеста-Шамира-Адлемана), может быть реализован для предоставления двум устройствам возможности обмениваться открытыми ключами для сеанса, которые могут использоваться вместе с соответствующими (и удерживаемыми в качестве сохраняемых в тайне) секретными ключами для того, чтобы давать возможность шифрованной и аутентифицированной связи во время сеанса связи.
Когда два устройства пытаются установить такой сеанс связи, протокол подтверждения установления связи может использоваться для идентификации поддерживаемых протоколов и для обмена ключами. Например, протокол безопасности транспортного уровня (TLS) может быть реализован каждым устройством для инициации подтверждения установления связи; для раскрытия и выбора алгоритмов шифрования, алгоритмов сжатия, открытых ключей и сертификатов аутентификации; и для сигнализации начала связи с использованием согласованных алгоритмов. Как только детали сеанса связи определены, устройства могут устанавливать безопасное соединение и могут инициировать связь через шифрованный канал.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Это краткое описание сущности изобретения приведено для представления в упрощенном виде подборки концепций, которые дополнительно описаны ниже в Подробном описании. Это краткое описание сущности изобретения не предназначено для идентификации ключевых факторов или существенных признаков заявленного предмета изобретения, также не подразумевается используемым для ограничения объема заявленного изобретения.
Многие процессы подтверждения установления связи, включая протокол безопасности транспортного уровня (TLS), дают возможность большой устойчивости при согласовании логистики сеанса связи. Однако эта устойчивость может накладывать различные затраты, такие как сложность реализации и являющаяся результатом потенциальная возможность для изъянов безопасности. К тому же, устройства должны обмениваться несколькими сообщениями для завершения согласования, где каждое сообщение может влечь за собой следование туда и обратно через сеть, соединяющую устройства. Этот обмен информацией может быть медленным и склонным к отказу, особенно через соединения с низкой шириной полосы пропускания, высоким временем ожидания и/или ненадежные соединения (например, сотовые сети со слабым приемом, которые могут вызывать пропущенные сообщения).
Альтернативная технология включает в себя обмен сравнительно небольшим количеством сообщений для того, чтобы устанавливать сеанс связи. Один такой набор технологий, раскрытых в материалах настоящей заявки, включает в себя доставку одиночного набора информации (например, одиночного сообщения) с устройства источника на устройство назначения, представляющего собой приглашение сеанса, где сообщение предписывает один или более отбираемых адресов устройства источника и сеансовый ключ, генерированный устройством источника. Клиентское устройство может принимать приглашение сеанса и, если предпочитает дать возможность установления сеанса связи (и верификацию деталей приглашения сеанса, например, аутентификацию устройства и/или пользователя, инициировавших сеанс связи), может отвечать своим собственным сеансовым ключом, а также одним или более отбираемыми адресами устройства назначения. Устройство источника и устройство назначения, каждое, используют сеансовый ключ источника и сеансовый ключ назначения для создания сеансового ключа, которые оба устройства могут использовать для сеанса. Обменявшись достаточным набором информации, чтобы дать возможность сеанса защищенной связи, устройство источника может инициировать сеанс связи, а устройство назначения может отвечать таким же образом. Таким образом, сеанс безопасной связи может быть установлен с сокращенным (и, может быть, минимальным) количеством обмениваемых сообщений между устройствами, тем самым снижая время ожидания и вероятность сбоя в установлении сеанса связи. Другие признаки безопасности могут быть реализованы и включены в эту схему. Например, может быть выполнимым скрывать действительные адреса устройства источника и устройства назначения до тех пор, пока не установлен сеанс безопасной связи; например, другие (такие как анонимизированные) адреса могут использоваться во время процесса подтверждения установления связи, в течение которого устройства могут безопасно передавать другие (неанонимизированные) адреса каждого адреса, который должен использоваться во время сеанса связи.
Для достижения вышеизложенных и связанных целей следующее описание и прилагаемые чертежи излагают некоторые иллюстративные аспекты и реализации. Таковые являются указывающими лишь на несколько различных способов, которыми могут применяться принципы различных аспектов. Другие аспекты, преимущества и новейшие признаки раскрытия станут очевидными из последующего подробного описания, когда рассматриваются вместе с прилагаемыми чертежами.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - иллюстрация примерного сценария, характеризующегося генерированием и обменом парой несимметричных шифровальных ключей между устройством источника и устройством назначения.
Фиг.2 - иллюстрация примерного сценария, характеризующегося использованием пары асимметричных шифровальных ключей для обмена сообщениями между устройством источника и устройством назначения в течение сеанса безопасной связи.
Фиг.3 - иллюстрация взаимодействия подтверждения установления связи устройства источника и устройства назначения согласно примерному варианту протокола безопасности транспортного уровня.
Фиг.4 - иллюстрация взаимодействия подтверждения установления связи устройства источника и устройства назначения в соответствии с технологиями, представленными в материалах настоящей заявки.
Фиг.5 - блок-схема последовательности операций способа, иллюстрирующая примерный способ установления сеанса связи устройством источника с устройством назначения.
Фиг.6 - блок-схема последовательности операций способа, иллюстрирующая примерный способ установления сеанса связи устройством назначения с устройством источника.
Фиг.7 - иллюстрация примерного машиночитаемого носителя, содержащего выполняемые процессором команды, сконфигурированные для воплощения одной или более из возможностей, изложенных в материалах настоящей заявки.
Фиг.8 - иллюстрация набора устройств, представленных в пределах развертываемой вычислительной среды, которые могут устанавливать сеансы связи согласно технологиям, обсужденным в материалах настоящей заявки.
Фиг.9 - иллюстрация примерного сценария, характеризующегося сервером сертификатов, сконфигурированным для хранения открытых сертификатов, которые могут подвергаться доступу устройством источника и/или устройством назначения наряду с установлением сеанса связи.
Фиг.10 - иллюстрация примерного сценария, характеризующегося установлением сеанса связи между устройством источника и устройством назначения с использованием одноразового номера источника.
Фиг.11 иллюстрирует примерную вычислительную среду, в пределах которой могут быть реализованы одна или более из возможностей, изложенных в материалах настоящей заявки.
ПОДРОБНОЕ ОПИСАНИЕ
Заявленное изобретение далее описано со ссылкой на чертежи, на всем протяжении которых одинаковые номера ссылок используются для указания ссылкой на идентичные элементы. В последующем описании, в целях пояснения, многочисленные специфичные детали изложены для того, чтобы обеспечить исчерпывающее понимание заявленного изобретения. Однако может быть очевидно, что заявленное изобретение может быть осуществлено на практике без этих специфичных деталей. В иных случаях конструкции и устройства показаны в виде структурной схемы для того, чтобы облегчить описание заявленного изобретения.
Многие сценарии в области вычислительной обработки данных включают в себя установление сеанса связи между одноранговыми устройствами, такими как два компьютера, соединенных через сеть Интернет, или два устройства беспроводной связи, соединенных через беспроводную локальную сеть. В этих сценариях устройства могут пытаться устанавливать сеанс связи через защищенный канал из условия, чтобы связь между устройствами шифровалась. Более того, устройства могут пытаться шифровать данные некоторым образом, чтобы избегать взаимно совместно используемого пароля, которым может быть трудно обмениваться безопасным образом до того, как установлен сеанс безопасной связи. Таким образом, устройства могли бы быть способными осуществлять связь через физическую сеть посредством отправки нешифрованных сообщений, но могут выражать пожелание разработать «наложенную» сеть, посредством чего шифрованные сообщения могут отправляться и приниматься через физическую сеть, но сообщение может автоматически шифроваться и дешифроваться каждым устройством, тем самым представляя приложениям, исполняющимся на каждом устройстве, виртуальную сеть между устройствами, которая защищена от прослушивания.
Фиг.1-2 вместе представляют примерный сценарий, характеризующийся устройством 12 источника (например, клиентом, инициирующим запрос на сеанс связи) и устройством 14 назначения (например, сервером, принимающим запрос для инициирования сеанса связи), которые пытаются установить и использовать сеанс связи безопасным образом. В примерном сценарии 10 по фиг.1 устройство 12 источника и устройство 14 назначения формируют и обмениваются некоторой информацией, вовлекаемой при защите сеанса связи посредством использования алгоритма 16 шифрования, характеризующегося шифрованием с несимметричными ключами, таким как алгоритм RSA. Этот алгоритм сконфигурирован для генерирования пары шифровальных ключей, содержащей открытый ключ и секретный ключ, имеющие два свойства: секретный ключ не может идентифицироваться с использованием открытого ключа; и сообщение, зашифрованное открытым ключом, может быть дешифровано только с использованием секретного ключа. В качестве дополнительного преимущества, сообщение может криптографически «подписываться» с использованием секретного ключа, и подпись может верифицироваться с использованием открытого ключа, таким образом верифицируя автора сообщения в качестве держателя секретного ключа (и верифицируя контент сообщения). При подготовке сеанса безопасной связи устройство 12 источника может использовать алгоритм 16 шифрования для генерирования секретного ключа 20 источника и открытого ключа 18 источника, а устройство 14 назначения может использовать алгоритм 16 шифрования для генерирования открытого ключа 22 назначения и секретного ключа 24 назначения. Устройство 12 источника затем может передавать открытый ключ 18 источника на устройство 14 назначения наряду с сохранением секретного ключа 20 источника в тайне, а устройство 14 назначения может передавать открытый ключ 22 назначения на устройство 12 источника наряду с сохранением в тайне секретного ключа 24 назначения.
Фиг.2 представляет примерный сценарий 30, характеризующийся использованием этой пары ключей устройством 12 источника и устройством 14 назначения для обмена сообщениями безопасным образом, который сдерживает прослушивание, к тому же, наряду с избежанием затруднений безопасности совместно используемых паролей (например, затруднения обмена совместно используемым паролем для шифрования сеанса связи до того, как установлен сеанс связи) и предоставлением возможности верификации автора и контента конкретного сообщения. Согласно примерному сценарию 10 по фиг.1, устройство 12 источника уже генерировало открытый ключ 18 источника, который был введен в совместное использование с устройством 14 назначения, и секретный ключ 20 источника, который сохраняется в тайне, а устройство 14 назначения уже генерировало открытый ключ 22 назначения, который был введен в совместное использование с устройством 12 источника, и секретный ключ 24 назначения, который сохраняется в тайне. В этом примерном сценарии 30 устройство 12 источника и устройство 14 назначения далее занимаются сеансом 32 связи, через который сообщение 34 может безопасно передаваться с устройства 12 источника на устройство 14 назначения. Например, сеанс 32 связи может устанавливаться через незащищенную сеть, такую как сеть Интернет, где может происходить прослушивание; соответственно, устройство 12 источника и устройство 14 назначения, поэтому, доставляют только шифрованные сообщения на протяжении сеанса 32 связи, которые не могут быть без труда прочитаны, изменены или фальсифицированы третьей стороной.
В этом примерном сценарии 30 устройство 12 источника сначала шифрует сообщение 34 открытым ключом 22 назначения для выработки шифрованного сообщения 36. Устройство 12 источника, к тому же, подписывает шифрованное сообщение 36 секретным ключом 20 источника для создания шифрованного и подписанного сообщения 38. Это шифрованное и подписанное сообщение 38 может передаваться на устройство 14 назначения в течение сеанса 32 связи. Даже если третья сторона может прослушивать сообщение 32 связи и может читать шифрованное и подписанное сообщение 38, перехваченное сообщение 34 не может быть дешифровано, так как третья сторона не имеет доступа к секретному ключу 24 назначения. В противоположность, когда устройство 14 назначения принимает шифрованное и подписанное сообщение 38, устройство 14 назначения использует секретный ключ 24 назначения для создания дешифрованного сообщения 40. Дополнительно, устройство 14 назначения может использовать открытый ключ 18 источника для верификации автора дешифрованного сообщения 40 (например, для верификации, что шифрованное сообщение 40 формировалось устройством, имеющим доступ к секретному ключу 20 источника, таким как устройство 12 источника) и/или для верификации, что контент дешифрованного сообщения 40 не был изменен третьей стороной, которая может прослушивать сеанс 32 связи. В результате этого примерного сценария 30 устройство 14 назначения принимает дешифрованное верифицированное сообщение 42, которое было передано через незащищенный канал (такой как сеть Интернет) с доказанно низкой вероятностью перехвата и/или фальсификации третьей стороной.
Технологии, проиллюстрированные в примерных сценариях по фиг.1-2, могут использоваться для обмена шифрованными сообщениями через сеанс безопасной связи, но способ обмена информацией об открытых ключах, для того чтобы устанавливать сеанс связи, может включать в себя дополнительные соображения. В качестве первого примера может быть желательно, чтобы одно устройство аутентифицировало другое устройство так, чтобы третья сторона не могла просто выдавать себя за другое устройство в начале обмена ключами. Например, третья сторона могла бы перехватить запрос на установление сеанса 32 связи из устройства 12 источника, и может заниматься обменом ключами с устройством 12 источника наряду с выдачей себя за устройство 14 назначения. Более того, в «атаке методом перехвата сообщений и подмены ключей» третья сторона, к тому же, могла бы выдавать себя за устройство 12 источника и осуществлять запрос на установление второго сеанса связи 32 с устройством 14 назначения. При успехе в инициировании обоих сеансов 32 связи третья сторона могла бы передавать все сообщения 34, принятые из одного сеанса 32 связи, в другой сеанс 32 связи, тем самым представляя внешние признаки канала 32 безопасной связи между устройством 12 источника и устройством 14 приемника, но имея полный доступ к сообщениям 34, обмениваемым через него. Для того чтобы снижать эту вероятность, устройство 12 источника может пытаться аутентифицировать устройство 14 назначения, например, проверяя идентичность устройства 14 назначения в отношении открытого сертификата, принятого из доверенного источника, и идентифицируя устройство 14 назначения, чего может не быть способной выполнять третья сторона.
В качестве второго примера, третья сторона, которая не может дешифровать сообщения, по-прежнему может мешать устройству 12 источника и/или устройству 14 назначения посредством «атаки с повторением пакетов», где третья сторона захватывает одно или более шифрованных и подписанных сообщений 38, переданных в сеанс 32 связи, и позже повторно передает их на принимающее устройство. Принимающее устройство могло бы претерпевать неудачу в распознавании повторного сообщения в качестве дубликата принятого ранее сообщения и могло бы действовать на его основании. Например, если устройство 12 источника отправляет на устройство 14 назначения запрос установить сеанс 32 связи, который аутентифицирует устройство 12 источника, третья сторона могла бы захватить сообщение и повторно передать его на устройство 14 назначения с другого адреса. Даже если третья сторона не может дешифровать контент запроса, повторная передача запроса (включающего в себя шифрованный мандат устройства 12 источника) с отдельного адреса могла бы успешно приниматься по адресу 14 назначения, тем самым давая возможность устройству 14 назначения устанавливать сеанс 32 связи с третьей стороной, выдающей себя за устройство 12 источника. Для того чтобы уменьшить угрозу связанных с нарушением секретности рисков, устройство 12 источника и/или устройство 14 назначения может включать в различные сообщения «одноразовый номер», содержащий одноразовый идентификатор (зачастую сформированный случайным образом), который используется для придания отличительной черты сообщению 34, сеансу 32 связи и т.д., из условия, чтобы принимающее устройство могло идентифицировать повторно переданные сообщения.
Вследствие этих и других соображений может быть разработан конкретный образ действий установления сеансов 32 связи между устройством 12 источника и устройством 14 назначения, включающий в себя не только обмен информацией о ключах, но также связанной информацией. Во многих сценариях этот образ действий по установлению сеанса 32 связи, иногда упоминаемый как «подтверждение установления связи», может включать в себя обмен значительной информацией хорошо структурированным и интерактивным образом.
Фиг.3 представляет примерный сценарий 50, характеризующийся установлением сеанса связи с «подтверждением установления связи» между устройством 12 источника и устройством 14 назначения, который используется в криптографическом протоколе безопасности транспортного уровня (TLS). Устройство 12 источника вновь генерирует открытый ключ 18 источника и секретный ключ 20 источника наряду с тем, что устройство 14 назначения генерирует открытый ключ 22 назначения и секретный ключ 24 назначения. Согласно одному из сравнительно упрощенных взаимодействий «подтверждения установления связи» в соответствии с протоколом TLS, устройство 12 источника инициирует взаимодействие отправкой сообщения 52 на устройство 14 назначения, закодированного в качестве сообщения «Приветствие клиента», которое идентифицирует версию TLS, используемого клиентом 12, и одноразовый номер источника. Устройство 14 назначения отвечает сообщением 52 «Приветствие сервера», также идентифицирующим версию TLS, используемого сервером 12, и одноразовый номер назначения. Устройство 14 назначения также отправляет сообщение 52 «Сертификат», которое, в некоторых сценариях, может включать в себя открытый ключ 22 назначения, а затем отправляет на устройство 12 источника сообщение 52 «Приветствие сервера выполнено». Устройство 12 источника отвечает сообщением 52 «Обмен ключом клиента», характеризующимся открытым ключом 18 источника, а затем отправляет сообщение 52 «Изменить спецификацию шифра», указывающее, что следующее сообщение 52, отправленное устройством 12 источника, зашифровано согласно измененному мандату. Устройство 12 источника в заключение отправляет сообщение 52 «Готово», указывающее, что устройство 12 источника выполнило свою часть взаимодействия подтверждения установления связи. Устройство 14 назначения отвечает подобным сообщением 52 «Изменить спецификацию шифра» и сообщением 52 «Готово», тем самым завершая взаимодействие подтверждения установления связи и устанавливая канал 32 безопасной связи.
В этом сравнительно упрощенном взаимодействии подтверждения установления связи устройство 12 источника и устройство 14 назначения обмениваются значительным объемом информации. Это взаимодействие может включать в себя обмен девятью сообщениями 52, каждое имеет специфичный формат, используемый отправляющим устройством, и вызывает конкретное поведение на принимающем устройстве. Сложность взаимодействия подтверждения установления связи могла бы поднимать вероятность возникновения осложнений (например, неожиданных или нежелательных результатов, если обмен сообщениями 52 осуществляется в неправильном порядке, неудавшейся доставки сообщения 52 и возможностей злоупотребления третьими сторонами). Более того, каждое сообщение 52 влечет за собой задержку передачи по сети, вызывая значительную величину времени ожидания, которая может задерживать установление канала 32 связи между устройством 12 источника и устройством 14 назначения. Несмотря на то, что некоторые технологии могли бы использоваться для сокращения количества обмениваемых сообщений 52 (например, группирование наборов связанных сообщений 52 в примерном сценарии 50 по фиг.3 могло бы сокращать количество обмениваемых сообщений до четырех), дополнительные признаки канала связи (например, согласование конкретной версии TLS и конкретного алгоритма 16 шифрования) могли бы дополнительно увеличивать количество сообщений 52, обмениваемых для завершения подтверждения установления связи. Формирование, передача, прием, декодирование и обработка таких сообщений также накладывают затраты вычислительных ресурсов на устройство 12 источника и устройство 14 назначения, и сценарии, где количество соединений может быть большим (например, одноранговая передача данных между большим набором одноранговых устройств, где устройство может устанавливать и поддерживать сотни соединений на динамической основе), задержки и затраты вычислительных ресурсов по установлению соединений могут превышать масштаб приемлемого диапазона.
Соответственно, может быть желательно уменьшать сложность взаимодействия подтверждения установления соединения для того, чтобы давать возможность установления сеанса 32 связи с желательно низким временем ожидания и вычислительными затратами, к тому же, наряду с предоставлением возможности некоторых признаков, обсужденных в материалах настоящей заявки (например, защиты от атак методом перехвата сообщений и подмены ключей или атак с повторением пакетов). Одна из технологий для снижения времени ожидания включает в себя сокращение количества сообщений 52, обмениваемых при установлении сеанса 32 связи. Например, взаимодействие подтверждения установления связи могло бы быть разработано, чтобы давать каждому устройству возможность доставлять на другое устройство одиночный набор информации, определяющий его часть сеанса 32 безопасной связи, тем самым давая сеансу 32 связи возможность начинать с единственного обмена сообщениями 52.
Фиг.4 представляет примерный сценарий 60, характеризующийся вариантом осуществления этих технологий, в котором устройство 12 источника и устройство 14 назначения могли бы устанавливать сеанс 32 связи с одиночным обменом информацией. Например, устройство 12 источника и устройство 14 назначения могут содержать компьютеры, имеющие процессоры 88 и поддерживающие связь через проводную или беспроводную сеть, такую как сеть Интернет или локальная сеть (LAN). В этом примерном сценарии 60 устройство 12 источника может быть идентифицируемым посредством открытого сертификата 66 источника, а устройство 14 назначения может быть идентифицируемым посредством открытого сертификата 72 назначения. Эти открытые сертификаты могут поддерживаться доверенным сервером (например, сервером аутентификации, который сконфигурирован для хранения открытых сертификатов и для содействия аутентификации устройств другими устройствами), или могли бы обмениваться другими способами. Открытый сертификат 66 источника, например, мог бы содержать в себе открытый ключ 62 сертификата источника, который соответствует открытому ключу 64 сертификата источника, который удерживается в тайне известным и аутентифицированным устройством 12 источника; а открытый сертификат 72 назначения, например, мог бы содержать в себе открытый ключ 68 сертификата назначения, который соответствует открытому ключу 70 сертификата назначения, который удерживается в тайне известным и аутентифицированным устройством 14 назначения. Пара ключей, включенная в эти открытые сертификаты, могла бы не использоваться устройством для шифрования сообщений 52 во время сеанса 32 связи с другим устройством, но могла бы резервироваться для аутентификации устройств. Устройство 12 источника может иметь доступ к открытому сертификату 72 назначения, содержащему открытый ключ 68 сертификата назначения, и устройство 14 назначения может иметь доступ к открытому сертификату 66 источника, содержащему открытый ключ 62 сертификата источника. В дополнение, устройство 12 источника может иметь адрес 78 источника в конкретной сети, например, адрес TCP/IP, назначенный для доступа по сети Интернет или LAN, и устройство 14 назначения может иметь адрес 80 назначения в той же самой сети, который может использоваться каждым устройством для адресации сообщений 52 на другое устройство. Например, адрес 80 назначения мог бы специфицироваться в открытом сертификате 72 назначения, тем самым аутентифицируя идентичность устройства 14 назначения, если оно доступно на адресе 80 назначения и является обладающим секретным ключом 70 сертификата назначения.
Когда устройство 12 источника принимает (например, от пользователя) запрос на инициирование сеанса 32 связи с устройством 14 назначения, устройство 12 источника могло бы инициировать подтверждение установления связи следующим образом. Прежде всего, устройство 12 источника могло бы формировать сеансовый ключ 70 источника, который должен использоваться для шифрования и дешифрования сообщений 52, только для этого сеанса 32 связи с этим устройством 14 назначения. Устройство 12 источника может подготавливать приглашение 82 сеанса, содержащее сеансовый ключ 74 источника и адрес 78 источника, и может шифровать сообщение с открытым ключом 68 сертификата назначения в пределах открытого сертификата 72 назначения. Приглашение 82 сеанса затем может передаваться на устройство 14 назначения в качестве запроса инициировать сеанс 32 связи.
Когда устройство назначения принимает приглашение 82 сеанса, устройство назначения может дешифровать приглашение 82 сеанса с использованием секретного ключа 70 сертификата назначения и может определять, принять или нет приглашение инициировать сеанс 32 связи. Если устройство 14 назначения принимает приглашение, устройство 14 назначения затем может генерировать сеансовый ключ 76 назначения. С использованием сеансового ключа 74 источника и сеансового ключа 76 назначения устройство 14 назначения могло бы генерировать сеансовый ключ 86, который может использоваться для шифрования конечного сеанса 32 связи. Например, сеансовый ключ 86 может содержать симметричный ключ, такой как ключ Риджндаела (Rijndael), который используется как для шифрования, так и дешифрования сообщений. Симметричный ключ, например, может содержать простую конкатенацию сеансового ключа 74 источника и сеансового ключа 76 назначения. После формирования сеансового ключа 76 назначения устройство 14 назначения может подготавливать принятие 84 сеанса, содержащее сеансовый ключ 76 назначения и адрес 80 назначения, которое может кодироваться с открытым сертификатом 66 источника. Устройство 14 назначения затем может передавать принятие 84 сеанса на устройство 12 источника. По приему принятия 84 сеанса устройство 12 источника также может генерировать сеансовый ключ 86 с использованием сеансового ключа 74 источника и сеансового ключа 76 назначения. Устройство 12 источника затем может инициировать сеанс связи с адресом 14 назначения, шифрованным сеансовым ключом 86, и может обмениваться сообщениями через сеанс 32 связи, как в примерном сценарии 30 по фиг.2. Этим способом устройство 12 источника и устройство 14 назначения могут обмениваться релевантной информацией для инициирования сеанса 32 связи всего лишь двумя сообщениями 52, тем самым уменьшая время ожидания и затраты вычислительных ресурсов, связанные с подтверждением установления связи. Дополнительно, использование открытого сертификата 72 назначения может обеспечивать аутентификацию устройству 12 источника по идентичности устройства 14 назначения, наряду с отсутствием привлечения обмена дополнительными сообщениями 52 при подтверждении установления связи. Более того, в усовершенствование этих технологий (не проиллюстрированное на фиг.4), время ожидания установления сеанса 32 связи могло бы быть дополнительно уменьшено, если бы устройство 14 назначения инициировало сеанс связи с устройством 12 источника по приему приглашения 82 сеанса. В этом варианте осуществления принятие 84 сеанса может отправляться в пределах установленного канала связи, тем самым сокращая подтверждение установления связи до обмена единственным сообщением 52 и снижая время задержки и затраты вычислительных ресурсов, связанные с подтверждением установления связи.
Фиг.5 представляет первый вариант осуществления этих технологий, представленный в качестве примерного способа 90 установления сеанса 32 связи устройством 12 источника, имеющим процессор 88 и адрес 78 источника, а также открытый ключ 62 источника и секретный ключ 64 источника. Устройство 12 источника, поэтому, представлено открытым сертификатом 66 источника, содержащим открытый ключ 62 источника. Сеанс 32 связи устанавливается с устройством 14 назначения, имеющим открытый сертификат 72 назначения и адрес 80 назначения. Примерный способ 90, например, может быть воплощен в качестве набора команд, хранимых в памяти устройства 12 источника. Примерный способ 90 начинается на 92 и включает в себя выполнение 94 на процессоре 88 команд, сконфигурированных для реализации технологий, представленных в материалах настоящей заявки. В частности, команды могут быть сконфигурированы для формирования 96 сеансового ключа источника. Команды, к тому же, могут быть сконфигурированы для передачи 98 на устройство 14 назначения приглашения 82 сеанса, содержащего адрес 78 источника и сеансовый ключ 74 источника, где приглашение 82 сеанса зашифровано с использованием открытого сертификата 72 назначения (например, открытого ключа 68 сертификата назначения, включенного в открытый сертификат 72 назначения). Команды, к тому же, могут быть сконфигурированы, по приему 100 с устройства 12 назначения принятия 84 сеанса, содержащего адрес 80 назначения и сеансовый ключ 76 назначения, для дешифрования 102 принятия 84 сеанса с использованием открытого сертификата 66 и генерирования 104 сеансового ключа 86 с использованием сеансового ключа 74 источника и сеансового ключа 76 назначения. В заключение, команды могут быть сконфигурированы для инициирования 106 сеанса 32 связи с устройством 14 назначения на адресе 80 назначения, специфицированном в принятии 84 сеанса, где сеанс связи шифруется с использованием сеансового ключа 86. Обменявшись информацией о ключах с устройством 14 назначения посредством передачи приглашения 82 сеанса и приема принятия 84 сеанса, примерный способ 90, вследствие этого, устанавливает сеанс 32 связи с устройством 14 назначения сокращенным количеством сообщений 52 и, таким образом, заканчивается на 108.
Фиг.6 представляет второй вариант осуществления этих технологий, проиллюстрированный в качестве примерного способа 110 установления сеанса 32 связи устройством 14 назначения, имеющим процессор 88, открытый сертификат 72 назначения и адрес 80 назначения, с устройством 12 источника, имеющим открытый сертификат 66 источника. Примерный способ 110, например, может быть воплощен в качестве набора команд, хранимых в памяти устройства 14 назначения. Примерный способ 110 начинается на 112 и включает в себя выполнение 114 на процессоре 88 команд, сконфигурированных для реализации технологий, представленных в материалах настоящей заявки. Более точно, команды могут быть сконфигурированы, по приему 116 с устройства 12 источника приглашения 82 сеанса, содержащего адрес 78 источника и сеансовый ключ 74 источника, для дешифрования 118 приглашения 82 сеанса с использованием открытого сертификата 72 назначения и генерирования 120 сеансового ключа 76 назначения. С использованием сеансового ключа 74 источника и сеансового ключа 76 назначения команды могут быть сконфигурированы для генерирования 122 сеансового ключа 86. Команды, к тому же, могут быть сконфигурированы для передачи 124 на устройство 12 источника принятия 84 сеанса, содержащего адрес 80 назначения и сеансовый ключ 76 назначения, где принятие 84 сеанса шифруется с использованием открытого сертификата 66 источника. В заключение, команды могут быть сконфигурированы, по приему с устройства 12 источника инициирования сеанса 32 связи, для инициирования 124 сеанса 32 связи с устройством 12 источника на адресе 76 источника, где сеанс 32 связи шифруется с использованием сеансового ключа 86. Обменявшись информацией о ключах с устройством 12 источника посредством приема приглашения 82 сеанса и передачи принятия 84 сеанса, примерный способ 110, вследствие этого, устанавливает сеанс 32 связи с устройством 12 источника сокращенным количеством сообщений 52 и, таким образом, заканчивается на 126.
Еще один другой вариант осуществления включает в себя машиночитаемый носитель, содержащий выполняемые процессором команды, сконфигурированные для применения технологий, представленных в материалах настоящей заявки. Примерный машиночитаемый носитель, который может быть разработан этими способами, проиллюстрирован на фиг.7, при этом реализация 130 содержит машиночитаемый носитель 132 (например, CD-R (компакт-диск с однократной записью), DVD-R (цифровой многофункциональный диск с однократной записью) или накопитель на жестких дисках), на котором закодированы машиночитаемые данные 134. Эти машиночитаемые данные 134, в свою очередь, содержат набор компьютерных команд 136, сконфигурированных для работы согласно принципам, изложенным в материалах настоящей заявки. В одном таком варианте осуществления выполняемые процессором команды 136 могут быть сконфигурированы для осуществления способа установления сеанса связи с устройством назначения, такого как примерный способ 90 по фиг.5. В другом таком варианте осуществления выполняемые процессором команды 136 могут быть сконфигурированы для выполнения способа установления сеанса связи с устройством источника, такого как примерный способ 110 по фиг.6. Рядовыми специалистами в данной области техники могут быть разработаны многие такие машиночитаемые носители, которые сконфигурированы для работы в соответствии с технологиями, представленными в материалах настоящей заявки.
Технологии, обсужденные в материалах настоящей заявки, могут быть продуманы с вариантами по многим аспектам, и некоторые варианты могут представлять дополнительные преимущества и/или уменьшать недостатки по отношению к другим вариантам этих и других технологий. Более того, некоторые варианты могут быть реализованы в комбинации, и некоторые комбинации могут характеризоваться дополнительными преимуществами и/или уменьшенными недостатками благодаря синергичному взаимодействию. Варианты могут быть включены в различные варианты осуществления (например, примерный способ 90 по фиг.5 и примерный способ 110 по фиг.6), чтобы давать отдельные и/или действующие совместно преимущества по таким вариантам осуществления.
Первый аспект, который может меняться между вариантами осуществления этих технологий, относится к сценариям, в которых могут использоваться эти технологии, представленные в материалах настоящей заявки. В качестве первого примера, технологии могут использоваться для установления сеансов безопасной связи эффективным образом (и с низким временем ожидания) между компьютерами, соединенными через проводную сеть, такую как сеть Интернет или локальная сеть (LAN), или беспроводную сеть, такую как сотовая сеть. Технологии, к тому же, могут использоваться для установления сеансов безопасной связи эффективным образом (и с низким временем ожидания) между устройствами, соединенными через сеть проводных или беспроводных устройств, такую как концентратор универсальной последовательной шины (USB), или персональную сеть (PAN), такую как Bluetooth. Устройства также могут эксплуатироваться одним и тем же пользователем или разными пользователями. В качестве второго примера, технологии могут использоваться для установления многих типов сеансов связи, в том числе компоновки сервер/клиент, где устройство 12 источника, действующее в качестве клиента, пытается контактировать с устройством 14 назначения, действующим в качестве сервера, и одноранговой компоновки, где устройство 12 источника и устройство 14 назначения действуют в качестве одноранговых узлов в распределенной схеме совместного использования данных. Дополнительные варианты осуществления этих технологий могут соединять более чем два устройства; например, сеанс многоадресной связи между устройством 12 источника и набором устройств 14 назначения (каждое использует одну и ту же совместно используемую пару ключей, или каждое имеет отдельную пару ключей и т.д.) может устанавливаться с использованием некоторых вариантов технологий, обсужденных в материалах настоящей заявки. В качестве третьего примера, многие типы алгоритмов шифрования могут использоваться для формирования пары асимметричных шифровальных ключей, чтобы шифровать и дешифровать сообщения 52 с использованием пары ключей.
Конкретный сценарий, в котором могут использоваться эти технологии, включает в себя обмен сообщениями между устройствами, представленными в развертываемой вычислительной среде. Были сделаны недавние попытки разработать технологии для предоставления доступа к вычислительной среде среди группы устройств совместимым, развертываемым и расширяемым образом. Эти технологии также стремятся предоставить общий набор приложений среди взаимодействующих устройств и централизованную службу для управления приобретением, установкой, использованием и удалением приложений среди таких устройств. Набор приложений не обязательно идентичен среди различных устройств, например, рабочая станция может содержать в себе высокопроизводительные приложения (например, программное обеспечение редактирования фотографий и графически интенсивные игры), которые могут не работать хорошо на сотовом телефонном устройстве, а сотовое телефонное устройство может включать в себя приложения портативности (например, основанное на GPS картографическое программное обеспечение), которые не уместны для непортативной рабочей станции. Однако многие приложения и объекты данных, связанные с ними, могут совместно использоваться между такими устройствами (например, приложение календаря, сконфигурированное для управления пользовательскими календарными объектами), и вычислительная среда может быть приспособлена для предоставления возможности распространения и синхронизации приложения и объектов данных среди таких устройств. Поэтому может быть принято во внимание, что компьютерная система преимущественно может быть представлена некоторым образом, который дает возможность развертывания вычислительной среды среди набора устройств.
В одной из таких технологий вычислительная среда - в том числе, набор приложений, прикладные ресурсы и объекты данных, используемые в связи с этим, - представлена некоторым образом, чтобы могла доставляться на устройства для воспроизведения согласно функциональным возможностям устройства. Объекты включают в себя объекты данных компьютерной системы, такие как пользовательские файлы и данные, созданные пользователем, а также представления разнообразных устройств, составляющих вычислительную среду пользователя. Вычислительная среда, представленная этим образом, может доставляться на любое устройство и воспроизводиться некоторым образом, подходящим для возможностей устройства. Например, рабочая станция может воспроизводить информацию в качестве надежной вычислительной среды общего назначения наряду с тем, что рабочая станция общего пользования может воспроизводить другое впечатление от вычислительной среды благодаря веб-браузеру (например, в качестве виртуальной машины, которая может выводиться из работы в конце сеанса пользователя), а сотовый телефон может предоставлять экономный интерфейс с быстрым доступом к связанной с сотовым телефоном информации (например, данным контактов, календаря и навигации). Более того, обновления в отношении набора информации (например, изменения и обновления предпочтений для файлов данных, содержащихся в ней) могут применяться к каноническому источнику набора информации и, тем самым, распространяться на все другие устройства, на которые доставляется набор информации.
Фиг.8 иллюстрирует один из таких сценариев 140, в котором вычислительная среда может быть размещена хост-узлом 142 вычислительной среды, который может хранить и управлять иерархией 144 объектов. Хост-узел 142 вычислительной среды, к тому же, может воспроизводить иерархию 144 объектов разными способами от имени различных устройств, таких как сотовое телефонное устройство 146, персональный блокнотный компьютер 150 и рабочая станция 154 общего пользования, и, к тому же, от имени других типов пользователей, имеющих разные привилегии доступа. Обновления в отношении вычислительной среды могут распространяться обратно до хост-узла 142 вычислительной среды и могут автоматически синхронизироваться с другими устройствами. Отсюда, вычислительная среда, поэтому, может быть разработана и представлена в качестве архитектуры облачных вычислений, содержащей независимое от устройства представление («облако»), выраженное в качестве совместимого воспроизведения по всем устройствам («клиентам»), которые формируют сеть взаимодействующих порталов (со специфичными устройствам свойствами) в одну и ту же вычислительную среду. Что касается технологий, обсужденных в материалах настоящей заявки, устройства, представленные в иерархии 144 объектов, могут устанавливать сеансы 32 связи безопасным и эффективным образом с использованием технологий, обсужденных в материалах настоящей заявки. Рядовые специалисты в данной области техники могут разработать многие сценарии, в которых могут использоваться технологии, обсужденные в материалах настоящей заявки.
Второй аспект, который может меняться среди вариантов осуществления этих технологий, относится к способу получения открытого сертификата 72 назначения устройства 14 назначения, который устройство 12 источника может использовать для шифрования приглашения 82 сеанса. В одной из реализаций открытый сертификат 72 назначения может быть получен с сервера сертификатов, который может быть сконфигурирован для хранения различных открытых сертификатов, в том числе, открытого сертификата 72 назначения. Например, большая организация может реализовать сервер сертификатов, который содержит в себе открытые сертификаты различных известных устройств, используемых организацией, таких как компьютеры, доступные через локальную сеть (LAN). В одном из таких вариантов осуществления хост-узел 142 вычислительной среды, на котором представлены такие устройства, может быть сконфигурирован для хранения открытого сертификата 72 назначения в пределах иерархии 144 объектов, который может быть доступен устройству 12 источника. Устройство 12 источника, работающее в сети, может пытаться устанавливать сеанс связи с конкретным устройством 14 назначения посредством, прежде всего, запрашивания сервера сертификатов касательно открытого сертификата устройства 14 назначения, а затем использования предоставленного открытого сертификата для шифрования приглашения 82 сеанса. Эта технология, тем самым, аутентифицирует устройство 14 назначения, если принят соответствующий ответ, поскольку другие устройства не способны дешифровать приглашение 82 сеанса без доступа к секретному ключу 70 сертификата назначения, соответствующему предоставленному открытому сертификату 72 назначения. Однако сервер сертификатов мог бы представлять собой слабое место безопасности, поскольку, если компрометируется третьей стороной, аутентификация большого количества устройств может быть фальсифицирована третьей стороной; дополнительно, сервер сертификатов сам может аутентифицироваться. В качестве альтернативной технологии, открытые сертификаты 72 назначения различных устройств могут поставляться на устройство 12 источника по любому пригодному каналу, например, электронной почтой, передачей файлов или физическим запоминающим носителем. Независимо от того, каким образом устройство 12 источника добивается доступа к открытому сертификату 72 назначения, технологии, обсужденные в материалах настоящей заявки, могут использоваться соответствующим образом. Наоборот, в некоторых вариантах осуществления, если устройство 14 назначения сконфигурировано для установления сеансов 32 связи только с известными устройствами 12 источника, устройство 14 назначения может обращаться к открытому сертификату источника (который также мог бы поставляться сервером 162 сертификатов) для аутентификации устройства 12 источника во время подтверждения установления связи.
Дополнительное усовершенствование этих технологий относится к кэшированию открытых сертификатов. Например, устройство 12 источника может содержать кэш сертификатов, в котором могут храниться открытые сертификаты 72 назначения, полученные во время инициирования сеанса 32 связи (например, с сервера сертификатов), и позже могут использоваться для повторной аутентификации устройства 14 назначения наряду с инициированием следующего сеанса связи с тем же самым устройством 14 назначения. Это кэширование может дополнительно повышать эффективность этих технологий сокращением ненужных извлечений открытого сертификата 72 назначения конкретного устройства 14. Кэш также может поддерживаться для содействия безопасности, например, посредством установления срока действия для соответственных открытых сертификатов 72 назначения и удаления истекших открытых сертификатов 72 назначения из кэша сертификатов.
Фиг.9 представляет примерный сценарий 160, характеризующийся некоторыми из этих вариантов данного второго аспекта вместе с технологиями, обсужденными в материалах настоящей заявки. В этом примерном сценарии 160 сервер 162 сертификатов может быть сконфигурирован для хранения открытых сертификатов, в том числе открытого сертификата 72 назначения конкретного устройства 14 назначения. Устройство 12 источника, имеющее доступ к серверу 162 сертификатов, может пытаться инициировать первый сеанс 166 связи с устройством 14 назначения, а потому может запрашивать сервер 162 сертификатов для получения открытого сертификата 72 назначения. Однако устройство 12 источника, к тому же, может содержать кэш 164 сертификатов, сконфигурированный для хранения открытых сертификатов, и, по получению открытого сертификата 72 назначения устройства 14 назначения, устройство 12 источника может быть сконфигурировано для сохранения открытого сертификата 72 назначения устройства 14 назначения в кэше 164 сертификатов. Устройство 12 источника, в таком случае, может использовать открытый сертификат назначения для аутентификации устройства 14 назначения наряду с установлением первого сеанса 166 связи. Впоследствии (например, после того как первый сеанс 166 связи закончился), устройство 12 источника может пытаться инициировать второй сеанс 168 связи с устройством 14 назначения. Вместо повторного получения открытого сертификата 72 назначения с сервера 162 сертификатов устройство 12 источника может извлекать открытый сертификат 72 назначения из кэша 164 сертификатов, который может использоваться для повторной аутентификации устройства 14 назначения наряду с установлением второго сеанса 168 связи. Это кэширование, поэтому, может повышать эффективность установления второго сеанса 168 связи посредством избегания ненужного получения открытого сертификата 72 назначения. Рядовые специалисты в данной области техники могут придумать много технологий для реализации доставки и использования открытых сертификатов наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Третий аспект, который может меняться среди вариантов осуществления этих технологий, относится к способу создания сеансового ключа 86, используемого для шифрования сеанса 32 связи, установленного между устройством 12 источника и устройством 14 назначения после подтверждения установления связи. В качестве первого примера, сеансовый ключ 86 мог бы содержать симметричный ключ, который мог бы случайно генерироваться и использоваться согласно алгоритму симметричного шифрования (например, алгоритму Риджндаела), в силу чего один и тот же ключ используется для шифрования и для дешифрования сообщений. Симметричный ключ мог бы быть желательным для защиты сеанса 32 связи, так как затраты вычислительных ресурсов в случае использования такого ключа могут быть значительно более низкими, чем при использовании несимметричного ключа. Сеансовый ключ 86, в таком случае, мог бы генерироваться, например, посредством генерации сеансового ключа 74 источника, содержащего первый случайно генерированный ключ (такой как случайно выбранное целое число или строка), генерации сеансового ключа 76 назначения, содержащего второй случайно генерированный ключ, и генерации симметричного случайного сеансового ключа с использованием первого случайно генерированного ключа и второго случайно генерированного ключа (например, посредством конкатенации случайно генерированных ключей).
В качестве второго примера, мог бы генерироваться набор сеансовых ключей. Так как симметричные ключи могли бы быть более легкими для взлома, чем несимметричные ключи, могло бы быть желательным сменять по очереди набор ключей во время сеанса 32 связи (например, где устройство 12 источника и устройство 14 назначения сконфигурированы для периодического переключения на следующий ключ в наборе сеансовых ключей). Например, сеансовый ключ 86 может генерироваться в качестве набора сеансовых ключей, содержащего по меньшей мере два сеансовых ключа, каждый из которых отличен от других сеансовых ключей, но, тем не менее, генерируется (разными способами) с использованием сеансового ключа источника и сеансового ключа назначения. После инициирования сеанс 32 связи сначала может шифроваться первым сеансовым ключом, а устройства могут быть сконфигурированы для выбора некоторым образом (например, периодически) второго сеансового ключа из набора сеансовых ключей и для шифрования сеанса 32 связи с использованием второго сеансового ключа. Рядовые специалисты в данной области техники могут разработать много способов генерирования и использования сеансового ключа наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Четвертый аспект, который может меняться между вариантами осуществления этих технологий, относится к образу действий инициирования сеанса связи. В качестве первого примера, устройство 12 источника может инициировать сеанс 32 связи с устройством 14 назначения после приема принятия 84 сеанса. В качестве второго примера, устройство 14 назначения, взамен, может инициировать сеанс 32 связи с устройством 12 источника после отправки принятия 84 сеанса. В качестве третьего примера, устройство 14 назначения могло бы инициировать сеанс 32 связи даже до отправки принятия 84 сеанса, и, взамен, может отправлять принятие 84 сеанса после установления сеанса 32 связи. Эта технология могла бы эффективно давать устройствам возможность устанавливать сеанс связи после отправки всего лишь одиночного сообщения; например, устройство 12 источника могло бы отправлять приглашение 82 сеанса на устройство 14 назначения и, затем, могло бы быть сконфигурированным для ожидания инициирования сеанса 32 связи устройством 14 назначения, с принятием 84 сеанса для следования в пределах сеанса 32 связи. Рядовые специалисты в данной области техники могут разработать много способов инициирования сеанса связи между устройствами наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Пятый аспект, который может меняться между вариантами осуществления этих технологий, относится к сценариям, включающим в себя установление сеансов 32 связи между устройствами, эксплуатируемыми разными пользователями. В тех случаях, когда устройства эксплуатируются одним и тем же пользователем, может быть вовлечено сравнительно немного проблем основанной на идентичности безопасности; но, в тех случаях, когда устройство 12 источника эксплуатируется пользователем источника, а устройство 14 назначения эксплуатируется пользователем назначения, один или оба пользователя могут выражать желание аутентифицировать идентичности других пользователей до инициирования сеанса 32 связи. Например, пользователь назначения смог конфигурировать устройство 14 назначения совместно использовать данные только с конкретным набором пользователей 12 источника устройств 14 источника, а потому может конфигурировать устройство 14 назначения так, чтобы оно отклоняло установление сеансов 32 связи с неизвестными или известными, но не аутентифицированными пользователями. В одном из таких вариантов осуществления приглашение 82 сеанса, предоставляемое устройством 12 источника, может включать в себя аутентификатор пользователя источника, такой как пароль или криптографическая подпись, которые могут аутентифицировать идентичность пользователя источника устройства 12 источника. Устройство 14 назначения, поэтому, может быть сконфигурировано для верификации пользователя источника с использованием аутентификатора пользователя источника и для инициирования сеанса 32 связи с устройством 12 источника после аутентификации пользователя источника. Наоборот, принятие 84 сеанса, выдаваемое устройством 14 назначения, может включать в себя аутентификатор пользователя назначения, который может аутентифицировать идентичность пользователя назначения устройства 14 назначения; а устройство 12 источника может быть сконфигурировано для верификации пользователя назначения с использованием аутентификатора пользователя назначения и для инициирования сеанса 32 связи с устройством 14 назначения после инициирования пользователя назначения. Рядовые специалисты в данной области техники могут придумать много технологий для аутентификации пользователей наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Шестой аспект, который может меняться между вариантами осуществления этих технологий, относится к сценариям, где одно или оба из устройства 12 источника и устройства 14 назначения доступны на многочисленных адресах. В первом таком сценарии устройство 12 источника и устройство 14 назначения одновременно могут быть способны к осуществлению доступа друг к другу через многочисленные сети, такие как персональная сеть (PAN), такая как сеть Bluetooth, локальная сеть (LAN), такая как сеть стандарта 802.11 (WiFi), и глобальная сеть (WAN), такая как сеть Интернет. Физическая сеть, к тому же, может содержать другие типы сетей, такие как суперодноранговые сети, где узел может работать в качестве сервера, клиента и/или одного или более одноранговых узлов по отношению к другим одноранговым узлам. Во втором сценарии устройство 14 назначения может быть доступным на диапазоне адресов, и может быть предпочтительным, чтобы устройство 12 источника контактировало с устройством 14 назначения с использованием конкретного адреса, по сравнению с другими адресами (например, канала HTTP (протокола передачи гипертекстовых файлов), доступного через порт 80, вместо канала FTP (протокола передачи файлов), доступного через порт 21). В этих и других сценариях устройство 12 источника может раскрывать устройству 14 назначения (например, в качестве части приглашения 82 сеанса) набор отбираемых адресов источника, где может быть доступным устройство источника, и наряду с установлением сеанса 32 связи устройство 14 назначения может выбирать адрес 76 источника из числа отбираемых адресов источника и может инициировать сеанс 32 связи с выбранным адресом 76 источника. Наоборот или дополнительно, устройство 14 назначения может раскрывать устройству 12 источника (например, в качестве части принятия 84 сеанса) набор отбираемых адресов назначения, где может быть доступным устройство назначения, и наряду с установлением сеанса 32 связи устройство 12 источника может выбирать адрес 80 назначения из числа отбираемых адресов источника и может инициировать сеанс 32 связи с выбранным адресом 80 источника.
Во втором варианте этого шестого аспекта может быть желательно, чтобы одно или оба устройства использовали первый адрес во время процесса подтверждения установления связи и второй (отличный) адрес во время сеанса связи. Например, если одно или оба устройства занимаются подтверждением установления связи с использованием адресов, которые ассоциированы с устройствами, субъект, прослушивающий процесс подтверждения установления связи, мог бы быть способным использовать эти адреса для идентификации местоположений устройств, для идентификации транзакции между устройствами и/или для создания помехи сеансу связи, например, с помощью атаки отказа в обслуживании. Взамен, одно или оба устройства могли бы пытаться использовать один адрес (например, анонимизированный адрес), чтобы заниматься процессом подтверждения установления связи, и использовать другой адрес (например, неанонимизированный адрес), чтобы заниматься сеансом связи, однажды аутентифицированным и безопасно установленным. Например, принятие 84 сеанса могло бы содержать отбираемый адрес назначения, который отличен от адреса 80 назначения устройства 14 назначения, на который устройство 12 источника отправляет приглашение 82 сеанса, и устройство 12 источника могло бы инициировать сеанс 32 связи с устройством 14 назначения на отбираемом адресе назначения. Наоборот, приглашение 82 сеанса могло бы содержать отбираемый адрес источника, который отличен от адреса 78 источника устройства 12 источника, с которого отправлено приглашение 82 сеанса, и устройство 12 источника могло бы инициировать сеанс 32 связи с устройством 14 назначения с отбираемого адреса источника. В одном из таких сценариев сервер анонимизации может давать устройствам возможность объявлять эфемерный адрес для того, чтобы подтверждать установление связи с другим устройством. Может быть принято во внимание, что эта анонимизация могла бы быть выполнимой без умаления аутентификации каждым устройством по идентичности другого устройства или его пользователя; например, даже если устройство могло бы использовать анонимизированный адрес, тем не менее, оно могло бы аутентифицироваться благодаря открытому сертификату. Рядовые специалисты в данной области техники могут разработать многие способы раскрытия, выбора среди и использования множества адресов, посредством чего могут быть доступны устройство 12 источника и/или устройство 14 назначения, наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Седьмой аспект, который может меняться между вариантами осуществления этих технологий, относится к использованию одного или более одноразовых номеров для повышения безопасности канала 32 связи. Одноразовый номер является отличительным идентификатором, сформированным устройством 12 источника и/или устройством 14 назначения и включенным в сообщения 52, чтобы различимо идентифицировать сообщение 52, сеанс 32 связи и т.д. Использование одноразового номера может делать «атаку с повторением пакетов» более трудной, где третья сторона может захватывать шифрованное сообщение, сформированное отправителем, и может повторно передавать шифрованное сообщение на приемник для того, чтобы компрометировать безопасность сеанса 32 связи или изменять поведение принимающего устройства. В качестве первого примера, устройство 12 источника может быть сконфигурировано для формирования одноразового номера источника (например, случайного или последовательного номера или строки), который оно может включать в приглашение 82 сеанса, который различимо идентифицирует приглашение 82 сеанса. По приему приглашения 82 сеанса устройство 14 назначения может быть сконфигурировано для верификации одноразового номера источника (например, посредством подтверждения, что оно раньше не принимало приглашение 82 сеанса, имеющее такой же одноразовый номер источника). После верификации одноразового номера источника устройство 14 назначения может передавать принятие 84 сеанса на устройство 12 источника и регистрировать одноразовый номер источника в наборе принятых ранее одноразовых номеров источника. Дополнительно, устройство 14 назначения может включать одноразовый номер источника в принятие 84 сеанса, что может дополнительно аутентифицировать идентичность устройства 14 назначения в качестве отвечающего на приглашение 82 сеанса (например, третья сторона может пытаться выдать себя за устройство 14 назначения посредством повторения принятого ранее принятия 84 сеанса, но несоответствие одноразового номера источника в принятии 84 сеанса может предупреждать устройство 12 источника об имперсонации). В качестве альтернативы или дополнительно, устройство 14 назначения может формировать одноразовый номер назначения, который может быть включен в принятие 84 сеанса, и, по приему принятия 84 сеанса, устройство 12 источника может верифицировать одноразовый номер назначения до инициирования сеанса 32 связи с устройством 14 назначения.
Фиг.10 представляет примерный сценарий 170, характеризующийся устройством 12 источника и устройством 14 назначения, которые пытаются устанавливать сеанс 32 связи согласно технологиям, представленным в материалах настоящей заявки, и, к тому же, характеризующийся использованием одноразового номера 172 источника. Устройство 12 источника может осуществлять запрос на инициирование сеанса 32 связи посредством формирования и отправки на устройство 14 назначения приглашения 82 сеанса, шифрованного с открытым сертификатом 72 назначения. Однако приглашение 82 сеанса может содержать (в дополнение к другим элементам) одноразовый номер 172 источника, такой как случайно сформированный номер. Устройство 14 назначения может принимать приглашение 82 сеанса и подтверждать, что оно раньше не принимало приглашение 82 сеанса, характеризующееся одноразовым номером 172 источника. После успешного подтверждения одноразового номера 172 источника устройство 14 назначения может формировать и отправлять на устройство 12 источника принятие 84 сеанса, шифрованное с открытым сертификатом 66 источника и содержащее (в дополнение к другим элементам) одноразовый номер 172 источника. Устройство 12 источника может верифицировать, что одноразовый номер 172 источника, принятый в принятии 84 сеанса, соответствует одноразовому номеру 172, отправленному в приглашении 82 сеанса, до инициирования сеанса 32 связи.
Включение одноразового номера 172 источника в этот примерный сценарий 170 по фиг.10 может повышать безопасность сеанса 32 связи по меньшей мере двумя путями. Во-первых, третья сторона 174 может перехватывать приглашение 82 сеанса и, впоследствии, может попытаться инициировать отдельный сеанс 32 связи с устройством 14 назначения посредством повторной передачи приглашения 82 сеанса на устройство 14 назначения, тем самым выдавая себя за устройство 12 источника. Устройство 14 назначения может идентифицировать одноразовый номер 172 источника, включенный в повторно переданное приглашение 82 сеанса, в качестве принимавшегося ранее при первой передаче приглашения 82 сеанса устройством 12 источника, а потому может отказывать в инициировании сеанса 32 связи с третьей стороной 174. Во-вторых, третья сторона 174 может захватывать принятие 84 сеанса, переданное из устройства 14 назначения на устройство 12 источника во время инициирования первого сеанса связи. Во время последующей попытки устройством 12 источника установить второй сеанс связи с устройством 14 назначения третья сторона 174 затем может пытаться выдать себя за устройство 14 назначения посредством повторной передачи принятия 84 сеанса, но одноразовый номер 172 источника во втором приглашении 82 сеанса будет претерпевать неудачу в соответствии одноразовому номеру 172 источника, возвращенному третьей стороной 174 в повторно переданном принятии 84 сеанса, тем самым предупреждая устройство 12 источника в отношении имперсонации. Рядовые специалисты в данной области техники могут придумать многие применения для одноразовых номеров, сформированных устройством 12 источника и/или устройством 14 назначения, наряду с реализацией технологий, обсужденных в материалах настоящей заявки.
Хотя изобретение было описано на языке, специфичном для структурных признаков и/или действий обобщенных способов, должно быть понятно, что объем изобретения, определенный в прилагаемой формуле изобретения, не обязательно ограничен специфичными признаками или действиями, описанными выше. Скорее, специфичные признаки и действия, описанные выше, раскрыты в качестве примерных форм реализации формулы изобретения.
В качестве используемых в этой заявке, термины «компонент», «модуль», «система», «интерфейс» и тому подобные, в общем смысле, предназначены для соответствия связанной с компьютером сущности, либо аппаратным средствам, либо программно-аппаратным средствам, либо комбинации аппаратных средств и программного обеспечения, либо программного обеспечения, либо программного обеспечения в ходе исполнения. Например, компонент может быть, но не в качестве ограничения, процессом, работающим на процессоре, процессором, объектом, исполняемым файлом, потоком управления, программой и/или компьютером. В качестве иллюстрации, как приложение, работающее на контроллере, так и контроллер могут быть компонентом. Один или более компонентов могут находиться в пределах процесса и/или потока управления, и компонент может быть локализован на одном компьютере и/или распределен между двумя или более компьютерами.
Кроме того, заявленное изобретение может быть реализовано в качестве способа, устройства или изделия с использованием стандартных технологий программирования и/или проектирования для производства программного обеспечения, аппаратно реализованного программного обеспечения, аппаратных средств или любого их сочетания, чтобы управлять компьютером для реализации раскрытого изобретения. Термин «промышленное изделие», в качестве используемого в материалах настоящей заявки, подразумевается охватывающим компьютерную программу, доступную с любого машиночитаемого устройства, несущей или носителей. Конечно, специалисты в данной области техники будут отдавать себе отчет, что многие модификации могут быть сделаны по отношению к этой конфигурации, не выходя из объема и сущности заявленного изобретения.
Фиг.11 и последующее обсуждение дают краткое общее описание пригодной вычислительной среды для реализации вариантов осуществления одного или более положений, изложенных в материалах настоящей заявки. Операционная среда по фиг.11 является всего лишь одним из примеров пригодной операционной среды и не предназначена для внушения какого бы то ни было ограничения в отношении объема применения или функциональных возможностей операционной среды. Примерные вычислительные устройства включают в себя, но не в качестве ограничения, персональные компьютеры, серверные компьютеры, карманные или портативные устройства, мобильные устройства (такие как мобильные телефоны, персональные цифровые секретари (PDA), медиаплееры и тому подобное), многопроцессорные системы, бытовую электронику, миникомпьютеры, суперкомпьютеры, распределенные вычислительные среды, которые включают в себя любые из вышеприведенных систем или устройств, и тому подобное.
Хотя не требуется, варианты осуществления описаны в общем контексте «машиночитаемых команд», исполняемых одним или более вычислительными устройствами. Машиночитаемые команды могут распространяться через машиночитаемые носители (обсужденные ниже). Машиночитаемые команды могут быть реализованы в качестве программных модулей, таких как функции, объекты, интерфейсы прикладного программирования (API), структуры данных и тому подобное, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Типично, функциональные возможности машиночитаемых команд могут комбинироваться или распределяться, как требуется, в различных средах.
Фиг.11 иллюстрирует примерную систему 180, содержащую вычислительное устройство 182, сконфигурированное для реализации одного или более вариантов осуществления, предусмотренных в материалах настоящей заявки. В одной из конфигураций вычислительное устройство 182 включает в себя по меньшей мере один блок 186 обработки данных и память 188. В зависимости от точной конфигурации и типа вычислительного устройства память 188 может быть энергозависимой (например, такой как ОЗУ (оперативное запоминающее устройство, RAM)), энергонезависимой (например, такой как ПЗУ (постоянное запоминающее устройство, ROM), флэш-память и т.д.) или некоторой комбинацией этих двух. Эта конфигурация проиллюстрирована на фиг.11 пунктирной линией 184.
В других вариантах осуществления устройство 182 может включать в себя дополнительные признаки и/или функциональные возможности. Например, устройство 182 также может включать в себя дополнительное запоминающее устройство (например, съемное и/или несъемное), в том числе, но не в качестве ограничения, магнитное запоминающее устройство, оптическое запоминающее устройство и тому подобное. Такое дополнительное запоминающее устройство проиллюстрировано на фиг.11 запоминающим устройством 190. В одном из вариантов осуществления машиночитаемые команды для реализации одного или более вариантов осуществления, предусмотренных в материалах настоящей заявки, могут находиться в запоминающем устройстве 190. Запоминающее устройство 190, к тому же, может хранить другие машиночитаемые команды для реализации операционной системы, прикладной программы и тому подобного. Машиночитаемые команды могут быть загружены в память 188, например, для выполнения блоком 186 обработки данных.
Термин «машиночитаемые носители» в качестве используемого в материалах настоящей заявки охватывает компьютерные запоминающие носители. Компьютерные запоминающие носители включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые команды или другие данные. Память 188 и запоминающее устройство 190 являются примерами компьютерных запоминающих носителей. Компьютерные запоминающие носители включают в себя, но не в качестве ограничения, ОЗУ, ПЗУ, ЭСППЗУ (электрически стираемое и программируемое ПЗУ, EEPROM), флэш-память или другую технологию памяти, CD-ROM (ПЗУ на компакт-диске), цифровые многофункциональные диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитную ленту, магнитные дисковые запоминающие или другие магнитные запоминающие устройства, либо любой другой носитель, который может использоваться для хранения требуемой информации и к которому может осуществляться доступ устройством 182. Любые такие компьютерные запоминающие носители могут быть частью устройства 182.
Устройство 182 также может включать в себя соединение(я) 196 связи, которое предоставляет устройству 182 возможность осуществлять связь с другими устройствами. Соединение(я) 196 связи может включать в себя, но не в качестве ограничения, модем, плату сетевого интерфейса (NIC), интегральный сетевой интерфейс, радиочастотный передатчик/приемник, инфракрасный порт, соединение USB (универсального последовательного порта) или другие интерфейсы для присоединения вычислительного устройства 182 к другим вычислительным устройствам. Соединение(я) 196 связи может включать в себя проводное соединение или беспроводное соединение. Соединение(я) 196 связи может передавать и/или принимать средства передачи информации.
Термин «машиночитаемые носители» может включать в себя среды передачи информации. Среды передачи информации типично воплощают машиночитаемые команды или другие данные в «модулированном сигнале данных», таком как несущая волна или другой транспортный механизм, и включают в себя любые среды доставки информации. Термин «модулированный сигнал данных» может включать в себя сигнал, одна или более характеристик которого устанавливаются или изменяются таким образом, чтобы кодировать информацию в сигнале.
Устройство 182 может включать в себя устройство(а) 194 ввода, такое как клавиатура, мышь, перо, устройство речевого ввода, устройство сенсорного ввода, инфракрасные камеры, устройства видеоввода и/или любое другое устройство ввода. Устройство(а) 192 вывода, такое как один или более дисплеев, динамиков, принтеров, и/или любое другое устройство вывода также может быть включено в устройство 182. Устройство(а) 194 ввода и устройство(а) 192 вывода могут быть присоединены к устройству 182 через проводное соединение, беспроводное соединение или любую их комбинацию. В одном из вариантов осуществления устройство ввода или устройство вывода из другого вычислительного устройства может использоваться в качестве устройств(а) 194 ввода или устройств(а) 192 вывода для вычислительного устройства 182.
Компоненты вычислительного устройства 182 могут быть соединены различными межсоединениями, такими как шина. Такие межсоединения могут включать в себя межсоединение периферийных компонентов (PCI), такое как PCI Express, универсальную последовательную шину (USB), интерфейс Fire Wire (стандарта IEEE 1394), оптическую шинную структуру и тому подобное. В еще одном варианте осуществления компоненты вычислительного устройства 182 могут быть соединены сетью. Например, память 188 может содержать многочисленные физические блоки памяти, расположенные в разных физических местоположениях, соединенных сетью.
Специалисты в данной области техники будут осознавать, что устройства хранения данных, используемые для хранения машиночитаемых команд, могут быть распределены по сети. Например, вычислительное устройство 200, доступное через сеть 198, может хранить машиночитаемые команды для реализации одного или более вариантов осуществления, предусмотренных в материалах настоящей заявки. Вычислительное устройство 182 может осуществлять доступ к вычислительному устройству 200 и загружать часть или все из машиночитаемых команд для их исполнения. В качестве альтернативы, вычислительное устройство 182 может загружать порции машиночитаемых команд, по необходимости, или некоторые команды могут выполняться на вычислительном устройстве 182, а некоторые на вычислительном устройстве 200.
Различные операции вариантов осуществления предусмотрены в материалах настоящей заявки. В одном из вариантов осуществления одна или более описанных операций могут составлять машиночитаемые команды, хранимые на одном или более машиночитаемых носителях, которые при их исполнении вычислительным устройством будут побуждать вычислительное устройство выполнять описанные операции. Порядок, в котором описаны некоторые или все из операций, не должен истолковываться таким образом, чтобы подразумевать, что эти операции являются обязательно зависящими от порядка. Альтернативное упорядочение будет приниматься во внимание специалистом в данной области техники, обладающим преимуществом этого описания. Кроме того, будет понятно, что не все операции обязательно присутствуют в каждом варианте осуществления, предусмотренном в материалах настоящей заявки.
Более того, слово «примерный» используется в материалах настоящей заявки, чтобы означать «служащий в качестве примера, отдельного случая или иллюстрации». Любой аспект или конструкция, описанные в материалах настоящей заявки как «примерные», не обязательно должны истолковываться в качестве преимущественных над другими аспектами или конструкциями. Скорее, использование слова «примерный» предназначено для представления концепций конкретным образом. В качестве использования в этой заявке, термин «или» подразумевается означающим скорее включающее «или», нежели исключающее «или». То есть, если не указан иной образ действий или не ясно из контекста, «X использует A или B» подразумевается означающим любую из естественно включающих перестановок. То есть, если X использует A; X использует B; или X использует как A, так и B, то «X использует A или B» удовлетворено при любом из вышеизложенных случаев. В дополнение, формы единственного числа в качестве используемых в этой заявке и прилагаемой формуле изобретения, как правило, могут интерпретироваться означающими «один или более», если не указан иной образ действий или не ясно из контекста, что следует ориентироваться на форму единственного числа.
К тому же, хотя раскрытие было показано и описано в отношении одной или более реализаций, эквивалентные изменения и модификации будут приходить на ум другим специалистам в данной области техники на основании прочтения и осмысления этого описания изобретения и прилагаемых чертежей. Раскрытие включает в себя все такие модификации и изменения и ограничивается только объемом, определяемым последующей формулой изобретения. В частности, что касается различных функций, выполняемых вышеописанными компонентами (например, элементами, ресурсами и т.д.), термины, используемые для описания таких компонентов, подразумеваются соответствующими, если не указано иное, любому компоненту, который выполняет предписанную функцию описанного компонента (например, который функционально равносилен), даже если он конструктивно не эквивалентен раскрытой конструкции, которая выполняет функцию в проиллюстрированных в материалах настоящей заявки примерных реализациях раскрытия. В дополнение, несмотря на то, что конкретный признак раскрытия, возможно, был раскрыт по отношению только к одной из нескольких реализаций, такой признак может комбинироваться с одним или более другими признаками других реализаций, как может требоваться и быть полезным для любого заданного или конкретного применения. Более того, в пределах того, что термины «включает в себя», «имеющий», «имеет», «с» или их варианты используются в подробном описании либо формуле изобретения, такие термины подразумеваются включающими в себя, в некотором смысле подобными термину «содержащий».
Устройство источника и устройство назначения могут пытаться сформировать безопасный сеанс связи, посредством чего шифрованные сообщения могут передаваться через незащищенную сеть, такую как сеть Интернет. Однако обмен многими сообщениями при установлении сеанса связи может вовлекать значительное время ожидания и вычислительные ресурсы, особенно в сценариях, характеризующихся многими сеансами связи (например, сеансами одноранговой связи). Могут быть разработаны технологии для инициирования сеанса связи, которые дают возможность инициирования сеанса связи всего лишь двумя обмениваемыми сообщениями, или даже одиночным сообщением, передаваемым с устройства источника на устройство назначения. Некоторые варианты осуществления этих технологий также могут предоставлять возможность включения в состав полезных признаков безопасности, таких как аутентификация посредством открытого сертификата для обнаружения атак методом перехвата сообщений и подмены ключей, без увеличения количества сообщений, вовлеченных в инициирование сеанса связи. 3 н. и 12 з.п. ф-лы, 11 ил.
1. Способ (90) установления сеанса (32) связи устройством (12) источника, имеющим процессор (88) и секретный ключ (64) источника, с устройством (14) назначения, имеющим открытый сертификат (74) назначения, при этом согласно способу (90):
выполняют (94) на процессоре (88) команды, сконфигурированные:
генерировать (96) сеансовый ключ (74) источника;
передавать (98) на устройство (14) назначения приглашение (82) сеанса, содержащего адрес (78) источника и сеансовый ключ (74) источника, причем приглашение (82) сеанса шифруется с использованием открытого сертификата (72) назначения; и
по приему (100) с устройства (14) назначения принятия (84) сеанса, содержащего адрес (78) назначения и сеансовый ключ (76) назначения:
дешифровать (102) принятие (84) сеанса с использованием секретного ключа (64) источника;
генерировать (104) сеансовый ключ (86) с использованием сеансового ключа (74) источника и сеансового ключа (76) назначения; и
инициировать (106) сеанс (32) связи с устройством (14) назначения на адресе (78) назначения, причем сеанс (32) связи шифруется с использованием сеансового ключа (86).
2. Способ по п.1, в котором устройство источника и устройство назначения представлены в развертываемой вычислительной среде, размещенной в хост-узле вычислительной среды.
3. Способ по п.1, в котором:
сеансовый ключ источника содержит первый случайно генерированный ключ;
сеансовый ключ назначения содержит второй случайно генерированный ключ; и
сеансовый ключ содержит симметричный случайный сеансовый ключ, генерированный с использованием первого случайно генерированного ключа и второго случайно генерированного ключа.
4. Способ по п.1, в котором:
при генерации сеансового ключа генерируют набор сеансовых ключей, содержащий по меньшей мере два сеансовых ключа, при этом соответственные сеансовые ключи генерируются с использованием сеансового ключа источника и сеансового ключа назначения и отличны от других сеансовых ключей в этом наборе сеансовых ключей;
при инициировании сеанса связи инициируют сеанс связи с устройством назначения на адресе назначения, при этом сеанс связи шифруется с использованием первого сеансового ключа; и
способ содержит этапы, на которых после инициирования сеанса связи:
выбирают второй сеансовый ключ из упомянутого набора сеансовых ключей и
шифруют сеанс связи с использованием второго сеансового ключа.
5. Способ по п.1, в котором:
устройство источника эксплуатируется пользователем источника;
устройство назначения эксплуатируется пользователем назначения;
принятие сеанса содержит аутентификатор пользователя назначения, и
при инициировании сеанса связи:
верифицируют пользователя назначения с использованием аутентификатора пользователя назначения и,
после верификации пользователя назначения, инициируют сеанс связи с устройством назначения, при этом сеанс связи шифруется с использованием сеансового ключа.
6. Способ по п.1, в котором:
устройство источника содержит кэш сертификатов;
упомянутые команды сконфигурированы:
по получению открытого сертификата назначения устройства назначения сохранять открытый сертификат назначения в кэше сертификатов и
устанавливать следующий сеанс связи с устройством назначения посредством извлечения открытого сертификата назначения из кэша сертификатов.
7. Способ по п.1, в котором:
принятие сеанса содержит по меньшей мере два отбираемых адреса назначения, и
при инициировании сеанса связи устройством назначения:
выбирают по меньшей мере один адрес назначения из упомянутых по меньшей мере двух отбираемых адресов назначения и
инициируют сеанс связи с устройством назначения на по меньшей мере одном выбранном адресе назначения, при этом сеанс связи шифруется с использованием сеансового ключа.
8. Способ по п.1, в котором:
принятие сеанса содержит отбираемый адрес назначения, отличный от адреса назначения устройства назначения, на которое устройство источника отправляет приглашение сеанса; и
при инициировании сеанса связи:
инициируют сеанс связи с устройством назначения на отбираемом адресе назначения, при этом сеанс связи шифруется с использованием сеансового ключа.
9. Способ по п.1, в котором:
упомянутые команды сконфигурированы формировать одноразовый номер источника, и
приглашение сеанса содержит этот одноразовый номер источника.
10. Способ по п.1, в котором:
принятие сеанса содержит одноразовый номер назначения; и
при инициировании сеанса связи:
верифицируют одноразовый номер назначения, и
после верификации одноразового номера назначения, инициируют сеанс связи с устройством назначения, при этом сеанс связи шифруется с использованием сеансового ключа.
11. Способ (110) установления сеанса (32) связи устройством (14) назначения, имеющим процессор (88) и секретный ключ (70) назначения, с устройством (12) источника, имеющим открытый сертификат (66) источника, при этом согласно способу (110):
выполняют (114) на процессоре (88) команды, сконфигурированные:
по приему (116) от устройства (12) источника приглашения (82) сеанса, содержащего сеансовый ключ (74) источника:
дешифровать (118) приглашение (82) сеанса с использованием секретного ключа (70) назначения;
генерировать (120) сеансовый ключ (76) назначения;
генерировать (122) сеансовый ключ (86) с использованием сеансового ключа (74) источника и сеансового ключа (76) назначения; и
передавать (24) на устройство (12) источника принятие (84) сеанса, содержащее адрес (78) назначения и сеансовый ключ (76) назначения, причем принятие (84) сеанса шифруется с использованием открытого сертификата (66) источника; и
по приему от устройства (12) источника инициации сеанса (32) связи, инициировать (126) сеанс (32) связи с устройством (12) источника на адресе (78) источника, при этом сеанс (32) связи шифруется с использованием сеансового ключа (86).
12. Способ по п.11, в котором:
приглашение сеанса содержит отбираемый адрес источника, отличный от адреса источника устройства источника, с которого устройство источника отправляет приглашение сеанса; и
при инициировании сеанса связи инициируют сеанс связи с устройством источника на отбираемом адресе источника, при этом сеанс связи шифруется с использованием сеансового ключа.
13. Способ по п.11, в котором:
устройство назначения доступно на по меньшей мере двух отбираемых адресах назначения;
принятие сеанса содержит эти по меньшей мере два отбираемых адреса назначения; и
сеанс связи инициируется устройством источника на по меньшей мере одном отбираемом адресе назначения.
14. Способ по п.11, в котором:
приглашение сеанса содержит одноразовый номер источника; и
упомянутые команды сконфигурированы по приему приглашения сеанса:
верифицировать одноразовый номер источника и
после верификации одноразового номера источника передавать принятие сеанса на устройство источника.
15. Машиночитаемый носитель (132) данных, содержащий команды, которые при их исполнении в процессоре (88) устройства (12) источника, эксплуатируемого пользователем источника и содержащего кэш (164) сертификатов и секретный ключ (64) источника, а также имеющего по меньшей мере один адрес (78) источника, представленный в развертываемой вычислительной среде (144), размещенной в хост-узле (142) вычислительной среды и, к тому же, представляющей устройство (14) назначения, эксплуатируемое пользователем назначения и имеющее по меньшей мере один адрес (78) назначения, причем устройство (12) источника имеет доступ к серверу (162) сертификатов, содержащему по меньшей мере один открытый сертификат, в том числе, открытый сертификат (72) назначения, идентифицирующий устройство (14) назначения, устанавливают сеанс (32) связи с устройством (14) назначения посредством того, что:
получают открытый сертификат (72) назначения устройства (14) назначения с сервера (162) сертификатов;
сохраняют открытый сертификат (72) назначения в кэше (164) сертификатов;
генерируют сеансовый ключ (74) источника;
формируют одноразовый номер (172) источника;
передают на устройство (14) назначения приглашение (82) сеанса, содержащее по меньшей мере один адрес (78) источника, сеансовый ключ (74) источника и одноразовый номер (172) источника, при этом приглашение (82) сеанса шифруется с использованием открытого сертификата (72) назначения;
по приему от устройства (14) назначения принятия (84) сеанса, содержащего по меньшей мере один отбираемый адрес (78) назначения, сеансовый ключ (76) назначения, одноразовый номер назначения и аутентификатор пользователя назначения:
дешифруют принятие (84) сеанса с использованием секретного ключа (64) источника;
верифицируют одноразовый номер назначения;
верифицируют пользователя назначения с использованием аутентификатора пользователя назначения;
и после верификации пользователя назначения и одноразового номера назначения:
выбирают по меньшей мере один адрес (78) назначения из упомянутых по меньшей мере двух отбираемых адресов (78) назначения,
генерируют сеансовый ключ (86) с использованием сеансового ключа (74) источника и сеансового ключа (76) назначения и
инициируют сеанс (32) связи с устройством (14) назначения на выбранном адресе (78) назначения, при этом сеанс (32) связи шифруется с использованием сеансового ключа (86); и
устанавливают следующий сеанс (32) связи с устройством (14) назначения посредством извлечения открытого сертификата (72) назначения из кэша (164) сертификатов.
Приспособление для поверки однообразия наводки винтовки | 1926 |
|
SU7089A1 |
Способ и приспособление для нагревания хлебопекарных камер | 1923 |
|
SU2003A1 |
EA 200501605 A1 27.04.2007 | |||
Способ и приспособление для нагревания хлебопекарных камер | 1923 |
|
SU2003A1 |
СПОСОБ И СИСТЕМЫ ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОГО РАСПРЕДЕЛЕНИЯ ДАННЫХ ЧЕРЕЗ СЕТИ ОБЩЕГО ПОЛЬЗОВАНИЯ | 2003 |
|
RU2300845C2 |
Авторы
Даты
2015-02-27—Публикация
2010-09-24—Подача