(57)【特許請求の範囲】
【請求項１】
2つの通信デバイス間で安全なペアリングを検証するための方法であって、
前記2つの通信デバイスの各通信デバイス上で、前記2つの通信デバイス間で交換されたセキュリティ情報に基づいて検証パターンを決定するステップと、
前記2つの通信デバイスの各通信デバイス上で、ユーザによって知覚される前記検証パターンを点滅光パターンおよび音声パターンのうちの1つとして提示するステップと、
前記2つの通信デバイスの各通信デバイス上で、前記2つの通信デバイスの各通信デバイス上の前記検証パターンが同じであることを示すユーザ入力を受信するステップとを備え、
前記2つの通信デバイスの各通信デバイス上で、前記2つの通信デバイス間で交換された情報に基づいて検証パターンを決定するステップが、
前記2つの通信デバイス間で交換された前記情報に基づいて検証値を計算するステップと、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップとを備え、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップが、
検証パターンのテーブルから検証パターンを選択するために、前記検証値の少なくとも一部を使用してテーブルルックアッププロセスを実施するステップを備える方法。
【請求項２】
前記検証パターンが、発光ダイオードによって表示された点滅光パターンとして提示される、請求項1に記載の方法。
【請求項３】
前記検証パターンが、スピーカが発した音声パターンとして提示される、請求項1に記載の方法。
【請求項４】
前記2つの通信デバイス間で公開鍵を交換するステップと、
前記2つの通信デバイスのうちの第1の通信デバイスで第1のノンスを選択するステップと、
前記2つの通信デバイスのうちの第2の通信デバイスで第2のノンスを選択するステップと、
前記交換された公開鍵および前記第1のノンスに基づいて前記第1の通信デバイスでコミットメント値を計算するステップと、
前記第1の通信デバイスから前記第2の通信デバイスに前記コミットメント値を送信するステップと、
前記コミットメント値を受信することに応答して、前記第2の通信デバイスから前記第1の通信デバイスに前記第2のノンス値を送信するステップと、
前記第2のノンスを受信することに応答して、前記第1の通信デバイスから前記第2の通信デバイスに前記第1のノンスを送信するステップとをさらに備え、
前記2つの通信デバイスの各通信デバイス上で、前記2つの通信デバイス間で交換された情報に基づいて検証パターンを決定するステップが、
前記2つの通信デバイスの各通信デバイスで、前記交換された公開鍵、前記第1のノンスおよび前記第2のノンスに基づいて検証値を計算するステップと、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップと
を備える、請求項1に記載の方法。
【請求項５】
第1の通信デバイスと、
第2の通信デバイスと
を備える通信システムであって、
前記第1の通信デバイスおよび第2の通信デバイスがそれぞれ、
プロセッサと、
前記プロセッサに結合されたトランシーバと、
前記プロセッサに結合されたボタンと、
前記プロセッサに結合されたシグナリング機構とを備え、
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスの前記プロセッサが、
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイス上で、前記第1の通信デバイスと第2の通信デバイスとの間で交換されたセキュリティ情報に基づいて検証パターンを判定するステップと、
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスの前記シグナリング機構上で、ユーザによって知覚される前記検証パターンを提示するステップと、  ボタン押下が第1の通信デバイスと第2の通信デバイスの両方で受信される場合は、前記第1の通信デバイスと第2の通信デバイスとの間の安全なペアリングを完了するステップとを備えるステップを実施するための命令を実行するように構成され、
前記第1の通信デバイスと第2の通信デバイスとの間で交換された前記セキュリティ情報に基づいて検証パターンを決定するステップが、
前記第1の通信デバイスと第2の通信デバイスとの間で交換された前記情報に基づいて検証値を計算するステップと、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップとを備え、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップが、
検証パターンのテーブルから検証パターンを選択するために、前記検証値の少なくとも一部を使用してテーブルルックアッププロセスを実施するステップを備える通信システム。
【請求項６】
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスの前記シグナリング機構が発光ダイオードであり、
前記検証パターンが、前記発光ダイオードによって表示された点滅光パターンとして提示される、請求項5に記載の通信システム。
【請求項７】
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスの前記シグナリング機構がスピーカであり、
前記検証パターンが、前記スピーカが発した音声パターンとして提示される、
請求項5に記載の通信システム。
【請求項８】
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスの前記プロセッサが、
前記第1の通信デバイスと第2の通信デバイスとの間で公開鍵を交換するステップと、
前記第1の通信デバイスで第1のノンスを選択するステップと、
前記第2の通信デバイスで第2のノンスを選択するステップと、
前記第1の通信デバイスでコミットメント値を計算するステップと、
前記第1の通信デバイスから前記第2の通信デバイスに前記コミットメント値を送信するステップと、
前記コミットメント値を受信することに応答して、前記第2の通信デバイスから前記第1の通信デバイスに前記第2のノンスを送信するステップと、
前記第2のノンスを受信することに応答して、前記第1の通信デバイスから前記第2の通信デバイスに前記第1のノンスを送信するステップとを備えるさらなるステップを実施するための命令を実行するように構成され、
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイス上で、前記2つの通信デバイス間で交換された情報に基づいて検証パターンを決定するステップが、
対応する検証パターンを決定するために、前記計算された検証値を使用するステップと、
前記第1の通信デバイスおよび第2の通信デバイスの各通信デバイスで、前記交換された公開鍵、前記第1のノンスおよび前記第2のノンスに基づいて検証値を計算するステップとを備える、請求項5に記載の通信システム。
【請求項９】
第2の通信デバイスとセキュリティ情報を交換する手段と、
前記交換されたセキュリティ情報に基づいて検証パターンを決定する手段と、
前記検証パターンを合図通知する手段と、
シグナリング機構がアクティブ化された後にボタンが押下される場合、前記第2の通信デバイスとの安全なペアリングを完了する手段と
を備え、
第1のセキュリティ情報および第2のセキュリティ情報に基づいて検証パターンを決定する手段が、
前記第1のセキュリティ情報および第2のセキュリティ情報に基づいて検証値を計算して前記検証パターンを合図通知する手段と、
対応する検証パターンを決定するために前記計算された検証値を使用して前記検証パターンを合図通知する手段とを備え、
対応する検証パターンを決定するために前記計算された検証値を使用する手段が、
検証パターンのテーブルから検証パターンを選択するために、前記検証値の少なくとも一部を使用してテーブルルックアッププロセスを実施する手段を備える第1の通信デバイス。
【請求項１０】
前記検証パターンを合図通知する手段が、前記検証パターンに従って光を点滅させる手段を備える、
請求項9に記載の通信デバイス。
【請求項１１】
前記検証パターンを合図通知する手段が、前記検証パターンに従って音声を発する手段を備える、
請求項9に記載の通信デバイス。
【請求項１２】
第2の通信デバイスとセキュリティ情報を交換する手段が、
前記第2の通信デバイスに第1の公開鍵を送信する手段と、
前記第2の通信デバイスから第2の公開鍵を受信する手段と、
第1のノンスを選択する手段と、
前記第1の公開鍵、前記第2の公開鍵および前記第1のノンスに基づいてコミットメント値を計算する手段と、
前記第2の通信デバイスに前記コミットメント値を送信する手段と、
前記第2の通信デバイスから第2のノンスを受信する手段と、
前記第2のノンスを受信することに応答して、前記第2の通信デバイスに前記第1のノンスを送信する手段とを備え、
前記交換されたセキュリティ情報に基づいて検証パターンを決定する手段が、
前記第1の公開鍵および第2の公開鍵、前記第1のノンスおよび前記第2のノンスに基づいて検証値を計算する手段と、
対応する検証パターンを決定するために、前記計算された検証値を使用する手段とを備える、
請求項9に記載の通信デバイス。
【請求項１３】
プロセッサに実行させるための、
第2の通信デバイスとセキュリティ情報を交換するための少なくとも1つの命令と、
前記交換されたセキュリティ情報に基づいて検証パターンを決定するための少なくとも1つの命令と、
前記検証パターンに従ってシグナリング機構をアクティブ化するための少なくとも1つの命令と、
前記シグナリング機構がアクティブ化された後にボタンが押下された場合に前記第2の通信デバイスとの安全なペアリングを完了するための少なくとも1つの命令と
が格納された有形コンピュータ読取り可能記憶媒体
を備え、
第1のセキュリティ情報および第2のセキュリティ情報に基づいて検証パターンを決定するための前記少なくとも1つの命令が、
前記第1のセキュリティ情報および第2のセキュリティ情報に基づいて検証値を計算するための少なくとも1つの命令と、
対応する検証パターンを決定するために、前記計算された検証値を使用するための少なくとも1つの命令とを備え、
対応する検証パターンを決定するために前記計算された検証値を使用するための前記少なくとも1つの命令が、
検証パターンのテーブルから検証パターンを選択するために、前記検証値の少なくとも一部を使用してテーブルルックアッププロセスを実施するための少なくとも1つの命令を備えるコンピュータプログラム。
【請求項１４】
前記検証パターンに従って前記シグナリング機構をアクティブ化するための前記少なくとも1つの命令が、発光ダイオードで光パターンを点滅させるための少なくとも1つの命令を備える、請求項13に記載のコンピュータプログラム。
【請求項１５】
前記検証パターンに従って前記シグナリング機構をアクティブ化するための前記少なくとも1つの命令が、スピーカからパターンを発するための少なくとも1つの命令を備える、請求項13に記載のコンピュータプログラム。
【請求項１６】
第2の通信デバイスとセキュリティ情報を交換するための前記少なくとも1つの命令が、
前記第2の通信デバイスに第1の公開鍵を送信するための少なくとも1つの命令と、
前記第2の通信デバイスから第2の公開鍵を受信するための少なくとも1つの命令と、
第1のノンスを選択するための少なくとも1つの命令と、
前記第1の公開鍵、前記第2の公開鍵および前記第1のノンスに基づいてコミットメント値を計算するための少なくとも1つの命令と、
前記第2の通信デバイスに前記コミットメント値を送信するための少なくとも1つの命令と、
前記第2の通信デバイスから第2のノンスを受信するための少なくとも1つの命令と、
前記第2のノンスを受信することに応答して、前記第2の通信デバイスに前記第1のノンスを送信するための少なくとも1つの命令とを備え、
前記交換されたセキュリティ情報に基づいて検証パターンを決定するための前記少なくとも1つの命令が、
前記第1の公開鍵および第2の公開鍵、前記第1のノンスおよび前記第2のノンスに基づいて検証値を計算するための少なくとも1つの命令と、
対応する検証パターンを決定するために、前記計算された検証値を使用するための少なくとも1つの命令とを備える、
請求項13に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、コンピュータネットワーク通信に関し、より詳細には、単純なユーザインターフェースを備えた2つ以上の通信デバイス間の安全なペアリングを確認するための方法およびデバイスに関する。
【背景技術】
【０００２】
多くの通信アプリケーションでは、2つの通信デバイス間で安全な通信リンクを確立する必要がある。こうした必要性の一般的な例は、Bluetooth(登録商標)プロトコルを介して互いに通信する携帯電話と無線ヘッドセットとの間に存在する。2つの通信デバイス間で安全な通信リンクを確立することによって、無許可の当事者による受動的な盗聴、および能動的な盗聴(中間者攻撃として知られている)から保護される。
【０００３】
2つの無線通信デバイス間で安全な通信リンクを確立するためのいくつかの異なる方法論が知られている。シンプルペアリング(Simple Pairing)として知られている、Bluetooth(登録商標)通信プロトコルと共に一般的に使用される1つの方法は、受動的盗聴および能動的盗聴に対する保護をユーザに提供するために強力な暗号化アルゴリズムを使用する。強力な暗号化アルゴリズムを使用すると、こうした盗聴を行うには通信セッション用のリンク鍵を導出するために難しい公開鍵問題を解決することが求められるので、盗聴志望者に課される課題が複雑になる。
【０００４】
中間者攻撃を防ぐには、通信デバイスとのユーザ対話が必要であり得る。中間者攻撃は、ユーザが2つのデバイスを接続することを望んでいるが、互いに直接に接続するのではなく、デバイスが、各デバイスが対になろうとしているもう一方のデバイスの役割を果たす第3の(攻撃側の)デバイスに接続する場合に発生する。次いで、攻撃側デバイスは、2つの通信デバイスが直接接続しているという錯覚を与える情報を、2つの通信デバイス間で中継する。攻撃側デバイスは、2つのデバイス間の通信を盗聴し(能動的盗聴として知られている)、さらに新しい情報または修正情報、およびリンクを介して通信されたコマンドを挿入することができる。
【０００５】
安全なペアリングのための現在の方法は、その内容全体が参照により本明細書に組み込まれている、Bluetooth（登録商標） Core SpecificationのLisbonリリースにおいてシンプルペアリング機能を記載しているBluetooth(登録商標)Special Interest Group (V10r00版、2006年8月3日発行)によって発行されたSimple Pairing Whitepaperに概説されている。中間者攻撃を阻止しようとする現在の2つの方法は、2つの通信デバイス間で安全なペアリングを確立しようとするユーザが措置を講じることを必要とする。具体的には、現在の方法は、一方のデバイスに表示された6桁の数字が他方のデバイスに表示された6桁の数字と同じであることを確認し(「数値比較」として知られている)、または一方のデバイスに表示された6桁の数字を第2のデバイスにタイプする(「パスキー入力」として知られている)ことをユーザに求める。6桁の数字をユーザが確認または入力することによって、ユーザは、2つの通信デバイスが第3のデバイスを介してではなく、互いに直接話していることを確認することがきる。6桁の数字は、後続の符号化されたデータ交換を復号する際に利益をもたらさないセキュリティアルゴリズムの人為的な産物である。(第3の方法は、ペアリングプロセスで使用される暗号の数字を交換または転送するために別の「帯域外」通信リンクを使用するが、この方法は、デバイスが2つの異なるタイプのトランシーバを含むことを必要とする。)
【０００６】
数値比較のシンプルペアリング方法は、中間者攻撃に対して強力な保護を提供するが、この方法は、6桁の数字を示すことができるディスプレイを両方の通信デバイスが含むことを必要とする。同様に、パスキー入力は、一方のデバイスが6桁の数字を示すことができるディスプレイを含み、もう一方のデバイスがパスキー入力を受けるテンキーを含むことを必要とする。したがって、これらの方法は、こうしたディスプレイまたはキーパッドをサポートする空間または処理電力をもたない単純なまたは小さい通信デバイスには適さないことがある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許出願第12/482,175号
【非特許文献】
【０００８】
【非特許文献１】Bluetooth（登録商標） Core Specification、Lisbonリリース
【非特許文献２】Bluetooth(登録商標)Special Interest Group (V10r00版、2006年8月3日発行)、Simple Pairing Whitepaper
【発明の概要】
【課題を解決するための手段】
【０００９】
様々な実施形態が、2つの通信デバイス間の安全なペアリングをユーザが確認するためのデバイスおよび方法を提供し、この2つの通信デバイスの一方または両方が、発光ダイオード(LED: light emitting diode)などの単色光や、単純なスピーカなどの単純なユーザインターフェースを備える。2つの通信デバイスが能動的盗聴(たとえば中間者攻撃)がない安全なペアリングを確立することができることを検証するために、ユーザが知覚するための検証パターンを見せるべく光(たとえばLED)を点滅させてもよいし、スピーカを作動させてもよい。検証パターンは、安全なペアリングプロセスの一環であるセキュリティアルゴリズムに基づいてよい。2つの通信デバイスの安全なペアリングを開始するユーザは、2つの点滅光がいつ同時に点滅し、同一の点滅パターンに従っているか容易に認識することができる。同様に、ユーザは、パルス音またはトーン音の2つのパターンがいつ同時に生じ、同一のパターンに従っているか認識することもできる。ユーザは、両方の通信デバイス上の点滅または音のパターンが同一であると決定する場合、各デバイス上の単一のボタンを押下することなどによって、通信リンクを確認することができる。ユーザが通信リンクを確認する場合、安全なペアリングプロセスは、2つのデバイス間で安全な通信リンクを確立するために、通常のやり方で継続することができる。したがって、様々な実施形態は、単一のLEDまたは単純なスピーカ(たとえば圧電音エミッタ)程度の複雑さのユーザインターフェース、およびユーザ検証入力を受けるためのボタンなどの入力機構を備えたデバイスのための、中間者攻撃から保護された安全なペアリングを可能にする。
【００１０】
本明細書に組み込まれており、本明細書の一部を構成する添付の図面は、本発明の例示的な実施形態を示しており、上述された概要および下記の詳細な説明と共に、本発明の特徴について説明するのに役立つ。
【図面の簡単な説明】
【００１１】
【図１】通信デバイスによって生成された検証パターンのユーザ認識に基づいて通信デバイスの安全なペアリングを遂行するための一実施形態方法の処理フローチャートである。
【図２】ユーザが2つの通信デバイス間の安全なペアリングプロセスを検証することを可能にするために点滅させ、または鳴らすことができる検証パターンを計算するための一実施形態方法の処理フローチャートである。
【図３】計算された検証値に基づいて検証パターンを決定するための例示的な一実施形態方法のプロセスフローチャートである。
【図４】計算された検証値に基づいて検証パターンを決定するための別の例示的な実施形態方法のプロセスフローチャートである。
【図５】様々な実施形態で使用するのに適した第1の無線通信デバイスのコンポーネントブロック図である。
【図６】図5に示された第1の無線通信デバイスで使用するのに適した例示的な無線センサのコンポーネントブロック図である。
【図７】様々な実施形態で使用するのに適したモバイル装置のコンポーネントブロック図である。
【図８】図7に示されたモバイル装置実施形態に関連して様々な実施形態で使用するのに適した無線ヘッドセットデバイスのコンポーネントブロック図である。
【発明を実施するための形態】
【００１２】
様々な実施形態について、添付の図面を参照して詳細に述べられる。可能な限り、すべての図面を通して同じ参照符号を使用して、同じまたは同様の部分に言及する。特定の実施例および実装形態への言及は、例示するためのものであり、本発明の範囲または特許請求の範囲を限定するためのものではない。
【００１３】
単語「例示的な」は、本明細書では、「例、事例または実例として役立つ」ことを意味するために使用されている。本明細書で「例示的」と述べられるいずれの実装形態も、他の実装形態よりも好ましいまたは有利であると必ずしも解釈すべきでない。
【００１４】
本明細書では、用語「モバイル装置モバイル装置」は、携帯電話、携帯情報端末(PDA: personal data assistant)、パームトップコンピュータ、無線電子メール受信機および携帯電話受信機(たとえばBlackberry(登録商標)およびTreo(登録商標)のデバイス)、マルチメディアインターネット対応携帯電話(たとえばBlackberry Storm(登録商標))、ならびにプログラマブルなプロセッサおよびメモリと、無線通信トランシーバとを含む類似のパーソナル電子デバイスのいずれか1つまたはすべてに言及する。
【００１５】
用語「単純なシグナリング機構」は本明細書では、ユーザが知覚する単純な情報を提示するように通信デバイスによってアクティブ化できる、発光ダイオードなどの発光体または圧電スピーカなどの音声放出体を指す。
【００１６】
様々な実施形態は、無線通信リンクセキュリティ対策に関する。諸実施形態は、たとえばIEEE 802.11(WiFi)、WiMax、Bluetooth(登録商標)、IEEE 802.15.4およびZigbee(登録商標)無線通信プロトコルおよび規格を含めて、様々な通信リンク技術のいずれかと共に使用することができる。Bluetooth(登録商標)プロトコルやBluetooth（登録商標）対応デバイスなど、特定の通信技術またはプロトコルへの言及は、例示するためのものにすぎず、特許請求の範囲において具体的に述べられる場合を除いて、いかなるやり方でも特許請求の範囲を限定するためのものではない。
【００１７】
Bluetooth（登録商標）対応デバイスおよび無線ネットワーク化された周辺装置の爆発的成長から明らかであるように、電子デバイス間の無線通信リンクは、非常に普及しており、有用であるとわかっている。自動車からテレビ受像機および携帯電話から高級冷蔵庫まで、事実上あらゆる便利な主要電子機器が「無線になっている」。こうした無線対応デバイスによって確立された各通信リンクは、無許可のデバイスが盗聴する機会を提示している。冷蔵庫と無線網アクセスポイントとの間の通信リンクなど、一部の場合では、情報が本質的価値をほとんどもたず、または装置が乗っ取りを受ける恐れがないので、盗聴によってもたらされるリスクは最小限に抑えられる。しかし、携帯電話と無線ヘッドセットとの間のBluetooth(登録商標)接続など、多くの通信リンクは、盗聴から当然保護すべき、または保護しなければならない個人情報を運ぶ。無線アプリケーションが成長するにつれて、安全な通信リンクの必要性が高まると期待される。
【００１８】
上記に言及されたように、無線通信リンクをセキュリティ保護する一般的な方法は、各デバイス上に検証番号を表示することと組み合わせて、安全なペアリングを確立する各通信デバイス上で実行されるセキュリティアルゴリズムで検証番号を計算することを伴い、したがってユーザは、番号が同じであることを検証することができる。この数値比較方法は、中間者攻撃が成功する可能性が小さくなることを保証するように設計されている。したがって、6桁を示すことができるディスプレイを有する通信デバイスでは、数値比較方法は、破られる可能性が1,000,000回に1回しかない、能動的盗聴および受動的盗聴に対して非常に強力な保護を提供する。しかし、この方法は、6桁の数字を表示不可能なデバイスに使用することができず、それによって、こうしたデバイスの間に通信リンクが能動的盗聴に対して脆弱なままとなり得る。桁数は、ユーザ体験への影響を最小限に抑えながら十分なセキュリティレベルを提供するように選択されることに留意されたい。盗聴リスクの増加が受け入れられ得るならば、ユーザ比較のためにより少ない数を表示してもよい。
【００１９】
無線電子デバイスの成長は、ユーザに6桁の検証番号を提示するのに十分なサイズ、処理能力またはバッテリ電力をもたない比較的小さいデバイスを包含するものと予期される。こうしたデバイスの一般的な例は、典型的にBluetooth(登録商標)プロトコル通信リンクを使用する無線電話ヘッドセットである。ユーザが装着するときに支障がないように見える大きさであるこうした無線デバイスは典型的に、ディスプレイを含まない。したがって、こうした無線電話ヘッドセットに使用された安全なペアリング方法論は、中間者攻撃に対して限られた保護を提供する。
【００２０】
無線ヘッドセットの場合にはこうした脆弱性を受け入れることができるが、小型の無線デバイスの他のアプリケーションはそれほど寛容でないことがある。たとえば、無線デバイスの医療用アプリケーションは、医療情報が注意を要するものであるため、完全に安全な通信リンクを必要とする可能性が高い。電子部品が小型化し続けるにつれて、医学的に重要な様々なパラメータのいずれかを記録および報告するために患者の上または中に置くことができる小型の電子医療用センサを医療業界がまもなく展開するであろうと思われる。病院環境内の散乱および混乱を緩和するために、こうした小型の電子医療用センサは無線になり、それによって、電子医療用センサをデータ収集ユニットに接続するワイヤを不要にすることができる。小型の電子医療用センサのサイズおよび電力要件を最小限に抑えるために、こうしたセンサデバイスは、6桁の数値表示を受け入れるには小さすぎる可能性が高い。しかし、個人のプライバシーに対する懸念および連邦規定によって、無線医療用センサと監視機器または病院のネットワークとの間の無線データ通信リンクを、安全なペアリングにより提供された暗号化によって保護することが必要になる可能性が高い。
【００２１】
様々な実施形態は、単一のLED(または類似の制御可能な光源)や単純なスピーカだけなど、単純なシグナリングデバイスを含んでよい小さい通信デバイス間で安全なペアリングを確立することを可能にする。ディスプレイ上に6桁(または他の桁数)の検証番号を示すディスプレイではなく、2つの通信デバイスのそれぞれの上の単純なシグナリング機構を、検証アルゴリズムに従って決定された検証パターンに従ってアクティブ化することができる。したがって、2つのデバイスがLEDを含む場合は、各デバイス上のLEDを検証パターンに従って点滅させることができ、また2つのデバイスがスピーカを含む場合は、検証パターンに従って各デバイス上のスピーカに音を出させることができる。2つの通信デバイスが通信セッション用の暗号化鍵の計算に使用する公開鍵およびノンス値の交換に成功する場合は、両方の通信デバイスで計算された検証アルゴリズムが、単純なシグナリング機構上でLED点滅パターン、または音声パターンもしくは曲で合図通知される同じ検証パターンを選択する。次いで、ユーザは、2つのデバイスが同じ点滅パターンを表示し、または同じ音声もしくは曲を発しているときを容易に認識し、安全なペアリングプロセスが進行すべきであることを示すために各デバイス上でボタン(または他の入力)を押下することができる。したがって、非常に小さく、複雑でない通信デバイスを、非常に単純でユーザフレンドリーなやり方で、能動的盗聴攻撃から保護された安全な通信を行うように構成することができる。
【００２２】
様々な実施形態を実装する通信デバイスでは、必要な唯一のユーザインターフェースは、単一のLEDや類似の光ディスプレイなど、単純なシグナリング機構、およびボタン(または類似の入力デバイス)である。ほとんどの電子デバイスは、デバイスがいつオンか、またはオフか示すために少なくとも1つのLEDを含む。したがって、ほとんどの通信デバイスは、そのハードウェアに変更を加えることなしに、様々な実施形態の実装を可能にするのに十分な単純なシグナリング機構を既に含んでいる。たとえば、通信デバイスは、検証パターンに従って電力インジケータLEDをオン/オフで点滅させるためのソフトウェア命令で構成されてよい。
【００２３】
単純なシグナリング機構としてLEDまたは他の光信号を使用することの代替案として、通信デバイスは、デバイスプロセッサに結合された単純な圧電振動器など、小さい音声発生器またはスピーカを備えてよい。よく知られているように、圧電スピーカは、非常に小さく、安価で、電力効率のよいものであり得るが、その一例は、音付きグリーティングカードで使用されたスピーカである。したがって、圧電スピーカは、小さい形の通信デバイス内に容易に含めることができる。圧電スピーカに短パルスで非常に速く連続して加圧することによって、電子デバイスは、様々な周波数のトーン、低い連続音、バズ音およびクリック音を含めて、音声のパターンを生成することができる。人間の耳はトーンおよびリズムを検出し、2つの音が同じでないときを認識するのに長けている。たとえば、2つのスピーカが類似の音を発するが、周波数が僅かに異なっている場合、聴取者は、代わりに2つの音声が同期し、同期から外れるときにビートおよび揺れの音響効果を検出する。したがって、2つの通信デバイスの間で安全なペアリングのリンクを確立しようとするユーザは、2つのデバイスが安全なリンクを確立する準備ができているかを、その音声パターンから非常に迅速に認識することができる。単純な音声パターンに加えて、通信デバイスは、歌の大きいレパートリから、様々な検証値に関連付けることができる音楽およびリズムを得ることもできる。検証番号を特定の振動パターンに相関させるのではなく、デバイスプロセッサは、デバイスの圧電スピーカ上で再生される特定の曲または一連の音符を選択するために番号を使用することができる。ユーザは、2つの曲が同じでないとき、または同じである場合には、同じキーでない、または同じリズムでないときを容易に認識することができる。
【００２４】
ユーザに検証信号を伝達するために可聴検証パターンを使用することは、ユーザが視覚障害者である場合に有利であり得る。可聴検証パターンは、自動車などの機器または可視面をもたない機器に組み込まれた部品など、通信デバイスのうちの一方または両方がパッケージ化されて、ユーザがそれらを見ることができない場合にも有用なことがある。
【００２５】
様々な実施形態は、デバイス間のペアリング、暗号化されたデータリンク、整合性チェックおよび信頼ドメインの確立など、知られている通信セキュリティ機構を実施することができる。信頼ドメインを別のデバイスに拡張するには、受信側デバイスが、有効な新しいメンバとして検証される必要があり、信用証明書(credential)を安全に交換する必要がある。通信が始まる前に、信頼ドメインの確立および各通信デバイスの信用証明書を認証する必要がある。様々な実施形態は、2つの通信デバイス間で安全な通信が開始する前に行われる検証および認証プロセスに対処する。
【００２６】
2つの通信デバイス間で通信リンクを確立するプロセスはよく知られている。第1のステップとして、通信デバイスは、使用されている特定の通信技術のデバイス発見プロトコルに関連する無線周波数信号をリスンするなどによって互いを発見する。別の通信デバイスが発見されると、通信リンクは、その通信技術について定義されたリンク確立プロトコルを使用してネゴシエートすることができる。通信リンクを確立したまま、2つのデバイスは、安全なリンクを確立するプロセスを開始するために公開鍵および他のセキュリティ情報を交換することができる。交換されたキュリティ情報、および各通信デバイスに知られている情報を使用して、各デバイスは、検証アルゴリズムを実行することができる。検証アルゴリズムは、デバイスが能動的な盗聴攻撃を受けず、安全な通信リンクを開始できることを確認するために使用できる検証値を生成することを含んでよい。2つの通信デバイス間で安全な検証されたペアリングを確立するために、ユーザは、プロセスがうまく完了したことを検証しなければならず、それは従来、帯域外通信リンクがやはり使用可能でない場合、ユーザが数値比較またはパスキー入力を実行するよって遂行されていた。通信デバイスが互い認証され、それらの通信デバイスのプロセスがユーザによって検証されると、それぞれのデバイスは、交換された信用情報に基づいてそれらのデバイスだけが計算可能である計算値を交換することによってもう一方のデバイスに対してそれ自体を認証することができる。この認証ステップがうまく完了する場合、2つのデバイスはそれぞれ、共有された鍵、ならびに交換された公開鍵およびノンス値から導出されたリンク鍵を計算し、次いでこのリンク鍵を使用して暗号化鍵を生成し、この暗号化鍵は、2つのデバイス間で後続の安全な通信を暗号化するために使用される。
【００２７】
様々な実施形態は、数値比較操作を、光点滅または音声パターンの比較プロセスを提供する検証パターンによる単純なシグナリング機構で置き換える。図1は、LEDディスプレイまたは音声発生器の単純なシグナリング機構だけを備えた2つの通信デバイスの安全なペアリングのための一実施形態方法を示している。上記に言及されたように、安全なペアリングを開始するために、2つの通信デバイスが、互いの間の通信リンクを確立し、安全なペアリング開始のプロセスを始める(ステップ10)。このプロセスの一環として、2つの通信デバイスは、公開鍵(PKa,PKb)を交換する（ステップ12）。典型的な安全なペアリングプロセスでは、それぞれのデバイスは、それ自体の公開鍵/秘密鍵の対を生成し、この公開鍵/秘密鍵の対は、デバイスにつき1回だけ生成され、ペアリングに先立って計算されてよい。通信デバイスは、その公開鍵/秘密鍵の対をいつでも廃棄し、新しい鍵を生成することができるが、これは、安全なリンクが確立されるたびに行われる必要はない。安全なリンクを開始するために、開始側通信デバイスは、その秘密鍵を秘密値として保持して、その公開鍵を応答側通信デバイスに送信することができる。次いで、応答側通信デバイスは、それ自体の公開鍵で応答してよい。開始側および/または応答側通信デバイスは、安全なペアリングプロセスの一環として使用することもできるランダム値またはノンスをも交換してよい。参照し易いように、2つの通信デバイス間の安全なペアリング確立の一環として交換される公開鍵およびノンス値は、本明細書では一般に「セキュリティ情報」と呼ばれる。公開鍵およびノンス値を交換すると(ステップ12)、通信デバイスは、交換されたセキュリティ情報およびそれ自体の秘密鍵を使用して、検証パターンを計算することができ、この検証パターンは、認証または検証プロセスの一環として検証パターンを点滅または鳴らすために単純なシグナリング機構をアクティブ化することによってユーザに提示することができる(ステップ14)。検証パターンを計算するための例示的な方法は、図2〜図4を参照して下記に述べられる。
【００２８】
両方の通信デバイスは、適切な検証パターンを決定した場合、その検証パターンを点滅させ、または鳴らし始めることができ(ステップ16)、その結果、ユーザは、パターンを比較し、パターンが同じかどうか判定することができる。ユーザは、2つの検証パターンが同じであると判定すると、各デバイス上のボタンを押下するなど、各通信デバイスに入力を提供することによってそれを示すことができる。それぞれの通信デバイスは、このユーザ確認入力を受信し(ステップ18)、ユーザが安全なペアリングを確認したかどうか判定する(判定20)。検証パターンが同じであるとユーザが確認できない場合(すなわち判定20=「いいえ」)、通信デバイスは、安全なペアリングプロセスを中止する(ステップ22)。検証パターンが確認されるとユーザ入力が示す場合(すなわち判定20=「はい」)、通信デバイスは、認証処理を完了し、リンク鍵を計算する(ステップ24)。リンク鍵を使用すると、通信デバイスは、適切な暗号鍵を生成し(ステップ26)、それらの鍵を使用して、安全なリンク通信を始めることができる(ステップ28)。
【００２９】
図2は、適切な検証パターンを計算し、(ステップ14)、ユーザ確認を受信するためにパターンを表示しまたは鳴らす(ステップ16および18)ための例示的な一実施形態を示している。安全なペアリングは、2つの通信デバイス間、たとえば携帯電話170と、Bluetooth(登録商標)ヘッドセットなどの無線モノヘッドセット180との間で遂行されてよい。こうした通信デバイスは、無線リンク100を介して通信し、この無線リンク100は、安全なリンクの確立と、安全なリンクが確立された後の安全な通信の実施の両方に使用できる。この例示的な例では、無線モノヘッドセット180は、開始側デバイスとして扱われ、携帯電話170は、応答側装置として扱われる。安全なペアリングを確立するプロセスは、携帯電話170によって開始することができ、したがって、この方法例は、例示するためのものにすぎない。さらに、このプロセスは、任意の形の通信デバイスによって開始することができ、したがって、携帯電話および無線ヘッドセットの例に限定されない。
【００３０】
図2に示された実施形態方法は、Bluetooth（登録商標） Core SpecificationのLisbonリリースのシンプルペアリング機能に基づく。この実施形態方法は、よく知られており、様々な通信デバイスで広く実施されている。しかし、2つの通信デバイス間で安全な通信リンクを確立する他の方法が、様々な実施形態で使用されてもよい。
【００３１】
図2を参照すると、公開鍵が交換された(図1のステップ12)後、それぞれの通信デバイス170、180は、ノンスNa、Nbを選択し、または生成することができる(ステップ30a、30b)。ノンスは、生成され、一度だけ使用され、次いでリプレーアタックを防止するために廃棄されるランダム数である。特定の一実施形態では、それぞれのノンスNaおよびNbは、擬似乱数の128ビットノンス値である。適切なノンス値を生成するための方法は、電子通信技術においてよく知られている。通信デバイス170および180は、他のデバイスから受信されるノンス(NaまたはNb)用に確保された変数をゼロに設定することもできる(ステップ32a、32b)。次いで、応答側通信デバイス170は、コミットメント値Cbを計算することができる（ステップ34）。コミットメント値Cbは、交換された公開鍵、およびそのデバイス自体の公開鍵(PKb)、開始側デバイス180の公開鍵(PKa)、そのデバイス自体のノンスNb、および他のデバイスのノンスNaに割り当てられたゼロ値など、そのデバイスに知られている情報を入力として使用して、アルゴリズム関数Fによって計算された値である。例示的な実施形態では、アルゴリズム関数Fは、128ビット鍵Nbを用いたSHA-256に基づく鍵付きハッシュメッセージ認証コード(HMAC: key-hashed Message Authentication Code)関数を使用してよい。次いで、応答側デバイス170は、そのコミットメント値Cbを開始側デバイスに送信することができ(ステップ36a)、この開始側デバイスは、値を受信する(ステップ36b)。これに応答して、開始側デバイス180は、そのノンスNaを応答側デバイス170に送信し（ステップ38a）、この応答側デバイス170は、値を受信する(ステップ38b)。開始側デバイスのノンスNaを受信することに応答して、応答側デバイス170は、それ自体のノンスNbを送信し、(ステップ40a)、このノンスNbは、開始側デバイス180によって受信される(ステップ40b)。この時点で、開始側通信デバイス180は、それ自体のコミットメント値Cbを、応答側デバイス170から取得した情報を使用して計算し、計算された値が、受信された値に一致するかどうか判定してよい(判定42)。換言すると、開始側デバイス180は、同じアルゴリズム関数Fおよび同じ入力値(すなわち交換された公開鍵、および応答側デバイスのノンスNb)を使用してコミットメント値を計算する。計算されたコミットメント値が、受信されたコミットメント値に一致しない場合は(すなわち判定42=「いいえ」)、デバイスが安全なペアリングプロセスを終えることができないことをこの結果が示すので、開始側デバイス180は、安全なペアリングプロセスを中止してよい(ステップ44)。
【００３２】
開始側デバイス180は、計算されたコミットメント値が、受信された値に一致すると判定する場合(すなわち判定42=「はい」)、検証値Vaを計算することによって(ステップ46a)、安全なペアリングプロセスを継続してよい。検証値Vaは、交換された公開鍵PKa、PKbおよびノンス値Na、Nbを入力として使用するセキュリティアルゴリズムGを使用して計算することができる。例示的な実施形態では、セキュリティアルゴリズムGは、国家安全保障局によって定義され、米国連邦情報処理規格としてNISTによって公表されたSHA-256ハッシュ関数であってよい。この証明値は、計算された検証値Vaに対応する検証パターンを決定するために(ステップ48a)、切り捨てられ、計算済みとして使用されてよい。対応する検証パターンを決定するために様々な異なる方法を使用することができ(ステップ48a)、その2つの例について、図3および図4を参照して下記に述べられる。
【００３３】
同時に、対応する装置170は、同じアルゴリズムおよび同じ入力値を使用して検証値Vaをも計算し(ステップ46b)、計算された値を使用して、対応する検証パターンを決定する(ステップ48b)。
【００３４】
次いで、2つの通信デバイスは、決定された検証パターンを点滅させ、または鳴らし始める(ステップ16aおよび16b)。上記に言及されたように、ユーザは、単純なシグナリング機構によって発せられた点滅パターンおよび音声パターンを観測し、またはリスンし、発せられたパターンが両方の通信デバイス上で同じかどうか判定し、そうである場合は、検証パターンが一致することを確認するために各通信デバイス170、180上のボタンを押下する(または類似の入力を提供する)。2つの通信デバイス170および180は、それぞれのボタン押下を受信し(ステップ18a、18b)、図1を参照して上述されたように安全なペアリングの完了へと進む。
【００３５】
光または音のパターンが2つの通信デバイス間で同期されることを保証するために、検証表示または検証音を開始するための何らかの調整信号が、一方の通信デバイスから他方の通信デバイスに送信されてよい。通信デバイスが通信リンクをネゴシエートしているので、デバイス間のタイミングの同期は既に確立されていることになる。したがって、必要なことは、表示または音声をいつ開始すべきか一方のデバイスが他方に合図通知することだけである。したがって、ステップ16aの一環として、またはその直前に、開始側デバイス180は、応答側デバイス170に開始信号を送信してよい。この開始信号は、両方のデバイス170、180が検証パターンを同時に表示し、または鳴らし始めるように、タイミング同期情報を含んでよい。
【００３６】
ノンス値、コミットメント値、確認検証パターンを交換するための上記方法が、どのようにして能動的な中間者攻撃を防止するかに注目されたい。中間者攻撃側は成功するために、安全な通信リンクの妨害以外にいずれかの効果を有するように、2つの通信デバイス間のプロセスにそれ自体の鍵情報を注入しなければならない。開始側デバイス180と応答側デバイス170の両方に一致する検証パターンを作成する攻撃者の試みは、攻撃者と通信デバイスがノンス値をその中で交換しなければならないシーケンスによって阻止される。攻撃者は、まず開始側デバイスを装うことによって応答側デバイス170とノンス値Na、Nbを交換する場合、開始側デバイス180から真のノンスNaを受信する前に、開始側デバイスと使用するノンスNbに対してコミットしなければならない。攻撃者は、まず開始側デバイス180とノンスを交換する場合、応答側デバイスからのノンスNbを見る前に応答側デバイスにノンスNaを送らなければならない。いずれの場合も、攻撃者は、(コミットメント値によって)そのノンスのうちの少なくとも第2のノンスに対して、正当なデバイスからの第2のノンスを知る前にコミットしなければならない。したがって、攻撃者は、攻撃者と開始側デバイス180との間、および攻撃者と応答側デバイス170との間で検証値が同じになるようなやり方で、それ自体のノンス値を選ぶことができない。したがって、開始側と応答側の正当な通信デバイスによって決定された検証パターンは、同じにならない。したがって、2つの通信デバイス間で安全なペアリングの確立を試みるユーザは、互いに異なる検証パターンが点滅されまたは鳴らされることによって、攻撃に対する警告を受ける。
【００３７】
(たとえば上述された例示的な方法を使用して)計算された検証値と共に、様々な異なる方法のいずれかを、その値に基づき検証パターンを決定するために使用することができる。図3に示された一例は、計算された検証値を、テーブルルックアッププロセスのための入力として使用して、検証パターンのテーブルから適切な検証パターンを得る。たとえば、検証値は、(たとえばmod232関数によって)32ビットに切り捨てることができ、この32ビットは、6桁の10進値に変換され、6桁の10進値は、3つの2桁の数字へと解析される(ステップ60)。結果として生じる2桁の数字はそれぞれ、テーブル内の100個の異なる検証パターンのうちの適切な1つを選択するためにテーブルルックアップ値として使用される(ステップ62)。次いで、最終的な検証パターンを作成するために、3つの選択された検証パターンを連続的に点滅させ、または鳴らしてよい(ステップ64)。テーブルが100個の異なる検証パターンを含む場合、3つの2桁の数字に基づいて選択された3つのパターンを連結することによって、100万個の異なる可能な点滅パターンまたは音声パターンがもたらされる。検証値を3つの2桁の10進数に変換することは、ルックアップテーブルから検証パターンを選択するのに検証値をどのように使用できるかについての一例にすぎず、より少ない、またはより多くの桁を使用してもよいし、同様の効果を有する類似のやり方でバイナリ値を使用してもよい。
【００３８】
検証パターンのテーブルは、データレコードがルックアップ値でインデックス付けされ、パターンデータを含む単純なデータ構造であってよい。こうしたパターンデータは、たとえば、LEDで実施可能な点滅パターン、または圧電スピーカで実施可能な振動パターンやデジタル音声ファイルに変換するのに適したバイナリ形式であってよい。
【００３９】
検証値に基づいて検証パターンを決定する第2の例示的な方法が、図4に示されている。この第2の例では、検証値は、6桁の10進値に変換され、この6桁の10進値は、6つの1桁の値へと解析される(ステップ70)。次いで、検証パターンを検索しまたは計算するために、第1の桁が使用される(ステップ72)。たとえば、第1の桁に等しいインデックス値を有するパターンを決定するために、10個の基本的な検証パターンを含むルックアップテーブルを使用することができる。別の例として、アルゴリズムは、基本的な検証パターンを生成するために、第1の桁を使用してよい。第2の桁は、LED点滅の頻度や音声頻度など、検証パターンの頻度を設定または修正するために使用することができる(ステップ74)。10個の異なる係数のうちの1つに従ってパターン頻度を調整することによって、選択された基本的な検証パターンは、認識可能に異なる100個のパターンをもたらすことができる。第3の桁は、長い点滅やトーンの継続時間など、パターン内でいくつかの要素の性質または継続期間を調整するために使用することができる(ステップ76)。この追加の修正係数によって、認識可能に異なるパターンの数がさらに10倍増加する。第4の桁から第6の桁について、このプロセスは、第4の桁に基づいて別の基本パターンを選択すること(ステップ78)、第5の数字に基づいて頻度を調整すること(ステップ80)、および第6の数字に基づいて長い継続時間の点滅またはトーンを調整すること(ステップ82)によって繰り返すことができる。次いで、結果として生じる2つのパターンは、より長い単一のパターンへと連結することができ、この単一のパターンは、ユーザによって、比較のために点滅され、または鳴らされる(ステップ84)。
【００４０】
第3の例示的な方法では、検証値は、基数8に変換することができ、結果として生じる桁が、圧電スピーカに適用できる8音音階の音符内で選択するために使用される。検証値が非常に長い数であり得るので、音符への結果として生じる変換は、(恐らくメロディではないが)曲となり、この曲は、2つの異なるデバイス上で再生されるとき、互いに同じであり、または互いに異なるとユーザが容易に認識することができる。
【００４１】
上記の3つの例示的な方法は、テーブルルックアッププロセス、パターン生成アルゴリズム、およびパターン修正アルゴリズムを含めて、計算された検証値に基づいて検証パターンを決定または生成するために幅広い様々なタイプの方法を使用できることを示している。適切な方法は、攻撃者が正確なパターンの推測に成功できる可能性を最小限に抑える十分なバリエーションに富んだ、互いに異なりまたは同じであるとユーザが認識できるパターンをもたらす。
【００４２】
諸実施形態は、幅広い通信デバイスと共に使用することができ、その一部の例が、図5〜図7に示されている。
【００４３】
図5に示された第1の例示的な通信デバイスは、たとえば医療用リストバンド148に組み込まれており、パーソナルエリアネットワークを介して無線センサから受信された医療用センサデータを病院の広帯域無線ネットワークに中継するように構成されてよい無線データ中継デバイス150である。こうした無線データ中継デバイス150は、プロセッサ151、ならびにすべてプロセッサ151に結合されているメモリ152とバッテリ154とパーソナルエリアネットワークトランシーバ158と広域トランシーバ155とボタン156(または類似のユーザ入力デバイス)とを含んでよい。さらに、LED 153および/また圧電スピーカ159が、検証パターンを点滅させ、または鳴らすためにプロセッサ151に結合されてよい。
【００４４】
図6に、無線データ中継デバイス150と共に使用されてよい例示的な小型無線医療用センサ160が示されている。小型無線医療用センサ160は、メモリ162に結合されたプロセッサ161と、バッテリ168などの電源とを含んでよい。小型無線医療用センサ160は、プロセッサ161に結合されたパーソナルエリアネットワークトランシーバ165と、たとえばBluetooth(登録商標)プロトコルを使用してパーソナルエリアネットワーク範囲無線通信を確立するように構成されたアンテナとを含んでよい。小型無線医療用センサ160は、医療分野ではよく知られている様々な医療用の機械センサ、電気センサまたは化学センサのいずれかであってよい、医療用センサ164をさらに含んでよい。さらに、小型無線医療用センサ160は、プロセッサ161に結合されたボタン166(または類似のユーザ入力デバイス)、ならびにプロセッサ151に結合された、検証パターンを点滅させまたは鳴らすためのLED 163および/または圧電スピーカ165を含んでよい。
【００４５】
使用時、患者の医療用データを通信するために、小型無線医療用センサ160と無線データ中継デバイス150との間で安全な通信リンクが確立されてよい。安全な通信リンクを確立するために、2つのデバイスプロセッサ151、161は、安全なペアリングプロセスを開始し、適切な段階で、決定された検証パターンに従ってLED 153、163または圧電スピーカ159、165をアクティブ化するための様々な実施形態によるソフトウェア命令で構成されてよい。通信リンクを設定するユーザは、点滅されまたは鳴らされた検証パターンが同じであることを検証してよく、そうである場合は、2つのデバイス150、160上でボタン156、166を押下し、それによって、デバイス150、160に安全なペアリングプロセスを完了させ、パーソナルエリアネットワーク伝送100を介した暗号化されたデータ通信を開始させる。同様のやり方で、無線データ中継デバイス150は、患者データが広域ネットワーク伝送102によって病院情報システムに中継され得るように、広域トランシーバ155を介して病院広域ネットワークにリンクされてもよい。類似のプロセスが、無線データ中継デバイス150と病院の広域ネットワークの無線アクセスノードとの間で第2の安全なペアリングを確立するために使用されてもよい。たとえば、無線アクセスノード(図示せず)は、LEDまたはスピーカ、ならびに安全な通信リンクを設定するユーザが、本明細書に述べられた諸実施形態を使用して安全な通信リンクを確立可能であることを検証できるようにするユーザ入力デバイスを備えてよい。無線センサから病院ネットワークまで患者データを中継する無線データ中継デバイス150の可能な操作に関するさらなる詳細は、その内容全体が参照により本明細書に組み込まれている、2009年6月10日に出願された、本出願人が所有する米国特許出願第12/482,175号、「Identification and Connectivity Gateway Wristband for Hospital and Medical Applications」に開示されている。
【００４６】
上記に言及されたように、様々な実施形態は、周辺無線デバイスを携帯電話に接続するために使用することができ、その一例が、図7に示されている。典型的な携帯電話170は、内部メモリ172およびディスプレイ173に結合されたプロセッサ171を含む。さらに、携帯電話170は、無線データリンクに接続された、電磁放射を送受信するためのアンテナ174、および/またはプロセッサ171に結合された携帯電話トランシーバ175を有してよい。携帯電話170は典型的に、すべてプロセッサ161に結合されている、キーパッド176または小型キーボードと、ユーザ入力を受信するためのメニュー選択ボタンまたはロッカースイッチ177と、音を生成するためのスピーカ179と、音を受信するためのマイクロホン169とをも含む。さらに、携帯電話170は典型的に、プロセッサ171に結合された少なくとも1つのLED 177を含む。さらに、携帯電話170は、プロセッサ171に、また無線ヘッドセット180などの別の通信デバイスと無線通信リンクを確立するためのアンテナ174に結合されているBluetooth(登録商標)トランシーバ178など、第2の無線トランシーバを含んでよい。
【００４７】
図8は、様々な実施形態に従って携帯電話170と安全な通信リンクを確立するのに適したBluetooth(登録商標)無線モノヘッドセット180など、無線通信デバイス内に含まれてよい例示的な構成要素を示している。たとえば、Bluetooth(登録商標)無線モノヘッドセット180は、プロセッサ181、ならびにすべてプロセッサ181に結合されているバッテリ182とマイクロホン187とスピーカ189とボタン186とを含んでよい。Bluetooth(登録商標)トランシーバ188など、無線データトランシーバは、プロセッサ181および内部アンテナ184に結合されてよい。さらに、無線モノヘッドセット180は、プロセッサ181に結合されたLED 183を含んでよい。
【００４８】
上記に述べられたように、携帯電話170内のプロセッサ171、181、およびモノヘッドセット180は、安全なペアリングプロセスを開始し、適切な段階で、決定された検証パターンに従ってLED 177、183または圧電スピーカ179、185をアクティブ化するためのソフトウェア命令で構成されてよい。携帯電話170と無線モノヘッドセット180との間でBluetooth(登録商標)リンクを設定するユーザは、点滅されまたは鳴らされた検証パターンが同じであることを検証してよく、そうである場合は、2つのデバイス170、180上でボタン176、186を押下し、それによって、デバイス170、180に安全なペアリングプロセスを完了させ、暗号化されたデータ通信を開始させる。
【００４９】
様々なデバイスでは、プロセッサ151、161、171および181は、上述された様々な実施形態についての操作を含めて、様々な操作を実施するためのソフトウェア命令によって構成できる任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または1つまたは複数のマルチプロセッサチップであってよい。一部のデバイスでは、無線通信機能に専用の1つのプロセッサ、および他のアプリケーションの実行に専用の1つのプロセッサなど、複数のプロセッサ151、161、171および181が提供されてよい。典型的に、ソフトウェア命令は、それらがアクセスされ、プロセッサ151、161、171にロードされる前に、内部メモリ152、162、172に格納されてよい。一部のデバイスでは、プロセッサ151、161、171および181は、ソフトウェア命令を格納するのに十分な内部メモリを含んでよい。この説明のために、用語メモリは、接続されたメモリユニット152、162、172、およびプロセッサ自体151、161、171および181の中のメモリを含めて、プロセッサ151、161、171および181によってアクセス可能なすべてのメモリを指す。検証パターンデータは、メモリユニット152、162、172に格納されてもよいし、プロセッサ151、161、171および181内に格納されてもよい。多くのデバイスでは、メモリ152、162、172は、揮発性メモリ、またはフラッシュメモリなどの不揮発性メモリ、または両方の混合物であってよい。
【００５０】
上記の方法についての説明および処理フローチャートは、単に例を示すために提供されており、様々な実施形態のステップを提示された順序で実施しなければならないことを求めるものでも、示唆するものでもない。当業者には理解されるように、上記の諸実施形態のステップの順序は、任意の順序で実施してもよい。同様に、特許請求の範囲において要素が列挙された順序は任意であり、こうした要素を提示された順序で実施しなければならないことを示唆するものではない。たとえば、デバイス管理セッションの開始前または開始後、あるいはサーバへの通信リンクの確立前または確立後にコンピューティングデバイスによってデバイス管理サーバとの最後の通信が遂行されてから、介在する構成変更が行われたかどうかの判定が行われている。「その後」、「次いで」「次に」などの単語は、ステップの順序を限定するためのものではなく、これらの単語は、諸方法について説明することによって読者を導くために単に使用されている。さらに、たとえば冠詞(「a」、「an」または「the」)を用いて単数形でクレーム要素について述べるいずれの言及も、要素を単数形に限定するものと解釈すべきでない。
【００５１】
本明細書に開示された諸実施形態に関連して述べられた様々な例示的な論理ブロック、モジュール、回路およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装することができる。ハードウェアとソフトウェアのこの交換可能性について明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路およびステップは、上記では概してその機能性に関して述べられている。こうした機能性がハードウェアとして実装されるか、それともソフトウェアとして実装されるかは、システム全体に課された特定のアプリケーションおよび設計の制約に依存する。当業者は、述べられた機能性を、それぞれの特定の応用例について様々なやり方で実施することができるが、こうした実装上の決定は、本発明の範囲からの逸脱をもたらすものと解釈すべきではない。
【００５２】
本明細書に開示された諸実施形態に関連して述べられた様々な例示的な論理、論理ブロック、モジュール、および回路を実装するのに使用されるハードウェアは、汎用プロセッサ、デジタル信号プロセッサ(DSP: digital signal processor)、特定用途向け集積回路(ASIC: application specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA: field programmable gate array)または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別のハードウェアコンポーネント、あるいは本明細書に述べられた諸機能を実施するように設計されたその任意の組合せで実装され、または実施されてよい。汎用プロセッサは、マイクロプロセッサであってよいが、別法では、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラまたは状態機械であってよい。プロセッサは、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと協力する1つまたは複数のマイクロプロセッサ、あるいは他の任意のこうした構成として実装することもできる。あるいは、一部のステップまたは方法は、所与の機能に特有の回路によって実施されてよい。
【００５３】
1つまたは複数の例示的な実施形態では、述べられた諸機能は、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組合せで実装されてよい。ソフトウェアで実装される場合、諸機能は、1つまたは複数の命令またはコードとしてコンピュータ読取り可能媒体に格納されてもよいし、送信されてもよい。本明細書に開示された方法またはアルゴリズムの諸ステップは、実行されるプロセッサ実行可能ソフトウェアモジュールで具現化することができ、このプロセッサ実行可能ソフトウェアモジュールは、コンピュータ読取り可能媒体内に常駐してよい。コンピュータ読取り可能媒体は、コンピュータ記憶媒体と、コンピュータプログラムをある所から別の所に転送することを容易にする任意の媒体を含めた通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスすることができる任意の使用可能な媒体であってよい。限定のためではなく、例を挙げると、こうしたコンピュータ読取り可能媒体は、RAM、ROM、EEPROM、CD-ROMまたは他の光ディスク記憶装置、磁気ディスク記憶装置、または他の磁気記憶デバイス、あるいは所望のプログラムコードを命令またはデータ構造体の形で搬送しまたは格納するために使用可能であり、コンピュータによってアクセス可能である他の任意の媒体を備えてよい。また、いずれの接続も適切に、コンピュータ読取り可能媒体と呼ばれる。たとえば、同軸ケーブル、光ファイバケーブル、ツイストペア線、デジタル加入者線(DSL: digital subscriber line)、または赤外線、無線およびマイクロ波などの無線技術を使用してソフトウェアがウェブサイト、サーバまたは他の遠隔ソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア線、DSL、または赤外線、無線およびマイクロ波などの無線技術は、媒体の定義に含まれる。本明細書では、ディスク(disk、disc)は、コンパクトディスク(CD: compact disc)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD: digital versatile disc)、フロッピー（登録商標）ディスクおよびブルーレイディスクを含み、ただし、ディスク(disk)は通常、データを磁気的に再生し、ディスク(disc)はデータをレーザで光学的に再生する。上記内容の組合せ
もまた、コンピュータ読取り可能媒体の範囲内に含まれるべきである。さらに、方法またはアルゴリズムの操作は、コンピュータプログラム製品に組み込むことができるマシン読取り可能媒体および/またはコンピュータ読取り可能媒体上に、コードおよび/または命令の1つまたはいずれかの組合せもしくはセットとして常駐してよい。
【００５４】
開示された実施形態についての上記説明は、当業者が本発明を作成しまたは使用することを可能にするために提供されている。これらの実施形態への様々な修正が当業者には容易に明らかになり、本明細書に定義された一般的な原理は、本発明の精神または範囲から逸脱せずに他の実施形態に適用することができる。したがって、本発明は、本明細書に示された諸実施形態に限定されるものでないが、添付の特許請求の範囲、ならびに本明細書に開示された原理および新規な特徴に一致する最も広い範囲が与えられるものである。
【符号の説明】
【００５５】
100  無線リンク/パーソナルエリアネットワーク伝送
102  広域ネットワーク伝送
148  医療用リストバンド
150  無線データ中継デバイス
151  プロセッサ
152  内部メモリ/メモリユニット
153  LED
154  バッテリ
155  広域トランシーバ
156  ボタン
158  パーソナルエリアネットワークトランシーバ
159  圧電スピーカ
160  小型無線医療用センサ/デバイス
161  プロセッサ
162  内部メモリ/メモリユニット
163  LED
164  医療用センサ
165  圧電スピーカ/パーソナルエリアネットワークトランシーバ
166  ボタン
168  バッテリ
169  マイクロホン
170  携帯電話/通信デバイス
171  プロセッサ
172  内部メモリ/メモリユニット
173  ディスプレイ
174  アンテナ
175  携帯電話トランシーバ
176  キーパッド/ボタン
177  LED/ロッカースイッチ
178  トランシーバ
179  圧電スピーカ
180  無線モノヘッドセット/通信デバイス
181  プロセッサ
182  バッテリ
183  LED
184  内部アンテナ
185  圧電スピーカ
186  ボタン
187  マイクロホン
188  トランシーバ
189  スピーカ
Cb  コミットメント値
F  アルゴリズム関数
G  セキュリティアルゴリズム
Na  ノンス
Nb  ノンス
PKa  公開鍵
PKb  公開鍵
Va  検証値
【図１】
0005409918.tif 000002
【図２】
0005409918.tif 000003
【図３】
0005409918.tif 000004
【図４】
0005409918.tif 000005
【図５】
0005409918.tif 000006
【図６】
0005409918.tif 000007
【図７】
0005409918.tif 000008
【図８】
0005409918.tif 000009