JP2016039456A - Communication system, communication method, node, data processing device, and communication control device - Google Patents
Communication system, communication method, node, data processing device, and communication control device Download PDFInfo
- Publication number
- JP2016039456A JP2016039456A JP2014160643A JP2014160643A JP2016039456A JP 2016039456 A JP2016039456 A JP 2016039456A JP 2014160643 A JP2014160643 A JP 2014160643A JP 2014160643 A JP2014160643 A JP 2014160643A JP 2016039456 A JP2016039456 A JP 2016039456A
- Authority
- JP
- Japan
- Prior art keywords
- information
- node
- data processing
- key
- communication control
- 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
Images
Abstract
Description
本発明は、通信システム、通信方法、ノード、データ処理装置、及び通信制御装置に関し、例えば、証明書ベースのTLS(Transport Layer Security)を用いたセキュリティ通信に対応した通信システムに適用し得る。 The present invention relates to a communication system, a communication method, a node, a data processing apparatus, and a communication control apparatus, and can be applied to a communication system that supports security communication using certificate-based TLS (Transport Layer Security), for example.
従来、エンド・エンドの安全な通信路を確保するプロトコルとして、証明書ベースのTLSがIP通信網において普及している。そして近年、無線センサ等のリソースの少ないノードがIPリーチャブル化する動きが加速しており、当該センサとインターネット上のサーパの間で暗号通信路を構築する場合に、該TLSプロトコルを利用できる効果は大きいと期待できる。 Conventionally, certificate-based TLS is widely used in IP communication networks as a protocol for ensuring end-to-end secure communication paths. In recent years, the movement of IP reachable nodes, such as wireless sensors, with less resources has accelerated, and the effect that the TLS protocol can be used when an encrypted communication path is established between the sensor and a server on the Internet is Can be expected to be big.
しかし、センサネットワーク等に用いられる無線ノードは、製造コストを低くするためにCPUやメモリ等の計算リソースは少なく、また通信帯域や消費電力についても制限があることがあるため、証明書の交換におけるトラフィック量や、公開鍵暗号アルゴリズムの計算量が問題になると考えられる。 However, wireless nodes used in sensor networks have few computational resources such as CPUs and memories in order to reduce manufacturing costs, and communication bandwidth and power consumption may be limited. The amount of traffic and the amount of calculation of the public key encryption algorithm are considered to be problems.
上述の問題に対して対応するための従来技術として特許文献1〜3の記載技術がある。
As a conventional technique for dealing with the above-described problems, there are techniques described in
特許文献1、2で、エンド・エンドの鍵交換処理、および認証処理を、上位ネットワーク側の被計算委託装置にセキュリティ処理の部を負担させることによって端末の負荷を軽減する方法が記載されている。
また非特許文献1においてエンド・エンドの鍵交換処理を、上位ネットワーク側の被計算委託装置にセキュリティ処理の一部を負担させることによって端末の計算負荷を軽減する方法が開示されている。
Non-Patent
しかしながら、特許文献1の記載技術では、TLS(Transport Layer Security)等の汎用的なセキュリティ通信のプロトコルと互換性がない。
However, the technology described in
また、特許文献2の記載技術では、乱数情報を計算委託先のサーバ(被計算委託サーバ)で生成するため、被計算委託サーバが周期の短い脆弱な疑似乱数列を利用した場合の脆弱性をカバーできない。また被計算委託サーバを切り替える場合の事前共有鍵の設定方法がないため、手動で新しい被計算委託サーバとの事前鍵共有設定を行う必要があった。 Further, in the technique described in Patent Document 2, since random number information is generated by a calculation entrusted server (computed commission server), the vulnerability in the case where the computed commission server uses a weak pseudo random number sequence having a short period is used. I can't cover it. In addition, since there is no setting method for the pre-shared key when switching the calculation entrusted server, it is necessary to manually set the pre-key sharing with a new calculation entrusted server.
さらにまた、特許文献3の記載技術では、計算委託に伴うトラフィック量が膨大となる問題がある。 Furthermore, in the technique described in Patent Document 3, there is a problem that the amount of traffic accompanying the entrustment of calculation becomes enormous.
以上のような問題点に鑑みて、汎用的なセキュリティ通信のプロトコル(例えば、TLS等)との互換性確保、及びクライアント側のノードの負荷軽減を実現しつつ、セキュリティ性の低下を抑制することができる通信システム、通信方法、ノード、データ処理装置、及び通信制御装置が望まれている。 In view of the above problems, the compatibility with general-purpose security communication protocols (for example, TLS etc.) is ensured and the load on the node on the client side is reduced, and the deterioration of security is suppressed. A communication system, a communication method, a node, a data processing device, and a communication control device are desired.
第1の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムであって、(2)上記ノードは、(2−1)整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割手段と、(2−2)上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化して上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼手段と、(2−3)それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化して上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼手段とを有し、(3)上記第1のデータ処理装置は、(3−1)上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理手段と、(3−2)上記第1の部分整数情報と、所定の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の元情報として保持する第2の元情報処理手段とを有し、(4)それぞれの上記第2のデータ処理装置は、(4−1)上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理手段と、(4−2)上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、第4の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理手段とを有し(5)上記第1のデータ処理装置は、各第4の元情報を受信して、各第4の元情報と上記第2の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の元情報として保持し、上記第5の巡回群の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理手段をさらに有し、(6)上記ノードは、暗号化された上記第1の元情報と、暗号化された各上記第3の元情報とを受信して復号し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段をさらに有し、(7)上記通信制御装置は、上記ノードと他の装置との間の通信を仲介する通信制御手段を有することを特徴とする通信システム。 The first aspect of the present invention is (1) mediating communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. (2) The node includes (2-1) a dividing unit that divides integer information into first partial integer information and one or more second partial integer information. (2-2) The first partial integer information is encrypted with advance key information shared in advance with the first data processing device, and the first data processing is performed via the communication control device. First calculation requesting means for requesting calculation processing based on the first partial integer information by transmitting to the device; and (2-3) the second partial integer information corresponding to each of the second partial integer information. Pre-key information shared in advance with the data processing device And second calculation requesting means for requesting calculation processing based on the second partial integer information by transmitting to each of the second data processing devices via the communication control device, 3) The first data processing device is (3-1) the first partial integer information obtained by decrypting the data supplied from the node with pre-key information shared in advance with the node. And the element of the predetermined cyclic group are calculated by an operation defined in the predetermined cyclic group, the result of the operation is held as first original information, and is shared in advance with the node The first original information processing means for encrypting using the prior key information to be transmitted to the node via the communication control device, and (3-2) the first partial integer information and the predetermined element. , Calculate with the operations defined in the predetermined cyclic group And a second original information processing means for holding the result of the operation as second original information. (4) Each of the second data processing devices is (4-1) supplied from the node. The second partial integer information obtained by decrypting the generated data with the pre-key information shared in advance with the node and the element of the predetermined cyclic group are defined in the predetermined cyclic group. And the result of the operation is stored as third original information, encrypted using pre-key information shared in advance with the node, and the node is transmitted via the communication control device. And (4-2) calculating the second partial integer information and the element of the predetermined cyclic group by an operation defined in the predetermined cyclic group. The result calculated based on the operation is held as the fourth original information. And a fourth original information processing means for transmitting to the first data processing apparatus. (5) The first data processing apparatus receives each fourth original information and receives each fourth element. Information and the second original information, the result obtained by calculating with the operation defined in the predetermined cyclic group is held as the fifth original information, the original information of the fifth cyclic group, The system further comprises fifth original information processing means for transmitting the encrypted first original information to the node via the communication control device, and (6) the node includes the encrypted first information The original information and the encrypted third original information are received and decrypted, and the first original information and the third original information are calculated in the predetermined cyclic group. The result obtained by performing the calculation in step 6 is held as the sixth original information, and is common by performing a predetermined calculation on the sixth original information. Further comprising a common key information processing means for generating information, (7) The communication control device, a communication system characterized by having a communication control unit that mediates communication between the nodes and other devices.
第2の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムの通信方法であって、(2)上記ノードが、整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割工程と、(3)上記ノードが、上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化して上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼工程と、(4)上記ノードが、それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化して上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼工程と、(5)上記第1のデータ処理装置が、上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理工程と、(6)上記第1のデータ処理装置が、上記第1の部分整数情報と、所定の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の元情報として保持する第2の元情報処理工程と、(7)それぞれの上記第2のデータ処理装置が、受信した上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理工程と、(8)それぞれの上記第2のデータ処理装置が、上記第2の部分整数情報と、上記所定の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、第4の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理工程と、(9)上記第1のデータ処理装置が、各第4の元情報を受信して、各第4の元情報と上記第2元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の元情報として保持し、上記第5の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理工程と、(10)上記ノードが、暗号化された上記第1の元情報と、暗号化された各上記第3の元情報とを受信して復号し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段と、(11)上記通信制御装置が、上記ノードと他の装置との間の通信を仲介する通信制御工程とを含むことを特徴とする。 The second aspect of the present invention (1) mediates communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. A communication method of a communication system having a communication control device, wherein (2) the node divides integer information into first partial integer information and one or more second partial integer information; 3) The node encrypts the first partial integer information with advance key information shared in advance with the first data processing device, and performs the first data processing via the communication control device. A first calculation requesting step for requesting calculation processing based on the first partial integer information by transmitting to the device; and (4) the first corresponding to the second partial integer information respectively corresponding to the second partial integer information. Sharing in advance between two data processing devices A second calculation requesting step for requesting calculation processing based on the second partial integer information by encrypting each with key information and transmitting to each of the second data processing devices via the communication control device; (5) The first partial integer information obtained by the first data processing device decrypting the data supplied from the node with pre-key information shared in advance with the node; and A pre-key that calculates an element of a predetermined cyclic group with an operation defined in the predetermined cyclic group, holds a result of the operation as first original information, and is shared in advance with the node A first original information processing step of encrypting using information and transmitting the information to the node via the communication control device; and (6) the first data processing device includes the first partial integer information, To the above-mentioned predetermined traveling group A second original information processing step for performing a calculation with an operation defined as follows and holding the result of the operation as second original information; and (7) the second data processing device received by each of the second data processing devices. The partial integer information of 2 and the element of the predetermined cyclic group are calculated by an operation defined in the predetermined cyclic group, and the result of the operation is held as third original information. A third original information processing step of encrypting using pre-key information shared in advance between the two and transmitting to the node via the communication control device; and (8) each of the second data processing devices The second partial integer information and the predetermined element are calculated by an operation defined in the predetermined cyclic group, and a result calculated based on the operation is stored as fourth original information. And a fourth data to be transmitted to the first data processing device (9) the first data processing device receives each fourth source information, and transmits each fourth source information and the second source information in the predetermined cyclic group. A result obtained by performing a calculation with a defined operation is held as fifth original information, and the fifth original information and the encrypted first original information are stored in the node via the communication control device. And (10) the node receives and decrypts the encrypted first original information and each of the encrypted third original information, and A result obtained by calculating the first original information and each of the third original information by an operation defined in the predetermined cyclic group is held as sixth original information, and the sixth original information is stored. A common key information processing means for generating common key information by performing a predetermined operation on the information, and (11) the communication control device Characterized in that it comprises a communication control step for mediating communication between the node and another device.
第3の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムを構成するノードであって、(2)整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割手段と、(3)上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化し、上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼手段と、(4)それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化し、上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼手段と、(5)上記第1のデータ処理装置から、上記第1の演算依頼手段の依頼に基づいて返答されたデータを上記第1のデータ処理装置との間で事前に共有する事前鍵情報で復号して上記所定の巡回群に係る第1の元情報を取得し、さらに、それぞれの上記第2のデータ処理装置から、上記第2の演算依頼手段の依頼に基づいて返答されたデータを当該第2のデータ処理装置との間で事前に共有する事前鍵情報で復号して、所定の巡回群に係る第3の元情報を取得し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段とを有することを特徴とする。 The third aspect of the present invention is (1) mediating communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. A node constituting a communication system having a communication control device, (2) dividing means for dividing integer information into first partial integer information and one or more second partial integer information; and (3) the above The first partial integer information is encrypted with advance key information shared in advance with the first data processing device, and is transmitted to the first data processing device via the communication control device. Between the first calculation requesting means for requesting calculation processing based on the first partial integer information, and (4) the second data processing device corresponding to each of the second partial integer information in advance. Encrypt with each pre-key information to be shared Second calculation requesting means for requesting calculation processing based on the second partial integer information by transmitting to each of the second data processing devices via the control device; (5) the first data The data returned from the processing device based on the request of the first calculation request means is decrypted with the pre-key information shared in advance with the first data processing device, and the predetermined cyclic group is concerned The first original information is acquired, and data returned from each of the second data processing devices based on the request of the second calculation requesting unit is exchanged with the second data processing device. Decrypting with the pre-shared key information in advance to obtain third original information related to the predetermined cyclic group, and the first original information and each of the third original information in the predetermined cyclic group The result obtained by calculating with the defined operation is the sixth It held as information, and having a common key information processing means for generating a common key information by performing a predetermined calculation based on information of the sixth.
第4の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムを構成する第1のデータ処理装置であって、(2)上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して、整数情報から分割された第1の部分整数情報を保持し、上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の巡回群の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理手段と、(3)上記第1の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の巡回群の元情報として保持する第2の元情報処理手段と、(4)それぞれの上記第2のデータ処理装置から、上記整数情報から分割された複数の第2の部分整数情報のうちの1つと、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行った結果得られた第4の巡回群の元情報が供給されると、それぞれの上記第2のデータ処理装置から得た上記第4の巡回群の元情報と、上記第2の巡回群の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の巡回群の元情報として保持し、上記第5の巡回群の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理手段とを有することを特徴とする。 The fourth aspect of the present invention is (1) mediating communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. A first data processing device constituting a communication system having a communication control device, (2) decrypting data supplied from the node with prior key information shared in advance with the node; The first partial integer information divided from the integer information is held, and the first partial integer information and the element of the predetermined cyclic group are calculated by the operation defined in the predetermined cyclic group and the predetermined cyclic group. Perform calculation, hold the result of the operation as original information of the first cyclic group, encrypt using the pre-key information shared in advance with the node, and store it in the node via the communication control device First original information processing means for transmitting, (3) the first 2nd original information which calculates partial integer information and the element of a predetermined cyclic group by the calculation defined in the said predetermined cyclic group, and hold | maintains the result of the calculation as original information of a 2nd cyclic group (4) from each of the second data processing devices, one of a plurality of second partial integer information divided from the integer information and the element of the predetermined cyclic group, When the original information of the fourth cyclic group obtained as a result of performing the calculation defined in the predetermined cyclic group is supplied, the fourth cyclic group obtained from each of the second data processing devices. And the result obtained by calculating the original information of the second cyclic group by the operation defined in the predetermined cyclic group is held as original information of the fifth cyclic group, and Communication of the original information of 5 cyclic groups and the encrypted first original information Via the control device and having a source information processing unit of the fifth to be sent to the node.
第5の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムを構成する第2のデータ処理装置であって、(2)整数情報から分割された第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行った結果得られた第2の元情報が、上記第1のデータ処理装置から供給されると、上記第2の元情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理手段と(3)上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記整数情報から分割された第2の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、巡回群の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理手段とを有することを特徴とする。 The fifth aspect of the present invention is (1) mediating communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. A second data processing device constituting a communication system having a communication control device, wherein (2) the first partial integer information divided from the integer information and the element of the predetermined cyclic group are When the second original information obtained as a result of performing the calculation defined in the cyclic group is supplied from the first data processing device, the second original information and the predetermined cyclic group Using the pre-key information shared in advance with the above node, holding the result of the operation as third original information, and calculating with the operation defined in the predetermined cyclic group A third encrypted data is transmitted to the node via the communication control device. (3) second partial integer information divided from the integer information obtained by decrypting data supplied from the node with advance key information shared in advance with the node; And the result of the calculation based on the calculation is stored as the original information of the cyclic group, and the first data processing device stores the result of the cyclic group element in the first data processing apparatus. It has the 4th original information processing means to transmit, It is characterized by the above-mentioned.
第6の本発明は、(1)ノードと、第1のデータ処理装置と、1つ以上の第2のデータ処理装置と、サーバと、上記ノードと他の装置との間の通信を仲介する通信制御装置とを有する通信システムを構成する上記通信制御装置であって、(2)上記ノードと他の装置との間の通信を仲介する通信制御手段を有することを特徴とする。 The sixth aspect of the present invention is (1) mediating communication between a node, a first data processing device, one or more second data processing devices, a server, and the node and another device. The communication control device constituting a communication system having a communication control device, characterized in that (2) communication control means for mediating communication between the node and another device.
本発明によれば、汎用的なセキュリティ通信のプロトコルとの互換性確保、及びクライアント側のノードの負荷軽減を実現しつつ、セキュリティ性の低下を抑制することができる通信システムを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the communication system which can suppress the fall of security property can be provided, ensuring compatibility with the protocol of a general-purpose security communication, and implement | achieving the load reduction of the node of a client side. .
(A)主たる実施形態
以下、本発明による通信システム、通信方法、ノード、データ処理装置、及び通信制御装置の一実施形態を、図面を参照しながら詳述する。なお、この実施形態のデータ処理装置、及び通信制御装置は、それぞれ被計算委託サーバ及び無線NW管理端末であるものとして説明する。
(A) Main Embodiment Hereinafter, an embodiment of a communication system, a communication method, a node, a data processing device, and a communication control device according to the present invention will be described in detail with reference to the drawings. Note that the data processing apparatus and the communication control apparatus of this embodiment will be described as being a calculation-commissioned server and a wireless NW management terminal, respectively.
(A−1)実施形態の構成
図1は、この実施形態の通信システム1の全体構成について示したブロック図である。
(A-1) Configuration of Embodiment FIG. 1 is a block diagram showing an overall configuration of a
図1に示すように、通信システム1には、複数のノード100、無線NW管理端末200、2台の被計算委託サーバ300、400、鍵共有サーバ500、及びTLSサーバ600が配置されている。なお、以下では、被計算委託サーバ300を、「第1の被計算委託サーバ」、被計算委託サーバ400を「第2の被計算委託サーバ」とも呼ぶ場合がある。なお、この実施形態では、第2の被計算委託サーバ400は1台であるものとして説明するが複数台で構成するようにしてもよい。
As shown in FIG. 1, in the
この実施形態の通信システム1では、証明書ベースのTLSハンドシェイクプロトコルを、TLSクライアント側(ノード100)が、2台の被計算委託サーバ300、400に計算委託を行いながら実行する構成となっている。
In the
通信システム1では、各ノード100は、無線ネットワークN2に接続している。また、第1の被計算委託サーバ300、第2の被計算委託サーバ400、鍵共有サーバ500及びTLSサーバ600は、それぞれインターネットN1に接続している。さらに、無線NW管理端末200は、インターネットN1は、インターネットN1と無線ネットワークN2の両方に接続可能な構成となっている。
In the
なお、以下の説明において、「g」は、巡回群<G、・>の生成元であり、システム共通のパラメータであるものとする。また、以下の説明において、「n」は巡回群Gに属する所定の元「g」の位数であるものとする。さらに、以下では、巡回群Gの元「α、β」に対して「α・β∈G」は、αとβとを被演算子として巡回群Gで定義されている演算「・」を行うことを意味するものとする。さらにまた、以下では、巡回群Gの元αと整数βに対して、「α^β∈G」は、αを被演算子として巡回群Gで定義されている演算をβ回行うことを意味する。例えば、巡回群Gが楕円曲線E上の有理点のなす群であった場合、「α・β∈G」は楕円曲線E上でのαとβとの楕円加算を意味し、「α^β∈G」はαの楕円スカラーβ倍算を意味するものとする。 In the following description, “g” is a generator of the cyclic group <G,..., And is a parameter common to the system. In the following description, “n” is the order of a predetermined element “g” belonging to the cyclic group G. Further, in the following, “α · β∈G” for the element “α, β” of the cyclic group G performs the operation “•” defined in the cyclic group G with α and β as operands. It means that. Furthermore, in the following, for the element α and the integer β of the cyclic group G, “α ^ β∈G” means that the operation defined in the cyclic group G is performed β times with α as an operand. To do. For example, when the cyclic group G is a group formed by rational points on the elliptic curve E, “α · β∈G” means an elliptic addition of α and β on the elliptic curve E, and “α ^ β “∈G” means an elliptic scalar β multiplication of α.
また、以下では、整数aに対し整数aの属す法Nの剰余類を「a mod N」と表すものとする。さらに、以下では、法Nの有限体をFNと表し、FNの可逆な剰余類全体のなす乗法群をFN *と表すものとする。 In the following, the remainder class of the modulus N to which the integer a belongs with respect to the integer a is represented as “a mod N”. Further, in the following, a finite field of modulus N is represented as F N , and a multiplicative group formed by the entire reversible remainder class of F N is represented as F N * .
さらにまた、以下では、整数「a∈Fn *」は、ノード100の秘密鍵であり、「Pa=g^a∈G」は、ノード100の公開鍵であるものとする。
Furthermore, in the following, it is assumed that the integer “a∈F n * ” is the secret key of the
また、以下では、「整数b∈Fn *」は、TLSサーバ600の秘密鍵であり、「Pb=g^b∈G」は、TLSサーバ600の公開鍵であるものとする。さらに、以下では、b及びPbはそれぞれDH秘密鍵及びDH公開鍵でもあるものとする。さらにまた、以下では、整数「x∈Fn *」は、Diffie−Hellman鍵共有においてノード100のDH秘密鍵であり、「Px=g^x∈G」は同DH公開鍵であるものとする。
In the following, it is assumed that “integer bεF n * ” is a secret key of the
また、整数x1、x2は部分DH秘密鍵情報であり、「x1+x2=x mod n」を満たすものとする。さらに、以下では、Diffie−Hellman鍵共有の結果共有する共通鍵情報を、共有鍵Kと表記するものとする。さらにまた、以下では、事前鍵情報PSKi(i=1、2)、事前鍵情報更新鍵情報q、及び上記共有鍵Kは、共通鍵暗号方式で利用される鍵情報であるものとする。 The integers x 1 and x 2 are partial DH secret key information, and satisfy “x 1 + x 2 = x mod n”. Further, hereinafter, the common key information shared as a result of Diffie-Hellman key sharing is referred to as a shared key K. Furthermore, in the following, it is assumed that the advance key information PSK i (i = 1, 2), the advance key information update key information q, and the shared key K are key information used in the common key cryptosystem.
次に、ノード100、無線NW管理端末200、第1の被計算委託サーバ300、第2の被計算委託サーバ400、鍵共有サーバ500のそれぞれの詳細構成について説明する。
Next, detailed configurations of the
図2〜図6は、それぞれ、ノード100、無線NW管理端末200、第1の被計算委託サーバ300、第2の被計算委託サーバ400、鍵共有サーバ500内部の機能的構成について示したブロック図である。なお、通信システム1において、TLSサーバ600は、種々のTLSプロトコルに係るサーバ機能を搭載したサーバマシンを適用することができるため、内部構成については図示を省略する。
2 to 6 are block diagrams showing the functional configurations of the
[ノード100の内部構成]
次に、ノード100の内部構成について図2を用いて説明する。
[Internal configuration of node 100]
Next, the internal configuration of the
ノード100は、送受信部101、暗号部102、復号部103、秘密情報記憶部104、秘密情報分割部105、事前鍵情報記憶部106、事前鍵情報更新部107、事前鍵情報更新制御部108、共有鍵情報生成部109、署名情報生成部110、乱数生成部111、アドレス情報入力部112、Finished生成部113、及びFinished比較部114を有している。
The
送受信部101は、無線ネットワークN2に接続するエンティティ(他の通信装置)と通信をするネットワークインタフェースの機能を担っている。
The transmission /
暗号部102はデータ暗号化を行うものであり、この実施形態では、例として、AES等の共通鍵暗号方式が適用されているものとして説明する。暗号鍵情報は事前鍵情報記憶部106に記憶されている鍵情報を利用する。この実施形態では秘密情報分割部105から出力された部分DH秘密鍵情報x1、x2(詳細については後述する)をそれぞれPSK1、PSK2を鍵として暗号化し、送受信部101を介してそれぞれ第1の被計算委託サーバ300及び第2の被計算委託サーバ400に送信するものとする。
The
復号部103は、暗号化された暗号文を復号するものである。具体的には、復号部103は、暗号化された部分DH共有鍵情報Enc(PSK1、Pb^(x1))及びEnc(PSK2、Pb^(x2))を、無線NW管理端末200から受信して復号し、共有鍵情報生成部109に出力する。復号部103は、復号のための鍵情報として、事前鍵情報記憶部106に記憶されている鍵情報を利用するものとする。
The
秘密情報記憶部104は、公開鍵暗号ペア(a、Pa)のうちの秘密鍵情報aと、事前鍵情報更新鍵情報qを予め記憶している。また乱数生成部111が任意に生成した整数xをTLSハンドシェイクが終わるまで一時的に記憶する。また、秘密情報記憶部104は、共有鍵情報生成部109が生成したDH共有鍵情報Kを必要な期間だけ一時的に記憶する。
The secret
秘密情報分割部105はDH秘密鍵xを、整数x1、及びx2に対しx1とx2の和がxとなるよう任意に分割するものである。なお、この実施形態では、x1、x2を、それぞれ「第1の部分DH秘密鍵情報」、「第2の部分DH秘密鍵情報」と呼ぶこととする。
The secret
事前鍵情報記憶部106は第1の事前鍵情報PSK1と、第2の事前鍵情報PSK2とを記憶するものである。
The advance key
事前鍵情報更新部107は事前鍵情報記憶部106に記憶されている事前鍵情報を更新するものである。この実施形態では、事前鍵情報更新部107は、鍵付一方向性関数を実装し、鍵情報として秘密鍵記憶部104に記憶されている事前鍵情報更新鍵情報qを用いて、事前鍵情報記憶部106に記憶されている事前鍵情報を該鍵付一方向性関数に入力して、その出力情報の全部または一部を新しい事前鍵情報とするものとする。
The advance key
事前鍵情報更新制御部108は事前鍵情報更新部107を動作させるタイミングを判断する処理と、事前鍵情報更新部107を制御する信号を出力する処理を行うものである。タイミングを判断する処理とは、この実施形態においては送受信部101を介して無線NW管理端末200から事前共有鍵更新命令(UpdatePSK)を受信したことを検知することである。
The advance key information
共有鍵情報生成部109は、復号部103から第1の部分共有鍵情報Pb^(x1)及び第2の部分共有鍵情報Pb^(x2)を受け取って共有鍵Kを以下の(1)式により求め、その共有鍵KをTLSセッション鍵として秘密情報記憶部104に記憶させる。
The shared key
K=F(Pb^(x1)・Pb^(x2)) …(1)
ここでPb^(x1)及びPb^(x2)は巡回群Gの元であり、F(Z)は巡回群Gの元Zを鍵情報に変換する関数であり、この実施形態では上記巡回群Gの元のほかに、クライアントランダム値及びサーバランダム値と呼ばれる予備情報を用いたTLSに規定の関数である。
K = F (P b ^ ( x 1) · P b ^ (x 2)) ... (1)
Here, P b ^ (x 1 ) and P b ^ (x 2 ) are elements of the cyclic group G, and F (Z) is a function for converting the element Z of the cyclic group G into key information. Then, in addition to the elements of the cyclic group G, this is a function defined in TLS using spare information called a client random value and a server random value.
署名情報生成部110は、ノード100の秘密鍵aと、乱数生成部が生成した乱数xとを秘密情報記憶部104から読み出すと共に、送受信部101を介して無線NW管理端末200から送られてくる整数情報h、rを受け取り、署名情報sを、以下の(2)式により計算して無線NW管理端末200に送信する。なお、(2)式において、x-1はxの逆元である。
The signature
s=x-1×(h+a×r) mod n …(2)
乱数生成部111は、有限体Fnの元の中から任意の元を生成して秘密情報記憶部104に出力するものである。
s = x −1 × (h + a × r) mod n (2)
The random number generation unit 111 generates an arbitrary element from the elements of the finite field F n and outputs it to the secret
アドレス情報入力部112は、TLSハンドシェイクを行う場合のTLSサーバのアドレス情報(インターネットURL等)を外部から受け取るためのインターフェースを備える。そして、アドレス情報入力部112は、入力されたアドレス情報を、送受信部101を介して無線NW管理端末200に送信する。
The address
Finished生成部113は、無線NW管理端末200から、無線NW管理端末200がTLSサーバと送受信したTLSハンドシェイクメッセージのハッシュ値を受け取り、上述の共有鍵Kと当該ハッシュ値とTLSハンドシェイクプロトコルに規定のメッセージを用いてクライアントFinishedメッセージもしくは、サーパFinishedメッセージを生成する。
The
Finished比較部114は、Finished生成部113が生成したサーバFinishedと、無線NW管理端末200から受信したサーバFinishedメッセージを比較し、一致しない場合に、TLSハンドシェイクの失敗を検知する。
The
[無線NW管理端末200]
次に無線NW管理端末200の装置構成について図3を用いて説明する。
[Wireless NW management terminal 200]
Next, the device configuration of the wireless
無線NW管理端末200は、無線NW送受信部201、インターネット送受信部202、TLSハンドシェイク制御部203、TLSハンドシェイクメッセージ生成部204、無線NW管理部205、及びパラメータ生成部206を有している。
The wireless
無線NW送受信部201は、無線ネットワークN2に接続して、エンティティ(他の通信装置)と通信するネットワークインタフェースの機能を担っている。
The wireless NW transmission /
インターネット送受信部202はインターネットN1に接続するエンティティ(他の通信装置)と通信をするネットワークインタフェースの機能を担っている。
The Internet transmission /
TLSハンドシェイク制御部203は、ノードに代わってTLSハンドシェイクメッセージのやり取りを行う処理の制御を行うものである。
The TLS
具体的には、TLSハンドシェイク制御部203は、TLSサーバとやり取りするTLSハンドシェイクメッセージの生成について、TLSハンドシェイクメッセージ生成部204に生成させて送受信部を介して送信すると共に、TLSハンドシェイクメッセージ生成部204がTLSメッセージを生成する過程でノード100の秘密情報を用いた処理が必要な場合には、当該ノード100に必要なパラメータ情報を与える。そして、TLSハンドシェイク制御部203は、当該ノード100から秘密情報を用いた処理の結果を受信した上で、TLSハンドシェイクメッセージ生成部204に与える。そして、TLSハンドシェイク制御部203は、パラメータについては、パラメータ生成部206から受け取る。そして、TLSハンドシェイク制御部203は、パラメータ生成部206から受け取るパラメータ情報のうち、サーバ公開鍵情報Pbについては第1の被計算委託サーバ300及び第2の被計算委託サーバ400にインターネット送受信部202を介して送信する。そして、TLSハンドシェイク制御部203は、整数情報h、r、サーバランダム情報rands、及びクライアントランダム情報randcについてはノード100に無線NW送受信部201を介して送信する。そして、TLSハンドシェイク制御部203は、第1の被計算委託サーバ300及び第2の被計算委託サーバ400からそれぞれ暗号化された部分共有鍵情報Enc(PSK1、Pb^(x1))及びEnc(PSK2、Pb^(x2))を受信してノード100に転送する。また、TLSハンドシェイク制御部203は、鍵共有サーバ500からノード100宛の事前鍵情報更新命令について、インターネット送受信部202を介して受信した場合、当該事前鍵情報更新命令を無線NW送受信部201を介してノード100に転送する。
Specifically, the TLS
TLSハンドシェイクメッセージ生成部204は、TLSハンドシェイクメッセージの生成を行い、TLSハンドシェイク制御部203に供給するものである。ただし、TLSハンドシェイクにおいてノード100の秘密鍵情報が必要となるメッセージとして、ClientKX、CertificateVerify、クライアントFinishedメッセージがあるが、TLSハンドシェイクメッセージ生成部204は、ClientKXに含めるDH公開鍵情報Pxは第1の被計算委託サーバ300からTLSハンドシェイク制御部203を介して受け取る。また、TLSハンドシェイクメッセージ生成部204は、CertificateVerifyに含めるディジタル署名情報s、及びクライアントFinishedメッセージについてはノード100から、TLSハンドシェイク制御部203を介して受け取る。
The TLS handshake message generation unit 204 generates a TLS handshake message and supplies it to the TLS
無線NW管理部205は、無線ネットワークN2に接続する配下のノード100に関する、「アドレス情報」、「公開鍵証明書情報」、「TLSセッション情報」、「接続先TLSサーバ情報」、及び「被計算委託サーバのアドレス情報」を管理するものであり、必要に応じてTLSハンドシェイク制御部203に情報を与える。尚、無線NW管理部205は、ノード100の公開鍵証明書については、例えば鍵共有サーバに予め持たせておいて、これをダウンロードしても良いし、別途入力用インターフェースから手動でインストールするなどしても良い。また無線NW管理部205は、無線NW管理端末200が該事前鍵情報更新命令(UpdatePSK)を受信すると、被計算委託サーバ300、400のアドレス情報をノード100用の計算委託サーバのアドレスとして無線NW管理部205に記憶しておく。
The wireless
パラメータ生成部206は、送受信部201から送受信されるTLSメッセージからパラメータ情報を生成もしくは抽出する。具体的には、パラメータ生成部206は、所定の時点までにTLSサーバに対して送受信したTLSメッセージのハッシュ値h、h’、h’’およびDH公開鍵情報Pxから生成されるパラメータrを生成し、サーバランダム値情報randsについてはインターネット送受信部202が受信したServerHelloメッセージから抽出し、クライアントランダム値情報randcについてはインターネット送受信部202から送信されるClientHelloメッセージから抽出する。パラメータ生成部206は、パラメータrについては、DH公開鍵情報Pxから生成する。また、パラメータ生成部206は、TLSサーバ600のCertificateメッセージからサーバ公開鍵Pbを抽出する。
[第1の被計算委託サーバ300]
次に第1の被計算委託サーバ300の装置構成について図4を参照しながら説明する。
The
[First calculation entrusted server 300]
Next, the apparatus configuration of the first
第1の被計算委託サーバ300は、送受信部301、鍵情報受信部302、鍵情報記憶部303、復号部304、秘密情報記憶部305、一般パラメータ記憶部306、演算部307、暗号部308からなる。
The first calculation entrusted
送受信部301はインターネットN1に接続するエンティティ(他の通信装置)と通信をするネットワークインタフェースの機能を担っている。
The transmission /
鍵情報受信部302は鍵共有サーバ500からノード100の第1の事前鍵情報PSK1を盗聴や改ざんに対して安全に受信する処理を行う。例えば、鍵情報受信部302は、SSL(Secure Socket Layer)を利用して鍵共有サーバ500と安全な通信路を構築して受信するようにしてもよい。鍵情報受信部302は、ここで得られた事前鍵情報は鍵情報記憶部303に記憶させる。
The key
鍵情報記憶部303は事前鍵情報PSK1を記憶し、それぞれ復号部304及び暗号部308に必要に応じて当該事前鍵情報を提供する。
The key
復号部304は、第1の事前鍵情報PSK1で暗号化された第1の部分DH鍵情報Enc(PSK1、x1)を受け取って復号し、当該第1の部分DH鍵情報を秘密情報記憶部305に一時的に記憶させる。
The
秘密情報記憶部305は第1の部分DH秘密鍵情報x1を一時的に記憶し、必要に応じて演算部307に提供する。
The secret
一般パラメータ記憶部306は、巡回群Gの生成元gを予め記憶している。また、一般パラメータ記憶部306は、無線NW管理端末200から送受信部301を介して、TLSサーパのサーバ公開鍵Pbを受信して一時的に記憶する。さらに、一般パラメータ記憶部306は、演算部307から第1の部分DH公開鍵情報g^(x1)を受け取って一時的に記憶し、第2の被計算委託サーバ400から第2の部分DH公開鍵情報g^(x2)を送受信部301を介して受信して一時的に記憶する。一般パラメータ記憶部306は、これらのパラメータ情報は必要に応じて演算部307に出力する。
The general
演算部307は、一般パラメータ記憶部306からサーバ公開鍵情報Pbを受け取ると共に、秘密情報記憶部305から第1の部分DH秘密鍵情報x1を受け取り、第1の部分共有鍵情報pb^(x1)を計算して暗号部308に出力する。また、演算部307は、一般パラメータ記憶部306から巡回群Gの生成元gを受け取ると共に、秘密情報記憶部306から第1の部分DH秘密鍵情報x1を受け取り、第1の部分DH公開鍵情報g^(x1)を計算して一般パラメータ記憶部306に一時的に記憶させる。さらに、演算部307は、一般パラメータ記憶部306から第1の部分DH公開鍵情報g^(x1)と、第2の部分DH公開鍵情報g^(x2)を受け取って、以下の(3)式によりクライアントDH公開鍵情報Pxを計算して無線NW管理端末200に送受信部301を介して送信する。
The
Px=g^(x1)・g^(x2) …(3)
暗号部308は第1の部分DH共有鍵情報Pb^(x1)を演算部から受け取ると、鍵情報記憶部303から第1の事前鍵情報PSK1を読み出し、該第1の事前鍵情報PSK1を用いて該第1の部分DH共有鍵情報Pb^(x1)を暗号化した情報Enc(PSK1、Pb^(x1))を生成し、送受信部301を介して無線NW管理端末200に送信する。
P x = g ^ (x 1 ) · g ^ (x 2 ) (3)
When the
[第2の被計算委託サーバ400]
次に第2の被計算委託サーバ400について、図5を参照しながら説明する。
[Second calculation entrusted server 400]
Next, the second calculation entrusted
なお、以下では、第2の被計算委託サーバ400について、第1の被計算委託サーバ300との差異を中心に説明する。
In the following, the second
第2の被計算委託サーバ400は、送受信部401、鍵情報受信部402、鍵情報記憶部403、復号部404、秘密情報記憶部405、一般パラメータ記憶部406、演算部407、暗号部408からなる。
The second calculation entrusted
送受信部401は第1の被計算委託サーバ300の送受信部301と同様の構成である。
The transmission /
鍵情報受信部402も第1の被計算委託サーバ300の鍵情報受信部302と同様の構成であるが、第2の事前鍵情報PSK2を受信する点のみ異なる。
The key
鍵情報記憶部403は、第2の事前鍵情報PSK2を記憶するものである。
The key
復号部404は、第2の事前鍵情報PSK2で暗号化された第2の部分DH秘密鍵情報x2を受け取って復号し、当該第2の部分DH秘密鍵情報x2を秘密情報記憶部405に一時的に記憶させる。
The
秘密情報記憶部405は第2の部分DH秘密鍵情報x2を一時的に記憶し、必要に応じて演算部407に提供する。
The secret
一般パラメータ記憶部406は、巡回群Gの生成元gを予め記憶している。また、一般パラメータ記憶部406は、無線NW管理端末200から送受信部401を介してTLSサーバ600のサーバ公開鍵Pbを受信して一時的に記憶する。また、一般パラメータ記憶部406は、これらのパラメータ情報は必要に応じて演算部407に出力する。
The general
演算部407は、一般パラメータ記憶部406からサーバ公開鍵情報Pbを受け取ると共に、秘密情報記憶部405から第2の部分DH秘密鍵情報x2を受け取り、第2の部分共有鍵情報Pb^(x2)を計算して暗号部408に出力する。また、演算部407は、一般パラメータ記憶部406から巡回群Gの生成元gを受け取り、秘密情報記憶部406から第2の部分DH秘密鍵情報x2を受け取り、第2の部分DH公開鍵情報g^(x2)を計算して、その結果を送受信部401を介して第1の被計算委託サーバ300に送信する。
The
暗号部408は第2の部分DH共有鍵情報Pb^(x2)を演算部407から受け取ると、鍵情報記憶部403から第2の事前鍵情報PSK2を読み出す。そして、暗号部408は、当該第2の事前鍵情報PSK2を用いて該第2の部分DH共有鍵情報Pb^(x2)を暗号化した情報Enc(PSK2、Pb^(x2))について、送受信部401を介して無線NW管理端末200に送信する。
When the
[鍵共有サーバ500]
次に鍵共有サーバ500の構成について図6を用いて説明する。
[Key sharing server 500]
Next, the configuration of the
鍵共有サーバ500は、送受信部501、ノード情報記憶部502、事前鍵情報更新部503、事前鍵情報更新制御部504、鍵配送部505を有している。
The
送受信部501はインターネットN1に接続するエンティティ(他の通信装置)と通信をするネットワークインタフェースの機能を担っている。
The transmission /
ノード情報記憶部502は、ノード100の識別子、当該ノード100の事前鍵情報記憶部106に記憶されている事前鍵情報PSKiのコピー、及び秘密情報記憶部104に記憶されている事前鍵情報更新鍵情報qのコピー等を記憶している。ノード情報記憶部502記憶する上述の情報は、例えばノード100製造時(導入時)に、ノード情報記憶部502に記憶させるなどして設定(例えば、図示しない入力インターフェースを用いて設定)しておくようにしてもよい。
The node
事前鍵情報更新部503は、ノード100の事前鍵情報更新部107と同一の事前鍵情報更新処理を実行可能なものである。
The advance key
事前鍵情報更新制御部504は、所定のタイミングで事前鍵情報更新部503に事前鍵情報更新命令(UpdatePSK)を供給すると共に、ノード100宛の事前鍵情報更新命令を送受信部501を介して無線NW管理端末200に送信する。この事前鍵情報更新命令は、第1の被計算委託サーバ300と第2の被計算委託サーバ400のインターネットアドレス情報を含んでいる。
The advance key information update control unit 504 supplies the advance key information update command (UpdatePSK) to the advance key
鍵配送部505は、事前鍵情報PSKi(i=1、2)を各被計算委託サーバにSSL等を利用して盗聴・改ざんに対して安全に配送するものである。
The
(A−2)実施形態の動作
次に、以上のような構成を有するこの実施形態の通信システム1の動作(実施形態に係る通信方法)を説明する。
(A-2) Operation | movement of embodiment Next, operation | movement (communication method which concerns on embodiment) of the
図7は、通信システム1の全体の動作例について示したシーケンス図である。
FIG. 7 is a sequence diagram showing an overall operation example of the
図7のフローチャートの初期状態において、第1の被計算委託サーバ300及び第2の被計算委託サーバ400は未だノード100の事前鍵情報PSKi(i=1、2)を有していないものとする。そこで鍵共有サーバ500が該事前鍵情報を共有させるにあたり、事前鍵情報更新制御部504からノード100の事前鍵情報更新命令(UpdatePSK)がそれぞれ事前鍵情報更新部503と、送受信部501を介して無線NW管理端末200に送信される(S101、S102)。
In the initial state of the flowchart of FIG. 7, the first
事前鍵情報更新部503はノード100の事前鍵情報更新命令を受けて、ノード100の事前鍵情報PSKi(i=1、2)と、ノード100の事前鍵情報更新鍵情報qをノード情報記憶部502から読み出して更新し、ノード情報記憶部502に記憶されているノード100の事前鍵情報を上書き更新すると共に、更新された両事前鍵情報を鍵配送部505に出力し、鍵配送部505は第1の事前鍵情報PSKiについては第1の被計算委託サーバ300に送受信部501を介して安全に配送し(S104)、第2の事前鍵情報PSK2については第2の被計算委託サーバ400に送受信部501を介して安全に配送する(S105)。被計算委託サーバ300、400では、配送された事前鍵情報を、それぞれの鍵情報受信部302および鍵情報受信部402で受信して鍵情報記憶部303および鍵情報記憶部403に記憶する。
The advance key
無線NW管理端末200はインターネット送受信部202を介してTLSハンドシェイク制御部203にて該メッセージを受信してノード100宛の事前鍵情報更新命令であることを認識し、無線NW送受信部201を介してノード100に転送する(S103)。また、無線NW管理端末200は、事前鍵情報更新命令に含まれる第1の被計算委託サーバ300及び第2の被計算委託サーバ400のインターネットアドレス情報を無線NW管理部205に記憶させる。
The wireless
ノード100は送受信部101を介して該事前鍵情報更新命令を事前鍵情報更新制御部108で受け取る。そして、ノード100では、事前鍵情報更新制御部108が、事前鍵情報更新命令を事前鍵情報更新部107に出力し、事前鍵情報更新部107が、事前鍵情報記憶部106と秘密情報記憶部104からそれぞれ事前鍵情報PSKi(i=1、2)と事前鍵情報更新鍵情報qを読み出して事前鍵情報を更新し、事前鍵情報記憶部106に上書き記憶させる(S106)。
The
以上のステップS101〜S106の処理が、通信システム1における事前処理であり、以後被計算委託サーバを変更することが無い限り、事前鍵情報更新制御部504が事前鍵情報更新命令を出さないため、上記の処理は実行されることは無い。
Since the processing of the above steps S101 to S106 is pre-processing in the
次に、ノード100においてアドレス情報入力部112にTLSサーバのアドレス情報が入力されることにより、該アドレス情報が無線NW管理端末200に送信される(S107)。
Next, the address information of the TLS server is input to the address
無線NW管理端末200は無線NW送受信部201を介してTLSハンドシェイク制御部203において該TLSサーバ600のアドレス情報を受信し、TLSハンドシェイクサーバ600に対してTLSハンドシェイクメッセージプロトコルに規定されるClientHelloメッセージを該TLSサーバ600に送信する(S108)。
The wireless
TLSサーバ600はTLSハンドシェイクプロトコルに規定のServerHello、Certificate、CertificateRequest、ServerHelloDoneを無線NW管理端末200に送信する(S109)。
The
次に、無線NW管理端末200は、パラメータ生成部206にて上記ServerHelloメッセージからサーバランダム値randsを抽出して一時的に記憶しておくと共に、上記CertificateメッセージからTLSサーバ600の公開鍵情報Pbを抽出する。さらに、無線NW管理端末200は、無線NW管理部205に記憶されている第1の被計算委託サーバ300と第2の被計算委託サーバ400のアドレスを読み込んで、TLSサーバ600の公開鍵情報Pbを、被計算委託サーバ300、400にそれぞれ送信する(S110、S111)。被計算委託サーバ300、400では、該公開鍵情報Pbをそれぞれ一般パラメータ記憶部306及び一般パラメータ記憶部406に記憶する。
Next, the wireless
そして、ノード100は、乱数生成部111において整数x∈Fnを任意に生成し、秘密情報記憶部104に記憶させると共に、該整数xは秘密情報記憶部から読み出されて秘密情報分割部105に入力され、第1の部分DH秘密鍵x1と第2の部分DH秘密鍵x2とに分割されて暗号部102に出力される(S112)。
Then, the
さらに、ノード100では、暗号部102により、第1の部分DH秘密鍵x1が第1の事前鍵情報PSK1で暗号化され、第2の部分DH秘密鍵x2が第2の事前鍵情報PSK2で暗号化され、送受信部101を介して無線NW管理端末200に送信される(S113)。
Furthermore, the
無線NW管理端末200は、上記暗号化された第1の部分DH秘密鍵情報を第1の被計算委託サーバ300にそのまま転送する(S114)と共に、上記暗号化された第2の部分DH秘密鍵情報を第2の被計算委託サーバ400にそのまま転送する(S115)。
The wireless
第2の被計算委託サーバ400では暗号化された第2の部分DH秘密鍵情報Enc(PSK2、x2)を復号部404で復号し、秘密情報記憶部405に記憶させると共に、演算部407に出力する。そして、演算部407は、一般パラメータ記憶部406から生成元gを読み込んで第2の部分DH公開鍵情報g^(x2)を作成して送受信部401を介して第1の被計算委託サーバ300に送信する(S116)と共に、一般パラメータ記憶部406から公開鍵情報Pbを読み込んで第2の部分DH共有鍵情報Pb^(x2)を計算して暗号部408に出力する。
In the second calculation entrusted
そして、暗号部408は事前鍵情報PSK2で該第2の部分DH共有鍵情報Pb^(x2)を暗号化して送受信部401を介して無線NW管理端末200に送信する(S118)。
Then, the
一方、第1の被計算委託サーバ300では暗号化された第1の部分DH秘密鍵情報Enc(PSK1、x1)を復号部304で復号し、秘密情報記憶部305に記憶させると共に、演算部307に出力する。そして、演算部307は、一般パラメータ記憶部306から生成元gを読み込んで第1の部分DH公開鍵情報g^(x1)を作成して一般パラメータ記憶部306に一時的に記憶させると共に、一般パラメータ記憶部306から公開鍵情報Pbを読み込んで第1の部分DH共有鍵情報Pb^(x1)を計算して暗号部308に出力する。そして、暗号部308は事前鍵情報PSK1で該第1の部分DH共有鍵情報Pb^(x1)を暗号化して送受信部301を介して無線NW管理端末200に送信する。さらに、第1の被計算委託サーバ300では、第2の部分DH公開鍵情報g^(x2)を受信すると、一般パラメータ記憶部306に一時的に記憶させる。そして、一般パラメータ記憶部306から第1の部分DH公開鍵情報g^(x1)と第2の部分DH公開鍵情報g^(x2)が演算部307に出力される。そして、演算部307で巡回群Gに定義される演算で演算することにより、DH公開鍵情報Pxを生成して送受信部301を介して無線NW管理端末200に送信する(S117)。
On the other hand, in the first calculation entrusted
そして、無線NW管理端末200は、TLSハンドシェイクを開始してからTLSサーバと送受したメッセージのハッシュ値hと、第1の被計算委託サーバ300から受信したDH公開鍵情報Pxから生成したパラメータrと、パラメータ生成部206で抽出したクライアントランダム値randcと、サーバランダム値randsと、各被計算委託サーバから暗号化した第1の部分DH共有鍵情報Enc(PSK1、Pb^(x1))と、暗号化した第2の部分DH共有鍵情報Enc(PSK2、Pb^(x2))をノード100に送信する(S119)。
The wireless
ノード100は第1及び第2の部分DH共有鍵情報を受信すると、復号部103において、事前鍵情報記憶部106に記憶されている事前鍵情報PSKi(i=1、2)を用いて復号して共有鍵情報生成部109に出力する。さらに、ノード100は、受信したクライアントランダム値randc、サーバランダム値randsも用いて共有鍵情報生成部109でDH共有鍵情報Kを上記の(1)式によって生成し、秘密情報記憶部104に記憶させる。さらに、ノード100は、無線NW管理端末200から受信したハッシュ値h及びパラメータr、及び秘密情報記憶部に記憶されている秘密鍵情報a及びDH秘密鍵情報xを署名情報生成部110に与えて、上記の(2)式によって署名情報sを計算して無線NW管理端末200に送受信部101を介して送信する(S120)。
When the
次に、無線NW管理端末200は上記署名情報sを無線NW送受信部201から受信すると、TLSハンドシェイク制御部203がTLSハンドシェイクメッセージ生成部204にこれを与える。そして、TLSハンドシェイクメッセージ生成部204は、無線NW管理部204からノード100の公開鍵証明書を読み出してCertificateメッセージを作成し、DH公開鍵情報PxからClientKXを作成し、署名情報s及びパラメータrからCertificateVerify情報を作成し、これらと、ChangeCipherspecメッセージを、インターネット送受信部202を介してTLSサーバ600に送信する(S121)。
Next, when the wireless
次に、無線NW管理端末200は、ここまででTLSサーバ600から送受信したメッセージのハッシュ値h’を、無線NW送受信部201を介してノード100に送信する(S122)。
Next, the wireless
また、ノード100は、該ハッシュ値h’をFinished生成部113で受け取り、TLSハンドシェイクプロトコルに規定のクライアントFinishedメッセージFinishedcを生成して送受信部101を介して無線NW管理端末200に送信する(S123)。
In addition, the
次に、無線NW管理端末200は、該クライアントFinishedメッセージをTLSサーバ600に送信する(S124)。
Next, the wireless
また、無線NW管理端末200は、ここまででTLSサーパ600と送受信したメッセージのハッシュ値h’を、構成図中には図示していないが適当な記憶手段を用いて一時的に記憶し、TLSサーバ600からChangeCiperspecメッセージとTLSハンドシェイクプロトコルに規定のサーバFinishedメッセージFinishedsをインターネット送受信部202から受信したものとする(S125)。
Also, the wireless
そして、無線NW管理端末200は、該サーバFinishedメッセージを上記ハッシュ値h’’と共に無線NW送受信部201を介してノード100に送信する(S126)。
Then, the wireless
ノード100では、h’をFinished生成部113に入力してサーバFinishedメッセージFinishedsを生成して比較部114に出力すると共に、無線NW管理端末200から受信したサーバFinishedメッセージを比較部114に入力する。比較部114で両サーバFinishedメッセージが一致するかどうかを吟味して、一致しない場合はTLSハンドシェイクが失敗したこととする。
In the
(A−3)実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
(A-3) Effects of Embodiment According to this embodiment, the following effects can be achieved.
この実施形態の通信システム1では、ノード100におけるTLSハンドシェイクプロトコルの一部計算を、外部装置(第1の被計算委託サーバ300、及び第2の被計算委託サーバ400)に安全に痛くすることができる。
In the
また、乱数情報をノード100側で生成することによりセキュリティ上のリスク(成りすまし等危険度)の抑制や、TLSハンドシェイクプロトコルに必要なトラフィック量を低減(例えば、特許文献3に記載されたシステムと比較して低減)することができる。
In addition, by generating random number information on the
さらに、通信システム1では、鍵共有とディジタル署名生成のための計算委託の回数を1回に抑えたことと、無線NW管理端末200で各被計算委託サーバとノード100との聞の通信をまとめることにより、ノード100における計算・通信にかかる負担を軽減している。
Further, in the
(B)他の実施形態
本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(B) Other Embodiments The present invention is not limited to the above-described embodiments, and may include modified embodiments as exemplified below.
(B−1)上記の実施形態において、秘密情報分割部105は、整数x=x1+x2となるよう分割するものとして説明したが、乱数生成部111でx1、x2を生成し、これを暗号部102に与えて第1・第2の被計算委託サーバ300、400に配信すると共に、別途整数合成部を用意してx1+x2=xを計算し、これを秘密情報記憶部104に記憶させるような構成にしても良い。
(B-1) In the above embodiment, the secret
(B−2)上記の実施形態では、事前鍵情報更新命令を出すタイミングを被計算委託サーバに事前鍵情報を配信する前であると説明したが、そのほかのタイミング(例えば、管理者の手動操作によるタイミングやタイマー処理)で更新を行っても良い。 (B-2) In the above-described embodiment, the timing for issuing the advance key information update command has been described as before the advance key information is distributed to the server to be calculated. However, other timing (for example, manual operation by the administrator) The timing may be updated at the timing or timer processing.
(B−3)ノード100は、DH共有鍵Kを、無線NW管理端末200に送り、無線NW管理端末200がクライアントFinishedメッセージの生成及びTLSサーバからのサーバFinishedメッセージを認証してもよい。これにより、ノード100のFinishedメッセージの送受による通信量を削減できる。
(B-3) The
(B−4)上記の実施形態では、第2の被計算委託サーバ400は1つであるものと説明したが、第2の被計算委託サーバ400を複数配置するようにしてもよい。
(B-4) In the above-described embodiment, it has been described that there is one second
第2の被計算委託サーバ400が複数台の場合、ノード100の秘密情報分割部105は、DH秘密鍵xを、被計算委託サーバの台数分(第1の被計算委託サーバ300と第2の被計算委託サーバ400の合計数分)分割する。便宜上M台の第2の被計算委託サーバ400に与える部分DH秘密鍵を、それぞれx21、x22、・・・、x2Mとする。
In the case where there are a plurality of second calculated
また、第2の被計算委託サーバ400が複数台の場合、第1の被計算委託サーバ300は、それぞれの第2の被計算委託サーバ400から、第2の部分DH公開鍵情報g^(x21)〜g^(x2M)を受信することになる。そして、第1の被計算委託サーバ300は、第1の部分DH公開鍵情報g^(x1)と、それぞれの第2の部分DH公開鍵情報g^(x21)〜g^(x2M)を演算部307に供給する。そして、演算部307では、第1の部分DH公開鍵情報g^(x1)と、それぞれの第2の部分DH公開鍵情報g^(x2)〜g^(x2M)について、巡回群Gに定義される演算で演算することにより、DH公開鍵情報Pxを生成してノード100に送信することになる。
Further, when there are a plurality of second calculated
さらに、第2の被計算委託サーバ400が複数台の場合、第1の被計算委託サーバ300から供給された第1の部分DH共有鍵情報と、それぞれの第2の被計算委託サーバ400から供給された第2の部分DH共有鍵情報に基づいてDH共有鍵情報Kを生成する。
Furthermore, when there are a plurality of second
(B−5)ノード100のDH公開鍵ペアをPKI発行の公開鍵ペアを利用する場合は、ディジタル署名を生成する必要はない(TLSハンドシェイクの暗号スイートがfixed_ECDHの場合)。
(B-5) When a public key pair issued by PKI is used as the DH public key pair of the
(B−6)TLSプロトコルが失敗したとき、ノード100は、被計算委託サーバに委託した計算を検算し、被計算委託サーバが正しく計算をしたかどうかをチェックしても良い。また、ノード100は、検算の結果被計算委託サーバが正しい計算をしていなかった場合に、利用する被計算委託サーバを変更しても良い。
(B-6) When the TLS protocol fails, the
1…通信システム、100…ノード、101…送受信部、102…暗号部、103…復号部、104…秘密情報記憶部、105…秘密情報分割部、106…事前鍵情報記憶部、107…事前鍵情報更新部、108…事前鍵情報更新制御部、109…共有鍵情報生成部、110…署名情報生成部、111…乱数生成部、112…アドレス情報入力部、113…Finished生成部、114…Finished比較部、200…無線NW管理端末、201…無線NW送受信部、202…インターネット送受信部、203…TLSハンドシェイク制御部、204…TLSハンドシェイクメッセージ生成部、205…無線NW管理部、206…パラメータ生成部、300…第1の被計算委託サーバ、301…送受信部、302…鍵情報受信部、303…鍵情報記憶部、304…復号部、305…秘密情報記憶部、306…一般パラメータ記憶部、307…演算部、308…暗号部、400…第2の被計算委託サーバ、401…送受信部、402…鍵情報受信部、403…鍵情報記憶部、404…復号部、405…秘密情報記憶部、406…一般パラメータ記憶部、407…演算部、408…暗号部、500…鍵共有サーバ、500…鍵共有サーバ、502…ノード情報記憶部、503…事前鍵情報更新部、504…事前鍵情報更新制御部、505…鍵配送部、600…TLSサーバ、N1…インターネット、N2…無線ネットワーク。
DESCRIPTION OF
Claims (15)
上記ノードは、
整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割手段と、
上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化して上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼手段と、
それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化して上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼手段とを有し、
上記第1のデータ処理装置は、
上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理手段と、
上記第1の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の元情報として保持する第2の元情報処理手段とを有し、
それぞれの上記第2のデータ処理装置は、
上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理手段と、
上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、第4の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理手段とを有し
上記第1のデータ処理装置は、
各第4の元情報を受信して、各第4の元情報と上記第2の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の元情報として保持し、上記第5の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理手段をさらに有し、
上記ノードは、
暗号化された上記第1の元情報と、暗号化された各上記第3の元情報とを受信して復号し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段をさらに有し、
上記通信制御装置は、
上記ノードと他の装置との間の通信を仲介する通信制御手段を有する
ことを特徴とする通信システム。 A communication system including a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device. And
The above node
Dividing means for dividing the integer information into first partial integer information and one or more second partial integer information;
By encrypting the first partial integer information with advance key information shared in advance with the first data processing device and transmitting it to the first data processing device via the communication control device First calculation requesting means for requesting calculation processing based on the first partial integer information;
Each of the second partial integer information is encrypted with advance key information that is shared in advance with the corresponding second data processing device, and the second partial integer information is passed through the communication control device. Second calculation requesting means for requesting calculation processing based on the second partial integer information by transmitting to the data processing device;
The first data processing device includes:
The first partial integer information obtained by decrypting the data supplied from the node with pre-key information shared in advance with the node and the element of the predetermined cyclic group are used as the predetermined cyclic group. The calculation is performed by the operation defined in the group, the result of the operation is held as the first original information, encrypted using the pre-key information shared in advance with the node, and the communication control device First original information processing means for transmitting to the node,
A second element that calculates the first partial integer information and an element of a predetermined cyclic group by an operation defined in the predetermined cyclic group, and holds the result of the operation as second original information Information processing means,
Each of the second data processing devices is
The second partial integer information obtained by decrypting the data supplied from the node with the pre-key information shared in advance with the node and the element of the predetermined cyclic group are used as the predetermined cyclic group. The calculation is performed by the operation defined in the group, the result of the operation is held as the third original information, encrypted using the advance key information shared in advance with the node, and the communication control device is A third original information processing means for transmitting to the node via
The second partial integer information and the element of the predetermined cyclic group are calculated by an operation defined in the predetermined cyclic group, and the result calculated based on the calculation is used as the fourth original information. Holding the fourth original information processing means for transmitting to the first data processing device, the first data processing device,
Each fourth original information is received, and the result obtained by calculating each fourth original information and the second original information by an operation defined in the predetermined cyclic group is a fifth element. A fifth original information processing means for holding the fifth original information and the encrypted first original information to the node via the communication control device,
The above node
The encrypted first original information and each encrypted third original information are received and decrypted, and the first original information and each third original information are converted into the predetermined information. The common key information processing that holds the result obtained by performing the calculation defined in the cyclic group as the sixth original information and generates the common key information by performing a predetermined calculation on the sixth original information Further comprising means,
The communication control device
A communication system comprising communication control means for mediating communication between the node and another device.
上記暗号化された第1の元情報と、各暗号化された第3の元情報を上記ノードに送信する際に、上記第5の元情報と、ディジタル署名生成パラメータ情報も含め、
上記ノードは、
上記第5の元情報と上記ディジタル署名生成パラメータ情報を受信し、所定の演算を実行することにより、ディジタル署名情報を生成し、上記ディジタル署名情報を上記通信制御装置に送信するディジタル署名情報処理手段をさらに有し、
上記通信制御装置の上記通信制御手段は、
上記ディジタル署名情報を受信して、上記ディジタル署名情報と上記第5の元情報とを上記サーバに送信する
ことを特徴とする請求項1に記載の通信システム。 The communication control means of the communication control device comprises:
When transmitting the encrypted first original information and each encrypted third original information to the node, the fifth original information and the digital signature generation parameter information are included,
The above node
Digital signature information processing means for receiving the fifth original information and the digital signature generation parameter information, generating digital signature information by executing a predetermined calculation, and transmitting the digital signature information to the communication control device Further comprising
The communication control means of the communication control device comprises:
The communication system according to claim 1, wherein the digital signature information is received, and the digital signature information and the fifth original information are transmitted to the server.
上記第5の元情報と上記ディジタル署名情報とをサーバに送信した後に、鍵確認情報生成パラメータを生成して上記ノードに送信する鍵確認情報生成パラメータ処理手段をさらに有し、
上記ノードは、上記鍵確認生成情報パラメータを受信して、上記鍵確認生成情報パラメータと、上記共通鍵情報とを用いて第1の鍵確認情報を生成して通信制御装置に送信するパラメータ送信手段をさらに有し、
上記通信制御装置の上記通信制御手段は、上記第1の鍵確認情報を受信して、上記サーバに送信し、
上記サーバは、上記第1の鍵確認情報を受信すると共に、第2の鍵確認情報を生成して上記通信制御装置に送信する第2の鍵確認情報処理手段をさらに有し、
上記通信制御装置の上記通信制御手段は、上記第2の鍵確認情報を受信すること
を特徴とする請求項2に記載の通信システム。 The communication control means of the communication control device comprises:
After transmitting the fifth original information and the digital signature information to the server, further comprising key confirmation information generation parameter processing means for generating a key confirmation information generation parameter and transmitting it to the node;
The node receives the key confirmation generation information parameter, generates first key confirmation information using the key confirmation generation information parameter and the common key information, and transmits the first key confirmation information to the communication control device. Further comprising
The communication control means of the communication control device receives the first key confirmation information, transmits it to the server,
The server further includes second key confirmation information processing means for receiving the first key confirmation information and generating second key confirmation information and transmitting the second key confirmation information to the communication control device,
The communication system according to claim 2, wherein the communication control means of the communication control device receives the second key confirmation information.
上記通信制御装置の上記通信制御手段は、上記ディジタル署名情報と共通鍵情報を受信し、上記第5の元情報と、上記ディジタル署名情報とを上記サーバに送信すると共に、鍵確認生成情報パラメータを生成して第1の鍵確認情報を生成して上記サーバに送信する鍵確認情報生成パラメータ処理手段をさらに有し、
上記サーバは、上記第1の鍵確認情報を受信すると共に、第2の鍵確認情報を生成して上記通信制御装置に送信する第2の鍵確認情報処理手段をさらに有すること
を特徴とする請求項2に記載の通信システム。 The digital signature information processing means of the node, when transmitting the digital signature information to the communication control device, transmits the common key information together to the communication control device,
The communication control means of the communication control device receives the digital signature information and common key information, transmits the fifth original information and the digital signature information to the server, and sets a key confirmation generation information parameter. Further comprising key confirmation information generation parameter processing means for generating and generating first key confirmation information and transmitting it to the server;
The server further includes second key confirmation information processing means for receiving the first key confirmation information and generating second key confirmation information and transmitting the second key confirmation information to the communication control device. Item 3. The communication system according to Item 2.
上記鍵配送サーバは、
事前鍵情報を更新すると共に、事前鍵情報更新命令を上記ノードに送信する鍵配送手段を有し、
上記ノードは
上記事前鍵情報更新命令を受信すると、上記鍵配送サーバが事前鍵情報を更新した方法と同じ方法で事前鍵情報を更新する鍵更新手段をさらに有する
ことを特徴とする請求項1〜4のいずれかに記載の通信システム。 A key distribution server for storing a copy of the prior key information of the node and delivering the prior key information to the data processing device;
The key distribution server
A key distribution means for updating the pre-key information and transmitting a pre-key information update command to the node;
The node further comprises key update means for updating the advance key information in the same manner as the method in which the key distribution server has updated the advance key information when receiving the advance key information update command. 5. The communication system according to any one of 4.
乱数を保持する乱数保持手段をさらに有し、
上記分割手段は、上記乱数保持手段が保持した乱数情報を整数情報として用いる
ことを特徴とする請求項1〜5のいずれかに記載の通信システム。 The above node
A random number holding means for holding a random number;
The communication system according to claim 1, wherein the dividing unit uses the random number information held by the random number holding unit as integer information.
上記ノードが、整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割工程と、
上記ノードが、上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化して上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼工程と、
上記ノードが、それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化して上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼工程と、
上記第1のデータ処理装置が、上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理工程と、
上記第1のデータ処理装置が、上記第1の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の元情報として保持する第2の元情報処理工程と、
それぞれの上記第2のデータ処理装置が、受信した上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理工程と、
それぞれの上記第2のデータ処理装置が、上記第2の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、第4の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理工程と、
上記第1のデータ処理装置が、各第4の元情報を受信して、各第4の元情報と上記第2の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の元情報として保持し、上記第5の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理工程と、
上記ノードが、暗号化された上記第1の元情報と、暗号化された各上記第3の元情報とを受信して復号し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段と、
上記通信制御装置が、上記ノードと他の装置との間の通信を仲介する通信制御工程と
を含むことを特徴とする通信方法。 Communication of a communication system having a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device A method,
A dividing step in which the node divides the integer information into first partial integer information and one or more second partial integer information;
The node encrypts the first partial integer information with advance key information shared in advance with the first data processing device, and passes the first data processing device to the first data processing device via the communication control device. A first computation requesting step for requesting computation processing based on the first partial integer information by transmitting;
Each of the nodes encrypts each of the second partial integer information with a prior key information that is shared in advance with the corresponding second data processing device, and passes through the communication control device. A second calculation requesting step for requesting calculation processing based on the second partial integer information by transmitting to the second data processing device;
The first partial integer information obtained by the first data processing device decrypting the data supplied from the node with pre-key information shared in advance with the node, and the predetermined cyclic group Using the pre-key information that is calculated by the operation defined in the predetermined cyclic group, holds the result of the operation as first original information, and is shared in advance with the node A first original information processing step of encrypting and transmitting to the node via the communication control device;
The first data processing device calculates the first partial integer information and an element of a predetermined cyclic group by an operation defined in the predetermined cyclic group, and the result of the operation is a second value. A second original information processing step retained as original information;
Each of the second data processing devices calculates the received second partial integer information and the element of the predetermined cyclic group by an operation defined in the predetermined cyclic group, and A third original information processing step of storing a result as third original information, encrypting the result using pre-key information shared in advance with the node, and transmitting the result to the node via the communication control device When,
Each of the second data processing devices calculates the second partial integer information and the element of the predetermined cyclic group by an operation defined in the predetermined cyclic group, and based on the calculation A fourth original information processing step of storing the calculated result as fourth original information and transmitting it to the first data processing device;
The first data processing device receives each fourth original information and calculates each fourth original information and the second original information by an operation defined in the predetermined cyclic group. The fifth original information is stored as the fifth original information, and the fifth original information and the encrypted first original information are transmitted to the node via the communication control device. Processing steps;
The node receives and decrypts the encrypted first original information and the encrypted third original information, and the first original information and the third original information Is stored as sixth original information, and common key information is generated by performing a predetermined operation on the sixth original information. A common key information processing means;
The communication control device includes a communication control step of mediating communication between the node and another device.
整数情報を第1の部分整数情報と1つ以上の第2の部分整数情報に分割する分割手段と、
上記第1の部分整数情報を上記第1のデータ処理装置との間で事前に共有する事前鍵情報で暗号化し、上記通信制御装置を経由して上記第1のデータ処理装置に送信することにより上記第1の部分整数情報に基づく演算処理を依頼する第1の演算依頼手段と、
それぞれの上記第2の部分整数情報をそれぞれ対応する上記第2のデータ処理装置との間で事前に共有する事前鍵情報でそれぞれ暗号化し、上記通信制御装置を経由してそれぞれの上記第2のデータ処理装置に送信することにより上記第2の部分整数情報に基づく演算処理を依頼する第2の演算依頼手段と、
上記第1のデータ処理装置から、上記第1の演算依頼手段の依頼に基づいて返答されたデータを上記第1のデータ処理装置との間で事前に共有する事前鍵情報で復号して上記所定の巡回群に係る第1の元情報を取得し、さらに、それぞれの上記第2のデータ処理装置から、上記第2の演算依頼手段の依頼に基づいて返答されたデータを当該第2のデータ処理装置との間で事前に共有する事前鍵情報で復号して、所定の巡回群に係る第3の元情報を取得し、上記第1の元情報と各上記第3の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第6の元情報として保持し、上記第6の元情報に所定の演算を施すことにより共通鍵情報を生成する共通鍵情報処理手段と
を有することを特徴とするノード。 A communication system having a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device A node that
Dividing means for dividing the integer information into first partial integer information and one or more second partial integer information;
By encrypting the first partial integer information with advance key information shared in advance with the first data processing device, and transmitting the first partial integer information to the first data processing device via the communication control device First calculation requesting means for requesting calculation processing based on the first partial integer information;
Each of the second partial integer information is respectively encrypted with pre-key information shared in advance with the corresponding second data processing device, and each of the second partial integer information is passed through the communication control device. Second calculation requesting means for requesting calculation processing based on the second partial integer information by transmitting to the data processing device;
The data returned from the first data processing device based on the request of the first calculation requesting unit is decrypted with the pre-key information shared in advance with the first data processing device, and the predetermined data The first original information related to the cyclic group is acquired, and data returned from each of the second data processing devices based on the request of the second calculation requesting unit is processed in the second data processing. Decrypting with prior key information shared in advance with the device to obtain third original information related to a predetermined cyclic group, the first original information and each of the third original information, Common key information for holding a result obtained by performing a calculation by a calculation defined in a predetermined cyclic group as sixth original information and generating common key information by performing a predetermined calculation on the sixth original information And a processing means.
上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して、整数情報から分割された第1の部分整数情報を保持し、上記第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第1の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化し、上記通信制御装置を介して上記ノードに送信する第1の元情報処理手段と、
上記第1の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第2の元情報として保持する第2の元情報処理手段と、
それぞれの上記第2のデータ処理装置から、上記整数情報から分割された複数の第2の部分整数情報のうちの1つと、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行った結果得られた第4の元情報が供給されると、それぞれの上記第2のデータ処理装置から得た上記第4の元情報と、上記第2の元情報とを、上記所定の巡回群において定義される演算で計算を行って得た結果を第5の巡回群の元情報として保持し、上記第5の元情報と、上記暗号化した第1の元情報とを上記通信制御装置を介して上記ノードに送信する第5の元情報処理手段と
を有することを特徴とするデータ処理装置。 A communication system having a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device A first data processing device, comprising:
The data supplied from the node is decrypted with the pre-key information shared in advance with the node, the first partial integer information divided from the integer information is held, and the first partial integer information and The element of the predetermined cyclic group is calculated by the operation defined in the predetermined cyclic group, the result of the operation is held as the first original information, and is shared in advance with the node First original information processing means for encrypting using prior key information and transmitting to the node via the communication control device;
A second element that calculates the first partial integer information and an element of a predetermined cyclic group by an operation defined in the predetermined cyclic group, and holds the result of the operation as second original information Information processing means;
From each of the second data processing devices, one of a plurality of second partial integer information divided from the integer information and an element of the predetermined cyclic group are defined in the predetermined cyclic group. When the fourth original information obtained as a result of the calculation by the operation is supplied, the fourth original information obtained from each of the second data processing devices and the second original information are obtained. , Holding the result obtained by performing the calculation by the operation defined in the predetermined cyclic group as the original information of the fifth cyclic group, the fifth original information, the encrypted first original information, And a fifth original information processing means for transmitting the information to the node via the communication control device.
整数情報から分割された第1の部分整数情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行った結果得られた第2の元情報が、上記第1のデータ処理装置から供給されると、上記第2の元情報と、上記所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算の結果を第3の元情報として保持し、上記ノードとの間で事前に共有する事前鍵情報を用いて暗号化して、上記通信制御装置を介して上記ノードに送信する第3の元情報処理手段と
上記ノードから供給されたデータを上記ノードとの間で事前に共有する事前鍵情報で復号して得た上記整数情報から分割された第2の部分整数情報と、所定の巡回群の元とを、上記所定の巡回群において定義される演算で計算を行い、その演算に基づいて計算した結果を、第4の元情報として保持し、上記第1のデータ処理装置に送信する第4の元情報処理手段と
を有することを特徴とするデータ処理装置。 A communication system having a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device A second data processing device,
The second original information obtained as a result of calculating the first partial integer information divided from the integer information and the element of the predetermined cyclic group by an operation defined in the predetermined cyclic group, When supplied from the first data processing device, the second element information and the element of the predetermined cyclic group are calculated by an operation defined in the predetermined cyclic group, and the result of the operation Is stored as third original information, encrypted using prior key information shared in advance with the node, and transmitted to the node via the communication control device; The second partial integer information divided from the integer information obtained by decrypting the data supplied from the node with the advance key information shared in advance with the node, and the element of a predetermined cyclic group The calculation is performed with the operation defined in the predetermined cyclic group. And a fourth original information processing means for holding a result calculated based on the calculation as fourth original information and transmitting the result to the first data processing apparatus.
上記ノードと他の装置との間の通信を仲介する通信制御手段を有する
ことを特徴とする通信制御装置。 A communication system having a node, a first data processing device, one or more second data processing devices, a server, and a communication control device that mediates communication between the node and another device The communication control device
A communication control device comprising communication control means for mediating communication between the node and another device.
上記通信制御手段は、
上記ノードの上記TLSクライアントに係る公開鍵証明書情報を少なくとも記憶する記憶手段と、
上記サーバに送信するTLSハンドシェイクメッセージを生成するTLSハンドシェイクメッセージ生成手段と、
上記サーバと送受信したTLSハンドシェイクメッセージから所定のパラメータ情報を抽出もしくは上記TLSハンドシェイクメッセージを元に所定のパラメータ情報を生成するパラメータ生成手段と、
上記TLSハンドシェイクメッセージ生成手段と、上記パラメータ生成手段を制御し、上記サーバと、上記第1のデータ処理装置と、上記第2のデータ処理装置との間で、所定の情報を送受信するTLSハンドシェイク制御手段とを有する
ことを特徴とする請求項14に記載の通信制御装置。 The server is a TLS server, the node is a TLS client connected to the server, and the communication control means performs a TLS handshake with the server on behalf of the node operating as a TLS client. ,
The communication control means is
Storage means for storing at least public key certificate information relating to the TLS client of the node;
TLS handshake message generating means for generating a TLS handshake message to be transmitted to the server;
Parameter generation means for extracting predetermined parameter information from a TLS handshake message transmitted and received with the server or generating predetermined parameter information based on the TLS handshake message;
A TLS hand that controls the TLS handshake message generation means and the parameter generation means, and transmits and receives predetermined information between the server, the first data processing device, and the second data processing device. The communication control apparatus according to claim 14, further comprising a shake control unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014160643A JP2016039456A (en) | 2014-08-06 | 2014-08-06 | Communication system, communication method, node, data processing device, and communication control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014160643A JP2016039456A (en) | 2014-08-06 | 2014-08-06 | Communication system, communication method, node, data processing device, and communication control device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016039456A true JP2016039456A (en) | 2016-03-22 |
Family
ID=55530227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014160643A Pending JP2016039456A (en) | 2014-08-06 | 2014-08-06 | Communication system, communication method, node, data processing device, and communication control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016039456A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116685001A (en) * | 2023-06-12 | 2023-09-01 | 成都理工大学 | Lora ad hoc network communication method with dynamic encryption function |
US11924286B2 (en) * | 2021-10-12 | 2024-03-05 | Ricoh Company, Ltd. | Encrypted communication processing apparatus, encrypted communication processing system, and non-transitory recording medium |
-
2014
- 2014-08-06 JP JP2014160643A patent/JP2016039456A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11924286B2 (en) * | 2021-10-12 | 2024-03-05 | Ricoh Company, Ltd. | Encrypted communication processing apparatus, encrypted communication processing system, and non-transitory recording medium |
CN116685001A (en) * | 2023-06-12 | 2023-09-01 | 成都理工大学 | Lora ad hoc network communication method with dynamic encryption function |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6670395B2 (en) | System and method for distribution of identity-based key material and certificate | |
EP3391620B1 (en) | Systems and methods for secure multi-party communications using a proxy | |
US10270601B2 (en) | Providing forward secrecy in a terminating SSL/TLS connection proxy using ephemeral Diffie-Hellman key exchange | |
Sciancalepore et al. | Key management protocol with implicit certificates for IoT systems | |
JP5349619B2 (en) | Identity-based authentication key agreement protocol | |
WO2017167771A1 (en) | Handshake protocols for identity-based key material and certificates | |
WO2018177905A1 (en) | Hybrid key exchange | |
US11838409B2 (en) | Method and apparatus for transferring data in a publish-subscribe system | |
JP5027742B2 (en) | Secret information transmission system, secret information transmission method, secret information management server, encryption device, secret information transmission program | |
Bianchi et al. | Flexible key exchange negotiation for wireless sensor networks | |
US20220006652A1 (en) | Method and architecture for securing and managing networks of embedded systems with optimised public key infrastructure | |
EP3216163B1 (en) | Providing forward secrecy in a terminating ssl/tls connection proxy using ephemeral diffie-hellman key exchange | |
JP2016039456A (en) | Communication system, communication method, node, data processing device, and communication control device | |
JP5835162B2 (en) | Cryptographic communication system and cryptographic communication method | |
JP5333613B2 (en) | Proxy parameter information generation device, proxy device, proxy parameter information generation program, proxy program, and communication system | |
Cho et al. | Demonstration of flexible and scalable quantum-resistant encryption with threshold key management in optical networks | |
Fugkeaw et al. | Achieving scalable and optimized attribute revocation in cloud computing | |
Mulkey et al. | Towards an efficient protocol for privacy and authentication in wireless networks | |
US20230041783A1 (en) | Provision of digital content via a communication network | |
Perelman et al. | TLS with PSK for constrained devices | |
JP2018107625A (en) | Data distribution system, data generation device, mediation device, data distribution method, and program | |
Heins | Cryptographic Toolkit | |
Risterucci et al. | A new secure virtual connector approach for communication within large distributed systems | |
Yu et al. | Improving WTLS Protocol Using Identity-Based Cryptography | |
Mulkey et al. | An Efficient Protocol for Privacy and Authentication for Resource-Constrained Devices in Wireless Networks |