JP2019125147A - Control unit, and method and program for writing data - Google Patents

Control unit, and method and program for writing data Download PDF

Info

Publication number
JP2019125147A
JP2019125147A JP2018005042A JP2018005042A JP2019125147A JP 2019125147 A JP2019125147 A JP 2019125147A JP 2018005042 A JP2018005042 A JP 2018005042A JP 2018005042 A JP2018005042 A JP 2018005042A JP 2019125147 A JP2019125147 A JP 2019125147A
Authority
JP
Japan
Prior art keywords
data
execution area
chip
information
input
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.)
Granted
Application number
JP2018005042A
Other languages
Japanese (ja)
Other versions
JP7073733B2 (en
Inventor
矢野 義博
Yoshihiro Yano
義博 矢野
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co 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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2018005042A priority Critical patent/JP7073733B2/en
Publication of JP2019125147A publication Critical patent/JP2019125147A/en
Priority to JP2021187073A priority patent/JP7211472B2/en
Application granted granted Critical
Publication of JP7073733B2 publication Critical patent/JP7073733B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

To provide a control unit and the like that can securely store confidential information and execute processing using the confidential information in a high-speed manner.SOLUTION: Disclosed is a control unit 2, which is a control unit comprising an I/O interface 23, a first execution area 201 in which inputting/outputting information via the I/O interface 23 is available, and a second execution area 202, which is a virtual area with limited access from the first execution area 201, and that executes inputting/outputting information to/from the first execution area 201 via a hypervisor 203. The second execution area 202 is configured so that inputting/outputting information via the I/O interface 23 is unavailable, and is configured to retain prescribed confidential information, and execute processing using the confidential information in response to requests from the first execution area 201.SELECTED DRAWING: Figure 7

Description

本発明は、制御装置、データ書き込み方法及びプログラムに関する。   The present invention relates to a control device, a data writing method, and a program.

SIM(Subscriber Identity Module又はSubscriber Identification Module)等のIC(Integrated Circuit)チップに暗号鍵、PIN(Personal Identification Number)等の秘密情報を記憶させ、当該秘密情報を用いて、ICチップ内でデジタル署名、相互認証等に関わる演算処理を行わせる技術がある。例えば特許文献1では、ICチップを搭載したICカードであって、記憶されている公開鍵暗号方式の暗号鍵を自ら検証するICカードが開示されている。   A secret key such as an encryption key and a PIN (Personal Identification Number) is stored in an IC (Integrated Circuit) chip such as a SIM (Subscriber Identity Module or Subscriber Identification Module), and a digital signature is generated in the IC chip using the secret information. There is a technology for performing arithmetic processing related to mutual authentication and the like. For example, Patent Document 1 discloses an IC card on which an IC chip is mounted, and which verifies itself a stored encryption key of the public key cryptosystem.

SIM等のICチップでは、暗号鍵等の秘密情報を外部に出力せず、当該秘密情報を用いた演算をチップ内で行う。これにより、ICチップに記憶されている秘密情報の安全性を担保することとしている。   In the IC chip such as SIM, the secret information such as the encryption key is not output to the outside, and the calculation using the secret information is performed in the chip. In this way, the security of the secret information stored in the IC chip is secured.

特開2007−13342号公報Japanese Patent Application Publication No. 2007-13342

しかしながら、例えばICチップのような物理的モジュールで秘密情報を管理する場合、当該モジュールはISO7816等の規約に基づいて動作する必要があり、上記の演算、及び演算に必要なデータ交換の処理速度が、SoC(System on Chip)、システムLSI等と呼ばれる汎用的な演算モジュールと比較して低い。また、ICチップ等の物理的モジュールにデータを入力、又は当該モジュールからデータを出力するバスをハッキングされ、データの搾取、改竄等が行われる虞がある。   However, in the case of managing secret information in a physical module such as an IC chip, for example, the module needs to operate based on the protocol such as ISO 7816, and the processing speed of the above-mentioned operation and data exchange necessary for the operation is , SoC (System on Chip), low as compared with general-purpose operation modules called system LSI and so on. In addition, there is a possibility that a bus for inputting data to a physical module such as an IC chip or outputting data from the module may be hacked, and data may be exploited or tampered with.

一つの側面では、秘密情報を安全に保管し、かつ、秘密情報を用いた処理を高速度で実行することができる制御装置等を提供することを目的とする。   In one aspect, it is an object of the present invention to provide a control device or the like capable of safely storing secret information and performing processing using the secret information at high speed.

一つの側面に係る制御装置は、入出力インターフェイスと、該入出力インターフェイスを介して情報の入出力が可能な第1実行領域と、該第1実行領域からのアクセスが制限された仮想領域であって、ハイパーバイザを介して前記第1実行領域との間で情報の入出力を行う第2実行領域とを備える制御装置であって、前記第2実行領域は、前記入出力インターフェイスを介した情報の入出力が不可能に構成され、所定の秘密情報を保持し、前記第1実行領域からの要求に応じて、前記秘密情報を用いた処理を実行することを特徴とする。   The control device according to one aspect is an input / output interface, a first execution area capable of inputting / outputting information through the input / output interface, and a virtual area in which access from the first execution area is restricted. A second execution area for inputting and outputting information to and from the first execution area via a hypervisor, wherein the second execution area is information via the input / output interface Input / output is impossible, holds predetermined secret information, and executes processing using the secret information in response to a request from the first execution area.

一つの側面では、秘密情報を安全に保管し、かつ、秘密情報を用いた処理を高速度で実行することができる。   In one aspect, secret information can be securely stored and processing with the secret information can be performed at high speed.

チップ発行システムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of a chip | tip issuing system. サーバの構成例を示すブロック図である。It is a block diagram showing an example of composition of a server. チップの構成例を示すブロック図である。It is a block diagram showing an example of composition of a chip. 製品DBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of product DB. コマンドテーブルのレコードレイアウトの一例を示す説明図である。It is an explanatory view showing an example of a record layout of a command table. 変換テーブルのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of a conversion table. チップの構成例を示す機能ブロック図である。It is a functional block diagram showing an example of composition of a chip. チップに対するデータの書き込み工程を示す説明図である。It is explanatory drawing which shows the write-in process of the data with respect to a chip | tip. チップ発行後のデータの書き込み処理を説明するための説明図である。It is an explanatory view for explaining writing processing of data after chip issue. チップ発行段階におけるデータ書き込み処理の処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence of the data write-in process in a chip | tip issue stage. チップ発行後のデータ書き込み処理の処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the process sequence of the data write-in process after chip | tip issue.

以下、本発明をその実施の形態を示す図面に基づいて詳述する。
(実施の形態)
図1は、チップ発行システムの構成例を示す模式図である。本実施の形態では、種々のデバイスに搭載されるチップ2に対し、秘密情報を書き込むデータ書き込み方法について説明する。本システムは、チップ(制御装置)2へのデータ書き込みを指示する情報処理装置1を含む。
Hereinafter, the present invention will be described in detail based on the drawings showing the embodiments.
Embodiment
FIG. 1 is a schematic view showing a configuration example of a chip issuing system. In the present embodiment, a data writing method for writing secret information to a chip 2 mounted on various devices will be described. The present system includes an information processing apparatus 1 that instructs to write data to a chip (control device) 2.

情報処理装置1は、種々の情報処理、情報の送受信が可能な情報処理装置であり、例えばサーバ装置、パーソナルコンピュータ等である。本実施の形態で情報処理装置1はサーバ装置であるものとし、以下では簡潔のためサーバ1と読み替える。サーバ1は、不図示の発行装置に対してチップ2に書き込むべきデータを指示し、各チップ2にデータを書き込ませる。また、サーバ1はインターネット等のネットワークNに通信接続されており、チップ2が搭載されるデバイス(製品)を製造する製品メーカ、あるいはデバイスを使用するエンドユーザからの要求を受けて、ネットワークNを介してチップ2に対しデータを配信して書き込ませる遠隔操作を行う。   The information processing apparatus 1 is an information processing apparatus capable of various information processing and transmission / reception of information, and is, for example, a server apparatus, a personal computer, or the like. In the present embodiment, the information processing apparatus 1 is assumed to be a server apparatus, and hereinafter the server 1 will be read for simplicity. The server 1 instructs the issuing device (not shown) to write data to the chip 2 and causes the chip 2 to write data. The server 1 is communicably connected to a network N such as the Internet, and receives a request from a product maker that manufactures a device (product) on which the chip 2 is mounted, or an end user who uses the device. Remote control is performed to distribute and write data to the chip 2 via the interface.

チップ2は、種々のデバイスに搭載される制御装置であって、例えばSoC(System on Chip)のように、CPU(Central Processing Unit)等の演算処理装置、RAM(Random Access Memory)、ROM(Read Only Memory)等の記憶領域などをワンチップで搭載した集積回路である。なお、チップ2はSoCといった称呼のものに限定されず、SIM等のセキュリティチップとは異なり、デバイスの汎用的な処理を実行可能な制御装置であればよい。また、本実施の形態では、秘密情報を保持する制御装置がチップであるものとして説明するが、制御装置は集積回路である必要はなく、デバイス内に分散配置された半導体回路であってもよい。   The chip 2 is a control device mounted on various devices and is, for example, an arithmetic processing device such as a central processing unit (CPU), random access memory (RAM), and ROM (read only) like a SoC (system on chip). It is an integrated circuit in which a storage area such as Only Memory) is mounted on one chip. The chip 2 is not limited to a so-called SoC, and different from a security chip such as SIM, it may be a control device capable of executing general processing of the device. Further, in the present embodiment, although the control device holding the secret information is described as a chip, the control device does not have to be an integrated circuit and may be a semiconductor circuit distributed in the device. .

チップ2の記憶領域にはOS(オペレーティングシステム)、アプリケーションプログラム等のデータが記憶されており、当該OS、アプリケーションプログラムに従ってチップ2は動作する。また、チップ2の記憶領域には、所定の秘密情報が記憶されている。秘密情報は、例えば各チップ2に固有の固有情報(例えばチップ2の製造番号)、暗号演算に用いられる鍵情報(例えば公開鍵暗号方式の公開鍵又は秘密鍵、共通鍵暗号方式の共通鍵等)、個人認証等に用いられる認証情報(例えばPINコード)などである。チップ2には、サーバ1からの指示に従って各種の秘密情報が書き込まれる。   The storage area of the chip 2 stores data such as an operating system (OS) and an application program, and the chip 2 operates according to the OS and the application program. Further, in the storage area of the chip 2, predetermined secret information is stored. The secret information is, for example, unique information unique to each chip 2 (for example, the serial number of the chip 2), key information used for cryptographic computation (for example, public key or public key of public key cryptosystem, common key of common key cryptosystem, etc. And authentication information (for example, a PIN code) used for personal authentication and the like. Various kinds of secret information are written in the chip 2 in accordance with an instruction from the server 1.

本システムの詳細について説明する前に、図1で例示するデバイスの製造工程の概略について説明する。本実施の形態では、デバイス、及び該デバイスに搭載されるチップ2の製造を、チップ2を製造するチップ製造者と、チップ2にデータを書き込むチップ発行者と、チップ2をデバイスに搭載してユーザに出荷する製品メーカとの三者が担うものとして説明する。   Before describing the details of this system, an outline of the manufacturing process of the device illustrated in FIG. 1 will be described. In this embodiment, the manufacture of the device and the chip 2 mounted on the device includes a chip manufacturer who manufactures the chip 2, a chip issuer who writes data to the chip 2, and the chip 2 mounted on the device. Description will be made assuming that the third party with a product maker that ships to users is responsible.

チップ製造者は、半導体部品の製造業者であり、チップ2を製造して最低限必要な初期設定を行う。当該初期設定は、例えばチップ2を起動するために必要な基本OSのインストール、各チップ2を一意に識別可能な固有情報(例えば製造番号)の書き込み等である。製造元では、最低限必要な当該データをチップ2に書き込み、チップ発行者に出荷する。   The chip manufacturer is a manufacturer of semiconductor components, and manufactures the chip 2 to perform the minimum necessary initialization. The initial setting is, for example, installation of a basic OS necessary for activating the chip 2, writing of unique information (for example, serial number) capable of uniquely identifying each chip 2, or the like. The manufacturer writes the minimum necessary data to the chip 2 and ships it to the chip issuer.

チップ発行者は、製品メーカからの受注を受けてチップ2に種々のデータを書き込んで発行する発行業者である。製品メーカから受注を受ける際、例えばチップ2にインストールするアプリケーションプログラム、チップ2に書き込む秘密情報等の指定を受ける。例えばサーバ1は、各製品メーカから指定された各種データをデータベース上に格納し、当該データベースから、各チップ2に書き込むべきデータを読み出して書き込みを指示する。チップ発行者にて各種データが書き込まれたチップ2は、各製品メーカに出荷される。   The chip issuer is an issuer that writes and issues various data in the chip 2 upon receiving an order from a product maker. When an order is received from a product maker, for example, designation of an application program to be installed on the chip 2 and confidential information to be written on the chip 2 is received. For example, the server 1 stores various data designated by each product maker on a database, reads data to be written to each chip 2 from the database, and instructs writing. The chip 2 in which various data are written by the chip issuer is shipped to each product maker.

また、サーバ1はチップ2の出荷後(発行後)であっても、製品メーカ、又はエンドユーザから依頼を受けて、ネットワークNを介して遠隔でチップ2にデータを書き込む処理を行う。当該処理について詳しくは後述する。   In addition, even after the chip 2 has been shipped (issued), the server 1 receives the request from the product maker or the end user and performs processing to write data in the chip 2 remotely via the network N. Details of the process will be described later.

製品メーカは、チップ発行者から納品されたチップ2をデバイスに搭載してユーザに出荷する製造業者である。製品メーカが製造するデバイスは、種々の電子機器であり得る。例えば図1に示すスマートフォン、車両内のECU(Electronic Control Unit)、家電機器等のほか、パーソナルコンピュータ、インフラ設備装置、ウェアラブルデバイス等であり得る。製品メーカが製造するデバイスは、チップ2を搭載した電子機器であればよく、その内容は特に限定されない。   The product maker is a manufacturer which mounts the chip 2 delivered from the chip issuer on the device and ships it to the user. Devices manufactured by a product maker may be various electronic devices. For example, in addition to a smartphone shown in FIG. 1, an ECU (Electronic Control Unit) in a vehicle, a home appliance, etc., a personal computer, an infrastructure equipment device, a wearable device, etc. may be used. The device manufactured by the product manufacturer may be any electronic device on which the chip 2 is mounted, and the content thereof is not particularly limited.

なお、例えば図1に示すように、各デバイスはネットワークNに接続され、所謂IoT(Internet of Things)に係るモノとして機能させてよい。   For example, as shown in FIG. 1, each device may be connected to the network N and function as a thing related to so-called IoT (Internet of Things).

図2は、サーバ1の構成例を示すブロック図である。サーバ1は、制御部11、主記憶部12、通信部13、及び補助記憶部14を備える。
制御部11は、一又は複数のCPU、MPU(Micro-Processing Unit)、GPU(Graphics Processing Unit)等の演算処理装置を有し、補助記憶部14に記憶されたプログラムPを読み出して実行することにより、サーバ1に係る種々の情報処理、制御処理等を行う。主記憶部12は、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、フラッシュメモリ等の一時記憶領域であり、制御部11が演算処理を実行するために必要なデータを一時的に記憶する。通信部13は、通信に関する処理を行うための処理回路等を含み、他の装置と情報の送受信を行う。
FIG. 2 is a block diagram showing a configuration example of the server 1. The server 1 includes a control unit 11, a main storage unit 12, a communication unit 13, and an auxiliary storage unit 14.
The control unit 11 includes an arithmetic processing unit such as one or more CPUs, a micro-processing unit (MPU), and a graphics processing unit (GPU), and reads and executes the program P stored in the auxiliary storage unit 14. Thus, various information processing, control processing and the like related to the server 1 are performed. The main storage unit 12 is a temporary storage area such as a static random access memory (SRAM), a dynamic random access memory (DRAM), or a flash memory, and temporarily stores data necessary for the control unit 11 to execute arithmetic processing. Remember. The communication unit 13 includes a processing circuit and the like for performing processing related to communication, and transmits and receives information to and from other devices.

補助記憶部14は大容量メモリ、ハードディスク等であり、制御部11が処理を実行するために必要なプログラムP、その他のデータを記憶している。また、補助記憶部14は、製品DB141、コマンドテーブル142、及び変換テーブル143を記憶している。製品DB141は、製品メーカから受注した各製品(チップ2)の受注データを記憶するデータベースである。コマンドテーブル142は、サーバ1とチップ2との間でデータの送受信を行う際に用いるコマンドを格納したテーブルである。変換テーブル143は、サーバ1とチップ2との間でデータの送受信を行う際に、送受信するデータを変換する変換規則を格納したテーブルである。   The auxiliary storage unit 14 is a large capacity memory, a hard disk or the like, and stores a program P necessary for the control unit 11 to execute processing and other data. The auxiliary storage unit 14 also stores a product DB 141, a command table 142, and a conversion table 143. The product DB 141 is a database that stores order data of each product (chip 2) received from a product maker. The command table 142 is a table storing commands used when transmitting and receiving data between the server 1 and the chip 2. The conversion table 143 is a table storing conversion rules for converting data to be transmitted and received when transmitting and receiving data between the server 1 and the chip 2.

なお、補助記憶部14はサーバ1に接続された外部記憶装置であってもよい。また、サーバ1は複数のコンピュータからなるマルチコンピュータであってもよく、ソフトウェアによって仮想的に構築された仮想マシンであってもよい。   The auxiliary storage unit 14 may be an external storage device connected to the server 1. Further, the server 1 may be a multi-computer comprising a plurality of computers, or may be a virtual machine virtually constructed by software.

また、本実施の形態においてサーバ1は上記の構成に限られず、例えば可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。   Furthermore, in the present embodiment, the server 1 is not limited to the above configuration, and may include, for example, a reading unit that reads information stored in a portable storage medium.

図3は、チップ2の構成例を示すブロック図である。チップ2は、CPU21、RAM22、入出力I/F23、不揮発性メモリ24を含む。
CPU21は、種々の演算処理を実行する演算処理装置であり、不揮発性メモリ24に記憶されている各種プログラム又はデータを読み出して演算処理を実行する。RAM22は一時記憶領域であり、CPU21が演算処理を実行するために必要なデータを一時的に記憶する。入出力I/F23は、チップ2外部との間で情報の入出力を行うためのインターフェイスである。
FIG. 3 is a block diagram showing a configuration example of the chip 2. The chip 2 includes a CPU 21, a RAM 22, an input / output I / F 23, and a non-volatile memory 24.
The CPU 21 is an arithmetic processing unit that executes various arithmetic processes, reads out various programs or data stored in the non-volatile memory 24, and executes arithmetic processes. The RAM 22 is a temporary storage area, and temporarily stores data necessary for the CPU 21 to execute arithmetic processing. The input / output I / F 23 is an interface for inputting and outputting information with the outside of the chip 2.

不揮発性メモリ24は、例えばROM、EEPROM(Electrically Erasable Programmable ROM)等を含み、種々のデータを記憶している。具体的には、不揮発性メモリ24は、リッチOS241、当該リッチOS241の環境下で動作するアプリケーション242、セキュアOS243、当該セキュアOS243の環境下で動作するアプリケーション244、固有情報245、鍵情報246、認証情報247、コマンドテーブル142、及び変換テーブル143を記憶している。   The nonvolatile memory 24 includes, for example, a ROM, an EEPROM (Electrically Erasable Programmable ROM), etc., and stores various data. Specifically, the non-volatile memory 24 includes a rich OS 241, an application 242 operating under the rich OS 241 environment, a secure OS 243, an application 244 operating under the secure OS 243 environment, unique information 245, key information 246, and authentication. Information 247, a command table 142, and a conversion table 143 are stored.

リッチOS241、アプリケーション242、セキュアOS243、アプリケーション244はそれぞれ、チップ2内部に構築される別々の仮想領域において動作するプログラムである。具体的には、CPU21はチップ2内部に、通常実行処理を実行するリッチ領域(第1実行領域)と、当該リッチ領域よりもセキュアな仮想領域であるセキュア領域(第2実行領域)とを構築し、各仮想領域において各種プログラムを実行する。CPU21は、リッチ領域においてリッチOS241及びアプリケーション242を実行し、セキュア領域においてセキュアOS243及びアプリケーション244を実行する。各仮想領域について、詳しくは後述する。   The rich OS 241, the application 242, the secure OS 243, and the application 244 are programs operating in separate virtual areas built in the chip 2. Specifically, the CPU 21 constructs, within the chip 2, a rich area (first execution area) for executing normal execution processing and a secure area (second execution area) which is a virtual area that is more secure than the rich area. And execute various programs in each virtual area. The CPU 21 executes the rich OS 241 and the application 242 in the rich area, and executes the secure OS 243 and the application 244 in the secure area. The details of each virtual area will be described later.

固有情報245は、チップ2に固有の情報であり、上述の如く、例えばチップ2の製造番号等である。なお、後述するように、サーバ1は製品メーカ等からの要望に応じて固有情報245を書き換え、所望の情報を固有情報245として不揮発性メモリ24に書き込む。当該処理については後述する。   The unique information 245 is information unique to the chip 2 and is, for example, the serial number of the chip 2 as described above. As described later, the server 1 rewrites the unique information 245 in response to a request from a product maker or the like, and writes desired information as the unique information 245 in the non-volatile memory 24. The said process is mentioned later.

鍵情報246は、CPU21が実行する暗号演算に用いられる暗号鍵であり、例えば公開鍵暗号方式の公開鍵又は秘密鍵、共通鍵暗号方式の共通鍵等の鍵値である。   The key information 246 is an encryption key used for an encryption operation performed by the CPU 21, and is, for example, a key value such as a public key or a secret key of a public key cryptosystem or a common key of a common key cryptosystem.

認証情報247は、例えばユーザ認証等に用いられる認証用のデータであり、個々のユーザ向けにパーソナライズされた情報である。認証情報247は、例えばパスワード等のPINコード、生体認証を行うための生体情報などである。   The authentication information 247 is, for example, data for authentication used for user authentication and the like, and is information personalized for individual users. The authentication information 247 is, for example, a PIN code such as a password, or biometric information for performing biometric authentication.

コマンドテーブル142、変換テーブル143は、サーバ1が保持するコマンドテーブル142、変換テーブル143と共通のテーブルであり、サーバ1との間でデータの送受信を行う際に用いるテーブルである。   The command table 142 and the conversion table 143 are common to the command table 142 and the conversion table 143 held by the server 1, and are tables used when transmitting and receiving data with the server 1.

図4は、製品DB141のレコードレイアウトの一例を示す説明図である。製品DB141は、チップID列、発注元列、製品列、書き込みデータ列を含む。チップID列は、各チップ2を識別するためのIDを記憶している。発注元列は、チップIDと対応付けて、各チップ2へのデータ書き込みを発注した製品メーカの情報が記憶されている。製品列は、チップIDと対応付けて、チップ2が搭載される製品(デバイス)に関する情報を記憶している。書き込みデータ列は、チップIDと対応付けて、チップ2に書き込むデータを記憶している。チップ2に書き込むデータは、上述の如く、例えばアプリケーション242、244、固有情報245、鍵情報246等であるが、これらに限定されるものではない。   FIG. 4 is an explanatory view showing an example of the record layout of the product DB 141. As shown in FIG. The product DB 141 includes a chip ID column, an order source column, a product column, and a write data column. The chip ID column stores an ID for identifying each chip 2. The ordering source column stores the information of the product maker who has ordered data writing to each chip 2 in association with the chip ID. The product row stores information on the product (device) on which the chip 2 is mounted in association with the chip ID. The write data string stores data to be written to the chip 2 in association with the chip ID. The data to be written to the chip 2 is, for example, the applications 242 and 244, the unique information 245, the key information 246 and the like as described above, but is not limited to these.

図5は、コマンドテーブル142のレコードレイアウトの一例を示す説明図である。コマンドテーブル142は、コマンドコード列、コマンド内容列を含む。コマンドコード列は、サーバ1とチップ2との間でデータの送受信を行う際の各コマンドを表すコードが記憶されている。コマンド内容列は、コマンドコードと対応付けて、各コマンドの内容を記憶している。   FIG. 5 is an explanatory view showing an example of the record layout of the command table 142. As shown in FIG. The command table 142 includes a command code sequence and a command content sequence. In the command code string, codes representing commands for transmitting and receiving data between the server 1 and the chip 2 are stored. The command content sequence stores the content of each command in association with the command code.

図6は、変換テーブル143のレコードレイアウトの一例を示す説明図である。変換テーブル143は複数のコードを羅列したコード表である。例えば図6に示すように、変換テーブル143では、「00」から「FF」までの、十六進数表記の二桁のコード(文字列)が羅列されている。変換テーブル143において、奇数行のコードと偶数列のコードとが対応しており、対応するコードを相互に変換するよう規定する。例えば第1行目の第1列目のコード「00」と、第2行目の第1列目のコード「5B」とが対応しており、コード「00」が変換テーブル143に入力された場合、コード「5B」に変換して出力する。   FIG. 6 is an explanatory view showing an example of the record layout of the conversion table 143. As shown in FIG. The conversion table 143 is a code table in which a plurality of codes are listed. For example, as shown in FIG. 6, in the conversion table 143, two-digit codes (character strings) in hexadecimal notation from "00" to "FF" are listed. In the conversion table 143, the codes in the odd-numbered rows correspond to the codes in the even-numbered columns, and it is defined that the corresponding codes are mutually converted. For example, the code "00" in the first column of the first line corresponds to the code "5B" in the first column of the second line, and the code "00" is input to the conversion table 143. In the case, it converts to code "5B" and outputs it.

図7は、チップ2の構成例を示す機能ブロック図である。図7に基づき、チップ2内部に構築されるリッチ領域201と、セキュア領域202とについて説明する。
チップ2は、CPU21、RAM22等のハードウェアリソースを仮想化基盤として、当該基盤上に2つの仮想領域を構築する。一の仮想領域はリッチ領域201であり、一の仮想領域はセキュア領域202である。
FIG. 7 is a functional block diagram showing a configuration example of the chip 2. Based on FIG. 7, the rich area 201 and the secure area 202 built in the chip 2 will be described.
The chip 2 constructs two virtual areas on the basis of hardware resources such as the CPU 21 and the RAM 22 as a virtualization basis. One virtual area is the rich area 201, and one virtual area is the secure area 202.

リッチ領域201は、チップ2が搭載されるデバイスの基本的、汎用的な処理を実行する通常実行環境であり、セキュア領域202へのアクセスが制限される以外に、特段の機能制約がない実行領域である。例えばチップ2がスマートフォンに搭載される場合、CPU21はリッチ領域201において、通話、画像表示等に係る制御処理を実行する。リッチ領域201にはリッチOS241、アプリケーション242が格納され、CPU21は各プログラムを実行することで汎用的な処理を行う。   The rich area 201 is a normal execution environment that executes basic, general-purpose processing of the device on which the chip 2 is mounted, and is an execution area that has no special functional restrictions other than access to the secure area 202 being restricted. It is. For example, when the chip 2 is mounted on a smartphone, the CPU 21 executes control processing related to a call, image display, and the like in the rich area 201. A rich OS 241 and an application 242 are stored in the rich area 201, and the CPU 21 executes general programs by executing each program.

図7に示すように、リッチ領域201は入出力I/F23を介して外部と情報の入出力可能に構成されている。例えばCPU21は、ユーザによる操作入力内容を入出力I/F23を介して取得し、操作入力に対する応答(例えば画面操作に対する応答)を返す。   As shown in FIG. 7, the rich area 201 is configured to be able to input / output information with the outside through the input / output I / F 23. For example, the CPU 21 acquires the content of the operation input by the user via the input / output I / F 23, and returns a response to the operation input (for example, a response to the screen operation).

セキュア領域202は、リッチ領域201よりもセキュアな実行環境であり、リッチ領域201からのアクセスが制限された仮想領域である。例えば図7に示すように、リッチ領域201からセキュア領域202への直接的なアクセスは禁止されており、リッチ領域201からセキュア領域202にアクセスするためには、ソフトウェア上実現されるハイパーバイザ203を経由してアクセスしなければならない。   The secure area 202 is a more secure execution environment than the rich area 201, and is a virtual area in which access from the rich area 201 is restricted. For example, as shown in FIG. 7, direct access from the rich area 201 to the secure area 202 is prohibited, and in order to access the secure area 202 from the rich area 201, the hypervisor 203 implemented on software is used. Must be accessed via.

なお、本実施の形態ではチップ2が2つの仮想領域を有するものとして説明するが、チップ2は複数の仮想領域を有していればよく、当該仮想領域は3つ以上であってもよい。   Although the chip 2 is described as having two virtual areas in the present embodiment, the chip 2 may have a plurality of virtual areas, and the number of virtual areas may be three or more.

セキュア領域202はリッチ領域201からのアクセスが制限されると共に、実行可能な処理も制限されている。具体的には、CPU21はセキュア領域202において、セキュリティ上重要な処理を実行する。例えば図7に示すように、セキュア領域202にはセキュアOS243、アプリケーション244等のほか、秘密情報である固有情報245、鍵情報246、認証情報247等を格納してある。CPU21はセキュア領域202において、当該秘密情報を用いた処理を行う。例えばCPU21は、セキュア領域202において鍵情報246を用いた暗号演算を行い、暗号化したデータをリッチ領域201に出力する。また、例えばCPU21は、リッチ領域201からの要求に応じ、セキュア領域202において認証情報247を用いた個人認証を行う。   In the secure area 202, access from the rich area 201 is limited, and executable processing is also limited. Specifically, the CPU 21 executes processing important for security in the secure area 202. For example, as shown in FIG. 7, in the secure area 202, in addition to the secure OS 243 and the application 244, unique information 245 which is secret information, key information 246, authentication information 247 and the like are stored. The CPU 21 performs processing using the secret information in the secure area 202. For example, the CPU 21 performs cryptographic operation using the key information 246 in the secure area 202, and outputs the encrypted data to the rich area 201. Further, for example, in response to a request from the rich area 201, the CPU 21 performs personal authentication using the authentication information 247 in the secure area 202.

また、セキュア領域202にはコマンドテーブル142及び変換テーブル143が格納されている。チップ2がサーバ1との間でデータの送受信を行う場合、CPU21はセキュア領域202において、各テーブルを用いて送信データの生成、及び受信データの解析を行う。   In the secure area 202, a command table 142 and a conversion table 143 are stored. When the chip 2 transmits and receives data to and from the server 1, the CPU 21 generates transmission data and analyzes received data in the secure area 202 using each table.

本実施の形態においてセキュア領域202は、入出力I/F23を介したチップ2外部との間の直接的な通信(情報の入出力)が不可能に構成されている。例えば図7に示すように、ハイパーバイザ203がセキュア領域202と入出力I/F23との間の接続を遮断し、セキュア領域202とチップ2外部との間の通信を禁止するよう設定してある。チップ2外部からセキュア領域202に情報を入力し、セキュア領域202から情報を取得するためには、リッチ領域201、ハイパーバイザ203を経由しなければならない。   In the present embodiment, the secure area 202 is configured such that direct communication (input / output of information) with the outside of the chip 2 via the input / output I / F 23 is impossible. For example, as shown in FIG. 7, the hypervisor 203 is set to block the connection between the secure area 202 and the input / output I / F 23 and prohibit communication between the secure area 202 and the outside of the chip 2. . In order to input information to the secure area 202 from the outside of the chip 2 and acquire information from the secure area 202, it is necessary to go through the rich area 201 and the hypervisor 203.

セキュア領域202は、暗号演算等のセキュリティ上の処理を、ハイパーバイザ203を介してリッチ領域201から要求を受け付けた場合のみ実行する。セキュア領域202は、当該セキュリティ処理の処理結果(例えば認証結果、暗号化したデータ等)をリッチ領域201に出力し、リッチ領域201を介してチップ2外部へと出力する。   The secure area 202 executes security processing such as cryptographic operation only when a request is received from the rich area 201 via the hypervisor 203. The secure area 202 outputs the processing result of the security process (for example, an authentication result, encrypted data, etc.) to the rich area 201, and outputs it to the outside of the chip 2 through the rich area 201.

上述の如く、チップ2はリッチ領域201とセキュア領域202とを有し、セキュア領域202に秘密情報を保持する。セキュア領域202は入出力I/F23を介したチップ2外部との間の通信が不可能に構成され、ハイパーバイザ203を介してリッチ領域201から要求を受けた場合のみ、秘密情報を用いた種々の処理を実行する。これにより、チップ2は秘密情報を安全に保管することができる。   As described above, the chip 2 has the rich area 201 and the secure area 202, and holds the secret information in the secure area 202. The secure area 202 is configured such that communication with the outside of the chip 2 through the input / output I / F 23 is not possible, and various types of use of secret information are made only when a request is received from the rich area 201 through the hypervisor 203. Execute the process of Thus, the chip 2 can securely store the secret information.

また、チップ2は、ICカードに搭載されるICチップのような物理的モジュールではなく、チップ内のセキュアなソフトウェアモジュールに秘密情報を保持し、演算を行う。これにより、秘密情報に基づく演算、及び当該演算に関連するデータ交換がCPUのバスレベルで実行可能となり、物理的モジュールを実装する場合と比較して、処理速度を高めることができる。また、ICチップ等の物理的モジュールでは、当該モジュールに繋がるバスをハッキングされ、データを搾取、又は悪意ある情報を入力される虞がある。しかし、上記のようにソフトウェアモジュールとして実装した場合、ハッキングに対する耐性を高めることができる。これにより、物理的モジュールを実装する場合と比較して安全性を高めることができる。   Further, the chip 2 is not a physical module such as an IC chip mounted on an IC card, but holds secret information in a secure software module in the chip to perform calculation. As a result, the operation based on the secret information and the data exchange related to the operation can be executed at the bus level of the CPU, and the processing speed can be increased as compared with the case of mounting the physical module. In addition, in a physical module such as an IC chip, there is a risk that a bus connected to the module may be hacked and data may be extracted or malicious information may be input. However, when implemented as a software module as described above, the resistance against hacking can be enhanced. This can enhance security as compared to the case of implementing a physical module.

図8は、チップ2に対するデータの書き込み工程を示す説明図である。図8では、チップ2にOS、アプリケーション、秘密情報等の各種データが書き込まれる工程を、概念的に図示している。
図8では、チップ製造者、チップ発行者、及び製品メーカそれぞれの下にチップ2がある状況で、どのデータが書き込まれるかを概念的に図示している。
FIG. 8 is an explanatory view showing a process of writing data to the chip 2. FIG. 8 conceptually illustrates a process in which various data such as an OS, an application, and secret information are written to the chip 2.
FIG. 8 conceptually illustrates which data is written in a situation where the chip 2 exists under each of the chip manufacturer, the chip issuer, and the product maker.

まずチップ製造者は、チップ2を動作させるために最低限必要なOS(リッチOS241及びセキュアOS243)と、チップ2の製造番号等である固有情報245とを書き込む。   First, the chip manufacturer writes the minimum necessary OS (rich OS 241 and secure OS 243) for operating the chip 2 and the unique information 245 such as the serial number of the chip 2.

次にチップ発行者は、製品メーカからの受注に従い、製品に応じてカスタマイズされた動作を行うよう、チップ2に各種データを書き込む。例えばサーバ1は製品DB141を参照して、各製品メーカから指定されたデータを、製造ラインに載せられた各チップ2に順次書き込んでいく。例えばサーバ1は、アプリケーション242、244を書き込むと共に、暗号演算に用いる鍵情報246を書き込む。   Next, the chip issuer writes various data in the chip 2 so as to perform the customized operation according to the product according to the order received from the product maker. For example, the server 1 refers to the product DB 141 and sequentially writes data designated by each product maker in each chip 2 placed on the manufacturing line. For example, the server 1 writes the applications 242 and 244 and also writes the key information 246 used for the cryptographic operation.

この場合にサーバ1は、製品メーカから要望があった場合、チップ2の製造元で付された固有情報245を書き換える。   In this case, the server 1 rewrites the unique information 245 attached by the maker of the chip 2 when requested by the product maker.

製造元で書き込まれた固有情報245は、例えばチップ2の製造番号であり、チップ製造者が各チップ2を一意に識別可能なよう付したデータである。しかしながら、当該データ(番号)はチップ2の製造元で決めた値であり、必ずしも製品メーカ、又はエンドユーザにとって使い勝手の良い値ではない。例えばチップ2が搭載される製品がスマートフォン等の可搬型媒体と仮定した場合、当該製品を、チップ2に記憶されたデータに基づき認証を行う社員証として機能させ、ICカードのように用いたい場合がある。この場合、ユーザ(企業等)は社員番号と製造番号とを紐付けて管理し、チップ2から製造番号を読み取って社員番号を呼び出し、照合を行うという二段階の処理が必要となる。これにより、管理コストが増大する。   The unique information 245 written by the manufacturer is, for example, the serial number of the chip 2 and is data attached so that the chip manufacturer can uniquely identify each chip 2. However, the data (number) is a value determined by the manufacturer of the chip 2 and is not necessarily a value convenient for the product manufacturer or the end user. For example, assuming that the product on which the chip 2 is mounted is a portable medium such as a smartphone, the product functions as an employee ID card that performs authentication based on the data stored in the chip 2 and wants to use it as an IC card. There is. In this case, a user (company or the like) associates and manages the employee number and the serial number, reads the serial number from the chip 2, calls the employee number, and performs a two-step process of collating. This increases management costs.

そこで、製品メーカ、又はエンドユーザによっては、固有情報245自体を所望の値に書き換えたいというニーズがある。そこでサーバ1は、製品メーカから書き換えるべき固有情報245の値(例えば社員番号)を受け付け、当該値に固有情報245を書き換える。これにより、製品メーカやエンドユーザの利便性を高めることができる。   Therefore, depending on the product manufacturer or the end user, there is a need to rewrite the specific information 245 itself to a desired value. Therefore, the server 1 receives a value (for example, an employee number) of the unique information 245 to be rewritten from the product maker, and rewrites the unique information 245 with the value. This can enhance the convenience of the product maker and the end user.

また、サーバ1は必要に応じて、秘密情報の一部又は全部を書き換え禁止に設定する。例えばサーバ1は、固有情報245を書き換え禁止に設定する場合、固有情報245の書き換えを禁止する旨のフラグをチップ2に書き込み、セキュア領域202に保持させる。セキュア領域202はリッチ領域201から固有情報245の書き換えを要求された場合、書き換えを拒否する。これにより、悪意ある第三者による秘密情報の書き換えを防止することができる。   In addition, the server 1 sets a part or all of the secret information as the rewrite prohibition as necessary. For example, when the server 1 sets the unique information 245 to the rewrite prohibition, the server 1 writes a flag to the effect that the rewrite of the unique information 245 is prohibited to the chip 2 and causes the secure area 202 to hold the flag. When the secure area 202 is requested to rewrite the unique information 245 from the rich area 201, the secure area 202 rejects the rewrite. This can prevent the malicious third party from rewriting the secret information.

なお、どの秘密情報を書き換え禁止に設定するかは設計事項であり、例えば鍵情報246を書き換え禁止に設定してもよい。また、どの秘密情報を書き換え禁止に設定するか、サーバ1は製品メーカ等から指定を受け付けるようにしてもよい。   Note that which secret information is set to prohibit rewriting is a design matter, and for example, the key information 246 may be set to prohibit rewriting. In addition, the server 1 may receive a specification from a product maker or the like as to which secret information is set to prohibit rewriting.

上述のように、チップ発行者において各種データが書き込まれたチップ2は、製品メーカに出荷される。製品メーカではリーダ/ライタ機能を持つ所定の端末装置4を用いて、認証情報がチップ2に書き込まれる。製品メーカで書き込まれる認証情報は、例えば製品に初期設定されるパスワード等である。パスワードの初期設定が行われたチップ2は各種製品に組み込まれ、各製品がユーザの下に出荷される。ユーザは自らパスワードの変更等を行って認証情報を書き換え、個々に使用する。   As described above, the chip 2 in which various data are written by the chip issuer is shipped to the product maker. The product manufacturer writes the authentication information to the chip 2 using a predetermined terminal device 4 having a reader / writer function. The authentication information written by the product maker is, for example, a password or the like initially set for the product. The chip 2 in which the password has been set is incorporated into various products, and each product is shipped to the user. The user changes the password by himself, rewrites the authentication information, and uses them individually.

本実施の形態でサーバ1は、チップ発行者の製造ラインでのデータ書き込みを指示するだけでなく、ネットワークNを介して通信を行い、製品メーカ等からの要望を受けて、チップ2の発行後もデータの書き込みを遠隔で行う。   In this embodiment, the server 1 not only instructs the chip issuer to write data on the production line but also communicates via the network N, and after receiving a request from a product maker etc., after issuing the chip 2 Even write data remotely.

ここでは一例として、チップ発行者からチップ2が発行され、製品メーカの工場へ納品されたチップ2に対し、遠隔でデータを書き込む場合を想定して説明を行う。例えば製品メーカによっては、チップ2内のアプリケーション242、244を自社向けによりカスタマイズして更新したいという要望がある。また、図8では簡潔のため一の製品メーカしか図示していないが、チップ2を搭載した部品(例えば車両ECU)を製造する部品メーカと、各機器を搭載した全体製品(例えば車両)を製造するメーカとが存在する場合がある。この場合に、全体製品を製造するメーカは、各部品に搭載されたチップ2の固有情報245を自社の識別番号に統一したい場合などがあり得る。   Here, as an example, the description will be made on the assumption that the chip 2 is issued by the chip issuer and data is remotely written to the chip 2 delivered to the factory of the product maker. For example, depending on the product manufacturer, there is a desire to customize and update the applications 242 and 244 in the chip 2 for their own use. Further, although only one product maker is illustrated in FIG. 8 for the sake of simplicity, a part maker that manufactures a part (for example, a vehicle ECU) on which the chip 2 is mounted and an entire product (for example, a vehicle) on which each device is mounted is manufactured. There may be a maker that In this case, a maker who manufactures the whole product may want to unify the unique information 245 of the chip 2 mounted on each part to the company's identification number.

このような場合にサーバ1は、製品メーカから要望されたデータをチップ2に配信し、不揮発性メモリ24に書き込ませる。例えば図9に示す端末装置4がネットワークNに接続され、端末装置4を介してチップ2はサーバ1と通信を行い、所望のデータを取得する。   In such a case, the server 1 distributes data requested by the product maker to the chip 2 and writes the data to the non-volatile memory 24. For example, the terminal device 4 shown in FIG. 9 is connected to the network N, and the chip 2 communicates with the server 1 via the terminal device 4 to acquire desired data.

しかし、チップ2へのデータ書き込みを無条件に可能とした場合、第三者によって不正にデータが書き込まれる虞がある。そこで本実施の形態では、サーバ1とチップ2との間で認証が成功したことを条件に、データの書き込みを許可する。   However, if data writing to the chip 2 is unconditionally enabled, there is a possibility that data may be illegally written by a third party. Therefore, in the present embodiment, writing of data is permitted on the condition that authentication is successful between the server 1 and the chip 2.

また、サーバ1からチップ2にネットワークNを介してデータを配信するため、通信路上で第三者にデータを盗聴、搾取される虞がある。そこで本実施の形態では、サーバ1がデータを暗号化した上で配信すると共に、暗号化されたデータをチップ2が元に復元し、復元後のデータをセキュア領域202に格納して書き込みを行う。   Further, since data is distributed from the server 1 to the chip 2 via the network N, there is a possibility that the data may be intercepted and exploited by a third party on the communication path. Therefore, in the present embodiment, the server 1 encrypts and distributes data, and the chip 2 restores the encrypted data to the original, and stores the data after restoration in the secure area 202 and writes the data. .

具体的には、サーバ1及びチップ2はコマンドテーブル142及び変換テーブル143を用いたデータ交換を行い、上記の認証及び暗号化を行う。   Specifically, the server 1 and the chip 2 exchange data using the command table 142 and the conversion table 143, and perform the above authentication and encryption.

図9は、チップ2発行後のデータの書き込み処理を説明するための説明図である。図9に基づき、上述の遠隔制御によるデータ書き込みについて説明する。
例えば製品メーカの作業者が端末装置4を操作し、チップ2に対して、秘密情報の書き換えを命令する所定の情報を入力する。当該情報は、リッチ領域201を介してセキュア領域202に入力される。チップ2はセキュア領域202において、入力された情報に従い、図9右上に示す送信コードを生成してリッチ領域201に出力する。
FIG. 9 is an explanatory diagram for explaining the process of writing data after the chip 2 is issued. Based on FIG. 9, the above-mentioned data writing by remote control will be described.
For example, a worker of a product manufacturer operates the terminal device 4 and inputs predetermined information for instructing the rewriting of the secret information to the chip 2. The information is input to the secure area 202 via the rich area 201. The chip 2 generates a transmission code shown in the upper right of FIG. 9 in the secure area 202 according to the input information and outputs the transmission code to the rich area 201.

当該送信コードは、命令内容に対応するコマンドコードと、書き込むべきデータ(以下、「書き込みデータ」と呼ぶ)を指定するコードとを含むデータコードである。図9では、先頭の「00」で示すコマンドコードに、書き込みデータを指定するコードが連結されている。上述の如く、コマンドコードはコマンドテーブル142において規定されている。チップ2はコマンドテーブル142から、サーバ1に対してデータの配信を要求するコマンドコードを読み出して図9の送信コードを生成する。生成した送信コードはセキュア領域202からリッチ領域201に出力され、サーバ1に送信される。   The transmission code is a data code including a command code corresponding to the content of the instruction, and a code specifying data to be written (hereinafter referred to as “write data”). In FIG. 9, a code for designating write data is linked to a command code indicated by "00" at the top. As described above, the command code is defined in the command table 142. The chip 2 reads a command code for requesting the server 1 to distribute data from the command table 142, and generates the transmission code of FIG. The generated transmission code is output from the secure area 202 to the rich area 201 and transmitted to the server 1.

なお、書き込みデータは固有情報245、鍵情報246等の秘密情報であってもよく、リッチOS241の下で動作するアプリケーション242のように、秘密であることが要求されないデータであってもよい。また、書き込みデータの書き込み先はセキュア領域202であってもよく、リッチ領域201であってもよい。   The write data may be secret information such as the unique information 245 or the key information 246, or may be data that is not required to be secret like the application 242 operating under the rich OS 241. Also, the write destination of the write data may be the secure area 202 or the rich area 201.

チップ2はセキュア領域202において、上記のコマンドコードを変換テーブル143に従って変換しておく。例えば図9に示すように、チップ2はコマンドコード「00」を「5B」に変換する。チップ2は、変換後のコマンドコード「5B」を認証に用いるため、当該コマンドコードを保持する。   The chip 2 converts the above command code in the secure area 202 in accordance with the conversion table 143. For example, as shown in FIG. 9, the chip 2 converts the command code "00" into "5B". The chip 2 holds the command code “5B” after conversion in order to use it for authentication.

チップ2から送信コードを取得した場合、サーバ1は、送信コードに含まれるコマンドコード「00」に基づき、チップ2から書き込みデータの配信要求があったことを判別する。この場合にサーバ1は、チップ2と同様に、変換テーブル143に従って当該コマンドコード「00」を「5B」に変換する。   When the transmission code is acquired from the chip 2, the server 1 determines that the distribution request for the write data has been made from the chip 2 based on the command code “00” included in the transmission code. In this case, the server 1 converts the command code "00" into "5B" in accordance with the conversion table 143, similarly to the chip 2.

サーバ1は、変換後のコマンドコード「5B」と、チップ2から要求された書き込みデータとを含む送信コードを生成する。この場合にサーバ1は、変換テーブル143に基づいて書き込みデータを変換し、変換後のデータを送信コードに用いる。例えばチップ2から固有情報245の配信要求を受け付けた場合、サーバ1は、指定された固有情報245を変換テーブル143に従って変換したデータコードを生成する。これにより、チップ2に書き込むデータは暗号化され、第三者によって通信路上で盗聴、搾取された場合にも対応することができる。サーバ1は、生成した送信コードをチップ2に送信する。   The server 1 generates a transmission code including the converted command code “5B” and the write data requested from the chip 2. In this case, the server 1 converts the write data based on the conversion table 143, and uses the converted data as a transmission code. For example, when receiving a distribution request of the unique information 245 from the chip 2, the server 1 generates a data code obtained by converting the specified unique information 245 according to the conversion table 143. Thus, the data written to the chip 2 is encrypted, and it is possible to cope with the case where the third party eavesdrops and is exploited on the communication path. The server 1 transmits the generated transmission code to the chip 2.

チップ2はサーバ1から、変換後のコマンドコードと、変換後の書き込みデータとを含む送信コードを取得する。サーバ1から取得した送信コードは、リッチ領域201を介してセキュア領域202に入力される。   The chip 2 obtains from the server 1 a transmission code including the converted command code and the converted write data. The transmission code acquired from the server 1 is input to the secure area 202 via the rich area 201.

チップ2はセキュア領域202において、送信コードに含まれるコマンドコードに基づき、送信コードの送信元(入力元)であるサーバ1の正当性を認証する認証処理を実行する。具体的には、チップ2は自身が変換しておいたコマンドコード「5B」と、サーバ1が変換したコマンドコード「5B」とを照合し、両者が一致するか否かを判定する。このように、サーバ1及びチップ2がコマンドテーブル142及び変換テーブル143を共有しておき、変換テーブル143に従って各々が同一のコマンドコードを変換したデータを照合することで、書き込みデータの送信元の認証を行う。チップ2が変換したコマンドコードとサーバ1が変換したコマンドコードとが一致しない場合、チップ2は認証が失敗したものと判定し、サーバ1から配信されたデータを破棄する。   In the secure area 202, the chip 2 executes an authentication process for authenticating the legitimacy of the server 1, which is the transmission source (input source) of the transmission code, based on the command code included in the transmission code. Specifically, the chip 2 collates the command code “5B” converted by itself with the command code “5B” converted by the server 1 and determines whether or not both match. As described above, the server 1 and the chip 2 share the command table 142 and the conversion table 143, and verify the transmission source of the write data by collating the data obtained by converting the same command code according to the conversion table 143. I do. If the command code converted by the chip 2 and the command code converted by the server 1 do not match, the chip 2 determines that the authentication has failed, and discards the data distributed from the server 1.

コマンドコードが一致したと判定した場合、チップ2は認証が成功したものと判定する。この場合、チップ2は、送信コードに含まれる書き込みデータを変換テーブル143に従って変換し、元のデータに復元する。チップ2は、復元後のデータをリッチ領域201又はセキュア領域202に格納することで、データの書き込みを行う。   If it is determined that the command codes match, the chip 2 determines that the authentication is successful. In this case, the chip 2 converts the write data included in the transmission code according to the conversion table 143 and restores the original data. The chip 2 writes the data by storing the restored data in the rich area 201 or the secure area 202.

上述の如く、サーバ1は、チップ2に対して遠隔でデータの書き込みを行う。この場合にチップ2は、発行段階でセキュア領域202に書き込まれたコマンドテーブル142、変換テーブル143等のデータを利用し、セキュア領域202において認証を行う。これにより、遠隔であっても安全にデータの書き込みを行うことができる。   As described above, the server 1 writes data to the chip 2 remotely. In this case, the chip 2 performs the authentication in the secure area 202 using the data such as the command table 142 and the conversion table 143 written in the secure area 202 at the issuance stage. Thus, data can be written safely even at a remote location.

なお、上記ではコマンドテーブル142で規定されたコマンドコードを認証に用いることにしたが、例えば固有情報245の照合、鍵情報246に基づく鍵交換等の手段で認証を行ってもよい。つまりチップ2は、セキュア領域202で保持する秘密情報を用いて書き込みデータの送信元の正当性を認証可能であればよく、用いる秘密情報はコマンドコードに限定されない。   Although the command code defined in the command table 142 is used for authentication in the above, authentication may be performed by means such as collation of the unique information 245, key exchange based on the key information 246, or the like. That is, the chip 2 may be capable of authenticating the legitimacy of the transmission source of the write data using the secret information held in the secure area 202, and the secret information to be used is not limited to the command code.

また、上記ではサーバ1がチップ2に書き込みデータを配信し、遠隔でデータの書き込みを行うことにしたが、当該データの書き込みはローカルで行ってもよい。例えば端末装置4が可搬型記憶媒体から上述の送信コードに相当するデータを読み取ってチップ2に入力するようにしてもよい。つまり、チップ2は書き込みデータの入力元の正当性を認証可能であればよく、インターネット等のネットワークNを介さずに書き込みデータを取得するようにしてもよい。   In the above description, the server 1 distributes the write data to the chip 2 and remotely writes the data. However, the data may be written locally. For example, the terminal device 4 may read data corresponding to the transmission code from the portable storage medium and input the data to the chip 2. That is, the chip 2 may be capable of authenticating the legitimacy of the input source of the write data, and may obtain the write data without passing through the network N such as the Internet.

また、上記では説明の便宜上、製品メーカの工場に在るチップ2に書き込みデータを配信する場合を説明したが、例えばエンドユーザが使用中のデバイスに対して書き込みデータを配信し、チップ2に認証を行わせてデータを書き込ませる場合もあり得る。これにより、例えば有効期限切れのリッチOS241やアプリケーション242、鍵情報246等の更新をおこなうことができる。このように、本実施の形態には種々の変形態様が想定される。   In the above description, the write data is distributed to the chip 2 in the factory of the product manufacturer for convenience of explanation. For example, the end user distributes the write data to the device in use, and the chip 2 is authenticated. In some cases, it may be possible to write data. As a result, for example, the expired rich OS 241, application 242, key information 246, and the like can be updated. As described above, various modifications can be assumed to the present embodiment.

図10は、チップ2発行段階におけるデータ書き込み処理の処理手順の一例を示すフローチャートである。図10に基づき、チップ発行者の製造ラインにおけるデータの書き込み処理について説明する。
サーバ1の制御部11は、チップ2に書き込むよう製品メーカから指定された各種データを製品DB141から読み出す(ステップS11)。チップ2に書き込むデータは、例えばリッチ領域201、セキュア領域202それぞれで動作するアプリケーション242、244、セキュア領域202に書き込む秘密情報などである。秘密情報は、チップ2のCPU21がセキュア領域202で実行する処理で用いるデータであり、例えば暗号演算に用いる鍵情報246等である。また、製品メーカから要望がある場合、チップ2に書き込む秘密情報には、チップ2の製造元で書き込まれた固有情報245の書き換えデータが含まれる。
FIG. 10 is a flow chart showing an example of the processing procedure of the data write processing at the chip 2 issue stage. Based on FIG. 10, the process of writing data in the production line of the chip issuer will be described.
The control unit 11 of the server 1 reads out, from the product DB 141, various data designated by the product maker to be written to the chip 2 (step S11). Data to be written to the chip 2 is, for example, secret information to be written to the secure area 202 and applications 242 and 244 operating in the rich area 201 and the secure area 202, respectively. The secret information is data used in the processing executed by the CPU 21 of the chip 2 in the secure area 202, and is, for example, key information 246 used for cryptographic computation. Also, when requested by the product maker, the secret information written to the chip 2 includes rewrite data of the unique information 245 written by the maker of the chip 2.

制御部11は、ステップS11で読み出したデータのチップ2への書き込みを指示する(ステップS12)。例えば制御部11は、チップ2の不揮発性メモリ24に対してデータの書き込みを行う発行装置に対し、アプリケーション242、244、鍵情報246等のデータを送信し、当該データを書き込むよう要求する。また、CPU21は、チップ2に遠隔でデータの書き込みを行うためのコマンドテーブル142、変換テーブル143の書き込みを併せて行う。   The control unit 11 instructs the writing of the data read in step S11 to the chip 2 (step S12). For example, the control unit 11 transmits data such as the applications 242 and 244 and the key information 246 to the issuing device that writes data to the non-volatile memory 24 of the chip 2 and requests to write the data. In addition, the CPU 21 writes the command table 142 and the conversion table 143 for writing data to the chip 2 remotely.

また、制御部11は、チップ2に書き込まれている秘密情報の書き換えを指示する(ステップS13)。例えば制御部11は、上述の如く、チップ2に固有の固有情報245の書き換えを指示する。   Further, the control unit 11 instructs rewriting of the secret information written in the chip 2 (step S13). For example, as described above, the control unit 11 instructs the chip 2 to rewrite the unique information 245 unique to the chip 2.

制御部11は、ステップS12、S13で書き込んだ秘密情報のうち、一部又は全部の書き換え禁止をチップ2に設定する(ステップS14)。例えば制御部11は、任意の秘密情報の書き換えを禁止する旨のフラグを不揮発性メモリ24に書き込み、セキュア領域202に保持させる。制御部11は、一連の処理を終了する。   The control unit 11 sets the rewriting prohibition of a part or all of the secret information written in steps S12 and S13 in the chip 2 (step S14). For example, the control unit 11 writes a flag to the effect that the rewriting of any secret information is prohibited in the non-volatile memory 24 and causes the secure area 202 to hold the flag. The control unit 11 ends the series of processes.

図11は、チップ2発行後のデータ書き込み処理の処理手順の一例を示すフローチャートである。図11に基づき、遠隔でチップ2にデータを書き込む処理の処理内容について説明する。
例えばチップ2は、ネットワークNを介してサーバ1と通信可能な所定の端末装置4に接続されており、端末装置4を介してサーバ1と通信を行う。チップ2のCPU21は、サーバ1に対し、書き込みデータの配信を要求する(ステップS31)。例えばCPU21はセキュア領域202において、コマンドテーブル142で規定するコマンドコードと、書き込むべきデータを指定するデータコードとを含む送信コードを生成する。CPU21は、生成した送信コードをセキュア領域202からリッチ領域201に入力し、ネットワークNを介してサーバ1へ送信する。また、CPU21はセキュア領域202において、送信コードに含まれるコマンドコードを、変換テーブル143を用いて変換し、保持する(ステップS32)。
FIG. 11 is a flowchart showing an example of the processing procedure of the data write processing after the issue of the chip 2. The processing content of the process of remotely writing data to the chip 2 will be described with reference to FIG.
For example, the chip 2 is connected to a predetermined terminal device 4 capable of communicating with the server 1 via the network N, and communicates with the server 1 via the terminal device 4. The CPU 21 of the chip 2 requests the server 1 to distribute the write data (step S31). For example, in the secure area 202, the CPU 21 generates a transmission code including a command code defined in the command table 142 and a data code specifying data to be written. The CPU 21 inputs the generated transmission code from the secure area 202 to the rich area 201 and transmits the generated transmission code to the server 1 via the network N. Further, the CPU 21 converts the command code included in the transmission code in the secure area 202 using the conversion table 143, and holds the converted code (step S32).

チップ2から送信コードを取得し、書き込みデータの配信要求を受け付けた場合、サーバ1の制御部11は、チップ2から受信した送信コードを参照して、チップ2から要求された書き込みデータを製品DB141から読み出す(ステップS33)。例えば制御部11は、送信コードに含まれるコマンドコードに基づいて配信要求があったことを判別し、同じく送信コードに含まれるコードから、チップ2が指定した書き込みデータを判別する。制御部11は、当該書き込みデータを製品DB141から読み出す。   When the transmission code is acquired from the chip 2 and the distribution request for the write data is received, the control unit 11 of the server 1 refers to the transmission code received from the chip 2 and writes the write data requested from the chip 2 to the product DB 141 From (step S33). For example, the control unit 11 determines that there is a distribution request based on the command code included in the transmission code, and determines the write data specified by the chip 2 from the code also included in the transmission code. The control unit 11 reads the write data from the product DB 141.

制御部11は、チップ2から取得したコマンドコードと、製品DB141から読み出した書き込みデータとを、変換テーブル143に従って変換する(ステップS34)。変換テーブル143は、データコードを変換する変換規則を定めたテーブルであり、入力コードと出力コードとを対応付けたテーブルである。制御部11は変換テーブル143に従い、チップ2から取得したコマンドコードを変換する。また、制御部11は、製品DB141から読み出した書き込みデータを変換する。制御部11は、変換後のコマンドコードと、変換後の書き込みデータとを含む送信コードを生成し、チップ2に送信する(ステップS35)。   The control unit 11 converts the command code acquired from the chip 2 and the write data read from the product DB 141 according to the conversion table 143 (step S34). The conversion table 143 is a table that defines conversion rules for converting data codes, and is a table in which input codes and output codes are associated. The control unit 11 converts the command code acquired from the chip 2 in accordance with the conversion table 143. Further, the control unit 11 converts the write data read from the product DB 141. The control unit 11 generates a transmission code including the converted command code and the converted write data, and transmits the transmission code to the chip 2 (step S35).

サーバ1からコマンドコード、書き込みデータを含む送信コードを取得した場合、チップ2のCPU21は、サーバ1から取得したコマンドコードと、ステップS32で変換済みのコマンドコードとを照合する(ステップS36)。すなわちCPU21は、自身で変換したコマンドコードと、サーバ1で変換されたコマンドコードとを比較することで、コマンドコードの真正性を確認(認証)する。これにより、CPU21は、サーバ1の正当性を認証する認証処理を行う。CPU21は、コマンドコードが一致したか否かを判定する(ステップS37)。コマンドコードが一致しないと判定した場合(S37:NO)、CPU21は取得したデータを破棄し、一連の処理を終了する。   When the command code and the transmission code including the write data are acquired from the server 1, the CPU 21 of the chip 2 collates the command code acquired from the server 1 with the command code converted in step S32 (step S36). That is, the CPU 21 verifies (authenticates) the authenticity of the command code by comparing the command code converted by itself with the command code converted by the server 1. Thus, the CPU 21 performs an authentication process for authenticating the validity of the server 1. The CPU 21 determines whether the command code matches (step S37). If it is determined that the command codes do not match (S37: NO), the CPU 21 discards the acquired data and ends the series of processing.

コマンドコードが一致したと判定した場合、CPU21は、サーバ1から取得した送信コードに含まれる書き込みデータを変換テーブル143に従い変換する(ステップS38)。すなわちCPU21は、サーバ1によって変換された書き込みデータを復元する。CPU21は、変換した書き込みデータをリッチ領域201又はセキュア領域202に格納し(ステップS39)、一連の処理を終了する。   If it is determined that the command codes match, the CPU 21 converts the write data included in the transmission code acquired from the server 1 according to the conversion table 143 (step S38). That is, the CPU 21 restores the write data converted by the server 1. The CPU 21 stores the converted write data in the rich area 201 or the secure area 202 (step S39), and ends the series of processes.

なお、上記ではチップ製造者、チップ発行者、及び製品メーカに分けて一連の製造工程を説明したが、この作業主体の区別は便宜上のものであって、本実施の形態はこれに限定されるものではない。例えばチップ製造者とチップ発行者とを同一の事業者として、チップ2の製造から発行に至るまでを一の事業者が行ってもよい。また、デバイスの組み立てに至るまで、全ての製造作業を一の事業者が行ってもよい。   Although a series of manufacturing processes have been described above separately for the chip manufacturer, chip issuer, and product maker, the distinction of this work subject is for convenience, and the present embodiment is limited to this. It is not a thing. For example, a chip manufacturer and a chip issuer may be the same business operator, and one business operator may perform from manufacture of the chip 2 to issuance. Also, one business operator may perform all the manufacturing operations up to the assembly of the device.

以上より、本実施の形態によれば、チップ2内のソフトウェアモジュールであるセキュア領域202に秘密情報を保持し、当該セキュア領域202にて秘密情報を用いた演算処理を行うようにすることで、秘密情報の安全性を確保することができる。特に本実施の形態では、セキュア領域202とチップ2外部との直接的な通信(情報の入出力)が不可能に構成され、セキュア領域202に情報を入力、又はセキュア領域202から情報を取得するためにはリッチ領域201を経由しなければならず、安全性をより強固にすることができる。また、セキュア領域202はソフトウェアモジュールであるため、ICチップ等の物理的モジュールよりも、演算処理能力を高めることができる。さらに、SIMのような専用の物理的モジュールをデバイスに搭載する必要がないため、省スペース化、省電力化に資する。   As described above, according to the present embodiment, the secret information is held in the secure area 202, which is a software module in the chip 2, and the secure area 202 performs arithmetic processing using the secret information. Security of confidential information can be secured. In this embodiment, in particular, direct communication (input / output of information) between the secure area 202 and the outside of the chip 2 is not possible, and information is input to the secure area 202 or information is acquired from the secure area 202. For this reason, it is necessary to go through the rich region 201, and the security can be further strengthened. In addition, since the secure area 202 is a software module, the arithmetic processing capacity can be increased more than a physical module such as an IC chip. Furthermore, since it is not necessary to mount a dedicated physical module such as SIM in the device, it contributes to space saving and power saving.

また、本実施の形態によれば、発行段階でチップ2に書き込んだ秘密情報に対し、書き換え禁止を設定可能としてあり、発行後の秘密情報の改竄を防止することができる。   Further, according to the present embodiment, rewriting prohibition can be set to the secret information written to the chip 2 at the issuance stage, and it is possible to prevent falsification of the secret information after issuance.

また、本実施の形態によれば、発行後にデータの追加書き込み、書き換え等を行う場合、発行段階で書き込んである秘密情報(例えばコマンドテーブル142、変換テーブル143等)を用いて認証を行うことで、安全にデータの書き込みを行うことができる。   Further, according to the present embodiment, when additional writing, rewriting, etc. of data is performed after issuance, authentication is performed using the secret information (for example, the command table 142, the conversion table 143, etc.) written at the issuance stage. You can safely write data.

また、本実施の形態によれば、ネットワークNを介して、遠隔でデータの書き込みを行うことができる。   Also, according to the present embodiment, data can be written remotely via the network N.

また、本実施の形態によれば、遠隔でデータを書き込む際に、変換テーブル143に従い書き込みデータを変換した上で配信することで、通信路上でのデータの盗聴、搾取等に対応することができる。   Further, according to the present embodiment, when data is written remotely, it is possible to cope with eavesdropping, exploitation, etc. of data on a communication path by converting the written data according to conversion table 143 and then distributing it. .

また、本実施の形態によれば、サーバ1及びチップ2でコマンドコードを共有しておき、当該コマンドコードと変換テーブル143とを組み合わせた真正性の検証(認証)を行うことで、より安全性を高めることができる。   Further, according to the present embodiment, the server 1 and the chip 2 share the command code, and the verification of the authenticity (authentication) combining the command code and the conversion table 143 is performed to further improve the security. Can be enhanced.

また、本実施の形態によれば、製品メーカ等の要望に従い固有情報245を書き換えることで、製品メーカ等におけるチップ2の管理を容易にすることができる。   Further, according to the present embodiment, management of the chip 2 in the product maker or the like can be facilitated by rewriting the unique information 245 in accordance with the request from the product maker or the like.

今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。   It should be understood that the embodiments disclosed herein are illustrative in all respects and not restrictive. The scope of the present invention is indicated not by the meaning described above but by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

1 サーバ(情報処理装置)
11 制御部
12 主記憶部
13 通信部
14 補助記憶部
P1 プログラム
141 製品DB
142 コマンドテーブル
143 変換テーブル
2 チップ(制御装置)
21 CPU
22 RAM
23 入出力I/F
24 不揮発性メモリ
241 リッチOS
242 アプリケーション
243 セキュアOS
244 アプリケーション
245 固有情報
246 鍵情報
247 認証情報
1 Server (Information Processing Device)
11 control unit 12 main storage unit 13 communication unit 14 auxiliary storage unit P1 program 141 product DB
142 command table 143 conversion table 2 chips (control device)
21 CPU
22 RAM
23 Input / output I / F
24 non-volatile memory 241 rich OS
242 Application 243 Secure OS
244 application 245 unique information 246 key information 247 authentication information

Claims (12)

入出力インターフェイスと、
該入出力インターフェイスを介して情報の入出力が可能な第1実行領域と、
該第1実行領域からのアクセスが制限された仮想領域であって、ハイパーバイザを介して前記第1実行領域との間で情報の入出力を行う第2実行領域と
を備える制御装置であって、
前記第2実行領域は、
前記入出力インターフェイスを介した情報の入出力が不可能に構成され、
所定の秘密情報を保持し、
前記第1実行領域からの要求に応じて、前記秘密情報を用いた処理を実行する
ことを特徴とする制御装置。
Input / output interface,
A first execution area capable of inputting and outputting information through the input / output interface;
A control device comprising: a virtual area in which access from the first execution area is restricted, and a second execution area performing input and output of information with the first execution area via a hypervisor. ,
The second execution area is
It is configured that input / output of information through the input / output interface is impossible,
Hold predetermined secret information,
The control device executes processing using the secret information in response to a request from the first execution area.
前記第2実行領域は、前記秘密情報の書き換えを禁止する禁止設定を受け付ける
ことを特徴とする請求項1に記載の制御装置。
The control device according to claim 1, wherein the second execution area receives a prohibition setting that prohibits rewriting of the secret information.
前記第1実行領域は、前記入出力インターフェイスを介して、前記第1又は第2実行領域に書き込むデータを取得し、
前記第2実行領域は、
前記第1実行領域が前記データを取得した場合、前記秘密情報に基づき、前記データの入力元の正当性を認証する認証処理を実行し、
認証に成功した場合、前記データの書き込みを許可する
ことを特徴とする請求項1又は2に記載の制御装置。
The first execution area acquires data to be written to the first or second execution area via the input / output interface,
The second execution area is
When the first execution area acquires the data, an authentication process for authenticating the legitimacy of the input source of the data is executed based on the secret information,
The control device according to claim 1 or 2, wherein if the authentication is successful, the writing of the data is permitted.
前記入出力インターフェイスはネットワークに接続され、
前記第1実行領域は、前記ネットワークを介して送信された前記データを取得する
ことを特徴とする請求項3に記載の制御装置。
The input / output interface is connected to a network,
The control device according to claim 3, wherein the first execution area acquires the data transmitted via the network.
前記第2実行領域は、データコードの変換規則を規定する変換テーブルを保持し、
第1実行領域は、
前記変換テーブルに従って変換された前記データを取得し、
取得した前記データを前記第2実行領域に入力し、
前記第2実行領域は、入力された前記データを前記変換テーブルに従って変換する
ことを特徴とする請求項4に記載の制御装置。
The second execution area holds a conversion table which defines conversion rules of data code,
The first execution area is
Obtaining the data converted according to the conversion table;
The acquired data is input to the second execution area,
The control device according to claim 4, wherein the second execution area converts the input data according to the conversion table.
前記第2実行領域は、前記入力元との間で、前記データの送受信を行う際に用いるコマンドコードを共有してあり、
前記第1実行領域は、前記データと共に、前記変換テーブルに従って変換された前記コマンドコードを取得して前記第2実行領域に入力し、
前記第2実行領域は前記変換テーブルを参照して、前記コマンドコードの真正性を認証する前記認証処理を実行する
ことを特徴とする請求項5に記載の制御装置。
The second execution area shares a command code used when transmitting and receiving the data with the input source, and
The first execution area acquires the command code converted according to the conversion table together with the data, and inputs the command code to the second execution area.
The control device according to claim 5, wherein the second execution area executes the authentication process for authenticating the authenticity of the command code with reference to the conversion table.
制御装置が有する記憶領域にデータを書き込むデータ書き込み方法であって、
前記制御装置は、ハイパーバイザを介して互いに情報の入出力を行う複数の実行領域を有し、
前記複数の実行領域のうち、第1実行領域からのアクセスが制限された第2実行領域に対し、所定の秘密情報を書き込む
処理をコンピュータに実行させることを特徴とするデータ書き込み方法。
A data writing method for writing data in a storage area of a control device, comprising:
The control device has a plurality of execution areas that input and output information with each other via a hypervisor.
A data writing method comprising: causing a computer to execute a process of writing predetermined secret information in a second execution area in which access from the first execution area is restricted among the plurality of execution areas.
前記制御装置は、入出力インターフェイスを備え、
前記入出力インターフェイスを介した情報の入出力が不可能に構成された前記第2実行領域に対し、前記秘密情報を書き込む
ことを特徴とする請求項7に記載のデータ書き込み方法。
The controller comprises an input / output interface
The data write method according to claim 7, wherein the secret information is written to the second execution area configured to be unable to input / output information via the input / output interface.
前記第2実行領域は、前記制御装置に固有の固有情報を予め保持してあり、
前記固有情報を所定の値に書き換える
ことを特徴とする請求項7又は8に記載のデータ書き込み方法。
The second execution area holds in advance unique information specific to the control device,
9. The data writing method according to claim 7, wherein the specific information is rewritten to a predetermined value.
ネットワークを介して、前記第2実行領域に新たに書き込むデータを該制御装置に送信する
ことを特徴とする請求項9に記載のデータ書き込み方法。
The data writing method according to claim 9, further comprising: transmitting data to be newly written in the second execution area to the control device via a network.
前記第2実行領域に対し、データコードの変換規則を規定する変換テーブルを書き込んでおき、
前記変換テーブルに従って変換した前記データを前記制御装置に送信する
ことを特徴とする請求項10に記載のデータ書き込み方法。
In the second execution area, write a conversion table that defines conversion rules of data code,
The data writing method according to claim 10, wherein the data converted according to the conversion table is transmitted to the control device.
入出力インターフェイスを備えた制御装置に、
前記入出力インターフェイスを介して情報の入出力が可能な第1実行領域と、該第1実行領域からのアクセスが制限された仮想領域であって、ハイパーバイザを介して前記第1実行領域との間で情報の入出力を行う第2実行領域とを構築し、
前記第2実行領域において、
前記入出力インターフェイスを介した情報の入出力を不可能に構成し、
所定の秘密情報を保持し、
前記第1実行領域からの要求に応じて、前記秘密情報を用いた処理を実行させる
ことを特徴とするプログラム。
Control unit with input / output interface,
A first execution area capable of inputting and outputting information through the input / output interface; and a virtual area in which access from the first execution area is restricted, and the first execution area including a hypervisor Construct a second execution area that inputs and outputs information between
In the second execution area,
Configuring the input / output of information through the input / output interface as impossible,
Hold predetermined secret information,
A program that executes processing using the secret information in response to a request from the first execution area.
JP2018005042A 2018-01-16 2018-01-16 Control device, data writing method and program Active JP7073733B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018005042A JP7073733B2 (en) 2018-01-16 2018-01-16 Control device, data writing method and program
JP2021187073A JP7211472B2 (en) 2018-01-16 2021-11-17 Data writing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018005042A JP7073733B2 (en) 2018-01-16 2018-01-16 Control device, data writing method and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021187073A Division JP7211472B2 (en) 2018-01-16 2021-11-17 Data writing method

Publications (2)

Publication Number Publication Date
JP2019125147A true JP2019125147A (en) 2019-07-25
JP7073733B2 JP7073733B2 (en) 2022-05-24

Family

ID=67399464

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018005042A Active JP7073733B2 (en) 2018-01-16 2018-01-16 Control device, data writing method and program

Country Status (1)

Country Link
JP (1) JP7073733B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11836476B2 (en) 2020-11-27 2023-12-05 Denso Corporation Electronic control unit, software update method, software update program product and electronic control system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11149413A (en) * 1997-11-14 1999-06-02 Fujitsu Ltd File management system provided with alteration preventing and detecting function
JP2013242644A (en) * 2012-05-18 2013-12-05 Panasonic Corp Virtual computer system, control method, and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11149413A (en) * 1997-11-14 1999-06-02 Fujitsu Ltd File management system provided with alteration preventing and detecting function
JP2013242644A (en) * 2012-05-18 2013-12-05 Panasonic Corp Virtual computer system, control method, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11836476B2 (en) 2020-11-27 2023-12-05 Denso Corporation Electronic control unit, software update method, software update program product and electronic control system

Also Published As

Publication number Publication date
JP7073733B2 (en) 2022-05-24

Similar Documents

Publication Publication Date Title
US11196572B2 (en) Blockchain-based content verification
CN109951489B (en) Digital identity authentication method, equipment, device, system and storage medium
US10650168B2 (en) Data processing device
CN1269071C (en) Storage card
KR101712784B1 (en) System and method for key management for issuer security domain using global platform specifications
KR20210041404A (en) Electronic device and method for blockchain address management thereof
JP4360422B2 (en) Authentication information management system, authentication information management server, authentication information management method and program
US11070380B2 (en) Authentication apparatus based on public key cryptosystem, mobile device having the same and authentication method
JP6591495B2 (en) Mobile device with built-in access control function
US7610488B2 (en) Data processing device and method and program of same
EP3292495B1 (en) Cryptographic data
US7836309B2 (en) Generic extensible pre-operating system cryptographic infrastructure
US11368291B2 (en) Mutually authenticated adaptive management interfaces for interaction with sensitive infrastructure
CN112215609B (en) House property user identity authentication method and device based on super account book and electronic equipment
JP7073733B2 (en) Control device, data writing method and program
TWM540328U (en) Built-in intelligence security mobile device
JP7211472B2 (en) Data writing method
KR101836236B1 (en) User authentication method and apparatus using authentication between applications, program therefor
JP2015228570A (en) Authentication system and portable communication terminal
JP2008176506A (en) Information processing apparatus, information processing method and management server
JP7003740B2 (en) Mobile driver's license system and mobile terminal equipment
KR102458351B1 (en) Authentication apparatus based on public key cryptosystem, mobile device having the same and authentication method thereof
JP2019047325A (en) Authentication system
TW201828186A (en) Mobile device with built-in access control mechanism comprises an access control unit including a control module and a storage module; a memory unit storing an application program; and a processing unit
JP4453678B2 (en) Data processing method and data processing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211117

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: 20220412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220425

R150 Certificate of patent or registration of utility model

Ref document number: 7073733

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150