JP2017033492A - Information processing apparatus, information processing system, and control method of information processing apparatus - Google Patents

Information processing apparatus, information processing system, and control method of information processing apparatus Download PDF

Info

Publication number
JP2017033492A
JP2017033492A JP2015155765A JP2015155765A JP2017033492A JP 2017033492 A JP2017033492 A JP 2017033492A JP 2015155765 A JP2015155765 A JP 2015155765A JP 2015155765 A JP2015155765 A JP 2015155765A JP 2017033492 A JP2017033492 A JP 2017033492A
Authority
JP
Japan
Prior art keywords
control program
hash value
digital signature
information processing
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015155765A
Other languages
Japanese (ja)
Inventor
佑輔 田村
Yusuke Tamura
佑輔 田村
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2015155765A priority Critical patent/JP2017033492A/en
Publication of JP2017033492A publication Critical patent/JP2017033492A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Cash Registers Or Receiving Machines (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent falsification of a control program to be executed by an information processing apparatus.SOLUTION: An information processing apparatus includes: a main ROM 121 storing firmware and a digital signature corresponding to the firmware; a main control unit 130 for executing the firmware; a reader/writer 150 storing a public key, and connected to a smart card 200 having an arithmetic unit 202 which decodes the digital signature with the public key; and a second sub control unit 146 which calculates a first hash value from the firmware stored in the main ROM 121, causes the smart card 200 to decode the digital signature corresponding to the firmware, to acquire a second hash value, and compares the first hash value with the second hash value, to regulate the main control unit 130 executing the firmware, on the basis of the result of comparison.SELECTED DRAWING: Figure 1

Description

本発明は、情報処理装置、情報処理システム、及び、情報処理装置の制御方法に関する。   The present invention relates to an information processing device, an information processing system, and a control method for the information processing device.

従来、商品を販売する店舗等における取引に関する情報(売上げに関する情報や、課税に関する情報等)を含むフィスカル情報等、正当性が要求されるデータを処理する装置があった(例えば、特許文献1参照)。この種の装置はデータの正当性を確保する機能を備える。例えば、特許文献1記載のプリンターは、フィスカル情報の改ざんの有無を検出する仕組みを備える。   Conventionally, there has been an apparatus for processing data requiring legitimacy, such as fiscal information including information relating to transactions in stores that sell products (information relating to sales, information relating to taxation, etc.) (for example, see Patent Document 1). ). This type of device has a function of ensuring the validity of data. For example, the printer described in Patent Document 1 has a mechanism for detecting whether or not fiscal information has been tampered with.

特開2012−103940号公報JP 2012-103940 A

ところで、データの正当性を損なう要因として、情報処理装置が実行する制御プログラムの改ざんが懸念される。
本発明は、上記事情に鑑みてなされたものであり、情報処理装置が実行する制御プログラムの改ざんを防止することを目的とする。
By the way, as a factor that impairs the validity of data, there is a concern that the control program executed by the information processing apparatus is falsified.
SUMMARY An advantage of some aspects of the invention is that it prevents falsification of a control program executed by an information processing apparatus.

上記目的を達成するために、本発明の情報処理装置は、制御プログラムと、前記制御プログラムに対応するデジタル署名とを記憶する記憶部と、前記制御プログラムを実行する制御部と、復号鍵を記憶し前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に接続する媒体接続部と、を備え、前記制御部は、前記記憶部が記憶する前記制御プログラムから第1ハッシュ値を算出し、前記外部媒体から前記媒体接続部を介して前記制御プログラムに対応する前記デジタル署名を復号した第2ハッシュ値を取得し、前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御プログラムの実行を制限することを特徴とする。
本発明によれば、改ざんされた制御プログラムを制御部のプロセッサーが実行するのを防止し、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
To achieve the above object, an information processing apparatus of the present invention stores a control program, a storage unit that stores a digital signature corresponding to the control program, a control unit that executes the control program, and a decryption key. A medium connection unit connected to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key, and the control unit calculates a first hash value from the control program stored in the storage unit The second hash value obtained by decrypting the digital signature corresponding to the control program is acquired from the external medium via the medium connection unit, and the first hash value and the second hash value are compared and do not match. In this case, the execution of the control program is restricted.
According to the present invention, it is possible to prevent the control unit processor from executing the tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

また、本発明は、上記情報処理装置において、前記制御部は、前記情報処理装置が起動した際に、前記記憶部の記憶するブートプログラムを実行し、前記第1ハッシュ値と前記第2ハッシュ値とが一致しない場合に前記制御プログラムの実行を制限することを特徴とする。
本発明によれば、制御部がブートプログラムを実行して、第1ハッシュ値と第2ハッシュ値とが一致しない場合に制御プログラムの実行を制限することができる。
In the information processing apparatus according to the aspect of the invention, the control unit executes a boot program stored in the storage unit when the information processing apparatus is activated, and the first hash value and the second hash value are stored. The control program is restricted from being executed in a case where the control program does not match.
According to the present invention, it is possible to limit the execution of the control program when the control unit executes the boot program and the first hash value and the second hash value do not match.

本発明の情報処理装置は、制御プログラムを実行する制御部と、前記制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応するデジタル署名とを入力する入力部と、復号鍵を記憶し前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に接続する媒体接続部と、を備え、前記制御部は、入力された前記更新用の制御プログラムから第3ハッシュ値を算出し、前記外部媒体から前記媒体接続部を介して前記更新用の制御プログラムに対応する前記デジタル署名を復号した第4ハッシュ値を取得し、前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムへの更新を制限することを特徴とする。
本発明によれば、制御プログラムが改ざんされた制御プログラムに更新されるのを防止して、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
An information processing apparatus according to the present invention includes a control unit that executes a control program, an update control program that updates the control program, an input unit that inputs a digital signature corresponding to the update control program, and a decryption A medium connection unit connected to an external medium including a calculation unit that stores a key and decrypts the digital signature with the decryption key, and the control unit receives a third hash value from the input control program for update. To obtain a fourth hash value obtained by decrypting the digital signature corresponding to the control program for update from the external medium via the medium connection unit, and the third hash value and the fourth hash value And the update to the control program for update is restricted if they do not match.
According to the present invention, it is possible to prevent the control program from being updated to a tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

また、本発明は、上記情報処理装置において、前記情報処理装置は、フィスカル情報を記憶する記憶部を備えるフィスカルプリンターであることを特徴とする。   According to the present invention, in the information processing apparatus, the information processing apparatus is a fiscal printer including a storage unit that stores fiscal information.

本発明の情報処理システムは、復号鍵を記憶する媒体記憶部、及び前記復号鍵でデジタル署名を復号する演算部を備える媒体と、前記媒体に接続可能な情報処理装置とを有する情報処理システムであって、前記情報処理装置は、制御プログラムを実行する制御部と、前記制御プログラムと、前記制御プログラムに対応する前記デジタル署名とを記憶する記憶部と、を備え、前記制御部は、前記記憶部が記憶する前記制御プログラムから第1ハッシュ値を算出し、前記媒体から前記制御プログラムに対応する前記デジタル署名を復号した第2ハッシュ値を取得し、前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御プログラムの実行を制限することを特徴とする。
本発明によれば、改ざんされた制御プログラムを制御部のプロセッサーが実行するのを防止し、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
An information processing system of the present invention is an information processing system including a medium storage unit that stores a decryption key, a medium that includes a calculation unit that decrypts a digital signature using the decryption key, and an information processing apparatus that can be connected to the medium. The information processing apparatus includes a control unit that executes a control program, a storage unit that stores the control program, and the digital signature corresponding to the control program, and the control unit stores the storage A first hash value is calculated from the control program stored in the storage unit, a second hash value obtained by decrypting the digital signature corresponding to the control program is obtained from the medium, and the first hash value and the second hash value are obtained. And the execution of the control program is restricted if they do not match.
According to the present invention, it is possible to prevent the control unit processor from executing the tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

本発明の情報処理システムは、復号鍵を記憶する媒体記憶部、及び前記復号鍵でデジタル署名を復号する演算部を備える媒体と、前記媒体に接続可能な情報処理装置とを有する情報処理システムであって、前記情報処理装置は、制御プログラムを実行する制御部と、前記制御部が実行する制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応する前記デジタル署名とを入力する入力部を備え、前記制御部は、入力された前記更新用の制御プログラムから第3ハッシュ値を算出し、前記媒体から前記更新用の制御プログラムに対応する前記デジタル署名を復号した第4ハッシュ値を取得し、前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムへの更新を制限することを特徴とする。
本発明によれば、改ざんされた制御プログラムを制御部のプロセッサーが実行するのを防止し、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
An information processing system of the present invention is an information processing system including a medium storage unit that stores a decryption key, a medium that includes a calculation unit that decrypts a digital signature using the decryption key, and an information processing apparatus that can be connected to the medium. The information processing apparatus includes: a control unit that executes a control program; an update control program that updates a control program executed by the control unit; and the digital signature that corresponds to the update control program. An input unit for inputting, and the control unit calculates a third hash value from the input control program for update, and decrypts the digital signature corresponding to the control program for update from the medium. A hash value is obtained, the third hash value and the fourth hash value are compared, and if they do not match, the update to the control program for update is controlled. Characterized in that it.
According to the present invention, it is possible to prevent the control unit processor from executing the tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

本発明の情報処理装置の制御方法は、制御部が実行する制御プログラムと、前記制御プログラムに対応するデジタル署名とを記憶する記憶部から前記制御プログラムを読み出して、前記前記制御プログラムの第1ハッシュ値を算出するステップと、復号鍵を記憶し、前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に、前記記憶部から読み出した前記デジタル署名を送信して、前記外部媒体から前記デジタル署名を復号した第2ハッシュ値を取得するステップと、前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御部による前記制御プログラムの実行を制限するステップと、を備えることを特徴とする。
本発明によれば、改ざんされた制御プログラムを制御部のプロセッサーが実行するのを防止し、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
According to the control method of the information processing apparatus of the present invention, the control program is read from a storage unit that stores a control program executed by the control unit and a digital signature corresponding to the control program, and a first hash of the control program is read. Calculating the value; storing the decryption key; and transmitting the digital signature read from the storage unit to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key, and from the external medium Obtaining a second hash value obtained by decrypting a digital signature; comparing the first hash value with the second hash value; and restricting execution of the control program by the control unit if they do not match, It is characterized by providing.
According to the present invention, it is possible to prevent the control unit processor from executing the tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

本発明の情報処理装置の制御方法は、制御部が実行する制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応するデジタル署名とを入力するステップと、入力された前記更新用の制御プログラムの第3ハッシュ値を算出するステップと、復号鍵を記憶し、前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に、入力された前記デジタル署名を送信して、前記外部媒体から前記デジタル署名を復号した第4ハッシュ値を取得するステップと、前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムによる前記制御プログラムの更新を制限するステップと、を有することを特徴とする。
本発明によれば、改ざんされた制御プログラムを制御部のプロセッサーが実行するのを防止し、情報処理装置が実行する制御プログラムの改ざんを防止することができる。
The control method of the information processing apparatus according to the present invention includes a step of inputting an update control program for updating a control program executed by the control unit, and a digital signature corresponding to the update control program; Calculating the third hash value of the control program for updating; storing the decryption key; and transmitting the input digital signature to an external medium including an operation unit that decrypts the digital signature with the decryption key The step of obtaining the fourth hash value obtained by decrypting the digital signature from the external medium is compared with the third hash value and the fourth hash value, and the control by the control program for updating is performed when they do not match. And a step of restricting update of the program.
According to the present invention, it is possible to prevent the control unit processor from executing the tampered control program and to prevent tampering of the control program executed by the information processing apparatus.

プリンターの構成を示すブロック図。FIG. 2 is a block diagram illustrating a configuration of a printer. プリンターの動作を示すフローチャート。6 is a flowchart illustrating the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer. プリンターの動作を説明するための図。FIG. 5 is a diagram for explaining the operation of a printer.

以下、図面を参照して本発明の実施形態について説明する。
図1は、情報処理装置(又は情報処理システム)としてのプリンター1の構成を示すブロック図である。
プリンター1は、ホストコンピューター10に接続され、ホストコンピューター10から供給される販売取引に関する情報を印刷したレシートを発行する。また、プリンター1は、各レシートに印刷した販売取引に関する情報と、当該プリンター1での1日の総売上の情報とをフィスカル情報として記憶保持するフィスカルプリンターとしての機能を備える。フィスカル情報は、例えば、政府等の国家機関が店舗から税金を徴収する際に、国家機関が当該店舗における取引の実態を把握するために参照する情報として利用される。本実施形態では、フィスカル情報として、後述するレシートデータ及び日計売上データの2種類のデータが存在する。
ホストコンピューター10には、商品や商品の包装に付されたバーコードを読み取るバーコードリーダーや、顧客が有する会員カードや、クレジットカード等のカードに記録された情報を読み取るカードリーダーが接続される。ホストコンピューター10は、これらのデバイスからの入力や、レジ担当者の操作入力に応じて、適宜、図示せぬ商品DBや、顧客DBにアクセスして購入商品に関する情報や、顧客に関する情報を取得する。ホストコンピューター10は、取得した情報を含む販売取引に関する情報と、印刷を指示する制御コマンドとをプリンター1に送信して、プリンター1にレシートを発行させる。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating a configuration of a printer 1 as an information processing apparatus (or information processing system).
The printer 1 is connected to the host computer 10 and issues a receipt on which information related to sales transactions supplied from the host computer 10 is printed. Further, the printer 1 has a function as a fiscal printer that stores and holds information on sales transactions printed on each receipt and information on the total sales per day for the printer 1 as fiscal information. Fiscal information is used, for example, as information to be referred to by a national institution when a national institution such as the government collects taxes from a store to grasp the actual state of transactions at the store. In the present embodiment, there are two types of data as receipt information, receipt data and daily sales data, which will be described later.
The host computer 10 is connected to a bar code reader that reads a bar code attached to a product or a product packaging, and a card reader that reads information recorded on a card such as a membership card or a credit card held by a customer. The host computer 10 accesses the product DB (not shown) and the customer DB to obtain information on purchased products and information on customers as appropriate in response to inputs from these devices and operation inputs from the cashier. . The host computer 10 transmits information related to the sales transaction including the acquired information and a control command instructing printing to the printer 1 to cause the printer 1 to issue a receipt.

プリンター1は、フィスカル制御基板100と、プリンター基板300とを備える。
フィスカル制御基板100には、通信部110、メインROM121、SRAM122、RTC(Real-time clock:リアルタイムクロック)123、メイン制御部130、EJ(Electorical Journal)メモリー141と、第1サブ制御部142、フィスカルメモリー143、CPLD(Complex programmable logic device)144、書換用メモリー145、第2サブ制御部146、リーダーライター150、スマートカード200が実装される。
また、プリンター基板300には、プリンター制御部310、記録機構320が実装される。
The printer 1 includes a fiscal control board 100 and a printer board 300.
The fiscal control board 100 includes a communication unit 110, a main ROM 121, an SRAM 122, an RTC (Real-time clock) 123, a main control unit 130, an EJ (Electorical Journal) memory 141, a first sub-control unit 142, and a fiscal. A memory 143, a CPLD (Complex programmable logic device) 144, a rewrite memory 145, a second sub-control unit 146, a reader / writer 150, and a smart card 200 are mounted.
In addition, a printer control unit 310 and a recording mechanism 320 are mounted on the printer substrate 300.

通信部(入力部)110は、ホストコンピューター10や、不図示のフィスカルデータ読出装置に接続し、これらの装置との間でデータの送受信を行う。通信部110は、ホストコンピューター10から入力された制御コマンド等のデータをメイン制御部130に出力する。フィスカルデータ読出装置は、EJメモリー141や、フィスカルメモリー143に記憶されたデータを読み出すための装置であり、例えば国家機関(政府等)の関係者等、特別な許可を得た者だけが所持し得る。   A communication unit (input unit) 110 is connected to the host computer 10 and a fiscal data reading device (not shown), and transmits and receives data to and from these devices. The communication unit 110 outputs data such as a control command input from the host computer 10 to the main control unit 130. The fiscal data reading device is a device for reading the data stored in the EJ memory 141 and the fiscal memory 143, and is possessed only by a person who has obtained special permission, for example, a person concerned with a national organization (government, etc.). obtain.

メインROM121は、フラッシュROM、EEPROM等のデータの書き換えが可能な不揮発性のメモリーである。メインROM121は、起動用ファームウェアと、アプリケーション用ファームウェア(制御プログラム)と、起動検証用デジタル署名(制御プログラムに対応するデジタル署名)とを記憶する。起動用ファームウェアは、プリンター1の電源投入時に、メイン制御部130の備えるプロセッサー(図示略)により実行されるプログラムである。メイン制御部130のプロセッサーが起動用ファームウェアを実行することで、OS(Operating System)の起動等の処理が実行される。
アプリケーション用ファームウェアは、プリンター1の動作を制御するファームウェアであり、メイン制御部130のプロセッサーによって実行される。メイン制御部130がアプリケーション用ファームウェアを実行することで、レシートの印刷出力、フィスカル情報のメモリーへの記憶保存等の処理が実行される。メインROM121に記憶されたアプリケーション用ファームウェアを、以下ではAPファームウェアと表記する。
起動検証用デジタル署名は、一般的に知られたハッシュ関数を用いて、APファームウェアのハッシュ値を算出し、算出したハッシュ値を所定の秘密鍵により暗号化したデータである。所定の秘密鍵は、例えば、プリンター1の製造者によって管理される秘密鍵である。メインROM121に記憶された起動検証用デジタル署名を、以下では第1起動検証用デジタル署名という。
The main ROM 121 is a non-volatile memory capable of rewriting data, such as a flash ROM and an EEPROM. The main ROM 121 stores activation firmware, application firmware (control program), and activation verification digital signature (digital signature corresponding to the control program). The startup firmware is a program that is executed by a processor (not shown) included in the main control unit 130 when the printer 1 is powered on. When the processor of the main control unit 130 executes the startup firmware, processing such as OS (Operating System) startup is executed.
The application firmware is firmware that controls the operation of the printer 1, and is executed by the processor of the main control unit 130. When the main control unit 130 executes the application firmware, processing such as receipt output and storage of fiscal information in the memory is executed. The application firmware stored in the main ROM 121 is hereinafter referred to as AP firmware.
The activation verification digital signature is data obtained by calculating a hash value of the AP firmware using a generally known hash function and encrypting the calculated hash value with a predetermined secret key. The predetermined secret key is, for example, a secret key managed by the manufacturer of the printer 1. The activation verification digital signature stored in the main ROM 121 is hereinafter referred to as a first activation verification digital signature.

SRAM122は、メイン制御部130が演算を行う際のワークエリアとして機能する揮発性のメモリーであり、各種データを一時的に記憶する。
RTC123は、時刻を計時し、現在日時(年月日、時刻)を示すデータをメイン制御部130に出力する。
The SRAM 122 is a volatile memory that functions as a work area when the main control unit 130 performs calculations, and temporarily stores various data.
The RTC 123 measures time and outputs data indicating the current date and time (year / month / day, time) to the main control unit 130.

制御部として機能するメイン制御部130は、プロセッサー131を備え、APファームウェアを実行して、プリンター1の各部を中枢的に制御する。
例えば、メイン制御部130には、ホストコンピューター10からファームウェアの書き換えを指示する制御コマンドと、メインROM121が記憶するAPファームウェアや第1起動検証用デジタル署名を書き換える書換用データとが入力される。書換用データは、ホストコンピューター10から供給されるデータであり、プリンター1の機能拡張を行う場合やファームウェアをバージョンアップする場合にAPファームウェアを更新するため、プリンター1の製造者によって生成される。書換用データの詳細については後述する。
メイン制御部130は、制御コマンド及び書換用データが入力されると、入力された書換用データを第2サブ制御部146に出力して、第2サブ制御部146に、メインROM121の記憶するデータの書き換えを指示する。第2サブ制御部146は、メイン制御部130からファームウェアの書き換えを指示する制御コマンドと、書換用データとが入力されると、入力された書換用データを書換用メモリー145に記憶させる。第2サブ制御部146がメインROM121の記憶するデータを書き換える動作の詳細については後述する。
The main control unit 130 that functions as a control unit includes a processor 131 and executes AP firmware to centrally control each unit of the printer 1.
For example, the main control unit 130 receives a control command for instructing rewriting of firmware from the host computer 10, and rewriting data for rewriting the AP firmware and the first activation verification digital signature stored in the main ROM 121. The rewriting data is data supplied from the host computer 10 and is generated by the printer 1 manufacturer in order to update the AP firmware when the function of the printer 1 is expanded or when the firmware is upgraded. Details of the rewriting data will be described later.
When the control command and the rewrite data are input, the main control unit 130 outputs the input rewrite data to the second sub control unit 146 and the second sub control unit 146 stores the data stored in the main ROM 121. Instruct to rewrite When the control command for instructing firmware rewriting and the rewriting data are input from the main control unit 130, the second sub control unit 146 stores the input rewriting data in the rewriting memory 145. Details of the operation in which the second sub control unit 146 rewrites data stored in the main ROM 121 will be described later.

また、メイン制御部130には、ホストコンピューター10から販売取引に関する情報と、レシートの発行を指示する制御コマンドとが入力される。メイン制御部130は、入力された販売取引に関する情報に、販売店名、販売日時、支払額、お釣り等の情報を付加してレシートデータを生成する。メイン制御部130は、生成したレシートデータをプリンター制御部310に出力して、レシートデータをロール紙に印刷させる。レシートデータは、例えば、販売店名、販売日時、商品名、単価、税額、総額、支払方法(現金、クレジットカード)、支払額、お釣り等の情報を含む。さらに、メイン制御部130は、ロール紙に印刷したレシートデータを第1サブ制御部142に出力して、EJメモリー141に記憶させる。
また、メイン制御部130は、一日の終わりに、一日分のレシートデータをEJメモリー141から取り出してCPLD144に渡す。CPLD144は、一日分のレシートデータに基づいて1日の総売上である日計売上データを算出し、フィスカルメモリー143に記憶させる。「1日」とは、プリンター1が設置された店舗における開店から閉店までの期間である。
The main control unit 130 also receives information related to sales transactions and a control command for instructing issue of a receipt from the host computer 10. The main control unit 130 generates receipt data by adding information such as a store name, a sales date, a payment amount, and a change to the input sales transaction information. The main control unit 130 outputs the generated receipt data to the printer control unit 310 to print the receipt data on roll paper. The receipt data includes, for example, information such as store name, sales date / time, product name, unit price, tax amount, total amount, payment method (cash, credit card), payment amount, and change. Further, the main control unit 130 outputs the receipt data printed on the roll paper to the first sub control unit 142 and stores it in the EJ memory 141.
Further, the main control unit 130 takes out receipt data for one day from the EJ memory 141 and passes it to the CPLD 144 at the end of the day. The CPLD 144 calculates daily sales data, which is the total daily sales, based on the receipt data for one day, and stores it in the fiscal memory 143. “One day” is a period from opening to closing in a store where the printer 1 is installed.

EJメモリー141は、例えば、OTPROM(One Time Programmable Read Only Memory)等の不揮発性メモリーであり、第1サブ制御部142の制御の下、1つのアドレスに対して1度しかデータを書き込めないメモリーとして機能する。従って、EJメモリー141に書き込まれたデータが後から編集されるのを防止し、EJメモリー141に書き込まれたデータに対する改ざんを防止する。
第1サブ制御部142は、EJメモリー141に対してデータの読み書きを行う。第1サブ制御部142は、レシートに印刷したレシートデータと、書込日時データと、レシートデータのハッシュ値を所定の秘密鍵で暗号化したデジタル署名とを対応付けてEJメモリー141に書き込む。書込日時データは、EJメモリー141にレシートデータを書き込んだ日時(日付及び時刻)を示すデータであり、メイン制御部130がRTC123から日時を示すデータを取得して、第1サブ制御部142に出力する。
EJメモリー141及び第1サブ制御部142は、エポキシ樹脂によってフィスカル制御基板100に封止されており、EJメモリー141がフィスカル制御基板100から物理的に取り外され、EJメモリー141に記憶されたデータが改ざんされるのを防止する。
The EJ memory 141 is a non-volatile memory such as an OTPROM (One Time Programmable Read Only Memory), for example, and is a memory in which data can be written only once per address under the control of the first sub-control unit 142. Function. Therefore, the data written in the EJ memory 141 is prevented from being edited later, and the data written in the EJ memory 141 is prevented from being falsified.
The first sub-control unit 142 reads / writes data from / to the EJ memory 141. The first sub-control unit 142 writes the receipt data printed on the receipt, the writing date / time data, and the digital signature obtained by encrypting the hash value of the receipt data with a predetermined secret key into the EJ memory 141. The writing date / time data is data indicating the date / time (date and time) when the receipt data is written in the EJ memory 141, and the main control unit 130 acquires data indicating the date / time from the RTC 123, and sends it to the first sub-control unit 142. Output.
The EJ memory 141 and the first sub-control unit 142 are sealed on the fiscal control board 100 with an epoxy resin. The EJ memory 141 is physically removed from the fiscal control board 100, and the data stored in the EJ memory 141 is stored in the EJ memory 141. Prevent tampering.

フィスカルメモリー143は、例えば、OTPROM等の不揮発性メモリーであり、CPLD144の制御の下、1つのアドレスに対して1度しかデータを書き込めないメモリーとして機能する。従って、フィスカルメモリー143に書き込まれたデータが後から編集されるのを防止し、フィスカルメモリー143に書き込まれたデータに対する改ざんを防止する。
CPLD144は、プログラム可能な論理回路を書き込んだデバイスであり、フィスカルメモリー143に対してデータの読み書きを行う。
CPLD144が、フィスカルメモリー143に書き込むデータには、日計売上データ及び書込日時データを含む。書込日時データは、フィスカルメモリー143に日計売上データを書き込んだ日時(日付及び時刻)を示すデータであり、メイン制御部130がRTC123から日時を示すデータを取得して、CPLD144に出力する。
フィスカルメモリー143及びCPLD144は、エポキシ樹脂によって封止されており、例えば、フィスカルメモリー143がフィスカル制御基板100から物理的に取り外され、フィスカルメモリー143に記憶されたデータが改ざんされるのを防止する。
The fiscal memory 143 is a non-volatile memory such as an OTPROM, for example, and functions as a memory in which data can be written only once per address under the control of the CPLD 144. Therefore, the data written in the fiscal memory 143 is prevented from being edited later, and the data written in the fiscal memory 143 is prevented from being falsified.
The CPLD 144 is a device in which a programmable logic circuit is written, and reads / writes data from / to the fiscal memory 143.
Data that the CPLD 144 writes to the fiscal memory 143 includes daily sales data and writing date / time data. The writing date and time data is data indicating the date and time (date and time) when the daily sales data is written in the fiscal memory 143. The main control unit 130 acquires data indicating the date and time from the RTC 123 and outputs the data to the CPLD 144.
The fiscal memory 143 and the CPLD 144 are sealed with an epoxy resin. For example, the fiscal memory 143 is physically removed from the fiscal control board 100, and data stored in the fiscal memory 143 is prevented from being falsified.

書換用メモリー145は、例えば、フラッシュメモリーや、EPROM、EEPROM等のデータの書き換えが可能な不揮発性メモリーにより構成され、ホストコンピューター10から供給された書換用データを一時的に記憶する。   The rewrite memory 145 is constituted by, for example, a flash memory, a non-volatile memory capable of rewriting data, such as an EPROM and an EEPROM, and temporarily stores the rewrite data supplied from the host computer 10.

制御部として機能する第2サブ制御部146は、プロセッサー147と、ROMやRAM等のメモリー(いずれも図示略)をハードウェアとして備える。ROM(記憶部)は、プロセッサー147が実行する制御プログラムを記憶し、RAMは、プロセッサー147が演算を行う際にワークメモリーとして使用される。
第2サブ制御部146のプロセッサー147は、プリンター1に電源が投入されると、メイン制御部130の起動よりも前に起動して、書換用メモリー145に、書換用データが書き込まれているか否かを判定する。書換用メモリー145が書換用データを記憶している場合、第2サブ制御部146は、この書換用データに改ざんが施されているか否かを判定する。第2サブ制御部146は、書換用データに改ざん等が施されていないと判定した場合には、書換用データを書換用メモリー145から読み出し、読み出した書換用データによりメインROM121の記憶するデータを書き換える。また、第2サブ制御部146は、書換用データに改ざんが施されていると判定した場合には、書換用メモリー145が記憶する書換用データを消去する。
また、第2サブ制御部146のプロセッサー147は、起動した際に、メインROM121が記憶するAPファームウェアに改ざんが施されているか否かを判定する。第2サブ制御部146は、APファームウェアに改ざんが施されていると判定した場合、メイン制御部130がAPファームウェアを実行するのを禁止(制限)する。
The second sub-control unit 146 functioning as a control unit includes a processor 147 and a memory such as a ROM or a RAM (both not shown) as hardware. The ROM (storage unit) stores a control program executed by the processor 147, and the RAM is used as a work memory when the processor 147 performs an operation.
When the printer 1 is turned on, the processor 147 of the second sub-control unit 146 is activated before the main control unit 130 is activated, and whether or not rewrite data is written in the rewrite memory 145. Determine whether. When the rewrite memory 145 stores rewrite data, the second sub-control unit 146 determines whether or not the rewrite data has been tampered with. If the second sub-control unit 146 determines that the rewriting data has not been tampered with, the second sub control unit 146 reads the rewriting data from the rewriting memory 145 and uses the read rewriting data to store the data stored in the main ROM 121. rewrite. If the second sub-control unit 146 determines that the rewriting data has been tampered with, the second sub control unit 146 deletes the rewriting data stored in the rewriting memory 145.
Further, the processor 147 of the second sub-control unit 146 determines whether the AP firmware stored in the main ROM 121 has been tampered with when activated. If the second sub-control unit 146 determines that the AP firmware has been tampered with, the second sub-control unit 146 prohibits (limits) the main control unit 130 from executing the AP firmware.

書換用データは、書換用APファームウェア(更新用の制御プログラム)と、起動検証用デジタル署名と、更新検証用デジタル署名(更新用の制御プログラムに対応するデジタル署名)とを含む。以下では、書換用メモリー145に記憶された起動検証用デジタル署名を第2起動検証用デジタル署名と表記する。   The rewrite data includes a rewrite AP firmware (update control program), an activation verification digital signature, and an update verification digital signature (digital signature corresponding to the update control program). Hereinafter, the activation verification digital signature stored in the rewrite memory 145 is referred to as a second activation verification digital signature.

書換用APファームウェアは、メインROM121が記憶するAPファームウェアを書き換えるプログラムである。
APファームウェアの書き換えは、メインROM121に、APファームウェアに代えて書換用APファームウェアを記憶させるものであってもよいし、APファームウェアの一部を書換用APファームウェアで書き換えてもよい。
The rewriting AP firmware is a program for rewriting the AP firmware stored in the main ROM 121.
The AP firmware may be rewritten by storing the rewriting AP firmware in the main ROM 121 instead of the AP firmware, or a part of the AP firmware may be rewritten by the rewriting AP firmware.

第2起動検証用デジタル署名は、一般的に知られたハッシュ関数を用いて書換用APファームウェアのハッシュ値を算出し、算出したハッシュ値を所定の秘密鍵により暗号化したデータである。所定の秘密鍵は、例えば、プリンター1の製造者が管理する秘密鍵である。この第2起動検証用デジタル署名は、書換用APファームウェアが改ざん等をされていない正当なファームウェアであるか否かの検証に用いる。   The second activation verification digital signature is data obtained by calculating a hash value of the rewritable AP firmware using a generally known hash function and encrypting the calculated hash value with a predetermined secret key. The predetermined secret key is, for example, a secret key managed by the printer 1 manufacturer. This second activation verification digital signature is used to verify whether the rewrite AP firmware is a valid firmware that has not been tampered with.

また、更新検証用デジタル署名は、一般的に知られたハッシュ関数を用いて、書換用APファームウェアのハッシュ値と、第2起動検証用デジタル署名のハッシュ値とを算出し、算出したハッシュ値の和を所定の秘密鍵により暗号化したデータである。本実施形態では、所定の秘密鍵は、例えば、プリンター1の製造者が管理する秘密鍵である。この更新検証用デジタル署名は、書換用APファームウェアを、書換用メモリー145から読み出してメインROM121に書き込む際に、書換用APファームウェアが改ざん等をされていない正当なファームウェアであるかの検証に用いる。   The update verification digital signature uses a generally known hash function to calculate the hash value of the rewrite AP firmware and the hash value of the second activation verification digital signature, and the calculated hash value Data obtained by encrypting the sum with a predetermined secret key. In the present embodiment, the predetermined secret key is, for example, a secret key managed by the manufacturer of the printer 1. This update verification digital signature is used to verify whether the rewrite AP firmware is a legitimate firmware that has not been tampered with when the rewrite AP firmware is read from the rewrite memory 145 and written to the main ROM 121.

なお、プリンター1の製造者は、起動検証用のデジタル署名の作成に使用する秘密鍵と、更新検証用のデジタル署名の作成に使用する秘密鍵とをそれぞれ別々に用意する。プリンター1の製造者は、起動検証用のデジタル署名を作成する場合には、起動検証用の秘密鍵を用いてデジタル署名を作成し、更新検証用のデジタル署名を作成する場合には、更新検証用の秘密鍵を用いてデジタル署名を作成する。
また、第1起動検証用デジタル署名と、第2起動検証用デジタル署名と、更新検証用デジタル署名とをそれぞれ別々の秘密鍵で作成してもよいし、すべて同一の秘密鍵によりデジタル署名を作成してもよい。
The manufacturer of the printer 1 prepares a secret key used for creating a digital signature for activation verification and a secret key used for creating a digital signature for update verification separately. The manufacturer of the printer 1 creates a digital signature using a private key for activation verification when creating a digital signature for activation verification, and updates verification when creating a digital signature for update verification. Create a digital signature using your private key.
Also, the first startup verification digital signature, the second startup verification digital signature, and the update verification digital signature may be created with different private keys, or all digital signatures may be created with the same private key. May be.

フィスカル制御基板100には、スマートカード200が装着されるカード装着部(図示略)が設けられ、スマートカード200とデータの送受信を行うリーダーライター(媒体接続部)150とが搭載される。
スマートカード(媒体、外部媒体)200は、ICチップと接触用電極(ともに図示略)とを有するICモジュールを備える。スマートカード200は、データの記憶機能と、演算処理を行う演算機能とを備えた媒体である。
スマートカード200がカード装着部に装着されると、スマートカード200の接触用電極と、カード装着部に設けられたリーダーライター150の接触用電極とが接触する。スマートカード200の接触用電極と、リーダーライター150の接触用電極とが接触することで、リーダーライター150は、スマートカード200に対してデータの読み書きが可能な状態となる。スマートカード200は、プリンター1の起動時や、ファームウェアの書き換え時に、カード装着部に装着するようにしてもよいし、工場出荷時にカード装着部に装着され、カード装着部から取り外しができないようにカード装着部に固定してもよい。
The fiscal control board 100 is provided with a card mounting unit (not shown) in which the smart card 200 is mounted, and a reader / writer (medium connection unit) 150 that transmits / receives data to / from the smart card 200 is mounted.
The smart card (medium, external medium) 200 includes an IC module having an IC chip and contact electrodes (both not shown). The smart card 200 is a medium having a data storage function and an arithmetic function for performing arithmetic processing.
When the smart card 200 is attached to the card attachment portion, the contact electrode of the smart card 200 and the contact electrode of the reader / writer 150 provided in the card attachment portion come into contact with each other. When the contact electrode of the smart card 200 comes into contact with the contact electrode of the reader / writer 150, the reader / writer 150 can read and write data from / to the smart card 200. The smart card 200 may be mounted on the card mounting unit when the printer 1 is started or the firmware is rewritten, or the card is mounted on the card mounting unit at the time of shipment from the factory and cannot be removed from the card mounting unit. You may fix to a mounting part.

スマートカード200のICチップは、ハードウェアとしてCPU、ROM、RAM及び不揮発性メモリーを備える。ROMには、CPUの制御プログラムが記憶され、RAMは、CPUのワークメモリーとして使用される。CPUが制御プログラムに従い演算を行うことにより、機能ブロックとして、インターフェース部(以下、I/F部と略記する)201と、演算部202とが構成される。また、不揮発性メモリーは、記憶部(媒体記憶部)203として機能する。   The IC chip of the smart card 200 includes a CPU, ROM, RAM, and nonvolatile memory as hardware. The ROM stores a CPU control program, and the RAM is used as a CPU work memory. When the CPU performs calculations according to the control program, an interface unit (hereinafter abbreviated as I / F unit) 201 and a calculation unit 202 are configured as functional blocks. The nonvolatile memory functions as a storage unit (medium storage unit) 203.

記憶部203は、起動検証用公開鍵(復号鍵)と、更新検証用公開鍵(復号鍵)とを記憶する。
起動検証用公開鍵は、起動検証用デジタル署名の作成に使用した秘密鍵と対をなす公開鍵である。すなわち、起動検証用公開鍵により、第1起動検証用デジタル署名及び第2起動検証用デジタル署名を復号してハッシュ値を取得することができる。更新検証用公開鍵は、更新検証用デジタル署名の作成に使用した秘密鍵と対をなす公開鍵である。すなわち、更新検証用公開鍵により、更新検証用デジタル署名を復号してハッシュ値を取得することができる。
The storage unit 203 stores an activation verification public key (decryption key) and an update verification public key (decryption key).
The activation verification public key is a public key that is paired with the private key used to create the activation verification digital signature. In other words, the first activation verification digital signature and the second activation verification digital signature can be decrypted with the activation verification public key to obtain a hash value. The update verification public key is a public key that is paired with the private key used to create the update verification digital signature. That is, the hash value can be obtained by decrypting the update verification digital signature with the update verification public key.

プリンター基板300に実装されたプリンター制御部310は、ホストコンピューター10が出力した制御コマンドに基づいて、記録機構320を制御し、レシートを発行する。
記録機構320は、ロール紙の印刷面に熱を与えることにより画像を記録するサーマルヘッド321や、ロール紙を搬送する搬送機構322、所定の位置でロール紙を切断する切断機構323等を備える。記録機構320は、プリンター制御部310の制御の下、これら機構や装置を動作させて、レシートを発行する。
プリンター基板300には、プリンター側コネクター350が設けられ、フィスカル制御基板100には、フィスカル側コネクター160が設けられる。プリンター側コネクター350と、フィスカル側コネクター160とが接続されることで、フィスカル制御基板100と、プリンター基板300とが接続される。
The printer control unit 310 mounted on the printer substrate 300 controls the recording mechanism 320 based on a control command output from the host computer 10 and issues a receipt.
The recording mechanism 320 includes a thermal head 321 that records an image by applying heat to the printing surface of the roll paper, a transport mechanism 322 that conveys the roll paper, a cutting mechanism 323 that cuts the roll paper at a predetermined position, and the like. The recording mechanism 320 operates these mechanisms and devices under the control of the printer control unit 310 to issue a receipt.
The printer board 300 is provided with a printer-side connector 350, and the fiscal control board 100 is provided with a fiscal-side connector 160. By connecting the printer-side connector 350 and the fiscal-side connector 160, the fiscal control board 100 and the printer board 300 are connected.

図2は、第2サブ制御部146の動作を示すフローチャートである。
プリンター1に電源が投入されると、第2サブ制御部146がまず起動し、書換用メモリー145が書換用データを記憶しているか否かを判定する(ステップS1)。書換用メモリー145が書換用データを記憶していない場合(ステップS1/NO)、第2サブ制御部146は、ステップS9の処理に移行する。ステップS9の処理については後述する。また、書換用メモリー145が書換用データを記憶する場合(ステップS1/YES)、第2サブ制御部146は、書換用メモリー145から更新検証用デジタル署名を読み出し、リーダーライター150によりスマートカード200に送信する(ステップS2)。
FIG. 2 is a flowchart showing the operation of the second sub control unit 146.
When the printer 1 is powered on, the second sub-control unit 146 is first activated to determine whether or not the rewrite memory 145 stores rewrite data (step S1). If the rewrite memory 145 does not store rewrite data (step S1 / NO), the second sub-control unit 146 proceeds to the process of step S9. The process of step S9 will be described later. When the rewriting memory 145 stores the rewriting data (step S1 / YES), the second sub-control unit 146 reads the update verification digital signature from the rewriting memory 145, and the reader / writer 150 stores it in the smart card 200. Transmit (step S2).

図3は、プリンター1の動作を説明するための図である。
スマートカード200の演算部202は、更新検証用デジタル署名がリーダーライター150から入力されると(図3(a)参照)、記憶部203から更新検証用公開鍵を読み出す(図3(b)参照)。演算部202は、読み出した更新検証用公開鍵により更新検証用デジタル署名を復号する(図3(c)参照)。
更新検証用デジタル署名は、書換用APファームウェアのハッシュ値と、第2起動検証用デジタル署名のハッシュ値との和を秘密鍵で暗号化したものである。このため、更新検証用デジタル署名を更新検証用公開鍵により復号すると、書換用APファームウェアのハッシュ値と、第2起動検証用デジタル署名のハッシュ値との和が求められる。
演算部202は、図3に示すように、復号結果であるハッシュ値(第4ハッシュ値)を、リーダーライター150を介して第2サブ制御部146に送信する(図3(d)参照)。
FIG. 3 is a diagram for explaining the operation of the printer 1.
When the update verification digital signature is input from the reader / writer 150 (see FIG. 3A), the arithmetic unit 202 of the smart card 200 reads the update verification public key from the storage unit 203 (see FIG. 3B). ). The computing unit 202 decrypts the update verification digital signature using the read update verification public key (see FIG. 3C).
The update verification digital signature is obtained by encrypting the sum of the hash value of the rewrite AP firmware and the hash value of the second activation verification digital signature with a secret key. Therefore, when the update verification digital signature is decrypted with the update verification public key, the sum of the hash value of the rewriting AP firmware and the hash value of the second activation verification digital signature is obtained.
As shown in FIG. 3, the calculation unit 202 transmits a hash value (fourth hash value) that is a decryption result to the second sub-control unit 146 via the reader / writer 150 (see FIG. 3D).

図4は、プリンター1の動作を説明するための図である。
次に、第2サブ制御部146は、リーダーライター150からハッシュ値が入力されたか否かを判定する(ステップS3)。リーダーライター150は、スマートカード200からハッシュ値を受信すると、受信したハッシュ値を第2サブ制御部146に出力する。ハッシュ値の入力がない場合(ステップS3/NO)、第2サブ制御部146は、ハッシュ値が入力されるまで待機する。
第2サブ制御部146は、ハッシュ値が入力されると(ステップS3/YES)(図4(a)参照)、書換用メモリー145に記憶された書換用APファームウェアと、第2起動検証用デジタル署名とのハッシュ値をそれぞれに算出する(ステップS4)(図4(b)参照)。さらに、第2サブ制御部146は、算出した書換用APファームウェア及び第2起動検証用デジタル署名のハッシュ値の和(第3ハッシュ値)を算出する。算出したハッシュ値の和を演算ハッシュ値といい、スマートカード200から受信したハッシュ値を取得ハッシュ値という。第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とを比較して(ステップS5)、演算ハッシュ値と取得ハッシュ値とが一致するか否かを判定する(ステップS6)(図4(c)参照)。
FIG. 4 is a diagram for explaining the operation of the printer 1.
Next, the second sub-control unit 146 determines whether or not a hash value has been input from the reader / writer 150 (step S3). When the reader / writer 150 receives the hash value from the smart card 200, the reader / writer 150 outputs the received hash value to the second sub-control unit 146. When no hash value is input (step S3 / NO), the second sub-control unit 146 waits until a hash value is input.
When the hash value is input (step S3 / YES) (see FIG. 4A), the second sub-control unit 146 rewrites the AP firmware stored in the rewrite memory 145 and the second activation verification digital. A hash value with the signature is calculated for each (step S4) (see FIG. 4B). Further, the second sub-control unit 146 calculates the sum (third hash value) of the calculated rewrite AP firmware and the hash value of the second activation verification digital signature. The sum of the calculated hash values is referred to as a calculation hash value, and the hash value received from the smart card 200 is referred to as an acquired hash value. The second sub-control unit 146 compares the calculated hash value and the acquired hash value (step S5), and determines whether or not the calculated hash value and the acquired hash value match (step S6) (FIG. 4 ( c)).

第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とが一致しなかった場合(ステップS6/NO)書換用メモリー145から書換用データを消去する(ステップS8)。すなわち、第2サブ制御部146は、書換用データが改ざんされていると判定し、書換用メモリー145が記憶する書換用APファームウェアと、第2起動検証用デジタル署名と、更新検証用デジタル署名とを消去する。   When the calculated hash value does not match the acquired hash value (step S6 / NO), the second sub-control unit 146 erases the rewrite data from the rewrite memory 145 (step S8). That is, the second sub-control unit 146 determines that the rewriting data has been tampered with, the rewriting AP firmware stored in the rewriting memory 145, the second activation verification digital signature, the update verification digital signature, Erase.

図5は、プリンター1の動作を説明するための図である。
第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とが一致した場合(ステップS6/YES)、ファームウェアの書き換えを行う(ステップS7)。第2サブ制御部146は、書換用メモリー145から書換用APファームウェアを読み出し、読み出した書換用APファームウェアをメインROM121に書き込んで、メインROM121のAPファームウェアを書き換える(更新する)(図5(a)参照)。以下では、ファームウェアの書き換えが行われ、メインROM121に書き込まれた書換用APファームウェアをAPファームウェアという。
また、第2サブ制御部146は、書換用メモリー145から第2起動検証用デジタル署名を読み出し、読み出した第2起動検証用デジタル署名をメインROM121に書き込み、メインROM121の第1起動検証用デジタル署名を書き換える(図5(b)参照)。
以下では、起動検証用デジタル署名の書き換えが行われ、メインROM121に書き込まれた第2起動検証用デジタル署名を、第1起動検証用デジタル署名という。
FIG. 5 is a diagram for explaining the operation of the printer 1.
The second sub-control unit 146 rewrites the firmware when the calculated hash value matches the acquired hash value (step S6 / YES) (step S7). The second sub-control unit 146 reads the rewrite AP firmware from the rewrite memory 145, writes the read rewrite AP firmware in the main ROM 121, and rewrites (updates) the AP firmware in the main ROM 121 (FIG. 5A). reference). Hereinafter, the rewriting AP firmware that has been rewritten and written in the main ROM 121 is referred to as AP firmware.
The second sub-control unit 146 reads the second activation verification digital signature from the rewrite memory 145, writes the read second activation verification digital signature in the main ROM 121, and the first activation verification digital signature in the main ROM 121. Is rewritten (see FIG. 5B).
Hereinafter, the second activation verification digital signature written in the main ROM 121 after the activation verification digital signature is rewritten is referred to as a first activation verification digital signature.

図6は、プリンター1の動作を説明するための図である。
また、第2サブ制御部146は、ステップS7においてファームウェアの書き換えを行うと、書換用データを書換用メモリー145から消去する(ステップS8)。すなわち、第2サブ制御部146は、書換用メモリー145が記憶する書換用APファームウェアと、第2起動検証用デジタル署名と、更新検証用デジタル署名とを消去する。図6には、書換用メモリー145から、書換用データが消去された様子を示す。
FIG. 6 is a diagram for explaining the operation of the printer 1.
Further, when the second sub control unit 146 rewrites the firmware in step S7, the second sub control unit 146 erases the rewrite data from the rewrite memory 145 (step S8). That is, the second sub-control unit 146 deletes the rewriting AP firmware, the second activation verification digital signature, and the update verification digital signature stored in the rewriting memory 145. FIG. 6 shows a state where the rewriting data is erased from the rewriting memory 145.

また、第2サブ制御部146は、ステップS8の処理を実行すると、又はステップS1の判定において、書換用メモリー145が書換用データを記憶していない場合(ステップS1/NO)、ステップS9の処理に移行する。
第2サブ制御部146は、メインROM121から第1起動検証用デジタル署名を読み出し、リーダーライター150によりスマートカード200に送信する(ステップS9)。
In addition, when the second sub-control unit 146 performs the process of step S8 or when the rewrite memory 145 does not store the rewrite data in the determination of step S1 (step S1 / NO), the process of step S9 Migrate to
The second sub-control unit 146 reads the first activation verification digital signature from the main ROM 121 and transmits it to the smart card 200 by the reader / writer 150 (step S9).

図7は、プリンター1の動作を説明するための図である。
スマートカード200の演算部202は、起動検証用デジタル署名がリーダーライター150から入力されると(図7(a)参照)、記憶部203から起動検証用公開鍵を読み出す(図7(b)参照)。演算部202は、読み出した起動検証用公開鍵により起動検証用デジタル署名を復号する(図7(c)参照)。起動検証用デジタル署名は、APファームウェアのハッシュ値を秘密鍵で暗号化したものである。このため、起動検証用デジタル署名を起動検証用公開鍵により復号すると、APファームウェアのハッシュ値(第2ハッシュ値)が求められる。
演算部202は、図7に示すように、復号結果であるハッシュ値を、リーダーライター150を介して第2サブ制御部146に送信する(図7(d)参照)。
FIG. 7 is a diagram for explaining the operation of the printer 1.
When the activation verification digital signature is input from the reader / writer 150 (see FIG. 7A), the arithmetic unit 202 of the smart card 200 reads the activation verification public key from the storage unit 203 (see FIG. 7B). ). The calculation unit 202 decrypts the activation verification digital signature using the read activation verification public key (see FIG. 7C). The activation verification digital signature is obtained by encrypting the hash value of the AP firmware with a secret key. Therefore, when the activation verification digital signature is decrypted with the activation verification public key, the hash value (second hash value) of the AP firmware is obtained.
As illustrated in FIG. 7, the arithmetic unit 202 transmits a hash value that is a decryption result to the second sub-control unit 146 via the reader / writer 150 (see FIG. 7D).

次に、第2サブ制御部146は、リーダーライター150からハッシュ値が入力されたか否かを判定する(ステップS10)。リーダーライター150は、スマートカード200からハッシュ値を受信すると、受信したハッシュ値を第2サブ制御部146に出力する。ハッシュ値の入力がない場合(ステップS10/NO)、第2サブ制御部146は、ハッシュ値が入力されるまで待機する。   Next, the second sub-control unit 146 determines whether or not a hash value has been input from the reader / writer 150 (step S10). When the reader / writer 150 receives the hash value from the smart card 200, the reader / writer 150 outputs the received hash value to the second sub-control unit 146. When no hash value is input (step S10 / NO), the second sub-control unit 146 waits until a hash value is input.

図8は、プリンター1の動作を説明するための図である。
第2サブ制御部146は、ハッシュ値が入力されると(ステップS10/YES)(図8(a)参照)、書換用メモリー145に記憶されたAPファームウェアのハッシュ値(第1ハッシュ値)を算出する(ステップS11)(図8(b)参照)。以下では、算出したハッシュ値を演算ハッシュ値といい、スマートカード200から受信したハッシュ値を取得ハッシュ値という。
第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とを比較して(ステップS12)、演算ハッシュ値と取得ハッシュ値とが一致するか否かを判定する(ステップS13)(図8(c)参照)。演算ハッシュ値と取得ハッシュ値とが一致した場合(ステップS13/YES)、第2サブ制御部146は、メイン制御部130に、APファームウェアの実行を許可する(ステップS14)。第2サブ制御部146は、APファームウェアの実行を許可する許可情報を、例えばSRAM122等のメモリーに書き込む。メイン制御部130は、第2サブ制御部146に遅れて起動し、メインROM121の起動用ファームウェアを実行する。メイン制御部130は、SRAM122が許可情報を記憶しているか否かを判定する。メイン制御部130は、SRAM122が許可情報を記憶している場合、起動用ファームウェアに続きAPファームウェアを実行する。
また、演算ハッシュ値と取得ハッシュ値とが一致しない場合(ステップS13/NO)、第2サブ制御部146は、メインROM121が記憶するAPファームウェアが改ざんされたと判定する。そして、第2サブ制御部146は、メイン制御部130に、APファームウェアの実行を制限する(ステップS15)。この場合、第2サブ制御部146は、例えば、SRAM122等のメモリーに、APファームウェアの実行を禁止する禁止情報を書き込む。メイン制御部130は、SRAM122が禁止情報を記憶している場合、APファームウェアを実行しない。
FIG. 8 is a diagram for explaining the operation of the printer 1.
When the hash value is input (step S10 / YES) (see FIG. 8A), the second sub-control unit 146 uses the AP firmware hash value (first hash value) stored in the rewrite memory 145. Calculate (step S11) (see FIG. 8B). Hereinafter, the calculated hash value is referred to as a calculation hash value, and the hash value received from the smart card 200 is referred to as an acquired hash value.
The second sub-control unit 146 compares the calculated hash value and the acquired hash value (step S12), and determines whether the calculated hash value and the acquired hash value match (step S13) (FIG. 8 ( c)). If the calculated hash value matches the acquired hash value (step S13 / YES), the second sub-control unit 146 permits the main control unit 130 to execute the AP firmware (step S14). The second sub control unit 146 writes permission information for permitting execution of the AP firmware in a memory such as the SRAM 122, for example. The main control unit 130 is activated after the second sub control unit 146 and executes the activation firmware in the main ROM 121. The main control unit 130 determines whether or not the SRAM 122 stores permission information. When the SRAM 122 stores permission information, the main control unit 130 executes the AP firmware following the startup firmware.
If the calculated hash value does not match the acquired hash value (step S13 / NO), the second sub-control unit 146 determines that the AP firmware stored in the main ROM 121 has been falsified. Then, the second sub control unit 146 restricts execution of the AP firmware to the main control unit 130 (step S15). In this case, the second sub-control unit 146 writes prohibition information that prohibits execution of the AP firmware, for example, in a memory such as the SRAM 122. The main control unit 130 does not execute the AP firmware when the SRAM 122 stores the prohibition information.

図2に示すフローチャートでは、第2サブ制御部146が、ハッシュ値の算出、スマートカード200へのデジタル署名の送信、スマートカード200から送信された取得ハッシュ値と算出した演算ハッシュ値との比較等の処理行っていたが、メイン制御部130が第2サブ制御部146に代わりこれらの処理を実行してもよい。
メイン制御部130は、起動してブートプログラムである起動用ファームウェアを実行し、図2に示すフローチャートに従って、ハッシュ値の算出、スマートカード200へのデジタル署名の送信、スマートカードから送信された取得ハッシュ値と算出した演算ハッシュ値との比較等の処理を行う。そして、メイン制御部130は、演算ハッシュ値と取得ハッシュ値とが一致した場合には、APファームウェアを実行し、又は書換用APファームウェアを書換用メモリー145から読み出して、メインROM121に書き込んでAPファームウェアを消去する。
また、メイン制御部130は、演算ハッシュ値と取得ハッシュ値とが一致しない場合には、APファームウェアを実行することなく、処理を終了する。又は、メイン制御部130は、演算ハッシュ値と取得ハッシュ値とが一致しない場合には、書換用メモリー145の書換用データを消去して、ファームウェアの書き換えを実行しない。
In the flowchart illustrated in FIG. 2, the second sub-control unit 146 calculates a hash value, transmits a digital signature to the smart card 200, compares the acquired hash value transmitted from the smart card 200 with the calculated hash value, and the like. However, the main control unit 130 may execute these processes instead of the second sub-control unit 146.
The main control unit 130 starts up and executes boot firmware as a boot program, calculates a hash value, transmits a digital signature to the smart card 200, and obtains an acquired hash transmitted from the smart card according to the flowchart shown in FIG. Processing such as comparison between the value and the calculated hash value is performed. When the calculated hash value matches the acquired hash value, the main control unit 130 executes the AP firmware, or reads the rewrite AP firmware from the rewrite memory 145 and writes it into the main ROM 121 to write the AP firmware. Erase.
If the calculated hash value does not match the acquired hash value, the main control unit 130 ends the process without executing the AP firmware. Alternatively, when the calculated hash value does not match the acquired hash value, the main control unit 130 erases the rewrite data in the rewrite memory 145 and does not rewrite the firmware.

以上詳細に説明したように本実施形態は、第2サブ制御部146が、メインROM121が記憶するファームウェアから演算ハッシュ値を算出し、スマートカード200に、ファームウェアに対応するデジタル署名を復号させて取得ハッシュ値を取得する。そして、第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とを比較して、比較結果に基づいてメイン制御部130によるファームウェアの実行を制限する。
また、第2サブ制御部146は、入力された更新用のファームウェアから演算ハッシュ値を算出し、スマートカード200に、更新用のファームウェア対応するデジタル署名を復号させて取得ハッシュ値を取得する。そして、第2サブ制御部146は、演算ハッシュ値と取得ハッシュ値とを比較し、比較結果に基づいて更新用のファームウェアよるファームウェアの更新を制限する。
従って、改ざんされたファームウェアをメイン制御部130のプロセッサー131が実行するのを防止して、プリンター1が実行する制御プログラムの改ざんを防止することができる。
As described above in detail, in the present embodiment, the second sub-control unit 146 calculates the operation hash value from the firmware stored in the main ROM 121, and obtains the smart card 200 by decrypting the digital signature corresponding to the firmware. Get hash value. Then, the second sub control unit 146 compares the calculated hash value and the acquired hash value, and restricts execution of firmware by the main control unit 130 based on the comparison result.
Also, the second sub-control unit 146 calculates a calculation hash value from the input update firmware, and causes the smart card 200 to decrypt the digital signature corresponding to the update firmware to acquire the acquired hash value. Then, the second sub-control unit 146 compares the calculated hash value and the acquired hash value, and restricts the update of the firmware by the update firmware based on the comparison result.
Accordingly, it is possible to prevent the processor 131 of the main control unit 130 from executing the altered firmware, thereby preventing the control program executed by the printer 1 from being altered.

また、メイン制御部130は、プリンター1が起動した際に、メインROM121が記憶する起動用ファームウェアを実行し、演算ハッシュ値と取得ハッシュ値とが一致しない場合に、制御プログラムの実行を制限する。
従って、改ざんされたファームウェアをメイン制御部130のプロセッサー131が実行するのを防止することができる。
The main control unit 130 executes activation firmware stored in the main ROM 121 when the printer 1 is activated, and restricts execution of the control program when the calculated hash value does not match the acquired hash value.
Therefore, it is possible to prevent the processor 131 of the main control unit 130 from executing the altered firmware.

また、情報処理装置として、フィスカル情報の記憶保持する機能を備えたプリンター1を用いたことで、フィスカル情報の漏洩、改ざんを防止することができる。   Further, by using the printer 1 having a function of storing and holding fiscal information as the information processing apparatus, leakage and falsification of fiscal information can be prevented.

また、外部媒体又は媒体としてスマートカード200を用いることによりにより、スマートカード200に保存した公開鍵が解析され改ざんされるのを防止することができる。
従って、プリンター1が改ざんされたファームウェアを実行するのを防止できる。
Further, by using the smart card 200 as an external medium or a medium, it is possible to prevent the public key stored in the smart card 200 from being analyzed and falsified.
Therefore, it is possible to prevent the printer 1 from executing the altered firmware.

上述した実施形態は本発明の好適な実施の形態である。ただし、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形実施が可能である。
例えば、スマートカード200は、リーダーライター150と、近距離無線通信により通信を行って、データの送受信を行う非接触型のスマートカードであってもよい。スマートカード200が非接触型のスマートカードである場合、プリンター1のユーザーは、プリンター1の電源投入時や、ファームウェアの更新時にスマートカード200をリーダーライター150にかざし、スマートカード200にデジタル署名を復号させる。スマートカード200を、リーダーライター150にかざさない限り、プリンター1がAPファームウェアを実行することがないので、レシート印刷を行うことができない。
The above-described embodiment is a preferred embodiment of the present invention. However, the present invention is not limited to this, and various modifications can be made without departing from the scope of the present invention.
For example, the smart card 200 may be a contactless smart card that communicates with the reader / writer 150 by short-range wireless communication to transmit and receive data. When the smart card 200 is a contactless smart card, the user of the printer 1 holds the smart card 200 over the reader / writer 150 when the printer 1 is turned on or when the firmware is updated, and the smart card 200 decrypts the digital signature. Let me. Unless the smart card 200 is held over the reader / writer 150, the printer 1 does not execute the AP firmware, and therefore, receipt printing cannot be performed.

また、プリンター1の構成として、スマートカード200を備えていない構成であってもよいし、スマートカード200をプリンター1の構成の一部として備えていてもよい。
例えば、プリンター1の製造者がスマートカード200を提供する場合には、スマートカード200が搭載された構成のプリンター1を提供し、スマートカード200を、後から取得する場合、プリンター1の製造者は、スマートカード200が搭載されていない構成のプリンター1を提供する。例えば、スマートカード200に、政府等から認証されたカードを用いる場合、プリンター1の製造者や、プリンター1のユーザーがスマートカード200を取得して、後からスマートカード200をプリンター1に装着させる。
また、メイン制御部130は、第1サブ制御部142、第2サブ制御部146の機能を含むこともできる。さらに、メイン制御部130は、プリンター制御部310の機能を含んでいてもよい。
The configuration of the printer 1 may be a configuration that does not include the smart card 200, or may include the smart card 200 as a part of the configuration of the printer 1.
For example, when the manufacturer of the printer 1 provides the smart card 200, the printer 1 having the configuration in which the smart card 200 is mounted is provided, and when the smart card 200 is acquired later, the manufacturer of the printer 1 A printer 1 having a configuration in which the smart card 200 is not mounted is provided. For example, when the smart card 200 uses a card authenticated by the government or the like, the manufacturer of the printer 1 or the user of the printer 1 acquires the smart card 200 and attaches the smart card 200 to the printer 1 later.
In addition, the main control unit 130 may include functions of the first sub control unit 142 and the second sub control unit 146. Further, the main control unit 130 may include the function of the printer control unit 310.

1…プリンター(情報処理装置、情報処理システム)、10…ホストコンピューター、100…フィスカル制御基板、110…通信部(入力部)、121…メインROM(記憶部)、130…メイン制御部(制御部)、131…プロセッサー、141…EJメモリー、142…第1サブ制御部、143…フィスカルメモリー、144…CPLD、45…書換用メモリー、146…第2サブ制御部(制御部)、147…プロセッサー、150…リーダーライター(媒体接続部)、200…スマートカード(媒体、外部媒体)、202…演算部、203…記憶部(媒体記憶部)、300…プリンター基板。   DESCRIPTION OF SYMBOLS 1 ... Printer (information processing apparatus, information processing system), 10 ... Host computer, 100 ... Fiscal control board, 110 ... Communication part (input part), 121 ... Main ROM (memory | storage part), 130 ... Main control part (control part) , 131 ... Processor, 141 ... EJ memory, 142 ... First sub-control unit, 143 ... Fiscal memory, 144 ... CPLD, 45 ... Rewrite memory, 146 ... Second sub-control unit (control unit), 147 ... Processor, 150: reader / writer (medium connection unit), 200: smart card (medium, external medium), 202: calculation unit, 203: storage unit (medium storage unit), 300: printer substrate.

Claims (8)

制御プログラムと、前記制御プログラムに対応するデジタル署名とを記憶する記憶部と、
前記制御プログラムを実行する制御部と、
復号鍵を記憶し前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に接続する媒体接続部と、を備え、
前記制御部は、前記記憶部が記憶する前記制御プログラムから第1ハッシュ値を算出し、前記外部媒体から前記媒体接続部を介して前記制御プログラムに対応する前記デジタル署名を復号した第2ハッシュ値を取得し、前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御プログラムの実行を制限することを特徴とする情報処理装置。
A storage unit for storing a control program and a digital signature corresponding to the control program;
A control unit for executing the control program;
A medium connection unit that stores a decryption key and connects to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key;
The control unit calculates a first hash value from the control program stored in the storage unit, and decrypts the digital signature corresponding to the control program from the external medium via the medium connection unit. , And the first hash value and the second hash value are compared, and if they do not match, the execution of the control program is restricted.
前記制御部は、前記情報処理装置が起動した際に、前記記憶部の記憶するブートプログラムを実行し、前記第1ハッシュ値と前記第2ハッシュ値とが一致しない場合に前記制御プログラムの実行を制限すること、を特徴とする請求項1に記載の情報処理装置。   The control unit executes a boot program stored in the storage unit when the information processing apparatus is activated, and executes the control program when the first hash value and the second hash value do not match. The information processing apparatus according to claim 1, wherein the information processing apparatus is limited. 制御プログラムを実行する制御部と、
前記制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応するデジタル署名とを入力する入力部と、
復号鍵を記憶し前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に接続する媒体接続部と、を備え、
前記制御部は、入力された前記更新用の制御プログラムから第3ハッシュ値を算出し、前記外部媒体から前記媒体接続部を介して前記更新用の制御プログラムに対応する前記デジタル署名を復号した第4ハッシュ値を取得し、前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムへの更新を制限することを特徴とする情報処理装置。
A control unit for executing a control program;
An input unit for inputting an update control program for updating the control program and a digital signature corresponding to the update control program;
A medium connection unit that stores a decryption key and connects to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key;
The control unit calculates a third hash value from the input control program for update, and decrypts the digital signature corresponding to the control program for update from the external medium via the medium connection unit. An information processing apparatus that acquires a four-hash value, compares the third hash value and the fourth hash value, and restricts updating to the control program for updating if they do not match.
前記情報処理装置は、フィスカル情報を記憶する記憶部を備えるフィスカルプリンターであること、を特徴とする請求項1から3のいずれかに記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the information processing apparatus is a fiscal printer including a storage unit that stores fiscal information. 復号鍵を記憶する媒体記憶部、及び前記復号鍵でデジタル署名を復号する演算部を備える媒体と、前記媒体に接続可能な情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
制御プログラムを実行する制御部と、
前記制御プログラムと、前記制御プログラムに対応する前記デジタル署名とを記憶する記憶部と、を備え、
前記制御部は、前記記憶部が記憶する前記制御プログラムから第1ハッシュ値を算出し、前記媒体から前記制御プログラムに対応する前記デジタル署名を復号した第2ハッシュ値を取得し、前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御プログラムの実行を制限することを特徴とする情報処理システム。
An information processing system comprising: a medium storage unit that stores a decryption key; a medium that includes a calculation unit that decrypts a digital signature with the decryption key; and an information processing apparatus that can be connected to the medium.
The information processing apparatus includes:
A control unit for executing a control program;
A storage unit for storing the control program and the digital signature corresponding to the control program;
The control unit calculates a first hash value from the control program stored in the storage unit, acquires a second hash value obtained by decrypting the digital signature corresponding to the control program from the medium, and acquires the first hash An information processing system that compares a value with the second hash value and restricts execution of the control program if they do not match.
復号鍵を記憶する媒体記憶部、及び前記復号鍵でデジタル署名を復号する演算部を備える媒体と、前記媒体に接続可能な情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
制御プログラムを実行する制御部と、
前記制御部が実行する制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応する前記デジタル署名とを入力する入力部を備え、
前記制御部は、入力された前記更新用の制御プログラムから第3ハッシュ値を算出し、前記媒体から前記更新用の制御プログラムに対応する前記デジタル署名を復号した第4ハッシュ値を取得し、前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムへの更新を制限することを特徴とする情報処理システム。
An information processing system comprising: a medium storage unit that stores a decryption key; a medium that includes a calculation unit that decrypts a digital signature with the decryption key; and an information processing apparatus that can be connected to the medium.
The information processing apparatus includes:
A control unit for executing a control program;
An input unit that inputs an update control program for updating a control program executed by the control unit and the digital signature corresponding to the update control program;
The control unit calculates a third hash value from the input control program for update, acquires a fourth hash value obtained by decrypting the digital signature corresponding to the control program for update from the medium, and An information processing system that compares a third hash value and the fourth hash value, and restricts updating to the control program for updating if they do not match.
制御部が実行する制御プログラムと、前記制御プログラムに対応するデジタル署名とを記憶する記憶部から前記制御プログラムを読み出して、前記前記制御プログラムの第1ハッシュ値を算出するステップと、
復号鍵を記憶し、前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に、前記記憶部から読み出した前記デジタル署名を送信して、前記外部媒体から前記デジタル署名を復号した第2ハッシュ値を取得するステップと、
前記第1ハッシュ値と前記第2ハッシュ値とを比較し、一致しない場合に前記制御部による前記制御プログラムの実行を制限するステップと、
を備えることを特徴とする情報処理装置の制御方法。
Reading the control program from a storage unit storing a control program executed by the control unit and a digital signature corresponding to the control program, and calculating a first hash value of the control program;
A second key that stores the decryption key and transmits the digital signature read from the storage unit to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key, and decrypts the digital signature from the external medium; Obtaining a hash value;
Comparing the first hash value and the second hash value and restricting the execution of the control program by the control unit if they do not match;
An information processing apparatus control method comprising:
制御部が実行する制御プログラムを更新する更新用の制御プログラムと、前記更新用の制御プログラムに対応するデジタル署名とを入力するステップと、
入力された前記更新用の制御プログラムの第3ハッシュ値を算出するステップと、
復号鍵を記憶し、前記復号鍵で前記デジタル署名を復号する演算部を備える外部媒体に、入力された前記デジタル署名を送信して、前記外部媒体から前記デジタル署名を復号した第4ハッシュ値を取得するステップと、
前記第3ハッシュ値と前記第4ハッシュ値とを比較し、一致しない場合に前記更新用の制御プログラムによる前記制御プログラムの更新を制限するステップと、
を有することを特徴とする情報処理装置の制御方法。
A step of inputting an update control program for updating a control program executed by the control unit, and a digital signature corresponding to the update control program;
Calculating a third hash value of the inputted control program for updating;
A fourth hash value obtained by storing the decryption key and transmitting the input digital signature to an external medium including an arithmetic unit that decrypts the digital signature with the decryption key and decrypting the digital signature from the external medium. A step to obtain,
Comparing the third hash value and the fourth hash value, and restricting the update of the control program by the control program for update if they do not match;
A method for controlling an information processing apparatus, comprising:
JP2015155765A 2015-08-06 2015-08-06 Information processing apparatus, information processing system, and control method of information processing apparatus Pending JP2017033492A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015155765A JP2017033492A (en) 2015-08-06 2015-08-06 Information processing apparatus, information processing system, and control method of information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015155765A JP2017033492A (en) 2015-08-06 2015-08-06 Information processing apparatus, information processing system, and control method of information processing apparatus

Publications (1)

Publication Number Publication Date
JP2017033492A true JP2017033492A (en) 2017-02-09

Family

ID=57988241

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015155765A Pending JP2017033492A (en) 2015-08-06 2015-08-06 Information processing apparatus, information processing system, and control method of information processing apparatus

Country Status (1)

Country Link
JP (1) JP2017033492A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021064278A (en) * 2019-10-16 2021-04-22 キヤノン株式会社 Information processing apparatus, method for controlling the same, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021064278A (en) * 2019-10-16 2021-04-22 キヤノン株式会社 Information processing apparatus, method for controlling the same, and program
JP7316902B2 (en) 2019-10-16 2023-07-28 キヤノン株式会社 Information processing device, its control method, and program

Similar Documents

Publication Publication Date Title
JPH0632102B2 (en) IC card verification method
JP2008234217A (en) Information processor, method of protecting information, and image processor
JP5531521B2 (en) Document management system, document operation device, and program
JP2016146618A (en) Information processing device
JP2017033492A (en) Information processing apparatus, information processing system, and control method of information processing apparatus
JP5515402B2 (en) Payment terminal device, program, and payment system
JP2016170510A (en) Issuing machine, processor, medium, and processing system
JP6464816B2 (en) Payment terminal
JP2013084032A5 (en)
JP2011154513A (en) Computer program, update method for computer program, computer, and recording apparatus
JP2014115803A (en) Information processor, control method of information processor, and program
JP4601329B2 (en) Electronic authentication device primary issuing device, electronic authentication device issuing system, electronic authentication device secondary issuing device, electronic authentication device primary issuing method, electronic authentication device issuing method, and electronic authentication device secondary issuing method
JP2011123781A (en) Electronic apparatus and method of controlling the same
JP2017037508A (en) Information processor, and control method of information processor
BR102013029499A2 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING APPARATUS CONTROL METHOD AND STORAGE
US11902434B2 (en) Crum chip and smart card
JP5365239B2 (en) IC card issuance system
JP5574007B2 (en) Information processing apparatus and information protection method
JP4893410B2 (en) Terminal device
JP7257284B2 (en) Transaction support system and transaction support method
JP2014103435A (en) Information processing device, control method of information processing device, and program
BE1026135B1 (en) Method and device for protecting sensitive information on media processing devices
JP6100145B2 (en) Payment terminal device, update program
JP2014102534A (en) Information processing device, control method of information processing device, and program
JP5112123B2 (en) Portable electronic device and IC card