(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-25
(45)【発行日】2024-04-02
(54)【発明の名称】暗号化端末、暗号管理装置、暗号化通信システム、方法およびプログラム
(51)【国際特許分類】
H04L 9/08 20060101AFI20240326BHJP
H04L 9/10 20060101ALI20240326BHJP
G06F 21/86 20130101ALI20240326BHJP
H04L 9/16 20060101ALI20240326BHJP
【FI】
H04L9/08 C
H04L9/10 A
G06F21/86
H04L9/16
(21)【出願番号】P 2022509868
(86)(22)【出願日】2020-03-25
(86)【国際出願番号】 JP2020013267
(87)【国際公開番号】W WO2021192078
(87)【国際公開日】2021-09-30
【審査請求日】2022-08-26
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】遠山 裕之
(72)【発明者】
【氏名】石原 操
【審査官】青木 重徳
(56)【参考文献】
【文献】特開2003-333023(JP,A)
【文献】特開2001-125481(JP,A)
【文献】特開2006-133839(JP,A)
【文献】特開2001-069133(JP,A)
【文献】特開2003-337753(JP,A)
【文献】国際公開第2009/081896(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08
H04L 9/10
G06F 21/86
H04L 9/16
(57)【特許請求の範囲】
【請求項1】
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する端末通信部と、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、
前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、
を備え
、
前記端末記憶部は、使用された第2ワンタイム鍵を除く前記鍵テーブルの情報を交互に記憶する複数の鍵メモリを有し、
前記第2ワンタイム鍵が使用されたことに応じて、前記鍵テーブルの情報を記憶する鍵メモリを除く鍵メモリに、前記鍵テーブルの情報に含まれる未使用の第2ワンタイム鍵の情報のみを記憶させ、使用された前記第2ワンタイム鍵の情報が記憶された鍵メモリの前記鍵テーブルの情報を復元不能に消去する端末鍵更新部をさらに備える、
暗号化端末。
【請求項2】
復号された前記暗号アルゴリズムを記憶するアルゴリズム記憶部と、
対象動作が検出されたことに応じて、前記アルゴリズム記憶部に記憶される情報を改ざんする耐タンパ部と、
をさらに備える、
請求項
1に記載の暗号化端末。
【請求項3】
ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、
前記第1ワンタイム鍵を含む管理鍵テーブルを記憶する管理記憶部と、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを有する暗号化端末に対して、暗号化された前記暗号アルゴリズムを送信する管理通信部と、を備える
、
前記管理記憶部は、使用された前記第1ワンタイム鍵を除く前記管理鍵テーブルの情報を交互に記憶する複数の管理鍵メモリを有し、
前記第1ワンタイム鍵が使用されたことに応じて、前記管理鍵テーブルの情報を記憶する管理鍵メモリを除く管理鍵メモリに、前記管理鍵テーブルの情報に含まれる未使用の第1ワンタイム鍵の情報のみを記憶させ、使用された前記第1ワンタイム鍵の情報が記憶された管理鍵メモリの前記管理鍵テーブルの情報を復元不能に消去する管理鍵更新部をさらに備える、
暗号管理装置。
【請求項4】
前記暗号化端末の各々は、互いに異なる第2ワンタイム鍵を含む鍵テーブルを有し、
前記管理通信部は、複数の暗号化端末の各々に対して、複数の暗号化端末の各々が有する第2ワンタイム鍵に対応する第1ワンタイム鍵を用いて暗号化された前記暗号アルゴリズムを送信する、
請求項
3に記載の暗号管理装置。
【請求項5】
ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、
前記第1ワンタイム鍵を含む管理鍵テーブルを記憶する管理記憶部と、暗号化された前記暗号アルゴリズムを送信する管理通信部と、を有する暗号管理装置と、
暗号化された前記暗号アルゴリズムを受信する端末通信部と、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、を有する暗号化端末と、を備え
、
前記管理記憶部は、使用された前記第1ワンタイム鍵を除く前記管理鍵テーブルの情報を交互に記憶する複数の管理鍵メモリを有し、
前記暗号管理装置は、前記第1ワンタイム鍵が使用されたことに応じて、前記管理鍵テーブルの情報を記憶する管理鍵メモリを除く管理鍵メモリに、前記管理鍵テーブルの情報に含まれる未使用の第1ワンタイム鍵の情報のみを記憶させ、使用された前記第1ワンタイム鍵の情報が記憶された管理鍵メモリの前記管理鍵テーブルの情報を復元不能に消去する管理鍵更新部をさらに有し、
前記端末記憶部は、使用された第2ワンタイム鍵を除く前記鍵テーブルの情報を交互に記憶する複数の鍵メモリを有し、
前記暗号化端末は、前記第2ワンタイム鍵が使用されたことに応じて、前記鍵テーブルの情報を記憶する鍵メモリを除く鍵メモリに、前記鍵テーブルの情報に含まれる未使用の第2ワンタイム鍵の情報のみを記憶させ、使用された前記第2ワンタイム鍵の情報が記憶された鍵メモリの前記鍵テーブルの情報を復元不能に消去する端末鍵更新部をさらに有する、
暗号化通信システム。
【請求項6】
前記暗号化端末は、
復号された前記暗号アルゴリズムを記憶するアルゴリズム記憶部と、
対象動作が検出されたことに応じて、前記アルゴリズム記憶部に記憶される情報を改ざんする耐タンパ部と、
をさらに有する、
請求項
5に記載の暗号化通信システム。
【請求項7】
コンピュータが、
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する通信ステップと、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶させる記憶ステップと
前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、
を
実行し、
前記記憶ステップは、使用された第2ワンタイム鍵を除く前記鍵テーブルの情報を複数の鍵メモリに交互に記憶させることを含み、
前記コンピュータが、
前記第2ワンタイム鍵が使用されたことに応じて、前記鍵テーブルの情報を記憶する鍵メモリを除く鍵メモリに、前記鍵テーブルの情報に含まれる未使用の第2ワンタイム鍵の情報のみを記憶させ、使用された前記第2ワンタイム鍵の情報が記憶された鍵メモリの前記鍵テーブルの情報を復元不能に消去する鍵更新ステップをさらに実行する、
方法。
【請求項8】
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する処理を実行させる通信ステップと、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶させる記憶ステップと
前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、をコンピュータに実行させ
、
前記記憶ステップは、使用された第2ワンタイム鍵を除く前記鍵テーブルの情報を複数の鍵メモリに交互に記憶させることを含み、
前記第2ワンタイム鍵が使用されたことに応じて、前記鍵テーブルの情報を記憶する鍵メモリを除く鍵メモリに、前記鍵テーブルの情報に含まれる未使用の第2ワンタイム鍵の情報のみを記憶させ、使用された前記第2ワンタイム鍵の情報が記憶された鍵メモリの前記鍵テーブルの情報を復元不能に消去する鍵更新ステップをさらにコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、暗号化端末、暗号管理装置、暗号化通信システム、方法および非一時的なコンピュータ可読媒体に関する。
【背景技術】
【0002】
機密性の高い情報を有する情報端末は、ネットワークを介して他の情報端末と通信する場合に、予め組み込まれた暗号アルゴリズムを用いることが知られている。しかし外部者からの攻撃または計算機の計算能力の向上等により、組み込まれた暗号アルゴリズムは危殆化する可能性がある。このような危殆化に備えて、特許文献1では、センタ装置から端末装置にネットワークを介して、共通鍵で暗号化された新規の暗号アルゴリズムを含むデータを配送することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述の特許文献1に記載の方法では、共通鍵の情報が漏洩した場合に暗号化された暗号アルゴリズムが外部者により復号される可能性がある。したがって暗号アルゴリズムの配送の安全性が十分でなく、端末装置を介した暗号化通信の安全性が十分でないという問題点があった。
【0005】
本開示の目的は、上述した課題を鑑み、暗号化通信の安全性を向上させることができる暗号化端末、暗号管理装置、暗号化通信システム、方法および非一時的なコンピュータ可読媒体を提供することにある。
【課題を解決するための手段】
【0006】
本開示の一態様における暗号化端末は、平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する端末通信部と、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、を備える。
【0007】
本開示の一態様における暗号管理装置は、ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを有する暗号化端末に対して、暗号化された前記暗号アルゴリズムを送信する管理通信部と、を備える。
【0008】
本開示の一態様における暗号化通信システムは、ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、暗号化された前記暗号アルゴリズムを送信する管理通信部と、を有する暗号管理装置と、暗号化された前記暗号アルゴリズムを受信する端末通信部と、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、を有する暗号化端末と、を備える。
【0009】
本開示の一態様における方法は、平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する通信ステップと、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルの前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、を備える。
【0010】
本開示の一態様における非一時的なコンピュータ可読媒体は、平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する処理を実行させる通信ステップと、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルの前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、をコンピュータに実行させるプログラムが格納されている。
【発明の効果】
【0011】
本開示により、暗号化通信の安全性を向上させることができる暗号化端末、暗号管理装置、暗号化通信システム、方法および非一時的なコンピュータ可読媒体を提供することができる。
【図面の簡単な説明】
【0012】
【
図1】実施形態1にかかる暗号化端末の構成を示すブロック図である。
【
図2】実施形態2にかかる暗号化通信システムの概略構成図である。
【
図3】実施形態2にかかる暗号化端末および暗号管理装置の構成を示すブロック図である。
【
図4】実施形態2にかかる暗号化端末の復号処理を示すフローチャートである。
【
図5】実施形態2にかかる第2ワンタイム鍵の取得処理および鍵テーブルの更新処理の一例を説明するための図である。
【
図6】実施形態2にかかる暗号管理装置の処理を示すフローチャートである。
【
図7】実施形態3にかかる暗号化端末の構成を暗号管理装置30とともに示すブロック図である。
【
図8】実施形態3にかかる暗号化端末の鍵テーブルの更新処理を示すフローチャートである。
【
図9】実施形態4にかかる暗号化端末の構成を暗号管理装置とともに示すブロック図である。
【
図10】実施形態4にかかる耐タンパ部の処理を示すフローチャートである。
【
図11】実施形態1~4にかかるコンピュータの概略構成図である。
【発明を実施するための形態】
【0013】
<実施形態1>
まず、
図1を用いて本開示の実施形態1について説明する。
図1は、実施形態1にかかる暗号化端末10の構成を示すブロック図である。暗号化端末10は、端末通信部100と、端末記憶部102と、復号部107とを備える。
【0014】
端末通信部100は、暗号化された暗号アルゴリズムを受信する。暗号アルゴリズムは、平文から暗号文を生成するための暗号アルゴリズムである。そして暗号アルゴリズムは、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化されている。
端末記憶部102は、第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する。
復号部107は、第2ワンタイム鍵を使用して、暗号化された暗号アルゴリズムを復号する。
【0015】
このように実施形態1にかかる暗号化端末10は、情報理論的に安全なワンタイムパッド方式の鍵で暗号化された暗号アルゴリズムを受信するため、使用された鍵が漏洩することを回避することができる。したがって暗号アルゴリズムの配送の安全性を向上させることができる。これにより暗号化通信の安全性を向上させることができる。
【0016】
また新規に作成した暗号アルゴリズムが逐次配送されることが可能となるため、暗号化端末10に予備の暗号アルゴリズムを過剰に組み込んでおく必要はない。したがって、暗号化端末10の設置の作業負荷を最低限に抑え、初期費用を最低限に抑えることが可能となる。
【0017】
またワンタイムパッド方式のワンタイム鍵を用いた暗号化データの復号処理は、少ない計算リソースで実行可能であるため、暗号化端末10を、例えばIoT(Internet of Things)機器等の計算リソースが少ない機器に対しても適用させることができる。
【0018】
<実施形態2>
次に
図2~6を用いて、本開示の実施形態2について説明する。
図2は、実施形態2にかかる暗号化端末が適用されることができる暗号化通信システム1の概略構成図である。暗号化通信システム1は、機密性の高い情報端末が暗号化端末を介して、他の情報端末と暗号化通信をする機能を提供する。暗号化通信システム1は、1または複数の暗号化端末12と、1または複数の情報端末22と、暗号管理装置30とを備える。1または複数の暗号化端末12と暗号管理装置30とは、ネットワーク8を介して互いに通信可能に接続される。
【0019】
ネットワーク8は、インターネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)等の各種ネットワークまたはその組み合わせを含んで構成される。またネットワーク8は、インターネットと分離された専用回線を含んでもよい。なお本実施形態2ではネットワーク8は、インターネットである。
【0020】
暗号化端末12は、ネットワーク8に接続される他の暗号化端末12との間で暗号アルゴリズムを用いたデータの暗号化通信を行う。また暗号化端末12は、暗号管理装置30との間で暗号アルゴリズムAに関連するデータの通信を行う。暗号化端末12は、パーソナルコンピュータ、ノート型コンピュータ、携帯電話、スマートフォン、またはデータ入出力可能なその他の端末装置である。
【0021】
暗号化端末12は、ネットワーク8以外の通信手段により、それぞれに対応する情報端末22に通信可能に接続されている。暗号化端末12と情報端末22との間の通信手段は、有線または無線通信であり、たとえばプライベートネットワーク、バーチャルプライベートネットワーク(VPN)および近距離無線通信等であってよい。
【0022】
たとえば第1の暗号化端末12aは、接続先の第1の情報端末22aから第2の情報端末22bを宛先とするデータの暗号化通信の要求を受信したことに応じて、暗号アルゴリズムを用いてデータを暗号化する。そして第1の暗号化端末12aは、暗号化されたデータを宛先の第2の情報端末22bに接続される暗号化端末12bに送信する。また第1の暗号化端末12aは、接続先の第1の情報端末22aを宛先とするデータの暗号化通信の要求を第2の情報端末22bに接続される暗号化端末12bから受信したことに応じて、暗号アルゴリズムに基づいてデータを復号する。そして第1の暗号化端末12aは、復号されたデータを宛先の第1の情報端末22aに送信する。
【0023】
また暗号化端末12は、暗号管理装置30から新規の暗号アルゴリズムを受信する。暗号化端末12は、新規の暗号アルゴリズムを、暗号化されたデータとして受信する。暗号化端末12は、暗号化されたデータを復号し、新規の暗号アルゴリズムを取得する。
【0024】
情報端末22は、暗号化端末12を介して、他の情報端末22と機密情報を含むデータの暗号化通信を行うパーソナルコンピュータ、ノート型コンピュータ、携帯電話、スマートフォン、またはデータ入出力可能なその他の端末装置である。
たとえば第1の情報端末22aは、接続先の第1の暗号化端末12aに対して、第2の情報端末22bを宛先とするデータの暗号化通信の要求を送信する。また第1の情報端末22aは、第2の情報端末22bから送信され、接続先の第1の暗号化端末12aによって復号されたデータを第1の暗号化端末12aから受信する。
【0025】
暗号管理装置30は、1または複数の暗号化端末12が使用する暗号アルゴリズムを管理するサーバ・コンピュータ等のコンピュータである。暗号管理装置30のコンピュータは、ネットワーク8上の各機器に機能分散させ、ネットワーク8全体で構成されたコンピュータであってもよい。暗号管理装置30は、新規の暗号アルゴリズムを暗号化し、暗号化された新規の暗号アルゴリズムを1または複数の暗号化端末12に送信する。
【0026】
図3は、実施形態2にかかる暗号化端末12および暗号管理装置30の構成を示すブロック図である。
(暗号化端末12)
暗号化端末12は、端末通信部120と、モード切替部121と、端末記憶部122と、暗号化復号部127と、端末鍵更新部128と、アルゴリズム更新部129とを有する。
【0027】
端末通信部120は、暗号管理装置30、他の暗号化端末12および接続先の情報端末22との間で各種データ通信を行う。特に端末通信部120は、暗号管理装置30から新規の暗号アルゴリズムAをデータとして受信する。暗号アルゴリズムAは、平文から暗号文を生成するための暗号アルゴリズムを含む。本実施形態2では暗号アルゴリズムAは、暗号化のために用いられる暗号アルゴリズムに対応して、暗号文から平文を生成する復号のための復号アルゴリズムをさらに含む。そして暗号管理装置30から受信した新規の暗号アルゴリズムAのデータは、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化されている。端末通信部120は、暗号化復号部127に暗号化された新規の暗号アルゴリズムを供給する。
【0028】
モード切替部121は、端末通信部120がデータを受信したことに応じて、復号モードを選択し、選択した復号モードに応じて暗号化復号部127を制御する。ここで復号モードは、データの復号方式の種別を表すモードであり、通常モードと、更新モードとを含む。本実施形態2では通常モードは、受信したデータを現行の暗号アルゴリズムAに含まれる現行の復号アルゴリズムを用いて復号するモードである。更新モードは、受信したデータを後述する鍵テーブルTTの第2ワンタイム鍵を用いて復号するモードである。
【0029】
端末記憶部122は、通信対象のデータの暗号化処理および復号処理に関連する各種情報を記憶する記憶媒体である。端末記憶部122は、暗号化復号部127、端末鍵更新部128およびアルゴリズム更新部129との間でデータの入出力を行う。端末記憶部122は、鍵記憶部123と、アルゴリズム記憶部126とを含む。
【0030】
鍵記憶部123は、暗号管理装置30から受信された新規の暗号アルゴリズムのデータの復号処理に用いられる第2ワンタイム鍵を含む鍵テーブルTTを記憶する。ここで鍵テーブルTTは、一回限りの乱数鍵を使用して復号化を行う暗号運用方式であるワンタイムパッド方式の乱数表である。第2ワンタイム鍵は、鍵テーブルTTに含まれる乱数鍵である。第2ワンタイム鍵は、受信したデータのデータ量と同等のデータ量を有する真性乱数の乱数列であってよい。なお第2ワンタイム鍵は、暗号化端末12ごとに互いに異なる真性乱数を含んでよい。すなわち複数の暗号化端末12の各々は、互いに異なる第2ワンタイム鍵を含む鍵テーブルTTを有してよい。
【0031】
アルゴリズム記憶部126は、他の暗号化端末12および接続先の情報端末22から受信されたデータの暗号化処理または復号処理に用いられる各種情報を記憶する記憶媒体である。アルゴリズム記憶部126が記憶する各種情報は、暗号アルゴリズムAと、暗号アルゴリズム鍵AKとを含む。
【0032】
暗号アルゴリズムAは、現行の暗号アルゴリズムAを含む。暗号アルゴリズムAは、予備の暗号アルゴリズムAをさらに含んでもよい。
暗号アルゴリズム鍵AKは、暗号アルゴリズムAに適用される鍵である。暗号アルゴリズム鍵AKは、共通鍵であってよい。暗号アルゴリズム鍵AKは、現行の暗号アルゴリズムAに適用される現行の暗号アルゴリズム鍵AKを含む。暗号アルゴリズム鍵AKはまた、予備の暗号アルゴリズムAに適用される予備の暗号アルゴリズム鍵AKをさらに含んでもよい。
【0033】
暗号化復号部127は、実施形態1の復号部107と同様の機能および構成を有する。暗号化復号部127は、モード切替部121による制御に基づいて、受信したデータを暗号化し、または復号する。たとえば暗号化復号部127は、現行の暗号アルゴリズムAと、暗号アルゴリズム鍵AKとを取得し、これらを用いて受信したデータの暗号化処理を行う。そして暗号化復号部127は、端末通信部120に暗号化したデータを供給する。また暗号化復号部127は、通常モードの場合に、現行の暗号アルゴリズムAと、暗号アルゴリズム鍵AKとを取得し、これらを用いて受信したデータの復号処理を行う。そして暗号化復号部127は、端末記憶部122に復号したデータを格納する。また暗号化復号部127は、更新モードの場合に、鍵テーブルTTの第2ワンタイム鍵を使用して、暗号化された新規の暗号アルゴリズムAのデータを復号する。そして暗号化復号部127は、復号した新規の暗号アルゴリズムAをアルゴリズム更新部129に供給する。
【0034】
端末鍵更新部128は、第2ワンタイム鍵が使用されたことに応じて、使用された第2ワンタイム鍵を鍵記憶部123の鍵テーブルTTから消去し、鍵テーブルTTを更新する。
【0035】
アルゴリズム更新部129は、復号された新規の暗号アルゴリズムAをアルゴリズム記憶部126に格納する。またアルゴリズム更新部129は、現行の暗号アルゴリズムAを消去し、新規の暗号アルゴリズムAを現行の暗号アルゴリズムAとして更新してよい。
【0036】
(暗号管理装置30)
暗号管理装置30は、取得部300と、管理記憶部302と、暗号化部304と、管理鍵更新部306と、管理通信部308とを有する。
【0037】
取得部300は、新規の暗号アルゴリズムAの平文のデータを取得する。取得部300は、入力装置(不図示)に接続され、管理者からの入力を受けて新規の暗号アルゴリズムAの平文のデータを取得してよい。また取得部300は、後述する管理通信部308を介して、通信先の他の装置(不図示)から新規の暗号アルゴリズムAの平文のデータを取得してもよい。取得部300は、取得した平文のデータを暗号化部304に供給する。
【0038】
管理記憶部302は、管理通信部308の暗号化処理に用いられる第1ワンタイム鍵を含む鍵テーブルMTを記憶する。鍵テーブルMTは、鍵テーブルTTに対応するワンタイムパッド方式の乱数表である。第1ワンタイム鍵は、ワンタイムパッド方式の鍵であり、第2ワンタイム鍵に対応する。本実施形態2で第1ワンタイム鍵は、第2ワンタイム鍵と同一の情報を有する。すなわち第1ワンタイム鍵は、第2ワンタイム鍵と同一の真性乱数の乱数列である。
【0039】
なお、暗号管理装置30が複数の暗号化端末12と通信可能に接続されている場合、管理記憶部302は複数の鍵テーブルMTを記憶してよい。このとき管理記憶部302は、複数の暗号化端末12の各々が有する第2ワンタイム鍵に対応する第1ワンタイム鍵を含む鍵テーブルMTを記憶してよい。
管理記憶部302は、暗号化部304に第1ワンタイム鍵を供給する。
【0040】
暗号化部304は、第1ワンタイム鍵を用いて、平文から暗号文を生成するための新規の暗号アルゴリズムAを暗号化する。暗号化部304は、暗号化した新規の暗号アルゴリズムAを管理通信部308に供給する。
【0041】
管理鍵更新部306は、第1ワンタイム鍵が使用されたことに応じて、使用された第1ワンタイム鍵を管理記憶部302の鍵テーブルMTから消去し、鍵テーブルMTを更新する。
【0042】
管理通信部308は、暗号化端末12と通信可能に接続され、暗号化端末12に対して暗号化された新規の暗号アルゴリズムAのデータを送信する。管理通信部308が複数の暗号化端末12と接続される場合には、管理通信部308は、複数の暗号化端末12の各々に対して、複数の暗号化端末12の各々に対応する第1ワンタイム鍵を用いて暗号化された新規の暗号アルゴリズムAのデータを送信する。
【0043】
次に、実施形態2にかかる暗号化端末12の復号処理を、
図4を用いて説明する。
図4は、実施形態2にかかる暗号化端末12の復号処理を示すフローチャートである。
【0044】
まずステップS10において、暗号化端末12の端末通信部120は、暗号管理装置30または他の暗号化端末12からデータを受信する。本実施形態2で受信したデータは、本文のデータと、宛先に関連するデータとを含んでよい。ここで宛先に関連するデータは、暗号化端末12の接続先の情報端末22のアドレス情報または暗号化端末12のアドレス情報を含んでよい。アドレス情報は、一例としてインターネットプロトコルアドレス(IPアドレス)またはドメイン名であってよい。端末通信部120は、受信したデータのうち本文のデータを暗号化復号部127に供給する。また端末通信部120は、受信したデータのうち宛先に関連するデータをモード切替部121に供給する。
【0045】
次にステップS11において、モード切替部121は、端末通信部120が受信したデータが新規の暗号アルゴリズムAを含むか否かを判定する。このときモード切替部121は、宛先に関連するデータに含まれるアドレス情報が、暗号化端末12のアドレス情報であるか否かを判定することにより、受信したデータが新規の暗号アルゴリズムAを含むか否かを判定してよい。モード切替部121は、受信したデータが新規の暗号アルゴリズムAを含むと判定した場合(ステップS11でYes)、処理をステップS12に進める。一方モード切替部121は、そうでない場合(ステップS11でNo)、処理をステップS17に進める。
【0046】
ステップS12において、モード切替部121は、復号モードとして「更新モード」を選択し、更新モードにかかる制御信号を暗号化復号部127に供給する。
【0047】
次にステップS13において、暗号化復号部127は、モード切替部121の制御に基づいて、端末記憶部122の鍵記憶部123の鍵テーブルTTから第2ワンタイム鍵を取得する。
【0048】
次にステップS14において、暗号化復号部127は、モード切替部121の制御に基づいて第2ワンタイム鍵を用いて、本文のデータを復号する。このとき暗号化復号部127は、本文のデータのビット列と、第2ワンタイム鍵のビット列との排他的論理和を計算することにより、本文のデータを復号してよい。そして暗号化復号部127は、復号された本文のデータをアルゴリズム更新部129に供給する。また暗号化復号部127は、復号処理が完了したことを端末鍵更新部128に通知する。
【0049】
次にステップS15において、端末鍵更新部128は、ステップS14の復号処理が完了した、すなわち第2ワンタイム鍵が使用されたことに応じて、使用された第2ワンタイム鍵を鍵記憶部123の鍵テーブルTTから消去し、鍵テーブルTTを更新する。
【0050】
次にステップS16において、アルゴリズム更新部129は、復号された本文のデータを、新規の暗号アルゴリズムAとして端末記憶部122のアルゴリズム記憶部126に格納する。そしてアルゴリズム更新部129は、処理を終了する。
【0051】
なおステップS17において、モード切替部121は、ステップS11で受信したデータが新規の暗号アルゴリズムAを含まないと判定した場合(ステップ11でNo)、復号モードとして「通常モード」を選択する。そしてモード切替部121は、通常モードにかかる制御信号を暗号化復号部127に供給する。
【0052】
そしてステップS18において、暗号化復号部127は、モード切替部121の制御に基づいて、端末記憶部122のアルゴリズム記憶部126から現行の暗号アルゴリズムAおよび現行の暗号アルゴリズム鍵AKを取得する。
【0053】
次にステップS19において、暗号化復号部127は、現行の暗号アルゴリズムAに含まれる現行の復号アルゴリズムおよび現行の暗号アルゴリズム鍵AKを用いて、本文のデータを復号する。そして暗号化復号部127は、復号された本文のデータを、端末記憶部122に格納してよい。そして暗号化復号部127は、処理を終了する。
【0054】
なおステップS10において受信したデータは、宛先に関連するデータに加えてまたは代えて、送信元に関連するデータを含んでもよい。ここで送信元に関連するデータは、送信元のアドレス情報を含んでよい。この場合ステップS11において、モード切替部121は、送信元に関連するデータに含まれるアドレス情報が、暗号管理装置30のアドレス情報であるか否かを判定することにより、受信したデータが新規の暗号アルゴリズムAを含むか否かを判定してよい。
【0055】
図5は、実施形態2にかかる第2ワンタイム鍵の取得処理(すなわち、
図4のステップS13の処理)および鍵テーブルTTの更新処理(すなわち、
図4のステップS15の処理)の一例を説明するための図である。
本図に示すように、鍵テーブルTTは大量の乱数を含む乱数列を有する。
【0056】
たとえばステップS13において、暗号化復号部127は、本文のデータのデータ量と同等のデータ量に相当する数の乱数の乱数列Rを第2ワンタイム鍵として鍵テーブルTTから取得する。このとき暗号化復号部127は、鍵テーブルTTに割り当てられるメモリ空間のうち、メモリアドレスが若いメモリ空間から順に、本文のデータのビット数と同等のビット数の乱数の乱数列Rを第2ワンタイム鍵として読み出してよい。
【0057】
そしてステップS15において、端末鍵更新部128は、鍵テーブルTTに割り当てられるメモリ空間のうち、使用された第2ワンタイム鍵の乱数列Rが格納されるメモリ空間のデータを消去する。
【0058】
なお、次にステップS13において暗号化復号部127が鍵テーブルTTから第2ワンタイム鍵を取得する場合は、乱数が格納されたメモリ空間のうちメモリアドレスが若い順に、格納される乱数を所定数だけ読み出してよい。
【0059】
次に、暗号管理装置30の処理について、
図6を用いて説明する。
図6は、実施形態2にかかる暗号管理装置30の処理を示すフローチャートである。
まずステップS20において、暗号管理装置30の取得部300は、管理者から新規の暗号アルゴリズムAの平文のデータを取得する。そして取得部300は、取得したデータを暗号化部304に供給する。なお取得部300は、管理者から宛先に関連するデータを取得してもよい。そして取得部300は、宛先に関連するデータを、管理通信部308に供給してもよい。
【0060】
次にステップS22において、暗号化部304は、管理記憶部302の鍵テーブルMTから第1ワンタイム鍵を取得する。このとき暗号化部304は、平文のデータのデータ量と同等のデータ量に相当する数の乱数を第1ワンタイム鍵として鍵テーブルMTから取得する。なお第1ワンタイム鍵の取得処理は、
図5に示す第2ワンタイム鍵の取得処理と同様の手順で取得されてよい。
【0061】
次にステップS24において、暗号化部304は、第1ワンタイム鍵を用いて、新規の暗号アルゴリズムAの平文のデータを暗号化する。このとき暗号化部304は、平文のデータのビット列と、第1ワンタイム鍵のビット列との排他的論理和を計算することにより、平文のデータを暗号化してよい。そして暗号化部304は、暗号化された新規の暗号アルゴリズムAのデータを管理通信部308に供給する。また暗号化部304は、暗号化処理が完了したことを管理鍵更新部306に通知してよい。
【0062】
次にステップS26において、管理鍵更新部306は、ステップS24の暗号化処理が完了した、すなわち第1ワンタイム鍵が使用されたことに応じて、使用された第1ワンタイム鍵を管理記憶部302の鍵テーブルMTから消去し、鍵テーブルMTを更新する。なお鍵テーブルMTの更新処理は、
図5に示す鍵テーブルTTの更新処理と同様の手順で取得されてよい。
【0063】
そしてステップS28において、管理通信部308は、暗号化された新規の暗号アルゴリズムAのデータを本文のデータとし、本文のデータに宛先に関連するデータを付したデータを、宛先の情報端末22に接続された暗号化端末12に送信する。そして管理通信部308は、処理を終了する。
【0064】
このように実施形態2にかかる暗号管理装置30は、情報理論的に安全なワンタイムパッド方式の鍵で暗号化された暗号アルゴリズムを送信し、暗号化端末12がこれを受信する。このため、使用された鍵が漏洩することを回避することができる。したがって暗号アルゴリズムの配送の安全性が向上する。これにより暗号化通信の安全性を向上させることができる。
【0065】
また暗号管理装置30は、新規に作成した暗号アルゴリズムを暗号化端末12に逐次配送することが可能となるため、暗号化端末12に予備の暗号アルゴリズムを過剰に組み込んでおく必要はない。したがって、暗号化端末12の設置の作業負荷を最低限に抑え、初期費用を最低限に抑えることが可能となる。
【0066】
またワンタイムパッド方式のワンタイム鍵を用いた暗号化データの復号処理は、少ない計算リソースで実行可能であるため、暗号化端末12を、例えばIoT機器等の計算リソースが少ない機器に対しても適用させることができる。
【0067】
また暗号管理装置30が複数の暗号化端末12に接続される場合、暗号管理装置30は、複数の暗号化端末12の各々に対応する第2ワンタイム鍵に対応する第1ワンタイム鍵を用いて新規の暗号アルゴリズムAを暗号化する。したがって暗号アルゴリズムAの配送の安全性をさらに向上させることができ、暗号化通信の安全性をさらに向上させることができる。
【0068】
なお本実施形態2で暗号化端末12は、情報端末22に通信可能に接続されるが、これに代えて、情報端末22に組み込まれていてもよい。すなわち暗号化端末12と情報端末22とは、単一の端末装置で構成されていてもよい。この場合
図4のステップS11において、モード切替部121は、送信元に関連するデータに含まれるアドレス情報が、暗号管理装置30のアドレス情報であるか否かを判定することで、受信したデータが新規の暗号アルゴリズムAであるか否かを判定してよい。
【0069】
<実施形態3>
次に
図7~8を用いて、本開示の実施形態3について説明する。実施形態3は、暗号化端末の端末記憶部の鍵記憶部が、複数のメモリで構成されることに特徴を有する。
【0070】
図7は、実施形態3にかかる暗号化端末14の構成を暗号管理装置30とともに示すブロック図である。実施形態3にかかる暗号管理装置30は、実施形態2にかかる暗号管理装置30と同様であるため、説明を省略する。実施形態3にかかる暗号化端末14は、実施形態2にかかる暗号化端末12と基本的に同様の構成および機能を有する。ただし暗号化端末14は、端末記憶部122および端末鍵更新部128に代えて、端末記憶部142および端末鍵更新部148を有する点で暗号化端末12と相違する。
【0071】
端末記憶部142は、端末記憶部122と同様の構成および機能を有するが、鍵記憶部123に代えて鍵記憶部143を含む。
【0072】
鍵記憶部143は、鍵記憶部123と同様に、第2ワンタイム鍵を含む鍵テーブルTTを記憶する。ただし鍵記憶部143は、使用された第2ワンタイム鍵を除く鍵テーブルTTの情報を交互に記憶する複数の鍵メモリを有する。本実施形態3で鍵記憶部143は、鍵メモリ144,145で構成される。鍵メモリ144,145はそれぞれ、単一の非一時的なコンピュータ可読媒体である。本実施形態3で鍵メモリ144,145はフラッシュROM(Read Only Memory)であってよい。
【0073】
端末鍵更新部148は、端末鍵更新部128と同様の構成および機能に加えて、第2ワンタイム鍵が使用されたことに応じて、使用された第2ワンタイム鍵の情報が記憶された鍵メモリの鍵テーブルTTの情報を完全消去する。
【0074】
なお本実施形態3において暗号化端末14の復号処理は、
図4に示すステップと同様のステップにより行われる。ただし暗号化端末14の端末鍵更新部148は、ステップS15に代えて後述する鍵テーブルTTの更新処理を実行する。
【0075】
図8は、実施形態3にかかる暗号化端末14の鍵テーブルの更新処理を示すフローチャートである。なお鍵テーブルTTは、ステップS14までにおいて鍵メモリ144に記憶されているものとする。
【0076】
まずステップS30において、暗号化端末14の端末鍵更新部148は、ステップS14で第2ワンタイム鍵が使用されたことに応じて、鍵テーブルTTの情報のうち、使用された第2ワンタイム鍵を除く、未使用の第2ワンタイム鍵の情報を取得する。たとえば、端末鍵更新部148は、鍵テーブルTTの情報のうち、未使用の第2ワンタイム鍵の情報のみを選択的に複製する。
【0077】
次にステップS32において、端末鍵更新部148は、鍵テーブルTTを記憶する鍵メモリ144を除く鍵メモリ145に、未使用の第2ワンタイム鍵の情報を新たな鍵テーブルTTとして格納する。たとえば端末鍵更新部148は、複製した未使用の第2ワンタイム鍵の情報のみを鍵メモリ145に格納する。
【0078】
そしてステップS34において、端末鍵更新部148は、使用した第2ワンタイム鍵の情報が記憶されていた元の鍵メモリ144の全てのデータをフラッシュ等により完全消去する。ここで「完全消去」とは、復元不能に消去することを指す。これにより、端末鍵更新部148は、鍵メモリ144の鍵テーブルTTの情報を完全消去する。
【0079】
なお本実施形態3では、鍵記憶部143は2つの鍵メモリ144および鍵メモリ145で構成されるが、これに代えて、2以上の鍵メモリで構成されてもよい。
【0080】
このように実施形態3によれば、使用した第2ワンタイム鍵が記憶される鍵メモリ144の鍵テーブルTTをメモリごと完全消去する。これにより鍵メモリ144のメモリ空間のうち第2ワンタイム鍵が格納されるメモリブロックのデータのみを消去する場合にウェアレベリング等により消去対象のデータが残存することを回避することができる。したがって新規の暗号アルゴリズムAの復号に用いた第2ワンタイム鍵が復元されることを回避し、配送時に新規の暗号アルゴリズムAが盗聴されたとしても盗聴されたデータが復号される可能性を低減させることができる。これによって暗号アルゴリズムAの配送の安全性をさらに向上させ、暗号化通信の安全性をさらに向上させることができる。なお第2ワンタイム鍵を除いた残りの乱数を含む鍵テーブルTTは、他の鍵メモリ145に格納されるため、次回以降の復号処理に再度鍵テーブルTTを用いることができる。
【0081】
また暗号管理装置30の管理記憶部302は、端末鍵更新部128と同様に、使用された第1ワンタイム鍵を除く鍵テーブルMTの情報を交互に記憶する複数の管理鍵メモリを有してもよい。この場合、
図6に示すステップS26において、暗号管理装置30の管理鍵更新部306は、端末鍵更新部148の鍵テーブルTTの更新処理と同様の処理を行うことにより、鍵テーブルMTを更新してよい。このとき
図8に示すステップS30~34の「端末鍵更新部148」は「管理鍵更新部306」と、「鍵記憶部143」は「管理記憶部302」と、「鍵テーブルTT」は「鍵テーブルMT」と、「第2ワンタイム鍵」は「第1ワンタイム鍵」と読み替える。これにより、暗号管理装置30が外部者から攻撃されても、使用後に消去された新規の暗号アルゴリズムAの暗号化に用いた第1ワンタイム鍵が復元されることを回避することができる。これにより暗号アルゴリズムAの配送の安全性をさらに向上させ、暗号化通信の安全性をさらに向上させることができる。
【0082】
<実施形態4>
次に
図9~10を用いて、本開示の実施形態4について説明する。実施形態4は、暗号化端末が有事の際に暗号アルゴリズムAのデータを改ざんすることに特徴を有する。
【0083】
図9は、実施形態4にかかる暗号化端末16の構成を暗号管理装置30とともに示すブロック図である。実施形態4にかかる暗号管理装置30は、実施形態2および3にかかる暗号管理装置30と同様であるため、説明を省略する。実施形態4にかかる暗号化端末16は、実施形態3にかかる暗号化端末14と基本的に同様の構成および機能を有する。ただし暗号化端末16は、アルゴリズム更新部129に代えてアルゴリズム更新部169を有する。
【0084】
アルゴリズム更新部169は、アルゴリズム更新部129の構成および機能に加えて、耐タンパ部170を含む。
【0085】
耐タンパ部170は、対象動作が検出されたことに応じて、アルゴリズム記憶部126に記憶される情報を改ざんする。ここで対象動作は、たとえばネットワーク8との通信接続が遮断されることであってよい。この場合、耐タンパ部170は、定期的または不定期で端末通信部120を介してメッセージの応答状況を確認することにより、ネットワーク8上のノードの到達性を確認してよい。そして耐タンパ部170は、到達性の確認結果に基づいて対象動作を検出してよい。たとえば耐タンパ部170は、メッセージ送信先からの応答を所定時間のうちに受信しなかったことに応じて、対象動作を検出してよい。
【0086】
また対象動作は、周辺の気圧または温度等の物理量の変化を検出したことであってもよい。この場合、暗号化端末16は、内部の気圧または温度等を所定の範囲に維持するように管理され、耐タンパ部170は、これらの物理量の変化を検出するセンサ(不図示)に接続されていてよい。
【0087】
また対象動作は、所定の閾値以上の電磁波強度を検出したことであってもよい。この場合、暗号化端末16は、電磁波をシールドするケースに収容され、耐タンパ部170は、電磁波を検出するセンサ(不図示)に接続されていてよい。
【0088】
なお耐タンパ部170は、暗号化端末16の主電源から分離されたバックアップ電源から電力を供給されてよい。
【0089】
図10は、実施形態4にかかる耐タンパ部170の処理を示すフローチャートである。
まずステップS40において、耐タンパ部170は、対象動作を検出したか否かを判定する。たとえば耐タンパ部170は、接続されているセンサの検出結果に基づいて、対象動作を検出したか否かを判定してよい。耐タンパ部170は、対象動作を検出したと判定した場合(ステップS40でYes)、処理をS42に進める。一方、耐タンパ部170は、そうでない場合(ステップS40でNo)、S40に示す処理を繰り返す。
【0090】
次にステップS42において、耐タンパ部170は、アルゴリズム更新部169に記憶される情報を改ざんする。このとき耐タンパ部170は、アルゴリズム更新部129に記憶されるすべての情報をフラッシュ等で完全消去してよい。また耐タンパ部170は、アルゴリズム更新部169に記憶される情報に含まれるビットをランダムに選択し、選択されたビットをシフトさせて不可逆に改ざんしてもよい。また耐タンパ部170は、アルゴリズム更新部129を構成するメモリを、物理的に破壊してもよい。そして耐タンパ部170は、処理を終了する。
【0091】
このように実施形態4によれば、暗号化端末16は、対象動作を検出したことに応じてアルゴリズム更新部169に記憶される暗号アルゴリズムAを不可逆的に読取不能にする。このため外部者により暗号化端末16自体が奪取されたとしても、暗号アルゴリズムAが外部者に漏洩することを防止することができる。なお新規の暗号アルゴリズムAが配送時に盗聴され、かつ暗号化端末16自体が奪取されたとしても新規の暗号アルゴリズムAの復号に用いた第2ワンタイム鍵は消去されており、新規の暗号アルゴリズムAが外部者に漏洩することを防止することができる。これにより、暗号アルゴリズムの配送の安全性、ひいては暗号化通信の安全性がさらに向上する。
【0092】
以上、実施形態1~4について、ハードウェアの構成として本開示を説明した。しかし本開示は、これに限定されるものではない。本開示は、上述の復号処理、暗号化処理、鍵テーブル更新処理および耐タンパ処理等の各種処理を、後述のプロセッサ1010にコンピュータプログラムを実行させることにより実現することも可能である。
【0093】
図11は、実施形態1~4にかかるコンピュータ1900の概略構成図である。
図11に示すように、コンピュータ1900は、システム全体を制御するための制御部1000を備えている。この制御部1000には、データバス等のバスラインを介して、入力装置1050、記憶装置1200、記憶媒体駆動装置1300、通信制御装置1400、および入出力I/F1500が接続されている。
【0094】
制御部1000は、プロセッサ1010と、ROM1020と、RAM1030とを備えている。
プロセッサ1010は、ROM1020や記憶装置1200等の各種記憶部に記憶されたプログラムに従って、各種の情報処理や制御を行う。
ROM1020は、プロセッサ1010が各種制御や演算を行うための各種プログラムやデータが予め格納されたリードオンリーメモリである。
【0095】
RAM1030は、プロセッサ1010にワーキングメモリとして使用されるランダムアクセスメモリである。このRAM1030には、本実施形態1~4による各種処理を行うための各種エリアが確保可能になっている。
【0096】
入力装置1050は、キーボード、マウスおよびタッチパネル等のユーザからの入力を受け付ける入力装置である。たとえばキーボードは、テンキー、各種機能を実行するための機能キーおよびカーソルキー等の各種キーが配置されている。マウスは、ポインティングデバイスであり、表示装置1100に表示されたキーやアイコン等をクリックすることで対応する機能の指定を行う入力装置である。タッチパネルは、表示装置1100の表面に配置される入力機器で、表示装置1100に画面表示された各種操作キーに対応した、ユーザのタッチ位置を特定し、当該タッチ位置に対応して表示された操作キーの入力を受け付ける。
【0097】
表示装置1100は、例えばCRTや液晶ディスプレイ等が使用される。この表示装置には、キーボードやマウスによる入力結果が表示されたり、最終的に検索されたイメージ情報が表示されたりするようになっている。また表示装置1100は、コンピュータ1900の各種機能に応じて、タッチパネルから必要な各種操作を行うための操作キーを画像表示する。
【0098】
記憶装置1200は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータ等の各種情報を読み書きするための駆動装置で構成されている。
この記憶装置1200に使用される記憶媒体は、主としてハードディスク等が使用されるが、後述の記憶媒体駆動装置1300で使用される非一時的なコンピュータ可読媒体を使用するようにしてもよい。
記憶装置1200は、データ格納部1210、プログラム格納部1220および図示しないその他の格納部(例えば、この記憶装置1200内に格納されているプログラムやデータ等をバックアップするための格納部)等を有している。プログラム格納部1220には、本実施形態1~4における各種処理を実現するためのプログラムが格納されている。データ格納部1210には、本実施形態1~4にかかる各種データベースの各種データを格納する。
【0099】
記憶媒体駆動装置1300は、プロセッサ1010が外部の記憶媒体(外部記憶媒体)からコンピュータプログラムや文書を含むデータ等を読み込むための駆動装置である。
ここで、外部記憶媒体とは、コンピュータプログラムやデータ等が記憶される非一時的なコンピュータ可読媒体をいう。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また各種プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路並びに記憶媒体駆動装置1300を介して、各種プログラムをコンピュータに供給できる。
【0100】
つまりコンピュータ1900は、制御部1000のプロセッサ1010が、記憶媒体駆動装置1300にセットされた外部の記憶媒体から各種プログラムを読み込んで、記憶装置1200の各部に格納する。
【0101】
そして、コンピュータ1900が各種処理を実行する場合、記憶装置1200から該当プログラムをRAM1030に読み込み、実行するようになっている。但しコンピュータ1900は、記憶装置1200からではなく、記憶媒体駆動装置1300により外部の記憶媒体から直接RAM1030にプログラムを読み込んで実行することも可能である。また、コンピュータによっては各種プログラム等を予めROM1020に記憶させておき、これをプロセッサ1010が実行するようにしてもよい。さらに、コンピュータ1900は、各種プログラムやデータを、通信制御装置1400を介して他の記憶媒体からダウンロードし、実行するようにしてもよい。
【0102】
通信制御装置1400は、コンピュータ1900と他のパーソナルコンピュータやワードプロセッサ等の各種外部電子機器との間をネットワーク接続するための制御装置である。通信制御装置1400は、これら各種外部電子機器からコンピュータ1900にアクセスすることを可能とする。
【0103】
入出力I/F1500は、パラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続するためのインターフェースである。
【0104】
なおプロセッサ1010は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)、DSP(digital signal processor)およびASIC(application specific integrated circuit)等が用いられてもよい。
【0105】
請求の範囲、明細書、および図面中において示したシステムおよび方法における各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのではない限り、任意の順序で実現しうる。請求の範囲、明細書および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順序で実施することが必須であることを意味するものではない。
【0106】
以上、実施の形態を参照して本開示を説明したが、本開示は上記によって限定されるものではない。本開示の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する端末通信部と、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、
前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、
を備える暗号化端末。
(付記2)
前記端末記憶部は、使用された第2ワンタイム鍵を除く前記鍵テーブルの情報を交互に記憶する複数の鍵メモリを有する、
付記1に記載の暗号化端末。
(付記3)
前記暗号化端末は、前記第2ワンタイム鍵が使用されたことに応じて、前記鍵テーブルの情報を記憶する鍵メモリを除く鍵メモリに、前記鍵テーブルの情報に含まれる未使用の第2ワンタイム鍵の情報のみを記憶させ、使用された前記第2ワンタイム鍵の情報が記憶された鍵メモリの前記鍵テーブルの情報を完全消去する端末鍵更新部をさらに備える、
付記2に記載の暗号化端末。
(付記4)
復号された前記暗号アルゴリズムを記憶するアルゴリズム記憶部と、
対象動作が検出されたことに応じて、前記アルゴリズム記憶部に記憶される情報を改ざんする耐タンパ部と、
をさらに備える、
付記1から3のいずれか一項に記載の暗号化端末。
(付記5)
ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを有する暗号化端末に対して、暗号化された前記暗号アルゴリズムを送信する管理通信部と、
を備える暗号管理装置。
(付記6)
前記暗号管理装置は、
前記第1ワンタイム鍵を含む管理鍵テーブルを記憶する管理記憶部をさらに備え、
前記端末記憶部は、使用された前記第1ワンタイム鍵を除く前記管理鍵テーブルの情報を交互に記憶する複数の管理鍵メモリを有する、
付記5に記載の暗号管理装置。
(付記7)
前記暗号化端末の各々は、互いに異なる第2ワンタイム鍵を含む鍵テーブルを有し、
前記管理通信部は、複数の暗号化端末の各々に対して、複数の暗号化端末の各々が有する第2ワンタイム鍵に対応する第1ワンタイム鍵を用いて暗号化された前記暗号アルゴリズムを送信する、
付記5または6に記載の暗号管理装置。
(付記8)
ワンタイムパッド方式の第1ワンタイム鍵を用いて、平文から暗号文を生成するための暗号アルゴリズムを暗号化する暗号化部と、暗号化された前記暗号アルゴリズムを送信する管理通信部と、を有する暗号管理装置と、
暗号化された前記暗号アルゴリズムを受信する端末通信部と、前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルを記憶する端末記憶部と、前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号部と、を有する暗号化端末と、
を備える暗号化通信システム。
(付記9)
前記管理記憶部は、使用された前記第2ワンタイム鍵を除く前記鍵テーブルの情報を交互に記憶する複数の鍵メモリを有する、
付記8に記載の暗号化通信システム。
(付記10)
前記暗号化端末は、
復号された前記暗号アルゴリズムを記憶するアルゴリズム記憶部と、
対象動作が検出されたことに応じて、前記アルゴリズム記憶部に記憶される情報を改ざんする耐タンパ部と、
をさらに有する、
付記8または9に記載の暗号化通信システム。
(付記11)
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する通信ステップと、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルの前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、
を備える方法。
(付記12)
平文から暗号文を生成するための暗号アルゴリズムであって、ワンタイムパッド方式の第1ワンタイム鍵を用いて暗号化された暗号アルゴリズムを受信する処理を実行させる通信ステップと、
前記第1ワンタイム鍵に対応する第2ワンタイム鍵を含む鍵テーブルの前記第2ワンタイム鍵を使用して、暗号化された前記暗号アルゴリズムを復号する復号ステップと、
をコンピュータに実行させるプログラムが格納された
非一時的なコンピュータ可読媒体。
【符号の説明】
【0107】
1 暗号化通信システム、8 ネットワーク、10,12,14,16 暗号化端末、22 情報端末、30 暗号管理装置、100 端末通信部、102,122,142 端末記憶部、107 復号部、120 端末通信部、121 モード切替部、123,143 鍵記憶部、126 アルゴリズム記憶部、127 暗号化復号部、128,148 端末鍵更新部、129,169 アルゴリズム更新部、144,145 鍵メモリ、170 耐タンパ部、300 取得部、302 管理記憶部、304 暗号化部、306 管理鍵更新部、308 管理通信部、MT 鍵テーブル、TT 鍵テーブル、A 暗号アルゴリズム、AK 暗号アルゴリズム鍵、R 乱数列