JP7313232B2 - 情報処理装置及びその制御方法、並びにプログラム - Google Patents

情報処理装置及びその制御方法、並びにプログラム Download PDF

Info

Publication number
JP7313232B2
JP7313232B2 JP2019153190A JP2019153190A JP7313232B2 JP 7313232 B2 JP7313232 B2 JP 7313232B2 JP 2019153190 A JP2019153190 A JP 2019153190A JP 2019153190 A JP2019153190 A JP 2019153190A JP 7313232 B2 JP7313232 B2 JP 7313232B2
Authority
JP
Japan
Prior art keywords
information
certificate
information processing
application
root
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019153190A
Other languages
English (en)
Other versions
JP2021033645A (ja
JP2021033645A5 (ja
Inventor
直基 土樋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2019153190A priority Critical patent/JP7313232B2/ja
Publication of JP2021033645A publication Critical patent/JP2021033645A/ja
Publication of JP2021033645A5 publication Critical patent/JP2021033645A5/ja
Application granted granted Critical
Publication of JP7313232B2 publication Critical patent/JP7313232B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、情報処理装置及びその制御方法、並びにプログラムに関する。
ネットワークで接続した機器間の通信において、セキュリティを確保するために通信経路の暗号化が必須の技術となっている。暗号化通信の目的としては通信経路の暗号化による盗聴対策の他に、メッセージ認証による通信経路の改ざん対策、そして証明書検証による通信相手のなりすまし対策が挙げられる。
証明書検証においては、通信相手が送信してきたデジタル証明書(以下、証明書と呼ぶ)が権威のあるCA(Certificate Authority)局によってデジタル署名されているか否かを検証する。そして、検証結果が正しいと確認された場合には証明書に記載された情報を信用することが可能となる。検証の手続きは非特許文献1等の標準規格によって定義されている。
ここで用いられるルートCA証明書は通常、情報処理装置の出荷状態において、メーカーによって予めインストールされて出荷される。しかし、利用者が個別に接続するサーバー機器においても検証可能とするために、利用者が自由に追加できるように構成されている情報処理装置が存在する。この場合、ネットワークインターフェースあるいはUSBなどのローカルインターフェースを介して管理者が入手したルートCA証明書をインストールする。
クラウドなどのインターネットで実施されるサービスの中には、情報処理装置の全てのソフトウェアや有償のソフトウェアライセンス情報など、利用者によって改ざんされてはならないベンダー資産を扱うものがある。ベンダー資産の不正な暴露や改ざんを防ぐために、サーバー証明書の検証を用いて信頼のあるサーバーとの通信であることを確認している。
RFC 5280、[online]、[令和1年8月8日検索]、インターネット<URL:https://tools.ietf.org/html/rfc5280>
上記のようにベンダー資産を扱う暗号化通信においては、サーバー側から提供されるサーバー証明書の検証を行うことにより、信頼のあるサーバーとの通信であることを保証している。一方、サーバー証明書の検証に用いるルートCA証明書は、利用者によって追加のインストールが可能であるが、追加インストールがベンダー資産を扱うサーバーとの信頼関係に影響を与えるべきではない。
本発明は、利用者のルートCA証明書の追加インストールなどによる不正なベンダー資産の暴露や改ざんに起因した不正な外部サーバーへの通信を防ぐことを目的とする。
上記課題を解決するために本願発明は以下の構成を有する。すなわち、1または複数のアプリケーションが動作可能な情報処理装置であって、外部サーバーとの暗号化通信を行う際に用いられるルート証明書を管理する管理手段と、アプリケーションから前記外部サーバーとの暗号化通信の要求を受け付けた際に、当該アプリケーションが、前記情報処理装置における所定の情報を利用するか否かを判定する判定手段と、前記判定手段にて前記アプリケーションが前記所定の情報を利用すると判定された場合、前記管理手段にて管理されているルート証明書のうち、所定の属性情報が設定されたルート証明書を用いて、前記外部サーバーのサーバー証明書を検証する検証手段とを有する。
本発明によれば、暗号化通信を行う際に外部サーバーを正しく検証することが可能となり、ベンダー資産を安全にやり取りすることが可能となる。
本発明の一実施形態に係る情報処理システムの構成例を示す概略図。 本実施形態に係るMFP内にて動作するソフトウェアの構成例を示す図。 第1の実施形態に係るデジタル証明書検証部の処理のフローチャート。 本実施形態に係る外部アプリケーションの構成と属性情報を説明するための図。 本実施形態に係る暗号通信部の処理のフローチャート。 本実施形態に係る鍵管理部の構成と外部との関連を示す図。 第2の実施形態に係るデジタル証明書検証部の処理のフローチャート。 第3の実施形態に係る鍵管理部のエクスポート処理のフローチャート。 第3の実施形態に係る鍵管理部のインポート処理のフローチャート。
<第1の実施形態>
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[システム構成]
図1は、本発明の一実施形態に係る情報処理システムの構成例を示す概略図である。情報処理システムは、MFP(Multi-Function Peripheral)110、LAN(Local Area Network)120、PC(Personal Computer)130、インターネット150、およびクラウドサーバー140を含んで構成される。インターネット150とLAN120はルーター160によって通信可能に接続されている。図1において、各装置は1台ずつが示されているが、更に多くの装置が含まれてもよい。また、本実施形態では、MFPを例に挙げて説明するが、これに限定するものではなく、後述するようなベンダー資産に相当する各種情報を扱う機器であれば、本願発明は適用可能である。
MFP110は、ネットワーク通信部111、操作部113、CPU114、RAM115、および記憶装置116を含んで構成される。MFP110は、上記構成の他、プリンタ部やスキャナ部など、機能に応じて他の部位を備えてよい。MFP110は、クラウドサーバー140と接続することにより、インターネット150を介した各種サービス(Webサービス等)を利用することができる。クラウドサーバー140は、MFP110に各種サービスを提供する外部サーバーである。本実施形態において、クラウドサーバー140は、上述するベンダー資産の情報をMFP110から収集することも可能である。また、MFP110は、PC130からの指示に基づき、LAN120を介してMFP110の設定やアプリケーションのインストールを行うことが可能である。また、MFP110は、USB(Universal Serial Bus)などの外付けの記憶装置を接続可能であってもよい。
[ソフトウェア構成]
図2は、MFP110内にて動作するソフトウェアの構成例を示す。本実施形態において、MFP110において、複数のアプリケーションが動作可能であり、ここでは、組み込みアプリケーション201と外部アプリケーション207の2つを例に挙げて説明する。組み込みアプリケーション201は、MFP110の中で動作するアプリケーションのうち、MFP110に最初(例えば、装置出荷時)から組み込まれているアプリケーションである。暗号通信部202は、アプリケーションから呼び出されて、外部装置であるPC130やクラウドサーバー140と暗号化通信を行う。設定記憶部203は、MFP110の設定を記憶装置116などの記憶領域に記憶する。デジタル証明書検証部204は、暗号通信部202から呼び出され、サーバーなどから提供される証明書の検証を行う。鍵管理部205は、デジタル証明書検証部204によりサーバー証明書の検証に用いられるルートCA証明書(ルート証明書とも称する)を管理する。
証明書インストール部206は、利用者の指定したルート証明書を鍵管理部205に管理させる。外部アプリケーション207は、組み込みアプリケーション201とは異なり、MFP110の出荷後に外部から任意のタイミングにてインストールされ、MFP110のアプリケーションとして動作するアプリケーションである。外部アプリケーションインストール部208は、利用者の指示に従い、外部アプリケーション207のインストールを行う。外部アプリケーション管理部209は、外部アプリケーション207がインストールされたことに応じて、外部アプリケーション207の情報を管理する。ソフトウェアアップデート部210は、MFP110が動作するソフトウェア全体とルートCA証明書などのベンダーが配布するデータを取得し、更新を行う。
上記ソフトウェアは記憶装置116に永続的に格納され、利用する際にはRAM115にロードされてからCPU114によって実行される。また、設定記憶部203が格納する設定情報や、鍵管理部205が保存するルートCA証明書は、記憶装置116によって永続的に記憶され、それぞれのソフトウェアで利用されるときにRAM115にロードされて利用される。
組み込みアプリケーション201、外部アプリケーション207、外部アプリケーション208、証明書インストール部206、および設定記憶部203に設定を行う際の操作は、操作部113を利用者が操作することによって実施される。
デジタル証明書検証部204による証明書の検証は、サーバーに接続した際にサーバーから送られるサーバー証明書を、MFP110が保持しているルートCA証明書を用いて行われる。サーバー証明書の検証方式についてはRSA署名検証やECDSA署名検証などの既知の方式を用いるものとし、ここでの詳細の説明は割愛する。
[ベンダー資産利用]
次にアプリケーションのベンダー資産利用について説明する。ここでいうベンダー資産とは、MFP110を提供するベンダーによって、MFP110に関するサービスのために扱われる所定の情報であり、利用者には開示されない情報である。ベンダー資産としては、例えば、MFP110を動作させるファームウェアの利用情報、MFP110のプリンタ利用枚数などの課金情報などが含まれる。なお、各アプリケーションがベンダー資産として扱う情報は特に限定するものではなく、例えば、MFP110が出力可能なベンダー資産のうち、アプリケーションごと利用するベンダー資産の種類を定義してよい。
利用者に開示されない理由として、様々なものが挙げられる。例えば、図2に示すような複数のソフトウェアの正常動作を脅かすような不正な改変からシステムを保護するためや、機器のメンテナンスや課金情報への改ざんによりサービス不能や不正な課金回避を引き起こすような攻撃を未然に防ぐためである。これらの情報を扱うアプリケーションは、暗号通信の際にサーバーのなりすましが起こりえないように証明書の検証に用いるルートCA証明書の厳格化を指示することができる。
アプリケーションがベンダー資産を扱うことを宣言する方法には2種類ある。ひとつは、アプリケーションが暗号通信部202を呼び出す際に、引数として当該アプリケーションがベンダー資産を扱うことを示す属性を渡すことである。図2において組み込みアプリケーション201は、暗号通信部202に対し、ベンダー属性として「ベンダー資産利用属性」の情報を渡す。これは組み込みアプリケーション201がベンダー資産を利用することを示している。組み込みアプリケーション201の場合には、予めベンダーがベンダー資産を扱うか否かを判定できるため、このように直接指定することが組み込みアプリケーション201には許可されている。
アプリケーションがベンダー資産を扱うことを宣言するもうひとつの方法として、インストール時に、属性ファイルにベンダー資産利用属性情報を記載することにより、宣言を行うことが可能である。例えば、MFP110の出荷後にインストールされる外部アプリケーション207の場合、アプリケーションそのものからの指定がない場合でも、アプリのベンダー属性を定義した属性ファイルにベンダー資産利用属性情報を記載することにより宣言することができる。なお、本実施形態では、外部アプリケーション207はベンダー資産を扱うか否かを直接指定しないものとして説明するが、この構成に限定するものではない。
図4は、外部アプリケーション207の構成と、属性情報を説明するための図である。外部アプリケーション207は、実体の構成としては、アプリケーションパッケージファイル401のデータ構造を持っており、アプリケーションデータ402とアプリケーション属性ファイル403を含んで構成される。アプリケーションデータ402は、CPU114によって動作可能なソフトウェアコードの実体を示す。アプリケーション属性ファイル403は、当該アプリケーションの属性が記載されたテキスト形式あるいはXML(eXtensible Markup Language)形式のデータである。
データ404は、アプリケーション属性ファイル403の内部構成の一例を模式的に示したものである。データ404において、Application-Nameはアプリケーションの名称を示し、“Sample”が設定されている。Application-IDは、アプリケーションに付与された固有のID(識別情報)を示し、“abc”が設定されている。IDを固有に割り振るのはMFP110のベンダーの責務である。Application-Typeはアプリケーションの種別を示す。アプリケーションの種別の例として、操作部113を用いるものをアプレット(“applet”)、ネットワークのサーバーとして機能するものをサーブレット(“servlet”)が挙げられる。Vender-Assetsは当該アプリケーションがベンダー資産を扱うか否かを示すベンダー資産利用属性である。“True”が設定されている場合はアプリケーションがベンダー資産を扱い、“False”が設定されている場合は扱わないことを示す。
このような構成を持った外部アプリケーション207は、外部アプリケーションインストール部208を用いてネットワーク経由あるいはUSBメモリなどの記憶媒体からMFP110内の外部アプリケーション管理部209にインストールされる。ここでの外部アプリケーション207に対応するアプリケーションパッケージファイルの提供方法は、特に限定するものではない。
外部アプリケーション管理部209は、インストールされたアプリケーションに関する情報を格納するデータベース405を有する。データベース405には、インストールされたアプリケーションのアプリケーション属性ファイル403にて示される各属性をキーとした値が格納される。具体的には、データ404に示したApplication-Name、Application-ID、Application-Type、Vender-Assetsの値が管理される。例えば、アプリケーションパッケージファイル401に関わる情報は、レコード406に対応し、アプリケーション属性ファイル403に記載された内容がデータベース405に格納される。上述したように、Vender-Assetsに記載された情報が“True”の場合には、当該アプリケーションがベンダー資産を扱うことを示すことが可能となる。なお、データ404に示した属性は一例であり、他の属性値が更に記載されてよい。また、これに応じて、外部アプリケーション管理部209のデータベース405にて管理される情報が増加してよい。
[鍵管理部]
次に、本実施形態に係る鍵管理部205について説明する。図6は、鍵管理部205の構成と外部との関連を説明するための図である。鍵管理部205は、MFP110の動作開始とともに起動され、以降、MFP110の電源遮断まで動作が継続する。鍵管理部205は、デジタル証明書検証部204による検証処理が行われる際に用いられるルートCA証明書を記憶装置116上にて管理し、要求に応じてルートCA証明書を渡す。
管理テーブル604は、鍵管理部205が管理するルートCA証明書の管理テーブルであり、記憶装置116上に構成される。データベース608は、管理テーブル604で格納されている情報の一例を示す。列609は、記憶装置116に格納されているルートCA証明書の実ファイル名を示す。列610は、操作部113に表示する際に用いられる証明書名を示す。列611は、ルートCA証明書に対して設定されたベンダー属性を示す。
ルートCA証明書605~607は、記憶装置116に保持されているルートCA証明書の実体ファイルを示す。各ルートCA証明書に対して示された“rootca1.cer”~“rootca3.cer”は、ルートCA証明書の実体のファイル名を示し、データベース608の列609に対応する。ルートCA証明書は鍵管理部205に対して登録手続きが行われた場合、管理テーブル604に当該ルートCA証明書のファイル名、および証明書名称をそれぞれ列609、610に記録される。更に、各ルートCA証明書に対し、登録を行うモジュールに応じて「ベンダー属性あり」、または、「ベンダー属性なし」の設定が列611に記録される。
本実施形態に係るベンダー属性について説明する。証明書インストール部206は、利用者がルートCA証明書を登録する際に用いられるモジュールである。このようなモジュールを用いてインストールされるルートCA証明書は任意のものが許されているため、ベンダー資産にアクセスするサーバーのサーバー証明書の検証に使えるとなりすましによる不正アクセスのリスクがある。そのため、本実施形態では、証明書インストール部206によりインストールされるルートCA証明書に対しては、「ベンダー属性なし」としてデータベース608に登録する。
一方、ソフトウェアアップデート部210は、ベンダーが提供するソフトウェア全体を更新するために利用される。ここで更新されるソフトウェアは例えば、MFPのファームウェアなどが該当し、これらは全て、ベンダー由来であることが保証される。配信されるソフトウェアの一部にルートCA証明書が含まれる場合があり、これはベンダーが提供する証明書であり、信頼できるものである。そのため、このようなルートCA証明書は、ベンダー資産にアクセスするサーバーのサーバー証明書の検証に使うことが可能である。したがって、本実施形態では、ソフトウェアアップデート部210によりインストールされるルートCA証明書に対しては、「ベンダー属性あり」としてデータベース608に登録する。なお、「ベンダー属性あり」として設定されるルートCA証明書は上記に限定されるものではなく、ベンダー由来のものであるとして保証される場合には、他の方法にてインストールされたルートCA証明書にも設定してよい。例えば、サービスマンなど特定の権限を有する利用者がインストールした場合や、特定のサービスツールを介してインストールした場合などが挙げられる。また、MFP110の出荷時に予めインストールされたルートCA証明書については、「ベンダー属性あり」として設定してよい。
[暗号通信部]
次に、本実施形態に係る暗号通信部202の動作を説明する。暗号通信部202は、組み込みアプリケーション201または外部アプリケーション207から呼び出され、標準規格に従って暗号通信を行うモジュールである。暗号通信の標準規格としては、OSI(Open System Interconnection)の7階層におけるトランスポート層あるいはアプリケーション層で暗号化を行うSSL/TLS(Secure Socket Layer/Transport Layer Security)やネットワーク層で暗号化を行うIPSecが挙げられるが、これらの標準規格以外でも適用可能である。
図5は、本実施形態に係る暗号通信部202の処理のフローチャートである。暗号通信部202は、組み込みアプリケーション201または外部アプリケーション207から暗号通信の要求があった際に起動され、暗号通信が完了したら動作を終了する。また、複数の暗号通信が同時に要求された場合は、複数の暗号通信部がそれぞれ独立に動作を行う。
S501にて、暗号通信部202は、アプリケーションからの暗号通信の要求を受け付ける。暗号通信が開始する際にはアプリケーションからアプリケーションID、およびベンダー資産属性が渡される。ただし、上述したように、ベンダー資産属性については、アプリケーションが外部アプリケーション207である場合には渡されないため、必須の情報ではない。
S502にて、暗号通信部202は、アプリケーションがクライアント側かサーバー側かの判定を行う。つまり、アプリケーションがサーバーとして動作するか、クライアントとして動作するかの判定が行われる。これはアプリケーション側からの暗号通信要求を行う際にパラメーターとして渡される値から判定してよい。クライアント側であると判定した場合(S502ににてYES)S503へ進み、サーバー側であると判定した場合(S502にてNO)S508へ進む。
S503にて、暗号通信部202は、対向(通信相手)となるサーバーに対してサーバー証明書を要求する。そして、その応答として、暗号通信部202は、サーバー証明書を受信する。
S504にて、暗号通信部202は、S503にてサーバーから受信したサーバー証明書の検証を、デジタル証明書検証部204に要求する。この際、暗号通信部202は、S503にて取得したサーバー証明書と共に、S501にてアプリケーションから渡されるアプリケーションIDおよびアプリケーションのベンダー資産属性をデジタル証明書検証部204に渡す。ここでのデジタル証明書検証部204による検証処理については、図3を用いて後述する。その後、暗号通信部202は、デジタル証明書検証部204からサーバー証明書の検証結果を取得する。
S505にて、暗号通信部202は、デジタル証明書検証部204による検証が成功したか否かを判定する。検証が成功した場合(S505にてYES)S506へ進み、検証が失敗した場合(S505にてNO)S507へ進む。
S506にて、暗号通信部202は、S501にて受信した暗号通信の要求に対応するサーバーとの通信を完了するまで継続する。その後、本処理フローを終了する。
S507にて、暗号通信部202は、S501にて受信した暗号通信の要求に対応するサーバーとの接続を遮断する。そして、本処理フローを終了する。
S508にて、暗号通信部202は、サーバー証明書をクライアントに送信する。この場合、アプリケーションがサーバーとして動作するため、サーバー証明書の検証は不要となる。その後、S506へ進み、暗号通信部202は、S501にて受信した暗号通信の要求に対応する通信の完了までクライアントとの通信を継続する。そして、本処理フローを終了する。
[サーバー証明書の検証処理]
次に、本実施形態に係るデジタル証明書検証部204によるサーバー証明書の検証処理について説明する。図3は、デジタル証明書検証部204の動作を説明するフローチャートである。デジタル証明書検証部204は、暗号通信部202から呼び出されることにより動作を開始し、処理が完了すると動作を停止する。ここでの開始タイミングは、図5のS504における要求を暗号通信部202から受信したタイミングに対応する。
S301にて、デジタル証明書検証部204は、暗号通信部202から検証対象となるサーバー証明書を受け取る。併せて、アプリケーションIDが取得される。
S302にて、デジタル証明書検証部204は、S301にてアプリケーションからベンダー資産属性が利用ありの指示を受け付けたか否かを判定する。上述したように、アプリケーションが組み込みアプリケーション201である場合には、ベンダー資産属性によるベンダー資産属性の利用のあり/なしの指示を直接行うことができる。一方、アプリケーションが外部アプリケーション207である場合には、ベンダー資産属性が利用ありの指示は行われない。一方、指示があると判定された場合(S302にてYES)S305へ進み、指示がないと判定された場合(S302にてNO)S303へ進む。
S303にて、デジタル証明書検証部204は、S301にて取得したアプリケーションのアプリケーションIDに基づいて、外部アプリケーション管理部209のデータベース405を参照し、ベンダー資産属性(Vender-Assets情報)を確認する。
S304にて、デジタル証明書検証部204は、S303にて参照したベンダー資産属性の値が“True”か否かを判定する。上述したように、“True”である場合には、当該外部アプリケーションがベンダー資産を扱うことを示す。ベンダー資産属性の値が“True”であると判定された場合(S304にてYES)S305へ進み、“False”であると判定された場合(S304にてNO)S306へ進む。なお、ベンダー資産属性の値が“False”である場合には、記憶装置116に保持されているすべてのルートCA証明書が検索対象となる。
S305にて、デジタル証明書検証部204は、検証対象となるルートCA証明書からベンダー属性がないものを、一時的に除外する。つまり、管理テーブル604のデータベース608に含まれるルートCA証明書のうち、列611の値が「ベンダー属性なし」の値を有するルートCA証明書を除外する。図6の例の場合、ルートCA証明書607(“rootca3.cer”)が除外される。
S306にて、デジタル証明書検証部204は、検索対象となるルートCA証明書から、サーバー証明書を検証できるルートCA証明書を検索する。
S307にて、デジタル証明書検証部204は、S306の検索結果により、サーバー証明書を検証できるルートCA証明書が存在するか否かを判定する。ルートCA証明書が存在すると判定された場合(S307にてYES)S308へ進み、存在しない場合はS310へ進む。
S308にて、デジタル証明書検証部204は、サーバー証明書を、S306にて検索されたルートCA証明書を用いて検証を行う。サーバー証明書の検証方式についてはRSA署名検証やECDSA署名検証などの一般的に使われている既知の方式を用いるものとし、詳細の説明は割愛する。
S309にて、デジタル証明書検証部204は、S308における検証が成功したか否かを判定する。検証が成功した場合(S309にてYES)S311へ進み、検証が失敗した場合(S309にてNO)S310へ進む。
S310にて、デジタル証明書検証部204は、サーバー証明書の検証に失敗した旨を暗号通信部202へ返す。そして、本処理フローを終了する。
S311にて、デジタル証明書検証部204は、サーバー証明書の検証に成功した旨を暗号通信部202へ返す。そして、本処理フローを終了する。
以上、本実施形態では、アプリケーションがベンダー資産を扱う場合には検証対象となるルートCA証明書を用いる際に信頼のあるモジュールからインストールされたルートCA証明書だけを使う。これにより、ベンダー資産を安全にやり取りすることが可能となる。
<第2の実施形態>
MFP110によってはサーバー証明書の検証を実施するか/しないかの検証設定を設定記憶部203に持つものがある。そこで、本願発明の第2の実施形態として、そのような構成を有する場合の形態について説明する。なお、第1の実施形態と重複する箇所については説明を省略し、差分を説明する。
[デジタル証明書検証部]
図7は、本実施形態に係るデジタル証明書検証部204の動作を説明するフローチャートである。第1の実施形態にて述べた図3の処理と同じ処理については、同じ参照番号を付し、差分のみを説明する。
S303の処理の後、S701にて、デジタル証明書検証部204は、S303にて参照したベンダー資産属性の値が“True”か否かを判定する。上述したように、“True”である場合には、当該外部アプリケーションがベンダー資産を扱うことを示す。ベンダー資産属性の値が“True”であると判定された場合(S701にてYES)S305へ進み、“False”であると判定された場合(S701にてNO)S702へ進む。
S702にて、デジタル証明書検証部204は、設定記憶部203からサーバー証明書の検証設定を取得する。
S703にて、デジタル証明書検証部204は、S702にて取得した検証設定が“ON”か否かを判定する。検証設定が“ON”である場合とは、サーバー証明書の検証を行うことを意味する。“ON”である場合(S703にてYES)S306へ進み、“OFF”である場合(S703にてNO)S311へ進む。
以上、本実施形態では、ベンダー資産を扱うアプリケーションは信頼のあるルートCA証明書を用いた検証を行えるようにするとともに、ベンダー資産を扱わないアプリケーションでは証明書の検証設定に応じて任意に証明書の検証の実施を制御する。これにより、サーバー証明書の検証に係る可用性を維持することが可能となる。
<第3の実施形態>
以下、本願発明の第3の実施形態について説明する。なお、第1、第2の実施形態と重複する箇所については説明を省略し、差分を説明する。また、本実施形態は、上記実施形態と任意に組み合わせ可能である。
MFP110の記憶装置116が故障した場合でも元の状態に復旧するための動作として、エクスポート機能や、インポート機能がある。これは、MFP110のすべての設定を外部の記憶媒体やサーバーに設定ファイルとしてエクスポートすることにより、MFP110の記憶装置116が故障による交換を行っても、エクスポートした設定ファイルをインポートすることにより復旧が可能とする。しかし、エクスポートした設定ファイルは利用者が手元で書き換えが可能であるため、ルートCA証明書も改ざんのおそれがある。その結果、このような情報を利用する場合には、信頼性が消失する恐れがある。
そこで、本実施形態では、ベンダー属性の値が“ベンダー属性あり”のルートCA証明書の場合は、利用者が書き換えられないように暗号化処理を行ってからエクスポートする。また、インポートの際にはベンダー属性のあるルートCA証明書の場合は復号化処理を行ってからインポートを実施する。
[エクスポート処理]
図8は、本実施形態に係る鍵管理部205のエクスポート処理の動作を説明するフローチャートである。本処理フローは、MFP110の利用者がMFP110の各種データのエクスポート処理の実行を指示した際に開始される。
S801にて、鍵管理部205は、機体固有の共通鍵を生成する。この共通鍵はMFP110の利用者には公開されないものである。本実施形態では、記憶装置116に依存しない情報から生成される共通鍵(例えば、MFP110の機体番号など)を用いる。なお、生成方法については特に限定するものではなく、任意の方法が用いられてよい。
S802にて、鍵管理部205は、管理テーブル604にて管理されているルートCA証明書のうち先頭のルートCA証明書に着目し、そのベンダー属性の情報を読み込む。
S803にて、鍵管理部205は、S802の読み込みの結果、“ベンダー属性あり”の値であるか否かを判定する。“ベンダー属性あり”と判定された場合(S803にてYES)S804へ進み、“ベンダー属性なし”と判定された場合(S803にてNO)S805へ進む。
S804にて、鍵管理部205は、着目しているルートCA証明書の実体ファイルを、S801にて生成した共通鍵を用いて暗号化し、任意の記憶領域に保存する。ここでの任意の記憶領域は、ユーザーによって指定された外部記憶装置やネットワーク上のサーバーなどが用いられてよい。そして、S806へ進む。
S805にて、鍵管理部205は、着目しているルートCA証明書の実体ファイルを平文で任意の記憶領域に保存する。そして、S806へ進む。
S806にて、鍵管理部205は、管理テーブル604から未処理のルートCA証明書を検索する。
S807にて、鍵管理部205は、S806の検索の結果、未処理のルートCA証明書のファイルがあるか否かを判定する。未処理のルートCA証明書のファイルがあると判定された場合(S807にてYES)S802へ戻り、未処理のルートCA証明書に対して処理を繰り返す。図6の例の場合、ルートCA証明書605~607の3つの実体ファイルに対して、順次処理が繰り返される。未処理のルートCA証明書のファイルが無いと判定された場合(S807にてNO)S808へ進む。
S808にて、鍵管理部205は、管理テーブル604そのものを任意の記憶領域に保存する。なお、管理テーブル604の保存位置と、S804やS805における実態ファイルの保存位置は同じであってもよいし、別の場所であってもよい。そして、本処理フローを終了する。
[インポート処理]
図9は、本実施形態に係る鍵管理部205のインポート処理の動作を説明するフローチャートである。本処理フローは、MFP110の利用者がMFP110の各種データのインポート処理の実行を指示した際に開始される。また、本処理にて用いられるインポートデータは、図8にて示したエクスポート処理により得られたエクスポートデータであるものとし、そのデータの格納場所が利用者等によって指定されるものとする。
S901にて、鍵管理部205は、機体固有の共通鍵を生成する。なお、生成方法については特に限定するものではなく、任意の方法が用いられてよい。ここでは、図8に示したエクスポート処理のS801と同様の方法により、対応する共通鍵が生成される。
S902にて、鍵管理部205は、任意の記憶領域からエクスポートデータに含まれる管理テーブル604を読み込む。管理テーブル604を読み込む記憶領域はユーザーから指定されてもよい。
S903にて、鍵管理部205は、管理テーブル604にて管理されているルートCA小証書のうち、先頭のルートCA証明書に着目し、そのベンダー属性の情報を読み込む。
S904にて、鍵管理部205は、S903の読み込みの結果、“ベンダー属性あり”の値であるか否かを判定する。“ベンダー属性あり”と判定された場合(S904にてYES)S905へ進み、“ベンダー属性なし”と判定された場合(S904にてNO)S906へ進む。
S905にて、鍵管理部205は、着目しているルートCA証明書の実体ファイルを任意の記憶領域から読み込み、S901にて生成された共通鍵を用いて復号化し、記憶装置116に保存する。そして、S907へ進む。
S906にて、鍵管理部205は、着目しているルートCA証明書の実体ファイルを任意の記憶領域から読み込み、記憶装置116に保存する。ここでは、着目しているルートCA証明書の実体ファイルは、図8のS805の処理に基づき暗号化されていないものとし、読み込んだ実体ファイルがそのまま記憶装置116に保存される。そして、S907へ進む。
S907にて、鍵管理部205は、エクスポートデータに含まれる管理テーブル604から未処理のルートCA証明書を検索する。
S908にて、鍵管理部は、S907の検索の結果、未処理のルートCA証明書のファイルがあるか否かを判定する。未処理のルートCA証明書のファイルがあると判定された場合(S908にてYES)S903へ戻り、未処理のルートCA証明書に対して処理を繰り返す。図6の例の場合、ルートCA証明書605~607の3つの実体ファイルに対して、順次処理が繰り返される。未処理のルートCA証明書のファイルが無いと判定された場合(S908にてNO)本処理フローを終了する。
以上、本実施形態により、機器内に保存されている信頼できるルートCA証明書を外部にエクスポート、インポートする場合でも、共通鍵で暗号化/復号化を行う。これにより、利用者がベンダー資産を使用するアプリケーションの認証に用いられるルートCA証明書の中身を見たり、改ざんしたりすることができなくなるため、信頼性を維持したまま復旧が可能となる。
<その他の実施形態>
本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
110…MFP、114…CPU、116…記憶装置、201…組み込みアプリケーション、202…暗号通信部、203…設定記憶部、204…デジタル証明書検証部、205…鍵管理部、206…証明書インストール部、207…外部アプリケーション、208…外部アプリケーションインストール部、209…外部アプリケーション管理部、210…ソフトウェアアップデート部

Claims (13)

  1. 1または複数のアプリケーションが動作可能な情報処理装置であって、
    外部サーバーとの暗号化通信を行う際に用いられるルート証明書を管理する管理手段と、
    アプリケーションから前記外部サーバーとの暗号化通信の要求を受け付けた際に、当該アプリケーションが、前記情報処理装置における所定の情報を利用するか否かを判定する判定手段と、
    前記判定手段にて前記アプリケーションが前記所定の情報を利用すると判定された場合、前記管理手段にて管理されているルート証明書のうち、所定の属性情報が設定されたルート証明書を用いて、前記外部サーバーのサーバー証明書を検証する検証手段と
    を有することを特徴とする情報処理装置。
  2. ユーザーの指示に基づいて新たなルート証明書をインストールするインストール手段を更に有し、
    前記管理手段は、前記インストール手段にてインストールされたルート証明書には前記所定の属性情報を設定しないことを特徴とする請求項1に記載の情報処理装置。
  3. 前記情報処理装置に備えられたファームウェアをアップデートするアップデート手段を更に有し、
    前記管理手段は、前記アップデート手段によるアップデートに用いられるデータに含まれるルート証明書には前記所定の属性情報を設定することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記管理手段は、前記情報処理装置の出荷時にインストールされていたルート証明書には前記所定の属性情報を設定して管理することを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。
  5. 前記情報処理装置にインストールされているアプリケーションの情報を管理する第2の管理手段を更に有し、
    前記判定手段は、アプリケーションから前記外部サーバーとの暗号化通信の要求を受け付けた際に、当該アプリケーションから前記所定の情報を利用するか否かを示す指示を受け付けたか否かを判定し、
    前記指示を受け付けていない場合、前記第2の管理手段にて管理されている情報に基づいて、当該アプリケーションが、前記所定の情報を利用するか否かを判定することを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
  6. 前記外部サーバーのサーバー証明書の検証を行うか否かの設定を行う設定手段を更に有し、
    前記検証手段は、前記判定手段にて前記外部サーバーとの暗号化通信の要求を行ったアプリケーションが前記所定の情報を利用せず、かつ、前記設定手段にてサーバー証明書の検証を行わない設定がされている場合に、当該サーバー証明書の検証を行わないことを特徴とする請求項1乃至5のいずれか一項に記載の情報処理装置。
  7. 前記情報処理装置の固有の情報を用いて共通鍵を生成する生成手段と、
    前記情報処理装置にインストールされているルート証明書のうち、前記所定の属性情報が設定されたルート証明書を前記生成手段にて生成された共通鍵を用いて暗号化してエクスポートするエクスポート手段と、
    前記エクスポート手段にて出力されたデータを前記情報処理装置にインポートする際に、前記生成手段にて生成された共通鍵を用いて暗号化されたルート証明書を復号化してインポートするインポート手段と
    を更に有することを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置。
  8. 前記エクスポート手段は、前記情報処理装置にインストールされているルート証明書のうち、前記所定の属性情報が設定されていないルート証明書は暗号化せずにエクスポートすることを特徴とする請求項7に記載の情報処理装置。
  9. 前記所定の情報は、前記情報処理装置のベンダーにて管理されるものとして定義されたベンダー資産の情報であることを特徴とする請求項1乃至8のいずれか一項に記載の情報処理装置。
  10. 前記所定の属性情報は、前記情報処理装置のベンダーから提供されたものであることを示す情報であることを特徴とする請求項1乃至9のいずれか一項に記載の情報処理装置。
  11. 前記検証手段の検証結果に基づいて、前記外部サーバーとの暗号化通信を行う通信手段を更に有することを特徴とする請求項1乃至10のいずれか一項に記載の情報処理装置。
  12. 1または複数のアプリケーションが動作可能な情報処理装置の制御方法であって、
    外部サーバーとの暗号化通信を行う際に用いられるルート証明書を管理手段にて管理する管理工程と、
    アプリケーションから前記外部サーバーとの暗号化通信の要求を受け付けた際に、当該アプリケーションが、前記情報処理装置における所定の情報を利用するか否かを判定する判定工程と、
    前記判定工程にて前記アプリケーションが前記所定の情報を利用すると判定された場合、前記管理手段にて管理されているルート証明書のうち、所定の属性情報が設定されたルート証明書を用いて、前記外部サーバーのサーバー証明書を検証する検証工程と
    を有することを特徴とする情報処理装置の制御方法。
  13. 1または複数のアプリケーションが動作可能なコンピューターを、
    外部サーバーとの暗号化通信を行う際に用いられるルート証明書を管理する管理手段、
    アプリケーションから前記外部サーバーとの暗号化通信の要求を受け付けた際に、当該アプリケーションが、前記コンピューターにおける所定の情報を利用するか否かを判定する判定手段、
    前記判定手段にて前記アプリケーションが前記所定の情報を利用すると判定された場合、前記管理手段にて管理されているルート証明書のうち、所定の属性情報が設定されたルート証明書を用いて、前記外部サーバーのサーバー証明書を検証する検証手段
    として機能させるためのプログラム。
JP2019153190A 2019-08-23 2019-08-23 情報処理装置及びその制御方法、並びにプログラム Active JP7313232B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019153190A JP7313232B2 (ja) 2019-08-23 2019-08-23 情報処理装置及びその制御方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019153190A JP7313232B2 (ja) 2019-08-23 2019-08-23 情報処理装置及びその制御方法、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2021033645A JP2021033645A (ja) 2021-03-01
JP2021033645A5 JP2021033645A5 (ja) 2022-08-04
JP7313232B2 true JP7313232B2 (ja) 2023-07-24

Family

ID=74675881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019153190A Active JP7313232B2 (ja) 2019-08-23 2019-08-23 情報処理装置及びその制御方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP7313232B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011086155A (ja) 2009-10-16 2011-04-28 Felica Networks Inc Icチップ、情報処理装置およびプログラム
JP2015138336A (ja) 2014-01-21 2015-07-30 サイエンスパーク株式会社 電子データの管理方法、そのためのプログラム及び、プログラムの記録媒体
JP2016031600A (ja) 2014-07-28 2016-03-07 富士通株式会社 電子機器、認証装置、および情報処理システム
JP2018174507A (ja) 2017-03-31 2018-11-08 セコム株式会社 通信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011086155A (ja) 2009-10-16 2011-04-28 Felica Networks Inc Icチップ、情報処理装置およびプログラム
JP2015138336A (ja) 2014-01-21 2015-07-30 サイエンスパーク株式会社 電子データの管理方法、そのためのプログラム及び、プログラムの記録媒体
JP2016031600A (ja) 2014-07-28 2016-03-07 富士通株式会社 電子機器、認証装置、および情報処理システム
JP2018174507A (ja) 2017-03-31 2018-11-08 セコム株式会社 通信装置

Also Published As

Publication number Publication date
JP2021033645A (ja) 2021-03-01

Similar Documents

Publication Publication Date Title
US7584351B2 (en) Method of transferring digital certificate,apparatus for transferring digital certificate, and system, program, and recording medium for transferring digital certificate
JP4671783B2 (ja) 通信システム
JP4555175B2 (ja) 審査装置、通信システム、審査方法、プログラム及び記録媒体
CA2494513C (en) Digital-signed digital document exchange supporting method and information processor
US8327133B2 (en) Communication device and medium for the same
US7634654B2 (en) Method of nullifying digital certificate, apparatus for nullifying digital certificate, and system, program, and recoring medium for nullifying digital certificate
JP4576210B2 (ja) 証明書転送装置、証明書転送システム、証明書転送方法、プログラム及び記録媒体
JP2005006076A (ja) 通信システムおよび方法
US8732344B2 (en) Management device, medium for the same, and management system
US10185523B2 (en) Information processing system, information processing apparatus and control method therefor, and program for preventing inconsistency of a setting
JP2017157018A (ja) 情報処理装置、情報処理方法、情報処理プログラム、及びトラステッド・プラットフォーム・モジュール
US20220345319A1 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
US20200007347A1 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
JP2010074431A (ja) 外部認証を用いた認証機能連携機器、認証機能連携システム及び認証機能連携プログラム
JP4509678B2 (ja) 証明書設定方法
JP2004234538A (ja) 暗号化データ共有システム
JP7313232B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
JP4717378B2 (ja) 情報処理装置
JP4611680B2 (ja) 通信装置、通信システム、通信方法及びプログラム
CN113569230A (zh) 固件更新方法、装置和系统
JP2006005613A (ja) 認証システム
JP5487659B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2007141021A (ja) 画像処理システム
JP5434956B2 (ja) 証明書無効化装置、証明書無効化システム、プログラム及び記録媒体
KR100361375B1 (ko) 트랜잭션 보안을 위한 지능형 보안 클라이언트/서버 시스템 구현 방법

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220727

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230711

R151 Written notification of patent or utility model registration

Ref document number: 7313232

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151