JP6940812B2 - Information processing equipment and computer programs - Google Patents
Information processing equipment and computer programs Download PDFInfo
- Publication number
- JP6940812B2 JP6940812B2 JP2017174072A JP2017174072A JP6940812B2 JP 6940812 B2 JP6940812 B2 JP 6940812B2 JP 2017174072 A JP2017174072 A JP 2017174072A JP 2017174072 A JP2017174072 A JP 2017174072A JP 6940812 B2 JP6940812 B2 JP 6940812B2
- Authority
- JP
- Japan
- Prior art keywords
- certificate
- private key
- information processing
- processing device
- acquired
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Facsimiles In General (AREA)
Description
本明細書は、秘密鍵と公開鍵とを用いる処理を行う情報処理装置、および、当該処理を実行するためのコンピュータプログラムに関する。 The present specification relates to an information processing apparatus that performs processing using a private key and a public key, and a computer program for executing the processing.
従来から、秘密鍵と公開鍵とを用いる処理が知られている。例えば、特許文献1には、秘密鍵と公開鍵とを用いて、電子商取引において用いられる文書として電子署名付き文書の発行と閲覧とを行う技術が開示されている。 Conventionally, a process using a private key and a public key has been known. For example, Patent Document 1 discloses a technique for issuing and viewing a document with an electronic signature as a document used in electronic commerce using a private key and a public key.
しかしながら、例えば、ユーザごとに秘密鍵と公開鍵とを含む情報を格納する場合等には、これらの情報を格納する装置において、必要とされる不揮発性の格納部の容量が大きくなる可能性があった。 However, for example, when storing information including a private key and a public key for each user, the capacity of the non-volatile storage unit required in the device for storing such information may increase. there were.
本明細書は、秘密鍵と公開鍵とを用いる処理において、必要とされる不揮発性の格納部の容量を、セキュリティを損なうことなく低減できる技術を開示する。 The present specification discloses a technique capable of reducing the capacity of a non-volatile storage unit required in a process using a private key and a public key without impairing security.
本明細書に開示された技術は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。 The techniques disclosed herein have been made to solve at least a portion of the above problems and can be realized as the following application examples.
[適用例1]情報処理装置であって、秘密鍵が格納される不揮発性の格納部と、前記情報処理装置とは異なる外部装置と通信するためのインタフェースと、前記格納部から前記秘密鍵を取得する秘密鍵取得部と、前記秘密鍵に対応する公開鍵を含む証明書を、前記インタフェースを介して特定の外部装置から取得する証明書取得部と、前記格納部から取得される前記秘密鍵を用いて変換処理を実行して変換済データを生成する変換部であって、前記変換処理は、データを暗号化する処理と、前記公開鍵を用いて暗号化されたデータを復号する処理と、のいずれかを含む、前記変換部と、前記証明書を出力する出力部と、を備える、情報処理装置。 [Application Example 1] An information processing device, a non-volatile storage unit in which a private key is stored, an interface for communicating with an external device different from the information processing device, and the secret key from the storage unit. A certificate acquisition unit that acquires a private key acquisition unit to be acquired and a certificate including a public key corresponding to the private key from a specific external device via the interface, and the private key acquired from the storage unit. A conversion unit that generates converted data by executing a conversion process using the above, and the conversion process includes a process of encrypting data and a process of decrypting data encrypted using the public key. An information processing apparatus including the conversion unit and an output unit for outputting the certificate, including any of the above.
上記構成によれば、秘密情報として管理すべき秘密鍵は、情報処理装置の格納部に格納されるので、セキュリティを確保できる。そして、秘密鍵と比較して秘密情報として管理すべき必要性が低い公開鍵を含む証明書は、外部装置から取得される。この結果、情報処理装置において、必要とされる不揮発性の格納部の容量を、セキュリティを損なうことなく低減できる。
[適用例2]
適用例1に記載の情報処理装置であって、さらに、
署名対象のデータを取得するデータ取得部と、
前記署名対象のデータに基づいて特定データを生成する生成部と、
を備え、
前記変換部は、前記変換処理として、前記秘密鍵を用いて前記特定データを暗号化する署名処理を実行して、前記変換済データとして署名データを生成し、
前記出力部は、前記署名対象のデータと、前記署名データと、前記証明書と、を含む署名付データを出力する、情報処理装置。
[適用例3]
適用例2に記載の情報処理装置であって、
前記出力部は、前記署名付きデータを、前記インタフェースを介して前記特定の外部装置に送信する、情報処理装置。
[適用例4]
適用例1〜3のいずれかに記載の情報処理装置であって、
複数個の前記秘密鍵のそれぞれは、識別情報と対応付けられ、
前記秘密鍵取得部は、
第1の前記識別情報が指定される場合に、前記第1の識別情報に対応する第1の前記秘密鍵を前記格納部から取得し、
第2の前記識別情報が指定される場合に、前記第2の識別情報に対応する第2の前記秘密鍵を前記格納部から取得し、
前記証明書取得部は、
前記第1の識別情報が指定される場合に、前記第1の秘密鍵に対応する第1の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得し、
前記第2の識別情報が指定される場合に、前記第2の秘密鍵に対応する第2の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得する、情報処理装置。
[適用例5]
適用例1〜4のいずれかに記載の情報処理装置であって、
複数個の前記秘密鍵のそれぞれは、対応する前記公開鍵を含む前記証明書のファイル名と対応付けられ、
前記証明書取得部は、
前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記特定の秘密鍵に対応する特定の前記ファイル名を用いて、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得する、情報処理装置。
[適用例6]
適用例1〜4のいずれかに記載の情報処理装置であって、
前記格納部には、複数個の前記秘密鍵が格納され、
前記証明書取得部は、前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記格納部に格納される複数個の前記証明書を、前記特定の外部装置から取得し、
前記情報処理装置は、さらに、
取得済の前記複数個の証明書の中から、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を選択する選択部を備える、情報処理装置。
[適用例7]
適用例1〜6のいずれかに記載の情報処理装置であって、さらに、
前記特定の外部装置から取得される前記証明書が、前記格納部から取得される前記秘密鍵に対応する真正な証明書であるか否かを判断する判断部を備え、
前記出力部は、前記秘密鍵に対応する真正な証明書であると判断された前記証明書を出力する、情報処理装置。
[適用例8]
適用例7に記載の情報処理装置であって、
前記判断部は、
第1の判断方法を用いて、対象の前記証明書が真正な証明書であるか否かを判断する第1の判断処理を実行し、
前記第1の判断処理において、対象の前記証明書が真正な証明書であると判断される場合に、第2の判断方法を用いて、対象の前記証明書が真正な証明書であるか否かを判断する第2の判断処理であって、前記第1の判断処理よりも処理負荷が高い前記第2の判断処理を実行し、
前記第1の判断処理において、対象の前記証明書が真正な証明書でないと判断される場合に、前記第2の判断処理を実行しない、情報処理装置。
[適用例9]
適用例8に記載の情報処理装置であって、
前記秘密鍵は、対応する前記公開鍵の少なくとも一部を含み、
前記第1の判断処理は、前記格納部から取得される前記秘密鍵に含まれる前記公開鍵の少なくとも一部と、前記特定の外部装置から取得される前記証明書に含まれる前記公開鍵の少なくとも一部と、が同一であるか否かを判断する処理である、情報処理装置。
According to the above configuration, the private key to be managed as secret information is stored in the storage unit of the information processing device, so that security can be ensured. Then, a certificate including a public key, which is less necessary to be managed as secret information than a private key, is obtained from an external device. As a result, the capacity of the non-volatile storage unit required in the information processing device can be reduced without impairing security.
[Application example 2]
The information processing device according to Application Example 1, further
The data acquisition unit that acquires the data to be signed, and
A generator that generates specific data based on the data to be signed,
With
As the conversion process, the conversion unit executes a signature process for encrypting the specific data using the private key to generate signature data as the converted data.
The output unit is an information processing device that outputs signed data including the data to be signed, the signature data, and the certificate.
[Application example 3]
The information processing device according to Application Example 2.
The output unit is an information processing device that transmits the signed data to the specific external device via the interface.
[Application example 4]
The information processing device according to any one of Application Examples 1 to 3.
Each of the plurality of private keys is associated with the identification information and is associated with the identification information.
The private key acquisition unit
When the first identification information is specified, the first secret key corresponding to the first identification information is acquired from the storage unit.
When the second identification information is specified, the second secret key corresponding to the second identification information is acquired from the storage unit.
The certificate acquisition department
When the first identification information is specified, the certificate including the first public key corresponding to the first private key is obtained from the specific external device.
An information processing device that obtains the certificate including the second public key corresponding to the second private key from the specific external device when the second identification information is specified.
[Application example 5]
The information processing device according to any one of Application Examples 1 to 4.
Each of the plurality of private keys is associated with the file name of the certificate containing the corresponding public key.
The certificate acquisition department
When the specific private key is acquired by the private key acquisition unit, the specific public key corresponding to the specific private key is included by using the specific file name corresponding to the specific private key. An information processing device that obtains the certificate from the specific external device.
[Application example 6]
The information processing device according to any one of Application Examples 1 to 4.
A plurality of the private keys are stored in the storage unit.
When the specific private key is acquired by the private key acquisition unit, the certificate acquisition unit acquires a plurality of the certificates stored in the storage unit from the specific external device.
The information processing device further
An information processing device including a selection unit for selecting a certificate including the specific public key corresponding to the specific private key from the plurality of acquired certificates.
[Application 7]
The information processing device according to any one of Application Examples 1 to 6, and further.
A determination unit for determining whether or not the certificate acquired from the specific external device is a genuine certificate corresponding to the private key acquired from the storage unit is provided.
The output unit is an information processing device that outputs the certificate determined to be a genuine certificate corresponding to the private key.
[Application Example 8]
The information processing device according to Application Example 7.
The judgment unit
Using the first determination method, the first determination process for determining whether or not the target certificate is a genuine certificate is executed.
In the first determination process, when it is determined that the target certificate is a genuine certificate, whether or not the target certificate is a genuine certificate using the second determination method. The second determination process, which is the second determination process for determining whether or not, and has a higher processing load than the first determination process, is executed.
An information processing device that does not execute the second determination process when it is determined that the target certificate is not a genuine certificate in the first determination process.
[Application example 9]
The information processing device according to Application Example 8.
The private key includes at least a portion of the corresponding public key.
The first determination process includes at least a part of the public key included in the private key acquired from the storage unit and at least a part of the public key included in the certificate acquired from the specific external device. An information processing device that is a process for determining whether or not a part is the same as a part.
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、複合機、スキャナ、処理方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。 The techniques disclosed in the present specification can be realized in various forms, for example, a multifunction device, a scanner, a processing method, a function of these devices, or a computer program for realizing the above method. It can be realized in the form of a recording medium on which a computer program is recorded, or the like.
A.第1実施例
A−1:システム1000の構成
次に、実施の形態を実施例に基づき説明する。図1は、システム1000の構成を示すブロック図である。
A. First Example A-1: Configuration of
システム1000は、複合機100と、計算機200と、を備える。複合機100と計算機200とは、ローカルエリアネットワークNTに接続されている。複合機100と計算機200とは、ローカルエリアネットワークNTを介して、互いに通信可能である。
The
複合機100は、複合機100のコントローラとしてのCPU110と、DRAMなどの揮発性記憶装置120と、ハードディスクやフラッシュメモリなどの不揮発性記憶装置130と、画像を表示する液晶ディスプレイなどの表示部140と、ユーザによる操作を取得するためのボタンやタッチパネルなどの操作部150と、印刷実行部160と、読取実行部170と、インタフェース190と、を備えている。
The
印刷実行部160は、CPU110の制御に従って、印刷処理を実行する。印刷処理は、所定の方式(例えば、レーザ方式や、インクジェット方式)で、用紙(印刷媒体の一例)上に画像を印刷する処理である。読取実行部170は、CPU110の制御に従って、読取処理を実行する。読取処理は、CCDやCMOSなどの光電変換素子を含むイメージセンサを用いて光学的に文書等の対象物を読み取ることによって、読み取った画像を表すスキャンデータを生成する処理である。
The
CPU110は、データ処理を行う演算装置(プロセッサ)である。揮発性記憶装置120は、CPU110が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域BA1を提供する。不揮発性記憶装置130には、コンピュータプログラムPG1と、鍵管理情報KMIと、が格納されている。また、不揮発性記憶装置130の一部の領域は、鍵格納部SKSとして用いられている。鍵管理情報KMIと、鍵格納部SKSと、については後述する。
The
コンピュータプログラムPG1は、例えば、複合機100の製造時に不揮発性記憶装置130に予め格納されて提供され得る。これに代えて、コンピュータプログラムPG1は、複合機100のベンダによって運営されるサーバ(図示省略)からダウンロードされる形態で提供されても良く、CD−ROMなどに記録された形態で提供されても良い。
The computer program PG1 may be provided, for example, stored in advance in the non-volatile storage device 130 at the time of manufacturing the
CPU110は、コンピュータプログラムPG1を実行することによって、複合機100を制御する制御処理を実行する。例えば、CPU110は、制御処理の一部として、印刷実行部160や読取実行部170を制御して、印刷処理や読取処理を実行させることができる。また、CPU110は、制御処理の一部として、後述する署名付ファイル生成処理を実行することができる。
The
インタフェース190は、外部装置、例えば、計算機200とデータ通信を行うためのインタフェースである。本実施例では、インタフェース190は、ローカルエリアネットワークNTに接続するためのインタフェース、具体的には、イーサネット(登録商標)やWi−Fi規格に準拠した有線や無線のインタフェースである。
The
計算機200は、例えば、パーソナルコンピュータなどの公知の計算機であり、例えば、ローカルエリアネットワークNTに接続可能な装置からアクセスされるファイルサーバとして機能している。計算機200は、計算機200のコントローラとしてのCPU210と、DRAMなどの揮発性記憶装置220と、ハードディスクやフラッシュメモリなどの不揮発性記憶装置230と、液晶ディスプレイなどの表示部240と、ユーザによる操作を取得するためのマウスやキーボードなどの操作部250と、インタフェース290と、を備えている。
The
CPU210は、データ処理を行う演算装置(プロセッサ)である。揮発性記憶装置220は、CPU210が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域BA2を提供する。不揮発性記憶装置230には、コンピュータプログラムPG2が格納されている。また、不揮発性記憶装置230の一部の領域は、証明書格納部CTSとスキャンデータ格納部SDSとして用いられている。スキャンデータ格納部SDSは、複合機100にて生成されたスキャンデータを格納するための記憶領域である。証明書格納部CTSについては後述する。
The
図2は、複合機100および計算機200に格納される各種の情報の説明図である。図2(A)には、鍵格納部SKSの概念図が示されている。図2(A)に示すように、複合機100の鍵格納部SKS(図1)には、複数個の秘密鍵SK1〜SK3と、認証局の公開鍵PKcaが格納されている。
FIG. 2 is an explanatory diagram of various types of information stored in the
図2(B)には、証明書格納部CTSの概念図が示されている。図2(B)に示すように、計算機200の証明書格納部CTSには、複数個の証明書CT1〜CT3と、が格納されている。本実施例では、鍵格納部SKSに格納された複数個の秘密鍵SK1〜SK3(図2(A))と、証明書格納部CTSに格納された複数個の証明書CT1〜CT3と、は、一対一で対応している。
FIG. 2B shows a conceptual diagram of the certificate storage unit CTS. As shown in FIG. 2B, a plurality of certificates CT1 to CT3 are stored in the certificate storage unit CTS of the
なお、秘密鍵SK1〜SK3、証明書CT1〜CT3のそれぞれは、1個のファイルである。秘密鍵SK1〜SK3、証明書CT1〜CT3のファイル名は、符号と同じであるとする。例えば、秘密鍵SK1のファイル名は「SK1」であり、証明書CT1のファイル名は「CT1」であるとする。 Each of the private keys SK1 to SK3 and the certificates CT1 to CT3 is one file. It is assumed that the file names of the private keys SK1 to SK3 and the certificates CT1 to CT3 are the same as the code. For example, it is assumed that the file name of the private key SK1 is "SK1" and the file name of the certificate CT1 is "CT1".
例えば、ユーザAは、自身の端末装置(図示省略)を用いて、秘密鍵SK1と、該秘密鍵SK1に対応する公開鍵PK1と、を生成する。ユーザAは、端末装置を用いて、該公開鍵PK1を含む証明書署名要求(CSR:Certificate Signing Request)を生成し、当該要求を認証局(CA:Certification Authority)に送信する。これによって、ユーザAは、認証局によって署名された証明書CT1の暗号化データを認証局から取得する。証明書CT1には、公開鍵PK1が含まれる。ユーザAは、秘密鍵SK1を用いて該暗号化データ復号して証明書CT1を取得する。このようにして、秘密鍵SK1と証明書CT1との組が取得される。そして、ユーザAの操作に基づいて、秘密鍵SK1は、複合機100の鍵格納部SKSに格納・保存される。一方で、秘密鍵SK1に対応する証明書CT1は、計算機200の証明書格納部CTSに格納・保存される。
For example, the user A uses his / her own terminal device (not shown) to generate a private key SK1 and a public key PK1 corresponding to the private key SK1. User A uses the terminal device to generate a certificate signing request (CSR) including the public key PK1 and sends the request to a certificate authority (CA). As a result, the user A acquires the encrypted data of the certificate CT1 signed by the certificate authority from the certificate authority. Certificate CT1 includes the public key PK1. User A decrypts the encrypted data using the private key SK1 and obtains the certificate CT1. In this way, the pair of the private key SK1 and the certificate CT1 is acquired. Then, based on the operation of the user A, the private key SK1 is stored and stored in the key storage unit SKS of the
同様にして、例えば、別のユーザBによって、秘密鍵SK2と証明書CT2との組が取得され、ユーザCによって、秘密鍵SK3と証明書CT3との組が取得される。そして、秘密鍵SK2、SK3は、複合機100の鍵格納部SKSに格納・保存され、証明書CT2、CT3は、計算機200の証明書格納部CTSに格納・保存される。このように、本実施例では、秘密鍵SK1〜SK3、および、対応する証明書CT1〜CT3は、複合機100の複数人のユーザに一対一で対応している。
Similarly, for example, another user B acquires the pair of the private key SK2 and the certificate CT2, and the user C acquires the pair of the private key SK3 and the certificate CT3. Then, the private keys SK2 and SK3 are stored and stored in the key storage unit SKS of the
図2(B)に示すように、証明書CT1は、公開鍵PK1と、署名情報SN1と、署名アルゴリズム情報AI1と、その他の情報OI1と、を含んでいる。公開鍵PK1は、上述した秘密鍵SK1に対応する公開鍵である。署名情報SN1は、認証局によって生成された情報であり、証明書CT1が真正であるか否かを判断するために用いられる。署名アルゴリズム情報AI1は、認証局が署名情報SN1を生成する際に用いられたアルゴリズム、具体的には、用いられたハッシュ関数と公開鍵暗号方式とを示す情報を含む。その他の情報OI1は、例えば、証明書のバージョン、証明書の有効期限、証明書を発行した認証局の名前などの各種の情報を含む。 As shown in FIG. 2B, the certificate CT1 includes the public key PK1, the signature information SN1, the signature algorithm information AI1, and other information OI1. The public key PK1 is a public key corresponding to the above-mentioned private key SK1. The signature information SN1 is information generated by a certificate authority and is used to determine whether or not the certificate CT1 is genuine. The signature algorithm information AI1 includes information indicating the algorithm used when the certificate authority generates the signature information SN1, specifically, the hash function used and the public key cryptosystem. Other Information OI1 includes various information such as, for example, the version of the certificate, the expiration date of the certificate, and the name of the certificate authority that issued the certificate.
署名情報SN1は、以下のように生成される。認証局は、証明書CT1に含まれる情報のうち、署名情報SN1を除いた情報(署名アルゴリズム情報AI1、公開鍵PK1、その他の情報OI1)を、署名アルゴリズム情報AI1にて示されるハッシュ関数を用いて、ハッシュ化して、ハッシュ値を生成する。認証局は、署名アルゴリズム情報AI1にて示される公開鍵暗号方式に従って、当該ハッシュ値を、認証局の秘密鍵SKca(図示省略、ユーザの秘密鍵SK1とは異なる)を用いて暗号化する。暗号化されたハッシュ値が、署名情報SN1である。ハッシュ関数のアルゴリズムには、例えば、「SHA(Secure Hash Algorithm)1」、「SHA256」が用いられる。公開鍵暗号方式のアルゴリズムには、例えば、「RSA」が用いられる。認証局の秘密鍵SKcaは、図2(A)の鍵格納部SKSに格納された認証局の公開鍵PKcaに対応する秘密鍵である。 The signature information SN1 is generated as follows. The certification authority uses the hash function indicated by the signature algorithm information AI1 for the information (signature algorithm information AI1, public key PK1, other information OI1) excluding the signature information SN1 from the information contained in the certificate CT1. And hash it to generate a hash value. The certificate authority encrypts the hash value using the certificate authority's private key SKca (not shown, different from the user's private key SK1) according to the public key cryptosystem shown in the signing algorithm information AI1. The encrypted hash value is the signature information SN1. For example, "SHA (Secure Hash Algorithm) 1" and "SHA256" are used as the hash function algorithm. For example, "RSA" is used as the algorithm of the public key cryptosystem. The certificate authority's private key SKca is a private key corresponding to the certificate authority's public key PKca stored in the key storage unit SKS of FIG. 2 (A).
図示は省略するが、証明書CT2、CT3も、それぞれ同様に、公開鍵と、署名情報と、署名アルゴリズム情報と、その他の情報と、を含んでいる。 Although not shown, the certificates CT2 and CT3 also include a public key, signature information, signature algorithm information, and other information, respectively.
図2(C)には、鍵管理情報KMIの概念図が示されている。図2(C)に示すように、鍵管理情報KMIは、管理テーブルKMTと、証明書保存先情報CTIと、を含む。管理テーブルKMTは、鍵格納部SKSに格納された各秘密鍵に対応するエントリENを含む。各エントリENは、秘密鍵の所有者であるユーザの表示名(例えば、「Alice」)と、秘密鍵のファイル名(例えば、「SK1」)と、秘密鍵に対応する証明書のファイル名(例えば、「CT1」)と、秘密鍵の所有者であるユーザの識別子であるユーザID(例えば、「USER1」)と、を含む。例えば、秘密鍵と証明書の組(例えば、秘密鍵SK1と証明書CT1)とが、鍵格納部SKSと証明書格納部CTSに格納・保存されたときに、当該秘密鍵に対応するエントリENが、複合機100の管理者によって管理テーブルKMTに記録される。
FIG. 2C shows a conceptual diagram of the key management information KMI. As shown in FIG. 2C, the key management information KMI includes the management table KMT and the certificate storage destination information CTI. The management table KMT includes an entry EN corresponding to each private key stored in the key storage unit SKS. Each entry EN includes a display name of the user who owns the private key (for example, "Alice"), a file name of the private key (for example, "SK1"), and a file name of the certificate corresponding to the private key (for example, "Alice"). For example, "CT1") and a user ID (for example, "USER1") which is an identifier of a user who is the owner of the private key are included. For example, when a set of a private key and a certificate (for example, a private key SK1 and a certificate CT1) is stored and saved in the key storage unit SKS and the certificate storage unit CTS, the entry EN corresponding to the private key Is recorded in the management table KMT by the administrator of the
以上のように、鍵管理情報KMIにおいて、複数個の秘密鍵SK1〜SK3は、識別情報としてのユーザID(例えば、「USER1」)、および、表示名(例えば、「Alice」)と、対応付けられている。そして、複数個の秘密鍵SK1〜SK3は、対応する公開鍵を含む証明書CT1〜CT3のファイル名と対応付けられている。 As described above, in the key management information KMI, the plurality of private keys SK1 to SK3 are associated with the user ID (for example, "USER1") and the display name (for example, "Alice") as identification information. Has been done. The plurality of private keys SK1 to SK3 are associated with the file names of the certificates CT1 to CT3 including the corresponding public keys.
証明書保存先情報CTIは、証明書CT1〜CT3が格納された計算機200の証明書格納部CTSに、複合機100のCPU110がアクセスするための情報である。本実施例では、CPU110は、FTP(File Transfer Protocol)を用いて、計算機200の証明書格納部CTSにアクセスするので、証明書保存先情報CTIは、FTPによるアクセスに必要な情報、例えば、アカウント名と、パスワードと、サーバ名と、を含む。さらに、証明書保存先情報CTIは、計算機200における証明書格納部CTSの位置を示す情報、具体的には、証明書CT1〜CT3が格納されたフォルダを示すフォルダパスを含む。
The certificate storage destination information CTI is information for the
A−2:署名付ファイル生成処理
図3は、第1実施例の署名付ファイル生成処理のフローチャートである。署名付ファイル生成処理は、例えば、ユーザの指示に基づいて、原稿を読取実行部170を用いて読み取ることによって生成されるスキャンデータを取得し、該スキャンデータを含む署名付PDFファイルを生成する処理である。
A-2: Signed file generation process FIG. 3 is a flowchart of the signed file generation process of the first embodiment. The signed file generation process is, for example, a process of acquiring scan data generated by scanning a document using a
S100では、CPU110は、ログイン処理を実行する。本実施例では、署名付ファイル生成処理は、ログイン中のユーザの指示に基づいて実行されるため、署名付PDFファイルの生成を望むユーザは、複合機100へのログインを行う。具体的には、CPU110は、ユーザのログイン要求に応じて、図示しないログイン画面を操作部150に表示して、該ログイン画面を介して、認証情報(例えば、ユーザIDとパスワード)を取得する。CPU110は、認証情報に基づいて、特定のユーザのログインを許容するか否かを判断する。CPU110は、ログインを許容する場合には、特定のユーザのログイン状態に遷移し、ログインを許容しない場合には、エラー処理を実行する。以下では、図2(C)のユーザID「USER1」、表示名「Alice」を有するユーザのログインが許容されたとして説明を続ける。
In S100, the
S102では、CPU110は、操作部150を介して、ユーザから署名付PDFファイルの生成指示を取得する。例えば、ユーザは、原稿を読取実行部170の原稿台に載置した状態で、操作部150に、署名付PDFファイルの生成指示を入力する。S105では、CPU110は、ログイン中のユーザに対応する秘密鍵を鍵格納部SKSから取得する。具体的には、CPU110は、管理テーブルKMTにおいて、現在ログイン中のユーザを示すユーザID(例えば、「USER1」)を検索し、該ユーザIDを含むエントリENを参照して、該ユーザIDに対応付けられた秘密鍵が、秘密鍵SK1であることを特定する。CPU110は、複合機100の鍵格納部SKS(図2(C))から特定済みの秘密鍵SK1を取得する。取得済みの秘密鍵SK1は、揮発性記憶装置120のバッファ領域BA1に格納される。
In S102, the
S110では、CPU110は、取得済みの秘密鍵に対応する証明書を外部の計算機200から取得する。例えば、CPU110は、管理テーブルKMTの現在ログイン中のユーザに対応するエントリENを参照して、取得済みの秘密鍵SK1に対応する証明書のファイル名が「CT1」であることを特定する。CPU110は、当該証明書のファイル名を用いて、秘密鍵に対応する証明書を外部の計算機200から取得する。具体的には、CPU110は、図2(C)の証明書保存先情報CTIに含まれるアカウント名とパスワードとサーバ名とを用いて、計算機200にアクセスする。CPU110は、証明書保存先情報CTIに含まれるフォルダパスによって示されるフォルダ(すなわち、図2(B)の証明書格納部CTS)内のファイルであって、ファイル名「CT1」を有するファイルを、計算機200に要求する。これによって、CPU110は、計算機200から証明書CT1を取得する。証明書CT1の取得は、上述したように、例えば、FTPに従って実行される。なお、変形例としては、FTPに代えて、他のプロトコル、例えば、SMTP(Simple Mail Transfer Protocol)や、CIFS(Common Internet File System)に従って、証明書CT1の取得が実行されても良い。取得済みの証明書CT1は、揮発性記憶装置120のバッファ領域BA1に格納される。このように、CPU110は、秘密鍵に対応する証明書のファイル名を用いて、対応する証明書を、適切に、計算機200から取得することができる。
In S110, the
S115〜S140では、CPU110は、S110にて取得済みの証明書CT1が、S105にて取得済みの秘密鍵SK1と対応する真正な証明書であるか否かを判断する。これによって、後述するS155にて出力される証明書が、真正な証明書であるか否かが判断されるので、外部装置である計算機200から証明書を取得する場合であっても、適切な証明書を出力できる。
In S115 to S140, the
取得済みの証明書CT1が真正な証明書であるか否かの判断は、2段階で行われる。S115、S120では、1段階目の判断として第1の判断方法を用いて簡易的な判断が行われる。S125〜S140では、2段階目の判断として1段階目より複雑な第2の判断方法を用いて判断が行われる。以下により詳しく説明する。 Whether or not the acquired certificate CT1 is a genuine certificate is determined in two steps. In S115 and S120, a simple judgment is made using the first judgment method as the first-stage judgment. In S125 to S140, the judgment is made by using the second judgment method, which is more complicated than the first stage, as the second stage judgment. This will be described in more detail below.
S115では、CPU110は、秘密鍵SK1に含まれる公開鍵の情報と、証明書CT1に含まれる公開鍵の情報と、を比較する。RSAの秘密鍵SK1は、「modulus」、「publicExponent」、「privateExponent」、「prime1」、「prime2」などの複数個の情報を含んでいる。そして、秘密鍵SK1に対応する公開鍵(対応する証明書CT1に含まれる公開鍵)は、秘密鍵SK1に含まれる情報のうち、「modulus」と、「publicExponent」と、を抜き出したものである。このように、秘密鍵SK1および証明書CT1は、共通の情報として、公開鍵の情報(具体的には、「modulus」、「publicExponent」)を含む。S110にて取得済みの証明書CT1が、秘密鍵SK1に対応する真正な証明書CT1である場合には、秘密鍵SK1に含まれる公開鍵と、証明書CT1に含まれる公開鍵とは、同一の公開鍵PK1である。したがって、この場合には、秘密鍵SK1に含まれる公開鍵の情報と、証明書CT1に含まれる公開鍵の情報とは、一致する。本実施例では、CPU110は、秘密鍵SK1に含まれる公開鍵の「modulus」の値と、証明書CT1に含まれる公開鍵の「modulus」の値と、を比較する。
In S115, the
S120では、CPU110は、秘密鍵SK1に含まれる公開鍵の情報と、証明書CT1に含まれる公開鍵の情報と、が一致したか否かを判断する。これらの情報が一致した場合には(S120:YES)、CPU110は、2段階目の判断(S125〜S140)に処理を進める。これらの情報が一致しない場合には(S120:NO)、S110にて取得済みの証明書CT1は、秘密鍵SK1に対応する真正な証明書CT1ではないと考えられる。このために、この場合には、CPU110は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。エラー処理では、例えば、ユーザに、秘密鍵SK1に対応する真正な証明書CT1が取得できない旨が通知される。
In S120, the
S125では、CPU110は、証明書CT1に含まれる署名情報SN1を、認証局の公開鍵PKca(図2(A))を用いて復号して、ハッシュ値HV1を取得する。
In S125, the
S130では、CPU110は、証明書CT1に含まれる情報のうち、署名情報SN1を除いた情報(署名アルゴリズム情報AI1、公開鍵PK1、その他の情報OI1)を、署名アルゴリズム情報AI1にて示されるハッシュ関数を用いてハッシュ化して、ハッシュ値HV2を取得する。
In S130, the
S135では、CPU110は、S125にて取得済のハッシュ値HV1と、S130にて取得済のハッシュ値HV2と、を比較する。
In S135, the
S140では、CPU110は、ハッシュ値HV1とハッシュ値HV2とが一致したか否かを判断する。ハッシュ値HV1とハッシュ値HV2とが一致した場合には(S140:YES)、CPU110は、S145に処理を進める。ハッシュ値HV1とハッシュ値HV2とが一致しない場合には(S140:NO)、S110にて取得済みの証明書CT1は、秘密鍵SK1に対応する真正な証明書CT1ではないと考えられる。このために、この場合には、CPU110は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。
In S140, the
以上の説明から解るように、第1の判断方法(S115、S120)は、秘密鍵SK1に対応する公開鍵の情報と、証明書CT1に含まれる公開鍵の情報と、を比較するだけであるが、第2の判断方法(S125〜S140)は、ハッシュ関数を用いてハッシュ値HV2を生成する処理や署名情報SN1を復号する処理を含む。このために第2の判断方法は、第1の判断方法よりも処理負荷が高い。 As can be seen from the above explanation, the first determination method (S115, S120) only compares the public key information corresponding to the private key SK1 with the public key information included in the certificate CT1. However, the second determination method (S125 to S140) includes a process of generating a hash value HV2 using a hash function and a process of decoding the signature information SN1. Therefore, the second determination method has a higher processing load than the first determination method.
S145では、CPU110は、原稿を示すスキャンデータSDを含むPDFファイルPF(図示省略)を生成する。具体的には、CPU110は、読取実行部170に原稿を読み取らせることによって、読取実行部170から原稿を示すスキャンデータSDを取得する。CPU110は、当該スキャンデータSDを含むPDFファイルPFを生成して、揮発性記憶装置120のバッファ領域BA1に格納する。
In S145, the
S150では、PDFファイルPFを用いて署名処理を実行して、署名付PDFファイルSPFを生成する。図2(D)には、署名付PDFファイルSPFの一例が示されている。署名付PDFファイルSPFは、スキャンデータSDと、証明書CT1と、署名情報SNuと、を含む。具体的には、CPU110は、S145にて生成されたPDFファイルPFを、署名アルゴリズム情報AI1にて示されるハッシュ関数を用いてハッシュ化して、ハッシュ値HVuを取得する。CPU110は、署名アルゴリズム情報AI1にて示される公開鍵暗号方式に従って、当該ハッシュ値HVuを、ログイン中のユーザの秘密鍵SK1を用いて暗号化する。暗号化されたハッシュ値HVuが、署名情報SNuである。CPU110は、PDFファイルPFに、署名情報SNuと、署名情報SNuの生成に用いた秘密鍵SK1に対応する証明書CT1と、を格納することによって、署名付PDFファイルSPF(図2(D))を生成する。
In S150, the signature process is executed using the PDF file PF to generate the signed PDF file SPF. FIG. 2D shows an example of a signed PDF file SPF. The signed PDF file SPF includes scan data SD, certificate CT1, and signature information SNu. Specifically, the
S155では、CPU110は、生成済の署名付PDFファイルSPFを、外部の計算機200に送信する。署名付PDFファイルSPFの送信は、例えば、FTPに従って、実行される。変形例としては、FTPに代えて、他のプロトコル、例えば、SMTPや、CIFSに従って、署名付PDFファイルSPFの送信が実行されても良い。署名付PDFファイルSPFを受信した計算機200のCPU210は、署名付PDFファイルSPFを、指定されたフォルダ(図1のスキャンデータ格納部SDS)に格納する。計算機200に格納された署名付PDFファイルSPFは、ユーザの利用に供される。
In S155, the
以上説明した第1実施例によれば、複合機100(CPU110)は、自身の不揮発性記憶装置130の鍵格納部SKSから秘密鍵SK1を取得し(S105)、秘密鍵SK1に対応する公開鍵PK1を含む証明書CT1を、インタフェース190を介して計算機200から取得する(S110)。複合機100は、秘密鍵SK1を用いて、ハッシュ値HVuを暗号化して署名情報SNuを生成する処理を含む署名処理を実行する(S150)。複合機100は、署名情報SNuと、証明書CT1と、スキャンデータSDと、を含む署名付PDFファイルを、計算機200に出力する。この構成によれば、秘密情報として管理すべき秘密鍵SK1は、秘密鍵SK1を使用する複合機100の鍵格納部SKSに格納されるので、セキュリティを確保できる。そして、秘密鍵SK1と比較して秘密情報として管理すべき必要性が低い公開鍵PK1を含む証明書CT1は、外部の計算機200から取得される。この結果、証明書CT1は、複合機100の不揮発性記憶装置130に格納・保存される必要がない。したがって、複合機100において、必要とされる不揮発性記憶装置130の容量を、セキュリティを損なうことなく低減できる。例えば、秘密鍵SK1と、対応する証明書CT1と、の両方を、複合機100の不揮発性記憶装置130に格納・保存する場合と比較して、必要とされる不揮発性記憶装置130の容量を低減できる。特に、本実施例では、署名付きデータ(具体的には、署名付PDFファイルSPF)を出力するために、秘密鍵と証明書とを用いるので、例えば、ユーザごとに秘密鍵と証明書とを管理する場合があり得る。このような場合に、仮に、複合機100自身に、秘密鍵と証明書とを保存する場合には、複合機100において必要とされる不揮発性記憶装置130の容量が大きくなりがちであるが、本実施例では、セキュリティを損なうことなく、必要な不揮発性記憶装置130の低減できる。
According to the first embodiment described above, the multifunction machine 100 (CPU110) acquires the private key SK1 from the key storage unit SKS of its own non-volatile storage device 130 (S105), and the public key corresponding to the private key SK1. The certificate CT1 including PK1 is obtained from the
さらに、本実施例によれば、複合機100は、署名付PDFファイルSPFを、証明書CT1を格納する計算機200に送信する(S155)。したがって、署名付PDFファイルSPFと、証明書CT1と、は、同じ計算機200にて格納・保存することができる。したがって、証明書CT1を格納するためだけに外部装置を用意する必要がなく、システム1000を簡素化できる。
Further, according to the present embodiment, the
さらに、上記実施例によれば、図2(C)の管理テーブルKMTにおいて、複数個の秘密鍵SK1〜SK3は、ユーザID(例えば、「USER1」、「USER2」)と対応付けられている。そして、特定のユーザID(例えば、「USER1」)を用いたログイン処理(S100)が行われることで、当該特定のユーザIDが指定される。そして、当該特定のユーザID(例えば、「USER1」)に対応する秘密鍵SK1が取得され(S105)、秘密鍵SK1に対応する公開鍵PK1を含む証明書CT1が計算機200から取得される(S110)。すなわち、複合機100は、第1のユーザID(例えば、「USER1」)が指定される場合に、第1のユーザIDに対応する第1の秘密鍵(例えば、秘密鍵SK1)を鍵格納部SKSから取得し、第2のユーザID(例えば、「USER2」)が指定される場合に、第2のユーザIDに対応する第2の秘密鍵(例えば、秘密鍵SK2)を鍵格納部SKSから取得する。そして、複合機100は、第1のユーザIDが指定される場合に、第1の秘密鍵に対応する第1の公開鍵を含む証明書(例えば、証明書CT1)を計算機200から取得し、第2のユーザIDが指定される場合に、第2の秘密鍵に対応する第2の公開鍵を含む証明書(例えば、証明書CT2)を計算機200から取得する。この結果、複数個の秘密鍵SK1、SK2と、複数個の証明書CT1、CT2と、が用いられる場合であっても、必要とされる不揮発性記憶装置130の容量を、セキュリティを損なうことなく低減できる。例えば、本実施例のように、ユーザごとに秘密鍵と証明書とを管理する場合に、管理すべき秘密鍵と証明書の個数が多くなりがちである。このような場合においても必要とされる不揮発性記憶装置130の容量を低減できる。
Further, according to the above embodiment, in the management table KMT of FIG. 2C, the plurality of private keys SK1 to SK3 are associated with user IDs (for example, "USER1" and "USER2"). Then, the login process (S100) using a specific user ID (for example, "USER1") is performed to specify the specific user ID. Then, the private key SK1 corresponding to the specific user ID (for example, "USER1") is acquired (S105), and the certificate CT1 including the public key PK1 corresponding to the private key SK1 is acquired from the computer 200 (S110). ). That is, when the first user ID (for example, "USER1") is specified, the
さらに、上記実施例では、複合機100は、第1の判断方法を用いて、証明書CT1が真正な証明書であるか否かを判断する第1の判断処理(S115、S120)を実行する。複合機100は、第1の判断処理において、証明書CT1が真正な証明書であると判断される場合に(S120:YES)、第2の判断方法を用いて、証明書CT1が真正な証明書であるか否かを判断する第2の判断処理(S125〜S140)を実行する。第1の判断処理において、証明書CT1が真正な証明書でないと判断される場合に(S120:NO)、第1の判断処理よりも処理負荷が高い第2の判断処理は、実行されない。この結果、効率的に、証明書CT1が真正な証明書であるか否かを判断できる。
Further, in the above embodiment, the
さらに、上記実施例では、S115、S120の第1の判断処理は、秘密鍵SK1に含まれる公開鍵PK1の「modulus」と、証明書CT1に含まれる公開鍵PK1の「modulus」と、が同一であるか否かを判断する。この結果、比較的簡易に、証明書CT1が真正な証明書であるか否かの一応の判断ができる。 Further, in the above embodiment, in the first determination process of S115 and S120, the "modulus" of the public key PK1 included in the private key SK1 and the "modulus" of the public key PK1 included in the certificate CT1 are the same. Judge whether or not. As a result, it is possible to relatively easily determine whether or not the certificate CT1 is a genuine certificate.
B.第2実施例
第2実施例では、図2(C)の管理テーブルKMTにおいて、各エントリENには、証明書のファイル名は含まれない。すなわち、鍵格納部SKSに格納された複数個の秘密鍵SK1〜SK3のそれぞれには、対応する証明書CT1〜CT3のファイル名は対応付けられていない。第2実施例のシステムの他の構成は、第1実施例のシステム1000と同じである。
B. Second Example In the second embodiment, in the management table KMT of FIG. 2C, each entry EN does not include the file name of the certificate. That is, the file names of the corresponding certificates CT1 to CT3 are not associated with each of the plurality of private keys SK1 to SK3 stored in the key storage unit SKS. Other configurations of the system of the second embodiment are the same as those of the
第2実施例では、複合機100は、図3の署名付ファイル生成処理とは異なる署名付ファイル生成処理を実行する。図4は、第2実施例の署名付ファイル生成処理のフローチャートである。
In the second embodiment, the
S110Bにて、図3のS110〜S105が実行された後のS110Bでは、CPU110は、指定されたフォルダ、すなわち、証明書保存先情報CTIに含まれるフォルダパスによって示されるフォルダ内の全ての証明書を、計算機200から取得する。具体的には、CPU110は、FTPに従って、計算機200にアクセスして、当該フォルダ内の全てのファイルを計算機200に要求する。計算機200は、指定されたファイル内の全てのファイル、すなわち、証明書格納部CTSに格納された証明書CT1〜CT3を含む全ての証明書を、複合機100に送信する。取得済みの全ての証明書は、揮発性記憶装置120のバッファ領域BA1に格納される。
In S110B after S110 to S105 of FIG. 3 are executed in S110B, the
S112Bでは、CPU110は、取得済みの全ての証明書から1個の注目する証明書を選択する。S115Bでは、CPU110は、図3の115と同様に、S105にて取得済みの秘密鍵SK1に含まれる公開鍵PK1の情報と、注目する証明書に含まれる公開鍵の情報と、を比較する。
In S112B, the
S120Bでは、CPU110は、秘密鍵SK1に含まれる公開鍵PK1の情報と、注目する証明書に含まれる公開鍵の情報と、が一致したか否かを判断する。これらの情報が一致した場合には(S120B:YES)、CPU110は、2段階目の判断(S125〜S240)に処理を進める。これらの情報が一致しない場合には(S120B:NO)、CPU110は、S122Bに処理を進める。
In S120B, the
S122Bでは、CPU210は、取得済みの全ての証明書を注目する証明書として選択したか否かを判断する。全ての証明書が選択済みである場合には(S122B:YES)、CPU210は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。未選択の証明書がある場合には(S122B:NO)、CPU210は、S112Bに戻って、未選択の証明書を新たな注目する証明書として選択する。
In S122B, the
S125〜S240では、注目する証明書について、図3のS125〜S240と同様の処理が実行される。そして、S170Bでは、図3のS145〜S155と同様の処理が行われて、署名付PDFファイルSPFの生成・出力が行われる。 In S125 to S240, the same processing as in S125 to S240 of FIG. 3 is executed for the certificate of interest. Then, in S170B, the same processing as in S145 to S155 of FIG. 3 is performed, and the signed PDF file SPF is generated and output.
以上説明した第2実施例によれば、複合機100は、計算機200の証明書格納部CTSに格納される複数個の証明書を、計算機200から取得し(S110B)、取得済の複数個の証明書の中から、秘密鍵SK1に対応する証明書CT1を選択する(S112B〜S122B)。この結果、例えば、秘密鍵SK1に対応する証明書CT1のファイル名が予め鍵管理情報KMIに記録されていない場合であっても複数個の証明書の中から、適切な証明書を取得することができる。
According to the second embodiment described above, the
C.第3実施例
第3実施例のシステムの構成は、第2実施例のシステムと同じである。第3実施例では、複合機100は、図4の第2実施例の署名付ファイル生成処理とは異なる署名付ファイル生成処理を実行する。図5は、第3実施例の署名付ファイル生成処理のフローチャートである。
C. Third Example The configuration of the system of the third embodiment is the same as that of the system of the second embodiment. In the third embodiment, the
図5の署名付ファイル生成処理では、図5のS100BとS110Bとの間に、S108Cが追加されている点が、図4の署名付ファイル生成処理と異なる。図5の署名付ファイル生成処理のその他の処理は、図4の署名付ファイル生成処理と同一である。 The signed file generation process of FIG. 5 differs from the signed file generation process of FIG. 4 in that S108C is added between S100B and S110B of FIG. The other processes of the signed file generation process of FIG. 5 are the same as the signed file generation process of FIG.
S108Cでは、CPU110は、既に実行済みの署名付ファイル生成処理のS110Bにて取得済みの複数個の証明書が、揮発性記憶装置120のバッファ領域BA1に格納されている否かを判断する。本実施例では、以下の契機で、バッファ領域BA1から取得済みの複数個の証明書が消去される。そして、以下の契機が生じない限り、取得済みの複数個の証明書は、バッファ領域BA1に保持される。このために、S108Cの時点で、取得済みの複数個の証明書がバッファ領域BA1に残っている場合がある。
(1)複合機100の電源が落とされたとき
(2)複合機100が再起動されたとき
(3)他の処理(例えば、ファクシミリ処理や印刷処理)の実行のためにバッファ領域BA1の領域を確保する必要があるとき
In S108C, the
(1) When the power of the
取得済みの複数個の証明書がバッファ領域BA1に格納されていない場合には(S108C:NO)、S110Bにて、CPU110は、指定されたフォルダ、すなわち、証明書保存先情報CTIに含まれるフォルダパスによって示されるフォルダ内の全ての証明書を、計算機200から取得する。取得済みの複数個の証明書がバッファ領域BA1に格納されている場合には(S108C:YES)、S110Bはスキップされる。
When a plurality of acquired certificates are not stored in the buffer area BA1 (S108C: NO), in S110B, the
このように、第3実施例では、複合機100は、実行済みの署名付ファイル生成処理のS110Bにおいて、計算機200から取得済みの複数個の証明書を、実行済みの署名付ファイル生成処理にて該署名付PDFファイルSPFが出力された後も、バッファ領域BA1に一時的に格納しておく。そして、複合機100は、その後に、署名付ファイル生成処理が再度実行されることによって、S105にて、秘密鍵が再度取得される際に、対応する証明書がバッファ領域BA1に格納されている場合には(S108C:YES)、複合機100は、計算機200から証明書を再度取得せず、バッファ領域BA1に格納された証明書を用いて、署名付PDFファイルSPFの生成・出力を行う。この結果、計算機200への無駄なアクセスを抑制して、証明書が計算機200に格納されている場合であっても、効率良く、署名付PDFファイルSPFの生成や出力を実行できる。
As described above, in the third embodiment, in the S110B of the executed signed file generation process, the
D.第4実施例
第4実施例のシステムの構成は、第1実施例のシステムと同じである。第4実施例では、複合機100は、図3の第1実施例の署名付ファイル生成処理とは異なる署名付ファイル生成処理を実行する。図6は、第4実施例の署名付ファイル生成処理のフローチャートである。
D. Fourth Example The configuration of the system of the fourth embodiment is the same as that of the system of the first embodiment. In the fourth embodiment, the
図6の署名付ファイル生成処理では、図6のS100DとS110との間に、S108Dが追加されている点が、図3の署名付ファイル生成処理と異なる。図6の署名付ファイル生成処理のその他の処理は、図3の署名付ファイル生成処理と同一である。 The signed file generation process of FIG. 6 differs from the signed file generation process of FIG. 3 in that S108D is added between S100D and S110 of FIG. The other processes of the signed file generation process of FIG. 6 are the same as the signed file generation process of FIG.
S108Dでは、CPU110は、既に実行済みの署名付ファイル生成処理のS110にて計算機200から取得され、さらに、S115〜S140にて真正であることを検証済みの証明書であって、直前のS105にて取得済の秘密鍵に対応する証明書が、揮発性記憶装置120のバッファ領域BA1に格納されている否かを判断する。本実施例では、以下の契機で、バッファ領域BA1から検証済みの証明書が消去される。そして、以下の契機が生じない限り、検証済みの複数個の証明書は、バッファ領域BA1に保持される。このために、S108Dの時点で、検証済みの1以上の証明書がバッファ領域BA1に残っている場合がある。
(1)複合機100の電源が落とされたとき
(2)複合機100が再起動されたとき
(3)他の処理(例えば、ファクシミリ処理や印刷処理)の実行のためにバッファ領域BA1の領域を確保する必要があるとき
In S108D, the
(1) When the power of the
なお、上記(1)〜(3)の契機に代えて、あるいは、これらの契機とともに、例えば、バッファ領域BA1に格納された検証済みの証明書の個数が特定数(例えば、2個)を超えた場合に、バッファ領域BA1に格納された時期が早い順に、1個ずつ検証済みの証明書が消去されても良い。 In addition, instead of the triggers (1) to (3) above, or together with these triggers, for example, the number of verified certificates stored in the buffer area BA1 exceeds a specific number (for example, 2). In this case, the verified certificates may be deleted one by one in the order of earliest storage in the buffer area BA1.
検証済みの対応する証明書がバッファ領域BA1に格納されていない場合には(S108D:NO)、S110にて、CPU110は、取得済みの秘密鍵に対応する証明書を外部の計算機200から取得する。検証済みの対応する証明書がバッファ領域BA1に格納されている場合には(S108D:YES)、CPU110は、S110〜S140をスキップして、処理をS170Dに進める。S170Dでは、図3のS145〜S155の処理が実行される。すなわち、CPU110は、バッファ領域BA1に格納されている検証済みの対応する証明書を用いて、署名付PDFファイルSPFの生成や出力を実行する。
If the verified corresponding certificate is not stored in the buffer area BA1 (S108D: NO), in S110, the
このように、第4実施例では、複合機100は、実行済みの署名付ファイル生成処理のS110において取得され、S115〜S140にて真正であることが検証済みの証明書を、実行済みの署名付ファイル生成処理にて該署名付PDFファイルSPFが出力された後も、バッファ領域BA1に一時的に格納しておく。そして、複合機100は、その後に、署名付ファイル生成処理が再度実行されることによって、S105にて、秘密鍵が再度取得される際に、検証済みで、かつ、対応する証明書がバッファ領域BA1に格納されている場合には(S108D:YES)、複合機100は、計算機200から証明書を再度取得せず、かつ、証明書の検証のための処理(S110〜S140)を行わず、バッファ領域BA1に格納された証明書を用いて、署名付PDFファイルSPFの生成・出力を行う。(S170D)。この結果、計算機200への無駄なアクセスを抑制できるとともに、証明書の無駄な検証処理の実行を抑制できる。この結果、証明書が計算機200に格納されている場合であっても、より効率良く、署名付PDFファイルSPFの生成や出力を実行できる。
As described above, in the fourth embodiment, the
E.変形例
(1)上記各実施例では、秘密鍵と証明書とは、スキャンデータSDを含むPDFファイルに対して署名するために用いられている。これに代えて、秘密鍵と証明書とは、他の処理のために用いられても良い。
E. Modifications (1) In each of the above embodiments, the private key and the certificate are used to sign the PDF file including the scan data SD. Alternatively, the private key and certificate may be used for other processing.
例えば、複合機100は、ユーザの端末装置(図示省略)をクライアントとして通信を行うサーバとして機能する場合がある。この場合において、複合機100は、自身のサーバ証明書を、計算機200の証明書格納部CTSに格納し、該サーバ証明書に対応する秘密鍵を複合機100の鍵格納部SKSに格納する。そして、複合機100は、ユーザの端末装置から接続要求があると、計算機200にアクセスして計算機200からサーバ証明書を取得する。複合機100は、例えば、図3のS125〜S140を実行して、サーバ証明書が真正であるか否かを判断し、サーバ証明書が真正である場合には、該サーバ証明書を端末装置に対して送信する。
For example, the
端末装置は、該サーバ証明書を受信すると、例えば、図3のS125〜S140を実行して、該サーバ証明書が真正であるか否かを判断する。そして、端末装置は、サーバ証明書が真正である場合には、該サーバ証明書に含まれる公開鍵を用いて、共通鍵を暗号化して、暗号化された共通鍵を、複合機100に対して送信する。
Upon receiving the server certificate, the terminal device executes, for example, S125 to S140 of FIG. 3 to determine whether or not the server certificate is genuine. Then, when the server certificate is genuine, the terminal device encrypts the common key using the public key included in the server certificate, and applies the encrypted common key to the
複合機100は、暗号化された共通鍵を受信すると、該暗号化された共通鍵を、サーバ証明書に対応する秘密鍵であって鍵格納部SKSに格納されている秘密鍵を用いて、復号する。これによって複合機100は、共通鍵を取得する。この結果、複合機100と端末装置との両方が、該共通鍵を所有した状態となるので、複合機100と端末装置との間で、該共通鍵を用いた暗号通信を行うことができる。
When the
以上の説明から解るように、上記各実施例では、ハッシュ値HVuを暗号化して署名情報SNuを生成する処理(図3のS150)が、変換処理の例であり、上記変形例では、暗号化された共通鍵を復号して共通鍵を取得する処理が、変換処理の例である。そして、上記各実施例では、署名情報SNuと証明書CT1とを含む署名付PDFファイルSPFの送信(図3のS155)が、変換済みデータと証明書との出力の例であり、上記変形例では、端末装置へのサーバ証明書の送信が証明書の出力の例である。 As can be seen from the above description, in each of the above embodiments, the process of encrypting the hash value HVu to generate the signature information SNu (S150 in FIG. 3) is an example of the conversion process, and in the above modified example, the encryption is performed. The process of decrypting the common key and acquiring the common key is an example of the conversion process. Then, in each of the above embodiments, the transmission of the signed PDF file SPF including the signature information SNu and the certificate CT1 (S155 in FIG. 3) is an example of the output of the converted data and the certificate, and the above modified example. Then, the transmission of the server certificate to the terminal device is an example of the output of the certificate.
また、上記各実施例では、秘密鍵と証明書とは、スキャンデータSDを含むPDFファイルとは異なるデータに対して署名することによって、署名付データを生成するために用いられても良い。PDFファイルとは異なるデータは、例えば、テキストファイル、描画アプリケーションによって生成された画像ファイル、文書作成アプリケーションによって生成された文書ファイルを含む。 Further, in each of the above embodiments, the private key and the certificate may be used to generate signed data by signing data different from the PDF file including the scan data SD. Data different from the PDF file includes, for example, a text file, an image file generated by a drawing application, and a document file generated by a document creation application.
(2)上記各実施例では、証明書CT1〜CT3を格納する証明書格納部CTS(図2(B)は、計算機200に備えられている。これに代えて、証明書CT1〜CT3は、他の外部装置、例えば、USBインタフェースを介して複合機100と接続されるハードディスクやUSBメモリなどの外部ストレージに格納されても良い。また、証明書CT1〜CT3は、複合機100とインターネットを介して接続されるクラウドサーバに格納されても良い。
(2) In each of the above embodiments, the certificate storage unit CTS for storing the certificates CT1 to CT3 (FIG. 2B is provided in the
(3)上記各実施例では、ユーザによって入力されるユーザIDを用いてログイン処理(図3のS100)を行うことによって、秘密鍵に対応付けられた識別情報としてのユーザIDが指定され、該ユーザIDに対応する秘密鍵が取得される(図3のS105)。ログイン処理に代えて、例えば、複合機100は、図3のS102の後に、秘密鍵に対応付けられた識別情報としてのユーザの表示名(例えば「Alicd」)のリストを含む選択画面(図示省略)を表示部140に表示し、該選択画面を介して表示名の指定指示を取得しても良い。この場合には、S105にて、複合機100は、指定された表示名(例えば「Alice」)に対応する秘密鍵を取得する。また、このとき表示される選択画面は、ユーザの表示名のリストに代えて、証明書のファイル名のリストを含んでいても良い。
(3) In each of the above embodiments, the user ID as the identification information associated with the private key is specified by performing the login process (S100 in FIG. 3) using the user ID input by the user. The private key corresponding to the user ID is acquired (S105 in FIG. 3). Instead of the login process, for example, the
(4)上記各実施例では、証明書CT1〜CT3を格納する外部装置と、署名付PDFファイルSPFを格納する装置とは、ともに計算機200である。これに代えて、証明書CT1〜CT3を格納する外部装置と、署名付PDFファイルSPFを格納する装置とは、別の装置であっても良い。例えば、証明書CT1〜CT3を格納する外部装置と、署名付PDFファイルSPFを格納する装置と、のうちの一方は、USBインタフェースを介して複合機100に接続されたUSBメモリであり、他方は、計算機200であっても良い。
(4) In each of the above embodiments, the external device for storing the certificates CT1 to CT3 and the device for storing the signed PDF file SPF are both
(5)上記各実施例では、複合機100は、複数個の秘密鍵SK1〜SK3と、対応する複数個の証明書CT1〜CT3と、を管理している。これに代えて、複合機100は、1個の秘密鍵と、対応する1個の証明書と、のみを管理していても良い。この場合には、例えば、図2(C)の管理テーブルKMTは、無くても良い。
(5) In each of the above embodiments, the
(6)上記各実施例では、複合機100は、計算機200から取得された証明書が真正であるか否かを判断する処理(例えば、図3のS115〜S140)を実行しているが、これらの処理の全部または一部は省略されても良い。例えば、図3のS115〜S140、および、S160は、省略されても良い。また、図3のS115、S120のみが省略されても良い。また、図3のS125〜S140のみが省略されても良い。
(6) In each of the above embodiments, the
(7)図3のS115では、秘密鍵SK1に含まれる公開鍵PK1の「modulus」の値と、証明書CT1に含まれる公開鍵PK1の「modulus」の値と、を比較している。これに代えて、あるいは、これと共に、例えば、秘密鍵SK1に含まれる公開鍵PK1の「publicExponent」の値と、証明書CT1に含まれる公開鍵PK1の「publicExponent」の値と、を比較しても良い。 (7) In S115 of FIG. 3, the value of the “modulus” of the public key PK1 included in the private key SK1 is compared with the value of the “modulus” of the public key PK1 included in the certificate CT1. Instead of, or in conjunction with this, for example, the value of the "public Exponent" of the public key PK1 contained in the private key SK1 is compared with the value of the "public Exponent" of the public key PK1 contained in the certificate CT1. Is also good.
(8)上記各実施例では、各秘密鍵とユーザとは、一対一で対応しているが、これに限られない。例えば、1個の秘密鍵が複数人のユーザと対応していても良い。また、一人のユーザが複数個の秘密鍵と対応していても良い。例えば、ログイン中のユーザに複数個の秘密鍵が対応している場合には、複合機100は、図3のS105にて、当該複数個の秘密鍵(または対応する証明書)のリストを含む選択画面を表示して、ユーザの選択指示を取得し、ユーザの選択指示に従って1個の秘密鍵を取得すれば良い。
(8) In each of the above embodiments, each private key and the user have a one-to-one correspondence, but the present invention is not limited to this. For example, one private key may correspond to a plurality of users. Further, one user may correspond to a plurality of private keys. For example, when a plurality of private keys correspond to a logged-in user, the
(9)上記各実施例では、署名付ファイル生成処理を行う情報処理装置は、複合機100であるが、単体のスキャナであっても良い。また、情報処理装置は、パーソナルコンピュータやスマートフォンなどの端末装置であっても良い。この場合には、例えば、端末装置は、自身の不揮発性記憶装置に予め保存されたファイルに対して署名を行って、署名付ファイルを生成しても良い。あるいは、端末装置は、複合機やスキャナからスキャンデータSDを取得して、該スキャンデータSDを含むファイルに対して署名を行って、署名付ファイルを生成しても良い。また、情報処理装置は、ファイルサーバであっても良い。この場合には、ファイルサーバは、例えば、所定のフォルダに格納されたファイルに対して署名を行って、署名付ファイルを生成しても良い。この場合には、ファイルサーバは、署名付ファイルを、自身のハードディスクに格納し、クライアントからの要求に応じて、該クライアントに対して署名付ファイルを出力する。この場合に、ファイルサーバは、ネットワークを介して互いに通信可能な複数個の装置(例えば、コンピュータ)を含む、いわゆるクラウドサーバであっても良い。
(9) In each of the above embodiments, the information processing device that performs the signed file generation process is the
(10)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。 (10) In each of the above embodiments, a part of the configuration realized by the hardware may be replaced with software, and conversely, a part or all of the configuration realized by the software may be replaced with the hardware. You may do so.
(11)本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD−ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。 (11) When a part or all of the functions of the present invention are realized by a computer program, the program is provided in a form stored in a computer-readable recording medium (for example, a non-temporary recording medium). can do. The program may be used while being stored on the same or different recording medium (computer-readable recording medium) as it was provided. The "computer-readable recording medium" is not limited to a portable recording medium such as a memory card or a CD-ROM, but is connected to an internal storage device in the computer such as various ROMs or a computer such as a hard disk drive. It may also include an external storage device.
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。 Although the present invention has been described above based on Examples and Modifications, the above-described embodiments of the invention are for facilitating the understanding of the present invention and do not limit the present invention. The present invention can be modified and improved without departing from the spirit and claims, and the present invention includes equivalents thereof.
110…CPU、120…揮発性記憶装置、130…不揮発性記憶装置、140…表示部、150…操作部、160…印刷実行部、170…読取実行部、190…インタフェース、200…計算機、210…CPU、220…揮発性記憶装置、230…不揮発性記憶装置、240…表示部、250…操作部、290…インタフェース、1000…システム、NT…ローカルエリアネットワーク、PG1…コンピュータプログラム、PG2…コンピュータプログラム、KMI…鍵管理情報、SDS…スキャンデータ格納部、CTI…証明書保存先情報、SKS…鍵格納部、KMT…管理テーブル、CTS…証明書格納部 110 ... CPU, 120 ... Volatile storage device, 130 ... Non-volatile storage device, 140 ... Display unit, 150 ... Operation unit, 160 ... Print execution unit, 170 ... Reading execution unit, 190 ... Interface, 200 ... Computer, 210 ... CPU, 220 ... volatile storage device, 230 ... non-volatile storage device, 240 ... display unit, 250 ... operation unit, 290 ... interface, 1000 ... system, NT ... local area network, PG1 ... computer program, PG2 ... computer program, KMI ... key management information, SDS ... scan data storage unit, CTI ... certificate storage destination information, SKS ... key storage unit, KMT ... management table, CTS ... certificate storage unit
Claims (11)
秘密鍵が格納される不揮発性の格納部と、
前記情報処理装置とは異なる外部装置と通信するためのインタフェースと、
前記格納部から前記秘密鍵を取得する秘密鍵取得部と、
前記秘密鍵に対応する公開鍵を含む証明書を、前記インタフェースを介して認証局とは異なる特定の外部装置から取得する証明書取得部であって、前記証明書は、前記認証局によって署名された暗号化データを前記認証局から取得し、取得された前記暗号化データを前記秘密鍵で復号することによって得られた後、前記特定の外部装置に格納されている、前記証明書取得部と、
前記格納部から取得される前記秘密鍵を用いて変換処理を実行して変換済データを生成する変換部であって、前記変換処理は、データを暗号化する処理と、前記公開鍵を用いて暗号化されたデータを復号する処理と、のいずれかを含む、前記変換部と、
前記証明書を出力する出力部と、
を備える、情報処理装置。 It is an information processing device
A non-volatile storage unit that stores the private key,
An interface for communicating with an external device different from the information processing device,
A private key acquisition unit that acquires the private key from the storage unit,
A certificate acquisition unit that acquires a certificate including a public key corresponding to the private key from a specific external device different from the certificate authority via the interface, and the certificate is signed by the certificate authority. With the certificate acquisition unit stored in the specific external device after obtaining the encrypted data from the certificate authority and decrypting the acquired encrypted data with the private key. ,
A conversion unit that executes a conversion process using the private key acquired from the storage unit to generate converted data. The conversion process includes a process of encrypting data and a process of using the public key. The conversion unit, which includes any of the processes of decrypting the encrypted data, and the conversion unit.
An output unit that outputs the certificate and
Information processing device.
署名対象のデータを取得するデータ取得部と、
前記署名対象のデータに基づいて特定データを生成する生成部と、
を備え、
前記変換部は、前記変換処理として、前記秘密鍵を用いて前記特定データを暗号化する署名処理を実行して、前記変換済データとして署名データを生成し、
前記出力部は、前記署名対象のデータと、前記署名データと、前記証明書と、を含む署名付データを出力する、情報処理装置。 The information processing device according to claim 1, further
The data acquisition unit that acquires the data to be signed, and
A generator that generates specific data based on the data to be signed,
With
As the conversion process, the conversion unit executes a signature process for encrypting the specific data using the private key to generate signature data as the converted data.
The output unit is an information processing device that outputs signed data including the data to be signed, the signature data, and the certificate.
前記出力部は、前記署名付きデータを、前記インタフェースを介して前記特定の外部装置に送信する、情報処理装置。 The information processing device according to claim 2.
The output unit is an information processing device that transmits the signed data to the specific external device via the interface.
複数個の前記秘密鍵のそれぞれは、識別情報と対応付けられ、
前記秘密鍵取得部は、
第1の前記識別情報が指定される場合に、前記第1の識別情報に対応する第1の前記秘密鍵を前記格納部から取得し、
第2の前記識別情報が指定される場合に、前記第2の識別情報に対応する第2の前記秘密鍵を前記格納部から取得し、
前記証明書取得部は、
前記第1の識別情報が指定される場合に、前記第1の秘密鍵に対応する第1の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得し、
前記第2の識別情報が指定される場合に、前記第2の秘密鍵に対応する第2の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得する、情報処理装置。 The information processing device according to any one of claims 1 to 3.
Each of the plurality of private keys is associated with the identification information and is associated with the identification information.
The private key acquisition unit
When the first identification information is specified, the first secret key corresponding to the first identification information is acquired from the storage unit.
When the second identification information is specified, the second secret key corresponding to the second identification information is acquired from the storage unit.
The certificate acquisition department
When the first identification information is specified, the certificate including the first public key corresponding to the first private key is obtained from the specific external device.
An information processing device that obtains the certificate including the second public key corresponding to the second private key from the specific external device when the second identification information is specified.
複数個の前記秘密鍵のそれぞれは、対応する前記公開鍵を含む前記証明書のファイル名と対応付けられ、
前記証明書取得部は、
前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記特定の秘密鍵に対応する特定の前記ファイル名を用いて、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得する、情報処理装置。 The information processing device according to any one of claims 1 to 4.
Each of the plurality of private keys is associated with the file name of the certificate containing the corresponding public key.
The certificate acquisition department
When the specific private key is acquired by the private key acquisition unit, the specific public key corresponding to the specific private key is included by using the specific file name corresponding to the specific private key. An information processing device that obtains the certificate from the specific external device.
前記格納部には、複数個の前記秘密鍵が格納され、
前記証明書取得部は、前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記格納部に格納される複数個の前記証明書を、前記特定の外部装置から取得し、
前記情報処理装置は、さらに、
取得済の前記複数個の証明書の中から、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を選択する選択部を備える、情報処理装置。 The information processing device according to any one of claims 1 to 4.
A plurality of the private keys are stored in the storage unit.
When the specific private key is acquired by the private key acquisition unit, the certificate acquisition unit acquires a plurality of the certificates stored in the storage unit from the specific external device.
The information processing device further
An information processing device including a selection unit for selecting a certificate including the specific public key corresponding to the specific private key from the plurality of acquired certificates.
前記特定の外部装置から取得される前記証明書が、前記格納部から取得される前記秘密鍵に対応する真正な証明書であるか否かを判断する判断部を備え、
前記出力部は、前記秘密鍵に対応する真正な証明書であると判断された前記証明書を出力する、情報処理装置。 The information processing device according to any one of claims 1 to 6, further comprising.
A determination unit for determining whether or not the certificate acquired from the specific external device is a genuine certificate corresponding to the private key acquired from the storage unit is provided.
The output unit is an information processing device that outputs the certificate determined to be a genuine certificate corresponding to the private key.
前記判断部は、
第1の判断方法を用いて、対象の前記証明書が真正な証明書であるか否かを判断する第1の判断処理を実行し、
前記第1の判断処理において、対象の前記証明書が真正な証明書であると判断される場合に、第2の判断方法を用いて、対象の前記証明書が真正な証明書であるか否かを判断する第2の判断処理であって、前記第1の判断処理よりも処理負荷が高い前記第2の判断処理を実行し、
前記第1の判断処理において、対象の前記証明書が真正な証明書でないと判断される場合に、前記第2の判断処理を実行しない、情報処理装置。 The information processing device according to claim 7.
The judgment unit
Using the first determination method, the first determination process for determining whether or not the target certificate is a genuine certificate is executed.
In the first determination process, when it is determined that the target certificate is a genuine certificate, whether or not the target certificate is a genuine certificate using the second determination method. The second determination process, which is the second determination process for determining whether or not, and has a higher processing load than the first determination process, is executed.
An information processing device that does not execute the second determination process when it is determined that the target certificate is not a genuine certificate in the first determination process.
前記秘密鍵は、対応する前記公開鍵の少なくとも一部を含み、
前記第1の判断処理は、前記格納部から取得される前記秘密鍵に含まれる前記公開鍵の少なくとも一部と、前記特定の外部装置から取得される前記証明書に含まれる前記公開鍵の少なくとも一部と、が同一であるか否かを判断する処理である、情報処理装置。 The information processing device according to claim 8.
The private key includes at least a portion of the corresponding public key.
The first determination process includes at least a part of the public key included in the private key acquired from the storage unit and at least a part of the public key included in the certificate acquired from the specific external device. An information processing device that determines whether or not a part is the same as a part.
前記証明書取得部によって前記特定の外部装置から取得される前記証明書を、前記出力部による前記証明書の出力後も、一時的に格納する一時格納部を備え、
前記出力部による前記証明書の出力後において、前記秘密鍵が再度取得される際に、再度取得される前記秘密鍵に対応する前記証明書が前記一時格納部に格納されている場合には、
前記証明書取得部は、前記特定の外部装置から前記証明書を再度取得せず、
前記出力部は、前記一時格納部に格納された前記証明書を出力する、情報処理装置。 The information processing device according to any one of claims 1 to 9, further comprising:
A temporary storage unit for temporarily storing the certificate acquired from the specific external device by the certificate acquisition unit even after the output of the certificate by the output unit is provided.
When the private key is acquired again after the output of the certificate by the output unit, if the certificate corresponding to the private key to be acquired again is stored in the temporary storage unit, the certificate is stored in the temporary storage unit.
The certificate acquisition unit does not acquire the certificate again from the specific external device, and does not acquire the certificate again.
The output unit is an information processing device that outputs the certificate stored in the temporary storage unit.
前記格納部から前記秘密鍵を取得する秘密鍵取得機能と、
前記秘密鍵に対応する公開鍵を含む証明書を、前記インタフェースを介して認証局とは異なる特定の外部装置から取得する証明書取得機能であって、前記証明書は、前記認証局によって署名された暗号化データを前記認証局から取得し、取得された前記暗号化データを前記秘密鍵で復号することによって得られた後、前記特定の外部装置に格納されている、前記証明書取得機能と、
前記格納部から取得される前記秘密鍵を用いて変換処理を実行して変換済データを生成する変換部であって、前記変換処理は、データを暗号化する処理と、前記公開鍵を用いて暗号化されたデータを復号する処理と、のいずれかを含む、前記変換機能と、
前記証明書を出力する出力機能と、
をコンピュータに実現させる、コンピュータプログラム。 A computer program for an information processing device including a non-volatile storage unit in which a private key is stored and an interface for communicating with an external device different from the information processing device.
A private key acquisition function for acquiring the private key from the storage unit,
It is a certificate acquisition function that acquires a certificate including a public key corresponding to the private key from a specific external device different from the certificate authority via the interface, and the certificate is signed by the certificate authority. With the certificate acquisition function stored in the specific external device after obtaining the encrypted data from the certificate authority and decrypting the acquired encrypted data with the private key. ,
A conversion unit that executes a conversion process using the private key acquired from the storage unit to generate converted data. The conversion process includes a process of encrypting data and a process of using the public key. The conversion function, which includes any of the processes of decrypting the encrypted data, and
The output function that outputs the certificate and
A computer program that makes a computer realize.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017174072A JP6940812B2 (en) | 2017-09-11 | 2017-09-11 | Information processing equipment and computer programs |
US15/937,226 US11283628B2 (en) | 2017-09-11 | 2018-03-27 | Information processing device that processes information using private key and public key |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017174072A JP6940812B2 (en) | 2017-09-11 | 2017-09-11 | Information processing equipment and computer programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019050511A JP2019050511A (en) | 2019-03-28 |
JP6940812B2 true JP6940812B2 (en) | 2021-09-29 |
Family
ID=65631692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017174072A Active JP6940812B2 (en) | 2017-09-11 | 2017-09-11 | Information processing equipment and computer programs |
Country Status (2)
Country | Link |
---|---|
US (1) | US11283628B2 (en) |
JP (1) | JP6940812B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7262938B2 (en) * | 2018-06-29 | 2023-04-24 | キヤノン株式会社 | Information processing device, control method for information processing device, and program |
JP2021057834A (en) * | 2019-09-30 | 2021-04-08 | ダイキン工業株式会社 | Data collection system and data collection method |
WO2023145027A1 (en) * | 2022-01-28 | 2023-08-03 | 富士通株式会社 | Verification assistance method, verification assistance program, and information processing device |
US20230299978A1 (en) * | 2022-03-18 | 2023-09-21 | Target Brands, Inc. | Digital certificate request system |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1047028A1 (en) | 1999-04-19 | 2000-10-25 | TELEFONAKTIEBOLAGET LM ERICSSON (publ) | Communication system and method for efficiently processing electronical transactions in mobile communication networks |
JP2002215827A (en) | 2001-01-17 | 2002-08-02 | Soriton Syst:Kk | Storage and utilization method of electoronic document |
US6952428B1 (en) * | 2001-01-26 | 2005-10-04 | 3Com Corporation | System and method for a specialized dynamic host configuration protocol proxy in a data-over-cable network |
JP2001242785A (en) * | 2001-04-20 | 2001-09-07 | Ntt Data Corp | Digital signature system |
JP2005045785A (en) * | 2003-07-08 | 2005-02-17 | Matsushita Electric Ind Co Ltd | Information input/output system |
CN1820237A (en) | 2003-07-08 | 2006-08-16 | 松下电器产业株式会社 | Information input/output system |
JP2005268931A (en) * | 2004-03-16 | 2005-09-29 | Matsushita Electric Ind Co Ltd | Device and system for information security |
JP4459001B2 (en) | 2004-09-29 | 2010-04-28 | キヤノン株式会社 | Information processing apparatus, electronic signature adding method, program, and storage medium |
JP4994970B2 (en) * | 2006-08-21 | 2012-08-08 | 株式会社リコー | Image processing system, image processing apparatus, program management method, and management program for managing program |
US9768965B2 (en) * | 2009-05-28 | 2017-09-19 | Adobe Systems Incorporated | Methods and apparatus for validating a digital signature |
WO2012095973A1 (en) * | 2011-01-13 | 2012-07-19 | 三菱電機株式会社 | Data processing device and data archiving device |
US9621540B2 (en) * | 2012-12-21 | 2017-04-11 | Intel Corporation | Secure provisioning of computing devices for enterprise connectivity |
US20170063550A1 (en) * | 2015-04-23 | 2017-03-02 | Keith J Brodie | Secure Digital Signature Apparatus and Methods |
JP6507854B2 (en) | 2015-05-28 | 2019-05-08 | 株式会社リコー | INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, MANAGEMENT METHOD OF ELECTRONIC CERTIFICATE, AND PROGRAM |
US10897709B2 (en) * | 2016-12-09 | 2021-01-19 | Arris Enterprises Llc | Wireless network authorization using a trusted authenticator |
-
2017
- 2017-09-11 JP JP2017174072A patent/JP6940812B2/en active Active
-
2018
- 2018-03-27 US US15/937,226 patent/US11283628B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019050511A (en) | 2019-03-28 |
US11283628B2 (en) | 2022-03-22 |
US20190081801A1 (en) | 2019-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7066380B2 (en) | Systems, methods in systems, information processing equipment, methods in information processing equipment, and programs | |
JP6940812B2 (en) | Information processing equipment and computer programs | |
US9223957B2 (en) | Image forming apparatus, image processing apparatus and image delivery system | |
JP7030476B2 (en) | Image processor, image processor control method, program, system, and system control method | |
US10803195B2 (en) | Control method of image communication apparatus, data distribution system, export apparatus, and import apparatus | |
JP2016177551A (en) | Output device, program, output system, and output method | |
KR20040086111A (en) | Information processor and information processing method for cooperative operation of job processor | |
JP5012867B2 (en) | Image data output method, image processing apparatus, and computer program | |
JP2009060384A (en) | System and device for image communication | |
JP2011170544A (en) | Software distribution method, installation method, information processing apparatus, and software distribution system | |
JP2010250428A (en) | Information processing apparatus, method, and program | |
JP2007274403A (en) | Methods of registering user certificate and transmitting document with user's electronic signature in image processing apparatus | |
JP6969185B2 (en) | Client terminals, information processing methods and programs | |
JP5779987B2 (en) | Selection program, image processing apparatus, and computer | |
US20080304660A1 (en) | Image forming apparatus allowing easy management relating to user's usage | |
JP5012394B2 (en) | Image processing system and image processing program | |
JP2019061324A (en) | Information processing device and information processing program | |
JP5737469B1 (en) | Control device and program | |
JP2006235885A (en) | Document digitization method, document digitization apparatus and document digitization program | |
JP2007274404A (en) | Method of transmitting document with user's electronic signature in image processing apparatus | |
JP5487659B2 (en) | Information processing apparatus, information processing method, and program | |
JP2009212747A (en) | Electronic signature system | |
JP6682933B2 (en) | Image processing apparatus, image processing method and program | |
JP2007233846A (en) | Electronic data storage device, program and method | |
JP6993610B2 (en) | Image processing equipment and computer programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210414 |
|
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: 20210804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210817 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6940812 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |