Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7073733B2 - Control device, data writing method and program - Google Patents
[go: Go Back, main page]

JP7073733B2 - Control device, data writing method and program - Google Patents

Control device, data writing method and program Download PDF

Info

Publication number
JP7073733B2
JP7073733B2 JP2018005042A JP2018005042A JP7073733B2 JP 7073733 B2 JP7073733 B2 JP 7073733B2 JP 2018005042 A JP2018005042 A JP 2018005042A JP 2018005042 A JP2018005042 A JP 2018005042A JP 7073733 B2 JP7073733 B2 JP 7073733B2
Authority
JP
Japan
Prior art keywords
data
execution area
chip
input
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018005042A
Other languages
Japanese (ja)
Other versions
JP2019125147A (en
Inventor
義博 矢野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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)

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カードが開示されている。 An IC (Integrated Circuit) chip such as a SIM (Subscriber Identity Module or Subscriber Identification Module) stores confidential information such as an encryption key and a PIN (Personal Identification Number), and the confidential information is used to digitally sign in the IC chip. There is a technology to perform arithmetic processing related to mutual authentication. For example, Patent Document 1 discloses an IC card on which an IC chip is mounted, which verifies a stored encryption key of a public key cryptosystem by itself.

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

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

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

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

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

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

チップ発行システムの構成例を示す模式図である。It is a schematic diagram which shows the configuration example of a chip issuing system. サーバの構成例を示すブロック図である。It is a block diagram which shows the configuration example of a server. チップの構成例を示すブロック図である。It is a block diagram which shows the structural example of a chip. 製品DBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of a product DB. コマンドテーブルのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the 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 which shows the configuration example of a chip. チップに対するデータの書き込み工程を示す説明図である。It is explanatory drawing which shows the process of writing data to a chip. チップ発行後のデータの書き込み処理を説明するための説明図である。It is explanatory drawing for demonstrating the data writing process after chip issuance. チップ発行段階におけるデータ書き込み処理の処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the processing procedure of the data writing processing in a chip issuance stage. チップ発行後のデータ書き込み処理の処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the processing procedure of the data writing process after the chip issuance.

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

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

チップ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, such as a SoC (System on Chip), an arithmetic processing unit such as a CPU (Central Processing Unit), a RAM (Random Access Memory), and a ROM (Read). It is an integrated circuit equipped with a storage area such as (Only Memory) on a single chip. The chip 2 is not limited to a chip such as SoC, and may be a control device capable of performing general-purpose processing of the device, unlike a security chip such as SIM. Further, in the present embodiment, the control device that holds the confidential information will be described as a chip, but 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からの指示に従って各種の秘密情報が書き込まれる。 Data such as an OS (operating system) and an application program are stored in the storage area of the chip 2, and the chip 2 operates according to the OS and the application program. Further, predetermined secret information is stored in the storage area of the chip 2. The secret information includes, for example, unique information unique to each chip 2 (for example, the serial number of the chip 2), key information used for cryptographic operations (for example, a public key or a private key of a public key encryption method, a common key of a common key encryption method, and the like. ), Authentication information (for example, PIN code) used for personal authentication and the like. Various confidential information is written in the chip 2 according to the instruction from the server 1.

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

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

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

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

製品メーカは、チップ発行者から納品されたチップ2をデバイスに搭載してユーザに出荷する製造業者である。製品メーカが製造するデバイスは、種々の電子機器であり得る。例えば図1に示すスマートフォン、車両内のECU(Electronic Control Unit)、家電機器等のほか、パーソナルコンピュータ、インフラ設備装置、ウェアラブルデバイス等であり得る。製品メーカが製造するデバイスは、チップ2を搭載した電子機器であればよく、その内容は特に限定されない。 The product maker is a manufacturer that mounts the chip 2 delivered by the chip issuer on the device and ships it to the user. The device manufactured by the product manufacturer can be various electronic devices. For example, it may be a smartphone shown in FIG. 1, an ECU (Electronic Control Unit) in a vehicle, a home electric appliance, a personal computer, an infrastructure equipment device, a wearable device, or the like. The device manufactured by the product maker may be an electronic device equipped with the chip 2, 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 the 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 has one or more CPUs, MPUs (Micro-Processing Units), GPUs (Graphics Processing Units) and other arithmetic processing units, and reads and executes the program P stored in the auxiliary storage unit 14. Therefore, various information processing, control processing, etc. related to the server 1 are performed. The main storage unit 12 is a temporary storage area for SRAM (Static Random Access Memory), DRAM (Dynamic Random Access Memory), flash memory, etc., and temporarily stores data necessary for the control unit 11 to execute arithmetic processing. Remember. The communication unit 13 includes a processing circuit for performing processing related to communication, and transmits / receives information to / 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 the program P and other data necessary for the control unit 11 to execute the process. Further, the auxiliary storage unit 14 stores the product DB 141, the command table 142, and the conversion table 143. The product DB 141 is a database that stores order data of each product (chip 2) ordered from a product manufacturer. The command table 142 is a table that stores commands used when transmitting / receiving data between the server 1 and the chip 2. The conversion table 143 is a table that stores conversion rules for converting data to be transmitted / received when data is transmitted / received 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 composed of a plurality of computers, or may be a virtual machine virtually constructed by software.

また、本実施の形態においてサーバ1は上記の構成に限られず、例えば可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。 Further, in the present embodiment, the server 1 is not limited to the above configuration, and may include, for example, a reading unit for reading 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 device that executes various arithmetic processing, and reads various programs or data stored in the non-volatile memory 24 to execute the arithmetic processing. 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 / outputting information to / from 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 non-volatile memory 24 includes, for example, a ROM, an EEPROM (Electrically Erasable Programmable ROM), and the like, and stores various data. Specifically, the non-volatile memory 24 includes a rich OS 241, an application 242 operating under the environment of the rich OS 241, a secure OS 243, an application 244 operating under the environment of the secure OS 243, unique information 245, key information 246, and authentication. Information 247, command table 142, and conversion table 143 are stored.

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

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

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

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

コマンドテーブル142、変換テーブル143は、サーバ1が保持するコマンドテーブル142、変換テーブル143と共通のテーブルであり、サーバ1との間でデータの送受信を行う際に用いるテーブルである。 The command table 142 and the conversion table 143 are tables common to the command table 142 and the conversion table 143 held by the server 1, and are tables used when data is transmitted to and received from 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 diagram showing an example of the record layout of the product DB 141. The product DB 141 includes a chip ID column, an ordering source column, a product column, and a write data string. The chip ID string stores an ID for identifying each chip 2. The ordering source column stores information of the product maker who ordered the data writing to each chip 2 in association with the chip ID. The product column stores information about the product (device) on which the chip 2 is mounted in association with the chip ID. The write data string stores the data to be written to the chip 2 in association with the chip ID. As described above, the data to be written to the chip 2 is, for example, applications 242, 244, unique information 245, key information 246, and the like, but is not limited thereto.

図5は、コマンドテーブル142のレコードレイアウトの一例を示す説明図である。コマンドテーブル142は、コマンドコード列、コマンド内容列を含む。コマンドコード列は、サーバ1とチップ2との間でデータの送受信を行う際の各コマンドを表すコードが記憶されている。コマンド内容列は、コマンドコードと対応付けて、各コマンドの内容を記憶している。 FIG. 5 is an explanatory diagram showing an example of the record layout of the command table 142. The command table 142 includes a command code string and a command content column. In the command code string, a code representing each command for transmitting / receiving data between the server 1 and the chip 2 is stored. The command content column 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 diagram showing an example of the record layout of the conversion table 143. 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 odd-numbered row code and the even-numbered column code correspond to each other, and it is specified that the corresponding codes are converted to each other. For example, the code "00" in the first column of the first row corresponds to the code "5B" in the first column of the second row, and the code "00" is input to the conversion table 143. In the case, it is converted to the code "5B" and output.

図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. The rich region 201 constructed inside the chip 2 and the secure region 202 will be described with reference to FIG. 7.
The chip 2 uses hardware resources such as the CPU 21 and the RAM 22 as a virtualization base, and constructs two virtual areas on the base. 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 for executing basic and general-purpose processing of the device on which the chip 2 is mounted, and is an execution area in which access to the secure area 202 is restricted and there are no particular functional restrictions. Is. For example, when the chip 2 is mounted on a smartphone, the CPU 21 executes a control process related to a call, an image display, or the like in the rich area 201. The rich OS 241 and the application 242 are stored in the rich area 201, and the CPU 21 performs general-purpose processing by executing each program.

図7に示すように、リッチ領域201は入出力I/F23を介して外部と情報の入出力可能に構成されている。例えばCPU21は、ユーザによる操作入力内容を入出力I/F23を介して取得し、操作入力に対する応答(例えば画面操作に対する応答)を返す。 As shown in FIG. 7, the rich region 201 is configured to be able to input / output information to and from the outside via the input / output I / F 23. For example, the CPU 21 acquires the operation input content 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 an execution environment that is more secure 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, a hypervisor 203 realized by 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 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を用いた個人認証を行う。 Access to the secure area 202 from the rich area 201 is restricted, and the processes that can be executed are also restricted. Specifically, the CPU 21 executes important security processing in the secure area 202. For example, as shown in FIG. 7, in the secure area 202, in addition to the secure OS 243, the application 244, etc., the unique information 245, the key information 246, the authentication information 247, etc., which are confidential information, are stored. The CPU 21 performs processing using the confidential information in the secure area 202. For example, the CPU 21 performs an encryption operation using the key information 246 in the secure area 202, and outputs the encrypted data to the rich area 201. Further, for example, the CPU 21 performs personal authentication using the authentication information 247 in the secure area 202 in response to the request from the rich area 201.

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

本実施の形態においてセキュア領域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 so that direct communication (information input / output) 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 the information from the secure area 202, the information must pass 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, the authentication result, encrypted data, etc.) to the rich area 201, and outputs the processing result to the outside of the chip 2 via the rich area 201.

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

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

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

まずチップ製造者は、チップ2を動作させるために最低限必要なOS(リッチOS241及びセキュアOS243)と、チップ2の製造番号等である固有情報245とを書き込む。 First, the chip maker writes the minimum OS (rich OS 241 and secure OS 243) necessary 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 to the chip 2 so as to perform an operation customized according to the product according to the order from the product manufacturer. For example, the server 1 refers to the product DB 141 and sequentially writes the data specified by each product maker to each chip 2 mounted on the production 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 manufacturer of the chip 2 when requested by the product manufacturer.

製造元で書き込まれた固有情報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 that is 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 can be used as an employee ID card for authentication based on the data stored in the chip 2 and used like an IC card. There is. In this case, the user (company or the like) needs to manage the employee number and the serial number in association with each other, read the serial number from the chip 2, call the employee number, and perform collation, which is a two-step process. 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 unique information 245 itself to a desired value. Therefore, the server 1 receives the value of the unique information 245 (for example, the employee number) to be rewritten from the product manufacturer, and rewrites the unique information 245 to the value. This makes it possible to improve the convenience of product manufacturers and end users.

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

なお、どの秘密情報を書き換え禁止に設定するかは設計事項であり、例えば鍵情報246を書き換え禁止に設定してもよい。また、どの秘密情報を書き換え禁止に設定するか、サーバ1は製品メーカ等から指定を受け付けるようにしてもよい。 It should be noted 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. Further, the server 1 may accept the specification from the product maker or the like as to which confidential information is set to prohibit rewriting.

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

本実施の形態でサーバ1は、チップ発行者の製造ラインでのデータ書き込みを指示するだけでなく、ネットワークNを介して通信を行い、製品メーカ等からの要望を受けて、チップ2の発行後もデータの書き込みを遠隔で行う。 In the present embodiment, the server 1 not only instructs the chip issuer to write data on the production line, but also communicates via the network N, receives a request from the product maker, and the like, and after issuing the chip 2. Also writes 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, some product manufacturers want to customize and update the applications 242 and 244 in the chip 2 for their own use. Further, although only one product maker is shown in FIG. 8 for the sake of brevity, a parts maker that manufactures parts (for example, vehicle ECU) on which the chip 2 is mounted and an overall product (for example, vehicle) on which each device is mounted are manufactured. There may be a manufacturer that does. In this case, the manufacturer who manufactures the entire product may want to unify the unique information 245 of the chip 2 mounted on each component with its own identification number.

このような場合にサーバ1は、製品メーカから要望されたデータをチップ2に配信し、不揮発性メモリ24に書き込ませる。例えば図9に示す端末装置4がネットワークNに接続され、端末装置4を介してチップ2はサーバ1と通信を行い、所望のデータを取得する。 In such a case, the server 1 distributes the data requested by the product manufacturer to the chip 2 and causes the non-volatile memory 24 to write the data. 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 it is possible to unconditionally write data to the chip 2, there is a risk that data will be illegally written by a third party. Therefore, in the present embodiment, data writing is permitted on condition that the authentication is successful between the server 1 and the chip 2.

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

具体的には、サーバ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 data writing process 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 maker operates a terminal device 4 and inputs predetermined information for ordering rewriting of confidential information to the chip 2. The information is input to the secure area 202 via the rich area 201. In the secure area 202, the chip 2 generates a transmission code shown in the upper right of FIG. 9 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 instruction content and a code for designating data to be written (hereinafter referred to as "write data"). In FIG. 9, a code for designating write data is concatenated with the command code indicated by “00” at the beginning. As mentioned above, the command code is specified in the command table 142. The chip 2 reads the command code for requesting the distribution of data to the server 1 from the command table 142, and generates the transmission code shown in 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 unique information 245 and key information 246, or may be data that is not required to be secret, such as an application 242 operating under the rich OS 241. Further, 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 according to the conversion table 143. For example, as shown in FIG. 9, the chip 2 converts the command code “00” into “5B”. Since the chip 2 uses the converted command code "5B" for authentication, the chip 2 holds the command code.

チップ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 chip 2 has requested the distribution of the write data based on the command code "00" included in the transmission code. In this case, the server 1 converts the command code "00" into "5B" according to 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 by 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 the transmission code. For example, when the distribution request of the unique information 245 is received from the chip 2, the server 1 generates a data code obtained by converting the designated unique information 245 according to the conversion table 143. As a result, the data written to the chip 2 is encrypted, and it is possible to deal with the case where a third party eavesdrops or exploits the data on the communication path. The server 1 transmits the generated transmission code to the chip 2.

チップ2はサーバ1から、変換後のコマンドコードと、変換後の書き込みデータとを含む送信コードを取得する。サーバ1から取得した送信コードは、リッチ領域201を介してセキュア領域202に入力される。 The chip 2 acquires a transmission code including the converted command code and the converted write data from the server 1. 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 validity 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 they match. In this way, the server 1 and the chip 2 share the command table 142 and the conversion table 143, and by collating the data in which the same command code is converted according to the conversion table 143, the source of the write data is authenticated. 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 delivered 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 remotely to the chip 2. In this case, the chip 2 uses the data such as the command table 142 and the conversion table 143 written in the secure area 202 at the issuing stage to perform authentication in the secure area 202. As a result, data can be safely written even if it is remote.

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

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

また、上記では説明の便宜上、製品メーカの工場に在るチップ2に書き込みデータを配信する場合を説明したが、例えばエンドユーザが使用中のデバイスに対して書き込みデータを配信し、チップ2に認証を行わせてデータを書き込ませる場合もあり得る。これにより、例えば有効期限切れのリッチOS241やアプリケーション242、鍵情報246等の更新をおこなうことができる。このように、本実施の形態には種々の変形態様が想定される。 Further, in the above description, for convenience of explanation, the case where the write data is distributed to the chip 2 in the factory of the product manufacturer has been described. For example, the write data is distributed to the device being used by the end user and the chip 2 is authenticated. In some cases, the data may be written. 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 are assumed in this 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 flowchart showing an example of a processing procedure of data writing processing in the chip 2 issuing stage. The data writing process in the production line of the chip issuer will be described with reference to FIG.
The control unit 11 of the server 1 reads various data designated by the product manufacturer to be written to the chip 2 from the product DB 141 (step S11). The data to be written to the chip 2 is, for example, applications 242 and 244 operating in the rich area 201 and the secure area 202, and secret information to be written to the secure area 202. The secret information is data used in a process executed by the CPU 21 of the chip 2 in the secure area 202, such as key information 246 used for a cryptographic operation. Further, when requested by the product maker, the secret information written in the chip 2 includes the rewritten data of the unique information 245 written by the manufacturer of the chip 2.

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

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

制御部11は、ステップS12、S13で書き込んだ秘密情報のうち、一部又は全部の書き換え禁止をチップ2に設定する(ステップS14)。例えば制御部11は、任意の秘密情報の書き換えを禁止する旨のフラグを不揮発性メモリ24に書き込み、セキュア領域202に保持させる。制御部11は、一連の処理を終了する。 The control unit 11 sets the chip 2 to prohibit rewriting a part or all of the secret information written in steps S12 and S13 (step S14). For example, the control unit 11 writes a flag to the effect that the rewriting of arbitrary confidential information is prohibited in the non-volatile memory 24 and holds it in the secure area 202. The control unit 11 ends a 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 writing process after the chip 2 is issued. Based on FIG. 11, the processing content of the process of remotely writing data to the chip 2 will be described.
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 deliver the write data (step S31). For example, in the secure area 202, the CPU 21 generates a transmission code including a command code specified in the command table 142 and a data code that specifies 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 and holds the command code included in the transmission code in the secure area 202 by using the conversion table 143 (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 converts the write data requested from the chip 2 into the product DB 141. Read from (step S33). For example, the control unit 11 determines that a delivery request has been made 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 in which conversion rules for converting data codes are defined, and is a table in which an input code and an output code are associated with each other. The control unit 11 converts the command code acquired from the chip 2 according to 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 transmission code including the command code and the write data is 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 confirms (authenticates) the authenticity of the command code by comparing the command code converted by itself with the command code converted by the server 1. As a result, the CPU 21 performs an authentication process for authenticating the validity of the server 1. The CPU 21 determines whether or not the command codes match (step S37). If it is determined that the command codes do not match (S37: NO), the CPU 21 discards the acquired data and ends a series of processes.

コマンドコードが一致したと判定した場合、CPU21は、サーバ1から取得した送信コードに含まれる書き込みデータを変換テーブル143に従い変換する(ステップS38)。すなわちCPU21は、サーバ1によって変換された書き込みデータを復元する。CPU21は、変換した書き込みデータをリッチ領域201又はセキュア領域202に格納し(ステップS39)、一連の処理を終了する。 When 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 a series of processes.

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

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

また、本実施の形態によれば、発行段階でチップ2に書き込んだ秘密情報に対し、書き換え禁止を設定可能としてあり、発行後の秘密情報の改竄を防止することができる。 Further, according to the present embodiment, it is possible to set rewriting prohibition for the confidential information written in the chip 2 at the issuing stage, and it is possible to prevent falsification of the confidential 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 by using confidential information (for example, command table 142, conversion table 143, etc.) written at the issuance stage. , Data can be written safely.

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

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

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

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

今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time should be considered to be exemplary in all respects and not restrictive. The scope of the present invention is indicated by the scope of claims, not the above-mentioned meaning, and is intended to include all modifications within the meaning and scope equivalent to the scope of 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 Chip (control unit)
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 (7)

入出力インターフェイスと、
該入出力インターフェイスを介して情報の入出力が可能な第1実行領域と、
該第1実行領域からのアクセスが制限された仮想領域であって、ハイパーバイザを介して前記第1実行領域との間で情報の入出力を行う第2実行領域と
を備える制御装置であって、
前記第2実行領域は、
前記入出力インターフェイスを介した情報の直接的な入出力が不可能に構成され、
所定の秘密情報を保持し、
前記第1実行領域からの要求に応じて、前記秘密情報を用いた処理を実行し、
前記第1実行領域は、前記入出力インターフェイスを介して、前記第1又は第2実行領域に書き込むデータを取得し、
前記第2実行領域は、
前記第1実行領域が前記データを取得した場合、前記秘密情報に基づき、前記データの入力元の正当性を認証する認証処理を実行し、
認証に成功した場合、前記データの書き込みを許可し、
前記入出力インターフェイスはネットワークに接続され、
前記第1実行領域は、前記ネットワークを介して送信された前記データを取得する
ことを特徴とする制御装置。
I / O interface and
A first execution area where information can be input / output via the input / output interface,
A control device including a virtual area in which access from the first execution area is restricted, and a second execution area for inputting / outputting information to / from the first execution area via a hypervisor. ,
The second execution area is
It is configured so that direct input / output of information through the input / output interface is not possible.
Retain certain confidential information
In response to the request from the first execution area, the process using the secret information is executed , and the process is executed.
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 validity of the data input source is executed based on the confidential information.
If the authentication is successful, the writing of the data is permitted and the data is written.
The input / output interface is connected to the network and
The first execution area acquires the data transmitted via the network.
A control device characterized by that.
前記第2実行領域は、前記秘密情報の書き換えを禁止する禁止設定を受け付ける
ことを特徴とする請求項1に記載の制御装置。
The control device according to claim 1, wherein the second execution area accepts a prohibition setting that prohibits rewriting of the confidential information.
前記第2実行領域は、データコードの変換規則を規定する変換テーブルを保持し、
第1実行領域は、
前記変換テーブルに従って変換された前記データを取得し、
取得した前記データを前記第2実行領域に入力し、
前記第2実行領域は、入力された前記データを前記変換テーブルに従って変換する
ことを特徴とする請求項1又は請求項2に記載の制御装置。
The second execution area holds a conversion table that defines conversion rules for data codes.
The first execution area is
The data converted according to the conversion table is acquired, and the data is obtained.
The acquired data is input to the second execution area, and the data is input to the second execution area.
The control device according to claim 1 or 2 , wherein the second execution area converts the input data according to the conversion table.
前記第2実行領域は、前記入力元との間で、前記データの送受信を行う際に用いるコマンドコードを共有してあり、
前記第1実行領域は、前記データと共に、前記変換テーブルに従って変換された前記コマンドコードを取得して前記第2実行領域に入力し、
前記第2実行領域は前記変換テーブルを参照して、前記コマンドコードの真正性を認証する前記認証処理を実行する
ことを特徴とする請求項に記載の制御装置。
The second execution area shares a command code used for transmitting and receiving the data with the input source.
In the first execution area, the command code converted according to the conversion table is acquired together with the data and input to the second execution area.
The control device according to claim 3 , wherein the second execution area refers to the conversion table and executes the authentication process for authenticating the authenticity of the command code.
制御装置が有する記憶領域にデータを書き込むデータ書き込み方法であって、
前記制御装置は、ハイパーバイザを介して互いに情報の入出力を行う複数の実行領域を有し、
前記複数の実行領域のうち、第1実行領域からのアクセスが制限された第2実行領域に対し、所定の秘密情報を書き込み、
前記制御装置は、入出力インターフェイスを備え、
前記第1実行領域は、前記入出力インターフェイスを介して、前記第1又は第2実行領域に書き込むデータを取得し、
前記第2実行領域は、
前記第1実行領域が前記データを取得した場合、前記秘密情報に基づき、前記データの入力元の正当性を認証する認証処理を実行し、
認証に成功した場合、前記データの書き込みを許可し、
前記入出力インターフェイスはネットワークに接続され、
前記第1実行領域は、前記ネットワークを介して送信された前記データを取得する
処理をコンピュータに実行させることを特徴とするデータ書き込み方法。
It is a data writing method for writing data to the storage area of the control device.
The control device has a plurality of execution areas for inputting and outputting information to and from each other via a hypervisor.
Of the plurality of execution areas, predetermined secret information is written to the second execution area whose access from the first execution area is restricted.
The control device includes an input / output interface.
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 validity of the data input source is executed based on the confidential information.
If the authentication is successful, the writing of the above data is permitted and the data is written.
The input / output interface is connected to the network and
The first execution area acquires the data transmitted via the network.
A data writing method characterized by having a computer perform processing.
記入出力インターフェイスを介した情報の直接的な入出力が不可能に構成された前記第2実行領域に対し、前記秘密情報を書き込む
ことを特徴とする請求項に記載のデータ書き込み方法。
The data writing method according to claim 5 , wherein the secret information is written to the second execution area configured so that direct input / output of information through the input / output interface is impossible.
入出力インターフェイスを備えた制御装置に、
前記入出力インターフェイスを介して情報の入出力が可能な第1実行領域と、該第1実行領域からのアクセスが制限された仮想領域であって、ハイパーバイザを介して前記第1実行領域との間で情報の入出力を行う第2実行領域とを構築し、
前記第2実行領域において、
前記入出力インターフェイスを介した情報の直接的な入出力を不可能に構成し、
所定の秘密情報を保持し、
前記第1実行領域からの要求に応じて、前記秘密情報を用いた処理を実行し、
前記第1実行領域は、前記入出力インターフェイスを介して、前記第1又は第2実行領域に書き込むデータを取得し、
前記第2実行領域は、
前記第1実行領域が前記データを取得した場合、前記秘密情報に基づき、前記データの入力元の正当性を認証する認証処理を実行し、
認証に成功した場合、前記データの書き込みを許可し、
前記入出力インターフェイスはネットワークに接続され、
前記第1実行領域は、前記ネットワークを介して送信された前記データを取得させる
ことを特徴とするプログラム。
For control devices with input / output interfaces
A first execution area in which information can be input / output via the input / output interface, and a virtual area in which access from the first execution area is restricted, the first execution area via a hypervisor. Build a second execution area for input / output of information between
In the second execution area
It is configured so that direct input / output of information via the input / output interface is impossible.
Retain certain confidential information
In response to the request from the first execution area, the process using the secret information is executed , and the process is executed.
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 validity of the data input source is executed based on the confidential information.
If the authentication is successful, the writing of the above data is permitted and the data is written.
The input / output interface is connected to the network and
The first execution area is a program characterized in that the data transmitted via the network is acquired .
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 JP2019125147A (en) 2019-07-25
JP7073733B2 true 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)

Families Citing this family (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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242644A (en) 2012-05-18 2013-12-05 Panasonic Corp Virtual computer system, control method, and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3748155B2 (en) * 1997-11-14 2006-02-22 富士通株式会社 File management system with falsification prevention / detection function

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242644A (en) 2012-05-18 2013-12-05 Panasonic Corp Virtual computer system, control method, and program

Also Published As

Publication number Publication date
JP2019125147A (en) 2019-07-25

Similar Documents

Publication Publication Date Title
US11196572B2 (en) Blockchain-based content verification
EP1557741B1 (en) Information storage device, security system, access permission method, network access method and security process execution permission method
CN1260679C (en) Memory device
JP4360422B2 (en) Authentication information management system, authentication information management server, authentication information management method and program
EP3360070B1 (en) Data processing device
JP6591495B2 (en) Mobile device with built-in access control function
EP3053081B1 (en) Systems, methods, and computer program products for securely managing data on a secure element
CN101609491B (en) Arrangments for interfacing with user access manager
JP7073733B2 (en) Control device, data writing method and program
WO2026002243A1 (en) Authentication method, apparatus and device, and medium and product
JP6760631B1 (en) Authentication request system and authentication request method
JP7003740B2 (en) Mobile driver's license system and mobile terminal equipment
JP7211472B2 (en) Data writing method
TWM540328U (en) Built-in intelligence security mobile device
JP2008176506A (en) Information processing apparatus, information processing method, and management server
KR100868676B1 (en) USS Security Module
TWI673667B (en) Built-in smart security mobile device
WO2004028080A1 (en) Data processing method, program thereof, and device thereof
JP2019047325A (en) Authentication system
CN115643027A (en) A method and system for identity authentication based on STC single-chip microcomputer
JP2009259133A (en) Method for controlling access of portable medium
US20180374084A1 (en) Method for securing a transaction from a mobile terminal
JP2018132863A (en) IC card and IC card authentication method
JP2005250636A (en) IC card
HK1259553A1 (en) Data processing device

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