Проверка синхронизации для аутентификации устройства
Иллюстрации
Показать всеИзобретение относится к беспроводной связи, а именно к проверке синхронизации для аутентификации устройства. Техническим результатом является повышение уровня криптографической защищенности. Технический результат достигается тем, что аутентификация устройства основана на способности человека синхронизировать движения своих пальцев. Таким образом, процедура образования пары для двух беспроводных устройств может включать в себя проверку синхронизации, которая основана на относительных временах приведения в действие устройств ввода на каждом из беспроводных устройств. Проверка синхронизации включает в себя определение того, произошли ли приведения в действие устройств ввода пользователя на двух различных беспроводных устройствах в пределах заданного интервала времени. Проверка синхронизации включает в себя сравнение интервалов времени, заданных несколькими приведениями в действие устройств ввода пользователя на двух беспроводных устройствах. При этом во время проверки синхронизации после приема последнего показания, относящегося ко времени приведения в действие устройства ввода, отклоняют любые показания, предположительно представляющие по меньшей мере одно время приведения в действие устройства ввода. 7 н. и 78 з.п. ф-лы, 8 ил.
Реферат
Настоящая заявка испрашивает приоритет предварительной патентной заявки США № 60/908271, поданной 27 марта 2007 года, имеющей код поверенного 061886P1, имеющей того же заявителя, что и настоящая заявка, и раскрытие которой тем самым включено в настоящий документ посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящая заявка относится, в общем, к беспроводной связи и, в частности, но не исключительно, к проверкам синхронизации для аутентификации устройства.
УРОВЕНЬ ТЕХНИКИ
Беспроводные устройства могут использовать процесс образования пары при попытке сформировать уровень доверия друг к другу совместно с взаимной аутентификацией или обменом криптографическими ключами, которые могут использоваться для служб, которые защищены криптографическими способами. Например, в технологии Bluetooth аутентификация между двумя устройствами может включать в себя обмен паролем между устройствами. В некоторых реализациях такая процедура может включать в себя использование сложного пользовательского интерфейса для ввода пароля. Напротив, в вариантах реализации, которые используют относительно простые устройства пользовательского интерфейса для ввода пароля, соответствующая стоимость обеспечения может быть относительно высокой. Кроме того, типичный пароль, используемый пользователями, может иметь от четырех до восьми цифр, что не может являться достаточно надежным, чтобы воспрепятствовать угрозе нарушения безопасности устройств посредством традиционного криптографического анализа.
Технология Bluetooth v2.1 предлагает использовать эллиптическую кривую Диффи-Хеллмана (Diffie-Hellman) для обмена ключами. При этом на основе секретной информации, полученной из эллиптической кривой Диффи-Хеллмана, аутентификация устройства может основываться на числовом сравнении или вводе пароля. Однако эти способы могут использовать сложный пользовательский интерфейс и могут быть относительно восприимчивыми к атакам с активным вмешательством в образование пары.
Технология ближней радиосвязи также может использоваться для аутентификации устройства. Например, устройства ближней радиосвязи могут быть выполнены с возможностью выполнять установление связи только тогда, когда они находятся в пределах заданного "контактного" расстояния друг от друга. Однако возможно спроектировать устройство ближней радиосвязи со специализированной антенной, которая расширяет рабочее расстояние для установления связи. В этом случае посторонний человек или устройство могут иметь возможность выполнить аутентификацию с другим устройством с относительно далекого расстояния, тем самым нарушая безопасность, обеспечиваемую требованием непосредственной близости устройств. Следовательно, аутентификация, которая основана на относительно небольшом контактном расстоянии в соответствии с технологией ближней радиосвязи, не может обеспечить достаточный уровень безопасности.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Далее следует описание сущности иллюстративных аспектов раскрытия изобретения. Следует понимать, что любая ссылка на аспекты в этом описании может относиться к одному или более аспектам раскрытия изобретения.
Раскрытие изобретения в некоторых аспектах имеет отношение к аутентификации устройств или выполнению других аналогичных операций на основе способности человека синхронизировать движения своих пальцев. Например, человек может быть в состоянии одновременно или в значительной мере одновременно нажимать или отпускать две кнопки. Напротив, от наблюдателя относительно трудно ожидать синхронизации со временами движений пальцев другого человека. Следовательно, процедура образования пары для двух беспроводных устройств может включать в себя проверку синхронизации, которая основана на относительных временах приведений в действие устройств ввода на каждом из беспроводных устройств. При этом маловероятно, что наблюдатель будет в состоянии нажать или отпустить кнопку на своем собственном беспроводном устройстве в попытке вмешаться в образование пары беспроводных устройств, выполняемое другим человеком.
В некоторых аспектах в целях аутентификации устройства, управления присутствием или других операций пару беспроводных устройств можно считать доверительными по отношению друг к другу, если один и тот же человек физически удерживает два беспроводных устройства. Следовательно, когда два беспроводных устройства, удерживаемые одним и тем же человеком, взаимодействуют друг с другом, сообщение, отправленное первым беспроводным устройством, относящееся к локальному событию синхронизации (например, к приведению в действие устройства пользовательского ввода) в первом устройстве, может считаться доверительным для второго беспроводного устройства, которое принимает сообщение. Чтобы гарантировать, что устройства удерживает один и тот же человек, принимающее устройство проверяет, что время принятого сообщения в значительной степени синхронизировано с аналогичным локальным событием синхронизации во втором устройстве. Следовательно, аутентификация или другая подобная процедура могут включать в себя определение, приводится ли в действие устройство ввода на первом устройстве (например, нажатие и/или отпускание кнопки) в значительной степени в то же самое время или времена, как и приведение в действие устройства ввода на втором устройстве.
Раскрытие изобретения в некоторых аспектах имеет отношение к проверке синхронизации, которое включает в себя определение, произошли ли приведения в действие устройств пользовательского ввода на двух разных беспроводных устройствах в пределах заданного интервала времени относительно друг друга. При этом пользователь может быть проинструктирован об одновременном приведении в действие устройства пользовательского ввода на каждом беспроводном устройстве. Первое беспроводное устройство может определить время приведения в действие, соответствующее второму беспроводному устройству, на основе времени, в которое первое устройство принимает от второго устройства сообщение, относящееся к приведению в действие второго устройства. Таким образом, первое устройство может сравнить время приведения в действие своего устройства пользовательского ввода со временем, в которое оно приняло сообщение от второго устройства. Второе устройство может выполнить аналогичную проверку синхронизации. В случае, когда проверки синхронизации проходят на обоих устройствах, устройства могут выполнить аутентификацию друг друга. В некоторых аспектах совместно с проверками синхронизации может использоваться схема согласования криптографических ключей. Кроме того, в некоторых аспектах проверки синхронизации могут быть основаны на временах больше, чем одного приведения в действие каждого устройства пользовательского ввода.
Раскрытие изобретения в некоторых аспектах имеет отношение к проверке синхронизации, которая включает в себя сравнение интервалов времени между несколькими приведениями в действие устройств пользовательского ввода на двух разных беспроводных устройствах. При этом пользователь может быть проинструктирован об одновременном приведении в действие устройства пользовательского ввода на каждом беспроводном устройстве с повторениями (например, случайными). Таким образом, пользователь может неоднократно приводить в действие каждое устройство пользовательского ввода в одно и то же время. Таким образом, на каждом беспроводном устройстве будет задана последовательность интервалов времени, соответствующих временам между приведениями в действие. Каждое из устройств может затем отправить на другое устройство итоговое значение (например, хеш-код или код аутентификации сообщения), которое основано на его наборе интервалов времени. Последующее описание описывает использование значения хеш-кода, кода аутентификации сообщения или других схем для иллюстрации типовых способов реализации схемы формирования итогового значения. Следует понимать, что в соответствии с изложенными здесь идеями для формирования итогового значения могут использоваться другие криптографические способы. В качестве одного этапа процесса проверки каждое из устройств может сравнить время приведения в действие своего устройства пользовательского ввода со временем, в которое оно приняло сообщение с итоговым значением (например, хеш-кодом) от другого устройства. В предположении, что этот этап процесса проверки прошел, после прохождения времени задержки каждое из устройств может отправить свой набор интервалов времени на другое устройство. Таким образом, на другом этапе процесса проверки устройства могут определить, являются ли соответствующие пары интервалов времени каждого из двух наборов интервалов времени достаточно сходными. Кроме того, на еще одном этапе процесса проверки устройства могут сформировать итоговое значение (например, хеш-код) на основе набора интервалов времени, которые они приняли от другого устройства, и сравнить это итоговое значение с итоговым значением, которое они приняли ранее от другого устройства, чтобы проверить, что оба принятых сообщения имеют отношение к одному и тому же набору интервалов времени. В случае, когда проверки синхронизации проходят на обоих устройствах, устройства могут выполнить аутентификацию друг друга.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Эти и другие аспекты раскрытия изобретения будут более понятны при рассмотрении относительно последующего подробного описания, приложенной формулы изобретения и сопроводительных чертежей.
Фиг.1 - упрощенная блок-схема нескольких иллюстративных аспектов системы связи, содержащей беспроводные устройства;
фиг.2 - блок-схема последовательности операций нескольких иллюстративных аспектов операций, которые могут быть выполнены для аутентификации двух или более устройств;
фиг.3, включающая в себя фиг.3A и 3B, - блок-схема последовательности операций нескольких иллюстративных аспектов операций, которые могут быть выполнены для образования пары двух беспроводных устройства на основе разности времени между приведением в действие устройства пользовательского ввода каждого беспроводного устройства;
фиг.4 - упрощенная блок-схема нескольких иллюстративных аспектов беспроводного устройства;
фиг.5, включающая в себя фиг.5A и 5B, - блок-схема последовательности операций нескольких иллюстративных аспектов операций, которые могут быть выполнены для образования пары двух беспроводных устройств на основе разностей между продолжительностями времени, заданными последовательностью приведений в действие устройства пользовательского ввода каждого беспроводного устройства;
фиг.6 - упрощенная схема иллюстративной синхронизации, относящаяся к операциям, показанным на фиг.5;
фиг.7 - упрощенная блок-схема нескольких иллюстративных аспектов компонентов связи и
фиг.8 - упрощенная блок-схема нескольких иллюстративных аспектов устройства, выполненного с возможностью поддерживать проверку синхронизации.
Различные отличительные признаки, проиллюстрированные на чертежах, могут быть изображены без соблюдения масштаба и могут быть упрощены для ясности. Следовательно, чертежи могут не изображать каждый аспект конкретного устройства или способа. Кроме того, аналогичные ссылочные позиции могут использоваться здесь для обозначения аналогичных отличительных признаков.
ПОДРОБНОЕ ОПИСАНИЕ
Ниже описываются различные аспекты изобретения. Должно быть очевидно, что изложенные здесь идеи могут быть воплощены в широком разнообразии форм и что любая раскрытая здесь конкретная структура и/или функция является просто образцом для представления. На основе изложенных здесь идей специалист в данной области техники должен понять, что раскрытый здесь аспект может быть реализован независимо от любых других аспектов и что два или более из этих аспектов могут быть объединены различными способами. Например, устройство может быть реализовано или способ может быть применен на практике с использованием любого количества сформулированных здесь аспектов. Кроме того, такое устройство может быть реализовано или такой способ может быть применен на практике с использованием другой структуры и/или функциональных возможностей в дополнение к одному или более сформулированным здесь аспектам или без одного или более сформулированных здесь аспектов. В качестве упомянутого примера, как обсуждается ниже, могут быть сравнены показания, относящиеся ко времени первого и второго приведения в действие, чтобы определить, является ли по меньшей мере одно время приведения в действие первого устройства пользовательского ввода достаточно сходным по меньшей мере с одним временем приведения в действие второго устройства пользовательского ввода. В некоторых аспектах каждое время по меньшей мере из одного времени приведения в действие первого и второго устройств пользовательского ввода имеет отношение к единственному времени приведения в действие каждого устройства ввода. Напротив, в некоторых аспектах каждое время по меньшей мере из одного времени приведения в действие первого и второго устройств пользовательского ввода имеет отношение к набору интервалов времени, заданных последовательностью приведений в действие каждого из устройств ввода.
Фиг.1 показывает иллюстративные аспекты системы 100 связи, в которой первое беспроводное устройство 102 может быть объединено в пару со вторым беспроводным устройством 104. Это образование пары может быть выполнено, например, совместно с процедурой аутентификации, относящейся к установлению связи между устройствами 102 и 104, с операцией управления присутствием, которая включает в себя устройства 102 и 104, или c некоторой другой операцией, которая включает в себя взаимодействие между устройствами 102 и 104, причем взаимодействие основывается на определении, что другое устройство заслуживает доверия. Для удобства фиг.1 и последующее описание могут обычно ссылаться на процесс образования пары между двумя беспроводными устройствами. Однако следует понимать, что изложенные здесь идеи могут быть адаптированы к созданию доверия между более чем двумя устройствами и что такие устройства не обязательно должны быть беспроводными.
Иллюстративные операции системы 100 будут рассмотрены более подробно совместно с блок-схемой последовательности операций на фиг.2. Для удобства операции на фиг.2 (или любые другие операции, рассматриваемые или излагаемые здесь) могут рассматриваться как выполняемые конкретными компонентами (например, системой 100). Однако следует понимать, что эти операции могут быть выполнены компонентами других типов и могут быть выполнены с использованием другого количества компонентов. Также следует понимать, что одна или более описанных здесь операций могут не использоваться в заданной реализации.
Как представлено этапом 202 на фиг.2, в некоторый момент времени может быть принято решение объединить в пару устройства 102 и 104. В качестве примера пользователь может пожелать использовать беспроводной головной телефон (например, устройство 104) вместе с его или ее сотовым телефоном (например, устройством 102). При этом может быть желательным гарантировать, что любая связь между головным телефоном и сотовым телефоном остается частной. В соответствии с этим совместно с операцией образования пары устройства 102 и 104 могут обменяться одним или более криптографическими ключами, которые затем используются для обеспечения безопасности (например, шифрования) любых сообщений, отправляемых между устройствами 102 и 104. Однако до обмена такими ключами каждое из устройств 102 и 104 может пожелать гарантировать, что оно взаимодействует с намеченным устройством, а не некоторым другим неавторизованным устройством, которое может пытаться подвергнуть опасности взаимодействие либо одного из устройств 102 и 104, либо их обоих. Поэтому в соответствии с некоторыми аспектами раскрытия изобретения может использоваться процесс образования пары на основе одной или более проверок синхронизации, чтобы дать возможность устройствам 102 и 104 проверить, действительно ли они взаимодействуют с доверительным устройством.
В некоторых аспектах режим образования пары может быть инициирован с помощью пользовательских интерфейсов 106 и 108 устройств 102 и 104 соответственно. Например, пользователь может привести в действие устройства 110 и 112 ввода пользовательских интерфейсов 106 и 108 соответственно, чтобы инициировать режим образования пары. Совместно с этими операциями пользовательские интерфейсы 106 и 108 могут соответственно содержать устройства 114 и 116 вывода, которые обеспечивают одно или более показаний, имеющих отношение к ходу операций режима образования пары. В качестве примера, когда устройства 102 и 104 готовы инициировать проверку синхронизации, одним или обоими устройствами 114 и 116 вывода может быть сформировано соответствующее показание для сообщения пользователю о том, что он должен одновременно привести в действие устройства 110 и 112 ввода.
Пользовательские интерфейсы 106 и 108 могут быть реализованы множеством способов. Например, в некоторых реализациях каждое устройство 102 и 104 имеет устройство пользовательского ввода (например, переключатель в виде кнопки) и по меньшей мере одно из устройств 102 и 104 имеет относительно простое устройство вывода для пользователя (например, светодиод). В качестве примера, устройство 102 (например, мобильный телефон) может иметь клавиатуру и экран дисплея, который может служить устройством 110 пользовательского ввода и устройством 114 вывода для пользователя соответственно. Тогда устройство 104 может просто использовать кнопку или некоторое другое устройство 112 пользовательского ввода, которое пользователь может привести в действие совместно с приведением в действие клавиатуры. В этом на экране дисплея может быть выведено показание, чтобы сообщить пользователю, когда начинать одновременное приведение в действие устройств 110 и 112 ввода.
Обычно устройство пользовательского ввода может содержать один или более из множества компонентов, которые дают возможность пользователю обеспечить некоторую форму ввода в соответствующее устройство. Например, устройство пользовательского ввода может содержать один или более переключателей, таких как кнопка или клавиатура. Устройство пользовательского ввода также может содержать сенсорный экран, сенсорную панель или другой аналогичный механизм ввода. Устройство пользовательского ввода может содержать указательное устройство, такое как мышь, шаровой манипулятор, электронное перо, джойстик и т.д. Устройство пользовательского ввода также может быть выполнено с возможностью принимать другие формы входной информации, такие как звук (например, голос), оптический ввод, радиочастоты или какая-либо другая подходящая форма.
Как представлено этапом 204 на фиг.2, каждое из устройств 102 и 104 обеспечивает одно или более показаний, имеющих отношение к синхронизации одного или более приведений в действие соответствующего устройства ввода. Например, как будет рассмотрено более подробно в отношении фиг.3, это показание может иметь отношение к времени, в которое было приведено в действие устройство ввода. В качестве альтернативы, как будет рассмотрено в отношении фиг.5, это показание может иметь отношение к набору интервалов времени, заданных несколькими приведениями в действие устройства ввода.
Чтобы дать возможность каждому устройству сравнить свое время приведения в действие с временем приведения в действие другого устройства, каждое из устройств может передавать другому устройству одно или более показаний, имеющих отношение к их времени приведения в действие. Например, после приведения в действие устройства 110 ввода приемопередатчик 118 (например, содержащий компоненты передатчика и приемника) устройства 102 может передать сообщение аналогичному приемопередатчику 120 устройства 104 для указания того, что устройство 110 ввода было приведено в действие. Кроме того, показание может включать в себя информацию, имеющую отношение к времени этого приведения в действие (например, времени приведения в действие или набора интервалов времени, заданных несколькими приведениями в действие). Как рассмотрено ниже в отношении фиг.5, показание также может содержать итоговое значение (например, хеш-код или код аутентификации сообщения), которое основано на наборе интервалов времени, сформированных на этапе 204.
Как представлено этапом 206, устройство 104 (например, приемопередатчик 120) может, таким образом, принять от устройства 102 одно или более показаний, имеющих отношение ко времени одного или более приведений в действие для устройства 102, и наоборот. Как упомянуто выше, в некоторых реализациях показание этапа 206 может просто содержать время, в которое сообщение было принято от другого устройства.
Как представлено этапом 208, процессоры 122 и 124 аутентификации на каждом устройстве могут затем сравнить одно или более показаний, имеющих отношение к их времени приведения в действие, с одним или более принятыми показаниями, имеющими отношение к времени приведения в действие другого устройства. Например, как рассмотрено ниже в отношении фиг.3, процессор 124 аутентификации может использовать время приема сообщения от устройства 102 в качестве показания времени приведения в действие устройства 110 ввода. Процессор 124 аутентификации может затем сравнить это время приема со временем приведения в действие его устройства 112 ввода, чтобы определить, были ли приведения в действие достаточно синхронизированы. В качестве альтернативы, как рассмотрено ниже в отношении фиг.5, процессор 124 аутентификации может сравнить принятый набор интервалов времени со своим собственным набором интервалов времени и/или сравнить итоговые значения (например, хеш-коды), сформированные из этих разных наборов интервалов времени. В некоторых реализациях упомянутые выше операции сравнения могут использовать одно или более пороговых значений продолжительности, которые определяют максимальные допустимые отклонения между временами показаний этих двух устройств. Одновременно с упомянутыми выше операциями процессор 122 аутентификации может выполнить аналогичные операции сравнения для своего показания (показаний) и показания (показаний), которое он принимает от устройства 104.
Как представлено этапом 210, если результаты упомянутых выше проверок синхронизации показывают, что имеется достаточная вероятность того, что устройства 110 и 112 ввода приводились в действие одним и тем же человеком, устройства 102 и 104 могут завершить процесс образования пары. Например, в некоторых реализациях процессор 122 аутентификации устройства 102 может выполнить аутентификацию устройства 104, и процессор 124 аутентификации устройства 104 может выполнить аутентификацию устройства 102. Совместно с этой операцией или в некоторый другой момент времени устройства 102 и 104 могут выполнить обмен или иным образом взаимодействовать, чтобы создать один или более криптографических ключей для обеспечения возможности безопасной связи между устройствами или обеспечения возможности некоторой другой формы взаимодействия между устройствами.
В некоторых реализациях проверка синхронизации может быть выполнена перед началом процедуры аутентификации (например, как необходимое предварительное условие для начала процедуры аутентификации) или как часть процедуры аутентификации. Кроме того, в некоторых реализациях проверка синхронизации может служить в качестве необходимого предварительного условия для процедуры идентификации, а также являться частью процедуры аутентификации.
С учетом приведенного выше обзора будут рассмотрены дополнительные подробности, имеющие отношение к одному типу проверки синхронизации, совместно с блок-схемой последовательности операций на фиг.3. Как правило, этапы на левой стороне фиг.3 имеют отношение к операциям, которые могут быть выполнены беспроводным устройством (например, устройством 102 на фиг.1), инициирующим режим образования пары, в то время как этапы на правой стороне фиг.3 имеют отношение к операциям, которые могут быть выполнены другим беспроводным устройством (например, устройством 104 на фиг.1), отвечающим на инициирование режима образования пары. При этом следует понимать, что конкретная последовательность операций, изображенная на фиг.3, предназначена только для иллюстрации и что другие обстоятельства могут включать в себя другие последовательности операций.
В целях иллюстрации операции на фиг.3 будут рассмотрены в контексте их выполнения различными компонентами беспроводного устройства 400, как показано на фиг.4. Однако следует понимать, что проиллюстрированные компоненты беспроводного устройства 400 являются просто типичными для компонентов, которые могут использоваться, и что одна или более операций на фиг.3 могут быть выполнены посредством других подходящих компонентов или совместно с ними.
Кроме того, для удобства операции и устройства инициатора, и устройства ответчика будут обсуждаться в отношении единственного беспроводного устройства 400, изображенного на фиг.4. Таким образом, хотя представленное ниже описание ссылается на аналогичные компоненты, следует понимать, что устройство инициатора и устройство ответчика будут содержать отдельные устройства 400.
На этапах 302 и 304 эти два устройства переводятся в режим образования пары. В некоторых реализациях режим образования пары может быть инициирован пользователем с использованием пользовательского интерфейса (например, интерфейса 106 на фиг.1) для вызова соответствующей функциональной возможности на устройстве (например, устройстве 102). При этом лежащий в основе протокол может дать возможность каждому устройству (1) найти своего соседа по связи и (2) определить, какое устройство является инициатором, а какое - ответчиком. Назначения инициатора и ответчика могут быть определены различными способами. Например, в некоторых реализациях ответчиком является устройство с пользовательским интерфейсом (например, светодиодом). В некоторых реализациях каждое из устройств может формировать случайное число, посредством чего устройство, которое формирует, например, большее число, выбирается в качестве инициатора.
На фиг.4 инициирование режима образования пары может быть достигнуто, например, с помощью контроллера 402 режима образования пары, который принимает ввод от устройства 404 ввода, заставляет выдать соответствующее показание на устройстве 406 вывода (если оно применяется) и передает соответствующее показание другому устройству через передатчик 408 (если он применяется). Например, по меньшей мере одно из устройств инициатора и ответчика может сообщить пользователю, что оно находится в режиме образования пары (например, посредством мигания светодиода). В некоторых реализациях режим образования пары может быть просто инициирован пользователем посредством нажатия тех же самых устройств пользовательского ввода (например, кнопок), которые используются для операций синхронизации. В других реализациях беспроводное устройство может поддерживать другие способы (например, выбор пункта меню) активизации режима образования пары.
В некоторых реализациях аналогичные операции могут быть выполнены здесь посредством устройств ответчика. В качестве альтернативы одно из устройств может быть просто переведено в режим образования пары после приема соответствующего сообщения от другого устройства. В этом случае приемник 410 может принять сообщение от другого устройства и выдать соответствующую информацию контроллеру 402 режима образования пары, который вызывает операции режима образования пары на этом устройстве (например, устройстве 104).
Устройства 102 и 104 могут находиться в режиме образования пары в течение назначенного промежутка времени (например, в течение Tpair_enabled секунд). Этот период времени может быть определен достаточно большим, чтобы оба устройства могли войти в режим образования пары без синхронизации.
В некоторых реализациях устройство инициатора и/или устройство ответчика могут формировать показание, чтобы сообщить пользователю, когда следует начать приведение в действие устройств ввода устройств инициатора и ответчика. Такое показание может содержать, например, визуальную команду на дисплее, заданную конфигурацию светящихся элементов (например, включение или выключение светодиодов), вибрацию или звуковую команду.
На этапе 306 устройство инициатора ждет, пока его локальное устройство ввода (например, устройство 404) не будет приведено в действие. Как упомянуто выше, в некоторых реализациях это может включать в себя нажатие пользователем кнопки устройства инициатора, когда в то же самое время он или она нажимает кнопку на устройстве ответчика. Как только устройство инициатора обнаруживает локальное событие приведения в действие, на этапе 308 индикатор 412 времени и передатчик 408 устройства инициатора взаимодействуют для передачи сообщения запроса образования пары на устройство ответчика. Приемник 410 устройства ответчика принимает это сообщение запроса образования пары, как представлено этапом 310. Как упомянуто выше, это время, в которое принимается это сообщение, может служить показателем синхронизации приведения в действие на этапе 306.
Аналогично операции устройства инициатора на этапе 306, на этапе 312 устройство ответчика ожидает, пока его локальное устройство ввода (например, устройство 404) не будет приведено в действие. Практически операция обнаружения на этапе 312 может быть выполнена до или после приема сообщения запроса образования пары на этапе 310 в зависимости от относительного времени приведения в действие устройств и продолжительности обработки для каждого устройства, чтобы идентифицировать приведение в действие и обработать сообщение запроса образования пары.
На этапе 314 блок 414 сравнения устройства ответчика сравнивает время приведения в действие на этапе 312 с временем приема сообщения запроса на этапе 310. Операция может включать в себя, например, определение разности между этими двумя временами и сравнение полученной в результате разности с порогом.
Например, в предположении, что была нажата кнопка (этап 312) перед приемом сообщения запроса образования пары, после получения сообщения запроса образования пары блок 414 сравнения может сравнить текущее время t с записанным временем события нажатия кнопки на этапе 312, обозначенным Tresp_button_pressing. Таким образом, проверка синхронизации этапов 314 и 316 может содержать определение, выполняется ли неравенство: |t-Tresp_button_pressing|<Tmax.
Здесь Tmax обозначает максимальный допустимый интервал времени между t и Tresp_button_pressing, когда две кнопки нажаты одним и тем же человеком. В некоторых реализациях Tmax может быть, например, порядка меньше 0,1 секунды. При этом задержка передачи сообщения может быть проигнорирована, поскольку обычно она намного меньше, чем Tmax. Задержка обнаружения кнопки может быть в значительной степени компенсирована в другом беспроводном устройстве.
Как представлено этапом 316, если проверка синхронизации не проходит, устройство ответчика передает на устройство инициатора сообщение отказа в образовании пары на этапе 318. Операции обоих устройств могут затем возвратиться к началу процесса образования пары. В этом случае может не быть изменений в пользовательском интерфейсе (например, светодиод продолжает мигать).
Если, с другой стороны, проверка синхронизации прошла на этапе 316, процесс образования пары может продолжаться. В некоторых реализациях проверка синхронизации включает в себя несколько приведений в действие пользователем. Например, обнаруженное впоследствии приведение в действие может включать в себя отпускание кнопки пользователем. Затем одно или оба устройства могут сообщить пользователю, что нужно продолжать удерживать кнопки (например, как обозначено посредством постоянно включенного светодиода). При этом следует понимать, что аналогичная функциональность может быть обеспечена другими способами (например, посредством ожидания повторного нажатия локальной кнопки).
Затем на этапе 320 устройство ответчика ожидает в течение определенного промежутка времени, прежде чем выполнить следующую операцию (например, ожидает другого приведения в действие). Аналогично, как представлено этапом 322, устройство инициатора ожидает в течение определенного промежутка времени после передачи сообщения на этапе 308, прежде чем выполнить свою следующую операцию (например, ожидает другого приведения в действие). При этом определенный промежуток времени может содержать фиксированное время TFIXED плюс случайное время TRAND.
На этапе 324 устройство ответчика ожидает, пока его локальная кнопка не будет отпущена. При этом по истечении периода времени этапа 320 устройство ответчика может сообщить пользователю, что нужно одновременно отпустить две кнопки (например, миганием светодиода).
Как представлено этапом 326, как только локальное приведение в действие обнаружено на этапе 324, устройство ответчика передает сообщение подтверждения образования пары на устройство инициатора. Опять эта операция может быть выполнена посредством взаимодействия индикатора 412 синхронизации и передатчика 408 ответчика.
Приемник 410 устройства инициатора принимает это сообщение подтверждения взаимодействия, как представлено этапом 328. Время, в которое принимается это сообщение, может служить показанием относительно времени приведения в действие на этапе 324.
Как представлено этапом 330, устройство инициатора ожидает, пока его локальное устройство ввода (например, устройство 404) не будет снова приведено в действие. Как упомянуто выше, в некоторых реализациях это может включать в себя отпускание кнопки или совершение некоторого другого подходящего действия пользователем. На практике операция обнаружения на этапе 330 может произойти до или после того, как принято сообщение запроса образования пары на этапе 328.
На этапе 332 блок 414 устройства инициатора сравнивает время приведения в действие на этапе 330 с временем приема сообщения подтверждения на этапе 328. Опять же, эта операция может включать в себя определение разности между этими двумя временами и сравнение полученной в результате разности с порогом. Например, устройство инициатора может сравнить текущее время t с записанным временем, например, локального события отпускания кнопки, обозначенным Tinit_button_releasing. Проверка синхронизации на этапах 332 и 334, таким образом, может включать в себя определение, выполняется ли неравенство: |t-Tinit_button_releasing|<Tmax.
Как представлено этапом 334, если проверка синхронизации не прошла, на этапе 336 устройство инициатора передает сообщение отказа в образовании пары на устройство ответчика. Процесс образования пары затем может быть прерван.
С другой стороны, если проверка синхронизации прошла на этапе 334, компонент 416 криптографического процессора может, необязательно, выполнить вычисление согласования ключа на этапе 338. Эта операция может относиться, например, к обеспечению одного или более ключей для использования в последующих операциях устройств инициатора и ответчика.
На этапе 340 устройство инициатора может передать сообщение подтверждения образования пары на устройство ответчика. В некоторых реализациях это сообщение может включать в себя информацию, относящуюся к аутентификации (например, используемую для формирования ключа, который будет использоваться для последующих безопасных операций). В случае, когда это сообщение не принято в устройстве ответчика, текущая операция образования пары прерывается, как представлено этапом 342.
С другой стороны, если сообщение подтверждения принято на этапе 342, устройство ответчика может, необязательно, выполнить вычисление своего собственного согласования ключа на этапе 344. При этом сообщения запроса образования пары и подтверждения образования пары могут иметь свои собственные полезные данные. Затем из них может быть сформирован ключ, который будет использоваться для обеспечения безопасности последующих операций. С