(57)【要約】【課題】  十分なセキュリティを実現しつつ鍵管理の負荷をより抑える暗号化処理を実現する。【解決手段】  暗号化処理装置であって、送信元と、送信元の暗号鍵を保存用暗号鍵へと付替る保存時変換鍵と、を対応付けた保存時付替鍵情報と、受信先と、保存用暗号鍵を受信先の暗号鍵へと付替る読出時変換鍵と、を対応付けた読出時付替鍵情報とを記憶する記憶部と、送信元から暗号情報を受付る暗号情報入力処理部と、保存時変換鍵を用い暗号情報を保存用暗号鍵に付替る処理と、保存用暗号鍵へ付替られた情報について読出時変換鍵を用い受信先の暗号鍵へ付替る処理と、を行う暗号鍵付替部と、受信先の読出時付替鍵情報がない場合に上位の暗号化処理装置へ保存用暗号鍵に付替られた情報を送信する親転送部と、を備え、暗号鍵付替部は、保存用暗号鍵に付替られた情報を上位の暗号化処理装置から受信し、受信先の暗号鍵へ付替る。【選択図】図１
2019129490.tif 000002
【特許請求の範囲】
【請求項１】
情報の送信元を特定する情報と、前記情報の送信元を特定する情報に対応付けられた暗号鍵を所定の保存用暗号鍵へと付け替える処理に用いる保存時変換鍵と、を対応付けた保存時付替鍵情報と、
情報の受信先を特定する情報と、前記所定の保存用暗号鍵を前記情報の受信先に対応付けられた暗号鍵へと付け替える処理に用いる読出時変換鍵と、を対応付けた読出時付替鍵情報と、を記憶する記憶部と、
前記送信元から前記暗号鍵により暗号化された情報を受け付ける暗号情報入力処理部と、
前記暗号鍵により暗号化された情報について、前記送信元に応じた前記保存時変換鍵を用いて前記所定の保存用暗号鍵へと付け替える処理と、
前記所定の保存用暗号鍵へと付け替えられた前記情報について、前記受信先に応じた前記読出時変換鍵を用いて前記受信先に応じた暗号鍵へと付け替える処理と、を行う暗号鍵付替部と、
前記受信先についての前記読出時付替鍵情報が前記記憶部に含まれない場合に、所定の上位の暗号化処理装置へ前記所定の保存用暗号鍵へと付け替えられた前記情報を送信する親転送部と、を備え、
前記暗号鍵付替部は、前記所定の保存用暗号鍵へと付け替えられた前記情報を前記上位の暗号化処理装置から受信すると、前記受信先に応じた暗号鍵へと付け替える処理を行う、
ことを特徴とする暗号化処理装置。
【請求項２】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵は、前記送信元を特定する情報に対応付けられた暗号鍵の所定の演算に関する逆元となる情報と、前記所定の保存用暗号鍵と、についての前記所定の演算による解と同一である、
ことを特徴とする暗号化処理装置。
【請求項３】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵は、前記送信元を特定する情報に対応付けられた暗号鍵と排他的論理和に関する逆元となる情報と、前記所定の保存用暗号鍵と、についての排他的論理和である、
ことを特徴とする暗号化処理装置。
【請求項４】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵は、前記送信元を特定する情報に対応付けられた暗号鍵の所定の演算に関する逆元となる情報と、前記所定の保存用暗号鍵と、についての前記所定の演算による解と同一であり、
前記読出時変換鍵は、前記所定の保存用暗号鍵の所定の演算に関する逆元となる情報と、前記受信先を特定する情報に対応付けられた暗号鍵と、についての前記所定の演算による解と同一である、
ことを特徴とする暗号化処理装置。
【請求項５】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵は、前記送信元を特定する情報に対応付けられた暗号鍵と排他的論理和に関する逆元となる情報と、前記所定の保存用暗号鍵と、についての排他的論理和であり、
前記読出時変換鍵は、前記所定の保存用暗号鍵と排他的論理和に関する逆元となる情報と、前記受信先を特定する情報に対応付けられた暗号鍵と、についての排他的論理和である、
ことを特徴とする暗号化処理装置。
【請求項６】
請求項１に記載の暗号化処理装置であって、
前記暗号鍵により暗号化された情報には、所定の共通鍵により暗号化されたメッセージ本文と、前記メッセージ本文の暗号化に用いた前記所定の共通鍵を前記暗号鍵により暗号化した情報と、が含まれる、
ことを特徴とする暗号化処理装置。
【請求項７】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵の作成を前記上位の暗号化処理装置へ依頼する変換鍵生成部を備え、
前記変換鍵生成部は、前記情報の送信元を特定する情報に対応付けられた暗号鍵と、擬似乱数と、を用いた所定の演算結果を含むダミー再暗号鍵を前記上位の暗号化処理装置へ送信し、
前記上位の暗号化処理装置から、前記ダミー再暗号鍵と、該暗号化処理装置自身に固有の鍵と、を用いた前記所定の演算結果を含む修正用再暗号鍵を受信し、
前記修正用再暗号鍵と、前記擬似乱数と、を用いて前記所定の演算を行った結果を前記保存時変換鍵とする、
ことを特徴とする暗号化処理装置。
【請求項８】
請求項１に記載の暗号化処理装置であって、
前記保存時変換鍵の作成を下位の暗号化処理装置から依頼されて作成する子変換鍵生成部を備え、
前記子変換鍵生成部は、前記情報の送信元を特定する情報に対応付けられた暗号鍵と、擬似乱数と、を用いた所定の演算結果を含むダミー再暗号鍵を前記下位の暗号化処理装置から受信し、
前記ダミー再暗号鍵と、該暗号化処理装置自身に固有の鍵と、を用いた前記所定の演算結果を含む修正用再暗号鍵を生成して前記下位の暗号化処理装置へと送信する、
ことを特徴とする暗号化処理装置。
【請求項９】
請求項１に記載の暗号化処理装置であって、
ロードバランス処理部を備え、
前記ロードバランス処理部は、
所定の下位の暗号化処理装置から、前記所定の保存用暗号鍵へと付け替える処理および前記受信先に応じた暗号鍵へと付け替える処理の委譲を受け付けると、
所定の同位の暗号化処理装置それぞれに、配下の下位の暗号化処理装置の数を問い合わせ、
前記同位の暗号化処理装置から応答された前記配下の下位の暗号化処理装置の数の多寡に応じて、前記委譲に係る下位の暗号化処理装置からの処理を前記同位の暗号化処理装置間で重み付けして分担するよう決定する、
ことを特徴とする暗号化処理装置。
【請求項１０】
情報処理装置と、暗号化処理装置と、を含む暗号化処理システムであって、
前記情報処理装置は、
共通鍵によりメッセージ本文を暗号化する共通鍵暗号処理部と、
前記共通鍵を所定の固有鍵で共通鍵暗号方式により暗号化する鍵情報暗号処理部と、
前記鍵情報暗号処理部により暗号化した情報および暗号化された前記メッセージ本文を所定の暗号化処理装置に送信する暗号情報出力部と、
を備え、
前記暗号化処理装置は、
情報の送信元を特定する情報と、当該情報の送信元を特定する情報に対応付けられた暗号鍵を所定の保存用暗号鍵へと付け替える処理に用いる保存時変換鍵と、を対応付けた保存時付替鍵情報と、
情報の受信先を特定する情報と、前記所定の保存用暗号鍵を前記情報の受信先に対応付けられた暗号鍵へと付け替える処理に用いる読出時変換鍵と、を対応付けた読出時付替鍵情報と、を記憶する記憶部と、
前記送信元から前記暗号鍵により暗号化された情報を受け付ける暗号情報入力処理部と、
前記暗号鍵により暗号化された情報について、前記送信元に応じた前記保存時変換鍵を用いて前記所定の保存用暗号鍵へと付け替える処理と、
前記所定の保存用暗号鍵へと付け替えられた前記情報について、前記受信先に応じた前記読出時変換鍵を用いて前記受信先に応じた暗号鍵へと付け替える処理と、を行う暗号鍵付替部と、
前記受信先についての前記読出時付替鍵情報が前記記憶部に含まれない場合に、所定の上位の暗号化処理装置へ前記所定の保存用暗号鍵へと付け替えられた前記情報を送信する親転送部と、を備え、
前記暗号鍵付替部は、前記所定の保存用暗号鍵へと付け替えられた前記情報を前記上位の暗号化処理装置から受信すると、前記受信先に応じた暗号鍵へと付け替える処理を行う、
ことを特徴とする暗号化処理システム。
【請求項１１】
暗号化処理装置を用いた暗号化処理方法であって、
前記暗号化処理装置は、
情報の送信元を特定する情報と、当該情報の送信元を特定する情報に対応付けられた暗号鍵を所定の保存用暗号鍵へと付け替える処理に用いる保存時変換鍵と、を対応付けた保存時付替鍵情報と、
情報の受信先を特定する情報と、前記所定の保存用暗号鍵を前記情報の受信先に対応付けられた暗号鍵へと付け替える処理に用いる読出時変換鍵と、を対応付けた読出時付替鍵情報と、を記憶する記憶部と、制御部と、を備え、
前記制御部は、
前記送信元から前記暗号鍵により暗号化された情報を受け付ける暗号情報入力処理ステップと、
前記暗号鍵により暗号化された情報について、前記送信元に応じた前記保存時変換鍵を用いて前記所定の保存用暗号鍵へと付け替える処理と、前記所定の保存用暗号鍵へと付け替えられた前記情報について、前記受信先に応じた前記読出時変換鍵を用いて前記受信先に応じた暗号鍵へと付け替える処理と、を行う暗号鍵付替ステップと、
前記受信先についての前記読出時付替鍵情報が前記記憶部に含まれない場合に、所定の上位の暗号化処理装置へ前記所定の保存用暗号鍵へと付け替えられた前記情報を送信する親転送ステップと、を実行し、
前記制御部は、前記暗号鍵付替ステップにおいて、前記所定の保存用暗号鍵へと付け替えられた前記情報を前記上位の暗号化処理装置から受信した場合には、前記受信先に応じた暗号鍵へと付け替える、
ことを特徴とする暗号化処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化処理装置に関する。
【背景技術】
【０００２】
特許文献１には、「グループに属するメンバに操作されるクライアント装置に通信可能なファイル共有装置及び再暗号化装置を備えた再暗号化システムであって、前記ファイル共有装置は、前記グループの公開鍵に基づいてファイルが暗号化されてなる第１暗号化ファイルを記憶するファイル記憶手段と、前記メンバを識別するメンバＩＤ及び前記第１暗号化ファイルのファイル名を含むファイル要求を前記クライアント装置から受けると、前記ファイル要求内のファイル名に基づいて前記ファイル記憶手段から前記第１暗号化ファイルを取得する手段と、前記取得した第１暗号化ファイル及び前記ファイル要求内のメンバＩＤを含む再暗号化要求を前記再暗号化装置に送信する手段と、前記メンバＩＤの公開鍵に基づいて前記ファイルが暗号化されてなる第２暗号化ファイルを前記再暗号化装置から受けると、当該第２暗号化ファイルを前記クライアント装置に送信する手段とを備え、前記再暗号化装置は、前記メンバを識別するメンバＩＤと、前記第１暗号化ファイルを復号せずに前記第２暗号化ファイルに再暗号化するための再暗号化鍵とを関連付けて記憶する再暗号化鍵記憶手段と、前記再暗号化要求を前記ファイル共有装置から受けると、当該再暗号化要求内のメンバＩＤに基づいて前記再暗号化鍵記憶手段から前記再暗号化鍵を取得する手段と、前記取得した再暗号化鍵に基づいて、前記再暗号化要求内の第１暗号化ファイルを前記第２暗号化ファイルに再暗号化する手段と、前記再暗号化により得られた第２暗号化ファイルを前記ファイル共有装置に送信する手段とを備え、前記クライアント装置は、前記ファイル共有装置から受けた第２暗号化ファイルを前記メンバの公開鍵に対応する秘密鍵に基づいて復号することにより、前記ファイルを得ることを特徴とする再暗号化システム」との記載がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１０１２６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記技術においては、ファイルの送信側のクライアント装置では、ファイルを送信しようとするグループごとに設定されたグループ鍵を用いて暗号化してファイル共有装置へファイルを送信するが、送信しようとするグループの数だけグループ鍵を管理する必要が有り、クライアント装置における鍵管理が複雑化してしまうおそれがある。
【０００５】
本発明の目的は、十分なセキュリティとスケーラビリティを実現しつつ鍵管理の負荷をより抑える暗号化処理を実現する技術を提供することにある。
【課題を解決するための手段】
【０００６】
本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。上記課題を解決すべく、本発明に係る暗号化処理装置は、情報の送信元を特定する情報と、上記情報の送信元を特定する情報に対応付けられた暗号鍵を所定の保存用暗号鍵へと付け替える処理に用いる保存時変換鍵と、を対応付けた保存時付替鍵情報と、情報の受信先を特定する情報と、上記所定の保存用暗号鍵を上記情報の受信先に対応付けられた暗号鍵へと付け替える処理に用いる読出時変換鍵と、を対応付けた読出時付替鍵情報と、を記憶する記憶部と、上記送信元から上記暗号鍵により暗号化された情報を受け付ける暗号情報入力処理部と、上記暗号鍵により暗号化された情報について、上記送信元に応じた上記保存時変換鍵を用いて上記所定の保存用暗号鍵へと付け替える処理と、上記所定の保存用暗号鍵へと付け替えられた上記情報について、上記受信先に応じた上記読出時変換鍵を用いて上記受信先に応じた暗号鍵へと付け替える処理と、を行う暗号鍵付替部と、上記受信先についての上記読出時付替鍵情報が上記記憶部に含まれない場合に、所定の上位の暗号化処理装置へ上記所定の保存用暗号鍵へと付け替えられた上記情報を送信する親転送部と、を備え、上記暗号鍵付替部は、上記所定の保存用暗号鍵へと付け替えられた上記情報を上記上位の暗号化処理装置から受信すると、上記受信先に応じた暗号鍵へと付け替える処理を行う、ことを特徴とする。
【発明の効果】
【０００７】
本発明によると、十分なセキュリティとスケーラビリティを実現しつつ鍵管理の負荷をより抑える暗号化処理を実現することができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第一の実施形態に係る階層型暗号化処理システムの利用例の図である。
【図２】階層型暗号化処理システムのグループ外送信の例を示す図である。
【図３】階層型暗号化処理システムのグループ外受信の例を示す図である。
【図４】階層型暗号化処理システムのグループ内通信の例を示す図である。
【図５】暗号化処理システムの一階層の構成の例を示す図である。
【図６】保存時付替鍵情報記憶部の構成例を示す図である。
【図７】読出時付替鍵情報記憶部の構成例を示す図である。
【図８】暗号化処理装置のハードウェア構成例を示す図である。
【図９】送信側情報処理装置の暗号化処理の流れの例を示す図である。
【図１０】送信側情報処理装置の暗号化処理のデータ図の例を示す図である。
【図１１】暗号化処理装置の保存時鍵付替処理の流れの例を示す図である。
【図１２】暗号化処理装置の読出時鍵付替処理の流れの例を示す図である。
【図１３】暗号化処理装置の鍵付替処理におけるデータ図の例を示す図である。
【図１４】受信側情報処理装置の復号化処理の流れの例を示す図である。
【図１５】受信側情報処理装置の復号化処理のデータ図の例を示す図である。
【図１６】暗号化処理装置の親子間の変換鍵生成処理の流れの例を示す図である。
【図１７】暗号化処理装置の同位間のロードバランス処理の流れの例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本発明に係る階層型暗号化処理システム１について、図面を参照して説明する。
【００１０】
図１は、本発明に係る階層型暗号化処理システム１の利用例を示す図である。階層型暗号化処理システム１は、暗号化処理装置（子）１００と、暗号化処理装置（子）１００とネットワークを介して通信可能な送信側情報処理装置２００と、暗号化処理装置（子）１００とネットワークを介して通信可能な暗号化処理装置（親）１０と、暗号化処理装置（親）１０とネットワークを介して通信可能な暗号化処理装置（子）１００´と、暗号化処理装置（子）１００´とネットワークを介して通信可能な受信側情報処理装置３００と、を含む。送信側情報処理装置２００および受信側情報処理装置３００は、それぞれ一台に限られるものではなく複数台であってもよい。
【００１１】
また、送信側情報処理装置２００から送信された情報は、暗号化処理装置（子）１００、暗号化処理装置（親）１０、暗号化処理装置（子）１００´、を経由して複数の受信側情報処理装置３００に受け渡される。また、受信側情報処理装置３００は、役割として情報を受信する役割を担う場合に限られるものではなく、情報を送信する場合には送信側情報処理装置２００として動作可能である。送信側情報処理装置２００についても同様に、役割として情報を送信する役割を担う場合に限られるものではなく、情報を受信する場合には受信側情報処理装置３００として動作可能である。
【００１２】
送信側情報処理装置２００は、送信するデータＭを、セッション鍵（乱数）を用いた暗号鍵により共通鍵暗号方式を用いて暗号化する（暗号文Ｃ）。そして、送信側情報処理装置２００は、データＭを暗号化した際の暗号鍵（セッション鍵）を含めた情報を、送信側情報処理装置２００に固有の暗号鍵（端末鍵（Ｋｅｙ  Ａ））を用いて共有鍵暗号化方式で暗号化し（鍵情報）、暗号化処理装置（子）１００へ当該暗号化した送信するデータＭ（暗号文Ｃ）とともに送信先を指定して送信する。なお、図１では、暗号化されたデータＭ（暗号文Ｃ）と、鍵情報（セッション鍵）と、を端末鍵（Ｋｅｙ  Ａ）で暗号化した情報をＥｎｃ（Ｋｅｙ  Ａ，Ｍ）と示す。また、後の説明にあるように、同データについてＫｅｙ  Ａから別の鍵（例えば、Ｋｅｙ  Ｘ）に付け替えた（再暗号した）場合には、Ｅｎｃ（Ｋｅｙ  Ｘ，Ｍ）と示す。
【００１３】
暗号化処理装置（子）１００は、送信側情報処理装置２００からデータＥｎｃ（Ｋｅｙ  Ａ，Ｍ）を受信すると、当該データに関して鍵付け替え（送信側情報処理装置２００に固有の暗号鍵を暗号化処理装置（子）１００に固有の暗号鍵へ付け替える）再暗号化処理を行い、ストレージ等に再暗号化された当該データＥｎｃ（Ｋｅｙ  Ｘ，Ｍ）を保存する。そして、暗号化処理装置（子）１００は、当該データの当初のあて先となる受信側情報処理装置３００が属する暗号化処理装置（子）１００´を新たなデータのあて先として、暗号化処理装置（親）１０へ当該データＥｎｃ（Ｋｅｙ  Ｘ，Ｍ）を送信する。
【００１４】
暗号化処理装置（親）１０は、暗号化処理装置（子）１００からデータＥｎｃ（Ｋｅｙ  Ｘ，Ｍ）を受信すると、当該データに関して鍵付け替え（暗号化処理装置（子）１００に固有の暗号鍵（Ｋｅｙ  Ｘ）を暗号化処理装置（子）１００´に固有の暗号鍵（Ｋｅｙ  Ｙ）へ付け替える）再暗号化処理を行い、ストレージ等に再暗号化された当該データＥｎｃ（Ｋｅｙ  Ｙ，Ｍ）を保存する。そして、暗号化処理装置（親）１０は、当該データＥｎｃ（Ｋｅｙ  Ｙ，Ｍ）の当初のあて先となる受信側情報処理装置３００が属する暗号化処理装置（子）１００´へ当該データを送信する。
【００１５】
暗号化処理装置（子）１００´は、暗号化処理装置（親）１０からデータＥｎｃ（Ｋｅｙ  Ｙ，Ｍ）を受信すると、ストレージ等に再暗号化された当該データを保存する。
【００１６】
暗号化処理装置（子）１００´は、受信側情報処理装置３００から受信要求を受け付けたタイミングあるいは所定のタイミングで、ストレージ等に再暗号化された当該データを読出し、送信先の受信側情報処理装置３００ごとに鍵付け替え（暗号化処理装置（子）１００´に固有の暗号鍵（Ｋｅｙ  Ｙ）を受信側情報処理装置３００に固有の暗号鍵（Ｋｅｙ  Ｂ）へ付け替える）再暗号化処理を行う。そして、暗号化処理装置（子）１００´は、当該データＥｎｃ（Ｋｅｙ  Ｂ，Ｍ）を送信先に指定された受信側情報処理装置３００に送信する。
【００１７】
受信側情報処理装置３００は、受信したデータＥｎｃ（Ｋｅｙ  Ｂ，Ｍ）から、端末鍵（Ｋｅｙ  Ｂ）を用いて鍵情報と暗号文Ｃとを取り出し、そして、受信側情報処理装置３００は、暗号文Ｃを、取り出した暗号鍵（セッション鍵）により共通鍵暗号方式に則り復号化処理する。そして、受信側情報処理装置３００は、暗号文Ｃを復号化処理した結果得られるデータＭを取得する。
【００１８】
図１に示したように、暗号化処理装置（子）１００および暗号化処理装置（子）１００´は、それぞれグループＸ２、グループＹ３を形成する。当該グループＸ２、グループＹ３は、暗号化処理装置（子）が管轄する情報処理装置により形成される。なお、セキュリティおよび鍵管理の観点から、各暗号化処理装置（子）は直接的にグループを跨って再暗号化することはない。グループを跨って再暗号化を要する場合には、図１に示したように、暗号化処理装置（子）１００から暗号化処理装置（親）１０を経由して送信し、暗号化処理装置（親）１０が暗号化処理装置（子）１００と暗号化処理装置（子）１００´との再暗号化を行う。
【００１９】
以上が、本発明に係る階層型暗号化処理システム１の利用例である。「階層型」とは、最上位の暗号化処理装置を除き、一つの暗号化処理装置は少なくとも一つ以上の親の下位に位置づけられ、別の暗号化処理装置を下位の暗号化処理装置とすることができることをいう。そのため、単層のみを成す等、複数階層を成す必要は必須ではないが、一般的な使用状況では複数階層を成すのが望ましい。この階層型暗号化処理システム１の構成について、以下説明を行う。
【００２０】
図２は、階層型暗号化処理システムのグループ外送信の例を示す図である。グループＸ外の端末へグループＸに属する情報処理装置から暗号化データを送信する場合には、当該送信側情報処理装置２００において、データＭを乱数で暗号化して暗号文Ｃを作成する。そして、送信側情報処理装置２００は、当該乱数を鍵情報として暗号文Ｃに付した情報を送信側情報処理装置２００に固有の端末鍵（Ｋｅｙ  Ａ）で暗号化してＥｎｃ（Ｋｅｙ  Ａ，Ｍ）を作成し、暗号化処理装置（子）１００へ、あて先となるグループＹの装置を指定して送信する。
【００２１】
暗号化処理装置（子）１００は、あて先となるグループＹ３を管轄している暗号化処理装置（子）１００´の暗号鍵に再暗号化するための再暗号鍵を保持していない（上述のとおり、直接グループ間を跨る再暗号化はできない）ため、自身の固有鍵となるＫｅｙ  Ｘに付け替える再暗号化（Ｋｅｙ  ＡからＫｅｙ  Ｘへの再変換鍵を用いた再暗号化）を行い、暗号化処理装置（親）１０へ、あて先となるグループＹ３の装置を指定して送信する。
【００２２】
図３は、階層型暗号化処理システムのグループ外受信の例を示す図である。グループＹ外の端末からグループＹに属する情報処理装置が暗号化データを受信する場合には、あて先となる受信側情報処理装置３００を管轄する暗号化処理装置（子）１００´が暗号化処理装置（親）１０から送信されたデータＥｎｃ（Ｋｅｙ  Ｙ，Ｍ）を受信し、受信側情報処理装置３００に固有の端末鍵（Ｋｅｙ  Ｂ）に付け替える再暗号鍵を用いて再暗号化してＥｎｃ（Ｋｅｙ  Ｂ，Ｍ）を作成する。
【００２３】
そして、受信側情報処理装置３００は、Ｅｎｃ（Ｋｅｙ  Ｂ，Ｍ）を受信して、受信側情報処理装置３００に固有の端末鍵（Ｋｅｙ  Ｂ）で復号化し、鍵情報（乱数）と暗号文Ｃを取り出す。そして、鍵情報の乱数を用いて暗号文Ｃを復号化し、データＭを取り出す。
【００２４】
図４は、階層型暗号化処理システムのグループ内通信の例を示す図である。すなわち、図４では、グループＸ２に属する情報処理装置間（送信側情報処理装置２００と受信側情報処理装置２００Ｍ，２００Ｎとが暗号化処理装置（子）１００の管轄化にある）で暗号データの送受信を行う場合の動作の例が示されている。
【００２５】
まず、送信側情報処理装置２００において、データＭを乱数で暗号化して暗号文Ｃを作成する。そして、送信側情報処理装置２００は、当該乱数を鍵情報として暗号文Ｃに付した情報を送信側情報処理装置２００に固有の端末鍵（Ｋｅｙ  Ａ）で暗号化してＥｎｃ（Ｋｅｙ  Ａ，Ｍ）を作成し、暗号化処理装置（子）１００へ、あて先となるグループＸの装置を指定して送信する。
【００２６】
暗号化処理装置（子）１００は、自身の固有鍵となるＫｅｙ  Ｘに付け替える再暗号化（Ｋｅｙ  ＡからＫｅｙ  Ｘへの再変換鍵を用いた再暗号化）を行い、あて先となる受信側情報処理装置２００Ｍ、２００Ｎのそれぞれの固有の端末鍵（Ｋｅｙ  Ｍ、Ｋｅｙ  Ｎ）のそれぞれに鍵を付け替えてデータＥｎｃ（Ｋｅｙ  Ｍ，Ｍ）と、Ｅｎｃ（Ｋｅｙ  Ｎ，Ｍ）とを作成する。この際、再変換鍵はそれぞれ、Ｋｅｙ  ＸからＫｅｙ  Ｍへ変換する再変換鍵と、Ｋｅｙ  ＸからＫｅｙ  Ｎへ変換する再変換鍵と、を用いる。
【００２７】
そして、受信側情報処理装置２００Ｍおよび２００Ｎは、それぞれＥｎｃ（Ｋｅｙ  Ｍ，Ｍ）、Ｅｎｃ（Ｋｅｙ  Ｎ，Ｍ）を受信して、受信側情報処理装置２００Ｍ、２００Ｎに固有の端末鍵（Ｋｅｙ  ＭまたはＫｅｙ  Ｎ）で復号化し、鍵情報（乱数）と暗号文Ｃを取り出す。そして、鍵情報の乱数を用いて暗号文Ｃを復号化し、データＭを取り出す。
【００２８】
図５は、暗号化処理システムの一階層の構成の例を示す図である。階層型暗号化処理システム１の一階層には、暗号化処理装置（子）１００と、送信側情報処理装置２００と、受信側情報処理装置３００と、が含まれ、暗号化処理装置（子）１００と、送信側情報処理装置２００と、受信側情報処理装置３００とは、インターネットあるいはＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク５０と接続して互いに他の装置と通信することが可能である。望ましくは、ネットワーク５０はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）等のクローズドあるいはセキュアなネットワークである。
【００２９】
暗号化処理装置（子）１００は、制御部１２０と、記憶部１３０と、通信部１４０と、を含んで構成される。また、送信側情報処理装置２００は、制御部２２０と、記憶部２３０と、通信部２４０と、を含んで構成される。同様に、受信側情報処理装置３００は、制御部３２０と、記憶部３３０と、通信部３４０と、を含んで構成される。
【００３０】
暗号化処理装置（子）１００の記憶部１３０には、保存時付替鍵情報記憶部１３１と、読出時付替鍵情報記憶部１３２と、暗号文記憶部１３３と、下位固有鍵記憶部１３４と、が含まれる。
【００３１】
図６は、保存時付替鍵情報記憶部の構成例を示す図である。保存時付替鍵情報記憶部１３１には、情報の送信元となる装置を特定する送信元１３１ａと、送信元が送信した情報を暗号文記憶部１３３に記憶させる際に付け替えるための変換鍵１３１ｂと、が対応付けられた情報が複数記憶される。例えば、送信元１３１ａとしての「Ａ」と、変換鍵１３１ｂとしての「ｋｅｙ  Ａ−＞ｋｅｙ  Ｘ」と、が対応付けられている。これはすなわち、送信元「Ａ」から送信された情報は、暗号鍵を「ｋｅｙ  Ａ」に代えて、暗号化処理装置（子）１００に固有の「ｋｅｙ  Ｘ」に付け替えて保存する場合に用いられる対応付けの情報として予め記憶されているものである。いいかえると、保存時付替鍵情報記憶部１３１は、情報の送信元を特定する情報と、当該情報の送信元を特定する情報に対応付けられた暗号鍵を所定の保存用暗号鍵へと付け替える処理に用いる保存時変換鍵と、を対応付けた保存時付替鍵情報を格納する記憶部である。なお、保存時付替鍵情報記憶部１３１は、保存時のみならず、他の装置へ転送する場合に用いる鍵についても保存している。
【００３２】
図７は、読出時付替鍵情報記憶部の構成例を示す図である。読出時付替鍵情報記憶部１３２には、情報の受信先となる管理下の装置を特定する受信先１３２ａと、暗号文記憶部１３３に記憶された送信元が送信した情報を受信先１３２ａが復号可能な暗号鍵に付け替えるための変換鍵１３２ｂと、が対応付けられた情報が複数記憶される。例えば、受信先１３２ａとしての「Ｂ」と、変換鍵１３２ｂとしての「ｋｅｙ  Ｘ−＞ｋｅｙ  Ｂ」と、が対応付けられている。これはすなわち、受信先「Ｂ」により受信される情報は、暗号化処理装置（子）１００に固有の暗号鍵「ｋｅｙ  Ｘ」に代えて、受信先「Ｂ」に固有の暗号鍵「ｋｅｙ  Ｂ」に付け替えて読み出される場合に用いられる対応付けの情報として予め記憶されているものである。いいかえると、読出時付替鍵情報記憶部１３２は、情報の受信先を特定する情報と、所定の保存用暗号鍵を情報の受信先に対応付けられた暗号鍵へと付け替える処理に用いる読出時の変換鍵と、を対応付けた読出時付替鍵情報を格納する記憶部であるといえる。なお、読出時付替鍵情報記憶部１３２は、読出時のみならず、管理下の受信装置へ転送する場合に用いる鍵についても保存している。
【００３３】
暗号文記憶部１３３には、暗号化処理装置１００に固有の暗号鍵「ｋｅｙ  Ｘ」により暗号化された暗号文が送信元および受信先を特定可能に格納される。
【００３４】
下位固有鍵記憶部１３４には、下位の暗号化処理装置の固有鍵が格納される。暗号化処理装置は、階層構造を成して接続され、上位の暗号化処理装置は直下位の暗号化処理装置の固有鍵を有することで、直下位の暗号化装置間の暗号データの鍵の付け替えと転送を可能とする。セキュリティの配慮から、下位の暗号化処理装置自身は自身の固有鍵を有さず、管轄下の暗号化処理装置（情報処理装置）の固有鍵（端末鍵）と自身の固有鍵間、あるいは管轄下の暗号化処理装置（情報処理装置）間の変換鍵のみを有する。ただし、これに限られるものではなく、下位固有鍵記憶部１３４には管轄下の情報処理装置の固有鍵（端末鍵）と自身の固有鍵との間の変換鍵を有し、実際に下位の暗号化処理装置の固有鍵を保持しているのはネットワークを経由して接続可能な図示しない別のサーバー装置とするようにしてもよい。
【００３５】
図５の説明に戻る。制御部１２０には、暗号情報入力処理部１２１と、暗号鍵付替部１２２と、保存時付替鍵特定部１２３と、読出時付替鍵特定部１２４と、暗号情報出力処理部１２５と、親転送部１２６と、ロードバランス処理部１２７と、子変換鍵生成部１２８と、変換鍵生成部１２９と、が含まれる。
【００３６】
暗号情報入力処理部１２１は、送信側情報処理装置２００から送信された暗号化された情報である暗号情報の入力を受け付ける。また、暗号情報入力処理部１２１は、受け付けた暗号情報について、暗号鍵付替部１２２に暗号鍵の付け替えを行わせ、暗号鍵を付替えられた暗号情報を暗号文記憶部１３３へ保存する。
【００３７】
暗号鍵付替部１２２は、暗号鍵により暗号化された暗号情報について、暗号鍵の付け替えを行う。また、暗号鍵付替部１２２は、暗号情報の保存時または転送時には保存時付替鍵特定部１２３に保存時変換鍵を特定させて暗号鍵を付け替える。また、暗号鍵付替部１２２は、暗号情報の読出時または転送時には読出時付替鍵特定部１２４に読出時変換鍵を特定させて暗号鍵を付け替える。
【００３８】
保存時付替鍵特定部１２３は、暗号情報の保存時または転送時に暗号鍵を付替えるための変換鍵を特定する。具体的には、暗号情報の保存時または転送時に、送信元に応じて暗号化処理装置（子）１００に固有の暗号鍵へと付け替えるための変換鍵の情報を保存時付替鍵情報記憶部１３１を参照して得る。
【００３９】
読出時付替鍵特定部１２４は、暗号情報の読出時または転送時に暗号鍵を付替えるための変換鍵を特定する。具体的には、暗号情報の読出時または転送時に、受信先に応じて暗号化処理装置（子）１００に固有の暗号鍵から受信側情報処理装置３００に固有の暗号鍵へと付け替えるための変換鍵の情報を読出時付替鍵情報記憶部１３２を参照して得る。
【００４０】
暗号情報出力処理部１２５は、受信先に応じて暗号鍵を付け替えた暗号情報について、受信先である受信側情報処理装置３００へ送信する。
【００４１】
親転送部１２６は、暗号化処理装置（子）１００に固有の暗号鍵に付け替えた暗号情報について、受信先が管轄下にない場合に、上位の暗号化処理装置（親）１０へ送信する。
【００４２】
ロードバランス処理部１２７は、暗号化処理装置（子）１００が下位の暗号化処理装置から暗号データの転送を受けた場合に、予め定められた同位の暗号化処理装置があればその暗号化処理装置とのロードバランス処理を実施する。具体的には、ロードバランス処理部１２７は、同位の暗号化処理装置の夫々に対して、管理下にある暗号化処理装置（グループ）の数を問い合わせ、その数に応じて当該下位の暗号化処理装置からの暗号データの転送処理を担う暗号化処理装置を決定する。
【００４３】
例えば、自身は１０グループが管轄下にあり、同位の暗号化処理装置はそれぞれ７グループ、８グループの管轄を行っている場合には、ロードバランス処理部１２７は、新たに暗号データの転送を７グループの管轄を行っている同位の暗号化処理装置に担当させるよう転送し、以降は自身で１０グループ、同位の暗号化処理装置はそれぞれ８グループ、８グループの管轄を行うようにする。また、ロードバランス処理部１２７は、他の同位の暗号化処理装置から管轄グループ数の問い合わせに応じて管轄グループ数を回答し、担当すべき暗号データの転送を受けた場合には以降において該グループを管轄グループとして扱う。詳細な処理については、後述する。
【００４４】
子変換鍵生成部１２８は、下位の暗号化処理装置からの要求を受けて、下位の暗号化処理装置の固有鍵を用いて変換鍵の生成を行う。詳細な処理については、後述する。
【００４５】
変換鍵生成部１２９は、上位の暗号化処理装置へ、自身の暗号化処理装置の固有鍵を用いた変換鍵の生成を要求する。詳細な処理については、後述する。
【００４６】
通信部１４０は、インターネットあるいはＬＡＮ等のネットワーク５０を介して、他の装置との間の通信を行う。
【００４７】
なお、記憶部１３０は、ネットワーク５０を介して接続される他の装置に設けられ、制御部１２０は通信部１４０を介して記憶部１３０が格納する情報にアクセスするものであってもよい。
【００４８】
送信側情報処理装置２００の記憶部２３０には、共通鍵記憶部２３１が含まれる。共通鍵記憶部２３１には、送信側情報処理装置２００に固有の暗号鍵の情報が格納される。当該暗号鍵は、暗号および復号に共通する暗号鍵を用いる共通鍵方式における暗号鍵として管理され、使用される。
【００４９】
制御部２２０には、乱数生成部２２１と、共通鍵暗号処理部２２２と、鍵情報暗号処理部２２３と、マージ処理部２２４と、暗号情報出力部２２５と、が含まれる。
【００５０】
乱数生成部２２１は、乱数を生成する。本実施形態においては、乱数生成部２２１は、暗号化を行う対象である元の情報に対して、暗号化を行う際に用いる共通鍵となる乱数（擬似乱数であってもよいが、真正性の高い乱数であることが望ましい。）を生成する。
【００５１】
共通鍵暗号処理部２２２は、共通鍵暗号方式を適用して所定の情報を所定の暗号鍵により暗号化する。以降、当該処理により暗号化された所定の情報を、暗号メッセージと称呼する。本実施形態においては、共通鍵暗号処理部２２２は、暗号化を行う対象である元の情報を、乱数生成部２２１により生成された乱数（以降、「セッション鍵」と称呼）を暗号鍵として、共通鍵暗号方式により暗号化させる。
【００５２】
鍵情報暗号処理部２２３は、セッション鍵に対して、共通鍵記憶部２３１に格納された送信側情報処理装置２００に固有の共通鍵を用いて、再暗号可能な共通鍵暗号方式により暗号化を行う。
【００５３】
マージ処理部２２４は、鍵情報暗号処理部２２３により暗号化されたセッション鍵と、共通鍵暗号処理部２２２により暗号化された暗号メッセージと、を併合させてＥｎｃ情報を生成する。
【００５４】
暗号情報出力部２２５は、マージ処理部２２４により併合された暗号化した鍵情報と、暗号メッセージと、を含むＥｎｃ情報を暗号情報として暗号化処理装置（子）１００へ出力する。
【００５５】
通信部２４０は、インターネットあるいはＬＡＮ等のネットワーク５０を介して、他の装置との間の通信を行う。
【００５６】
受信側情報処理装置３００の記憶部３３０には、共通鍵記憶部３３１が含まれる。共通鍵記憶部３３１には、受信側情報処理装置３００に固有の暗号鍵の情報が格納される。当該暗号鍵は、暗号および復号に共通する暗号鍵を用いる共通鍵方式における暗号鍵として管理され、使用される。
【００５７】
制御部３２０には、暗号情報要求部３２１と、鍵情報抽出処理部３２２と、鍵情報復号処理部３２３と、共通鍵復号処理部３２４と、が含まれる。
【００５８】
暗号情報要求部３２１は、送信側情報処理装置２００から送信された暗号情報（Ｅｎｃ情報）の取得を暗号化処理装置（子）１００に要求する。
【００５９】
鍵情報抽出処理部３２２は、受信した暗号情報（Ｅｎｃ情報）のうち、所定の部位を読み出すことで、暗号化されたセッション鍵の情報を抽出する。
【００６０】
鍵情報復号処理部３２３は、抽出したセッション鍵の情報に対して、共通鍵記憶部３３１に格納された受信側情報処理装置３００に固有の共通鍵を用いて、共通鍵暗号方式による復号処理を行い、暗号メッセージを復号するのに用いるセッション鍵を得る。
【００６１】
共通鍵復号処理部３２４は、受信した暗号メッセージを読み出し、鍵情報復号処理部３２３により得たセッション鍵を用いて、復号させる。
【００６２】
通信部３４０は、インターネットあるいはＬＡＮ等のネットワーク５０を介して、他の装置との間の通信を行う。
【００６３】
なお、受信側情報処理装置３００が送信側情報処理装置２００と同様の制御部をさらに備えるようにしてもよいし、送信側情報処理装置２００が受信側情報処理装置３００と同様の制御部を備えるようにしてもよい。すなわち、暗号情報を送信する役割を担う側が送信側情報処理装置２００であり、暗号情報を受信する役割を担う側が受信側情報処理装置３００であるといえる。
【００６４】
図８は、暗号化処理装置（子）１００のハードウェア構成を示す図である。暗号化処理装置（子）１００は、典型的にはサーバー装置であるが、これに限らず、パーソナルコンピューター装置、スマートフォン、携帯電話端末あるいはタブレット、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の電子情報端末であってもよい。また、暗号化処理装置（子）１００は、ネットワーク５０に対して直接アクセスするのではなく、携帯電話キャリア等の回線交換による通信網、あるいはデータ伝送用の無線通信網等を介してアクセスするものであってもよい。
【００６５】
暗号化処理装置（子）１００は、ＣＰＵ等の演算装置１１１と、メモリ等の主記憶装置１１２と、ハードディスク（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の外部記憶装置１１３と、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）やＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等の可搬記憶媒体１１４Ｄに対して電子データの読み書きを行う読取装置１１４と、キーボードやマウス等の入力装置１１５と、ディスプレイやプリンタ等の出力装置１１６と、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等の通信装置１１７と、これらをつなぐバスと、を含んで構成される。
【００６６】
通信装置１１７は、ネットワークケーブルを介して有線通信を行う有線の通信装置、又はアンテナを介して無線通信を行う無線通信装置である。通信装置１１７は、ネットワーク５０等のネットワークに接続される他の装置との通信を行う。
【００６７】
演算装置１１１は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。主記憶装置１１２は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などのメモリ装置である。外部記憶装置１１３は、デジタル情報を記憶可能な、いわゆるハードディスクやＳＳＤ、あるいはフラッシュメモリなどの不揮発性記憶装置である。
【００６８】
入力装置１１５は、キーボードやマウス等のポインティングデバイス、あるいは音声入力装置であるマイク等を含む入力情報を受け付ける装置である。
【００６９】
出力装置１１６は、ディスプレイやプリンタ、あるいは音声出力装置であるスピーカ等を含む出力情報を生成する装置である。
【００７０】
上記した制御部１２０に設けられる暗号情報入力処理部１２１と、暗号鍵付替部１２２と、保存時付替鍵特定部１２３と、読出時付替鍵特定部１２４と、暗号情報出力処理部１２５と、親転送部１２６と、ロードバランス処理部１２７と、子変換鍵生成部１２８と、変換鍵生成部１２９とは、演算装置１１１に処理を行わせるプログラムによって実現される。このプログラムは、主記憶装置１１２、外部記憶装置１１３または可搬記憶媒体１１４Ｄ内に記憶され、実行にあたって主記憶装置１１２上にロードされ、演算装置１１１により実行される。
【００７１】
また、記憶部１３０は、主記憶装置１１２及び外部記憶装置１１３により実現される。
【００７２】
また、通信部１４０は、通信装置１１７により実現される。
【００７３】
また、図示しないが、送信側情報処理装置２００および受信側情報処理装置３００は、典型的にはパーソナルコンピューター装置であるが、これに限らず、サーバー装置、スマートフォン、携帯電話端末あるいはタブレット、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の電子情報端末であってもよい。また、送信側情報処理装置２００および受信側情報処理装置３００は、ネットワーク５０に対して直接アクセスするのではなく、携帯電話キャリア等の回線交換による通信網、あるいはデータ伝送用の無線通信網等を介してアクセスするものであってもよい。
【００７４】
送信側情報処理装置２００および受信側情報処理装置３００についても、暗号化処理装置（子）１００と略同様のハードウェア構成を備える。すなわち、ＣＰＵ等の演算装置１１１と、メモリ等の主記憶装置１１２と、ハードディスクやＳＳＤ等の外部記憶装置１１３と、ＮＩＣ等の通信装置１１７と、これらをつなぐバスと、を含んで構成される。なお、送信側情報処理装置２００および受信側情報処理装置３００は、可搬記憶媒体１１４Ｄに対して電子データの読み書きを行う読取装置１１４と、入力装置１１５と、出力装置１１６と、を備えるものであってもよい。
【００７５】
上記した制御部２２０および制御部３２０に設けられる乱数生成部２２１と、共通鍵暗号処理部２２２と、鍵情報暗号処理部２２３と、マージ処理部２２４と、暗号情報出力部２２５と、暗号情報要求部３２１と、鍵情報抽出処理部３２２と、鍵情報復号処理部３２３と、共通鍵復号処理部３２４とは、それぞれ演算装置１１１に処理を行わせるプログラムによって実現される。このプログラムは、主記憶装置１１２または外部記憶装置１１３内に記憶され、実行にあたって主記憶装置１１２上にロードされ、演算装置１１１により実行される。
【００７６】
また、記憶部１３０は、主記憶装置１１２及び外部記憶装置１１３により実現される。また、通信部１４０は、通信装置１１７により実現される。
【００７７】
以上が、本実施形態における暗号化処理装置（子）１００、送信側情報処理装置２００および受信側情報処理装置３００のハードウェア構成例である。しかし、これに限らず、その他のハードウェアを用いて構成されるものであってもよい。
【００７８】
［動作の説明］次に、本実施形態における階層型暗号化処理システム１の動作を説明する。
【００７９】
図９は、本実施形態における送信側情報処理装置２００が実施する暗号化処理の処理フロー図である。
【００８０】
乱数生成部２２１は、セッション鍵として使用する乱数を生成する。具体的には、乱数生成部２２１は、所定の長さの乱数あるいは擬似乱数を生成する。
【００８１】
そして、共通鍵暗号処理部２２２は、暗号対象データに対して、セッション鍵を用いた共通鍵暗号方式による暗号化を実施し、暗号メッセージを得る。
【００８２】
これと並行して、鍵情報暗号処理部２２３は、セッション鍵を共通鍵記憶部２３１に格納されている端末鍵である共通鍵を用いて、共通鍵暗号方式により暗号化する。
【００８３】
そして、マージ処理部２２４は、共通鍵暗号処理部２２２が暗号化した暗号メッセージと、鍵情報暗号処理部２２３が暗号化した鍵情報と、を併合させる。
【００８４】
そして、暗号情報出力部２２５は、宛先となる受信先を指定して、併合された情報を暗号化処理装置１００へ送信する。
【００８５】
以上が、暗号化処理の処理フローである。暗号化処理によれば、暗号化対象のデータを暗号化した情報と、暗号化に用いた一時的なセッション鍵を暗号化した情報と、を併合させた暗号情報を暗号化処理装置（子）１００へ送信することができる。
【００８６】
図１０は、暗号化処理のデータ図を示す図である。暗号化対象であるデータＭ（平文）２５１は、セッション鍵ｋｅｙ  Ｓ２５２を用いて共通鍵暗号方式により暗号化されることで暗号化データＥｎｃ（ＫｅｙＳ，Ｍ）２５１´へと加工される。また、セッション鍵ｋｅｙ  Ｓ２５２は、端末鍵ｋｅｙ  Ａ２５３を用いて再暗号可能な共通鍵暗号化により、ｋｅｙ  Ａで暗号化した鍵ＥｎｃＲ（ｋｅｙ  Ａ，ｋｅｙ  Ｓ）２５４へと加工され、暗号化データＥｎｃ（Ｋｅｙ  Ｓ，Ｍ）２５１´と併合される。
【００８７】
図１１は、本実施形態における暗号化処理装置（子）１００が実施する保存時鍵付替処理の処理フロー図である。
【００８８】
暗号情報入力処理部１２１は、暗号化された鍵情報と、暗号メッセージと、が併合された情報と、送信元Ａを特定する情報と、を受け付ける。保存時付替鍵特定部１２３は、保存時付替鍵情報記憶部１３１を参照し、送信元Ａを送信元とする暗号化処理装置（子）１００の固有鍵への変換鍵である変換鍵１３１ｂを特定し、読み出す。
【００８９】
そして、暗号鍵付替部１２２は、暗号情報入力処理部１２１が受け付けた暗号化された鍵情報と、暗号メッセージと、が併合された情報の暗号化された鍵情報部分に対して、送信元Ａの固有鍵（端末鍵）から暗号化処理装置（子）１００の固有鍵への変換鍵を用いて暗号鍵を付け替える。そして、暗号鍵付替部１２２は、暗号文記憶部１３３へ、暗号化処理装置（子）１００の固有鍵で再暗号化された鍵情報と、暗号メッセージと、が併合された情報を格納する。この際、あて先がグループ内でない（他のグループである）場合には、親転送部１２６は、当該情報を暗号化処理装置（親）１０へ転送する。
【００９０】
以上が、保存時鍵付替処理の処理フローである。保存時鍵付替処理によれば、暗号化対象のデータを暗号化した情報と、暗号化に用いた一時的なセッション鍵を暗号化した情報と、を併合させた暗号情報を受け付けて、暗号化処理装置１００に固有の暗号鍵による暗号化が施された状態で暗号メッセージを保存あるいは上位の暗号化処理装置へ転送することが可能となる。その処理においても、暗号鍵の付替えを行うものであるため、暗号を解除することはない。したがって、暗号化処理装置１００内においても、セッション鍵や平文が暴露することは一瞬もないため、安全といえる。また、その場合においても、送信元が使用する送信元の固有の共有鍵そのものおよび自身の固有鍵そのものを暗号化処理装置１００が保有する必要がない。
【００９１】
図１２は、本実施形態における暗号化処理装置１００が実施する読出時鍵付替処理の処理フロー図である。
【００９２】
読出時付替鍵特定部１２４は、読出時付替鍵情報記憶部１３２を参照し、暗号化処理装置（子）１００の固有鍵から受信先Ｂの固有鍵（端末鍵）への変換鍵１３１ｂを特定し、読み出す。
【００９３】
そして、暗号鍵付替部１２２は、暗号文記憶部１３３から読み出した暗号化された鍵情報と、暗号文と、が併合された情報の暗号化された鍵情報部分に対して、暗号化処理装置（子）１００の固有鍵から受信先Ｂの固有鍵（端末鍵）への変換鍵を用いて暗号鍵を付け替える。そして、暗号鍵付替部１２２は、暗号情報出力処理部１２５へ、受信先Ｂの固有鍵（端末鍵）で再暗号化された鍵情報と、暗号文と、が併合された情報を送信するよう指示する。
【００９４】
以上が、読出時鍵付替処理の処理フローである。読出時鍵付替処理によれば、暗号化対象のデータを暗号化した情報と、暗号化に用いた一時的なセッション鍵を暗号化処理装置（子）１００の固有の暗号鍵で暗号化した情報と、を併合させた暗号情報を読み出して、送信先となる受信側情報処理装置３００に固有の暗号鍵による暗号化が施された状態に加工して暗号情報を出力することが可能となる。その処理においても、暗号鍵の付替えを行うものであるため、暗号を解除することはない。したがって、暗号化処理装置（子）１００内においても、セッション鍵や平文が暴露することは一瞬もないため、安全といえる。
【００９５】
また、その場合においても、送信元が使用する送信元の固有の共有鍵そのものおよび暗号化処理装置（子）１００の固有鍵そのものを暗号化処理装置（子）１００が保有する必要がない。さらに、受信先の固有の共有鍵そのものについても、暗号化処理装置（子）１００および送信元となる送信側情報処理装置２００が保有する必要がない。
【００９６】
図１３は、鍵付替処理のデータ図を示す図である。暗号化された暗号化データＭ１５２は、セッション鍵ｋｅｙ  Ｓを用いて共通鍵暗号方式により暗号化されている。また、暗号化データＭ１５２を暗号化した際に用いたセッション鍵（ｋｅｙ  Ｓ）は、送信側情報処理装置２００に固有の暗号鍵（ｋｅｙ  Ａ）により共通鍵暗号方式にて暗号化され、ｋｅｙ  Ａで暗号化したセッション鍵１５１として暗号化データＭ１５２に併合されている。この暗号情報に対して、送信側情報処理装置２００に固有の暗号鍵であるｋｅｙ  Ａから暗号化処理装置（子）１００に固有の暗号鍵であるｋｅｙ  Ｘへ暗号鍵を付け替える変換鍵１５３を用いて再暗号がなされ、ｋｅｙ  Ｘで暗号化したセッション鍵１５４として暗号化データＭ１５２に併合され、暗号化処理装置（子）１００のストレージあるいはメモリ上に格納される。
【００９７】
また、ストレージあるいはメモリ上に格納された当該再暗号された情報を元に、暗号鍵ｋｅｙ  Ｘから受信先に応じた暗号鍵（ｋｅｙ  Ｂ）への変換鍵１５５を用いて、受信先に応じて再暗号化して鍵の付け替えがなされる。これにより、受信先に応じた暗号鍵で暗号化されたセッション鍵１５６と、セッション鍵で暗号化された暗号化データＭ１５２と、が併合された状態に加工され、受信側情報処理装置３００へ暗号情報として送信される。
【００９８】
図１４は、本実施形態における受信側情報処理装置３００が実施する復号化処理の処理フロー図である。
【００９９】
暗号情報要求部３２１は、暗号化した鍵情報と、暗号メッセージと、を暗号化処理装置（子）１００に要求し、受信側情報処理装置３００に固有の暗号鍵で暗号化されたセッション鍵情報と、セッション鍵により暗号化された暗号メッセージと、を受け付ける。
【０１００】
そして、鍵情報抽出処理部３２２は、暗号化された鍵情報を抽出し、鍵情報復号処理部３２３へ受け渡す。
【０１０１】
鍵情報復号処理部３２３は、共通鍵記憶部３３１から受信側情報処理装置３００に格納されている固有の暗号鍵を取得し、暗号化された鍵情報に対して復号処理を行い、セッション鍵を得る。
【０１０２】
共通鍵復号処理部３２４は、鍵情報抽出処理部３２２から暗号メッセージの情報を受け付け、鍵情報復号処理部３２３からセッション鍵情報を取得して暗号メッセージの復号を共通鍵暗号方式により行う。そして、共通鍵復号処理部３２４は、復号された元データ（例えば、平文）の情報を出力する。
【０１０３】
以上が、復号化処理の処理フローである。復号化処理によれば、暗号化されたデータと、暗号化に用いた一時的なセッション鍵を暗号化した情報と、が併合された暗号情報を暗号化処理装置（子）１００から受信し、受信側情報処理装置３００に固有の暗号鍵を用いて復号することができる。
【０１０４】
図１５は、復号化処理のデータ図を示す図である。セッション鍵により暗号化された暗号化データＥｎｃ（ｋｅｙ  Ｓ，Ｍ）３５２は、受信側情報処理装置３００の端末鍵であるｋｅｙ  Ｂで暗号化されたセッション鍵ＥｎｃＲ（ｋｅｙ  Ｂ，ｋｅｙ  Ｓ）３５１と併合されている。受信側情報処理装置３００の端末鍵であるｋｅｙ  Ｂで暗号化されたセッション鍵ＥｎｃＲ（ｋｅｙ  Ｂ，ｋｅｙ  Ｓ）３５１は、受信側情報処理装置３００の端末鍵であるｋｅｙ  Ｂ３５３により再暗号可能な共通鍵復号方式により復号され、セッション鍵ｋｅｙ  Ｓ３５４へと加工される。そして、暗号化データＥｎｃ（ｋｅｙ  Ｓ，Ｍ）３５２は、セッション鍵ｋｅｙ  Ｓ３５４を用いた共通鍵復号方式により復号され、データＭ（平文）３５２´に加工される。このデータＭが、出力される目的のデータである。
【０１０５】
ここで、再暗号可能な共通鍵暗号化処理について説明を行う。再暗号可能な共通鍵暗号化処理に用いる暗号化方式としては、以下の条件を成立させるものであればよい。なお、「ｋｅｙ  Ａ」は、情報処理装置「Ａ」に固有の秘密鍵を表すものとする。また、暗号化対象のメッセージを「Ｍ」と表すものとし、「Ｅｎｃ（ｋｅｙ，Ｍ）」を、秘密鍵「ｋｅｙ」によるメッセージ「Ｍ」の暗号化処理を表すものとする。また、以下においては、所定の二項演算を、直積記号により表すものとするが、適用される二項演算は、直積に限られるものではない。また、下式（３）、下式（４）、および下式（６）に記載のある「１」は、単位元を意味するものとする。
【０１０６】
【数１】
2019129490.tif 000003
【０１０７】
【数２】
2019129490.tif 000004
【０１０８】
【数３】
2019129490.tif 000005
【０１０９】
【数４】
2019129490.tif 000006
【０１１０】
【数５】
2019129490.tif 000007
【０１１１】
【数６】
2019129490.tif 000008
【０１１２】
上記した式（１）〜式（６）を成立させる、再暗号可能な共通鍵暗号化処理に用いる暗号化方式の例としては、端的には、二項演算の内容を、排他的論理和とすることが考えられる。
【０１１３】
このようにすると、保存時変換鍵としては、送信元を特定する情報に対応付けられた暗号鍵の所定の二項演算に関する逆元となる情報と、付け替える所定の保存用暗号鍵と、についての所定の二項演算による解を用いればよいといえる。
【０１１４】
同様に、読出時変換鍵としては、所定の保存用暗号鍵の所定の二項演算に関する逆元となる情報と、受信先を特定する情報に対応付けられた暗号鍵と、についての所定の二項演算による解を用いればよい。
【０１１５】
図１６は、暗号化処理装置の親子間の変換鍵生成処理の流れの例を示す図である。変換鍵生成処理は、既存の暗号化処理装置（子）１００に対し、新たに下位に暗号化処理装置（孫）等が追加された場合等に、追加された暗号化処理装置（孫）において開始される。
【０１１６】
まず、変換鍵生成部１２９は、鍵長と一致する長さの擬似乱数を生成する（ステップＳ００１）。
【０１１７】
そして、変換鍵生成部１２９は、端末鍵ごとに擬似乱数との間のダミー再暗号鍵を生成する（ステップＳ００２）。具体的には、変換鍵生成部１２９は、端末鍵として、管轄下の情報処理装置の端末鍵（Ｋｅｙ  Ｐ）と擬似乱数Ｎとの排他的論理和を生成する。
【０１１８】
そして、変換鍵生成部１２９は、上位の暗号化処理装置（子）１００へダミー再暗号鍵を送信する（ステップＳ００３）。
【０１１９】
そして、暗号化処理装置（子）１００の子変換鍵生成部１２８は、暗号化処理装置（孫）からダミー再暗号鍵を受信する（ステップＳ００４）。
【０１２０】
そして、子変換鍵生成部１２８は、暗号化処理装置（孫）の固有鍵（Ｋｅｙ  Ｚ）との修正再暗号鍵を生成する（ステップＳ００５）。具体的には、子変換鍵生成部１２８は、ダミー再暗号鍵と、暗号化処理装置（孫）の固有鍵（Ｋｅｙ  Ｚ）と、の排他的論理和を生成する。
【０１２１】
そして、子変換鍵生成部１２８は、暗号化処理装置（孫）へ修正再暗号鍵を送信する（ステップＳ００６）。
【０１２２】
変換鍵生成部１２９は、暗号化処理装置（子）１００から修正再暗号鍵を受信する（ステップＳ００７）。
【０１２３】
そして、変換鍵生成部１２９は、修正再暗号鍵と擬似乱数との間の再暗号鍵を生成する（ステップＳ００８）。具体的には、変換鍵生成部１２９は、修正再暗号鍵と、ステップＳ００１で生成した擬似乱数Ｎと、の排他的論理和を生成する。
【０１２４】
そして、変換鍵生成部１２９は、再暗号鍵を保存時付替鍵情報記憶部１３１に格納する（ステップＳ００９）。
【０１２５】
以上が、変換鍵生成処理の流れである。この変換鍵生成処理によれば、新たに追加された下位の暗号化処理装置が、自身の固有鍵を保持・使用することなく管轄下の装置との間の変換鍵を生成することができる。すなわち、追加された暗号化処理装置の上位の暗号化処理装置に、新たに追加された下位の暗号化処理装置の固有鍵を下位固有鍵記憶部１３４に予め保持させることによりこれを実現することができる。
【０１２６】
図１７は、暗号化処理装置の同位間のロードバランス処理の流れの例を示す図である。ロードバランス処理は、ロードバランスのマスターとなる装置が下位の暗号化処理装置から親委譲要求を受け付けると、開始される。
【０１２７】
まず、ロードバランス処理部１２７は、親委譲要求とともに、再暗号処理を受け付ける（ステップＳ１０１）。具体的には、ロードバランス処理部１２７は、下位の暗号化処理装置から、管轄下に無いあて先の再暗号処理対象のＥｎｃデータを受け付ける。
【０１２８】
そして、ロードバランス処理部１２７は、管轄するグループ数を、予め定められた同位装置となるスレーブの暗号化処理装置すべてに問い合わせる（ステップＳ１０２）。なお、暗号化処理装置のマスター／スレーブは、マスター装置の負荷分散のための多重化の仕組みであり、スレーブをマスターに登録し、マスターをスレーブに登録する等の一般的な所定の設定により実現される。
【０１２９】
スレーブの各暗号化処理装置のロードバランス処理部１２７は、管轄するグループ数（すなわち、スレーブの各暗号化処理装置の直接下位の暗号化処理装置のうち、マスターの暗号化処理装置の数）を、自身のマスターの暗号化処理装置に回答する（ステップＳ１０３）。
【０１３０】
そして、マスターの暗号化処理装置のロードバランス処理部１２７は、管轄するグループ数の回答を受け付けると、管轄するグループ数をスレーブの暗号化処理装置ごとの性能に応じて重み付けして、グループ単位で同位装置に割り振る（ステップＳ１０４）。具体的には、マスターの暗号化処理装置のロードバランス処理部１２７は、スレーブの暗号化処理装置間の性能比（例えば、応答時間の比）に応じて、管轄するグループ数の比を重み付けにより決定する。例えば、２台のスレーブの暗号化処理装置の再暗号化の応答時間がそれぞれ、０．１秒、０．２秒であった場合には、性能比が２：１であるとして、管轄するグループ数について性能比に応じた２：１の重み付けを行って割り振る。例えば、既に一台目のスレーブ暗号化処理装置は８グループを管轄しており、二台目のスレーブ暗号化処理装置は７グループを管轄している場合には、一台目のスレーブ暗号化処理装置に新たな管轄グループを割り振る。
【０１３１】
なお、管轄グループの割り振りは、新たな管轄グループを一単位としていずれかの暗号化処理装置に割り振るものに限られず、当該グループの変換鍵の単位で割り振るものであってもよいし、管轄下の情報処理装置を特定して割り当て、該情報処理装置にかかる変換を担うように割り当てるものであってもよい。いずれであっても、保存時付替鍵情報記憶部１３１と、読出時付替鍵情報記憶部１３２と、に格納された変換鍵を割り当てに応じて分割して複製し、担当させる暗号化処理装置に受け渡す。
【０１３２】
そして、スレーブの各暗号化処理装置のロードバランス処理部１２７は、分割された変換鍵をマスターの暗号化処理装置から受け取り、記憶部１３０に格納する（ステップＳ１０５）。
【０１３３】
そして、スレーブの暗号化処理装置のロードバランス処理部１２７は、ステップＳ１０１にて受け付けられた再暗号化処理を実施し、あて先のグループを管轄する暗号化処理装置（子）に結果を送信する（ステップＳ１０６）。
【０１３４】
そして、スレーブの暗号化処理装置のロードバランス処理部１２７は、委譲を要求した子暗号化処理装置へ親登録を指示する（ステップＳ１０７）。具体的には、委譲を要求した子暗号化処理装置に対して、上位の暗号化処理装置として当該スレーブの暗号化処理装置を登録するよう指示する。これにより、以降の当該子暗号化処理装置からの親委譲要求は、直接的に当該スレーブの暗号化処理装置に受け付けられることとなる。
【０１３５】
以上が、暗号化処理装置の同位間のロードバランス処理の流れである。ロードバランス処理によれば、暗号化処理装置の処理負荷を分散して応答時間の増大やシステムダウンを抑えつつ、大量の再暗号化処理を効率よく処理できる。また、同位装置間での鍵の分割を負荷に応じて動的に変更できる。
【０１３６】
以上、本発明に係る第一の実施形態を適用した階層型暗号化処理システム１について、図面を用いて説明した。第一の実施形態によれば、十分なセキュリティを実現しつつ、鍵管理の負荷をより抑える暗号化処理を実現できる。
【０１３７】
より具体的には、送信側情報処理装置および受信側情報処理装置は、自装置の暗号鍵を記憶するだけでよく、他の装置の暗号鍵を保持する必要はない。また、送信側情報処理装置と受信側情報処理装置の組み合わせに応じて、原理的には多対多のオーダーで鍵の変換の組み合わせが膨大に増加するが、これを暗号化処理装置に固有の暗号鍵への変換を経ることで組み合わせの増加量を抑えることができる。また、暗号化処理装置においては下位の暗号化処理装置の暗号鍵は保持するが自身の暗号鍵を保持しないため、データ漏えい時のリスクを低く抑えることができる。
【０１３８】
また、暗号化処理には共通鍵暗号方式を利用するため、公開鍵暗号方式よりも演算量を減らすことが可能となり、処理時間やリソースの制約の問題から従来は搭載できなかった組み込み機器や各種センサー装置等に搭載してセキュアなセンサーネットワークを構築することが可能となる。例えば、工場内部の大量の製造装置等に設けられたセンサー等を用いた制御をＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）により実現する場合には、個々のセンサーからの情報はエンドーエンド間で暗号化することが望ましく、経路中での復号化は望ましくない。本実施形態に係る暗号化の仕組みでは、鍵の付け替えにより個別のセンサー等があて先の暗号鍵を知る必要はなく、経路中での暗号化の解除もなく送達先へ秘匿状態のまま転送できるため、これらの要求を高いレベルで実現できる。
【０１３９】
また、暗号化処理装置の負荷分散が可能となることにより、個々の暗号化処理装置が管轄するクライアント数を低く抑えることで変換鍵のバリエーションの増加を抑えることができ、個別の情報処理装置への鍵の再配布も必要ない。
【０１４０】
なお、本実施形態における暗号化処理装置の階層の拡張に関して、既存の暗号化処理装置の上位に暗号化処理装置を追加する場合、例えば企業システム統合等の新たなビジネス上の理由によりデータ共有の範囲が拡大する場合には、既存の暗号化処理装置間をつなぐ新たな上位の暗号化処理装置を設置する対応が考えられる。この場合には、既存の暗号化処理装置においては新たな上位の暗号化処理装置を親暗号化処理装置として設定し、新たな上位の暗号化処理装置では既存の暗号化処理装置間の鍵の付け替えに用いる再暗号鍵を保持させるようにすることで、容易に実現できる。
【０１４１】
また、既存の暗号化処理装置の下位に暗号化処理装置を追加する場合、例えば吸収合併等の新たなビジネス上の理由によりデータの転送装置の範囲を新たに追加する場合には、既存の暗号化処理装置の下位に新たな暗号化処理装置を設置する対応が考えられる。既存の暗号化処理装置においては新たな下位の暗号化処理装置を管轄下の下位暗号化処理装置として管轄対象として設定し、新たな暗号化処理装置では既存の上位の暗号化処理装置との間で変換鍵生成処理を行い、再暗号鍵を保持させるようにすることで、容易に実現できる。
【０１４２】
本発明は、上記の第一の実施形態に制限されない。上記の第一の実施形態は、本発明の技術的思想の範囲内で様々な変形が可能である。例えば、暗号化処理装置１００は暗号化した情報をストレージに保存するものではなく、所定の他のサーバー装置等に送信する中継装置の役割を有するものであってもよい。
【０１４３】
なお、本発明は上記した実施形態に限定されるものではなく、さらなる様々な変形例が含まれる。例えば、上記した実施形態では本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１４４】
また例えば、上記した実施形態では、暗号化処理装置（子）１００は、自身の管轄するグループに所属する情報処理装置同士が情報を送受信する場合には、暗号化処理装置（子）１００自身の固有鍵に付け替えを行わず、送信側の情報処理装置の端末鍵から受信側の情報処理装置の端末鍵に直接付け替えて受信側の情報処理装置へ転送するようにしてもよい。このようにすることで、冗長となる鍵の付け替え処理を省略して計算量を減らし、暗号化処理装置（子）１００の処理負荷をさらに減らし、応答性能を高めることが可能となる。
【０１４５】
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【０１４６】
また、上記した実施形態の技術的要素は、単独で適用されてもよいし、プログラム部品とハードウェア部品のような複数の部分に分けられて適用されるようにしてもよい。
【０１４７】
以上、本発明について、実施形態を中心に説明した。
【符号の説明】
【０１４８】
１・・・階層型暗号化処理システム、５０・・・ネットワーク、１００、１００´・・・暗号化処理装置（子）、１２０・・・制御部、１２１・・・暗号情報入力処理部、１２２・・・暗号鍵付替部、１２３・・・保存時付替鍵特定部、１２４・・・読出時付替鍵特定部、１２５・・・暗号情報出力処理部、１２６・・・親転送部、１２７・・・ロードバランス処理部、１２８・・・子変換鍵生成部、１２９・・・変換鍵生成部、１３０・・・記憶部、１３１・・・保存時付替鍵情報記憶部、１３２・・・読出時付替鍵情報記憶部、１３３・・・暗号文記憶部、１３４・・・下位固有鍵記憶部、１４０・・・通信部、２００・・・送信側情報処理装置、２２０・・・制御部、２２１・・・乱数生成部、２２２・・・共通鍵暗号処理部、２２３・・・鍵情報暗号処理部、２２４・・・マージ処理部、２２５・・・暗号情報出力部、２３０・・・記憶部、２３１・・・共通鍵記憶部、２４０・・・通信部、３００・・・受信側情報処理装置、３２０・・・制御部、３２１・・・暗号情報要求部、３２２・・・鍵情報抽出処理部、３２３・・・鍵情報復号処理部、３２４・・・共通鍵復号処理部、３３０・・・記憶部、３３１・・・共通鍵記憶部、３４０・・・通信部
【図１】
2019129490.tif 000009
【図２】
2019129490.tif 000010
【図３】
2019129490.tif 000011
【図４】
2019129490.tif 000012
【図５】
2019129490.tif 000013
【図６】
2019129490.tif 000014
【図７】
2019129490.tif 000015
【図８】
2019129490.tif 000016
【図９】
2019129490.tif 000017
【図１０】
2019129490.tif 000018
【図１１】
2019129490.tif 000019
【図１２】
2019129490.tif 000020
【図１３】
2019129490.tif 000021
【図１４】
2019129490.tif 000022
【図１５】
2019129490.tif 000023
【図１６】
2019129490.tif 000024
【図１７】
2019129490.tif 000025