JP7058687B2 - Systems, communication devices, programs, and communication methods - Google Patents

Systems, communication devices, programs, and communication methods Download PDF

Info

Publication number
JP7058687B2
JP7058687B2 JP2020078714A JP2020078714A JP7058687B2 JP 7058687 B2 JP7058687 B2 JP 7058687B2 JP 2020078714 A JP2020078714 A JP 2020078714A JP 2020078714 A JP2020078714 A JP 2020078714A JP 7058687 B2 JP7058687 B2 JP 7058687B2
Authority
JP
Japan
Prior art keywords
communication device
data
unit
authentication token
application
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
JP2020078714A
Other languages
Japanese (ja)
Other versions
JP2021174326A (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.)
SoftBank Corp
Original Assignee
SoftBank Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SoftBank Corp filed Critical SoftBank Corp
Priority to JP2020078714A priority Critical patent/JP7058687B2/en
Publication of JP2021174326A publication Critical patent/JP2021174326A/en
Application granted granted Critical
Publication of JP7058687B2 publication Critical patent/JP7058687B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、システム、通信デバイス、プログラム、及び通信方法に関する。 The present invention relates to systems, communication devices, programs, and communication methods.

機能の一部又は全部をクラウドコンピューティングシステムによって提供するクラウドサービスが知られていた(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2019-101884号公報
A cloud service that provides a part or all of the functions by a cloud computing system has been known (see, for example, Patent Document 1).
[Prior Art Document]
[Patent Document]
[Patent Document 1] Japanese Unexamined Patent Publication No. 2019-101884

本発明の第1の態様によれば、システムが提供される。システムは、通信デバイスと、アプリケーションとを備えてよい。通信デバイスは、クラウド上のアプリケーションに鍵情報を送信する鍵情報送信部を有してよい。通信デバイスは、アプリケーションから鍵情報を受信して格納した管理システムに対して、鍵情報を送信して、管理システムによって通信デバイスに対して割り当てられたデバイスIDを受信するデバイスID受信部を有してよい。通信デバイスは、認証トークンを生成するトークン生成部を有してよい。通信デバイスは、認証トークンを管理システムに送信するトークン送信部を有してよい。データを取得するデータ取得部を有してよい。データ、デバイスID、及び認証トークンをアプリケーションに送信するデータ送信部を有してよい。アプリケーションは、通信デバイスから、データ、デバイスID、及び認証トークンを受信するデータ受信部を有してよい。アプリケーションは、デバイスID及び認証トークンを管理システムに送信して、デバイスID及び認証トークンの認証結果を取得する認証結果取得部を有してよい。アプリケーションは、認証結果に基づいてデータを管理するデータ管理部を有してよい。 According to the first aspect of the present invention, the system is provided. The system may include a communication device and an application. The communication device may have a key information transmitter that transmits key information to an application on the cloud. The communication device has a device ID receiver that transmits the key information to the management system that receives and stores the key information from the application and receives the device ID assigned to the communication device by the management system. It's okay. The communication device may have a token generator that generates an authentication token. The communication device may have a token transmitter that sends an authentication token to the management system. It may have a data acquisition unit for acquiring data. It may have a data transmitter that sends data, device IDs, and authentication tokens to the application. The application may have a data receiver that receives data, device IDs, and authentication tokens from the communication device. The application may have an authentication result acquisition unit that transmits the device ID and the authentication token to the management system and acquires the authentication result of the device ID and the authentication token. The application may have a data management unit that manages data based on the authentication result.

上記通信デバイスは、セキュリティ対策が施されているセキュリティ領域を含む格納部を有し、上記デバイスID及び上記認証トークンの少なくともいずれかを、上記セキュリティゾーンに格納してよい。上記通信デバイスは、上記デバイスID及び上記認証トークンを上記セキュリティゾーンに格納してよい。上記格納部は、上記セキュリティ領域及び非セキュリティ領域を含んでよく、上記セキュリティ領域は、上記非セキュリティ領域から仮想的に分離されており、上記非セキュリティ領域からのアクセスが制限される領域であってよい。上記格納部は、上記セキュリティ領域及び非セキュリティ領域を含んでよく、上記セキュリティ領域は、上記非セキュリティ領域から仮想的に分離されており、セキュアOSが動作している領域であってよい。上記通信デバイスは、ノーマル領域とセキュア領域とを含み、上記デバイスID及び上記認証トークンの少なくともいずれかを、上記セキュア領域に格納してよい。上記通信デバイスは、上記デバイスID及び上記認証トークンを、上記セキュア領域に格納してよい。上記トークン生成部は、生成した上記認証トークンに使用期限を設定し、上記使用期限に基づいて上記認証トークンを更新してよい。上記通信デバイスは、IoTデバイスであってよく、上記トークン送信部は、LwM2Mに従って上記認証トークンを上記管理システムに送信してよい。上記通信デバイスは、複数種類のデータを送信可能であってよく、上記システムは、上記通信デバイスから、上記通信デバイスが送信可能なデータの種類を示す種類情報を受信する種類情報受信部と、上記種類情報に基づいて、上記複数種類のデータのそれぞれの送信先のクラウドサービスを判定する判定部と、上記通信デバイスに、上記判定部によって判定されたクラウドサービスの上記アプリケーションに対する登録を実行させる登録制御部とを備えてよい。 The communication device has a storage unit including a security area for which security measures are taken, and at least one of the device ID and the authentication token may be stored in the security zone. The communication device may store the device ID and the authentication token in the security zone. The storage unit may include the security area and the non-security area, and the security area is virtually separated from the non-security area, and access from the non-security area is restricted. good. The storage unit may include the security area and the non-security area, and the security area may be an area that is virtually separated from the non-security area and in which the secure OS is operating. The communication device includes a normal area and a secure area, and at least one of the device ID and the authentication token may be stored in the secure area. The communication device may store the device ID and the authentication token in the secure area. The token generation unit may set an expiration date for the generated authentication token and update the authentication token based on the expiration date. The communication device may be an IoT device, and the token transmission unit may transmit the authentication token to the management system according to LwM2M. The communication device may be capable of transmitting a plurality of types of data, and the system includes a type information receiving unit that receives type information indicating the types of data that the communication device can transmit from the communication device, and the above. A determination unit that determines the cloud service of the destination of each of the plurality of types of data based on the type information, and a registration control that causes the communication device to register the cloud service determined by the determination unit for the application. It may be equipped with a part.

本発明の第2の態様によれば、通信デバイスが提供される。通信デバイスは、クラウド上のアプリケーションに鍵情報を送信する鍵情報送信部を備えてよい。通信デバイスは、アプリケーションから鍵情報を受信して格納した管理システムに対して、鍵情報を送信して、管理システムによって通信デバイスに対して割り当てられたデバイスIDを受信するデバイスID受信部を備えてよい。通信デバイスは、認証トークンを生成するトークン生成部を備えてよい。通信デバイスは、認証トークンを管理システムに送信するトークン送信部を備えてよい。通信デバイスは、データを取得するデータ取得部を備えてよい。通信デバイスは、データ、デバイスID、及び認証トークンをアプリケーションに送信するデータ送信部を備えてよい。 According to the second aspect of the present invention, a communication device is provided. The communication device may include a key information transmitter that transmits key information to an application on the cloud. The communication device includes a device ID receiver that transmits the key information to the management system that receives and stores the key information from the application and receives the device ID assigned to the communication device by the management system. good. The communication device may include a token generator that generates an authentication token. The communication device may include a token transmitter that sends an authentication token to the management system. The communication device may include a data acquisition unit for acquiring data. The communication device may include a data transmitter that sends data, a device ID, and an authentication token to the application.

本発明の第3の態様によれば、コンピュータを、上記通信デバイスとして機能させるためのプログラムが提供される。 According to the third aspect of the present invention, a program for making a computer function as the communication device is provided.

本発明の第4の態様によれば、コンピュータによって実行される通信方法が提供される。通信方法は、クラウド上のアプリケーションに鍵情報を送信する鍵情報送信段階を備えてよい。通信方法は、アプリケーションから鍵情報を受信して格納した管理システムに対して、鍵情報を送信して、管理システムによって通信デバイスに対して割り当てられたデバイスIDを受信するデバイスID受信段階を備えてよい。通信方法は、認証トークンを生成するトークン生成段階を備えてよい。通信方法は、認証トークンを管理システムに送信するトークン送信段階を備えてよい。通信方法は、データを取得するデータ取得段階を備えてよい。通信方法は、データ、デバイスID、及び認証トークンをアプリケーションに送信するデータ送信段階を備えてよい。 According to a fourth aspect of the present invention, a communication method performed by a computer is provided. The communication method may include a key information transmission stage for transmitting key information to an application on the cloud. The communication method includes a device ID receiving stage in which the key information is transmitted to the management system that receives and stores the key information from the application, and the device ID assigned to the communication device by the management system is received. good. The communication method may include a token generation step of generating an authentication token. The communication method may include a token transmission step of transmitting the authentication token to the management system. The communication method may include a data acquisition stage for acquiring data. The communication method may comprise a data transmission step of transmitting data, a device ID, and an authentication token to the application.

なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。 The outline of the above invention does not list all the necessary features of the present invention. A subcombination of these feature groups can also be an invention.

システム10の一例を概略的に示す。An example of the system 10 is shown schematically. システム10における処理の流れの一例を概略的に示す。An example of the processing flow in the system 10 is shown schematically. 通信デバイス100の機能構成の一例を概略的に示す。An example of the functional configuration of the communication device 100 is schematically shown. 通信デバイス100のシステム構成の一例を概略的に示す。An example of the system configuration of the communication device 100 is shown schematically. アプリケーション200の機能構成の一例を概略的に示す。An example of the functional configuration of the application 200 is shown schematically. 管理システム300の機能構成の一例を概略的に示す。An example of the functional configuration of the management system 300 is shown schematically. 通信デバイス100又はアプリケーション200の実行装置として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。An example of the hardware configuration of the computer 1200 that functions as the execution device of the communication device 100 or the application 200 is schematically shown.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。 Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention within the scope of the claims. Also, not all combinations of features described in the embodiments are essential to the means of solving the invention.

図1は、システム10の一例を概略的に示す。システム10は、通信デバイス100及びアプリケーション200を備える。 FIG. 1 schematically shows an example of the system 10. The system 10 includes a communication device 100 and an application 200.

通信デバイス100は、任意の種類のデータを取得してアップロードする機能を有する。通信デバイス100は、例えば、任意の種類のセンサを備え、センサによって検知したデータをアップロードする。通信デバイス100は、いわゆるIoT(Internet Of Thing)デバイスであってよい。 The communication device 100 has a function of acquiring and uploading any kind of data. The communication device 100 includes, for example, an arbitrary type of sensor, and uploads data detected by the sensor. The communication device 100 may be a so-called IoT (Internet Of Thing) device.

通信デバイス100は、クラウド20上のアプリケーション200にデータをアップロードしてよい。通信デバイス100は、移動体通信ネットワークを介してクラウド20にアクセスしてよい。通信デバイス100は、3G(3rd Generation)通信方式、LTE(Long Term Evolution)通信方式、5G(5th Generation)通信方式、及び6G(6th Generation)通信方式以降の通信方式のいずれに準拠していてもよい。通信デバイス100は、無線基地局及びWi-Fi(登録商標)アクセスポイントを介して、クラウド20にアクセスしてよい。なお、通信デバイス100は、有線通信によって、クラウド20にアクセスしてもよい。 The communication device 100 may upload data to the application 200 on the cloud 20. The communication device 100 may access the cloud 20 via the mobile communication network. The communication device 100 may comply with any of a 3G (3rd Generation) communication method, an LTE (Long Term Evolution) communication method, a 5G (5th Generation) communication method, and a communication method after the 6G (6th Generation) communication method. good. The communication device 100 may access the cloud 20 via a radio base station and a Wi-Fi® access point. The communication device 100 may access the cloud 20 by wired communication.

アプリケーション200は、クラウド20上に実現される。アプリケーション200は、クラウド20を構成する装置やシステムによって実行され得る。アプリケーション200は、クラウド20上の任意のクラウド環境に実現されてよい。例えば、アプリケーション200は、Microsoft Azure、GCP(Google Cloud Platform)、及びAWS(Amazon Web Services)等のように、管理されたクラウド環境上に実現される。 The application 200 is realized on the cloud 20. The application 200 can be executed by the devices and systems constituting the cloud 20. The application 200 may be realized in any cloud environment on the cloud 20. For example, the application 200 is realized on a managed cloud environment such as Microsoft Azure, GCP (Google Cloud Platform), AWS (Amazon Web Services), and the like.

アプリケーション200は、通信デバイス100からデータを受信して管理する。従来、クラウド20上に実現されるアプリケーションは、通信デバイス100からデータを受信して管理することはできたが、通信デバイス100の正当性を確認することができなかった。そのため、データの信頼性を担保することが難しかった。本実施形態に係るシステム10においては、デバイスを管理する管理システム300を用いることによって、通信デバイス100の正当性を担保する。 The application 200 receives and manages data from the communication device 100. Conventionally, an application realized on the cloud 20 can receive and manage data from a communication device 100, but cannot confirm the validity of the communication device 100. Therefore, it was difficult to ensure the reliability of the data. In the system 10 according to the present embodiment, the validity of the communication device 100 is ensured by using the management system 300 that manages the devices.

管理システム300は、通信デバイス100を認証する認証機能を有する。管理システム300は、例えば、Pelion Device Managementのサービスを提供する。 The management system 300 has an authentication function for authenticating the communication device 100. The management system 300 provides, for example, the service of Pelion Device Management.

図2は、システム10における処理の流れの一例を概略的に示す。ここでは、通信デバイス100が新たに登録されて、データをアップロードする流れについて説明する。 FIG. 2 schematically shows an example of the processing flow in the system 10. Here, a flow in which the communication device 100 is newly registered and data is uploaded will be described.

ステップ(ステップをSと省略して記載する場合がある。)102では、通信デバイス100が、Enroll Keyをアプリケーション200に送信する。Enroll Keyは、通信デバイス100毎に異なる鍵情報の一例である。例えば、通信デバイス100の購入者が、通信デバイス100に割り当てられているEnroll Keyを確認して、通信デバイス100にEnroll Keyを入力してアプリケーション200に送信する。 In step 102 (the step may be abbreviated as S) 102, the communication device 100 transmits an Enroll Key to the application 200. The Enroll Key is an example of key information that differs for each communication device 100. For example, the purchaser of the communication device 100 confirms the Enroll Key assigned to the communication device 100, inputs the Enroll Key to the communication device 100, and transmits the Enroll Key to the application 200.

S104では、アプリケーション200が、S102において受信したEnroll Keyを管理システム300に送信して登録する。管理システム300は、受信したEnroll Keyを格納する。 In S104, the application 200 transmits the Enroll Key received in S102 to the management system 300 and registers it. The management system 300 stores the received Enroll Key.

S106では、通信デバイス100が、Enroll Keyを用いて、管理システム300に接続する。管理システム300は、通信デバイス100から受信したEnroll Keyを認証する。管理システム300は、通信デバイス100から受信したEnroll Keyが、アプリケーション200から受信して格納しているEnroll Keyのうちのいずれかと一致した場合、認証可と判定し、いずれとも一致しなかった場合、認証否と判定してよい。ここでは、認証可と判定したものとして説明を続ける。 In S106, the communication device 100 connects to the management system 300 by using the Enroll Key. The management system 300 authenticates the Enroll Key received from the communication device 100. The management system 300 determines that authentication is possible if the Enroll Key received from the communication device 100 matches any of the Enroll Keys received and stored from the application 200, and if they do not match any of them, the management system 300 determines that authentication is possible. It may be determined that the authentication is not possible. Here, the description will be continued assuming that it is determined that authentication is possible.

S108では、管理システム300が、通信デバイス100に対してデバイスIDを割り当てて、デバイスIDを通信デバイス100に送信する。デバイスIDは、管理システム300が、通信デバイス100を一意に特定可能なIDである。 In S108, the management system 300 assigns a device ID to the communication device 100 and transmits the device ID to the communication device 100. The device ID is an ID that allows the management system 300 to uniquely identify the communication device 100.

S110では、通信デバイス100が、管理システム300から受信したデバイスIDを格納するとともに、認証トークンを生成する。認証トークンは、例えば、ランダムな数字列である。通信デバイス100は、デバイスID及び認証トークンを、通信デバイス100に格納部に含まれるセキュリティ対策が施されているセキュリティ領域に格納してよい。 In S110, the communication device 100 stores the device ID received from the management system 300 and generates an authentication token. The authentication token is, for example, a random number string. The communication device 100 may store the device ID and the authentication token in a security area included in the storage unit of the communication device 100 and having security measures.

通信デバイス100は、生成した認証トークンを、管理システム300に送信する。管理システム300は、通信デバイス100に割り当てたデバイスIDと、通信デバイス100から受信した認証トークンとを対応付けて登録する。 The communication device 100 transmits the generated authentication token to the management system 300. The management system 300 registers the device ID assigned to the communication device 100 in association with the authentication token received from the communication device 100.

S112では、通信デバイス100が、センサによって検知されたデータと、S108において受信したデバイスIDと、S110において生成した認証トークンとをアプリケーション200に送信する。S114では、アプリケーション200が、S112において受信したデバイスID及び認証トークンを管理システム300に送信する。 In S112, the communication device 100 transmits the data detected by the sensor, the device ID received in S108, and the authentication token generated in S110 to the application 200. In S114, the application 200 transmits the device ID and the authentication token received in S112 to the management system 300.

管理システム300は、S114において受信したデバイスID及び認証トークンを認証する。管理システム300は、デバイスIDと認証トークンとの組み合わせが登録されている場合、認証可と判定し、登録されていない場合、認証否と判定する。S116では、管理システム300が認証結果をアプリケーション200に送信する。 The management system 300 authenticates the device ID and the authentication token received in S114. When the combination of the device ID and the authentication token is registered, the management system 300 determines that authentication is possible, and when it is not registered, it determines that authentication is not possible. In S116, the management system 300 transmits the authentication result to the application 200.

アプリケーション200は、認証結果が認証可である場合、デバイスIDに対応付けて、データを登録する。アプリケーション200は、認証結果が認証否である場合、例えば、データを破棄して、認証否である旨をアプリケーション200の管理者等に通知する。 When the authentication result is authenticationable, the application 200 registers the data in association with the device ID. When the authentication result is authentication / rejection, the application 200 discards the data and notifies the administrator of the application 200 that the authentication is rejected.

上述したように、管理システム300を用いることによって、通信デバイス100の正当性を担保することができ、データの信頼性を担保することが可能となる。特に、管理システム300を用いることに加えて、通信デバイス100において、認証トークン及びデバイスIDをセキュリティ領域に格納するよう構成することによって、通信デバイス100の正当性及びデータの信頼性を非常に高めることができる。 As described above, by using the management system 300, the validity of the communication device 100 can be guaranteed, and the reliability of the data can be guaranteed. In particular, in addition to using the management system 300, the communication device 100 is configured to store the authentication token and the device ID in the security area, thereby greatly enhancing the legitimacy of the communication device 100 and the reliability of the data. Can be done.

図3は、通信デバイス100の機能構成の一例を概略的に示す。通信デバイス100は、鍵情報取得部102、アプリ通信部104、システム通信部106、格納部108、認証トークン生成部110、及びデータ取得部112を備える。 FIG. 3 schematically shows an example of the functional configuration of the communication device 100. The communication device 100 includes a key information acquisition unit 102, an application communication unit 104, a system communication unit 106, a storage unit 108, an authentication token generation unit 110, and a data acquisition unit 112.

鍵情報取得部102は、鍵情報を取得する。鍵情報取得部102は、例えば、Enroll Keyを取得する。鍵情報取得部102は、通信デバイス100が備える入力デバイスを用いて、通信デバイス100の使用者等によって入力されたEnroll Keyを取得してよい。 The key information acquisition unit 102 acquires the key information. The key information acquisition unit 102 acquires, for example, the Enroll Key. The key information acquisition unit 102 may acquire the Enroll Key input by the user or the like of the communication device 100 by using the input device included in the communication device 100.

アプリ通信部104は、アプリケーション200と通信する。アプリ通信部104は、例えば、鍵情報取得部102が取得した鍵情報をアプリケーション200に送信する。アプリ通信部104は、鍵情報送信部の一例であってよい。 The application communication unit 104 communicates with the application 200. The application communication unit 104 transmits, for example, the key information acquired by the key information acquisition unit 102 to the application 200. The application communication unit 104 may be an example of a key information transmission unit.

システム通信部106は、管理システム300と通信する。システム通信部106は、例えば、鍵情報取得部102が取得した鍵情報を管理システム300に送信して、管理システム300によって通信デバイス100に対して割り当てられたデバイスIDを管理システム300から受信する。システム通信部106は、デバイスID受信部の一例であってよい。システム通信部106は、受信したデバイスIDを格納部108に格納する。 The system communication unit 106 communicates with the management system 300. For example, the system communication unit 106 transmits the key information acquired by the key information acquisition unit 102 to the management system 300, and receives the device ID assigned to the communication device 100 by the management system 300 from the management system 300. The system communication unit 106 may be an example of a device ID receiving unit. The system communication unit 106 stores the received device ID in the storage unit 108.

格納部108は、非セキュリティ領域と、セキュリティ対策が施されているセキュリティ領域とを含む。システム通信部106は、デバイスIDを格納部108のセキュリティ領域に格納してよい。 The storage unit 108 includes a non-security area and a security area to which security measures are taken. The system communication unit 106 may store the device ID in the security area of the storage unit 108.

セキュリティ領域は、非セキュリティ領域から仮想的に分離されており、非セキュリティ領域からのアクセスが制限される領域であってよい。セキュリティ領域は、非セキュリティ領域からのアクセスがSecure API(Application Programming Interface)によって制限される領域であってよい。セキュリティ領域は、非セキュリティ領域から仮想的に分離されており、セキュアOS(Operating System)が動作している領域であってもよい。なお、セキュリティ領域は、ハードウェア的に(物理的に)暗号化されている領域であってもよい。 The security area may be an area that is virtually separated from the non-security area and access from the non-security area is restricted. The security area may be an area where access from the non-security area is restricted by the Security API (Application Programming Interface). The security area is virtually separated from the non-security area, and may be an area in which a secure OS (Operating System) is operating. The security area may be a hardware-encrypted area.

格納部108は、ノーマル領域とセキュア領域とを含んでもよい。ノーマル領域がNon-secure Worldと呼ばれ、セキュア領域がSecure Worldと呼ばれる場合もある。通信デバイス100は、デバイスIDをセキュア領域に格納してよい。通信デバイス100は、認証トークンをセキュア領域に格納してよい。 The storage unit 108 may include a normal area and a secure area. The normal area may be called Non-sure World, and the secure area may be called Security World. The communication device 100 may store the device ID in the secure area. The communication device 100 may store the authentication token in the secure area.

認証トークン生成部110は、認証トークンを生成する。認証トークン生成部110は、公知の任意の技術を用いて認証トークンを生成してよい。認証トークン生成部110は、例えば、乱数によって生成したランダムな数字列の認証トークンを生成する。 The authentication token generation unit 110 generates an authentication token. The authentication token generation unit 110 may generate an authentication token using any known technique. The authentication token generation unit 110 generates, for example, an authentication token of a random number string generated by a random number.

認証トークン生成部110は、生成した認証トークンを格納部108に格納する。認証トークン生成部110は、格納部108のセキュリティ領域に認証トークンを格納してよい。 The authentication token generation unit 110 stores the generated authentication token in the storage unit 108. The authentication token generation unit 110 may store the authentication token in the security area of the storage unit 108.

認証トークン生成部110は、生成した認証トークンに使用期限を設定してもよい。認証トークン生成部110は、例えば、認証トークンを生成してから予め定められた期間後の時点を使用期限として認証トークンに設定する。 The authentication token generation unit 110 may set an expiration date for the generated authentication token. For example, the authentication token generation unit 110 sets the authentication token as an expiration date after a predetermined period after the authentication token is generated.

認証トークン生成部110は、使用期限に基づいて認証トークンを更新してよい。例えば、認証トークン生成部110は、生成した認証トークンの使用期限を監視し、使用期限に達した認証トークンを更新する。 The authentication token generation unit 110 may update the authentication token based on the expiration date. For example, the authentication token generation unit 110 monitors the expiration date of the generated authentication token and updates the authentication token that has reached the expiration date.

システム通信部106は、認証トークン生成部110によって生成された認証トークンを管理システム300に送信する。システム通信部106は、トークン送信部の一例であってよい。通信デバイス100がIoTデバイスである場合、システム通信部106は、LwM2Mに従って認証トークンを管理システム300に送信してよい。 The system communication unit 106 transmits the authentication token generated by the authentication token generation unit 110 to the management system 300. The system communication unit 106 may be an example of a token transmission unit. When the communication device 100 is an IoT device, the system communication unit 106 may transmit the authentication token to the management system 300 according to LwM2M.

データ取得部112は、アップロード対象のデータを取得する。データ取得部112は、例えば、通信デバイス100が備えるセンサによって検知されたデータを取得する。データ取得部112は、外部のセンサによって検知されたデータを、当該センサから受信してもよい。 The data acquisition unit 112 acquires the data to be uploaded. The data acquisition unit 112 acquires, for example, the data detected by the sensor included in the communication device 100. The data acquisition unit 112 may receive data detected by an external sensor from the sensor.

アプリ通信部104は、データ取得部112が取得したデータと、格納部108に格納されているデバイスID及び認証トークンとを、アプリケーション200に送信する。アプリ通信部104は、データ送信部の一例であってよい。 The application communication unit 104 transmits the data acquired by the data acquisition unit 112 and the device ID and authentication token stored in the storage unit 108 to the application 200. The application communication unit 104 may be an example of a data transmission unit.

アプリ通信部104は、データ取得部112がデータを取得する毎に、データ、デバイスID、及び認証トークンをアプリケーション200に送信してよい。また、アプリ通信部104は、予め定められたスケジュールに従って、データ、デバイスID、及び認証トークンをアプリケーション200に送信してもよい。例えば、アプリ通信部104は、1日の最後に、その日の間にデータ取得部112が取得したデータと、デバイスID及び認証トークンとをアプリケーション200に送信する。 The application communication unit 104 may transmit the data, the device ID, and the authentication token to the application 200 each time the data acquisition unit 112 acquires the data. Further, the application communication unit 104 may transmit data, a device ID, and an authentication token to the application 200 according to a predetermined schedule. For example, at the end of the day, the application communication unit 104 transmits the data acquired by the data acquisition unit 112 during the day, the device ID, and the authentication token to the application 200.

図4は、通信デバイス100のシステム構成の一例を概略的に示す。図4に例示する通信デバイス100は、HW(HardWare)120、mbed OS122、mbed TLS(Transport Layer Security)124、外部接続SD(Software Development Kit)126、Pelion Client128、Secure Zone130、及びSecure API132を備える。 FIG. 4 schematically shows an example of the system configuration of the communication device 100. The communication device 100 exemplified in FIG. 4 includes a HW (HardWare) 120, a mbed OS122, a mbed TLS (Transport Layer Security) 124, an external connection SD (Software Development Kit) 126, a Perion Client 128, and a Secre.

外部接続SDK126は、mbed TLS124によって提供されるセキュアな通信によって、アプリケーション200と通信する。外部接続SDK126は、アプリ通信部104の一例であってよい。 The external connection SDK 126 communicates with the application 200 by the secure communication provided by the mbed TLS124. The external connection SDK 126 may be an example of the application communication unit 104.

Pelion Client128は、TLS124によって提供されるセキュアな通信によって、管理システム300と通信する。Pelion Client128は、システム通信部106の一例であってよい。 The Pelion Client 128 communicates with the management system 300 by the secure communication provided by the TLS 124. The Pelion Client 128 may be an example of the system communication unit 106.

Secure Zone130は、セキュリティ領域の一例である。外部接続SDK126及びPelion Client128は、Secure API132を介して、Secure Zone130にデータを格納したり、Secure Zone130からデータを取得したりする。 The Security Zone 130 is an example of a security area. The external connection SDK 126 and Pelion Client 128 store data in the Secure Zone 130 or acquire data from the Secure Zone 130 via the Secure API 132.

図5は、アプリケーション200の機能構成の一例を概略的に示す。アプリケーション200は、鍵情報取得部202、鍵情報登録部204、格納部206、システム通信部208、データ受信部210、認証実行部212、及びデータ管理部214を備える。 FIG. 5 schematically shows an example of the functional configuration of the application 200. The application 200 includes a key information acquisition unit 202, a key information registration unit 204, a storage unit 206, a system communication unit 208, a data reception unit 210, an authentication execution unit 212, and a data management unit 214.

鍵情報取得部202は、鍵情報を取得する。鍵情報取得部202は、アプリケーション200から鍵情報を受信する。 The key information acquisition unit 202 acquires the key information. The key information acquisition unit 202 receives the key information from the application 200.

鍵情報登録部204は、鍵情報取得部202が取得した鍵情報を登録する。鍵情報登録部204は、鍵情報取得部202が取得した鍵情報を格納部206に格納する。 The key information registration unit 204 registers the key information acquired by the key information acquisition unit 202. The key information registration unit 204 stores the key information acquired by the key information acquisition unit 202 in the storage unit 206.

システム通信部208は、管理システム300と通信する。システム通信部208は、鍵情報登録部204からの指示に従って、鍵情報を管理システム300に送信する。 The system communication unit 208 communicates with the management system 300. The system communication unit 208 transmits the key information to the management system 300 according to the instruction from the key information registration unit 204.

データ受信部210は、通信デバイス100から、データ、デバイスID、及び認証トークンを受信する。認証実行部212は、データ受信部210が受信したデータ、デバイスID、及び認証トークンの認証を実行する。認証実行部212は、デバイスID及び認証トークンを、システム通信部208を介して管理システム300に送信して、デバイスID及び認証トークンの認証結果を取得する。 The data receiving unit 210 receives data, a device ID, and an authentication token from the communication device 100. The authentication execution unit 212 executes authentication of the data, the device ID, and the authentication token received by the data reception unit 210. The authentication execution unit 212 transmits the device ID and the authentication token to the management system 300 via the system communication unit 208, and acquires the authentication result of the device ID and the authentication token.

データ管理部214は、認証実行部212が取得した認証結果に基づいて、データ受信部210が受信したデータを管理する。データ管理部214は、認証結果が認証可である場合、デバイスIDに対応付けてデータを格納部206に格納する。データ管理部214は、認証結果が認証否である場合、例えば、データを破棄して、認証否である旨をアプリケーション200の管理者等に通知する。 The data management unit 214 manages the data received by the data receiving unit 210 based on the authentication result acquired by the authentication executing unit 212. When the authentication result is authenticationable, the data management unit 214 stores the data in the storage unit 206 in association with the device ID. When the authentication result is authentication failure, the data management unit 214 discards the data and notifies the administrator of the application 200 that the authentication is failure.

図6は、管理システム300の機能構成の一例を概略的に示す。管理システム300は、格納部302、鍵情報登録部304、認証実行部306、種類情報受信部312、判定部314、及び登録制御部316を備える。なお、管理システム300がこれらの全てを備えることは必須とは限らない。 FIG. 6 schematically shows an example of the functional configuration of the management system 300. The management system 300 includes a storage unit 302, a key information registration unit 304, an authentication execution unit 306, a type information reception unit 312, a determination unit 314, and a registration control unit 316. It is not always essential that the management system 300 includes all of these.

鍵情報登録部304は、鍵情報を登録する。鍵情報登録部304は、アプリケーション200から受信した鍵情報を格納部302に格納してよい。 The key information registration unit 304 registers the key information. The key information registration unit 304 may store the key information received from the application 200 in the storage unit 302.

認証実行部306は、各種認証を実行する。認証実行部306は、通信デバイス100から鍵情報を受信した場合に、当該鍵情報によって通信デバイス100を認証してよい。認証実行部306は、通信デバイス100から受信した鍵情報が、格納部302に格納されている鍵情報のいずれかと一致した場合、認証可と判定し、いずれとも一致しなかった場合、認証否と判定してよい。認証実行部306は、認証可と判定した場合、通信デバイス100に対してデバイスIDを割り当てて、デバイスIDを通信デバイス100に送信する。そして、認証実行部306は、通信デバイス100から認証トークンを受信する。認証実行部306は、通信デバイス100に割り当てたデバイスIDと、通信デバイス100から受信した認証トークンとを対応付けて格納部302に格納してよい。 The authentication execution unit 306 executes various authentications. When the authentication execution unit 306 receives the key information from the communication device 100, the authentication execution unit 306 may authenticate the communication device 100 with the key information. The authentication execution unit 306 determines that authentication is possible if the key information received from the communication device 100 matches any of the key information stored in the storage unit 302, and if they do not match any of the key information, the authentication is rejected. You may judge. When the authentication execution unit 306 determines that authentication is possible, it assigns a device ID to the communication device 100 and transmits the device ID to the communication device 100. Then, the authentication execution unit 306 receives the authentication token from the communication device 100. The authentication execution unit 306 may store the device ID assigned to the communication device 100 and the authentication token received from the communication device 100 in the storage unit 302 in association with each other.

また、認証実行部306は、アプリケーション200からデバイスID及び認証トークンを受信した場合に、当該デバイスID及び認証トークンを認証してよい。認証実行部306は、アプリケーション200から受信したデバイスID及び認証トークンの組み合わせが、格納部302に格納されているデバイスID及び認証トークンの組み合わせのいずれかと一致した場合、認証可と判定し、いずれとも一致しなかった場合、認証否と判定してよい。認証実行部306は、認証結果をアプリケーション200に通知する。 Further, when the authentication execution unit 306 receives the device ID and the authentication token from the application 200, the authentication execution unit 306 may authenticate the device ID and the authentication token. When the combination of the device ID and the authentication token received from the application 200 matches any of the combinations of the device ID and the authentication token stored in the storage unit 302, the authentication execution unit 306 determines that authentication is possible, and both of them. If they do not match, it may be determined that the authentication is not possible. The authentication execution unit 306 notifies the application 200 of the authentication result.

種類情報受信部312は、複数種類のデータを送信可能な通信デバイス100から、当該通信デバイス100が送信可能なデータの種類を示す種類情報を受信する。データの種類の例として、静止画データ、動画データ、位置情報、及び温度等が挙げられるが、これに限らず、任意の種類を取り扱い得る。 The type information receiving unit 312 receives type information indicating the types of data that can be transmitted by the communication device 100 from the communication device 100 that can transmit a plurality of types of data. Examples of data types include, but are not limited to, still image data, moving image data, position information, temperature, and the like, and any type can be handled.

判定部314は、種類情報受信部312が受信した種類情報に基づいて、複数種類のデータのそれぞれの送信先のクラウドサービスを判定する。判定部314は、例えば、データの種類とクラウドサービスとを対応付けた判定情報を参照することによって、複数種類のデータのそれぞれの送信先のクラウドサービスを判定する。判定情報は、予め格納部302に格納されていてよい。判定情報は、例えば、システム10の管理者、及び管理システム300の管理者等の指示に従って生成される。 The determination unit 314 determines the cloud service of each transmission destination of the plurality of types of data based on the type information received by the type information receiving unit 312. The determination unit 314 determines, for example, the cloud service of each transmission destination of the plurality of types of data by referring to the determination information in which the data type and the cloud service are associated with each other. The determination information may be stored in the storage unit 302 in advance. The determination information is generated according to the instructions of, for example, the administrator of the system 10 and the administrator of the management system 300.

登録制御部316は、通信デバイス100に、判定部314によって判定されたクラウドサービスのアプリケーション200に対する登録を実行させる。登録制御部316は、通信デバイス100に、指定したクラウドサービスのアプリケーション200に登録する登録指示を送信することによって、通信デバイス100に登録を実行させてよい。 The registration control unit 316 causes the communication device 100 to execute registration for the application 200 of the cloud service determined by the determination unit 314. The registration control unit 316 may cause the communication device 100 to execute the registration by transmitting the registration instruction to be registered in the application 200 of the designated cloud service to the communication device 100.

例えば、通信デバイス100が、第1の種類のデータ、第2の種類のデータ、及び第3の種類のデータを送信可能であり、判定部314が、第1の種類のデータの送信先を第1のアプリケーション200、第2の種類のデータの送信先を第2のアプリケーション200、第3の種類のデータの送信先を第3のアプリケーション200と判定した場合、登録制御部316は、通信デバイス100に、第1のアプリケーション200、第2のアプリケーション200、及び第3のアプリケーション200に対する登録を実行させる。 For example, the communication device 100 can transmit the first type data, the second type data, and the third type data, and the determination unit 314 sets the transmission destination of the first type data. When it is determined that the application 200 of 1 and the destination of the second type of data are the second application 200 and the destination of the data of the third type is the third application 200, the registration control unit 316 determines that the communication device 100. To execute registration for the first application 200, the second application 200, and the third application 200.

通信デバイス100は、登録制御部316からの指示に従って、まず、第1のアプリケーション200に対する登録を実行する。登録の流れは、上述した流れと同様であってよい。通信デバイス100は、第1のアプリケーション200に対して鍵情報を送信し、鍵情報を管理システム300に送信してデバイスIDを受信する。そして、通信デバイス100は、認証トークンを管理システム300に送信する。 The communication device 100 first executes registration for the first application 200 according to an instruction from the registration control unit 316. The registration flow may be the same as the above-mentioned flow. The communication device 100 transmits the key information to the first application 200, transmits the key information to the management system 300, and receives the device ID. Then, the communication device 100 transmits the authentication token to the management system 300.

次に、通信デバイス100は、第2のアプリケーション200に対する登録を実行する。通信デバイス100は、第2のアプリケーション200に対して鍵情報を送信し、鍵情報を管理システム300に送信する。当該鍵情報に対するデバイスIDは既に割り当てられているので、管理システム300から通信デバイス100へのデバイスIDの送信は省略され、通信デバイス100は、認証トークンを管理システム300に送信する。 Next, the communication device 100 executes registration for the second application 200. The communication device 100 transmits the key information to the second application 200, and transmits the key information to the management system 300. Since the device ID for the key information has already been assigned, the transmission of the device ID from the management system 300 to the communication device 100 is omitted, and the communication device 100 transmits the authentication token to the management system 300.

次に、通信デバイス100は、第3のアプリケーション200に対する登録を実行する。通信デバイス100は、第3のアプリケーション200に対して鍵情報を送信し、鍵情報を管理システム300に送信する。当該鍵情報に対するデバイスIDは既に割り当てられているので、管理システム300から通信デバイス100へのデバイスIDの送信は省略され、通信デバイス100は、認証トークンを管理システム300に送信する。 Next, the communication device 100 executes registration for the third application 200. The communication device 100 transmits the key information to the third application 200, and transmits the key information to the management system 300. Since the device ID for the key information has already been assigned, the transmission of the device ID from the management system 300 to the communication device 100 is omitted, and the communication device 100 transmits the authentication token to the management system 300.

登録完了後、通信デバイス100は、第1の種類のデータと、デバイスIDと、認証トークンとを第1のアプリケーション200に送信する。通信デバイス100は、第2の種類のデータと、デバイスIDと、認証トークンとを第1のアプリケーション200に送信する。通信デバイス100は、第3の種類のデータと、デバイスIDと、認証トークンとを第1のアプリケーション200に送信する。 After the registration is completed, the communication device 100 transmits the first type of data, the device ID, and the authentication token to the first application 200. The communication device 100 transmits the second type of data, the device ID, and the authentication token to the first application 200. The communication device 100 transmits the third type of data, the device ID, and the authentication token to the first application 200.

クラウドサービスによって、取り扱うデータの種類に対する得手不得手が存在する。本実施形態に係る管理システム300によれば、通信デバイス100が複数種類のデータを送信可能である場合に、データの種類に適したクラウドサービスのアプリケーション200にデータを送信させることができる。 Depending on the cloud service, there are strengths and weaknesses in the types of data handled. According to the management system 300 according to the present embodiment, when the communication device 100 can transmit a plurality of types of data, the data can be transmitted to the application 200 of the cloud service suitable for the data type.

なお、ここでは、第2のアプリケーション200及び第3のアプリケーション200に対する登録を行う場合に、デバイスIDの送信を省略する例を挙げて説明したが、これに限らない。第2のアプリケーション200及び第3のアプリケーション200のそれぞれに登録するときに、それぞれについて、異なるデバイスIDを通信デバイス100に割り当てるようにしてもよい。この場合、管理システム300は、同一の通信デバイス100に対して割り当てた複数のデバイスIDを対応付けて管理することによって、通信デバイス100を特定可能にしてよい。 Here, an example of omitting the transmission of the device ID when registering for the second application 200 and the third application 200 has been described, but the present invention is not limited to this. When registering in each of the second application 200 and the third application 200, a different device ID may be assigned to the communication device 100 for each. In this case, the management system 300 may be able to identify the communication device 100 by associating and managing a plurality of device IDs assigned to the same communication device 100.

図7は、通信デバイス100又はアプリケーション200の実行装置として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。 FIG. 7 schematically shows an example of a hardware configuration of a computer 1200 that functions as an execution device of a communication device 100 or an application 200. A program installed on the computer 1200 causes the computer 1200 to function as one or more "parts" of the apparatus according to the present embodiment, or causes the computer 1200 to perform an operation associated with the apparatus according to the present embodiment or the one or the like. A plurality of "parts" can be executed and / or a computer 1200 can be made to execute a process according to the present embodiment or a stage of the process. Such a program may be run by the CPU 1212 to cause the computer 1200 to perform certain operations associated with some or all of the blocks of the flowcharts and block diagrams described herein.

本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ1226、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブ1226は、DVD-ROMドライブ及びDVD-RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのようなレガシの入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。 The computer 1200 according to this embodiment includes a CPU 1212, a RAM 1214, and a graphic controller 1216, which are interconnected by a host controller 1210. The computer 1200 also includes input / output units such as a communication interface 1222, a storage device 1224, a DVD drive 1226, and an IC card drive, which are connected to the host controller 1210 via the input / output controller 1220. The DVD drive 1226 may be a DVD-ROM drive, a DVD-RAM drive, or the like. The storage device 1224 may be a hard disk drive, a solid state drive, or the like. The computer 1200 also includes a legacy input / output unit such as a ROM 1230 and a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.

CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。 The CPU 1212 operates according to a program stored in the ROM 1230 and the RAM 1214, thereby controlling each unit. The graphic controller 1216 acquires the image data generated by the CPU 1212 in a frame buffer or the like provided in the RAM 1214 or itself so that the image data is displayed on the display device 1218.

通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブ1226は、プログラム又はデータをDVD-ROM1227等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。 The communication interface 1222 communicates with other electronic devices via the network. The storage device 1224 stores programs and data used by the CPU 1212 in the computer 1200. The DVD drive 1226 reads the program or data from the DVD-ROM 1227 or the like and provides it to the storage device 1224. The IC card drive reads the program and data from the IC card and / or writes the program and data to the IC card.

ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。 The ROM 1230 stores in it a boot program or the like executed by the computer 1200 at the time of activation, and / or a program depending on the hardware of the computer 1200. The input / output chip 1240 may also connect various input / output units to the input / output controller 1220 via a USB port, a parallel port, a serial port, a keyboard port, a mouse port, and the like.

プログラムは、DVD-ROM1227又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。 The program is provided by a computer-readable storage medium such as a DVD-ROM 1227 or an IC card. The program is read from a computer-readable storage medium, installed in a storage device 1224, RAM 1214, or ROM 1230, which is also an example of a computer-readable storage medium, and executed by the CPU 1212. The information processing described in these programs is read by the computer 1200 and provides a link between the program and the various types of hardware resources described above. The device or method may be configured to implement the operation or processing of information in accordance with the use of the computer 1200.

例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM1227、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。 For example, when communication is executed between the computer 1200 and an external device, the CPU 1212 executes a communication program loaded in the RAM 1214, and performs communication processing with respect to the communication interface 1222 based on the processing described in the communication program. You may order. Under the control of the CPU 1212, the communication interface 1222 reads and reads transmission data stored in a transmission buffer area provided in a recording medium such as a RAM 1214, a storage device 1224, a DVD-ROM 1227, or an IC card. The data is transmitted to the network, or the received data received from the network is written to the reception buffer area or the like provided on the recording medium.

また、CPU1212は、記憶装置1224、DVDドライブ1226(DVD-ROM1227)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。 Further, the CPU 1212 makes it possible for the RAM 1214 to read all or necessary parts of a file or database stored in an external recording medium such as a storage device 1224, a DVD drive 1226 (DVD-ROM1227), an IC card, etc., on the RAM 1214. Various types of processing may be performed on the data of. The CPU 1212 may then write back the processed data to an external recording medium.

様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。 Various types of information such as various types of programs, data, tables, and databases may be stored in recording media and processed. The CPU 1212 describes various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, and information retrieval described in various parts of the present disclosure with respect to the data read from the RAM 1214. Various types of processing may be performed, including / replacement, etc., and the results are written back to the RAM 1214. Further, the CPU 1212 may search for information in a file, database, or the like in the recording medium. For example, when a plurality of entries each having an attribute value of the first attribute associated with the attribute value of the second attribute are stored in the recording medium, the CPU 1212 is the first of the plurality of entries. The attribute value of the attribute of is searched for the entry that matches the specified condition, the attribute value of the second attribute stored in the entry is read, and the attribute value of the second attribute is changed to the first attribute that satisfies the predetermined condition. You may get the attribute value of the associated second attribute.

上で説明したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。 The program or software module described above may be stored on a computer 1200 or in a computer-readable storage medium near the computer 1200. Further, a recording medium such as a hard disk or RAM provided in a dedicated communication network or a server system connected to the Internet can be used as a computer-readable storage medium, whereby the program can be transferred to the computer 1200 via the network. offer.

本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。 The blocks in the flowcharts and block diagrams of this embodiment may represent the stage of the process in which the operation is performed or the "part" of the device responsible for performing the operation. Specific steps and "parts" are supplied with a dedicated circuit, a programmable circuit supplied with computer-readable instructions stored on a computer-readable storage medium, and / or with computer-readable instructions stored on a computer-readable storage medium. It may be implemented by the processor. Dedicated circuits may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. Programmable circuits include logical products, logical sums, exclusive logical sums, negative logical products, negative logical sums, and other logical operations, such as, for example, field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), and the like. , Flip-flops, registers, and reconfigurable hardware circuits, including memory elements.

コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。 The computer readable storage medium may include any tangible device capable of storing instructions executed by the appropriate device, so that the computer readable storage medium having the instructions stored therein may be in a flow chart or block diagram. It will be equipped with a product that contains instructions that can be executed to create means for performing the specified operation. Examples of the computer-readable storage medium may include an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, and the like. More specific examples of computer-readable storage media include floppy (registered trademark) disks, diskettes, hard disks, random access memory (RAM), read-only memory (ROM), and erasable programmable read-only memory (EPROM or flash memory). , Electrically Erasable Programmable Read Only Memory (EEPROM), Static Random Access Memory (SRAM), Compact Disc Read Only Memory (CD-ROM), Digital Versatile Disc (DVD), Blu-ray® Disc, Memory Stick , Integrated circuit cards and the like may be included.

コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでよい。 Computer-readable instructions are assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, or object-oriented programming such as Smalltalk, JAVA®, C ++, etc. Includes either source code or object code written in any combination of one or more programming languages, including languages and traditional procedural programming languages such as the "C" programming language or similar programming languages. good.

コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。 Computer-readable instructions are used to generate means for a general-purpose computer, a special-purpose computer, or the processor of another programmable data processing device, or a programmable circuit, to perform an operation specified in a flowchart or block diagram. General purpose computers, special purpose computers, or other programmable data processing locally or via a local area network (LAN), a wide area network (WAN) such as the Internet, etc., to execute such computer-readable instructions. It may be provided to the processor of the device or a programmable circuit. Examples of processors include computer processors, processing units, microprocessors, digital signal processors, controllers, microcontrollers, and the like.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。 Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It will be apparent to those skilled in the art that various changes or improvements can be made to the above embodiments. It is clear from the description of the claims that the form with such changes or improvements may be included in the technical scope of the present invention.

特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。 The order of execution of each process such as operation, procedure, step, and step in the apparatus, system, program, and method shown in the claims, specification, and drawings is particularly "before" and "prior to". It should be noted that it can be realized in any order unless the output of the previous process is used in the subsequent process. Even if the scope of claims, the specification, and the operation flow in the drawings are explained using "first", "next", etc. for convenience, it means that it is essential to carry out in this order. It's not a thing.

10 システム、20 クラウド、100 通信デバイス、102 鍵情報取得部、104 アプリ通信部、106 システム通信部、108 格納部、110 認証トークン生成部、112 データ取得部、120 HW、122 mbed OS、124 mbed TLS、126 外部接続SDK、128 Pelion Client、130 Secure Zone、132 Secure API、200 アプリケーション、202 鍵情報取得部、204 鍵情報登録部、206 格納部、208 システム通信部、210 データ受信部、212 認証実行部、214 データ管理部、300 管理システム、302 格納部、304 鍵情報登録部、306 認証実行部、312 種類情報受信部、314 判定部、316 登録制御部、1200 コンピュータ、1210 ホストコントローラ、1212 CPU、1214 RAM、1216 グラフィックコントローラ、1218 ディスプレイデバイス、1220 入出力コントローラ、1222 通信インタフェース、1224 記憶装置、1226 DVDドライブ、1227 DVD-ROM、1230 ROM、1240 入出力チップ 10 system, 20 cloud, 100 communication device, 102 key information acquisition unit, 104 application communication unit, 106 system communication unit, 108 storage unit, 110 authentication token generation unit, 112 data acquisition unit, 120 HW, 122 mbed OS, 124 mbed TLS, 126 External connection SDK, 128 Pelion Client, 130 Secure Zone, 132 Secure API, 200 application, 202 key information acquisition unit, 204 key information registration unit, 206 storage unit, 208 system communication unit, 210 data receiver, 212 authentication Execution unit, 214 data management unit, 300 management system, 302 storage unit, 304 key information registration unit, 306 authentication execution unit, 312 types of information reception unit, 314 judgment unit, 316 registration control unit, 1200 computer, 1210 host controller, 1212 CPU, 1214 RAM, 1216 graphic controller, 1218 display device, 1220 input / output controller, 1222 communication interface, 1224 storage device, 1226 DVD drive, 1227 DVD-ROM, 1230 ROM, 1240 input / output chip

Claims (13)

通信デバイスと、
アプリケーションと
を備えるシステムであって、
前記通信デバイスは、
クラウド上の前記アプリケーションに鍵情報を送信する鍵情報送信部と、
前記アプリケーションから前記鍵情報を受信して格納した管理システムに対して、前記鍵情報を送信して、前記管理システムによって前記通信デバイスに対して割り当てられたデバイスIDを受信するデバイスID受信部と、
認証トークンを生成するトークン生成部と、
前記認証トークンを前記管理システムに送信するトークン送信部と、
データを取得するデータ取得部と、
前記データ、前記デバイスID、及び前記認証トークンを前記アプリケーションに送信するデータ送信部と
を有し、
前記アプリケーションは、
前記通信デバイスから、前記データ、前記デバイスID、及び前記認証トークンを受信するデータ受信部と、
前記デバイスID及び前記認証トークンを前記管理システムに送信して、前記デバイスID及び前記認証トークンの認証結果を取得する認証実行部と、
前記認証結果に基づいて前記データを管理するデータ管理部と
を有する、システム。
With communication devices
A system with applications
The communication device is
A key information transmitter that sends key information to the application on the cloud,
A device ID receiving unit that transmits the key information to the management system that receives and stores the key information from the application and receives the device ID assigned to the communication device by the management system.
A token generator that generates authentication tokens, and
A token transmitter that sends the authentication token to the management system,
The data acquisition unit that acquires data, and
It has a data transmission unit that transmits the data, the device ID, and the authentication token to the application.
The application
A data receiving unit that receives the data, the device ID, and the authentication token from the communication device.
An authentication execution unit that transmits the device ID and the authentication token to the management system and acquires the authentication result of the device ID and the authentication token.
A system having a data management unit that manages the data based on the authentication result.
前記通信デバイスは、セキュリティ対策が施されているセキュリティ領域を含む格納部を有し、前記デバイスID及び前記認証トークンの少なくともいずれかを、前記セキュリティ領域に格納する、請求項1に記載のシステム。 The system according to claim 1, wherein the communication device has a storage unit including a security area to which security measures are taken, and stores at least one of the device ID and the authentication token in the security area. 前記通信デバイスは、前記デバイスID及び前記認証トークンを前記セキュリティ領域に格納する、請求項2に記載のシステム。 The system according to claim 2, wherein the communication device stores the device ID and the authentication token in the security area. 前記格納部は、前記セキュリティ領域及び非セキュリティ領域を含み、
前記セキュリティ領域は、前記非セキュリティ領域から仮想的に分離されており、前記非セキュリティ領域からのアクセスが制限される領域である、請求項2又は3に記載のシステム。
The storage unit includes the security area and the non-security area.
The system according to claim 2 or 3, wherein the security area is virtually separated from the non-security area, and access from the non-security area is restricted.
前記格納部は、前記セキュリティ領域及び非セキュリティ領域を含み、
前記セキュリティ領域は、前記非セキュリティ領域から仮想的に分離されており、セキュアOSが動作している領域である、請求項2又は3に記載のシステム。
The storage unit includes the security area and the non-security area.
The system according to claim 2 or 3, wherein the security area is virtually separated from the non-security area and is an area in which a secure OS is operating.
前記通信デバイスは、ノーマル領域とセキュア領域とを含み、前記デバイスID及び前記認証トークンの少なくともいずれかを、前記セキュア領域に格納する、請求項1に記載のシステム。 The system according to claim 1, wherein the communication device includes a normal area and a secure area, and stores at least one of the device ID and the authentication token in the secure area. 前記通信デバイスは、前記デバイスID及び前記認証トークンを、前記セキュア領域に格納する、請求項6に記載のシステム。 The system according to claim 6, wherein the communication device stores the device ID and the authentication token in the secure area. 前記トークン生成部は、生成した前記認証トークンに使用期限を設定し、前記使用期限に基づいて前記認証トークンを更新する、請求項1から7のいずれか一項に記載のシステム。 The system according to any one of claims 1 to 7, wherein the token generation unit sets an expiration date for the generated authentication token and updates the authentication token based on the expiration date. 前記通信デバイスは、IoTデバイスであり、
前記トークン送信部は、LwM2Mに従って前記認証トークンを前記管理システムに送信する、請求項1から8のいずれか一項に記載のシステム。
The communication device is an IoT device.
The system according to any one of claims 1 to 8, wherein the token transmission unit transmits the authentication token to the management system according to LwM2M.
前記通信デバイスは、複数種類のデータを送信可能であり、
前記システムは、
前記通信デバイスから、前記通信デバイスが送信可能なデータの種類を示す種類情報を受信する種類情報受信部と、
前記種類情報に基づいて、前記複数種類のデータのそれぞれの送信先のクラウドサービスを判定する判定部と、
前記通信デバイスに、前記判定部によって判定されたクラウドサービスの前記アプリケーションに対する登録を実行させる登録制御部と
を備える、請求項1から9のいずれか一項に記載のシステム。
The communication device can transmit a plurality of types of data, and the communication device can transmit a plurality of types of data.
The system is
A type information receiving unit that receives type information indicating the type of data that can be transmitted by the communication device from the communication device.
A determination unit that determines the cloud service of the destination of each of the plurality of types of data based on the type information, and a determination unit.
The system according to any one of claims 1 to 9, wherein the communication device includes a registration control unit that causes the communication device to execute registration of the cloud service determined by the determination unit for the application.
通信デバイスであって、
クラウド上のアプリケーションに鍵情報を送信する鍵情報送信部と、
前記アプリケーションから前記鍵情報を受信して格納した管理システムに対して、前記鍵情報を送信して、前記管理システムによって前記通信デバイスに対して割り当てられたデバイスIDを受信するデバイスID受信部と、
認証トークンを生成するトークン生成部と、
前記認証トークンを前記管理システムに送信するトークン送信部と、
データを取得するデータ取得部と、
前記データ、前記デバイスID、及び前記認証トークンを前記アプリケーションに送信するデータ送信部と
を備える通信デバイス。
It ’s a communication device.
A key information transmitter that sends key information to applications on the cloud,
A device ID receiving unit that transmits the key information to the management system that receives and stores the key information from the application and receives the device ID assigned to the communication device by the management system.
A token generator that generates authentication tokens, and
A token transmitter that sends the authentication token to the management system,
The data acquisition unit that acquires data, and
A communication device including a data transmission unit that transmits the data, the device ID, and the authentication token to the application.
コンピュータを、請求項11に記載の通信デバイスとして機能させるためのプログラム。 A program for making a computer function as the communication device according to claim 11. コンピュータによって実行される通信方法であって、
クラウド上のアプリケーションに鍵情報を送信する鍵情報送信段階と、
前記アプリケーションから前記鍵情報を受信して格納した管理システムに対して、前記鍵情報を送信して、前記管理システムによって前記コンピュータに対して割り当てられたデバイスIDを受信するデバイスID受信段階と、
認証トークンを生成するトークン生成段階と、
前記認証トークンを前記管理システムに送信するトークン送信段階と、
データを取得するデータ取得段階と、
前記データ、前記デバイスID、及び前記認証トークンを前記アプリケーションに送信するデータ送信段階と
を備える通信方法。
A communication method performed by a computer
The key information transmission stage to send key information to the application on the cloud,
A device ID receiving stage in which the key information is transmitted to the management system that has received and stored the key information from the application and the device ID assigned to the computer by the management system is received.
The token generation stage to generate the authentication token, and
The token transmission stage of transmitting the authentication token to the management system, and
Data acquisition stage to acquire data and
A communication method comprising a data transmission step of transmitting the data, the device ID, and the authentication token to the application.
JP2020078714A 2020-04-27 2020-04-27 Systems, communication devices, programs, and communication methods Active JP7058687B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020078714A JP7058687B2 (en) 2020-04-27 2020-04-27 Systems, communication devices, programs, and communication methods

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020078714A JP7058687B2 (en) 2020-04-27 2020-04-27 Systems, communication devices, programs, and communication methods

Publications (2)

Publication Number Publication Date
JP2021174326A JP2021174326A (en) 2021-11-01
JP7058687B2 true JP7058687B2 (en) 2022-04-22

Family

ID=78279841

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020078714A Active JP7058687B2 (en) 2020-04-27 2020-04-27 Systems, communication devices, programs, and communication methods

Country Status (1)

Country Link
JP (1) JP7058687B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017199331A (en) 2016-04-20 2017-11-02 株式会社ソフトベース Data recovery system, data recovery method, data recovery program, information processing device, data creation type mobile terminal, and passive type storage medium
WO2018003919A1 (en) 2016-06-29 2018-01-04 株式会社プロスパークリエイティブ Communications system, communications device used in same, management device, and information terminal
WO2018232111A1 (en) 2017-06-16 2018-12-20 Cryptography Research, Inc. Internet of things (iot) device management
JP2019125179A (en) 2018-01-17 2019-07-25 株式会社Cygames System, program, method and server for communication

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017199331A (en) 2016-04-20 2017-11-02 株式会社ソフトベース Data recovery system, data recovery method, data recovery program, information processing device, data creation type mobile terminal, and passive type storage medium
WO2018003919A1 (en) 2016-06-29 2018-01-04 株式会社プロスパークリエイティブ Communications system, communications device used in same, management device, and information terminal
WO2018232111A1 (en) 2017-06-16 2018-12-20 Cryptography Research, Inc. Internet of things (iot) device management
JP2019125179A (en) 2018-01-17 2019-07-25 株式会社Cygames System, program, method and server for communication

Also Published As

Publication number Publication date
JP2021174326A (en) 2021-11-01

Similar Documents

Publication Publication Date Title
US10795975B2 (en) Version management platform
US10601840B2 (en) Security determination
US10321314B2 (en) Communication device, communication method, and communication system
CN104050201A (en) Method and equipment for managing data in multi-tenant distributive environment
US20210005331A1 (en) Management device, management method, and program
CN104756128A (en) Private third party validation of hardware identification for offer enrollment
CN110325992B (en) Remote management of initial computer operating system setup options
US9736155B2 (en) System, method, and apparatus for authentication
CN110960856B (en) Game data management system, management method and storage medium
US20200374276A1 (en) Provisioning system, provisioning method, provisioning program, and, network device
CN109657167B (en) Data acquisition method, device, server and storage medium
US9286459B2 (en) Authorized remote access to an operating system hosted by a virtual machine
JP7058687B2 (en) Systems, communication devices, programs, and communication methods
US20210120008A1 (en) Apparatus, method, and recording medium
JP2017220236A (en) Client alteration determination system and method
US9489336B2 (en) Method and system for record access in a distributed system
US20240020288A1 (en) Data validation device, data validation method, and non-transitory computer-readable medium
US20210120006A1 (en) Apparatus, method, and recording medium
JP7454031B1 (en) Communication terminal, program, and information processing method
US20230237186A1 (en) Access Control Framework For Graph Entities
US20240020387A1 (en) Secure boot attestation in a cloud platform
JP2024060344A (en) Authentication system and authentication method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220224

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220412

R150 Certificate of patent or registration of utility model

Ref document number: 7058687

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150