JPWO2016147340A1 - 暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム - Google Patents

暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム Download PDF

Info

Publication number
JPWO2016147340A1
JPWO2016147340A1 JP2017505944A JP2017505944A JPWO2016147340A1 JP WO2016147340 A1 JPWO2016147340 A1 JP WO2016147340A1 JP 2017505944 A JP2017505944 A JP 2017505944A JP 2017505944 A JP2017505944 A JP 2017505944A JP WO2016147340 A1 JPWO2016147340 A1 JP WO2016147340A1
Authority
JP
Japan
Prior art keywords
encryption
communication
buffer
key
encryption key
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
JP2017505944A
Other languages
English (en)
Other versions
JP6192870B2 (ja
Inventor
陽一 柴田
陽一 柴田
忠和 山中
忠和 山中
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2016147340A1 publication Critical patent/JPWO2016147340A1/ja
Application granted granted Critical
Publication of JP6192870B2 publication Critical patent/JP6192870B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

暗号通信装置(111)は、メモリ(155)と、管理部(167)と、暗号化部(168)と、データ送信部(169)とを備える。暗号化部(168)は、通信データの入力を受ける度に、メモリ(155)の内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵をバッファから削除する。データ送信部(169)は、暗号化部(168)により生成された暗号化データを送信することで暗号通信を行う。管理部(167)は、データ送信部(169)による暗号通信が継続している間、バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵をバッファに追加する。

Description

本発明は、暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラムに関するものである。
ワンタイムパッド暗号は、送信側と受信側とで鍵を共有する共通鍵暗号の一方式である。ワンタイムパッド暗号では、通信データと同一ビット数の暗号鍵を用いて暗号化が行われる。ワンタイムパッド暗号では、一度暗号化に使用された暗号鍵は再利用されない。即ち、暗号鍵は使い捨てにされる。
ワンタイムパッド暗号の典型的な例としては、バーナム暗号がある。バーナム暗号では、通信データと暗号鍵とについて1ビットずつ排他的論理和等が計算され、計算結果が暗号化データとして送信される。通信データと暗号鍵とに1ビットでもズレが生じていると、暗号化データは正しく復号できない。そのため、通信データに対して、どの部分の暗号鍵を利用するかをどのような手段で調整するかが重要である。
ワンタイムパッド暗号を用いた従来の通信システムでは、暗号通信前に通信端末間で互いに持っている暗号鍵が確認され、暗号化に利用する暗号鍵が調整される。これにより、暗号鍵に部分的な抜け又はズレ等があった場合でも暗号通信が可能になっている(例えば、特許文献1参照)。
国際公開第2012/025987号
従来の通信システムでは、一定の時間分の通信データを暗号化できるだけの暗号鍵が事前に用意される。しかし、前述したように、暗号鍵は使い捨てにされるため、暗号通信中に暗号鍵が枯渇する場合がある。その場合、暗号鍵が枯渇してから暗号鍵が補充されるまでに遅延が生じる。なお、暗号鍵が「枯渇」するというのは、暗号鍵の残数が0個になるという意味である。
本発明は、暗号鍵が枯渇してから暗号鍵が補充されるまでに生じる遅延を解消することを目的とする。
本発明の一の態様に係る暗号通信装置は、
メモリと、
通信データの入力を受ける度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵を前記バッファから削除する暗号化部と、
前記暗号化部により生成された暗号化データを送信することで暗号通信を行うデータ送信部と、
前記データ送信部による暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する管理部とを備える。
本発明では、暗号通信が継続している間、バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵がバッファに追加される。このため、暗号鍵が枯渇してから暗号鍵が補充されるまでに生じる遅延を解消することができる。
実施の形態1に係る通信システムの構成を示すブロック図。 実施の形態1に係る通信システムの動作を示す図。 実施の形態1に係る暗号通信装置の構成を示すブロック図。 実施の形態1に係る暗号通信装置の構成を示すブロック図。 実施の形態1に係る暗号通信装置の動作を示すフローチャート。 実施の形態1に係る暗号通信装置の動作を示す詳細フローチャート。 実施の形態1に係る暗号通信装置の動作を示す詳細フローチャート。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 実施の形態1に係る暗号通信装置の処理の具体例を示す図。 本発明の実施の形態に係る暗号通信装置のハードウェア構成例を示す図。
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一又は相当する部分には、同一符号を付している。実施の形態の説明において、同一又は相当する部分については、その説明を適宜省略又は簡略化する。
実施の形態1.
まず、本実施の形態の概要として、本実施の形態に係るシステムの構成、本実施の形態に係るシステムの動作、本実施の形態の効果を順番に説明する。
***構成の説明***
図1を参照して、本実施の形態に係るシステムである通信システム100の構成を説明する。
通信システム100は、複数の暗号通信端末110,120を備える。
本実施の形態において、暗号通信端末110,120は、それぞれスマートフォン、タブレット、携帯電話機といった携帯端末である。なお、暗号通信端末110,120は、それぞれパーソナルコンピュータ等、携帯端末以外の端末であってもよい。
送信側の暗号通信端末110である端末Aは、暗号通信装置111と、処理装置112とを備える。
暗号通信装置111は、通信データの入力を受ける度に、使い捨ての暗号鍵を使用して通信データを暗号化することで暗号化データを生成する。暗号通信装置111は、生成した暗号化データを送信することで暗号通信を行う。
処理装置112は、通信データを暗号通信装置111に入力するプログラム113を実行する。本実施の形態において、プログラム113は、複数のアプリケーション114である。処理装置112は、具体的には、CPU(Central・Processing・Unit)等のプロセッサである。
端末Aには、鍵共有装置115を接続することができる。暗号通信装置111は、端末Aに鍵共有装置115が接続されている場合に、鍵共有装置115から暗号鍵を取得することができる。暗号通信装置111は、端末Aに鍵共有装置115が接続されていない場合には、予め暗号鍵を記憶しておくか、独自に暗号鍵を生成する。
受信側の暗号通信端末120である端末Bは、暗号通信装置121と、処理装置122とを備える。
暗号通信装置121は、暗号化データを受信することで暗号通信を行う。暗号通信装置121は、暗号化データを受信する度に、使い捨ての暗号鍵を使用して暗号化データを復号することで通信データを生成する。
処理装置122は、通信データの入力を暗号通信装置121から受けるプログラム123を実行する。本実施の形態において、プログラム123は、複数のアプリケーション124である。処理装置122は、具体的には、CPU等のプロセッサである。
端末Bには、鍵共有装置125を接続することができる。暗号通信装置121は、端末Bに鍵共有装置125が接続されている場合に、鍵共有装置125から暗号鍵を取得することができる。暗号通信装置121は、端末Bに鍵共有装置125が接続されていない場合には、予め暗号鍵を記憶しておくか、独自に暗号鍵を生成する。
端末Aと端末Bは、インターネット等のネットワーク130に接続されている。
本実施の形態では、暗号通信端末110,120同士の暗号通信が、ネットワーク130を介して、暗号通信端末110,120のそれぞれに内蔵された暗号通信装置111,121により行われる。暗号通信装置111,121は、暗号通信端末110,120のそれぞれで実行されるアプリケーション114,124とは独立した暗号通信モジュールである。よって、本実施の形態では、暗号通信機能を持たないアプリケーション114,124でも暗号通信を利用することが可能となる。
暗号通信装置111,121は、後述するように、各アプリケーション114,124用に暗号鍵を一時保有するバッファを持つ。暗号通信端末110において、各アプリケーション114が他の暗号通信端末120との通信を行う場合には、該当するバッファにある暗号鍵を用いて暗号通信が行われる。暗号通信端末120においても同じである。
暗号通信装置111,121は、各アプリケーション114,124用のバッファを管理する。暗号通信によりバッファ内の暗号鍵が減少した場合には、暗号通信装置111,121が、暗号通信により消費される暗号鍵の量とバッファ内の暗号鍵の残量とを基に、必要であればバッファに暗号鍵を追加する。
なお、暗号通信端末110,120のうちいずれか1台又は両方に、送信側の暗号通信モジュールと受信側の暗号通信モジュールとの両方が搭載されていてもよい。即ち、端末Aの暗号通信装置111が、送信側と受信側との両方の機能を有していてもよい。その場合、暗号通信装置111は、送信側と受信側との2つの暗号通信モジュールで構成されてもよいし、送信側と受信側とが統合された1つの暗号通信モジュールで構成されてもよい。端末Bの暗号通信装置121についても、端末Aの暗号通信装置111と同じである。
通信システム100が備える暗号通信端末の台数は、2台に限らず、3台以上でもよい。3台以上の暗号通信端末のうち、少なくとも1台の暗号通信端末に送信側の暗号通信モジュールが搭載され、他の少なくとも1台の暗号通信端末に受信側の暗号通信モジュールが搭載されていれば、残りの暗号通信端末には、送信側の暗号通信モジュールと受信側の暗号通信モジュールとのうち少なくともいずれかが搭載されていればよい。
***動作の説明***
図2を参照して、通信システム100の動作を説明する。具体的には、端末Aのアプリケーション114と端末Bのアプリケーション124とで、通信が行われる場合の動作の概要を説明する。この動作では、端末Aのアプリケーション114から送られた通信データが、端末Aの暗号通信装置111で暗号化される。暗号化された通信データが、端末Bの暗号通信装置121で復号される。復号された通信データが、端末Bのアプリケーション124で受け取られる。
まず、端末Aのアプリケーション114は、端末Bの宛先情報T1を端末Aの暗号通信装置111に送る。暗号通信装置111は、宛先情報T1から端末Bを特定する。暗号通信装置111は、自身の保有する暗号鍵群G1から鍵リストL1を作成する。暗号鍵群G1には、暗号鍵K1が含まれる。暗号通信装置111は、端末Bの暗号通信装置121に鍵リストL1を送信する。
端末Bのアプリケーション124は、端末Aの宛先情報T2を端末Bの暗号通信装置121に送る。暗号通信装置121は、宛先情報T2から端末Aを特定する。暗号通信装置121は、端末Aの暗号通信装置111から鍵リストL1を受信する。暗号通信装置121は、自身の保有する暗号鍵群G2から鍵リストL2を作成する。暗号鍵群G2には、暗号鍵K1が含まれる。ただし、暗号鍵群G2に含まれる暗号鍵の全てが暗号鍵群G1に含まれる暗号鍵と一致している必要はない。暗号通信装置121は、鍵リストL1と鍵リストL2とから、暗号通信で利用する暗号鍵K1を特定する。暗号通信装置121は、暗号鍵K1の識別情報である鍵情報I1を端末Aの暗号通信装置111に送信する。
端末Aの暗号通信装置111は、鍵情報I1を受信する。暗号通信装置111は、鍵情報I1が指す暗号鍵K1のデータを、端末Aのアプリケーション114に割り当てられたバッファM1に展開する。端末Bの暗号通信装置121においても、鍵情報I1が指す暗号鍵K1のデータを、端末Bのアプリケーション124に割り当てられたバッファM2に展開する。
その後、端末Aのアプリケーション114から端末Aの暗号通信装置111に通信データD1が送られたとすると、暗号通信装置111は、バッファM1にある暗号鍵K1を使って通信データD1を暗号化し、暗号化データE1を作成する。暗号通信装置111は、端末Bの暗号通信装置121に暗号化データE1を送信する。
端末Bの暗号通信装置121は、暗号化データE1を受信する。暗号通信装置121は、バッファM2にある暗号鍵K1を使って暗号化データE1を復号し、通信データD1を得る。暗号通信装置121は、通信データD1を端末Bのアプリケーション124に送る。
以降、端末Aのアプリケーション114から端末Aの暗号通信装置111に送られる通信データがなくなるまで、同様の処理が繰り返される。なお、「同様の処理」とは、処理ごとに異なる暗号鍵を使って上記と同じ手順で行われる処理のことである。
ここで、バッファM1及びバッファM2にある暗号鍵が暗号通信により消費されることで、暗号鍵が不足し、暗号通信が行えない場合が想定される。そのため、端末Aの暗号通信装置111と端末Bの暗号通信装置121は、それぞれバッファM1及びバッファM2の暗号鍵の減少速度を監視する。
端末Aの暗号通信装置111と端末Bの暗号通信装置121は、それぞれバッファM1及びバッファM2の暗号鍵がなくなる前に、バッファM1及びバッファM2に暗号鍵を追加する。追加する暗号鍵を特定するために、端末Aの暗号通信装置111は、自身の保有する暗号鍵群G3から鍵リストL3を作成する。暗号鍵群G3には、暗号鍵K3が含まれる。暗号通信装置111は、端末Bの暗号通信装置121に鍵リストL3を送信する。
端末Bの暗号通信装置121は、鍵リストL3を受信する。暗号通信装置121は、自身の保有する暗号鍵群G4から鍵リストL4を作成する。暗号鍵群G4には、暗号鍵K3が含まれる。ただし、暗号鍵群G4に含まれる暗号鍵の全てが暗号鍵群G3に含まれる暗号鍵と一致している必要はない。暗号通信装置121は、鍵リストL3と鍵リストL4とから、暗号通信で利用する暗号鍵K2を特定する。暗号通信装置121は、暗号鍵K2の識別情報である鍵情報I2を端末Aの暗号通信装置111に送信する。
端末Aの暗号通信装置111は、鍵情報I2を受信する。暗号通信装置111は、鍵情報I2が指す暗号鍵K2のデータを、端末Aのアプリケーション114に割り当てられたバッファM1に展開する。端末Bの暗号通信装置121においても、鍵情報I2が指す暗号鍵K2のデータを、端末Bのアプリケーション124に割り当てられたバッファM2に展開する。
***効果の説明***
本実施の形態では、上記のように、特定のアプリケーション114,124の暗号通信中に暗号鍵が枯渇する前に暗号鍵を追加することで、暗号鍵が枯渇してから暗号鍵が追加されるまでに生じる遅延を解消することができる。
また、本実施の形態では、同一の暗号通信端末110,120内で、複数のアプリケーション114,124がワンタイムパッド暗号通信を行う場合に、それぞれのアプリケーション114,124で専用の暗号鍵を保有する必要がない。よって、暗号通信端末110,120内のデータ容量を削減することができる。
また、本実施の形態では、暗号鍵を取得するための通信路を、暗号通信を行う通信路とは別に用意する必要がない。
次に、本実施の形態の詳細として、暗号通信装置111,121の構成、暗号通信装置111,121の動作、本実施の形態の効果を順番に説明する。
***構成の説明***
図3を参照して、端末Aの暗号通信装置111の構成を説明する。
暗号通信装置111は、有線インタフェース151と、内部インタフェース152と、通信インタフェース153と、記憶媒体154と、メモリ155とを備える。また、暗号通信装置111は、取得部161と、データ受け付け部162と、要求受け付け部163と、リスト生成部164と、リスト送信部165と、情報受信部166と、管理部167と、暗号化部168と、データ送信部169とを備える。
有線インタフェース151は、外部装置と通信を行うためのインタフェースである。有線インタフェース151は、鍵共有装置115から暗号鍵を取得するために用いられる。なお、有線インタフェース151は、無線インタフェースに置き換えることができる。
内部インタフェース152は、端末A内のアプリケーション114と通信を行うためのインタフェースである。内部インタフェース152は、アプリケーション114と宛先情報及び通信データのやり取りを行うために用いられる。
通信インタフェース153は、他の端末と通信を行うためのインタフェースである。通信インタフェース153は、端末Bと通信を行うために用いられる。
記憶媒体154は、取得部161で取得された暗号鍵群を記憶する。
メモリ155は、端末Aのアプリケーション114に関連付けられたバッファを有する。
取得部161は、有線インタフェース151を介して、鍵共有装置115から暗号鍵を取得する。取得部161は、取得した暗号鍵を記憶媒体154に保存する。
データ受け付け部162は、内部インタフェース152を介して、端末Aのアプリケーション114から通信データを受け取る。データ受け付け部162は、受け取った通信データを暗号化部168に渡す。
要求受け付け部163は、内部インタフェース152を介して、端末Aのアプリケーション114から宛先情報を受け取る。要求受け付け部163は、リスト生成部164に鍵リストの生成を指示する。
リスト生成部164は、要求受け付け部163から宛先情報を受け取る。リスト生成部164は、記憶媒体154にある暗号鍵群から鍵リストを生成する。リスト生成部164は、生成した鍵リストを、宛先情報とともにリスト送信部165に渡す。
リスト送信部165は、リスト生成部164から鍵リストと宛先情報とを受け取る。リスト送信部165は、宛先情報に記載されている宛先である端末Bに、通信インタフェース153を介して鍵リストを送信する。
情報受信部166は、リスト送信部165が鍵リストを送信した相手である端末Bから、通信インタフェース153を介して、暗号鍵の識別情報である鍵情報を受信する。情報受信部166は、受信した鍵情報を管理部167に渡す。
管理部167は、情報受信部166から受け取った鍵情報に合致する暗号鍵を記憶媒体154から取得する。管理部167は、記憶媒体154にある暗号鍵に使用中であることを示すフラグを設定する。そして、管理部167は、メモリ155の端末Aのアプリケーション114に関連付けたバッファに暗号鍵を展開する。ここで、メモリ155に、端末Aのアプリケーション114に関連付けたバッファがない場合には、管理部167は、メモリ155に、そのバッファを設定する。管理部167は、バッファに展開した暗号鍵を記憶媒体154から削除する。
暗号化部168は、データ受け付け部162から通信データを受け取る。暗号化部168は、メモリ155にある端末Aのアプリケーション114に関連付けられたバッファから暗号鍵のビット列を取得する。暗号化部168は、取得した暗号鍵のビット列を使って通信データをワンタイムパッド暗号により暗号化し、暗号化データを生成する。暗号化部168は、生成した暗号化データをデータ送信部169に渡す。
データ送信部169は、通信インタフェース153を介して、暗号化部168から受け取った暗号化データを送信する。
図4を参照して、端末Bの暗号通信装置121の構成を説明する。
暗号通信装置121は、有線インタフェース171と、内部インタフェース172と、通信インタフェース173と、記憶媒体174と、メモリ175とを備える。また、暗号通信装置121は、取得部181と、データ送出部182と、要求受け付け部183と、情報生成部184と、リスト受信部185と、情報送信部186と、管理部187と、復号部188と、データ受信部189とを備える。
有線インタフェース171は、外部装置と通信を行うためのインタフェースである。有線インタフェース171は、鍵共有装置125から暗号鍵を取得するために用いられる。なお、有線インタフェース171は、無線インタフェースに置き換えることができる。
内部インタフェース172は、端末B内のアプリケーション124と通信を行うためのインタフェースである。内部インタフェース172は、アプリケーション124と宛先情報及び通信データのやり取りを行うために用いられる。
通信インタフェース173は、他の端末と通信を行うためのインタフェースである。通信インタフェース173は、端末Aと通信を行うために用いられる。
記憶媒体174は、取得部181で取得された暗号鍵群を記憶する。
メモリ175は、端末Bのアプリケーション124に関連付けられたバッファを有する。
取得部181は、有線インタフェース171を介して、鍵共有装置125から暗号鍵を取得する。取得部181は、取得した暗号鍵を記憶媒体174に保存する。
要求受け付け部183は、内部インタフェース172を介して、端末Bのアプリケーション124から宛先情報を受け取る。要求受け付け部183は、リスト受信部185に鍵リストの受信待機を指示する。
リスト受信部185は、通信インタフェース173を介して鍵リストを受信する。リスト受信部185は、受信した鍵リストを情報生成部184に渡す。
情報生成部184は、リスト受信部185から鍵リストを受け取る。情報生成部184は、記憶媒体174にある暗号鍵群から鍵リストを生成する。情報生成部184は、リスト受信部185から受け取った鍵リストと、生成した鍵リストとから、暗号鍵の識別情報である鍵情報を生成する。情報生成部184は、生成した鍵情報を情報送信部186に渡す。
情報送信部186は、通信インタフェース173を介して、リスト受信部185が鍵リストを受信した相手である端末Aに、情報生成部184から受け取った鍵情報を送信する。情報送信部186は、送信した鍵情報を管理部187に渡す。
管理部187は、情報送信部186から受け取った鍵情報に合致する暗号鍵を記憶媒体174から取得する。管理部187は、記憶媒体174にある暗号鍵に使用中であることを示すフラグを設定する。そして、管理部187は、メモリ175の端末Bのアプリケーション124に関連付けたバッファに暗号鍵を展開する。ここで、メモリ175に、端末Bのアプリケーション124に関連付けたバッファがない場合には、管理部187は、メモリ175に、そのバッファを設定する。管理部187は、バッファに展開した暗号鍵を記憶媒体174から削除する。
データ受信部189は、通信インタフェース173を介して、暗号化データを受信する。データ受信部189は、受信した暗号化データを復号部188に渡す。
復号部188は、データ受信部189から暗号化データを受け取る。復号部188は、メモリ175にある端末Bのアプリケーション124に関連付けられたバッファから暗号鍵のビット列を取得する。復号部188は、取得した暗号鍵のビット列を使って暗号化データをワンタイムパッド暗号により復号し、通信データを生成する。復号部188は、生成した通信データをデータ送出部182に渡す。
データ送出部182は、通信データを復号部188から受け取る。データ送出部182は、受け取った通信データを、内部インタフェース172を介して、端末Bのアプリケーション124に渡す。
***動作の説明***
図5から図7を参照して、端末Aの暗号通信装置111及び端末Bの暗号通信装置121の動作を説明する。具体的には、端末Aの暗号通信装置111が端末Aのアプリケーション114の暗号通信要求を受け取ってから、端末Bのアプリケーション124に通信データが届くまでの動作について説明する。暗号通信装置111,121の動作は、本実施の形態に係る暗号通信方法に相当する。暗号通信装置111,121の動作は、本実施の形態に係る暗号通信プログラムの処理手順に相当する。
図5は、端末Aの暗号通信装置111及び端末Bの暗号通信装置121の大まかな処理の流れを示している。
ステップS11において、端末Aのアプリケーション114と端末Bのアプリケーション124との間で任意の方法により暗号通信を利用することが決定される。端末Aの暗号通信装置111は、端末Aのアプリケーション114から暗号通信要求を受け取る。この暗号通信要求には、端末Bを指定する宛先情報T1が含まれる。端末Bの暗号通信装置121も、端末Bのアプリケーション124から暗号通信要求を受け取る。この暗号通信要求には、端末Aを指定する宛先情報T2が含まれる。
ステップS12において、端末Aの暗号通信装置111と端末Bの暗号通信装置121は、互いに鍵確認処理を行う。
ステップS13において、端末Aの暗号通信装置111は、送信側の暗号通信処理を行う。端末Bの暗号通信装置121は、受信側の暗号通信処理を行う。
図6は、図5のステップS12における鍵確認処理の流れを示している。なお、鍵確認処理は通信データの送受信に直接関与していないため、端末Aの暗号通信装置111と端末Bの暗号通信装置121との役割は入れ替わってもよい。
ステップS21において、端末Aの暗号通信装置111は、記憶媒体154にある暗号鍵群G1から鍵リストL1を作成する。
ステップS22において、端末Aの暗号通信装置111は、ステップS21で作成した鍵リストL1を端末Bの暗号通信装置121に送信する。
ステップS23において、端末Bの暗号通信装置121は、ステップS22で送信された鍵リストL1を受信する。また、端末Bの暗号通信装置121は、記憶媒体174にある暗号鍵群G2から鍵リストL2を作成する。
ステップS24において、端末Bの暗号通信装置121は、ステップS23で受信した鍵リストL1と、ステップS23で作成した鍵リストL2とから、暗号通信に用いる暗号鍵K1を確定する。
ステップS25において、端末Bの暗号通信装置121は、記憶媒体174にある、ステップS24で確定した暗号鍵K1に対して、使用中であることを示すフラグを設定する。
ステップS26において、端末Bの暗号通信装置121は、ステップS24で確定した暗号鍵K1の鍵情報I1を端末Aの暗号通信装置111に送信する。
ステップS27において、端末Aの暗号通信装置111は、ステップS26で送信された鍵情報I1を受信する。
ステップS28において、端末Aの暗号通信装置111は、記憶媒体154にある、ステップS27で受信した鍵情報I1に対応する暗号鍵K1に対して、使用中であることを示すフラグを設定する。
ステップS29において、端末Aの暗号通信装置111は、ステップS27で受信した鍵情報I1に対応する暗号鍵K1をメモリ155にあるバッファM1に展開し、元の暗号鍵K1を記憶媒体154から削除する。
ステップS30において、端末Aの暗号通信装置111は、暗号通信の開始を通知する。
ステップS31において、端末Bの暗号通信装置121は、暗号通信の開始の通知を受ける。
ステップS32において、端末Bの暗号通信装置121は、ステップS25でフラグを設定した暗号鍵K1をメモリ175にあるバッファM2に展開し、元の暗号鍵K1を記憶媒体174から削除する。
なお、ステップS24からS29及びステップS32の処理は、暗号鍵K1だけでなく、送信側の鍵リストL1と受信側の鍵リストL2とで共通する全ての暗号鍵について行われる。
図7は、図5のステップS13における暗号通信処理の流れを示している。
ステップS41において、端末Aの暗号通信装置111は、端末Aのアプリケーション114から通信データD1を受け取る。
ステップS42において、端末Aの暗号通信装置111は、メモリ155のバッファM1にある暗号鍵K1を用いて、ステップS41で受け取った通信データD1をワンタイムパッド暗号により暗号化し、暗号化データE1を得る。
ステップS43において、端末Aの暗号通信装置111は、ステップS42で得た暗号化データE1を端末Bの暗号通信装置121に送信する。ここで通信終了であれば、暗号通信処理が終了する。
通信終了でない場合は、ステップS44において、端末Aの暗号通信装置111は、バッファM1にある暗号鍵の残量をチェックし、バッファM1に暗号鍵を追加する必要があるか判定する。暗号鍵を追加する必要がなければ、端末Aの暗号通信装置111は、次の通信データについてステップS41以降の処理を繰り返す。
ステップS44の判定の結果、バッファM1に暗号鍵を追加する場合には、ステップS45において、端末Aの暗号通信装置111は、鍵確認処理を行う。鍵確認処理については、図6を用いて説明した通りであるが、ステップS30及びS31における暗号通信の開始を通知する処理は不要である。
ステップS46において、端末Bの暗号通信装置121は、端末Aの暗号通信装置111から、ステップS43で送信された暗号化データE1を受信する。
ステップS47において、端末Bの暗号通信装置121は、メモリ175のバッファM2にある暗号鍵K1を用いて、ステップS46で受信した暗号化データE1をワンタイムパッド暗号により復号し、通信データD1を得る。端末Bの暗号通信装置121は、通信データD1を端末Bのアプリケーション124に渡す。ここで通信終了であれば、暗号通信処理が終了する。
通信終了でない場合は、ステップS48において、端末Bの暗号通信装置121は、バッファM2にある暗号鍵の残量をチェックし、バッファM2に暗号鍵を追加する必要があるか判定する。暗号鍵を追加する必要がなければ、端末Bの暗号通信装置121は、次の暗号化データについてステップS46以降の処理を繰り返す。
ステップS48の判定の結果、バッファM2に暗号鍵を追加する場合には、ステップS49において、端末Bの暗号通信装置121は、鍵確認処理を行う。鍵確認処理については、図6を用いて説明した通りであるが、ステップS30及びS31における暗号通信の開始を通知する処理は不要である。
ここで、暗号通信処理において、端末Aの暗号通信装置111の管理部167と暗号化部168とデータ送信部169とが行う処理について説明する。
ステップS41及びS42では、暗号化部168が、通信データの入力を受ける度に、メモリ155の内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵をバッファから削除する。
ステップS43では、データ送信部169が、暗号化部168により生成された暗号化データを送信することで暗号通信を行う。
ステップS44及びS45では、管理部167が、データ送信部169による暗号通信が継続している間、バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵をバッファに追加する。具体的には、管理部167は、バッファ内の暗号鍵の数が減る速さとバッファに残っている暗号鍵の数とから、バッファ内の暗号鍵がなくなるまでの時間を推測し、推測した時間が閾値を下回った場合に、新たな暗号鍵をバッファに追加する。この閾値は、任意に調整することができるが、バッファ内の暗号鍵が枯渇してからバッファに暗号鍵が補充されるまでに生じる遅延よりも長い時間に設定されることが望ましい。即ち、閾値は、端末Aの暗号通信装置111において鍵確認処理の実行にかかる時間よりも長く設定されることが望ましい。なお、バッファ内の暗号鍵の数が減る速さは、任意の方法で計測することができる。
暗号通信処理において、端末Bの暗号通信装置121の管理部187と復号部188とデータ受信部189とが行う処理についても説明する。
ステップS46では、データ受信部189が、暗号化データを受信することで暗号通信を行う。
ステップS47では、復号部188が、データ受信部189により暗号化データが受信される度に、メモリ175の内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して暗号化データを復号することで通信データを生成するとともに、取得した暗号鍵をバッファから削除する。
ステップS48及びS49では、管理部187が、データ受信部189による暗号通信が継続している間、バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵をバッファに追加する。具体的には、管理部187は、バッファ内の暗号鍵の数が減る速さとバッファに残っている暗号鍵の数とから、バッファ内の暗号鍵がなくなるまでの時間を推測し、推測した時間が閾値を下回った場合に、新たな暗号鍵をバッファに追加する。この閾値は、端末Aの場合と同じように、任意に調整することができるが、バッファ内の暗号鍵が枯渇してからバッファに暗号鍵が補充されるまでに生じる遅延よりも長い時間に設定されることが望ましい。即ち、閾値は、端末Bの暗号通信装置121において鍵確認処理の実行にかかる時間よりも長く設定されることが望ましい。なお、バッファ内の暗号鍵の数が減る速さは、任意の方法で計測することができる。
本実施の形態では、端末Aの暗号通信装置111及び端末Bの暗号通信装置121のいずれのバッファも、複数のアプリケーション114,124のそれぞれに対して個別に割り当てられる。そのため、管理部167,187は、複数のアプリケーション114,124のうち、暗号通信が継続しているアプリケーション114,124に割り当てられたバッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を当該アプリケーション114,124に割り当てられたバッファに追加する。具体的には、管理部167,187は、当該アプリケーション114,124に割り当てられたバッファ内の暗号鍵の数が減る速さと、そのバッファに残っている暗号鍵の数とから、そのバッファ内の暗号鍵がなくなるまでの時間を推測し、推測した時間が閾値を下回った場合に、新たな暗号鍵を、そのバッファに追加する。この閾値は、一律に設定されてもよいが、アプリケーション114ごとに異なる時間に設定されてもよい。例えば、閾値は、音声通話等、遅延による影響の度合いが比較的大きいアプリケーション114ほど長く設定され、メール通信等、遅延による影響の度合いが比較的小さいアプリケーション114ほど短く設定されてもよい。
本実施の形態では、端末Aの暗号通信装置111の暗号化部168及び端末Bの暗号通信装置121の復号部188により使用される暗号鍵が、それぞれの暗号通信の相手との通信により決定される。具体的には、どの暗号鍵をどのような順番で使うかが、通信により決定される。しかし、どの暗号鍵をどのような順番で使うかは、事前に決定されていてもよい。その場合、ステップS30及びS31における暗号通信の開始を通知する処理を除く、鍵確認処理の大部分を省略することができる。
以下では、図8から図14を参照して、前述した鍵情報、フラグ、暗号鍵群、鍵リスト、通信データ、暗号化データと、これらに関する処理との具体例について説明する。
図8は、端末Aの暗号通信装置111のリスト生成部164が行う処理の具体例を示している。
記憶媒体154の暗号鍵データベース210には、暗号鍵群G1に含まれる複数の暗号鍵が記録されている。各暗号鍵は、鍵情報、フラグ、鍵データで構成されている。例えば、暗号鍵K1は、鍵情報I1「002」、フラグ「未使用」、鍵データ「10111011010・・・」で構成されている。
リスト生成部164は、暗号鍵データベース210からフラグが「未使用」になっている暗号鍵の鍵情報を抽出する。リスト生成部164は、抽出した鍵情報のリストを鍵リストL1として生成する。
図9は、端末Bの暗号通信装置121の情報生成部184が行う処理の具体例を示している。
記憶媒体174の暗号鍵データベース220には、暗号鍵群G2に含まれる複数の暗号鍵が記録されている。各暗号鍵の構成については、端末Aの暗号鍵データベース210と同じである。
情報生成部184は、リスト受信部185から鍵リストL1を受け取ると、暗号鍵データベース220からフラグが「未使用」になっている暗号鍵の鍵情報を抽出する。情報生成部184は、抽出した鍵情報のリストを鍵リストL2として生成する。情報生成部184は、鍵リストL1と鍵リストL2とを比較する。情報生成部184は、比較の結果、どちらのリストにもある鍵情報を選択する。例えば、鍵情報I1は、どちらのリストにもある鍵情報である。情報生成部184は、選択した鍵情報を情報送信部186に渡す。このとき、情報生成部184は、暗号鍵データベース220に対して、選択した鍵情報に合致する暗号鍵のフラグを「使用中」に設定する。なお、情報生成部184が選択した鍵情報は、情報生成部184が生成した鍵情報に相当する。
図10は、端末Aの暗号通信装置111の管理部167が鍵情報I1を受け取った際に行う処理の具体例を示している。
管理部167は、情報受信部166から鍵情報I1を受け取ると、同じ鍵情報I1を持つ暗号鍵K1を記憶媒体154の暗号鍵データベース210から探す。管理部167は、暗号鍵K1のフラグを「使用中」に設定する。
図11は、端末Aの暗号通信装置111の管理部167がバッファM1に暗号鍵を展開する際に行う処理の具体例を示している。
管理部167は、情報受信部166から受け取ったものと同じ鍵情報I1を持つ暗号鍵K1の鍵データを読み込む。管理部167は、読み込んだ暗号鍵K1の鍵データをメモリ155のバッファM1に展開する。このとき、管理部167は、バッファM1に展開した暗号鍵K1を記憶媒体154の暗号鍵データベース210から削除する。
同じように、端末Bの暗号通信装置121の管理部187は、情報生成部184が生成したものと同じ鍵情報I1を持つ暗号鍵K1の鍵データを読み込む。管理部187は、読み込んだ暗号鍵K1の鍵データをメモリ175のバッファM2に展開する。このとき、管理部187は、バッファM2に展開した暗号鍵K1を記憶媒体174の暗号鍵データベース220から削除する。
図12は、端末Aの暗号通信装置111の暗号化部168が行う処理の具体例を示している。
暗号化部168は、データ受け付け部162から通信データD1を受け取ると、メモリ155のバッファM1から暗号鍵K1の鍵データを読み出す。暗号化部168は、読み出した暗号鍵K1の鍵データと通信データD1との排他的論理和を計算する。暗号化部168は、計算結果を暗号化データE1としてデータ送信部169に渡す。
図13は、端末Bの暗号通信装置121の復号部188が行う処理の具体例を示している。
復号部188は、データ受信部189から暗号化データE1を受け取ると、メモリ175のバッファM2から暗号鍵K1の鍵データを読み出す。復号部188は、読み出した暗号鍵K1の鍵データと暗号化データE1との排他的論理和を計算する。復号部188は、計算結果を通信データD1としてデータ送出部182に渡す。
図14は、端末Aの暗号通信装置111の管理部167がバッファM1にある暗号鍵の鍵データが減少したことを検知した際に行う処理の具体例を示している。
管理部167は、暗号通信が継続されている間、暗号通信で使われているバッファM1を監視する。管理部167は、暗号鍵の鍵データの減少する速さと現在の暗号鍵の鍵データの残量とから暗号鍵の鍵データが枯渇するまでの時間を推測する。管理部167は、推測した時間が一定値を下回った場合に、鍵確認処理を呼び出すことで、バッファM1の暗号鍵が枯渇しない状態を維持する。
同じように、端末Bの暗号通信装置121の管理部187は、暗号通信が継続されている間、暗号通信で使われているバッファM2を監視する。管理部187は、暗号鍵の鍵データの減少する速さと現在の暗号鍵の鍵データの残量とから暗号鍵の鍵データが枯渇するまでの時間を推測する。管理部187は、推測した時間が一定値を下回った場合に、鍵確認処理を呼び出すことで、バッファM2の暗号鍵が枯渇しない状態を維持する。
***効果の説明***
上記のように構成された端末A及び端末Bにおいては、暗号通信装置111,暗号通信装置121が暗号鍵を管理することで、各アプリケーション114,124が個別に暗号鍵を管理することによる、データ容量の増加を回避することができる。また、アプリケーション114,124ごとに個別のバッファを設け、バッファが枯渇する前に暗号鍵を供給することで、暗号通信時に遅延が生じないシステムを実現することができる。
つまり、本実施の形態では、複数のアプリケーション114,124が同時にワンタイムパッド暗号通信を利用することが想定される場合に、暗号通信端末110,120内のデータ容量を削減することと、暗号通信に遅延を生じさせないことを両立できる。
以上のように、本実施の形態では、暗号通信が継続している間、バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵がバッファに追加される。このため、暗号鍵が枯渇してから暗号鍵が補充されるまでに生じる遅延を解消することができる。
以下では、図15を参照して、本発明の実施の形態に係る暗号通信装置111,121のハードウェア構成例を説明する。
暗号通信装置111,121は、それぞれコンピュータである。暗号通信装置111,121は、それぞれプロセッサ901、補助記憶装置902、メモリ903、通信装置904、入力インタフェース905、ディスプレイインタフェース906といったハードウェアを備える。プロセッサ901は、信号線910を介して他のハードウェアと接続され、これら他のハードウェアを制御する。入力インタフェース905は、入力装置907に接続されている。ディスプレイインタフェース906は、ディスプレイ908に接続されている。
プロセッサ901は、プロセッシングを行うIC(Integrated・Circuit)である。プロセッサ901は、例えば、CPU、DSP(Digital・Signal・Processor)、又は、GPU(Graphics・Processing・Unit)である。
補助記憶装置902は、例えば、ROM(Read・Only・Memory)、フラッシュメモリ、又は、HDD(Hard・Disk・Drive)である。暗号通信装置111の記憶媒体154と、暗号通信装置121の記憶媒体174は、それぞれ補助記憶装置902に相当する。
メモリ903は、例えば、RAM(Random・Access・Memory)である。暗号通信装置111のメモリ155と、暗号通信装置121のメモリ175は、それぞれメモリ903に相当する。
通信装置904は、データを受信するレシーバ921及びデータを送信するトランスミッタ922を含む。通信装置904は、例えば、通信チップ又はNIC(Network・Interface・Card)である。暗号通信装置111の有線インタフェース151及び通信インタフェース153と、暗号通信装置121の有線インタフェース171及び通信インタフェース173は、それぞれ通信装置904に相当する。なお、暗号通信装置111の内部インタフェース152と、暗号通信装置121の内部インタフェース172は、それぞれバスインタフェース等である。
入力インタフェース905は、入力装置907のケーブル911が接続されるポートである。入力インタフェース905は、例えば、USB(Universal・Serial・Bus)端子である。
ディスプレイインタフェース906は、ディスプレイ908のケーブル912が接続されるポートである。ディスプレイインタフェース906は、例えば、USB端子又はHDMI(登録商標)(High・Definition・Multimedia・Interface)端子である。
入力装置907は、例えば、マウス、タッチペン、キーボード、又は、タッチパネルである。
ディスプレイ908は、例えば、LCD(Liquid・Crystal・Display)である。
補助記憶装置902には、暗号通信装置111の取得部161、データ受け付け部162、要求受け付け部163、リスト生成部164、リスト送信部165、情報受信部166、管理部167、暗号化部168、データ送信部169、或いは、暗号通信装置121の取得部181、データ送出部182、要求受け付け部183、情報生成部184、リスト受信部185、情報送信部186、管理部187、復号部188、データ受信部189といった「部」の機能を実現するプログラムが記憶されている。このプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。補助記憶装置902には、OS(Operating・System)も記憶されている。OSの少なくとも一部がメモリ903にロードされ、プロセッサ901はOSを実行しながら、「部」の機能を実現するプログラムを実行する。
図15では、1つのプロセッサ901が示されているが、暗号通信装置111,121がそれぞれ複数のプロセッサ901を備えていてもよい。そして、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。
「部」の処理の結果を示す情報やデータや信号値や変数値は、補助記憶装置902、メモリ903、又は、プロセッサ901内のレジスタ又はキャッシュメモリに記憶される。
「部」を「サーキットリ」で提供してもよい。また、「部」を「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。「回路」及び「サーキットリ」は、プロセッサ901だけでなく、ロジックIC、GA(Gate・Array)、ASIC(Application・Specific・Integrated・Circuit)、FPGA(Field−Programmable・Gate・Array)といった他の種類の処理回路をも包含する概念である。
以上、本発明の実施の形態について説明したが、この実施の形態を部分的に実施しても構わない。例えば、この実施の形態の説明において「部」として説明するもののうち、いずれか1つのみを採用してもよいし、いくつかの任意の組み合わせを採用してもよい。なお、本発明は、この実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
100 通信システム、110 暗号通信端末、111 暗号通信装置、112 処理装置、113 プログラム、114 アプリケーション、115 鍵共有装置、120 暗号通信端末、121 暗号通信装置、122 処理装置、123 プログラム、124 アプリケーション、125 鍵共有装置、130 ネットワーク、151 有線インタフェース、152 内部インタフェース、153 通信インタフェース、154 記憶媒体、155 メモリ、161 取得部、162 データ受け付け部、163 要求受け付け部、164 リスト生成部、165 リスト送信部、166 情報受信部、167 管理部、168 暗号化部、169 データ送信部、171 有線インタフェース、172 内部インタフェース、173 通信インタフェース、174 記憶媒体、175 メモリ、181 取得部、182 データ送出部、183 要求受け付け部、184 情報生成部、185 リスト受信部、186 情報送信部、187 管理部、188 復号部、189 データ受信部、210 暗号鍵データベース、220 暗号鍵データベース、901 プロセッサ、902 補助記憶装置、903 メモリ、904 通信装置、905 入力インタフェース、906 ディスプレイインタフェース、907 入力装置、908 ディスプレイ、910 信号線、911 ケーブル、912 ケーブル、921 レシーバ、922 トランスミッタ。

Claims (14)

  1. メモリと、
    通信データの入力を受ける度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵を前記バッファから削除する暗号化部と、
    前記暗号化部により生成された暗号化データを送信することで暗号通信を行うデータ送信部と、
    前記データ送信部による暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する管理部と
    を備える暗号通信装置。
  2. 前記管理部は、前記バッファ内の暗号鍵の数が減る速さと前記バッファに残っている暗号鍵の数とから、前記バッファ内の暗号鍵がなくなるまでの時間を推測し、推測した時間が閾値を下回った場合に、前記新たな暗号鍵を前記バッファに追加する請求項1に記載の暗号通信装置。
  3. 前記暗号化部により使用される暗号鍵は、前記暗号通信の相手との通信により決定される請求項1又は2に記載の暗号通信装置。
  4. 請求項1から3のいずれか1項に記載の暗号通信装置と、
    前記通信データを前記暗号通信装置に入力するプログラムを実行する処理装置と
    を備える暗号通信端末。
  5. 前記バッファは、前記プログラムである複数のアプリケーションのそれぞれに対して個別に割り当てられ、
    前記管理部は、前記複数のアプリケーションのうち、前記暗号通信が継続しているアプリケーションに割り当てられた前記バッファ内の暗号鍵の数が減る速さに応じて、前記新たな暗号鍵を当該アプリケーションに割り当てられた前記バッファに追加する請求項4に記載の暗号通信端末。
  6. メモリと、
    暗号化データを受信することで暗号通信を行うデータ受信部と、
    前記データ受信部により前記暗号化データが受信される度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記暗号化データを復号することで通信データを生成するとともに、取得した暗号鍵を前記バッファから削除する復号部と、
    前記データ受信部による暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する管理部と
    を備える暗号通信装置。
  7. 前記管理部は、前記バッファ内の暗号鍵の数が減る速さと前記バッファに残っている暗号鍵の数とから、前記バッファ内の暗号鍵がなくなるまでの時間を推測し、推測した時間が閾値を下回った場合に、前記新たな暗号鍵を前記バッファに追加する請求項6に記載の暗号通信装置。
  8. 前記復号部により使用される暗号鍵は、前記暗号通信の相手との通信により決定される請求項6又は7に記載の暗号通信装置。
  9. 請求項6から8のいずれか1項に記載の暗号通信装置と、
    前記通信データの入力を前記暗号通信装置から受けるプログラムを実行する処理装置と
    を備える暗号通信端末。
  10. 前記バッファは、前記プログラムである複数のアプリケーションのそれぞれに対して個別に割り当てられ、
    前記管理部は、前記複数のアプリケーションのうち、前記暗号通信が継続しているアプリケーションに割り当てられた前記バッファ内の暗号鍵の数が減る速さに応じて、前記新たな暗号鍵を当該アプリケーションに割り当てられた前記バッファに追加する請求項9に記載の暗号通信端末。
  11. メモリを備えるコンピュータが、通信データの入力を受ける度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵を前記バッファから削除し、
    前記コンピュータが、前記暗号化データを送信することで暗号通信を行い、
    前記コンピュータが、前記暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する暗号通信方法。
  12. メモリを備えるコンピュータが、暗号化データを受信することで暗号通信を行い、
    前記コンピュータが、前記暗号化データが受信される度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記暗号化データを復号することで通信データを生成するとともに、取得した暗号鍵を前記バッファから削除し、
    前記コンピュータが、前記暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する暗号通信方法。
  13. メモリを備えるコンピュータに、
    通信データの入力を受ける度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記通信データを暗号化することで暗号化データを生成するとともに、取得した暗号鍵を前記バッファから削除する処理と、
    前記暗号化データを送信することで暗号通信を行う処理と、
    前記暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する処理と
    を実行させる暗号通信プログラム。
  14. メモリを備えるコンピュータに、
    暗号化データを受信することで暗号通信を行う処理と、
    前記暗号化データが受信される度に、前記メモリの内部の領域であるバッファに格納された暗号鍵のうち1つの暗号鍵を取得し、取得した暗号鍵を使用して前記暗号化データを復号することで通信データを生成するとともに、取得した暗号鍵を前記バッファから削除する処理と、
    前記暗号通信が継続している間、前記バッファ内の暗号鍵の数が減る速さに応じて、新たな暗号鍵を前記バッファに追加する処理と
    を実行させる暗号通信プログラム。
JP2017505944A 2015-03-18 2015-03-18 暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム Expired - Fee Related JP6192870B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/058065 WO2016147340A1 (ja) 2015-03-18 2015-03-18 暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム

Publications (2)

Publication Number Publication Date
JPWO2016147340A1 true JPWO2016147340A1 (ja) 2017-06-08
JP6192870B2 JP6192870B2 (ja) 2017-09-06

Family

ID=56919900

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017505944A Expired - Fee Related JP6192870B2 (ja) 2015-03-18 2015-03-18 暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム

Country Status (2)

Country Link
JP (1) JP6192870B2 (ja)
WO (1) WO2016147340A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988142A (zh) * 2020-08-25 2020-11-24 合肥美菱物联科技有限公司 一种智能冰箱秘钥烧写系统及方法
JP2022046111A (ja) * 2020-09-10 2022-03-23 株式会社東芝 暗号通信システム、鍵交換ノード、アプリケーション実行環境、制御方法およびプログラム
JP2022116672A (ja) * 2021-01-29 2022-08-10 株式会社東芝 量子鍵配送サービスプラットフォーム
JP7255769B2 (ja) 2021-03-31 2023-04-11 堺化学工業株式会社 導電性材料

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060062392A1 (en) * 2004-07-08 2006-03-23 Magiq Technologies, Inc. Key manager for QKD networks
JP2009510902A (ja) * 2005-09-30 2009-03-12 ソニー エリクソン モバイル コミュニケーションズ, エービー 長いキーパッドを用いた共用鍵暗号化
JP2011044768A (ja) * 2009-08-19 2011-03-03 Nec Corp 秘匿通信システムにおける通信装置および通信制御方法
WO2012025988A1 (ja) * 2010-08-24 2012-03-01 三菱電機株式会社 暗号化装置、暗号化システム、暗号化方法及び暗号化プログラム
JP2014241463A (ja) * 2013-06-11 2014-12-25 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060062392A1 (en) * 2004-07-08 2006-03-23 Magiq Technologies, Inc. Key manager for QKD networks
JP2009510902A (ja) * 2005-09-30 2009-03-12 ソニー エリクソン モバイル コミュニケーションズ, エービー 長いキーパッドを用いた共用鍵暗号化
JP2011044768A (ja) * 2009-08-19 2011-03-03 Nec Corp 秘匿通信システムにおける通信装置および通信制御方法
WO2012025988A1 (ja) * 2010-08-24 2012-03-01 三菱電機株式会社 暗号化装置、暗号化システム、暗号化方法及び暗号化プログラム
JP2014241463A (ja) * 2013-06-11 2014-12-25 株式会社東芝 通信装置、通信方法、プログラムおよび通信システム

Also Published As

Publication number Publication date
JP6192870B2 (ja) 2017-09-06
WO2016147340A1 (ja) 2016-09-22

Similar Documents

Publication Publication Date Title
WO2018014723A1 (zh) 密钥管理方法、装置、设备及系统
US11784801B2 (en) Key management method and related device
US10491399B2 (en) Cryptographic method for secure communications
US8948377B2 (en) Encryption device, encryption system, encryption method, and encryption program
JP5575248B2 (ja) 通信端末、通信システム、通信方法及び通信プログラム
US9237008B2 (en) Encryption device, encryption method, and encryption program
US20200314077A1 (en) Encrypted group communication method
JP6192870B2 (ja) 暗号通信装置及び暗号通信端末及び暗号通信方法及び暗号通信プログラム
US20160294551A1 (en) Data processing system, encryption apparatus, decryption apparatus, and computer readable medium
CN113221146A (zh) 区块链节点间数据传输的方法和装置
CN113987600A (zh) 一种计算机系统、数据处理方法及计算机可读存储介质
CN112261015B (zh) 基于区块链的信息共享方法、平台、系统以及电子设备
CN113422832B (zh) 文件传输方法、装置、设备和存储介质
CN113038444A (zh) 生成应用层密钥的方法和装置
US9705858B2 (en) Information processing device and information processing method to maintain secret key for authentication
CN111131158A (zh) 单字节对称加密解密方法、装置及可读介质
JP2007324767A (ja) 通信方法及び通信装置
CN112995205B (zh) 基于区块链的查询方法、装置、设备和存储介质
US20230299953A1 (en) Quantum cryptographic communication system, key management device, and key management method
CN114629649B (zh) 基于云计算的数据处理方法、装置及存储介质
US20190012469A1 (en) Data processing method and data processing system
CN114244515B (zh) 基于Hypervisor的虚拟机通信方法、装置、可读存储介质及电子设备
CN116108496B (zh) 匿踪查询方法、装置、设备及存储介质
US11539679B1 (en) Systems and methods for providing a quantum-proof key exchange
JP2016139861A (ja) 暗号化装置、暗号化方法及び配信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170214

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170808

R150 Certificate of patent or registration of utility model

Ref document number: 6192870

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees