(57)【要約】【課題】  クライアント証明書を使用したクライアント認証において、クライアント証明書と鍵ペアを盗まれた場合に他の機器からなりすまされてサーバへアクセスされてしまうおそれがある。【解決手段】  ネットワークを介してサーバにアクセスする情報処理装置であって、その情報処理装置に固有の情報を含む証明書の発行要求を認証局に送信し、その発行要求に応じて認証局から送信される証明書を受信する。サーバへの接続時、情報処理装置に固有の情報と、受信した証明書に含まれる固有の情報とを比較して、情報処理装置がサーバにアクセスできるかどうかを判定し、サーバにアクセスできないと判定すると、サーバへの接続要求の発行を禁止する。【選択図】  図１０
2014174560.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサーバにアクセスする情報処理装置であって、
前記情報処理装置に固有の情報を含む証明書の発行要求を認証局に送信する送信手段と、
前記発行要求に応じて前記認証局から送信される証明書を受信する受信手段と、
サーバへの接続時、前記情報処理装置に固有の情報と前記証明書に含まれる前記固有の情報とを比較して、前記情報処理装置が前記サーバにアクセスできるかどうかを判定する判定手段と、
前記判定手段が前記サーバにアクセスできないと判定すると、前記サーバへの接続要求の発行を禁止する禁止手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記証明書はクライアント証明書であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記固有の情報は、前記情報処理装置の機器シリアル番号、ＭＡＣアドレス、ＩＰアドレスの少なくともいずれかを含むことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記送信手段は、公開鍵により前記証明書に含まれるパラメータを暗号化し、当該暗号化されたパラメータを含む前記発行要求を前記認証局に送信することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記パラメータを入力する入力手段を更に有することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記入力手段は、
前記パラメータを入力するための画面を表示するための画面情報を他の情報処理装置に送信し、当該他の情報処理装置で前記画面を介して入力されたパラメータを受信することで前記パラメータを入力することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記受信手段により受信した前記証明書を格納する格納手段と、前記情報処理装置に固有の情報を記憶する記憶手段とはそれぞれ別の記憶媒体であり、少なくとも前記記憶手段は、前記情報処理装置から取り外すことができないことを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
ネットワークを介して情報処理装置からアクセスされるサーバであって、
クライアント証明書と、暗号化されたパラメータを含む情報とを情報処理装置から受信する受信手段と、
前記受信手段が受信した前記情報を復号する復号手段と、
前記復号手段により復号された前記情報に含まれるパラメータと、前記サーバが記憶しているパラメータとを比較して前記情報処理装置を認証する認証手段と、
前記認証手段が認証に成功すると前記情報処理装置からのアクセスを受け付け、前記認証手段が認証に失敗すると前記情報処理装置からのアクセスを拒否するように制御する制御手段と、
を有することを特徴とするサーバ。
【請求項９】
前記パラメータは、前記サーバが提供するサービスを利用するためのＩＤ、及びパスワードを含むことを特徴とする請求項８に記載のサーバ。
【請求項１０】
ネットワークを介してサーバにアクセスする情報処理装置を制御する制御方法であって、
前記情報処理装置に固有の情報を含む証明書の発行要求を認証局に送信する送信工程と、
前記発行要求に応じて前記認証局から送信される証明書を受信する受信工程と、
サーバへの接続時、前記情報処理装置に固有の情報と前記証明書に含まれる前記固有の情報とを比較して、前記情報処理装置が前記サーバにアクセスできるかどうかを判定する判定工程と、
前記判定工程で前記サーバにアクセスできないと判定すると、前記サーバへの接続要求の発行を禁止する禁止工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
ネットワークを介して情報処理装置からアクセスされるサーバを制御する制御方法であって、
クライアント証明書と、暗号化されたパラメータを含む情報とを情報処理装置から受信する受信工程と、
前記受信工程で受信した前記情報を復号する復号工程と、
前記復号工程で復号された前記情報に含まれるパラメータと、前記サーバが記憶しているパラメータとを比較して前記情報処理装置を認証する認証工程と、
前記認証工程で認証に成功すると前記情報処理装置からのアクセスを受け付け、前記認証工程で認証に失敗すると前記情報処理装置からのアクセスを拒否するように制御する制御工程と、
を有することを特徴とするサーバの制御方法。
【請求項１２】
コンピュータに、請求項１０又は１１に記載の制御方法を実行させるためのプログラム。
【請求項１３】
請求項１２に記載のプログラムを記憶した、コンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、なりすましを防止する技術に関する。
【背景技術】
【０００２】
近年、様々なサービスをクラウドベースで提供できるシステムが増えており、その利用者は年々増加する傾向にある。しかしながら、このようなクラウドサービスを利用するに際して、最も気になるのはセキュリティに関するリスクである。クラウドサーバの最大の利点であり、逆に課題となっているのは、クラウドサーバはインターネット上に設置されていて、誰もがどこからでも利用できる点にある。一般的にクラウドサーバ上でのアカウント管理は、クラウドサーバが登録ユーザのユーザＩＤとパスワードを保持し、クライアントからクラウドサーバへのアクセス時にユーザの認証を行って、そのユーザとの接続の可否を判断している。このような場合、ユーザＩＤとパスワードが盗まれてしまうと、悪意のある第三者がなりすましてクラウドサーバにアクセスできることになり、個人情報が漏洩するといった脅威がある。
【０００３】
そのような脅威を防止するための対策として機器認証という技術がある。これはクラウドサーバへのアクセス時にアクセスする機器を識別し、特定の機器からの接続のみに限定することで、なりすましを防止するものである。特許文献１では、認証用のハードウェアを利用して特定の装置以外の認証を拒否する技術が記載されているが、この技術は専用のハードウェアを利用するためコストの面で問題がある。また他に機器認証を実現する方法として、クライアント証明書と機器に固有の鍵ペアを利用したクライアント認証を行う方法が考えられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２２３３８７
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながらクライアント証明書と機器に固有の鍵ペアを利用したクライアント認証を行う場合にもリスクが考えられる。それは例えば、認証時に利用するクライアント証明書と、機器に固有の鍵ペアの両方が盗まれて別の機器に装着されて利用された場合、その機器からクラウドサーバへのアクセスが可能になってしまう。
【０００６】
本発明の目的は、上記従来技術の問題点を解決することにある。
【０００７】
本発明の特徴は、認証時に利用するクライアント証明書と鍵が盗まれた場合でも、他の情報処理で、そのクライアント証明書と鍵を使用した認証をできなくする技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
ネットワークを介してサーバにアクセスする情報処理装置であって、
前記情報処理装置に固有の情報を含む証明書の発行要求を認証局に送信する送信手段と、
前記発行要求に応じて前記認証局から送信される証明書を受信する受信手段と、
サーバへの接続時、前記情報処理装置に固有の情報と前記証明書に含まれる前記固有の情報とを比較して、前記情報処理装置が前記サーバにアクセスできるかどうかを判定する判定手段と、
前記判定手段が前記サーバにアクセスできないと判定すると、前記サーバへの接続要求の発行を禁止する禁止手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、装置に固有の情報を含めたクライアント証明書を発行し、サーバへの接続時に、情報処理装置が持つ固有の情報とクライアント証明書が持つ機器固有の情報とを比較することで特定の装置以外の利用を制限することができる。これにより例えば、クライアント証明書と鍵が盗まれた場合でも、他の装置からなりすまされてサーバにアクセスされるという課題を解決することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態１に係る画像形成装置を含むネットワークシステムの構成を示す図。
【図２】本実施形態１に係る画像形成装置のハードウェア構成を示すブロック図。
【図３】本実施形態１に係る画像形成装置のソフトウェア構成を示す機能ブロック図。
【図４】本発明の実施形態１に係るネットワークシステムおけるクライアント証明書の発行の手順を説明する図。
【図５】本実施形態１に係る画像形成装置によるクライアント証明書の発行の手順を説明するフローチャート。
【図６】実施形態１に係る証明書発行要求を作成するための画面例を示す図。
【図７】図６の画面で入力されるパラメータの一例を示す図（Ａ）と、画像形成装置に格納されているシリアル番号の一例を示す図（Ｂ）。
【図８】生成されたクライアント証明書の一例を示す図。
【図９】実施形態１に係る画像形成装置１０１のＨＤＤとＴＰＭが、悪意のある攻撃者によって画像形成装置１０１から取り外されて別の画像形成装置１０４に装着された場合の構成を説明する図。
【図１０】本発明の実施形態１に係るネットワークシステムおいて、図９の画像形成装置１０４が、クラウドサーバに接続する際の手順を説明する図。
【図１１】画像形成装置１０４による処理の流れを説明するフローチャート。
【図１２】クラウドサーバへの接続時に画像形成装置の操作パネルに表示される表示例を説明する図。
【図１３】クラウドサーバのハードウェア構成を示す図である。
【図１４】本発明の実施形態２に係るクラウドサーバのソフトウェア構成を示す機能ブロック図。
【図１５】実施形態２に係る証明書発行要求を作成するための画面例を示す図。
【図１６】図１５の画面で入力されるパラメータの一例を示す図（Ａ）と、実施形態２に係る画像形成装置に格納されているシリアル番号とクラウドＩＤの一例を示す図（Ｂ）。
【図１７】実施形態２で生成されたクライアント証明書の一例を示す図。
【図１８】実施形態２に係る管理テーブルの一例を示す図。
【図１９】本発明の実施形態２に係るネットワークシステムおいて画像形成装置がクラウドサーバに接続する際の手順を説明する図。
【図２０】実施形態２に係るクライアントＰＣで、クラウドサーバへの接続の開始を指示するための画面例を示す図。
【図２１】実施形態２に係る画像形成装置による処理の一部を説明するフローチャート。
【図２２】実施形態２に係るクラウドサーバの接続時の処理を説明するフローチャート。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、本実施形態では、本発明の情報処理装置を画像形成装置を例に挙げて説明する。
【００１２】
［実施形態１］
図１は、本発明の実施形態１に係る画像形成装置を含むネットワークシステムの構成を示す図である。
【００１３】
このネットワークシステムは、画像形成装置１０１、クラウドサーバ１０２、認証局１０３、画像形成装置１０４、クライアントＰＣ１０５がネットワーク１０６を介して、相互に通信可能に接続されている。クラウドサーバ１０２は、画像形成装置１０１，１０４やクライアントＰＣ１０５にサービスを提供する。認証局１０３は、クライアントからの要求に応じて、クラウドサーバ１０２にアクセスするためのクライアント証明書を発行する。
【００１４】
図２は、本実施形態１に係る画像形成装置１０１のハードウェア構成を示すブロック図である。尚、画像形成装置１０４のハードウェア構成も同様であるため、その画像形成装置１０４の説明を省略する。
【００１５】
ＣＰＵ２０１は、画像形成装置の動作を制御するソフトウェアプログラムを実行して装置全体の制御を行う。ＲＯＭ２０２はリードオンリーメモリであり、この画像形成装置のブートプログラムや固定パラメータ等を格納している。ＲＡＭ２０３はランダムアクセスメモリであり、ＣＰＵ２０１が画像形成装置を制御する際に、プログラムや一時的なデータの格納などに使用される。ＨＤＤ２０４はハードディスクドライブであり、ＯＳや制御プログラム、及び印刷データの格納など、様々なデータの格納に使用される。このＨＤＤ２０４は、画像形成装置１０１より取り外しが可能な形態で装着されている。ＣＰＵ２０１が実行するプログラムは、ＨＤＤ２０４にインストールされており、この装置の電源オン時に、ＣＰＵ２０１がＲＯＭ２０２に記憶されているブートプログラムを実行して、ＨＤＤ２０４からＯＳやプログラムを読み出してＲＡＭ２０３に展開する。こうしてＣＰＵ２０１は、ＲＡＭ２０３に展開されたプログラムを実行することにより、この画像形成装置１０１が起動され、後述する各種制御処理が実行される。
【００１６】
ネットワークＩ／Ｆ制御部２０５は、ネットワーク１０６とのデータの送受信を制御する。ＦＲＡＭ（登録商標）２０６は不揮発性のメモリであり、この画像形成装置の各種設定値等を保存しており、例えば、この装置に固有な識別子であるシリアル番号を保存している。スキャナＩ／Ｆ制御部２０７は、スキャナ２１３の動作を制御している。プリンタＩ／Ｆ制御部２０８は、プリンタエンジン２１２の動作を制御する。パネル制御部２０９は、操作パネル２１４を制御し、各種情報の表示、及びユーザからの指示入力を行う。ＴＰＭ（Trusted Platform Module）２１０は、耐タンパー性を持つセキュリティチップで、内部に公開鍵と秘密鍵の鍵ペアを保持しており、画像形成装置１０１より取り外しが可能な形態で装着されている。バス２１１はＣＰＵ２０１と上述した各部とを接続し、ＣＰＵ２０１からの制御信号やデータ信号等を各部に送信している。
【００１７】
図３は、本実施形態１に係る画像形成装置１０１のソフトウェア構成を示す機能ブロック図である。尚、画像形成装置１０４のソフトウェア構成も同様であるため、その画像形成装置１０４の説明を省略する。
【００１８】
接続部３０１は、ネットワークＩ／Ｆ制御部２０５を経由してネットワーク１０６上のサービスに接続する。受信部３０２は、ネットワークＩ／Ｆ制御部２０５を経由してネットワーク１０６のサービスからデータを受信する。送信部３０３は、ネットワークＩ／Ｆ制御部２０５を経由してネットワーク１０６のサービスにデータを送信する。認証部３０４は、ＦＲＡＭ（登録商標）２０６内のシリアル番号３１０と証明書３１１の持つシリアル番号の情報とを比較する。制御部３０５は、ＴＰＭ２１０やＦＲＡＭ（登録商標）２０６、ＨＤＤ２０４の情報を制御する。発行要求生成部３０６は、認証局１０３に対してクライアント証明書の発行要求を行うために必要な要求を生成する。鍵管理部３０７は、秘密鍵３０８と公開鍵３０９の鍵ペア生成、及び鍵を利用した暗号化、復号化を行う。これら接続部３０１、受信部３０２、送信部３０３、認証部３０４、制御部３０５、発行要求部３０６、鍵管理部３０７を実現するプログラムは、前述したようにＨＤＤ２０４からＲＡＭ２０３に展開され、ＣＰＵ２０１の制御の下に実行される。
【００１９】
図４は、本発明の実施形態１に係るネットワークシステムおけるクライアント証明書の発行の手順を説明する図である。また図５は、本実施形態１に係る画像形成装置１０１によるクライアント証明書の発行の手順を説明するフローチャートである。尚、図５の処理を実行するプログラムは、実行時にＲＡＭ２０３に展開され、ＣＰＵ２０１の制御の下に実行される。
【００２０】
認証局１０３がクライアント証明書を発行する場合には、その証明書の発行を依頼する側（以降、主体者）からＣＳＲ（Ｃｅｒｔｉｆｉｃａｔｅ  Ｓｉｇｎｉｎｇ  Ｒｅｑｕｅｓｔ）という証明書発行要求フォーマットに従ったデータを送信する必要がある。これにより認証局１０３は、そのＣＳＲに記述されている内容に基づいてクライアント証明書を発行する。ＣＳＲのフォーマットは、ＰＫＣＳ＃１０という規格が使用されており、これには、主体者の公開鍵情報を含んだ主体者の情報が含まれる。
【００２１】
図４において、画像形成装置１０１は、Ｓ４００１でクライアントＰＣ１０５からの証明書発行要求（ＣＳＲ）作成依頼を受ける。次にＳ４００２で、画像形成装置１０１は、証明書の発行要求に必要なパラメータを入力するための画面（図６）を表示するための画面データをクライアントＰＣ１０５に送信する。ここでは、証明書発行要求（ＣＳＲ）作成依頼を行う際には、画像形成装置１０１の持つウェブサーバ機能を利用して、クライアントＰＣ１０５のブラウザ画面からアクセスしてもよい。また図示しないユーザが、画像形成装置１０１の操作パネル２１４から入力してもよい。この実施形態１では、この画面情報を基に、クライアントＰＣ１０５のブラウザ画面から入力する例で説明する。
【００２２】
こうしてクライアントＰＣ１０５でパラメータが入力されると、Ｓ４００３で、クライアントＰＣ１０５で入力されたパラメータを、クライアントＰＣ１０５から画像形成装置１０１が受け取る。画像形成装置１０１は、その入力パラメータを受信すると、作成した公開鍵３０９と入力パラメータとに基づいてＣＳＲを生成して、作成したＣＳＲをＳ４００４で認証局１０３に送信する。これにより認証局１０３は、そのＣＳＲの内容に基づいて、Ｓ４００５でクライアント証明書を発行し、画像形成装置１０１が、そのクライアント証明書を受信する。
【００２３】
次に、この場合の画像形成装置１０１の動作を、図５のフローチャートを参照して説明する。
【００２４】
まずＳ５０１で、画像形成装置１０１の受信部３０２は、クライアントＰＣ１０５からの証明書発行要求（ＣＳＲ）の作成依頼を受信する。次にＳ５０２に進み、鍵管理部３０７が、秘密鍵３０８と公開鍵３０９の鍵ペアを作成する。そしてＳ５０３で、制御部３０５が、その作成した鍵ペアをＴＰＭ２１０に格納する。本実施形態１では、鍵ペアは証明書発行要求を受けてから作成しているが、使用する鍵ペアを事前に作成しておいても構わない。また本実施形態１では、ＴＰＭ２１０内に公開鍵３０８と秘密鍵３０９の鍵ペアを保持しているが、ＨＤＤ２０４に保持してもよい。但し、その場合、ＨＤＤ２０４にはＴＰＭ２１０のような耐タンパー性はないため機密性は薄れることになる。
【００２５】
次にＳ５０４に進み、発行要求生成部３０６が、証明書の発行要求に必要なパラメータを入力するための画面（図６）を表示する。ここでは、クライアントＰＣ１０５のブラウザ画面から入力するとしている。
【００２６】
図６は、実施形態１に係る証明書発行要求を作成するための画面例を示す図である。
【００２７】
この画面には、ＣＳＲの作成に必要な国名、都道府県名、市区町村名、組織名、部門名、コモンネームの入力を行うフィールドが設けられている。
【００２８】
図７（Ａ）は、図６の画面で入力されるパラメータの一例を示す図である。
【００２９】
ＣＳＲには、基本領域と拡張領域の２つの領域が存在しており、拡張領域には利用者が定義する情報を格納することができる。ここでは図７（Ｂ）のように、画像形成装置１０１のＦＲＡＭ（登録商標）２０６に格納されているシリアル番号３１０を拡張領域に設定している。
【００３０】
図６では、入力フィールドとしてシリアル番号３１０を入力する項目は設けていないが、入力フィールドを設けて入力させてもよい。実施形態１では、入力項目は設けずに、発行要求生成部３０６が制御部３０５経由でＦＲＡＭ（登録商標）２０６に記憶している、この画像形成装置１０１のシリアル番号３１０を取得しＣＳＲ生成時の拡張領域に設定している。
【００３１】
こうしてクライアントＰＣ１０５で入力が完了して、Ｓ５０５で、クライアントＰＣ１０５から入力パラメータを受信するとＳ５０６に進み、Ｓ５０２で作成した公開鍵３０９と、Ｓ５０５で受信したパラメータとに基づいてＣＳＲを生成する。そしてＳ５０７に進み、Ｓ５０６で作成したＣＳＲを、送信部３０３が認証局１０３に送信する。これにより認証局１０３は、そのＣＳＲの内容に基づいてクライアント証明書を発行し、Ｓ５０８で、画像形成装置１０１の受信部３０２が、その証明書を受信する。こうして受信したクライアント証明書を、制御部３０５がＨＤＤ２０４に格納する。
【００３２】
図８は、こうして生成されたクライアント証明書の一例を示す図である。
【００３３】
このクライアント証明書のフォーマットはＸ５０９の規格に準拠している。バージョン８１１は、この証明書のバージョンを表し、本実施形態１では証明書の拡張領域を使用しているためバージョンはＶ３となる。証明書シリアル番号８１２は、認証局１０３が割り当てた証明書を一意に識別するための番号を表す。署名アルゴリズム８１３は、認証局１０３がこの証明書に署名する際に使用したアルゴリズムを表す。発行者８１４は、この証明書を発行した認証局１０３の名前を表す。有効期限の開始８１５、有効期限の終了８１６は、この証明書の有効期限の開始と終了を表す。サブジェクト８１７は、この証明書の主体者の名前を表す。拡張情報８１８は、拡張領域に設定した情報であり、ここでは画像形成装置１０１のシリアル番号３１０が設定されている。公開鍵アルゴリズム８１９は、主体者の公開鍵アルゴリズムを表す。公開鍵８２０は、主体者の公開鍵を表し、ここでは発行時に設定した公開鍵３０９が設定されている。８１１〜８２０までを署名アルゴリズム８２１に設定されているアルゴリズム（ここではｓｈａ１ＲＳＡ）で署名して署名値８２２を生成する。これにより、この証明書の特定の情報を改竄して悪用しようとすると、証明書の検証時に、この証明書に格納されているこの署名値８２２と異なる値となるため、この証明書の改竄を防止している。
【００３４】
図９は、実施形態１に係る画像形成装置１０１のＨＤＤ２０４とＴＰＭ２１０が、悪意のある攻撃者によって画像形成装置１０１から取り外されて別の画像形成装置１０４に装着された場合の構成を説明する図である。前述したように、本実施形態１では、ＨＤＤ２０４とＴＰＭ２１０が画像形成装置１０１から着脱が可能な構成になっているため、このような事態が発生することが考えられる。
【００３５】
画像形成装置１０１のＨＤＤ２０４には証明書３１１が、ＴＰＭ２１０には秘密鍵３０８、公開鍵３０９がそれぞれ格納されている。この証明書３１１は、図４で説明した証明書発行手順により発行されたもので、画像形成装置１０１のＦＲＡＭ（登録商標）２０６に格納されているシリアル番号「０１２３４５６７」３１０が証明書３１１の拡張領域８１８に設定されている。ＴＰＭ２１０に格納されている公開鍵３０９は、証明書３１１の公開鍵８２０に設定されているものであり、秘密鍵３０８はその公開鍵３０９に対応するものである。
【００３６】
ここで、画像形成装置１０１と画像形成装置１０４とでは、ＦＲＡＭ（登録商標）２０６に記憶されているシリアル番号３１０がそれぞれ異なっている。即ち、画像形成装置１０１の機器シリアル番号は上述したように「０１２３４５６７」であるのに対して、画像形成装置１０４の機器シリアル番号は「１２３４５６７８」となっている。
【００３７】
図１０は、本発明の実施形態１に係るネットワークシステムおいて、図９の画像形成装置１０４が、クラウドサーバ１０２に接続する際の手順を説明する図である。
【００３８】
また図１１は、その際の画像形成装置１０４による処理の流れを説明するフローチャートである。
【００３９】
図１０において、Ｓ１０００１で、クラウドサーバに接続する際には画像形成装置１０４の持つウェブサーバ機能を利用して、クライアントＰＣ１０５のブラウザ画面からアクセスしてもよい。また図示しない利用者が、画像形成装置１０４の操作パネル２１４から入力を行ってもよい。本実施形態１では、クライアントＰＣ１０５のブラウザ画面から入力する例で説明する。Ｓ１０００１でクラウドサーバへの接続要求を受信すると、Ｓ１０００２で、接続部３０１がクラウドサーバ１０２に接続要求（ＳＳＬ接続）を発行する。これによりＳ１０００３で、クラウドサーバ１０２から、クライアント証明書の送信要求が送られてくる。Ｓ１０００４で、ＨＤＤ２０４から証明書３１１を読み出してクラウドサーバ１０２に送信する。しかし、画像形成装置１０４の場合は、画像形成装置１０１と画像形成装置１０４のシリアル番号３１０がそれぞれ異なっているため、クラウドサーバ１０２に対してクライアント証明書を発行することができない。
【００４０】
またＳ１０００５では、ＴＰＭ２１０から秘密鍵３０８を読み出し、その鍵を利用して署名を生成してクラウドサーバ１０２に送信する。Ｓ１０００６では、クラウドサーバ１０２から接続の結果を受信する。
【００４１】
図１０の場合は、画像形成装置１０４は、クラウドサーバ１０２に対してクライアント証明書を発行することができないため、Ｓ１０００６の接続結果では、クラウドサーバ１０２から「接続失敗」が通知される。
【００４２】
次に図１１のフローチャートを参照して、画像形成装置１０４の処理を詳しく説明する。また図１２は、クラウドサーバ１０２への接続時に画像形成装置の操作パネル２１４に表示される表示例を説明する図である。
【００４３】
Ｓ１１０１で、クライアントＰＣ１０５からクラウドサーバ１０２への接続要求を受信する。このとき操作パネル２１４には、図１２（Ａ）で示すように、接続要求画面が表示され、ここから接続を開始するＹＥＳボタンを選択することで接続要求が発行される。次にＳ１１０２に進み、制御部３０５が、ＨＤＤ２０４から証明書３１１を読み込み、次にＳ１１０３で、制御部３０５がＦＲＡＭ（登録商標）２０６からシリアル番号３１０を読み込む。そしてＳ１１０４に進み、クラウドサーバ１０２と接続する前に、認証部３０４が証明書３１１に記録されているシリアル番号８１８が、ＦＲＡＭ（登録商標）２０６から読み出したシリアル番号３１１と一致するかどうかを判定する。ここで一致しない場合はＳ１１０５に進んで、サーバへの接続要求の発行を行わずに（禁止して）接続処理を停止し、図１２（Ｂ）のように、接続失敗を示す画面を操作パネル２１４に表示して処理を終了する。
【００４４】
画像形成装置１０４の場合は、クライアント証明書３１１に記録されているシリアル番号８１８と、画像形成装置１０４のＦＲＡＭ（登録商標）２０６に記憶されているシリアル番号とが異なるため、Ｓ１１０５で接続処理が停止されることになる。
【００４５】
一方、証明書３１１に記録されているシリアル番号８１８と、ＦＲＡＭ（登録商標）２０６から読み出したシリアル番号３１１とが一致する場合はＳ１１０６に進み、接続部３０１がクラウドサーバ１０２に接続要求（ＳＳＬ接続）を発行する。こうしてクラウドサーバ１０２に接続要求を送信すると、クラウドサーバ１０２からクライアント証明書の送信要求が送られてくるため、Ｓ１１０７で、受信部３０２がその要求を受信する。そしてＳ１１０８に進み、制御部３０５が、ＨＤＤ２０４から証明書３１１を読み出し、送信部３０３がその証明書をクラウドサーバ１０２に送信する。次にＳ１１０９に進み、制御部３０５がＴＰＭ２１０から秘密鍵３０８を読み出し、その秘密鍵を利用して署名を生成し送信部３０３によりクラウドサーバ１０２に送信する。ここで秘密鍵３０８で署名を生成して送るのは、クラウドサーバ１０２に送信したクライアント証明書には対応する公開鍵３０９が含まれており、クラウドサーバ１０２側では送られてきた署名を公開鍵３０９で検証することで正当性を検証するためである。そしてＳ１１１０に進み、受信部３０２が接続の結果をクラウドサーバ１０２から受信すると、Ｓ１１１１で接続の成功失敗を判断する。接続に成功していればＳ１１１２に進み、図１２（Ｃ）のように、接続成功を示す表示を行い、接続に失敗した場合はＳ１１１３に進み、図１２（Ｂ）のように接続失敗を示す表示を行う。
【００４６】
以上説明したように本実施形態１によれば、機器固有の情報（シリアル番号）を含めたクライアント証明書を発行し、サーバへの接続時に画像形成装置が持つ機器固有の情報とクライアント証明書が持つ機器固有の情報とを比較する。これにより、そのクライアント証明書を発行した機器以外で、そのクライアント証明書を利用したサーバとの接続を制限することができる。これによりクライアント証明書と鍵ペアが盗まれた場合でも、他の機器が、そのクライアント証明書を用いてクラウドサーバにアクセスするのを防止できるという効果が得られる。
【００４７】
尚、この機器シリアル番号は、例えば、ＭＡＣアドレス、ＩＰアドレスなどでも良い。
【００４８】
［実施形態２］
次に本発明の実施形態２について説明する。前述の実施形態１では、画像形成装置側で接続時にシリアル番号を比較して接続の可否を判断する処理を行っていたが、実施形態２ではクラウドサーバ１０２でも同様の処理を行う点が異なる。尚、実施形態２に係るシステムの構成及び、画像形成装置の構成などは前述の実施形態１の場合と同じであるため、その説明を省略する。
【００４９】
図１３は、本発明の実施形態２に係るクラウドサーバ１０２のハードウェア構成を示すブロック図である。
【００５０】
ＣＰＵ１３０１は、このクラウドサーバ１０２のソフトウェアプログラムを実行して、サーバ全体の制御を行う。ＲＯＭ１３０２は、ブートプログラムや固定パラメータ等を格納している。ＲＡＭ１３０３は、ＣＰＵ１３０１がサーバの動作を制御する際に、一時的なデータの格納などに使用される。ＨＤＤ１３０４は、印刷データの格納など、様々なデータの格納に使用される。ネットワークＩ／Ｆ制御部１３０５は、ネットワーク１０６とのデータの送受信を制御する。バス１３０６にはＣＰＵ１３０１，ＲＯＭ１３０２，ＲＡＭ１３０３，ＨＤＤ１３０４、ネットワークＩ／Ｆ制御部１３０５が接続され、このバス１３０６を介してＣＰＵ１３０１からの制御信号やデータ信号が送受信される。ＣＰＵ１３０１が実行するプログラムは、ＨＤＤ１３０４にインストールされている。サーバの電源オン時に、ＣＰＵ１３０１がＲＯＭ１３０２に記憶されているブートプログラムを実行して、ＨＤＤ１３０４からＯＳやプログラムを読み出してＲＡＭ１３０３に展開する。こうしてＣＰＵ１３０１は、ＲＡＭ１３０３に展開されたプログラムを実行することにより、このサーバ１０２が起動され、後述する各種制御処理が実行される。
【００５１】
図１４は、本発明の実施形態２に係るクラウドサーバ１０２のソフトウェア構成を示す機能ブロック図である。
【００５２】
接続部１４０１は、ネットワークＩ／Ｆ制御部１３０５を経由してネットワーク１０６上のクライアントと接続する。受信部１４０２は、ネットワークＩ／Ｆ制御部１３０５を経由してネットワーク１０６上のクライアントからデータを受信する。送信部１４０３は、ネットワークＩ／Ｆ制御部１３０５を経由してネットワーク１０６上のクライアントにデータを送信する。認証部１４０４は、受信部１４０２により受信した情報と、ＨＤＤ１３０４の管理テーブル（図１８）の情報とを比較する。制御部１４０５は、ＨＤＤ１３０４の情報を管理する。
【００５３】
接続部１４０１、受信部１４０２、送信部１４０３、認証部１４０４、制御部１４０５は、ＨＤＤ１３０４からＲＡＭ１３０３に展開されたプログラムをＣＰＵ１３０１が実行することにより達成される。
【００５４】
次に実施形態２における実施形態１との違いを説明する。
【００５５】
まず、実施形態１で説明した図４のクライアント証明書の発行処理に関してＳ４００１〜Ｓ４００５の処理手順は変わらないが、Ｓ４００３で受け取る入力パラメータを拡張している。
【００５６】
図１５は、実施形態２に係る証明書発行要求を作成するための画面例を示す図である。
【００５７】
ここでは、クラウドＩＤ１５０１というパラメータを追加している。これはクラウドサーバ１０２が提供するサービスを利用するためのクラウドサーバのＩＤである。このサービスとしては、例えばクラウドサーバ１０２に保存したデータを印刷するようなプリントサービス等が考えられる。このようなサービスを利用するためには、クライアントは、事前に、そのサービスを利用するための登録を行う必要があり、登録時に、クラウドＩＤとパスワードとが発行される。
【００５８】
この実施形態２では、クラウドＩＤ１５０１というパラメータが追加されたため、図５のＳ５０６で作成されるＣＳＲも異なる。
【００５９】
図１６（Ａ）は、図１５の画面で入力されるパラメータの一例を示す図で、図１６（Ｂ）は、実施形態２に係る画像形成装置１０１に格納されているシリアル番号とクラウドＩＤの一例を示す図である。
【００６０】
図１６（Ｂ）では、クラウドＩＤ「Ｃ０１２３４」１６０１が追加されている。またＣＳＲが異なるので、Ｓ４００５で発行されるくらい証明書も、図１７の１７０１で示すように、クラウドＩＤが追加されたものになる。
【００６１】
図１７は、実施形態２で生成されたクライアント証明書の一例を示す図である。
【００６２】
図１８は、実施形態２に係る管理テーブル１８０１の一例を示す図である。
【００６３】
認証局１０３は、ここで発行したクラウドＩＤとシリアル番号の組み合わせをクラウドサーバ１０２に送信する。これによりクラウドサーバ１０２は、図１８で示すように、クラウドＩＤ、シリアル番号、パスワードの組み合わせた管理テーブル１８０１をＨＤＤ１３０４に保持する。この管理テーブル１８０１は、クラウドサービスの登録時に作成される。また受信部１４０２が認証局１０３からクラウドＩＤとシリアル番号を受信すると、管理テーブル１８０１にシリアル番号の情報を追加する。
【００６４】
このようにしてクラウドサーバ１０２では、クラウドＩＤ、シリアル番号、パスワードをセットにして、クライアントの認証が行われる。
【００６５】
図１９は、本発明の実施形態２に係るネットワークシステムおいて画像形成装置がクラウドサーバ１０２に接続する際の手順を説明する図である。尚、図１９において、前述の実施形態１の図１０と共通する部分は同じ記号で示し、その説明を省略する。
【００６６】
図１９では、図１０に示すクラウドサーバへの接続手順Ｓ１０００１〜Ｓ１０００６において、Ｓ１０００１とＳ１０００２の間に、Ｓ１９００１，Ｓ１９００２の処理が追加されている。
【００６７】
ここでは、まずクラウドサーバ１０２への接続時の入力として、図２０に示すような画面を使用して、クライアントＰＣ１０５で、クラウドＩＤとパスワードとが入力されて、画像形成装置がこれを受け取る。これにより画像形成装置の制御部３０５がＦＲＡＭ（登録商標）２０６のシリアル番号３１０及びＨＤＤ２０４に格納されている証明書３１１を読み出す。そして画像形成装置は、シリアル番号３１０、クラウドＩＤ、パスワードを秘密鍵３０８で暗号化し、その暗号化した情報と証明書３１１をクラウドサーバ１０２へ送信する（Ｓ１９００１）。これによりクラウドサーバ１０２は、シリアル番号３１０、クラウドＩＤ、パスワードを受信して復号して画像形成装置の認証を行う。そしてＳ１９００２で、クラウドサーバ１０２はその認証結果を画像形成装置に送信する。
【００６８】
こうして画像形成装置の認証に成功すると、Ｓ１０００２〜Ｓ１０００６の処理が実行される。ここで前述の画像形成装置１０４の場合は、Ｓ１９００２で、クラウドサーバ１０２から認証に失敗したことが通知される。よって、画像形成装置１０４とクラウドサーバ１０２との間では、Ｓ１０００２〜Ｓ１０００６の処理が実行されることはない。
【００６９】
図２０は、実施形態２に係るクライアントＰＣ１０５で、クラウドサーバ１０２への接続の開始を指示するための画面例を示す図である。
【００７０】
クラウドサーバ１０２への接続時には、ユーザは、クラウドＩＤとパスワードを入力してクラウドサーバへの接続を要求する。
【００７１】
図２１は、実施形態２に係る画像形成装置１０４による処理の一部を説明するフローチャートである。この処理は、図１１のＳ１１０３とＳ１１０４の間の処理が追加されるためその追加処理について示している。
【００７２】
この処理は、制御部３０５がＦＲＡＭ（登録商標）２０６のシリアル番号３１０及びＨＤＤ２０４に格納されている証明書３１１を読み出し、入力されたクラウドＩＤとパスワードを受信する。次にＳ２１０２に進み、鍵管理部３０７は、シリアル番号３１０、クラウドＩＤ、パスワードを秘密鍵３０８で暗号化する。次にＳ２１０３に進み、送信部３０３は、その暗号化した情報と証明書３１１とをクラウドサーバ１０２へ送信する。
【００７３】
図２２は、実施形態２に係るクラウドサーバ１０２の接続時の処理を説明するフローチャートである。尚、図２２の処理を実行するプログラムは、実行時にＲＡＭ１３０３に展開され、ＣＰＵ１３０１の制御の下に実行される。
【００７４】
この処理は、図２１のＳ２１０３で、画像形成装置が、前述の暗号化した情報と証明書３１１とをクラウドサーバ１０２に送信することにより開始される。まずＳ２２０１で、受信部１４０２は、その証明書と暗号化されたクラウドＩＤ、パスワード、シリアル番号を受信する。次にＳ２２０２に進み、認証部１４０４は、証明書の公開鍵を使用して暗号化された情報を復号化する。Ｓ２２０３でＣＰＵ１３０１は、復号できるかどうかを判定し、復号できないときはＳ２２０４に進み、ＮＧを通知して処理を終了する。
【００７５】
一方、復号に成功した場合はＳ２２０５に進み、ＣＰＵ１３０１は、受信したクラウドＩＤ、パスワード、シリアル番号が管理テーブル１８０１の情報と比較し、Ｓ２２０６で一致するかどうかを判定する。一致するときはＳ２２０７に進んでＯＫを通知して、この処理を終了する。一方、不一致の場合はＳ２２０４に進み、接続を拒否するＮＧを通知して、この処理を終了する。
【００７６】
これにより、図２１のＳ２１０４で、画像形成装置は、クラウドサーバ１０２からの認証結果を受信する。そしてＳ２１０５に進み、ＣＰＵ２０１は、その認証結果を判定する。ここで認証ＯＫと判定した場合はＳ２１０６、即ち、図１１のＳ１１０４に進み、前述の実施形態１と同様に処理を実行する。ＯＫの場合は実施形態１とその後の処理は同様となるためＳ１１０４に遷移する。一方、Ｓ２１０５で認証ＮＧと判定したときはＳ２１０７、即ち、図１１のＳ１１０５に進み、クラウドサーバ１０２への接続処理を停止する。
【００７７】
これにより実施形態２では、画像形成装置１０１の秘密鍵３０８、公開鍵３０９及び証明書３１１を盗んで、それを記憶した画像形成装置１０４がクラウドサーバ１０２にアクセスしようとしても、クラウドサーバ１０２が画像形成装置１０４を認証できない。このため、画像形成装置１０４がクラウドサーバ１０２にアクセスして、クラウドサーバ１０２から提供されるサービスを受けたり、画像形成装置１０１のユーザ情報が漏えいするおそれがなくなる。
【００７８】
尚、本実施形態２のクラウドサーバ１０２では、受信したシリアル番号、クラウドＩＤが、サーバ１０２に登録されている情報と比較して一致するかどうかを判定しているが、本発明はこれに限定されない。例えば、クライアント証明書が保持する情報を併せたハッシュ値と、クライアントサーバ１０２が保持する情報を併せてハッシュ値を比較してもよい。
【００７９】
以上説明したように実施形態２によれば、実施形態１の構成に加えて、クラウドサーバでもクライアントの認証処理を行う。このため、画像形成装置に含まれる機器固有の情報が、クライアント証明書に含まれる機器固有の情報と一致しない場合でも、クラウドサーバが不一致を検出することができる。これにより、クライアント証明書、秘密鍵、公開鍵を盗んだ第三者がなりすまして、クラウドサーバへのアクセスができてしまうという問題を解決できるという効果がある。
【００８０】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014174560.tif 000003
【図２】
2014174560.tif 000004
【図３】
2014174560.tif 000005
【図４】
2014174560.tif 000006
【図５】
2014174560.tif 000007
【図６】
2014174560.tif 000008
【図７】
2014174560.tif 000009
【図８】
2014174560.tif 000010
【図９】
2014174560.tif 000011
【図１０】
2014174560.tif 000012
【図１１】
2014174560.tif 000013
【図１２】
2014174560.tif 000014
【図１３】
2014174560.tif 000015
【図１４】
2014174560.tif 000016
【図１５】
2014174560.tif 000017
【図１６】
2014174560.tif 000018
【図１７】
2014174560.tif 000019
【図１８】
2014174560.tif 000020
【図１９】
2014174560.tif 000021
【図２０】
2014174560.tif 000022
【図２１】
2014174560.tif 000023
【図２２】
2014174560.tif 000024