(57)【要約】【課題】  Ｂｌｕｅｔｏｏｔｈなどの無線通信プロトコルにおいて、デバイスの「ペアリング（pairing）」を確立し、物理的に接続されているかのように対話させるために用いられるリンクキーを生成するために用いられるコード（ＰＩＮ）を提供する。【解決手段】  本発明にかかるプリント装置（１２）とのペアリングを確立する際に使用されるリンクキーを生成するためのコード（ＰＩＮ）を発行する方法は、前記プリント装置（１２）が、ローカルＰＩＮ要求に応答して前記ＰＩＮを生成することと、前記プリント装置（１２）が、前記ＰＩＮをプリントすることとを含む。【選択図】図１Ａ
2005174327.tif 000002
【特許請求の範囲】
【請求項１】
プリント装置（１２）とのペアリングを確立する際に使用されるリンクキーを生成するためのコード（ＰＩＮ）を発行する方法であって、
前記プリント装置（１２）が、ローカルＰＩＮ要求に応答して前記ＰＩＮを生成することと、
前記プリント装置（１２）が、前記ＰＩＮをプリントすることと
を含む方法。
【請求項２】
前記ローカルＰＩＮ要求としてテストページをプリントするローカル要求を識別すること
を含み、
前記ＰＩＮをプリントすることは、
該ＰＩＮを含むテストページをプリントすること
を含む
請求項１に記載の方法。
【請求項３】
デバイスペアリングを初期化する方法であって、
ローカルＰＩＮ要求に応答してＰＩＮを生成することと、
前記ＰＩＮを発行することと、
ＰＩＮデータとともに接続要求を受け取ることと、
前記ＰＩＮデータを使用して、デバイスペアリングに使用されるリンクキーを生成することと
を含む方法。
【請求項４】
前記発行することは、
前記ＰＩＮをプリントすること
を含む
請求項３に記載の方法。
【請求項５】
前記発行することは、
前記ＰＩＮを可聴音声として発行すること
を含む
請求項３に記載の方法。
【請求項６】
前記ローカルＰＩＮ要求は、テストページをプリントするローカル要求であり、
前記発行することは、
前記ＰＩＮを含むテストページをプリントすること
を含む
請求項３に記載の方法。
【請求項７】
前記ローカルＰＩＮ要求は、可聴メッセージを発行するローカル要求であり、
前記発行することは、
前記ＰＩＮを含む可聴メッセージを発行すること
を含む
請求項３に記載のデバイスペアリングを初期化する方法。
【請求項８】
前記リンクキーを生成する前に前記ＰＩＮデータの有効性を判断すること
をさらに含む請求項３に記載の方法。
【請求項９】
前記判断することは、
前記ＰＩＮデータが前記ＰＩＮに対応するか否かを判断することと、
前記生成されたＰＩＮが満了しているか否かを判断することと、
前記ＰＩＮデータが前記ＰＩＮに対応していない場合かまたは前記ＰＩＮが満了している場合に、前記接続要求を拒絶することと
を含む
請求項８に記載のデバイスペアリングを初期化する方法。
【請求項１０】
前記接続要求が、前記ＰＩＮデータに関連しない機能に対するものであるときに、前記接続要求を拒絶すること
をさらに含む請求項３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリント装置（１２）とのペアリングを確立する際に使用されるＰＩＮを発行する方法、および、デバイスペアリングを初期化する方法に関する。
【背景技術】
【０００２】
電子デバイス間の無線通信を可能にする技術は、日々進化している。
Ｂｌｕｅｔｏｏｔｈは、デバイスの「ペアリング（pairing）」を確立するための新しく生まれた無線通信プロトコルである。
ペアリングは、たとえば、携帯電話とヘッドセットとの間、マウスとパーソナルコンピュータとの間、またはＰＤＡ（携帯情報端末）とプリンタとの間で可能である。
デバイスは、ペアになると、物理的に接続されているかのように対話することができる。
これは、当然ながら、ペアになったデバイスが互いの通信範囲内にあり続けることを想定している。
【０００３】
Ｂｌｕｅｔｏｏｔｈプロトコルは、デバイスペアリングを確立しその後維持する既知のセキュリティ手順を使用する。
ペアリングを確立するために、デバイスのうちの少なくとも一方（検証デバイス）が、他方（要求者デバイス）が対話を許可されていることを確認する、認証プロセスが実行される。
各Ｂｌｕｅｔｏｏｔｈデバイスは、一意のデバイスアドレスを有する。
ペアになったデバイスは、対称的なリンクキーを共有する。
認証するために、要求者デバイスは、自身のデバイスアドレスとリンクキーとを使用して、検証デバイスに送信する第１のパスワードを生成する。
検証デバイスは、リンクキーの自身のコピーと要求者デバイスのアドレスとを使用して第２のパスワードを生成する。
これら第１のパスワードと第２のパスワードとが一致する時に、認証が発生する。
【０００４】
ペアになる前、要求者デバイスと検証デバイスとは、リンクキーを共有しない。
この場合、リンクキーを生成するためにコード（ＰＩＮと呼ぶ）が使用される。
正しく機能するためには、両デバイスに同じＰＩＮを提供しなければならない。
要求者デバイスは、自身のデバイスアドレスとＰＩＮとを使用してリンクキーを生成する。
同様に、検証デバイスは、ＰＩＮと要求者デバイスのアドレスとを使用してリンクキーの自身のコピーを生成する。
たとえば、要求者デバイスがＰＤＡであり、検証デバイスが携帯電話である場合、ＰＤＡのタッチスクリーンと携帯電話のキーパッドとにより同じＰＩＮを入力することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
デバイスによっては、ユーザインタフェース機能がないかまたは制限されており、そのためＰＩＮを入力することが困難であるかまたは不可能である。
この問題に対し、少なくとも２つの解決法が開発された。
１つの解決法の例は、携帯電話に対する無線ヘッドセットに関連する。
携帯電話ユーザには、ヘッドセットとハンドセットとの間の確実な接続を確立することが望ましい。
ＰＩＮは、工場においてヘッドセットにプリプログラムされる。
ＰＩＮは、通常、「１２３４」または「００００」のような短い連続した数字である。
ユーザは、ハンドセットのユーザインタフェースを使用してこれらの数字をハンドセットに入力することにより認証を完了する。
これは確実なリンクキーを生成するが、それはＢｌｕｅｔｏｏｔｈセキュリティメカニズムを使用する強力な方法ではない。それは、少なくとも２つの主な弱点を有する。すなわち、
（１）ＰＩＮは既知であり、ヘッドセットを購入するすべての人に対して同じであり、
（２）ＰＩＮは短い。
【０００６】
別の例は、ケーブルによりプリンタに接続されるＢｌｕｅｔｏｏｔｈ対応無線プリンタに関する。
コンピュータに、ソフトウェア構成ユーティリティが存在し、それにより、ユーザがＰＩＮ番号を設定しプリンタに格納することができる。
プリンタに接続したい任意のデバイスは、このＰＩＮの値を知らなければならない。
これは確実なリンクキーを作成するが、また主な弱点も有する。
すなわち、
（１）ＰＩＮは通常短く、
（２）ＰＩＮ番号を設定するためにケーブルを介してプリンタをＰＣに接続しなければならず、
（３）デバイスとプリンタとの間に新たなペアリングが確立される度に、同じＰＩＮ番号が使用される。
【０００７】
いずれのセキュリティ方式も完全ではないが、Ｂｌｕｅｔｏｏｔｈセキュリティメカニズムは「計算では安全」であると考えられる。
しかしながら、ＰＩＮが短いかまたはＰＩＮが既知である場合、Ｂｌｕｅｔｏｏｔｈセキュリティメカニズムを撃ち破る可能性のある計算上の方法は簡単になる。
さらに、無線デバイスにＰＩＮを設定するためにケーブルが必要である場合、無線デバイスの利益の多くが失われる。
【０００８】
必要なことは、ユーザインタフェース機能が制限されたデバイスによって使用されるより確実なＰＩＮを生成する改良された方法およびシステムである。
【発明を実施するための最良の形態】
【０００９】
［概論］
要求者デバイスと検証デバイスとは、各々が、要求者デバイスが検証デバイスと対話するのを可能にするリンクキーを共有した時に、ペアになったと考えることができる。
デバイスのうちの一方が、ユーザインタフェース機能が制限されているかまたはそれを有していない場合、そのデバイスに対し、初期リンクキーを生成するために必要な情報（ＰＩＮと呼ぶ）を提供することは困難である。
本発明のさまざまな実施形態は、そのデバイス（検証デバイス）に対し、ＰＩＮを生成し発行する責任を課す。
そして、要求者デバイスと検証デバイスとの間のペアリングを確立するために、ＰＩＮを、要求者デバイスのユーザインタフェースを通して入力することができる。
【００１０】
以下の説明を、細かく文節に分ける。
「環境」と題した第１の文節では、本発明のさまざまな実施形態を実施することができる例示的な環境を説明する。
「構成要素」と題した第２の文節では、本発明のさまざまな実施形態を実施するために使用される例示的な論理的要素および物理的要素を説明する。
「動作」と題した第３の文節では、本発明のさまざまな実施形態を実施するためにとられる例示的なステップを説明する。
【００１１】
［環境］
図１Ａ〜図１Ｃは、本発明のさまざまな実施形態を実施することができる例示的な環境を示す。
まず図１Ａを参照すると、環境１０は、検証デバイス１２と要求者デバイス１４〜２０とを有する。
要求者という用語は、別のデバイスが指定された機能を実行することを要求するデバイスを表すために使用される。
【００１２】
要求者デバイスは、要求を行う場合、自身が要求を行うことが許可されていると主張する。
機能を実行するように要求されたデバイスが、検証デバイスである。
検証デバイスは、その機能を実行する前に、要求者デバイスが実際に認証されているかを検証する。
ここで、検証デバイス１２はプリンタ１２であり、一方要求者デバイス１４、１６、１８、２０はそれぞれ、ＰＤＡ（携帯情報端末）、携帯電話、ラップトップコンピュータおよびパーソナルコンピュータである。
【００１３】
デバイス１４〜２０は、リンク２２を介して検証デバイス１２に接続される。
リンク２２は、概して、ケーブル、通信リンクを介する無線または遠隔接続、赤外線リンク、無線周波数リンク、もしくは電子通信を提供する他の任意のコネクタまたはコネクタのシステムを表す。
リンク２２は、イントラネット、インターネット、またはそれら両方の組合せを含んでもよい。
所与の要求者デバイス１４〜２０を検証デバイス１２に接続するリンク２２の各部分は、リンク２２の残りの部分とは別個であってもなくてもよい。
【００１４】
図１Ａの例では、４つのデバイスペアリング、すなわち、４つの要求者デバイス１４〜２０の各々と検証デバイス１２との間のペアリングが可能である。
所与の要求者デバイス１４〜２０が検証デバイス１２とペアになると、その要求者デバイスは、検証デバイス１２（この場合はプリンタ）が指定されたプリント機能を実行するように要求することができる。
【００１５】
ここで図１Ｂを参照すると、環境２４は、検証デバイス２６（電話ヘッドセット）と要求者デバイス２８（電話親機）とを有する。
デバイス２６および２８は、リンク３０によって相互接続されている。
リンク３０は、赤外線リンク、無線周波数リンクまたは無線通信の他の任意の手段を介する無線接続を表す。
ペアになると、親機とヘッドセットとは対話することができ、親機は、ヘッドセットが電話の会話をユーザが聞えるように可聴音声として発行するように要求することができる。
この例では、ヘッドセットが要求者デバイスであってもよく、親機が検証デバイスであってもよい。
ペアになると、ヘッドセットは、親機がユーザの音声を受信し電子的に再送信するように要求することができる。
【００１６】
図１Ｃに移ると、環境３２は、検証デバイス３４（スピーカ）と要求者デバイス３６（ＰＤＡ）とを有する。
デバイス３４および３６は、リンク３８によって相互接続されている。
リンク３８は、赤外線リンク、無線周波数リンク、または他の任意の無線通信の手段を介する無線接続を表す。
ペアになると、ＰＤＡは、スピーカが指定された１つまたは複数の音声を生成するように要求することができる。
たとえば、ＰＤＡは、スピーカを使用して音楽ファイルを流すことができる。
【００１７】
図１Ａ〜図１Ｃにおける検証デバイス１２、２６および３４は、ユーザインタフェース機能が制限されている。
通常、デバイス１２、２６および３４のいずれも、ユーザがＰＩＮを入力することを可能にするキーパッドを有していない。
本発明のさまざまな実施形態は、検証デバイス１２、２６および３４のようなデバイスが、ユーザが要求者デバイス１４〜２０、２８および３６において入力することができるＰＩＮを生成し発行することができるようにする。
ユーザが所与の要求者デバイス１４〜２０、２８または３６においてＰＩＮを入力すると、そのデバイスとＰＩＮを生成した特定の検証デバイス１２、２６または３４との間でペアリングを自動的に確立することができる。
【００１８】
［機能要素］
図２は、例示的な検証デバイス４０と例示的な要求者デバイス４２との物理的および論理的機能要素を示す例示的なブロック図である。
ここで、検証デバイス４０はプリントデバイスであり、要求者デバイス４２は、検証デバイス４０によって提供されるプリント機能を利用することができる任意のデバイスであってもよい。
【００１９】
検証デバイス４０は、機能要素４４と、ロジック４６と、メモリ４８と、接続インタフェース５０と、を有する。
機能要素４４は、概して、検証デバイス４０が設計された目的である機能を実行することができる物理的機能要素を表す。
ロジック４６は、機能要素４４に対して指示することができるプログラムを表す。
メモリ４８は、ロジック４６および機能要素４４が利用することができる概して任意のメモリを表す。
【００２０】
図示するように、機能要素４４は、プリントエンジン５２と他の構成要素５４とを有する。
プリントエンジン５２は、紙または他の媒体上にプリント画像を形成することができる概して任意のハードウェアを表す。
たとえば、検証デバイス４０がレーザまたはインクプリンタである場合、プリントエンジン５２は、ロジック４６の指示に基づき、入力トレイからシートを取り出し、そのシートに所望の画像の形態でトナーまたはインクを定着させ、そのシートを出力ビンに渡すために必要な、電子写真および紙処理要素のすべてを有する。
【００２１】
他の構成要素５４は、検証デバイス４０が設計された目的であるタスクを検証デバイス４０が実行するために必要とする他のすべてのハードウェアを表す。
他の構成要素５４には、ロジック４６を実行するマイクロプロセッサがある。
プリント機能を実行することに加えて、検証デバイス４０はまた、スキャナ、コピー機およびファクシミリ装置として動作してもよい。
この場合、他の構成要素５４はまた、それらの機能を実行するために必要なハードウェアも含む。
【００２２】
ロジック４６は、プリント制御ロジック５６と、他の制御ロジック５８と、セキュリティロジック６０と、を含む。
プリント制御ロジック５６は、要求者デバイス４２から受け取られたプリント要求を処理し、プリントエンジン５２に対し処理した要求に従って所望の画像をプリントするように指示することができるプログラムを表す。
他の制御ロジック５８は、他の構成要素５４に指示することができるプログラムを表す。
図３を参照してより詳細に説明するセキュリティロジック６０は、検証デバイス４０と要求者デバイス４２との間のペアリングを確立し維持するのに役立つことができるプログラムを表す。
【００２３】
要求者デバイス４２は、機能要素６２と、ロジック６４と、メモリ６６と、接続インタフェース６８と、を有する。
機能要素６２は、概して、要求者デバイス４２が設計された目的である機能を実行することができる物理的な構成要素を表す。
ロジック６４は、機能要素６２に指示することができるプログラムを表す。
ロジック６４は、ワードプロセッサを含んでもよく、機能要素６２は、ロジック６４を実行するプロセッサとグラフィカルユーザインタフェースを提示するディスプレイとを含んでもよい。
メモリ６６は、ロジック６４および機能要素６２が利用することができる任意のメモリを表す。
接続インタフェース６８は、要求者デバイス４２が検証デバイス４０と対話するのを可能にする概して任意のハードウェアおよびプログラミングを表す。
【００２４】
図示するように、ロジック６４は、制御ロジック７０と接続ロジック７２とを含む。
制御ロジック７０は、機能要素に指示することができるプログラムを表す。
たとえば、制御ロジックは、ワードプロセッサとオペレーティングシステムとを含んでもよい。
そして、制御ロジック７０は、ディスプレイに対し、テキストを入力するためのユーザインタフェースを提示するように指示することができる。
そして、制御ロジック７０は、プリントするためのコマンドを発行する、すなわちプリントコマンドが接続インタフェース６８を介して検証デバイス４０に向けられるように命令することができる。
図６を参照してより詳細に説明する接続ロジック７２は、要求者デバイス４２と検証デバイス４０との間のペアリングを確立し維持するのに役立つことができるプログラムを表す。
【００２５】
図３は、セキュリティロジック６０の論理要素を示す例示的なブロック図である。
ここで、セキュリティロジック６０は、ＰＩＮモジュール７６と、キーモジュール７８と、認証モジュール８０と、ユーザモジュール８２と、接続モジュール８４と、を含む。
ＰＩＮモジュール７６は、ＰＩＮを生成することができる概して任意のプログラムを表す。
ＰＩＮは、単純な数字列であってもより複雑な英数字列であってもよい。
ＰＩＮモジュール７６はまた、生成されたＰＩＮを満了データと関連付ける責任がある。
満了データは、生成されたＰＩＮがすでに有効でなくなる環境を指定するために使用されるデータである。
たとえば、ＰＩＮは、指定された時間窓の間のみに有効であってもよい。
ＰＩＮモジュール７６はまた、アクセスデータを生成されたＰＩＮに関連付けることに対しても責任がある。
アクセスデータを使用して、対応するＰＩＮデータを提供する要求者デバイスが利用可能になるべき、検証デバイス４０によって提供される機能を指定する。
たとえば、検証デバイス４０（図２）が、プリント機能とファックス機能とを提供するように装備されている場合、アクセスデータは、アクセスが２つの利用可能な機能のうちの一方のみに制限されることを指示してもよい。
検証デバイス４０がカラーと白黒とをプリントするように装備されている場合、アクセスデータは、アクセスが白黒プリントに制限されるように指示してもよい。
【００２６】
キーモジュール７８は、ＰＩＮデータを使用してリンクキーを生成し、検証デバイス４０とともに確立されるペアリングに関連するデータを維持することができるプログラムを表す。
リンクキーを生成する場合、キーモジュール７８はまた、要求者デバイス４２（図２）に対するデバイスアドレス等の他のデータを使用してもよい。
認証モジュール８０は、要求者デバイス４２から受け取ったＰＩＮデータが有効であるか否かを判断することができる概して任意のプログラムを表す。
ＰＩＮデータは、ＰＩＮであっても、要求者デバイス４２のデバイスアドレス等の他のデータを使用して変更されたＰＩＮであってもよい。
認証モジュール８０はまた、要求者デバイス４２から受け取ったリンクキーの有効性を判断する責任がある。
ユーザモジュール８２は、検証デバイス４０とのペアリングが許可される１つまたは複数の要求者デバイスを識別するデータを維持することができる概して任意のプログラムを表す。
接続モジュール８４は、検証デバイス４０に向けられた接続要求を受け取りそれに応答することができる概して任意のプログラムを表す。
【００２７】
セキュリティロジック６０は、メモリ４８と発行モジュール８６とにアクセスすることができる。
発行モジュール８６は、機能要素４４（図２）を利用してＰＩＮモジュール７６によって生成されたＰＩＮを発行することができる概して任意のプログラミングを表す。
本明細書で使用する発行するという用語は、要求者デバイス４２のユーザ等の要求者デバイスのユーザに既知である、発行されるものを作成することを意味する。
発行モジュール８６は、ロジック４６および／または機能要素４４の一部であってもよい。
【００２８】
再び図２を参照すると、発行モジュール８６は、プリント制御ロジック５６の一部であってもよい。
たとえば、発行モジュール８６は、プリントエンジン５２に対して、ＰＩＮモジュール７６によって生成されたＰＩＮを含むテストページをプリントするように指示することができるプログラムであってもよい。
この場合、検証デバイス４０は、適当に押されると検証デバイス４０に対してテストページをプリントするように指示する１つまたは複数のボタンを有する。
そのようにするする場合、発行モジュール８６は、セキュリティロジック６０に対し、テストページが要求されたことを通知する。
ＰＩＮモジュール７６は、ＰＩＮを生成し発行モジュール８６に提供する。
そして、発行モジュール８６は、プリントエンジン５２に対し、ＰＩＮを含むテストページをプリントするように指示する。
【００２９】
代替実施形態では、セキュリティロジック６０と発行モジュール８６とは、可聴音、たとえば音声を生成することができる検証デバイスの構成要素である（図１Ａおよび図１Ｂの検証デバイス２６および３４を参照）。
そのため、発行モジュール８６は、音の生成において検証デバイス２６または３４を案内するために使用されるロジックの一部であってもよい。
たとえば、発行モジュール８６は、検証デバイス２６または３４に対し、ＰＩＮモジュール７６によって生成されるＰＩＮを含む可聴音声メッセージを生成するように指示することができるプログラムであってもよい。
この場合、検証デバイス２６または３４は、適当に押されると検証デバイス２６または３４に対し可聴音声メッセージを流すように指示する１つまたは複数のボタンを含む。
そうする場合、発行モジュール８６は、セキュリティロジック６０に対し、音声メッセージが要求されたことを通知する。
ＰＩＮモジュール７６は、ＰＩＮを生成し発行モジュール８６に提供する。
そして、発行モジュール８６は、検証デバイス２６または３４に対し、ＰＩＮを含む音声メッセージを流すように指示する。
音声の代りに、要求メッセージは、モールス符号等の可聴符号を含んでもよい。
【００３０】
別の代替実施形態では、セキュリティロジック６０および発行モジュール８６は、点灯した数字キーパッドを有する検証デバイス（図示せず）の構成要素である。
そして、発行モジュール８６は、キーパッド上のいずれのキーが点灯されているかを指示するために使用されるロジックの一部であってもよい。
たとえば、発行モジュール８６は、個々のキーが、ＰＩＮモジュール７６によって生成されたＰＩＮに一致する連続した順序で点灯されるように指示することができるプログラムであってもよい。
この場合、検証デバイス（図示せず）は、適当に押されると、ピンモジュール７６に対してＰＩＮを生成し発行モジュール８６に提供するように指示する１つまたは複数のボタンを含む。
そして、発行モジュール８６は、数字キーの点灯によりユーザにＰＩＮが明らかになるようにする。
【００３１】
図４および図５は、メモリ４８に維持されセキュリティロジック６０のさまざまなコンポーネントがその機能を実行する際に使用する、例示的なデータテーブルを示す。
図４は、ＰＩＮモジュール７６によって維持され、認証モジュール８０が要求者デバイス４２から受け取ったＰＩＮデータの有効性を判断するために使用される、ＰＩＮテーブル８８を示す。
ＰＩＮテーブル８８は、各々が所与のＰＩＮに対応する複数のエントリ９０を含む。
各エントリ９０は、ＰＩＮデータフィールド９２と、アクセスデータフィールド９４と、満了データフィールド９６と、にデータを有する。
【００３２】
エントリ９０のＰＩＮデータフィールド９２は、ＰＩＮデータを含む。
ＰＩＮデータは、ＰＩＮモジュール７６によって生成されたＰＩＮの正確な複製か、または要求者デバイス４２のデバイスアドレス等の他のデータを使用して変更されたＰＩＮであってもよい。
所与のエントリ９０のアクセスデータフィールド９４は、アクセスデータを含む。
アクセスデータは、そのエントリ９０のＰＩＮデータから生成されたリンクキーを使用してアクセスすることができる検証デバイス４０の１つまたは複数の機能を示す。
所与のエントリ９０の満了データフィールド９６は、満了データを含む。
満了データは、時間窓または使用の回数等、そのエントリ９０のＰＩＮデータが有効であり続ける環境を指定する。
【００３３】
図５は、ユーザモジュール８２およびキーモジュール７８によって維持されるユーザテーブル９８を示す。
認証モジュール８０は、ユーザテーブル９８を利用して、要求者デバイス４２から受け取ったリンクキーの有効性を確定し、ＰＩＮデータを提供する要求者デバイスが検証デバイス４０とのペアリングを確立することが許可されているか否かを判断する。
ユーザテーブル９８は、各々が所与の要求者デバイスに対応する複数のエントリ１００を含む。
各エントリ１００は、要求者ＩＤフィールド１０２と、キーフィールド１０３と、アクセスデータフィールド１０４と、満了データフィールド１０５と、にデータを有することができる。
【００３４】
所与のエントリ１００の要求者ＩＤフィールド１０２のデータは、特定の要求者デバイスを識別する。
たとえば、要求者ＩＤは、要求者デバイス４２に対するデバイスアドレスであってもよい。
所与のエントリ１００のキーフィールド１０３は、そのエントリ１００の要求者ＩＤフィールド１０２によって識別される特定の要求者デバイスに対して確立されたリンクキーを含む。
所与のエントリ１００のアクセスデータフィールド１０４は、そのエントリ１００の要求者ＩＤフィールド１０２によって識別された特定の要求者デバイスに関連するアクセスデータを含む。
上述したように、アクセスデータは、そのエントリ１００のキーフィールド１０４に含まれるリンクキーを使用してアクセスすることができる検証デバイス４０の１つまたは複数の機能を示す。
所与のエントリ１００の満了データフィールド１０５は、満了データを含む。
満了データは、そのエントリ１００のキーフィールド１０３に含まれるリンクキーが有効であり続ける環境を指定する。
【００３５】
図示するように、ユーザテーブル９８はまた、多要求者指標１０６と制限指標１０８とを有する。
多要求者指標１０６は、検証デバイス４０が多要求者対応であるか否かを知らせる。
多要求者対応である場合、検証デバイス４０は、複数の要求者デバイスとのペアリングを確立することが許可される。
指標１０６は、たとえば、設定されると検証デバイス４０が多要求者対応であるか否かを知らせるフラグであってもよい。
検証デバイス４０が多要求者対応である場合、制限指標１０８は、ペアリングが指定された要求者デバイスに制限されるか否かを知らせる。
ペアリングが制限される場合、承認された要求者デバイスを、エントリ１００の要求者ＩＤフィールド１０２のデータによって特定することができる。
指標１０８は、たとえば、設定されると検証デバイス４０へのアクセスが制限されているか否かを知らせるフラグであってもよい。
【００３６】
したがって、ユーザテーブル９８は、各々がそのエントリ１００の要求者ＩＤフィールドのみのデータを含む１つまたは複数のエントリ１００を有してもよい。
そのデータは、たとえば、承認された要求者デバイスのデバイスアドレスであってもよい。
承認された要求者デバイスと検証デバイスとの間にペアリングが確立されると、要求者デバイスを識別するエントリ１００の残りのフィールドが満たされる。
検証デバイス４０とのペアリングが指定された要求者デバイスに制限される場合、ユーザモジュール８６は、たとえば、各エントリ１００の要求者ＩＤフィールド１０２のみを満たすユーザテーブル９８のエントリ１００を作成してもよい。
【００３７】
セキュリティロジック６０の、そのＰＩＮテーブル８８および要求者テーブル９８の維持および利用を含む動作のより詳細な例については、後の文節で説明する。
【００３８】
図６は、接続ロジック７２（図２）の論理的構成要素を示す例示的なブロック図である。
ここで、接続ロジック７２は、ＰＩＮモジュール１１０と、キーモジュール１１２と、接続モジュール１１４と、を含む。
ＰＩＮモジュール１１０は、提供されたＰＩＮからＰＩＮデータを生成することができる概して任意のプログラムを表す。
上述したように、ＰＩＮデータは、ＰＩＮまたは要求者デバイス４２のデバイスアドレス等の他のデータを使用して変更されたＰＩＮであってもよい。
キーモジュール１１２は、ＰＩＮデータを使用してリンクキーを生成し、要求者デバイス４２と確立されたペアリングに関するデータを維持することができるプログラムを表す。
接続モジュール１１４は、検証デバイス４０に対する接続要求を指示することができる概して任意のプログラムを表す。
【００３９】
接続モジュール１１４は、メモリ６６（図２）とユーザインタフェース１１６とにアクセスすることができる。
ユーザインタフェース１１６は、ユーザが要求者デバイス４２にＰＩＮを提供することができるようにするハードウェアと関連するプログラムとの概して任意の組合せを表す。
ユーザインタフェース１１６は、たとえば、従来のクワーティキーパッド、より単純な数字キーパッドまたはタッチスクリーンを含んでもよい。
ユーザインタフェース１１６は、ユーザに対し、ＰＩＮを入力するように促し、その後、入力されたＰＩＮを接続ロジック１１４に提供する。
【００４０】
図７は、メモリ６６（図６）に維持され接続ロジック７２のさまざまな構成要素がそれらの機能を実行する際に使用する、例示的なデータテーブルを示す。
特に、図７は、キーモジュール１１２によって維持され接続モジュール１１４によって使用される要求者ペアリングテーブル１１８を示す。
要求者ペアリングテーブル１１８は、各々が所与の検証デバイスに対応する複数のエントリ１２０を含む。
各エントリ１２０は、ＩＤフィールド１２２およびキーフィールド１２４におけるデータを含む。
所与のエントリのＩＤフィールド１２２は、検証デバイス４０等の検証デバイスを識別するデータを含む。
そのデータは、たとえば、その検証デバイスに対するデバイスアドレスであってもよい。
所与のエントリ１２０のキーフィールド１１８は、そのエントリ１２０に対するＩＤフィールド１２２のデータによって識別される検証デバイスに対して確立されたリンクキーを含む。
【００４１】
接続ロジック１１４の、その要求者ペアリングテーブル１１８の維持および利用を含む動作のより詳細な例については、以下の文節において説明する。
【００４２】
［動作］
ここで、図８を参照して、本発明の実施形態の動作について説明する。
図８は、要求者デバイスと検証デバイスとの間のペアリングを確立し維持するためにとられるステップを説明するのに役立つ例示的なフローチャートである。
【００４３】
検証デバイスに電源を投入する（ステップ１２６）。
検証デバイスは、２つのプロセスを初期化し実行する。
検証デバイスは、リンクキーを含む接続要求を待つ（ステップ１２８）。
これを受け取ることにより、第１のプロセスの実行をトリガする。
検証デバイスはまた、ローカルＰＩＮ要求を待つ（ステップ１３０）。
これを受け取ることにより、第２のプロセスをトリガする。
ローカルＰＩＮ要求は、検証デバイスによって提供されるボタンまたは他のユーザインタフェース制御要素を使用して行われる要求である。
たとえば、検証デバイスは、押されるとデバイスに対しＰＩＮを発行するように指示するボタンを含んでもよい。
非ローカルＰＩＮ要求の例は、検証デバイス以外のデバイスから発生する要求である。
【００４４】
ステップ１２８において接続要求を受け取ると、検証デバイスは、提供されたリンクキーが有効であるか否かを判断する（ステップ１３２）。
有効でない場合、プロセスはステップ１２８に戻る。
リンクキーが有効である場合、検証デバイスは、リンクキーを提供した要求者デバイスへのアクセスを許可し（ステップ１３４）、要求者デバイスが切断するのを待つ（ステップ１３６）。
【００４５】
ローカルＰＩＮ要求を受け取ると（ステップ１３０）、検証デバイスは、ＰＩＮを生成して発行する（ステップ１３８）。
生成されたＰＩＮを、たとえば、満了データおよびアクセスデータと関連付けてもよい。
発行されたＰＩＮは、ユーザにより要求者デバイスに入力される。
要求者デバイスは、ＰＩＮデータを生成しそのＰＩＮデータを含む接続要求を検証デバイスに向ける。
【００４６】
検証デバイスは、ＰＩＮデータを含む接続要求を受け取り（ステップ１４０）、有効なリンクキーがすでに確立されたか否かを判断する（ステップ１４２）。
有効なリンクキーが確立されていなかった場合、検証デバイスは、ＰＩＮデータが有効であるか否かを判断する（ステップ１４４）。
ＰＩＮデータが有効である場合、検証デバイスは、リンクキーを確立し（ステップ１４６）、アクセスを許可する（ステップ１３４）。
一方、ＰＩＮデータが無効である場合、検証デバイスは、接続要求を拒絶する（ステップ１４８）。
【００４７】
ステップ１４２において、検証デバイスが代りに有効なリンクキーが存在すると判断した場合、検証デバイスは、それが多要求者対応であるか否かを判断する（ステップ１５０）。
多要求者対応でない場合、ステップ１４８において、ステップ１４０で受信した接続要求を拒絶する。
多要求者対応である場合、検証デバイスは、いずれの特定の要求者デバイスが検証デバイスとのペアリングを確立することが許可されているかに関し制限が存在するか否かを判断する（ステップ１５２）。
制限が存在しない場合、プロセスはステップ１４４にジャンプし、接続要求とともに受信されたＰＩＮデータの有効性を判断する。
制限が存在する場合、検証デバイスは、接続要求を行っている要求者デバイスが承認されているか否かを判断する（ステップ１５４）。
承認されている場合、プロセスはステップ１４４にジャンプして、接続要求とともに受信されたＰＩＮデータの有効性を判断する。
承認されていない場合、プロセスはステップ１４８にジャンプし、接続要求は拒絶される。
【００４８】
ここで、図２〜図７に示す構成要素を参照して、図８に示すプロセスのより特定の実施態様について説明する。
検証デバイス４０の電源を投入し初期化する（ステップ１２６）。
ステップ１３０においてローカルＰＩＮ要求を受け取ると、ＰＩＮモジュール７６（図３）は、ＰＩＮを生成しＰＩＮテーブル８８にエントリ９０を作成する（図４）。
そのエントリは、ＰＩＮのコピーとＰＩＮに関連するアクセスデータおよび満了データとを含む。
そして、発行モジュール８６（図３）は、機能要素４４（図２）に対しＰＩＮを発行するように命令する。
【００４９】
ＰＩＮを、プリントされたページに含まれるデータの一部として発行してもよい（ステップ１３８）。
例として、ローカルＰＩＮ要求を、ユーザが検証デバイス４０のボタンを押した時に行ってもよい。
ユーザの行為に応じて、ＰＩＮモジュール７６（図３）は、ＰＩＮを生成しそのＰＩＮを発行モジュール８６に提供する。
そして、発行モジュール８６は、プリントエンジン５２（図２）に対しＰＩＮを含むテストページをプリントするように指示する。
【００５０】
ユーザは、ユーザインタフェース１１６（図６）を用いて、発行されたＰＩＮを要求者デバイス４２（図２）に入力する。
ＰＩＮモジュール１１０は、ＰＩＮを使用して、ＰＩＮデータを組み立てる。
ここでまた、ＰＩＮデータは、ＰＩＮと同一であってもよく、あるいは、たとえば、ＰＩＮデータを、ＰＩＮおよび要求者デバイス４２のデバイスアドレス等の他のデータを使用して生成してもよい。
そして、接続モジュール１１４（図６）は、ＰＩＮデータを含む接続要求を検証デバイス４０に向ける。
【００５１】
接続モジュール８４（図３）は、接続要求を受け取り（ステップ１４０）、添付のＰＩＮデータを認証モジュール８０（図３）に提供する。
認証モジュール８０は、検証デバイス４０に対し有効なリンクキーがすでに確立されているか否かを判断する（ステップ１４２）。
そうするために、認証モジュール８０は、ユーザテーブル９８（図５）を検査し、テーブル９８が有効なリンクキーを有するエントリ１００を含むか否かを確認する。
有効なリンクキーは、満了していないユーザテーブル９８に含まれるものである。
【００５２】
認証モジュール８０が、いかなる有効なリンクキーも存在しないと判断したと想定すると、認証モジュール８０は、ＰＩＮデータの有効性を判断する（ステップ１４４）。
そうするために、認証モジュール８０は、ＰＩＮテーブル８８（図４）を検査し、それが一致するＰＩＮデータを含むエントリ９０を有するか否かを確認する。
ＰＩＮテーブル８８が一致するＰＩＮデータを含むエントリ９０を有している場合、認証モジュール８０は、そのエントリ９０からの満了データを使用して、そのＰＩＮデータが満了しているか否かを判断する。
認証モジュール８０はまた、接続要求が一致するＰＩＮデータに関連するアクセスデータによって許可されているかまたは禁止されていない機能に対するものであるか否かを判断してもよい。
次の場合、接続要求は有効でなく、認証モジュール８０は接続要求を拒絶する（ステップ１４８）。
（１）ＰＩＮテーブル８８において一致するＰＩＮデータが見つからない、
（２）一致するＰＩＮデータが満了している、または
（３）接続要求が禁止された機能に対するものである。
【００５３】
そうでない場合、提供されたＰＩＮデータは有効である。
キーモジュール７８（図３）は、ＰＩＮデータを使用してリンクキーを生成し（ステップ１４６）、接続モジュール８４（図３）は、接続要求を許可する（ステップ１３４）。
キーモジュール７８はまた、ユーザテーブル９８にエントリ１００を生成する。
そのエントリに含まれるのは、デバイスアドレスかまたは要求者デバイス４０を一意に識別する他のデータと、生成されたキーと、リンクキーを生成するために使用されるＰＩＮデータに関連するアクセスデータ（ある場合）と、満了データと、である。
【００５４】
接続要求が許可されると、要求者デバイス４２のキーモジュール１１２（図６）は、接続要求とともに提供されたＰＩＮデータを使用してリンクキーを生成する。
そのリンクキーは、検証デバイス４０のキーモジュール７８（図３）によって生成されたリンクキーと一致する。
キーモジュール１１２（図６）はまた、要求者ペアリングテーブル１１８にエントリ１２０を追加する。
そのエントリ１２０は、デバイスアドレスかまたは検証デバイス４０およびリンクキーを識別する他のデータを含む。
【００５５】
上記では、ステップ１４２において認証モジュール８０が、検証デバイス４０に対するいかなる有効なリンクキーもユーザテーブル９８に存在しなかったと判断したと想定した。
ここでは、認証モジュール８０が、有効なリンクキーが存在したと判断したと想定する。
この場合、認証モジュール８０は、ユーザテーブル９８（図５）にアクセスし、検証デバイス４０が多要求者対応であるか否かを判断する（ステップ１５０）。
そうでない場合、認証モジュール８０は接続要求を拒絶する（ステップ１４８）。
多要求者対応である場合、認証モジュール８０は、ユーザテーブル９８（図６）にアクセスし、検証デバイス４０へのアクセスが指定された要求者デバイスに制限されているか否かを判断する（ステップ１５２）。
【００５６】
アクセスが制限されている場合、認証モジュール８０は、要求者デバイス４２が承認されているか否かを判断する（ステップ１５４）。
そうである場合、認証モジュール８０は、ユーザテーブル９８にアクセスしてそれが要求者デバイス４２を識別するデータ（たとえばデバイスアドレス）を含むエントリ１００を含むか否かを判断する。
かかるエントリ１００が見つかると、要求者デバイス４２が承認される。
そうでない場合、それは承認されず、認証モジュール８０は接続要求を拒絶する（ステップ１４８）。
検証デバイス４０へのアクセスが制限されていない場合、または要求者デバイス４２が承認されている場合、認証モジュール８０は、上述したように、接続要求とともに提供されたＰＩＮデータが有効であるか否かを判断する（ステップ１４４）。
【００５７】
［結論］
図１Ａ〜図１Ｃの概略図は、本発明の実施形態を実施してもよい３つの例示的な環境を示す。
しかしながら、実施態様は、これらの環境に限定されない。
図２〜図７の図は、本発明のさまざまな実施形態の構造、機能および動作を示す。
複数のブロックを、プログラムとして定義する。
それらのブロックの各々は、全体としてまたは部分的に、指定された論理機能（複数可）を実施する１つまたは複数の実行可能命令を含むモジュール、セグメントまたはコードの一部を表してもよい。
各ブロックは、指定された論理機能（複数可）を実施する回路または複数の相互接続された回路を表してもよい。
【００５８】
また、本発明を、コンピュータプロセッサベースシステムまたはＡＳＩＣ（特定用途向け集積回路）、もしくはコンピュータ読取可能媒体からロジックをフェッチまたは取得しそこに含まれる命令を実行することができる他のシステム等の命令実行システムによるか、またはそれに関連して使用される任意のコンピュータ読取可能媒体において実施してもよい。
「コンピュータ読取可能媒体」は、命令実行システムによるかまたはそれに関連して使用されるプログラムおよびデータを含み、格納し、または保持することができる任意の媒体であってもよい。
コンピュータ読取可能媒体は、たとえば電子、磁気、光、電磁気、赤外線または半導体の媒体等の多くの物理媒体のうちの任意のものからなってもよい。
適当なコンピュータ読取可能媒体のより特定の例には、限定されないが、フロッピー（登録商標）ディスケットまたはハードドライブ等のポータブル磁気コンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、消去可能プログラマブルリードオンリメモリまたはポータブルコンパクトディスクがある。
【００５９】
図８のフローチャートは特定の実行の順序を示すが、その実行の順序は、図示されるものとは異なってもよい。
たとえば、２つ以上のブロックの実行の順序を、図示されている順序に対して入れ替えてもよい。
また、連続して示す２つ以上のブロックを、同時にまたは部分的に同時に実行してもよい。
かかる変形形態はすべて本発明の範囲内にある。
【００６０】
本発明を、上述した例示的な実施形態に関して示し説明した。
しかしながら、添付の特許請求の範囲において規定される本発明の精神および範囲から逸脱することなく、他の形態、詳細および実施形態を作成してもよい、ということを理解しなければならない。
【図面の簡単な説明】
【００６１】
【図１Ａ】本発明の実施形態を実施することができる例示的な環境を示す図である。
【図１Ｂ】本発明の実施形態を実施することができる例示的な環境を示す図である。
【図１Ｃ】本発明の実施形態を実施することができる例示的な環境を示す図である。
【図２】本発明の実施形態による、要求者および検証者の物理的および論理的構成要素を示すブロック図である。
【図３】本発明の実施形態による、セキュリティロジックプログラム要素を示すブロック図である。
【図４】本発明の実施形態によるＰＩＮテーブルを示す図である。
【図５】本発明の実施形態によるユーザテーブルを示す図である。
【図６】本発明の実施形態による接続ロジックプログラム要素を示すブロック図である。
【図７】本発明の実施形態による要求者ペアリングテーブルを示す図である。
【図８】本発明の実施形態による、リンクキーを生成し接続要求を認証するためにとられるステップを示す例示的なフローチャートである。
【符号の説明】
【００６２】
４０・・・検証デバイス、
４２・・・要求者デバイス、
４４，６２・・・機能要素、
４６，６４・・・ロジック、
４８，６６・・・メモリ、
５０，６８・・・接続インタフェース、
５２・・・プリントエンジン、
６０・・・セキュリティロジック、
７２・・・接続ロジック、
７６・・・ＰＩＮモジュール、
７８・・・キーモジュール、
８０・・・認証モジュール、
８２・・・ユーザモジュール、
８４・・・接続モジュール、
８６・・・発行モジュール、
８８・・・ＰＩＮテーブル、
９２・・・ＰＩＮデータ、
９４・・・アクセスデータ、
９６・・・満了データ、
９８・・・ユーザテーブル、
１０２・・・要求者ＩＤ、
１０３・・・キー、
１０４・・・アクセスデータ、
１０５・・・満了データ、
１０６・・・多要求者指標、
１０８・・・制限指標、
１１０・・・ＰＩＮモジュール、
１１２・・・キーモジュール、
１１４・・・接続モジュール、
１１６・・・ユーザインタフェース、
１１８・・・要求者ペアリングテーブル、
１２４・・・キー、
【図１Ａ】
2005174327.tif 000003
【図１Ｂ】
2005174327.tif 000004
【図１Ｃ】
2005174327.tif 000005
【図２】
2005174327.tif 000006
【図３】
2005174327.tif 000007
【図４】
2005174327.tif 000008
【図５】
2005174327.tif 000009
【図６】
2005174327.tif 000010
【図７】
2005174327.tif 000011
【図８】
2005174327.tif 000012