JP2018007215A - 情報処理装置とその制御方法、及びプログラム - Google Patents
情報処理装置とその制御方法、及びプログラム Download PDFInfo
- Publication number
- JP2018007215A JP2018007215A JP2016136296A JP2016136296A JP2018007215A JP 2018007215 A JP2018007215 A JP 2018007215A JP 2016136296 A JP2016136296 A JP 2016136296A JP 2016136296 A JP2016136296 A JP 2016136296A JP 2018007215 A JP2018007215 A JP 2018007215A
- Authority
- JP
- Japan
- Prior art keywords
- key
- certificate
- cryptographic module
- information processing
- processing apparatus
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
【課題】完全性の検証機能を有さない暗号モジュールが生成した鍵・証明書を、より信頼性の高い鍵・証明書に更新することにより、暗号処理や通信の信頼性を確保する情報処理装置を提供する。【解決手段】暗号モジュールと、当該暗号モジュールが生成した鍵・証明書を格納する格納手段と、格納手段に格納された鍵・証明書が、完全性を検証しない暗号モジュールが生成した鍵・証明書かどうか判定する判定手段と、判定手段により完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を更新する更新手段を備える。【選択図】図5
Description
本発明は、情報処理装置とその制御方法、及びプログラムに関する。
暗号技術は多種多様な方式が開発されており、その特徴や効果も、それぞれ互いに異なる。このため、暗号アルゴリズムや、それらを独立したモジュールに実装した暗号モジュールの機能を適切に選択する必要がある。また、十分に普及し実績のある暗号アルゴリズムやそれらを実装した暗号モジュールであっても、脆弱性の発見や計算機の演算能力の向上などの影響により、常に危殆化し、攻撃を受けるリスクを孕んでいる。
信頼性の高い暗号モジュールの使用は情報処理や通信の安全性を高めるが、計算リソースや要求性能、通信相手が利用できる暗号方式の制約があるため、その利用に際しては、リスクと利便性とのバランスの中でユーザが選択できるのが望ましい。
特許文献1に記載の情報処理装置は、複数の暗号モジュールを搭載し、機能や性能、制約条件の評価情報に基づき、状況に応じて最適な暗号方式、或いは暗号モジュールを選択できる。暗号モジュールは改ざんなどの攻撃を受ける可能性もあるため、この情報処理装置は、暗号モジュールの利用にあたっては、改ざん検知を行うことで完全性を確認している。特許文献2には、特定の入力に対して期待値通りの結果を出力するかテスト(既知解テスト)することで暗号モジュールを検証する機能(以下、暗号モジュールの検証機能)が記載されている。
情報処理装置が有する暗号モジュールが複数あり、そのうちの一つは検証機能を有する信頼性の高い暗号化を行う暗号モジュールであり、別の暗号モジュールは検証機能を有しない暗号モジュールである場合がある。上述のように、リスクと利便性とのバランスの中で、ユーザは複数の暗号モジュールのち何れの暗号モジュールを使用するかを設定により切り替えて用いることができる。複数の暗号モジュールのうち、現在情報処理装置で使用している暗号モジュールが完全性を検証しない暗号モジュール(検証機能を有さない暗号モジュール)である場合、その暗号モジュールは改ざんの攻撃を受けた可能性が懸念される。従って、その暗号モジュールを使って生成した鍵や証明書も信頼性が保証されていないことになる。ここで、情報処理装置において使用する暗号モジュールを、検証機能を有さない第1の暗号モジュールから検証機能を有する第2の暗号モジュール(例えば、FIPS140-2準拠モジュール)に変更した場合を考える。このような場合、検証機能を有さない第1の暗号モジュールで生成された鍵や証明書を継続して使用すると通信や暗号処理の信頼性を損なうことになり、検証機能を有する第2の暗号モジュールに期待される安全性が保障されなくなる。
本発明の目的は、上記従来技術の課題を解決することにある。
本発明の目的は、完全性の検証機能を有さない暗号モジュールが生成した鍵・証明書を、より信頼性の高い鍵・証明書に更新することにより、暗号処理や通信の信頼性を確保する技術を提供することにある。
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
暗号モジュールと、当該暗号モジュールが生成した鍵・証明書を格納する格納手段と、
前記格納手段に格納された鍵・証明書が、完全性を検証しない暗号モジュールが生成した鍵・証明書かどうか判定する判定手段と、
前記判定手段により完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を更新する更新手段と、を備えることを特徴とする。
暗号モジュールと、当該暗号モジュールが生成した鍵・証明書を格納する格納手段と、
前記格納手段に格納された鍵・証明書が、完全性を検証しない暗号モジュールが生成した鍵・証明書かどうか判定する判定手段と、
前記判定手段により完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を更新する更新手段と、を備えることを特徴とする。
本発明によれば、完全性を検証しない暗号モジュールが生成した鍵・証明書を、より信頼性の高い鍵・証明書に更新することにより、暗号処理や通信の信頼性が確保できるという効果がある。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
図1は、本発明の実施形態に係る情報処理システムの構成を説明する図である。
この情報処理システムは、ネットワーク101に接続された情報処理装置100(例えば、複合機(MFP)等)とクライアント102とを備える。クライアント102はネットワーク101を介して、情報処理装置100との間でデータの送受信を行い、各種の処理(例えば、画像形成処理)を行う。また情報処理装置100とクライアント102とは、公衆回線103を介した通信を行ってもよい。情報処理装置100は、ソフトウェアの機能として暗号モジュールを使用することができる。暗号モジュールは鍵や証明書を生成し、情報処理装置100のデータや通信データの暗号・復号処理、署名の生成・検証などの機能を提供する。暗号モジュールが生成した鍵や証明書は、RAM112やHDD114などの記憶装置に保存され、通信や暗号処理に使用される。尚、これら通信や暗号処理で使用できる鍵や証明書は、情報処理装置100の外で生成されたものを取り込んで使用してもよい。尚、情報処理装置100は、MFP全体の構成を備えることは必須ではなく、MFPに組み込まれる制御装置として機能するものであってもよい。
情報処理装置100は、装置全体を制御するコントロールユニット110、画像入力デバイスであるスキャナ128、画像出力デバイスであるプリンタ129、及びユーザインタフェースである操作部116を備える。
スキャナ128は、コントロールユニット110の制御により、原稿に形成された画像(原稿画像)を読み取り、読み取った原稿画像を表す画像データを生成する。スキャナ128は、生成した画像データをコントロールユニット110に送信する。プリンタ129は、コントロールユニット110の制御により画像形成(印刷)処理を行う。操作部116は、各種のキーボタン、タッチパネル等の入力装置、及び液晶ディスプレイ等の表示装置を備えた入出力装置である。操作部116は、キーボタンやタッチパネルへのユーザの操作に応じた指示をコントロールユニット110に送信する。また操作部116は、コントロールユニット110の制御により表示部に画像を表示する。
コントロールユニット110は、システムバス122及び画像バス123の2つのバスを備える。システムバス122と画像バス123とは、バスインタフェース120を介して相互に通信可能である。コントロールユニット110は、システムバス122にCPU(Central Processing Unit)111、RAM(Random Access Memory)112、及びROM113(Read Only Memory)を備える。CPU111は、ROM113に記憶されたコンピュータプログラムをRAM112に展開して実行することで、情報処理装置100の動作を制御する。RAM112は、作業領域として用いられる他に、画像データや操作部116から受け付けたデータを一時的に格納する格納領域を有する。
システムバス122は、更にHDD(Hard Disk Drive)114、操作部I/F115、ネットワークI/F117、モデム118、SRAM(Static Random Access Memory)119、及びタイマ121を備える。システムバス122に接続される各構成要素は、システムバス122を介して相互に通信可能である。
HDD114は、暗号モジュール格納領域、暗号モジュール設定の保存領域、鍵証明書の格納領域、証明書情報の保存領域等の格納領域が設けられる不揮発性の記憶装置である。暗号モジュール格納領域は、情報処理装置100で使用する暗号モジュールを格納する。この暗号モジュール格納領域には、複数の暗号モジュールを格納することができる。暗号モジュール設定の保存領域は、情報処理装置100が常時使用する暗号モジュールの設定情報を格納する。鍵証明書の格納領域は、通信や暗号処理に使用する鍵や証明書を格納する。HDD114の鍵証明書の格納領域には、格納している鍵証明書に関する情報、例えば情報処理装置100内の検証機能を有さない暗号モジュールで生成されたか、検証機能を有する暗号モジュールで生成されたか、等の管理情報が格納される。ここで、検証機能とは、暗号モジュールが改ざんされていないかを、暗号モジュール自体が確認する機能である。HDD114は、不揮発性で大容量の記憶が可能な装置であれば、フラッシュメモリ等の他の記憶装置で構成されてもよい。
操作部I/F115は、操作部116との間のインタフェースを制御する。操作部I/F115は、操作部116から送信される指示を取得してCPU111へ送信する。また、操作部I/F115は、操作部116の表示部に表示される画像を表すデータを送信する。ネットワークI/F117は、ネットワーク101を介した他の情報処理装置との間の通信制御を行う。本実施形態では、ネットワークI/F117は、ネットワーク101を介したクライアント102との間の通信制御を行う。モデム118は、公衆回線103を介した他の情報処理装置との間の通信制御を行う。モデム118によりファクシミリ通信が可能である。また本実施形態では、モデム118は、ネットワーク101を介したクライアント102との間の通信制御を行うこともできる。SRAM119は、高速動作可能な揮発性の記録媒体であり、各種プログラムや各種データを格納する。タイマ121は、例えばRTC(Real Time Clock)であり、コントロールユニット110に電力が供給されていないときでも日付及び時刻を計時する。
画像バス123は、RIP(Raster Image Processor)部124、デバイスI/F125、スキャナ画像処理部126、プリンタ画像処理部127を備える。画像バス123に接続される各構成要素は、画像バス123を介して相互に通信可能である。デバイスI/F125は、スキャナ128及びプリンタ129に接続される。デバイスI/F125は、CPU111から制御信号を取得して、スキャナ128及びプリンタ129に送信する。これによりスキャナ128及びプリンタ129は、制御信号に応じた動作を行う。またデバイスI/F125は、スキャナ128から取得した画像データをコントロールユニット110内に供給する。RIP部124は、例えば、クライアント102から受け取った画像記述言語で記述された画像データをビットマップイメージデータに変換する。スキャナ画像処理部126は、スキャナ128から取得した画像データに対する補正、加工、又は編集等の各種画像処理を行う。プリンタ画像処理部127は、プリンタ129により記録材に形成される画像を表す画像データに補正、解像度変換、又はハーフトーン処理等の各種画像処理を行う。
次にクライアント102の構成を説明する。クライアント102は、不図示のCPU、ROM、RAMを備える。CPUは、ROMから読み出したコンピュータプログラムを、RAMの作業領域を用いて実行することで、クライアント102の動作を制御する。クライアント102は、この他にプリンタドライバ131、入力部132、表示部133、及び通信部134を備える。
通信部134は、ネットワーク101を介した他の情報処理装置との通信制御を行う。本実施形態では、通信部134は、ネットワーク101を介して、情報処理装置100との間で通信を行う。プリンタドライバ131は、各種画像形成条件を設定する印刷ジョブを生成する。こうして生成された印刷ジョブは、通信部134を介して情報処理装置100に送信される。入力部132は、例えば、ポインティングデバイス、キーボード等を含む入力デバイスである。入力部132からから入力される指示等はCPU(不図示)へ送られる。表示部133は、例えば、液晶ディスプレイ等の表示装置であり、CPU(不図示)の制御により各種画像を表示する。
図2は、実施形態に係る情報処理装置100のソフトウェア構成を説明するブロック図である。情報処理装置100は、ユーザインタフェース部201(以下、UI部)、暗号モジュール設定部202、暗号モジュールの設定保持部203、暗号モジュール制御部204、鍵・証明書の管理情報保持部205を有する。情報処理装置100は、更に、暗号モジュール部206、鍵証明書データベース207を備える。
UI部201は、操作部116を介してユーザからの要求を受け付け、また操作画面を操作部116に表示する。暗号モジュール設定部202は、情報処理装置100が使用する暗号モジュールの選択に関する設定(暗号モジュールの選択設定)を、暗号モジュールの設定保持部203に保存する。暗号モジュールの設定保持部203は、暗号モジュールの実行や検証に関する設定を保持する。暗号モジュール制御部204は、暗号モジュールの設定保持部203に保持された暗号モジュールの設定に基づいて、暗号モジュール部206を検証し実行する所定の機能部である。
暗号モジュール設定部202は、UI部201からの指示により情報処理装置100で使用する暗号モジュールを決定し、使用する暗号モジュールを示す設定情報を暗号モジュールの設定保持部203に保存する。暗号モジュール制御部204は、情報処理装置100の起動時に暗号モジュールの設定保持部203に保持された暗号モジュールの設定に基づき、暗号モジュール部206に暗号モジュールの実行を指示する。暗号モジュール部206は、HDD114の暗号モジュール格納領域に格納されている複数の暗号モジュールの内のいずれかを、RAM112やSRAM119に展開して、その展開した暗号モジュールを実行させることができる。
情報処理装置100はその起動時、HDD114に記憶している暗号モジュールをRAM112やSRAM119に展開する。このとき使用する暗号モジュールの設定が、検証機能を有する暗号モジュールである場合、暗号モジュール制御部204は、その暗号モジュールを展開する前に、HDD114の暗号モジュールが改ざんされていないかを検証する。即ち、使用する暗号モジュールとして検証機能を有する暗号モジュールが設定されている場合には、当該暗号モジュールは情報処理装置100の起動時に、自身が改ざんされていないかを検証する検証処理を実行する。また、改ざん検証済みの暗号モジュールをHDD114からRAM112やSRAM119に展開した後は、暗号処理が期待通りの結果を出力するかを既知解テストにより検証する。既知解テストとは、暗号モジュールに対する特定の入力に対して期待値通りの結果を出力するか確認するテストである。そしてその既知解テストによる検証の結果、問題ないことを確認すると、その暗号モジュールの実行を許可する。一方、その検証結果が失敗の場合は、その暗号モジュールが完全性を維持できていないと判断し、その暗号モジュールの実行を禁止する。その場合、情報処理装置100は暗号処理を実行できなくなり、暗号処理を含む通信等の機能は全て動作できなくなる。本実施形態において完全性とは、暗号モジュールが改ざんされていないことが確認されていること、又は、所定の入力に対して所定の結果を出力することが確認されていることの少なくとも何れかを意味する。
暗号モジュール設定部202は、使用する暗号モジュールをユーザによる設定に応じて決定することができる。例えばユーザは、検証機能を有するFIPS暗号モジュールと、検証機能を有さないnon-FIPS暗号モジュールのうち何れの暗号モジュールを使用するかを、暗号モジュール設定部202を介して情報処理装置100に設定することができる。ここでFIPS暗号モジュールとは例えば、FIPS140-2に準拠するモジュールである。以下、便宜のため、使用する暗号モジュールとして検証機能を有するFIPS暗号モジュールが設定されるモードをFIPSモードと呼ぶ。また、使用する暗号モジュールとして検証機能を有さないnon-FIPS暗号モジュールが設定されるモードをnon-FIPSモードと呼ぶ。以下では、FIPS暗号化モジュールとnon-FIPS暗号化モジュールを切り替えて使用する例について説明するが、本発明はこれに限らない。検証機能を有する暗号化モジュールと、検証機能を有さない暗号モジュールを切り替えて使用可能なものであればよい。或いは、一つの暗号モジュールにおいて、検証機能の有効と無効を切り替えられるものであってもよい。この場合、検証機能が有効化された状態の暗号モジュールが検証機能を有する暗号モジュールに対応し、検証機能が無効化された状態の暗号モジュールが検証機能を有さない暗号モジュールに対応する。
ユーザは、信頼性の高い鍵及び証明書を用いて暗号化処理を実行させたい場合には、FIPSモードを有効にするように設定することができる。しかしながら、検証機能の実行には時間を要する。情報処理装置100の起動時間を短縮させたいユーザは、FIPSモードを無効にして、non-FIPSモードで動作するように設定することができる。また、FIPS暗号モジュールはセキュリティ強度を担保するために、使用可能な暗号化アルゴリズムの種類を制限し、暗号化強度の高い暗号化アルゴリズムしかサポートしない。情報処理装置100において動作する、あるアプリケーションが、FIPS暗号モジュールのサポートしない暗号化アルゴリズムしか使用できないアプリケーションである場合、FIPSモードでは当該アプリケーションは動作できない。同様に、情報処理装置100と通信する通信相手の装置が使用する暗号化アルゴリズムが、FIPS暗号モジュールにおいてサポートされていない場合がある。このような場合、FIPSモードを有効化すると、アプリケーションが使用できなくなったり、通信相手と通信できなくなったりする場合がある。このような場合、ユーザは、FIPSモードを無効に設定することができる。検証機能を無効に設定すると、暗号モジュールとして検証機能を有さない暗号モジュール(non-FIPS暗号モジュール)が選択される。検証機能を有さない暗号モジュールが、上述のアプリケーションや通信相手が用いる暗号化アルゴリズムをサポートしていれば、アプリケーションを動作させたり、通信相手と通信を行ったりすることができる。
図2の説明に戻る。鍵・証明書データベース207は、暗号モジュール部206の暗号モジュールが生成した鍵・証明書や、情報処理装置100の外部で生成してインストールした鍵・証明書を一元管理し、安全に保存し、また検索できるようにしている。暗号モジュール制御部204が新しい鍵・証明書を登録し、登録された鍵・証明書を利用する場合は、必ず、この鍵・証明書データベース207を介してなされる。鍵・証明書の管理情報保持部205は、鍵・証明書データベース207で管理している鍵・証明書に関する情報(証明書リスト)を保持している。暗号モジュール制御部204は、鍵・証明書データベース207の鍵・証明書に紐付けて証明書リストの情報を鍵・証明書の管理情報保持部205から取得し、また証明書リストの情報を更新することができる。
図3は、実施形態に係る情報処理装置100のHDD114の鍵・証明書の格納領域に格納される鍵・証明書に関する情報(証明書リスト300)の一例を示す図である。
この証明書リスト300は、鍵・証明書の格納領域に、鍵・証明書が名前付きで格納されていることを例示する。「鍵・証明書の使用先」欄301には、その鍵・証明書の使用先が記録される。この「鍵・証明書の使用先」欄301の内容は、ユーザの設定によって変更可能である。「生成元」欄302には、その鍵・証明書が情報処理装置100内の暗号モジュールで生成されたものであれば「内部」が記録され、外部で生成され、それをインストールしたものであれば「外部」が記録される。また情報処理装置100に最初から組み込まれているものであれば「−」が記録される。「完全性検証済み暗号モジュールで生成」欄303には、暗号モジュールの検証機能で検証済みの暗号モジュールが生成した鍵・証明書であれば「Yes」が記録され、検証済みの暗号モジュールが生成した鍵・証明書ではない場合は「No」が記録される。例えば、FIPSモード中にFIPS暗号モジュールが生成した鍵・証明書であれば、「完全性検証済み暗号モジュールで生成」欄303に「Yes」が記録される。また、例えば、non-FIPSモード中にnon-FIPS暗号モジュールが生成した鍵・証明書であれば、「完全性検証済み暗号モジュールで生成」欄303に「No」が記録される。これら欄302,303には、暗号モジュールを使って鍵・証明書を生成した際や、情報処理装置100の外部から鍵・証明書をインストールした際には必ず、それに応じた値が記録される。
図4は、実施形態に係る情報処理装置100に暗号モジュールを設定するときの設定画面の一例を示す図である。
本実施形態では、これら画面は情報処理装置100の操作部116又はクライアント102の表示部133に、暗号モジュールの設定時に表示される。暗号モジュールの設定時には、図4(A)の暗号モジュール設定メニュー画面401と図4(B)の暗号モジュール設定画面410が表示される。
暗号モジュール設定メニュー画面401は、暗号モジュールの設定を行う際に表示される画面である。暗号モジュール設定メニュー画面401の「暗号モジュールの設定」402が選択されることで、暗号モジュールの設定が可能になり、暗号モジュール設定画面410が表示される。暗号モジュールの設定画面410は、検証機能を有する暗号モジュールの使用の有効、或いは無効を設定するための画面である。暗号モジュール設定画面410は、検証機能を有する暗号モジュールの使用を有効にするラジオボタン411、検証機能を有する暗号モジュールの使用を無効にするラジオボタン412を含む。更に、この画面の設定を確定するOKボタン413、及びこの画面の設定を無効にするキャンセルボタン414を含む。
ユーザが暗号モジュール設定画面410のラジオボタン411(有効)を選択してOKボタン413を押下することで、情報処理装置100における検証機能を有する暗号モジュールを使用する設定が有効になる。情報処理装置100は、OKボタン413が押下されると、暗号モジュール設定部202を介しHDD114に暗号モジュールの設定情報を格納する。
ユーザが使用する暗号モジュールを変更すると、CPU111は後述する鍵・証明書の設定処理を必ず実行し、その変更された設定に応じて、情報処理装置100の保持する鍵・証明書の更新処理を行う。
図5は、実施形態に係る情報処理装置における、暗号モジュールの設定に応じた鍵・証明書の設定処理を説明するフローチャートである。この設定処理は、暗号モジュールの設定が変更された場合に行われる。尚、このフローチャートで示す処理は、ROM113或いはHDD114からRAM112に展開されたプログラムをCPU111が実行することにより達成される。
先ずS501でCPU111はHDD114から、検証機能を有する暗号モジュールを使用するかどうかの設定を取得する。この設定は、前述の図4(B)の画面を介して設定されたものである。次にS502に進みCPU111は、検証機能を有する暗号モジュールの使用が有効に設定されているか否かを判定する。ここで検証機能を有する暗号モジュールの使用が無効であると判定するとCPU111は、この鍵・証明書の設定処理を終了する。
一方、S502でCPU111が、検証機能を有する暗号モジュールの使用が有効であると判定するとS503に処理を進め、CPU111は、鍵・証明書の格納領域に格納されている証明書リストを参照して、鍵・証明書を探索する。そしてS504に進みCPU111は、図3の証明書リスト300の「生成元」欄302を参照し、その欄302が「内部」、即ち、情報処理装置100の内部で生成された鍵・証明書を探索する。S504でCPU111は、情報処理装置100の内部で生成された鍵・証明書を検出するとS505に処理を進め、CPU111は、その証明書リスト300の「完全性検証済み暗号モジュールで生成」欄303を参照する。そして、その鍵・証明書が、完全性を検証済みの暗号モジュールで生成されたものか否かを判定する。ここで鍵・証明書が完全性を検証済みの暗号モジュールで生成された、即ち、欄303が「Yes」と判定すると、その鍵・証明書を更新する必要が無いため、S503以降の証明書リスト300の探索を繰り返し行う。完全性検証済みの暗号モジュールとは、即ち、検証機能を有する暗号モジュールである。検証機能を有する暗号モジュールは、起動時に検証処理を実行するため、完全性が検証済の状態で、鍵や証明書の生成を行う。
一方、鍵・証明書が完全性検証済みの暗号モジュールで生成されたものではない、即ち、欄303が「No」と判定するとS506に進み、CPU111は、図6を参照して後述する鍵・証明書の更新処理を実行する。完全性検証済みの暗号モジュールで生成されたものではない鍵・証明書とは、即ち、検証機能を有していない暗号モジュールで生成された鍵や証明書である。検証機能を有していない暗号モジュールとは、即ち、自身の完全性を検証しない暗号モジュールである。
図6は、図5のS506の鍵・証明書の更新処理を説明するフローチャートである。この処理は、図5の鍵・証明書の設定処理において証明書リスト300を探索し、情報処理装置100の内部で生成された鍵・証明書であり、且つ、検証機能を有さない暗号モジュールで生成された鍵・証明書を検出した場合に実行される。
図6の処理の流れを説明する前に、図7を参照して、鍵・証明書の更新に関する設定を行う処理を図7を参照して説明する。
図7は、実施形態に係る情報処理装置100の操作部116に表示される鍵・証明書の更新設定画面の一例を示す図である。
図7(A)の更新設定画面700は、完全性を検証しない暗号モジュールが生成した鍵・証明書(Self−Key1)を継続して使用しないことを推奨し、それを更新するための選択肢を提示する。ユーザは、ラジオボタン701〜704のいずれかを選択することで、その鍵・証明書の更新方法を決定することができる。図7(A)では、ボタン701の「鍵・証明書を再生成する(推奨)」が選択されている。
図7(B)の更新設定画面710は、その鍵・証明書(Self−Key1)が通信用に設定されており、且つ、図7(A)でボタン704以外が選択されて、その鍵・証明書を継続して使用しないように設定されたときに表示される。ここでは、その鍵・証明書を通信に使用できないように、通信が切断されることを警告している。
図7(C)の更新設定画面720は、図7(A)でボタン701が選択されて、その鍵・証明書(Self−Key1)を、完全性が検証済みの暗号モジュールで再生成することをユーザに確認する画面である。
図7(D)の更新設定画面730は、図7(A)でボタン702が選択されて、その鍵・証明書(Self−Key1)の代わりに、外部で生成した鍵・証明書をインストールすることを選択した場合にアップロードするファイルを指定する画面である。
図7(E)の更新設定画面740は、図7(A)でボタン703が選択されて、その鍵・証明書(Self−Key1)の使用先が決定されており、その鍵・証明書を削除した場合は「Default Key」が設定されることを警告する画面である。
先ずS601で情報処理装置100のCPU111は、鍵・証明書の更新処理において操作部116に図7(A)に例示する更新設定画面700を表示する。ユーザは、操作部116に表示された更新設定画面でラジオボタン701〜704のいずれかを選択し、その鍵・証明書の更新の方法を選択する。操作部116はユーザが選択した更新方法に関する情報をコントロールユニット110に送信する。これによりCPU111は、その鍵・証明書の更新方法を決定する。尚、鍵・証明書の更新処理は、後述する全ての選択肢を備える必要はなく、情報処理装置の機能に応じて部分的に備えることもできる。
次にS602でCPU111は、ユーザが、図7(A)の更新設定画面700のラジオボタン701〜704の内、ボタン704の「継続使用する」を選択したかどうか判定する。「継続使用する」を選択したときは、選択した処理は継続であるため、その鍵・証明書に関する更新処理を実行せずに、元の処理に戻る。
一方、S602でユーザが、図7(A)の更新設定画面700のラジオボタン701の「鍵証明書を再生成する」を選択した場合は、選択した更新方法は継続使用でないためS603に進む。S603でCPU111は、証明書リスト300から、その鍵・証明書の使用先の情報を取得し、RAM112或いはSRAM119に保持する。次にS604に進みCPU111は、その鍵・証明書の使用先が通信用かどうか判定し、そうであればS605に進み、図7(B)の設定画面710を表示し、通信が切断することを警告する。次にS606に進みCPU111は、ユーザがキャンセルボタン712を押下したと判定するとS601に進み、その鍵・証明書の更新処理の最初の処理に戻る。一方、S606でユーザがOKボタン711を押下したと判定したときはS607に進み、そのまま処理を継続する。
S607では、ユーザが選択した更新方法は「再生成」であるためS608に進み、図7(C)で例示する設定画面720を表示し、新しい鍵・証明書の生成を行うことをユーザに確認する。ここでユーザが設定画面720のキャンセルボタン722を押下したと判定すると、S601の鍵・証明書の更新処理の最初の処理に戻る。一方、ユーザが設定画面720のOKボタン721を押下したと判定するとS609に進み、CPU111は、完全性が検証済みの暗号モジュールを用いて新しい鍵・証明書を生成し、鍵証明書データベース207を通してHDD114に保存する。そしてS613に進みCPU111は、RAM112或いはSRAM119に保持された、新たな鍵・証明書の名前と使用先の情報を、新しい鍵・証明書の名前、使用先として証明書リスト300に登録する。そしてS614からS619に進み、元の古い鍵・証明書を削除し、鍵・証明書の更新処理から鍵・証明書設定処理に戻る。
図8は、実施形態に係る情報処理装置100が鍵・証明書の更新処理を実行することで、図3に例示する証明書リスト300が変更された結果の一例を示す図である。
図8(A)は、通信用に設定された鍵・証明書の「Self−Key1」を再生成した場合を示す。図8(A)の証明書リスト801のように「完全性検証済み暗号モジュールで生成」の欄303が「Yes」に更新される。このようにして鍵・証明書の設定処理、更新処理が完了する。通信用に設定された新しい鍵・証明書は、情報処理装置100及びクライアント102の通信時に使用される。
以上のような処理では、暗号処理や通信に用いる鍵・証明書が、完全性を検証済み暗号モジュールで再生成した信頼性の高い鍵・証明書に自動的に更新されるため、より信頼性の高い暗号処理や通信を実現できる。また、信頼性が保証されていない鍵・証明書は削除されるため、人為的ミスにより利用設定してしまうことを未然に防ぐことができる。
またユーザが、図7(A)で例示する更新設定画面700の選択肢の内、ラジオボタン702の「インストールして交換する」を選択した場合、前述の鍵・証明書の更新処理の通信断確認までの処理(S601〜S607)と同等の処理を実行する。
ここでは、ユーザが選択した処理は「インストールして交換」であるためS607からS610に進みCPU111は、図7(D)に例示する設定画面730を表示する。この画面730で、ユーザが「鍵証明書ファイルを選択」ボタン731を押下すると、インストールの対象である新しい鍵・証明書のファイルを選択することができる。ここで選択する鍵・証明書のファイルは、予め情報処理装置100のHDD114に格納されているものを選択する。また或いはユーザが、クライアント102などの情報処理装置100と通信可能な装置で画面を表示し操作する場合は、そのクライアント102が保持する鍵・証明書を選択してもよい。設定画面730でユーザがキャンセルボタン733を押下した場合はS611からS601に戻る。一方、S611でユーザが設定画面730のOKボタン732を押下したと判定するとS612に進みCPU111は、選択された新しい鍵・証明書インストールして鍵証明書データベース207に登録する。そしてCPU111はS613で、RAM112或いはSRAM119に保持された、その鍵・証明書の使用先の情報を、新しい鍵・証明書の使用先として証明書リスト300に登録する。そしてS614からS619に進みCPU111は、その元の古い鍵・証明書を削除して、この処理を終了する。
図8(B)の証明書リスト802は、上述の鍵・証明書をインストールする更新処理を実行することにより、証明書リストが変更された結果の例示図である。
図8(B)の証明書リスト802は、図3の通信用に設定された鍵・証明書の「Self−Key1」に対しインストールを選択した場合を示す。ここでは図3の「Self−Key1」が削除され、新しく「Device_Key2」810が追加され、その鍵・証明書の使用先の欄301が通信用(SSL)に設定されている。このようにして鍵・証明書の設定処理、更新処理が完了する。尚、こうして通信用に設定された「Device_Key2」は、情報処理装置100及びクライアント102の通信時に使用される。
以上説明した処理では、暗号処理や通信に用いる鍵・証明書が、ユーザが意識的に用意した鍵・証明書に更新されるため、完全性を検証しない暗号モジュールで生成された信頼性が保証されていない鍵・証明書が継続して通信に使用されるのを防止できる。これにより、より信頼性の高い鍵・証明書の使用をユーザが選択できるようになる。また信頼性が保証されていない鍵・証明書は削除されるため、人為的ミスにより、使用するように設定されるのを未然に防ぐことができる。
またユーザが、図7(A)で例示する更新設定画面700でラジオボタン703の「破棄する」を選択した場合、上述の処理(S601〜S606)と同等の処理を実行する。ここでは、選択された処理は破棄であるためS607,S610,S614,S615に進みCPU111は、S603でRAM112或いはSRAM119に保持された、その鍵・証明書の使用先が設定されているか否か判定する。ここで使用先が設定されていると判定するとS616に進みCPU111は、図7(E)に例示する更新設定画面740を表示し、「Default Key」が適用されることをユーザに確認する。この「Default Key」は、情報処理装置100に予め組み込まれた鍵証明書である。
そして、S617でCPU111は、ユーザが設定画面740のキャンセルボタン742を押下したと判定するとS601に進む。一方、S617でユーザが設定画面740のOKボタン741を押下したと判定するとS618に進む。S618でCPU111は、RAM112或いはSRAM119に保持された、その鍵・証明書の使用先の情報を、「Default Key」の使用先として証明書リスト300に登録する。そしてS619に進みCPU111は、元の鍵・証明書を削除して、この処理を終了する。
図8(C)の証明書リスト803は、「破棄する」を選択した更新処理を実行することで、図3に例示する証明書リスト300が変更された結果の例示図である。
ここでは図3の通信用に設定された鍵・証明書の「Self−Key1」が破棄されて、「Default Key」の使用先が通信用(SSL)に設定される。このようにして鍵・証明書の設定処理、更新処理が完了する。ここで通信用に設定された「Self−Key1」は、情報処理装置100及びクライアント102の通信時に使用される。
以上説明したように実施形態によれば、暗号処理や通信に用いる鍵・証明書が、情報処理装置に予め登録された鍵・証明書に更新される。このため、完全性を検証しない暗号モジュールで生成された、信頼性が保証されていない鍵・証明書が継続して通信に使用されるのを防止できる。
また鍵・証明書を破棄することにより、暗号化通信できなくなる事態も回避できる。更に、信頼性が保証されていない鍵・証明書は削除されるため、人為的ミスにより、その鍵・証明書を使用する設定してしまうことを未然に防ぐことができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
100…情報処理装置、101…ネットワーク、102…クライアント、110…コントロールユニット、111…CPU、112…RAM、113…ROM、114…HDD、117…ネットワークI/F
Claims (13)
- 暗号モジュールと、当該暗号モジュールが生成した鍵・証明書を格納する格納手段と、
前記格納手段に格納された鍵・証明書が、暗号モジュールの完全性を検証しない暗号モジュールが生成した鍵・証明書かどうか判定する判定手段と、
前記判定手段により完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を更新する更新手段と、
を有することを特徴とする情報処理装置。 - 前記暗号モジュールを実行して、通信、暗号処理を行う暗号モジュール制御手段を、更に有することを特徴とする請求項1に記載の情報処理装置。
- 完全性を検証する前記暗号モジュールを使用するか否かを設定する設定手段を、更に有し、
前記設定手段が前記完全性を検証しない暗号モジュールを使用する設定から、前記完全性を検証する暗号モジュールを使用する設定に変更することに応じて、前記判定手段が前記判定を実施することを特徴とする請求項1又は2に記載の情報処理装置。 - 前記完全性を検証する暗号モジュールは、該暗号モジュールが改ざんされていないことを検証する検証手段を有することを特徴とする請求項3に記載の情報処理装置。
- 前記更新手段は、
前記完全性を検証しない暗号モジュールが生成した鍵・証明書であると判定された鍵・証明書の更新方法をユーザに選択させる画面を表示する表示手段を有し、当該画面を介したユーザの選択に従って、当該鍵・証明書を更新することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。 - 前記更新方法は、前記完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を、完全性を検証する暗号モジュールを使用して再生成することを含むことを特徴とする請求項5に記載の情報処理装置。
- 前記更新方法は、前記完全性を検証しない暗号モジュールが生成した鍵・証明書であると判定された鍵・証明書の破棄を含むことを特徴とする請求項5に記載の情報処理装置。
- 前記更新方法は、前記完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書をインストールすることを含むことを特徴とする請求項5に記載の情報処理装置。
- 前記更新手段が前記鍵・証明書を更新した後、前記判定手段により完全性を検証しない暗号モジュールが生成した鍵・証明書と判定された鍵・証明書を破棄する破棄手段を、更に有することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
- 前記格納手段は、前記鍵・証明書の生成元を示す情報を格納しており、前記判定手段は、前記情報が前記情報処理装置で生成されたことを示す鍵・証明書に対して前記判定を実施することを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
- 前記更新手段による更新の前に、前記判定された鍵・証明書の使用が通信である場合、通信が切断されることをユーザに警告する警告手段を、更に有することを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。
- 暗号モジュールと、当該暗号モジュールが生成した鍵・証明書を記憶する記憶手段を有する情報処理装置を制御する制御方法であって、
前記記憶手段に格納された鍵・証明書が、完全性を検証しない暗号モジュールが生成した鍵・証明書かどうか判定する判定工程と、
前記判定工程で完全性を検証しない暗号モジュールが生成した鍵・証明書であると判定された鍵・証明書を更新する更新工程と、
を有することを特徴とする情報処理装置の制御方法。 - コンピュータを、請求項1乃至11のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016136296A JP2018007215A (ja) | 2016-07-08 | 2016-07-08 | 情報処理装置とその制御方法、及びプログラム |
US15/630,121 US10476890B2 (en) | 2016-07-08 | 2017-06-22 | Information processing apparatus, method of controlling the same, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016136296A JP2018007215A (ja) | 2016-07-08 | 2016-07-08 | 情報処理装置とその制御方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018007215A true JP2018007215A (ja) | 2018-01-11 |
Family
ID=60892572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016136296A Pending JP2018007215A (ja) | 2016-07-08 | 2016-07-08 | 情報処理装置とその制御方法、及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10476890B2 (ja) |
JP (1) | JP2018007215A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021140342A (ja) * | 2020-03-03 | 2021-09-16 | 株式会社日立製作所 | 暗号装置、及び、暗号装置のセルフテスト方法 |
JP2023518402A (ja) * | 2020-03-19 | 2023-05-01 | 華為技術有限公司 | 証明書リスト更新方法および装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022147764A (ja) * | 2021-03-23 | 2022-10-06 | キヤノン株式会社 | 監視装置、その制御方法、プログラム、及び画像処理装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5100286B2 (ja) | 2007-09-28 | 2012-12-19 | 東芝ソリューション株式会社 | 暗号モジュール選定装置およびプログラム |
US8843739B2 (en) * | 2012-04-04 | 2014-09-23 | Lockheed Martin Corporation | Anti-tamper device, system, method, and computer-readable medium |
CN103595530B (zh) * | 2012-08-17 | 2017-04-26 | 华为技术有限公司 | 软件密钥更新方法和装置 |
JP6226709B2 (ja) | 2013-11-15 | 2017-11-08 | キヤノン株式会社 | 画像形成装置及びその制御方法、並びにプログラム |
US9264410B2 (en) * | 2014-06-05 | 2016-02-16 | Sony Corporation | Dynamic configuration of trusted executed environment resources |
-
2016
- 2016-07-08 JP JP2016136296A patent/JP2018007215A/ja active Pending
-
2017
- 2017-06-22 US US15/630,121 patent/US10476890B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021140342A (ja) * | 2020-03-03 | 2021-09-16 | 株式会社日立製作所 | 暗号装置、及び、暗号装置のセルフテスト方法 |
JP7053700B2 (ja) | 2020-03-03 | 2022-04-12 | 株式会社日立製作所 | 暗号装置、及び、暗号装置のセルフテスト方法 |
JP2023518402A (ja) * | 2020-03-19 | 2023-05-01 | 華為技術有限公司 | 証明書リスト更新方法および装置 |
JP7522216B2 (ja) | 2020-03-19 | 2024-07-24 | 華為技術有限公司 | 証明書リスト更新方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
US10476890B2 (en) | 2019-11-12 |
US20180013766A1 (en) | 2018-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11838430B2 (en) | Information processing apparatus, method of controlling the same, and storage medium | |
JP5915278B2 (ja) | プログラム、情報処理装置、記憶媒体 | |
JP2017098914A (ja) | 情報処理装置、情報処理装置の制御方法、プログラム、及び記憶媒体 | |
JP7163083B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、プログラム | |
JP6946074B2 (ja) | 画像形成装置及びその制御方法、並びにプログラム | |
JP2022153604A (ja) | 情報処理装置、情報処理装置の制御方法、及び、プログラム | |
US20110276959A1 (en) | Information processing apparatus, installation system, information processing method, and installation method | |
JP2017138883A (ja) | 装置及びその制御方法、並びにプログラム | |
JP2023078380A (ja) | 情報処理装置、情報処理装置の制御方法、及び、プログラム | |
JP2018007215A (ja) | 情報処理装置とその制御方法、及びプログラム | |
JP6351245B2 (ja) | 画像形成装置及びその制御方法、並びにプログラム | |
JP2016048525A (ja) | 出力システム、出力装置、プログラム及び出力方法 | |
JP2012137849A (ja) | デバイス、端末装置、サーバ、プログラム、及びファームウェアの更新方法 | |
JP6147240B2 (ja) | 情報処理装置、該装置の制御方法、並びにプログラム | |
JP2015049793A (ja) | 画像処理装置認証システム及びその画像処理装置 | |
JP2011076462A (ja) | セキュア印刷設定用プログラムおよびセキュア印刷設定方法 | |
US11917414B2 (en) | Information processing method and information processing system | |
JP2008171041A (ja) | 画像形成装置、画像形成装置の起動方法、制御装置及び拡張ユニットの起動方法 | |
US9524387B2 (en) | Information processing apparatus, control method for information processing apparatus, and storage medium | |
JP7176379B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
EP4195080A1 (en) | Information processing system, information processing method, and carrier means | |
JP2010093469A (ja) | 情報処理装置、情報処理システム、およびプログラム | |
JP2021083002A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2008071322A (ja) | 画像形成装置、画像形成システム、機密プリント実行方法および機密プリント実行プログラム | |
JP2022164049A (ja) | 情報処理装置とその制御方法、及びプログラム |