(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-01
(45)【発行日】2023-12-11
(54)【発明の名称】転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラム
(51)【国際特許分類】
H04L 9/12 20060101AFI20231204BHJP
H04L 9/36 20060101ALI20231204BHJP
【FI】
H04L9/12
H04L9/36
(21)【出願番号】P 2020186158
(22)【出願日】2020-11-06
【審査請求日】2023-02-03
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度、総務省「グローバル量子暗号通信網構築のための研究開発」に関する委託研究(JPMI00361)、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】田中 康之
(72)【発明者】
【氏名】山浦 隆博
(72)【発明者】
【氏名】谷澤 佳道
【審査官】行田 悦資
(56)【参考文献】
【文献】米国特許出願公開第2019/0097792(US,A1)
【文献】特開2016-144206(JP,A)
【文献】国際公開第2006/057280(WO,A1)
【文献】中国特許出願公開第103916239(CN,A)
【文献】特表2020-519190(JP,A)
【文献】米国特許出願公開第2019/0149327(US,A1)
【文献】特表2016-528756(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/12
H04L 9/36
(57)【特許請求の範囲】
【請求項1】
量子鍵配送を用いて復号鍵を生成する鍵管理サーバ装置に接続された転送装置であって、
携帯電話網管理サーバ装置から、復号対象パケットを指定する情報を受け付ける受付部と、
受信パケットを受信するパケット受信処理部と、
前記受信パケットが、前記携帯電話網管理サーバ装置から指定された前記復号対象パケットである場合、前記受信パケットを復号する復号処理部と、
復号された前記受信パケット、または、復号されていない前記受信パケットを転送する転送処理部と、
を備える転送装置。
【請求項2】
前記復号処理部は、前記受信パケットが復号対象パケットである場合、前記鍵管理サーバ装置に復号鍵生成要求を送信せずに、前記鍵管理サーバ装置から提供された復号鍵を用いて、前記受信パケットを復号する、
請求項1に記載の転送装置。
【請求項3】
前記携帯電話網管理サーバ装置は、携帯電話網内のバックホールに含まれるコアネットワーク装置である、
請求項1又は2に記載の転送装置。
【請求項4】
前記受付部は、前記携帯電話網管理サーバ装置から、前記復号対象パケットを指定する情報を、パケット通信のQoS(Quality of Service)パラメータの一部として受け付ける、
請求項3に記載の転送装置。
【請求項5】
量子鍵配送を用いて暗号鍵を生成する鍵管理サーバ装置に接続された転送装置であって、
携帯電話網管理サーバ装置から、暗号化対象パケットを指定する情報を受け付ける受付部と、
受信パケットを受信するパケット受信処理部と、
前記受信パケットが前記暗号化対象パケットである場合、前記鍵管理サーバ装置に暗号鍵生成要求を送信し、前記鍵管理サーバ装置から提供された暗号鍵を用いて、前記受信パケットを暗号化する暗号化処理部と、
暗号化された前記受信パケット、または、暗号化されていない前記受信パケットを転送する転送処理部と、
を備える転送装置。
【請求項6】
転送装置と接続された鍵管理サーバ装置であって、
量子鍵配送によってビット列を共有する鍵配送処理部と、
携帯電話網管理サーバ装置から前記転送装置へ暗号化対象パケットが指定された場合、前記転送装置から送信された暗号鍵生成要求に応じて、前記暗号化対象パケットを暗号化する暗号鍵を、前記ビット列から生成する暗号鍵生成部と、
前記暗号鍵を識別する鍵識別情報と、前記暗号鍵の長さを示す鍵長とを含む制御信号を、対向の鍵管理サーバ装置に送信する制御信号処理部と、
を備える鍵管理サーバ装置。
【請求項7】
携帯電話網管理サーバ装置と、第1の鍵管理サーバ装置と、第2の鍵管理サーバ装置と、第1の転送装置と、第2の転送装置とを備え、
前記第1の転送装置は、
前記携帯電話網管理サーバ装置から、暗号化対象パケットを指定する情報を受け付ける受付部と、
第1のネットワークを介して第1の受信パケットを受信するパケット受信処理部と、
前記第1の受信パケットが前記暗号化対象パケットである場合、前記第1の鍵管理サーバ装置に暗号鍵生成要求を送信し、前記第1の鍵管理サーバ装置から提供された暗号鍵を用いて、前記第1の受信パケットを暗号化する暗号化処理部と、
暗号化された前記第1の受信パケット、または、暗号化されていない前記第1の受信パケットを第2のネットワークを介して前記第2の転送装置に転送する第1の転送処理部と、を備え、
前記第1の鍵管理サーバ装置は、
量子鍵配送によってビット列を共有する鍵配送処理部と、
前記携帯電話網管理サーバ装置から前記第1の転送装置へ暗号化対象パケットが指定された場合、前記第1の転送装置から送信された暗号鍵生成要求に応じて、前記暗号化対象パケットを暗号化する暗号鍵を、前記ビット列から生成する暗号鍵生成部と、
前記暗号鍵を識別する鍵識別情報と、前記暗号鍵の長さを示す鍵長とを含む制御信号を、前記第2の鍵管理サーバ装置に送信する制御信号処理部と、を備え、
前記第2の転送装置は、
前記第2のネットワークを介して第2の受信パケットを受信するパケット受信処理部と、
前記第2の受信パケットが復号対象パケットである場合、前記第2の受信パケットを復号する復号処理部と、
復号された前記第2の受信パケット、または、復号されていない前記第2の受信パケットを転送する第2の転送処理部と、を備え、
前記第2の鍵管理サーバ装置は、
量子鍵配送によってビット列を共有する鍵配送処理部と、
前記制御信号を受信する制御信号処理部と、
前記制御信号が受信された時点で、前記第2の転送装置からの復号鍵生成要求を待たずに、前記ビット列から前記鍵識別情報と前記鍵長とに基づいて、前記暗号鍵に対応する復号鍵を生成する復号鍵生成部と、
前記復号鍵を前記第2の転送装置に提供する提供部と、
を備える通信システム。
【請求項8】
量子鍵配送を用いて復号鍵を生成する鍵管理サーバ装置に接続された転送装置の転送方法であって、
前記転送装置が、携帯電話網管理サーバ装置から、復号対象パケットを指定する情報を受け付けるステップと、
前記転送装置が、受信パケットを受信するステップと、
前記転送装置が、前記受信パケットが前記携帯電話網管理サーバ装置から指定された前記復号対象パケットである場合、前記受信パケットを復号するステップと、
復号された前記受信パケット、または、復号されていない前記受信パケットを転送するステップと、
を含む転送方法。
【請求項9】
量子鍵配送を用いて復号鍵を生成する鍵管理サーバ装置に接続された転送装置を、
携帯電話網管理サーバ装置から、復号対象パケットを指定する情報を受け付ける受付部と、
受信パケットを受信するパケット受信処理部と、
前記受信パケットが、前記携帯電話網管理サーバ装置から指定された前記復号対象パケットである場合、前記受信パケットを復号する復号処理部と、
復号された前記受信パケット、または、復号されていない前記受信パケットを転送する転送処理部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラムに関する。
【背景技術】
【0002】
量子鍵配送(QKD:Quantum Key Distribution)によって生成された暗号鍵・復号鍵を鍵管理サーバ装置から取得する際にAPI(Application Programming Interface)が用いられている。ワンタイム暗号を施されたパケットを受信したルータ等の転送装置(またはホスト)は、当該APIを使って鍵管理サーバ装置から復号鍵を得て、パケットを復号する。
【先行技術文献】
【非特許文献】
【0003】
【文献】ETSI GS QKD 014、[令和2年10月9日検索]、インターネット〈URL:https://www.etsi.org/deliver/etsi_gs/QKD/001_099/014/01.01.01_60/gs_qkd014v010101p.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら従来の技術では、携帯電話網の通信性能を損なわずに、QKDによる暗号化及び復号を行うことが難しかった。
【課題を解決するための手段】
【0005】
実施形態の転送装置は、量子鍵配送を用いて復号鍵を生成する鍵管理サーバ装置に接続された転送装置であって、受付部とパケット受信処理部と復号処理部と転送処理部とを備える。受付部は、携帯電話網管理サーバ装置から、復号対象パケットを指定する情報を受け付ける。パケット受信処理部は、受信パケットを受信する。復号処理部は、前記受信パケットが、前記携帯電話網管理サーバ装置から指定された前記復号対象パケットである場合、前記受信パケットを復号する。転送処理部は、復号された前記受信パケット、または、復号されていない前記受信パケットを転送する。
【図面の簡単な説明】
【0006】
【
図1】第1実施形態の通信システムの装置構成の例を示す図。
【
図2】第1実施形態のパケットを暗号化するルータの機能構成の例を示す図。
【
図3】第1実施形態のパケットを復号するルータの機能構成の例を示す図。
【
図4】第1実施形態の暗号鍵を提供する鍵管理サーバ装置の機能構成の例を示す図。
【
図5】第1実施形態の復号鍵を提供する鍵管理サーバ装置の機能構成の例を示す図。
【
図6】第1実施形態の通信方法の例を説明するための図。
【
図7】第2実施形態の通信システムの装置構成の例を示す図。
【
図8】第2実施形態の経路変更指示を受け付けるルータの機能構成の例を示す図。
【
図9】第3実施形態の通信システムの装置構成及び通信方法の例を説明するための図。
【
図10】第4実施形態の通信システムの装置構成の例を示す図。
【
図11】第4実施形態のパケットを復号するルータの機能構成の例を示す図。
【
図12】第1乃至第4実施形態のルータのハードウェア構成の例を示す図。
【
図13】第1乃至第4実施形態の鍵管理サーバ装置のハードウェア構成の例を示す図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラムの実施形態を詳細に説明する。
【0008】
なお、下記の実施形態の説明では、パケットは、ネットワーク経由でやり取りされる情報の伝送単位を示しており、便宜上、L2におけるフレーム、L4におけるセグメントやデータグラムもパケットと呼ぶ。パケットと呼んだ場合にもL2のヘッダやフッタなどの情報を含むものとする。
【0009】
(第1実施形態)
はじめに、第1実施形態の通信システムの装置構成の例について説明する。
【0010】
[装置構成の例]
図1は第1実施形態の通信システム100の装置構成の例を示す図である。第1実施形態の通信システム100は、ルータ10a及び10b、鍵管理サーバ装置20a及び20b、携帯電話網管理サーバ装置30、並びに、ネットワーク101~106を備える。
【0011】
以下、ルータ10a及び10bを区別しない場合には、単にルータ10という。同様に、鍵管理サーバ装置20a及び20bを区別しない場合には、単に鍵管理サーバ装置20という。
【0012】
ルータ10a及び10bはネットワーク102を介して接続されている。ネットワーク102は、例えば携帯電話網内のネットワークである。
【0013】
また、ルータ10aはネットワーク101とも接続されており、ネットワーク101を介して受信されたパケットをルータ10bへ転送する。ルータ10bはネットワーク103とも接続されており、ルータ10bはルータ10aから転送されたパケットをネットワーク103に接続された外部装置に転送する。
【0014】
以下、第1実施形態では、通信システム100が携帯電話網に含まれるネットワーク101~106の通信を制御する場合について説明する。
【0015】
例えば、ルータ10a及び10bは、コアネットワーク装置と基地局装置との間であるモバイルバックホール(Mobile Backhaul)の区間に設置されてもよい。この場合、ネットワーク101、102及び103が、モバイルバックホールに対応する。コアネットワーク装置は、例えばEPC(Evolved Packet Core)または5GC(5G Core network)である。基地局装置は、例えばBBU(Base Band Unit)またはCU(Central Unit)である。
【0016】
また例えば、ルータ10a及び10bは、ベースバンド装置と無線装置との間であるモバイルフロントホール(Mobile Fronthaul)の区間に設置されてもよい。この場合、ネットワーク101、102及び103が、モバイルフロントホールに対応する。ベースバンド装置は、例えばBBU(Base Band Unit)またはDU(Distributed Unit)である。無線装置は、例えばRRH(Remote Radio Head)またはRU(Radio Unit)である。例えば、分散ユニット(DU)を用いたネットワーク構成の場合には、ルータ10a及び10bは、CUとDUとの間であるモバイルミッドホール(Mobile Midhaul)の区間に設置されてもよい。この場合、ネットワーク101、102及び103が、モバイルミッドホールに対応する。
【0017】
例えば、バックホール及びミッドホールにおいて、ユーザデータはGTP-U(GTP user data tunneling; GPRS Tunneling Protocol; GPRS: General Packet Radio Service)プロトコルにて送受信される。また、フロントホールにおいて、ユーザデータはeCPRIプロトコルによって送受信される。
【0018】
ルータ10aは鍵管理サーバ装置20aと接続され、ルータ10bは鍵管理サーバ装置20bと接続される。ルータ10aは、ルータ10bへ転送するパケットを暗号化するための暗号鍵を鍵管理サーバ装置20aから得る。一方、ルータ10bは、ルータ10aから受信されたパケットを復号するための復号鍵を鍵管理サーバ装置20bから得る。
【0019】
便宜上、実施形態の説明にパケットの暗号化、及び、パケットの復号という処理を記載するが、必ずしもパケットの暗号化及び復号をしなくてよい。アプリケーションによっては、ルータ10aはパケットの暗号化はせずに認証データを付与し、ルータ10bはその認証データの検証をするかもしれない。いずれにしても、ルータ10aはパケットの転送処理に伴い、鍵管理サーバ装置20aから鍵を取得し、ルータ10bは、ルータ10aで使用された鍵に対応する鍵を、鍵管理サーバ装置20bから取得する。
【0020】
なお、ルータ10及び鍵管理サーバ装置20は同一筐体内に一つの装置として実装されていてもよいし、それぞれ別の装置として実装されていてもよい。
【0021】
鍵管理サーバ装置20a及び20bはネットワーク104を介して接続されている。ネットワーク102及び104は同一のネットワークでもよいし、異なるネットワークでもよい。典型的には鍵管理サーバ装置20a及び20bは光ファイバ網でお互い接続され、量子暗号通信によりお互いに安全にビット列を共有できる。鍵管理サーバ装置20a及び20bはビット列の共有に加え、暗号鍵に対応する復号鍵を生成・共有するための制御メッセージをやり取りする。例えば、各鍵を特定するための鍵識別子、及び、鍵の長さ(鍵長)等は制御メッセージにより調整される。制御メッセージに含まれる情報を鍵情報と呼ぶ。一方、暗号鍵及び復号鍵そのものを示すビット列を鍵値と呼ぶ。
【0022】
携帯電話網管理サーバ装置30はネットワーク105を介してルータ10aと接続される。携帯電話網管理サーバ装置30は、暗号化するパケットを指定する情報をルータ10aに送信する。また、携帯電話網管理サーバ装置30はネットワーク106を介してルータ10bと接続される。携帯電話網管理サーバ装置30は、復号するパケットを指定する情報をルータ10bに送信する。
【0023】
なお、ネットワーク102、105及び106は、同一のネットワークでもよいし、それぞれ異なるネットワークでもよい。また、ネットワーク102、105及び106の一部が同一のネットワークで残りが別のネットワークでもよい。
【0024】
暗号化するパケット及び復号するパケットの指定は、例えばGTP-Uヘッダに含まれるTEID(トンネル終端の識別子)フィールド、QFI(フローのサービス品質を示す識別子)フィールド、eCPRIプロトコルに含まれるPC_ID(連続するIQデータの識別子;例えば物理的なチャネル、レイヤ及びアンテナポート等)により行われる。コアネットワーク装置がEPCの場合には、携帯電話網管理サーバ装置30は、TEIDを直接指定する代わりに、ベアラ識別子(EPS(Evolved Packet System) Bearer ID; EBI)を指定してもよい。PC_IDには、O-RANフロントホール仕様で定義されるeAxC(extended Antenna-Carrier)識別子(DUのポート識別子、バンドセクタの識別子、コンポーネントキャリア、RUのポート識別子の組み合わせから構成される)を用いてもよい。
【0025】
携帯電話網管理サーバ装置30は、例えば携帯電話網内のバックホールに含まれるコアネットワーク装置である。より具体的には、5Gコアの場合、N2インターフェースで設定を行うAMF(Access and Mobility Management Function)、N4インターフェースで設定を行うSMF( Session Management Function)、ポリシを制御するPCF(Policy Control Function)、及び、外部からの要求を受け付けるAF(Application Function)のうち少なくともひとつが携帯電話網管理サーバ装置30にあたる。なお、上記AFを介して外部からデータの暗号化が必要なことをユーザー又は運用者が設定できるようにすることも可能である。この場合、この設定を行う外部のサーバも携帯電話網管理サーバ装置30といえる。また、EPCの場合にはポリシの管理を行う3GPP TS23.401に記載されているPCRF (Policy and Charging Rules Function)や、通信制御を行うPCEF (Policy and Charging Enforcement Function)が携帯電話網管理サーバ装置30にあたる。
【0026】
なお、フロントホールを暗号化する場合には、PC_IDを指定するサーバとして、上記とは別にアンテナの物理的な位置、アンテナまでの距離(遅延から推測した値でもよい)、アンテナ配下に設置されているアプリケーションの機密性などを把握している携帯電話網管理サーバ装置30からの指示を受けるようにしてもよい。
【0027】
携帯電話網管理サーバ装置30は、特定のノード間や特定のアプリケーション間でやり取りされる一連のパケットを一意に指定し、指定した複数のパケット(フロー、ベアラ、スライス)に対してルータ10aに暗号化を指示し、ルータ10bに復号の指示を行う。なお、携帯電話網管理サーバ装置30が指定する暗号化及び復号の対象は、複数のパケット(フロー)だけでなく、1つのパケットでもよい。
【0028】
さらに、携帯電話網管理サーバ装置30は、ルータ10aに暗号化を行わないフローも指定でき、ルータ10bに復号を行わないフローも指定できる。
【0029】
ルータ10aは、ルータ10bのSAE(Secure Application Entity) ID等の情報を携帯電話網管理サーバ装置30からの指示と共に得てもよいし、当該指示からルータ10bのSAE IDを特定してもよい。
【0030】
携帯電話網管理サーバ装置30からルータ10aへの指示には、例えばGPP TS23.501に記載されているN2インターフェースやN4インターフェース、Diameter、GTP-C(GTP control)、REST、eCPRI、NETCONFなどが用いられる。N2インターフェース及びN4インターフェースの場合、設定に用いられるプロトコルは、例えばN4インターフェースの場合はPFCP(Packet Forwarding Control Protocol)であり、N2インターフェースの場合はNGAP(Next Generation Application Protocol )である。なお、バックホールまたはミッドホールの場合には、QoS(Quality of Service)パラメータの一部として暗号化(復号)の有無及び方式等を指定できるようにしてもよい。また例えば、携帯電話網管理サーバ装置30とルータ10aとの間でファイル及びメモリを共有し、当該ファイル及びメモリ上で指示を行ってもよい。携帯電話網管理サーバ装置30からルータ10bへの指示についても、同様である。
【0031】
[パケットを暗号化するルータの機能構成の例]
図2は第1実施形態のパケットを暗号化するルータ10aの機能構成の例を示す図である。第1実施形態のルータ10aは、受付部11、パケット受信処理部12、暗号化処理部13、暗号鍵受信処理部14、記憶制御部15、記憶部16及び転送処理部17を備える。
【0032】
受付部11は、携帯電話網管理サーバ装置30から、例えば暗号化するパケット(暗号化対象パケット)を指定する情報を受け付ける。また例えば、受付部11は、携帯電話網管理サーバ装置30から、暗号化しないパケットを指定する情報を受け付ける。具体的には、例えば、受付部11は、携帯電話網管理サーバ装置30から、暗号化対象パケット(または暗号化非対象パケット)を指定(指示)する情報を、パケット通信のQoSパラメータの一部として受け付けてもよい。受付部11は、携帯電話網管理サーバ装置30から指示を受けると、指示されたパケットに対する暗号化の有無を暗号化処理部13に伝える。
【0033】
パケット受信処理部12は、ネットワーク101からパケットを受信すると、当該パケットを暗号化処理部13に入力する。
【0034】
暗号化処理部13は、受信したパケットが携帯電話網管理サーバ装置30により暗号化の指示を受けたものならば、鍵長が指定された暗号鍵の読み出し要求を記憶制御部15に入力し、記憶制御部15から暗号鍵を取得する。そして、暗号化処理部13は、パケットに暗号化処理を施し、暗号化されたパケットを転送処理部17に入力する。一方、暗号化処理部13は、受信したパケットが携帯電話網管理サーバ装置30により暗号化の指示を受けたものでなければ、暗号化処理を施さずに、当該パケットを転送処理部17に入力する。
【0035】
暗号鍵受信処理部14は、鍵管理サーバ装置20aから暗号鍵を受け付けると、当該暗号鍵を記憶制御部15に入力する。
【0036】
記憶制御部15は、暗号鍵受信処理部14から暗号鍵を受け付けると、当該暗号鍵を記憶部16に記憶する。また、記憶制御部15は、暗号化処理部13から、鍵長が指定された暗号鍵の読み出し要求を受け付けると、記憶部16から、指定された鍵長の暗号鍵を読み出し、当該暗号鍵と当該暗号鍵を識別する鍵識別子とを暗号化処理部13に入力する。
【0037】
なお、記憶制御部15は、暗号化処理部13の動作とは独立に、暗号鍵受信処理部14を介して鍵管理サーバ装置20aから暗号鍵を取得し続けていてもよいし、暗号化処理部13から指示された場合に、暗号鍵受信処理部14を介して鍵管理サーバ装置20aから暗号鍵を取得してもよい。
【0038】
例えば、暗号鍵の取得はETSI GS QKD 014のような通信プロトコルを使って行われる。また例えば、暗号鍵の取得は、鍵管理サーバ装置20aにより生成される鍵ファイルを介して行われてもよい。また例えば、ルータ10a及び鍵管理サーバ装置20aが同一筐体内に一つの装置として実装されている場合は、共有メモリ上で暗号鍵の取得が行われてもよい。
【0039】
転送処理部17は、暗号化処理部13から、暗号化されたパケット又は暗号化されていないパケットを受け付けると、当該パケットを、ネットワーク102を介してルータ10bへ転送する。
【0040】
[パケットを復号するルータの機能構成の例]
図3は第1実施形態のパケットを復号するルータ10bの機能構成の例を示す図である。基本的には、ルータ10bは、ルータ10aと同様の動作を行う。ルータ10aとルータ10bの違いはパケットに施す処理であり、ルータ10aは暗号化を行い、ルータ10bは復号を行う。第1実施形態のルータ10bは、受付部11、パケット受信処理部12、記憶制御部15、記憶部16、転送処理部17、復号鍵受信処理部18及び復号処理部19を備える。
【0041】
パケットのヘッダには暗号化の有無が含まれる。暗号化されている場合は、パケットのヘッダには、暗号化に用いられた鍵の鍵識別子及び暗号アルゴリズムが含まれる。ペイロードの一部のみが暗号化されている場合は、パケットのヘッダには、暗号化されている領域を特定する情報が含まれる。
【0042】
受付部11は、携帯電話網管理サーバ装置30から、例えば復号するパケット(復号対象パケット)を指定する情報を受け付ける。また例えば、受付部11は、携帯電話網管理サーバ装置30から、復号しないパケットを指定する情報を受け付ける。具体的には、例えば、受付部11は、携帯電話網管理サーバ装置30から、復号対象パケット(または復号非対象パケット)を指定(指示)する情報を、パケット通信のQoSパラメータの一部として受け付けてもよい。受付部11は、携帯電話網管理サーバ装置30から指示を受けると、指示されたパケットに対する復号の有無を復号処理部19に伝える。
【0043】
パケット受信処理部12は、ネットワーク102からパケットを受信すると、当該パケットを復号処理部19に入力する。
【0044】
一方、復号鍵受信処理部18は、パケットの受信処理とは独立に、鍵管理サーバ装置20bから復号鍵を取得する。復号鍵受信処理部18は、鍵管理サーバ装置20bから復号鍵を受け付けると、当該復号鍵を記憶制御部15に入力する。
【0045】
復号鍵の取得は、例えばETSI GS QKD 014のような通信プロトコルを使って行われる。また例えば、復号鍵の取得は、鍵管理サーバ装置20bにより生成される鍵ファイルを介して行われてもよい。また例えば、ルータ10b及び鍵管理サーバ装置20bが同一筐体内に一つの装置として実装されている場合は、共有メモリ上で復号鍵の取得が行われてもよい。
【0046】
記憶制御部15は、復号鍵受信処理部18から復号鍵を受け付けると、当該復号鍵を記憶部16に記憶する。復号鍵は、パケットの受信処理とは独立に、記憶部16に蓄積される。また、記憶制御部15は、復号処理部19から、復号鍵の読み出し要求を受け付けると、記憶部16から、復号鍵を読み出し、当該復号鍵を復号処理部19に入力する。
【0047】
なお、記憶制御部15は、復号処理部19の動作とは独立に、復号鍵受信処理部18を介して鍵管理サーバ装置20bから復号鍵を取得し続ける。これにより、復号処理部19が、鍵管理サーバ装置20bに復号鍵の生成要求を出さずに、鍵管理サーバ装置20bから提供された復号鍵を用いて、パケットを復号可能にする。
【0048】
復号処理部19は、受付部11から指示されたパケットの復号を行う。復号処理部19はパケットの復号を行う際、パケットのヘッダ情報などから、当該パケットの暗号化に使用された暗号鍵に対応する復号鍵の識別情報(典型的には鍵識別子)を抽出し、当該識別情報に対応する復号鍵を、記憶制御部15を介して記憶部16から取得する。
【0049】
このとき、記憶部16が、暗号鍵に対応する復号鍵を持たない場合(復号鍵が鍵管理サーバ装置20bから提供されていなかった場合)、記憶制御部15が復号鍵受信処理部18を介して、鍵管理サーバ装置20bへ当該復号鍵を要求する。そして、記憶制御部15は、復号鍵が復号鍵受信処理部18から入力された際、記憶部16に記憶することなくそのまま復号処理部19に入力する。これによりできるだけ早く復号鍵を復号処理部19に渡すことができ復号処理を早く行うことができる。
【0050】
なお、復号処理部19は、パケットを復号するときに、パケットを復号する復号鍵が鍵管理サーバ装置20bから提供されていなかった場合、所定の時間待ってから、記憶制御部15に復号鍵の読み出しを要求してもよい。
【0051】
復号処理部19は、所定の回数、記憶制御部15に復号鍵の読み出しを要求しても復号鍵を取得できなかった場合、パケットを復号せずに廃棄する。また、復号処理部19は、パケットを復号するときに、パケットを復号する復号鍵が鍵管理サーバ装置20bから提供されていなかった場合、所定の時間、記憶制御部15からの通知を待ち、所定の時間が経過しても通知を受信できなかった場合、パケットを復号せずに廃棄してもよい。
【0052】
復号処理部19は、記憶制御部15から復号鍵を取得すると、パケットに復号処理を施し、復号されたパケットを転送処理部17に入力する。
【0053】
転送処理部17は、復号処理部19から復号されたパケットを受け付けると、当該パケットをネットワーク200bに接続された外部装置へ転送する。
【0054】
[暗号鍵を提供する鍵管理サーバ装置の機能構成の例]
図4は第1実施形態の暗号鍵を提供する鍵管理サーバ装置20aの機能構成の例を示す図である。第1実施形態の鍵管理サーバ装置20aは、鍵配送処理部21、記憶部22、制御信号処理部23、暗号鍵生成部24及び提供部25を備える。
【0055】
鍵配送処理部21は、量子鍵配送(量子暗号通信)を用いて鍵管理サーバ装置20bとネットワーク200dを介してビット列を共有する。なお、鍵配送処理部21は、量子鍵配送処理装置として鍵管理サーバ装置20aとは別の装置として実装されてもよい。
【0056】
記憶部22は、鍵配送処理部21によって共有されたビット列を蓄積する。
【0057】
制御信号処理部23は、前述のビット列の共有に関わる制御に加え、暗号鍵(鍵管理サーバ装置20bでは復号鍵)の識別情報(典型的には鍵識別子)、鍵長及びオフセット情報などの鍵情報を含む制御信号を、復号鍵を生成する鍵管理サーバ装置20bに送信する。オフセット情報は、共有されたビット列のどこから暗号鍵(復号鍵)を切り出すかを示す情報である。
【0058】
暗号鍵生成部24は、ルータ10aからの暗号鍵の要求に応じて、又は自律的に、暗号鍵を生成する。暗号鍵の鍵長は、例えば、ルータ10aからの暗号鍵の要求で指定される。また例えば、暗号鍵生成部24は、所定の鍵長の暗号鍵を自律的に生成する。暗号鍵生成部24は、ビット列から鍵長分の暗号鍵を切り出して、暗号鍵を生成するとともに、当該暗号鍵を識別する鍵識別子を生成する。
【0059】
提供部25は、ルータ10aからの暗号鍵の要求に応じて、又は自律的に、暗号鍵生成部24により生成された暗号鍵をルータ10aに提供する。暗号鍵は、暗号鍵そのものを示すビット列(鍵値)と、暗号鍵を識別する鍵識別子とによりルータ10aに提供される。
【0060】
[復号鍵を提供する鍵管理サーバ装置の機能構成の例]
図5は第1実施形態の復号鍵を提供する鍵管理サーバ装置20bの機能構成の例を示す図である。第1実施形態の鍵管理サーバ装置20bは、鍵配送処理部21、記憶部22、制御信号処理部23、提供部25及び復号鍵生成部26を備える。
【0061】
鍵配送処理部21は、量子鍵配送(量子暗号通信)を用いて鍵管理サーバ装置20aとネットワーク200dを介してビット列を共有する。なお、鍵配送処理部21は、量子鍵配送処理装置として鍵管理サーバ装置20bとは別の装置として実装されてもよい。
【0062】
記憶部22は、鍵配送処理部21によって共有されたビット列を蓄積する。
【0063】
制御信号処理部23は、前述のビット列の共有に関わる制御に加え、復号鍵(鍵管理サーバ装置20aでは暗号鍵)の識別情報(典型的には鍵識別子)、鍵長及びオフセット情報などの鍵情報を含む制御信号を、鍵管理サーバ装置20aから受信する。
【0064】
復号鍵生成部26は、制御信号が受信された時点で、ルータ10bからの復号鍵の生成要求を待たずに、ビット列から鍵識別情報と鍵長とに基づいて、暗号鍵に対応する復号鍵を生成する。これにより、ルータ10bがルータ10aから受信したパケットを復号処理する際に、より早く復号鍵を取得できるようになり、ルータ10bの転送スループット・転送速度が向上する。なお、共有されたビット列から復号鍵を切り出すビットの位置は、例えば制御信号に含まれるオフセット情報により特定される。
【0065】
提供部25は、復号鍵生成部26により生成された復号鍵をルータ10bに提供する。
【0066】
[通信方法の例]
図6は第1実施形態の通信方法の例を説明するための図である。はじめに、ルータ10aの受付部11が、携帯電話網管理サーバ装置30から、暗号化するパケットを指定する情報を受け付ける(ステップS1-1)。一方、ルータ10bでは、受付部11が、携帯電話網管理サーバ装置30から、復号するパケットを指定する情報を受け付ける(ステップS1-2)。
【0067】
次に、ルータ10aのパケット受信処理部12が、ネットワーク101に接続された外部装置からパケットを受信する(ステップS2)。次に、ルータ10aの暗号化処理部13が、ステップS2の処理により受信されたパケットと同じ長さの暗号鍵の生成要求を鍵管理サーバ装置20aに送信する(ステップS3)。
【0068】
次に、鍵管理サーバ装置20aの暗号鍵生成部24が、暗号鍵を生成し、制御信号処理部23が、生成された暗号鍵の鍵情報(鍵識別情報及び鍵長)を鍵管理サーバ装置20bに通知する(ステップS4)。
【0069】
次に、鍵管理サーバ装置20aの提供部25が、暗号鍵をルータ10aに提供する(ステップS5-1)。一方、鍵管理サーバ装置20bでは、復号鍵生成部26が、ルータ10bからの復号鍵の生成要求を待たずに、鍵管理サーバ装置20aと共有されたビット列から、ステップS4で通知された鍵識別情報と鍵長とに基づいて、ステップS5-1の処理により提供された暗号鍵に対応する復号鍵を生成し、提供部25が、当該復号鍵をルータ10bに提供(プッシュ)する(ステップS5-2)。なお、復号鍵生成要求とは例えばETSI GS QKD 014に記載のKey Delivery APIのGet keyやGet key with key IDsの呼び出しのことである。またはTCPやUDP、その他トランスポートプロトコル上でルータ10bから鍵管理サーバ装置へ復号鍵生成要求を出してもよい。ルータ10bと鍵管理サーバ装置がファイルシステムやメモリを共有している場合はプロセス間通信などを通じて復号鍵生成要求を出してもよい。
【0070】
次に、ルータ10aの暗号化処理部13が、ステップS2の処理により受信されたパケットがステップS1-1の処理により指定されたパケットである場合、ステップS5-1の処理により提供された暗号鍵を使用して当該パケットを暗号化し、暗号化されたパケットを、ネットワーク200cを介してルータ10bに転送する(ステップS6)。なお、ステップS1-1の処理により指定されていないパケットは、ステップS6で暗号化処理を行われずに転送される。
【0071】
次に、ルータ10bのパケット受信処理部12が、ステップS6の処理により転送されたパケットを受信する。そして、復号処理部19が、ステップS6の処理により転送されたパケットがステップS1-2の処理により指定されたパケットである場合、ステップS5-2の処理により提供された復号鍵を使用して当該パケットを復号し、転送処理部17が、当該パケットをネットワーク200bに接続された外部装置に転送する(ステップS7)。なお、ステップS1-2の処理により指定されていないパケットは、ステップS7で復号処理を行われずに転送される。
【0072】
以上、説明したように、第1実施形態の通信システム100は、携帯電話網管理サーバ装置30と、鍵管理サーバ装置20a(第1の鍵管理サーバ装置)と、鍵管理サーバ装置20b(第2の鍵管理サーバ装置)と、ルータ10a(第1の転送装置)と、ルータ10b(第2の転送装置)とを備える。
【0073】
ルータ10a(第1の転送装置)では、受付部11が、携帯電話網管理サーバ装置30から、暗号化対象パケットを指定する情報を受け付ける。パケット受信処理部12が、ネットワーク101(第1のネットワーク)を介して第1の受信パケットを受信する。暗号化処理部13が、第1の受信パケットが暗号化対象パケットである場合、第1の鍵管理サーバ装置に暗号鍵生成要求を送信し、第1の鍵管理サーバ装置から提供された暗号鍵を用いて、第1の受信パケットを暗号化する。そして、転送処理部17(第1の転送処理部)が、暗号化された第1の受信パケット、または、暗号化されていない第1の受信パケットを、ネットワーク102(第2のネットワーク)を介して第2の転送装置に転送する。
【0074】
鍵管理サーバ装置20a(第1の鍵管理サーバ装置)では、鍵配送処理部21が、量子鍵配送によってビット列を共有する。暗号鍵生成部24が、携帯電話網管理サーバ装置30から第1の転送装置へ暗号化対象パケットが指定された場合、第1の転送装置から送信された暗号鍵生成要求に応じて、暗号化対象パケットを暗号化する暗号鍵を、ビット列から生成する。そして、制御信号処理部23が、暗号鍵を識別する鍵識別情報と、暗号鍵の長さを示す鍵長とを含む制御信号を、第2の鍵管理サーバ装置に送信する。
【0075】
ルータ10b(第2の転送装置)では、パケット受信処理部12が、第2のネットワークを介して第2の受信パケットを受信する。復号処理部19が、第2の受信パケットが復号対象パケットである場合、第2の鍵管理サーバ装置に復号鍵生成要求を送信せずに、第2の鍵管理サーバ装置から提供された復号鍵を用いて、第2の受信パケットを復号する。そして、転送処理部17(第2の転送処理部)が、復号された第2の受信パケット、または、復号されていない第2の受信パケットを転送する。
【0076】
鍵管理サーバ装置20b(第2の鍵管理サーバ装置)では、鍵配送処理部21が、量子鍵配送によってビット列を共有する。制御信号処理部23が、制御信号を受信する。復号鍵生成部26が、制御信号が受信された時点で、第2の転送装置からの復号鍵生成要求を待たずに、ビット列から鍵識別情報と鍵長とに基づいて、暗号鍵に対応する復号鍵を生成する。そして、提供部25が、復号鍵を第2の転送装置に提供する。
【0077】
これにより、第1実施形態の通信システム100によれば、携帯電話網の通信性能を損なわずに、QKDによる暗号化及び復号を行えるようにすることができる。具体的には、上記構成によって、ルータ10a(QKD対応ルータ)が、携帯電話網からの制御情報(暗号化対象のパケット(フロー)を指定する情報)を受け付けられるので、ルータ10aを通るトラフィックのうち、QKDの暗号鍵で保護すべきトラフィックをルータ10aは特定できるようになる。また、携帯電話網からの制御情報はQKDの鍵管理サーバ装置20a及び20bにも伝えられるので、保護すべき通信の両端点で必要な暗号鍵が共有できるよう鍵管理サーバ装置20a及び20b間で調整が行われる。すなわち、携帯電話網の通信を選択的にQKDで保護できる。この結果、網内主要拠点にQKDによる暗号化ルータ(VPNルータ)を設置しても広域IP網の通信性能を損なうことなく、保護すべき通信についてはこれを適切に暗号化することができるようになる。
【0078】
従来の技術では、QKDによる鍵配送処理速度は携帯電話網の通信速度に対して遅いため、網内主要拠点にQKDによる暗号化ルータ(VPNルータ)を設置してしまうと携帯電話網の通信性能が損なわれていた。
【0079】
なお、
図1の例では、鍵管理サーバ装置20bに接続されたルータ10bが1つである場合を例示しているが、鍵管理サーバ装置20bに複数のルータ10bが接続されていてもよい。鍵管理サーバ装置20bに複数のルータ10bが接続されている場合、制御信号は、復号鍵が提供されるルータ10bを識別するルータ識別情報を更に含む。ルータ識別情報は、例えばルータ10のIPアドレス、ポート番号及びホスト名等を含む。提供部25は、ルータ識別情報により識別されるルータに復号鍵を提供する。
【0080】
(第1実施形態の変形例)
次に第1実施形態の変形例について説明する。変形例の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0081】
変形例では、フローごとにSAE IDを生成して、付与する場合について説明する。
【0082】
変形例のルータ10aの受付部11は、携帯電話網管理サーバ装置30から、暗号化するフローの指定を受けると、そのフローに対応するSAE IDを生成し、自身に追加設定する。受付部11は、例えばルータ10a自身に設定されたSAE IDと、フローを特定する情報とを組み合わせて、フローに対応したSAE IDを生成する。
【0083】
受付部11は、例えば、ルータ10a自身に設定されたSAE IDと、フローを特定する情報とを連結して新しいSAE IDを生成する。また例えば、受付部11は、ルータ10a自身に設定されたSAE IDと、フローを特定する情報のハッシュ値とを連結して新しいSAE IDを生成する。また例えば、受付部11は、ルータ10a自身に設定されたSAE IDと、フローを特定する情報とから得られるハッシュ値を、新しいSAE IDとして生成する。
【0084】
フローに対応する新たなSAE IDは、グローバルユニークであってもよいし、ルータ10a及び10bの間でのみユニーク(ローカルユニーク)であってもよい。いずれにしても、携帯電話網管理サーバ装置30から指示を受け付けたルータ10aの受付部11は、なんらかのルールに従い、暗号化を行うフローに対応したSAE IDを生成する。ルータ10bの受付部11も同様の方法で復号するフローに対応したSAE IDを生成する。
【0085】
それぞれの受付部11により生成されたSAE IDは、例えばルータ10a及び10b間でやり取りされてもよいし、鍵管理サーバ装置20を介して制御信号通信路上でやり取りされてもよい。また例えば、ルータ10aは、ルータ10b自身のSAE IDと、ルータ10bが復号することになるフローを特定する情報とから、ルータ10bが新たに生成するであろうSAE IDを推測してもよい。ルータ10bについても同様である。
【0086】
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0087】
第2実施形態では、経路変更指示を受け付けるルータが追加されている場合について説明する。
【0088】
[装置構成の例]
図7は第2実施形態の通信システム100-2の装置構成の例を示す図である。第2施形態の通信システム100-2は、ルータ10a~10d、鍵管理サーバ装置20a及び20b、携帯電話網管理サーバ装置30、並びに、ネットワーク101~107を備える。第2実施形態では、第1実施形態の構成に、ルータ10c及び10d、並びに、ネットワーク107が追加されている。ルータ10c及び10dは同一の構成を持つので、ルータ10cの場合を例にして
図8を用いて後述する。
【0089】
図7の例では、ルータ10a及び10bはネットワーク107を介して接続されている。ルータ10bにより暗号化されたパケットは、ネットワーク107を通り、ルータ10bに転送される。ネットワーク107及びネットワーク102は同一のネットワークでもよいし、異なるネットワークでもよい。また、ルータ10a及び10bがネットワーク107に接続せず、ルータ10aにより暗号化されたパケットがルータ10c、ネットワーク102及びルータ10dを通ってルータ10bに転送されてもよい。
【0090】
なお、第2実施形態の経路変更を実現する方法としてSDN(Software Defined Networking)対応ルータと、RFC8300によって定義されるNSH(Network Service Header)とを用いてもよい。この場合、受付部11は、携帯電話網管理サーバ装置30から指示された特定のパケットを、ルータ10a及び10bを経由するようにするため、サービスの機能種別と順序とが記述されたNSHヘッダを、当該特定のパケットに付与する。そして転送処理部17は、NSHヘッダで指定されたパケットをルータ10aに転送する。転送処理部17は、その他のパケット(携帯電話網管理サーバ装置30から指示されていないパケット)、及び、ルータ10aから受信したパケットは、ネットワーク102に転送する。
【0091】
[経路変更指示を受け付けるルータの機能構成の例]
図8は第2実施形態の経路変更指示を受け付けるルータ10cの機能構成の例を示す図である。第2実施形態のルータ10cは、受付部11、パケット受信処理部12及び転送処理部17を備える。
【0092】
受付部11は携帯電話網管理サーバ装置30から特定のパケットをルータ10aに転送する指示(指定)を受け付ける。
【0093】
転送処理部17は、指定されたパケットをルータ10aに転送する。転送処理部17は、その他のパケット(携帯電話網管理サーバ装置30から指示されていないパケット)、及び、ルータ10aから受信したパケットは、ネットワーク102に転送する。
【0094】
ルータ10a及び10bは、携帯電話網管理サーバ装置30と接続されていてもよいし、携帯電話網管理サーバ装置30と接続されていなくてもよい。
図7では、ルータ10a及び10bが、携帯電話網管理サーバ装置30との接続を持つ構成を例示している。ルータ10a及び10bが、携帯電話網管理サーバ装置30との接続を持つ場合、第1実施形態と同様に、携帯電話網管理サーバ装置30から指定されたパケットに対し暗号化及び復号を行う。
【0095】
ルータ10a及び10bが、携帯電話網管理サーバ装置30との接続を持たない場合、ルータ10aは受信したパケットを常に暗号化したり、特定のパケットだけを暗号化したりするなど、所定の設定に従って暗号化を行う。復号を行うルータ10bについても同様である。
【0096】
(第3実施形態)
次に第3実施形態について説明する。第3実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0097】
第3実施形態では、鍵管理サーバ装置20a及び20bの間に1以上の鍵管理サーバ装置20が存在する場合について説明する。
【0098】
図9は第3実施形態の通信システム100-3の装置構成及び通信方法の例を説明するための図である。
図3の例では、鍵管理サーバ装置20a及び20bの間に2つの鍵管理サーバ装置20e及び20fが追加されている。
【0099】
第3実施形態では、鍵管理サーバ装置20aが量子暗号通信路を介してビット列を共有している装置は、鍵管理サーバ装置20eである。また、鍵管理サーバ装置20bが量子暗号通信路を介してビット列を共有している装置は鍵管理サーバ装置20fである。そのため、第3実施形態では、鍵管理サーバ装置20a及び20bの間では、ビット列を直接共有できない。
【0100】
そこで、第3実施形態では、鍵管理サーバ装置20aの制御信号処理部23が、ルータ10bがパケットの復号に使う鍵情報を、隣接する鍵管理サーバ装置20eと共有するビット列で保護(暗号化)して、鍵管理サーバ装置20eに送信する。なお、第3実施形態の鍵情報は、鍵識別情報及び鍵長だけでなく、復号鍵に使用される鍵値も含む。鍵管理サーバ装置20eの制御信号処理部23は、自身が隣接する鍵管理サーバ装置20fに同様の方法で、ルータ10bがパケットの復号に使う鍵情報を送信する。このように、ルータ10aにより転送されるパケットの復号に使用される鍵情報は、鍵管理サーバ装置20間のバケツリレー方式で、鍵管理サーバ装置20bまで運ばれる(ステップS4-1~ステップS4-3)。
【0101】
鍵管理サーバ装置20aの提供部25は、暗号鍵をルータ10aに提供する(ステップS5-1)。一方、鍵管理サーバ装置20bでは、復号鍵生成部26が、ルータ10bからの復号鍵の生成要求を待たずに、ステップS4-3の処理により通知された鍵情報に含まれる鍵値を使用して復号鍵を生成し、提供部25が、当該復号鍵をルータ10bに提供(プッシュ)する(ステップS5-2)。
【0102】
なお、ステップS1-1、ステップS1-2、ステップS2、ステップS3、ステップS6及びステップS7の説明は、第1実施形態の説明(
図6参照)と同様なので省略する。
【0103】
なお、鍵管理サーバ装置20a及び20eでは、鍵配送処理部21により事前にビット列が共有されているため、このビット列の一部をルータ10bで使用される復号鍵の鍵値として切り出して使ってもよい。つまり、鍵管理サーバ装置20aは、ルータ10bで使用される復号鍵を新たに生成して、それを鍵管理サーバ装置20eと共有しているビット列で保護して鍵管理サーバ装置20eに送信してもよいし、ルータ10bで使用される復号鍵の鍵値として鍵管理サーバ装置20eと共有しているビット列の一部を使うよう、鍵管理サーバ装置20eに指示してもよい。
【0104】
また、鍵管理サーバ装置20a及び20bで共有される鍵識別情報及び鍵長については、鍵管理サーバ装置20e及び20によりバケツリレー方式で中継されずに、鍵管理サーバ装置20aの制御信号処理部23が、鍵管理サーバ装置20bに直接送信してもよい。なお、この際、鍵識別情報及び鍵長は暗号化されてもよいし、平文でもよい。
【0105】
なお、鍵管理サーバ装置20a及び20bの間に追加の鍵管理サーバ装置20が存在しない場合、つまり、
図1の第1実施形態と同様の構成であっても、鍵管理サーバ装置20aはルータ10bで使用される復号鍵を、鍵管理サーバ装置20bと共有するビット列で保護(暗号化)して鍵管理サーバ装置20bに送信してもよい。
【0106】
以上、説明したように、第3実施形態の通信システム100-3では、鍵管理サーバ装置20aの鍵配送処理部21は、量子鍵配送によって、対向の鍵管理サーバ装置20eとビット列を共有する。鍵管理サーバ装置20aの制御信号処理部23は、共有されたビット列を使用して復号鍵を暗号化し、暗号化された復号鍵及び復号鍵を識別する鍵識別情報を含む制御信号を、対向の鍵管理サーバ装置20eに送信する。
【0107】
同様に、鍵管理サーバ装置20eの鍵配送処理部21は、量子鍵配送によって、対向の鍵管理サーバ装置20fとビット列を共有する。鍵管理サーバ装置20eの制御信号処理部23は、共有されたビット列を使用して復号鍵(鍵管理サーバ装置20aから受信した復号鍵)を暗号化し、暗号化された復号鍵及び復号鍵を識別する鍵識別情報を含む制御信号を、対向の鍵管理サーバ装置20fに送信する。
【0108】
同様に、鍵管理サーバ装置20fの鍵配送処理部21は、量子鍵配送によって、対向の鍵管理サーバ装置20bとビット列を共有する。鍵管理サーバ装置20fの制御信号処理部23は、共有されたビット列を使用して復号鍵(鍵管理サーバ装置20eから受信した復号鍵)を暗号化し、暗号化された復号鍵及び復号鍵を識別する鍵識別情報を含む制御信号を、対向の鍵管理サーバ装置20bに送信する。
【0109】
鍵管理サーバ装置20bの提供部25は、ルータ10bから復号鍵の生成要求を待たずに、鍵管理サーバ装置20fから制御信号を受信した時点で、復号鍵をルータ10bに提供する。
【0110】
一方、ルータ10bでは、パケット受信処理部12が、鍵識別情報により識別される復号鍵に対応する暗号鍵によって暗号化されたパケットを受信する。そして、復号処理部19が、鍵管理サーバ装置20bに復号鍵の生成要求を出さずに、鍵管理サーバ装置20bから提供された復号鍵を用いて、パケットを復号する。
【0111】
これにより、第3実施形態の通信システム100-3によれば、鍵管理サーバ装置20a及び20bの間でビット列を直接共有できない場合でも、第1実施形態と同様の効果が得られる。また、第3実施形態の通信システム100-3によれば、暗号化パケットを受信しなくても、当該暗号化パケットを復号する復号鍵を鍵管理サーバ装置20bから取得できる。
【0112】
(第4実施形態)
次に第4実施形態について説明する。第4実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0113】
第4実施形態では、携帯電話網管理サーバ装置30が、ルータ10aと接続され、ルータ10bとは接続されない場合について説明する。
【0114】
[装置構成の例]
図10は第4実施形態の通信システム100-4の装置構成の例を示す図である。第4実施形態の通信システム100-4は、ルータ10a及び10b、鍵管理サーバ装置20a及び20b、携帯電話網管理サーバ装置30、並びに、ネットワーク101~105を備える。第4実施形態では、第1実施形態の構成から、携帯電話網管理サーバ装置30とルータ10bとの間のネットワーク106が削除されている。
【0115】
[パケットを復号するルータの機能構成の例]
図11は第4実施形態のパケットを復号するルータ10bの機能構成の例を示す図である。第4実施形態のルータ10bは、パケット受信処理部12、記憶制御部15、記憶部16、転送処理部17、復号鍵受信処理部18及び復号処理部19を備える。第4実施形態では、ルータ10bは受付部11を持たない。そして、第1実施形態とは異なり、復号処理部19は受信したパケットのヘッダ等から、当該パケットが暗号化されているか否かを判定し、暗号化されている場合は第1実施形態と同様に、復号鍵を得て復号処理を行う。ルータ10bのその他の動作は、第1実施形態と同様である。
【0116】
最後に、第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20のハードウェア構成の例について説明する。
【0117】
[ハードウェア構成の例]
図12は第1乃至第4実施形態のルータ10のハードウェア構成の例を示す図である。ルータ10は、制御装置301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305及び通信IF(Interface)306を備える。
【0118】
制御装置301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305及び通信IF306は、バス310を介して接続されている。
【0119】
制御装置301は、補助記憶装置303から主記憶装置302に読み出されたプログラムを実行する。主記憶装置302は、ROM(Read Only Memory)及びRAM(Random Access Memory)等のメモリである。補助記憶装置303は、HDD(Hard Disk Drive)及びメモリカード等である。
【0120】
表示装置304は、ルータ10の状態等を表示する。入力装置305はユーザーからの入力を受け付ける。通信IF306は、ネットワーク101~103、105~107及び、鍵管理サーバ装置20に接続するためのインターフェースである。なお、ルータ10は、表示装置304及び入力装置305を備えていなくてもよい。ルータ10が表示装置304及び入力装置305を備えていない場合は、例えば通信IF306を介して接続された外部端末の表示機能及び入力機能を利用してもよい。
【0121】
図13は第1乃至第4実施形態の鍵管理サーバ装置20のハードウェア構成の例を示す図である。第1乃至第4実施形態の鍵管理サーバ装置20は、制御装置401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405、量子通信IF406及び古典通信IF407を備える。
【0122】
制御装置401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405、量子通信IF406及び古典通信IF407は、バス410を介して接続されている。
【0123】
制御装置401は、補助記憶装置403から主記憶装置402に読み出されたプログラムを実行する。主記憶装置402は、ROM及びRAM等のメモリである。補助記憶装置403は、HDD及びメモリカード等である。
【0124】
表示装置404は、鍵管理サーバ装置20の状態等を表示する。入力装置405はユーザーからの入力を受け付ける。なお、鍵管理サーバ装置20は、表示装置404及び入力装置405を備えていなくてもよい。
【0125】
量子通信IF406は、量子暗号通信路(ネットワーク104)に接続するためのインターフェースである。古典通信IF407は、制御信号通信路及びルータ10に接続するためのインターフェースである。
【0126】
第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、メモリカード、CD-R、及び、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータ・プログラム・プロダクトとして提供される。
【0127】
また、第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【0128】
また、第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20が実行するプログラムを、ダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
【0129】
また、第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0130】
第1乃至第4実施形態のルータ10で実行されるプログラムは、第1乃至第4実施形態のルータ10の機能構成のうち、プログラムにより実現可能な機能を含むモジュール構成となっている。プログラムにより実現される機能は、制御装置301が補助記憶装置303等の記憶媒体からプログラムを読み出して実行することにより、主記憶装置302にロードされる。すなわちプログラムにより実現される機能は、主記憶装置302上に生成される。
【0131】
また、第1乃至第4実施形態の鍵管理サーバ装置20で実行されるプログラムは、第1及び第2実施形態の鍵管理サーバ装置20の機能構成のうち、プログラムにより実現可能な機能を含むモジュール構成となっている。プログラムにより実現される機能は、制御装置401が補助記憶装置403等の記憶媒体からプログラムを読み出して実行することにより、主記憶装置402にロードされる。すなわちプログラムにより実現される機能は、主記憶装置402上に生成される。
【0132】
なお、第1乃至第4実施形態のルータ10及び鍵管理サーバ装置20の機能の一部又は全部を、IC(Integrated Circuit)等のハードウェアにより実現してもよい。ICは、例えば専用の処理を実行するプロセッサである。
【0133】
また、複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2つ以上を実現してもよい。
【0134】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0135】
例えば上述のルータ10は、L2レイヤでフレーム(パケット)の転送を行うスイッチでもよい。すなわち、上述の実施形態は、ルータ及びスイッチ、ゲートウェイ等を含む転送装置に適用できる。
【0136】
また例えば、パケットの暗号化および復号は、パケット全体に対して行うのではなく部分的に行ってもよい。好ましくは暗号化もしく復号の指定されたプロトコルのうち、最も上位のプロトコルの指定された条件以外の一部または全部の暗号化を行う。例えば、最も上位のプロトコルのデータ部分(ペイロード部分)を暗号化または復号するようにしてもよい。例えば,IPv4で転送され、UDPの宛先ポート番号が1234番のフローを対象に暗号化および復号を行う場合には、UDPヘッダを除くUDPのデータ部分(ペイロード部分)を暗号化および復号するようにしてもよい。パケット全体を暗号化すると転送で問題が生じたり、復号側で同じ条件で復号対象を指定したりすることが難しくなるが、データ部分のみを暗号化することでこれらの問題を解決することができる。
【0137】
また例えば、暗号化もしくは復号する部分は、携帯電話網管理サーバ装置30から指定されてもよい。例えばフロー毎に暗号化・復号する条件とともに、パケット中の暗号化または復号を行う開始位置及び終了位置を含む暗号化対象部分(復号対象部分)を通知するようにしても良い。例えば、開始位置及び終了位置はパケットの先頭からのオフセットをバイト数(オクテット数)で通知してもよい。ルータ10は上記指示に基づきパケットの指定された部分の暗号化または復号を行う。また、暗号化対象部分(復号対象部分)は、フレームのヘッダやデータなどに埋め込んで伝達するようにしてもよい。さらに逆に、暗号化対象部分(復号対象部分)ではなく、暗号化対象外部分(復号対象外部分)を伝達するようにしてもよい。
【0138】
また例えば、ルータ10aの暗号化処理部13(ルータ10bの復号処理部19)は、暗号化(復号)によってデータが変わるため、イーサネットのチェックサムの再計算を行う。この際、IPv4、UDP、TCP、及び、その他プロトコルのチェックサムが変更になる場合には、計算しなおして付与するようにしてもよい。
【符号の説明】
【0139】
10 ルータ
11 受付部
12 パケット受信処理部
13 暗号化処理部
14 暗号鍵受信処理部
15 記憶制御部
16 記憶部
17 転送処理部
18 復号鍵受信処理部
19 復号処理部
20 鍵管理サーバ装置
21 鍵配送処理部
22 記憶部
23 制御信号処理部
24 暗号鍵生成部
25 提供部
26 復号鍵生成部
30 携帯電話網管理サーバ装置
101~107 ネットワーク
301 制御装置
302 主記憶装置
303 補助記憶装置
304 表示装置
305 入力装置
306 通信IF
310 バス
401 制御装置
402 主記憶装置
403 補助記憶装置
404 表示装置
405 入力装置
406 量子通信IF
407 古典通信IF
410 バス