JP2019097032A - Secure element, client terminal, information processing method, and information processing program - Google Patents

Secure element, client terminal, information processing method, and information processing program Download PDF

Info

Publication number
JP2019097032A
JP2019097032A JP2017225014A JP2017225014A JP2019097032A JP 2019097032 A JP2019097032 A JP 2019097032A JP 2017225014 A JP2017225014 A JP 2017225014A JP 2017225014 A JP2017225014 A JP 2017225014A JP 2019097032 A JP2019097032 A JP 2019097032A
Authority
JP
Japan
Prior art keywords
secure element
server
client terminal
risk
degree
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
JP2017225014A
Other languages
Japanese (ja)
Other versions
JP6919523B2 (en
Inventor
正剛 福永
Masatake Fukunaga
正剛 福永
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 JP2017225014A priority Critical patent/JP6919523B2/en
Publication of JP2019097032A publication Critical patent/JP2019097032A/en
Application granted granted Critical
Publication of JP6919523B2 publication Critical patent/JP6919523B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To provide a secure element connected to a client terminal, which is capable of securing sufficient security on the client terminal side in encrypted communication performed between a client terminal and a server.SOLUTION: A secure element stores some types of data or performs some processing according to the degree of risk of communication between a client terminal and a server for multiple types of data stored by the client terminal for encrypted communication with the server, and multiple types of processing performed by the client terminal for encrypted communication with the server.SELECTED DRAWING: Figure 7

Description

暗号化通信にセキュアなICチップを利用する技術分野に関する。   The present invention relates to the technical field of using a secure IC chip for encrypted communication.

近年、普及し始めているIoT(Internet of Things)製品は、例えば、IoT製品が備えるセンサーで測定したデータをサーバ装置(以下、「サーバ」という場合がある)で取得すること、IoT製品をサーバにより遠隔管理することなどを目的として利用されることがある。そのため、IoT製品はインターネット等のネットワークを通じてサーバと接続されるが、安全に通信することが当然に求められる。安全に通信することを目的として一般的に用いられるTLS(Transport Layer Security)では、サーバと、IoT製品等のクライアント端末(以下、「端末」という場合がある)が初めて接続される場合であっても通信できるように、公開鍵暗号を使って相手を確認しつつ共通鍵を双方で共有してから、共通鍵暗号を使って相手と暗号化したデータを送受信するという手法を採用する。   In recent years, the IoT (Internet of Things) products that are beginning to become popular are, for example, acquiring data measured by sensors included in the IoT products with a server device (hereinafter sometimes referred to as "server") It may be used for the purpose of remote management. Therefore, IoT products are connected to servers through networks such as the Internet, but it is naturally required to communicate securely. In TLS (Transport Layer Security) generally used for the purpose of communicating safely, a server and a client terminal such as an IoT product (hereinafter sometimes referred to as “terminal”) are connected for the first time. In order to be able to communicate, both sides share a common key while using the public key encryption to confirm the other party, and then adopt a method of transmitting and receiving encrypted data with the other side using the common key encryption.

IoT製品に限らず、サーバとTLS通信を行う端末は、TLS通信を行うために鍵情報を生成する処理や鍵情報を用いた処理など、複数種類の処理を行う。ところが、端末に対する攻撃によりこうした処理に係る鍵などの情報が流出し、安全な通信を阻害されるおそれがある。   Not limited to IoT products, terminals that perform TLS communication with the server perform multiple types of processing such as processing for generating key information and processing using key information to perform TLS communication. However, an attack on a terminal may leak information such as a key related to such processing, which may hinder safe communication.

特許文献1には、安全な通信経路を確立することを目的として、端末にセキュリティチップを接続して、セキュリティチップがクライアント証明書を記憶したり、サーバから受信した暗号化セッション鍵を復号化して、記憶したりする技術が開示されている。   In Patent Document 1, for the purpose of establishing a secure communication path, a security chip is connected to a terminal, the security chip stores a client certificate, and decrypts an encrypted session key received from a server. Techniques for storing and storing are disclosed.

特開2006−129143号公報JP, 2006-129143, A

しかしながら、特許文献1に記載の技術は、セキュリティチップに、安全な通信経路を確立するために必要な一部のデータを記憶させたり、一部の処理を実行させたりしているが、必ずしも高度なセキュリティを確保できるわけではない。   However, the technology described in Patent Document 1 causes the security chip to store part of data necessary for establishing a secure communication path, or to execute part of processing. Security can not be secured.

また一方で、セキュリティチップとされるICチップが備えるCPUやメモリは、一般的にPC(Personal Computer)などが備えるそれらよりもロースペックのものであり、TLS通信のための全ての処理を実行すると処理時間が長くなるという問題がある。   On the other hand, the CPU and memory included in the IC chip, which is regarded as a security chip, are generally of lower specifications than those included in a PC (Personal Computer) and the like, and all processing for TLS communication is performed. There is a problem that processing time becomes long.

そこで、本発明は、クライアント端末に接続されるセキュアエレメントであって、クライアント端末がサーバとの間で行う暗号化通信において、クライアント端末側について充分なセキュリティを確保することができるセキュアエレメント等を提供することを目的とする。   Therefore, the present invention provides a secure element or the like connected to a client terminal, which can ensure sufficient security on the client terminal side in encrypted communication performed by the client terminal with the server. The purpose is to

上記課題を解決するために、請求項1に記載の発明は、サーバとの間で暗号化通信を行うクライアント端末に接続されるセキュアエレメントであって、前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶手段と、前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理手段と、を備えることを特徴とする。   In order to solve the above problem, the invention according to claim 1 is a secure element connected to a client terminal that performs encrypted communication with a server, wherein the client terminal is for the encrypted communication. And storage means for storing data of at least a part of the plurality of types of data to be stored according to the degree of risk of communication between the client terminal and the server, instead of the client terminal, and the client terminal And processing means for performing at least a part of the processing corresponding to the degree of risk of the communication among the plurality of processing performed for the encrypted communication, in place of the client terminal.

請求項2に記載の発明は、請求項1に記載のセキュアエレメントであって、前記複数種類のデータは、プリマスターシークレット、マスターシークレット及びセッション鍵であることを特徴とする。   The invention according to claim 2 is the secure element according to claim 1, wherein the plurality of types of data are a premaster secret, a master secret, and a session key.

請求項3に記載の発明は、請求項1又は2に記載のセキュアエレメントであって、前記複数の処理は、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、署名の生成処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理であることを特徴とする。   The invention according to claim 3 is the secure element according to claim 1 or 2, wherein the plurality of processes includes a process of generating a premaster secret, an encryption process of the premaster secret, and a process of generating a signature. It is characterized in that it is a master secret generation process and a session key generation process.

請求項4に記載の発明は請求項2に記載のセキュアエレメントであって、前記記憶手段は、前記危険度が所定のレベル以上である場合には、前記複数種類のデータを全て記憶することを特徴とする。   The invention according to claim 4 is the secure element according to claim 2, wherein the storage means stores all of the plurality of types of data when the degree of risk is equal to or higher than a predetermined level. It features.

請求項5に記載の発明は、請求項3に記載のセキュアエレメントであって、前記処理手段は、前記危険度が第1レベルである場合には、前記複数の処理を全て行うことを特徴とする。   The invention according to claim 5 is the secure element according to claim 3, wherein the processing means performs all of the plurality of processing when the degree of risk is the first level. Do.

請求項6に記載の発明は、請求項5に記載のセキュアエレメントであって、前記処理手段は、前記危険度が前記第1レベルより低い第2レベルである場合には、前記複数の処理のうち、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理を行うことを特徴とする。   The invention according to claim 6 is the secure element according to claim 5, wherein the processing means, when the risk is a second level lower than the first level, the plurality of processes. Among them, it is characterized in that a premaster secret generation process, an encryption process of the premaster secret, a master secret generation process, and a session key generation process are performed.

請求項7に記載の発明は、請求項6に記載のセキュアエレメントであって、前記処理手段は、前記危険度が前記第2レベルより低い第3レベルである場合には、前記複数の処理のうち、署名の生成処理を行うことを特徴とする。   The invention according to claim 7 is the secure element according to claim 6, wherein the processing means is for the plurality of processes when the risk level is a third level lower than the second level. Among them, it is characterized in that a signature generation process is performed.

請求項8に記載の発明は、請求項4に記載のセキュアエレメントであって、前記記憶手段は、前記危険度が前記所定のレベルより低い場合には、前記複数種類のデータのうち、前記セッション鍵のみを記憶することを特徴とする。   The eighth aspect of the present invention is the secure element according to the fourth aspect, wherein, when the degree of risk is lower than the predetermined level, the storage means is the session among the plurality of types of data. It is characterized in that only the key is stored.

請求項9に記載の発明は、サーバとの間で暗号化通信を行うとともに、セキュアエレメントが接続されたクライアント端末であって、前記暗号化通信のために記憶する複数種類のデータのうち、前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、前記セキュアエレメントに送信して記憶させる第1制御手段と、前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を前記セキュアエレメントに行わせる第2制御手段と、を備えることを特徴とする。   The invention according to claim 9 is a client terminal which performs encrypted communication with a server and to which a secure element is connected, and among the plurality of types of data stored for the encrypted communication, First control means for transmitting to the secure element and storing at least a part of types of data according to the degree of risk of communication with the server, and a plurality of processes performed for the encrypted communication; And second control means for causing the secure element to perform at least a part of the processing according to the degree of risk of the communication.

請求項10に記載の発明は、サーバとの間で暗号化通信を行うクライアント端末に接続され、記憶手段と処理手段を備えるセキュアエレメントによる情報処理方法であって、前記記憶手段が、前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶工程と、前記処理手段が、前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理工程と、を含むことを特徴とする。   The invention according to claim 10 is an information processing method by a secure element connected to a client terminal for performing encrypted communication with a server, the storage element comprising a storage means and a processing means, wherein the storage means is the client terminal Among the plurality of types of data stored for the encrypted communication, at least some of the types of data corresponding to the risk of communication between the client terminal and the server are stored instead of the client terminal And at least a part of the plurality of processes performed by the client terminal for the encrypted communication according to the degree of risk of the communication, instead of the client terminal. And a processing step.

請求項11に記載の発明は、サーバとの間で暗号化通信を行うクライアント端末に接続され、前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶手段を備えるセキュアエレメントに含まれるコンピュータを、前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理手段、として機能させることを特徴とする。   The invention according to claim 11 is connected to a client terminal that performs encrypted communication with a server, and the client terminal and the client terminal among the plurality of types of data stored by the client terminal for the encrypted communication The client terminal includes a computer included in a secure element including storage means for storing instead of the client terminal at least some types of data according to the degree of risk of communication with the server, the client terminal performing the encrypted communication Among the plurality of processes to be performed, at least a part of the processes corresponding to the degree of risk of the communication is made to function as processing means to perform in place of the client terminal.

本発明によれば、クライアント端末がサーバとの暗号化通信のために記憶する複数種類のデータや、クライアント端末がサーバとの暗号化通信のために行う複数の処理について、セキュアエレメントがクライアント端末とサーバとの間の通信の危険度に応じた、一部の種類のデータを記憶したり、一部の処理を行ったりすることにより、クライアント端末がサーバとの間で行う暗号化通信において、クライアント端末側について充分なセキュリティを確保することができる。   According to the present invention, the secure element communicates with the client terminal with respect to a plurality of types of data stored by the client terminal for encrypted communication with the server and a plurality of processes performed by the client terminal for encrypted communication with the server. In encrypted communication performed by the client terminal with the server, by storing some types of data or performing some processing according to the degree of risk of communication with the server Sufficient security can be secured on the terminal side.

本実施形態に係る通信システムSの概要構成例を示すブロック図である。It is a block diagram showing an example of outline composition of communication system S concerning this embodiment. 本実施形態に係る端末1の概要構成例を示すブロック図である。It is a block diagram showing an example of outline composition of terminal 1 concerning this embodiment. 本実施形態に係る端末1の記憶部12に記憶される危険度判定テーブルTの構成例を示す図である。It is a figure which shows the structural example of danger degree determination table T memorize | stored in the memory | storage part 12 of the terminal 1 which concerns on this embodiment. 本実施形態に係るセキュアエレメント18の概要構成例を示すブロック図である。It is a block diagram showing an example of outline composition of secure element 18 concerning this embodiment. は本実施形態に係るサーバ2の概要構成例を示すブロック図である。These are block diagrams which show the example of a outline | summary structure of the server 2 which concerns on this embodiment. 本実施形態に係る端末1の制御部11による危険度判定処理の一例を示すフローチャートである。It is a flowchart which shows an example of the danger degree determination processing by the control part 11 of the terminal 1 which concerns on this embodiment. 本実施形態に係る通信システムSの動作例(危険度「3」の場合)を示すシーケンス図である。It is a sequence diagram which shows the operation example (in the case of danger "3") of the communication system S which concerns on this embodiment. 本実施形態に係る通信システムSの動作例(危険度「2」の場合)を示すシーケンス図である。It is a sequence diagram which shows the operation example (in the case of danger "2") of the communication system S which concerns on this embodiment. 本実施形態に係る通信システムSの動作例(危険度「1」の場合)を示すシーケンス図である。It is a sequence diagram which shows the operation example (in the case of danger "1") of the communication system S which concerns on this embodiment. 変形例1に係る通信システムSの動作例を示すシーケンス図である。It is a sequence diagram which shows the operation example of communication system S which concerns on the modification 1. FIG. 変形例2に係る端末1の記憶部12に記憶される危険度判定テーブルT2の構成例を示す図である。It is a figure which shows the structural example of danger degree determination table T2 memorize | stored in the memory | storage part 12 of the terminal 1 which concerns on a modification 2. FIG.

以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、端末とサーバを含む通信システムにおいて、端末に搭載されるICチップ(「セキュアエレメント(SE)」という)に対して本発明を適用した場合の実施の形態である。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The embodiment described below is an embodiment in the case where the present invention is applied to an IC chip (referred to as “secure element (SE)”) mounted on a terminal in a communication system including a terminal and a server.

まず、図1等を参照して、本実施形態に係る通信システムSと端末1の構成及び機能概要を説明する。   First, the configuration and function outline of the communication system S and the terminal 1 according to the present embodiment will be described with reference to FIG. 1 and the like.

[1.通信システムSの構成]
図1は、本実施形態に係る通信システムSの概要構成例を示すブロック図である。通信システムSは、端末1とセキュアエレメント18とサーバ2−1、2−2、2−3(サーバ2−1、2−2、2−3をまとめてサーバ2という場合がある)を含んで構成され、端末1と各サーバ2は、ネットワークNWを介して相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、LAN(Local Area Network)、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築されている。
[1. Configuration of Communication System S]
FIG. 1 is a block diagram showing an example of a schematic configuration of a communication system S according to the present embodiment. Communication system S includes terminal 1, secure element 18, and servers 2-1, 2-2, 2-3 (servers 2-1, 2-2, 2-3 may be collectively referred to as server 2). The terminal 1 and each server 2 can transmit and receive data mutually via the network NW. The network NW is constructed by, for example, a LAN (Local Area Network), the Internet, a dedicated communication line (for example, a CATV (Community Antenna Television) line), a mobile communication network (including a base station etc.), and a gateway. ing.

端末1は、温度センサーを備えており、周囲の温度を測定して得た温度データを記録するIoTデバイスである。サーバ2−1は、端末1の属するLAN外に設置されたサーバであり、端末1の保持する鍵情報を更新するサーバである。サーバ2−2は、端末1の属するLAN外に設置されたサーバであり、端末1の保持する鍵情報を更新しないサーバである。サーバ2−3は、端末1の属するLAN内に設置されたサーバである。   The terminal 1 is an IoT device that includes a temperature sensor and measures temperature data obtained by measuring the ambient temperature. The server 2-1 is a server installed outside the LAN to which the terminal 1 belongs, and is a server that updates key information held by the terminal 1. The server 2-2 is a server installed outside the LAN to which the terminal 1 belongs, and is a server that does not update key information held by the terminal 1. The server 2-3 is a server installed in the LAN to which the terminal 1 belongs.

[2.端末1の構成]
図2は、本実施形態に係る端末1の概要構成例を示すブロック図である。図2に示すように、端末1は、制御部11、記憶部12、無線通信部13、表示部14、入力部15、SE(セキュアエレメント)インターフェース16等を備えて構成され、これらの構成要素はバス17を介して相互に接続される。また、セキュアエレメント18は、SEインターフェース16に接続されており、端末1とデータの送受信が可能となっている。
[2. Configuration of terminal 1]
FIG. 2 is a block diagram showing an example of a schematic configuration of the terminal 1 according to the present embodiment. As shown in FIG. 2, the terminal 1 includes a control unit 11, a storage unit 12, a wireless communication unit 13, a display unit 14, an input unit 15, an SE (secure element) interface 16, etc. Are connected to one another via a bus 17. The secure element 18 is connected to the SE interface 16 so that data can be transmitted to and received from the terminal 1.

制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、及びRAM(Random Access Memory)等により構成される。記憶部12は、例えばフラッシュメモリ等の不揮発性メモリにより構成される。上記ROMまたは記憶部12には、OS(Operating System)及びミドルウェアが記憶される。また、記憶部12には、端末1にインストールされたアプリケーションソフトウェア(アプリケーションプログラム言語から構成されるソフトウェア)等が記憶される。   The control unit 11 is configured by a central processing unit (CPU), a read only memory (ROM), a random access memory (RAM), and the like. The storage unit 12 is configured of, for example, a non-volatile memory such as a flash memory. The ROM or the storage unit 12 stores an OS (Operating System) and middleware. The storage unit 12 also stores application software (software configured with an application program language) or the like installed in the terminal 1.

また、記憶部12には危険度判定テーブルTが記憶される。図3は、危険度判定テーブルTの概要構成例を示す図である。危険度判定テーブルTには、「接続するサーバのアドレス」と、これに対応する「危険度」を示す情報が規定されている。具体的には、「鍵情報を更新する外部サーバのアドレス」と対応付けて「3(高)」が規定され、「その他の外部サーバのアドレス」と対応付けて「2(中)」が規定され、「同一LAN内のサーバのアドレス」と対応付けて「1(低)」が規定されている。なお、例えば、サーバ2−1は、「鍵情報を更新する外部サーバ」に該当し、サーバ2−2は、「その他の外部サーバ」に該当し、サーバ2−3は、「同一LAN内のサーバ」に該当する。   Further, the storage unit 12 stores a degree-of-risk determination table T. FIG. 3 is a diagram showing an example of a schematic configuration of the danger level determination table T. As shown in FIG. In the degree-of-risk determination table T, “address of server to be connected” and information indicating “degree of risk” corresponding thereto are defined. Specifically, "3 (high)" is defined in association with "address of external server updating key information", and "2 (middle)" is defined in association with "address of other external server" And “1 (low)” is defined in association with “the address of the server in the same LAN”. For example, the server 2-1 corresponds to "an external server that updates key information", the server 2-2 corresponds to an "other external server", and the server 2-3 "in the same LAN" It corresponds to "server".

更に、記憶部12には、サーバ2−1との通信に利用するクライアント証明書、サーバ2−2との通信に利用するクライアント証明書、クライアント秘密鍵、サーバ2−3との通信に利用するクライアント証明書、サーバ公開鍵が記憶される。   Furthermore, the storage unit 12 uses a client certificate used for communication with the server 2-1, a client certificate used for communication with the server 2-2, a client secret key, and communication with the server 2-3. The client certificate and server public key are stored.

無線通信部13は、アンテナを有し、無線LANルータ(又は移動体通信網における基地局)との間で行われる無線通信を制御する。表示部14は、例えば液晶パネルを有し、液晶パネルの表示制御を行うことにより、操作画面等を表示する。入力部15は、ユーザからの操作指示を受け付ける操作ボタンを有し、操作指示に応じた信号を制御部11に出力する。SEインターフェース16は、制御部11とセキュアエレメント18との間のインターフェースを担う。   The wireless communication unit 13 has an antenna, and controls wireless communication performed with a wireless LAN router (or a base station in a mobile communication network). The display unit 14 includes, for example, a liquid crystal panel, and displays an operation screen and the like by performing display control of the liquid crystal panel. The input unit 15 has an operation button for receiving an operation instruction from the user, and outputs a signal corresponding to the operation instruction to the control unit 11. The SE interface 16 is responsible for the interface between the control unit 11 and the secure element 18.

[3.セキュアエレメント18の構成]
図4は、本実施形態に係るセキュアエレメント18の概要構成例を示すブロック図である。図4に示すように、セキュアエレメント18は、耐タンパー性を備えたICチップであり、CPU181、RAM182、フラッシュメモリ183、及びI/O回路184等を備え、これらの構成要素はバス185を介して相互に接続される。
[3. Configuration of Secure Element 18]
FIG. 4 is a block diagram showing a schematic configuration example of the secure element 18 according to the present embodiment. As shown in FIG. 4, the secure element 18 is an IC chip with tamper resistance, and comprises a CPU 181, a RAM 182, a flash memory 183, an I / O circuit 184, etc. Connected to each other.

RAM182には、例えばOS、ミドルウェア、各種アプリケーションが機能するうえで一時的に必要となるデータが記憶される。   The RAM 182 stores, for example, data temporarily necessary for the OS, middleware, and various applications to function.

フラッシュメモリ183は、例えばNOR型フラッシュメモリであって、OS、ミドルウェア及びアプリケーション等を記憶する。   The flash memory 183 is, for example, a NOR flash memory, and stores an OS, middleware, an application, and the like.

また、フラッシュメモリ183は、サーバ2−1との通信に利用するサーバ公開鍵、クライアント秘密鍵、サーバ2−2との通信に利用するサーバ公開鍵、サーバ2−3との通信に利用するクライアント秘密鍵が記憶される。   The flash memory 183 also includes a server public key used for communication with the server 2-1, a client secret key, a server public key used for communication with the server 2-2, and a client used for communication with the server 2-3. The secret key is stored.

I/O回路184は、ISO7816等によって定められた、C1〜C8の8個の接続端子を有する。ここで、C1端子は電源端子(VCC)であり、C5端子はグランド端子(GND)である。また、C2端子は、リセット端子(RST)であり、C3端子は、クロック端子(CLK)である。また、C7端子は、CPU181と制御部11との間の通信のために用いられる。   The I / O circuit 184 has eight connection terminals C1 to C8 defined by ISO 7816 or the like. Here, the C1 terminal is a power supply terminal (VCC), and the C5 terminal is a ground terminal (GND). The C2 terminal is a reset terminal (RST), and the C3 terminal is a clock terminal (CLK). The C7 terminal is used for communication between the CPU 181 and the control unit 11.

CPU181は、制御部11からコマンドを受信すると、当該コマンドに応じた処理を実行し、コマンドに対する応答を制御部11に対して行う。なお、CPU181は、端末1の制御部11に含まれるCPUより処理速度が遅いものが使用されている。   When the CPU 181 receives a command from the control unit 11, the CPU 181 executes a process corresponding to the command and sends a response to the command to the control unit 11. The CPU 181 has a slower processing speed than the CPU included in the control unit 11 of the terminal 1.

[4.サーバ2の構成]
次に、サーバ2の構成について説明する。図5に示すように、サーバ2は、大別して、制御部211、記憶部212、通信部213、表示部214及び操作部215を含んで構成されている。
[4. Configuration of server 2]
Next, the configuration of the server 2 will be described. As shown in FIG. 5, the server 2 is roughly divided into a control unit 211, a storage unit 212, a communication unit 213, a display unit 214, and an operation unit 215.

記憶部212は、例えばハードディスクドライブ等により構成されており、OS(Operating System)、サービス提供プログラム、及び各種データを記憶する。   The storage unit 212 is configured by, for example, a hard disk drive, and stores an operating system (OS), a service providing program, and various data.

通信部213は、ネットワークNWに接続して、端末1等との通信状態を制御する。   The communication unit 213 is connected to the network NW to control the communication state with the terminal 1 and the like.

表示部214は、例えば、液晶ディスプレイ等により構成されており、文字や画像等の情報を表示するようになっている。   The display unit 214 is configured by, for example, a liquid crystal display or the like, and is configured to display information such as characters and images.

操作部215は、例えば、キーボード、マウス等により構成されており、オペレータからの操作指示を受け付け、その指示内容を指示信号として制御部211に出力するようになっている。   The operation unit 215 includes, for example, a keyboard, a mouse, and the like, receives an operation instruction from the operator, and outputs the instruction content to the control unit 211 as an instruction signal.

制御部211は、CPU、ROM、RAM等により構成されている。そして、CPUが、ROMや記憶部212に記憶された各種プログラムを読み出し実行することにより各種機能を実現する。   The control unit 211 is configured of a CPU, a ROM, a RAM, and the like. Then, the CPU reads and executes various programs stored in the ROM and the storage unit 212 to realize various functions.

[5.通信システムSの動作]
次に、通信システムSにおいて、端末1がサーバ2に接続して、暗号化通信(TLS通信)を行う際のフローについて説明する。まずは、図6を用いて、端末1が通信の危険度を判定する処理について説明し、次いで、図7−図9を用いて、危険度に応じたハンドシェイク(通信データを共通鍵により暗号化して通信を行うための事前処理)について説明する。
[5. Operation of Communication System S]
Next, in the communication system S, a flow when the terminal 1 connects to the server 2 and performs encrypted communication (TLS communication) will be described. First, the process of the terminal 1 determining the risk of communication will be described using FIG. 6, and then the handshake according to the risk (encryption of communication data with the common key is performed using FIG. 7 to FIG. 9). Pre-processing for communication) will be described.

[5.1.端末1の動作]
図6を用いて、端末1がサーバ2に接続する際に行う危険度判定処理について説明する。なお、図6は、端末1の制御部11による危険度判定処理の一例を示すフローチャートである。
[5.1. Operation of terminal 1]
The danger level determination process performed when the terminal 1 connects to the server 2 will be described with reference to FIG. FIG. 6 is a flowchart showing an example of the danger degree determination process by the control unit 11 of the terminal 1.

端末1の制御部11は、サーバ2に接続を開始する際、接続するサーバ2のアドレスを取得する(ステップS1)。   When starting connection to the server 2, the control unit 11 of the terminal 1 acquires the address of the server 2 to be connected (step S1).

次に、制御部11は、危険度判定テーブルTを参照し、ステップS1の処理で取得したアドレスに基づいて危険度を判定し(ステップS2)、危険度判定処理を終了する。   Next, the control unit 11 refers to the degree-of-risk determination table T, determines the degree of risk based on the address acquired in the process of step S1 (step S2), and ends the degree-of-risk determination process.

すなわち、制御部11は、危険度判定処理により、接続するサーバ2に応じて、端末1とサーバ2の間の通信の危険度が「1」〜「3」の何れであるかを判定する。   That is, the control unit 11 determines which of “1” to “3” the risk degree of communication between the terminal 1 and the server 2 is in accordance with the server 2 to be connected by the risk degree determination processing.

[5.2.危険度「3」である場合の通信システムSの動作]
次に、図7を用いて、危険度判定処理により危険度が「3」と判定された場合における通信システムSの動作フローについて説明する。
[5.2. Operation of Communication System S When Risk Level is "3"]
Next, the operation flow of the communication system S when the degree of danger is determined to be “3” by the degree of danger determination processing will be described using FIG. 7.

まず、端末1の制御部11は、後述するマスターシークレットを生成するための乱数Aを生成する(ステップS101B)。次いで、制御部11は、ステップS101Bで生成した乱数Aを含むメッセージ「Client Hello」をサーバ2に送信する(ステップS102B)。また、制御部11は、ステップS101で生成した乱数Aをセキュアエレメント18に送信する(ステップS103B)。   First, the control unit 11 of the terminal 1 generates a random number A for generating a master secret described later (step S101B). Next, the control unit 11 transmits the message "Client Hello" including the random number A generated in step S101B to the server 2 (step S102B). The control unit 11 also transmits the random number A generated in step S101 to the secure element 18 (step S103B).

メッセージ「Client Hello」を受信したサーバ2の制御部211は、後述するマスターシークレットを生成するための乱数Bを生成する(ステップS101A)。次いで、制御部11は、ステップS101Aで生成した乱数Bを含むメッセージ「Server Hello」を端末1に送信する(ステップS102A)。   The control unit 211 of the server 2 having received the message "Client Hello" generates a random number B for generating a master secret to be described later (step S101A). Next, the control unit 11 transmits a message "Server Hello" including the random number B generated in step S101A to the terminal 1 (step S102A).

メッセージ「Server Hello」を受信した端末1の制御部11は、メッセージ「Server Hello」に含まれる乱数Bをセキュアエレメント18に送信する(ステップS104B)。   The control unit 11 of the terminal 1 having received the message “Server Hello” transmits the random number B included in the message “Server Hello” to the secure element 18 (step S104B).

次に、セキュアエレメント18のCPU181は、プリマスターシークレットと呼ばれる乱数を生成する(ステップS101C)。次いで、CPU181は、ステップS101Cで生成したプリマスターシークレットを、サーバ公開鍵により暗号化し(ステップS102C)、端末1に送信する(ステップS103C)。なお、CPU181は、プリマスターシークレットをフラッシュメモリ183に記憶させておく。   Next, the CPU 181 of the secure element 18 generates a random number called a premaster secret (step S101C). Next, the CPU 181 encrypts the premaster secret generated in step S101C using the server public key (step S102C), and transmits the encrypted data to the terminal 1 (step S103C). The CPU 181 stores the premaster secret in the flash memory 183.

一方、サーバ2の制御部211は、ステップS102Aの終了後、メッセージ「Certificate Request」を端末1に送信する(ステップS103A)。メッセージ「Certificate Request」は、端末1に対してクライアント認証用の証明書(クライアント証明書)の送信を要求するメッセージである。次いで、制御部211は、メッセージ「Server Hello Done」を端末1に送信する(ステップS104A)。端末1はこれを受けると、メッセージを送信する側になる。   On the other hand, after the end of step S102A, the control unit 211 of the server 2 transmits a message "Certificate Request" to the terminal 1 (step S103A). The message “Certificate Request” is a message for requesting the terminal 1 to transmit a certificate for client authentication (client certificate). Next, the control unit 211 transmits the message "Server Hello Done" to the terminal 1 (step S104A). When the terminal 1 receives this, it becomes the side that sends the message.

端末1の制御部11は、メッセージ「Certificate Request」に対して、クライアント証明書を含むメッセージ「Client Certficate」をサーバ2に送信する(ステップS105B)。なお、クライアント証明書は予め端末1の記憶部12に記憶しておくものとする。   The control unit 11 of the terminal 1 transmits a message "Client Certficate" including the client certificate to the server 2 in response to the message "Certificate Request" (step S105B). The client certificate is stored in advance in the storage unit 12 of the terminal 1.

これに対して、サーバ2の制御部211は、メッセージ「Client Certficate」を端末1から受信すると、これに含まれるクライアント証明書を検証し、クライアント公開鍵を取得する(ステップS105A)。   On the other hand, when the control unit 211 of the server 2 receives the message "Client Certficate" from the terminal 1, the control unit 211 verifies the client certificate contained therein and acquires the client public key (step S105A).

また、制御部11は、セキュアエレメント18から、暗号化されたプリマスターシークレットを受信すると、当該暗号化されたプリマスターシークレットを含むメッセージ「Client Key Exchange」をサーバ2に送信する(ステップS106B)。これに対して、サーバ2の制御部211は、暗号化されたプリマスターシークレットをサーバ秘密鍵で復号化して、プリマスターシークレットを取得する(ステップS106A)。   In addition, when receiving the encrypted premaster secret from the secure element 18, the control unit 11 transmits a message "Client Key Exchange" including the encrypted premaster secret to the server 2 (step S106B). On the other hand, the control unit 211 of the server 2 decrypts the encrypted premaster secret with the server secret key to acquire the premaster secret (step S106A).

端末1の制御部11は、ステップS106Bの終了後、署名作成用データをセキュアエレメント18に送信する(ステップS107B)。なお、署名作成用データは、例えば、それまでにサーバ2との間でやり取りしたコマンドの総ハッシュ値である。   After the end of step S106B, the control unit 11 of the terminal 1 transmits the signature creation data to the secure element 18 (step S107B). The signature creation data is, for example, a total hash value of commands that have been exchanged with the server 2 so far.

これに対して、セキュアエレメント18のCPU181は、署名作成用データとクライアント秘密鍵を用いて署名を生成し(ステップS104C)、端末1に送信する(ステップS105C)。   On the other hand, the CPU 181 of the secure element 18 generates a signature using the signature generation data and the client secret key (step S104C), and transmits it to the terminal 1 (step S105C).

また、CPU181は、ステップS103Bで受信した乱数A、ステップS104Bで受信した乱数B、ステップS101Cで生成したプリマスターシークレットを用いて、マスターシークレットを生成し(ステップS106C)、次いで、セッション鍵を生成する(ステップS107C)。このとき、CPU181は、セッション鍵を生成したことを端末1に報告する。なお、CPU181は、マスターシークレット及びセッション鍵をフラッシュメモリ183に記憶させておく。   Also, the CPU 181 generates a master secret using the random number A received in step S103B, the random number B received in step S104B, and the premaster secret generated in step S101C (step S106C), and then generates a session key. (Step S107C). At this time, the CPU 181 reports to the terminal 1 that the session key has been generated. The CPU 181 stores the master secret and the session key in the flash memory 183.

一方、端末1の制御部11は、セキュアエレメント18から署名を受信すると、当該署名を含むメッセージ「Certificate Verify」をサーバ2に送信する(ステップS108B)。また、制御部11は、セキュアエレメント18からセッション鍵を生成したことの報告を受けると、メッセージ「Client Finished」をサーバ2に送信する(ステップS109B)。   On the other hand, when the control unit 11 of the terminal 1 receives the signature from the secure element 18, the control unit 11 transmits a message "Certificate Verify" including the signature to the server 2 (step S108B). Also, upon receiving a report from the secure element 18 that the session key has been generated, the control unit 11 transmits a message "Client Finished" to the server 2 (step S109B).

他方、サーバ2の制御部211は、端末1からメッセージ「Certificate Verify」を受信すると、これに含まれる署名の検証を、ステップS105Aの処理で取得したクライアント公開鍵を用いて行う。   On the other hand, when the control unit 211 of the server 2 receives the message "Certificate Verify" from the terminal 1, the control unit 211 performs the verification of the signature included in this using the client public key acquired in the process of step S105A.

次いで、制御部211は、ステップS102Bで受信した乱数A、ステップS101Aで生成した乱数B、ステップS106Aで取得したプリマスターシークレットを用いて、マスターシークレットを生成し(ステップS108A)、次いで、セッション鍵を生成する(ステップS109A)。そして、制御部211は、メッセージ「Server Finished」を端末1に送信する(ステップS110A)。   Next, the control unit 211 generates a master secret using the random number A received in step S102B, the random number B generated in step S101A, and the premaster secret acquired in step S106A (step S108A), and then the session key It generates (step S109A). Then, the control unit 211 transmits the message "Server Finished" to the terminal 1 (step S110A).

以降、端末1とサーバ2はセッション鍵(共通鍵)を用いてデータを暗号化して通信を行う。但し、端末1は、セッション鍵をセキュアエレメント18に記憶させているので、サーバ2から暗号化データを受信した際には、暗号化データをセキュアエレメント18に送信し、セキュアエレメント18にセッション鍵で復号化してもらったデータを受信する。また、端末1がサーバ2にデータ(例えば、温度データ)を送信する際には、当該データをセキュアエレメント18に送信し、セキュアエレメント18にセッション鍵で暗号化してもらった暗号化データを受信して、これをサーバ2に送信する。   Thereafter, the terminal 1 and the server 2 perform communication by encrypting data using a session key (common key). However, since the terminal 1 stores the session key in the secure element 18, when receiving the encrypted data from the server 2, the terminal 1 transmits the encrypted data to the secure element 18, and uses the session key in the secure element 18 Receive the decrypted data. In addition, when the terminal 1 transmits data (for example, temperature data) to the server 2, the data is transmitted to the secure element 18, and the encrypted data encrypted by the secure element 18 with the session key is received. Sends this to the server 2.

[5.3.危険度「2」である場合の通信システムSの動作]
次に、図8を用いて、危険度判定処理により危険度が「2」と判定された場合における通信システムSの動作フローについて説明する。但し、一部の処理を除き、危険度判定処理により危険度が「3」と判定された場合における通信システムSの動作フローと同様であるため、ここでは相違点を中心に説明する。なお、図8では、図7の処理内容と同様の処理について図7と同じ符号(ステップ番号)を付している。
[5.3. Operation of Communication System S When Risk Level is "2"]
Next, an operation flow of the communication system S in the case where the degree of danger is determined to be “2” by the degree of danger determination processing will be described using FIG. 8. However, except for a part of the processing, it is the same as the operation flow of the communication system S in the case where the degree of danger is determined to be “3” by the degree of danger determination processing. In FIG. 8, the same processing as that of FIG. 7 is denoted by the same reference numeral (step number) as that in FIG. 7.

危険度が「3」の場合と危険度が「2」の場合の相違点は、危険度が「3」の場合、セキュアエレメント18のCPU181が署名を生成(ステップS104C)するのに対して、危険度が「2」の場合、端末1の制御部11が署名を生成する点である。   The difference between the case where the degree of risk is "3" and the case where the degree of risk is "2" is that the CPU 181 of the secure element 18 generates a signature (step S104C) when the degree of risk is "3". When the degree of danger is "2", the control unit 11 of the terminal 1 generates a signature.

すなわち、端末1の制御部11は、ステップS106Bの終了後、署名作成用データとクライアント秘密鍵を用いて署名を生成し(ステップS201B)、端末1に送信する(ステップS108B)。   That is, after the end of step S106B, the control unit 11 of the terminal 1 generates a signature using the data for signature generation and the client secret key (step S201B), and transmits it to the terminal 1 (step S108B).

一方、セキュアエレメント18のCPU181は、ステップS103Cの終了後、ステップS106Cに移行する。   On the other hand, after the end of step S103C, the CPU 181 of the secure element 18 proceeds to step S106C.

このように、危険度判定処理により危険度が「2」と判定された場合、署名生成をセキュアエレメント18のCPU181ではなく、端末1の制御部11で行うため、危険度判定処理により危険度が「3」と判定された場合と比較して、署名生成に要する処理時間を短縮することができる。なお、危険度が「2」と判定された場合、フラッシュメモリ183に記憶されるのは、プリマスターシークレット、クライアント秘密鍵、マスターシークレット及びセッション鍵のうち、プリマスターシークレット、マスターシークレット及びセッション鍵の3つのデータである。   As described above, when the degree of danger is determined to be “2” by the degree of danger determination processing, the signature generation is performed not by the CPU 181 of the secure element 18 but by the control unit 11 of the terminal 1. The processing time required to generate a signature can be shortened compared to when it is determined that "3". If the degree of risk is determined to be “2”, the flash memory 183 stores the premaster secret, the master secret and the session key among the premaster secret, the client secret key, the master secret and the session key. There are three data.

[5.4.危険度「1」である場合の通信システムSの動作]
次に、図9を用いて、危険度判定処理により危険度が「1」と判定された場合における通信システムSの動作フローについて説明する。但し、一部の処理を除き、危険度判定処理により危険度が「3」と判定された場合における通信システムSの動作フローと同様であるため、ここでは相違点を中心に説明する。なお、図9では、図7の処理内容と同様の処理について図7と同じ符号(ステップ番号)を付している。
[5.4. Operation of Communication System S When Risk Level is "1"
Next, the operation flow of the communication system S in the case where the degree of danger is determined to be “1” by the degree of danger determination processing will be described using FIG. 9. However, except for a part of the processing, it is the same as the operation flow of the communication system S in the case where the degree of danger is determined to be “3” by the degree of danger determination processing. In FIG. 9, the same processing as that of FIG. 7 is denoted by the same reference numeral (step number) as that of FIG.

危険度が「3」の場合と危険度が「1」の場合の相違点は、危険度が「3」の場合、セキュアエレメント18のCPU181が、プリマスターシークレットの生成及び暗号化(ステップS101C、ステップS102C)、及び、マスターシークレットの生成(ステップS106C)及びセッション鍵の生成(ステップS107C)を行うのに対して、危険度が「1」の場合、端末1の制御部11がこれらの処理を行う点である。   The difference between the case where the degree of danger is "3" and the case where the degree of danger is "1" is that when the degree of danger is "3", the CPU 181 of the secure element 18 generates and encrypts a premaster secret (step S101C, In contrast to performing step S102C), and generation of a master secret (step S106C) and generation of a session key (step S107C), when the degree of risk is "1", the control unit 11 of the terminal 1 performs these processes. It is the point to do.

すなわち、端末1の制御部11は、ステップS101Bの処理で乱数Aを生成し、サーバ2から乱数Bを受信すると、プリマスターシークレットと呼ばれる乱数を生成し(ステップS301B)、次いでこれをサーバ公開鍵により暗号化する(ステップS302B)。そして、制御部11は、当該暗号化されたプリマスターシークレットを含むメッセージ「Client Key Exchange」をサーバ2に送信する(ステップS106B)。   That is, when the control unit 11 of the terminal 1 generates the random number A in the process of step S101B and receives the random number B from the server 2, the control unit 11 generates a random number called premaster secret (step S301B). To encrypt (step S302B). Then, the control unit 11 transmits a message "Client Key Exchange" including the encrypted premaster secret to the server 2 (step S106B).

また、端末1の制御部11は、プリマスターシークレットを生成すると、ステップS101Bで生成した乱数A、ステップS102Aで受信した乱数B、ステップS301Bで生成したプリマスターシークレットを用いて、マスターシークレットを生成し(ステップS303B)、次いで、セッション鍵を生成する(ステップS304B)。そして、制御部11は、当該セッション鍵を記憶部12に記憶させる。   In addition, when generating the premaster secret, the control unit 11 of the terminal 1 generates a master secret using the random number A generated in step S101B, the random number B received in step S102A, and the premaster secret generated in step S301B. (Step S303B) Then, a session key is generated (step S304B). Then, the control unit 11 stores the session key in the storage unit 12.

一方、セキュアエレメント18のCPU181は、端末1から署名作成用データを受信するまで待機しており、署名作成用データを受信すると、ステップS104C及びステップS105Cを実行する。   On the other hand, the CPU 181 of the secure element 18 stands by until the data for signature generation is received from the terminal 1, and when the data for signature generation is received, executes step S104C and step S105C.

このように、危険度判定処理により危険度が「1」と判定された場合、プリマスターシークレットの生成及び暗号化や、マスターシークレット及びセッション鍵の生成をセキュアエレメント18のCPU181ではなく、端末1の制御部11で行うため、危険度判定処理により危険度が「3」や「2」と判定された場合と比較して、これらの処理に要する処理時間を短縮することができる。   As described above, when the degree of danger is determined to be “1” by the degree of danger determination processing, the generation and encryption of the premaster secret and the generation of the master secret and the session key are not performed by the CPU 181 of the secure element 18. Since the control unit 11 performs the process, the processing time required for these processes can be shortened as compared to the case where the risk is determined as “3” or “2” by the risk determination process.

以上説明したように、本実施形態のセキュアエレメント18は、サーバ2との間で暗号化通信を行う端末1(「クライアント端末」の一例)に接続され、フラッシュメモリ183(「記憶手段」の一例)が、端末1が暗号化通信のために記憶するプリマスターシークレット、マスターシークレット、セッション鍵(「複数種類のデータ」の一例)のうち、端末1とサーバ2との間の通信の危険度に応じた少なくとも一部の種類のデータを、端末1の代わりに記憶し、CPU181(「処理手段」の一例)が、端末1が暗号化通信のために行うプリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、署名の生成処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理(「複数の処理」の一例)のうち、通信の危険度に応じた少なくとも一部の処理を、端末1の代わりに行う。   As described above, the secure element 18 according to the present embodiment is connected to the terminal 1 (an example of a “client terminal”) that performs encrypted communication with the server 2, and the flash memory 183 (an example of a “storage unit”) Of the premaster secret, the master secret, and the session key (an example of “a plurality of types of data”) stored by the terminal 1 for encrypted communication, according to the degree of risk of communication between the terminal 1 and the server 2). Data of at least a part of the corresponding type is stored instead of the terminal 1 and the CPU 181 (an example of the “processing means”) performs a premaster secret generation process performed by the terminal 1 for encrypted communication, the premaster Secret encryption processing, signature generation processing, master secret generation processing, and session key generation processing (an example of “multiple processing”) Chi, at least part of the processing corresponding to the communication risk, performed in place of the terminal 1.

したがって、本実施形態のセキュアエレメント18によれば、端末1がサーバ2との暗号化通信のために記憶するプリマスターシークレット、マスターシークレット及びセッション鍵や、端末1がサーバ2との暗号化通信のために行うプリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、署名の生成処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理について、セキュアエレメント18が端末1とサーバ2との間の通信の危険度に応じた、一部の種類のデータを記憶したり、一部の処理を行ったりすることにより、端末1がサーバ2との間で行う暗号化通信において、端末1側について充分なセキュリティを確保することができる。   Therefore, according to the secure element 18 of the present embodiment, the premaster secret, the master secret and the session key stored by the terminal 1 for encrypted communication with the server 2, and the encrypted communication between the terminal 1 and the server 2 For the premaster secret generation process, the premaster secret encryption process, the signature generation process, the master secret generation process, and the session key generation process, the secure element 18 performs processing between the terminal 1 and the server 2. In encrypted communication performed by the terminal 1 with the server 2 by storing some types of data or performing some processing according to the degree of risk of communication between the terminals Sufficient security can be secured.

また、CPU181は、危険度が「3(高)」である場合には、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、署名の生成処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理を行う。   Further, when the degree of risk is “3 (high)”, the CPU 181 generates a premaster secret, encrypts the premaster secret, generates a signature, generates a master secret, and the session. Perform key generation processing.

更に、セキュアエレメント18のフラッシュメモリ183は、危険度が「3(高)」又は「2(中)」(「所定のレベル以上」の一例)である場合には、プリマスターシークレット、マスターシークレット及びセッション鍵を記憶する。また、CPU181は、危険度が「2(中)」である場合には、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理を行う。   Furthermore, when the degree of risk is “3 (high)” or “2 (middle)” (an example of “prescribed level or higher”), the flash memory 183 of the secure element 18 includes the premaster secret, the master secret and Store session key. Further, when the degree of danger is “2 (middle)”, the CPU 181 generates premaster secret, encrypts the premaster secret, generates a master secret, and generates a session key. Do.

更にまた、CPU181は、危険度が「1(低)」である場合には、署名の生成処理を行う。   Furthermore, when the degree of danger is “1 (low)”, the CPU 181 performs a signature generation process.

このように、本実施形態のセキュアエレメント18は、危険度が高いほど、暗号化通信のために記憶するデータを多く記憶し、また、危険度が高いほど、暗号化通信のために行う処理を多く行う。これにより、端末1がサーバ2との間で行う暗号化通信において、端末1側について充分なセキュリティを確保することができる。また、セキュアエレメント18のCPU181は、端末1側について必要以上にセキュリティを確保しないため、端末1の制御部11と比較して処理速度の落ちるセキュアエレメント18のCPU181が不要な処理を行うことによる時間の無駄を削減することができる。   As described above, the secure element 18 of the present embodiment stores more data to be stored for encrypted communication as the degree of risk is higher, and the process performed for the encrypted communication as the degree of risk is higher. Do a lot. As a result, in encrypted communication performed by the terminal 1 with the server 2, sufficient security can be secured on the terminal 1 side. In addition, since the CPU 181 of the secure element 18 does not secure security more than necessary on the terminal 1 side, the time due to the unnecessary processing of the CPU 181 of the secure element 18 whose processing speed is lower than that of the control unit 11 of the terminal 1 It is possible to reduce the waste of

[6.変形例]
次に、上記実施形態の変形例について説明する。なお、以下に説明する変形例は適宜組み合わせることができる。
[6. Modified example]
Next, modifications of the above embodiment will be described. In addition, the modification demonstrated below can be combined suitably.

[6.1.変形例1]
次に、図10を用いて、危険度判定処理により危険度が「1」と判定された場合における通信システムSの動作の変形例1について説明する。変形例1では、図10に示すように、図9におけるセキュアエレメント18のCPU181が行う署名生成を、図8と同様に、端末1の制御部11が行うものである。なお、図10では、図8、図9の処理内容と同様の処理について図8、図9と同じ符号(ステップ番号)を付している。
[6.1. Modification 1]
Next, with reference to FIG. 10, a first modification of the operation of the communication system S in the case where the risk degree is determined to be “1” by the risk degree determination process will be described. In the first modification, as shown in FIG. 10, the control unit 11 of the terminal 1 performs the signature generation performed by the CPU 181 of the secure element 18 in FIG. 9 as in FIG. In FIG. 10, the same processes as those in FIGS. 8 and 9 are denoted by the same reference numerals (step numbers) as those in FIGS.

変形例1は、危険度判定処理により危険度が「2」と判定された場合(図8参照)と、危険度判定処理により危険度が「1」と判定された場合(図9参照)の組み合わせ例であるが、端末1の制御部11はステップS304Bの処理で生成したセッション鍵を、セキュアエレメント18に送信して、記憶させる。つまり、端末1の制御部11はセッション鍵の生成までの処理を行うが、セッション鍵は端末1の記憶部12ではなくセキュアエレメント18に記憶される。なお、変形例1において危険度が「1」(「所定のレベルより低い」の一例)と判定された場合、フラッシュメモリ183に記憶されるのは、プリマスターシークレット、マスターシークレット及びセッション鍵のうち、セッション鍵だけである。   In the first modification, when the degree of danger is determined to be “2” by the degree of danger determination processing (see FIG. 8) and when the degree of danger is determined to be “1” by the danger degree determination processing (see FIG. 9) As a combination example, the control unit 11 of the terminal 1 transmits the session key generated in the process of step S304B to the secure element 18 and stores it. That is, although the control unit 11 of the terminal 1 performs processing up to generation of a session key, the session key is stored not in the storage unit 12 of the terminal 1 but in the secure element 18. In the first modification, when it is determined that the degree of risk is “1” (an example of “lower than a predetermined level”), the flash memory 183 stores the premaster secret, the master secret, and the session key. , Session key only.

なお、変形例1では、図10の処理を危険度が「1」と判定された場合における例として説明したが、例えば、危険度判定処理において危険度を「1」〜「4」の4段階で判定することとし(危険度判定テーブルTも危険度「4」の行を追加しておくこととする)、図7の処理を危険度が「4」と判定された場合に実行し、図8の処理を危険度が「3」と判定された場合に実行し、図9の処理を危険度が「2」と判定された場合に実行し、図10の処理を危険度が「1」と判定された場合に実行することとしてもよい。   In the first modification, the process of FIG. 10 is described as an example in the case where the degree of risk is determined to be “1”. For example, in the degree of risk determination process, the degree of risk is classified into four stages of “1” to “4”. (The risk determination table T also adds a row with a risk of “4”), and the process in FIG. 7 is executed when the risk is determined to be “4”. Process 8 is executed when the risk is determined to be “3”, and the process in FIG. 9 is executed when the risk is determined to be “2”, and the process in FIG. 10 is determined to be “1” It may be executed when it is determined that

[6.2.変形例2]
上記実施形態では、図6の危険度判定処理における危険度判定に、図3の危険度判定テーブルTを参照することとしたが、これに代えて、図11の危険度判定テーブルT2を参照することとしてもよい。図11は、危険度判定テーブルT2の概要構成例を示す図である。危険度判定テーブルT2には、「通信の目的」と、これに対応する「危険度」を示す情報が規定されている。具体的には、「端末ソフトウェアの更新」と対応付けて「3(高)」が規定され、「温度データの送信」と対応付けて「2(中)」が規定され、「テストデータの送信」と対応付けて「1(低)」が規定されている。
[6.2. Modification 2]
In the above embodiment, the danger degree judgment table T of FIG. 3 is referred to for the danger degree judgment in the danger degree judgment processing of FIG. 6, but instead, the danger degree judgment table T2 of FIG. You may do it. FIG. 11 is a diagram showing an example of a schematic configuration of the degree-of-risk determination table T2. In the degree-of-risk determination table T2, information indicating “purpose of communication” and “degree of risk” corresponding thereto is defined. Specifically, "3 (high)" is defined in association with "update of terminal software", "2 (middle)" is defined in association with "transmission of temperature data", and "transmission of test data""1(low)" is defined in association with "."

[6.3.変形例3]
上記実施形態では、端末1とサーバ2の間の通信の危険度を端末1の制御部11が判定することとしたが、サーバ2の制御部211やセキュアエレメント18のCPU181が判定することとしてもよい。
6.3. Modification 3]
Although the control unit 11 of the terminal 1 determines the risk of communication between the terminal 1 and the server 2 in the above embodiment, the control unit 211 of the server 2 and the CPU 181 of the secure element 18 may also determine Good.

サーバ2の制御部211が危険度を判定する場合であれば、危険度判定テーブルTの代わりに、例えば、「接続するクライアント端末のアドレス」と危険度を3段階(「3(高)」、「2(中)」、「1(低)」)で規定する危険度判定テーブル(図示しない)を記憶部212に記憶させる。このとき、危険度判定テーブルは、例えば、「鍵情報の更新対象である外部端末のアドレス」と対応付けて「3(高)」を規定し、「その他の外部端末のアドレス」と対応付けて「2(中)」を規定し、「同一LAN内の端末のアドレス」と対応付けて「1(低)」を規定するようにする。そして、制御部211は、端末1と接続する際に、端末1のアドレスを取得し、当該危険度判定テーブルを参照して危険度を判定することとする。   If the control unit 211 of the server 2 determines the degree of risk, instead of the degree-of-risk determination table T, for example, “the address of the client terminal to be connected” and the degree of risk are classified into three stages (“3 (high)”, The storage unit 212 stores a degree-of-risk determination table (not shown) defined by “2 (middle)” and “1 (low)”. At this time, the degree-of-risk determination table defines, for example, "3 (high)" in association with "the address of the external terminal for which key information is to be updated" and associates it with "the address of the other external terminal". “2 (middle)” is defined, and “1 (low)” is defined in association with “address of terminal in same LAN”. Then, when connecting to the terminal 1, the control unit 211 acquires the address of the terminal 1 and determines the degree of danger with reference to the degree-of-risk determination table.

また、セキュアエレメント18のCPU181が危険度を判定する場合であれば、危険度判定テーブルTをフラッシュメモリ183に記憶させておき、端末1がサーバ2に接続する際に、制御部11がセキュアエレメント18に危険度判定処理を依頼し、判定結果を受け取ることとする。具体的には、制御部11は、サーバ2と接続する際に、サーバ2のアドレスを取得し、当該アドレスとともに危険度判定処理の依頼をセキュアエレメント18に対して行う。そして、セキュアエレメント18のCPU181は、フラッシュメモリ183に記憶させている危険度判定テーブルTを参照して、端末1から受け取ったアドレスに基づいて危険度判定を行い、危険度を端末1に返信する。   When the CPU 181 of the secure element 18 determines the degree of danger, the danger degree determination table T is stored in the flash memory 183, and when the terminal 1 connects to the server 2, the control unit 11 controls the secure element 18 requests the hazard level determination process and receives the determination result. Specifically, when connecting to the server 2, the control unit 11 acquires the address of the server 2, and sends a request for risk degree determination processing to the secure element 18 together with the address. Then, the CPU 181 of the secure element 18 refers to the degree-of-risk determination table T stored in the flash memory 183, determines the degree of risk based on the address received from the terminal 1, and returns the degree of risk to the terminal 1. .

[6.4.変形例4]
上記実施形態では、端末1が温度センサーを備えており、端末1が温度データをサーバ2に送信する通信システムSについて説明したが、例えば、端末1の代わりである水道メーターに通信機能を持たせるとともにセキュアエレメントを設け、サーバ2に水道使用量データを送信する通信システムとしてもよい。そして、例えば、水道メーターが水道使用量データを送信する場合には危険度「低」として通信を行い、水道メーターのソフトウェアをアップデートするための通信を行う場合には危険度「高」として通信を行うこととしてもよい。
[6.4. Modification 4]
In the above embodiment, although the communication system S in which the terminal 1 includes the temperature sensor and the terminal 1 transmits the temperature data to the server 2 has been described, for example, a water meter which is an alternative to the terminal 1 has a communication function. And a secure element, and may be a communication system that transmits water consumption data to the server 2. Then, for example, when the water meter transmits water consumption data, communication is performed as "low", and when communication is performed to update software of the water meter, communication is performed as "high". You may do it.

また、セキュアエレメントとしてのUSIMカードを備えるスマートフォンとサーバ2の通信システムにおいて、スマートフォンがブラウザでwebページを表示するための通信を行う場合には危険度「低」として通信を行い、スマートフォンのファームウェアのアップデートや、クレジット決済に係る通信を行う場合には危険度「高」として通信を行うこととしてもよい。   In the communication system of the smartphone and the server 2 having the USIM card as the secure element, when the smartphone performs communication for displaying the web page by the browser, the communication is performed with the risk level “low”, and the firmware of the smartphone When communication related to updating or credit settlement is performed, communication may be performed with a high degree of risk.

なお、上記実施形態では、危険度を3段階に分けることとしたが、用途やセキュリティポリシーに従い、4段階以上に分けてもよいし、2段階にしてもよい。   In the above embodiment, the risk level is divided into three levels, but may be divided into four or more levels or in two levels according to the application and the security policy.

1 端末
11 制御部
12 記憶部
13 無線通信部
14 表示部
15 入力部
16 SEインターフェース
17 バス
18 セキュアエレメント
181 CPU
182 RAM
183 フラッシュメモリ
184 I/O回路
185 バス
2 サーバ
Reference Signs List 1 terminal 11 control unit 12 storage unit 13 wireless communication unit 14 display unit 15 input unit 16 SE interface 17 bus 18 secure element 181 CPU
182 RAM
183 flash memory 184 I / O circuit 185 bus 2 server

Claims (11)

サーバとの間で暗号化通信を行うクライアント端末に接続されるセキュアエレメントであって、
前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶手段と、
前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理手段と、
を備えることを特徴とするセキュアエレメント。
A secure element connected to a client terminal that performs encrypted communication with a server,
Among the plurality of types of data stored by the client terminal for the encrypted communication, at least some types of data corresponding to the risk of communication between the client terminal and the server Storage means to store instead;
Processing means for performing at least a part of processing corresponding to the degree of risk of the communication among the plurality of processing performed by the client terminal for the encrypted communication, instead of the client terminal;
A secure element characterized by comprising:
請求項1に記載のセキュアエレメントであって、
前記複数種類のデータは、プリマスターシークレット、マスターシークレット及びセッション鍵であることを特徴とするセキュアエレメント。
A secure element according to claim 1, wherein
The secure element characterized in that the plurality of types of data are a premaster secret, a master secret, and a session key.
請求項1又は2に記載のセキュアエレメントであって、
前記複数の処理は、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、署名の生成処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理であることを特徴とするセキュアエレメント。
The secure element according to claim 1 or 2, wherein
The secure element characterized in that the plurality of processes are a premaster secret generation process, an encryption process of the premaster secret, a signature generation process, a master secret generation process, and a session key generation process.
請求項2に記載のセキュアエレメントであって、
前記記憶手段は、前記危険度が所定のレベル以上である場合には、前記複数種類のデータを全て記憶することを特徴とするセキュアエレメント。
The secure element according to claim 2, wherein
A secure element characterized in that the storage means stores all of the plurality of types of data when the degree of risk is equal to or higher than a predetermined level.
請求項3に記載のセキュアエレメントであって、
前記処理手段は、前記危険度が第1レベルである場合には、前記複数の処理を全て行うことを特徴とするセキュアエレメント。
The secure element according to claim 3, wherein
A secure element characterized in that the processing means performs all of the plurality of processes when the degree of risk is at a first level.
請求項5に記載のセキュアエレメントであって、
前記処理手段は、前記危険度が前記第1レベルより低い第2レベルである場合には、前記複数の処理のうち、プリマスターシークレットの生成処理、当該プリマスターシークレットの暗号化処理、マスターシークレットの生成処理、及び、セッション鍵の生成処理を行うことを特徴とするセキュアエレメント。
The secure element according to claim 5, wherein
The processing means, when the degree of risk is a second level lower than the first level, generates, among the plurality of processes, a process of generating a premaster secret, an encryption process of the premaster secret, and a master secret. A secure element characterized by performing generation processing and session key generation processing.
請求項6に記載のセキュアエレメントであって、
前記処理手段は、前記危険度が前記第2レベルより低い第3レベルである場合には、前記複数の処理のうち、署名の生成処理を行うことを特徴とするセキュアエレメント。
The secure element according to claim 6, wherein
A secure element characterized in that, when the degree of risk is a third level lower than the second level, the processing means performs a signature generation process among the plurality of processes.
請求項4に記載のセキュアエレメントであって、
前記記憶手段は、前記危険度が前記所定のレベルより低い場合には、前記複数種類のデータのうち、前記セッション鍵のみを記憶することを特徴とするセキュアエレメント。
The secure element according to claim 4, wherein
A secure element characterized in that the storage means stores only the session key among the plurality of types of data when the degree of risk is lower than the predetermined level.
サーバとの間で暗号化通信を行うとともに、セキュアエレメントが接続されたクライアント端末であって、
前記暗号化通信のために記憶する複数種類のデータのうち、前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、前記セキュアエレメントに送信して記憶させる第1制御手段と、
前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を前記セキュアエレメントに行わせる第2制御手段と、
を備えることを特徴とするクライアント端末。
A client terminal that performs encrypted communication with a server and to which a secure element is connected,
First control to transmit and store at least a part of data of a plurality of types of data stored for the encrypted communication according to the degree of risk of communication with the server, to the secure element Means,
Second control means for causing the secure element to perform at least a part of the plurality of processes performed for the encrypted communication according to the degree of risk of the communication;
A client terminal characterized by comprising:
サーバとの間で暗号化通信を行うクライアント端末に接続され、記憶手段と処理手段を備えるセキュアエレメントによる情報処理方法であって、
前記記憶手段が、前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶工程と、
前記処理手段が、前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理工程と、
を含むことを特徴とする情報処理方法。
An information processing method by a secure element connected to a client terminal that performs encrypted communication with a server, comprising storage means and processing means, comprising:
The storage means includes at least a part of data of the plurality of types of data stored by the client terminal for the encrypted communication according to the degree of risk of communication between the client terminal and the server. Storage step for storing instead of the client terminal
A processing step of performing at least a part of processing corresponding to the risk of the communication among the plurality of processes performed by the client terminal for the encrypted communication, instead of the client terminal;
An information processing method comprising:
サーバとの間で暗号化通信を行うクライアント端末に接続され、前記クライアント端末が前記暗号化通信のために記憶する複数種類のデータのうち、前記クライアント端末と前記サーバとの間の通信の危険度に応じた少なくとも一部の種類のデータを、当該クライアント端末の代わりに記憶する記憶手段を備えるセキュアエレメントに含まれるコンピュータを、
前記クライアント端末が前記暗号化通信のために行う複数の処理のうち、前記通信の危険度に応じた少なくとも一部の処理を、当該クライアント端末の代わりに行う処理手段、
として機能させることを特徴とする情報処理プログラム。
The risk degree of communication between the client terminal and the server among a plurality of types of data that is connected to a client terminal that performs encrypted communication with the server and the client terminal stores for the encrypted communication A computer included in a secure element comprising storage means for storing at least some types of data according to
A processing unit that performs at least a part of the plurality of processes performed by the client terminal for the encrypted communication in place of the client terminal according to the degree of risk of the communication;
An information processing program characterized in that it functions as:
JP2017225014A 2017-11-22 2017-11-22 Secure element, client terminal, information processing method and information processing program Active JP6919523B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017225014A JP6919523B2 (en) 2017-11-22 2017-11-22 Secure element, client terminal, information processing method and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017225014A JP6919523B2 (en) 2017-11-22 2017-11-22 Secure element, client terminal, information processing method and information processing program

Publications (2)

Publication Number Publication Date
JP2019097032A true JP2019097032A (en) 2019-06-20
JP6919523B2 JP6919523B2 (en) 2021-08-18

Family

ID=66972092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017225014A Active JP6919523B2 (en) 2017-11-22 2017-11-22 Secure element, client terminal, information processing method and information processing program

Country Status (1)

Country Link
JP (1) JP6919523B2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184463A (en) * 2003-12-19 2005-07-07 Toshiba Corp Communication apparatus and communication method
JP2006129143A (en) * 2004-10-29 2006-05-18 Toppan Printing Co Ltd Secret information transmission/reception system and method therefor, server apparatus and program, and key information storing apparatus
JP2006261802A (en) * 2005-03-15 2006-09-28 Ricoh Co Ltd Information processing apparatus, image processing apparatus, and image forming apparatus
JP2015007978A (en) * 2013-06-24 2015-01-15 エヌエックスピー ビー ヴィNxp B.V. Data processing system, initializing method for the same, and computer program product
JP2016500207A (en) * 2012-10-19 2016-01-07 インテル・コーポレーション Encrypted data inspection in network environment
US20160277933A1 (en) * 2015-03-18 2016-09-22 Jongsub Moon Secure Data Communication system between IoT smart devices and a Network gateway under Internet of Thing environment
JP2017049988A (en) * 2012-11-21 2017-03-09 アップル インコーポレイテッド Policy-based techniques for managing access control

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184463A (en) * 2003-12-19 2005-07-07 Toshiba Corp Communication apparatus and communication method
JP2006129143A (en) * 2004-10-29 2006-05-18 Toppan Printing Co Ltd Secret information transmission/reception system and method therefor, server apparatus and program, and key information storing apparatus
JP2006261802A (en) * 2005-03-15 2006-09-28 Ricoh Co Ltd Information processing apparatus, image processing apparatus, and image forming apparatus
JP2016500207A (en) * 2012-10-19 2016-01-07 インテル・コーポレーション Encrypted data inspection in network environment
JP2017049988A (en) * 2012-11-21 2017-03-09 アップル インコーポレイテッド Policy-based techniques for managing access control
JP2015007978A (en) * 2013-06-24 2015-01-15 エヌエックスピー ビー ヴィNxp B.V. Data processing system, initializing method for the same, and computer program product
US20160119362A1 (en) * 2013-06-24 2016-04-28 Nxp B.V. Data processing system, method of initializing a data processing system, and computer program product
US20160277933A1 (en) * 2015-03-18 2016-09-22 Jongsub Moon Secure Data Communication system between IoT smart devices and a Network gateway under Internet of Thing environment

Also Published As

Publication number Publication date
JP6919523B2 (en) 2021-08-18

Similar Documents

Publication Publication Date Title
AU2019203267B2 (en) Method and apparatus for facilitating electronic payments using a wearable device
US10547605B2 (en) Communication device, communication method, communication system, and non-transitory computer readable medium
US10193700B2 (en) Trust-zone-based end-to-end security
EP3255832B1 (en) Dynamic encryption method, terminal and server
KR101418799B1 (en) System for providing mobile OTP service
US20160253664A1 (en) Attestation by proxy
EP3633949A1 (en) Method and system for performing ssl handshake
KR101744747B1 (en) Mobile terminal, terminal and method for authentication using security cookie
CN105025005A (en) Providing network credentials
WO2018053469A1 (en) Client device information for controlling access to web applications
US20240129137A1 (en) Information processing method, information processing program, information processing apparatus, and information processing system
CN112738117A (en) Data transmission method, device and system, storage medium and electronic device
WO2017091987A1 (en) Method and apparatus for secure interaction between terminals
CN113992427B (en) Data encryption sending method and device based on adjacent nodes
CN112004201A (en) Short message sending method and device and computer system
US20150271170A1 (en) Information processing apparatus, information processing system, information processing method, and recording medium
CN113301537B (en) Method, device, electronic equipment and storage medium for establishing communication connection
JP6919523B2 (en) Secure element, client terminal, information processing method and information processing program
US11962465B2 (en) Control system, electronic device, and control method
CN115686542A (en) Application installation method, device, equipment and storage medium
CN115438353A (en) User data management method and related equipment
CN110945503A (en) User authentication service providing method, web server and user terminal
EP4092957A1 (en) Secure and trusted peer-to-peer offline communication systems and methods
JP6801448B2 (en) Electronic information storage media, authentication systems, authentication methods, and authentication application programs
CN116961973A (en) Data transmission method, device, electronic equipment and computer readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200925

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210705

R150 Certificate of patent or registration of utility model

Ref document number: 6919523

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150