(57)【要約】【課題】他の通信機器との接続認証のための認証キーを保持する通信機器を低コストで提供する。また、通信機器が保持した認証キーが盗まれる可能性を従来よりも低くする。【解決手段】プリンタ３（及びデジタルカメラ１）は、ＥＥＰＲＯＭ１３等のような不揮発性記録媒体と、ＲＡＭ１５等のような揮発性記録媒体とを備える。プリンタ３は、通信相手であるデジタルカメラ１とのリンクキーと、デジタルカメラ１のＢＤアドレスとのペアを、通常はＲＡＭ１５に記録し、ボンディングモードが設定されているときにのみＥＥＰＲＯＭ１３に記録する。【選択図】　　　　図１
2004139295.tif 000002
【特許請求の範囲】
【請求項１】
他の通信機器との接続認証のための認証キーを保持する通信機器において、
揮発性記録媒体及び不揮発性記録媒体と、
他の通信機器との接続認証を行おうとするとき、前記他の通信機器の認証キーが前記揮発性記録媒体又は前記不揮発性記録媒体に記録されているか否かをチェックするチェック手段と、
前記チェック手段のチェックの結果、前記認証キーが前記揮発性記録媒体及び前記不揮発性記録媒体のどちらにも記録されていなければ、前記認証キーを生成する認証キー生成手段と、
前記生成された認証キーを、前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に選択的に記録する認証キー記録手段と、
前記チェック手段のチェックの結果、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に記録されていれば、その記録されている認証キーを用いて前記接続認証を行い、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらにも記録されていなければ、前記生成された認証キーを用いて前記接続認証を行う接続認証手段と
を備える通信機器。
【請求項２】
前記認証キー記録手段は、前記揮発性記録媒体には複数の他の通信機器にそれぞれ対応した複数の認証キーを記録し、前記不揮発性記録媒体には少なくとも一つの他の通信機器にそれぞれ対応した少なくとも一つの認証キーを記録する、
請求項１記載の通信機器。
【請求項３】
前記認証キー記録手段は、前記揮発性記録媒体に記録される認証キーが、前記不揮発性記録媒体に記録されている認証キーの数以上になるように、前記認証キーを記録する、
請求項１記載の通信機器。
【請求項４】
前記認証キー記録手段は、ユーザからの要求に応じて、或いは、前記他の通信機器の種類又は現在設定されている通信モードの種類に応じて、前記認証キーを前記揮発性記録媒体と前記不揮発性記録媒体のどちらに記録するかを選択する、
請求項１記載の通信機器。
【請求項５】
前記認証キー記録手段は、前記他の通信機器がゲストデバイスの場合には、前記認証キーを前記揮発性記録媒体に記録する、
請求項４記載の通信機器。
【請求項６】
前記認証キー記録手段は、前記認証キーを前記揮発性記録媒体に記録した後、一定時間が経過したら、その認証キーを前記揮発性記録媒体から消去する、
請求項１記載の通信機器。
【請求項７】
前記認証キー記録手段は、前記揮発性記録媒体の空きサイズが前記認証キーのデータサイズよりも小さい場合には、前記揮発性記録媒体に記録済みの１又は複数の別の認証キーの少なくとも１つを消去して、前記揮発性記録媒体において前記認証キーを記録できるだけの空き領域を確保する、
請求項１記載の通信機器。
【請求項８】
前記認証キー記録手段は、前記接続認証手段が行った接続認証が失敗であれば、前記不揮発性記録媒体又は前記揮発性記憶媒体に記録されている認証キーを消去する、
請求項１記載の通信機器。
【請求項９】
前記認証キー記録手段は、ユーザからの要求に応じて、或いは、或いは、前記他の通信機器の種類又は現在設定されている通信モードの種類に応じて、前記揮発性記録媒体に記録されている認証キーを消去して前記不揮発性記録媒体に記録する、又は、前記不揮発性記録媒体に記録されている認証キーを消去して前記揮発性記録媒体に記録する、
請求項１記載の通信機器。
【請求項１０】
他の通信機器との接続認証のための認証キーを保持するための方法において、
他の通信機器との接続認証を行おうとするとき、前記他の通信機器の認証キーが所定の揮発性記録媒体又は所定の不揮発性記録媒体に記録されているか否かをチェックするステップと、
前記チェックするステップでのチェックの結果、前記認証キーが前記揮発性記録媒体及び前記不揮発性記録媒体のどちらにも記録されていなければ、前記認証キーを生成するステップと、
前記生成された認証キーを、前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に選択的に記録するステップと、
前記チェックするステップでのチェックの結果、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に記録されていれば、その記録されている認証キーを用いて前記接続認証を行い、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらにも記録されていなければ、前記生成された認証キーを用いて前記接続認証を行うステップと
を有する方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、他の通信機器との接続認証のための認証キーを保持する通信機器に関する。
【０００２】
【従来の技術】
例えば、無線通信の規格の一つに、ブルートゥース（商標）がある。ブルートゥースの規格に従う無線通信では、通常、一方の機器と他方の機器との間で相互に接続認証が行われてから通信が行われる。その接続認証では、一方の機器と他方の機器との間で設定されたリンクキーが使用される。リンクキーは、２つの機器との間でボンディングが済んだ状態であれば各機器に設定されているし、そうでない状態であれば各機器に設定されていない。相手の機器に関するリンクキーが設定されていない場合には、ペアリングと呼ばれる手続きが２つの機器間で行われる。その手続では、各機器は、相手機器との間でリンクキーを設定して、そのリンクキーと、相手機器のブルートゥースデバイスアドレスとをペアにして保持する。これにより、一方の機器と他方の機器との間でボンディングが済んだ状態となる。従って、これ以降の接続認証では、ペアリング手続を行うことなく、不揮発性記録媒体に記録されているリンクキーとブルートゥースデバイスアドレスとのペアに基づいて接続認証することが可能になる。
【０００３】
各機器は、リンクキーとブルートゥースデバイスアドレスとのペアを、不揮発性記録媒体に記録する（例えば特許文献１参照）。
【０００４】
【特許文献１】
特開２００２−１８９５４３（段落３１参照）。
【０００５】
【発明が解決しようとする課題】
通常、ブルートゥースデバイスアドレスは６バイトあり、リンクキーは１６バイトある。このため、一つの機器について、リンクキーとブルートゥースデバイスアドレスとをペアにしたデータ（以下、「ペアデータ」と言う）を保持するとなると、少なくとも２２バイトの記録容量が必要となる。多数の機器とペアリング手続きを行うことなく接続認証するために多数の機器にそれぞれ対応した多数のペアデータを保持するとなると、当然、多くの記録容量が必要となる。このため、記録容量の多い不揮発性記録媒体が必要となる。しかし、不揮発性記録媒体は高価であるため、機器のコストが高くなってしまう。
【０００６】
また、不揮発性記録媒体に記録されたペアデータは、機器の電源が切られても消去されずに残っているので、機器の電源が切られてもペアデータが盗まれる可能性があり、セキュリティの面で必ずしも好ましいとは言えない。
【０００７】
以上の問題点は、ブルートゥースの規格に従う無線通信を行う通信機器に限らず、他の通信機器との接続認証のための認証キーを保持する種々の通信機器に存在し得る。
【０００８】
従って、本発明の目的は、他の通信機器との接続認証のための認証キーを保持する通信機器を低コストで提供することにある。
【０００９】
本発明の別の目的は、通信機器が保持した認証キーが盗まれる可能性を従来よりも低くすることにある。
【００１０】
【課題を解決するための手段】
本発明に従う通信機器は、他の通信機器との接続認証のための認証キーを保持する通信機器であって、揮発性記録媒体及び不揮発性記録媒体と、他の通信機器との接続認証を行おうとするとき、前記他の通信機器の認証キーが前記揮発性記録媒体又は前記不揮発性記録媒体に記録されているか否かをチェックするチェック手段と、前記チェック手段のチェックの結果、前記認証キーが前記揮発性記録媒体及び前記不揮発性記録媒体のどちらにも記録されていなければ、前記認証キーを生成する認証キー生成手段と、前記生成された認証キーを、前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に選択的に記録する認証キー記録手段と、前記チェック手段のチェックの結果、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらか一方に記録されていれば、その記録されている認証キーを用いて前記接続認証を行い、前記認証キーが前記揮発性記録媒体と前記不揮発性記録媒体のどちらにも記録されていなければ、前記生成された認証キーを用いて前記接続認証を行う接続認証手段とを備える。
【００１１】
本発明の好適な実施形態では、前記認証キー記録手段は、前記揮発性記録媒体には複数の他の通信機器にそれぞれ対応した複数の認証キーを記録し、前記不揮発性記録媒体には少なくとも一つの他の通信機器にそれぞれ対応した少なくとも一つの認証キーを記録する。
【００１２】
本発明の好適な実施形態では、前記認証キー記録手段は、前記揮発性記録媒体に記録される認証キーが、前記不揮発性記録媒体に記録されている認証キーの数以上になるように、前記認証キーを記録する。
【００１３】
本発明の好適な実施形態では、前記認証キー記録手段は、ユーザからの要求に応じて、或いは、前記他の通信機器の種類又は現在設定されている通信モードの種類に応じて、前記認証キーを前記揮発性記録媒体と前記不揮発性記録媒体のどちらに記録するかを選択する。具体的には、例えば、前記認証キー記録手段は、前記他の通信機器がゲストデバイス（例えば、短期の通信を目的とする機器、或いは、通信可能期間が限られている機器）の場合には、前記認証キーを前記揮発性記録媒体に記録する。
【００１４】
本発明の好適な実施形態では、前記認証キー記録手段は、前記認証キーを前記揮発性記録媒体に記録した後、一定時間が経過したら、その認証キーを前記揮発性記録媒体から消去する。
【００１５】
本発明の好適な実施形態では、前記認証キー記録手段は、前記揮発性記録媒体の空きサイズが前記認証キーのデータサイズよりも小さい場合には、前記揮発性記録媒体に記録済みの１又は複数の別の認証キーの少なくとも１つを消去して、前記揮発性記録媒体において前記認証キーを記録できるだけの空き領域を確保する。
【００１６】
本発明の好適な実施形態では、前記認証キー記録手段は、前記接続認証手段が行った接続認証が失敗であれば、前記不揮発性記録媒体又は前記揮発性記憶媒体に記録されている認証キーを消去する。
【００１７】
本発明の好適な実施形態では、前記認証キー記録手段は、ユーザからの要求に応じて、或いは、或いは、前記他の通信機器の種類又は現在設定されている通信モードの種類に応じて、前記揮発性記録媒体に記録されている認証キーを消去して前記不揮発性記録媒体に記録する、又は、前記不揮発性記録媒体に記録されている認証キーを消去して前記揮発性記録媒体に記録する。
【００１８】
本発明の通信機器に備えられる上記の複数の手段の少なくとも一つは、専用ハードウェア、プログラムされたコンピュータ、又はそれらの組合せのいずれによっても実現することができる。
【００１９】
【発明の実施の形態】
以下、図面を参照して、本発明の一実施形態に係る機器が適用されたプリンタを含んだシステムについて説明する。
【００２０】
図１は、本発明の一実施形態に係るシステムを示す。
【００２１】
インクジェットプリンタ３は、所定の通信規格に従う無線通信、例えばブルートゥースの規格に従う近距離型の無線通信を行うことができるように構成されている。具体的には、プリンタ３は、無線送受信部（ＲＦベースバンド）５と、制御パネル（ユーザインターフェース）７と、プリンタコントローラ９と、印刷機構１１と、ＥＥＰＲＯＭ１３等のような不揮発性記録媒体と、ＲＡＭ１５等のような揮発性記録媒体とを備えている。
【００２２】
無線送受信部５は、他の電子機器、例えばデジタルカメラ１から、ブルートゥースの規格に従う無線通信方式でデータを受信しそのデータをプリンタコントローラ９に渡したり、プリンタコントローラ９から受けたデータをデジタルカメラ１に送信したりする通信インターフェースである。すなわち、無線送受信部５を介して、デジタルカメラ１とプリンタコントローラ９との間でデータの授受が行われる。
【００２３】
制御パネル７は、プリンタ３に対してユーザ所望の制御を行わせるためのユーザインターフェースである。例えば、ユーザは、制御パネル７を操作して、ボンディングモードか否かを選択して設定することができる。ボンディングモードが設定されている場合には、後述するペアリングの際に、相手機器のブルートゥースデバイスアドレス（以下、「ＢＤアドレス」と言う）と、相手機器を認証するためのリンクキー（秘密鍵）とのペア（以下、「認証用ペアデータ」と言う）がＥＥＰＲＯＭ１３に記録される。一方、ボンディングモードが設定されていない場合には、後述するペアリングの際に、認証用ペアデータがＲＡＭ１５に記録される。
【００２４】
プリンタコントローラ９は、図示していないが、印刷ヘッド駆動回路や、モータ駆動回路や、ＲＡＭ１５及びＥＥＰＲＯＭ１３に対してデータを読み書きするためのデータ書込み回路や、外部データの入出力回路や、プリンタコントローラ９全体を制御するＣＰＵや、ＣＰＵのためのプログラムや固定データ等を格納したＲＯＭ等を備えている。プリンタコントローラ９は、印刷機構１１を制御したり、制御パネル７を介してユーザにボンディングモードが設定されているか否かに基づいて、無線送受信部５を介してデジタルカメラ１とデータの授受を行ったりする。プリンタコントローラ９とデジタルカメラ１との間で行われる通信処理の具体的な流れは後述する。
【００２５】
印刷機構１１は、図示しない印刷ヘッドを備えたキャリッジや、キャリッジを紙送り方向に対して垂直方向に往復させるためのキャリッジモータや、用紙を送り出す紙送りローラや、紙送りローラを回転させる紙送りモータ等から構成される。印刷機構１１の動作は、プリンタコントローラ９に制御される。
【００２６】
ＲＡＭ１５には、１又は複数の認証用ペアデータがプリンタコントローラ９によって記録される。ＥＥＰＲＯＭ１３には、認証用ペアデータが１つだけ記録される（複数個登録されても良い）。また、ＥＥＰＲＯＭ１３には、プリンタ３に特有のＰＩＮコードが予め記録されている。このＰＩＮコードは、後述するように、ペアリングの際に作成される初期化キーの作成に用いられる。
【００２７】
以下、デジタルカメラ１を送信側機（換言すればマスタ）、プリンタ３を受信側機（換言すればスレイブ）として、デジタルカメラ１とプリンタコントローラ９との間で行われる通信処理の流れを具体的に説明する。
【００２８】
まず、図２を参照して、デジタルカメラ１において行われる通信処理を説明する。
【００２９】
デジタルカメラ１は、所定の方法、例えば、自機のＢＤアドレスを電波に乗せて発信することでプリンタ３に接続した状態にする（ステップＳ１）（なお、接続する主体はプリンタ３であっても良い）。そして、デジタルカメラ１は、所定の方法で（例えば自機の設定に基づいて）認証要求するか否かを判断し（Ｓ２）、認証要求しないと判断した場合には（Ｓ２でＮ）、所定のデータ（例えばユーザが印刷したい写真画像のデータ）をプリンタ３に送信する（Ｓ７）。
【００３０】
Ｓ２において、認証要求すると判断した場合は、デジタルカメラ１は、プリンタ３から受信したプリンタ３のＢＤアドレスを含んだ認証用ペアデータが自機内のＥＥＰＲＯＭ又はＲＡＭ等の所定の記録媒体に記録されているか否かを判断、すなわちプリンタ３との間でボンディング済みか否かを判断する（Ｓ３）。ボンディング済みでなければ、後に詳述するように、デジタルカメラ１に入力されたＰＩＮコードを用いてペアリングを行い（Ｓ４）、ペアリングが完了したら、接続認証を行う（Ｓ５）。一方、Ｓ３において、ボンディグ済みと判断された場合には、ペアリングを行うことなく接続認証を行う（Ｓ５）。
【００３１】
このＳ５の接続認証において、プリンタ３を認証することができなかった場合には、デジタルカメラ１の動作はＳ１に戻り（若しくは、相手が不正な機器であると判断して切断し、又はペアリングを行い）、プリンタ３を認証できた場合には、デジタルカメラ１は、所定のデータ（例えばＪＰＥＧ形式の写真画像データ）をプリンタ３に送信する（Ｓ７）。その後、デジタルカメラ３は、適当なタイミングで（例えばプリンタ３にデータを送信し終えたときに）、切断を要求し、その要求に応答してプリンタ３から切断ＯＫを受ける。これにより、デジタルカメラ１とプリンタ３との接続状態が解除される。
【００３２】
以上が、デジタルカメラ１において行われる通信処理である。次に、図３を参照して、受信機側であるプリンタ３のプリンタコントローラ９が行う通信処理を説明する。
【００３３】
プリンタコントローラ９は、無線送受信部５を介してデジタルカメラ１からの接続に応答し（Ｓ１１）、デジタルカメラ１が認証を要求していなければ（Ｓ１２でＮ）、接続認証処理を行うことなく、データチャンネルをオープンし、デジタルカメラ１から上記所定のデータを受信する（Ｓ２４）。そして、プリンタコントローラ９は、受信したデータに基づいて、印刷機構１１を制御して印字処理を行い（Ｓ２５）、その後、切断処理を行う、具体的には、デジタルカメラ１からの切断要求に応答して切断ＯＫを返し、接続状態を解除する（なお、切断要求する主体は、必ずしもデジタルカメラ１ではなくプリンタ３であっても良い）。
【００３４】
Ｓ１２において、デジタルカメラ１が認証を要求していれば（Ｓ１２でＹ）、プリンタコントローラ９は、デジタルカメラ１のＢＤアドレスを含んだ認証用ペアデータがＥＥＰＲＯＭ１３に記録されているか否かを調べ（Ｓ１３）、記録されていれば（Ｓ１３でＹ）、つまりボンディングされた状態であれば、ペアリング手続を行うことなく接続認証処理を行う（Ｓ２１）。そして、認証に成功したら（Ｓ２２でＹ）、プリンタコントローラ９は、データ受信及び印字処理を行う（Ｓ２４、Ｓ２５）。一方、認証に失敗したら（Ｓ２２でＮ）、プリンタコントローラ９は、その接続認証処理で用いられた、ＥＥＰＲＯＭ１３に記録されているデジタルカメラ１の認証用ペアデータを、ＥＥＰＲＯＭ１３から消去して、その後、上述した切断処理を行う。
【００３５】
Ｓ１３において、デジタルカメラ１のＢＤアドレスを含んだ認証用ペアデータがＥＥＰＲＯＭ１３に記録されていなければ（Ｓ１３でＮ）、プリンタコントローラ９は、その認証用ペアデータがＲＡＭ１５に記録されているか否かを調べる（Ｓ１４）。記録されていれば（Ｓ１４でＹ）、すなわち、仮的にボンディングされた状態であれば、プリンタコントローラ９は、プリンタ３にボンディングモードが設定されているか否かを調べ（Ｓ１５）、それが設定されていなければ（Ｓ１５でＮ）、接続認証処理を行う（Ｓ２１）。プリンタコントローラ９は、認証に成功したら（Ｓ２２でＹ）、Ｓ２４以降の処理を行い、認証に失敗したら（Ｓ２２でＮ）、その接続認証処理で用いられた、ＲＡＭ１５に記録されているデジタルカメラ１の認証用ペアデータを、ＲＡＭ１５から消去して、その後、上述した切断処理を行う。
【００３６】
Ｓ１５において、ボンディングモードが設定されていれば（Ｓ１５でＹ）、プリンタコントローラ９は、ＲＡＭ１５に記録されているデジタルカメラ１の認証用ペアデータを、ＲＡＭ１５からＥＥＰＲＯＭ１３へ移動させて（すなわち、その認証用ペアデータをＲＡＭ１５から消去すると共にＥＥＰＲＯＭ１３に書き込んで）、それにより、プリンタ３の電源がターンオフされてもその認証用ペアデータがプリンタ３に残るようにする。
【００３７】
Ｓ１４において、デジタルカメラ１のＢＤアドレスを含んだ認証用ペアデータがＲＡＭ１５に記録されていなければ（Ｓ１４でＮ）、すなわち、デジタルカメラ１が未知の状態であれば、プリンタコントローラ９は、デジタルカメラ１との間でペアリング手続を行う（Ｓ１７）。ペアリング手続きが終了し、プリンタ３にボンディングモードが設定されていなければ（Ｓ１８でＮ）、プリンタコントローラ９は、デジタルカメラ１のＢＤアドレスと、デジタルカメラ１との間で設定されたリンクキー（例えば複合キー）とをペアにした認証用ペアデータをＲＡＭ１５に記録し、一方、ボンディングモードが設定されていれば（Ｓ１８でＹ）、その認証用ペアデータをＥＥＰＲＯＭ１３に記録する。その後、プリンタコントローラ９は、Ｓ２１以降の処理を行う。
【００３８】
以上が、プリンタコントローラ９が行う処理の流れである。以下、図４を参照して、ペアリング手続の具体的な流れを、図５を参照して、ボンディングが済んでいるときの具体的な流れを説明する。
【００３９】
図４は、デジタルカメラ１とプリンタコントローラ９との間で行われるペアリング手続きから切断処理までの流れを示す（なお、以下に説明する流れ（特にペアリング手続きの流れ）は一例に過ぎない）。
【００４０】
デジタルカメラ１は、ｉｎｑｕｉｒｙ信号を発信する、具体的には、電波に乗せて自機のＢＤアドレスを発信する（Ｓ５１）。ｉｎｑｕｉｒｙ信号を受信したプリンタコントローラ９は、ｒｅｓｐｏｎｓｅ信号をデジタルカメラ１に送信する、具体的には、プリンタ３のＢＤアドレス（例えばＥＥＰＲＯＭ１３に記録されている）をデジタルカメラ１に送信する（Ｓ５２）。このＳ５１及びＳ５２の一連の動作により、デジタルカメラ１もプリンタ３もお互いのＢＤアドレスを知ることができる。なお、変形例として、プリンタコントローラ９がｉｎｑｕｉｒｙ信号を発信して、デジタルカメラ１がｒｅｓｐｏｎｓｅ信号を返しても良い。
【００４１】
デジタルカメラ１は、プリンタコントローラ９から受信したプリンタ３のＢＤアドレスを含んだ認証用ペアデータがＥＥＰＲＯＭ１３にもＲＡＭ１５にも記録されていなければ、ペアリング開始信号をプリンタコントローラ９に送信する（Ｓ５３）（その認証用ペアデータがＥＥＰＲＯＭ１３又はＲＡＭ１５に記録されていれば完全に又は仮的にボンディング済みなので接続認証処理を開始する）。プリンタコントローラ９は、デジタルカメラ１からペアリング開始信号を受信したら、自機がペアリング手続きする機能を有していればＯＫ信号をデジタルカメラ１に返す（Ｓ５４）。なお、変形例として、プリンタコントローラ９がペアリング開始信号をデジタルカメラ１に送信して、デジタルカメラ１がＯＫ信号を返しても良い。
【００４２】
デジタルカメラ１は、プリンタコントローラ９からＯＫ信号を受信したら、イニシャルキー設定要求信号を送信する、具体的には、所定ビット（例えば１２８ビット）の乱数を生成してその乱数をプリンタコントローラ９に送信する（Ｓ５５）。プリンタコントローラ９は、受け入れＯＫを表す信号をデジタルカメラ１に返す（Ｓ５６）。
【００４３】
また、デジタルカメラ１は、自機のディスプレイ画面（図示せず）にＰＩＮコード入力画面を表示する。ＰＩＮコード入力画面にＰＩＮコードが入力された後、デジタルカメラ１は、所定のイニシャルキー生成アルゴリズムによって、イニシャルキー（初期化キーとも呼ばれる）を生成する（Ｓ５７）。具体的には、例えば、デジタルカメラ１は、Ｓ５５で送信した乱数と、入力されたＰＩＮコード（及びプリンタ３のＢＤアドレス）と、そのＰＩＮコードのコード長とを用いて、イニシャルキーを生成する。
【００４４】
同様に、プリンタコントローラ９も、上記所定のイニシャルキー生成アルゴリズムによって、イニシャルキーを生成する（Ｓ５８）。具体的には、例えば、プリンタコントローラ９は、デジタルカメラ１から受信した乱数と、ＥＥＰＲＯＭ１３に予め記録されているＰＩＮコード（及びプリンタ３のＢＤアドレス）と、そのＰＩＮコードのコード長とを用いて、イニシャルキーを生成する。
【００４５】
次に、デジタルカメラ１は、新たに乱数を生成し、その乱数を、Ｓ５７で生成したイニシャルキーで暗号化してからプリンタコントローラ９に送信する（Ｓ５９）。同様に、プリンタコントローラ９も、新たに乱数を生成し、その乱数を、Ｓ５８で生成したイニシャルキーで暗号化してからデジタルカメラ１に送信する（Ｓ６０）。
【００４６】
デジタルカメラ１は、プリンタコントローラ９から受信した、暗号化された乱数を用いて、プリンタ３とのリンクキー（例えば複合キー）を生成する。そのリンクキーの具体的な作成方法の例は以下のとおりである。すなわち、デジタルカメラ１は、プリンタコントローラ３からの暗号化された乱数を、Ｓ５７で生成したイニシャルキーで復号化し、復号化した乱数と、プリンタ３の（つまり相手機器の）ＢＤアドレスとを用いて、所定のアルゴリズムにより、第１のキーを作成する。また、デジタルカメラ１は、Ｓ５９で生成した乱数と、自機のＢＤアドレスとを用いて、上記所定のアルゴリズムにより、第２のキーを生成する。そして、デジタルカメラ１は、第１及び第２のキーとを用いて（例えば第１及び第２のキーとの排他的論理和より）、プリンタ３とのリンクキーを作成し、所定の記録媒体（例えばＥＥＰＲＯＭ又はＲＡＭ）に記録する（Ｓ６１）。
【００４７】
同様に、プリンタコントローラ９も、デジタルカメラ１から受信した、暗号化された乱数を用いて、デジタルカメラ１とのリンクキー（例えば複合キー）を生成する。そのリンクキーの具体的な作成方法の例は、デジタルカメラ１と同様である。すなわち、プリンタコントローラ９は、デジタルカメラ１からの暗号化された乱数を、Ｓ５８で生成したイニシャルキーで復号化し、復号化した乱数と、デジタルカメラ１の（つまり相手機器の）ＢＤアドレスとを用いて、上記所定のアルゴリズムにより、第３のキーを作成する。また、プリンタコントローラ９は、Ｓ６０で生成した乱数と、自機のＢＤアドレスとを用いて、上記所定のアルゴリズムにより、第４のキーを生成する。そして、プリンタコントローラ９は、第３及び第４のキーとを用いて（例えば第３及び第４のキーとの排他的論理和より）、デジタルカメラ１とのリンクキーを作成する（Ｓ６１）。そして、その後、プリンタコントローラ９は、ボンディングモードが設定されていれば、作成したリンクキーとプリンタ３のＢＤアドレスとをペアにした認証用ペアデータをＥＥＰＲＯＭ１３に記録し、ボンディングモードが設定されていなければ、その認証用ペアデータをＲＡＭ１５に記録する。なお、このように、認証用ペアデータを、ＥＥＰＲＯＭ１３等のような不揮発性記録媒体又はＲＡＭ１５のような揮発性記録媒体に記録することを選択的に行う機能は、プリンタコントローラ９だけでなく、通信相手であるデジタルカメラ１が備えていても良い。
【００４８】
続いて、図示しないが、デジタルカメラ１は、認証要求信号をプリンタコントローラ９へ送信し、プリンタコントローラ９は、認証要求を受け入れる旨を表す信号をデジタルカメラ１に返す。その後、デジタルカメラ１とプリンタコントローラ９との間で相互に接続認証処理が行われる。以下、具体的に説明する。
【００４９】
デジタルカメラ１が、乱数を生成してプリンタコントローラ９に送信する（Ｓ６３）。また、デジタルカメラ１は、その乱数と、プリンタ３に対応した認証用ペアデータ（すなわち、プリンタ３のＢＤアドレスと、プリンタ３とのリンクキー）とを用いて、別の所定のアルゴリズムにより、ＳＲＥＳ（Ｓｉｇｎａｌ　Ｒｅｓｕｌｔ）を生成する。
【００５０】
プリンタコントローラ９は、デジタルカメラ１からの乱数と、デジタルカメラ１に対応した認証用ペアデータ（すなわち、デジタルカメラ１のＢＤアドレスと、デジタルカメラ１とのリンクキー）とを用いて、上記別の所定のアルゴリズムにより、ＳＲＥＳを生成し、そのＳＲＥＳをデジタルカメラ１に送信する（Ｓ６４）。デジタルカメラ１は、自機が生成したＳＲＥＳと、プリンタコントローラ９から受信したＳＲＥＳとに基づいて（例えば比較照合して）、プリンタ３の認証を行う。
【００５１】
次に、プリンタコントローラ９が、乱数を生成してデジタルカメラ１に送信する（Ｓ６５）。また、プリンタコントローラ９は、その乱数と、デジタルカメラ１に対応した認証用ペアデータ（すなわち、デジタルカメラ１のＢＤアドレスと、デジタルカメラ１とのリンクキー）とを用いて、上記別の所定のアルゴリズムにより、ＳＲＥＳを生成する。
【００５２】
デジタルカメラ１は、プリンタコントローラ９からの乱数と、プリンタコントローラ９に対応した認証用ペアデータ（すなわち、プリンタコントローラ９のＢＤアドレスと、プリンタコントローラ９とのリンクキー）とを用いて、上記別の所定のアルゴリズムによりＳＲＥＳを生成し、そのＳＲＥＳをプリンタコントローラ９に送信する（Ｓ６６）。プリンタコントローラ９は、自機が生成したＳＲＥＳと、デジタルカメラ１から受信したＳＲＥＳとに基づいて、デジタルカメラ１の認証を行う。
【００５３】
これら相互に行われる接続認証において、例えばデジタルカメラ１にプリンタ３に対応した正確なＰＩＮコードが入力されなかった等の原因で、認証に成功しなかった場合には、デジタルカメラ１及びプリンタ３のＥＥＰＲＯＭ１３又はＲＡＭ１５に記録された認証用ペアデータは削除される。一方、上記の相互に行われた接続認証に成功した場合には、以下のような流れでデータの授受が行われる。
【００５４】
すなわち、デジタルカメラ１は、特定のデータチャネルのオープンをプリンタコントローラ９に要求し（Ｓ６７）、プリンタコントローラ９は受け入れＯＫを表す信号を返す（Ｓ６８）。そして、デジタルカメラ１は、オープンになったデータチャネルを利用して所定のデータ（例えばＪＰＥＧ形式の写真画像）をプリンタコントローラ９に送信し（Ｓ６９）、プリンタコントローラ９は受信ＯＫを表す信号を返す（Ｓ７０）。また、プリンタコントローラ９は、受信したデータに基づいて印刷処理を実行する。
【００５５】
デジタルカメラ１は、データの送信を終えた後、適当なタイミングで、ｄｉｓｃｏｎｎｅｃｔ信号（切断要求信号）をプリンタコントローラ９に送信し（Ｓ７１）、プリンタコントローラ９は要求受け入れＯＫを示し信号をデジタルカメラ１に返す（Ｓ７２）。これにより、デジタルカメラ１とプリンタコントローラ９との接続状態は解除される。
【００５６】
図５は、デジタルカメラ１とプリンタ３との間でボンディングが済んでいるときの、接続認証の流れの一例である。
【００５７】
デジタルカメラ１は、例えば、自機のディスプレイ画面に、既にボンディングが済んでいる機器（換言すれば、ＥＥＰＲＯＭ又はＲＡＭに記録されている１又は複数の認証用ペアデータ、又はその認証用ペアデータに対応する機器）のリストを一覧で表示し、そのリストから、ユーザ所望の機器、例えばプリンタ３が選択された場合には、自機及びプリンタ３のＢＤアドレスと共に接続要求をプリンタ３のプリンタコントローラ９に出す（Ｓ１０２）。プリンタコントローラ９は、デジタルカメラ１のＢＤアドレスを含んだ認証用ペアデータがＥＥＰＲＯＭ１３又はＲＡＭ１５に記録されていれば、接続ＯＫを示す信号をデジタルカメラ１に送信し（Ｓ１０３）、そうでない場合には所定の処理、例えばペアリング開始要求を示す信号をデジタルカメラ１に送信する。
【００５８】
プリンタコントローラ９に接続が許可された場合には、図４で説明した接続認証及びデータの授受と同様の処理が行われる（Ｓ１０４〜Ｓ１１５）。
【００５９】
以上が、本実施形態のシステムで行われるペアリング手続き及び接続認証処理等の流れである。なお、上述した流れはあくまでも一例であり、他の流れで行われても良い。例えば、接続認証で用いられるリンクキーは複合キーに限らず別種のキー、例えば単体キーであっても良い。
【００６０】
以上、上述した実施形態によれば、プリンタ３（及びデジタルカメラ１）は、相手機器とのリンクキーと相手機器のＢＤアドレスのペアを、通常はＲＡＭ１５に記録し、ボンディングモードが設定されているときにのみＥＥＰＲＯＭ１３に記録する。このため、多数の機器とボンディング済みの状態になっても、ＥＥＰＲＯＭ１３の使用領域を従来よりも少なくすることができる。ゆえに、多数の機器とボンディング済みにできるような機器にしたい場合であっても、ＥＥＰＲＯＭを大容量にしなくても済むので、低コストで、そのような機器を提供することができる。また、ＲＡＭ１５に記録された１又は複数の認証用ペアデータは、プリンタ３の電源が切られればＲＡＭ１５から消去されるので、認証用ペアデータが盗まれる可能性が低くなる。ＲＡＭ１５に記録する認証用ペアデータは、例えば、短期の利用を目的とした（或いは、プリンタ３を使う時間が限られている）ゲストデバイスとすれば、記録媒体の使用の面でもセキュリティの面でも合理的である。
【００６１】
以上、本発明の好適な実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。すなわち、本発明は、プリンタ３に限らず、他の通信機器と所定規格に従う有線又は無線の通信が可能であって、他の通信機器との接続認証のための認証キーを保持する種々の通信機器に適用し得る。
【００６２】
また、上記実施形態には、下記のような変形例が考えられる。
【００６３】
例えば、制御パネル７には、ボンディングモード、セミボンディグモード、ノンボンディングモード、推奨モードの４つの通信モードのうちのいずれかを選択して設定することができるようにしても良い。ボンディングモードが設定されている場合には、プリンタコントローラ９は、ペアリングの際に、相手機器に対応した認証用ペアデータをＥＰＲＯＭ１３に記録し、セミボンディングモードが設定されている場合には、その認証用ペアデータがＲＡＭ１５に記録する。また、ノンボンディングモードが設定されている場合には、プリンタコントローラ９は、その認証用ペアデータを、ＥＥＰＲＯＭ１３にもＲＡＭ１５にも記録せず、推奨モードが設定されている場合には、相手機器がゲストデバイス（例えば、短期間の通信ができれば良いとする機器）の場合には認証用ペアデータをＲＯＭ１５に記録し、相手機器がゲストデバイスでない場合には認証用ペアデータをＥＥＰＲＯＭ１３に記録する。
【００６４】
また、プリンタコントローラ９は、プリンタ３本体の電源が入りつづけている間、ＲＡＭ１５に記録されている認証用ペアデータをＲＡＭ１５に残しつづけても良いし、ＲＡＭ１５に記録してから一定時間（例えば予め決められている時間、或いはユーザに設定された時間又は時刻）が経過した認証用ペアデータのみをＲＡＭ１５から消去しても良い。
【００６５】
また、例えば、プリンタコントローラ９は、所定の場合に（例えば、ＲＡＭ１５に新たな認証用ペアデータを記録できるだけの空き領域がない場合に）、ＲＡＭ１５に記録されている複数の認証用ペアデータのうち特定の認証用ペアデータ（例えば最も古い認証用ペアデータ）を消去して、ＲＡＭ１５に新たな認証用ペアデータを記録できるだけの領域を確保するようにしても良い。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るシステムを示すブロック図。
【図２】送信側機において行われる通信処理のフローチャート。
【図３】受信側機において行われる通信処理のフローチャート。
【図４】デジタルカメラ１とプリンタコントローラ９との間で行われるペアリング手続きから切断処理までの流れを示す図。
【図５】デジタルカメラ１とプリンタ３との間でボンディングが済んでいるときの、接続認証の流れの一例を示す図。
【符号の説明】
１　デジタルカメラ
３　プリンタ
７　制御パネル
９　プリンタコントローラ
１３　ＥＥＰＲＯＭ
１５　ＲＡＭ
【図１】
2004139295.tif 000003
【図２】
2004139295.tif 000004
【図３】
2004139295.tif 000005
【図４】
2004139295.tif 000006
【図５】
2004139295.tif 000007