JP5391756B2 - Image forming apparatus, information management method, and program - Google Patents
Image forming apparatus, information management method, and program Download PDFInfo
- Publication number
- JP5391756B2 JP5391756B2 JP2009065296A JP2009065296A JP5391756B2 JP 5391756 B2 JP5391756 B2 JP 5391756B2 JP 2009065296 A JP2009065296 A JP 2009065296A JP 2009065296 A JP2009065296 A JP 2009065296A JP 5391756 B2 JP5391756 B2 JP 5391756B2
- Authority
- JP
- Japan
- Prior art keywords
- certificate
- client
- information storage
- private key
- storage
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Facsimiles In General (AREA)
- Facsimile Transmission Control (AREA)
Description
本発明は、画像形成装置、情報管理方法、及びプログラムに関し、特にSSL通信に関する証明書等を利用する画像形成装置、情報管理方法、及びプログラムに関する。 The present invention relates to an image forming apparatus, an information management method, and a program, and more particularly to an image forming apparatus, an information management method, and a program that use a certificate related to SSL communication.
近年の画像形成装置は高機能化し、ネットワークを介して接続されているコンピュータと連携して各種のサービスの提供が可能となっている。ネットワークを介したコンピュータとの連携において通信の安全性の確保は重要な課題である。そこで、画像形成装置が行う通信に関しても、暗号化技術を利用したセキュアな通信が必要とされている。 In recent years, image forming apparatuses have become highly functional, and various services can be provided in cooperation with computers connected via a network. Ensuring communication safety is an important issue in cooperation with computers via networks. Therefore, secure communication using an encryption technique is also required for communication performed by the image forming apparatus.
セキュアな通信技術の一つとして、SSL(Secure Socket Layer)が存在する。SSLでは、公開鍵を含む証明書と、当該公開鍵と対をなす秘密鍵とが利用される。すなわち、送信側は、公開鍵によって情報を暗号化して送信し、受信側は、秘密鍵によって当該情報を復号する。したがって、通信経路において情報の漏洩等が防止される。 SSL (Secure Socket Layer) exists as one of the secure communication technologies. In SSL, a certificate including a public key and a private key paired with the public key are used. That is, the transmitting side encrypts information with the public key and transmits the information, and the receiving side decrypts the information with the secret key. Therefore, information leakage and the like are prevented in the communication path.
そうすると、SSL通信において証明書及び秘密鍵の管理が非常に重要となる。すなわち、証明書及び秘密鍵が盗まれた場合、他者による成りすましや、通信情報の盗聴等が容易となってしまう。 Then, management of certificates and private keys becomes very important in SSL communication. That is, when the certificate and the private key are stolen, it becomes easy for others to impersonate and wiretap communication information.
本発明は、上記の点に鑑みてなされたものであって、SSL通信に利用される証明書及び秘密鍵の管理を適切に行うことのできる画像形成装置、情報管理方法、及びプログラムの提供を目的とする。 The present invention has been made in view of the above points, and provides an image forming apparatus, an information management method, and a program that can appropriately manage certificates and private keys used for SSL communication. Objective.
そこで上記課題を解決するため、本発明は、画像形成装置であって、当該画像形成装置に固有の暗号鍵を記憶したセキュアな記憶手段と、SSL通信に利用されるクライアント証明書及び秘密鍵の入力を受け付ける入力受付手段と、入力された前記クライアント証明書及び秘密鍵を前記固有の暗号鍵によって暗号化し、証明書記憶手段に記憶させる証明書管理手段とを有する。 Accordingly, in order to solve the above-described problem, the present invention provides an image forming apparatus, a secure storage unit that stores an encryption key unique to the image forming apparatus, and a client certificate and a private key used for SSL communication. Input receiving means for receiving an input; and certificate management means for encrypting the input client certificate and private key with the unique encryption key and storing them in a certificate storage means.
このような画像形成装置では、SSL通信に利用される証明書及び秘密鍵の管理を適切に行うことができる。 In such an image forming apparatus, it is possible to appropriately manage certificates and private keys used for SSL communication.
SSL通信に利用される証明書及び秘密鍵の管理を適切に行うことができる。 Certificates and private keys used for SSL communication can be appropriately managed.
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図1において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、操作パネル15、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram illustrating a hardware configuration example of an image forming apparatus according to an embodiment of the present invention. 1, the
コントローラ11は、CPU111、RAM112、ROM113、HDD114、及びTPM(Trusted Platform Module)115等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記録される。TPM115は、セキュアな記憶手段の一例であり、セキュリティチップとも呼ばれる。TPM115は、各画像形成装置10に対して固有のものであり、画像形成装置10より取り外されてしまうと画像形成装置10の起動はできなくなる。また、TPM115を取り外して他の画像形成装置10又はコンピュータによってTPM115の内容を読み込むことはできない。本実施の形態において、TPM115は、暗号鍵を生成し格納する。暗号鍵は、画像形成装置10がSSL(Secure Socket Layer)通信に利用するクライアント証明書(電子証明書)及び秘密鍵の暗号化及び復号に利用される。暗号鍵は、画像形成装置10ごとに固有のTPM115によって生成されるため、画像形成装置10ごとに異なるもの(固有のもの)となる。なお、SSL通信に利用する秘密鍵と、TPM115に保存されている暗号鍵との混同を避けるため、以下において後者の暗号鍵を「機器固有鍵」という。
The controller 11 includes a
スキャナ12は、原稿より画像データを読み取るためのハードウェアである。プリンタは13、画像データを印刷用紙に印刷するためのハードウェアである。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル15は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶パネル等の表示手段を備えたハードウェアである。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記録されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記録されたプログラムだけでなく、SDカード80に記録されたプログラムもRAM112にロードされ、実行されうる。
The
図2は、本発明の実施の形態における画像形成装置のソフトウェア構成例を示す図である。同図に示されるように、画像形成装置10は、VM121a、121b、及び121c(以下、それぞれを区別しないで称する場合「VM121」という。)の三つのJava(登録商標)VM(Virtual Machine:仮想マシン)を有する。VM121は、Java(登録商標)に固有のバイトコードの形式によるプログラムをネイティブコードに変換してCPU111に実行させる。但し、画像形成装置10は、複数のVM121を有していなくてもよく、少なくとも一つのVM121を有していればよい。
FIG. 2 is a diagram illustrating a software configuration example of the image forming apparatus according to the embodiment of the present invention. As shown in the figure, the
各VM121において動作するソフトウェアコンポーネント(以下、単に「コンポーネント」という。)は、アプリケーションメカニズム131、サービスメカニズム132、デバイスメカニズム133、及びアスペクトレイヤ134等の論理的な層に分類されて実装される。
Software components (hereinafter simply referred to as “components”) operating in each VM 121 are classified and implemented in logical layers such as an
アプリケーションメカニズム131には、基本的にユーザから認識される単位におけるサービス(例えばコピー、印刷等)を提供するための処理を実行するコンポーネントが属する。同図では、VM121a上で動作するコンポーネントAがアプリケーションメカニズム131に属するコンポーネントとして例示されている。
The
サービスメカニズム132には、アプリケーションメカニズム131に属する複数のコンポーネントから(共通的に)利用される、よりプリミティブな機能を実現するコンポーネントが属する。同図では、VM121b上で動作するコンポーネントBがサービスメカニズム132に属するコンポーネントとして例示されている。
The
デバイスメカニズム133には、画像形成装置10のハードウェアを制御するコンポーネントが属する。同図では、VM121a上で動作するコンポーネントCがデバイスメカニズム133に属するコンポーネントとして例示されている。
A component that controls the hardware of the
アスペクトレイヤ134は、アプリケーションメカニズム131、サービスメカニズム132、及びデバイスメカニズム133に属するコンポーネントより共通的に利用される機能を有する。同図において、アスペクトレイヤ134は、情報保管用証明書生成部140及び証明書管理部150等を含む。
The
情報保管用証明書生成部140は、情報保管用証明書を生成する。本実施の形態において、情報保管用証明書は、SSL通信に利用されるクライアント証明書を利用する際に必要となる情報(すなわち、SSL通信において利用される情報。以下「付随情報」という。)を保管(格納)するための電子証明書であり、そのデータ構造は、クライアント証明書と同様である。例えば、本実施の形態においてクライアント証明書が公開鍵証明書の標準規格の一つであるX509形式に準拠する場合、情報保管用証明書は、X509形式に準拠する。情報保管証明書をクライアント証明書と同様に扱えるようにするためのである。
The information storage
図3は、情報保管用証明書のデータ構造例を説明するための図である。同図では、X509形式に準拠した構造が示されている。X509形式の証明書は、version(X509のバージョン)、serialNumber(シリアル番号)、signature(証明書の署名方式)、issuer(証明書の発行者である認証局の識別名)、validity(公開鍵の有効期限(開始日時と終了日時))、subject(証明書内に含まれる公開鍵に対応する秘密鍵の所有者の識別名)、subjectPublicKeyInfo(証明書の公開鍵)、issuerUniqueIdentifier(認証局の固有識別子)、subjectUniqueIdentifier(所有者の固有識別子)、及びextensions(拡張用フィールド)等の項目より構成される。 FIG. 3 is a diagram for explaining an example of the data structure of the information storage certificate. In the figure, a structure conforming to the X509 format is shown. Certificates in X509 format are version (version of X509), serialNumber (serial number), signature (signature method of certificate), issuer (identifier name of certificate authority that issued the certificate), validity (public key) Expiration date (start date / time and end date / time)), subject (identifier of the owner of the private key corresponding to the public key included in the certificate), subjectPublicKeyInfo (public key of the certificate), issuerUniqueIdentifier (unique identifier of the certificate authority) ), SubjectUniqueIdentifier (owner's unique identifier), extensions (extension field), and the like.
これらの項目の中で、issure及びsubjectについては、記載内容に関する自由度が高い。そこで、本実施の形態では、情報保管用証明書のissure内に付随情報を格納させる。本証明書は自己署名により生成されるため、subject内にも同一の付随情報が格納される。そのため、subject内にも同一の付随情報を利用してもよい。 Among these items, “issure” and “subject” have a high degree of freedom regarding the description content. Therefore, in the present embodiment, the accompanying information is stored in the information storage certificate issue. Since this certificate is generated by a self-signature, the same accompanying information is also stored in the subject. Therefore, the same accompanying information may be used in the subject.
同図には、付随情報の一例として、IP、USER、PASS、PATH等が示されている。IPは、クライアント証明書を利用したSSL通信における通信相手(例えば、SSLサーバ)のIPアドレスである。USER及びPASSは、通信相手において管理されているリソースに対してアクセスするために要求されるユーザ名及びパスワードである。PATHは、通信相手において管理されているリソースのパス名である。 In the figure, IP, USER, PASS, PATH, etc. are shown as examples of the accompanying information. IP is an IP address of a communication partner (for example, an SSL server) in SSL communication using a client certificate. USER and PASS are a user name and a password required for accessing a resource managed by a communication partner. PATH is a path name of a resource managed by the communication partner.
なお、当該情報の構成は一例に過ぎない。当該情報の構成は、クライアント証明書の用途に応じて適宜定義可能である。 Note that the configuration of the information is merely an example. The configuration of the information can be appropriately defined according to the use of the client certificate.
証明書管理部150は、HDD114を利用して証明書及び秘密鍵の管理を行う。証明書及び秘密鍵の管理において、証明書管理部150は、TPM115に保存されている機器固有鍵を利用して証明書及び秘密鍵の暗号化及び復号を行う。なお、クライアント証明書及び情報保管用証明書の他にCA(Certificate Authority)証明書が管理されていてもよい。本実施の形態において単に「証明書」というとき、少なくともクライアント証明書及び情報保管用証明書を含み、CA証明書が含まれてもよい。
The
図4は、本実施の形態における証明書及び秘密鍵に関するデーターフローを説明するための図である。 FIG. 4 is a diagram for explaining a data flow regarding a certificate and a private key in the present embodiment.
同図において、証明書及び秘密鍵は、UI(User Interface)コンポーネント137によって入力(インポート)される(但し、情報保管用証明書については、情報保管用証明書生成部140によって生成される)。UIコンポーネント137は、図2における各種コンポーネントの具体例であり、ローカル環境又はリモート環境の別を問わず、ユーザとのインタフェースを制御するコンポーネントである。したがって、UIコンポーネント137によって入力される証明書及び秘密鍵は、操作パネル15を介して入力されてもよいし、画像形成装置10ネットワークを介して接続されたコンピュータより入力されるものであってもよい。または、SDカード80等の可搬性の有る記録媒体より入力されるものであってもよい。
In the figure, a certificate and a private key are input (imported) by a UI (User Interface) component 137 (however, the information storage certificate is generated by the information storage certificate generation unit 140). The
UIコンポーネント137より入力された証明書及び秘密鍵は、証明書管理部150によって暗号化されてHDD114に保存される。暗号化において、証明書管理部150は、TPM115に保存されている機器固有鍵を利用する。
The certificate and private key input from the
同図において、SSLサーバ135及びSSLクライアント136は、図2における各種コンポーネントの具体例である。SSLサーバ135は、SSL通信においてサーバとして機能するコンポーネントである。SSLクライアントは、SSL通信においてクライアントとして機能するコンポーネントである。SSLサーバ135及びSSLクライアント136は、図4において、証明書及び秘密鍵の利用者に相当する。
In the figure, an
証明書管理部150は、SSLサーバ135又はSSLクライアント136より証明書及び秘密鍵の取得要求を受け付けると、HDD114に保存されている証明書及び秘密鍵を機器固有鍵によって復号し、SSLサーバ135又はSSLクライアント136に出力する。なお、同図では、証明書及び秘密鍵の保存場所としてHDD114が利用されているが、当該保存場所はHDD114に限定されない。他のストレージであってもよい。
Upon receiving a certificate and private key acquisition request from the
続いて、証明書管理部の構成について説明する。図5は、証明書管理部の構成例を説明するための図である。 Next, the configuration of the certificate management unit will be described. FIG. 5 is a diagram for explaining a configuration example of the certificate management unit.
同図において、証明書管理部150は、KeyStoreクラス151、KeySotreSPI152、証明書管理プロバイダ153、JNIライブラリ154、及び証明書アクセスライブラリ155等を含む。
In the figure, the
KeyStoreクラス151は、JCE(Java(登録商標) Cryptography Extension):Java(登録商標)暗号化拡張機能)のSPI(Service Provider Interface)において証明書及び暗号鍵の管理に関するフレームワークとしてのクラスであり、当該管理に関する実装も備える。本実施の形態において、証明書管理部150を利用する各コンポーネントからはKeyStoreクラス151のインタフェースが見える。すなわち、証明書管理部150は、KeyStoreクラス151が備えるメソッドを介して利用される。
The
KeyStoreSPI152は、KeyStoreクラス151に関するJCE SPI(Service Provider Interface)である。すなわち、KeyStoreSPI152は、KeyStoreクラス151の拡張点として位置付けられる。具体的には、KeyStoreクラス151は、KeyStoreSPI152において規定されるインタフェースを備えた実装によって拡張されうる。斯かるインタフェースを備えた実装はプロバイダと呼ばれる。
The
証明書管理プロバイダ153は、KeyStoreクラス151に対するプロバイダである。すなわち、証明書管理プロバイダ153は、KeyStoreSPI152に準拠したインタフェースを備え、KeyStoreクラス151のメソッドの呼び出しに応じて透過的に呼び出される。証明書管理プロバイダ153は、呼び出しに応じ、証明書及び秘密鍵の管理に関して本実施の形態における独自の機能を実現するための処理を実行する。
The
証明書アクセスライブラリ155は、証明書及び秘密鍵に関するHDD114への書き込み(保存)機能及びHDD114からの読み出し機能を実行する。証明書アクセスライブラリ55は、また、当該書き込み機能及び当該読み出し機能において、TPM115に保存されている機器固有鍵を利用した暗号化又は復号を実行する。
The
なお、証明書アクセスライブラリ155は、C言語等によって記述された後、コンパイル及びリンク等を経てマシン語に変換されたネイティブ(Native)コードによるライブラリである。すなわち、Java(登録商標)コードではTPM115等へのアクセスは不可能であるため、証明書及び秘密鍵の書き込み機能及び読み出し機能は、ネイティブコードによって実装されているのである。
The
JNIライブラリ154は、Java(登録商標)コードである証明書管理プロバイダ153によるネイティブコードである証明書アクセスライブラリ155の利用を可能とするための、いわゆるJNI(Java(登録商標) Native Interface)である。
The
すなわち、証明書管理プロバイダ153が実行する、本実施の形態における独自の機能実現するための処理とは、証明書アクセスライブラリ155を利用して証明書及び秘密鍵の管理を行うための処理である。
That is, the process for realizing the unique function in the present embodiment executed by the
本実施の形態では、以上のようなソフトウェア構成を有する画像形成装置10を図6に示されるようなシステムに適用した例について説明する。
In the present embodiment, an example in which the
図6は、本発明の実施の形態におけるシステムの構成例を示す図である。同図において、画像形成装置10は、SSLサーバ装置20a及び20b等、一台以上のSSLサーバ装置20とLAN(Local Area Network)又はインターネット等のネットワークを介して接続されている。
FIG. 6 is a diagram illustrating a configuration example of a system in the embodiment of the present invention. In FIG. 1, an
各SSLサーバ装置20は、SSL(Secure Socket Layer)通信においてサーバとして機能するコンピュータであり、画像形成装置10に対して所定のサービス(例えば、Webコンテンツの提供)を提供する。
Each
画像形成装置10において、SSLサーバ装置20と通信を行うコンポーネントは、httpsクライアント136aである。httpsクライアント136aは、図2における各種コンポーネントの一つであり、図4におけるSSLクライアント136の一例である。httpsクラアイント136aは、SSLサーバ装置20とのSSL通信に際し、証明書管理部136aより証明書及び秘密鍵を取得する。
In the
UIコンポーネント137は、操作パネル15又はネットワークを介して接続されるコンピュータにおいて表示されている表示画面等におけるユーザによる指示入力に応じ、情報保管用証明書生成部140に情報保管用証明書の生成を要求する。UIコンポーネント137は、生成された情報保管用証明書の管理を証明書管理部150に要求する。
The
以下、図6のシステム構成における画像形成装置10の処理手順について説明する。図7は、情報保管用証明書の生成処理の処理手順を説明するためのシーケンス図である。
Hereinafter, a processing procedure of the
ステップS101〜S104において、UIコンポーネント137は、操作パネル15等を介してユーザより入力される、情報保管用証明書に保管させる付随情報を情報保管用証明書生成部140に通知する。図7では、接続先のSSLサーバ20のIPアドレス(S101)、接続時の認証において要求されるユーザ名及びパスワード(S102、S103)、及びその他の設定情報(S104)が通知される例が示されている。続いて、UIコンポーネント137は、情報保管用証明書の生成を情報保管用証明書生成部140に要求する(S105)。なお、ステップS101〜S105は、一つのステップによって実行されてもよい。すなわち、情報保管証明書の生成要求の引数として、ステップS101〜S104において通知された情報が通知されてもよい。
In steps S101 to S104, the
続いて、情報保管用証明書生成部140は、ステップS105〜S104において通知された情報をissureに含む自己署名証明書を情報保管用証明書(図3参照)として生成し、生成された情報保管用証明書をUIコンポーネント137に出力する(S106)。
Subsequently, the information storage
続いて、UIコンポーネント137は、生成された情報保管用証明書に対応するクライアント証明書及び秘密鍵等の入力を操作パネル15、ネットワーク、又はSDカード80等を介して受け付ける(S107)。なお、ステップS107は、ステップS101の前に実行されてもよい。また、クライアント証明書及び秘密鍵は、図7の処理とは非同期に予め導入され、証明書管理部150によって管理されていてもよい。この場合、ステップS107では、証明書管理部150に既に管理されているクライアント証明書のエイリアスの一覧を操作パネル15等に表示させ、当該一覧の中から情報保管用証明書に対応するクライアント証明書を選択させるようにしてもよい。なお、エイリアス(alias)とは、証明書を管理するために証明書ごとに付与される識別名である。
Subsequently, the
続いて、UIコンポーネント137は、情報保管用証明書、クライアント証明書、及び秘密鍵等の保存(ストレージへの書き込み)を証明書管理部150に要求する(S108)。当該要求は、KeyStoreクラス151が提供するインタフェース(メソッド)を利用して行われる。なお、保存要求に応じてエイリアスが指定される。クライアント証明書を新規に保存する場合、エイリアスは例えばユーザによって入力される。
Subsequently, the
続いて、証明書管理部150は、指定されたエイリアスに関連付けて、情報保管用証明書、クライアント証明書、及び秘密鍵等をHDD114に保存する(記憶させる)(S109)。保存処理の際に、証明書管理部150は、TPM115に保存されている機器固有鍵を利用して情報保管用証明書、クライアント証明書、及び秘密鍵等を暗号化する。
Subsequently, the
なお、ステップS107では、CA証明書も共に入力されてもよい。この場合、ステップS109では、CA証明書も共に保存される。 In step S107, the CA certificate may also be input. In this case, in step S109, the CA certificate is also saved.
図8は、証明書及び秘密鍵の保存形態の例を示す図である。同図に示されるように、各秘密鍵及び証明書のセットは、セットごとに付与されるエイリアスに関連付けられ保存される。例えば、エイリアスAに対して、秘密鍵A、CA証明書A、クライアント証明書A、及び情報保管用証明書Aのセットが関連付けられて保存されている。 FIG. 8 is a diagram illustrating an example of a certificate and private key storage mode. As shown in the figure, each set of private keys and certificates is stored in association with an alias assigned to each set. For example, a set of a private key A, a CA certificate A, a client certificate A, and an information storage certificate A is associated with the alias A and stored.
また、証明書については、クライアント証明書、CA証明書、及び情報保管用証明書を要素とする証明書の配列として管理される。このように、本実施の形態において、情報保管用証明書は、対応するクライアント証明書と一体的に管理される。したがって、クライアント証明書とそれに付随する情報とを一体的に扱うことができる。なお、情報保管用証明書を、クライアント証明書と共に同じ配列内において管理することが可能なのは、情報保管用証明書がクライアント証明書と同じデータ構造を有することに起因する。 The certificate is managed as an array of certificates having a client certificate, a CA certificate, and an information storage certificate as elements. Thus, in this embodiment, the information storage certificate is managed integrally with the corresponding client certificate. Therefore, the client certificate and the information accompanying it can be handled in an integrated manner. The information storage certificate can be managed together with the client certificate in the same array because the information storage certificate has the same data structure as the client certificate.
続いて、保存されている証明書及び秘密鍵の利用時の処理手順について説明する。図9は、証明書及び秘密鍵の利用時の処理手順を説明するためのシーケンス図である。 Next, a processing procedure when using the stored certificate and private key will be described. FIG. 9 is a sequence diagram for explaining a processing procedure when using a certificate and a private key.
例えば、httpsクライアント136aは、操作パネル15への所定のWebページの表示要求の入力に応じ、エイリアスを指定して証明書及び秘密鍵の取得要求を証明書管理部150に入力する(S201)。当該取得要求は、KeyStoreクラス151が提供するインタフェース(メソッド)を介して入力される。続いて、証明書管理部150は、指定されたエイリアスに対応する秘密鍵及び証明書の配列をHDD114より読み出し(取得し)、TPM115に保存されている機器固有鍵を利用して当該秘密鍵及び各証明書を復号する(S202)。続いて、証明書管理部150は、復号された秘密鍵及び証明書をhttpsクライアント136aに出力する(S203)。なお、ステップS201〜S203は、厳密には秘密鍵と証明書の配列とについて別々に実行される。
For example, in response to an input of a predetermined web page display request to the
続いて、httpsクライアント136aは、取得された証明書の配列に含まれている情報保管用証明書のissureに記録されている付随情報を取得する(S204)。続いて、httpsクライアント136aは、取得された付随情報に含まれている接続先のIPアドレスに係るSSLサーバ装置20に対して接続要求を行う(S205)。続いて、SSLに基づくやり取りが行われる。すなわち、httpsクライアント136aは、接続先のSSLサーバ装置20のCA証明書の検証を行う(S206)。当該CA証明書の正当性が確認されると、httpsクライアント136aは、SSLサーバ装置20に対して自らのクライアント証明書を提示(送信)する(S207)。SSLに基づいて通信の安全性が確保されると、httpsクライアント136aは、例えば、情報保管用証明書より取得されたユーザ名及びパスワードを指定して、保護されたコンテンツへのアクセス要求をSSLサーバ装置20に送信する(S208)。SSLサーバ装置20は、当該ユーザ名及びパスワードに基づく認証に成功すると、当該コンテンツをhttpsクライアント136aに返信する(S209)。
Subsequently, the
なお、ステップS208以降は、httpsクライアント136aが実現する機能に応じて多種多様である。すなわち、当該機能において必要な情報が付随情報として情報保管用証明書に記録されていると便利である。
In addition, after step S208, there are various types according to the functions realized by the
続いて、図7のステップS108又は図9のステップS203の詳細について説明する。図10は、証明書管理部による証明書又は秘密鍵の保存処理又は読み出し処理の処理手順を説明するための図である。 Next, details of step S108 in FIG. 7 or step S203 in FIG. 9 will be described. FIG. 10 is a diagram for explaining a processing procedure of a certificate or private key storage process or read process by the certificate management unit.
ステップS301において、或るコンポーネントより、パスワード及びエイリアスが指定されて秘密鍵又は証明書の保存要求又は読み出し要求がKeyStoreクラス151のメソッドを介して入力される(S301)。ここで指定されるパスワードは、証明書等を保護するためのパスワードであり、例えば各コンポーネントに予め付与されている。また、保存要求の場合は、保存対象の秘密鍵又は証明書が指定される。ここで、情報保管用証明書は、クライアント証明書等と同じデータ構造を有する。したがって、KeyStoreクラスのメソッドのインタフェース仕様に従ったデータ型の変数によってクライアント証明書を指定することができる。換言すれば、情報保管用証明書は、クライアント証明書等と同じデータ構造を有するからこそKeyStoreクラス151のメソッドの引数に指定することができる。
In step S301, a password and an alias are specified from a certain component, and a private key or certificate storage request or read request is input via the method of the KeyStore class 151 (S301). The password specified here is a password for protecting a certificate or the like, and is given in advance to each component, for example. In the case of a storage request, a private key or certificate to be stored is designated. Here, the information storage certificate has the same data structure as the client certificate. Therefore, the client certificate can be specified by a data type variable in accordance with the interface specification of the method of the KeyStore class. In other words, the information storage certificate can be specified as an argument of the method of the
続いて、KeyStoreクラス151は、指定されたパスワードのチェックを行う(S302)。正当なパスワードが指定されている場合、証明書管理プロバイダ153は、Java(登録商標)におけるコードベースのアクセス制御機構に基づいて、要求元のコンポーネントについて証明書若しくは秘密鍵、又は証明書等の保存領域へのアクセス権限の有無を判定する(S303)。なお、コードベースのアクセス制御機構は、各リソースに対するアクセスをクラスごとに制御するための機構である。当該機構は、Java(登録商標)の標準として提供されているものであるため、ここでの詳細な説明は省略する。
Subsequently, the
コードベースのアクセス制御機構に基づいて要求元のコンポーネントのアクセス権限が認められると、証明書管理プロバイダ153は、証明書アクセスライブラリ155を利用してTPM115より機器固有鍵を取得する(S304)。コンポーネントからの要求が証明書又は秘密鍵の読み出し要求である場合(呼び出されたメソッドが読み出し要求に係るものである場合)、証明書管理プロバイダ153は、証明書アクセスライブラリ155を利用して、証明書の配列又は秘密鍵をHDD114より取得し(S305)、機器固有鍵によって復号する(S306)。復号された証明書又は秘密鍵は、呼び出されたメソッドの戻り値として返却される。ここで、情報保管用証明書は、クライアント証明書等と同じデータ構造を有するため、KeyStoreクラス151のインタフェース仕様に従ったデータ型による戻り値として返却されうる。
When the access authority of the request source component is recognized based on the code-based access control mechanism, the
コンポーネントからの要求が証明書又は秘密鍵の保存要求である場合(呼び出されたメソッドが保存要求に係るものである場合)、証明書管理プロバイダ153は、証明書アクセスライブラリ155を利用して、証明書又は秘密鍵を機器固有鍵によって暗号化し(S315)、暗号化された証明書又は秘密鍵をHDD114に保存する(S316)。
When the request from the component is a certificate or private key storage request (when the called method is related to the storage request), the
上述したように、本実施の形態によれば、SSL通信に利用されるクライアント証明書及び秘密鍵等は、TPM115に保存された機器固有鍵によって暗号化されてHDD115に保存される。したがって、クライアント証明書及び秘密鍵等の管理に関する安全性を向上させることができる。すなわち、仮にHDD115よりクラアイント証明書等が盗まれたとしても、当該クライアント証明書等は機器固有鍵によって暗号化されているため解読するのは非常に困難である。そして、機器固有鍵はTPM115に保存されているため機器固有鍵を利用可能な状態で盗み出すのは非常に困難である。したがって、実際上、クライアント証明書及び秘密鍵等は、画像形成装置10内においてのみ利用可能とすることができる。
As described above, according to the present embodiment, the client certificate and private key used for SSL communication are encrypted with the device unique key stored in the
また、本実施の形態によれば、クライアント証明書を利用したSSL通信において必要となる情報がクライアント証明書と一体的に管理される。したがって、当該クライアント証明書と付随情報との管理構成を単純化することができると共に、当該クライアント証明書の利便性を向上させることができる。 Further, according to the present embodiment, information necessary for SSL communication using a client certificate is managed integrally with the client certificate. Therefore, the management configuration of the client certificate and accompanying information can be simplified, and the convenience of the client certificate can be improved.
なお、本実施の形態の画像形成装置10の機能を他のネットワーク機器に適用してもよい。
Note that the function of the
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 As mentioned above, although the Example of this invention was explained in full detail, this invention is not limited to such specific embodiment, In the range of the summary of this invention described in the claim, various deformation | transformation・ Change is possible.
10 画像形成装置
11 コントローラ
12 スキャナ
13 プリンタ
14 モデム
15 操作パネル
16 ネットワークインタフェース
17 SDカードスロット
20、20a、20b SSLサーバ装置
80 SDカード
111 CPU
112 RAM
113 ROM
114 HDD
115 TPM
131 アプリケーションメカニズム
132 サービスメカニズム
133 デバイスメカニズム
134 アスペクトレイヤ
135 SSLサーバ
136 SSLクライアント
137 UIコンポーネント
140 情報保管用証明書生成部
150 証明書管理部
151 KeyStoreクラス
152 KeySotreSPI
153 証明書管理プロバイダ
154 JNIライブラリ
155 証明書アクセスライブラリ
DESCRIPTION OF
112 RAM
113 ROM
114 HDD
115 TPM
131
153
Claims (3)
当該画像形成装置に固有の暗号鍵を記憶したセキュアな記憶手段と、
SSL通信に利用されるクライアント証明書及び秘密鍵の入力を受け付ける入力受付手段と、
前証クライアント証明書と同一のデータ構造を有し、前記SSL通信に利用される付随情報を含む情報保管用証明書を生成する情報保管用証明書生成手段と、
入力された前記クライアント証明書及び秘密鍵を前記固有の暗号鍵によって暗号化し、証明書記憶手段に記憶させ、前記情報保管用証明書を前記固有の暗号鍵によって暗号化し、前記クライアント証明書に関連付けて前記証明書記憶手段に記憶させる証明書管理手段と、
SSL通信を実行する通信制御手段とを有し、
前記証明書管理手段は、前記通信制御手段からの要求に応じ、前記クライアント証明書及び秘密鍵と、前記クライアント証明書に関連付けられている前記情報保管用証明書とを前記証明書記憶手段より取得し、該クライアント証明書及び秘密鍵と該情報保管用証明書とを前記固有の暗号鍵によって復号する画像形成装置。 An image forming apparatus,
Secure storage means storing an encryption key unique to the image forming apparatus;
Input accepting means for accepting input of a client certificate and private key used for SSL communication;
An information storage certificate generating means for generating an information storage certificate having the same data structure as the preliminary client certificate and including accompanying information used for the SSL communication;
The inputted client certificate and private key are encrypted with the unique encryption key, stored in certificate storage means, the information storage certificate is encrypted with the unique encryption key, and associated with the client certificate and certificate management unit Ru is stored in the certificate storage unit Te,
Communication control means for executing SSL communication,
The certificate management unit obtains the client certificate and the private key and the information storage certificate associated with the client certificate from the certificate storage unit in response to a request from the communication control unit. An image forming apparatus that decrypts the client certificate and private key and the information storage certificate with the unique encryption key .
SSL通信に利用されるクライアント証明書及び秘密鍵の入力を受け付ける入力受付手順と、
前証クライアント証明書と同一のデータ構造を有し、前記SSL通信に利用される付随情報を含む情報保管用証明書を生成する情報保管用証明書生成手順と、
入力された前記クライアント証明書及び秘密鍵を、セキュアな記憶手段に記憶された当該画像形成装置に固有の暗号鍵によって暗号化し、証明書記憶手段に記憶させ、前記情報保管用証明書を前記固有の暗号鍵によって暗号化し、前記クライアント証明書に関連付けて前記証明書記憶手段に記憶させる証明書保存手順と、
前記クライアント証明書及び秘密鍵と、前記クライアント証明書に関連付けられている前記情報保管用証明書とを前記証明書記憶手段より取得し、該クライアント証明書及び秘密鍵と該情報保管用証明書とを前記固有の暗号鍵によって復号する証明書取得手順と、
取得された前記クライアント証明書及び秘密鍵と、前記情報保管用証明書とを利用してSSL通信を実行する通信手順とを有する情報管理方法。 An information management method executed by an image forming apparatus,
An input acceptance procedure for accepting input of a client certificate and a private key used for SSL communication;
An information storage certificate generating procedure for generating an information storage certificate having the same data structure as the pre-client client certificate and including accompanying information used for the SSL communication;
The input client certificate and private key are encrypted with an encryption key unique to the image forming apparatus stored in a secure storage unit, stored in the certificate storage unit, and the information storage certificate is stored in the unique storage key. encrypted by the encryption key, and certificate storage procedure Ru is stored in the certificate storage unit in association with the client certificate,
Obtaining the client certificate and private key and the information storage certificate associated with the client certificate from the certificate storage means, the client certificate and private key and the information storage certificate, A certificate acquisition procedure for decrypting the certificate with the unique encryption key;
An information management method comprising: a communication procedure for performing SSL communication using the acquired client certificate and private key and the information storage certificate .
SSL通信に利用されるクライアント証明書及び秘密鍵の入力を受け付ける入力受付手順と、
前証クライアント証明書と同一のデータ構造を有し、前記SSL通信に利用される付随情報を含む情報保管用証明書を生成する情報保管用証明書生成手順と、
入力された前記クライアント証明書及び秘密鍵を、セキュアな記憶手段に記憶された当該画像形成装置に固有の暗号鍵によって暗号化し、証明書記憶手段に記憶させ、前記情報保管用証明書を前記固有の暗号鍵によって暗号化し、前記クライアント証明書に関連付けて前記証明書記憶手段に記憶させる証明書保存手順と、
前記クライアント証明書及び秘密鍵と、前記クライアント証明書に関連付けられている前記情報保管用証明書とを前記証明書記憶手段より取得し、該クライアント証明書及び秘密鍵と該情報保管用証明書とを前記固有の暗号鍵によって復号する証明書取得手順と、
取得された前記クライアント証明書及び秘密鍵と、前記情報保管用証明書とを利用してSSL通信を実行する通信手順とを実行させるためのプログラム。 In the image forming device,
An input acceptance procedure for accepting input of a client certificate and a private key used for SSL communication;
An information storage certificate generating procedure for generating an information storage certificate having the same data structure as the pre-client client certificate and including accompanying information used for the SSL communication;
The input client certificate and private key are encrypted with an encryption key unique to the image forming apparatus stored in a secure storage unit, stored in the certificate storage unit, and the information storage certificate is stored in the unique storage key. encrypted by the encryption key, and certificate storage procedure Ru is stored in the certificate storage unit in association with the client certificate,
Obtaining the client certificate and private key and the information storage certificate associated with the client certificate from the certificate storage means, the client certificate and private key and the information storage certificate, A certificate acquisition procedure for decrypting the certificate with the unique encryption key;
A program for executing a communication procedure for executing SSL communication using the acquired client certificate and private key and the information storage certificate .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009065296A JP5391756B2 (en) | 2009-03-17 | 2009-03-17 | Image forming apparatus, information management method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009065296A JP5391756B2 (en) | 2009-03-17 | 2009-03-17 | Image forming apparatus, information management method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010217604A JP2010217604A (en) | 2010-09-30 |
JP5391756B2 true JP5391756B2 (en) | 2014-01-15 |
Family
ID=42976519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009065296A Expired - Fee Related JP5391756B2 (en) | 2009-03-17 | 2009-03-17 | Image forming apparatus, information management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5391756B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5380583B1 (en) | 2012-06-25 | 2014-01-08 | 国立大学法人 千葉大学 | Device authentication method and system |
JP6417483B2 (en) * | 2014-12-31 | 2018-11-07 | サイトリックス システムズ,インコーポレイテッド | Shared secret repository for applications including single sign-on |
JP7130501B2 (en) * | 2018-09-11 | 2022-09-05 | サトーホールディングス株式会社 | Printer, encryption method in printer, and program |
JP7253890B2 (en) * | 2018-09-11 | 2023-04-07 | サトーホールディングス株式会社 | Printers, communication methods and programs |
EP3851992B1 (en) * | 2018-09-11 | 2024-08-07 | Sato Holdings Kabushiki Kaisha | Printer, communication method and computer-readable recording medium |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005311811A (en) * | 2004-04-23 | 2005-11-04 | Fuji Xerox Co Ltd | Image forming apparatus or confidentiality communication apparatus |
JP4498946B2 (en) * | 2005-02-22 | 2010-07-07 | 京セラミタ株式会社 | Data management apparatus and program thereof |
JP2008236093A (en) * | 2007-03-16 | 2008-10-02 | Ricoh Co Ltd | Starting method, image processor, controller board, and starting program |
JP5041833B2 (en) * | 2007-03-16 | 2012-10-03 | 株式会社リコー | Data recovery method, image processing apparatus, controller board, and data recovery program |
-
2009
- 2009-03-17 JP JP2009065296A patent/JP5391756B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010217604A (en) | 2010-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10601795B2 (en) | Service processing method and electronic device | |
KR101878149B1 (en) | Device, system, and method of secure entry and handling of passwords | |
CA2723747C (en) | Apparatus and method to prevent man in the middle attack | |
US8495383B2 (en) | Method for the secure storing of program state data in an electronic device | |
US8386796B2 (en) | Information processing apparatus and information management method | |
US20070136599A1 (en) | Information processing apparatus and control method thereof | |
US10650168B2 (en) | Data processing device | |
JP4405575B2 (en) | Encryption management device, decryption management device, and program | |
US8953805B2 (en) | Authentication information generating system, authentication information generating method, client apparatus, and authentication information generating program for implementing the method | |
KR100536817B1 (en) | Information processor and information processing method for cooperative operation of job processor | |
JP4197311B2 (en) | Security policy generation method, security policy generation device, program, and recording medium | |
JP5391756B2 (en) | Image forming apparatus, information management method, and program | |
JP2008097170A (en) | Processor with encryption function, encrypting device, and processing program with encryption function | |
JP2009123154A (en) | Method and device for managing attribute certificates | |
JP2010028689A (en) | Server, method, and program for providing open parameter, apparatus, method, and program for performing encoding process, and apparatus, method, and program for executing signature process | |
JP2009212747A (en) | Electronic signature system | |
CN111953495B (en) | Private-key-free signing method under electronic signature mixed cloud scene | |
JP2006014182A (en) | Data processing device, encryption communication method, and computer program | |
JP2008099335A (en) | Data processor, its method, and its program | |
JPWO2018092289A1 (en) | Information processing device | |
JP2006197640A (en) | Encrypted data distribution service system | |
Ahn et al. | Towards scalable authentication in health services | |
CN114513338A (en) | Data synchronization method and electronic equipment | |
JP2020046977A (en) | Distribution management system, distribution management program and distribution management method | |
JP2008293396A (en) | Authentication system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130730 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130826 |
|
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: 20130917 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130930 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5391756 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |