JP2023150921A - ネットワーク制御装置 - Google Patents
ネットワーク制御装置 Download PDFInfo
- Publication number
- JP2023150921A JP2023150921A JP2022060274A JP2022060274A JP2023150921A JP 2023150921 A JP2023150921 A JP 2023150921A JP 2022060274 A JP2022060274 A JP 2022060274A JP 2022060274 A JP2022060274 A JP 2022060274A JP 2023150921 A JP2023150921 A JP 2023150921A
- Authority
- JP
- Japan
- Prior art keywords
- user
- node
- message
- network
- exclusive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 abstract description 47
- 238000000034 method Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 32
- 239000010410 layer Substances 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 7
- 230000001010 compromised effect Effects 0.000 description 7
- 239000002775 capsule Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 239000002346 layers by function Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- OKUGPJPKMAEJOE-UHFFFAOYSA-N S-propyl dipropylcarbamothioate Chemical compound CCCSC(=O)N(CCC)CCC OKUGPJPKMAEJOE-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000005610 quantum mechanics Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】秘匿通信網を利用する複数のユーザがメッセージの共有を効率的に行うことができるようにする。【解決手段】複数のユーザノードと、ハブノードと、前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクとを備えたネットワークにおけるネットワーク制御装置100は、第1指示部110と第2指示部120とを備える。第1指示部は、各ユーザノードに対し当該ユーザノードが保有するメッセージを、リンクに割り当てられた鍵により暗号化してなる暗号文を前記ハブノードへ送信するよう指示し、前記第2指示部は、前記ハブノードに、前記複数のユーザノードから受信した複数の前記暗号文を前記鍵により復号し、取得された複数の前記メッセージのうち、2つ以上の前記メッセージの組み合わせを定め、前記組み合わせに係るメッセージの排他的論理和を計算し排他的論理和を各ユーザノードへ送信するよう指示する。【選択図】図12
Description
本発明はネットワーク制御装置に関する。
クラウドサービスや高速移動通信技術の進展により、インターネットの通信トラフィックは急速な増大を続けている。大容量の光ファイバーをはじめとするネットワーク設備の増強も進んでいるが、端末数や新たなサービス・アプリケーションは今後も増加の一途をたどると予想されることから、現在の延長線上でのインフラ強化では間に合わず、通信の方法そのものをより効率的なものへ変える必要がある。
また、機密性の高い情報の量も増えていることから、情報セキュリティの確保がますます求められている。通信効率の改善とともに、正規ユーザ以外の第3者への情報漏洩や不正なデータ改竄を防ぐ仕組みも求められる。
また、機密性の高い情報の量も増えていることから、情報セキュリティの確保がますます求められている。通信効率の改善とともに、正規ユーザ以外の第3者への情報漏洩や不正なデータ改竄を防ぐ仕組みも求められる。
ネットワーク上で効率よくマルチキャスト通信を行う方法として、中継ノードに集まった複数の情報を合成して別の情報に変換(符号化)してから転送する、いわゆるネットワーク符号化が知られている(非特許文献1及び2)。ネットワーク符号化は、通信トラフィックの急増を支える新たな技術として実用化が始まりつつある(非特許文献3)。
さらに、通信の安全性を確保する手法として、ネットワーク符号化に乱数による秘匿化を組み合わせたセキュアネットワーク符号化(非特許文献4~6)という技術の研究開発も進展している。
また、量子力学の原理を用いて完全秘匿通信を実現する手法として、量子鍵配送(Quantum Key Distribution, QKD)及びQKDで生成した鍵(対称的な秘密乱数列の対)をワンタイムパッドで用いる量子暗号がある。近年、量子暗号を用いた多地点間での秘匿通信や秘密分散保管などの暗号アプリケーションを提供するための量子暗号通信ネットワークの実用化が始まっている(非特許文献7~9)。
さらに、通信の安全性を確保する手法として、ネットワーク符号化に乱数による秘匿化を組み合わせたセキュアネットワーク符号化(非特許文献4~6)という技術の研究開発も進展している。
また、量子力学の原理を用いて完全秘匿通信を実現する手法として、量子鍵配送(Quantum Key Distribution, QKD)及びQKDで生成した鍵(対称的な秘密乱数列の対)をワンタイムパッドで用いる量子暗号がある。近年、量子暗号を用いた多地点間での秘匿通信や秘密分散保管などの暗号アプリケーションを提供するための量子暗号通信ネットワークの実用化が始まっている(非特許文献7~9)。
R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, "Network information flow," IEEE Trans. Inf. Theory, vol. 46, no. 4, pp. 1204-1216, Jul. 2000.
S.-Y. R. Li, R. W. Yeung, and N. Cai, "Linear network coding," IEEE Trans. Inf. Theory, vol. 49, no. 2, pp. 371-381, Feb. 2003.
S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard, J. Crowcroft, "XORs in The Air: Practical Wireless Network Coding,"SIGCOMM’06, September 11-15, 2006, Pisa, Italy.
N. Cai and R. W. Yeung, "Secure network coding," in Proc. IEEE Int. Symp. Inf. Theory, Lausanne, Switzerland, Jun. 30-Jul. 5, 2002, p. 323.
D. Silva and F. R. Kschischang, "Universal secure network coding via rank-metric codes," IEEE Trans. Inf. Theory, vol. 57, no.2, pp.1124-1135 (2011).
H. Yao, D. Silva, S. Jaggi, and M. Langberg, "Network Codes Resilient to Jamming and Eavesdropping," IEEE/ACM Trans. Networking, vol. 22, no. 6, pp.1978-1987 (2014).
M. Peev, et al., New J. Phys. 11, 075001, 2009.
M. Sasaki, et al., Opt. Express 19, pp. 10387-10409, 2011.
Y. L. Tang, et al., Phys. Rev. X 6(1) 011024, 2016.
量子暗号通信ネットワークなどの秘匿通信網における秘密乱数列は貴重な鍵資源である。秘匿通信網を利用する複数のユーザがマルチキャストによりメッセージの共有を行う場合、メッセージのワンタイムパッド化や事前のグループ鍵の共有のために多くの鍵が消費される。ユーザ数が増えると、鍵の消費量が急激に増加するため、秘密乱数列の生成が追い付かず、秘匿通信サービスの提供能力を制限してしまうという問題がある。
本発明は、このような状況に鑑みてなされたものであって、秘匿通信網を利用する複数のユーザがメッセージの共有を効率的に行うことができるようにすることを目的とする。
上記目的を達成するために、複数のユーザノードと、ハブノードと、前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクとを備えたネットワークにおけるネットワーク制御装置は、前記ユーザノードに指示を行う第1指示部と、前記ハブノードに指示を行う第2指示部とを備える。前記第1指示部は、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記ハブノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記ハブノードへ送信するステップを行うよう指示する。前記第2指示部は、前記ハブノードに対し、前記複数のユーザノードから受信した複数の前記暗号文を前記鍵により復号し複数の前記メッセージを取得するステップと、取得された複数の前記メッセージのうち、2つ以上の前記メッセージの組み合わせを所定のルールに基づいて定め、前記組み合わせに係る前記2つ以上の前記メッセージの排他的論理和を計算するステップと、前記排他的論理和を前記複数のユーザノードの各々へ送信するステップとを行うよう指示する。前記第1指示部はさらに、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを用いて前記排他的論理和を復号するステップを行うよう指示する。
本発明によれば、秘匿通信網を利用する複数のユーザがメッセージの共有を効率的に行うことができるようになる。
以下、本発明を図示の実施の形態に基づいて説明する。ただし、本発明は、以下に説明する実施の形態によって限定されるものではない。
まず、本発明の発明者は、以下に述べるとおり鋭意検討を行った。
[1.量子鍵配送を利用した秘匿通信網]
ネットワーク上での通信の安全性確保の手法としては、現在、公開鍵暗号による認証と鍵交換、共通鍵暗号によるデータ通信の暗号化が標準的に使われている。これらの暗号技術は、解くのが難しい数学問題を用いることで、暗号鍵を知らない第三者に対して、暗号文からもとの情報を解読するために途方もない計算を必要とする状況を作り出し、実質的に盗聴や改竄が防止される。しかし、計算技術の進展とともに解読の危険性が高まるために、定期的に暗号鍵の長さを伸長したり、暗号方式を更新する必要がある。
これに対して、どんな計算機でも解読できない安全性(情報理論的安全性)を保証する方法も知られている。情報理論的安全性に基づく暗号方式は、暗号仕様の更新をすることなく、超長期間にわたり安全性を保証することが原理的に可能である。
ネットワーク上での通信の安全性確保の手法としては、現在、公開鍵暗号による認証と鍵交換、共通鍵暗号によるデータ通信の暗号化が標準的に使われている。これらの暗号技術は、解くのが難しい数学問題を用いることで、暗号鍵を知らない第三者に対して、暗号文からもとの情報を解読するために途方もない計算を必要とする状況を作り出し、実質的に盗聴や改竄が防止される。しかし、計算技術の進展とともに解読の危険性が高まるために、定期的に暗号鍵の長さを伸長したり、暗号方式を更新する必要がある。
これに対して、どんな計算機でも解読できない安全性(情報理論的安全性)を保証する方法も知られている。情報理論的安全性に基づく暗号方式は、暗号仕様の更新をすることなく、超長期間にわたり安全性を保証することが原理的に可能である。
情報理論的安全性を保証する代表的な方法として、量子鍵配送により共有した暗号鍵を用いて、ワンタイムパッド(One Time Pad, OTP)方式でデータ通信の暗号化を行う手法(量子暗号)が知られている。量子鍵配送(Quantum Key Distribution, QKD)は、光回線で結ばれた離れた2地点間で、情報理論的安全性を持った共通の乱数列(Kとする)を暗号鍵として共有する方法である。暗号化は、送信するメッセージ(Uとする)と、メッセージUと同じサイズの暗号鍵Kとを用意して論理和
により行う。暗号文Xは、通常の通信回線(量子鍵配送のための光回線とは別の回線)を経由して受信者に送られる。受信者は、受信した暗号文Xと手元にある暗号鍵Kとの論理和
により、メッセージUを復号する。一度使った暗号鍵Kは2度と使いまわさずに一回一回使い捨てること(ワンタイムパッド方式)により、情報理論的に安全な暗号通信を実現できる。なお、QKDで生成した暗号鍵K(対称的な乱数列の対)は、送信者、受信者において、第三者に漏れないように安全に管理する必要がある。そのように管理された各々の乱数列のことを特に秘密乱数列と呼ぶ。
2地点を結ぶ1対のQKDリンクシステムの鍵生成速度は、伝送距離の増加とともに減少し、通常の敷設光ファイバーでは50kmで数100kbps程度、100kmでは数kbps程度になる。そこで、複数の「信頼できる局舎(トラステッドノード)」を50~60kmの間隔で設け、各トラステッドノード内のQKD装置(QKDモジュール)を連接することで、広域ネットワークである量子鍵配送ネットワーク(Quantum Key Distribution Network, QKDN)が得られる。
各トラステッドノードには、QKDモジュールとは別に、鍵管理装置(鍵マネージャ:Key Manager, KM)というものを別途用意して、QKDモジュールで生成された暗号鍵をKMに転送し保管する。KMどうしは古典回線(KMリンク)で接続され、必要な時に暗号鍵のカプセルリレー(鍵リレー)を行うなど、暗号鍵の管理・運用を行う。
このようにして共有した暗号鍵は、既存の通信ネットワークや暗号インフラ(後述する図1におけるユーザネットワーク)に存在する様々な暗号アプリケーション、例えば、ワンタイムパッド(OTP)による完全秘匿通信や、共通鍵暗号、秘密分散保管などのアプリケーションへの鍵供給などに利用することができる。暗号鍵のカプセルリレーの経路制御やQKDN全体の管理などを行うために、QKDNコントローラおよびQKDNマネージャという機能エレメントが導入されている。QKDNと、暗号アプリケーションが実行されるユーザネットワークとを有するネットワークを、量子暗号通信ネットワークと呼ぶ。
各トラステッドノードには、QKDモジュールとは別に、鍵管理装置(鍵マネージャ:Key Manager, KM)というものを別途用意して、QKDモジュールで生成された暗号鍵をKMに転送し保管する。KMどうしは古典回線(KMリンク)で接続され、必要な時に暗号鍵のカプセルリレー(鍵リレー)を行うなど、暗号鍵の管理・運用を行う。
このようにして共有した暗号鍵は、既存の通信ネットワークや暗号インフラ(後述する図1におけるユーザネットワーク)に存在する様々な暗号アプリケーション、例えば、ワンタイムパッド(OTP)による完全秘匿通信や、共通鍵暗号、秘密分散保管などのアプリケーションへの鍵供給などに利用することができる。暗号鍵のカプセルリレーの経路制御やQKDN全体の管理などを行うために、QKDNコントローラおよびQKDNマネージャという機能エレメントが導入されている。QKDNと、暗号アプリケーションが実行されるユーザネットワークとを有するネットワークを、量子暗号通信ネットワークと呼ぶ。
図1に、量子暗号通信ネットワークNW1の概念的な構造を示す。量子暗号通信ネットワークNW1は、量子鍵配送ネットワークQKDN1とユーザネットワークUN1とを有する。量子鍵配送ネットワークQKDN1は、複数のトラステッドノードTNを有するとともに、4つの機能レイヤL1~L4を有する。
量子レイヤL1は、各トラステッドノード内のQKDモジュールQMを介して連接されたQKDリンクの集合である。QKDリンクは1対1のリンクである。或るQKDリンクにより、或るトラステッドノード内の1つのQKDモジュールと、別のトラステッドノード内の1つのQKDモジュールとが接続される。各QKDリンクは独立に暗号鍵を生成する。生成された暗号鍵は、当該トラステッドノード内の鍵マネージャKMに送られ管理・運用される。
鍵管理レイヤL2は、各トラステッドノード内の鍵マネージャKMと、鍵マネージャKMどうしを接続するKMリンクとを有する。鍵マネージャKMは、量子レイヤL1で生成された暗号鍵を蓄積し、OTP暗号化による鍵カプセルリレーにより必要なエンド・エンド間で暗号鍵を共有する。鍵マネージャKMは、ユーザネットワークUN1上の暗号アプリケーションへの暗号鍵の供給など鍵管理全般を担う。
QKDN制御レイヤL3は、QKDN全般のサービスの制御を行う1つ以上のQKDNコントローラCTを有する。レイヤL3は、複数のQKDNコントローラCTからなるネットワークであってもよい。
QKDN管理レイヤL4は、QKDNマネージャMG1を有する。QKDNマネージャMGは、レイヤL1~L3の各々からパフォーマンス情報を収集し、サービスが適切に稼働しているかを監視して、必要に応じて制御をQKDN制御レイヤL3へ命じる機能を持つ。
QKDN管理レイヤL4は、QKDNマネージャMG1を有する。QKDNマネージャMGは、レイヤL1~L3の各々からパフォーマンス情報を収集し、サービスが適切に稼働しているかを監視して、必要に応じて制御をQKDN制御レイヤL3へ命じる機能を持つ。
ユーザネットワークUN1は、複数のユーザ端末UDが存在する機能レイヤであるサービスレイヤL5と、ユーザネットワーク管理レイヤL6とを有する。サービスレイヤL5における複数のユーザ端末UDは、対応する鍵マネージャKMから供給された鍵及び暗号アプリケーションを用いて暗号化通信を行う。サービスレイヤL5は3つ以上のユーザ端末UDからなる多地点ネットワークであってもよい。ユーザネットワーク管理レイヤL6におけるネットワークマネージャMG2は、QKDNマネージャMG1との通信及びユーザ端末UDの管理を行う。
量子暗号通信ネットワークNW1の鍵管理レイヤL2やサービスレイヤL5は、秘匿通信網の一例となっている。すなわち、鍵管理レイヤL2においては、OTP暗号化による鍵カプセルリレーにより必要な2地点のKM間での対称暗号鍵の共有や、3地点以上のKM間でのグループ鍵の共有が行われる。また、サービスレイヤL5においては、鍵管理レイヤL2から供給された鍵を用いて、2地点間の秘匿通信や複数地点間での秘匿マルチキャスト通信等が行われる。
このような秘匿通信網において、各リンクを秘匿化する対称鍵として利用される秘密乱数列は、1回の使用に限って有効であるため、使用済の秘密乱数列は破棄されなくてはならない。こうして秘匿通信網を利用することで、多くの秘密乱数列が消費されるため、ネットワークの運用管理者は新たに多くの秘密乱数列を生成し対称鍵を補充しておく必要がある。秘密乱数列は貴重な鍵資源であるため、その効率的な利用方法を検討することが重要である。
[2.秘匿通信網を用いたマルチキャスト配信]
従来技術の課題を説明するために、上記の秘匿通信網を用いたマルチキャスト配信の一例を示す。図2A(A)に示すネットワークNW4Aは、典型的には上記のサービスレイヤL5の一例であり、4つのユーザノードA~DとハブノードHとを有する。あるいは、これらのノードを鍵マネージャKMに対応させると、ネットワークNW4Aは鍵管理レイヤL2の一例となる。ネットワークNW4Aにおいて、4つのユーザノードA~Dの各々とハブノードHとはリンクにより接続されている。また、ユーザノードAとユーザノードCとがリンクにより接続され、ユーザノードCとユーザノードBとがリンクにより接続され、ユーザノードBとユーザノードDとがリンクにより接続され、ユーザノードAとユーザノードDとがリンクにより接続されている。4つのユーザノードA~DにはそれぞれユーザUA~UDがそれぞれ関連付けられており、ハブノードHにはユーザが関連付けられていない。4名のユーザUA~UDにより一つのユーザグループが形成される。
ユーザノードA~DとハブノードHは、トラステッドノードとして実装、運用され、盗聴者はノード内にあるデータにはアクセスすることは極めて困難であると仮定する。その一方で、各ノードを結ぶリンクは、盗聴者のアクセスが可能であり、リンク上を流れる情報はすべて盗聴者の手に渡るものと仮定する。
ユーザUAがメッセージSAを保有し、ユーザUBがメッセージSBを保有し、ユーザUCがメッセージSCを保有し、ユーザUDがメッセージSDを保有している状態で、各ユーザは自ら保有するメッセージを他の3名のユーザにマルチキャスト配信する場合を想定した例である。
従来技術の課題を説明するために、上記の秘匿通信網を用いたマルチキャスト配信の一例を示す。図2A(A)に示すネットワークNW4Aは、典型的には上記のサービスレイヤL5の一例であり、4つのユーザノードA~DとハブノードHとを有する。あるいは、これらのノードを鍵マネージャKMに対応させると、ネットワークNW4Aは鍵管理レイヤL2の一例となる。ネットワークNW4Aにおいて、4つのユーザノードA~Dの各々とハブノードHとはリンクにより接続されている。また、ユーザノードAとユーザノードCとがリンクにより接続され、ユーザノードCとユーザノードBとがリンクにより接続され、ユーザノードBとユーザノードDとがリンクにより接続され、ユーザノードAとユーザノードDとがリンクにより接続されている。4つのユーザノードA~DにはそれぞれユーザUA~UDがそれぞれ関連付けられており、ハブノードHにはユーザが関連付けられていない。4名のユーザUA~UDにより一つのユーザグループが形成される。
ユーザノードA~DとハブノードHは、トラステッドノードとして実装、運用され、盗聴者はノード内にあるデータにはアクセスすることは極めて困難であると仮定する。その一方で、各ノードを結ぶリンクは、盗聴者のアクセスが可能であり、リンク上を流れる情報はすべて盗聴者の手に渡るものと仮定する。
ユーザUAがメッセージSAを保有し、ユーザUBがメッセージSBを保有し、ユーザUCがメッセージSCを保有し、ユーザUDがメッセージSDを保有している状態で、各ユーザは自ら保有するメッセージを他の3名のユーザにマルチキャスト配信する場合を想定した例である。
2つのノードを接続するリンクには、当該リンクを秘匿化するための秘密乱数列が対称鍵として用意されている。例えば、対称鍵(KAC)iは、ノードAとノードCとを接続するリンクACに用意された第i番目の秘密乱数列を意味している。対称鍵(KAD)i、(KBC)iなども同様である。
簡単のため、グループ鍵RではなくメッセージSA~SDを、対称鍵を用いて秘匿化し鍵リレーによって転送する場合を想定する。また、簡単のため、対称鍵の長さはメッセージと同じ長さとする。
鍵を節約するために、ユーザのいないハブノードHにはメッセージが配信されない。
簡単のため、グループ鍵RではなくメッセージSA~SDを、対称鍵を用いて秘匿化し鍵リレーによって転送する場合を想定する。また、簡単のため、対称鍵の長さはメッセージと同じ長さとする。
鍵を節約するために、ユーザのいないハブノードHにはメッセージが配信されない。
このとき、図2A(A)に示すように、ユーザノードAは、ユーザノードCに対し、自ら保有するメッセージSAと対称鍵(KAC)1との排他的論理和(バーナム暗号による暗号文)を送る。この排他的論理和を受信したユーザノードCは、対称鍵(KAC)1を用いた復号によりメッセージSAを得たのち、メッセージSAと対称鍵(KBC)1との排他的論理和をユーザノードBへ送る。この排他的論理和を受信したユーザノードBは、対称鍵(KBC)1を用いた復号によりメッセージSAを得る。
また、ユーザノードAは、ユーザノードDに対し、自ら保有するメッセージSAと対称鍵(KAD)1との排他的論理和を送る。この排他的論理和を受信したユーザノードDは、対称鍵(KAD)1を用いた復号によりメッセージSAを得る。
このようにして、メッセージSAがユーザノードAからユーザノードB、C及びDへマルチキャスト配信される。
同様にして、図2A(B)に示すように、メッセージSBがユーザノードBからユーザノードA、C及びDへマルチキャスト配信される。図2A(C)に示すように、メッセージSCがユーザノードCからユーザノードA、B及びDへマルチキャスト配信される。図2A(D)に示すように、メッセージSDがユーザノードDからユーザノードA、B及びCへマルチキャスト配信される。
また、ユーザノードAは、ユーザノードDに対し、自ら保有するメッセージSAと対称鍵(KAD)1との排他的論理和を送る。この排他的論理和を受信したユーザノードDは、対称鍵(KAD)1を用いた復号によりメッセージSAを得る。
このようにして、メッセージSAがユーザノードAからユーザノードB、C及びDへマルチキャスト配信される。
同様にして、図2A(B)に示すように、メッセージSBがユーザノードBからユーザノードA、C及びDへマルチキャスト配信される。図2A(C)に示すように、メッセージSCがユーザノードCからユーザノードA、B及びDへマルチキャスト配信される。図2A(D)に示すように、メッセージSDがユーザノードDからユーザノードA、B及びCへマルチキャスト配信される。
図2A(A)~(D)に示したように、一つのユーザノードが自ら保有するメッセージをマルチキャスト配信するにあたり、3個の鍵(秘密乱数列)が消費される。したがって、4つのユーザノードA~Dの各々によるマルチキャスト配信により、12個の鍵が消費される。このことを図2Bに示す。ユーザノード同士を結ぶ各リンクでは3個の鍵が消費される一方で、ユーザノードとハブノードとを接続するリンクにおいては秘密乱数列が消費されない。
図3(A)に示すネットワークNW6Aは、6つのユーザノードA~FとハブノードHとを有する。6つのユーザノードA~Fの各々とハブノードHとはリンクにより接続されている。また、ユーザノードAとユーザノードCとがリンクにより接続され、ユーザノードCとユーザノードEとがリンクにより接続され、ユーザノードEとユーザノードBとがリンクにより接続されている。また、ユーザノードBとユーザノードDとがリンクにより接続され、ユーザノードDとユーザノードFとがリンクにより接続され、ユーザノードFとユーザノードAとがリンクにより接続されている。6つのユーザノードA~FにはそれぞれユーザUA~UFがそれぞれ関連付けられており、ハブノードHにはユーザが関連付けられていない。6名のユーザUA~UFにより一つのユーザグループが形成される。
ユーザUAがメッセージSAを、ユーザUBがメッセージSBを、ユーザUCがメッセージSCを、ユーザUDがメッセージSDを、ユーザUEがメッセージSEを、ユーザUFがメッセージSFを保有している状態で、各ユーザは自ら保有するメッセージを他の5名のユーザにマルチキャスト配信する場合を想定した例である。
ユーザUAがメッセージSAを、ユーザUBがメッセージSBを、ユーザUCがメッセージSCを、ユーザUDがメッセージSDを、ユーザUEがメッセージSEを、ユーザUFがメッセージSFを保有している状態で、各ユーザは自ら保有するメッセージを他の5名のユーザにマルチキャスト配信する場合を想定した例である。
このとき、図3(A)に示すように、ユーザノードAは、ユーザノードCに対し、自ら保有するメッセージSAと対称鍵(KAC)1との排他的論理和を送る。この排他的論理和を受信したユーザノードCは、対称鍵(KAC)1を用いた復号によりメッセージSAを得たのち、メッセージSAと対称鍵(KEC)1との排他的論理和をユーザノードEへ送る。この排他的論理和を受信したユーザノードEは、対称鍵(KEC)1を用いた復号によりメッセージSAを得たのち、メッセージSAと対称鍵(KEB)1との排他的論理和をユーザノードBへ送る。この排他的論理和を受信したユーザノードBは、対称鍵(KEB)1を用いた復号によりメッセージSAを得る。
また、ユーザノードAは、ユーザノードFに対し、自ら保有するメッセージSAと対称鍵(KAF)1との排他的論理和を送る。この排他的論理和を受信したユーザノードFは、対称鍵(KAF)1を用いた復号によりメッセージSAを得たのち、メッセージSAと対称鍵(KFD)1との排他的論理和をユーザノードDへ送る。この排他的論理和を受信したユーザノードDは、対称鍵(KFD)1を用いた復号によりメッセージSAを得る。
このようにして、メッセージSAがユーザノードAからユーザノードB~Fへマルチキャスト配信される。
同様にして、図3(B)に示すように、メッセージSBがユーザノードBから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(C)に示すように、メッセージSCがユーザノードCから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(D)に示すように、メッセージSDがユーザノードDから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(E)に示すように、メッセージSEがユーザノードEから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(F)に示すように、メッセージSFがユーザノードFから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。
また、ユーザノードAは、ユーザノードFに対し、自ら保有するメッセージSAと対称鍵(KAF)1との排他的論理和を送る。この排他的論理和を受信したユーザノードFは、対称鍵(KAF)1を用いた復号によりメッセージSAを得たのち、メッセージSAと対称鍵(KFD)1との排他的論理和をユーザノードDへ送る。この排他的論理和を受信したユーザノードDは、対称鍵(KFD)1を用いた復号によりメッセージSAを得る。
このようにして、メッセージSAがユーザノードAからユーザノードB~Fへマルチキャスト配信される。
同様にして、図3(B)に示すように、メッセージSBがユーザノードBから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(C)に示すように、メッセージSCがユーザノードCから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(D)に示すように、メッセージSDがユーザノードDから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(E)に示すように、メッセージSEがユーザノードEから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。図3(F)に示すように、メッセージSFがユーザノードFから、当該ユーザノードを除く5つのユーザノードへマルチキャスト配信される。
図3(A)~(F)に示したように、一つのユーザノードが自ら保有するメッセージをマルチキャスト配信するにあたり、5個の鍵(秘密乱数列)が消費される。したがって、6つのユーザノードA~Fの各々によるマルチキャスト配信により、30個の鍵が消費される。このことを図3(G)に示す。ユーザノード同士を結ぶ各リンクでは5個の鍵が消費される一方で、ユーザノードとハブノードとを接続するリンクにおいては秘密乱数列が消費されない。
これまでに述べたように、4つのユーザノードを有するネットワークNW4Aにおいて、4×(4-1)=12個の鍵が消費される。6つのユーザノードを有するネットワークNW6Aにおいては、6×(6-1)=30個の鍵が消費される。
n個のユーザノードを有するネットワークにおいて各ユーザノードがマルチキャスト配信を行う場合、少なくともn×(n-1)個すなわちn2個程度の、比較的大量の鍵(秘密乱数列)が消費されることとなる。このように、従来技術の方法では、ユーザノード数nが増えると、鍵(秘密乱数列)の消費量が指数関数的に増加する。鍵が大量に消費されるため、秘匿通信網の可用性が大きく損なわれてしまうという問題がある。
n個のユーザノードを有するネットワークにおいて各ユーザノードがマルチキャスト配信を行う場合、少なくともn×(n-1)個すなわちn2個程度の、比較的大量の鍵(秘密乱数列)が消費されることとなる。このように、従来技術の方法では、ユーザノード数nが増えると、鍵(秘密乱数列)の消費量が指数関数的に増加する。鍵が大量に消費されるため、秘匿通信網の可用性が大きく損なわれてしまうという問題がある。
このような問題に対処すべく、以下に述べる実施形態では、秘匿通信網を用いて情報共有のためのマルチキャスト配信を行うときに、以下の2つの手法を用いる。各手法を単独で用いてもよいし、両手法を組み合わせて用いてもよい。なお、説明を簡単にするため、ユーザノード数nを4とし、マルチキャスト配信されるメッセージの数を4とする。
1つ目の手法は、4つのメッセージ(SA、SB、SC、SD)の共有を、異なる時刻で個別に実行するのではなく、同じ時刻に一括して実行することである。メッセージとは異なり、グループ鍵を配送する時刻は任意に設定できるため、一括処理が可能である。
2つ目の手法は、複数のメッセージの排他的論理和、例えば
あるいは
等の値を計算し、これらの値をノード間のリンク(公開通信路)を通じて伝えることである。一般に、個々のデータを個別に送る代わりに、データ同士の排他的論理和を送ることで、全体の伝送効率を改善する方法をネットワーク符号化と呼んでいる。
1つ目の手法は、4つのメッセージ(SA、SB、SC、SD)の共有を、異なる時刻で個別に実行するのではなく、同じ時刻に一括して実行することである。メッセージとは異なり、グループ鍵を配送する時刻は任意に設定できるため、一括処理が可能である。
2つ目の手法は、複数のメッセージの排他的論理和、例えば
複数のメッセージの共有を同時に行うことにより、このような異なるメッセージ同士の演算に実質的な意味を持たせることができる。さらに、排他的論理和の演算対象となる複数のメッセージの各々は他のメッセージを相互に秘匿化しているため、RやR1等の、排他的論理和の結果が漏洩したとしても、各メッセージは秘匿化されたままとなる。そこで、共有の対象となる各メッセージを、鍵を用いて秘匿化し伝送するのではなく、複数のメッセージの排他的論理和の結果を伝送することで、各メッセージに秘匿状態を保ちつつ鍵の消費量を減らすことができる。
[実施形態]
ユーザノード数nを4とし、共有しようとするメッセージの数を4とする例を説明する。
ユーザノード数nを4とし、共有しようとするメッセージの数を4とする例を説明する。
[4人の第1の例]
図4A(A)にネットワークNW41を示す。このネットワークは、ネットワークNW4Aと同様のトポロジーである。ユーザノードA、B、C、Dの各々は、各自が保有するメッセージ(あるいはグループ鍵(グループ内で将来的に使用される鍵))RA、RB、RC、RDを、各リンクにあてがわれた鍵(秘密乱数列)KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。そのほか、ユーザノードA、Cは自ら保有するメッセージRA、RCを、鍵(KAC)1、(KAC)2を用いて秘匿化した後、互いに相手C/Aに送付する。ユーザBとDも同様である。
図4A(A)にネットワークNW41を示す。このネットワークは、ネットワークNW4Aと同様のトポロジーである。ユーザノードA、B、C、Dの各々は、各自が保有するメッセージ(あるいはグループ鍵(グループ内で将来的に使用される鍵))RA、RB、RC、RDを、各リンクにあてがわれた鍵(秘密乱数列)KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。そのほか、ユーザノードA、Cは自ら保有するメッセージRA、RCを、鍵(KAC)1、(KAC)2を用いて秘匿化した後、互いに相手C/Aに送付する。ユーザBとDも同様である。
具体的には、図4A(A)に示すように、ユーザノードAは、自ら保有するメッセージRAと鍵(KHA)1との排他的論理和をハブノードHに送るとともに、メッセージRAと鍵(KAC)1との排他的論理和をユーザノードCに送る。
図4A(B)に示すように、ユーザノードBは、自ら保有するメッセージRBと鍵(KHB)1との排他的論理和をハブノードHに送るとともに、メッセージRBと鍵(KBD)1との排他的論理和をユーザノードDに送る。
図4A(C)に示すように、ユーザノードCは、自ら保有するメッセージRCと鍵(KHC)1との排他的論理和をハブノードHに送るとともに、メッセージRCと鍵(KAC)2との排他的論理和をユーザノードAに送る。
図4A(D)に示すように、ユーザノードDは、自ら保有するメッセージRDと鍵(KHD)1との排他的論理和をハブノードHに送るとともに、メッセージRDと鍵(KBD)2との排他的論理和をユーザノードBに送る。
図4A(B)に示すように、ユーザノードBは、自ら保有するメッセージRBと鍵(KHB)1との排他的論理和をハブノードHに送るとともに、メッセージRBと鍵(KBD)1との排他的論理和をユーザノードDに送る。
図4A(C)に示すように、ユーザノードCは、自ら保有するメッセージRCと鍵(KHC)1との排他的論理和をハブノードHに送るとともに、メッセージRCと鍵(KAC)2との排他的論理和をユーザノードAに送る。
図4A(D)に示すように、ユーザノードDは、自ら保有するメッセージRDと鍵(KHD)1との排他的論理和をハブノードHに送るとともに、メッセージRDと鍵(KBD)2との排他的論理和をユーザノードBに送る。
その結果、図4B(A)に示すように、ユーザノードA及びCの各々がメッセージRA及びRCを保有することとなり、ユーザノードB及びDの各々がメッセージRB及びRDを保有することとなる。また、ハブノードHは、4つのメッセージRA~RDを保有することとなる。
続いて、ハブノードHは以下の2つの排他的論理和(すなわち2つのネットワーク符号化情報)R1及びR2を計算する。
その後、図4B(B)に示すように、ハブノードHは、排他的論理和R1及びR2を全てのユーザノードA~Dへ送る。各ユーザノードは、受信した排他的論理和R1、R2を、既に保有しているメッセージを用いて復号することにより、新たに3つのメッセージを取得することができる。表1に、各ユーザノードにて行われる復号計算の詳細をまとめる。
ユーザノードA及びCは、ハブノードHから受信したR1と既に保有しているメッセージRAとの排他的論理和を計算することによりメッセージRBを取得し、ハブノードHから受信したR2と既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRDを取得する。
ユーザノードB及びDは、ハブノードHから受信したR1と既に保有しているメッセージRBとの排他的論理和を計算することによりメッセージRAを取得し、ハブノードHから受信したR2と既に保有しているメッセージRDとの排他的論理和を計算することによりメッセージRCを取得する。
ユーザノードB及びDは、ハブノードHから受信したR1と既に保有しているメッセージRBとの排他的論理和を計算することによりメッセージRAを取得し、ハブノードHから受信したR2と既に保有しているメッセージRDとの排他的論理和を計算することによりメッセージRCを取得する。
以上のようにして、ユーザノードA~DによるメッセージRA~RDの共有ができたことになる。このとき、図4Cに示すように、リンクACにおいて2つの鍵が消費され、リンクBDにおいても2つの鍵が消費され、ハブノードHと各ユーザノードとの間のリンクの各々において1つの鍵が消費される。つまり、合計8個の鍵が消費される。これは、図2A及び図2Bに示した方法により消費される鍵の数(12個)に比べて4個少ない。このように、鍵の消費量を減らすことができる。
排他的論理和R1とR2が漏洩する可能性はある。その一方で、排他的論理和R1の演算対象であるメッセージRA及びRBの一方は他方を秘匿化し、排他的論理和R2の演算対象であるメッセージRC及びRDの一方は他方を秘匿化している。そのため、排他的論理和R1とR2が漏洩したとしても、第三者が各メッセージを取得できる可能性は極めて低い。
仮に何らかのインシデントにより、例えばメッセージRA及び排他的論理和R1が漏洩したとすると、第三者は排他的論理和R1からメッセージRBを得ることができてしまう。しかし、メッセージRCとRDは影響を受けない。そこで、このような、限定的ではあるが連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1、R2を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
[4人の第2の例]
図5A(A)にネットワークNW42を示す。このネットワークは、ネットワークNW4Aと同様のトポロジーである。図5A(A)~(D)に示すように、ユーザノードA、B、C、Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、ハブノードHとのリンクにあてがわれた鍵KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。この段階では、図5B(A)に示すように、各ユーザノードが保有するメッセージの数は変わっていないが、ハブノードHは4つのメッセージRA~RDの全てを保有している。
図5A(A)にネットワークNW42を示す。このネットワークは、ネットワークNW4Aと同様のトポロジーである。図5A(A)~(D)に示すように、ユーザノードA、B、C、Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、ハブノードHとのリンクにあてがわれた鍵KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。この段階では、図5B(A)に示すように、各ユーザノードが保有するメッセージの数は変わっていないが、ハブノードHは4つのメッセージRA~RDの全てを保有している。
続いて、ハブノードHは、以下の3つの排他的論理和(すなわち3つのネットワーク符号化情報)R1、R2及びR3を計算する。
その後、図5B(B)に示すように、ハブノードHは、排他的論理和R1、R2及びR3を全てのユーザノードA~Dへ送る。各ユーザノードは、受信した排他的論理和R1、R2、R3を、既に保有しているメッセージを用いて復号することにより、新たに3つのメッセージを取得することができる。表2に、各ユーザノードにて行われる復号計算の詳細をまとめる。
ユーザノードAは、ハブノードHから受信したR2と既に保有しているメッセージRAとの排他的論理和を計算することによりメッセージRCを取得し、ハブノードHから受信したR1と既に保有しているメッセージRAとの排他的論理和を計算することによりメッセージRBを取得する。さらに、ユーザノードAは、ハブノードHから受信したR3と既に保有しているメッセージRAとの排他的論理和を計算することによりメッセージRDを取得する。
ユーザノードCは、ハブノードHから受信したR2と既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRAを取得する。また、ユーザノードCは、ハブノードHから受信したR1とR2との排他的論理和と、既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRBを取得する。さらに、ユーザノードCは、ハブノードHから受信したR2とR3との排他的論理和と、既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRDを取得する。
ユーザノードB及びDも同様の復号を行うことにより残りの3つのメッセージを取得する。
ユーザノードCは、ハブノードHから受信したR2と既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRAを取得する。また、ユーザノードCは、ハブノードHから受信したR1とR2との排他的論理和と、既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRBを取得する。さらに、ユーザノードCは、ハブノードHから受信したR2とR3との排他的論理和と、既に保有しているメッセージRCとの排他的論理和を計算することによりメッセージRDを取得する。
ユーザノードB及びDも同様の復号を行うことにより残りの3つのメッセージを取得する。
以上のようにして、ユーザノードA~DによるメッセージRA~RDの共有ができたことになる。このとき、図5Cに示すように、ハブノードHと各ユーザノードとの間のリンクの各々において1つの鍵が消費される。つまり、合計4個の鍵が消費される。これは、図2A及び図2Bに示した方法により消費される鍵の数(12個)に比べて8個少ない。このように、鍵の消費量を減らすことができる。
排他的論理和R1~R3が漏洩する可能性はある。その一方で、各排他的論理和の演算対象である2つのメッセージの一方は他方を秘匿化している。そのため、排他的論理和が漏洩したとしても、各メッセージの情報が漏洩する可能性は極めて低い。
仮に何らかのインシデントによりトラステッドノードが危殆化するなどして、例えばメッセージRA及び排他的論理和R1~R3が漏洩したとすると、第三者は排他的論理和R1からメッセージRBを、排他的論理和R2からメッセージRCを、排他的論理和R3からメッセージRDを得ることができてしまう。
このように、先の例に比べて秘密乱数列が更に節約されることに伴い、インシデントの影響の及ぶ範囲が広くなる。そこで、このようなメッセージの連鎖的な危殆化を防ぐために、ハブノードHが排他的論理和R1、R2、R3を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
このように、先の例に比べて秘密乱数列が更に節約されることに伴い、インシデントの影響の及ぶ範囲が広くなる。そこで、このようなメッセージの連鎖的な危殆化を防ぐために、ハブノードHが排他的論理和R1、R2、R3を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
鍵の総消費量削減の効果と、1つのメッセージが漏洩した場合に生じ得る他のメッセージの危殆化のリスクとを考慮し、目的に応じて、第一の例又は第二の例を選択することができる。
秘匿通信網を用いてメッセージの共有を行う際に消費される秘密乱数列の個数を減らすことができる。n個のユーザノードがn個のメッセージを共有するために消費される秘密乱数列の個数を、n2個程度から、最も少ない場合でn個程度にまで削減することができる。これは、メッセージの共有を目的とした秘匿通信網の可用性と利便性を大きく向上させる。
[6人の第1の例]
メンバーの人数nを6とし、メッセージの数を6とする例を用いて、複数の実施例を説明する。これらの異なる実施例では、鍵の消費量削減の効果と、メッセージの一つが漏洩した場合に生じ得る他のメッセージの危殆化のリスクとの組み合わせが異なっている。
メンバーの人数nを6とし、メッセージの数を6とする例を用いて、複数の実施例を説明する。これらの異なる実施例では、鍵の消費量削減の効果と、メッセージの一つが漏洩した場合に生じ得る他のメッセージの危殆化のリスクとの組み合わせが異なっている。
図6A(A)にネットワークNW61を示す。このネットワークは、ネットワークNW6Aと同様のトポロジーである。
図6A(A)に示すように、ユーザノードC、A、Fの各々は、各自が保有しているメッセージRC、RA、RFを、各リンクにあてがわれた秘密乱数列KHC、KHA、KHFを用いて秘匿化した後、ハブノードHに送る。
ユーザノードAは、メッセージRAを鍵により秘匿化してユーザノードC及びFへ送る。
メッセージRCは、鍵により秘匿化された状態で、ユーザノードCからユーザノードAへ送られるとともに、ハブノードHからユーザノードFへ送られる。
メッセージRFは、鍵により秘匿化された状態で、ユーザノードFからユーザノードAへ送られるとともに、ハブノードHからユーザノードCへ送られる。
このように、ユーザノードA及びCの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードA及びFの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードC及びFの一方は、他方が保有しているメッセージを、ハブノードHを経由して受信する。
この段階で、ユーザノードA、C及びF並びにハブノードHが3つのメッセージRA、RC及びRFを共有できている。この共有のために消費された秘密乱数列の総数は9である。
ユーザノードAは、メッセージRAを鍵により秘匿化してユーザノードC及びFへ送る。
メッセージRCは、鍵により秘匿化された状態で、ユーザノードCからユーザノードAへ送られるとともに、ハブノードHからユーザノードFへ送られる。
メッセージRFは、鍵により秘匿化された状態で、ユーザノードFからユーザノードAへ送られるとともに、ハブノードHからユーザノードCへ送られる。
このように、ユーザノードA及びCの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードA及びFの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードC及びFの一方は、他方が保有しているメッセージを、ハブノードHを経由して受信する。
この段階で、ユーザノードA、C及びF並びにハブノードHが3つのメッセージRA、RC及びRFを共有できている。この共有のために消費された秘密乱数列の総数は9である。
図6A(B)に示すように、ユーザノードE、B、Dの各々は、各自が保有しているメッセージRE、RB、RDを、各リンクにあてがわれた秘密乱数列KHE、KHB、KHDを用いて秘匿化した後、ハブノードHに送る。
ユーザノードBは、メッセージRBを鍵により秘匿化してユーザノードE及びDへ送る。
メッセージREは、鍵により秘匿化された状態で、ユーザノードEからユーザノードBへ送られるとともに、ハブノードHからユーザノードDへ送られる。
メッセージRDは、鍵により秘匿化された状態で、ユーザノードDからユーザノードBへ送られるとともに、ハブノードHからユーザノードEへ送られる。
このように、ユーザノードB及びEの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードB及びDの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードE及びDの一方は、他方が保有しているメッセージを、ハブノードHを経由して受信する。
この段階で、ユーザノードB、D及びE並びにハブノードHが3つのメッセージRB、RD及びREを共有できている。この共有のために消費された秘密乱数列の総数は9である。
ユーザノードBは、メッセージRBを鍵により秘匿化してユーザノードE及びDへ送る。
メッセージREは、鍵により秘匿化された状態で、ユーザノードEからユーザノードBへ送られるとともに、ハブノードHからユーザノードDへ送られる。
メッセージRDは、鍵により秘匿化された状態で、ユーザノードDからユーザノードBへ送られるとともに、ハブノードHからユーザノードEへ送られる。
このように、ユーザノードB及びEの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードB及びDの一方は、他方が保有しているメッセージを、両ユーザノードを直に接続するリンクを通じて受信する。ユーザノードE及びDの一方は、他方が保有しているメッセージを、ハブノードHを経由して受信する。
この段階で、ユーザノードB、D及びE並びにハブノードHが3つのメッセージRB、RD及びREを共有できている。この共有のために消費された秘密乱数列の総数は9である。
図6A(A)及び(B)に示したメッセージ配信の結果、各ユーザノードは3つのメッセージを保有し、ハブノードHは6つ全てのメッセージを保有しており、18個の鍵が消費されている。
続いて、ハブノードHは、以下の3つの排他的論理和(すなわち3つのネットワーク符号化情報)R1、R2及びR3を計算する。
その後、図6Bに示すように、ハブノードHは、排他的論理和R1、R2及びR3を全てのユーザノードA~Fへ送る。各ユーザノードは、受信した排他的論理和R1、R2及びR3を、既に保有しているメッセージを用いて復号することにより、新たに3つのメッセージを取得することができる。表3に、各ユーザノードにおいて行われる復号計算の詳細をまとめる。
ユーザノードA、C及びFは、R1とメッセージRAとの排他的論理和を計算することによりメッセージRBを取得し、R2とメッセージRCとの排他的論理和を計算することによりメッセージRDを取得し、R3とメッセージRFとの排他的論理和を計算することによりメッセージREを取得する。
ユーザノードB、D及びEは、R1とメッセージRBとの排他的論理和を計算することによりメッセージRAを取得し、R2とメッセージRDとの排他的論理和を計算することによりメッセージRCを取得し、R3とメッセージREとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードB、D及びEは、R1とメッセージRBとの排他的論理和を計算することによりメッセージRAを取得し、R2とメッセージRDとの排他的論理和を計算することによりメッセージRCを取得し、R3とメッセージREとの排他的論理和を計算することによりメッセージRFを取得する。
以上のようにして、6つのユーザノードA~Fによる6つのメッセージRA~RFの共有ができたことになる。
図6Cに示すように、ユーザノードCとユーザノードAとのリンクにおいて2個の鍵が消費され、ユーザノードAとユーザノードFとのリンクにおいて2個の鍵が消費され、ユーザノードCとハブノードHとのリンクにおいて2個の鍵が消費され、ハブノードHとユーザノードFとのリンクにおいて2個の鍵が消費され、ユーザノードAとハブノードHとのリンクにおいて1個の鍵が消費されている。
また、ユーザノードEとユーザノードBとのリンクにおいて2個の鍵が消費され、ユーザノードBとユーザノードDとのリンクにおいて2個の鍵が消費され、ユーザノードEとハブノードHとのリンクにおいて2個の鍵が消費され、ハブノードHとユーザノードDとのリンクにおいて2個の鍵が消費され、ユーザノードBとハブノードHとのリンクにおいて1個の鍵が消費されている。
このように計18個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の6割にあたる。このように、鍵の消費量を減らすことができる。
図6Cに示すように、ユーザノードCとユーザノードAとのリンクにおいて2個の鍵が消費され、ユーザノードAとユーザノードFとのリンクにおいて2個の鍵が消費され、ユーザノードCとハブノードHとのリンクにおいて2個の鍵が消費され、ハブノードHとユーザノードFとのリンクにおいて2個の鍵が消費され、ユーザノードAとハブノードHとのリンクにおいて1個の鍵が消費されている。
また、ユーザノードEとユーザノードBとのリンクにおいて2個の鍵が消費され、ユーザノードBとユーザノードDとのリンクにおいて2個の鍵が消費され、ユーザノードEとハブノードHとのリンクにおいて2個の鍵が消費され、ハブノードHとユーザノードDとのリンクにおいて2個の鍵が消費され、ユーザノードBとハブノードHとのリンクにおいて1個の鍵が消費されている。
このように計18個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の6割にあたる。このように、鍵の消費量を減らすことができる。
排他的論理和R1~R3が漏洩する可能性はある。その一方で、各排他的論理和の演算対象である2つのメッセージの一方は他方を秘匿化している。そのため、排他的論理和が漏洩したとしても、各メッセージの情報が漏洩する可能性は極めて低い。
仮に何らかのインシデントによりトラステッドノードが危殆化するなどして、例えばメッセージRA及び排他的論理和R1~R3が漏洩したとすると、第三者は排他的論理和R1からメッセージRBを得ることができてしまう。しかし、他の4つのメッセージRC~RFに影響は及ばない。
とはいえ、このような限定的ではあるが連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1、R2、R3を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
とはいえ、このような限定的ではあるが連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1、R2、R3を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
[6人の第2の例]
図7AにネットワークNW62を示す。このネットワークは、ネットワークNW6Aと同様のトポロジーである。
図7AにネットワークNW62を示す。このネットワークは、ネットワークNW6Aと同様のトポロジーである。
図7Aに示すように、全てのユーザノードA~Fは、自ら保有するメッセージを、各リンクにあてがわれた鍵KHA、KHC、KHE、KHB、KHD、KHFを用いて秘匿化した後、ハブノードHに送る。
さらに、ユーザノードA及びCは互いに、自らが保有するメッセージを、鍵を用いて送り合う。ユーザノードE及びBとユーザノードD及びFとについても同様である。この段階で、各ユーザノードは2つのメッセージを保有し、ハブノードHは全てのメッセージRA~RFを保有している。これまでに消費された鍵の総数は12である。
さらに、ユーザノードA及びCは互いに、自らが保有するメッセージを、鍵を用いて送り合う。ユーザノードE及びBとユーザノードD及びFとについても同様である。この段階で、各ユーザノードは2つのメッセージを保有し、ハブノードHは全てのメッセージRA~RFを保有している。これまでに消費された鍵の総数は12である。
続いて、ハブノードHは、以下の4つの排他的論理和(4つのネットワーク符号化情報)R1~R4を計算する。
その後、図7Bに示すように、ハブノードHは、排他的論理和R1~R4を全てのユーザノードA~Fへ送る。各ユーザノードは、受信した排他的論理和R1~R4を、既に保有しているメッセージを用いて復号することにより、新たに4つのメッセージを取得することができる。表4に、各ユーザノードにおいて行われる復号計算の詳細をまとめる。
ここで、表中のR1とR3との排他的論理和と、R2とR4との排他的論理和とは以下のとおりである。
ユーザノードA及びCは、R4とRCとの排他的論理和を計算することによりメッセージREを取得し、R1とRAとの排他的論理和を計算することによりメッセージRBを取得し、R2とRCとの排他的論理和を計算することによりメッセージRDを取得し、R3とRAとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードE及びBは、R1とRBとの排他的論理和を計算することによりメッセージRAを取得し、R4とREとの排他的論理和を計算することによりメッセージRCを取得し、R2とR4との排他的論理和とREとの排他的論理和を計算することによりメッセージRDを取得し、R1とR3との排他的論理和とRBとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードD及びFは、R3とRFとの排他的論理和を計算することによりメッセージRAを取得し、R2とRDとの排他的論理和を計算することによりメッセージRCを取得し、R2とR4との排他的論理和とRDとの排他的論理和を計算することによりメッセージREを取得し、R1とR3との排他的論理和とRFとの排他的論理和を計算することによりメッセージRBを取得する。
ユーザノードE及びBは、R1とRBとの排他的論理和を計算することによりメッセージRAを取得し、R4とREとの排他的論理和を計算することによりメッセージRCを取得し、R2とR4との排他的論理和とREとの排他的論理和を計算することによりメッセージRDを取得し、R1とR3との排他的論理和とRBとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードD及びFは、R3とRFとの排他的論理和を計算することによりメッセージRAを取得し、R2とRDとの排他的論理和を計算することによりメッセージRCを取得し、R2とR4との排他的論理和とRDとの排他的論理和を計算することによりメッセージREを取得し、R1とR3との排他的論理和とRFとの排他的論理和を計算することによりメッセージRBを取得する。
以上のようにして、6つのユーザノードA~Fによる6つのメッセージRA~RFの共有ができたことになる。
図7Cに示すように、ユーザノードCとユーザノードAとのリンクにおいて2個の鍵が消費され、ユーザノードEとユーザノードBとのリンクにおいて2個の鍵が消費され、ユーザノードFとユーザノードDとのリンクにおいて2個の鍵が消費されている。さらに、ハブノードHと6つのユーザノードとの間のリンクにおいて計6個の鍵が消費されている。
このように計12個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の4割にあたる。このように、鍵の消費量を減らすことができる。
図7Cに示すように、ユーザノードCとユーザノードAとのリンクにおいて2個の鍵が消費され、ユーザノードEとユーザノードBとのリンクにおいて2個の鍵が消費され、ユーザノードFとユーザノードDとのリンクにおいて2個の鍵が消費されている。さらに、ハブノードHと6つのユーザノードとの間のリンクにおいて計6個の鍵が消費されている。
このように計12個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の4割にあたる。このように、鍵の消費量を減らすことができる。
排他的論理和R1~R4が漏洩する可能性はある。その一方で、各排他的論理和の演算対象である2つのメッセージの一方は他方を秘匿化している。そのため、排他的論理和が漏洩したとしても、各メッセージの情報が漏洩する可能性は極めて低い。
仮に何らかのインシデントによりトラステッドノードが危殆化するなどして、例えばメッセージRA及び排他的論理和R1~R4が漏洩したとすると、第三者は排他的論理和R1からメッセージRBを、排他的論理和R3からメッセージRFを得ることができてしまう。しかし、他の4つのメッセージに影響は及ばない。
とはいえ、このような限定的ではあるが連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1~R4を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
とはいえ、このような限定的ではあるが連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1~R4を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
[6人の第3の例]
図8AにネットワークNW63を示す。このネットワークは、ネットワークNW6Aと同様のトポロジーである。
図8AにネットワークNW63を示す。このネットワークは、ネットワークNW6Aと同様のトポロジーである。
図8Aに示すように、全てのユーザノードA~Fは、自ら保有するメッセージを、各リンクにあてがわれた鍵KHA、KHC、KHE、KHB、KHD、KHFを用いて秘匿化した後、ハブノードHに送る。
この段階で、各ユーザノードは当初と変わらず一つのメッセージを保有したままであるが、ハブノードHは六つ全てのメッセージを保有している。これまでに消費された秘密乱数列の総数は6である。
この段階で、各ユーザノードは当初と変わらず一つのメッセージを保有したままであるが、ハブノードHは六つ全てのメッセージを保有している。これまでに消費された秘密乱数列の総数は6である。
続いて、ハブノードHは、以下の5つの排他的論理和(5つのネットワーク符号化情報)R1~R5を計算する。
その後、図8Bに示すように、ハブノードHは、排他的論理和R1~R5を全てのユーザノードA~Fへ送る。各ユーザノードは、受信した排他的論理和R1~R5を、既に保有しているメッセージを用いて復号することにより、新たに5つのメッセージを取得することができる。表5に、各ユーザノードにおいて行われる復号計算の詳細をまとめる。
ユーザノードAは、R1~R5の各々とRAとの排他的論理和を計算することによりメッセージRB~RFをそれぞれ取得する。
ユーザノードCは、R2とRCとの排他的論理和を計算することによりメッセージRAを取得し、R2とR4との排他的論理和とRCとの排他的論理和を計算することによりメッセージREを取得し、R1とR2との排他的論理和とRCとの排他的論理和を計算することによりメッセージRBを取得し、R2とR3との排他的論理和とRCとの排他的論理和を計算することによりメッセージRDを取得し、R2とR5との排他的論理和とRCとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードE、B、D及びFも、表5に示す計算を行うことにより、5つのメッセージを新たに取得する。
ユーザノードCは、R2とRCとの排他的論理和を計算することによりメッセージRAを取得し、R2とR4との排他的論理和とRCとの排他的論理和を計算することによりメッセージREを取得し、R1とR2との排他的論理和とRCとの排他的論理和を計算することによりメッセージRBを取得し、R2とR3との排他的論理和とRCとの排他的論理和を計算することによりメッセージRDを取得し、R2とR5との排他的論理和とRCとの排他的論理和を計算することによりメッセージRFを取得する。
ユーザノードE、B、D及びFも、表5に示す計算を行うことにより、5つのメッセージを新たに取得する。
以上のようにして、6つのユーザノードA~Fによる6つのメッセージRA~RFの共有ができたことになる。
図8Cに示すように、6個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の2割にあたる。このように、鍵の消費量を減らすことができる。
図8Cに示すように、6個の鍵が消費されている。これは、図3に示した方法により消費される鍵の数(30個)の2割にあたる。このように、鍵の消費量を減らすことができる。
排他的論理和R1~R5が漏洩する可能性はある。その一方で、各排他的論理和の演算対象である2つのメッセージの一方は他方を秘匿化している。そのため、排他的論理和が漏洩したとしても、各メッセージの情報が漏洩する可能性は極めて低い。
仮に何らかのインシデントによりトラステッドノードが危殆化するなどして、例えばメッセージRA及び排他的論理和R1~R5が漏洩したとすると、第三者は残りの5つのメッセージRB~RFを得ることができてしまう。
このような連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1~R5を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
このような連鎖的なメッセージの危殆化を防ぐために、ハブノードHが排他的論理和R1~R5を送るときに一般的なブロック暗号(例えばAES:Advanced Encryption Standard)や公開鍵暗号などを用いて念のため秘匿化してもよい。
以上、6つのユーザノードが存在する場合の第1から第3の実施例によれば、6つのユーザノードが6個のメッセージを共有するにあたり、それぞれ異なる方法で鍵の消費量を減らすことができる。他方、鍵の総消費量の低減に伴って、メッセージの一つが漏洩した場合に生じ得る他のメッセージの連鎖的な危殆化のリスクが増加する。要求される安全性に応じて、適切な方法を選択することができる。
[6人の第4の例]
本例においては、各ユーザが準備するグループ鍵の大きさが異なる。4人のユーザUA、UB、UC及びUDが存在しており、ユーザUA及びUBは1単位のメッセージを保有し、ユーザUC及びUDは2単位のメッセージを保有しているものとする。
本例においては、各ユーザが準備するグループ鍵の大きさが異なる。4人のユーザUA、UB、UC及びUDが存在しており、ユーザUA及びUBは1単位のメッセージを保有し、ユーザUC及びUDは2単位のメッセージを保有しているものとする。
この場合、ユーザUC´及びUD´が仮想的に追加されて、計6名のユーザが存在するものと考えることができる。6名のユーザUA、UB、UC、UC´、UD及びUD´は、それぞれユーザノードA、B、C、C´、D及びD´に関連付けることができる。6つのユーザノードはそれぞれ1単位のメッセージを保有している。すなわち、ユーザノードA、B、C、C´、D及びD´はそれぞれ、メッセージRA、RB、RC、RC´、RD及びRD´を保有している。
図9Aに示すネットワークNW64において、6つのユーザノードA、B、C、C´、D及びD´の各々は、リンクによりハブノードHと接続されている。また、ユーザノードAとユーザノードCとがリンクにより接続され、ユーザノードCとユーザノードC´とがリンクにより接続され、ユーザノードC´とユーザノードBとがリンクにより接続されている。さらに、ユーザノードBとユーザノードDとがリンクにより接続され、ユーザノードDとユーザノードD´とがリンクにより接続され、ユーザノードD´とユーザノードAとがリンクにより接続されている。
ネットワークNW64は、図5A(A)に示したネットワークNW42に、仮想的なユーザノードC´及びD´が追加されたものと考えることができる。ユーザノードC´はユーザノードB及びCとハブノードHとに接続され、ユーザノードD´はユーザノードA及びDとハブノードHとに接続される。また、ネットワークNW64は、図8Aに示したネットワークNW63におけるユーザノードE及びFをそれぞれユーザノードC´及びD´に置き換えたものと考えることもできる。このネットワークNW64において、ネットワークNW63と同様の方法でメッセージの共有を行うことができる。
具体的には、図9Aに示すように、全てのユーザノードA~Fは、自ら保有するメッセージを、鍵を用いて秘匿化した後、ハブノードHに送る。
この段階で、各ユーザノードは当初と変わらず一つのメッセージを保有したままであるが、ハブノードHは六つ全てのメッセージを保有している。これまでに消費された秘密乱数列の総数は6である。
この段階で、各ユーザノードは当初と変わらず一つのメッセージを保有したままであるが、ハブノードHは六つ全てのメッセージを保有している。これまでに消費された秘密乱数列の総数は6である。
続いて、ハブノードHは、以下の5つの排他的論理和(5つのネットワーク符号化情報)R1~R5を計算する。
その後、図9Bに示すように、ハブノードHは、排他的論理和R1~R5をユーザノードA及びBへ送る。また、ハブノードHは、排他的論理和R1、R2、R3及びR5をユーザノードC及びC´へ送り、排他的論理和R1、R2、R3及びR4をユーザノードD及びD´へ送る。ユーザノードC及びC´に排他的論理和R4を送る必要は無く、ユーザノードD及びD´に排他的論理和R5を送る必要は無い。各ユーザノードは、受信した排他的論理和を、既に保有しているメッセージを用いて復号することにより、新たにメッセージを取得することができる。表6に、各ユーザノードにおいて行われる復号計算の詳細をまとめる。
以上のようにして、4名のユーザが、それぞれが1単位のメッセージRA及びRBと、それぞれ2単位のメッセージ(RC、RC´)及び(RD、RD´)とを共有することができる。図9Cに示すように、6個の鍵が消費されている。
ネットワーク内の物理ユーザノードによって、保有しているメッセージの単位数が異なる場合、メッセージの単位数が比較的多い物理ユーザノードに1つ以上の仮想ユーザノードを設けることができる。そして、当該物理ユーザノードが当初から保有している少なくとも1単位のメッセージを当該仮想ユーザノードに割り当てることができる。これにより、仮想ユーザノードを設ける前に比べて、ユーザノード間のメッセージ単位数のばらつきを小さくし、後続のメッセージ共有処理を効率的に行うことができる。
[6人の第5の例]
本例では、上記第3の実施例において指摘した連鎖的な危殆化の問題(すなわち、一つのメッセージ、例えばRAが漏洩した場合に、公開された5つの排他的論理和から第三者が他の全てのメッセージが復号できてしまうという問題)を防ぐための方法が導入される。
本例では、上記第3の実施例において指摘した連鎖的な危殆化の問題(すなわち、一つのメッセージ、例えばRAが漏洩した場合に、公開された5つの排他的論理和から第三者が他の全てのメッセージが復号できてしまうという問題)を防ぐための方法が導入される。
以下に、上記第3の実施例をベースに具体的に説明する。表7に示すように、ネットワーク符号化情報R1、R2、R3、R4、R5に対する具体的な定義の方法を、可能な120個のケースごとに異なるものとする。
ユーザノードA~F及びハブノードHは、事前に秘密情報として表7に示す対応表を共有しているものする。そして、ハブノードHは、1つのケース番号を選択し、選択されたケース番号に従って排他的論理和(ネットワーク符号化情報)を計算し、その排他的論理和をケース番号とともにユーザノードへ送る。ユーザノードは、受信された排他的論理和及びケース番号に基づいて、全てのグループ鍵を取得することができる。
表7の対応表を知らない第三者は、たとえRAを不正に得たとしても、他の五つのグループ鍵を知ることはできない。
本例では、ハブノードHにおけるネットワーク符号化情報R1~R5の定義のランダム化により、ネットワーク符号化に伴うメッセージの連鎖的な危殆化を防ぐことができる。
表7の対応表を知らない第三者は、たとえRAを不正に得たとしても、他の五つのグループ鍵を知ることはできない。
本例では、ハブノードHにおけるネットワーク符号化情報R1~R5の定義のランダム化により、ネットワーク符号化に伴うメッセージの連鎖的な危殆化を防ぐことができる。
[4人の場合の別の例]
図10に示すネットワークNW4Bは、4つのユーザノードA~DとハブノードHとを有する。4つのユーザノードA~Dの各々とハブノードHとはリンクにより接続されている。また、ユーザノード同士を接続するリンクは存在しない。ユーザノードAがメッセージRAを保有し、ユーザノードBがメッセージRBを保有し、ユーザノードCがメッセージRCを保有し、ユーザノードDがメッセージRDを保有している状態で、各ユーザノードは自ら保有するメッセージを他の3名のユーザにマルチキャスト配信する場合を想定した例である。
図10に示すネットワークNW4Bは、4つのユーザノードA~DとハブノードHとを有する。4つのユーザノードA~Dの各々とハブノードHとはリンクにより接続されている。また、ユーザノード同士を接続するリンクは存在しない。ユーザノードAがメッセージRAを保有し、ユーザノードBがメッセージRBを保有し、ユーザノードCがメッセージRCを保有し、ユーザノードDがメッセージRDを保有している状態で、各ユーザノードは自ら保有するメッセージを他の3名のユーザにマルチキャスト配信する場合を想定した例である。
ネットワークNW4Bにおいて、ユーザノードAは、ハブノードHに対し、メッセージRAを鍵(KAH)1により秘匿化して送る。ハブノードHは、ユーザノードBに対し、メッセージRAを鍵(KBH)1により秘匿化して送り、ユーザノードCに対し、メッセージRAを鍵(KCH)1により秘匿化して送り、ユーザノードDに対し、メッセージRAを鍵(KDH)1により秘匿化して送る。
ユーザノードBは、ハブノードHに対し、メッセージRBを鍵(KBH)2により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRBを鍵(KAH)2により秘匿化して送り、ユーザノードCに対し、メッセージRBを鍵(KCH)2により秘匿化して送り、ユーザノードDに対し、メッセージRBを鍵(KDH)2により秘匿化して送る。
ユーザノードCは、ハブノードHに対し、メッセージRCを鍵(KCH)3により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRCを鍵(KAH)3により秘匿化して送り、ユーザノードBに対し、メッセージRCを鍵(KBH)3により秘匿化して送り、ユーザノードDに対し、メッセージRCを鍵(KDH)3により秘匿化して送る。
ユーザノードDは、ハブノードHに対し、メッセージRDを鍵(KDH)4により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRDを鍵(KAH)4により秘匿化して送り、ユーザノードBに対し、メッセージRDを鍵(KBH)4により秘匿化して送り、ユーザノードCに対し、メッセージRDを鍵(KCH)4により秘匿化して送る。
ユーザノードBは、ハブノードHに対し、メッセージRBを鍵(KBH)2により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRBを鍵(KAH)2により秘匿化して送り、ユーザノードCに対し、メッセージRBを鍵(KCH)2により秘匿化して送り、ユーザノードDに対し、メッセージRBを鍵(KDH)2により秘匿化して送る。
ユーザノードCは、ハブノードHに対し、メッセージRCを鍵(KCH)3により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRCを鍵(KAH)3により秘匿化して送り、ユーザノードBに対し、メッセージRCを鍵(KBH)3により秘匿化して送り、ユーザノードDに対し、メッセージRCを鍵(KDH)3により秘匿化して送る。
ユーザノードDは、ハブノードHに対し、メッセージRDを鍵(KDH)4により秘匿化して送る。ハブノードHは、ユーザノードAに対し、メッセージRDを鍵(KAH)4により秘匿化して送り、ユーザノードBに対し、メッセージRDを鍵(KBH)4により秘匿化して送り、ユーザノードCに対し、メッセージRDを鍵(KCH)4により秘匿化して送る。
以上のようにして、ユーザノードA~Dは、メッセージRA~RDを共有できたことになる。この共有にあたり、図10に示したように、ハブノードHとユーザノードとの間の4つのリンクの各々で4個の鍵が消費される。ネットワークNW4Bの全体で、16個の鍵が消費される。
[4人の第3の例]
図11A(A)にネットワークNW43を示す。このネットワークは、ネットワークNW4Bと同様のトポロジーである。図11A(A)~(D)に示すように、ユーザノードA、B、C、Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、各リンクにあてがわれた鍵を用いて秘匿化した後、ハブノードHに送る。
図11A(A)にネットワークNW43を示す。このネットワークは、ネットワークNW4Bと同様のトポロジーである。図11A(A)~(D)に示すように、ユーザノードA、B、C、Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、各リンクにあてがわれた鍵を用いて秘匿化した後、ハブノードHに送る。
その結果、図11B(A)に示すように、ハブノードHは、4つのメッセージRA~RDを保有することとなる。
続いて、ハブノードHは以下の2つの排他的論理和(すなわち2つのネットワーク符号化情報)R1及びR2を計算する。
その後、図11B(B)に示すように、ハブノードHは、排他的論理和R1~R3を全てのユーザノードA~Dへ送る。各ユーザノードは、受信した排他的論理和R1~R3を、既に保有しているメッセージを用いて復号する。
具体的には、ユーザノードAは、以下の計算により、メッセージRB、RC及びRDを得る。
ユーザノードBは、以下の計算により、メッセージRA、RC及びRDを得る。
ユーザノードCは、以下の計算により、メッセージRA、RB及びRDを得る。
ユーザノードDは、以下の計算により、メッセージRA、RB及びRCを得る。
以上のようにして、ユーザノードA~DによるメッセージRA~RDの共有ができたことになる。このとき、図11Cに示すように、4つのリンクの各々において1つの鍵が消費される。つまり、合計4個の鍵が消費される。これは、図10に示した方法により消費される鍵の数(16個)の4分の1にあたる。このように、鍵の消費量を減らすことができる。
図12に、これまでの各実施形態に係るネットワークを制御するネットワーク制御装置100を示す。ネットワーク制御装置100は、各ユーザノードに対して指示を行う第1指示部110と、ハブノードHに対して指示を行う第2指示部120とを備える。第1指示部110からの指示により各ユーザノードはこれまでに述べた処理を行い、第2指示部120からの指示によりハブノードHはこれまでに述べた処理を行う。
また、ネットワーク制御装置100は、ネットワーク構成部130を備えていてもよい。ネットワーク構成部130は、上述したように、ある物理ユーザノードに仮想ユーザノードを追加し、当該物理ユーザノードが当初から保有している複数単位のメッセージのうち、少なくとも1単位のメッセージを当該仮想ユーザノードに割り当てて、当該物理ユーザノード及び当該仮想ユーザノードがネットワーク内の複数のユーザノードに含まれるものとなるように当該ネットワークを構成する処理を行う。
ネットワーク制御装置100は送信部140を備えていてもよい。送信部140は、表7に示したようなケース番号(ルール番号)を各ユーザノード及びハブノードへ送る。
また、ネットワーク制御装置100は、ネットワーク構成部130を備えていてもよい。ネットワーク構成部130は、上述したように、ある物理ユーザノードに仮想ユーザノードを追加し、当該物理ユーザノードが当初から保有している複数単位のメッセージのうち、少なくとも1単位のメッセージを当該仮想ユーザノードに割り当てて、当該物理ユーザノード及び当該仮想ユーザノードがネットワーク内の複数のユーザノードに含まれるものとなるように当該ネットワークを構成する処理を行う。
ネットワーク制御装置100は送信部140を備えていてもよい。送信部140は、表7に示したようなケース番号(ルール番号)を各ユーザノード及びハブノードへ送る。
図13に、ネットワーク制御装置100のコンピュータハードウェア構成例を示す。ハブノードHは、CPU351と、インタフェース装置352と、表示装置353と、入力装置354と、ドライブ装置355と、補助記憶装置356と、メモリ装置357とを備えており、これらがバス358により相互に接続されている。
ネットワーク制御装置100の機能を実現するプログラムは、CD-ROM等の記録媒体359によって提供される。プログラムを記録した記録媒体359がドライブ装置355にセットされると、プログラムが記録媒体359からドライブ装置355を介して補助記憶装置356にインストールされる。あるいは、プログラムのインストールは必ずしも記録媒体359により行う必要はなく、ネットワーク経由で行うこともできる。補助記憶装置356は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置357は、プログラムの起動指示があった場合に、補助記憶装置356からプログラムを読み出して格納する。CPU351は、メモリ装置357に格納されたプログラムにしたがってネットワーク制御装置100の機能を実現する。インタフェース装置352は、ネットワークを通して他のコンピュータに接続するためのインタフェースとして用いられる。表示装置353はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置354はキーボード及びマウス等である。
なお、ネットワーク制御装置100と同様のコンピュータハードウェア構成を、通信ネットワーク内の各ユーザノード及びハブノードも有する。
これまでに説明した実施形態は、装置としての側面だけではなく、方法としての側面及びコンピュータプログラムとしての側面をも有している。
秘匿通信網を利用したメッセージの共有において、複数個のメッセージの共有を、異なる時刻で個別に実行してもよいし、同一時刻に一括して実行してもよい。
ユーザノードは、公開通信路を通じて受信したネットワーク符号化情報(複数のメッセージの排他的論理和)から、手持ちのメッセージを用いて、他のメッセージを復元する。ネットワーク符号化情報は公開されるが、各々のメッセージは互いに秘匿化し合っているため、機密性は保たれる。各ユーザノードが、既に保有するメッセージを用いて他のメッセージを復号できるような、排他的論理和の演算対象となる複数のメッセージの組み合わせが、ネットワーク制御装置100からハブノードHに対して指示される。
これまでに述べた実施形態により、鍵(秘密乱数列)によるメッセージの秘匿化転送の一部を、ネットワーク符号化情報(複数のメッセージの排他的論理和)の公開とそれに続くメッセージの復元とに置き換えることによって、秘匿通信網における鍵の総消費量を減らすことが可能である。
ユーザノードは、公開通信路を通じて受信したネットワーク符号化情報(複数のメッセージの排他的論理和)から、手持ちのメッセージを用いて、他のメッセージを復元する。ネットワーク符号化情報は公開されるが、各々のメッセージは互いに秘匿化し合っているため、機密性は保たれる。各ユーザノードが、既に保有するメッセージを用いて他のメッセージを復号できるような、排他的論理和の演算対象となる複数のメッセージの組み合わせが、ネットワーク制御装置100からハブノードHに対して指示される。
これまでに述べた実施形態により、鍵(秘密乱数列)によるメッセージの秘匿化転送の一部を、ネットワーク符号化情報(複数のメッセージの排他的論理和)の公開とそれに続くメッセージの復元とに置き換えることによって、秘匿通信網における鍵の総消費量を減らすことが可能である。
[負荷分散]
図2Bを参照しながら述べたように、ネットワークNW4Aにおいては特定のリンクに秘密乱数列の使用が偏り、負荷が集中するという問題がある。
図2Bを参照しながら述べたように、ネットワークNW4Aにおいては特定のリンクに秘密乱数列の使用が偏り、負荷が集中するという問題がある。
そこで、秘密乱数列の消費の負荷を分散させることを考える。図14A(A)に、ネットワークNW4Cを示す。このネットワークNW4Cは、図2Bに示したネットワークNW4Aと同じトポロジーである。
図14A(A)~(D)に示すように、ユーザノードA、B、C、Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、各リンクにあてがわれた秘密乱数列KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。並行して、各ユーザノードは両隣のユーザノードにも秘密乱数列を用いてメッセージを秘匿化して送る。
同じく図14A(A)~(D)に示すように、ハブノードHは、メッセージRAを鍵により秘匿化しユーザノードBに送り、メッセージRBを鍵により秘匿化してユーザノードAに送り、メッセージRCを鍵により秘匿化してユーザノードDに送り、メッセージRDを鍵により秘匿化してユーザノードCに送る。
同じく図14A(A)~(D)に示すように、ハブノードHは、メッセージRAを鍵により秘匿化しユーザノードBに送り、メッセージRBを鍵により秘匿化してユーザノードAに送り、メッセージRCを鍵により秘匿化してユーザノードDに送り、メッセージRDを鍵により秘匿化してユーザノードCに送る。
このようにして4つのメッセージの共有が完了する。このとき、図14Bに示すように、8本のリンクの各々において2個の鍵が消費され、消費の負荷が各リンクに分散している。しかし、消費される鍵の総数は16個であり、図2Bに示した12個に比べ増加している。つまり、図2Bに示したネットワークNW4Aに比べ、ネットワークNW4Cにおいては秘密乱数列の消費の負荷は分散しているが、消費する秘密乱数列の総数が増えている。
また、図3に示したネットワークNW6Aにおいても、鍵の消費の負荷がユーザノード同士を接続するリンクに集中している。
以上のような問題を踏まえ、鍵の消費量を抑えつつ負荷の分散を図る実施形態を説明する。
図15A(A)にネットワークNW44を示す。トポロジーは図2Bに示したネットワークNW4Aと同じである。
図15A(A)~(D)に示すように、ユーザノードA~Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、各リンクにあてがわれた秘密乱数列KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。これと並行して、各ユーザノードは、両隣のユーザにも秘密乱数列を用いてメッセージを秘匿化して送る。この段階で秘密乱数列の消費量は12個であり、各ユーザノード及びハブノードが保有するメッセージを図15B(A)に示す。すなわち、ハブノードHは4つのメッセージを全て保有し、ユーザノードAは、3つのメッセージRA、RC及びRDを保有し、ユーザノードBは、3つのメッセージRB、RC及びRDを保有し、ユーザノードCは、3つのメッセージRA、RB及びRCを保有し、ユーザノードDは、3つのメッセージRA、RB及びRDを保有している。
図15A(A)にネットワークNW44を示す。トポロジーは図2Bに示したネットワークNW4Aと同じである。
図15A(A)~(D)に示すように、ユーザノードA~Dの各々は、各自が保有するメッセージRA、RB、RC、RDを、各リンクにあてがわれた秘密乱数列KHA、KHB、KHC、KHDを用いて秘匿化した後、ハブノードHに送る。これと並行して、各ユーザノードは、両隣のユーザにも秘密乱数列を用いてメッセージを秘匿化して送る。この段階で秘密乱数列の消費量は12個であり、各ユーザノード及びハブノードが保有するメッセージを図15B(A)に示す。すなわち、ハブノードHは4つのメッセージを全て保有し、ユーザノードAは、3つのメッセージRA、RC及びRDを保有し、ユーザノードBは、3つのメッセージRB、RC及びRDを保有し、ユーザノードCは、3つのメッセージRA、RB及びRCを保有し、ユーザノードDは、3つのメッセージRA、RB及びRDを保有している。
続いて、図15B(B)に示すように、ハブノードHは、保有している4つのメッセージ(RA、RB、RC、RD)の排他的論理和Rを以下のように計算する。
そして、ハブノードHは、ネットワーク符号化情報である排他的論理和Rを公開する。すなわち、ハブノードHは、ユーザノードA~Dの各々に対し各リンクを通じて排他的論理和Rを送る。
このとき排他的論理和Rが漏洩したとしても、4つのメッセージの各々は他の3つのメッセージを秘匿化しているため、機密性は保たれる。
各ユーザノードは、排他的論理和Rと、既に保有している3つのメッセージとの排他的論理和を計算することにより、第4番目のメッセージを取得することができる。
このとき、図15Cに示すように、秘密乱数列の総消費量は12個である。さらに、ユーザノード間の各リンクでは2個の鍵が消費され、ハブノードとユーザノードとの各リンクでは1個の鍵が消費される。
このとき排他的論理和Rが漏洩したとしても、4つのメッセージの各々は他の3つのメッセージを秘匿化しているため、機密性は保たれる。
各ユーザノードは、排他的論理和Rと、既に保有している3つのメッセージとの排他的論理和を計算することにより、第4番目のメッセージを取得することができる。
このとき、図15Cに示すように、秘密乱数列の総消費量は12個である。さらに、ユーザノード間の各リンクでは2個の鍵が消費され、ハブノードとユーザノードとの各リンクでは1個の鍵が消費される。
このように、秘匿通信網を用いてメッセージの共有を行う際に使用される秘密乱数列の消費と補給の負荷を、秘密乱数列の総消費量を増やすことなく、特定の伝送リンクから他の伝送リンクに分散することができる。これは、鍵共有のための秘匿通信網の可用性と利便性を向上させる。
図16(A)にネットワークNW65を示す。このネットワークNW65は、図3に示したネットワークNW6Aと同じトポロジーである。
図16(A)に示すように、ユーザノードAはメッセージRAを、両隣のユーザノードC及びFに、鍵による秘匿化をした上で送る。並行してユーザノードAは、ハブノードHへもメッセージRAを秘匿化して送る。ハブノードHは、ユーザノードE及びDに対しメッセージRAを秘匿化して送る。このようにして、5つのユーザノードA、C、F、E及びDの間でメッセージRAが安全に共有される。ここまでで5個の秘密乱数列が消費されている。
図16(A)に示すように、ユーザノードAはメッセージRAを、両隣のユーザノードC及びFに、鍵による秘匿化をした上で送る。並行してユーザノードAは、ハブノードHへもメッセージRAを秘匿化して送る。ハブノードHは、ユーザノードE及びDに対しメッセージRAを秘匿化して送る。このようにして、5つのユーザノードA、C、F、E及びDの間でメッセージRAが安全に共有される。ここまでで5個の秘密乱数列が消費されている。
メッセージRB~RFについても同様の手順で共有が行われる。すなわち以下のとおりである。
図16(B)に示すように、ユーザノードBはメッセージRBを、両隣のユーザノードE及びDに、鍵による秘匿化をした上で送る。並行してユーザノードBは、ハブノードHへもメッセージRBを秘匿化して送る。ハブノードHは、ユーザノードC及びFに対しメッセージRBを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(C)に示すように、ユーザノードCはメッセージRCを、両隣のユーザノードA及びEに、鍵による秘匿化をした上で送る。並行してユーザノードCは、ハブノードHへもメッセージRCを秘匿化して送る。ハブノードHは、ユーザノードB及びFに対しメッセージRCを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(D)に示すように、ユーザノードDはメッセージRDを、両隣のユーザノードB及びFに、鍵による秘匿化をした上で送る。並行してユーザノードDは、ハブノードHへもメッセージRDを秘匿化して送る。ハブノードHは、ユーザノードA及びEに対しメッセージRDを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(E)に示すように、ユーザノードEはメッセージREを、両隣のユーザノードB及びCに、鍵による秘匿化をした上で送る。並行してユーザノードEは、ハブノードHへもメッセージREを秘匿化して送る。ハブノードHは、ユーザノードA及びDに対しメッセージREを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(F)に示すように、ユーザノードFはメッセージRFを、両隣のユーザノードA及びDに、鍵による秘匿化をした上で送る。並行してユーザノードFは、ハブノードHへもメッセージRFを秘匿化して送る。ハブノードHは、ユーザノードB及びCに対しメッセージRFを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
以上のようにして、6個のユーザノードA~Fの各々は5つのメッセージを取得し、ハブノードHは6つ全てのメッセージを取得する。
図16(B)に示すように、ユーザノードBはメッセージRBを、両隣のユーザノードE及びDに、鍵による秘匿化をした上で送る。並行してユーザノードBは、ハブノードHへもメッセージRBを秘匿化して送る。ハブノードHは、ユーザノードC及びFに対しメッセージRBを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(C)に示すように、ユーザノードCはメッセージRCを、両隣のユーザノードA及びEに、鍵による秘匿化をした上で送る。並行してユーザノードCは、ハブノードHへもメッセージRCを秘匿化して送る。ハブノードHは、ユーザノードB及びFに対しメッセージRCを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(D)に示すように、ユーザノードDはメッセージRDを、両隣のユーザノードB及びFに、鍵による秘匿化をした上で送る。並行してユーザノードDは、ハブノードHへもメッセージRDを秘匿化して送る。ハブノードHは、ユーザノードA及びEに対しメッセージRDを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(E)に示すように、ユーザノードEはメッセージREを、両隣のユーザノードB及びCに、鍵による秘匿化をした上で送る。並行してユーザノードEは、ハブノードHへもメッセージREを秘匿化して送る。ハブノードHは、ユーザノードA及びDに対しメッセージREを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
図16(F)に示すように、ユーザノードFはメッセージRFを、両隣のユーザノードA及びDに、鍵による秘匿化をした上で送る。並行してユーザノードFは、ハブノードHへもメッセージRFを秘匿化して送る。ハブノードHは、ユーザノードB及びCに対しメッセージRFを秘匿化して送る。このようにして、5つのユーザノードの間でメッセージが安全に共有される。
以上のようにして、6個のユーザノードA~Fの各々は5つのメッセージを取得し、ハブノードHは6つ全てのメッセージを取得する。
続いてハブノードHは、6つのメッセージの排他的論理和Rを以下のように計算する。
続いてハブノードHは、各ユーザノードに公開通信路を通じて排他的論理和Rを送る。ユーザノードAは、ハブノードHから受け付けた排他的論理和Rと、既に保有している5つのメッセージRA、RC、RD、RE及びRFの排他的論理和すなわち
との排他的論理和を計算することにより、ユーザノードAにとって第6番目のメッセージであるメッセージRBを取得する。
他のユーザノードB~Fも同様にして、第6番目のメッセージを取得する。
他のユーザノードB~Fも同様にして、第6番目のメッセージを取得する。
このようにして、全てのユーザノードによる6個のメッセージの共有が完了したことになる。ネットワーク全体での秘密乱数列の消費量は30個であり、負荷分散が行われない場合(図3(G))と同じである。他方、消費の負荷は、図16(G)に示すように、ユーザノード同士を接続するリンクと、ユーザノードとハブノードとを接続するリンクとに対し分散されている。
鍵の消費量の増加を抑えつつ負荷の分散を図ることも、図12に示したネットワーク制御装置100により実現することができる。
ネットワーク制御装置100内の第1指示部110、第2指示部120、ネットワーク構成部130及び送信部140は、物理的に同一のノードに存在してもよいし、物理的に異なる複数のノードに分散されて存在してもよい。
これまでに説明した実施形態に関し、以下の付記を開示する。
[付記1]
複数のユーザノードと、ハブノードと、前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクとを備えたネットワークにおけるネットワーク制御装置であって、
前記ユーザノードに指示を行う第1指示部と、
前記ハブノードに指示を行う第2指示部と
を備え、
前記第1指示部は、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記ハブノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記ハブノードへ送信するステップを行うよう指示し、
前記第2指示部は、前記ハブノードに対し、
前記複数のユーザノードから受信した複数の前記暗号文を前記鍵により復号し複数の前記メッセージを取得するステップと、
取得された複数の前記メッセージのうち、2つ以上の前記メッセージの組み合わせを所定のルールに基づいて定め、前記組み合わせに係る前記2つ以上の前記メッセージの排他的論理和を計算するステップと、
前記排他的論理和を前記複数のユーザノードの各々へ送信するステップと
を行うよう指示し、
前記第1指示部はさらに、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを用いて前記排他的論理和を復号するステップを行うよう指示する、
ネットワーク制御装置。
[付記2]
前記ネットワークが、2つの前記ユーザノードを接続するリンクをさらに備え、
前記第1指示部はさらに、前記2つのユーザノードのうちの一方のユーザノードに対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記2つのユーザノードのうちの他方のユーザノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記他方のユーザノードへ送信するステップを行うよう指示する、
付記1に記載のネットワーク制御装置。
[付記3]
複数単位のメッセージを保有している物理ユーザノードに仮想ユーザノードを追加し、前記物理ユーザノードが保有している前記複数単位のメッセージのうち、少なくとも1単位のメッセージを前記仮想ユーザノードに割り当てて、前記物理ユーザノード及び前記仮想ユーザノードが前記複数のユーザノードに含まれるものとなるように前記ネットワークを構成するネットワーク構成部をさらに備える付記1又は2に記載のネットワーク制御装置。
[付記4]
前記所定のルールを含む複数のルールを前記複数のユーザノードの各々と前記ハブノードとに対して送信する送信部をさらに備え、
前記第2指示部は、前記所定のルールが前記複数のルールのうちのいずれであるかを示すルール番号と前記排他的論理和とを前記複数のユーザノードの各々に送信するよう指示を行う、
付記1~3のいずれか一項に記載のネットワーク制御装置。
[付記5]
前記第1指示部と前記第2指示部とが物理的に異なるノードに存在する、付記1~4のいずれか一項に記載のネットワーク制御装置。
[付記6]
付記1~5のいずれか一項に記載のネットワーク制御装置と、
前記複数のユーザノードと、
前記ハブノードと、
前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクと
を備えるネットワーク。
[付記1]
複数のユーザノードと、ハブノードと、前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクとを備えたネットワークにおけるネットワーク制御装置であって、
前記ユーザノードに指示を行う第1指示部と、
前記ハブノードに指示を行う第2指示部と
を備え、
前記第1指示部は、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記ハブノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記ハブノードへ送信するステップを行うよう指示し、
前記第2指示部は、前記ハブノードに対し、
前記複数のユーザノードから受信した複数の前記暗号文を前記鍵により復号し複数の前記メッセージを取得するステップと、
取得された複数の前記メッセージのうち、2つ以上の前記メッセージの組み合わせを所定のルールに基づいて定め、前記組み合わせに係る前記2つ以上の前記メッセージの排他的論理和を計算するステップと、
前記排他的論理和を前記複数のユーザノードの各々へ送信するステップと
を行うよう指示し、
前記第1指示部はさらに、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを用いて前記排他的論理和を復号するステップを行うよう指示する、
ネットワーク制御装置。
[付記2]
前記ネットワークが、2つの前記ユーザノードを接続するリンクをさらに備え、
前記第1指示部はさらに、前記2つのユーザノードのうちの一方のユーザノードに対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記2つのユーザノードのうちの他方のユーザノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記他方のユーザノードへ送信するステップを行うよう指示する、
付記1に記載のネットワーク制御装置。
[付記3]
複数単位のメッセージを保有している物理ユーザノードに仮想ユーザノードを追加し、前記物理ユーザノードが保有している前記複数単位のメッセージのうち、少なくとも1単位のメッセージを前記仮想ユーザノードに割り当てて、前記物理ユーザノード及び前記仮想ユーザノードが前記複数のユーザノードに含まれるものとなるように前記ネットワークを構成するネットワーク構成部をさらに備える付記1又は2に記載のネットワーク制御装置。
[付記4]
前記所定のルールを含む複数のルールを前記複数のユーザノードの各々と前記ハブノードとに対して送信する送信部をさらに備え、
前記第2指示部は、前記所定のルールが前記複数のルールのうちのいずれであるかを示すルール番号と前記排他的論理和とを前記複数のユーザノードの各々に送信するよう指示を行う、
付記1~3のいずれか一項に記載のネットワーク制御装置。
[付記5]
前記第1指示部と前記第2指示部とが物理的に異なるノードに存在する、付記1~4のいずれか一項に記載のネットワーク制御装置。
[付記6]
付記1~5のいずれか一項に記載のネットワーク制御装置と、
前記複数のユーザノードと、
前記ハブノードと、
前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクと
を備えるネットワーク。
以上、本発明の実施の形態につき述べたが、本発明は既述の実施の形態に限定されるものではなく、本発明の技術的思想に基づいて各種の変形及び変更が可能である。
QM QKDモジュール
TN トラステッドノード
KM 鍵マネージャ
CT QKDNコントローラ
MG1 QKDNマネージャ
MG2 ネットワークマネージャ
UD ユーザ端末
A~F ユーザノード
H ハブノード
100 制御装置
110 第1指示部
120 第2指示部
130 ネットワーク構成部
140 送信部
TN トラステッドノード
KM 鍵マネージャ
CT QKDNコントローラ
MG1 QKDNマネージャ
MG2 ネットワークマネージャ
UD ユーザ端末
A~F ユーザノード
H ハブノード
100 制御装置
110 第1指示部
120 第2指示部
130 ネットワーク構成部
140 送信部
Claims (6)
- 複数のユーザノードと、ハブノードと、前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクとを備えたネットワークにおけるネットワーク制御装置であって、
前記ユーザノードに指示を行う第1指示部と、
前記ハブノードに指示を行う第2指示部と
を備え、
前記第1指示部は、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記ハブノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記ハブノードへ送信するステップを行うよう指示し、
前記第2指示部は、前記ハブノードに対し、
前記複数のユーザノードから受信した複数の前記暗号文を前記鍵により復号し複数の前記メッセージを取得するステップと、
取得された複数の前記メッセージのうち、2つ以上の前記メッセージの組み合わせを所定のルールに基づいて定め、前記組み合わせに係る前記2つ以上の前記メッセージの排他的論理和を計算するステップと、
前記排他的論理和を前記複数のユーザノードの各々へ送信するステップと
を行うよう指示し、
前記第1指示部はさらに、前記複数のユーザノードの各々に対し、当該ユーザノードが保有するメッセージを用いて前記排他的論理和を復号するステップを行うよう指示する、
ネットワーク制御装置。 - 前記ネットワークが、2つの前記ユーザノードを接続するリンクをさらに備え、
前記第1指示部はさらに、前記2つのユーザノードのうちの一方のユーザノードに対し、当該ユーザノードが保有するメッセージを、当該ユーザノードと前記2つのユーザノードのうちの他方のユーザノードとを接続する前記リンクに割り当てられた鍵により暗号化してなる暗号文を前記他方のユーザノードへ送信するステップを行うよう指示する、
請求項1に記載のネットワーク制御装置。 - 複数単位のメッセージを保有している物理ユーザノードに仮想ユーザノードを追加し、前記物理ユーザノードが保有している前記複数単位のメッセージのうち、少なくとも1単位のメッセージを前記仮想ユーザノードに割り当てて、前記物理ユーザノード及び前記仮想ユーザノードが前記複数のユーザノードに含まれるものとなるように前記ネットワークを構成するネットワーク構成部をさらに備える請求項1又は2に記載のネットワーク制御装置。
- 前記所定のルールを含む複数のルールを前記複数のユーザノードの各々と前記ハブノードとに対して送信する送信部をさらに備え、
前記第2指示部は、前記所定のルールが前記複数のルールのうちのいずれであるかを示すルール番号と前記排他的論理和とを前記複数のユーザノードの各々に送信するよう指示を行う、
請求項1~3のいずれか一項に記載のネットワーク制御装置。 - 前記第1指示部と前記第2指示部とが物理的に異なるノードに存在する、請求項1~4のいずれか一項に記載のネットワーク制御装置。
- 請求項1~5のいずれか一項に記載のネットワーク制御装置と、
前記複数のユーザノードと、
前記ハブノードと、
前記複数のユーザノードの各々と前記ハブノードとをそれぞれ接続する複数のリンクと
を備えるネットワーク。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022060274A JP2023150921A (ja) | 2022-03-31 | 2022-03-31 | ネットワーク制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022060274A JP2023150921A (ja) | 2022-03-31 | 2022-03-31 | ネットワーク制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023150921A true JP2023150921A (ja) | 2023-10-16 |
Family
ID=88326701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022060274A Pending JP2023150921A (ja) | 2022-03-31 | 2022-03-31 | ネットワーク制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023150921A (ja) |
-
2022
- 2022-03-31 JP JP2022060274A patent/JP2023150921A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8755520B2 (en) | Apparatus and method for generating a key for broadcast encryption | |
CN1859081B (zh) | 一种即时消息加密传输方法和系统 | |
CN101142779A (zh) | 结合qkd与ipsec的方法 | |
CN108540436B (zh) | 基于量子网络实现信息加解密传输的通信系统和通信方法 | |
CN108847928B (zh) | 基于群组型量子密钥卡实现信息加解密传输的通信系统和通信方法 | |
WO2023082599A1 (zh) | 基于量子密钥的区块链网络安全通信方法 | |
CN102088352B (zh) | 消息中间件的数据加密传输方法和系统 | |
CN105376261A (zh) | 一种用于即时通讯消息的加密方法及系统 | |
JP2022516352A (ja) | ワンタイムパッド暗号化ハブ | |
JP2021506023A (ja) | ワンタイムパッドを使用した安全なコンテンツルーティング | |
CN114362928B (zh) | 一种用于多节点间加密的量子密钥分发与重构方法 | |
CN111953487B (zh) | 一种密钥管理系统 | |
Takahashi et al. | A high-speed key management method for quantum key distribution network | |
Hajyvahabzadeh et al. | A new group key management protocol using code for key calculation: CKC | |
US20240178994A1 (en) | Secure symmetric key distribution | |
WO2023210557A1 (ja) | ネットワーク制御装置 | |
JP2023150921A (ja) | ネットワーク制御装置 | |
Du et al. | Towards solving multicast key management problem | |
KR20030050881A (ko) | 무선랜 시스템에서의 암호키 관리 방법 | |
Sarumi | A review of encryption methods for secure data communication | |
CN114978774B (zh) | 基于嵌套式保护结构的多层级密钥管理方法 | |
CN112311542B (zh) | 一种满足电力业务隔离需求的量子保密通信系统及方法 | |
WO2023145379A1 (ja) | ネットワーク符号化に基づく秘匿通信システム及び方法 | |
Yanyan et al. | Research on Automatically Switched Optical Network Security Based on Quantum Key Distribution | |
CN107040921A (zh) | 一种基于点对点的短信加密系统 |