(57)【要約】【課題】  クライアントに実装しなければならない暗号鍵の数をさほど増やさずに、クライアントとサーバとの間の通信のセキュリティを確保する。【解決手段】  クライアント１０には、あらかじめ複数種類の復号鍵１〜３が記憶される。クライアント１１０には、あらかじめ複数種類の復号鍵７〜９が記憶される。サーバ２０の鍵記憶部には、あらかじめ複数種類の暗号鍵１〜９が記憶される。サーバ２０が有している暗号鍵のセットは、クライアント１０，１１０が有している復号鍵に対応する全ての暗号鍵を網羅している。クライアント１０，１１０がサーバ２０にデータのダウンロードを要求するときに、自身が有する復号鍵のセットを示す復号鍵管理番号セット１２，１１２をサーバ２０に申告する。サーバは、申告された復号鍵に対応する暗号鍵のセットの中から１つの暗号鍵を選択して情報の暗号化を行う。【選択図】  図８
2006197004.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置がクライアント装置からの要求に応じてデータをクライアント装置に送信するクライアント／サーバシステムにおいて、
前記クライアント装置は、
複数の復号鍵を記憶する復号鍵記憶手段と、
前記サーバ装置にデータを要求する際に、前記鍵記憶手段に記憶されている複数の復号鍵を示す復号鍵情報を前記サーバ装置に対して申告する復号鍵情報申告手段と、
前記サーバ装置から指定された復号鍵で前記サーバ装置から受信した暗号化データを復号する復号手段とを含み、
前記サーバ装置は、
複数の暗号鍵を記憶する暗号鍵記憶手段と、
前記クライアント装置から復号鍵情報を受信すると、前記暗号鍵記憶手段に記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する暗号鍵選択手段と、
前記暗号鍵選択手段が選択した暗号鍵に対応する復号鍵を指定する情報を前記クライアント装置に送信する復号鍵指定手段と、
前記暗号鍵選択手段が選択した暗号鍵で、前記クライアント装置から要求されたデータを暗号化して前記クライアント装置に送信する暗号化手段とを含む
ことを特徴とするクライアント／サーバシステム。
【請求項２】
暗号鍵記憶手段は、全てのクライアント装置の復号鍵記憶手段に記憶されている復号鍵に対応する暗号鍵を記憶する
請求項１記載のクライアント／サーバシステム。
【請求項３】
暗号鍵記憶手段は、各々のクライアント装置の復号鍵記憶手段に記憶されている復号鍵の数よりも多い数の暗号鍵を記憶する
請求項２記載のクライアント／サーバシステム。
【請求項４】
全てのクライアント装置の復号鍵記憶手段は、全てのクライアント装置が共通して有する共通復号鍵を記憶し、
サーバ装置の暗号鍵記憶手段は、前記共通復号鍵に対応する共通暗号鍵を記憶する
請求項１記載のクライアント／サーバシステム。
【請求項５】
暗号鍵選択手段は、復号鍵情報が示す復号鍵に対応した暗号鍵が暗号鍵記憶手段に存在しない場合には、共通暗号鍵を選択する
請求項４記載のクライアント／サーバシステム。
【請求項６】
サーバ装置がクライアント装置からの要求に応じてデータをクライアント装置に送信するクライアント／サーバシステムにおけるクライアント装置であって、
複数の復号鍵を記憶する復号鍵記憶手段と、
前記サーバ装置にデータを要求する際に、前記鍵記憶手段に記憶されている複数の復号鍵を示す復号鍵情報を前記サーバ装置に対して申告する復号鍵情報申告手段と、
前記サーバ装置から指定された復号鍵で前記サーバ装置から受信した暗号化データを復号する復号手段とを備えた
ことを特徴とするクライアント装置。
【請求項７】
サーバ装置がクライアント装置からの要求に応じてデータをクライアント装置に送信するクライアント／サーバシステムにおけるサーバ装置であって、
複数の暗号鍵を記憶する暗号鍵記憶手段と、
前記クライアント装置に記憶されている複数の復号鍵を示す復号鍵情報を当該クライアント装置から受信すると、前記暗号鍵記憶手段に記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する暗号鍵選択手段と、
前記暗号鍵選択手段が選択した暗号鍵に対応する復号鍵を指定する情報を前記クライアント装置に送信する復号鍵指定手段と、
前記暗号鍵選択手段が選択した暗号鍵で、前記クライアント装置から要求されたデータを暗号化して前記クライアント装置に送信する暗号化手段とを備えた
ことを特徴とするサーバ装置。
【請求項８】
暗号鍵記憶手段は、全てのクライアント装置の復号鍵記憶手段に記憶されている復号鍵に対応する暗号鍵を記憶する
請求項７記載のサーバ装置。
【請求項９】
サーバ装置がクライアント装置からの要求に応じて所定の暗号鍵でデータを暗号化してクライアント装置に送信するクライアント／サーバシステムにおける暗号化通信方法において、
前記クライアント装置が、前記サーバ装置にデータを要求する際に、自身が記憶している複数の復号鍵を示す復号鍵情報を前記サーバ装置に対して申告し、
前記サーバ装置が、前記クライアント装置から復号鍵情報を受信すると、記憶している暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択し、
前記サーバ装置が、選択した暗号鍵に対応する復号鍵を指定する情報を前記クライアント装置に送信し、
前記サーバ装置が、選択した暗号鍵で、前記クライアント装置から要求されたデータを暗号化して前記クライアント装置に送信し、
前記クライアント装置が、前記サーバ装置から指定された復号鍵で前記サーバ装置から受信した暗号化データを復号する
ことを特徴とするクライアント／サーバシステムにおける暗号化通信方法。
【請求項１０】
サーバ装置がクライアント装置からの要求に応じてデータをクライアント装置に送信するクライアント／サーバシステムにおけるクライアント装置に搭載されるプログラムであって、
前記クライアント装置が有するコンピュータに、
前記サーバ装置にデータを要求する際に、クライアント装置に記憶されている複数の復号鍵を示す復号鍵情報を前記サーバ装置に対して申告する処理と、
前記サーバ装置から指定された復号鍵で前記サーバ装置から受信した暗号化データを復号する処理とを
実行させるためのプログラム。
【請求項１１】
サーバ装置がクライアント装置からの要求に応じてデータをクライアント装置に送信するクライアント／サーバシステムにおけるサーバ装置に搭載されるプログラムであって、
前記サーバ装置が有するコンピュータに、
前記クライアント装置に記憶されている複数の復号鍵を示す復号鍵情報を当該クライアント装置から受信すると、サーバ装置に記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する処理と、
選択した暗号鍵に対応する復号鍵を指定する情報を前記クライアント装置に送信する処理と、
選択した暗号鍵で、前記クライアント装置から要求されたデータを暗号化して前記クライアント装置に送信する処理とを
実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントがサーバから暗号化されたデータを取得するクライアント／サーバシステム、そのようなクライアント／サーバシステムにおける暗号鍵選択方法およびプログラムに関する。
【背景技術】
【０００２】
クライアント装置（以下、クライアントという。）とサーバ装置（以下、サーバという。）との間でセキュリティ性を向上させたデータの送受信が行われる場合に、クライアントとサーバとの間に認証局を介在させる方式や、複雑な鍵交換を行う方式が用いられることがある。
【０００３】
しかし、比較的高機能のクライアントを用いるシステムに比べて、一般消費者向けの比較的安価なクライアントを用いたシステムでは、認証局を介在させる方式や複雑な鍵交換を行う方式を用いることは難しい。認証局と通信するための機能や複雑な鍵交換を行う機能をクライアントに実装すると、クライアントが高価になってしまうからである。
【０００４】
一般消費者向けの比較的安価な装置として例えばインターネット接続やＩＰ電話に利用されるブロードバンドルータがある。ブロードバンドルータを購入した消費者は、一般に、ブロードバンドルータに対する設定（パラメータ設定など）を行う必要がある。設定に際して、ブロードバンドルータをパーソナルコンピュータに接続し、パーソナルコンピュータから設定を行うことが一般的である。しかし、ユーザが誤設定を行ってしまう等の理由によって、ブロードバンドルータ自身がサーバにアクセスしてユーザ個別の設定情報をダウンロードして設定を行う仕組み、すなわち自動設定が、実現されつつある。
【０００５】
自動設定を行う場合に、ユーザ個別の設定情報がネットワーク上で通信されるので、セキュリティの確保が必要になってくる。すなわち、サーバから所定の情報をダウンロードするクライアントに位置づけられるブロードバンドルータを用いる場合には、サーバとの間で送受信される情報を暗号化する等の配慮が必要になってくる。
【０００６】
比較的安価なクライアントを用いたシステムでは、クライアントとサーバのそれぞれに、暗号化および復号のための鍵データ（以下、単に、鍵という。）をあらかじめ固定的に記憶させておく方式が用いられることがある。しかし、そのような方式を用いた場合には、鍵が漏洩する可能性が高くなり、セキュリティ性が低下する。
【０００７】
そこで、あらかじめクライアントに多種類の鍵（復号鍵）を記憶させておき、サーバが所定のルールに従って多種類の暗号鍵から１つの暗号鍵を選択し、クライアントに対して、選択した暗号鍵に対応する鍵を指定する方式が考案されている（例えば、特許文献１，２参照。）。その場合、サーバは選択した暗号鍵でデータを暗号化した上でクライアントに送信し、クライアントは、サーバから指定されている鍵で、サーバから受信した暗号化データを復号する。そのような方式によれば、常に同一の鍵が用いられるということを回避でき、セキュリティ性が向上する。
【０００８】
【特許文献１】特開２００３−２８３４８５号公報（段落００１５−００１６、図２）
【特許文献２】国際公開ＷＯ２００２／０７６０１１号公報（第１２頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献１，２に記載されている方式を用いる場合には、サーバは、クライアントが記憶している鍵の数と同数の暗号鍵を保持する必要がある。セキュリティ性を向上させるには暗号鍵の種類を多くすることが好ましいが、暗号鍵の種類を多くした場合には、クライアントが記憶しておくべき鍵の数も多くなってしまう。一般消費者向けの比較的安価なクライアントではメモリ容量をさほど多くすることができないので、鍵の数が増えることによってメモリ容量が消費され、クライアントが発揮すべき本来の機能を実現するためのプログラムに割り当てられるべきメモリ容量が減ってしまう可能性がある。
【００１０】
また、量産品として一般消費者に大量に販売されるようなクライアントについては、頻繁にモデルチェンジ（型変更）やバージョンアップがなされる。モデルチェンジやバージョンアップに際して、新たなクライアントに記憶される鍵の種類を、旧モデルや旧バージョンのクライアントに記憶される鍵の種類と異ならせる場合がある。すなわち、モデルチェンジやバージョンアップの機会に、鍵の更新が行われることがある。
【００１１】
すると、頻繁にモデルチェンジやバージョンアップがなされるようなクライアントを管理するサーバは、クライアントのモデルチェンジやバージョンアップが進むにつれて、膨大な数の暗号鍵を保持するようになってしまう可能性がある。クライアントが、サーバが記憶している暗号鍵の数と同数の鍵を保持する必要がある従来のシステムでは、クライアントが記憶しなければならない鍵の数も膨大になってしまう可能性がある。しかも、クライアントのモデルチェンジやバージョンアップがなされると、旧モデルや旧バージョンのクライアントに実装される鍵の数も増やさなくてはならないが、そのようなことは現実的でない。
【００１２】
そこで、本発明は、クライアントに実装しなければならない暗号鍵の数をさほど増やさずに、クライアントとサーバとの間の通信のセキュリティを確保することができるクライアント／サーバシステム、クライアント／サーバシステムにおける暗号鍵選択方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明によるクライアント／サーバシステムは、クライアントが、複数の復号鍵を記憶する復号鍵記憶手段と、サーバにデータを要求する際に、鍵記憶手段に記憶されている複数の復号鍵を示す復号鍵情報をサーバに対して申告する復号鍵情報申告手段と、サーバから指定された復号鍵でサーバから受信した暗号化データを復号する復号手段とを含み、サーバが、複数の暗号鍵を記憶する暗号鍵記憶手段と、クライアントから復号鍵情報を受信すると、暗号鍵記憶手段に記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する暗号鍵選択手段と、暗号鍵選択手段が選択した暗号鍵に対応する復号鍵を指定する情報をクライアントに送信する復号鍵指定手段と、暗号鍵選択手段が選択した暗号鍵で、クライアントから要求されたデータを暗号化してクライアントに送信する暗号化手段とを含むことを特徴とする。
【００１４】
暗号鍵記憶手段は、例えば、システム内の存在しうる全てのクライアントの復号鍵記憶手段に記憶されている復号鍵に対応する暗号鍵を全て記憶する。
【００１５】
暗号鍵記憶手段は、例えば、各々のクライアントの復号鍵記憶手段に記憶されている復号鍵の数よりも多い数の暗号鍵を記憶する。
【００１６】
全てのクライアントの復号鍵記憶手段が、全てのクライアントが共通して有する共通復号鍵を記憶し、サーバの暗号鍵記憶手段が、共通復号鍵に対応する共通暗号鍵を記憶するように構成されていてもよい。
【００１７】
暗号鍵選択手段は、例えば、復号鍵情報が示す復号鍵に対応した暗号鍵が暗号鍵記憶手段に存在しない場合には共通暗号鍵を選択する。
【００１８】
本発明によるクライアントは、サーバがクライアントからの要求に応じてデータをクライアントに送信するクライアント／サーバシステムにおけるクライアントであって、複数の復号鍵を記憶する復号鍵記憶手段と、サーバにデータを要求する際に、鍵記憶手段に記憶されている複数の復号鍵を示す復号鍵情報をサーバに対して申告する復号鍵情報申告手段と、サーバから指定された復号鍵でサーバから受信した暗号化データを復号する復号手段とを備えたことを特徴とする。
【００１９】
本発明によるサーバは、サーバがクライアントからの要求に応じてデータをクライアントに送信するクライアント／サーバシステムにおけるサーバであって、複数の暗号鍵を記憶する暗号鍵記憶手段と、クライアントに記憶されている複数の復号鍵を示す復号鍵情報をクライアントから受信すると、暗号鍵記憶手段に記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する暗号鍵選択手段と、暗号鍵選択手段が選択した暗号鍵に対応する復号鍵を指定する情報をクライアントに送信する復号鍵指定手段と、暗号鍵選択手段が選択した暗号鍵で、クライアントから要求されたデータを暗号化してクライアントに送信する暗号化手段とを備えたことを特徴とする。
【００２０】
サーバにおいて、暗号鍵記憶手段は、例えば、全てのクライアントの復号鍵記憶手段に記憶されている復号鍵に対応する暗号鍵を記憶する。
【００２１】
本発明によるクライアント／サーバシステムにおける暗号化通信方法は、クライアントが、サーバにデータを要求する際に、自身が記憶している複数の復号鍵を示す復号鍵情報をサーバに対して申告し、サーバが、クライアントから復号鍵情報を受信すると、記憶している暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択し、サーバが、選択した暗号鍵に対応する復号鍵を指定する情報をクライアントに送信し、サーバが、選択した暗号鍵で、クライアントから要求されたデータを暗号化してクライアントに送信し、クライアントが、サーバから指定された復号鍵でサーバから受信した暗号化データを復号することを特徴とする。
【００２２】
本発明によるクライアントに搭載されるプログラムは、クライアントが有するコンピュータに、サーバにデータを要求する際に、クライアントに記憶されている複数の復号鍵を示す復号鍵情報をサーバに対して申告する処理と、サーバから指定された復号鍵でサーバから受信した暗号化データを復号する処理とを実行させることを特徴とする。
【００２３】
本発明によるサーバに搭載されるプログラムは、サーバが有するコンピュータに、クライアントに記憶されている複数の復号鍵を示す復号鍵情報を当該クライアントから受信すると、サーバに記憶されている暗号鍵から、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する処理と、選択した暗号鍵に対応する復号鍵を指定する情報をクライアントに送信する処理と、選択した暗号鍵で、クライアントから要求されたデータを暗号化してクライアントに送信する処理とを実行させることを特徴とする。
【発明の効果】
【００２４】
本発明によれば、クライアントに実装しなければならない暗号鍵の数をさほど増やさずに、クライアントとサーバとの間の通信のセキュリティを確保することができる。従って、一般消費者向けの比較的安価なクライアントを用いる場合にも、セキュリティ性を向上させた暗号化通信を実現することができる。
【発明を実施するための最良の形態】
【００２５】
実施の形態１．
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明の第１の実施の形態を示すブロック図である。図１に示す構成では、クライアント１０が、通信ネットワーク３０を介してサーバ２０と通信可能に接続される。通信ネットワーク３０は、ＡＤＳＬ回線などのアクセスネットワークとインターネットとを含む。
【００２６】
クライアント１０は、例えば、ブロードバンドルータ等のカスタマ構内設備（ＣＰＥ：Ｃｕｓｔｏｍｅｒ  Ｐｒｅｍｉｓｅｓ  Ｅｑｕｉｐｍｅｎｔ）である。クライアント１０がブロードバンドルータ等である場合には、クライアント１０は、ユーザにインターネット接続やＩＰ電話などのサービスを提供する機能を備える。図１には、ユーザが使用する端末として、クライアント１０にＬＡＮで接続されたパーソナルコンピュータ４１およびＩＰ電話機４２が例示されている。
【００２７】
また、サーバ２０は、ユーザ個別のインターネット接続やＩＰ電話利用のための設定情報を格納したデータベースを備える。なお、図１では１つのクライアント１０のみが図示されているが、システム内には多数のクライアントが存在する。
【００２８】
図２は、クライアント１０の機能構成の一例を示すブロック図である。図２に例示する構成では、クライアント１０は、ユーザが指示入力を行うためのキー等を有する指示入力部１０１、装置全体の制御を行う装置制御部１０２、ＬＡＮ経由で他の端末と通信を行うとともに通信ネットワーク３０を介してサーバ２０と通信を行う際のプロトコル制御等を行う通信制御部１０３、ダウンロードした設定情報や指示入力部１０１に入力された情報を記憶する設定情報記憶部１０４、、複数種類の復号鍵を記憶する鍵記憶部１０５、および暗号化データを復号する復号部１０６を含む。
【００２９】
なお、装置制御部１０２、通信制御部１０３におけるプロトコル制御等を行う部分、および復号部１０６は、クライアント１０に組み込まれたマイクロコンピュータ（ＣＰＵ）とプログラムとで実現される。また、復号鍵を示す復号鍵情報をサーバ２０に対して申告する復号鍵情報申告手段は、装置制御部１０２で実現されている。
【００３０】
図３は、サーバ２０の機能構成の一例を示すブロック図である。図３に例示する構成では、サーバ２０は、暗号鍵の管理等を行う制御部２０１、通信ネットワーク３０を介してクライアント１０と通信を行う際のプロトコル制御等を行う通信制御部２０２、複数種類の暗号鍵を記憶する鍵記憶部２０３、各クライアントの設定情報等を記憶しているデータベース２０４、および設定情報等のデータを暗号化する処理を行う暗号化部２０５を含む。
【００３１】
なお、制御部２０１、通信制御部２０２におけるプロトコル制御等を行う部分、および暗号化部２０５は、サーバ２０に組み込まれたＣＰＵとプログラムとで実現される。また、復号鍵情報が示す復号鍵に対応した暗号鍵を選択する暗号鍵選択手段、および選択した暗号鍵に対応する復号鍵を指定する情報をクライアント１０に送信する復号鍵指定手段は、制御部２０１で実現されている。
【００３２】
図４は、ネットワーク３０を介するクライアント１０とサーバ２０との間の通信方式の一例を示す説明図である。図４に示す例では、クライアント１０は、ＨＴＴＰリクエストによってサーバ２０にアクセスして設定情報等のデータのダウンロード要求を行う。サーバ２０は、ＨＴＴＰレスポンスによって、設定情報等のデータをクライアント１０に送信する。
【００３３】
なお、ここでは、ＨＴＴＰを利用してクライアント１０がデータをダウンロードする場合を例示するが、ＨＴＴＰＳ、ＴＥＬＮＥＴ、ＦＴＰなど他の方式によってもよい。
【００３４】
図５は、第１の実施の形態での暗号化通信方法を説明するための説明図である。
【００３５】
図５に示すように、クライアント１０の鍵記憶部１０５には、あらかじめ複数種類の復号鍵が復号鍵管理番号に対応して記憶される。図６に示す例では、鍵記憶部１０５には、復号鍵管理番号１〜Ｎのそれぞれに対応した各復号鍵１〜復号鍵Ｎが記憶されている。サーバ２０の鍵記憶部２０３には、あらかじめ複数種類の暗号鍵が暗号鍵管理番号に対応して記憶される。図６に示す例では、鍵記憶部２０３には、暗号鍵管理番号１〜Ｘのそれぞれに対応した各暗号鍵１〜暗号鍵Ｘが記憶されている。ここで、Ｎ＜Ｘである。
【００３６】
また、図６に示すように、復号鍵ｎ（図６に示す例では、ｎ＝１〜３）は、暗号鍵ｎに対応し、復号鍵管理番号ｎは、暗号鍵管理番号ｎに対応している。すなわち、暗号鍵ｎで暗号化された情報は、復号鍵ｎで復号可能である、さらに、図５および図６に示すように、サーバ２０の鍵記憶部２０３に記憶されている暗号鍵の数は、クライアント１０の鍵記憶部１０５に記憶されている復号鍵の数よりも多く、かつ、サーバ２０の鍵記憶部２０３には、クライアント１０の鍵記憶部１０５に記憶されている全ての復号鍵に対応する暗号鍵が記憶されている。すなわち、サーバ２０が有している暗号鍵のセットは、クライアント１０が有している復号鍵に対応する全ての暗号鍵を網羅している。
【００３７】
図５に示すように、クライアント１０は、サーバ２０に対して情報のダウンロードを要求する際に、まず、復号鍵セット１２におけるそれぞれの復号鍵１〜Ｎに一意に対応付けられている復号鍵管理番号１〜Ｎのそれぞれを包含する復号鍵管理番号セット（復号鍵情報）１１をサーバ２０に送信する。
【００３８】
サーバ２０は、暗号鍵セット２２におけるそれぞれの暗号鍵１〜Ｘに一意に対応付けられている暗号鍵管理番号１〜Ｘのそれぞれを包含する暗号鍵管理番号セット２１を記憶している。サーバ２０は、クライアント１０から復号鍵管理番号セット１１が通知されると、復号鍵管理番号セット１１に含まれる複数の番号に対応する暗号鍵１〜Ｎの中から１つの暗号鍵を選択する。図５には、暗号鍵Ａが選択された場合が例示されている。
【００３９】
サーバ２０は、復号鍵を指定する情報として、選択した暗号鍵Ａの暗号鍵管理番号Ａ（復号鍵管理番号Ａでもある。）をクライアント１０に通知する。続いて、要求されたデータを、暗号鍵Ａで暗号化して暗号化データとしてクライアント１０に送信する。クライアント１０は、暗号化データを受信したら、サーバ２０から通知されている復号鍵管理番号Ａに対応する復号鍵Ａで暗号化データを復号する。
【００４０】
次に、図７のシーケンス図を参照して、クライアント／サーバシステムの動作を詳細に説明する。
【００４１】
サーバ２０におけるデータベース２０４には、それぞれのクライアント毎に、個別の設定情報があらかじめ記憶される。例えば、ユーザがクライアント１０を購入したときに、クライアント１０を販売した販売店は、サーバ２０の管理者にユーザの個別情報を通知する。サーバ２０の管理者は、通知された個別情報に応じてクライアント１０に設定されるべき設定情報を作成し、データベース２０４に記憶させる。
【００４２】
クライアント１０において、サーバ２０と接続するためのＩＤおよびパスワードが設定情報記憶部１０４に記憶される。ＩＤおよびパスワードは、販売店においてクライアント１０に設定されるようにしてもよいし、ＩＤおよびパスワードを発行されたユーザが、クライアント１０の指示入力部１０１から入力するようにしてもよい。また、クライアント１０の鍵記憶部１０５には、図５に例示したような復号鍵セット１２および復号鍵管理番号セット１１が、あらかじめ記憶されている。
【００４３】
ユーザは、クライアント１０に対する設定を行うときに、例えば、指示入力部１０１からその旨の要求を入力する（ステップＳ１）。クライアント１０の装置制御部１０２は、要求に応じて、設定情報記憶部１０４に記憶されているＩＤおよびパスワードを、通信制御部１０３および通信ネットワーク３０を介してサーバ２０に送信する（ステップＳ２）。
【００４４】
サーバ２０の制御部２０１は、ＩＤおよびパスワードを受信すると、クライアント１０が正規のユーザのものか否か認証し（ステップＳ３）、認証に成功すれば、認証ＯＫを示す情報を、通信制御部２０２および通信ネットワーク３０を介してクライアント１０に送信する（ステップＳ４）。
【００４５】
クライアント１０の装置制御部１０２は、通信制御部１０３を介して認証ＯＫを示す情報を受信すると、データを要求する旨と鍵記憶部１０５に記憶されている復号鍵管理番号セット１１（復号鍵管理番号１〜復号鍵管理番号Ｎを含む。）とを、通信制御部１０３および通信ネットワーク３０を介してサーバ２０に送信する（ステップＳ５）。
【００４６】
サーバ２０の制御部２０１は、通信制御部２０２を介して、データを要求する旨と復号鍵管理番号セット１１とを受信すると、復号鍵管理番号セット１１に含まれている番号を認識する（ステップＳ６）。そして、それらの番号に対応する暗号鍵管理番号１〜Ｎを暗号鍵管理番号セット２１（暗号鍵管理番号１〜暗号鍵管理番号Ｘを含む。）から抽出し、所定のルールに従って、抽出した暗号鍵管理番号１〜Ｎから１つの暗号鍵管理番号を選択する（ステップＳ７）。なお、暗号鍵管理番号と暗号鍵とは一意に対応しているので、暗号鍵管理番号を選択することは、暗号鍵を選択することと等価である。また、所定のルールとして、例えば乱数を発生させ乱数にもとづいて暗号鍵管理番号を選択する方法があるが、その他の方法を用いてもよい。
【００４７】
そして、制御部２０１は、選択した暗号鍵管理番号を、通信制御部２０２および通信ネットワーク３０を介してクライアント１０に送信する（ステップＳ８）。なお、図６に示すように、暗号鍵管理番号と復号鍵番号とは対応しているので、選択した暗号鍵管理番号をクライアント１０に送信することによって、復号鍵番号をクライアント１０に送信したことになる。
【００４８】
制御部２０１は、クライアント１０から要求された情報、例えばクライアント１０の個別の設定情報をデータベース２０４から出力させる。そして、暗号化部２０５は、データベース２０４から出力された情報を、制御部２０１が選択した暗号鍵で暗号化して（ステップＳ９）、暗号化データを、通信制御部２０２および通信ネットワーク３０を介してクライアント１０に送信する（ステップＳ１０）。
【００４９】
クライアント１０の復号部１０６は、通信制御部１０３を介して暗号化データを受信すると、既に受信している復号鍵番号（ステップＳ８参照）に対応する復号鍵で暗号化データを復号する（ステップＳ１１）。そして、復号して得られた情報を、設定情報記憶部１０４に記憶させる（ステップＳ１２）。
【００５０】
以上のようにして、クライアント１０は、ユーザから設定情報を入力されることなく、自身でサーバ２０にアクセスして設定情報を取得することができる。従って、ユーザによる誤設定は生じない。また、ユーザ個別の設定情報は、暗号化されて送信されてくるので、他者に設定情報が漏れる可能性が低減する。さらに、クライアント１０がサーバ２０からデータをダウンロードする際に、常に同じ暗号鍵が用いられるということはないので、セキュリティ性が向上する。
【００５１】
なお、ここでは、システム内に多数存在するクライアント１０は、それぞれ、同じ復号鍵セット１２を記憶していることを想定している。しかし、複数のクライアント１０の間で、記憶している復号鍵の種類が異なっている場合でも本発明を適用することができる。
【００５２】
図８は、複数のクライアント１０，１１０を明示して、本実施の形態を説明するための説明図である。図８に示す例では、クライアント１０の鍵記憶部１０５には、復号鍵管理番号１，２，３を含む復号鍵管理番号セット１１が記憶され、復号鍵１，２，３を含む復号鍵セット１２が記憶されている。また、クライアント１１０の鍵記憶部１０５には、復号鍵管理番号７，８，９を含む復号鍵管理番号セット１１１が記憶され、復号鍵７，８，９を含む復号鍵セット１１２が記憶されている。なお、図８には１つのクライアント１０と１つのクライアント１１０のみが例示されているが、システム内には多数のクライアント１０および多数のクライアント１１０が存在しうる。
【００５３】
サーバ２０の鍵記憶部２０２には、暗号鍵番号１〜９を含む暗号鍵管理番号セット２１が記憶され、暗号鍵１〜９を含む暗号鍵セット２２が記憶されている。暗号鍵管理番号セット２１に含まれる番号は、クライアント１０における復号鍵セット１２に含まれる番号およびクライアント１１０における復号鍵セット１１２に含まれる番号を網羅している。すなわち、サーバ２０は、全てのクライアントが有する復号鍵に対応する暗号鍵を有している。
【００５４】
クライアント１０は、サーバ２０に対して情報のダウンロードを要求する際に、まず、復号鍵セット１２におけるそれぞれの復号鍵１〜３に一意に対応付けられている復号鍵管理番号１〜３のそれぞれを包含する復号鍵管理番号セット１１をサーバ２０に送信する。
【００５５】
サーバ２０は、クライアント１０から復号鍵管理番号セット１１が通知されると、復号鍵管理番号セット１１に含まれる複数の番号に対応する暗号鍵１〜３の中から１つの暗号鍵を選択する。図８には、暗号鍵２が選択された場合が例示されている。
【００５６】
サーバ２０は、選択した暗号鍵２の暗号鍵管理番号２（復号鍵管理番号２でもある。）をクライアント１０に通知する。続いて、要求されたデータを、暗号鍵２で暗号化して暗号化データとしてクライアント１０に送信する。クライアント１０は、暗号化データを受信したら、サーバ２０から通知されている復号鍵管理番号２に対応する復号鍵２で暗号化データを復号する。
【００５７】
クライアント１１０は、サーバ２０に対して情報のダウンロードを要求する際に、まず、復号鍵セット１１２におけるそれぞれの復号鍵７〜９に一意に対応付けられている復号鍵管理番号７〜９のそれぞれを包含する復号鍵管理番号セット１１１をサーバ２０に送信する。
【００５８】
サーバ２０は、クライアント１１０から復号鍵管理番号セット１１１が通知されると、復号鍵管理番号セット１１１に含まれる複数の番号に対応する暗号鍵７〜９の中から１つの暗号鍵を選択する。図８には、暗号鍵８が選択された場合が例示されている。
【００５９】
サーバ２０は、選択した暗号鍵８の暗号鍵管理番号８（復号鍵管理番号８でもある。）をクライアント１１０に通知する。続いて、要求されたデータを、暗号鍵８で暗号化して暗号化データとしてクライアント１１０に送信する。クライアント１１０は、暗号化データを受信したら、サーバ２０から通知されている復号鍵管理番号８に対応する復号鍵８で暗号化データを復号する。
【００６０】
以上のようにして、ユーザ個別の設定情報は、暗号化されて送信されてくるので、他者に設定情報が漏れる可能性が低減する。さらに、クライアント１０，１１０がサーバ２０から情報をダウンロードする際に、常に同じ暗号鍵が用いられるということはないので、セキュリティ性が向上する。
【００６１】
図８に示されたようなシステムの形態は、例えば、クライアント１０としてのブロードバンドルータがバージョンアップされてクライアント１１０となったような場合に生じうる。すなわち、図８に示す例は、例えば、暗号鍵１〜３を用いる旧バージョンに対して、バージョンアップに際して暗号鍵７〜９を用いるようにした場合の例である。なお、ここでは、システム内に多数存在するクライアント１０は、それぞれ、同じ復号鍵セット１２を記憶していることを想定し、システム内に多数存在するクライアント１１０は、それぞれ、同じ復号鍵セット１１２を記憶していることを想定している。
【００６２】
ブロードバンドルータなど、頻繁にファームウェアのバージョンアップ（特に復号鍵の変更を伴う）が行われうるクライアントが存在するシステムでは、サーバ２０が、各バージョンのクライアントに合わせて暗号鍵を管理することは難しい。しかし、本実施の形態では、クライアントが、自身が有している復号鍵の種類をサーバ２０に申告するので、サーバ２０における暗号鍵の管理は容易である。そして、例えば、バージョンアップによって暗号鍵が変更されたような場合に、変更後の暗号鍵のセットを、サーバ２０の鍵記憶部２０２に追加することによって、システム内のあらゆるバージョンのクライアントと暗号化通信を行うことができる。すなわち、システム内に、異なるファームウェアバージョンのクライアントが混在していても、サーバ２０に対する鍵追加のみで、全てのクライアントが、サーバ２０と暗号化通信を行うことができる。
【００６３】
実施の形態２．
図９は、第２の実施の形態での暗号化通信方法を説明するための説明図である。図９に示すように、システム内の全てのクライアント１０，１１０は、基本鍵として復号鍵０（共通復号鍵）を有している。また、サーバ２０は、基本鍵である暗号鍵０（共通暗号鍵）を有している。復号鍵０は暗号鍵０に対応し、暗号鍵０で暗号化された暗号化データは、復号鍵０で復号可能である。ここで、基本鍵とは、システム内の全てのクライアントが共通に有している復号鍵すなわち共通復号鍵、およびその復号鍵に対応する暗号鍵すなわち共通暗号鍵を意味する。
【００６４】
図９に示す例では、サーバ２０の鍵記憶部２０２には、暗号鍵番号０〜４を含む暗号鍵管理番号セット２１が記憶され、暗号鍵０〜４を含む暗号鍵セット２２が記憶されている。
【００６５】
クライアント１０は、サーバ２０に対して情報のダウンロードを要求する際に、まず、復号鍵セット１２におけるそれぞれの復号鍵０〜２に一意に対応付けられている復号鍵管理番号０〜２のそれぞれを包含する復号鍵管理番号セット１１をサーバ２０に送信する。
【００６６】
サーバ２０は、クライアント１０から復号鍵管理番号セット１１が通知されると、復号鍵管理番号セット１１に含まれる複数の番号に対応する暗号鍵０〜２の中から１つの暗号鍵を選択する。図９には、暗号鍵２が選択された場合が例示されている。
【００６７】
サーバ２０は、選択した暗号鍵２の暗号鍵管理番号２（復号鍵管理番号２でもある。）をクライアント１０に通知する。続いて、要求されたデータを、暗号鍵２で暗号化して暗号化データとしてクライアント１０に送信する。クライアント１０は、暗号化データを受信したら、サーバ２０から通知されている復号鍵管理番号２に対応する復号鍵２で暗号化データを復号する。
【００６８】
クライアント１１０は、サーバ２０に対して情報のダウンロードを要求する際に、まず、復号鍵セット１１２におけるそれぞれの復号鍵０，８，９に一意に対応付けられている復号鍵管理番号０，８，９のそれぞれを包含する復号鍵管理番号セット１１１をサーバ２０に送信する。
【００６９】
サーバ２０は、クライアント１１０から復号鍵管理番号セット１１１が通知されると、復号鍵管理番号セット１１１に含まれる複数の番号に対応する暗号鍵０，８，９の中から１つの暗号鍵を選択することを試みる。しかし、図９に示す例では、暗号鍵８，９は存在しないので、サーバ２０は、暗号鍵０を選択する。
【００７０】
サーバ２０は、選択した暗号鍵０の暗号鍵管理番号０（復号鍵管理番号０でもある。）をクライアント１１０に通知する。続いて、要求されたデータを、暗号鍵０で暗号化して暗号化データとしてクライアント１１０に送信する。クライアント１１０は、暗号化データを受信したら、サーバ２０から通知されている復号鍵管理番号０に対応する復号鍵０で暗号化データを復号する。
【００７１】
クライアントがバージョンアップされるときに、バージョンアップ後のクライアント（クライアント１１０とする。）には、必ず復号鍵０が記憶される。もちろん、最初のバージョンのクライアント（クライアント１０とする。）にも復号鍵０が記憶される。また、サーバ２０は、暗号鍵０を基本鍵として記憶する。そのような構成によれば、サーバ２０において、バージョンアップの対応が間に合わないような期間においても、バージョンアップ後のクライアント１１０はサーバ２０と暗号化通信を行うことができる。
【００７２】
以上に説明したように、上記の各実施の形態では、クライアント１０，１１０がサーバ２０にデータのダウンロードを要求するときに、自身が有する復号鍵のセットを示す復号鍵管理番号セット１２，１１２をサーバ２０に申告する。サーバは、申告された復号鍵に対応する暗号鍵のセットの中から１つの暗号鍵を選択して情報の暗号化を行う。従って、サーバ２０は、システム内のクライアント１０，１１０の属性（バージョンなど）を管理することなく、システム内の全てのクライアント１０，１１０と暗号化通信を行うことができる。
【００７３】
なお、上記の各実施の形態では、クライアント１０，１１０としてブロードバンドルータを想定したが、本発明を適用可能なクライアント１０，１１０はブロードバンドルータに限られず、他の装置であってもよい。
【産業上の利用可能性】
【００７４】
本発明は、クライアントがサーバから暗号化されたデータを取得するクライアント／サーバシステムに適用可能であり、特に、頻繁にモデルチェンジやバージョンアップがなされるクライアントを使用するシステムに好適に適用可能である。
【図面の簡単な説明】
【００７５】
【図１】本発明の第１の実施の形態を示すブロック図である。
【図２】クライアントの機能構成の一例を示すブロック図である。
【図３】サーバの機能構成の一例を示すブロック図である。
【図４】クライアントとサーバとの間の通信方式の一例を示す説明図である。
【図５】第１の実施の形態での暗号化通信方法を説明するための説明図である。
【図６】暗号鍵と復号鍵との対応関係を説明するために説明図である。
【図７】クライアント／サーバシステムの動作を示すシーケンス図である。
【図８】複数のクライアントを明示して、本実施の形態を説明するための説明図である。
【図９】第２の実施の形態での暗号化通信方法を説明するための説明図である。
【符号の説明】
【００７６】
１０，１１０  クライアント
２０    サーバ
３０    通信ネットワーク
４１    パーソナルコンピュータ
４２    ＩＰ電話機
１１，１１１  復号鍵管理番号セット（復号鍵情報）
１２，１１２  復号鍵セット
２１  暗号鍵管理番号セット
２２  暗号鍵セット
【図１】
2006197004.tif 000003
【図２】
2006197004.tif 000004
【図３】
2006197004.tif 000005
【図４】
2006197004.tif 000006
【図５】
2006197004.tif 000007
【図６】
2006197004.tif 000008
【図７】
2006197004.tif 000009
【図８】
2006197004.tif 000010
【図９】
2006197004.tif 000011