(57)【要約】【課題】  第三者がサービス提供者であるサーバをネットワークに接続しネットワーク上のサービス利用者であるクライアントが第三者のサービス提供者を検索し利用してしまうことによってデータが第三者へ漏洩してしまうことが考えられる。【解決手段】  所望のサービスを提供可能なサービス提供サーバを検索すべくサービス検索要求をネットワーク上に送信し、当該サービス検索要求に対して複数のサービス提供サーバからの応答を受信し、何れかのサービス提供サーバを使用するサーバとして選択する情報処理装置と、前記サービス提供サーバとを有するネットワークシステムであって、前記サービス検索要求は暗号化されたデータとして情報処理装置とサービス提供装置との間で送信される。【選択図】        図５
2006173904.tif 000002
【特許請求の範囲】
【請求項１】
所望のサービスを提供可能なサービス提供サーバを検索すべくサービス検索要求をネットワーク上に送信し、当該サービス検索要求に対して複数のサービス提供サーバからの応答を受信し、何れかのサービス提供サーバを使用するサーバとして選択する情報処理装置と、前記サービス提供サーバとを有するネットワークシステムであって、
サービス提供サーバは、データを暗号化するための第一の鍵を保持する保持手段と、
前記第一の鍵を用いてデータを暗号化する暗号化手段と、
前記情報処理装置から受信した暗号化されたデータを前記第一の鍵を用いて復号化する復号化手段と、
を有し、
情報処理装置は、データを暗号化するための第一の鍵を保持する保持手段と、
前記第一の鍵を用いてデータを暗号化する暗号化手段と、
前記サービス提供サーバから受信した暗号化されたデータを前記第一の鍵を用いて復号化する復号化手段と、
を有し、前記サービス検索要求は前記暗号化されたデータとして情報処理装置とサービス提供装置との間で送信されることを特徴とするネットワークシステム。
【請求項２】
前記情報処理装置は、データを暗号化するための第二の鍵を生成する生成手段と、
前記第二の鍵を前記暗号化手段によって暗号化し、前記サービス検索要求に付与して送信することを特徴とする請求項１記載のネットワークシステム。
【請求項３】
前記サービス提供サーバは、情報処理装置より受信したサービス検索要求によって要求されたサービスの提供が可能か否かを判定する判定手段と、
前記判定手段によって可能であると判定された場合には、サービス検索要求から前記第二の鍵を前記復号化手段によって復号化することにより取り出し、当該第二の鍵によって暗号化した暗号化データを付与したサービス検索応答を情報処理装置に対して送信することを特徴とする請求項２記載のネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム、特にサーバ・クライアントが接続されるネットワークシステムに関する。
【背景技術】
【０００２】
従来は、サーバのソフトウェアとクライアントのソフトウェアが人間を介さずにサービスの提供、利用を行うシステム（以下、ＷＥＢサービス技術を使用したシステム）においてクライアントがネットワーク上のサービスの検索を行う際、サーバの認証を行わなかった（例えば特許文献１参照）。
【特許文献１】特開平１１−３１２０６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来は、サービス検索サービスがＮｅｔｗｏｒｋ上に展開され第三者がサービス提供者であるサーバを前記Ｎｅｔｗｏｒｋに接続可能な場合において、第三者がサービス提供者であるサーバを前記Ｎｅｔｗｏｒｋに接続しＮｅｔｗｏｒｋ上のサービス利用者であるクライアントが第三者のサービス提供者を検索し利用してしまうことによってデータが第三者へ漏洩してしまうという問題があった。
【０００４】
本発明は、このような問題点に鑑みて為されたものであり、その目的とする処は、クライアントにおいてサーバ認証が失敗し、第三者のサービス提供者を利用してしまうことによってデータが第三者へ漏洩してしまうことを防ぐことができるネットワークシステムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、下記の技術的構成により前記目的を達成できたものである。
【０００６】
サーバとクライアントはあらかじめ共通暗号方式の暗号・復号鍵である共通鍵を持つ。
【０００７】
サーバはサービス検索時に共通暗号方式の鍵であるテンポラリ鍵を生成し、サービス検索要求にＳｅｃｕｒｉｔｙＴａｇを付与してマルチキャストで発行する。その中身はテンポラリ鍵を共通鍵で暗号化したデータである。
【０００８】
サービス検索要求を受信し要求されたサービスを提供する意思のあるサーバは、共通鍵を持つサーバはＳｅｃｕｒｉｔｙＴａｇからテンポラリ鍵を復号化して取り出す。
【０００９】
サーバは共通鍵をテンポラリ鍵で暗号化したデータを、サービス検索要求の応答に付与するＳｅｃｕｒｉｔｙＴａｇのデータとして返信する。
【００１０】
クライアントはサービス検索応答のＳｅｃｕｒｉｔｙＴａｇデータから復号化した共通鍵を取り出し、自身が保有している共通鍵と比較して、同値であれば、その応答元のサーバは認可されていると判断し、ユーザに対して検索結果のブラウズ表示に表示する。応答にＳｅｃｕｒｉｔｙＴａｇが無かったり、正しい共通鍵が返ってこないサーバはブラウズ表示せず、サービス利用の対象から外す。
【発明の効果】
【００１１】
本発明によれば、第三者のサービス提供者であるサーバにはＮｅｔｗｏｒｋ上のサービス利用者であるクライアントが持つ秘密鍵を共通に持たないため、クライアントのサービス検索時に送付するテンポラリ鍵を取得することができず、また、クライアントへテンポラリ鍵を送り返すこともできない。よって、クライアントにおいてサーバ認証が失敗し、第三者のサービス提供者を利用してしまうことによってデータが第三者へ漏洩してしまうことを防ぐことができるネットワークシステムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下本発明の実施例について、図面を参照しながら説明する。
【実施例１】
【００１３】
本発明の実施例は以下に詳述するように、サーバのソフトウェアとクライアントのソフトウェアが人間の意思や確認を介さずにサービスの提供、利用を行うＷＥＢサービス技術を使用したネットワークシステムの、セキュリティに関するものである。このようなシステムでは、人間がサーバ、クライアントの動作に関して逐一確認を行わない場合がある。例えば、ユーザがある要求を、クライアントを使用して行うと、クライアントはユーザに逐一確認せず自動でサービスを提供できるサーバを検索し、検索を受信したサーバは自身が提供できるサービスであれば応答し、範囲外であれば応答せず、クライアントはユーザに逐一確認せずに応答してきたサーバの中から条件の良いサーバを自動で選択しサービスを要求し、サービス要求を受信したサーバはサービスを実行し、サービス終了後にクライアントへ通知する、ような動作がある。
【００１４】
このようにＷＥＢサービスシステムではユーザの確認を要しない場合があるので、悪意のあるサーバがネットワークに接続されＷＥＢサービスに参加し、クライアントからのサービス検索、サービス要求にあたかもサービスを提供するように見せかけて応答することにより、従来ネットワーク内部で送受信される機密データを搾取することが可能となってしまう。このようなネットワーク内部での機密データ搾取を防止する要求が昨今非常に高まってきており、本発明はそのような要求に対処するものである。
【００１５】
図１は、本実施例のネットワークシステムが動作可能な構成を示す図である。
【００１６】
図１において、１０１、１０２、１０３はクライアントＰＣ、１０５、１０６はＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）、それぞれＬＡＮ１００に接続されている。また、１１０は、第三者がＬＡＮ１００に接続したＰＣである。
【００１７】
ＭＦＰ１０５、１０６はＷＥＢサービスにおける印刷サービスを提供するサーバであり、クライアントＰＣ１０１、１０２、１０３からのサービス検索に応答し、クライアントＰＣ１０１、１０２、１０３からのサービス要求によってサービスを提供する。クライアントＰＣ１０１、１０２、１０３はＷＥＢサービスにおけるクライアントであり、ＭＦＰ１０５、１０６に対してサービス検索を行い、ＭＦＰ１０５、１０６に対してサービスを要求し、サービスの提供を受ける。ＰＣ１１０は第三者のＰＣであり、クライアントＰＣ１０１、１０２、１０３からのサービス検索対して、実際には印刷サービスは行わないが印刷サービスを提供するサーバと詐称し、サービス要求に対して印刷サービスを実行すると見せかけて印刷データを受信することによって印刷データを搾取することを目的とする悪意のあるＰＣとする。
【００１８】
図２は、一般的なパーソナルコンピュータの内部構成を示した図であり、図１におけるクライアントＰＣ１０１、１０２、１０３、１１０の内部構成はこのようになっている。ＰＣ２００は、ＲＯＭ２０２もしくはハードディスク（ＨＤ）２１１に記憶された、あるいはフロッピー（登録商標）ディスクドライブ（ＦＤ）２１２より供給される各種ソフトウェアを実行するＣＰＵ２０１を備え、システムバス２０４に接続される各機器を総括的に制御する。
【００１９】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。２０５はキーボードコントローラ（ＫＢＣ）で、キーボード（ＫＢ）２０９や不図示のポインティングデバイス等からの指示入力を制御する。２０６はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）２１０の表示を制御する。２０７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、本発明の動作を行うプログラムまたは印刷データの搾取を目的とした擬似印刷サーバプログラム、種々のアプリケーション、編集ファイル、ユーザファイル等を記憶するハードディスク（ＨＤ）２１１およびフロッピー（登録商標）ディスクコントローラ（ＦＤ）２１２とのアクセスを制御する。
【００２０】
２０８はネットワークインタフェースカード（ＮＩＣ）で、ＬＡＮ２２０を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のＰＣと双方向にデータをやりとりする。
【００２１】
なお、本実施例においては、ＬＡＮ２２０は図１におけるＬＡＮ１００と同じものである。
【００２２】
図３において、３００は、ＷＥＢサービスプログラムが稼動するＭＦＰまたはプリンタの内部構成の一例であり、図１における１０５、１０６と同等である。デバイス３００は、ＲＯＭ３０２もしくはハードディスク（ＨＤ）３１０に記憶された、あるいはフロッピー（登録商標）ディスクドライブ（ＦＤ）３１１より供給される各種プログラムを実行するＣＰＵ３０１を備え、システムバス３０４に接続される各機器を総括的に制御する。３０３はＲＡＭで、ＣＰＵ３０１の主メモリ、ワークエリア等として機能する。３０５はユーザインタフェースコントローラ（ＵＩＣ）で、ユーザインタフェース（ＵＩ）３０９への表示、３０９からの指示入力を制御する。ファンクションコントローラ（ＦＵＮＣＣ）３０６は各デバイス特有の機能であるファンクション（ＦＵＮＣ）３１０を実現／制御する。モノクロプリンタであればモノクロプリントエンジンコントローラとモノクロプリントエンジン、カラープリンタであればカラープリントエンジンコントローラとカラープリントエンジン、ＭＦＰであればデバイス３００は各機能のファンクションコントローラ（ＦＵＮＣＣ）３０６とファンクション（ＦＵＮＣ）３１０をそれぞれ持つ。
【００２３】
３０７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、本発明の動作を行うプログラム、種々のアプリケーション、データファイルを記憶するハードディスク（ＨＤ）３１１およびフロッピー（登録商標）ディスクコントローラ（ＦＤ）３１２とのアクセスを制御する。３０８はネットワークインタフェースカード（ＮＩＣ）で、ＬＡＮ３２０を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のＰＣと双方向にデータをやりとりする。なお、本実施例においては、ＬＡＮ３２０は図１におけるＬＡＮ１００と同じものである。
【００２４】
図４は、本発明のネットワークシステムにおけるクライアントとサーバのモデル図である。４１０はサーバであり、図３における１０５、１０６、１１０と同等である。４２０はクライアントであり、図１における１０１、１０２、１０３と同等である。サーバ４１０とクライアント４２０はＬＡＮ４４０を介して接続されている。
【００２５】
４１１はネットワークインタフェース機能であり、サーバ４１０をＬＡＮ４４０に接続する。４１２はＷＥＢサービスサーバ機能であり、例えばＨＴＴＰサーバ、ＳＯＡＰサーバ、ＸＭＬパーサ、ＷＳＤＬ生成機能などである。４１３は、本発明の機能でありクライアントの認証機能４２３と合わせてＷＥＢサービスシステムにおけるサーバ認証を実現するものである。４１４はサービスを提供するアプリケーションである。４１５は４１３が使用しクライアント４２０が持つ共通鍵４２６と同一の共通鍵である。
【００２６】
４２１はネットワークインタフェース機能であり、クライアント４２０をＬＡＮ４４０に接続する。４２２はＷＥＢサービスクライアント機能であり、ＨＴＴＰクライアント、ＳＯＡＰクライアント、ＸＭＬパーサなどが代表的な例である。４２３は、本発明の機能でありサーバ４１０の認証機能４１３と合わせてＷＥＢサービスシステムにおけるサーバ認証を実現する。４２４はクライアント上で動作するアプリケーションを表している。４２５はＵＩであり、クライアント４２０とユーザのＩ／Ｆである。４２６は、４２３が使用しサーバ４１０が持つ共通鍵４１５と同一の共通鍵である。
【００２７】
なお、本実施例においては、ＬＡＮ４４０は図１におけるＬＡＮ１００と同じものである。
【００２８】
図５はＷＥＢサービスの一例であるＢＭＬｉｎｋＳにおいて、本発明が適用されたクライアントとサーバとの間のシーケンス図である。５１０はクライアントを表し、図４の４２０と同等である。５２０はサーバを表し、図４の４１０と同等である。クライアント５１０とサーバ５２０は共通鍵（５９１、５９３）を持つ。鍵５９１と鍵５９３はは共通暗号方式の暗号化・復号化に使用する鍵であり、２つは同値である。また、クライアント５１０はサービス検索時、すなわち入札公告メッセージをネットワークに向けて送信する場合に、テンポラリ鍵（５９２）を生成し、テンポラリ鍵５９２を共通鍵５９１で暗号化（処理５１１）し、暗号化データ５９４を作成する。
【００２９】
処理５１１で生成した暗号化データ５９４をＳｅｃｕｒｉｔｙＴａｇのデータとして入札公告メッセージ（５１２）に添付してサーバ５２０へ送信する。サーバ５２０は入札公告メッセージ（５１２）を受信後、処理５２２で入札公告メッセージ（５１２）のＳｅｃｕｒｉｔｙＴａｇから暗号化データ５９４を抽出し共通鍵５９３によって復号化を行い、テンポラリ鍵５９５を取り出す。処理５２３でサーバ５２０が保持している共通鍵５９３によって取り出したテンポラリ鍵５９５を暗号化し、暗号化データ５９６を作成する。入札公告メッセージ（５１２）の応答にＳｅｃｕｒｉｔｙＴａｇのデータとして暗号化データ５９６を付与し、クライアント５１０へ参加通知メッセージを返信する（５２４）。クライアントは参加通知メッセージ（５２４）を受信すると、参加通知メッセージ５２４から暗号化データ５９６を抽出し、処理５１３にて暗号化データ５９６をテンポラリ鍵５９２にて復号化し、サーバ５２０が送付してきた共通鍵５９７を取り出す。
【００３０】
その後、処理５１４にてあらかじめクライアント５１０が保持している共通鍵５９１と処理５１３にて取り出した共通鍵５９７を比較し、同値であればサーバ５２０は、認証されたと判断し、処理５１５でＵＩへＢｒｏｗｓｅ表示を行う。その後、Ｕｓｅｒによってサーバ５２０に対して印刷を指示された場合、ＣｒｅａｔｅＪｏｂ（５１６）を送信し、印刷サービスを要求することができる。
【００３１】
図６は、クライアントのサービス要求処理を表すフローチャートである。処理６１０でユーザからのサービス要求を待ち、要求があれば処理６１１へ進む。処理６１１では、テンポラリ鍵を生成し、処理６１２であらかじめ保持している共通鍵にてテンポラリ鍵を暗号化する。
【００３２】
処理６１３では、処理６１２で暗号化したデータから入札公告メッセージに挿入するｓｅｃｕｒｉｔｙＴａｇデータを作成し、処理６１４でＳｅｃｕｒｉｔｙＴａｇを持った入札公告メッセージを作成し、マルチキャストでネットワーク上へ送信する。その後処理６２０で参加通知メッセージを待つが、他のメッセージを受信した場合は、処理６３１で受信メッセージの処理を行い、参加通知メッセージを受信した場合にのみ、処理６２１へ進む。処理６２１では、受信した参加通知にＳｅｃｕｒｉｔｉＴａｇがあるか無いかを判定する。ＳｅｃｕｒｉｔｙＴａｇがある場合は、処理６２２へ進み、無い場合は、処理６５０へ進む。
【００３３】
処理６２２では、参加通知メッセージからＳｅｃｕｒｉｔｙＴａｇを抽出する。抽出したＳｅｃｕｒｉｔｙＴａｇから得られる暗号化データに対してテンポラリ鍵により復号化し、復号化データとクライアントであらかじめ保持している共通鍵と比較する（処理６４０）。処理６４０で値が一致するのであれば、前記参加通知を送信したサーバは認証されたと判断し、ＵＩにてＢｒｏｗｓｅ表示を行い、ユーザに通知する。その後処理６５０へ進む。処理６４０で値が不一致となった場合、処理６５０へ進む。処理６５０ではサービス検索が終了したかを判定し、終了であれば、処理６９９へ進み、処理６００を終了する。終了していなければ、処理６２０へ進み、再びサーバからの受信を待つ。
【００３４】
図７は、サーバ側のサービス実行処理のフローチャートである。処理７１０ではクライアントからの要求を待っている。入札公告メッセージを受信した場合は処理７１１へ進むが、その他を受信した場合は、処理７２０へ進み、受信した要求メッセージに従った処理を行い、再度処理７１０へ戻る。処理７１１では、入札公告からＳｅｃｕｒｉｔｙＴａｇを抽出し、ＳｅｃｕｒｉｔｙＴａｇの暗号化データをあらかじめ保持している共通鍵で復号化し、テンポラリ鍵を取り出す。処理７１３では、処理７１２で取り出したテンポラリ鍵で、あらかじめ保持している共通鍵を暗号化し暗号化データを作成する。処理７１４では、処理７１３で生成した暗号化データからＳｅｃｕｒｉｔｙＴａｇを作成し、ＳｅｃｕｒｉｔｙＴａｇを付与した参加通知メッセージを作成する。処理７１４で作成した参加通知メッセージを入札公告の送信元へ返信する。その後、再度処理７１０へ戻り、クライアントからの要求を待つ。
【００３５】
図８は、入札公告であり、現在の設定において、用紙がＡ４、発色数が６５５３６色以上のカラー印刷が可能なプリントサービスを探索する場合のメッセージの一例である。ＳｅｃｕｒｉｔｙＴａｇに共通鍵で暗号化したテンポラリ鍵のデータが挿入されている。
【００３６】
図９は、参加通知であり、図７の入札公告に対する応答メッセージの一例である。入札公告の検索条件に合致するプリントサービスのみが応答する。合致しないプリントサービスは応答しない。ＳｅｃｕｒｉｔｙＴａｇにテンポラリ鍵で暗号化した共通鍵のデータが挿入されている。図７の入札公告を送信したクライアントはこの参加通知を受信すると、ＳｅｃｕｒｉｔｙＴａｇの暗号化データをテンポラリ鍵で復号化し、自身の持つ共通鍵と比較し、一致していればこの参加通知を送信したサーバの認証結果を可とし、ＵＩへのＢｒｏｗｓｅ表示を行う。不一致であれば、認証結果を不可として、ＵＩへのＢｒｏｗｓｅ表示を行わない。
【００３７】
図１０は、参加通知であり、図７の入札公告に対する応答メッセージの一例である。この参加通知にはＳｅｃｕｒｉｔｙＴａｇが無いため、クライアントはこのサーバの認証結果を不可とし、ＵＩへのＢｒｏｗｓｅ表示を行わない。
図１１は、記憶媒体の一例であるＣＤ−ＲＯＭのメモリマップを示す図である。９９９９はディレクトリ情報を記憶してある領域で、以降のインストールプログラムを記憶してある領域９９９８および本発明を実現するプログラムを記憶してある領域９９９７の位置を示している。９９９８は、本発明を実現するプログラムをインストールするためのプログラムを記憶してある領域である。９９９７は、本発明を実現するプログラムを記憶してある領域である。本発明を実現するプログラムが印刷デバイス３００にインストールされる際には、まずインストールプログラムを記憶してある領域９９９８に記憶されているインストールプログラムがシステムにロードされ、ＣＰＵ３０１によって実行される。次に、ＣＰＵ３０１によって実行されるインストールプログラムが、本発明を実現するプログラムを記憶してある領域９９９７から本発明を実現するプログラムを読み出して、ハードディスク３１１に格納する。
【００３８】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダなど）から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【００３９】
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００４０】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４１】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ，ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００４２】
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００４３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００４４】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【図面の簡単な説明】
【００４５】
【図１】本実施例のネットワークシステムの構成を示す図
【図２】一般的なパーソナルコンピュータの内部構成を示した図
【図３】一般的な印刷デバイスの内部構成を示した図
【図４】本発明のモデル図
【図５】クライアントとサーバ間のシーケンス図
【図６】クライアントのフローチャート
【図７】サーバのフローチャート
【図８】クライアント・サーバ間のメッセージの一例を示す図
【図９】クライアント・サーバ間のメッセージの一例を示す図
【図１０】クライアント・サーバ間のメッセージの一例を示す図
【図１１】本発明のプログラムの記憶媒体におけるメモリマップを示す図
【符号の説明】
【００４６】
１０１、１０２、１０３  クライアントＰＣ
１０５、１０６  ＭＦＰ
１００  ＬＡＮ
【図２】
2006173904.tif 000003
【図３】
2006173904.tif 000004
【図４】
2006173904.tif 000005
【図６】
2006173904.tif 000006
【図７】
2006173904.tif 000007
【図８】
2006173904.tif 000008
【図９】
2006173904.tif 000009
【図１０】
2006173904.tif 000010
【図１１】
2006173904.tif 000011
【図１】
2006173904.tif 000012
【図５】
2006173904.tif 000013