JP2017183932A - Encrypted communication channel establishment system, method, program, and computer-readable program recording medium - Google Patents
Encrypted communication channel establishment system, method, program, and computer-readable program recording medium Download PDFInfo
- Publication number
- JP2017183932A JP2017183932A JP2016066512A JP2016066512A JP2017183932A JP 2017183932 A JP2017183932 A JP 2017183932A JP 2016066512 A JP2016066512 A JP 2016066512A JP 2016066512 A JP2016066512 A JP 2016066512A JP 2017183932 A JP2017183932 A JP 2017183932A
- Authority
- JP
- Japan
- Prior art keywords
- node
- identification information
- common key
- password
- disposable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、予めパスワード等の秘密情報を共有する2つのパーティ間でネットワークを介して通信を行う場合に、パスワード等の秘密情報に基づいて共通鍵を生成することで、お互いが正しい通信相手であることを認証して、共通鍵により暗号化された通信チャネルを確立する、暗号化通信チャネル確立システムに関する。 The present invention generates a common key based on secret information such as a password when communicating between two parties that share secret information such as a password in advance. The present invention relates to an encrypted communication channel establishment system that authenticates a certain thing and establishes a communication channel encrypted with a common key.
2つのパーティ間でネットワークを介して通信を行う場合に、お互いが正しい通信相手であることを認証して、情報を安全に送受信するための暗号化された通信チャネルを確立することが行われる。暗号化された通信チャネルを確立するために、TLS(Transport Layer Security)とその前任のSSL(Secure Socket Layer)を利用することが知られている。以下、簡単のため、SSL/TLSという。
SSL/TLSを利用する場合、公開鍵暗号方式を使用することを前提としている。このため、2つのパーティに対して、暗号化された通信チャネルを確立するために、例えばサーバの公開鍵を信用することが求められる。このため、サーバの公開鍵を認証するための第三者である認証局を必要とする。
また、SSL/TLSを利用する場合、SSL/TLSにより暗号化された通信チャネルを確立した後に、当該通信チャネルを介して、クライアントはパスワードをサーバに送信することで、サーバがクライアントの認証を行う必要がある。このように、SSL/TLSを利用する場合は、最初に暗号化された通信チャネルを確立し、次に確立された通信チャネルを介して、パスワードを送信することでクライアントの認証を行う2段階方式となる。
また、非特許文献1及び非特許文献2には、暗号化された通信チャネルを確立するための方式が提案されている。
When communicating between two parties via a network, it is authenticated that each other is a correct communication partner, and an encrypted communication channel for securely transmitting and receiving information is established. In order to establish an encrypted communication channel, it is known to use TLS (Transport Layer Security) and its predecessor SSL (Secure Socket Layer). Hereinafter, for simplicity, it is referred to as SSL / TLS.
When SSL / TLS is used, it is assumed that a public key cryptosystem is used. For this reason, in order to establish an encrypted communication channel for two parties, for example, it is required to trust the public key of the server. For this reason, a certificate authority which is a third party for authenticating the public key of the server is required.
When using SSL / TLS, after establishing a communication channel encrypted by SSL / TLS, the client transmits a password to the server via the communication channel, so that the server authenticates the client. There is a need. As described above, when SSL / TLS is used, a two-stage method in which an encrypted communication channel is established first, and then a client is authenticated by transmitting a password via the established communication channel. It becomes.
Further, Non-Patent Document 1 and Non-Patent Document 2 propose a method for establishing an encrypted communication channel.
非特許文献1においては、Diffie−Hellmanのパスワードに基づくDH−EKE方式(Diffie−Hellman Encrypted Key Exchange)の改良が提案されている。しかしながら、非特許文献1に記載された改良プロトコルは、TLSと統合可能なDiffie−Hellman鍵交換方式に基づくものであり、より複雑なプロトコルを用いている。 Non-Patent Document 1 proposes an improvement of the DH-EKE method (Diffie-Hellman Encrypted Key Exchange) based on the Diffie-Hellman password. However, the improved protocol described in Non-Patent Document 1 is based on the Diffie-Hellman key exchange method that can be integrated with TLS, and uses a more complicated protocol.
非特許文献2には、EAP−EKE(Extensible Authentication Protocol − Encrypted Key Exchange)が記載されている。EAP−EKEは、Diffie−Hellman鍵交換方式を使用して、HMAC(Hash−based Message Authentication Code)により、共有セッションキーを確立するものである。 Non-Patent Document 2 describes EAP-EKE (Extensible Authentication Protocol-Encrypted Key Exchange). EAP-EKE establishes a shared session key by HMAC (Hash-based Message Authentication Code) using the Diffie-Hellman key exchange method.
従来技術(SSL/TLS)においては、クライアント及びサーバ間の通信において、予めユーザid及びパスワードが設定されている場合であっても、当該ユーザを認証するまでに上記のとおり2段階の手順を踏む必要があった。また、公開鍵を使用してサーバ認証を行うために、第三者である認証局の発行した証明書を必要とする複雑なプロセスを必要とした。さらに、SSL/TLSを使用するサーバでは、例えばハンドシェイクプロセスが処理性能的に重く、ハンドシェイクプロセスが同時期に複数発生した場合に備えて、アクセラレータを用意しておく必要があった。
このため、予めユーザ登録されている場合のクライアント及びサーバ間の通信において、第三者である認証局の発行した証明書を必要としない、シンプルなプロセスにより、暗号化された通信チャネルの確立とユーザ認証とを迅速に行うことが望まれる。
本発明は、あるノード(例えばクライアント)のユーザが他のノード(例えばサーバ)にアクセスするための識別情報(id)及びパスワード(pwC)が予め設定されている場合に、公開鍵及び第三者の認証局を必要とせず、共通鍵を生成し、共通鍵により暗号化された通信チャネルを確立するとともに、同時にノード(例えばクライアント)の認証を行うことができる、暗号化通信チャネル確立システムを提供することを目的とする。本発明において、共通鍵により暗号化された通信チャネルを確立することは、同時にノードの認証が成功したことを意味する。
本発明は、公開鍵を用いることなく、予め秘密(例えばパスワード)を共有する独立したエンティティ間における短時間の安全な通信チャネル確立のためのセッションキーを提供することを目的とする。
In the prior art (SSL / TLS), even if a user id and a password are set in advance in communication between the client and the server, the two-step procedure is performed as described above until the user is authenticated. There was a need. Also, in order to perform server authentication using a public key, a complicated process requiring a certificate issued by a third party certificate authority is required. Furthermore, in a server using SSL / TLS, for example, a handshake process is heavy in terms of processing performance, and it is necessary to prepare an accelerator in case a plurality of handshake processes occur at the same time.
For this reason, in the communication between the client and the server when the user is registered in advance, it is possible to establish an encrypted communication channel by a simple process that does not require a certificate issued by a third party certificate authority. It is desired to perform user authentication quickly.
The present invention provides a public key and a third party when identification information (id) and a password (pwC) for a user of a node (for example, a client) to access another node (for example, a server) are preset. Provides an encrypted communication channel establishment system that can generate a common key, establish a communication channel encrypted with the common key, and at the same time authenticate a node (for example, a client) without requiring a certificate authority The purpose is to do. In the present invention, establishing a communication channel encrypted with a common key means that the node has been successfully authenticated at the same time.
An object of the present invention is to provide a session key for establishing a short-time secure communication channel between independent entities that share a secret (for example, a password) without using a public key.
本発明では、以下のような解決手段を提供する。 The present invention provides the following solutions.
本発明に係る暗号化通信チャネル確立システムは、上記課題を解決するために、第1のノード及び第2のノードがネットワークに接続され、前記第1のノードが前記第2のノードにアクセスするための識別情報とパスワードとが予め設定され、前記第1のノードと前記第2のノードとは、予め共通関数を共有し、前記第1のノードと前記第2のノードとが互いに生成する共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立システムであって、前記第1のノードは、前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得部と、前記識別情報を前記第2のノードに送信する接続要求部と、前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成部と、を備え、前記第2のノードは、前記第1のノードから前記識別情報を受信する識別情報受信部と前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得部と、前記識別情報受信部により受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得部と、前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成部と、を備える。 In order to solve the above-described problem, the encrypted communication channel establishment system according to the present invention is configured so that the first node and the second node are connected to a network, and the first node accesses the second node. Identification information and password are set in advance, the first node and the second node share a common function in advance, and the first node and the second node mutually generate a common key An encrypted communication channel establishment system that establishes a communication channel encrypted by the first node, wherein the first node acquires a disposable value that is temporarily shared with the second node. A common key is generated by the common function based on a connection request unit that transmits the identification information to the second node, a password corresponding to the identification information, and the disposable value. A first common key generation unit, wherein the second node is a disposable value that is temporarily shared with the identification information receiving unit that receives the identification information from the first node and the first node. A second disposable shared value acquiring unit that acquires the password, a password acquiring unit that acquires a preset password based on the identification information received by the identification information receiving unit, a password corresponding to the identification information, and the disposable And a second common key generation unit that generates a common key using the common function based on the value of.
また、前記使い捨ての値は、前記第1のノード又は前記第2のノードがランダムに生成したノンスであって、前記第1のノード又は前記第2のノードにより前記第2のノード又は前記第1のノードに送信される前記ノンスとしてもよい。 The disposable value is a nonce generated randomly by the first node or the second node, and the second node or the first by the first node or the second node. The nonce transmitted to the other node may be used.
前記第1のノードは、ランダムにノンスを生成し、前記ノンス又は前記ノンスを前記共通鍵により暗号化した暗号データをチャレンジデータとして前記第2のノードに送信し、前記第2のノードから受信したレスポンスデータを用いて前記第2のノードを認証する第1認証部を備え、前記第2のノードは、前記第1のノードから受信した前記チャレンジデータに基づいてレスポンスデータを生成し、前記レスポンスデータを前記第1のノードに送信する第2レスポンス部を備えるように構成することができる。 The first node randomly generates a nonce, transmits the nonce or the encrypted data obtained by encrypting the nonce with the common key to the second node as challenge data, and receives the nonce from the second node A first authentication unit configured to authenticate the second node using response data, wherein the second node generates response data based on the challenge data received from the first node; Can be configured to include a second response unit that transmits to the first node.
前記第2のノードは、ランダムにノンスを生成し、前記ノンス又は前記ノンスを前記共通鍵により暗号化した暗号データをチャレンジデータとして前記第1のノードに送信し、前記第1のノードから受信したレスポンスデータを用いて前記第1のノードを認証する第2認証部を備え、前記第1のノードは、前記第2のノードから受信した前記チャレンジデータに基づいてレスポンスデータを生成し、前記レスポンスデータを前記第2のノードに送信する第1レスポンス部を備えるように構成することができる。 The second node randomly generates a nonce, transmits the nonce or the encrypted data obtained by encrypting the nonce with the common key to the first node as challenge data, and receives the nonce from the first node A second authentication unit configured to authenticate the first node using response data, wherein the first node generates response data based on the challenge data received from the second node; Can be configured to include a first response unit that transmits to the second node.
前記共通関数は、一方向性関数又は暗号化関数であるようにしてもよい。 The common function may be a one-way function or an encryption function.
本発明に係る第1のノードは、ネットワークに接続される第1のノードであって、ネットワークに接続された第2のノードにアクセスするための識別情報とパスワードとが予め設定され、前記第2のノードと共有する共通関数を有し、前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得部と、前記識別情報を前記第2のノードに送信する接続要求部と、前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成部と、を備える。 The first node according to the present invention is a first node connected to a network, and identification information and a password for accessing the second node connected to the network are preset, and the second node A first disposable shared value acquisition unit having a common function shared with the second node and acquiring a disposable value temporarily shared with the second node, and a connection for transmitting the identification information to the second node A request unit; and a first common key generation unit configured to generate a common key by the common function based on a password corresponding to the identification information and the disposable value.
本発明に係る第2のノードは、ネットワークに接続された第2のノードであって、ネットワークに接続された第1のノードが前記第2のノードにアクセスするための識別情報とパスワードとが予め設定され、前記第1のノードと共有する共通関数を有し、前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得部と、前記第1のノードから前記識別情報を受信する識別情報受信部と前記識別情報受信部により受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得部と、前記パスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成部と、を備える。 The second node according to the present invention is a second node connected to the network, and the first node connected to the network has the identification information and password for accessing the second node in advance. A second disposable shared value acquisition unit that has a common function that is set and shared with the first node, and that acquires a disposable value that is temporarily shared with the first node; from the first node; Based on the identification information receiving unit that receives the identification information and the identification information received by the identification information receiving unit, the password acquisition unit that acquires a preset password, the password and the disposable value based on the A second common key generation unit that generates a common key using a common function.
本発明に係る暗号化通信チャネル確立方法は、第1のノード及び第2のノードがネットワークに接続され、前記第1のノードが前記第2のノードにアクセスするための識別情報とパスワードが予め設定され、前記第1のノードと前記第2のノードとは、予め共通関数を共有し、前記第1のノードと前記第2のノードとが互いに生成する共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立方法であって、前記第1のノードが、前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得ステップと、前記識別情報を前記第2のノードに送信する接続要求ステップと、前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成ステップと、を備え、前記第2のノードが、前記第1のノードから、前記識別情報を受信する識別情報受信ステップと前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得ステップと、前記識別情報受信ステップにより受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得ステップと、前記パスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成ステップと、を備える。 In the encrypted communication channel establishment method according to the present invention, a first node and a second node are connected to a network, and identification information and a password for the first node to access the second node are set in advance. The first node and the second node share a common function in advance, and establish a communication channel encrypted with a common key generated by the first node and the second node. A method for establishing an encrypted communication channel, wherein the first node acquires a disposable value that is temporarily shared with the second node, and obtains the identification information from the first node. A first common key generation step for generating a common key by the common function based on a connection request step transmitted to the second node, a password corresponding to the identification information, and the disposable value. The second node obtains, from the first node, an identification information receiving step for receiving the identification information and a second-time value that is temporarily shared with the first node. Based on the identification information received in the disposable shared value acquisition step, the identification information receiving step, the password acquisition step of acquiring a preset password, and the common function based on the password and the disposable value A second common key generation step of generating a common key.
本発明に係るプログラムは、コンピュータを前記第1のノード又は前記第2のノードとして機能させる。 The program according to the present invention causes a computer to function as the first node or the second node.
本発明に係るコンピュータ読取り可能なプログラム記録媒体は、前記プログラムが記録される。 The computer-readable program recording medium according to the present invention records the program.
本発明によれば、第1のノード(例えばクライアント端末)が第2のノード(例えばサーバ)にアクセスするための識別情報及びパスワードが予め設定されている場合に、公開鍵及び第三者の認証局を必要とせず、共通鍵を生成し、共通鍵により暗号化された通信チャネルを確立するとともに、同時にノードの認証を行うことができる。 According to the present invention, when identification information and a password for a first node (for example, a client terminal) to access a second node (for example, a server) are set in advance, the public key and third party authentication are set. It is possible to generate a common key without establishing a station, establish a communication channel encrypted with the common key, and simultaneously authenticate the node.
本発明における暗号化された通信チャネル確立のためのプロトコルは、SSL/TLSの代用となるものではない。むしろ、本発明のプロトコルは、アプリケーション層における暗号化された通信チャネルの確立と認証とを同時に行うように働くものとなる。特に断らない限り、「暗号」は、ブロック暗号又はストリームにおける暗号を意味する。
最も重要な点は、本発明のプロトコルは、第1のノード(例えばクライアント)と第2のノード(例えばサーバ)とが秘密情報(例えばパスワード)を事前に共有することを前提とする点にある。この場合、秘密情報(例えばパスワード)をセキュアに管理することは第2のノード(例えばサーバ)の責任となる。
なお、パスワードそのものではなく、パスワードのハッシュを第2のノード(例えばサーバ)に格納することは、本発明にとっては十分ではない。本発明においては、第2のノード(例えばサーバ)が、暗号化された通信チャネルを確立するために、実際のパスワードの値そのものを必要とする。このように、本発明においては、第1のノード(例えばクライアント)と第2のノード(例えばサーバ)とは、予めパスワード(pwC)を共有しているものとする。
The protocol for establishing an encrypted communication channel in the present invention is not a substitute for SSL / TLS. Rather, the protocol of the present invention serves to simultaneously establish and authenticate an encrypted communication channel at the application layer. Unless otherwise specified, “cipher” means a block cipher or a cipher in a stream.
The most important point is that the protocol of the present invention is based on the premise that the first node (for example, client) and the second node (for example, server) share secret information (for example, password) in advance. . In this case, it is the responsibility of the second node (eg, server) to securely manage the secret information (eg, password).
Note that it is not sufficient for the present invention to store the password hash, not the password itself, in the second node (for example, a server). In the present invention, the second node (e.g., server) needs the actual password value itself to establish an encrypted communication channel. Thus, in the present invention, it is assumed that the first node (for example, client) and the second node (for example, server) share the password (pwC) in advance.
<第1実施形態>
以下、本発明の実施形態の一例である第1実施形態について説明する。図1に示すように、本実施形態に係る暗号化通信チャネル確立システム1は、第1のノード10、第2のノード20、及び通信網30から構成される。
<First Embodiment>
Hereinafter, a first embodiment which is an example of an embodiment of the present invention will be described. As illustrated in FIG. 1, the encrypted communication channel establishment system 1 according to the present embodiment includes a
第1のノード10及び第2のノード20は、それぞれCPU等の制御部110、210、記憶部120、220、及び通信部130、230等を含む任意の電子機器とする。典型的には、公知のコンピュータ、例えば、マイクロコンピュータ、スマートフォン、携帯電話等の携帯端末、タブレット端末、ノートパソコン、パソコン、サーバー、及びルーター等の通信機器を含む。
第1のノード10(のノードユーザ)が第2のノード20にアクセスするための識別情報(id)とパスワード(pwC)が予め設定されているものとする。
The
It is assumed that identification information (id) and a password (pwC) for the first node 10 (node user) to access the
例えば、第1のノード10がクライアント端末、第2のノード20がサーバの場合、クライアント端末(第1のノード10)におけるノードユーザの識別情報(id)とパスワード(pwC)が予めサーバ(第2のノード20)に設定されていることで、本発明を適用できる。
特に、Webブラウザ(第1のノード10)とWebサーバ(第2のノード20)から構成されるクライアントサーバシステムにおいては、ユーザの識別情報(id)とパスワード(pwC)によりアクセス管理することが一般的なことから、本発明を適用できる。
For example, when the
In particular, in a client server system including a Web browser (first node 10) and a Web server (second node 20), it is common to manage access using user identification information (id) and a password (pwC). Therefore, the present invention can be applied.
また、オペレータ(ユーザ)が介在しない、マシンとマシンとの間の通信においても、例えば、あるマシン(第1のノード10)が別のマシン(第2のノード20)にアクセスするために、予め識別情報(id)とパスワード(pwC)とが設定されているものであれば本発明を適用することができる。 Also, in communication between machines without an operator (user), for example, in order for a certain machine (first node 10) to access another machine (second node 20), in advance, The present invention can be applied as long as the identification information (id) and the password (pwC) are set.
また、第1のノード10を例えば無線端末とし、第2のノード20を例えばWiFi(登録商標)ルータのような無線LANルータとした場合、第1のノード10(無線端末)の識別情報(id)とパスワード(pwC)が予め第2のノード20(無線LANルータ)に設定されているものであれば本発明を適用することができる。
Further, when the
また、IOT(Internet Of Things)においても、インターネットに接続し相互に通信する際に、識別情報(id)とパスワード(pwC)により、アクセスコントロールされる場合、本発明を適用することができる。 Also in the Internet of Things (IOT), the present invention can be applied when access control is performed using identification information (id) and a password (pwC) when communicating with each other by connecting to the Internet.
以上のように、第1実施形態では、第1のノード10(のノードユーザ)が第2のノード20にアクセスするための識別情報(id)とパスワード(pwC)が予め設定されていることを前提とする。以下、簡単のため、第1のノード10(のノードユーザ)が第2のノード20にアクセスするための識別情報(id)とパスワード(pwC)を、第1のノード10から第2のノード20にアクセスするための識別情報(id)とパスワード(pwC)とも言う。
As described above, in the first embodiment, the identification information (id) and the password (pwC) for the first node 10 (the node user) to access the
<ノンスについて>
第1のノード10及び第2のノード20の説明に先立ち、ノンスについて説明する。
ノンスとは、暗号通信等で用いられる一度きりの使い捨てのランダムな値を意味する。したがって、第1のノード10又は第2のノード20がノンスを生成する場合、生成されるノンスの値は、生成されるたびに異なる「一度きり」のものとなる。
「一度きり」であることを担保するために、例えば、ノンスの生成手段として、十分なエントロピーを持った乱数を生成する乱数生成手段を、生成される乱数が重複する可能性を現実的でないほどに下げるように構成することが好ましい。また、ノンスを例えば、できるだけ粒度の細かいタイムスタンプから生成することで、重複する可能性を現実的でないほどに下げるように構成してもよい。
<About Nonce>
Prior to the description of the
Nonce means a single use random value used in cryptographic communication or the like. Therefore, when the
In order to guarantee that it is “one-time”, for example, as a nonce generation means, a random number generation means that generates random numbers with sufficient entropy is used, and the possibility that the generated random numbers overlap is unrealistic. It is preferable to configure so as to be lowered. Further, the nonce may be generated from a time stamp having as fine a granularity as possible, for example, so that the possibility of duplication is lowered unrealistically.
<第1のノード10について>
第1のノード10について、図2を参照しながら説明する。
図2は、本実施形態に係る第1のノード10の機能構成を示すブロック図である。
第1のノード10は、制御部110(例えば、CPU)と、記憶部120と、通信部130と、を備える。
制御部110は、記憶部120と、通信部130とを含むハードウェア群の全体を制御する機能部である。
<About the
The
FIG. 2 is a block diagram showing a functional configuration of the
The
The
制御部110は、接続要求部111と、第1使い捨て共有値取得部112と、パスワード取得部113と、第1共通鍵生成部114と、第1認証部115と、を備える。これらの各部は、例えば、第1のノード10の記憶部120に格納されたアプリケーションを制御部110が実行することにより機能するように構成することができる。
The
接続要求部111は、第2のノード20との間で暗号化された通信チャネルを確立するに際して、第1のノード10のノードユーザの識別情報(id)を通信部130を介して第2のノード20に送信する。
なお、識別情報(id)については、第1のノード10の入力部(図示せず)を介してノードユーザにより入力されてもよい。また、ユーザ(オペレータ)が介在しない、又は自動的に処理する場合、識別情報(id)を予め記憶部120に記憶しておき、記憶部120から識別情報(id)を入力するように構成してもよい。
When the
The identification information (id) may be input by a node user via an input unit (not shown) of the
第1使い捨て共有値取得部112は、第2のノード20と一時的に共有する使い捨ての値(r1)を取得する。
具体的には、第1使い捨て共有値取得部112は、第2のノード20の第2使い捨て共有値取得部212により生成されるノンスを一時的に共有する使い捨ての値(r1)として通信部130を介して取得する。
The first disposable shared
Specifically, the first disposable shared
パスワード取得部113は、識別情報(id)に対応するパスワード(pwC)を取得する。具体的には、パスワード取得部113は、第1のノード10の入力部(図示せず)を介してノードユーザにより入力されるパスワードを取得するように構成してもよい。また、ユーザ(オペレータ)が介在しない場合、又は自動的に処理する場合、識別情報に対応するパスワードを予め記憶部120に記憶しておき、パスワード取得部113は、記憶部120からパスワードを入力するように構成してもよい。
The
第1共通鍵生成部114は、第1のノード10のノードユーザの識別情報(id)に対応するパスワード(pwC)と第1使い捨て共有値取得部112により取得された使い捨ての値(r1)とに基づいて、第1のノード10と第2のノード20とが共有する共通関数により共通鍵(k)を生成する。
The first common
[共通関数について]
第1のノード10と第2のノード20とが共有する共通関数について説明する。
共通関数としては、例えばRBKDF2(Passwod−Based Key Derivation Function 2)関数のような一方向性関数を適用することができる。例えば、RBKDF2関数を適用する場合、RBKDF2関数に入力されるパスワードをpwC、ソルト(Salt)をr1とすることで、共通鍵(k)を生成するように構成することができる。
すなわち、パスワードをpwC、使い捨ての値をr1、RBKDF2関数をH()、生成される共通鍵をkとした場合、共通鍵(k)は、式1により算出される。
k = H(pwC,r1) (式1)
[About common functions]
A common function shared by the
As the common function, for example, a one-way function such as an RBKDF2 (Password-Based Key Derivation Function 2) function can be applied. For example, when the RBKDF2 function is applied, the common key (k) can be generated by setting the password input to the RBKDF2 function to pwC and the salt (Salt) to r1.
That is, when the password is pwC, the disposable value is r1, the RBKDF2 function is H (), and the generated common key is k, the common key (k) is calculated by Equation 1.
k = H (pwC, r1) (Formula 1)
また、共通関数として、第1のノード10及び第2のノード20が備える共通の暗号化関数Enc()を適用してもよい。例えば、暗号化関数Enc()を適用する場合、暗号化関数Enc()に入力される暗号鍵をpwC、平文をr1とすることで、共通鍵(k)を生成するように構成することができる。
すなわち、パスワードをpwC、使い捨ての値をr1とした場合、共通鍵(k)は式2により算出される。
k = Enc(r1,pwC) (式2)
共通関数として暗号化関数を用いる場合、第1のノード10及び第2のノード20は、暗号化関数以外の共通関数をインストールする必要がなく、第1のノード及び第2のノードの初期設定を効率的に行うことができる。
なお、共通関数は上記の例に限定されない。例えば、任意の一方向性関数又は暗号化関数を選択することができる。
Moreover, you may apply the common encryption function Enc () with which the
That is, when the password is pwC and the disposable value is r1, the common key (k) is calculated by Equation 2.
k = Enc (r1, pwC) (Formula 2)
When the encryption function is used as the common function, the
The common function is not limited to the above example. For example, any one-way function or encryption function can be selected.
第1認証部115は、ランダムにノンスを生成し、第1共通鍵生成部114により生成された共通鍵により暗号化したノンスをチャレンジデータとして通信部130を介して第2のノード20に送信し、第2のノード20から受信したレスポンスデータを用いて第2のノード20を認証する。
より具体的には、第1認証部115は、ランダムに生成したノンス(r2)を第1共通鍵生成部114により生成された共通鍵(k)により暗号化することで、チャレンジデータを生成する。第1認証部115は、生成したチャレンジデータを通信部130を介して第2のノード20に送信する。後述するように、第2のノード20では、受信したチャレンジデータを第2のノード20の第2共通鍵生成部214により生成された共通鍵(k)により復号したレスポンスデータを生成し、レスポンスデータを第1のノード10(第1認証部115)に返信する。第1認証部115は、第2のノード20から受信したレスポンスデータが、チャレンジデータの元データ(ランダムに生成したノンス)と同じ値であるか否かを判定する。レスポンスデータがチャレンジデータの元データ(ランダムに生成したノンス)と同じ値である場合、第1認証部115は、第2のノード20が正しいパスワード(pwC)を知っていると判断して、第2のノード20を信頼できるものと認証する。
The
More specifically, the
記憶部120は半導体メモリやハードディスクドライブ等で構成されており、オペレーティングシステム(OS)やアプリケーションと呼ばれるソフトウェアが保存される。
The
通信部130は、例えば、LAN(Local Area Network)、WAN(Wide Area Netowark)、インターネット回線、有線回線、無線回線等の任意の通信網30に接続し、相互にパケットデータ等の送受信(データ通信)を行う通信プロトコル等を実装する。
The
<第2のノード20について>
第2のノード10について、図3を参照しながら説明する。
図3は、本実施形態に係る第2のノード20の機能構成を示すブロック図である。
第2のノード20は、第1のノード10と同様に、制御部210(例えば、CPU)と、記憶部220と、通信部230と、を備える。
制御部210は、記憶部220と、通信部230とを含むハードウェア群の全体を制御する機能部である。
<About the
The
FIG. 3 is a block diagram showing a functional configuration of the
Similar to the
The
制御部210は、識別情報受信部211と、第2使い捨て共有値取得部212と、パスワード取得部213と、第2共通鍵生成部214と、第2レスポンス部216と、を備える。これらの各部は、例えば、第2のノード20の記憶部220に格納されたアプリケーションを制御部210が実行することにより機能するように構成することができる。
The
識別情報受信部211は、第1のノード10から識別情報(id)を通信部230を介して受信する。
The identification
第2使い捨て共有値取得部212は、ランダムにノンス(r1)を生成し、生成したノンスを使い捨ての値とする。
第2使い捨て共有値取得部212は、生成したノンス(r1)を通信部230を介して、第1のノード10(第1使い捨て共有値取得部112)に送信する。そうすることで、第1のノード10及び第2のノード20は、一時的に共有する使い捨ての値(r1)を共有することができる。
The second disposable shared
The second disposable shared
パスワード取得部213は、第1のノード10から受信した識別情報(id)に基づいて、予め設定されたパスワード(pwC)を取得する。具体的には、セキュアな記憶部(図示せず)から第1のノード10から受信した識別情報(id)に基づいて、予め設定されたパスワード(pwC)を取得する。なお、セキュアな記憶部は第2のノードが備えてもよい。また、第2のノードとは別のファイルサーバが備えるようにしてもよい。
The
第2共通鍵生成部214は、パスワード取得部213により取得されたパスワード(pwC)と第2使い捨て共有値取得部により生成された使い捨ての値(r1)とに基づいて、共通関数により共通鍵を生成する。ここで、共通関数は、前述したように、第1のノード10と第2のノード20とが、予め共有する関数である。
こうすることで、第1のノード10から第2のノード20にアクセスするためのパスワード(pwC)が予め設定されている場合、第2共通鍵生成部214により生成された共通鍵(k)と第1共通鍵生成部114により生成された共通鍵(k)とは、同じ値となる。
The second common
Thus, when the password (pwC) for accessing the
第2レスポンス部216は、第1のノード10から通信部230を介して受信した暗号化されたノンス(チャレンジデータ)を、第2共通鍵生成部214により生成された共通鍵(k)により復号したレスポンスデータを生成し、レスポンスデータを第1のノード10に送信する。
こうすることで、第1のノード10は、第2のノード20が信頼できるものかどうかを認証することができる。
The
By doing so, the
記憶部220は半導体メモリやハードディスクドライブ等で構成されており、オペレーティングシステム(OS)やアプリケーションと呼ばれるソフトウェアが保存される。
The
通信部130は、例えば、LAN(Local Area Network)、WAN(Wide Area Netowark)、インターネット回線、有線回線、無線回線等の任意の通信網30に接続し、相互にパケットデータ等の送受信(データ通信)を行う通信プロトコル等を実装する。
以上、第1のノード10及び第2のノード20の機能構成を説明した。
The
The functional configurations of the
<フローチャートによる動作説明>
次に、図4を参照して、本発明の一実施形態に係る第1のノード10及び第2のノード20間の処理の流れを説明する。図4は、処理の一例を示すフローチャートである。
ここでは、共通関数として、RBKDF2関数を適用した。
また、第1のノード10と第2のノード20とが一時的に共有する使い捨ての値については、第2使い捨て共有値取得部212がランダムに生成したノンス(r1)を、第1ノードの第1使い捨て共有値取得部112に送信する方式を適用した。
なお、第1のノード10(例えばクライアント)と第2のノード20(例えばサーバ)とは、予め識別情報(id)及びパスワード(pwC)を予め共有しているものとする。
<Explanation of operation by flowchart>
Next, the flow of processing between the
Here, the RBKDF2 function is applied as the common function.
In addition, for the disposable value temporarily shared by the
Note that the first node 10 (for example, a client) and the second node 20 (for example, a server) share in advance identification information (id) and a password (pwC).
[共通鍵の生成]
ステップST101において、第1のノード10(接続要求部111)は、第1のノード10のノードユーザの識別情報(id)を第2のノード20に送信する。
[Generate common key]
In step ST <b> 101, the first node 10 (connection request unit 111) transmits the node user identification information (id) of the
ステップST201において、第2のノード20(識別情報受信部211)は、第1のノード10から識別情報(id)を受信する。
In step ST201, the second node 20 (identification information receiving unit 211) receives the identification information (id) from the
ステップST202において、第2のノード20(第2使い捨て共有値取得部212)は、ランダムにノンス(r1)を生成し、使い捨ての値とし、第1のノード10に送信する。
In Step ST202, the second node 20 (second disposable shared value acquisition unit 212) generates a nonce (r1) at random, sets it as a disposable value, and transmits it to the
ステップST203において、第2のノード20(パスワード取得部213)は、受信した識別情報(id)に基づいて、予め設定されたパスワード(pwC)を取得する。 In Step ST203, the second node 20 (password acquisition unit 213) acquires a preset password (pwC) based on the received identification information (id).
ステップST204において、第2のノード20(第2共通鍵生成部214)は、予め設定されたパスワード(pwC)と第2使い捨て共有値取得部212により生成された使い捨ての値(r1)とに基づいて、共通関数(H)により共通鍵(k)(=H(pwC,r1))を生成する。
In Step ST204, the second node 20 (second common key generation unit 214) is based on the preset password (pwC) and the disposable value (r1) generated by the second disposable shared
ステップST102において、第1のノード10(第1使い捨て共有値取得部112)は、第2のノード20(第2使い捨て共有値取得部212)から送信される使い捨ての値(r1)を受信することで、取得する。 In step ST102, the first node 10 (first disposable shared value acquisition unit 112) receives the disposable value (r1) transmitted from the second node 20 (second disposable shared value acquisition unit 212). And get it.
ステップST103において、第1のノード10(第1共通鍵生成部114)は、識別情報(id)に対応するパスワード(pwC)と第1使い捨て共有値取得部112により取得された使い捨ての値(r1)とに基づいて共通関数(H)により共通鍵(k)(=H(pwC,r1))を生成する。 In step ST103, the first node 10 (first common key generation unit 114) uses the password (pwC) corresponding to the identification information (id) and the disposable value (r1) acquired by the first disposable shared value acquisition unit 112. ) And a common function (H) to generate a common key (k) (= H (pwC, r1)).
[第1のノード10による第2のノード20の認証]
ステップST104において、第1のノード10(第1認証部115)は、ランダムにノンス(r2)を生成する。
[Authentication of the
In Step ST104, the first node 10 (first authentication unit 115) randomly generates a nonce (r2).
ステップST105において、第1のノード10(第1認証部115)は、共通鍵(k)により暗号化したノンスをチャレンジデータ(c1)(=Enc(r2、k))として、第2のノード20に送信する。
In step ST105, the first node 10 (first authentication unit 115) uses the nonce encrypted with the common key (k) as challenge data (c1) (= Enc (r2, k)), and the
ステップST205において、第2のノード20(第2レスポンス部216)は、第1のノード10から受信したチャレンジデータ(c1)を共通鍵(k)により復号したレスポンスデータ(Dec(c1、k))を生成し、第1のノード10に送信する。
In step ST205, the second node 20 (second response unit 216) responds by decrypting the challenge data (c1) received from the
ステップST106において、第1のノード10(第1認証部115)は、第2のノード20から受信したレスポンスデータ(Dec(c1、k))がチャレンジデータの元データ(r2)と同じ値であるか否かを判定する。レスポンスデータ(Dec(c1、k))がチャレンジデータの元データ(r2)と同じ値である場合(Yesの場合)ステップST107に移る。レスポンスデータがチャレンジデータの元データ(ランダムに生成したノンスr2)と異なる値の場合(Noの場合)ステップST101に戻る。
In step ST106, in the first node 10 (first authentication unit 115), the response data (Dec (c1, k)) received from the
ステップST107において、第1のノード10と第2のノード20との間で、共通鍵(k)により暗号化される通信チャネルが確立されるとともに、第2ノードが信頼できることが認証されたことになる。
In step ST107, the communication channel encrypted with the common key (k) is established between the
[第2のノード20による第1のノード10の認証]
第1のノード10(第1認証部115)が、第2のノード20を信頼できるものと認証できたことで、共通鍵(k)により暗号化される通信チャネルが確立することができる。第2のノード20による第1のノード10の認証についても実質的に完了しているとみなすことができる。
これは、共通鍵(k)が、第1のノード10及び第2のノード20のみが知るパスワード(pwC)により生成されたことに基づく。
[Authentication of the
Since the first node 10 (first authentication unit 115) can authenticate the
This is based on the fact that the common key (k) is generated by the password (pwC) that only the
以上のように、共通鍵(k)により暗号化される通信チャネルがアプリケーション層に確立されて以降の第1のノード10のアプリケーションと第2のノード20のアプリケーションとの間のデータの送受信は、共通鍵(k)により暗号化される通信チャネル(「暗号化通信チャネル」という)を介して行われるように構成される。
具体的には、第1のノード10のアプリケーション(又は第2のノード20のアプリケーション)が平文を第2のノード20のアプリケーション(又は第1のノード10のアプリケーション)を宛先として送信すると、暗号化通信チャネルにおいて、平文が共通鍵(k)により暗号化され、通信網を伝送される。その後、暗号化通信チャネルにおいて、暗号文が共通鍵(k)により復号され、第2のノード20のアプリケーション(又は第1のノード10のアプリケーション)に平文が引き渡される。
本発明の共通鍵(k)により暗号化される通信チャネルは、第1のノード10と第2のノード20におけるアプリケーション層において、第1のノード10または第2のノード20から相手先(第2のノード10または第1のノード20)に向けて送信されるメッセージは暗号化され、第1のノード10または第2のノード20が相手先(第2のノード10または第1のノード20)から受信するメッセージは復号される。
このように、第1のノード10と第2のノード20との間で、トランスポート層のSSL/TLSを置き換えることなく、アプリケーション層においてアプリケーションデータを、共通鍵(k)により暗号化された状態で送受信することができる。
As described above, transmission / reception of data between the application of the
Specifically, when the application of the first node 10 (or the application of the second node 20) transmits a plaintext with the application of the second node 20 (or the application of the first node 10) as the destination, encryption is performed. In the communication channel, the plaintext is encrypted with the common key (k) and transmitted over the communication network. Thereafter, in the encrypted communication channel, the ciphertext is decrypted with the common key (k), and the plaintext is delivered to the application of the second node 20 (or the application of the first node 10).
The communication channel encrypted with the common key (k) of the present invention is transmitted from the
In this way, the application data is encrypted with the common key (k) in the application layer without replacing the SSL / TLS in the transport layer between the
以上、本発明の実施形態の一例である第1実施形態について説明したが、本発明は、上述した実施形態に限定されるものではない。次に、第1使い捨て共有値取得部112及び第2使い捨て共有値取得部212の別実装例について説明する。
The first embodiment which is an example of the embodiment of the present invention has been described above, but the present invention is not limited to the above-described embodiment. Next, another implementation example of the first disposable shared
<第1使い捨て共有値取得部112及び第2使い捨て共有値取得部212の変形例1>
第1実施形態においては、第2ノードの第2使い捨て共有値取得部212がランダムに生成したノンス(r1)を、第1ノードの第1使い捨て共有値取得部112に送信することにより、当該ノンス(r1)を第1のノード10と第2のノード20とが一時的に共有する使い捨ての値とした。
<Modification 1 of the 1st disposable shared
In the first embodiment, the nonce (r1) randomly generated by the second disposable shared
これに対して、第1ノード10の第1使い捨て共有値取得部112がランダムに生成したノンスを、第2ノード20に送信することにより、当該ノンスを第1のノード10と第2のノード20とが一時的に共有する使い捨ての値としてもよい。
On the other hand, by transmitting the nonce randomly generated by the first disposable shared
<第1使い捨て共有値取得部112及び第2使い捨て共有値取得部212の変形例2>
[カウンタ値による、一時的に共有する使い捨ての値について]
ノンスの生成に替えて、カウンタ値を用いて一時的に共有する使い捨ての値を生成するようにしてもよい。この場合、第1のノード10が第1カウンタ(図示せず)を備え、第2のノード20が第2カウンタ(図示せず)を備え、第1カウンタと第2カウンタとが同期を取ることにより、第1カウンタの値(第1カウンタ値)と第2カウンタの値(第2カウンタ値)とが、常に同じ値となるように構成する。そうすることで、第1カウンタの値及び第2のカウンタの値をそれぞれ第1のノード10及び第2のノード20が「一度限り」の一時的に共有する使い捨ての値を取得することができる。
<Modification 2 of the 1st disposable shared
[About disposable values temporarily shared by counter values]
Instead of generating a nonce, a disposable value that is temporarily shared may be generated using a counter value. In this case, the
具体的には、第1カウンタ及び第2カウンタの初期設定において、第1カウンタの値及び第2カウンタの値を例えば1になるように初期設定する。その後、例えば共通鍵を生成するたび(又は、共通鍵(k)をリセットするたび)に、第1ノード及び第2ノードは、それぞれ第1カウンタ及び第2カウンタをインクリメントさせることで、第1カウンタ及び第2カウンタとが同期を取るように構成する。なお、インクリメントするタイミングは、共通鍵(k)を生成する前又は共通鍵を生成した後に統一することが好ましい。 Specifically, in the initial setting of the first counter and the second counter, the values of the first counter and the second counter are initialized so as to be 1, for example. After that, for example, every time the common key is generated (or every time the common key (k) is reset), the first node and the second node increment the first counter and the second counter, respectively, so that the first counter And the second counter is configured to be synchronized. The increment timing is preferably unified before the common key (k) is generated or after the common key is generated.
[共通鍵の生成について]
第1使い捨て共有値取得部112及び第2使い捨て共有値取得部212をカウンタを用いて構成する場合、第1共通鍵生成部114及び第2共通鍵生成部214による共通鍵(k)の生成について説明する。
[Common key generation]
When the first disposable shared
共通関数として、RBKDF2関数を適用した場合、第1カウンタ及び第2カウンタの値がi番目(i≧1)の値(i)を示しているとき、パスワードをpwC、RBKDF2関数をH()とすると、第1共通鍵生成部114及び第2共通鍵生成部214により生成される共通鍵(ki)は、式3により算出される。
ki = H(pwC,i) (式3)
When the RBKDF2 function is applied as a common function, when the values of the first counter and the second counter indicate the i-th (i ≧ 1) value (i), the password is pwC and the RBKDF2 function is H (). Then, the common key generated by the first common
k i = H (pwC, i) (Formula 3)
また、共通関数として、暗号化関数を適用した場合、第1カウンタ及び第2カウンタの値がi番目(i≧1)の値(i)を示しているとき、パスワードをpwC、暗号化関数をEnc()とすると、第1共通鍵生成部114及び第2共通鍵生成部214により生成される共通鍵(ki)は、暗号鍵をpwC、平文をiとすることで、式4により算出される。
ki = Enc(i,pwC) (式4)
When the encryption function is applied as a common function, when the values of the first counter and the second counter indicate the i-th (i ≧ 1) value (i), the password is pwC, and the encryption function is If Enc (), the common key (k i ) generated by the first common
k i = Enc (i, pwC) (Formula 4)
このように第1ノードの第1使い捨て共有値取得部112及び第2ノードの第2使い捨て共有値取得部212は、ノンスをお互いに送付することなく、第1カウンタの示すカウント値及び第2カウンタの示すカウント値をそれぞれ、第1のノード10と第2のノード20とが「一度限り」の一時的に共有する使い捨ての値とするように構成することができる。
As described above, the first disposable shared
<第1認証部115の別実装例>
次に、第1認証部115の別実装例について説明する。
第1実施形態においては、第1認証部115は、ランダムにノンスを生成し、共通鍵(k)により暗号化したノンスをチャレンジデータとして、第2のノード20に送信し、第2のノード20から受信したレスポンスデータを用いて、第2のノード20を認証した。
<Another implementation example of the
Next, another implementation example of the
In the first embodiment, the
これに対して、第1認証部115は、ランダムにノンスを生成し、生成したノンスを平文のままチャレンジデータとして、第2のノード20に送信し、第2のノード20から受信したレスポンスデータを用いて第2のノード20を認証するようにしてもよい。
より具体的には、第1認証部115は、ランダムに生成したノンスを平文のままチャレンジデータとして、第2のノード20に送信する。これに対して第2のノード20(第2レスポンス部216)は、受信したチャレンジデータを共通鍵(k)により暗号化したレスポンスデータを生成し、第1のノード10に返信する。
そうすることで、第1認証部115は、第2のノード20(第2レスポンス部216)から受信したレスポンスデータを共通鍵(k)により復号したデータの値が、チャレンジデータ(ランダムに生成したノンス)の値と同じ値であるか否かを判定する。レスポンスデータを共通鍵(k)により復号したデータの値が、チャレンジデータ(ランダムに生成したノンス)の値と同じ値である場合、第1認証部115は、第2のノード20が正しいパスワード(pwC)を知っていると判断して、第2のノード20を信頼できるものと認証することができる。
On the other hand, the
More specifically, the
By doing so, the
上記のとおり、第2レスポンス部216は、第1のノード10から受信したチャレンジデータを、共通鍵(k)により暗号化したデータをレスポンスデータとして、第1のノード10に送信するように構成される。
As described above, the
第1認証部115は、チャレンジデータを、平文のままとするか又は共通鍵で暗号化するか、を選択的に利用可能とすることができる。
このために、第1認証部115は、チャレンジデータが平文のままであるか又は共通鍵で暗号化されているかを識別するための識別子をチャレンジデータに付加したデータを第2のノード20に送信するように構成してもよい。
この場合、第2レスポンス部216は、識別子に基づいて、レスポンスデータを生成するように構成される。
The
For this purpose, the
In this case, the
<第2のノードによる第1のノードの認証について(その1)>
第1実施形態においては、第1のノード10(第1認証部115)が、第2のノード20を信頼できるものと認証できたことで、共通鍵(k)により暗号化される通信チャネルが確立され、第2のノードによる第1のノードの認証を省略した。
これに対して、第2のノードによる第1のノードの認証を行うようにしてもよい。
この場合、第2のノード20が第1のノード10を認証する方式として、例えば、第2使い捨て共有値取得部212により生成され、第1のノード10に送付済みのノンス(r1)を再利用してもよい。
具体的には、第1のノード10は、ノンス(r1)を共通鍵(k)により暗号化して、第2のノード20に送信する。第2のノード20は、第1のノード10から受信したデータを共通鍵(k)により復号(Dec(c2、k))し、復号されたデータ(Dec(c2、k))がノンス(r1)と同じ値であるか否かを判定する。復号されたデータ(Dec(c2、k))がノンス(r1)と同じ値である場合、第2のノード20は、第1のノード10(のノードユーザ)が予め設定された識別情報とパスワードの持ち主であることを認証することができる。
<Authentication of the first node by the second node (part 1)>
In the first embodiment, since the first node 10 (first authentication unit 115) can authenticate the
On the other hand, the first node may be authenticated by the second node.
In this case, as a method for authenticating the
Specifically, the
<第2のノードによる第1のノードの認証について(その2)>
第1実施形態においては、第1のノード10及び第2のノード20がそれぞれ共通鍵(k)を生成した後、第1のノード10(第1認証部115)がチャレンジデータを作成し、第2のノード20からレスポンスを受信することで、第2のノード20を認証した。
<Authentication of the first node by the second node (part 2)>
In the first embodiment, after the
これに対して、第1のノード10及び第2のノード20がそれぞれ共通鍵(k)を生成した後、第2のノード10がチャレンジデータを作成し、第1のノード10からレスポンスを受信することで、第1のノード10を認証するように構成してもよい。
特に、一時的に共有する使い捨ての値(r1)を第1のノード10(第1使い捨て共有値取得部112)が生成し、第1のノード10及び第2のノード20がそれぞれ、前記一時的に共有する使い捨ての値(r1)とパスワード(pwC)とに基づいて、共通鍵(k)を生成する場合に、第2のノード20が第1のノード10を認証するように構成することが好ましい。
On the other hand, after the
In particular, the first node 10 (the first disposable shared value acquisition unit 112) generates a disposable value (r1) to be temporarily shared, and the
より具体的には、図5及び図6に示すように、第2のノード20は第1のノード10を認証するために第2認証部215を備える。また、第1のノードは第1レスポンス部116を備える。
More specifically, as shown in FIGS. 5 and 6, the
第2認証部215は、ランダムにノンスを生成し、共通鍵(k)により暗号化したノンスをチャレンジデータとして、通信部230を介して第1のノード10(第1レスポンス部116)に送信する。
The
第1レスポンス部116は、第2のノード20(第2認証部215)から通信部130を介して受信した暗号化されたノンス(チャレンジデータ)を、共通鍵(k)により復号したレスポンスデータを生成し、第2のノード20(第2認証部215)に送信する。
The
第2認証部215は、第1のノード20(第1レスポンス部116)から受信したレスポンスデータを用いて第1のノード10を認証する。
こうすることで、第2認証部215は、第1のノード10が信頼できるものかどうかを認証することができる。
なお、第2認証部215は、前述した第1認証部115の別実装例と同様に、ランダムにノンスを生成し、生成したノンスを平文のままチャレンジデータとして、第1のノード10(第1レスポンス部116)に送信し、第1のノード10(第1レスポンス部116)から受信したレスポンスデータを用いて第1のノード10を認証するように構成してもよい。
The
By doing so, the
Note that the
第2認証部215の機能は、前述した第1認証部115の機能説明において、「第1」を「第2」に読み替え、また「第2」を「第1」に読み替えることで説明できるため、詳細な説明は省略する。
The function of the
同様に、第1レスポンス部116の機能は、前述した第2レスポンス部216の機能説明において、「第2」を「第1」に読み替え、また「第1」を「第2」に読み替えることで説明できるため、詳細な説明は省略する。
Similarly, the function of the
<SSL/TLSプロトコルを用いた識別情報及びパスワードの初期設定>
第1実施形態においては、第1のノード10と第2のノード20とは、予めパスワードを共有していることが前提であった。これに対して、SSL/TLSプロトコルを利用して、第1のノード10と第2のノード20とが、識別情報及びパスワードを初期設定する一例について説明する。
<Initial setting of identification information and password using SSL / TLS protocol>
In the first embodiment, it is assumed that the
[初めてのアクセス時]
第1のノード10のノードユーザが初めて第2のノード20にアクセスするときは、SSL/TLSプロトコルを利用して、第1のノードと第2のノードとの間で、第2のノード20の公開鍵を使用して、第2のノード20の認証を行い、暗号化された通信チャネルを確立する。
[First time access]
When the node user of the
第1のノード10と第2のノード20との間で暗号化された通信チャネルが確立された後、当該通信チャネルを用いて、第1のノード10と第2のノード20間で、第1のノード10のノードユーザの識別情報(id)及びパスワード(pwC)を初期設定し、第2のノード20は、識別情報(id)とパスワード(pwC)を例えばセキュアに記憶する。
こうすることで、第1のノード10のノードユーザの識別情報(id)とパスワード(pwC)が、第2のノード20に設定されている状態となる。
After the encrypted communication channel is established between the
By doing so, the identification information (id) and password (pwC) of the node user of the
第1のノード10のノードユーザの識別情報(id)とパスワード(pwC)が、第2のノード20に設定されて以降の第1のノード10から第2のノード20への接続には、パスワード(pwC)に基づく暗号化された通信チャネル確立システム1を適用することができる。
For the connection from the
このように、第1のノード10と第2のノード20との間で、識別情報(id)及びパスワード(pwC)が設定されていない場合に、最初に、SSL/TLSを用いて識別情報(id)及びパスワード(pwC)を設定することで、2回目以降の第1のノード10から第2のノード20への接続においては、公開鍵及び第三者の認証局を必要とせず、パスワード(pwC)に基づく共通鍵を生成し、共通鍵により暗号化された通信チャネルを確立するとともに、同時にノードの認証を行うことができる。
As described above, when the identification information (id) and the password (pwC) are not set between the
<第1実施形態の効果>
以上のように、本実施形態によれば、第1のノード10及び第2のノード20は、通信路上で識別情報(id)と一時的に共有する使い捨ての値(r1)を送受信することで、予め共有する秘密情報であるパスワードと「一度限り」の一時的に共有する使い捨ての値とに基づいて、それぞれ共通鍵を生成する第1共通鍵生成部114及び第2共通鍵生成部214と、を備える。
これにより、公開鍵及び第三者の認証局を必要とせず、証明書発行コストを不要とするとともに、証明書に伴うやりとりの負荷が軽減され、共通鍵により暗号化された通信チャネルを安価に容易に確立することができる。
<Effects of First Embodiment>
As described above, according to the present embodiment, the
This eliminates the need for public keys and third-party certificate authorities, eliminates the cost of issuing certificates, reduces the communication load associated with certificates, and reduces the cost of communication channels encrypted with a common key. Can be easily established.
また、仮に第三者が通信路上に送受信されるデータ(識別情報(id)と一時的に共有する使い捨ての値(r1))を盗聴できたと仮定しても、第三者はパスワード(pwC)を知らない限り、共通鍵(k)を生成することはできず、また、暗号化された通信チャネルを確立する毎に異なる共通鍵が生成されることから、安全性を十分に担保することができる。 Even if it is assumed that the third party can eavesdrop on the data (identification information (id) and the disposable value (r1) temporarily shared) transmitted / received on the communication path, the third party has the password (pwC). The common key (k) cannot be generated unless the password is known, and a different common key is generated each time an encrypted communication channel is established. it can.
また、第1のノード10のノードユーザーが複数いる場合に、あるノードユーザーのパスワードが破られた場合であっても、当該ノードユーザー以外の他のノードユーザーと第2のノード20との間に確立された、暗号化された通信チャネルを脅かすものではないことから、独立して安全性を担保することができる。
In addition, when there are a plurality of node users of the
また、第1のノード10及び第2のノード20とがパスワードを共有するシステムであれば、本実施形態を適用できることから、クライアントサーバ型のシステムはもとより、WebブラウザとWebサーバ型のシステム、マシン対マシン型のシステム、無線端末と無線LAN機器との接続、さらにはIOT(Internet Of Things)等幅広く適用可能であり、社会的なインフラ基盤として、幅広く提供することができる。
In addition, since the present embodiment can be applied to any system in which the
また、第1のノード10は、チャレンジデータ(r2)を共通鍵(k)により暗号化し、第2のノード20に送信し、第2のノード20において共通鍵(k)により復号されたレスポンスデータ(r2)を受信することで、第2のノード20を認証する。
これにより、第1のノード10と第2のノード20との間で、パスワードに基づいて生成される共通鍵による暗号化された通信チャネルを確立できることが、実質的に各ノードの認証の成功を含む。これにより、暗号化された通信チャネルの確立とノードの認証とを、1段階で実行することができる。
Also, the
As a result, the communication channel encrypted by the common key generated based on the password can be established between the
また、暗号化通信チャネル確立システム1は、共通関数として、汎用的な一方向性関数又は暗号化関数を利用することができるので、用途に応じて、任意の共通関数を利用することができる汎用性を備える。
以上、本発明の実施形態についてその構成要素の変形例を含めて説明したが、本発明は上述した実施形態に限るものではない。
Moreover, since the encryption communication channel establishment system 1 can use a general-purpose one-way function or an encryption function as a common function, a general-purpose that can use any common function according to the application. Have sex.
As mentioned above, although embodiment of this invention was described including the modification of the component, this invention is not restricted to embodiment mentioned above.
<第2実施形態>
第1実施形態において、第1共通鍵生成部114及び第2共通鍵生成部214は、パスワード(pwC)及び一時的に共有する使い捨ての値(r1)に基づいて、1個の共通鍵(k)を生成した(式1〜式4)。
これに対して、第1共通鍵生成部114及び第2共通鍵生成部214は、共通鍵(k)に基づいて、さらに、別の共通鍵(k´)を生成するように構成してもよい。
例えば、第1使い捨て共有値取得部112及び第2使い捨て共有値取得部212によりr1とは別の一時的に共有する使い捨ての値(r1´)を取得することにより、RBKDF2関数に入力されるパスワードを共通鍵(k)、ソルト(Salt)をr1´とすることで、式5により共通鍵(k)から別の共通鍵(k´)を生成するように構成することができる。
k´ = H(k,r1´) (式5)
こうすることで、第1共通鍵生成部114及び第2共通鍵生成部214は、2つの共通鍵k=H(pwC,r1)及びk´=H(k,r1´)を生成することができる。
ここで、r1´として、例えば第1のノード10(第1認証部115)の生成したチャレンジデータとなるノンス(r2)を用いてもよい。
Second Embodiment
In the first embodiment, the first common
In contrast, the first common
For example, the password input to the RBKDF2 function by acquiring a temporary shared value (r1 ′) different from r1 by the first disposable shared
k ′ = H (k, r1 ′) (Formula 5)
By doing so, the first common
Here, as r1 ′, for example, a nonce (r2) serving as challenge data generated by the first node 10 (first authentication unit 115) may be used.
同様に、「一度限り」の一時的に共有する使い捨ての値として、第1カウンタ及び第2カウンタの表すカウンタ値を適用する場合、第1カウンタ及び第2カウンタをそれぞれ、インクリメントさせることで、別の共通鍵(k´)を生成するように構成することができる。
例えば、共通鍵(k)を生成した後、第1カウンタ及び第2カウンタをそれぞれ、インクリメントさせて、第1カウンタ及び第2カウンタの値が例えば2となった場合、式6により共通鍵(k)から別の共通鍵(k´)を生成するように構成することができる。
k´ = H(k,2) (式6)
Similarly, when the counter values represented by the first counter and the second counter are applied as “one-time” temporarily shared disposable values, the first counter and the second counter are incremented, respectively. The common key (k ′) can be generated.
For example, after generating the common key (k), the first counter and the second counter are incremented, respectively, and when the values of the first counter and the second counter become 2, for example, the common key (k ) To generate another common key (k ′).
k ′ = H (k, 2) (Formula 6)
また、「一度限り」の一時的に共有する使い捨ての値として、第1カウンタ及び第2カウンタの表すカウンタ値を適用する場合、第1カウンタ及び第2カウンタをそれぞれ、共通鍵を生成するたびに、インクリメントさせることで、2つの共通鍵(k1、k2)を生成するように構成することができる。
具体的には、例えば、RBKDF2関数に入力されるパスワードを共通鍵(k)とし、ソルト(Salt)を「i」及び「i+1」とすることで、式7及び式8に示すように、2つの共通鍵(k1、k2)を生成するように構成することができる。
k1= H(k,i) (式7)
k2= H(k,i+1) (式8)
In addition, when the counter values represented by the first counter and the second counter are applied as disposable values that are temporarily shared “one-time”, the first counter and the second counter each time a common key is generated. By incrementing, two common keys (k1, k2) can be generated.
Specifically, for example, when the password input to the RBKDF2 function is the common key (k) and the salt (Salt) is “i” and “i + 1”, as shown in Expression 7 and Expression 8, One common key (k1, k2) can be generated.
k1 = H (k, i) (Formula 7)
k2 = H (k, i + 1) (Formula 8)
このように第1共通鍵生成部114及び第2共通鍵生成部214は、先に生成した共通鍵(k)に基づいて2つの鍵(k、k´)又は2つの鍵(k1、k2)を生成することができる。
なお、第1共通鍵生成部114及び第2共通鍵生成部214が、先に生成した共通鍵(k)に基づいて2つの鍵を生成する方法は、上述した実施例に限定されるものではない。
例えば、共通関数として、暗号化関数Enc()を適用する場合についても、RBKDF2関数の場合と同様に、2つの共通鍵を生成することができる。
As described above, the first common
The method in which the first common
For example, when the encryption function Enc () is applied as the common function, two common keys can be generated as in the case of the RBKDF2 function.
第2実施形態で作成する2つの共通鍵について、一方を暗号化に用いるセッション鍵(共通鍵)、他方を完全性の確認に用いるMAC(Message Authentication Code)鍵として、SSL/TLS(レコードプロトコル)に、引き渡すことが可能となる。
すなわち、第2実施形態で作成する2つの共通鍵のうち、一方を暗号化に用いるセッション鍵(共通鍵)、他方を完全性の確認に用いるMAC鍵として、SSL/TLS(レコードプロトコル)のセキュリティ暗号として設定することが可能となる。
こうすることで、SSL/TLSのハンドシェイクプロトコルの代わりに、第2実施形態により、暗号化された通信チャネルの確立及び通信相手の認証といった、暗号通信のための準備を行い、レコードプロトコルは、第2実施形態で生成した2つの共通鍵を使い、送受信するデータの暗号化と完全性(交換されるデータが改ざんされていないこと)のチェックを行うようにすることができる。
Of the two common keys created in the second embodiment, one is a session key (common key) used for encryption, and the other is a MAC (Message Authentication Code) key used for confirmation of integrity, and SSL / TLS (record protocol) Can be handed over.
That is, of the two common keys created in the second embodiment, one is a session key (common key) used for encryption, and the other is a MAC key used for confirmation of integrity, and SSL / TLS (record protocol) security. It can be set as a cipher.
By doing this, instead of the SSL / TLS handshake protocol, the second embodiment prepares for encrypted communication such as establishment of an encrypted communication channel and authentication of the communication partner, and the record protocol is Using the two common keys generated in the second embodiment, it is possible to perform encryption and integrity check of data to be transmitted and received (that data to be exchanged has not been tampered with).
<第2実施形態の効果>
第2実施形態によれば、第1のノード(例えばクライアント端末)のノードユーザが第2のノード(例えばサーバ)にアクセスするための識別情報(id)及びパスワード(pwC)が予め設定されている場合に、公開鍵及び第三者の認証局を必要とせず、メッセージの暗号化に用いるセッション鍵(共通鍵)及び完全性の確認に用いるMAC鍵を簡易に生成することができる。
これにより、第1のノードと第2のノード間でセッション鍵により暗号化された通信チャネルを確立するとともに、MAC鍵によりメッセージの改ざんを防止することが可能となり、証明書に伴うやりとりの負荷が軽減され、共通鍵により暗号化された通信チャネルを安価に容易に確立することができる。
<Effects of Second Embodiment>
According to the second embodiment, identification information (id) and a password (pwC) for a node user of a first node (for example, a client terminal) to access a second node (for example, a server) are preset. In this case, a public key and a third-party certificate authority are not required, and a session key (common key) used for message encryption and a MAC key used for confirmation of integrity can be easily generated.
As a result, a communication channel encrypted with the session key is established between the first node and the second node, and the message can be prevented from being tampered with by the MAC key. A communication channel that is reduced and encrypted with a common key can be easily established at low cost.
本発明の共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立システム1は、専用のシステムによらず、通常のコンピュータシステムを用いて実現できる。例えば、コンピュータに上述の動作を実行するためのプログラムを格納したコンピュータ読み取り可能な記録媒体(CD、DVD,ブルーレイディスク等のリムーバブルメディア等)を配布してもよいし、又はネットワークを介して、サーバー又はクラウドからコンピュータにダウンロードされることにより配布してもよい。
そして、配布されたプログラムをコンピュータにインストールすることにより、第1のノード10、又は第2のノード20等を構成することができる。
そして、プログラムを起動し、OSの制御下で実行することにより、コンピュータに第1のノード10、又は第2のノード20の備える機能部として機能させることができる。
The encrypted communication channel establishment system 1 that establishes a communication channel encrypted with the common key of the present invention can be realized using a normal computer system, not a dedicated system. For example, a computer-readable recording medium (a removable medium such as a CD, DVD, or Blu-ray disc) storing a program for executing the above-described operation may be distributed to the computer, or the server may be distributed via a network. Or you may distribute by downloading to a computer from a cloud.
The
Then, by starting the program and executing it under the control of the OS, the computer can function as a functional unit included in the
特に、上記プログラム(第1のノードとして機能させるプログラム)をコンピュータに搭載されるブラウザにインストールし、上記プログラム(第2のノードとして機能させるプログラム)をWEBサーバにインストールすることにより、ブラウザとWebサーバにより構成されるブラウザベースのクライアントサーバシステムに本発明の共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立システム1をインストールすることができる。 In particular, by installing the program (a program that functions as a first node) in a browser mounted on a computer and installing the program (a program that functions as a second node) on a WEB server, the browser and the Web server The encrypted communication channel establishment system 1 that establishes the communication channel encrypted with the common key of the present invention can be installed in the browser-based client server system configured by the above.
また、共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立方法も、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、コンピュータ(第1のノード10又は第2のノード20)にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
An encrypted communication channel establishment method for establishing a communication channel encrypted with a common key is also realized by software. When realized by software, a program constituting the software is installed in a computer (
1 暗号化通信チャネル確立システム
10 第1のノード
110 制御部
111 接続要求部
112 第1使い捨て共有値取得部
113 パスワード取得部
114 第1共通鍵生成部
115 第1認証部
116 第1レスポンス部
120 記憶部
130 通信部
20 第2のノード
210 制御部
211 識別情報受信部
212 第2使い捨て共有値取得部
213 パスワード取得部
214 第2共通鍵生成部
215 第2認証部
216 第2レスポンス部
220 記憶部
230 通信部
30 通信網
DESCRIPTION OF SYMBOLS 1 Encrypted communication
Claims (10)
前記第1のノードが前記第2のノードにアクセスするための識別情報とパスワードとが予め設定され、
前記第1のノードと前記第2のノードとは、予め共通関数を共有し、
前記第1のノードと前記第2のノードとが互いに生成する共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立システムであって、
前記第1のノードは、
前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得部と、
前記識別情報を前記第2のノードに送信する接続要求部と、
前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成部と、
を備え、
前記第2のノードは、
前記第1のノードから前記識別情報を受信する識別情報受信部と
前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得部と、
前記識別情報受信部により受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得部と、
前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成部と、
を備える暗号化通信チャネル確立システム。 A first node and a second node are connected to the network;
Identification information and a password for the first node to access the second node are preset,
The first node and the second node share a common function in advance,
An encrypted communication channel establishment system for establishing a communication channel encrypted with a common key generated by the first node and the second node,
The first node is:
A first disposable shared value acquisition unit that acquires a disposable value temporarily shared with the second node;
A connection request unit that transmits the identification information to the second node;
A first common key generation unit that generates a common key using the common function based on the password corresponding to the identification information and the disposable value;
With
The second node is
An identification information receiving unit that receives the identification information from the first node; a second disposable shared value acquisition unit that acquires a disposable value temporarily shared with the first node;
Based on the identification information received by the identification information receiving unit, a password acquisition unit that acquires a preset password;
A second common key generation unit that generates a common key by the common function based on the password corresponding to the identification information and the disposable value;
An encrypted communication channel establishment system comprising:
ランダムにノンスを生成し、前記ノンス又は前記ノンスを前記共通鍵により暗号化した暗号データをチャレンジデータとして前記第2のノードに送信し、前記第2のノードから受信したレスポンスデータを用いて前記第2のノードを認証する第1認証部を備え、
前記第2のノードは、
前記第1のノードから受信した前記チャレンジデータに基づいてレスポンスデータを生成し、前記レスポンスデータを前記第1のノードに送信する第2レスポンス部を備える、請求項1又は請求項2に記載の暗号化通信チャネル確立システム。 The first node is:
A nonce is generated at random, and the nonce or encrypted data obtained by encrypting the nonce with the common key is transmitted as challenge data to the second node, and the response data received from the second node is used to send the nonce. A first authentication unit that authenticates the two nodes;
The second node is
The encryption according to claim 1 or 2, further comprising: a second response unit that generates response data based on the challenge data received from the first node and transmits the response data to the first node. Communication channel establishment system.
ランダムにノンスを生成し、前記ノンス又は前記ノンスを前記共通鍵により暗号化した暗号データをチャレンジデータとして前記第1のノードに送信し、前記第1のノードから受信したレスポンスデータを用いて前記第1のノードを認証する第2認証部を備え、
前記第1のノードは、
前記第2のノードから受信した前記チャレンジデータに基づいてレスポンスデータを生成し、前記レスポンスデータを前記第2のノードに送信する第1レスポンス部を備える、請求項1乃至請求項3のいずれか1項に記載の暗号化通信チャネル確立システム。 The second node is
A nonce is generated at random, and the nonce or encrypted data obtained by encrypting the nonce with the common key is transmitted as challenge data to the first node, and the response data received from the first node is used to send the nonce. A second authentication unit for authenticating one node;
The first node is:
4. The apparatus according to claim 1, further comprising: a first response unit that generates response data based on the challenge data received from the second node and transmits the response data to the second node. The encrypted communication channel establishment system according to item.
ネットワークに接続された第2のノードにアクセスするための識別情報とパスワードとが予め設定され、
前記第2のノードと共有する共通関数を有し、
前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得部と、
前記識別情報を前記第2のノードに送信する接続要求部と、
前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成部と、
を備える第1のノード。 A first node connected to the network,
Identification information and a password for accessing the second node connected to the network are preset,
Having a common function shared with the second node;
A first disposable shared value acquisition unit that acquires a disposable value temporarily shared with the second node;
A connection request unit that transmits the identification information to the second node;
A first common key generation unit that generates a common key using the common function based on the password corresponding to the identification information and the disposable value;
A first node comprising:
ネットワークに接続された第1のノードが前記第2のノードにアクセスするための識別情報とパスワードとが予め設定され、
前記第1のノードと共有する共通関数を有し、
前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得部と、
前記第1のノードから前記識別情報を受信する識別情報受信部と
前記識別情報受信部により受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得部と、
前記パスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成部と、
を備える第2のノード。 A second node connected to the network,
Identification information and a password for the first node connected to the network to access the second node are preset,
Having a common function shared with the first node;
A second disposable shared value acquisition unit that acquires a disposable value that is temporarily shared with the first node;
An identification information receiving unit that receives the identification information from the first node; a password acquisition unit that acquires a preset password based on the identification information received by the identification information receiving unit;
A second common key generation unit that generates a common key by the common function based on the password and the disposable value;
A second node comprising:
前記第1のノードが前記第2のノードにアクセスするための識別情報とパスワードが予め設定され、
前記第1のノードと前記第2のノードとは、予め共通関数を共有し、
前記第1のノードと前記第2のノードとが互いに生成する共通鍵により暗号化された通信チャネルを確立する暗号化通信チャネル確立方法であって、
前記第1のノードが、
前記第2のノードと一時的に共有する使い捨ての値を取得する第1使い捨て共有値取得ステップと、
前記識別情報を前記第2のノードに送信する接続要求ステップと、
前記識別情報に対応するパスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第1共通鍵生成ステップと、
を備え、
前記第2のノードが、
前記第1のノードから、前記識別情報を受信する識別情報受信ステップと
前記第1のノードと一時的に共有する使い捨ての値を取得する第2使い捨て共有値取得ステップと、
前記識別情報受信ステップにより受信した前記識別情報に基づいて、予め設定されたパスワードを取得するパスワード取得ステップと、
前記パスワードと前記使い捨ての値とに基づいて前記共通関数により共通鍵を生成する第2共通鍵生成ステップと、
を備える暗号化通信チャネル確立方法。 A first node and a second node are connected to the network;
Identification information and a password for the first node to access the second node are preset,
The first node and the second node share a common function in advance,
An encrypted communication channel establishment method for establishing a communication channel encrypted with a common key generated by the first node and the second node,
The first node is
A first disposable shared value acquisition step of acquiring a disposable value temporarily shared with the second node;
A connection requesting step for transmitting the identification information to the second node;
A first common key generation step of generating a common key by the common function based on the password corresponding to the identification information and the disposable value;
With
The second node is
An identification information receiving step of receiving the identification information from the first node; a second disposable shared value acquisition step of acquiring a disposable value temporarily shared with the first node;
Based on the identification information received by the identification information receiving step, a password acquisition step for acquiring a preset password;
A second common key generation step of generating a common key by the common function based on the password and the disposable value;
An encrypted communication channel establishment method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016066512A JP6609212B2 (en) | 2016-03-29 | 2016-03-29 | Encrypted communication channel establishment system, method, program, and computer-readable program recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016066512A JP6609212B2 (en) | 2016-03-29 | 2016-03-29 | Encrypted communication channel establishment system, method, program, and computer-readable program recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017183932A true JP2017183932A (en) | 2017-10-05 |
JP6609212B2 JP6609212B2 (en) | 2019-11-20 |
Family
ID=60006350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016066512A Expired - Fee Related JP6609212B2 (en) | 2016-03-29 | 2016-03-29 | Encrypted communication channel establishment system, method, program, and computer-readable program recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6609212B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05327693A (en) * | 1990-12-17 | 1993-12-10 | Nippon Telegr & Teleph Corp <Ntt> | Authentication method in digital mobile communication |
JP2003037587A (en) * | 2001-07-26 | 2003-02-07 | Matsushita Electric Ind Co Ltd | Method for generating session key |
JP2004139295A (en) * | 2002-10-17 | 2004-05-13 | Seiko Epson Corp | Communication equipment holding authentication key for authenticating connection to other communication equipment |
JP2004274134A (en) * | 2003-03-05 | 2004-09-30 | Matsushita Electric Ind Co Ltd | Communication method, communication system using the communication method, server and client |
JP2006020291A (en) * | 2004-06-02 | 2006-01-19 | Canon Inc | Encrypted communication method and system |
CN102239661A (en) * | 2009-08-14 | 2011-11-09 | 华为技术有限公司 | Method and device for exchanging key |
WO2014209190A1 (en) * | 2013-06-28 | 2014-12-31 | Telefonaktiebolaget L M Ericsson (Publ) | Encrypting and storing data |
-
2016
- 2016-03-29 JP JP2016066512A patent/JP6609212B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05327693A (en) * | 1990-12-17 | 1993-12-10 | Nippon Telegr & Teleph Corp <Ntt> | Authentication method in digital mobile communication |
JP2003037587A (en) * | 2001-07-26 | 2003-02-07 | Matsushita Electric Ind Co Ltd | Method for generating session key |
JP2004139295A (en) * | 2002-10-17 | 2004-05-13 | Seiko Epson Corp | Communication equipment holding authentication key for authenticating connection to other communication equipment |
JP2004274134A (en) * | 2003-03-05 | 2004-09-30 | Matsushita Electric Ind Co Ltd | Communication method, communication system using the communication method, server and client |
JP2006020291A (en) * | 2004-06-02 | 2006-01-19 | Canon Inc | Encrypted communication method and system |
CN102239661A (en) * | 2009-08-14 | 2011-11-09 | 华为技术有限公司 | Method and device for exchanging key |
WO2014209190A1 (en) * | 2013-06-28 | 2014-12-31 | Telefonaktiebolaget L M Ericsson (Publ) | Encrypting and storing data |
Also Published As
Publication number | Publication date |
---|---|
JP6609212B2 (en) | 2019-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110380852B (en) | Bidirectional authentication method and communication system | |
EP3432532B1 (en) | Key distribution and authentication method, apparatus and system | |
WO2018045817A1 (en) | Mobile network authentication method, terminal device, server and network authentication entity | |
US10951423B2 (en) | System and method for distribution of identity based key material and certificate | |
JP4709815B2 (en) | Authentication method and apparatus | |
WO2018076365A1 (en) | Key negotiation method and device | |
CN108599925B (en) | Improved AKA identity authentication system and method based on quantum communication network | |
JP6226197B2 (en) | Certificate issuing system, client terminal, server device, certificate acquisition method, and certificate issuing method | |
JP6168415B2 (en) | Terminal authentication system, server device, and terminal authentication method | |
US9043598B2 (en) | Systems and methods for providing secure multicast intra-cluster communication | |
WO2018040758A1 (en) | Authentication method, authentication apparatus and authentication system | |
JP2018519706A (en) | Method, network access device, application server, and non-volatile computer readable storage medium for causing a network access device to access a wireless network access point | |
CN103763356A (en) | Establishment method, device and system for connection of secure sockets layers | |
CN111050322B (en) | GBA-based client registration and key sharing method, device and system | |
CN101997679A (en) | Encrypted message negotiation method, equipment and network system | |
EP3633949A1 (en) | Method and system for performing ssl handshake | |
JP7292263B2 (en) | Method and apparatus for managing digital certificates | |
WO2010078755A1 (en) | Method and system for transmitting electronic mail, wlan authentication and privacy infrastructure (wapi) terminal thereof | |
US11070537B2 (en) | Stateless method for securing and authenticating a telecommunication | |
WO2018202109A1 (en) | Certificate request message sending method and receiving method and apparatus | |
WO2022143030A1 (en) | National key identification cryptographic algorithm-based private key distribution system | |
EP3195523A1 (en) | Methods, devices and management terminals for establishing a secure session with a service | |
JP2017163612A (en) | Terminal authentication system, server device, and terminal authentication method | |
US20210392004A1 (en) | Apparatus and method for authenticating device based on certificate using physical unclonable function | |
CN112332986B (en) | Private encryption communication method and system based on authority control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181211 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190611 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190821 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20190902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190924 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190927 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20191015 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191025 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6609212 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |