[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6940812B2 - Information processing equipment and computer programs - Google Patents

Information processing equipment and computer programs Download PDF

Info

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
Application number
JP2017174072A
Other languages
Japanese (ja)
Other versions
JP2019050511A (en
Inventor
斉藤 健
健 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017174072A priority Critical patent/JP6940812B2/en
Priority to US15/937,226 priority patent/US11283628B2/en
Publication of JP2019050511A publication Critical patent/JP2019050511A/en
Application granted granted Critical
Publication of JP6940812B2 publication Critical patent/JP6940812B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3263Cryptographic 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/3268Cryptographic 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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.

特開2002−215827号公報Japanese Unexamined Patent Publication No. 2002-215827 特開2006−101218号公報Japanese Unexamined Patent Publication No. 2006-101218

しかしながら、例えば、ユーザごとに秘密鍵と公開鍵とを含む情報を格納する場合等には、これらの情報を格納する装置において、必要とされる不揮発性の格納部の容量が大きくなる可能性があった。 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.

システム1000の構成を示すブロック図である。It is a block diagram which shows the structure of the system 1000. 複合機100および計算機200に格納される各種の情報の説明図である。It is explanatory drawing of various information stored in a multifunction device 100 and a computer 200. 第1実施例の署名付ファイル生成処理のフローチャートである。It is a flowchart of the signed file generation process of 1st Example. 第2実施例の署名付ファイル生成処理のフローチャートである。It is a flowchart of the signed file generation process of 2nd Example. 第3実施例の署名付ファイル生成処理のフローチャートである。It is a flowchart of the signed file generation process of 3rd Example. 第4実施例の署名付ファイル生成処理のフローチャートである。It is a flowchart of the signed file generation process of 4th Example.

A.第1実施例
A−1:システム1000の構成
次に、実施の形態を実施例に基づき説明する。図1は、システム1000の構成を示すブロック図である。
A. First Example A-1: Configuration of System 1000 Next, an embodiment will be described based on the examples. FIG. 1 is a block diagram showing the configuration of the system 1000.

システム1000は、複合機100と、計算機200と、を備える。複合機100と計算機200とは、ローカルエリアネットワークNTに接続されている。複合機100と計算機200とは、ローカルエリアネットワークNTを介して、互いに通信可能である。 The system 1000 includes a multifunction device 100 and a computer 200. The multifunction device 100 and the computer 200 are connected to the local area network NT. The multifunction device 100 and the computer 200 can communicate with each other via the local area network NT.

複合機100は、複合機100のコントローラとしてのCPU110と、DRAMなどの揮発性記憶装置120と、ハードディスクやフラッシュメモリなどの不揮発性記憶装置130と、画像を表示する液晶ディスプレイなどの表示部140と、ユーザによる操作を取得するためのボタンやタッチパネルなどの操作部150と、印刷実行部160と、読取実行部170と、インタフェース190と、を備えている。 The multifunction device 100 includes a CPU 110 as a controller of the multifunction device 100, a volatile storage device 120 such as a DRAM, a non-volatile storage device 130 such as a hard disk and a flash memory, and a display unit 140 such as a liquid crystal display for displaying an image. It is provided with an operation unit 150 such as a button or a touch panel for acquiring an operation by the user, a print execution unit 160, a reading execution unit 170, and an interface 190.

印刷実行部160は、CPU110の制御に従って、印刷処理を実行する。印刷処理は、所定の方式(例えば、レーザ方式や、インクジェット方式)で、用紙(印刷媒体の一例)上に画像を印刷する処理である。読取実行部170は、CPU110の制御に従って、読取処理を実行する。読取処理は、CCDやCMOSなどの光電変換素子を含むイメージセンサを用いて光学的に文書等の対象物を読み取ることによって、読み取った画像を表すスキャンデータを生成する処理である。 The print execution unit 160 executes the print process according to the control of the CPU 110. The printing process is a process of printing an image on paper (an example of a printing medium) by a predetermined method (for example, a laser method or an inkjet method). The reading execution unit 170 executes the reading process according to the control of the CPU 110. The scanning process is a process of generating scan data representing a scanned image by optically reading an object such as a document using an image sensor including a photoelectric conversion element such as a CCD or CMOS.

CPU110は、データ処理を行う演算装置(プロセッサ)である。揮発性記憶装置120は、CPU110が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域BA1を提供する。不揮発性記憶装置130には、コンピュータプログラムPG1と、鍵管理情報KMIと、が格納されている。また、不揮発性記憶装置130の一部の領域は、鍵格納部SKSとして用いられている。鍵管理情報KMIと、鍵格納部SKSと、については後述する。 The CPU 110 is an arithmetic unit (processor) that processes data. The volatile storage device 120 provides a buffer area BA1 that temporarily stores various intermediate data generated when the CPU 110 performs processing. The non-volatile storage device 130 stores the computer program PG1 and the key management information KMI. Further, a part of the non-volatile storage device 130 is used as the key storage unit SKS. The key management information KMI and the key storage unit SKS will be described later.

コンピュータプログラム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 multifunction device 100. Instead, the computer program PG1 may be provided in a form downloaded from a server (not shown) operated by the vendor of the multifunction device 100, or may be provided in a form recorded on a CD-ROM or the like. good.

CPU110は、コンピュータプログラムPG1を実行することによって、複合機100を制御する制御処理を実行する。例えば、CPU110は、制御処理の一部として、印刷実行部160や読取実行部170を制御して、印刷処理や読取処理を実行させることができる。また、CPU110は、制御処理の一部として、後述する署名付ファイル生成処理を実行することができる。 The CPU 110 executes a control process for controlling the multifunction device 100 by executing the computer program PG1. For example, the CPU 110 can control the print execution unit 160 and the read execution unit 170 to execute the print process and the read process as a part of the control process. Further, the CPU 110 can execute a signed file generation process described later as a part of the control process.

インタフェース190は、外部装置、例えば、計算機200とデータ通信を行うためのインタフェースである。本実施例では、インタフェース190は、ローカルエリアネットワークNTに接続するためのインタフェース、具体的には、イーサネット(登録商標)やWi−Fi規格に準拠した有線や無線のインタフェースである。 The interface 190 is an interface for performing data communication with an external device, for example, a computer 200. In this embodiment, the interface 190 is an interface for connecting to the local area network NT, specifically, a wired or wireless interface compliant with Ethernet (registered trademark) or Wi-Fi standard.

計算機200は、例えば、パーソナルコンピュータなどの公知の計算機であり、例えば、ローカルエリアネットワークNTに接続可能な装置からアクセスされるファイルサーバとして機能している。計算機200は、計算機200のコントローラとしてのCPU210と、DRAMなどの揮発性記憶装置220と、ハードディスクやフラッシュメモリなどの不揮発性記憶装置230と、液晶ディスプレイなどの表示部240と、ユーザによる操作を取得するためのマウスやキーボードなどの操作部250と、インタフェース290と、を備えている。 The computer 200 is a known computer such as a personal computer, and functions as a file server accessed from a device that can be connected to the local area network NT, for example. The computer 200 acquires operations by a user, a CPU 210 as a controller of the computer 200, a volatile storage device 220 such as a DRAM, a non-volatile storage device 230 such as a hard disk and a flash memory, and a display unit 240 such as a liquid crystal display. It is provided with an operation unit 250 such as a mouse and a keyboard for performing the operation, and an interface 290.

CPU210は、データ処理を行う演算装置(プロセッサ)である。揮発性記憶装置220は、CPU210が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域BA2を提供する。不揮発性記憶装置230には、コンピュータプログラムPG2が格納されている。また、不揮発性記憶装置230の一部の領域は、証明書格納部CTSとスキャンデータ格納部SDSとして用いられている。スキャンデータ格納部SDSは、複合機100にて生成されたスキャンデータを格納するための記憶領域である。証明書格納部CTSについては後述する。 The CPU 210 is an arithmetic unit (processor) that processes data. The volatile storage device 220 provides a buffer area BA2 that temporarily stores various intermediate data generated when the CPU 210 performs processing. The computer program PG2 is stored in the non-volatile storage device 230. Further, a part of the non-volatile storage device 230 is used as a certificate storage unit CTS and a scan data storage unit SDS. The scan data storage unit SDS is a storage area for storing the scan data generated by the multifunction device 100. The certificate storage unit CTS will be described later.

図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 multifunction device 100 and the computer 200. FIG. 2A shows a conceptual diagram of the key storage unit SKS. As shown in FIG. 2A, a plurality of private keys SK1 to SK3 and the public key PKca of the certificate authority are stored in the key storage unit SKS (FIG. 1) of the multifunction device 100.

図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 computer 200. In this embodiment, the plurality of private keys SK1 to SK3 (FIG. 2 (A)) stored in the key storage unit SKS and the plurality of certificates CT1 to CT3 stored in the certificate storage unit CTS are , One-to-one correspondence.

なお、秘密鍵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 multifunction device 100. On the other hand, the certificate CT1 corresponding to the private key SK1 is stored and stored in the certificate storage unit CTS of the computer 200.

同様にして、例えば、別のユーザ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 multifunction device 100, and the certificates CT2 and CT3 are stored and stored in the certificate storage unit CTS of the computer 200. As described above, in this embodiment, the private keys SK1 to SK3 and the corresponding certificates CT1 to CT3 have a one-to-one correspondence with a plurality of users of the multifunction device 100.

図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 multifunction machine 100.

以上のように、鍵管理情報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 CPU 110 of the multifunction device 100 to access the certificate storage unit CTS of the computer 200 in which the certificates CT1 to CT3 are stored. In this embodiment, the CPU 110 uses FTP (File Transfer Protocol) to access the certificate storage unit CTS of the computer 200, so that the certificate storage destination information CTI is information necessary for access by FTP, for example, an account. Includes first name, password, and server name. Further, the certificate storage destination information CTI includes information indicating the position of the certificate storage unit CTS in the computer 200, specifically, a folder path indicating a folder in which the certificates CT1 to CT3 are stored.

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 scanning execution unit 170 based on a user's instruction and generating a signed PDF file containing the scan data. Is.

S100では、CPU110は、ログイン処理を実行する。本実施例では、署名付ファイル生成処理は、ログイン中のユーザの指示に基づいて実行されるため、署名付PDFファイルの生成を望むユーザは、複合機100へのログインを行う。具体的には、CPU110は、ユーザのログイン要求に応じて、図示しないログイン画面を操作部150に表示して、該ログイン画面を介して、認証情報(例えば、ユーザIDとパスワード)を取得する。CPU110は、認証情報に基づいて、特定のユーザのログインを許容するか否かを判断する。CPU110は、ログインを許容する場合には、特定のユーザのログイン状態に遷移し、ログインを許容しない場合には、エラー処理を実行する。以下では、図2(C)のユーザID「USER1」、表示名「Alice」を有するユーザのログインが許容されたとして説明を続ける。 In S100, the CPU 110 executes a login process. In this embodiment, the signed file generation process is executed based on the instruction of the logged-in user, so that the user who wants to generate the signed PDF file logs in to the multifunction device 100. Specifically, the CPU 110 displays a login screen (not shown) on the operation unit 150 in response to the user's login request, and acquires authentication information (for example, a user ID and password) via the login screen. The CPU 110 determines whether or not to allow the login of a specific user based on the authentication information. When the login is allowed, the CPU 110 transitions to the login state of a specific user, and when the login is not allowed, the CPU 110 executes error processing. In the following, the description will be continued on the assumption that the login of the user having the user ID “USER1” and the display name “Alice” in FIG. 2C is permitted.

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 CPU 110 acquires a signature PDF file generation instruction from the user via the operation unit 150. For example, the user inputs a signature PDF file generation instruction to the operation unit 150 with the document placed on the platen of the scanning execution unit 170. In S105, the CPU 110 acquires the private key corresponding to the logged-in user from the key storage unit SKS. Specifically, the CPU 110 searches the management table KMT for a user ID (for example, "USER1") indicating the currently logged-in user, refers to the entry EN including the user ID, and corresponds to the user ID. It is specified that the attached private key is the private key SK1. The CPU 110 acquires the identified private key SK1 from the key storage unit SKS (FIG. 2C) of the multifunction device 100. The acquired private key SK1 is stored in the buffer area BA1 of the volatile storage device 120.

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 CPU 110 acquires a certificate corresponding to the acquired private key from an external computer 200. For example, the CPU 110 refers to the entry EN corresponding to the currently logged-in user in the management table KMT, and specifies that the file name of the certificate corresponding to the acquired private key SK1 is "CT1". The CPU 110 uses the file name of the certificate to acquire the certificate corresponding to the private key from the external computer 200. Specifically, the CPU 110 accesses the computer 200 by using the account name, password, and server name included in the certificate storage destination information CTI shown in FIG. 2C. The CPU 110 is a file in the folder indicated by the folder path included in the certificate storage destination information CTI (that is, the certificate storage unit CTS in FIG. 2B) and has the file name “CT1”. Request to computer 200. As a result, the CPU 110 acquires the certificate CT1 from the computer 200. Acquisition of certificate CT1 is performed, for example, according to FTP, as described above. As a modification, the acquisition of the certificate CT1 may be executed according to another protocol, for example, SMTP (Simple Mail Transfer Protocol) or CIFS (Common Internet File System), instead of FTP. The acquired certificate CT1 is stored in the buffer area BA1 of the volatile storage device 120. In this way, the CPU 110 can appropriately obtain the corresponding certificate from the computer 200 by using the file name of the certificate corresponding to the private key.

S115〜S140では、CPU110は、S110にて取得済みの証明書CT1が、S105にて取得済みの秘密鍵SK1と対応する真正な証明書であるか否かを判断する。これによって、後述するS155にて出力される証明書が、真正な証明書であるか否かが判断されるので、外部装置である計算機200から証明書を取得する場合であっても、適切な証明書を出力できる。 In S115 to S140, the CPU 110 determines whether or not the certificate CT1 acquired in S110 is a genuine certificate corresponding to the private key SK1 acquired in S105. As a result, it is determined whether or not the certificate output in S155, which will be described later, is a genuine certificate. Therefore, even when the certificate is obtained from the computer 200, which is an external device, it is appropriate. You can output the certificate.

取得済みの証明書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 CPU 110 compares the public key information included in the private key SK1 with the public key information included in the certificate CT1. The RSA private key SK1 contains a plurality of pieces of information such as "modulus", "publicExponent", "privateExponent", "prime1", and "prime2". The public key corresponding to the private key SK1 (the public key included in the corresponding certificate CT1) is obtained by extracting "modulus" and "publicExponent" from the information contained in the private key SK1. .. As described above, the private key SK1 and the certificate CT1 include public key information (specifically, "modulus" and "publicExponent") as common information. When the certificate CT1 acquired in S110 is a genuine certificate CT1 corresponding to the private key SK1, the public key included in the private key SK1 and the public key included in the certificate CT1 are the same. Public key PK1. Therefore, in this case, the public key information included in the private key SK1 and the public key information included in the certificate CT1 match. In this embodiment, the CPU 110 compares the value of the public key "modulus" included in the private key SK1 with the value of the public key "modulus" included in the certificate CT1.

S120では、CPU110は、秘密鍵SK1に含まれる公開鍵の情報と、証明書CT1に含まれる公開鍵の情報と、が一致したか否かを判断する。これらの情報が一致した場合には(S120:YES)、CPU110は、2段階目の判断(S125〜S140)に処理を進める。これらの情報が一致しない場合には(S120:NO)、S110にて取得済みの証明書CT1は、秘密鍵SK1に対応する真正な証明書CT1ではないと考えられる。このために、この場合には、CPU110は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。エラー処理では、例えば、ユーザに、秘密鍵SK1に対応する真正な証明書CT1が取得できない旨が通知される。 In S120, the CPU 110 determines whether or not the public key information included in the private key SK1 and the public key information included in the certificate CT1 match. If these information match (S120: YES), the CPU 110 proceeds to the second stage determination (S125 to S140). If these information do not match (S120: NO), it is considered that the certificate CT1 obtained in S110 is not the genuine certificate CT1 corresponding to the private key SK1. Therefore, in this case, the CPU 110 executes an error process in S160 and ends the signed file generation process. In the error handling, for example, the user is notified that the genuine certificate CT1 corresponding to the private key SK1 cannot be obtained.

S125では、CPU110は、証明書CT1に含まれる署名情報SN1を、認証局の公開鍵PKca(図2(A))を用いて復号して、ハッシュ値HV1を取得する。 In S125, the CPU 110 decrypts the signature information SN1 included in the certificate CT1 using the public key PKca (FIG. 2A) of the certificate authority to acquire the hash value HV1.

S130では、CPU110は、証明書CT1に含まれる情報のうち、署名情報SN1を除いた情報(署名アルゴリズム情報AI1、公開鍵PK1、その他の情報OI1)を、署名アルゴリズム情報AI1にて示されるハッシュ関数を用いてハッシュ化して、ハッシュ値HV2を取得する。 In S130, the CPU 110 uses the information included in the certificate CT1 excluding the signature information SN1 (signature algorithm information AI1, public key PK1, and other information OI1) as a hash function indicated by the signature algorithm information AI1. Is hashed with and the hash value HV2 is obtained.

S135では、CPU110は、S125にて取得済のハッシュ値HV1と、S130にて取得済のハッシュ値HV2と、を比較する。 In S135, the CPU 110 compares the hash value HV1 acquired in S125 with the hash value HV2 acquired in S130.

S140では、CPU110は、ハッシュ値HV1とハッシュ値HV2とが一致したか否かを判断する。ハッシュ値HV1とハッシュ値HV2とが一致した場合には(S140:YES)、CPU110は、S145に処理を進める。ハッシュ値HV1とハッシュ値HV2とが一致しない場合には(S140:NO)、S110にて取得済みの証明書CT1は、秘密鍵SK1に対応する真正な証明書CT1ではないと考えられる。このために、この場合には、CPU110は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。 In S140, the CPU 110 determines whether or not the hash value HV1 and the hash value HV2 match. When the hash value HV1 and the hash value HV2 match (S140: YES), the CPU 110 proceeds to S145. If the hash value HV1 and the hash value HV2 do not match (S140: NO), it is considered that the certificate CT1 acquired in S110 is not the genuine certificate CT1 corresponding to the private key SK1. Therefore, in this case, the CPU 110 executes an error process in S160 and ends the signed file generation process.

以上の説明から解るように、第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 CPU 110 generates a PDF file PF (not shown) including scan data SD indicating the original. Specifically, the CPU 110 acquires scan data SD indicating a document from the scanning execution unit 170 by causing the scanning execution unit 170 to read the document. The CPU 110 generates a PDF file PF including the scan data SD and stores it in the buffer area BA1 of the volatile storage device 120.

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 CPU 110 acquires the hash value HVu by hashing the PDF file PF generated in S145 using the hash function shown in the signature algorithm information AI1. The CPU 110 encrypts the hash value HVu using the private key SK1 of the logged-in user according to the public key cryptosystem shown in the signature algorithm information AI1. The encrypted hash value HVu is the signature information SNu. The CPU 110 stores the signature information SNu and the certificate CT1 corresponding to the private key SK1 used for generating the signature information SNu in the PDF file PF, thereby storing the signed PDF file SPF (FIG. 2 (D)). To generate.

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 CPU 110 transmits the generated signed PDF file SPF to the external computer 200. Transmission of the signed PDF file SPF is performed, for example, according to FTP. As a modification, instead of FTP, transmission of the signed PDF file SPF may be executed according to another protocol such as SMTP or CIFS. The CPU 210 of the computer 200 that has received the signed PDF file SPF stores the signed PDF file SPF in a designated folder (scan data storage unit SDS in FIG. 1). The signed PDF file SPF stored in the computer 200 is used by the user.

以上説明した第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 computer 200 via the interface 190 (S110). The multifunction device 100 uses the private key SK1 to execute a signature process including a process of encrypting the hash value HVu to generate signature information SNu (S150). The multifunction device 100 outputs a signed PDF file including the signature information SNu, the certificate CT1, and the scan data SD to the computer 200. According to this configuration, the private key SK1 to be managed as secret information is stored in the key storage unit SKS of the multifunction device 100 that uses the private key SK1, so that security can be ensured. Then, the certificate CT1 including the public key PK1, which is less necessary to be managed as secret information than the private key SK1, is obtained from an external computer 200. As a result, the certificate CT1 does not need to be stored / stored in the non-volatile storage device 130 of the multifunction device 100. Therefore, in the multifunction device 100, the capacity of the non-volatile storage device 130 required can be reduced without impairing security. For example, the required capacity of the non-volatile storage device 130 is increased as compared with the case where both the private key SK1 and the corresponding certificate CT1 are stored and stored in the non-volatile storage device 130 of the multifunction device 100. Can be reduced. In particular, in this embodiment, the private key and the certificate are used to output the signed data (specifically, the signed PDF file SPF). Therefore, for example, the private key and the certificate are used for each user. It may be managed. In such a case, if the private key and the certificate are stored in the multifunction device 100 itself, the capacity of the non-volatile storage device 130 required in the multifunction device 100 tends to be large. In this embodiment, the required non-volatile storage device 130 can be reduced without compromising security.

さらに、本実施例によれば、複合機100は、署名付PDFファイルSPFを、証明書CT1を格納する計算機200に送信する(S155)。したがって、署名付PDFファイルSPFと、証明書CT1と、は、同じ計算機200にて格納・保存することができる。したがって、証明書CT1を格納するためだけに外部装置を用意する必要がなく、システム1000を簡素化できる。 Further, according to the present embodiment, the multifunction device 100 transmits the signed PDF file SPF to the computer 200 that stores the certificate CT1 (S155). Therefore, the signed PDF file SPF and the certificate CT1 can be stored and stored in the same computer 200. Therefore, it is not necessary to prepare an external device only for storing the certificate CT1, and the system 1000 can be simplified.

さらに、上記実施例によれば、図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 compound machine 100 stores the first private key (for example, the private key SK1) corresponding to the first user ID in the key storage unit. When the second user ID (for example, "USER2") is specified by acquiring from the SKS, the second private key (for example, the private key SK2) corresponding to the second user ID is obtained from the key storage unit SKS. get. Then, when the first user ID is specified, the compound machine 100 obtains a certificate (for example, certificate CT1) including the first public key corresponding to the first private key from the computer 200. When the second user ID is specified, a certificate (for example, certificate CT2) including the second public key corresponding to the second private key is obtained from the computer 200. As a result, even when a plurality of private keys SK1 and SK2 and a plurality of certificates CT1 and CT2 are used, the required capacity of the non-volatile storage device 130 is not impaired in security. Can be reduced. For example, when managing a private key and a certificate for each user as in this embodiment, the number of private keys and certificates to be managed tends to increase. Even in such a case, the capacity of the non-volatile storage device 130 required can be reduced.

さらに、上記実施例では、複合機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 multifunction device 100 executes the first determination process (S115, S120) for determining whether or not the certificate CT1 is a genuine certificate by using the first determination method. .. When the multifunction device 100 determines that the certificate CT1 is a genuine certificate in the first determination process (S120: YES), the multifunction device 100 uses the second determination method to prove that the certificate CT1 is authentic. The second determination process (S125 to S140) for determining whether or not the document is written is executed. In the first determination process, when it is determined that the certificate CT1 is not a genuine certificate (S120: NO), the second determination process, which has a higher processing load than the first determination process, is not executed. As a result, it is possible to efficiently determine whether or not the certificate CT1 is a genuine certificate.

さらに、上記実施例では、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 system 1000 of the first embodiment.

第2実施例では、複合機100は、図3の署名付ファイル生成処理とは異なる署名付ファイル生成処理を実行する。図4は、第2実施例の署名付ファイル生成処理のフローチャートである。 In the second embodiment, the multifunction device 100 executes a signed file generation process different from the signed file generation process of FIG. FIG. 4 is a flowchart of the signed file generation process of the second embodiment.

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 CPU 110 uses the specified folder, that is, all the certificates in the folder indicated by the folder path included in the certificate storage destination information CTI. Is obtained from the computer 200. Specifically, the CPU 110 accesses the computer 200 according to FTP and requests the computer 200 for all the files in the folder. The computer 200 transmits all the files in the designated file, that is, all the certificates including the certificates CT1 to CT3 stored in the certificate storage unit CTS to the multifunction device 100. All the acquired certificates are stored in the buffer area BA1 of the volatile storage device 120.

S112Bでは、CPU110は、取得済みの全ての証明書から1個の注目する証明書を選択する。S115Bでは、CPU110は、図3の115と同様に、S105にて取得済みの秘密鍵SK1に含まれる公開鍵PK1の情報と、注目する証明書に含まれる公開鍵の情報と、を比較する。 In S112B, the CPU 110 selects one certificate of interest from all the acquired certificates. In S115B, the CPU 110 compares the information of the public key PK1 included in the private key SK1 acquired in S105 with the information of the public key included in the certificate of interest, similarly to 115 in FIG.

S120Bでは、CPU110は、秘密鍵SK1に含まれる公開鍵PK1の情報と、注目する証明書に含まれる公開鍵の情報と、が一致したか否かを判断する。これらの情報が一致した場合には(S120B:YES)、CPU110は、2段階目の判断(S125〜S240)に処理を進める。これらの情報が一致しない場合には(S120B:NO)、CPU110は、S122Bに処理を進める。 In S120B, the CPU 110 determines whether or not the information of the public key PK1 included in the private key SK1 and the information of the public key included in the certificate of interest match. If these information match (S120B: YES), the CPU 110 proceeds to the second stage determination (S125 to S240). If these information do not match (S120B: NO), the CPU 110 proceeds to S122B.

S122Bでは、CPU210は、取得済みの全ての証明書を注目する証明書として選択したか否かを判断する。全ての証明書が選択済みである場合には(S122B:YES)、CPU210は、S160にてエラー処理を実行して、署名付ファイル生成処理を終了する。未選択の証明書がある場合には(S122B:NO)、CPU210は、S112Bに戻って、未選択の証明書を新たな注目する証明書として選択する。 In S122B, the CPU 210 determines whether or not all the acquired certificates have been selected as the certificates of interest. If all the certificates have been selected (S122B: YES), the CPU 210 executes error processing in S160 and ends the signed file generation processing. If there is an unselected certificate (S122B: NO), the CPU 210 returns to S112B and selects the unselected certificate as a new certificate of interest.

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 multifunction device 100 acquires a plurality of certificates stored in the certificate storage unit CTS of the computer 200 from the computer 200 (S110B), and a plurality of acquired certificates. From the certificates, the certificate CT1 corresponding to the private key SK1 is selected (S112B to S122B). As a result, for example, even if the file name of the certificate CT1 corresponding to the private key SK1 is not recorded in the key management information KMI in advance, an appropriate certificate can be obtained from a plurality of certificates. Can be done.

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 multifunction device 100 executes a signed file generation process different from the signed file generation process of the second embodiment of FIG. FIG. 5 is a flowchart of the signed file generation process of the third embodiment.

図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 CPU 110 determines whether or not the plurality of certificates already executed in the signed file generation process S110B are stored in the buffer area BA1 of the volatile storage device 120. In this embodiment, a plurality of certificates already acquired from the buffer area BA1 are deleted at the following triggers. Then, the plurality of acquired certificates are held in the buffer area BA1 unless the following triggers occur. Therefore, at the time of S108C, a plurality of acquired certificates may remain in the buffer area BA1.
(1) When the power of the multifunction device 100 is turned off (2) When the multifunction device 100 is restarted (3) The area of the buffer area BA1 for executing other processing (for example, facsimile processing or printing processing). When you need to secure

取得済みの複数個の証明書がバッファ領域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 CPU 110 uses the specified folder, that is, the folder included in the certificate storage destination information CTI. Obtain all the certificates in the folder indicated by the path from the calculator 200. When a plurality of acquired certificates are stored in the buffer area BA1 (S108C: YES), S110B is skipped.

このように、第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 multifunction device 100 obtains a plurality of certificates obtained from the computer 200 in the executed signed file generation process. Even after the signed PDF file SPF is output, it is temporarily stored in the buffer area BA1. Then, the multifunction device 100 subsequently executes the signed file generation process again, so that when the private key is acquired again in S105, the corresponding certificate is stored in the buffer area BA1. In this case (S108C: YES), the multifunction device 100 does not acquire the certificate from the computer 200 again, but generates and outputs the signed PDF file SPF using the certificate stored in the buffer area BA1. As a result, unnecessary access to the computer 200 can be suppressed, and even when the certificate is stored in the computer 200, the signed PDF file SPF can be efficiently generated and output.

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 multifunction device 100 executes a signed file generation process different from the signed file generation process of the first embodiment of FIG. FIG. 6 is a flowchart of the signed file generation process of the fourth embodiment.

図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 CPU 110 is a certificate obtained from the computer 200 in S110 of the signed file generation process that has already been executed, and further verified to be genuine in S115 to S140, and is in the immediately preceding S105. It is determined whether or not the certificate corresponding to the acquired private key is stored in the buffer area BA1 of the volatile storage device 120. In this embodiment, the verified certificate is deleted from the buffer area BA1 at the following triggers. Then, the plurality of verified certificates are held in the buffer area BA1 unless the following triggers occur. Therefore, at the time of S108D, one or more verified certificates may remain in the buffer area BA1.
(1) When the power of the multifunction device 100 is turned off (2) When the multifunction device 100 is restarted (3) The area of the buffer area BA1 for executing other processing (for example, facsimile processing or printing processing). When you need to secure

なお、上記(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 CPU 110 acquires the certificate corresponding to the acquired private key from the external computer 200. .. If the corresponding verified certificate is stored in the buffer area BA1 (S108D: YES), the CPU 110 skips S110 to S140 and proceeds to process S170D. In S170D, the processes of S145 to S155 of FIG. 3 are executed. That is, the CPU 110 uses the corresponding verified certificate stored in the buffer area BA1 to generate and output the signed PDF file SPF.

このように、第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 multifunction device 100 obtains the certificate obtained in S110 of the executed signed file generation process and verifies that it is genuine in S115 to S140, and the executed signature. Even after the signed PDF file SPF is output in the attached file generation process, it is temporarily stored in the buffer area BA1. Then, the multifunction device 100 subsequently executes the signed file generation process again, so that when the private key is acquired again in S105, the verified and corresponding certificate is in the buffer area. When stored in BA1 (S108D: YES), the multifunction device 100 does not acquire the certificate from the computer 200 again and does not perform the process for verifying the certificate (S110 to S140). The signed PDF file SPF is generated and output using the certificate stored in the buffer area BA1. (S170D). As a result, unnecessary access to the computer 200 can be suppressed, and unnecessary execution of the certificate verification process can be suppressed. As a result, even when the certificate is stored in the computer 200, it is possible to more efficiently generate and output the signed PDF file SPF.

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 multifunction device 100 may function as a server that communicates with a user's terminal device (not shown) as a client. In this case, the multifunction device 100 stores its own server certificate in the certificate storage unit CTS of the computer 200, and stores the private key corresponding to the server certificate in the key storage unit SKS of the multifunction device 100. Then, when the multifunction device 100 receives a connection request from the user's terminal device, the multifunction device 100 accesses the computer 200 and acquires a server certificate from the computer 200. For example, the multifunction device 100 executes S125 to S140 of FIG. 3 to determine whether or not the server certificate is genuine, and if the server certificate is genuine, the server certificate is used as a terminal device. Send to.

端末装置は、該サーバ証明書を受信すると、例えば、図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 composite machine 100. And send.

複合機100は、暗号化された共通鍵を受信すると、該暗号化された共通鍵を、サーバ証明書に対応する秘密鍵であって鍵格納部SKSに格納されている秘密鍵を用いて、復号する。これによって複合機100は、共通鍵を取得する。この結果、複合機100と端末装置との両方が、該共通鍵を所有した状態となるので、複合機100と端末装置との間で、該共通鍵を用いた暗号通信を行うことができる。 When the multifunction device 100 receives the encrypted common key, the multifunction device 100 uses the encrypted common key as a private key corresponding to the server certificate and is stored in the key storage unit SKS. Decrypt. As a result, the multifunction device 100 acquires the common key. As a result, both the multifunction device 100 and the terminal device are in a state of possessing the common key, so that encrypted communication using the common key can be performed between the multifunction device 100 and the terminal device.

以上の説明から解るように、上記各実施例では、ハッシュ値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 computer 200. Instead, the certificates CT1 to CT3 are provided. It may be stored in another external device, for example, an external storage such as a hard disk or a USB memory connected to the multifunction device 100 via a USB interface. Certificates CT1 to CT3 may be stored in the multifunction device 100 via the Internet. It may be stored in the cloud server to which it is connected.

(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 multifunction device 100 includes a selection screen (not shown) including a list of user display names (for example, "Alicd") as identification information associated with the private key after S102 in FIG. ) May be displayed on the display unit 140, and a display name designation instruction may be obtained via the selection screen. In this case, in S105, the multifunction device 100 acquires the private key corresponding to the designated display name (for example, "Alice"). Further, the selection screen displayed at this time may include a list of certificate file names instead of the list of user display names.

(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 computers 200. Instead of this, the external device that stores the certificates CT1 to CT3 and the device that stores the signed PDF file SPF may be different devices. For example, one of the external device for storing the certificates CT1 to CT3 and the device for storing the signed PDF file SPF is a USB memory connected to the multifunction device 100 via the USB interface, and the other is a USB memory. , The computer 200 may be used.

(5)上記各実施例では、複合機100は、複数個の秘密鍵SK1〜SK3と、対応する複数個の証明書CT1〜CT3と、を管理している。これに代えて、複合機100は、1個の秘密鍵と、対応する1個の証明書と、のみを管理していても良い。この場合には、例えば、図2(C)の管理テーブルKMTは、無くても良い。 (5) In each of the above embodiments, the multifunction device 100 manages a plurality of private keys SK1 to SK3 and a plurality of corresponding certificates CT1 to CT3. Instead, the multifunction device 100 may manage only one private key and one corresponding certificate. In this case, for example, the management table KMT shown in FIG. 2C may not be provided.

(6)上記各実施例では、複合機100は、計算機200から取得された証明書が真正であるか否かを判断する処理(例えば、図3のS115〜S140)を実行しているが、これらの処理の全部または一部は省略されても良い。例えば、図3のS115〜S140、および、S160は、省略されても良い。また、図3のS115、S120のみが省略されても良い。また、図3のS125〜S140のみが省略されても良い。 (6) In each of the above embodiments, the multifunction device 100 executes a process of determining whether or not the certificate obtained from the computer 200 is genuine (for example, S115 to S140 in FIG. 3). All or part of these processes may be omitted. For example, S115 to S140 and S160 in FIG. 3 may be omitted. Further, only S115 and S120 in FIG. 3 may be omitted. Further, only S125 to S140 in FIG. 3 may be omitted.

(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 compound machine 100 includes a list of the plurality of private keys (or corresponding certificates) in S105 of FIG. The selection screen may be displayed, the user's selection instruction may be acquired, and one private key may be acquired according to the user's selection instruction.

(9)上記各実施例では、署名付ファイル生成処理を行う情報処理装置は、複合機100であるが、単体のスキャナであっても良い。また、情報処理装置は、パーソナルコンピュータやスマートフォンなどの端末装置であっても良い。この場合には、例えば、端末装置は、自身の不揮発性記憶装置に予め保存されたファイルに対して署名を行って、署名付ファイルを生成しても良い。あるいは、端末装置は、複合機やスキャナからスキャンデータSDを取得して、該スキャンデータSDを含むファイルに対して署名を行って、署名付ファイルを生成しても良い。また、情報処理装置は、ファイルサーバであっても良い。この場合には、ファイルサーバは、例えば、所定のフォルダに格納されたファイルに対して署名を行って、署名付ファイルを生成しても良い。この場合には、ファイルサーバは、署名付ファイルを、自身のハードディスクに格納し、クライアントからの要求に応じて、該クライアントに対して署名付ファイルを出力する。この場合に、ファイルサーバは、ネットワークを介して互いに通信可能な複数個の装置(例えば、コンピュータ)を含む、いわゆるクラウドサーバであっても良い。 (9) In each of the above embodiments, the information processing device that performs the signed file generation process is the multifunction device 100, but it may be a single scanner. Further, the information processing device may be a terminal device such as a personal computer or a smartphone. In this case, for example, the terminal device may generate a signed file by signing a file stored in advance in its own non-volatile storage device. Alternatively, the terminal device may acquire the scan data SD from the multifunction device or the scanner, sign the file including the scan data SD, and generate the signed file. Further, the information processing device may be a file server. In this case, the file server may, for example, sign a file stored in a predetermined folder to generate a signed file. In this case, the file server stores the signed file on its own hard disk and outputs the signed file to the client in response to a request from the client. In this case, the file server may be a so-called cloud server including a plurality of devices (for example, computers) capable of communicating with each other via a network.

(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.
請求項1に記載の情報処理装置であって、さらに、
署名対象のデータを取得するデータ取得部と、
前記署名対象のデータに基づいて特定データを生成する生成部と、
を備え、
前記変換部は、前記変換処理として、前記秘密鍵を用いて前記特定データを暗号化する署名処理を実行して、前記変換済データとして署名データを生成し、
前記出力部は、前記署名対象のデータと、前記署名データと、前記証明書と、を含む署名付データを出力する、情報処理装置。
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.
請求項2に記載の情報処理装置であって、
前記出力部は、前記署名付きデータを、前記インタフェースを介して前記特定の外部装置に送信する、情報処理装置。
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〜3のいずれかに記載の情報処理装置であって、
複数個の前記秘密鍵のそれぞれは、識別情報と対応付けられ、
前記秘密鍵取得部は、
第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.
請求項1〜4のいずれかに記載の情報処理装置であって、
複数個の前記秘密鍵のそれぞれは、対応する前記公開鍵を含む前記証明書のファイル名と対応付けられ、
前記証明書取得部は、
前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記特定の秘密鍵に対応する特定の前記ファイル名を用いて、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を、前記特定の外部装置から取得する、情報処理装置。
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.
請求項1〜4のいずれかに記載の情報処理装置であって、
前記格納部には、複数個の前記秘密鍵が格納され、
前記証明書取得部は、前記秘密鍵取得部によって特定の前記秘密鍵が取得される場合に、前記格納部に格納される複数個の前記証明書を、前記特定の外部装置から取得し、
前記情報処理装置は、さらに、
取得済の前記複数個の証明書の中から、前記特定の秘密鍵に対応する特定の前記公開鍵を含む前記証明書を選択する選択部を備える、情報処理装置。
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.
請求項1〜6のいずれかに記載の情報処理装置であって、さらに、
前記特定の外部装置から取得される前記証明書が、前記格納部から取得される前記秘密鍵に対応する真正な証明書であるか否かを判断する判断部を備え、
前記出力部は、前記秘密鍵に対応する真正な証明書であると判断された前記証明書を出力する、情報処理装置。
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.
請求項7に記載の情報処理装置であって、
前記判断部は、
第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.
請求項8に記載の情報処理装置であって、
前記秘密鍵は、対応する前記公開鍵の少なくとも一部を含み、
前記第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.
請求項1〜9のいずれかに記載の情報処理装置であって、さらに、
前記証明書取得部によって前記特定の外部装置から取得される前記証明書を、前記出力部による前記証明書の出力後も、一時的に格納する一時格納部を備え、
前記出力部による前記証明書の出力後において、前記秘密鍵が再度取得される際に、再度取得される前記秘密鍵に対応する前記証明書が前記一時格納部に格納されている場合には、
前記証明書取得部は、前記特定の外部装置から前記証明書を再度取得せず、
前記出力部は、前記一時格納部に格納された前記証明書を出力する、情報処理装置。
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.
JP2017174072A 2017-09-11 2017-09-11 Information processing equipment and computer programs Active JP6940812B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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