JP2014053816A - 通信ノード、鍵同期方法、鍵同期システム - Google Patents

通信ノード、鍵同期方法、鍵同期システム Download PDF

Info

Publication number
JP2014053816A
JP2014053816A JP2012197825A JP2012197825A JP2014053816A JP 2014053816 A JP2014053816 A JP 2014053816A JP 2012197825 A JP2012197825 A JP 2012197825A JP 2012197825 A JP2012197825 A JP 2012197825A JP 2014053816 A JP2014053816 A JP 2014053816A
Authority
JP
Japan
Prior art keywords
key
application
node
session
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012197825A
Other languages
English (en)
Other versions
JP5734934B2 (ja
Inventor
Yoshimichi Tanizawa
佳道 谷澤
Shinichi Baba
伸一 馬場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012197825A priority Critical patent/JP5734934B2/ja
Priority to CN201310395054.8A priority patent/CN103684752A/zh
Priority to US14/018,800 priority patent/US9083684B2/en
Publication of JP2014053816A publication Critical patent/JP2014053816A/ja
Application granted granted Critical
Publication of JP5734934B2 publication Critical patent/JP5734934B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract


【課題】 ノード同士がアプリケーション鍵の生成・共有を行えるようにする。
【解決手段】 実施形態によれば、鍵同期制御部およびアプリケーション通信部を具備する通信ノードが提供される。鍵同期制御部は、ノードベースのシグナリング処理とセッションベースのシグナリング処理とに基づいてアプリケーション鍵の同期を制御する。ノードベースのシグナリング処理では、相手ノードとのアプリケーション鍵の交換を開始または終了する。セッションベースのシグナリング処理では、前記相手ノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記相手ノードと同期する。アプリケーション通信部は、前記セッションを持つアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供する。
【選択図】図1

Description

本発明の実施形態は、通信ノード、鍵同期方法、鍵同期システムに関する。
暗号通信ネットワークは、複数のノードが複数のリンクを介して相互に接続されたネットワークである。各ノードは、リンクを介して接続された対向ノードとの間で乱数を生成・共有する機能と、この乱数を暗号鍵(以下、「リンク鍵」という)として利用して、リンク上で暗号通信を行う機能とを備える。複数のノードのうちの幾つかは、リンク鍵に利用するものとは別の乱数を生成する機能と、別のノードに対し、この乱数をリンク上で送信する機能とを備える。
暗号通信ネットワークにおけるアプリケーションは、リンク鍵とは別の乱数を暗号鍵(以下、「アプリケーション鍵」という)として利用して、別のアプリケーションとの間で暗号通信を行う機能を備える。
ノード間で暗号鍵を生成し共有する機能は、例えば一般に量子暗号通信と呼ばれる技術により実現される。この場合において、ノードは、リンク鍵およびアプリケーション鍵を生成し、リンク鍵によってアプリケーション鍵を暗号化し、別のノードに対しこの暗号化されたアプリケーション鍵をリンク上で送信する。この技術は、量子鍵配送(Quantum Key Distribution:QKD)と呼ばれることがある。
特開2008−154019号公報
Dianati, M., Alleaume, R., Gagnaire, M. and Shen, X. (2008), Architecture and protocols of the future European quantum key distribution network. Security and Communication Networks, 1: 57-74. DOI: 10.1002/sec.13
暗号通信ネットワークを構成するノードに複数のアプリケーションが接続し、これら複数のアプリケーション向けに複数のアプリケーション鍵を提供する場合において、ノード同士が、アプリケーション鍵の生成・共有を行う具体的な方法が明らかになっていない。
実施形態によれば、鍵同期制御部およびアプリケーション通信部を具備する通信ノードが提供される。鍵同期制御部は、ノードベースのシグナリング処理とセッションベースのシグナリング処理とに基づいてアプリケーション鍵の同期を制御する。ノードベースのシグナリング処理では、相手ノードとのアプリケーション鍵の交換を開始または終了する。セッションベースのシグナリング処理では、前記相手ノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記相手ノードと同期する。アプリケーション通信部は、前記セッションを持つアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供する。
実施形態に係る暗号通信ネットワークの概略図 アプリケーション間の暗号通信と鍵の提供を示す図 実施形態に係るノードを示すブロック図 実施形態に係るアプリケーションを示すブロック図 暗号通信開始時のシーケンス概要を示す図 暗号通信終了時のシーケンス概要を示す図 暗号通信開始処理のフローチャート 暗号通信開始処理のフローチャート 暗号通信開始時のノードベースのシグナリング処理およびセッションベースのシグナリング処理のシーケンスを示す図 暗号通信終了処理のフローチャート 暗号通信終了処理のフローチャート 暗号通信終了時のノードベースのシグナリング処理およびセッションベースのシグナリング処理のシーケンスを示す図 アプリケーション鍵の割り当ての実現例を説明するための図
以下、実施の形態について、図面を参照して説明する。
図1は、実施形態に係る暗号通信ネットワークの概略図である。該ネットワークにおいて、複数のノード(例えば100a〜100d)が複数のリンク(例えば300a〜300c)を介して相互に接続される。各ノードは、リンクを介して接続された対向ノードとの間で暗号通信を行う。例えば、ノード100aとノード100bは、あるリンク鍵を用いてリンク300a上で暗号通信を行う。ノード100bとノード100cは、別のリンク鍵を用いてリンク300b上で暗号通信を行う。ノード100bとノード100dは、さらに別のリンク鍵を用いてリンク300d上で暗号通信を行う。
ノード間で暗号鍵を生成し共有する機能は、例えば量子鍵配送(QKD)により実現される。例えばノード100aは、リンク鍵によってアプリケーション鍵を暗号化し、この暗号化されたアプリケーション鍵をリンク300a上でノード100bに送信する。
暗号通信ネットワークにおけるアプリケーションは、アプリケーション鍵を利用して、別のアプリケーションとの間で暗号通信を行う。例えば、アプリケーション200aは、アプリケーション鍵を用いて、アプリケーション間の通信リンク400上でアプリケーション200bとの間で暗号通信を行う。アプリケーションは、ノードとともに一体として実現されても良いし、ノードから独立した端末として実現されても良い。図1は、アプリケーションがノードと一体として実現される例を示しており、以降で説明する図2は、アプリケーションがノードから独立した端末として実現される例に相当する。
図2は、アプリケーション間の暗号通信と鍵の提供を示す図である。ノードAには複数のアプリケーションA、B、Cが接続している。ノードBには複数のアプリケーションα、β、γが接続している。ノードAとノードBは暗号通信ネットワーク300を構成している。ノードAは複数のアプリケーション鍵500AをアプリケーションA、B、Cに分配する。ノードBは複数のアプリケーション鍵500Bをアプリケーションα、β、γに分配する。例えばインターネット400を利用して、アプリケーションAはアプリケーションαと暗号通信を行い、アプリケーションBはアプリケーションβと暗号通信を行い、アプリケーションCはアプリケーションγと暗号通信を行う。
このような場合、どのアプリケーション鍵をどのアプリケーションに提供するかをノードAとノードBの間で合意し、次に使用するアプリケーション鍵をノード間で同期する方法が明らかでない。また、アプリケーションによる暗号通信が新たに開始および終了する際に、ノードAとノードBとの間でどのようにアプリケーション鍵の割り当てを行うかが明らかでない。さらに、ノードにおいて、最初にアプリケーション鍵の生成を開始するタイミングも明らかでない。
上記の問題に対処する一般的な方法として、次の2つの方法が考えられる。それぞれ次に述べるようなメリットとデメリットがある。
方法1は、アプリケーションによる暗号通信の開始のセッションや終了のセッションに関連付けて、アプリケーション鍵のノード間での共有や生成を開始するというものである。この方法1は、アプリケーション単位で局所的に管理を行なうものであり、アプリケーション鍵の同期を維持しやすいというメリットがある。しかし、方法1では、アプリケーションが暗号通信を開始する前にあらかじめアプリケーション鍵を共有しておくような最適化が困難である。また方法1を採用した場合、アプリケーションが終了すると、該アプリケーションについて共有済みのアプリケーション鍵は一般的に破棄されることになる。したがって、アプリケーション鍵の有効利用ができない。
方法2は、アプリケーション鍵交換を、アプリケーションから独立してノードを主体として行うというものである。アプリケーションに対するアプリケーション鍵の割り当ては、ノードに従う。方法2は、個々のアプリケーションではなくノードが集中的に管理を行うものである。この場合、暗号通信開始前にアプリケーション鍵を共有しておくような最適化が可能である。また方法2では、あるアプリケーションが終了した際に、既に共有済みのアプリケーション鍵を別のアプリケーションに融通する等、アプリケーション鍵の有効利用がしやすい。
しかし、1つのノードに複数のアプリケーションが接続し、それらの開始および終了が非同期で発生する状況において、アプリケーション鍵の同期を全てのアプリケーションにわたって維持することに技術的な困難性がある。この点に関して具体的な方法は確立されていない。
そして以下に説明する実施形態は、アプリケーション鍵の有効利用というメリットを享受し得る上述の方法2を基礎とし、かつアプリケーション鍵の適切な同期を実現する。
一実施形態では、ノード間のアプリケーション鍵の共有および同期に関して、次のような2階層型のアーキテクチャを導入する。
第1の階層においては、相手ノードとのアプリケーション鍵の交換を開始または終了するためのノードベースのシグナリング処理を行う。第1の階層は、次に説明する第2の階層から独立しており、アプリケーション鍵のノード間の共有を、アプリケーションによる暗号通信(以下、「セッション」という)の発生有無とは無関係に、効率的に行うことができる。
第2の階層においては、新たなセッションが発生し、およびセッションが終了するたびに、ノードが各セッションにアプリケーション鍵を割り当てるための通信を行う。具体的には、相手ノードと共有するセッションへのアプリケーション鍵の割り当てのルールを該相手ノードと同期するためのセッションベースのシグナリング処理を行う。これによれば、ノードは、アプリケーション(セッション)毎のアプリケーション鍵の同期を保証しながら、アプリケーション(セッション)から要求されたアプリケーション鍵を割り当てることができる。
図3は、実施形態に係るノードを示すブロック図である。ノード100は、図1に示した例えばノード100aであり、図2ではノードAに対応するものであって、ノード間通信部101、アプリケーション鍵の生成部102、アプリケーション鍵の同期制御部103、状態管理部104、アプリケーション鍵の保持部105、アプリケーション通信部106、ノードプラットホーム107で構成される。
ノード間通信部101は、ノード間の暗号通信リンク10によって接続された対向ノード(図2のノードB)との間で、量子暗号通信を用いて、乱数を生成および共有する。生成された乱数はリンク鍵として管理される。リンク鍵は、ノード間の暗号通信リンク10を介して接続された他のノードとの間でノード間データ通信を行う際に利用される。ノード間データ通信は、データをリンク鍵を用いて暗号化する暗号通信である。
ここで、「他のノード」とは、ノード間の暗号通信リンク10を介して直接接続された対向ノード(図2のノードB)であってもよいし、その対向ノードに対し別のノード間の暗号通信リンクを介して接続される別のノード(例えば図1のノード100c)であってもよい。後者の場合、ノード間通信部101は、暗号通信ネットワーク300において、複数のノードにまたがって通信を行うためのルーティング機能を提供しても良い。ノード間通信部101によりノード間で交換されるデータは、例えばアプリケーション鍵のデータである。この場合、アプリケーション鍵のデータは、ノードが管理するリンク鍵を用いて暗号化されて暗号通信が行われる。
アプリケーション鍵の生成部(以下、「鍵生成部」という)102は、乱数としてアプリケーション鍵(App Key)を生成する。生成されたアプリケーション鍵には、鍵ID(Key ID)が付加される。アプリケーション鍵の鍵IDのフォーマットは特に定めないが、例えば連続した数字によりその順序が識別されるものとする。生成されたアプリケーション鍵そのものは、後述する保持部105に保持される。なお、鍵IDの付与(対応づけ)を鍵生成部102ではなく保持部105が行っても良い。
保持部105は、アプリケーション鍵を保持する。ここに保持されるアプリケーション鍵は、鍵生成部102によって生成されたものと、ノード間通信部101を介して別のノードから受信したものとがある。
ノード100が保持しているアプリケーション鍵は、アプリケーション200に提供される。具体的には、ノード100の保持部105に保持されたアプリケーション鍵をアプリケーション通信部106が取り出し、ノード−アプリケーション間のリンク20を介してアプリケーション200の鍵取得部201に送信する。このノード−アプリケーション間の通信については、例えば、本願と同一出願人による出願に係る特願2012−67719号明細書に記載の方法が利用可能である。
アプリケーション200に提供された鍵は、保持部105から削除されても良い。保持部105で保持されるアプリケーション鍵は、暗号通信システムにおけるセキュリティ上もっとも重要なデータの一つであるため、ファイルシステムやオペレーティングシステム(OS)によって暗号化、改竄防止、アクセス制限等のセキュリティ対策が施されていても良い。保持部105は、様々な実現方法が可能であるが、ファイルシステムやデータベースとして実装することができる。
アプリケーション通信部106は、ノード−アプリケーション間のリンク20を介してアプリケーション200と接続して通信し、アプリケーション200からの要求を受け付ける。この要求には、アプリケーション200からの暗号通信開始/終了要求(すなわちアプリケーション鍵提供開始/終了要求)、アプリケーション鍵取得要求等がある。
アプリケーション200によって行われる個々の暗号通信のことを「セッション」と呼ぶ。セッションには、セッション識別子(session ID)が付与される。セッションの情報は後述の状態管理部104によって管理される。セッションの情報は、どのようなセッションが存在するか、どのセッションにどのアプリケーション鍵を割り当てているか等を表す。
またアプリケーション通信部106は、アプリケーション200の鍵取得部201に対してアプリケーション鍵のデータを提供する。アプリケーション200にアプリケーション鍵のデータを提供する際の単位は、ノード100がアプリケーション鍵を他のノードと交換する際の単位とは異なっても良い。このため、アプリケーション通信部106および保持部105は、セッションに割り当て済みのアプリケーション鍵のうち、どの部分までの鍵のデータを提供済みであるかを管理する。
状態管理部104は、前述のセッションの情報、アプリケーション鍵交換に関連するルールや状況の情報といった各種の状態情報を管理する。これら情報は、前述のアプリケーション通信部106あるいは次に説明する同期制御部103によって参照および変更される。
ノードプラットホーム107は、ノード上の他の構成要素の管理、動作に必要なコンピュータのオペレーティングシステム機能、基本的なネットワーク機能、セキュリティ機能等を提供する。
同期制御部103は、本実施形態の特徴的な部分である。同期制御部103は、ノード間通信部101、鍵生成部102、保持部105、アプリケーション通信部106を次のように制御する。
・保持部105が保持しているアプリケーション鍵をノード間通信部101がノード間の暗号通信リンク10を介して相手ノードに送信する。
・ノード間通信部101がノード間の暗号通信リンク10を介して相手ノードからアプリケーション鍵を受信し、これを保持部105が保持する。
・鍵生成部102がアプリケーション鍵を生成する。
・アプリケーション通信部106がアプリケーション200から様々な要求を受信し、これに応じて、ノード間通信部101がノード間の暗号通信リンク10を介して相手ノードとの間でアプリケーション鍵割り当てのためのシグナリングプロトコルを実行する。
・アプリケーション通信部106が、シグナリングプロトコルの実行結果に従い、保持部105に保持されたアプリケーション鍵のセッションへの割り当て開始/終了を行う。
以上説明した実施形態に係るノードの構成はあくまで一例である。
図4は、実施形態に係るアプリケーションを示すブロック図である。アプリケーション200は、鍵取得部201、アプリケーション間通信部202、アプリケーション実行部203、アプリケーションプラットホーム204で構成される。
鍵取得部201は、ノード間の暗号通信リンク10を介して接続されたノード100(具体的にはノード100のアプリケーション通信部106)と通信し、アプリケーション200が暗号通信を行うために必要なアプリケーション鍵をノード100から取得する。
鍵取得部201は、アプリケーション鍵の取得を開始するにあたり、アプリケーション鍵取得の開始要求を行い、アプリケーション鍵の取得を終了する際にはアプリケーション鍵取得の終了要求を行う。これによって区別されるアプリケーション鍵の利用がセッションとして識別される。鍵取得部201は、取得したアプリケーション鍵を保持、管理する。これは、アプリケーション間通信部202によるアプリケーション間の暗号通信に使用される。
アプリケーション実行部203は、暗号通信を行うアプリケーション機能を実行する。通信を行うものであれば特にアプリケーションの種類は限定しないが、例えば、ビデオ送信等である。暗号通信の際のデータの送受信には、アプリケーション間通信部202が利用される。
アプリケーション間通信部202は、アプリケーション実行部203の動作に必要な通信機能、通信データの暗号化、復号化の機能を提供するものである。アプリケーション間通信部202は、アプリケーション実行部203からの送信データを受けとると、これを暗号化し、アプリケーション間の暗号通信リンク30を介して送信する。
また、アプリケーション間通信部202は、アプリケーション間の暗号通信リンク30からデータを受信すると、これを復号化し、アプリケーション実行部203に渡す。暗号化および復号化で必要になった場合は、鍵取得部201に対して新たな鍵取得を要求する。
本実施形態において、アプリケーション間通信部202がどのような暗号アルゴリズムを使うかは特に規定しない。例えば、Vernam's One−time Pad(バーナム使い捨て鍵暗号)であっても良いし、AES(Advanced Encryption Standard)のようなブロック暗号であっても良い。また暗号以外にメッセージ認証等を行っていても良い。ただし、アプリケーション間通信部202が利用する暗号アルゴリズムの少なくとも一つは、ノード100から提供されて鍵取得部201が取得するアプリケーション鍵を利用するものとする。
アプリケーションプラットホーム204は、アプリケーション200の他の構成要素の管理、動作に必要なコンピュータのオペレーティングシステム機能、基本的なネットワーク機能、セキュリティ機能等を提供する。
以上説明した実施形態に係るアプリケーションの構成はあくまで一例である。
暗号通信開始時のシーケンス概要を図5に示す。同図は、想定ネットワーク構成を示している。ノードAとノードBはアプリケーション鍵を共有可能な状態にある。ノードAにはクライアントアプリケーション200aが接続しており、ノードBにはサーバアプリケーション200bが接続している。ノードAおよびノードB以外の他のノードがリンクを介して接続されていても良い(図示しない)。アプリケーション同士は、ノードAとノードBが構成するネットワークから独立した別のネットワークを介して接続されてもよい。
(1)クライアントアプリケーション200aは、ノードAに対して暗号通信の開始を要求する。これに応じて、ノードAとノードBは、このアプリケーションのセッション用のアプリケーション鍵割り当てを開始する。アプリケーション鍵割り当て開始時の処理については後述する。
(2)クライアントアプリケーション200aは、ノードAからアプリケーション鍵を取得する。
(3)クライアントアプリケーション200aは、ノードAから取得したアプリケーション鍵で暗号化された暗号通信をサーバアプリケーション200bとの間で開始する。
(4)サーバアプリケーション200bは、復号化のために必要なアプリケーション鍵をノードBから取得し、これにより暗号通信が成立する。
なお、上記ではサーバアプリケーション200bがアプリケーション鍵を取得するのは暗号通信のデータを受け取った後としたが、暗号通信行う前に事前にノードBからアプリケーション鍵を取得するような最適化もあり得る。
暗号通信終了時のシーケンス概要を図6に示す。
(1)クライアントアプリケーション200aは、ノードAに対して暗号通信の終了を要求する。これに応じて、ノードAとノードBは、このアプリケーションのセッション用のアプリケーション鍵割り当てを終了する。アプリケーション鍵割り当て終了時の処理については後述する。
(2)アプリケーション鍵割り当てを終了したノードAとノードBはそれぞれ、クライアントアプリケーション200aとサーバアプリケーション200bに対して暗号要求の終了を通知する。
以上の暗号通信開始要求から暗号通信終了要求までの一連の暗号通信が、セッションとして識別される。
以下、ノードAとノードBとの間でアプリケーション鍵を交換し、同期する通信処理について詳しく説明する。当該処理は、暗号通信開始処理と、暗号通信終了処理とに大別される。
<暗号通信開始処理>
図7および図8に暗号通信開始処理のフローチャートを示す。
まず、ノードAのアプリケーション通信部106は、クライアントアプリケーション200aから暗号通信の開始要求を受け取る。これに応じて、状態管理部104は、クライアントアプリケーション200aが開始する暗号通信に関するセッションの情報を登録する。
ここで、同期制御部103は、現在、鍵生成部102が動作しているか否か(すなわち、乱数生成動作を行っているか否か)を確認する(ステップS1)。もし、動作していなければ、動作を開始するよう鍵生成部102に指示する(ステップS2)。ただし、既に多くの乱数が作り貯めてあり、特に新たに乱数を生成する必要性は無いと判断した場合は、何もしなくて良い。一方、鍵生成部102が既に動作していれば何もしない。あるいは、乱数生成動作を速め(送信レートを上げる)、より多くの乱数生成を行うように指示しても良い(ステップS7)。
同期制御部103は、状態管理部104を参照し、セッション情報から決定される対象ノードへの鍵割り当てが行われているか否かを確認する(ステップS3)。なお、本実施形態では、対象ノードを特定する方法について特に定めないが、例えば、クライアントアプリケーション200aが暗号通信の開始要求に対象ノードのアドレスを明示的に指定したり、対象ノードのアドレスを事前に状態管理部104に登録したり、ディレクトリサービスを利用して、対象ノードのアドレスを求めてもよい。
対象ノードへの鍵割り当てが行われていないならば(ステップS3:NO)、対象ノードに対するノードベースのシグナリング処理を開始する(ステップS4)。ノードベースのシグナリング処理(ステップS5)においては、(1)開始のシグナリングおよび(2)アプリケーション鍵および鍵ID(App Key+Key ID)を対象ノードに送信し(ステップS5−1)、対象ノードからそのAck(確認応答)を受信する(ステップS5−2)。以後、アプリケーション鍵および鍵IDの送信を継続的に行う(ステップS6)。
一方、対象ノードへの鍵割り当てが既に開始しているならば(ステップS3:YES)、図8のステップS8に進む。あるいは、追加的にステップS5のノードベースのシグナリング処理を実行することによりノードベースの鍵割り当ての処理を速め、より多くのアプリケーション鍵共有が行うようにしても良い。
同期制御部103は、ノードベースのシグナリング処理に伴う変更結果を状態管理部104に登録する。アプリケーション鍵を送信する際には、鍵生成部102が生成し保持部105が保持しているアプリケーション鍵をノード間通信部101が対象ノードに送信する。アプリケーション鍵を対象ノードから受信した際には、これを保持部105が保持する。以上の処理により、ノード間でのアプリケーション鍵の共有が完了する。
図8のステップS8において、同期制御部103は、状態管理部104を参照し、暗号通信の開始要求を受けたクライアントアプリケーション200aに対応する対象セッションへの鍵割り当てが既に開始されているか否かを確認する。もし、開始されているならば(ステップS8:YES)、以後の処理を行わずに終了してもよいが、クライアントアプリケーション200aから暗号通信の開始要求を受け付けたことはセッション確立の重複要求であるため、これをエラーとしてクライアントアプリケーション200aに通知する(ステップS11)。
対象セッションへの鍵割り当てが開始されていない場合(ステップS8:NO)、対象セッションを含む新しいセッションベースのシグナリング処理を開始する(ステップS9)。
セッションベースのシグナリング処理(ステップS10)においては、(1)新しいセッションID(session ID)を含むセッション開始シグナリングと、(2)新しいセッションベースの鍵割り当てのルールと、(3)旧ルール下での各セッションの最後のアプリケーション鍵(App Key)の鍵ID(Key ID)とを対象ノードに送信する(ステップS10−1)。これに応じて、新ルール下での各セッションの最初のアプリケーション鍵(App Key)の鍵ID(Key ID)を含むAck(確認応答)を対象ノードから受信する(ステップS10−2)。
以上により、各セッションに対する鍵割り当てのルールが決定され、ノード間で合意される。つまり、ノード間で、各セッションに利用するアプリケーション鍵の割り当てが決定する。この決定された鍵割り当てのルールは、状態管理部104に格納される。
クライアントアプリケーション200aからの要求に応じて、最初のアプリケーション鍵のデータを例えば鍵ストリームとして提供してもよい。具体的には、アプリケーション通信部106が、クライアントアプリケーション200aから要求を受けると、同期制御部103は、状態管理部104が管理している割り当てルールに従って該当セッションに割り当てるべき最初のアプリケーション鍵を特定し、これを保持部105から取得してアプリケーション通信部106に渡す。アプリケーション通信部106では、このアプリケーション鍵を保持し、クライアントアプリケーション200aが要求する適切なサイズの鍵データをアプリケーション鍵から切り出し、これをクライアントアプリケーション200aに提供する。
一つのアプリケーション鍵をクライアントアプリケーション200aに提供し終えると、アプリケーション通信部106は、同期制御部103に依頼して次のアプリケーション鍵を取得し、クライアントアプリケーション200aへのアプリケーション鍵の提供を継続する。なお、アプリケーション通信部106は、クライアントアプリケーション200aからの要求に即時に対応できるよう、複数(例えば2つ)のアプリケーション鍵をバッファしておき、該バッファを通じてアプリケーション鍵の提供を行ってもよい。
図9に、暗号通信開始時のノードベースのシグナリング処理およびセッションベースのシグナリング処理のシーケンスを示す。
ノードベースのシグナリング処理は、図7のステップS5に対応するノード間の通信処理である。セッションベースのシグナリング処理は、図8のステップS10に対応するノード間の通信処理である。
ノードベースのシグナリング処理では、ノードA(アプリケーション鍵の共有を開始する側、クライアントアプリケーション200aから要求を受けた側であって良い)が、ノードベースのシグナリング処理を開始する旨を示す識別子(Start)、鍵ID(Key ID)、アプリケーション鍵(App Key)を含むメッセージ30をノードB(相手ノード)へ送信する。メッセージ30を受信したノードBは、受信完了した旨を示す識別子(Ack)、受信完了した鍵ID(Key ID)を含むメッセージ31をノードAへ送信する。
以上の手続きが終わると、ノードAからメッセージ30(但し、開始の識別子は含まない)をノードBに送信し、ノードBからメッセージ31を受信するというシーケンスが継続される。このシーケンスにより、ノードAとノードBは、アプリケーション鍵をノード単位で共有することになる。
なお、図示しないが、このメッセージ交換において、要求するアプリケーション鍵の交換速度を決定しても良い。
セッションベースのシグナリング処理では、ノードAが、新たにセッションを追加する旨を示す識別子(オプション)、セッションの識別子(session ID)、アプリケーション鍵を、新たに追加されたセッションを含む現時点で存在する全てのセッションにそれぞれ割り当てて利用するためのルール(以下、「新ルール(rule)」)、該当セッションが追加される以前に存在した全てのセッションにアプリケーション鍵をそれぞれ割り当てていたルール(以下、「旧ルール」)における各セッションの最後のアプリケーション鍵の鍵ID(Key ID)を含むメッセージ32をノードBへ送信する。メッセージ32を受信したノードBは、受信完了した旨を示す識別子(Ack)、新ルールにおいて各セッションが使用する最初のアプリケーション鍵の鍵ID(Key ID)を含むメッセージ3をノードAへ送信する。
なお、ノードAとノードBとの間にセッションがひとつも存在せず、初めて確立されるセッションの場合には、旧ルールに関するデータはメッセージに含める必要は無い。
ノードAとノードBとの間では、当然、アプリケーションに提供したアプリケーション鍵の量が異なっている可能性が考えられる。しかし、ノードAは、旧ルール下でどこまでのアプリケーション鍵をクライアントアプリケーション200aに提供したかをノードBに通知する(メッセージ32)。これを受信したノードBは、自身が旧ルール下でどこまでのアプリケーション鍵をサーバアプリケーション200bに提供したかについての情報と比較する。そして、両者のうち、いずれかより多くのアプリケーション鍵を提供している方が使った最後のアプリケーション鍵より以前のアプリケーション鍵は旧ルールの下で提供し、あるいは廃棄し、それよりも新しいアプリケーション鍵を、新ルールの下で各セッションが使用する鍵として選定してノードAに通知(メッセージ33)すれば、鍵の同期の観点から、「ずれ」は生じない。
ただし、一方のノードが大量にアプリケーションにアプリケーション鍵を提供しているような場合に限っては、他方のノードでアプリケーション鍵の大量の廃棄が発生することになる可能性があり、効率的でなくなるかもしれない。
なお、上記のルールは、例えば、セッションが3つであれば、鍵IDのMOD3(3で割った余り)が0、1、2の場合、それぞれ、1つめのセッション、2つめのセッション、3つめのセッションにアプリケーション鍵を割り当てて使うといったルールである。
また、ルールは、セッションが3つの場合であっても、鍵IDのMOD5(5で割った余り)を計算し、MOD5が0、1、2の場合は1つめのセッション、3の場合は2つめのセッション、4の場合は3つめのセッションにアプリケーション鍵を割り当てることを定めてもよい。これにより、特定のセッションに特に多くのアプリケーション鍵を利用させることも可能である。この場合、セッションに割り当てられるアプリケーション鍵の量の重みがセッションIDごとに異なる。この重みは、アプリケーションからのアプリケーション鍵の要求スループットに応じて決定されてもよい。
このようなルールがどのようなデータ表現でメッセージに含まれるかは特に定めないが、例えば(MOD3,0:session ID1,1:session ID2,2:session ID3)といった表現は最初に例示した場合のルールのデータ表現になり得るかもしれない。
以上により、セッションの新規追加に伴うアプリケーション鍵の割り当てが完了する。
なお、ノードベースのシグナリング処理およびセッションベースのシグナリング処理に係る通信は、全てノード間通信部101がノード間通信リンク10を介してノード間で行うものとして説明した。しかし、通信の形態はこれに限定されない。例えば、セッションベースのシグナリング処理におけるセッションID、ルール、鍵IDの情報に関して、ノード間通信リンク10とは別のネットワーク(例えばインターネット等)を介してノード間で交換しても良い。また、セッションベースのシグナリング処理における、開始や受信完了を示す識別子についても、ノード間通信リンク10とは別のネットワーク(例えばインターネット等)を介してノード間で交換しても良い。これに対し、アプリケーション鍵と、それを識別するために付与される鍵IDに関しては、必ずノード間通信部101がノード間通信リンク10を介して交換し、セキュリティを確保する必要がある。
<暗号通信終了処理>
図10および図11に暗号通信終了処理のフローチャートを示す。
まず、ノードAのアプリケーション通信部106は、クライアントアプリケーション200aから暗号通信の終了要求を受け取る。これに応じて、状態管理部104は、クライアントアプリケーション200aが終了する暗号通信に関するセッションの情報を登録する。
同期制御部103は、状態管理部104を参照し、暗号通信の終了要求を受けたセッションに対応するアプリケーションの鍵割り当てが既に開始されているか否かを確認する(ステップS20)。もし、開始されていないならば(ステップS20:NO)、何も行わないが、クライアントアプリケーション200aから暗号通信の終了の要求を受け付けたことがセッション終了の重複要求であるため、これをエラーとしてクライアントアプリケーション200aに通知しても良い(ステップS23)。
アプリケーションの鍵割り当てが既に開始されている場合(ステップS20:YES)、終了要求を受けたセッションを削除した新しいセッションベースのシグナリング処理を開始する(ステップS21)。
このセッションベースのシグナリング処理(ステップS22)においては、(1)削除するセッションID(session ID)を含むセッション終了シグナリングと、(2)新しいセッションベースの鍵割り当てのルールと、(3)旧ルール下での各セッションの最後のアプリケーション鍵(App Key)の鍵ID(Key ID)とを対象ノードに送信する(ステップS22−1)。これに応じて、新ルール下での各セッションの最初のアプリケーション鍵(App Key)の鍵ID(Key ID)を含むAck(確認応答)を対象ノードから受信する(ステップS22−2)。
ノードAとノードBとの間では、当然、アプリケーションに提供したアプリケーション鍵の量が異なっている可能性が考えられる。しかし、ノードAは、旧ルール下でどこまでのアプリケーション鍵をクライアントアプリケーション200aに提供したかをノードBに通知する(メッセージ34)。これを受信したノードBは、自身が旧ルール下でどこまでのアプリケーション鍵をサーバアプリケーション200bに提供したかについての情報と比較する。そして、両者のうち、いずれかより多くのアプリケーション鍵を提供している方が使った最後のアプリケーション鍵より以前のアプリケーション鍵は旧ルールの下で提供し、あるいは廃棄し、それよりも新しいアプリケーション鍵を、新ルールの下で各セッションが使用する鍵として選定してノードAに通知(メッセージ35)すれば、鍵の同期の観点から、「ずれ」は生じない。
以上により、セッション削除後の各セッションに対する鍵割り当てのルールが決定され、ノード間で合意される。この決定された鍵割り当てのルールは、状態管理部104に格納される。ただし、後述するように、該当セッションの削除により対象ノードとの間のセッションが全て無くなる場合には、以後のアプリケーション鍵の割り当て(新ルール)を決定する必要は無い。
ステップS24において、同期制御部103は状態管理部104を参照し、終了要求を受けたセッションに対応する対象ノードとの間に、現時点でセッションが1つ以上存在しているか否かを確認する(ステップS24)。
もし、1つ以上セッションが残っていれば、特に何もせずに処理を終了する(ステップS24:YES)。ここで、セッションが残っているということは、対象ノードとの間で、ノードベースのシグナリング処理のシーケンス(図7のステップS6)が継続中であることに注意しなければならない。ここで、特に何もせずに処理を終了するのではなく、ノードベースのシグナリング処理のシーケンスを実行して、ノードベース鍵割り当ての速度を遅くし(送信レートを下げる)、無駄となる可能性の高いアプリケーション鍵共有を抑制しても良い(ステップS32)。
一方、暗号通信の終了要求を受けたセッションに対応する対象ノードとの間に現時点でセッションが1つも存在しなかった場合(ステップS24:NO)、同期制御部103は、状態管理部104を参照し、対象ノードとの間でノードベースの鍵割り当てが実施されているか否かを確認する(ステップS25)。もし、実施されていなければロジックエラーとして処理を終了してもよい(ステップS30)。実施されていれば、この対象ノードとの間のノードベースの鍵割り当てを終了するよう指示する(ステップS26)。具体的には、対象ノードとの間のアプリケーション鍵交換を終了するためのノードベースのシグナリング処理を実行する(ステップS27)。このノードベースのシグナリング処理では、(1)終了のシグナリングおよび(2)利用した最後のアプリケーション鍵の鍵ID(Key ID)を対象ノードに送信し(ステップS27−1)、対象ノードが破棄する最後のアプリケーション鍵の鍵ID(Key ID)を含むAck(確認応答)を対象ノードから受信する(ステップS27−2)。そして、対象ノードに対するアプリケーション鍵およびその鍵ID(App Key+Key ID)の送信を終了する(ステップS28)。
次に、同期制御部103は、状態管理部104を参照し、現時点で1つ以上のノードとの間でノードベースの鍵割り当てが実施されているか否かを確認する(ステップS29)。もし、実施されていなければ(ステップS29:NO)、アプリケーション鍵交換が全く行われていないため、アプリケーション鍵生成を終了するように指示する(ステップS31)。
図12に、暗号通信終了時のセッションベースのシグナリング処理およびノードベースのシグナリング処理のシーケンスを示す。暗号通信の終了時では、セッションベースのシグナリング処理とノードベースのシグナリング処理が実行される順番が暗号通信の開始時とは異なる。セッションベースのシグナリング処理は、図10のステップS22で実行されるノード間の通信処理である。ノードベースのシグナリング処理は、図11のステップS27で実行されるノード間の通信処理である。
セッションベースのシグナリング処理は、暗号通信の開始時とほぼ同様である。異なる点は以下の通りである。最初に送付するメッセージ34に、セッションの削除を示す旨の識別子(Stop)が含まれること、追加するセッションの識別子に代えて削除対象のセッションの識別子(session ID)、が含まれることである。
新ルールの定義は、対象のセッションが削除された後の、全てのセッションにそれぞれ割り当てて利用するためのルールとなり、旧ルールの定義は、該当セッションが削除される以前に存在した全てのセッションに、アプリケーション鍵をそれぞれ割り当てていたルールとなることである。
図12におけるメッセージ35は、図9における暗号通信の開始時のメッセージ33と同様である。
暗号通信の終了時ノードベースのシグナリング処理では、ノードAが、ノードベースのシグナリング処理を終了する旨を示す識別子(Stop)を含むメッセージを送信する。これを受信したノードBは、受信完了した旨を示す識別子(Ack)を含むメッセージを送信し、ノードAが受信する。
ただし、対象ノードとの間でアプリケーション鍵の交換を再開するためのノードベースのシグナリング処理を行う際に、以前に交換していたアプリケーション鍵を再利用し、交換したアプリケーション鍵(およびその際に使用された通信帯域)を有効活用するため、次のメッセージにデータを含める。最初のメッセージ36には、ノードAが利用した最後の(最新の)アプリケーション鍵の鍵IDを含める。ノードBが応答するメッセージ37には、ノードBが利用した最後の(最新の)アプリケーション鍵の鍵IDと比較し、より新しいものを選択し、ここまでの鍵をノードAとノードBとの両者で廃棄する(使用した/アプリケーションに提供したことにする)ことを確認するために必要な、廃棄する最後のアプリケーション鍵の鍵IDを含める。つまり、この処理によって、次に、同一のノード間でアプリケーション鍵の交換を再開した場合、ここで交換した鍵ID以降のアプリケーション鍵は、既に共有済みであり、且つ未使用のアプリケーション鍵であるとして、アプリケーション(セッション)にて利用・提供できる。これは、既に交換したアプリケーション鍵の有効利用となる。
次に、本実施形態を実現する、各ノードにおけるアプリケーション鍵の管理方法・割り当て方法(鍵管理アーキテクチャ)について、図13を用いて説明する。同図は、ノードが生成したアプリケーション鍵、ノードが受信したアプリケーション鍵が、それぞれどのように管理されてゆくかを図示したものである。
図13に示すように、本実施形態におけるノードの鍵管理アーキテクチャは、4つの階層(鍵生成層(Key-gen), ノードベース鍵割り当て・シグナリング層, セッションベース鍵割り当て・シグナリング層, 鍵ストリームインタフェース層)で構成される。
なお、図13は、鍵割り当ておよびセッションの進捗に沿ってアプリケーション鍵が様々なデータとして捉えられることを意味しているのみであり、実際にアプリケーション鍵が何度もコピーされて運用されることを意味しているのでは無いことに注意されたい。
アプリケーション鍵間の矢印は、これらのアプリケーション鍵が異なる層で異なるとらえ方をされることを意味するだけであり、例えば、データベースにおける付与番号を変更したり、あるいは、データベースへのアクセス方法を単に変更したりといった、関連付けの変更のみで実現可能である。
ここでは、自身が生成するアプリケーション鍵をOUT鍵、受信するアプリケーション鍵をIN鍵として区別して管理している。OUT鍵とは、アプリケーションの暗号通信において、データの送信の際に用いる暗号化のために使うアプリケーション鍵のことである。IN鍵とは、アプリケーションの暗号通信において、データの受信の際に用いる復号化のために使うアプリケーション鍵のことである。OUT鍵とIN鍵をそれぞれ、生成したアプリケーション鍵と受信したアプリケーション鍵として対応付けるのはあくまで一例である。以下の説明ではこの例を用いることとするが、その他の対応付けも可能である。例えば、単純に逆に対応付けても構わないし、常に一方のノードでのみ鍵の生成を行い、上述の鍵の割り当て処理や鍵ID割り当てにおいて、どのIDを持つアプリケーション鍵がIN鍵・OUT鍵かを別途決定するような方式もありえる。さらに、アプリケーション鍵に対するIDの付け方についても、ここでは詳しく言及しない。OUT鍵については、アプリケーション鍵の生成時に鍵IDも同時に生成するようにしており、IN鍵については、アプリケーション鍵を受信する際に鍵IDも同時に受信するようにしている。
ただし、アプリケーション鍵に割り当てられる鍵IDには何通りかの種類が存在しても良い。例えば後述するように、生成時には、生成順に連番になる鍵IDが、ノードに割り当てられた際にはノード毎に連番になる鍵IDが、ノードにおけるセッションに割り当てられた際にはセッション毎に連番になる鍵IDが、それぞれ別の種類の鍵IDとして割り当てられても良い。
まず、鍵生成層(Key-gen)について説明する。鍵生成層(Key-gen)は、一般的な乱数生成器と、その鍵をアプリケーション鍵として格納するものとして構成される。
次に、ノードベース鍵割り当て・シグナリング層について説明する。
鍵生成処理50において生成されたアプリケーション鍵(Key Block:OUT鍵)は、ノードベースのシグナリング処理51によって、宛先となるノード毎に適当に分割され、ノードで閉じた範囲でユニークな連番となるような鍵IDが付与される。このアプリケーション鍵の単位が宛先ノードに送信され、共有される。
ノードベースのシグナリング処理51によって受信したアプリケーション鍵(IN鍵)も、同様に送信元となるノード毎に別々に管理される。受信したアプリケーション鍵(Key Block)には、あらかじめ鍵ID(送信元となるノードに閉じた範囲でユニークな連番となるもの)が与えられている。
次に、セッションベース鍵割り当て・シグナリング層について説明する。
セッションベースのシグナリング処理52によって、ノード毎に割り当てられたアプリケーション鍵(IN鍵およびOUT鍵とも)は、セッション毎に分割され、セッションが識別可能な形で管理されても良い。ただし、セッションへの割り当ては、アプリケーションによる暗号通信の終了や新規開始等を契機とした、セッションベースのシグナリング処理52によって、変更され得る。
セッション毎に連番の鍵IDを必ずしも付与する必要は無い。例えば、各セッションに割り当てられたアプリケーション鍵に、順番にアクセス可能なアクセス方法が与えられても良い。一例として、ノード毎に割り当てられた連番の鍵IDに対して、セッションP(0,1,2)は、3N+PにおいてNを順番に1つづつ大きくしていくことでアクセスする、等があり得る(上記例は、セッション数が3の場合を想定)。
最後に、鍵ストリームインタフェース層について説明する。
実際にアプリケーションに提供されるアプリケーション鍵は、上述のセッションベースのシグナリング処理52によって決定した割り当てルールによって求められる一つのアプリケーション鍵である。ただし、アプリケーションは、アプリケーション鍵のサイズをそのまま取り扱うことは考えにくい。より小さいサイズ(あるいは可変長サイズ)で、アプリケーションが鍵を要求してくる度に提供することになる。そのため、各セッション毎に、選択されたアプリケーション鍵を2つ格納可能なバッファ領域を用意しておき、アプリケーション鍵をここにコピーし、サイクリックに使ってゆく。アプリケーション鍵が一つ分無くなりそうであれば、もう一つ補充してバッファを埋めてゆく(鍵ストリームインタフェース処理53)。このようにバッファを活用することで、アプリケーションへ鍵を提供する際の時間的遅延を削減することができる。
以下、実施形態の変形例を幾つか説明する。
本実施形態において、ノード間ではアプリケーション鍵そのものに加え、制御データ(鍵ID、セッションID等の識別子)が交換されるが、リンク鍵を用いたノード間の暗号通信において必須であるのは、アプリケーション鍵のみである。そのため、例えばセッションベースのシグナリング処理における通信や、ノードベースのシグナリング処理における終了時シーケンス等をノード間でやりとりする際に必ずしも暗号化しなくて良い。このため、上記制御データの交換時には、単純にリンク鍵を使わないノード間通信を行なうという実現方法も可能な他、(リンク鍵を用いた暗号通信を常に行なう)暗号通信ネットワークから独立した、非暗号化の通信経路をノード間に別途作成し、これを用いてノード間の制御データ交換を行なわせる実現方法も可能である。あるいは、制御データに関して、暗号化は行わず、(リンク鍵を用いて)データ認証のみを行なうように構成しても良い。
また、特にアプリケーション鍵のサイズについて言及しなかったが、一般的にはシステムにおいて一意な固定長(例えば1MByte等)の鍵を利用する。
また、アプリケーション鍵の交換を含む全てのシグナリングの通信は、その信頼性が保証されるトランスポート上で行われることを想定している。例えば、TCP/IP上でシグナリングを実行することは一例である。シグナリングそのものにおいても、Ack(到達確認)メッセージを交換することで、相手ノードの受信確認を確認することができる。ただし、TCP/IPのようなトランスポート上でシグナリングを実行していても、TCPエラー(ソケットエラー・タイムアウト)等が発生する可能性がある。このような場合、以下のように対応し、復帰を試みてもよい。
1.ノードにおいて、TCPエラーを検出する。
2.現在のセッション(接続しているアプリケーション)情報を保存する。
3.検出ノードは、ノードベースのシグナリング処理(終了時)をTCPエラーの対象となった通信の相手であるノードとの間で実行して、ノード間で既に共有しているアプリケーション鍵をリセットする。
4.保存してある現在のセッションを元にして、再度、ノードベースのシグナリング処理(開始時)と、必要な数のセッションベースのシグナリング処理を実行する。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100a〜d…ノード、
200a,b…アプリケーション、
300a〜c…ノード間リンク、
400…アプリケーション間リンク、
101…ノード間通信部、
102…アプリケーション鍵の生成部、
103…アプリケーション鍵の同期制御部、
104…状態管理部、
105…アプリケーション鍵の保持部、
106…アプリケーション通信部、
107…ノードプラットホーム、
201…鍵取得部、
202…アプリケーション間通信部、
203…アプリケーション実行部、
204…アプリケーションプラットホーム

Claims (10)

  1. 相手ノードとのアプリケーション鍵の交換を開始または終了するノードベースのシグナリング処理と、前記相手ノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記相手ノードと同期するセッションベースのシグナリング処理とに基づいて前記アプリケーション鍵の同期を制御する鍵同期制御部と、
    前記セッションを持つアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供するアプリケーション通信部と、
    を具備する通信ノード。
  2. 前記鍵同期制御部は、
    前記セッションの開始時には、前記ノードベースのシグナリング処理を実行したのちに前記セッションベースのシグナリング処理を実行し、
    前記セッションの終了時には、前記セッションベースのシグナリング処理を実行したのちに前記ノードベースのシグナリング処理を実行する、請求項1記載の通信ノード。
  3. 前記鍵同期制御部は、前記セッションの追加および削除に応じて前記ルールの変更を行い、当該変更がなされたルールを前記相手ノードと同期する請求項1記載の通信ノード。
  4. 前記鍵同期制御部は、前記変更の前のルールに従い最後に用いられたアプリケーション鍵の鍵IDと、前記変更の後のルールに従い最初に用いられるアプリケーション鍵の鍵IDとを前記相手ノードと交換する請求項3記載の通信ノード。
  5. 前記ルールは、前記セッションに割り当てられる前記アプリケーション鍵の量の重みがセッションIDごとに異なることを表す請求項1記載の通信ノード。
  6. 前記相手ノードと共通に管理するセッションの数に応じて、該当ノードとの間で行なうアプリケーション鍵の交換に関する速度を変更する請求項1記載の通信ノード。
  7. 前記重みは、前記アプリケーションからの前記アプリケーション鍵の要求スループットに応じて決定される請求項5記載の通信ノード。
  8. 前記アプリケーション鍵は、量子暗号通信によって前記相手ノードと交換される請求項1記載の通信ノード。
  9. 相手ノードとのアプリケーション鍵の交換を開始または終了するノードベースのシグナリング処理と、前記相手ノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記相手ノードと同期するセッションベースのシグナリング処理とに基づいて前記アプリケーション鍵の同期を制御すること、
    前記セッションを持つアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供すること、
    を含む鍵同期方法。
  10. 第1の通信ノードと第2の通信ノードの間でアプリケーション鍵を同期する鍵同期システムであって、
    前記第1の通信ノードは、
    前記第2の通信ノードとのアプリケーション鍵の交換を開始または終了するノードベースのシグナリング処理と、前記第2のノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記第2のノードと同期するセッションベースのシグナリング処理とに基づいて前記アプリケーション鍵の同期を制御する鍵同期制御部と、
    前記セッションを持つ第1のアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供するアプリケーション通信部と、
    を具備し、
    前記第2の通信ノードは、
    前記第1の通信ノードとのアプリケーション鍵の交換を開始または終了するノードベースのシグナリング処理と、前記第1のノードと共有するセッションへの前記アプリケーション鍵の割り当てのルールを前記第1のノードと同期するセッションベースのシグナリング処理とに基づいて前記アプリケーション鍵の同期を制御する鍵同期制御部と、
    前記セッションを持つ第2のアプリケーションによる利用のために、前記ルールに従って前記アプリケーション鍵を提供するアプリケーション通信部と、
    を具備する鍵同期システム。
JP2012197825A 2012-09-07 2012-09-07 通信ノード、鍵同期方法、鍵同期システム Active JP5734934B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012197825A JP5734934B2 (ja) 2012-09-07 2012-09-07 通信ノード、鍵同期方法、鍵同期システム
CN201310395054.8A CN103684752A (zh) 2012-09-07 2013-09-03 通信节点、密钥同步方法及密钥同步系统
US14/018,800 US9083684B2 (en) 2012-09-07 2013-09-05 Communication node, key synchronization method, and key synchronization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012197825A JP5734934B2 (ja) 2012-09-07 2012-09-07 通信ノード、鍵同期方法、鍵同期システム

Publications (2)

Publication Number Publication Date
JP2014053816A true JP2014053816A (ja) 2014-03-20
JP5734934B2 JP5734934B2 (ja) 2015-06-17

Family

ID=50321151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012197825A Active JP5734934B2 (ja) 2012-09-07 2012-09-07 通信ノード、鍵同期方法、鍵同期システム

Country Status (3)

Country Link
US (1) US9083684B2 (ja)
JP (1) JP5734934B2 (ja)
CN (1) CN103684752A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016171530A (ja) * 2015-03-13 2016-09-23 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム
US9455827B2 (en) 2013-08-01 2016-09-27 Kabushiki Kaisha Toshiba Communication apparatus, computer program product, and communication system
US9755826B2 (en) 2015-03-24 2017-09-05 Kabushiki Kaisha Toshiba Quantum key distribution device, quantum key distribution system, and quantum key distribution method
US10291400B2 (en) 2016-03-14 2019-05-14 Kabushiki Kaisha Toshiba Quantum key distribution device, quantum key distribution system, and quantum key distribution method
JP2019195198A (ja) * 2019-06-12 2019-11-07 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10104522B2 (en) * 2015-07-02 2018-10-16 Gn Hearing A/S Hearing device and method of hearing device communication
US11424931B2 (en) * 2016-01-27 2022-08-23 Blackberry Limited Trusted execution environment
JP2018033079A (ja) 2016-08-26 2018-03-01 株式会社東芝 通信装置、通信システム及び通信方法
WO2019118218A1 (en) * 2017-12-12 2019-06-20 Rivetz Corp. Methods and systems for securing and recovering a user passphrase
US11457042B1 (en) 2018-02-27 2022-09-27 Wells Fargo Bank, N.A. Multi-tiered system for detecting and reducing unauthorized network access
US11025416B1 (en) 2018-03-09 2021-06-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US10812258B1 (en) 2018-03-09 2020-10-20 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US10855454B1 (en) 2018-03-09 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US11343087B1 (en) 2018-03-09 2022-05-24 Wells Fargo Bank, N.A. Systems and methods for server-side quantum session authentication
US10728029B1 (en) 2018-03-09 2020-07-28 Wells Fargo Bank, N.A. Systems and methods for multi-server quantum session authentication
US10855457B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10552120B1 (en) 2018-08-20 2020-02-04 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10540146B1 (en) 2018-08-20 2020-01-21 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US11190349B1 (en) 2018-08-20 2021-11-30 Wells Fargo Bank, N.A. Systems and methods for providing randomness-as-a-service
US11240013B1 (en) 2018-08-20 2022-02-01 Wells Fargo Bank, N.A. Systems and methods for passive quantum session authentication
US10855453B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for time-bin quantum session authentication
US11095439B1 (en) 2018-08-20 2021-08-17 Wells Fargo Bank, N.A. Systems and methods for centralized quantum session authentication
WO2020221612A1 (en) 2019-04-29 2020-11-05 Telefonaktiebolaget Lm Ericsson (Publ) Handling of multiple authentication procedures in 5g
CN113055535B (zh) * 2019-12-26 2022-06-24 中国电信股份有限公司 用于生成5g端到端话单的方法和系统
US11652619B2 (en) * 2021-03-15 2023-05-16 Evolutionq Inc. System and method for optimizing the routing of quantum key distribution (QKD) key material in a network

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63232539A (ja) * 1987-03-20 1988-09-28 Hitachi Ltd コ−ドブツク暗号システム
JPH11243388A (ja) * 1998-02-26 1999-09-07 Mitsubishi Electric Corp 暗号通信システム
JP2001007797A (ja) * 1999-06-21 2001-01-12 Mitsubishi Electric Corp 暗号通信システム
US20040184615A1 (en) * 2003-03-21 2004-09-23 Elliott Brig Barnum Systems and methods for arbitrating quantum cryptographic shared secrets
US20060062392A1 (en) * 2004-07-08 2006-03-23 Magiq Technologies, Inc. Key manager for QKD networks
US7515716B1 (en) * 2004-02-26 2009-04-07 Bbn Technologies Corp. Systems and methods for reserving cryptographic key material
WO2012025987A1 (ja) * 2010-08-24 2012-03-01 三菱電機株式会社 通信端末、通信システム、通信方法及び通信プログラム
WO2012044855A2 (en) * 2010-09-30 2012-04-05 Los Alamos National Security, Llc Secure multi-party communication with quantum key distribution managed by trusted authority
JP2013201537A (ja) * 2012-03-23 2013-10-03 Toshiba Corp 鍵生成装置および鍵生成方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6810405B1 (en) * 1998-08-18 2004-10-26 Starfish Software, Inc. System and methods for synchronizing data between multiple datasets
US20020078243A1 (en) * 2000-12-15 2002-06-20 International Business Machines Corporation Method and apparatus for time synchronization in a network data processing system
US20060018475A1 (en) * 2003-02-07 2006-01-26 Magiq Technologies, Inc. Kd systems with robust timing
US7890758B2 (en) * 2003-03-27 2011-02-15 International Business Machines Corporation Apparatus and method for generating keys in a network computing environment
JP4304298B2 (ja) * 2004-02-13 2009-07-29 日本電気株式会社 通信システム及びその同期方法
JP5424008B2 (ja) 2006-12-19 2014-02-26 日本電気株式会社 共有情報の管理方法およびシステム
US20090037492A1 (en) * 2007-07-31 2009-02-05 Ahmad Baitalmal Framework for Synchronizing Applications

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63232539A (ja) * 1987-03-20 1988-09-28 Hitachi Ltd コ−ドブツク暗号システム
JPH11243388A (ja) * 1998-02-26 1999-09-07 Mitsubishi Electric Corp 暗号通信システム
JP2001007797A (ja) * 1999-06-21 2001-01-12 Mitsubishi Electric Corp 暗号通信システム
US20040184615A1 (en) * 2003-03-21 2004-09-23 Elliott Brig Barnum Systems and methods for arbitrating quantum cryptographic shared secrets
US7515716B1 (en) * 2004-02-26 2009-04-07 Bbn Technologies Corp. Systems and methods for reserving cryptographic key material
US20060062392A1 (en) * 2004-07-08 2006-03-23 Magiq Technologies, Inc. Key manager for QKD networks
WO2012025987A1 (ja) * 2010-08-24 2012-03-01 三菱電機株式会社 通信端末、通信システム、通信方法及び通信プログラム
WO2012044855A2 (en) * 2010-09-30 2012-04-05 Los Alamos National Security, Llc Secure multi-party communication with quantum key distribution managed by trusted authority
JP2013201537A (ja) * 2012-03-23 2013-10-03 Toshiba Corp 鍵生成装置および鍵生成方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNH201200052004; 長谷川俊夫,他: '高信頼量子暗号装置と量子鍵配送を用いたワンタイムパッド携帯電話ソフトウェア' 三菱電機技報 Vol. 86,No. 7, 20120725, pp. 16-20, 三菱電機エンジニアリング株式会社 *
CSNJ201210023139; 谷澤佳道,他: '量子鍵配送技術をモチーフとしたセキュアネットワークの一提案' 2012年電子情報通信学会通信ソサイエティ大会論文集2 , 20120828, p. 139, 一般社団法人電子情報通信学会 *
JPN6014032982; 谷澤佳道,他: '量子鍵配送技術をモチーフとしたセキュアネットワークの一提案' 2012年電子情報通信学会通信ソサイエティ大会論文集2 , 20120828, p. 139, 一般社団法人電子情報通信学会 *
JPN6014032985; 長谷川俊夫,他: '高信頼量子暗号装置と量子鍵配送を用いたワンタイムパッド携帯電話ソフトウェア' 三菱電機技報 Vol. 86,No. 7, 20120725, pp. 16-20, 三菱電機エンジニアリング株式会社 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9455827B2 (en) 2013-08-01 2016-09-27 Kabushiki Kaisha Toshiba Communication apparatus, computer program product, and communication system
JP2016171530A (ja) * 2015-03-13 2016-09-23 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム
US9755828B2 (en) 2015-03-13 2017-09-05 Kabushiki Kaisha Toshiba Communication device, communication method, computer program product, and communication system
US9755826B2 (en) 2015-03-24 2017-09-05 Kabushiki Kaisha Toshiba Quantum key distribution device, quantum key distribution system, and quantum key distribution method
US10291400B2 (en) 2016-03-14 2019-05-14 Kabushiki Kaisha Toshiba Quantum key distribution device, quantum key distribution system, and quantum key distribution method
JP2019195198A (ja) * 2019-06-12 2019-11-07 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム
JP2022031361A (ja) * 2019-06-12 2022-02-18 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム

Also Published As

Publication number Publication date
US20140181522A1 (en) 2014-06-26
JP5734934B2 (ja) 2015-06-17
CN103684752A (zh) 2014-03-26
US9083684B2 (en) 2015-07-14

Similar Documents

Publication Publication Date Title
JP5734934B2 (ja) 通信ノード、鍵同期方法、鍵同期システム
KR101593864B1 (ko) 컨텐츠 중심 네트워킹
CN110581763B (zh) 一种量子密钥服务区块链网络系统
JP5634427B2 (ja) 鍵生成装置、鍵生成方法およびプログラム
TWI714270B (zh) 在用戶和可信計算群集之間建立可信通道的方法及裝置
US20140023192A1 (en) Communication device, communication method, and communication system
JP2016051921A (ja) 通信システム
JP2016171530A (ja) 通信装置、通信方法、プログラムおよび通信システム
CN115174061A (zh) 基于区块链中继通信网络系统的消息传输方法及装置
CN114285555A (zh) 基于区块链的组播方法及装置
CN113612612A (zh) 一种数据加密传输方法、系统、设备及存储介质
JP2014068313A (ja) 通信方法、アプリケーション装置、プログラム及び通信システム
US11652619B2 (en) System and method for optimizing the routing of quantum key distribution (QKD) key material in a network
CN113452514B (zh) 密钥分发方法、装置和系统
US11652620B2 (en) System and method for proactively buffering quantum key distribution (QKD) key material
JP5992578B2 (ja) 通信方法、アプリケーション装置、プログラム及び通信システム
KR102609406B1 (ko) Tls 프로토콜 기반 통신 장치 및 공유키 확장 방법
CN115473641B (zh) 可自动组网的量子加密通信方法和系统
KR102650733B1 (ko) 데이터 이름 기반의 정보 중심 인-네트워크 컴퓨팅을 위한 데이터 보호 방법 및 이를 이용한 시스템
WO2023160375A1 (zh) 会话秘钥生成方法、控制设备和设备集群系统
CN116805903A (zh) 一种密钥管理方法及相关装置
CN115967717A (zh) 基于中继集群的通信方法和装置
CN117527230A (zh) 一种密码机集群的密钥优化方法和系统
CN107707348A (zh) 获取密钥的方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141006

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150415

R151 Written notification of patent or utility model registration

Ref document number: 5734934

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151