JP2021179690A - Communication system, repeater, communication method, and program - Google Patents
Communication system, repeater, communication method, and program Download PDFInfo
- Publication number
- JP2021179690A JP2021179690A JP2020083416A JP2020083416A JP2021179690A JP 2021179690 A JP2021179690 A JP 2021179690A JP 2020083416 A JP2020083416 A JP 2020083416A JP 2020083416 A JP2020083416 A JP 2020083416A JP 2021179690 A JP2021179690 A JP 2021179690A
- Authority
- JP
- Japan
- Prior art keywords
- client
- server device
- information
- communication
- client device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 182
- 238000000034 method Methods 0.000 title claims abstract description 123
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000010586 diagram Methods 0.000 description 17
- 238000005259 measurement Methods 0.000 description 16
- 230000004044 response Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000000694 effects Effects 0.000 description 8
- 230000002708 enhancing effect Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000005728 strengthening Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Abstract
Description
本発明は、通信システム、中継装置、通信方法、及びプログラムに関する。 The present invention relates to communication systems, relay devices, communication methods, and programs.
IoT(Internet of Things)の分野において、複数のクライアント装置のそれぞれにより測定された測定データをサーバ装置に集約するシステムがある。このようなシステムでは、複数のクライアント装置を幾つかのグループに分け、グループごとに中継装置を配置し、中継装置を介してクライアント装置とサーバ装置の通信が行われる場合がある。 In the field of IoT (Internet of Things), there is a system that aggregates measurement data measured by each of a plurality of client devices into a server device. In such a system, a plurality of client devices may be divided into several groups, relay devices may be arranged in each group, and communication between the client device and the server device may be performed via the relay device.
また、このようなシステムにおいては、通信ネットワークを介したデータ集約が行われるため、通信ネットワーク上の悪意ある装置により通信データが盗み見られたり、改ざんされたりする可能性がある。この対策として、通信先の装置が正当な装置であるか認証したり、通信データを暗号化して送信したりする等、通信ネットワークにおけるセキュリティを強化することが行われている。特許文献1では、従来クライアント装置により行われるべき認証や暗号化通信に係る処理を中継装置に代行させる技術が開示されている。これにより、クライアント装置における負荷を増大させることなく、通信上のセキュリティを確保することができる。
Further, in such a system, since data is aggregated via the communication network, there is a possibility that the communication data may be stolen or tampered with by a malicious device on the communication network. As a countermeasure, security in a communication network is strengthened, such as authenticating whether the communication destination device is a legitimate device or encrypting and transmitting communication data.
しかしながら、特許文献1では中継装置が各クライアント装置の電子証明書と暗号鍵とを記憶し、電子証明書を用いた認証、及び暗号鍵を用いた暗号化復号処理などを行う。このため、実際に接続されるクライアント装置の数によらず、中継装置に多数のクライアント装置が接続された場合を想定して、各クライアント装置の電子証明書や暗号鍵を記憶させるための大容量のセキュアなメモリ領域を中継装置に確保する必要がありコストがかかってしまうという問題があった。
However, in
本発明は、このような状況に鑑みてなされたものである。本発明の目的は、中継装置に多くのクライアント装置が接続される場合を想定して中継装置に大容量のセキュアなメモリ領域を確保しなくとも、通信上の秘匿を確保することができる通信システム、中継装置、通信方法、及びプログラムを提供することを目的とする。 The present invention has been made in view of such a situation. An object of the present invention is a communication system capable of ensuring confidentiality in communication without securing a large-capacity secure memory area in the relay device assuming that many client devices are connected to the relay device. , Relay devices, communication methods, and programs.
本発明の、通信システムは、サーバ装置と、前記サーバ装置と通信可能に接続される中継装置と、前記中継装置と通信可能に接続される複数のクライアント装置と、を備え、前記クライアント装置は、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を記憶するクライアント記憶部を有し、前記中継装置は、前記中継装置は、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント記憶部に記憶された前記秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御部を有する。 The communication system of the present invention includes a server device, a relay device communicably connected to the server device, and a plurality of client devices communicably connected to the relay device. It has a client storage unit that stores confidential information used in a process for concealing communication with the server device, and the relay device is such that the relay device conceals communication between the server device and the client device. It has a device control unit for instructing the client device to perform a process performed by using the confidential information stored in the client storage unit among the processes for performing the above.
本発明の、中継装置は、クライアント装置とサーバ装置とに通信可能に接続される中継装置であって、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御部を有する。 The relay device of the present invention is a relay device that is communicably connected to the client device and the server device, and is a process for concealing communication between the server device and the client device. It has a device control unit for instructing the client device to perform a process performed by using the confidential information stored in the server device, which is used for the process for concealing communication with the server device.
本発明の、通信方法は、クライアント装置とサーバ装置とに接続する中継装置の通信方法であって、装置制御部が、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する。 The communication method of the present invention is a communication method of a relay device connected to a client device and a server device, and is a process for the device control unit to conceal communication between the server device and the client device. The client device is instructed to perform a process performed by using the confidential information stored in the client device and used for the process for concealing communication with the server device.
本発明の、プログラムは、クライアント装置とサーバ装置とに接続する中継装置のコンピュータに、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御手段、として機能させるためのプログラムである。 The program of the present invention is stored in the client device among the processes for concealing the communication between the server device and the client device in the computer of the relay device connected to the client device and the server device. It is a program for functioning as a device control means for instructing the client device to perform a process performed by using the confidential information used for the process for concealing communication with the server device.
本発明によれば、中継装置に多くのクライアント装置が接続される場合を想定して中継装置に大容量のセキュアなメモリ領域を確保しなくとも、通信上の秘匿を確保することができる。 According to the present invention, it is possible to ensure confidentiality in communication without securing a large-capacity secure memory area in the relay device assuming that many client devices are connected to the relay device.
以下、本発明の実施形態について、図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明の実施形態による通信システム1の構成例を示すブロック図である。通信システム1は、例えば、サーバ装置10と、通信ネットワーク30と、中継装置40と、複数のクライアント装置70(クライアント装置70−1、70−2、…、70−N)とを備える。Nは任意の自然数である。
FIG. 1 is a block diagram showing a configuration example of the
サーバ装置10と、中継装置40とは、通信ネットワーク30を介して互いに通信可能に接続される。中継装置40と複数のクライアント装置70とは通信可能に接続される。ここでは、中継装置40と複数のクライアント装置70は、通信ネットワーク30とは異なる通信ネットワークを介して通信可能に接続される。なお、図1では省略されているが、通信システム1には、1つのサーバ装置10に複数の中継装置40が接続されており、いわゆるツリー型のネットワークが形成されている。
The
サーバ装置10は、複数のクライアント装置70のそれぞれからのデータを集約するサーバ装置等のコンピュータである。サーバ装置10は、クライアント装置70がセンサを用いて測定した測定データを、中継装置40を介して受信する。クライアント装置70により測定される測定データは、任意のデータであってよいが、例えば、監視カメラ等による撮像データ、或いは、温度センサ等により測定された温度データなどである。
The
通信ネットワーク30は、例えば、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、プロバイダ装置、無線基地局、専用回線などのうちの一部または全部を含む通信網である。
The
中継装置40は、サーバ装置10とクライアント装置70の通信を中継する装置であり、例えば、GW50と、GW側SE60とを備える。GW50は、中継機能を有するPC(Personal Computer)などのコンピュータ装置である。GW側SE60は、通信のセキュリティを強化する機能を有する。GW側SE60は、GW50と接続してGW50によって中継される通信上のセキュリティを強化する。ここでの通信上のセキュリティを強化する処理とは、例えば、通信先の装置を認証したり、通信先の装置との通信を暗号化したり復号したりする処理である。通信上のセキュリティを強化する処理についての詳細は後で詳しく説明する。
The
GW側SE60は、例えば、ICチップ、SE(セキュアエレメント)、セキュアICチップ、セキュアチップ、セキュアIC、セキュアマイコン等と称される、半導体基板の上に集積回路が実装された半導体装置である。GW側SE60は、プラスチック等のカード機材に機能が実装されたICカード、又はSIMカード(Subscriber Identity Module Card)であってもよい。この場合、GW側SE60は、GW50に設けられるコンタクト部(不図示)を介して着脱可能に装着される。
The GW side SE60 is a semiconductor device in which an integrated circuit is mounted on a semiconductor substrate, which is called, for example, an IC chip, SE (secure element), a secure IC chip, a secure chip, a secure IC, a secure microcomputer, or the like. The SE60 on the GW side may be an IC card or a SIM card (Subscriber Identity Module Card) whose functions are mounted on card equipment such as plastic. In this case, the GW side SE60 is detachably attached via a contact portion (not shown) provided on the
クライアント装置70は、各種の測定データを、中継装置40を介してサーバ装置10に送信する、通信機能付きのセンサ端末である。クライアント装置70は、例えば、IoT機器80と、クライアント側SE90とを備える。IoT機器80は、各種のセンサにより測定された測定データを取得し、取得した測定データを中継装置40に送信する。
The
クライアント側SE90は、GW側SE60と同様に通信のセキュリティを強化する機能を有する。クライアント側SE90は、IoT機器80と接続してIoT機器80によって送信される測定データの通信上のセキュリティを強化する。例えば、クライアント側SE90は、GW側SE60と同様の機能及び構造を有するICチップ等である。
The client-side SE90 has a function of enhancing communication security like the GW-side SE60. The client-side SE90 is connected to the
ここで、通信上のセキュリティを強化する処理について説明する。通信上のセキュリティを強化するために、例えば、相互認証の処理が行われる。相互認証は、通信元の装置と通信先の装置とが相互に認証することである。ここでの認証は、通信相手の装置がなりすまし等ではない正当な装置であることを確認することである。 Here, a process for enhancing communication security will be described. For example, mutual authentication processing is performed to enhance communication security. Mutual authentication means that the communication source device and the communication destination device mutually authenticate each other. The authentication here is to confirm that the device of the communication partner is a legitimate device that is not spoofing or the like.
相互認証は、例えば、認証用の共通鍵による暗号を用いたチャレンジ&レスポンス方式にて行われる。例えば、サーバ装置10とクライアント装置70が相互認証する場合を考える。この場合、クライアント装置70がサーバ装置10を認証する際にはチャレンジ側がクライアント装置70となりレスポンス側がサーバ装置10となる。サーバ装置10がクライアント装置70を認証する際にはチャレンジ側がサーバ装置10となりレスポンス側がクライアント装置70となる。また、サーバ装置10とクライアント装置70には、予め、認証に用いる共通の暗号鍵(共通鍵)が書き込まれて記憶されていることを前提とする。
Mutual authentication is performed by, for example, a challenge and response method using encryption using a common key for authentication. For example, consider a case where the
チャレンジ側は、レスポンス側にチャレンジ(ホスト乱数)を送信する。レスポンス側は、共通鍵を用いてホスト乱数を暗号化し、暗号化したホスト乱数をチャレンジ側に通知する。チャレンジ側は、暗号化されたホスト乱数を共通鍵で復号し、復号したホスト乱数と、送信したホスト乱数とが一致した場合に、レスポンス側が通信先として正当な装置であると認証する。チャレンジ側とレスポンス側とを入れ替えて同様のやりとりを行うことにより相互認証が行われる。この場合、認証元の装置、及び認証先の装置の双方が、認証用の共通鍵をセキュアに記憶させておく必要がある。 The challenge side sends a challenge (host random number) to the response side. The response side encrypts the host random number using the common key, and notifies the challenge side of the encrypted host random number. The challenge side decodes the encrypted host random number with the common key, and when the decoded host random number and the transmitted host random number match, the response side authenticates that the device is a legitimate communication destination. Mutual authentication is performed by exchanging the challenge side and the response side and performing the same exchange. In this case, both the authentication source device and the authentication destination device need to securely store the common key for authentication.
なお、この場合の相互認証において、復号したホスト乱数と、送信したホスト乱数とが一致することではなく、受信した暗号文と、送信したホスト乱数を暗号化したものが一致することによって、認証が行われてもよい。例えば、サーバ装置10は、ホスト乱数をクライアント装置70に送信する。クライアント装置70は、サーバ装置10から受信したホスト乱数を共通鍵で暗号化し、暗号化したホスト乱数をサーバ装置10に通知する。サーバ装置10は、クライアント装置70に送信したホスト乱数を共通鍵で暗号化し、暗号化したホスト乱数が、クライアント装置70から受信した暗号文と一致した場合に、クライアント装置70が正当な装置であると判定する。クライアント装置70がサーバ装置10を認証する場合も同様である。
In the mutual authentication in this case, the authentication is performed not by matching the decrypted host random number and the transmitted host random number, but by matching the received ciphertext and the encrypted one of the transmitted host random number. It may be done. For example, the
或いは、相互認証は、秘密鍵と公開鍵のペアを用いて行われるようにしてもよい。この場合、認証先の装置(例えば、サーバ装置10)は、予め公開鍵と秘密鍵のペアを作成し、そのうちの公開鍵を、認証元の装置(例えば、クライアント装置70)に送信しておく。クライアント装置70は、認証時において、任意の情報(例えば、乱数)を、サーバ装置10に送信する。サーバ装置10は、受信した情報を秘密鍵で暗号化してクライアント装置70に送信する。クライアント装置70は、サーバ装置10から受信した情報を公開鍵で復号し、復号した情報が元の情報(例えば、乱数)と一致した場合に、サーバ装置10が正当な装置であると判定する。サーバ装置10がクライアント装置70を認証する場合も同様である。この場合、認証先の装置が、認証元に送付した公開鍵に対応する秘密鍵をセキュアに記憶させておく必要がある。
Alternatively, mutual authentication may be performed using a pair of a private key and a public key. In this case, the authentication destination device (for example, the server device 10) creates a public key / private key pair in advance, and sends the public key among them to the authentication source device (for example, the client device 70). .. At the time of authentication, the
或いは、相互認証において、通信先の装置が有する電子証明書の検証が行われるようにしてもよい。この場合、例えば、認証局は、認証先の装置(例えば、サーバ装置10)からの要求に応じて、予め電子証明書(サーバ証明書)が発行されていることを前提とする。電子証明書は、電子文書に電子署名を付した情報である。電子署名は、電子文書から抽出したハッシュ値を、秘密鍵を用いて暗号化した情報である。ここでの秘密鍵は、認証局によりセキュアなメモリ領域に記憶されるなどして厳重に管理される情報である。認証局は、秘密鍵に対応する公開鍵を広く一般に公開する。 Alternatively, in mutual authentication, the digital certificate possessed by the communication destination device may be verified. In this case, for example, the certificate authority presupposes that an electronic certificate (server certificate) has been issued in advance in response to a request from the authentication destination device (for example, the server device 10). An electronic certificate is information in which an electronic document is digitally signed. The electronic signature is information obtained by encrypting a hash value extracted from an electronic document using a private key. The private key here is information that is strictly managed by a certificate authority, such as being stored in a secure memory area. The certificate authority makes the public key corresponding to the private key publicly available.
クライアント装置70は、例えば、通信先の装置(ここでは、サーバ装置10)相手が正当な装置であると認証できた場合において、サーバ証明書をサーバ装置10に要求する。サーバ装置10は、クライアント装置70からの要求に応じてサーバ証明書をクライアント装置70に送信する。クライアント装置70は、サーバ装置10から受信したサーバ証明書の電子文書からハッシュ値を抽出する。また、クライアント装置70は、サーバ装置10から受信したサーバ証明書の電子署名を公開鍵で復号する。クライアント装置70は、抽出したハッシュ値と、復号した情報と一致する場合に、サーバ装置10が正当な装置であると判定する。サーバ装置10がクライアント装置70を認証する場合も同様である。この場合、認証先の装置が、電子証明書(サーバ証明書やクライアント証明書)をセキュアに記憶させておく必要がある。
The
或いは、相互認証は、ログインIDとパスワードを用いて行われるようにしてもよい。この場合、認証先の装置(例えば、クライアント装置70)は、予め、ログインIDとパスワードを、認証元の装置(例えば、サーバ装置10)に登録しておく。サーバ装置10は、認証時において、クライアント装置70からログインIDとパスワードを受信する。サーバ装置10は、受信したログインIDとパスワードが、予め登録されたログインIDとパスワードと一致した場合に、クライアント装置70が正当な装置であると判定する。クライアント装置70がサーバ装置10を認証する場合も同様である。この場合、認証元の装置が、認証先の装置から登録されたログインIDに対応づけられたパスワードをセキュアに記憶させておく必要がある。
Alternatively, mutual authentication may be performed using a login ID and a password. In this case, the authentication destination device (for example, the client device 70) registers the login ID and the password in the authentication source device (for example, the server device 10) in advance. The
このように、相互認証する場合においては、相互認証に係る装置が、認証に用いられる情報をセキュアに記憶させておく必要がある。認証に用いられる情報は、例えば、チャレンジ&レスポンス方式にて相互認証が行われる場合における共通鍵である。認証に用いられる情報は、例えば、秘密鍵と公開鍵のペアを用いて相互認証が行われる場合における秘密鍵である。認証に用いられる情報は、例えば、電子証明書による相互認証が行われる場合における電子証明書である。認証に用いられる情報は、例えば、ログインIDとパスワードを用いて相互認証が行われる場合におけるパスワードである。認証に用いられる情報は、「秘匿情報」の一例である。 In this way, in the case of mutual authentication, it is necessary for the device related to mutual authentication to securely store the information used for authentication. The information used for authentication is, for example, a common key when mutual authentication is performed by the challenge & response method. The information used for authentication is, for example, a private key when mutual authentication is performed using a pair of a private key and a public key. The information used for authentication is, for example, an electronic certificate when mutual authentication by an electronic certificate is performed. The information used for authentication is, for example, a password when mutual authentication is performed using a login ID and a password. The information used for authentication is an example of "confidential information".
さらに、認証先が複数ある場合には、認証先の装置それぞれに対応させた、認証に用いられる情報をセキュアに記憶させておく必要がある。このため、サーバ装置10と複数のクライアント装置70のそれぞれが相互認証を行う場合には、サーバ装置10は、複数のクライアント装置70のそれぞれに対応させた共通鍵等をセキュアに記憶させておく必要がある。一般に、サーバ装置10として設けられるコンピュータ装置として、高性能なプロセッサ及びメモリを備えるものが用いられる場合が多いため、サーバ装置10に大容量のセキュアなメモリを持たせることは問題となることが少ないと考えられる。
Further, when there are a plurality of authentication destinations, it is necessary to securely store the information used for the authentication corresponding to each of the authentication destination devices. Therefore, when each of the
本実施形態では、サーバ装置10と複数のクライアント装置70のそれぞれが相互認証を行う場合において、クライアント装置70により行われるべき認証処理が、中継装置40とクライアント装置70で分担して行われる。
In the present embodiment, when the
例えば、サーバ装置10と中継装置40が通信可能に接続され、中継装置40に複数(例えば3つ)のクライアント装置70−1〜70−3が通信可能に接続される場合を考える。この場合、中継装置40は、サーバ装置10とクライアント装置70−1〜70−3のそれぞれとの相互認証に係る処理を行う。以下では、チャレンジ&レスポンス方式にて相互認証が行われる場合を例に説明するが、他の方式(公開鍵と秘密鍵のペア、電子証明書、或いはログインIDとパスワード)を用いた認証、或いは暗号化復号の処理にも同様な方法を適用させることが可能である。
For example, consider a case where the
具体的に、中継装置40は、サーバ装置10とクライアント装置70−1との相互認証に係る処理を、例えば共通鍵K1を用いて行う。中継装置40は、サーバ装置10とクライアント装置70−2との相互認証に係る処理を、例えば共通鍵K2を用いて行う。中継装置40は、サーバ装置10とクライアント装置70−3との相互認証に係る処理を、例えば共通鍵K3を用いて行う。この場合、中継装置40は、共通鍵K1〜K3をセキュアに記憶させておく必要がある。
Specifically, the
ここで、中継装置40が備えるGW側SE60は、通信のセキュリティを強化する機能を有しており、相互認証や暗号化復号処理などに特化した処理を行う専用のICチップ等である。このため、GW側SE60は、セキュアなメモリ空間を備える。したがって、中継装置40が相互認証に用いる共通鍵K1〜K3を、GW側SE60のセキュアなメモリ空間に記憶させることが考えられる。しかしながら、GW側SE60の装置コストを抑えるため、GW側SE60は、セキュアなメモリ空間にさほど容量を持たせない構成である場合がほとんどである。この場合、中継装置40は、接続するクライアント装置70の数が多い場合に、それぞれの相互認証に用いる共通鍵をセキュアに記憶させておくことが困難となる。
Here, the GW side SE60 included in the
この対策として、本実施形態では、中継装置40が、中継装置40に接続されているクライアント装置70のそれぞれに、それぞれの認証に必要となる共通鍵を記憶させるようにする。これにより、中継装置40に大容量のセキュアなメモリ領域を確保することなく通信上のセキュリティを確保することを可能とする。
As a countermeasure, in the present embodiment, the
例えば、中継装置40にクライアント装置70−1〜70−3が接続され、それぞれの認証に共通鍵K1〜K3のそれぞれが用いられる場合を考える。この場合、クライアント装置70−1は、自身(クライアント装置70−1)の相互認証の処理に用いられる共通鍵K1を記憶する。クライアント装置70−2は、自身(クライアント装置70−2)の相互認証の処理に用いられる共通鍵K2を記憶する。クライアント装置70−3は、自身(クライアント装置70−3)の相互認証の処理に用いられる共通鍵K3を記憶する。
For example, consider a case where client devices 70-1 to 70-3 are connected to the
そして、中継装置40は、相互認証に係る処理の過程において、処理の対象となるクライアント装置70から、自身の認証に用いられる共通鍵を取得し、取得した共通鍵を用いて相互認証に係る処理を行う。
Then, in the process related to mutual authentication, the
例えば、中継装置40は、サーバ装置10とクライアント装置70−1との相互認証を行う場合、クライアント装置70−1から共通鍵K1を取得し、取得した共通鍵K1を用いて相互認証に係る処理を行う。中継装置40は、サーバ装置10とクライアント装置70−2との相互認証を行う場合、クライアント装置70−2から共通鍵K2を取得し、取得した共通鍵K2を用いて相互認証に係る処理を行う。中継装置40は、サーバ装置10とクライアント装置70−3との相互認証を行う場合、クライアント装置70−3から共通鍵K3を取得し、取得した共通鍵K3を用いて相互認証に係る処理を行う。
For example, when the
さらに、通信上のセキュリティを強化する処理として、暗号化復号の処理がある。この暗号化復号の処理においても、上述した相互認証に係る処理と同様な方法を適用することが可能である。ここで、暗号化復号の処理に用いられる情報は、「秘匿情報」の一例である。 Further, there is an encryption / decryption process as a process for enhancing communication security. In this encryption / decryption process, the same method as the above-mentioned process related to mutual authentication can be applied. Here, the information used in the encryption / decryption process is an example of "confidential information".
本実施形態の暗号化復号化の処理について、以下、より詳細に説明する。暗号化の処理は、平文を暗号化する処理である。復号化の処理は、暗号化された情報を復号して平文に戻す処理である。暗号化復号の処理を行うことにより、通信経路を流れる情報が盗み見られた場合であってもその内容を解読することが困難となり、通信内容を秘匿として通信上のセキュリティを維持することが可能である。 The encryption / decryption process of the present embodiment will be described in more detail below. The encryption process is a process for encrypting plaintext. The decryption process is a process of decrypting the encrypted information and returning it to plain text. By performing the encryption / decryption process, even if the information flowing through the communication path is stolen, it becomes difficult to decrypt the content, and it is possible to maintain the security of the communication by keeping the communication content confidential. be.
本実施形態では、サーバ装置10と複数のクライアント装置70のそれぞれが暗号化通信を行う場合において、クライアント装置70により行われるべき暗号化復号処理が、中継装置40とクライアント装置70で分担して行われる。
In the present embodiment, when the
例えば、サーバ装置10と中継装置40が通信可能に接続され、中継装置40に複数(例えば3つ)のクライアント装置70−1〜70−3が通信可能に接続される場合を考える。この場合、中継装置40は、サーバ装置10とクライアント装置70−1〜70−3のそれぞれとの暗号化復号に係る処理を行う。この場合において、中継装置40は、クライアント装置70−1〜70−3のそれぞれについて、互いに異なる暗号鍵を用いた暗号化復号の処理を行う。例えば、中継装置40は、暗号鍵A1を用いて、サーバ装置10とクライアント装置70−1との暗号化復号に係る処理を行う。中継装置40は、暗号鍵A2を用いて、サーバ装置10とクライアント装置70−2との暗号化復号に係る処理を行う。中継装置40は、暗号鍵A3を用いて、サーバ装置10とクライアント装置70−3との暗号化復号に係る処理を行う。この場合、暗号化や復号に用いられる暗号鍵A1〜A3のそれぞれがセキュアに記憶される必要がある。
For example, consider a case where the
本実施形態では、中継装置40が、中継装置40に接続されているクライアント装置70のそれぞれに、それぞれの暗号化復号の処理に必要となる暗号鍵を記憶させるようにする。これにより、中継装置40に大容量のセキュアなメモリ領域を確保することなく通信上のセキュリティを確保することを可能とする。
In the present embodiment, the
例えば、中継装置40にクライアント装置70−1〜70−3が接続され、それぞれの暗号化復号に暗号鍵A1〜A3のそれぞれが用いられる場合を考える。この場合、クライアント装置70−1は、自身(クライアント装置70−1)の暗号化復号の処理に用いられる暗号鍵A1を記憶する。クライアント装置70−2は、自身(クライアント装置70−2)の暗号化復号の処理に用いられる暗号鍵A2を記憶する。クライアント装置70−3は、自身(クライアント装置70−3)の暗号化復号の処理に用いられる暗号鍵A3を記憶する。
For example, consider a case where client devices 70-1 to 70-3 are connected to the
そして、中継装置40は、暗号化復号に係る処理の過程において、処理の対象となるクライアント装置70から、自身の暗号化または復号に用いられる暗号鍵を取得し、取得した暗号鍵を用いて暗号化復号に係る処理を行う。
Then, in the process of the encryption / decryption process, the
例えば、中継装置40は、サーバ装置10とクライアント装置70−1との暗号化復号の処理を行う場合、クライアント装置70−1から暗号鍵A1を取得し、取得した暗号鍵A1を用いて暗号化復号に係る処理を行う。中継装置40は、サーバ装置10とクライアント装置70−2との暗号化復号の処理を行う場合、クライアント装置70−2から暗号鍵A2を取得し、取得した暗号鍵A2を用いて暗号化復号に係る処理を行う。中継装置40は、サーバ装置10とクライアント装置70−3との暗号化復号の処理を行う場合、クライアント装置70−3から暗号鍵A3を取得し、取得した暗号鍵A3を用いて暗号化復号に係る処理を行う。
For example, when the
図2は、本発明の実施形態によるサーバ装置10の構成例を示すブロック図である。サーバ装置10は、例えば、通信部11と、記憶部12と、制御部13とを備える。通信部11は、通信ネットワーク30を介して、中継装置40と通信を行う。
FIG. 2 is a block diagram showing a configuration example of the
記憶部12は、記憶媒体、例えば、HDD(Hard Disk Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、RAM(Random Access read/write Memory)、ROM(Read Only Memory)、またはこれらの記憶媒体の任意の組み合わせによって構成される。
The
記憶部12は、例えば、センサ情報120と、鍵情報121とを記憶する。センサ情報120は、クライアント装置70のそれぞれから集約した情報(センサにより測定された測定データ等)である。鍵情報121は、認証や暗号化通信に用いる鍵(例えば、共通鍵、暗号鍵)に関する情報である。鍵情報121に、秘密鍵や電子証明書、及びパスワードに関する情報が含まれていてもよい。
The
制御部13は、例えば、サーバ装置10がハードウェアとして備えるCPU(Central Processing Unit)に、記憶部12に記憶されたプログラムを実行させることによって実現される。制御部13は、例えば、センサ情報管理部130と、認証部131と、132と、装置制御部133とを備える。
The
センサ情報管理部130は、クライアント装置70から集約する情報(センサにより測定された測定データ等)を管理する。例えば、センサ情報管理部130は、順次、複数のクライアント装置のそれぞれと、中継装置40を介して通信同期を確立させ、それぞれのクライアント装置70により取得された情報を受信する。センサ情報管理部130は、受信した情報をセンサ情報120に記憶させる。
The sensor
認証部131は、相互認証に係る処理を行う。例えば、認証部131は、中継装置40を介して複数のクライアント装置70のそれぞれと通信する際に、通信先のクライアント装置70を認証する。また、認証部131は、複数のクライアント装置のそれぞれからの要求に応じて、サーバ装置10が正当な装置であることを認証させる。
The
暗号化復号処理部132は、暗号化復号に係る処理を行う。例えば、暗号化復号処理部132は、中継装置40を介して複数のクライアント装置70のそれぞれと中継装置40を介して通信する際に、鍵情報121に記憶された暗号鍵を用いて送信する情報を暗号化する。また、暗号化復号処理部132は、サーバ装置10が受信した情報を鍵情報121に記憶された暗号鍵を用いて復号する。
The encryption /
装置制御部133は、サーバ装置10を統括的に制御する。装置制御部133は、例えば、認証部131により通信先のクライアント装置70が正当な装置と認証された場合にセンサ情報管理部130にセンサ情報を取得させる。装置制御部133は、通信部11を介して受信したセンサ情報を暗号化復号処理部132に復号させ、復号した情報をセンサ情報管理部130に出力する。
The
図3は、本発明の実施形態によるGW50の構成例を示すブロック図である。GW50は、例えば、通信部51と、記憶部52と、制御部53とを備える。通信部51は、サーバ通信部510と、クライアント通信部511と、中継側SE通信部512とを備える。
FIG. 3 is a block diagram showing a configuration example of the
サーバ通信部510は、サーバ装置10と通信する。GW50とサーバ装置10との間の通信プロトコルは、通信ネットワーク30を介した通信方式であり、例えば、インターネットなどの汎用的なネットワーク網で構成された通信方式などが適用される。
The
クライアント通信部511は、クライアント装置70と通信する。GW50とクライアント装置70との間の通信プロトコルは、任意であってよいが、例えば、LPWA(Low Power Wide Area)規格のZETA(登録商標)などが適用される。
The
中継側SE通信部512は、中継側SE60と通信する。GW50と中継側SE60との間の通信プロトコルは、例えば、UART(Universal Asynchronous Receiver/Transmitter)などのシリアルデータ通信が適用される。
The relay-side
記憶部52は、記憶媒体、例えば、HDD、フラッシュメモリ、EEPROM、RAM、ROM、またはこれらの記憶媒体の任意の組み合わせによって構成される。記憶部52は、例えば、中継情報520を記憶する。中継情報520は、中継するデータに関する情報であり、例えば、中継元から受信したデータ、中継先に送信するデータ、中継に係るデータプロトコルの変換方法等に関する情報である。
The
制御部53は、例えば、GW50がハードウェアとして備えるCPUに、記憶部52に記憶されたプログラムを実行させることによって実現される。制御部53は、例えば、中継部530と、装置制御部531とを備える。中継部530は、データの中継に係る処理を行う。中継部530は、変換元の装置から受信したデータを、変換先の通信に適用される通信プロトコルに変換し、変換したデータを変換先の装置に送信する。具体的に、中継部530は、クライアント装置70から受信したデータを、通信ネットワーク30に適用される通信プロトコルに変換し、変換したデータをサーバ装置10に送信する。中継部530は、サーバ装置10から受信したデータを、クライアント装置70との通信に適用される通信プロトコルに変換し、変換したデータをクライアント装置70に送信する。
The
装置制御部531は、GW50を統括的に制御する。装置制御部531は、例えば、中継元の装置から受信したデータを、中継部530に出力する。装置制御部531は、中継部530により通信プロトコルが変換されたデータを、通信部51を介して中継先の装置に送信する。装置制御部531は、復号、或いは暗号化するデータを、中継側SE通信部512を介して中継側SE60に送信する。装置制御部531は、中継側SE60により復号、或いは暗号化されたデータを中継部530に出力する。
The
図4は、本発明の実施形態によるGW側SE60の構成例を示すブロック図である。GW側SE60は、例えば、通信部61と、記憶部62と、制御部63とを備える。通信部61は、GW50と通信を行う。記憶部62は、記憶媒体、例えば、HDD、フラッシュメモリ、EEPROM、RAM、ROM、またはこれらの記憶媒体の任意の組み合わせによって構成される。
FIG. 4 is a block diagram showing a configuration example of the GW side SE60 according to the embodiment of the present invention. The GW side SE60 includes, for example, a
制御部63は、例えば、GW側SE60がハードウェアとして備えるCPUに、記憶部62に記憶されたプログラムを実行させることによって実現される。制御部63は、例えば、認証部630と、暗号化復号部631と、装置制御部632とを備える。
The
認証部630は、サーバ装置10と、中継装置40に接続されるクライアント装置70のそれぞれとの相互認証に係る処理を行う。認証部630は、相互認証に係る処理の過程において、処理の対象となるクライアント装置70から、相互認証に用いる共通鍵等を取得し、取得した共通鍵等を用いて相互認証に係る処理を行う。
The
暗号化復号部631は、サーバ装置10と、中継装置40に接続されるクライアント装置70のそれぞれとの暗号化復号に係る処理を行う。認証部630は、暗号化復号に係る処理の過程において、処理の対象となるクライアント装置70から、暗号化復号に用いる暗号鍵を取得し、取得した暗号鍵を用いて暗号化復号に係る処理を行う。
The encryption /
装置制御部632は、GW側SE60を統括的に制御する。装置制御部632は、認証部630による処理の過程において、共通鍵を要求する旨の通知を、通信部61を介してクライアント装置70に送信する。装置制御部632は、通信部61を介してクライアント装置70から受信した共通鍵を認証部630に出力する。
The
図5は、本発明の実施形態によるIoT機器80の構成例を示すブロック図である。IoT機器80は、例えば、通信部81と、記憶部82と、制御部83とを備える。通信部81は、GW通信部810と端末側SE通信部811とを備える。GW通信部810は、GW50と通信を行う。端末側SE通信部811は、クライアント側SE90と通信を行う。
FIG. 5 is a block diagram showing a configuration example of the
記憶部82は、記憶媒体、例えば、HDD、フラッシュメモリ、EEPROM、RAM、ROM、またはこれらの記憶媒体の任意の組み合わせによって構成される。記憶部82は、例えば、センサ情報820を記憶する。センサ情報820は、クライアント装置70に接続される各種センサによって測定されたデータである。
The
制御部83は、IoT機器80がハードウェアとして備えるCPUに、記憶部82に記憶されたプログラムを実行させることによって実現される。制御部83は、例えば、センサ情報取得部830と、装置制御部831とを備える。クライアント装置70に接続される各種センサにより測定されたデータを取得する。装置制御部831は、IoT機器80を統括的に制御する。装置制御部831は、例えば、センサ情報取得部830により取得されたデータ、或いは、記憶部82に記憶されたセンサ情報820をGW50に送信する。
The
図6は、本発明の実施形態によるクライアント側SE90の構成例を示すブロック図である。クライアント側SE90は、例えば、通信部91と、記憶部92と、制御部93とを備える。通信部91は、IoT機器80と通信を行う。
FIG. 6 is a block diagram showing a configuration example of the client-side SE90 according to the embodiment of the present invention. The client-side SE90 includes, for example, a
記憶部92は、記憶媒体、例えば、HDD、フラッシュメモリ、EEPROM、RAM、ROM、またはこれらの記憶媒体の任意の組み合わせによって構成される。記憶部92は、例えば、秘匿情報920を記憶する。秘匿情報920は、通信上のセキュリティを強化するために用いられる情報であって、セキュアに記憶される必要がある情報である。秘匿情報920は、例えば、相互認証に用いられる共通鍵、秘密鍵、電子証明書、パスワードなどに関する情報である。
The
制御部93は、端末側SE90がハードウェアとして備えるCPUに、記憶部92に記憶されたプログラムを実行させることによって実現される。制御部93は、例えば、認証対応部930と、暗号復号対応部931と、装置制御部932とを備える。
The
認証対応部930は、クライアント装置70における相互認証に係る処理の過程において、GW側SE60から要求に対応する。具体的に、認証対応部930は、相互認証に用いられる共通鍵をGW側SE60から要求された場合に、秘匿情報920を参照して該当する共通鍵を取得し、取得した共通鍵をGW側SE60に送信する。
The
暗号復号対応部931は、クライアント装置70における暗号化復号に係る処理の過程において、GW側SE60から要求に対応する。具体的に、暗号復号対応部931は、暗号化や復号に用いられる暗号鍵をGW側SE60から要求された場合に、秘匿情報920を参照して該当する暗号鍵を取得し、取得した暗号鍵をGW側SE60に送信する。
The encryption /
装置制御部932は、クライアント側SE90を統括的に制御する。装置制御部932は、GW側SE60から相互認証に係る共通鍵を要求する通知を、通信部91を介して受信した場合、受信した情報を認証対応部930に出力する。装置制御部932は、GW側SE60から暗号化や復号に係る暗号鍵を要求する通知を、通信部91を介して受信した場合、受信した情報を暗号復号対応部931に出力する。
The
なお、上記では、中継装置40とクライアント装置70で分担して行う場合の例として、中継装置40が通信上の秘匿に係る処理(認証処理、又は暗号化復号処理)を行う場合を例示して説明した。しかしながら、これに限定されない。中継装置40とクライアント装置70で分担して行う場合の例として、中継装置40がクライアント装置70に通信上の秘匿に係る処理を行うように命令するようにしてもよい。ここでの通信上の秘匿に係る処理とは、認証処理、又は暗号化復号処理における任意の処置であってよいが、特に、クライアント装置70に記憶される秘匿情報920を用いて行われる処理であることが望ましい。例えば、暗号化復号に係る処理を行う場合、暗号鍵を用いる処理については中継装置40がクライアント装置に処理の実行を命令し、通信履歴の生成など暗号鍵を用いない処理を中継装置40が行うようにする。
In the above, as an example of the case where the
この場合、中継装置40が通信上の秘匿に係る処理(認証処理、又は暗号化復号処理)を行わない。このため、GW側SE60を省略することができる。また、GW50の通信部51は、中継側SE通信部512を省略することできる。
In this case, the
中継装置40は、相互認証に係る処理の過程において、処理の対象となるクライアント装置70に、自身の認証に用いられる共通鍵を用いて相互認証に係る処理を行うように命令する。例えば、GW50の装置制御部531が、通信部51を介して、クライアント装置70に相互認証に係る処理を行うように命令する。そして、中継装置40は、クライアント装置70から相互認証に係る処理の結果を取得し、取得した情報を、サーバ装置10に送信する。
In the process of mutual authentication, the
また、中継装置40は、暗号化復号に係る処理の過程において、処理の対象となるクライアント装置70に、自身が記憶する暗号鍵を用いて暗号化復号に係る処理を行うように命令する。例えば、GW50の装置制御部531が、通信部51を介して、クライアント装置70に暗号化復号に係る処理を行うように命令する。そして、中継装置40は、クライアント装置70から暗号化復号に係る処理の結果を取得し、取得した情報を、サーバ装置10に送信する。
Further, the
これにより、共通鍵や暗号鍵などのセキュアに記憶されるべき情報を、クライアント装置70から外部に出さずに、相互認証あるいは暗号化復号に係る処理を行うことができる。したがって、通信上の秘匿をより向上させることが可能である。
As a result, it is possible to perform processing related to mutual authentication or encryption / decryption without transmitting information to be securely stored such as a common key and an encryption key to the outside from the
図7は、本発明の実施形態による鍵情報121の構成例を示す図である。鍵情報121は、例えば、サーバ装置10、及び通信先の複数のクライアント装置70のそれぞれについての項目を備える。この例では、サーバ装置10の項目には、装置IDとサーバ証明書などの項目が含まれる。装置IDは、サーバ装置10を一意に識別する識別情報である。サーバ証明書は、サーバ装置10が認証局から取得した電子証明書を示す情報である。クライアント装置70の項目には、例えば、装置ID、共通鍵、暗号鍵などの項目が含まれる。装置IDは、クライアント装置70を一意に識別する識別情報である。共通鍵は、装置IDで特定されるクライアント装置70との相互認証を行う際に用いられる共通鍵に関する情報である。暗号鍵は、装置IDで特定されるクライアント装置70への情報を暗号化したり、クライアント装置70からの情報を復号したりする際に用いられる暗号鍵に関する情報である。
FIG. 7 is a diagram showing a configuration example of the
図8は、本発明の実施形態による秘匿情報920の構成例を示す図である。秘匿情報920は、クライアント装置70の項目を備える。この例では、クライアント装置70の項目には、装置ID、共通鍵、暗号鍵、及びクライアント証明書などの項目が含まれる。装置IDは、クライアント装置70を一意に識別する識別情報である。共通鍵は、装置IDで特定されるクライアント装置70との相互認証を行う際に用いられる共通鍵に関する情報である。暗号鍵は、装置IDで特定されるクライアント装置70への情報を暗号化したり、クライアント装置70からの情報を復号したりする際に用いられる暗号鍵に関する情報である。クライアント証明書は、クライアント装置70が認証局から取得した電子証明書を示す情報である。
FIG. 8 is a diagram showing a configuration example of
サーバ装置10は、図7に示すように、通信先のクライアント装置70のそれぞれについての共通鍵や暗号鍵を記憶する必要があり、しかもこれらの情報が外部に漏れないようにセキュアに管理することが求められている。中継装置40が、自身に接続されるクライアント装置70のそれぞれの相互認証、及び暗号化復号に係る処理を、行う場合、図7に示す鍵情報121のうち、中継装置40自身に接続されるクライアント装置70についての共通鍵や暗号鍵をセキュアに記憶する必要があり、これらを記憶するための大容量の領域を確保するために装置コストが増大してしまう可能性がある。
As shown in FIG. 7, the
この対策として、本実施形態では、GW側SE60の記憶部62に、複数のクライアント装置70に係る共通鍵や暗号鍵に関する情報を記憶させる代わりに、図8に示すように、クライアント側SE90の記憶部92にそれぞれのクライアント装置70に係る共通鍵や暗号鍵に関する情報を記憶させる。1つのクライアント装置70に係る共通鍵や暗号鍵に関する情報の容量はさほど大きなものではないため、クライアント側SE90の装置コストを増大させる要因とはなり難い。したがって、通信システム1の全体として装置コストが増大することもない。
As a countermeasure, in the present embodiment, instead of storing information about the common key and the encryption key related to the plurality of
図9及び図10は、本発明の実施形態による通信システム1が行う処理の流れを示すシーケンス図である。以下では、中継装置40がクライアント装置70に通信上の秘匿に係る処理を行うように命令する場合の処理の流れを例に説明する。
9 and 10 are sequence diagrams showing a flow of processing performed by the
図9のステップS1において、クライアント装置70は、乱数を生成し、生成した乱数を中継装置40に送信する。ここで中継装置40に送信される乱数は漏洩しても問題ない情報なので、IoT機器80によって生成されてもよいし、クライアント側SE90によって生成されてもよい。
In step S1 of FIG. 9, the
ステップS2において、中継装置40は、クライアント装置70から受信した乱数をサーバ装置10に送信する。
In step S2, the
ステップS3において、サーバ装置10は、サーバ装置10が生成した乱数を中継装置40に送信する。
In step S3, the
ステップS4において、サーバ装置10は、サーバ証明書を中継装置40に送信する。サーバ証明書には公開鍵と電子署名が含まれる。電子署名は、サーバ証明書に含まれる電子文書が、サーバ証明書に含まれる公開鍵と対になる秘密鍵で暗号化された情報である。
In step S4, the
ステップS5において、中継装置40は、サーバ装置10を認証する。例えば、中継装置40は、サーバ証明書に含まれる電子文書からハッシュ値を抽出する。中継装置40は、サーバ証明書に含まれる電子署名を公開鍵で復号する。中継装置40は、電子文書から抽出したハッシュ値と、電子署名を公開鍵で復号した情報とが一致する場合、サーバ装置10が正当な装置であると認証する。
In step S5, the
ステップS6において、クライアント装置70は、中継装置40からの要求に応じて、クライアント証明書を中継装置40に送信する。ここでのクライアント証明書は、秘匿情報920にセキュアに記憶されていてもよいし、記憶部82に記憶されていてもよい。一般に、クライアント証明書は外部に漏れてもよい情報であるためである。クライアント証明書には公開鍵と電子署名とが含まれる。電子署名は、クライアント証明書に含まれる電子文書が、クライアント証明書に含まれる公開鍵と対になる秘密鍵で暗号化された情報である。
In step S6, the
ステップS7において、中継装置40は、クライアント装置70から受信したクライアント証明書をサーバ装置10に送信する。
In step S7, the
ステップS8において、中継装置40は、サーバ装置10と中継装置40との通信における履歴(通信履歴)を生成し、生成した通信履歴をクライアント装置70に送信する。
In step S8, the
ステップS9において、クライアント装置70は、中継装置40から受信した通信履歴を、クライアント証明書に紐づく秘密鍵で暗号化した電子署名を生成する。ここでのクライアント証明書に紐づく秘密鍵は、秘匿情報920にセキュアに記憶されており、電子署名の生成は認証対応部930で行われる。
In step S9, the
ステップS10において、クライアント装置70は、生成した電子署名を中継装置40に送信する。
In step S10, the
ステップS11において、中継装置40は、通信履歴から生成した電子署名を、サーバ装置10に送信する。
In step S11, the
ステップS12において、サーバ装置10は、クライアント証明書に含まれる公開鍵でクライアント証明書内の署名と、通信履歴から生成した署名とを検証する。
In step S12, the
ステップS13において、サーバ装置10は、セッション鍵を生成する。セッション鍵は、ある一定の回数や時間、データ量だけ、あるいは通信開始から終了までの間だけ有効な使い捨ての暗号鍵である。サーバ装置10は、例えば、クライアント装置70により生成された乱数、サーバ装置10により生成された乱数、クライアント証明書に含まれる公開鍵、及びサーバ証明書に紐づく秘密鍵を引数として、所定のアルゴリズムを実行することにより、セッション鍵を生成する。
In step S13, the
ステップS14において、中継装置40は、サーバ装置10により生成された乱数、及びサーバ証明書をクライアント装置70に送信する。
In step S14, the
ステップS15において、クライアント装置70は、例えば、クライアント装置70により生成された乱数、サーバ装置10により生成された乱数、サーバ証明書に含まれる公開鍵、及びクライアント証明書に紐づく秘密鍵を引数として、所定のアルゴリズムを実行することにより、セッション鍵を生成する。
In step S15, the
これにより、サーバ装置10とクライアント装置70との間の通信に用いる同一のセッション鍵を、安全に共有できる。第三者は、サーバ証明書に紐づく秘密鍵、またはクライアント証明書に紐づく秘密鍵を知り得ない。このため、中継装置40における通信内容を全て盗聴されたとしてもセッション鍵を生成されたりセッション鍵を用いた暗号通信の内容を盗まれたりされることがない。ステップS1〜S15に示す処理が行われることにより通信同期が確立される。
As a result, the same session key used for communication between the
図10のステップS16において、クライアント装置70は、取得した測定データを、セッション鍵を用いて暗号化する。
In step S16 of FIG. 10, the
ステップS17において、クライアント装置70は、暗号化した測定データを中継装置40に送信する。
In step S17, the
ステップS18において、中継装置40は、セッション鍵で暗号化された測定データをサーバ装置10に送信する。
In step S18, the
ステップS19において、サーバ装置10は、受信した測定データを、セッション鍵を用いて復号する。
In step S19, the
ステップS20において、サーバ装置10は、復号した測定データをセンサ情報120に記憶させるなどして、測定データを活用できる状態とする。
In step S20, the
なお、サーバ装置10からクライアント装置70に情報(例えば、センサの測定頻度などのパラメータ設定を示す情報など)を送信する際にも、上述したステップS1〜S20に示す処理と同様の手法を適用することができる。
When information (for example, information indicating parameter settings such as sensor measurement frequency) is transmitted from the
以上説明したように、実施形態の通信システム1は、サーバ装置10と、サーバ装置10と通信可能に接続される中継装置40と、中継装置40と通信可能に接続される複数のクライアント装置70と、を備える。クライアント装置70は、サーバ装置10との通信を秘匿にするための処理に用いられる秘匿情報920を記憶する記憶部92を有する。中継装置40は、サーバ装置10とクライアント装置70との通信をセキュアにするための処理のうち、秘匿情報920を用いて行われる処理をクライアント装置70が実行するように命令する装置制御部531を有する。
As described above, the
記憶部92は、「クライアント記憶部」の一例である。
The
これにより、実施形態の通信システム1では、中継装置40が、相互認証や暗号化復号に係る処理などの通信を秘匿にするための処理のうち、クライアント側SE90に記憶される秘匿情報920を用いて行われる処理をクライアント装置70が行うように命令することができる。したがって、中継装置40に多くのクライアント装置70が接続される場合であっても、中継装置40に大容量のセキュアなメモリ領域を確保することなく通信上のセキュリティを確保することができる。
As a result, in the
ここで、比較例1として暗号化復号に係る全ての処理を中継装置40が行う場合を考える。この場合、中継装置40は、暗号鍵を用いた処理を行う際にクライアント装置70から暗号鍵を取得しなければならない。このため、暗号鍵がクライアント装置70の外部に出力されることとなり、暗号鍵が盗み見られたり、改ざんされたりする可能性がある。これに対し、本実施形態の通信システム1では、秘匿情報920を用いた処理をクライアント装置70に実行させる。このため、クライアント装置70の外部に暗号鍵が出力されることがない。すなわち、暗号鍵が盗み見られたり、改ざんされたりする可能性を抑止することができる。したがってより安全な暗号通信が可能となる。
Here, as a comparative example 1, consider a case where the
また、比較例2として暗号化復号に係る全ての処理をクライアント装置70が行う場合を考える。この場合、クライアント装置70の処理負荷が増大するため、増大する処理を実行できるような高性能CPU等を備えなくてはならず装置コストが上昇してしまう。これに対し、本実施形態の通信システム1では、中継装置40が、相互認証や暗号化復号に係る処理などの通信を秘匿にするための処理のうち、クライアント側SE90に記憶される秘匿情報920を用いない処理を実行することができる。このため、クライアント装置70が行う処理の量を減らすことができ、クライアント装置70の装置コストの上昇を抑制することができる。クライアント装置70が高性能CPU等を備えていなくとも、中継装置40が処理を行うことにより、複雑な暗号通信(例えばTLS)を行うことが可能となる。また、上述した図9の例では省略しているが、クライアント装置70が、IoT機器80にSE90を接続させ、SE90に暗号処理を行わせる構成の場合、SE90に暗号処理を実行させる命令を行う必要がある。この、SE90に暗号処理を実行させる命令を中継装置40が作成し、作成した命令をクライアント装置70に送信することにより、クライアント装置70が暗号処理を行うように命令することができる。この場合、クライアント装置70はSE90に暗号処理を実行させる命令を作成する必要がない。このため、クライアント装置70が行う処理を低減させることが可能となる。したがって、クライアント装置70に対するコストを抑えつつ、通信上のセキュリティを確保することができる。
Further, as a comparative example 2, consider a case where the
また、実施形態の通信システム1では、秘匿情報920には、サーバ装置10とクライアント装置70とで共有される共通鍵を示す情報が含まれる。認証部630は、共通鍵を用いてサーバ装置10から通知された情報を復号することにより、前記サーバ装置を認証する。認証部630は、共通鍵を用いて暗号化した情報をサーバ装置10に送信することにより、サーバ装置10に、クライアント装置70を認証させる。これにより、上述した効果と同様の効果を奏する。
Further, in the
また、実施形態の通信システム1では、秘匿情報920には、サーバ装置10に公開された公開鍵に対応する秘密鍵を示す情報が含まれ、認証部630は、秘密鍵で暗号化された情報を、サーバ装置10に送信することにより、サーバ装置10に、クライアント装置70を認証させる。これにより、上述した効果と同様の効果を奏する。
Further, in the
また、実施形態の通信システム1では、秘匿情報920には、サーバ装置10が正当な装置であると認証された後に生成された暗号鍵を示す情報が含まれ、暗号化復号部631は、正当な装置であると認証されたサーバ装置10に通知する情報を、暗号鍵を用いて暗号化し、暗号化した情報をサーバ装置10に送信する。これにより、上述した効果と同様の効果を奏する。
Further, in the
また、実施形態の中継装置40は、クライアント装置70とサーバ装置10とに通信可能に接続される。中継装置40は、認証部630又は暗号化復号部631を備える。これにより、上述した効果と同様の効果を奏する。
Further, the
なお、上述の各実施の形態で説明した機能は、ハードウェアを用いて構成するにとどまらず、ソフトウェアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウェア、ハードウェアのいずれかを選択して構成するものであってもよい。 The functions described in each of the above-described embodiments are not limited to the configuration using hardware, but can also be realized by loading a program describing each function into a computer using software. Further, each function may be configured by appropriately selecting either software or hardware.
上述した実施形態における通信システム1、中継装置40の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
The
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs and the like within a range that does not deviate from the gist of the present invention.
1…通信システム
10…サーバ装置
40…中継装置
50…GW
60…中継側SE
630…認証部
631…暗号化復号部
632…装置制御部
70…クライアント装置
80…IoT機器
90…クライアント側SE
1 ...
60 ... Relay side SE
630 ...
Claims (11)
前記クライアント装置は、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を記憶するクライアント記憶部を有し、
前記中継装置は、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント記憶部に記憶された前記秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御部を有する、
通信システム。 A server device, a relay device communicably connected to the server device, and a plurality of client devices communicably connected to the relay device are provided.
The client device has a client storage unit that stores confidential information used in a process for concealing communication with the server device.
In the relay device, among the processes for concealing the communication between the server device and the client device, the client device performs the process performed by using the confidential information stored in the client storage unit. Has a device control unit that commands
Communications system.
前記クライアント装置は、暗号化復号に係る処理で用いる暗号鍵を記憶し、
前記中継装置は、暗号化復号に係る処理のうち、前記暗号鍵を用いて行う処理を、前記クライアント装置が行うように命令する
請求項1に記載の通信システム。 The process for concealing the communication between the server device and the client device is a process related to encryption / decryption.
The client device stores an encryption key used in a process related to encryption / decryption, and stores the encryption key.
The communication system according to claim 1, wherein the relay device orders the client device to perform a process using the encryption key among the processes related to encryption / decryption.
前記装置制御部は、前記共通鍵を用いて前記サーバ装置から通知された情報を復号することにより、前記サーバ装置を認証する、
請求項1又は請求項2に記載の通信システム。 The confidential information includes information indicating a common key shared between the server device and the client device.
The device control unit authenticates the server device by decrypting the information notified from the server device using the common key.
The communication system according to claim 1 or 2.
請求項3に記載の通信システム。 The device control unit transmits the first information to the server device, receives the information in which the first information is encrypted using the common key from the server device, and uses the received information as the common key. Decrypted using, and if the decoded information matches the first information, the server device is authenticated as a legitimate device.
The communication system according to claim 3.
請求項3に記載の通信システム。 The device control unit transmits the first information to the server device, the server device receives the information obtained by encrypting the first information using the common key from the server device, and the received information is the common information. When the first information matches the encrypted information using the key, the server device is authenticated as a legitimate device.
The communication system according to claim 3.
前記装置制御部は、前記共通鍵を用いて暗号化した情報を前記サーバ装置に送信することにより、前記サーバ装置に、前記クライアント装置を認証させる、
請求項1から請求項3のいずれか一項に記載の通信システム。 The confidential information includes information indicating a common key shared between the server device and the client device.
The device control unit causes the server device to authenticate the client device by transmitting information encrypted using the common key to the server device.
The communication system according to any one of claims 1 to 3.
前記装置制御部は、前記秘密鍵で署名された情報を、前記サーバ装置に送信することにより、前記サーバ装置に、前記クライアント装置を認証させる、
請求項1から請求項3のいずれか一項に記載の通信システム。 The confidential information includes information indicating a private key corresponding to the public key disclosed to the server device.
The device control unit causes the server device to authenticate the client device by transmitting the information signed by the private key to the server device.
The communication system according to any one of claims 1 to 3.
前記装置制御部は、正当な装置であると認証された前記サーバ装置に通知する情報を、前記暗号鍵を用いて暗号化し、暗号化した情報を前記サーバ装置に送信する、
請求項1から請求項7のいずれか一項に記載の通信システム。 The confidential information includes information indicating an encryption key generated in the process of authenticating the server device as a legitimate device.
The device control unit encrypts the information notified to the server device authenticated as a legitimate device by using the encryption key, and transmits the encrypted information to the server device.
The communication system according to any one of claims 1 to 7.
前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御部を有する、
中継装置。 A relay device that is communicably connected to a client device and a server device.
Among the processes for concealing the communication between the server device and the client device, the confidential information stored in the client device and used for the process for concealing the communication with the server device is used. It has a device control unit that orders the client device to perform the processing to be performed.
Relay device.
装置制御部が、前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する、
通信方法。 It is a communication method of the relay device that connects the client device and the server device.
Among the processes for concealing the communication between the server device and the client device, the device control unit conceals used for the process for concealing the communication with the server device stored in the client device. Instructing the client device to perform processing performed using information.
Communication method.
前記サーバ装置と前記クライアント装置との通信を秘匿にするための処理のうち、前記クライアント装置に記憶された、前記サーバ装置との通信を秘匿にするための処理に用いられる秘匿情報を用いて行われる処理を、前記クライアント装置が行うように命令する装置制御手段、
として機能させるためのプログラム。 To the computer of the relay device connected to the client device and the server device,
Among the processes for concealing the communication between the server device and the client device, the confidential information stored in the client device and used for the process for concealing the communication with the server device is used. A device control means for instructing the client device to perform the processing to be performed.
A program to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020083416A JP2021179690A (en) | 2020-05-11 | 2020-05-11 | Communication system, repeater, communication method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020083416A JP2021179690A (en) | 2020-05-11 | 2020-05-11 | Communication system, repeater, communication method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021179690A true JP2021179690A (en) | 2021-11-18 |
Family
ID=78511620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020083416A Pending JP2021179690A (en) | 2020-05-11 | 2020-05-11 | Communication system, repeater, communication method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021179690A (en) |
-
2020
- 2020-05-11 JP JP2020083416A patent/JP2021179690A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6382272B2 (en) | How to use one device to unlock another | |
US8644516B1 (en) | Universal secure messaging for cryptographic modules | |
US8327143B2 (en) | Techniques to provide access point authentication for wireless network | |
US8763097B2 (en) | System, design and process for strong authentication using bidirectional OTP and out-of-band multichannel authentication | |
US9722972B2 (en) | Methods and apparatuses for secure communication | |
US8037295B2 (en) | Hardware-bonded credential manager method and system | |
US7711122B2 (en) | Method and apparatus for cryptographic key storage wherein key servers are authenticated by possession and secure distribution of stored keys | |
US7787661B2 (en) | Method, system, personal security device and computer program product for cryptographically secured biometric authentication | |
KR101482564B1 (en) | Method and apparatus for trusted authentication and logon | |
US9396339B2 (en) | Protecting computers using an identity-based router | |
JP4803145B2 (en) | Key sharing method and key distribution system | |
US20060218397A1 (en) | Apparatus and methods for sharing cryptography information | |
US8397281B2 (en) | Service assisted secret provisioning | |
JP5489775B2 (en) | Secret key sharing system, method, data processing apparatus, management server, and program | |
JP2015536061A (en) | Method and apparatus for registering a client with a server | |
JP2022117456A (en) | Message transmission system with hardware security module | |
KR102472471B1 (en) | Blockchain-based access control method for the internet of thing device | |
US11496299B2 (en) | Method and chip for authenticating to a device and corresponding authentication device and system | |
US10764260B2 (en) | Distributed processing of a product on the basis of centrally encrypted stored data | |
JP2017108237A (en) | System, terminal device, control method and program | |
US7010810B2 (en) | Method and apparatus for providing a software agent at a destination host | |
JP2008048166A (en) | Authentication system | |
JP2021179690A (en) | Communication system, repeater, communication method, and program | |
JP2009104509A (en) | Terminal authentication system and terminal authentication method | |
JP2021168079A (en) | Communication system, repeating device, communication method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230417 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240401 |