説明

鍵管理機器及び鍵利用システム及び鍵運用システム及び鍵管理方法及び鍵管理プログラム

【課題】従来の分割鍵保有機器では、鍵利用システムを構成する鍵利用機器の機器数がK機未満のシステムに利用できない。
【解決手段】鍵管理機器10は、グループ秘密鍵32を機器公開鍵a〜nにより暗号化して、鍵利用機器a〜nに対応する暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成部81と、各暗号化グループ秘密鍵を任意の割合pにより2分割して鍵利用機器a〜nに対応する暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを生成する鍵分割部82と、各暗号化グループ秘密鍵Bを順次入力して、入力した暗号化グループ秘密鍵Bを、暗号化グループ秘密鍵Bの暗号化に利用した機器公開鍵の鍵利用機器を除く他の鍵利用機器の機器公開鍵で暗号化して、鍵利用機器a〜nに対応する二重暗号化グループ秘密鍵Bを生成する二重暗号化グループ秘密鍵生成部83と、対応する鍵利用機器に二重暗号化グループ秘密鍵Bを送信する送信部84とを備えた。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、同一のグループ公開鍵とグループ秘密鍵とを利用する複数の鍵利用機器に対して、複数の鍵利用機器の各鍵利用機器の機器公開鍵を用いてグループ秘密鍵を暗号化して、暗号化したグループ秘密鍵と、グループ公開鍵とを、各鍵利用機器に送信する鍵管理機器と鍵運用システムと鍵管理方法と鍵管理プログラムとに関する。また、鍵管理機器から送信された暗号化されたグループ秘密鍵を複数の鍵利用機器により復号してグループ秘密鍵を生成する鍵利用システムに関する。
【背景技術】
【0002】
暗号化と復号に別個の鍵を用い、暗号化のための鍵を公開できるようにした公開鍵暗号方式において、グループの概念を導入し、グループ内での情報の共有化およびグループ外に対する機密性を保持する方式として、グループ秘密鍵とグループ公開鍵とを用いるグループ公開鍵暗号方式が考えられている。グループ公開鍵暗号方式では、グループ秘密鍵が漏洩すると暗号化された機密情報がグループ外で復号されてしまうため、グループ秘密鍵が漏洩しない、あるいは、グループ秘密鍵が漏洩しても機密情報の漏洩を防止するための技術が検討されている。
従来のグループ秘密鍵漏防止技術では、グループ公開鍵暗号方式の公開鍵と秘密鍵との鍵ペアのうち秘密鍵をN個(N≧2の整数)に分割し、それぞれの分割鍵をN人の分割鍵保有者に割り当てた際の分割鍵保有者の数Nに1を加えた数の変数を含む複数の一次式で、かつ1つの変数の係数は常に0でなく、残りN個の変数における係数のうちK個が0でない複数の一次式を予め記憶した記憶装置を備え、前記N人のうちK(K<N)人に割り当てた分割鍵を用いて前記公開鍵で暗号化されたデータをコンピュータにより復号するデータ復号方式であって、前記秘密鍵を分割する際に、前記記憶装置に記憶された一次式を読み出し、該一次式によって前記秘密鍵をN個に分割し、その分割されたN個の分割鍵のうちK個を用いて前記公開鍵で暗号化したデータを復号していた(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−174746号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
複数の機器(複数の鍵利用機器)からなる情報システム(鍵利用システム)において、該情報システムを構成する機器の数が該情報システムの納入先顧客の要求仕様によって異なる場合がある。例えば、ある顧客では情報システムが月間100,000の物件に対して物件当たり10,000の処理をおこない、別の顧客では情報システムが月間100の物件に対して物件当たり50の処理をおこなうような場合には、同一シリーズの情報システムであっても、処理負荷に応じて前者には後者より多くの機器を組み込む必要がある。
このような情報システムにおいて、情報システムを動作させるための秘密情報が開発元にあり、開発元は秘密情報を顧客に開示したくないという要求がある。
例えば、情報システムの構成機器(複数の鍵利用機器)は一般市場で入手可能なものであるが、構成機器を組み合わせて情報システムとして動作させる際に、構成機器で実行される実行プログラムが情報システムを動作させるための秘密情報に相当する。該秘密情報が漏洩すると、一般市場で構成機器を入手し、秘密情報を復号して得た実行プログラムを実行させることにより安価に情報システムの複製を入手できようになるため、情報システムの開発元の売上げが減少してしまう。
このようなことを防ぐためには、情報システムの開発元が顧客に納入した構成機器でのみ秘密情報を使用可能にする仕組みが有効である。
そのための手段として、情報システムの開発元でグループ公開鍵とグループ秘密鍵とからなる共通のグループ鍵を生成して情報システムの構成機器(複数の鍵利用機器)に予め記憶させ、該グループ公開鍵で秘密情報を暗号化して構成機器(複数の鍵利用機器)に格納し、実行時には暗号化された秘密情報を該グループ秘密鍵で復号して使用する方式が考えられる。このようなグループ公開鍵暗号方式では、グループ秘密鍵が構成機器(複数の鍵利用機器)から外部に漏洩しないよう防止対策をおこなう必要がある。
【0005】
従来のグループ秘密鍵漏防止技術は、K人未満の分割鍵保有者では秘密鍵を得られなくすることにより少数(<K)の分割鍵が漏洩しても秘密鍵は漏洩しないという特徴を持つ。従来のグループ秘密鍵漏防止技術を前記のような情報システムに適用した場合、K機未満の分割鍵保有機器ではグループ秘密鍵を得られなくなるため、情報システムがK機未満の分割鍵保有機器で構成される場合には、全ての分割鍵保有機器が揃っていてもグループ秘密鍵を得ることができなくなる。
このため、情報システム出荷時に該情報システムを構成する機器数に応じてKを適切な値に設定して分割鍵を生成して配布するか、あるいは、Kを十分に小さな値にして予め配布しておく必要がある。しかし、前者では情報システム出荷時の処理が煩雑になるという問題点があり、また、後者では、例えばKを2にした場合には2つの分割鍵が漏洩してしまうだけでグループ秘密鍵が漏洩してしまうという問題点がある。
【0006】
この発明は上記のような問題点を解決するためになされたもので、共通のグループ鍵(グループ公開鍵とグループ秘密鍵)を利用する情報システム(鍵利用システム)がK機未満の分割鍵保有機器(鍵利用機器)で構成される場合、全ての分割鍵保有機器(鍵利用機器)が揃っていなければグループ秘密鍵を得ることができないようにグループ秘密鍵を暗号化して、暗号化したグループ秘密鍵をK機未満の分割鍵保有機器(鍵利用機器)へ送信して記憶させて、グループ秘密鍵漏防止対策を施す鍵管理機器、鍵運用システム、鍵管理方法、鍵管理プログラムを提供することを目的とする。
また、共通のグループ鍵(グループ公開鍵とグループ秘密鍵)を利用する情報システム(鍵利用システム)がK機未満の分割鍵保有機器(鍵利用機器)で構成される場合、すべての分割鍵保有機器(鍵利用機器)が揃っている場合にのみ、グループ秘密鍵を復号できる鍵利用システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
この発明に係る共通のグループ公開鍵を利用する複数の鍵利用機器に、上記グループ公開鍵を含むグループ鍵情報を送信する鍵管理機器は、
上記グループ公開鍵とグループ秘密鍵とを記憶するとともに、上記複数の鍵利用機器の各鍵利用機器の鍵利用機器固有の機器公開鍵と鍵利用機器が通信に使用する機器アドレスとを含む機器登録情報を記憶する記憶装置と、
上記記憶装置が記憶したグループ公開鍵と、グループ秘密鍵と、各鍵利用機器の機器登録情報とを処理装置により読み出す読み出し部と、
上記読み出し部が読み出したグループ秘密鍵を、上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置により暗号化して各鍵利用機器の暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成部と、
上記暗号化グループ秘密鍵生成部が生成した各鍵利用機器の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器の暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを処理装置により生成する鍵分割部と、
上記鍵分割部が生成した各鍵利用機器の暗号化グループ秘密鍵Bを順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵Bを、入力した暗号化グループ秘密鍵Bの鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置によりさらに暗号化して、他の鍵利用機器に対応する二重暗号化グループ秘密鍵Bを生成する二重暗号化グループ秘密鍵生成部と、
上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器アドレスに宛てて、上記機器アドレスを使用する鍵利用機器の上記暗号化グループ秘密鍵Aと、上記二重暗号化グループ秘密鍵Bと、上記読み出し部が読み出したグループ公開鍵とを上記グループ鍵情報として通信装置により通信網を介して送信する送信部と
を備えたことを特徴とする。
【発明の効果】
【0008】
この発明に係る鍵管理機器は、上記した暗号化グループ秘密鍵Aと二重暗号化グループ秘密鍵Bとが各鍵利用機器に配布されるために、配布先の鍵利用機器では単独では暗号化グループ秘密鍵Aからも二重暗号化グループ秘密鍵Bからもグループ秘密鍵を得ることが不可能になる効果がある。
また、共通のグループ公開鍵及びグループ秘密鍵とを利用しない第3者の鍵利用機器が該暗号化グループ秘密鍵Aと二重暗号化グループ秘密鍵Bのいずれか、または、両方を得てもグループ秘密鍵を得ることが不可能になる効果がある。
また、二重暗号化グループ秘密鍵Bを他の鍵利用機器に復号依頼する際には、復号依頼先の鍵利用機器以外の鍵利用機器の機器公開鍵により多重に暗号化することにより、情報システム(鍵利用システム)に含まれる全ての鍵利用機器に復号依頼が連鎖しないと二重暗号化グループ秘密鍵Bの復号を行うことができない。これにより、グループ秘密鍵の漏洩を防止すると共に機器構成検証を可能にすることが実現できる効果を奏する。
【図面の簡単な説明】
【0009】
【図1】鍵管理機器と複数の鍵利用機器とを備える鍵運用システムの構成図。
【図2】鍵管理機器10と鍵利用機器11とのシステムの外観の一例を示す図。
【図3】鍵管理機器10、鍵利用機器11のハードウェア資源の一例を示す図。
【図4】鍵管理機器10と各鍵利用機器11との構成を示すブロック図。
【図5】鍵管理機器10が各鍵利用機器11に対して生成したグループ鍵情報35を記憶する鍵利用システム51を示す図。
【図6】図5の各鍵利用機器11が記憶するグループ鍵情報35を生成する鍵管理機器10の処理を示すフローチャート。
【図7】鍵管理機器10が各鍵利用機器11に配布する二重暗号化グループ秘密鍵(1−p)群の生成工程の説明図である。
【図8】鍵管理機器10が生成する二重暗号化グループ秘密鍵(1−p)を説明する図。
【図9】鍵管理機器10が生成する暗号化グループ秘密鍵pと暗号化グループ秘密鍵(1−p)とを説明する図。
【図10】鍵利用機器の構成を示すブロック図。
【図11】鍵利用機器の構成を示すブロック図。
【図12】鍵利用機器11が復号元鍵利用機器として動作するグループ秘密鍵の取得処理の流れを示したフローチャート。
【図13】鍵利用機器11が復号元鍵利用機器として動作するグループ秘密鍵の取得処理の流れを示したフローチャート。
【図14】鍵利用機器11が復号元鍵利用機器として動作するグループ秘密鍵の取得処理の流れを示したフローチャート。
【図15】暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャート。
【図16】暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャート。
【図17】暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャート。
【図18】暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャート。
【図19】暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャート。
【図20】鍵利用機器hの復号依頼情報生成処理を説明する図。
【図21】鍵利用機器iの復号依頼情報生成処理を説明する図。
【図22】鍵利用機器jの復号依頼情報生成処理を説明する図。
【図23】鍵利用機器kの復号依頼情報生成処理を説明する図。
【図24】鍵利用機器jの復号処理を説明する図。
【図25】鍵利用機器iの復号処理を説明する図。
【図26】鍵利用機器hのグループ秘密鍵生成処理を説明する図。
【発明を実施するための形態】
【0010】
実施の形態1.
この実施の形態では、鍵管理機器の一例について説明する。
はじめに、鍵管理機器と複数の鍵利用機器が記憶する情報について説明する。
図1は、鍵管理機器と複数の鍵利用機器とを備える鍵運用システムの構成図である。
図1において、鍵運用システム50は、例えば情報システムを開発する開発元で運用される、或いは、開発元の委託を受けて開発元以外が運用するシステムである。鍵運用システム50は、鍵管理機器10と、複数の鍵利用機器11とを通信網52を介して接続する。通信網52は、例えば公衆回線網や専用回線網やローカル・エリア・ネットワーク(LAN)やワイドエリアネットワーク(WAN)やインターネット網である。
鍵管理機器10は、記憶装置7を備え、共通のグループ公開鍵及びグループ秘密鍵(グループ公開鍵及びグループ秘密鍵を合わせてグループ鍵と称する)を使用するグループ毎のグループ別情報8を記憶する。
グループ別情報8は、グループID30、グループ秘密鍵32、グループ公開鍵31、機器ID12、機器公開鍵15、機器アドレス61を記憶する。
【0011】
グループID30は、共通のグループ鍵を利用する複数の鍵利用機器を識別する識別情報である。共通のグループ鍵を利用する複数の鍵利用機器とは、同じ有限期間に情報システム(鍵利用システム)に組み込まれて顧客に出荷される複数の鍵利用機器を指す。前記有限期間とは、例えば年月日や年月、年単位で示す期間である。また、情報システム(鍵利用システム)とは、客先(例えば、会社や公共機関等)で運用するシステムであり、複数の鍵利用機器により構成する。各鍵利用機器の記憶装置には、コンピュータで実行可能なプログラムであってグループ公開鍵により暗号化された暗号化プログラムが記憶されている。開発元は、このコンピュータで実行可能なプログラムを開発して、開発したプログラムをグループ公開鍵で暗号化して、各鍵利用機器の記憶装置に記憶する。プログラムは、鍵利用機器ごとに異なるプログラムであっても、同じプログラムであってもかまわない。
グループ公開鍵31は、該グループに属する鍵利用機器11間で共有する秘密情報(例えば、コンピュータで実行可能なプログラム)を暗号化するための公開鍵である。
グループ秘密鍵32は、グループ公開鍵31により暗号化された暗号化秘密情報(例えば、コンピュータで実行可能なプログラムをグループ公開鍵で暗号化した暗号化プログラム)を復号するための秘密鍵である。
グループ鍵39は、グループ公開鍵31とグループ秘密鍵32とからなる情報である。
【0012】
機器ID12は、鍵利用機器11の個体固有の識別情報である。
機器公開鍵15は、鍵利用機器11の個体固有の公開鍵である。
機器秘密鍵16は、鍵利用機器11の個体固有の秘密鍵であり、機器公開鍵15で暗号化された情報の復号が可能である。
機器アドレス61は、鍵利用機器11が通信網52を介して他の機器と通信する際に使用する個体固有のアドレスである。
機器登録情報19は、機器ID12と機器公開鍵15と機器アドレス61とからなり、グループID30により識別されるグループに属する鍵利用機器11を鍵管理機器10が管理するための情報である。
【0013】
鍵利用機器11は、記憶装置9を備え、機器固有の情報と、グループ鍵に関する情報とを記憶する。
機器固有の情報として、機器ID12、機器公開鍵15、機器秘密鍵16、機器アドレス61を記憶する。機器ID12と機器公開鍵15と機器秘密鍵16、機器アドレス61とは、記憶装置7が記憶するものと同様である。
グループ鍵に関する情報として、暗号化グループ秘密鍵p21(暗号化グループ秘密鍵Aの一例)、二重暗号化グループ秘密鍵(1−p)群22(二重暗号化グループ秘密鍵Bの一例)、グループ公開鍵31、機器数55を記憶する。グループ公開鍵31は、記憶装置7が記憶するものと同様である。
暗号化グループ秘密鍵p21は、鍵管理機器10が、グループ公開鍵31を配布する配布先の鍵利用機器11の機器公開鍵15を用いてグループ秘密鍵32を暗号化して生成された暗号化グループ秘密鍵を任意の割合p(0<p<1)で2分割した際のプライマリ部分(例えば、暗号化グループ秘密鍵が16ビットとすると、10ビット目から15ビット目までの6ビットを示す。暗号化グループ秘密鍵Aの一例)のデータである。
二重暗号化グループ秘密鍵(1−p)群22は、鍵管理機器10が、共通のグループ鍵を利用する同一のグループに属する自鍵利用機器以外の他の鍵利用機器の機器公開鍵15により、上記暗号化グループ秘密鍵のうちの前記プライマリ部分を除くセカンダリ部分(例えば、暗号化グループ秘密鍵が16ビットとすると、0ビット目から9ビット目までの10ビットを示す。暗号化グループ秘密鍵Bの一例)のデータをそれぞれ暗号化して、他の鍵利用機器に対応する機器公開鍵で暗号化したセカンダリ部分を連結して生成したデータである。
機器数55は、鍵管理機器10が、記憶装置7に記憶した機器登録情報19の数に基づいて算出した共通のグループ鍵を利用する同一のグループに属する複数の鍵利用機器11の機器数である。
鍵管理機器10は、共通のグループ鍵を利用する複数の鍵利用機器11を接続して、通信網52を介して、各鍵利用機器11から機器登録情報19を受信し、記憶装置7に記憶し、各鍵利用機器11に対して、グループ鍵情報35を送信する。
【0014】
図2は、鍵管理機器10と鍵利用機器11とのシステムの外観の一例を示す図である。
図2において、鍵管理機器10、鍵利用機器11は、システムユニット200、CRT(Cathode・Ray・Tube)やLCD(液晶)の表示画面を有する表示装置141、キーボード142(Key・Board:K/B)、マウス143、FDD145(Flexible・Disk・Drive)、コンパクトディスク装置186(CDD)、プリンタ装置147、スキャナ装置148などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット200は、コンピュータであり、ファクシミリ機310、電話器320とケーブルで接続され、また、ローカル・エリア・ネットワーク(LAN)505、ゲートウェイ500を介してインターネット501に接続されている。
【0015】
図3は、鍵管理機器10、鍵利用機器11のハードウェア資源の一例を示す図である。
図3において、鍵管理機器10、鍵利用機器11は、プログラムを実行するCPU137(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU137は、バス138を介してROM139、RAM140、通信ボード144、表示装置141、キーボード142、マウス143、FDD145、CDD146、プリンタ装置147、スキャナ装置148、磁気ディスク装置149と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置149の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
RAM140は、揮発性メモリの一例である。ROM139、FDD145、CDD146、磁気ディスク装置149の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置7,9あるいは記憶部の一例である。
通信ボード144、キーボード142、スキャナ装置148、FDD145などは、入力部、入力装置の一例である。
また、通信ボード144、表示装置141、プリンタ装置147などは、出力部、出力装置の一例である。
【0016】
通信ボード144は、ファクシミリ機310、電話器320、LAN505等に接続されている。通信ボード144は、LAN505に限らず、インターネット501、ISDN等のWAN(ワイドエリアネットワーク)などに接続されていても構わない。インターネット501或いはISDN等のWANに接続されている場合、ゲートウェイ500は不用となる。
磁気ディスク装置149には、オペレーティングシステム150(OS)、ウィンドウシステム151、プログラム群152、ファイル群153が記憶されている。プログラム群152のプログラムは、CPU137、オペレーティングシステム150、ウィンドウシステム151により実行される。
【0017】
上記プログラム群152には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU137により読み出され実行される。
ファイル群153には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」、「〜の確認の結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU137によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPUの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示・抽出のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM140のメモリ、FDD145のフレキシブルディスク、CDD146のコンパクトディスク、磁気ディスク装置149の磁気ディスク、その他光ディスク、ミニディスク、DVD(Digital・Versatile・Disk)等の記録媒体に記録される。また、データや信号は、バス138や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【0018】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ROM139に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU137により読み出され、CPU137により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【0019】
次に、鍵管理機器10と各鍵利用機器11との構成を説明する。
図4は、鍵管理機器10と各鍵利用機器11との構成を示すブロック図である。
図4に従い、鍵管理機器10の各要素の動作と、鍵利用機器11の各要素の動作を簡単に説明する。
記憶装置7が記憶する情報は、図1の記憶装置7が記憶する情報と同じである。図4では、説明を簡単にするため、1つのグループに関する情報(グループ別情報8)を記載している。
記憶装置7は、例えば磁気ディスク装置149やROM139やFDD145やCDD146等である。
読み出し部80は、記憶装置7からグループ鍵39と、各鍵利用機器の機器登録情報19とをCPU137により読み出す。
暗号化グループ秘密鍵生成部81は、読み出し部80が読み出したグループ鍵39が含むグループ秘密鍵32を、各鍵利用機器11の機器登録情報19が含む機器公開鍵15を用いてCPU137により暗号化して各鍵利用機器11に対応する暗号化グループ秘密鍵を生成する。
鍵分割部82は、暗号化グループ秘密鍵生成部81が生成した各鍵利用機器11の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器11の暗号化グループ秘密鍵p(暗号化グループ秘密鍵Aの一例)と暗号化グループ秘密鍵(1−p)(暗号化グループ秘密鍵Bの一例)とをCPU137により生成する。割合pは、鍵運用システムのユーザ(以下運用者と称する)によりあらかじめ記憶装置7や鍵管理機器10のメモリに記憶されている。
二重暗号化グループ秘密鍵生成部83は、鍵分割部82が生成した各鍵利用機器11の暗号化グループ秘密鍵(1−p)を順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵(1−p)を、入力した暗号化グループ秘密鍵(1−p)の鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵15を用いてCPU137によりさらに暗号化して、他の鍵利用機器に対応する二重暗号化グループ秘密鍵(1−p)群(二重暗号化グループ秘密鍵B)を生成する。
登録数算出部85は、記憶装置7が記憶した1つのグループに属する機器登録情報19の数をCPU137により求め、これを機器数とする。
送信部84は、読み出し部80が読み出した各鍵利用機器の機器登録情報19が含む機器アドレス61に宛てて、機器アドレス61を使用する鍵利用機器11の暗号化グループ秘密鍵pと、二重暗号化グループ秘密鍵(1−p)群と、読み出し部80が読み出したグループ公開鍵31とをグループ鍵情報35として通信装置により通信網52を介して送信する。また、送信部84は、登録数算出部85が求めた機器数を通信装置により通信網52を介して各鍵利用機器11に送信する。通信装置は、例えば、通信ボード144である。
【0020】
複数の鍵利用機器11は、通信網52により鍵管理機器10に接続される。図4の鍵利用機器a,nは共通のグループ鍵39を利用する同一のグループに属する鍵利用機器である。鍵利用機器a,nは、同じ構成であり、ここでは鍵利用機器aについて説明する。
鍵利用機器11(鍵利用機器a)の記憶装置7が記憶する情報は、図1の記憶装置9が記憶する情報と同じである。図4では、説明を簡単にするため、図1の記憶装置9が記憶する情報の一部を記載している。記憶装置9は、例えば磁気ディスク装置149やROM139やFDD145やCDD146等である。
受信部90は、鍵管理機器10が送信したグループ鍵情報と機器数とを通信装置により通信網52を介して受信する。通信装置は、例えば、通信ボード144である。
グループ鍵情報登録部91は、受信部90が受信したグループ鍵情報を記憶装置9にCPU137により記憶する。
機器数登録部92は、受信部90が受信した機器数をCPU137により記憶装置9に記憶する。
【0021】
次に、鍵管理機器10の複数の鍵利用機器11に対するグループ鍵情報35の生成処理について、図5〜図9を用いて説明する。
図5は、鍵管理機器10が各鍵利用機器11に対して生成したグループ鍵情報35を記憶する鍵利用システム51を示す図である。
図6は、図5の各鍵利用機器11が記憶するグループ鍵情報35を生成する鍵管理機器10の処理を示すフローチャートである。
図7は、鍵管理機器10が各鍵利用機器11に配布する二重暗号化グループ秘密鍵(1−p)群の生成工程の説明図である。
図8は、鍵管理機器10が生成する二重暗号化グループ秘密鍵(1−p)を説明する図である。
図9は、鍵管理機器10が生成する暗号化グループ秘密鍵pと暗号化グループ秘密鍵(1−p)とを説明する図である。
【0022】
鍵管理機器10が図6の処理を開始する前に、各鍵利用機器11があらかじめ設定されて記憶する情報について説明する。以下に記載する「情報システム」は、「鍵利用システム」の一例である。
各鍵利用機器11は、機器製造元における製造時、あるいは、機器製造元から情報システムの開発元に納品される際の入荷処理において、機器単体に固有の機器公開鍵15、機器秘密鍵16、機器ID12が製造者あるいは情報システムの開発者によりキーボード142やマウス143等の入力装置を用いて設定され、各鍵利用機器11は設定されたこれらの情報を記憶装置9にCPU137により記憶する。
また、鍵管理機器10や複数の鍵利用機器11間で通信網52を介して通信するための機器アドレス(通信アドレス)61がそれぞれの鍵利用機器11に製造者あるいは情報システムの開発者によりキーボード142やマウス143等の入力装置を用いて設定され、各鍵利用機器11は設定された機器アドレス61を記憶装置9にCPU137により記憶する。機器アドレス61は、例えば通信網52でTCP/IP通信をおこなうIPアドレスであり、各鍵利用機器11が異なる値(アドレス)を持ち、かつ、情報システムの稼動中は同一の値を使い続けるのであれば、該情報システムにDHCPサーバを組み込んで動的に設定しても良い。
ここでは、機器ID12と機器アドレス61とのそれぞれを、各鍵利用機器11を識別する識別情報とする。機器アドレス61だけを記憶して、機器アドレス61を各鍵利用機器11を識別する識別情報としてもよい。
このように、各鍵利用機器11はあらかじめ機器公開鍵15等の情報を記憶する。
【0023】
前記情報システムを構成する鍵利用機器は、図5の鍵利用機器h〜kの4台の鍵利用機器11とする。鍵利用機器h〜kは情報システム(鍵利用システム51)を構成する。
鍵利用機器h〜kは、同一の納入予定日に客先へ納入されるものとする。この納入予定日を前記有限期間とする。ここでは、納入予定日を2009年2月20日とする。納入予定日は、この例のように日単位の他に、週単位、月単位、年単位でも構わない。
【0024】
鍵管理機器10の運用者は納入予定日が到来する以前に、鍵管理機器h〜kにグループ鍵情報35を鍵管理機器10により設定する。例えば、納入予定日と納入予定日に客先へ納入する鍵利用機器(機器ID12や機器アドレス61により鍵利用機器を識別する)と鍵利用機器が属するグループとが鍵管理機器10により管理され、鍵管理機器10は納入予定日の1月前に納入予定日と納入する鍵利用機器とグループとを情報システムの開発者にプリンタ装置147やCRT141等の出力装置を用いて通知する。開発者は、鍵管理機器10からの通知を確認して、納入する鍵利用機器11を鍵管理機器10に接続する。ここでは、鍵利用機器h〜kを接続する。
【0025】
図6に従い、鍵利用機器h〜kが記憶するグループ鍵情報35を生成する鍵管理機器10の処理について説明する。なお、鍵利用機器h〜kは、図4の鍵利用機器aと同じ構成である。各処理を実行する「〜部」は、CPU137により動作する。
【0026】
S501、記憶処理
鍵利用機器h〜kは、自鍵利用機器11の機器ID12と機器公開鍵15と機器アドレス61とを含むグループ情報登録要求を鍵管理機器10に送信する。
鍵管理機器10のグループ情報生成部(図示せず)は、鍵利用機器h〜kから送信されたグループ情報登録要求を通信装置により通信網52を介して受信する。
【0027】
S502、記憶処理
鍵管理機器10の機器情報登録部(図示せず)は、グループ情報登録要求に含まれた機器ID12と機器公開鍵15と機器アドレス61とを、機器ID12あるいは機器アドレス61により識別されるグループのグループ別情報8にCPU137により記憶する。機器情報登録部は、該グループに属する鍵利用機器h〜kについて機器ID12等の情報の登録が終了したら鍵利用機器h〜kへ登録の終了を通知する。
前記したように、鍵管理機器10は納入予定日と納入予定日に客先へ納入する鍵利用機器(機器ID12や機器アドレス61)と鍵利用機器が属するグループとを管理している。このため、機器情報登録部は、鍵管理機器10が管理している前記した情報を、グループ情報登録要求に含まれた機器ID12あるいは機器アドレス61を用いてCPU137により検索し、機器ID12あるいは機器アドレス61により識別される鍵利用機器が属するグループをCPU137により判定する。また、該グループに属する全ての鍵利用機器11は、鍵管理機器10が管理している前記した情報を、該グループを用いてCPU137により検索し、該グループに属する全ての鍵利用機器11をCPU137により判定する。
機器ID12等の情報の登録が終了したことを鍵管理機器10から受信した鍵利用機器11は、以下のS503〜S508を行う。
【0028】
S503、記憶処理
鍵管理機器10の受信部(図示せず)は、機器ID12あるいは機器アドレス61を含むグループ鍵情報取得要求を鍵利用機器h〜kから通信装置により通信網52を介して受信する。受信した鍵利用機器h〜kのグループ鍵情報取得要求をCPU137によりメモリに記憶する。
以下の、S504〜S508は、鍵利用機器h〜kのグループ鍵情報取得要求ごとに行う。
【0029】
S504、読み出し処理
読み出し部80は、グループ鍵情報取得要求に含まれた機器ID12あるいは機器アドレス61を用いて、記憶装置7をCPU137により検索し、該鍵利用機器11の機器公開鍵15と、該鍵利用機器11が属するグループのグループID30とグループ鍵39とをCPU137により読み出す。
【0030】
S505、暗号化グループ秘密鍵生成処理,S506、鍵分割処理,S507,二重暗号化グループ秘密鍵生成処理A
暗号化グループ秘密鍵生成部81、鍵分割部82、二重暗号化グループ秘密鍵生成部83は、図7に示す生成工程により、グループ鍵情報取得要求元の鍵利用機器11に対して、二重暗号化グループ秘密鍵(1−p)群22を生成する。
【0031】
二重暗号化グループ秘密鍵(1−p)群22生成工程を図7を用いて以下に説明する。
暗号化グループ秘密鍵生成部81は、S504で読み出したグループ鍵39からグループ秘密鍵32をCPU137により取り出し、該鍵利用機器11の機器公開鍵15でCPU137により暗号化することにより、暗号化グループ秘密鍵71を生成する(S505)。
機器公開鍵15でデータを暗号化する際には、GnuPGなどの一般的に使用されている暗号化ソフトウェアと同様に、該機器公開鍵15に固有な値を暗号化データに埋め込むことにより、暗号化データを調べれば該暗号化データの暗号化に用いた機器公開鍵15を特定可能とする。以下、機器公開鍵15でデータを暗号化する際には、常に暗号化データの暗号化に用いた機器公開鍵を特定可能とする該機器公開鍵15に固有な値を埋め込むものとする。例えばこれから二重暗号化グループ秘密鍵生成部83が生成する二重暗号化グループ秘密鍵(1−p)も同様である。図8はグループ秘密鍵32を鍵利用機器hの機器公開鍵15で暗号化し、分割して生成した暗号化グループ秘密鍵(1−p)hを、さらに、鍵利用機器iの機器公開鍵15で暗号化して生成した二重暗号化グループ秘密鍵(1−p)75aを示す。二重暗号化グループ秘密鍵(1−p)75aには、二重暗号化グループ秘密鍵(1−p)75aが、鍵利用機器hの機器公開鍵15と鍵利用機器iの機器公開鍵15で暗号化されたことを示す鍵利用機器を識別する情報75bが付加されている。鍵利用機器を識別する情報75bは、機器ID12や機器アドレス61である。鍵利用機器を識別する情報75bと二重暗号化グループ秘密鍵(1−p)75aとを二重暗号化グループ秘密鍵生成部83が生成する二重暗号化グループ秘密鍵(1−p)75(二重暗号化グループ秘密鍵の一例)とする。この実施の形態及び他の実施の形態に記載する、暗号化グループ秘密鍵、暗号化グループ秘密鍵p、暗号化グループ秘密鍵(1−p)、二重暗号化グループ秘密鍵(1−p)、三重暗号化グループ秘密鍵(1−p)、X重暗号化グループ秘密鍵(1−p)は、鍵利用機器を識別する情報75bが付加されている。なお、「X」は、「X>1の整数」とする。
【0032】
次に、鍵分割部82は、S505で生成した暗号化グループ秘密鍵71を任意の割合p(0<p<1)により、p:(1−p)の割合でCPU137により2分割する(S506)。pは鍵利用機器ごとに異なる値にしても良いし、同じ値にしても良い。pは記憶装置7にあらかじめ記憶されている。
2分割した該暗号化グループ秘密鍵71のプライマリ部分のデータを暗号化グループ秘密鍵p21(暗号化グループ秘密鍵A)、セカンダリ部分のデータを暗号化グループ秘密鍵(1−p)72(暗号化グループ秘密鍵B)とする。例えば、図9のように暗号化グループ秘密鍵71が30ビットであり、pとして「0.4」が記憶されていた場合、暗号化グループ秘密鍵71は、12ビットの暗号化グループ秘密鍵p21と18ビットの暗号化グループ秘密鍵(1−p)72とに分割される。12ビットがプライマリ部分であり、18ビットがセカンダリ部分である。
【0033】
次に、二重暗号化グループ秘密鍵生成部83は、該鍵利用機器11を除く他の鍵利用機器11の機器公開鍵15を、S504で読み出した該グループID30を検索キーとすることで記憶装置7からCPU137により読み出す。グループID30を検索キーとすると、グループID30に属する全ての鍵利用機器の機器公開鍵15が検索できる。このため、グループ鍵情報取得要求に含まれた機器ID12あるいは機器アドレス61に対応する機器公開鍵15を、検索できた機器公開鍵15より除く。すなわち、機器公開鍵15の数は、該グループに属する鍵利用機器数−1となる。鍵利用機器数は、機器登録情報19の機器ID12あるいは機器アドレス61の数を算出して求める。鍵利用機器h〜kを接続する例では、該鍵利用機器を鍵利用機器hとした場合、他の鍵利用機器は、鍵利用機器i〜kとなる。二重暗号化グループ秘密鍵生成部83は、記憶装置7から、鍵利用機器iと鍵利用機器jと鍵利用機器kとのそれぞれの機器公開鍵15をCPU137により読み出す。
【0034】
その後、二重暗号化グループ秘密鍵生成部83は、該グループに属する鍵利用機器数−1の数の機器公開鍵15を用いて、該暗号化グループ秘密鍵(1−p)72を暗号化し、該グループに属する鍵利用機器数−1の数の二重暗号化グループ秘密鍵(1−p)75を生成する(S507)。鍵利用機器h〜kの4台を接続する例では、二重暗号化グループ秘密鍵生成部83は、鍵利用機器iの機器公開鍵15を用いて該暗号化グループ秘密鍵(1−p)hを暗号化して、二重暗号化グループ秘密鍵(1−p)hiを生成し、鍵利用機器jの機器公開鍵15を用いて該暗号化グループ秘密鍵(1−p)hを暗号化して、二重暗号化グループ秘密鍵(1−p)hjを生成し、鍵利用機器kの機器公開鍵15を用いて該暗号化グループ秘密鍵(1−p)hを暗号化して、二重暗号化グループ秘密鍵(1−p)hkとの3つ(4台−1)の二重暗号化グループ秘密鍵(1−p)75を生成する(S507)。
【0035】
次に、二重暗号化グループ秘密鍵生成部83は、鍵利用機器数−1の数の該二重暗号化グループ秘密鍵(1−p)75をCPU137により連結し、二重暗号化グループ秘密鍵(1−p)群22(二重暗号化グループ秘密鍵Bの一例)を生成する。鍵利用機器h〜kの4台を接続する例では、二重暗号化グループ秘密鍵生成部83は、図7のS507のように二重暗号化グループ秘密鍵(1−p)hi、二重暗号化グループ秘密鍵(1−p)hj、二重暗号化グループ秘密鍵(1−p)hkとの3つ(4台−1)の二重暗号化グループ秘密鍵(1−p)75を連結して、二重暗号化グループ秘密鍵(1−p)群hを生成する。
鍵利用機器h〜iの2台を接続する例では、二重暗号化グループ秘密鍵生成部83は、二重暗号化グループ秘密鍵(1−p)hiを生成して、1つの二重暗号化グループ秘密鍵(1−p)hiを含む二重暗号化グループ秘密鍵(1−p)群hを生成する。
なお、S504で読み出したグループ公開鍵31と、S506で生成した暗号化グループ秘密鍵p21とS507で生成した二重暗号化グループ秘密鍵(1−p)群22とは、CPU137によりメモリに記憶する。
【0036】
S508
接続した鍵利用機器のすべてについて前記S504〜S507が終了していなければ(S508,NO)、S504へ戻って処理を繰り返す。すべての鍵利用機器について終了していれば(S508,YES)、S509へ進む。鍵利用機器h〜kを接続する例では、前記S504〜S507の処理を、鍵利用機器hと鍵利用機器iと鍵利用機器jと鍵利用機器kとについて繰り返す。
【0037】
S509、送信処理
次に、送信部84は、メモリに記憶したグループ公開鍵31と各鍵利用機器11の暗号化グループ秘密鍵p21と二重暗号化グループ秘密鍵(1−p)群22とからなるグループ鍵情報35をグループ鍵情報取得要求元の鍵利用機器11に通信装置により通信網52を介して送信する。
【0038】
S510
グループ鍵情報取得要求を行ったすべての鍵利用機器に対して、グループ鍵情報35を送信するまで、S509を繰り返す。すべての機器について終了していない場合は(S510,NO)S509へ戻り、終了した場合は(S510,YES)鍵管理機器10の処理を終了する。鍵利用機器h〜kを接続する例では、鍵利用機器hと鍵利用機器iと鍵利用機器jと鍵利用機器kとについて繰り返す。
【0039】
このようにして鍵管理機器10が送信したグループ鍵情報35は、各鍵利用機器11の受信部90が通信装置により通信網52を介して受信し、グループ鍵情報登録部91が、受信したグループ鍵情報35を記憶装置9にCPU137により記憶する。
【0040】
グループ鍵情報35は、鍵管理機器10によりこのようにして生成され、各鍵利用機器11に送信され記憶される。
次に、複数の鍵利用機器により構成された情報システム(鍵利用システム50)の出荷時における処理について説明する。
情報システムの出荷時には、鍵管理機器10は該情報システムを構成する複数の鍵利用機器の機器数55を算出して各鍵利用機器11に送信する。
鍵管理機器10の登録数算出部85は、出荷する複数の鍵利用機器11が属するグループ別情報8から機器登録情報19の機器ID12あるいは機器アドレス61の数をCPU137により算出し、これを機器数55とする。例えば、登録数算出部85は、出荷する複数の鍵利用機器11が属するグループIDを、鍵管理機器10の運用者にキーボード142等の入力装置を用いて入力させ、入力されたグループIDのグループ別情報8の機器登録情報19の機器アドレス61の数を算出して、機器数55とする。
登録数算出部85が算出した機器数55は、送信部84が各鍵利用機器11へ通信装置により通信網52を介して各鍵利用機器11へ送信する。
各鍵利用機器11は、鍵管理機器10が送信した機器数55を、受信部90により通信装置により通信網52を介して受信する。機器数登録部92は、受信した機器数55を記憶装置9にCPU137により記憶する。
【0041】
以上のようにして、この実施の形態1で説明した鍵運用システムは、ある有限期間に情報システム(鍵利用システム50)に組み込まれて出荷される複数の鍵利用機器11に対してグループ鍵情報35を配布する。暗号化グループ秘密鍵p21はグループ秘密鍵32を機器公開鍵により暗号化した後に2分割されたデータであるため、グループ秘密鍵32を直接に得ることは不可能である。また、二重暗号化グループ秘密鍵(1−p)群22を分解して得られる二重暗号化グループ秘密鍵(1−p)75は機器公開鍵により暗号化した後に2分割され、さらに、他の鍵利用機器の機器公開鍵により暗号化されたデータであるため、他の鍵利用機器11が二重暗号化グループ秘密鍵(1−p)75を複数入手したとしても、二重暗号化グループ秘密鍵pを入手しないと、それらを組み合わせてグループ秘密鍵32を得ることは不可能である。
【0042】
なお、機器数55の算出と登録は、図6の処理を終了した後、鍵利用機器の出荷前に行ってもかまわない。
【0043】
実施の形態2.
この実施の形態では、鍵管理機器10により生成されたグループ鍵情報35を記憶した複数の鍵利用機器によって、グループ鍵情報35からグループ秘密鍵32を生成する鍵利用システム51について説明する。
鍵利用システム51の構成は、図5と同様とする。すなわち、鍵利用システム51は、鍵利用機器h〜kを備える。
各鍵利用機器11は、情報システム(鍵利用システム51)の稼動時に、グループ公開鍵で暗号化された秘密情報(例えば、CPU137により実行可能な記憶装置9に記憶されたプログラム)を復号するため、鍵利用機器が組み込まれた情報システムの稼動時に、グループ秘密鍵を生成する処理フローについて説明する。
【0044】
図10、図11は、鍵利用機器の構成を示すブロック図である。鍵利用機器h〜kは、図10、図11の少なくともいずれか一方に示す構成をしている。鍵利用機器h〜kのうち、鍵利用機器hは、グループ秘密鍵を生成するために他の鍵利用機器iに対して暗号化されたグループ秘密鍵の復号を依頼する復号元鍵利用機器として動作する。他の鍵利用機器i〜jは、グループ秘密鍵の復号を依頼される復号先鍵利用機器として動作する。鍵利用システム51を構成する複数の鍵利用機器11は、基本的には同じ構成をしており、復号元鍵利用機器として動作する場合と、復号先鍵利用機器として動作する場合との少なくともいずれか一方の動作を行う。図10は、鍵利用機器11が復号元鍵利用機器として動作する場合の構成を示し、図11は、鍵利用機器11が復号先鍵利用機器として動作する場合の構成を示す。図10には図11に示された復号部100を記載していないが、これは鍵利用機器11が復号元鍵利用機器として動作する場合には必要でないために省略したのであって、図10の鍵利用機器11も復号部100を備えているものとする。
図12〜図14は、鍵利用機器11が復号元鍵利用機器として動作するグループ秘密鍵の取得処理の流れを示したフローチャートである。
【0045】
鍵利用機器11の要素の主な機能について簡単に説明する。
図10において、記憶装置9の自己の機器情報及びグループ鍵情報35は、図5の記憶装置9が記憶する情報と同じである。他の機器情報57は、他の鍵利用機器11の記憶装置9に記憶された自己の機器情報56のうちの機器ID12、機器公開鍵15、機器アドレス61と同じ情報である。
他機器要求部93は、他の鍵利用機器11が記憶した機器公開鍵15等の情報の取得を要求する他機器要求情報をCPU137により生成する。
機器選択部96は、他の鍵利用機器11のうち1つの鍵利用機器11を、二重暗号化グループ秘密鍵(1−p)群22を復号する復号先鍵利用機器としてCPU137により選択する。
復号情報生成部97は、三重暗号化グループ秘密鍵(1−p)を生成し、生成した三重暗号化グループ秘密鍵(1−p)を含む復号依頼情報をCPU137により生成する。
リスト生成部99は、自鍵利用機器11の機器アドレス61あるいは機器ID12と他の鍵利用機器11の機器アドレス61あるいは機器ID12とを含む復号依頼経路リスト情報をCPU137により生成する。
送信部94は、他機器要求部93、復号情報生成部97、リスト生成部99がそれぞれ生成した情報を通信装置により通信網52を介して送信あるいは放送する。
受信部90は、他機器要求情報に対して他の鍵利用機器が送信した機器公開鍵15等の情報を含む応答情報と、復号依頼情報に対する復号応答情報を他の鍵利用機器11より通信装置により通信網52を介して受信する。
登録部95は、受信部90が受信した応答情報に含まれた他の鍵利用機器11の機器公開鍵15等の情報を記憶装置9の他の機器情報57にCPU137により記憶する。
グループ秘密鍵生成部98は、暗号化グループ秘密鍵pと復号依頼情報に対する復号応答情報に含まれた二重暗号化グループ秘密鍵(1−p)群22が復号された暗号化グループ秘密鍵(1−p)72とをCPU137により結合して暗号化グループ秘密鍵71を生成し、生成した暗号化グループ秘密鍵71を記憶装置9が記憶した機器秘密鍵16を用いてCPU137により復号してグループ秘密鍵32を生成する。
図11の復号部100は、復号依頼情報が含むX重暗号化グループ秘密鍵(1−p)を記憶装置9が記憶する機器秘密鍵16によりCPU137により復号して(X−1)重暗号化グループ秘密鍵を生成して(X−1)重暗号化グループ秘密鍵を含む復号応答情報をCPU137により生成する。
図11の送信部94は、図10の送信部94の動作のほかに、復号部100が生成した復号応答情報を通信装置により通信網52を介して送信する。
図11の復号部100、送信部94以外の他の要素の動作は、図10と同一の符号の要素と同様とする。
【0046】
図12〜図14を用いて、復号元鍵利用機器である鍵利用機器hの動作を説明する。
S101、他機器要求処理
他機器要求部93は、鍵利用システム51を構成する他の鍵利用機器11の機器アドレス61と機器公開鍵15とからなる機器情報60の取得を要求する他機器要求情報を生成する。送信部94は、他機器要求情報を通信装置により通信網52を介してブロードキャストする。
【0047】
S102、S103、他機器情報受信処理
他機器要求情報を受信した鍵利用システム51を構成する他の鍵利用機器11はそれぞれ、該鍵利用機器11の機器情報60と機器ID12とを含む応答情報を応答情報生成部(図示せず)によりCPU137により生成して、機器情報取得要求元の鍵利用機器11に通信装置により通信網52を介して送信する。
機器情報取得要求元の鍵利用機器11の受信部90は、他の鍵利用機器11から他機器要求情報に返信がない(S102,いいえ)場合、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。受信部90は、応答情報を受信した(S102,はい)場合、受信した応答情報の数が鍵利用システム51を構成する鍵利用機器の機器数55から自機の機数である1を減した数に満たない(S103,いいえ)場合、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。機器数55は、実施の形態1で説明したように鍵管理機器10により予め設定されているものとする。機器数55が予め鍵管理機器10により設定されていない場合は、S103の処理は省略する。
登録部95は、受信した応答情報に含まれた機器情報60と機器ID12とを、記憶装置9の他の機器情報57にCPU137により記憶する。記憶装置9は、機器ID12あるいは機器アドレス61とのいずれかをキーとして機器公開鍵15を記憶する。
【0048】
S104、機器選択処理
機器選択部96は、受信した機器情報60に含まれる機器公開鍵15のそれぞれが、二重暗号化グループ秘密鍵(1−p)群22に含まれた二重暗号化グループ秘密鍵(1−p)75の識別する情報75bに含まれることをCPU137により判定する。判定した結果、二重暗号化グループ秘密鍵(1−p)75の識別する情報75bに含まれない機器公開鍵15が存在する場合には(S104,いいえ)、異なるグループに属する鍵利用機器11が鍵利用システム51に組み込まれていると判断し、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。
判定した結果、二重暗号化グループ秘密鍵(1−p)75の識別する情報75bに含まれない機器公開鍵15が存在しない場合には(S104,はい)、S105へ進む。
【0049】
S105、機器選択処理
S102〜S104までの処理において機器構成認証エラーが無ければ、機器選択部96は、受信した応答情報を送信した他の鍵利用機器11から1つの鍵利用機器をランダムにCPU137により選択し、選択した他の鍵利用機器11を二重暗号化グループ秘密鍵(1−p)75の復号先鍵利用機器とする。機器選択部96は、復号先鍵利用機器として選択した鍵利用機器より受信した応答情報に含まれた機器アドレス61をメモリに保持する。
【0050】
S106〜S110、認証処理
選択した復号先鍵利用機器が、該鍵利用機器11のものではない機器公開鍵15を送信している可能性もあるため、機器認証を次のS106〜S110のようにして、鍵利用機器11の認証部(図示せず)がCPU137によりおこなう。なお、認証処理は省略することが可能である。
先ず、S106では、認証用の乱数データ(認証用データと称する)を生成する。S107では、該認証用データを該復号先鍵利用機器として選択した鍵利用機器11から受信した機器公開鍵15により暗号化して暗号化認証用データを生成する。該暗号化認証用データを該復号先鍵利用機器に機器認証要求として通信装置により通信網52を介して送信する。
S108では、該復号先鍵利用機器の受信部90は、通信装置により通信網52を介して機器認証要求を受信する。受信した認証要求は、該復号先鍵利用機器の認証部(図示せず)が、記憶装置9が記憶する機器秘密鍵16を読み出して、読み出した機器秘密鍵16により該暗号化認証用データを復号する。復号した暗号化認証用データは、該復号先鍵利用機器の送信部94が、通信装置により通信網52を介して機器認証要求の送信元(復号元鍵利用機器)に返信する。復号元鍵利用機器は、機器認証要求に対する返信がない(S109,いいえ)場合は、該復号先鍵利用機器が該鍵利用機器11のものではない機器公開鍵15を送信したと判断し、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。
復号元鍵利用機器の受信部90は、復号先鍵利用機器が送信した復号した暗号化認証用データを、通信装置により通信網52を介して受信する。
復号元鍵利用機器の認証部は、該暗号化認証用データを復号したデータが認証用データと一致しない場合(S110,いいえ)には、該復号先鍵利用機器が該鍵利用機器11のものではない機器公開鍵15を送信したと判断し、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。
S109,S110において該復号先鍵利用機器の機器認証に問題が無ければ(S109,はい、S110,はい)、図13のS112へ進む。
【0051】
S112、リスト生成処理
復号元鍵利用機器のリスト生成部99は、自己の機器情報56から機器アドレス61をCPU137により読み出し、読み出した機器アドレス61を1レコード目に記憶して復号依頼経路リスト情報(復号依頼経路リストファイル)を生成する。
【0052】
S113、リスト生成処理
さらに、復号元鍵利用機器のリスト生成部99は、該復号先鍵利用機器の機器アドレス61を他の機器情報57からCPU137により読み出し、読み出した機器アドレス61を復号依頼経路リスト情報の次のレコードにCPU137により追記する。復号先鍵利用機器の機器アドレス61は、S105でメモリに保持されているので、リスト生成部99は復号先鍵利用機器の機器アドレス61をメモリからCPU137により読み出し、復号依頼経路リスト情報の次にレコードに追記してもよい。
【0053】
S111、復号依頼情報生成処理
次に、復号元鍵利用機器の復号情報生成部97は、二重暗号化グループ秘密鍵(1−p)群22から、該復号先鍵利用機器の機器公開鍵15で暗号化された二重暗号化グループ秘密鍵(1−p)75のみをCPU137により取り出す。二重暗号化グループ秘密鍵(1−p)群22が含む二重暗号化グループ秘密鍵(1−p)75は、図8に示したように識別する情報75bを含むので、この識別する情報75bを参照して復号先鍵利用機器の機器公開鍵15で暗号化された二重暗号化グループ秘密鍵(1−p)75を取り出すことができる。例えば、識別する情報75bは機器アドレス61であり、復号先鍵利用機器の機器アドレス61は、S105でメモリに保持した。このため、復号情報生成部97は、メモリからCPU137により機器アドレス61を読み出し、読み出した機器アドレス61と一致する識別する情報75bを含む二重暗号化グループ秘密鍵(1−p)75を取り出す。
【0054】
S114、復号依頼情報生成処理
他の鍵利用機器が2台以上である場合と、1台である場合とにより、復号先鍵利用機器に送信する復号依頼情報の内容が異なる。
他の鍵利用機器が2台以上である場合は、S115〜S116bの処理により復号依頼情報を生成する。他の鍵利用機器が1台である場合は、S117の処理により復号依頼情報を生成する。
【0055】
S115、復号依頼情報生成処理
機器情報取得要求に対する返信として受信した機器情報60の数が2以上(他の鍵利用機器が2台以上)である場合、すなわち、該鍵利用システム51を構成する鍵利用機器11が3機以上の場合には、復号情報生成部97は、S111で取り出した該二重暗号化グループ秘密鍵(1−p)75を、該復号先鍵利用機器以外から受信した機器情報60に含まれる機器公開鍵15によりそれぞれCPU137により暗号化し、三重暗号化グループ秘密鍵(1−p)を生成する。例えば、他の鍵利用機器が3機であった場合、3機のうちの1機は復号先鍵利用機器としてすでに選択されているため、復号先鍵利用機器以外の鍵利用機器は2機となる。この2機の鍵利用機器からそれぞれ受信した機器情報60に含まれた機器公開鍵15のそれぞれについてS111で取り出した該二重暗号化グループ秘密鍵(1−p)75を暗号化して、2つの三重暗号化グループ秘密鍵(1−p)を生成する。三重暗号化グループ秘密鍵(1−p)は、図8の二重暗号化グループ秘密鍵(1−p)と同じように暗号化する際に用いた鍵利用機器を識別する情報75bを含む。
復号先鍵利用機器の機器アドレス61が、S105でメモリに保持されているので、復号情報生成部97は他の機器情報57が記憶する全ての機器公開鍵15をCPU137により読み出し、その中からメモリに記憶した復号先鍵利用機器の機器アドレス61に対応する機器公開鍵15を除く機器公開鍵15をCPU137により選択する。
【0056】
S116a、復号依頼情報生成処理
次に、復号情報生成部97は、S115で生成した三重暗号化グループ秘密鍵(1−p)をCPU137により連結し、三重暗号化グループ秘密鍵(1−p)群を生成し、三重暗号化グループ秘密鍵(1−p)群を含む復号依頼情報を生成する。例えば、他の鍵利用機器が3機であった場合、S115では2つの三重暗号化グループ秘密鍵(1−p)を連結して1つの三重暗号化グループ秘密鍵(1−p)群を生成する。
【0057】
S116b、復号依頼情報生成処理
次に、復号情報生成部97は、S113で生成した該復号依頼経路リスト情報とS116aで生成した該三重暗号化グループ秘密鍵(1−p)群を含む復号依頼情報とを含む暗号化グループ秘密鍵(1−p)復号依頼情報を生成する。
【0058】
S117、復号依頼情報生成処理
機器情報取得要求に対する返信として受信した機器情報60の数が2未満(他の鍵利用機器が1台)である場合、すなわち、該鍵利用システム51を構成する鍵利用機器11が2機の場合には、復号情報生成部97は、該二重暗号化グループ秘密鍵(1−p)75のみから成る二重暗号化グループ秘密鍵(1−p)群をCPU137により生成し、二重暗号化グループ秘密鍵(1−p)群を含む復号依頼情報を生成する。次に、復号情報生成部97は、復号依頼情報と復号依頼経路リスト情報とからなる暗号化グループ秘密鍵(1−p)復号依頼情報を生成する。
【0059】
S118、復号情報送信処理
暗号化グループ秘密鍵(1−p)復号依頼情報の生成が完了したら、復号元鍵利用機器の送信部94は、S105で選択した復号先鍵利用機器として選択した鍵利用機器11の機器アドレス61に対して、該暗号化グループ秘密鍵(1−p)復号依頼情報を通信装置により通信網を介して送信する。復号先鍵利用機器として選択した鍵利用機器11の機器アドレス61は、S105でメモリに保持されているので、送信部94はCPU137によりメモリから機器アドレス61を読み出す。
【0060】
S119、復号情報受信処理
復号元鍵利用機器の受信部90は、定められた時間内に暗号化グループ秘密鍵(1−p)復号依頼情報に対する返信が無ければタイムアウトエラーとし(S119,いいえ)、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了するか、あるいは、S118を再度行い、暗号化グループ秘密鍵(1−p)復号依頼情報を送信する。時間内に返信があった(S119,はい)場合、図14のS120へ進む。
【0061】
S120、グループ秘密鍵生成処理
復号元鍵利用機器の受信部90は、復号依頼先鍵利用機器から暗号化グループ秘密鍵(1−p)復号依頼情報に対する返信である復号応答情報を通信装置により通信網52を介して受信する。
復号元鍵利用機器のグループ秘密鍵生成部98は、受信した復号応答情報に含まれる復号依頼経路リスト情報と暗号化グループ秘密鍵(1−p)75(暗号化グループ秘密鍵Bの一例)が含まれているかどうかをCPU137により確認し、含まれていなければ(S120,いいえ)、不正復号依頼返信エラーとしてグループ秘密鍵の取得処理を終了する。含まれていれば(S120,はい)、S121へ進む。
【0062】
S121、グループ秘密鍵生成処理
次に、グループ秘密鍵生成部98は、復号応答情報に含まれる復号依頼経路リストに自機の機器アドレス61と、他機器要求情報に対する応答情報として受信した機器情報60中の機器アドレス61が全て含まれているか否かをCPU137により確認し、含まれていなければ(S121,いいえ)不正復号依頼返信エラーとしてグループ秘密鍵の取得処理を終了する。
【0063】
S122、グループ秘密鍵生成処理
ここまでの処理でエラーがなければ(S121,はい)、グループ秘密鍵生成部98は、自機の暗号化グループ秘密鍵p21と復号応答情報に含まれた暗号化グループ秘密鍵(1−p)75とをCPU137により連結して、暗号化グループ秘密鍵71を生成する。
【0064】
S123、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、自機の機器秘密鍵16を自己の機器情報56からCPU137により読み出し、自己の機器情報56の機器秘密鍵16により暗号化グループ秘密鍵71をCPU137により復号して、グループ秘密鍵32を生成する。
【0065】
S124、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、復号に失敗した場合(S124,いいえ)は、グループ秘密鍵復号エラーとしてグループ秘密鍵の取得処理を終了する。復号に失敗した場合とは、例えば、暗号化グループ秘密鍵を生成した際の機器公開鍵と、S123で使用した自機の機器秘密鍵とがペアではない場合がある。その原因として、機器公開鍵か機器秘密鍵が壊れている場合や,自機の機器公開鍵ではない鍵で暗号化グループ秘密鍵が生成された場合が考えられる。グループ秘密鍵生成部98は、復号に成功した場合(S124,はい)、S125へ進む。
【0066】
S125、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、CPU137によりランダムにグループ秘密鍵を検証する検証用データ生成する。
【0067】
S126、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、記憶装置9からグループ公開鍵をCPU137により読み出し、グループ公開鍵を用いてS125で生成した検証用データをCPU137により暗号化する。
【0068】
S127、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、S126で暗号化した検証用データをS123で生成したグループ秘密鍵32でCPU137により復号する。
【0069】
S128、グループ秘密鍵生成処理
グループ秘密鍵生成部98は、S127で復号して得られたデータとS125で生成した検証用データが一致するか否かをCPU137のより判定し、一致しないと判定した(S128,いいえ)場合には、グループ秘密鍵復号エラーとしてグループ秘密鍵の取得処理を終了する。一致すると判定した(S128,はい)場合には、記憶装置9に記憶された秘密情報(コンピュータにより実行可能な暗号化されたプログラム)をS123で生成したグループ秘密鍵32により復号する。
なお、グループ秘密鍵はオンメモリでのみ使用可能とし、鍵利用機器の記憶装置9への保存は不可とする。
【0070】
以上の処理により、復号元鍵利用機器はグループ秘密鍵を生成する。
次に、鍵利用機器が組み込まれた鍵利用システム51の稼動時に、復号元鍵利用機器から暗号化グループ秘密鍵(1−p)復号依頼情報を受信した復号先鍵利用機器の鍵利用機器11における、暗号化グループ秘密鍵(1−p)復号の処理フローについて説明する。
図15乃至図19は、暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器11における暗号化グループ秘密鍵(1−p)復号の処理の流れを示したフローチャートである。鍵利用機器11は図11の要素を備えて復号先鍵利用機器として動作する。
【0071】
S201、復号情報受信処理
復号先鍵利用機器の受信部90は、ポーリング処理により暗号化グループ秘密鍵(1−p)復号依頼情報を受信したかどうかをCPU137により定期的に確かめる。暗号化グループ秘密鍵(1−p)復号依頼情報を受信した(S201,はい)場合、S202へ進む。暗号化グループ秘密鍵(1−p)復号依頼情報を受信しない(S201,いいえ)場合、S201を繰り返す。
【0072】
S202、他機器要求処理
復号先鍵利用機器の他機器要求部93は、暗号化グループ秘密鍵(1−p)復号依頼情報を受信したら、該暗号化グループ秘密鍵(1−p)復号依頼情報に復号依頼経路リスト情報と復号依頼情報とが含まれているかどうかをCPU137により確かめる。さらに、復号依頼情報にX重暗号化グループ秘密鍵(1−p)群が含まれているかどうかをCPU137により確かめる。ここで、「X重」の「X」は、暗号化グループ秘密鍵(1−p)復号依頼情報を受信した該鍵利用機器11が復号依頼連鎖の終点となる鍵利用機器であれば、自己の機器情報56の機器数55と同値である。該鍵利用機器11が復号依頼連鎖の終点でなければ、グループ秘密鍵の取得処理中の復号元鍵利用機器となった鍵利用機器11を基点とする復号依頼連鎖において、基点を1番目としてn番目の鍵利用機器であればn+1と同値である。例えば、該鍵利用機器11が、復号元鍵利用機器となった鍵利用機器11により最初に復号先鍵利用機器として選択された鍵利用機器11であると、復号元鍵利用機器が1番目でありので、最初に復号先鍵利用機器として選択された鍵利用機器11は2番目である。つまり、nは「2」となるので、「X重」は「2+1」により「3重」となる。
他機器要求部93は、確かめた結果、復号依頼経路リスト情報と復号依頼情報とが含まれ、かつ、復号依頼情報にX重暗号化グループ秘密鍵(1−p)群が含まれている(S202,はい)場合は、 S203に進む。他機器要求部93は、確かめた結果、復号依頼経路リスト情報と復号依頼情報とが含まれていない、または、復号依頼情報にX重暗号化グループ秘密鍵(1−p)群が含まれていない(S202,いいえ)場合は、不正復号依頼エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201に戻り、次の暗号化グループ秘密鍵(1−p)復号依頼情報の受信を待つ。
なお、自己の機器情報56に機器数55が記憶されていない場合は、S202を省略する。
【0073】
S203、他機器要求処理
次に、他機器要求部93は、受信した暗号化グループ秘密鍵(1−p)復号依頼情報が含む復号依頼経路リスト情報の最後のレコードに自機の機器アドレス61が記述されているかどうかをCPU137により確認する。確認した結果、自機の機器アドレス61が含まれていなければ(S203,いいえ)、不正復号依頼エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201に戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。確認した結果、自機の機器アドレス61が含まれていれば(S203,はい)、S204へ進む。他機器要求部93は、自機の機器アドレス61を、自己の機器情報56から読み出す。
【0074】
S204、他機器要求処理
次に、他機器要求部93は、機器情報60を取得することを要求する他機器要求情報をCPU137により生成する。送信部94は、他機器要求情報を通信装置により通信網52を介してブロードキャスト(放送)する。
【0075】
S205、他機器情報受信処理
S204でブロードキャストされた他機器要求情報を受信した、復号先鍵利用機器以外の鍵利用システム51を構成する他の鍵利用機器11は、それぞれ該鍵利用機器11の機器情報60と機器ID12とを応答情報にCPU137により含めて、他機器要求情報を送信した送信元へ返信する。
他機器要求情報をブロードキャストした復号先鍵利用機器の受信部90は、他の鍵利用機器11から応答情報が受信できない(S205,いいえ)場合、機器構成認証エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了する。受信部90は、通信装置により通信網52を介して応答情報を受信した(S205,はい)場合は、S206へ進む。
【0076】
S206、他機器情報受信処理
他機器要求情報をブロードキャストした復号先鍵利用機器の登録部95は、受信した応答情報の数が機器数55から自機の機数である1を減した数に満たない場合(S206,いいえ)は、機器構成認証エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了する。登録部95は、受信した応答情報の数が機器数55から自機の機数である1を減した数と同じである(S206,はい)場合は、受信した応答情報の数だけ応答情報に含まれた機器情報60と機器ID12とを他の機器情報57にCPU137により記憶する処理を繰り返す。他の機器情報57は、機器アドレス61をキーとして機器公開鍵15と機器ID12とを記憶する。機器数55が自己の機器情報56に記憶されていない場合は、登録部95による他の機器情報57への記憶処理を行い、応答情報の数を確認する処理は省略する。
その後、S207へ進む。
【0077】
S207、機器選択処理
次に、復号先鍵利用機器の機器選択部96は、S201で受信した復号依頼経路リスト情報のレコードに記憶された機器アドレス61以外の機器アドレス61の鍵利用機器11から送信された応答情報から、応答情報に含まれた機器アドレス61をCPU137により読み出して、読み出した機器アドレス61を記憶する。残機器情報リスト情報を生成する。例えば、復号依頼経路リスト情報に鍵利用機器hの機器アドレスhと鍵利用機器iの機器アドレスiとが含まれ、鍵利用機器h,i,jから送信された応答情報を受信した場合、機器選択部96は、残機器情報リスト情報に鍵利用機器jの機器アドレスjを記憶する。
【0078】
S208、復号処理
復号部100は、S207で生成した残機器情報リスト情報に記憶された機器アドレス61の数が0であり、かつ、該復号依頼経路リスト情報に機器数55と同数の機器アドレス61が記憶されているか否かをCPU137により確認する。確認した結果、残機器情報リスト情報に記憶された機器アドレス61の数が0であり、かつ、復号依頼経路リスト情報に機器数55と同数の機器アドレス61が記憶されている(S208,はい)場合は、復号部100は、該復号依頼先鍵利用機器が復号依頼連鎖の終点となる鍵利用機器であるため、図16のS301へ進んで、X重暗号化グループ秘密鍵(1−p)の復号処理をおこなう。確認した結果、残機器情報リスト情報に記憶された機器アドレス61の数が0でない、または、復号依頼経路リスト情報に機器数55と同数の機器アドレス61が記憶されていない(S208,いいえ)場合は、図17のS401aへ進む。
復号部100は、機器数55が自己の機器情報56に記憶されていない場合、S206で受信した応答情報の数をCPU137により算出して、機器数55とする。または、応答情報の数は、他の機器情報57が記憶する機器アドレスの数により算出する。
【0079】
S301,復号処理
まず、復号部100は、X重暗号化グループ秘密鍵(1−p)群に含まれるX重暗号化グループ秘密鍵(1−p)が1つだけであるか否かをCPU137により確認する。確認した結果、1つだけでなければ(S301,いいえ)、不正復号依頼エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。
確認した結果が1つだけであれば(S301,はい)、S302へ進む。
【0080】
S302、復号処理
復号部100は、1つのX重暗号化グループ秘密鍵(1−p)を自機の機器秘密鍵16でCPU137により復号し、(X−1)重暗号化グループ秘密鍵(1−p)を生成する。
【0081】
S303、復号処理
次に、復号部100は、S302で生成した(X−1)重暗号化グループ秘密鍵(1−p)と、S201で受信した復号依頼情報に含まれた復号依頼経路リスト情報とを含む復号応答情報をCPU137により生成する。この後、図19のS241へ進む。生成した復号応答情報は、後述するS421で送信部94から送信されるが、このときの送信先は、S201で受信した復号依頼情報の送信元の鍵利用機器である。
【0082】
S401a、機器選択処理
S208で残機器情報リスト情報に含まれる機器アドレス61の数が0でない、または、復号依頼経路リスト情報に記憶された機器アドレス61の数が機器数55より少ない場合は、復号先鍵利用機器は復号依頼連鎖の終点となる鍵利用機器ではない。このため、以下の動作により機器選択部96は、復号先鍵利用機器を選択する。
まず、機器選択部96は、S207で生成した残機器情報リスト情報中のすべての機器アドレス61をCPU137により読み出す。次に、復号応答情報に含まれたX重暗号化グループ秘密鍵(1−p)群中に含まれるX重暗号化グループ秘密鍵(1−p)の中に、読み出した各機器アドレス61の鍵利用機器11の機器公開鍵15で暗号化されたX重暗号化グループ秘密鍵(1−p)が、全て含まれているかどうかをCPU137により確認する。X重暗号化グループ秘密鍵(1−p)は図8のように暗号化に使用した機器公開鍵の鍵利用機器を識別する情報75bを含む。この識別する情報は例えば機器アドレス61である。機器選択部96は、残機器情報リスト情報中の機器アドレス61を順次読み出して、読み出した機器アドレス61がX重暗号化グループ秘密鍵(1−p)群中のX重暗号化グループ秘密鍵(1−p)に含まれた機器アドレス61であるか否かを、識別する情報75bと比較して確認できる。
全て含まれていなければ(S401,いいえ)機器構成検証エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了する。全て含まれていれば(S401,はい)、S401bへ進む。
【0083】
S401b、機器選択処理
機器選択部96は、残機器情報リスト情報に記憶されたすべての機器アドレス61の中から、1つの機器アドレス61をCPU137によりランダムに選択し、選択した機器アドレス61の鍵利用機器11を次の復号先鍵利用機器(以下、次段復号先鍵利用機器)とする。
S402〜S406、認証処理
S401bで選択した次段復号先鍵利用機器が、鍵利用システム51を構成する鍵利用機器11の機器公開鍵15を送信していない可能性もあるため、鍵利用機器11の認証部(図示せず)がCPU137により機器認証を次のようにしておこなう。
【0084】
先ず、S402では、認証用の乱数データをランダムに生成する。該認証用データを、該次段復号先鍵利用機器として選択した鍵利用機器11から受信した応答情報に含まれた機器公開鍵15により暗号化して暗号化認証用データを生成する。
【0085】
S403では、送信部94は、生成した暗号化認証用データを次段復号先鍵利用機器として選択した鍵利用機器11に、機器認証要求として通信装置により通信網52を介して送信する。
【0086】
S404では、該次段復号先鍵利用機器の鍵利用機器11の受信部90は、通信装置により通信網52を介して暗号化認証用データを受信し、認証部(図示せず)が暗号化認証用データを機器秘密鍵16でCPU137により復号する。復号した暗号化認証用データは、次段復号先鍵利用機器の鍵利用機器11の送信部94が、機器認証要求の送信元に通信装置により通信網52を介して返信する。
【0087】
S405では、機器認証要求を送信した鍵利用機器11の受信部90が、機器認証要求に対する返信があるかないかをCPU137により確認する。確認した結果、返信がない(S405,いいえ)場合、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。確認した結果、返信がある(S405,はい)場合、S406へ進む。
【0088】
S406では、機器認証要求を送信した鍵利用機器11の受信部90が、該暗号化認証用データを復号したデータを通信装置により通信網52を介して受信する。認証部は、受信した暗号化認証用データを復号したデータと、認証用データとが一致するか否かをCPU137により確認する。確認した結果、一致しない(S406、いいえ)場合には、該次段復号先鍵利用機器が該鍵利用機器11のものではない機器公開鍵15を送信したと判断し、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了する。
確認した結果、一致する(S406,はい)場合は、S408に進む。
以上のS402〜S406が認証処理である。認証処理は省略してもかまわない。
【0089】
S408、リスト生成処理
リスト生成部99は、S201で受信した復号応答情報に含まれた該復号依頼経路リスト情報に該次段復号先鍵利用機器の機器アドレス61を記憶したレコードをCPU137により追加する。次段復号先鍵利用機器の機器アドレス61は、次段復号先鍵利用機器として選択した鍵利用機器から送信された応答情報から読み出す。
【0090】
S407、復号依頼情報生成処理
該次段復号先鍵利用機器の機器認証に問題が無ければ、復号情報生成部97は、復号依頼情報に含まれたX重暗号化グループ秘密鍵(1−p)群から、該次段復号先鍵利用機器の機器公開鍵15で暗号化されたX重暗号化グループ秘密鍵(1−p)のみをCPU137により読み出す。X重暗号化グループ秘密鍵(1−p)は図8のように暗号化に使用した機器公開鍵の鍵利用機器を識別する情報75bを含む。この識別する情報75bは例えば機器アドレス61である。復号情報生成部97は、次段復号先鍵利用機器として選択された鍵利用機器11から送信された応答情報に含まれた機器アドレス61をCPU137により読み出して、読み出した機器アドレス61を、識別する情報75bに含む1つのX重暗号化グループ秘密鍵(1−p)を読み出す。次に、図18のS409へ進む。
【0091】
S409、復号依頼情報生成処理
復号情報生成部97は、S207で生成した残機器情報リスト情報に記憶された機器アドレスの数が2以上であるか否かをCPU137により判定する。判定した結果、2以上である(S409,はい)場合には、S410へ進む。
判定した結果、残機器情報リスト情報に記憶された機器アドレスの数が2未満である場合、すなわち、該次段復号先鍵利用機器が復号依頼連鎖の終点となる鍵利用機器である場合には、S413へ進む。
【0092】
S410、復号依頼情報生成処理
復号情報生成部97は、復号依頼情報に含まれたX重暗号化グループ秘密鍵(1−p)をCPU137により読み出す。復号情報生成部97は、該残機器情報リスト情報が記憶する機器アドレス61から、該次段復号先鍵利用機器として選択した鍵利用機器11以外の鍵利用機器11の機器以外の鍵利用機器11の機器アドレス61をCPU137により読み出す。復号情報生成部97は、読み出した機器アドレス61をキーとして他の機器情報57から機器公開鍵15をCPU137により読み出す。復号情報生成部97は、X重暗号化グループ秘密鍵(1−p)を読み出した機器公開鍵15により暗号化し、(X+1)重暗号化グループ秘密鍵(1−p)を生成する。(X+1)重暗号化グループ秘密鍵(1−p)は、残機器情報リスト情報が記憶する機器アドレス61の鍵利用機器から次段復号先鍵利用機器として選択した鍵利用機器11を除く鍵利用機器11に対応して生成される。
例えば、残機器情報リスト情報が記憶する機器アドレス61が、鍵利用機器iの機器アドレスiと鍵利用機器jの機器アドレスjと鍵利用機器kの機器アドレスkである場合、次段復号先鍵利用機器として鍵利用機器iが選択されているとすると、復号情報生成部97は、鍵利用機器jの機器公開鍵jによりX重暗号化グループ秘密鍵(1−p)を暗号化し、(X+1)重暗号化グループ秘密鍵(1−p)jを生成するとともに、鍵利用機器kの機器公開鍵kによりX重暗号化グループ秘密鍵(1−p)を暗号化し、(X+1)重暗号化グループ秘密鍵(1−p)kを生成する。
【0093】
S411、復号依頼情報生成処理
復号情報生成部97は、S410で生成した(X+1)重暗号化グループ秘密鍵(1−p)を連結し、1つの(X+1)重暗号化グループ秘密鍵(1−p)群をCPU137により生成する。
例えば、前記した鍵利用機器jと鍵利用機器kとの例では、(X+1)重暗号化グループ秘密鍵(1−p)jと(X+1)重暗号化グループ秘密鍵(1−p)kとを連結して、(X+1)重暗号化グループ秘密鍵(1−p)jと(X+1)重暗号化グループ秘密鍵(1−p)kとを含む1つの(X+1)重暗号化グループ秘密鍵(1−p)群を生成する。
【0094】
S412、復号依頼情報生成処理
次に、復号情報生成部97は、S411で生成した(X+1)重暗号化グループ秘密鍵(1−p)群を含む復号依頼情報をCPU137により生成する。さらに、復号情報生成部97は、生成した復号依頼情報と、S408で生成された復号依頼経路リスト情報とを含む新たな暗号化グループ秘密鍵(1−p)復号依頼情報をCPU137により生成する。S412の後、S414へ進む。
【0095】
S413、復号依頼情報生成処理
復号情報生成部97は、S407で読み出したX重暗号化グループ秘密鍵(1−p)のみを含むX重暗号化グループ秘密鍵(1−p)群をCPU137により生成し、生成したX重暗号化グループ秘密鍵(1−p)群を含む復号依頼情報をCPU137により生成する。さらに、復号情報生成部97は、生成した復号依頼情報と、S408で生成された復号依頼経路リスト情報とを含む新たな暗号化グループ秘密鍵(1−p)復号依頼情報をCPU137により生成する。
【0096】
S414、復号情報送信処理
送信部94は、S412あるいはS413で生成された新たな暗号化グループ秘密鍵(1−p)復号依頼情報を、該次段復号先鍵利用機器の機器アドレス61を宛先として、該暗号化グループ秘密鍵(1−p)復号依頼情報を通信装置により通信網52を介して送信する。
【0097】
S415、復号情報受信処理
受信部90は、S414で次段復号先鍵利用機器へ送信した暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報を待つ。受信部90は、定められた時間内に暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報が受信できなければ(S415,いいえ)、タイムアウトエラーとし、機器構成認証エラーとしてグループ秘密鍵の取得処理を終了するか、あるいは、S414を再度行い、復号応答情報の取得処理を試みる。
受信部90は、定められた時間内に暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報が次段復号先鍵利用機器から送信された場合(S415,はい)、送信された復号応答情報を通信装置により通信網52を介して受信する。受信した復号応答情報は、登録部95がCPU137によりメモリに記憶する。
【0098】
S416、復号処理
復号部100は、暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報を次段復号先鍵利用機器から受け取ると、復号応答情報に復号依頼経路リスト情報と(X−1)重暗号化グループ秘密鍵(1−p)が含まれているかどうかをCPU137により確認する。確認した結果、含まれていなければ(S416,いいえ)、不正復号依頼返信エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。確認した結果、含まれていれば(S416,はい)、S417へ進む。
【0099】
S417、復号処理
次に、復号部100は、復号応答情報に含まれた復号依頼経路リスト情報に自機の機器アドレス61が含まれていることをCPU137により確認する。含まれていなければ(S417,いいえ)不正復号依頼返信エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。
含まれている場合、グループ秘密鍵生成部98は、さらに、S205で受信した他機器要求情報に対する応答情報に含まれた機器アドレス61が、復号応答情報に含まれた復号依頼経路リスト情報に全て含まれているかどうかをCPU137により確認する。含まれていなければ(S417,いいえ)、不正復号依頼返信エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。含まれていれば(S417,はい)、S418へ進む。
【0100】
S418、復号処理
ここまでの処理でエラーがなければ、復号部100は、自己の機器情報56から機器秘密鍵16をCPU137により読み出す。グループ秘密鍵生成部98は、機器秘密鍵16により、S415で受信した復号応答情報に含まれた(X−1)重暗号化グループ秘密鍵(1−p)をCPU137により復号し、(X−2)重暗号化グループ秘密鍵(1−p)を生成する。
【0101】
S419、復号処理
復号部100は、S418で復号に失敗した(S419,いいえ)場合は、不正復号依頼返信エラーとして暗号化グループ秘密鍵(1−p)復号処理を終了し、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。復号部100は、S418で復号に成功した(S419,はい)場合は、S420へ進む。
【0102】
S420、復号処理
次に、復号部100は、S418で生成した(X−2)重暗号化グループ秘密鍵(1−p)と、S415で受信した復号応答情報に含まれた復号依頼経路リスト情報とを含む復号応答情報をCPU137により生成する。
【0103】
S421、復号処理
送信部94は、S415で生成された復号応答情報を、S201で受信した復号依頼情報の送信元に対して通信装置により通信網52を介して送信し、暗号化グループ秘密鍵(1−p)復号処理を終了して、S201へ戻り、次の暗号化グループ秘密鍵(1−p)復号依頼の受信を待つ。
【0104】
次に、図20乃至図26を用いて、鍵利用機器h、鍵利用機器i、鍵利用機器j、鍵利用機器kの4機の鍵利用機器11から構成される鍵利用システム51における、鍵利用機器hがグループ秘密鍵の復号処理をおこなう場合の、各鍵利用機器におけるグループ秘密鍵の復号処理または暗号化グループ秘密鍵(1−p)復号依頼処理の具体例を示す。該具体例において、鍵利用機器hがグループ秘密鍵の復号処理をおこなう復号元鍵利用機器の動作を行う鍵利用機器11とする。鍵利用機器i、鍵利用機器j、鍵利用機器kが復号先鍵利用機器の動作を行う鍵利用機器11とする。鍵利用機器i、鍵利用機器j、鍵利用機器kの順に暗号化グループ秘密鍵(1−p)の復号依頼をおこない、鍵利用機器kを復号依頼連鎖の終点とする。また、該具体例では正常系処理のみを示し、エラー処理については示さない。また、鍵利用機器hは、図10の構成を備える鍵利用機器11であり、鍵利用機器i〜kは、図11の構成を備える鍵利用機器11である。
【0105】
図20は、鍵利用機器hの復号依頼情報生成処理を説明する図である。
図21は、鍵利用機器iの復号依頼情報生成処理を説明する図である。
図22は、鍵利用機器jの復号依頼情報生成処理を説明する図である。
図23は、鍵利用機器kの復号依頼情報生成処理を説明する図である。
図24は、鍵利用機器jの復号処理を説明する図である。
図25は、鍵利用機器iの復号処理を説明する図である。
図26は、鍵利用機器hのグループ秘密鍵生成処理を説明する図である。
【0106】
先ず、鍵利用機器hについて図20を説明する。
鍵利用機器hは、機器選択部96により機器情報取得要求に対する応答情報を返信した鍵利用機器i、鍵利用機器j、鍵利用機器kからランダムに1つの鍵利用機器を復号先鍵利用機器として選択する。機器選択部96は、鍵利用機器iを復号先鍵利用機器とする。復号情報生成部97は、鍵利用機器iの機器公開鍵15で暗号化された二重暗号化グループ秘密鍵(1−p)hiを二重暗号化グループ秘密鍵(1−p)群hから取り出す。
次に、復号情報生成部97は、機器情報取得要求に対する応答情報を返信した鍵利用機器i、鍵利用機器j、鍵利用機器kの中から復号先鍵利用機器である鍵利用機器iを除いた、鍵利用機器j、鍵利用機器kの機器公開鍵15でそれぞれ該二重暗号化グループ秘密鍵(1−p)hiを暗号化する。暗号化した結果、復号情報生成部97は、三重暗号化グループ秘密鍵(1−p)hijと、三重暗号化グループ秘密鍵(1−p)hikとを生成する。
次に、復号情報生成部97は、生成した三重暗号化グループ秘密鍵(1−p)hijと三重暗号化グループ秘密鍵(1−p)hikとを連結し、三重暗号化グループ秘密鍵(1−p)群hiを生成する。
次に、リスト生成部99は、鍵利用機器hと鍵利用機器iの機器アドレス61を記憶した復号依頼経路リスト情報を生成する。復号情報生成部97は、生成された復号依頼経路リスト情報と三重暗号化グループ秘密鍵(1−p)群hiとから、暗号化グループ秘密鍵(1−p)復号依頼情報を生成する。送信部94は、生成された暗号化グループ秘密鍵(1−p)復号依頼情報を復号先鍵利用機器である鍵利用機器iに対して送信する。
【0107】
次に、鍵利用機器iについて図21を説明する。
鍵利用機器iの受信部90は、鍵利用機器hから送信された暗号化グループ秘密鍵(1−p)復号依頼情報を受信する。機器選択部96は、受信した暗号化グループ秘密鍵(1−p)復号依頼復号依頼情報に含まれた復号依頼経路リスト情報から、自機(鍵利用機器i)が復号依頼連鎖の終点ではないことを確認する。終点でないことを確認したら、機器選択部96は、機器情報取得要求に応答情報を返信した鍵利用機器k、鍵利用機器j、鍵利用機器hの応答情報の中から、復号依頼経路リスト情報に含まれてない機器アドレスに対応する鍵利用機器j、鍵利用機器kの機器アドレス61を読み出す。機器選択部96は、読み出した鍵利用機器j、鍵利用機器kの機器アドレス61を残機器情報リスト情報に記憶する。機器選択部96は、残機器情報リスト情報に機器アドレスが記憶された鍵利用機器i、鍵利用機器jからランダムに復号先鍵利用機器を1つ選択する。機器選択部96は、鍵利用機器jを次段復号先鍵利用機器として選択する。復号情報生成部97は、鍵利用機器hから受信した暗号化グループ秘密鍵(1−p)に含まれた三重暗号化グループ秘密鍵(1−p)群hiから、鍵利用機器jの機器公開鍵jで暗号化された三重暗号化グループ秘密鍵(1−p)hijを読み出す。
次に、リスト生成部99は、鍵利用機器hから受信した暗号化グループ秘密鍵(1−p)に含まれた復号依頼経路リスト情報に次段復号依頼先機器の機器アドレス、すなわち、鍵利用機器jの機器アドレスjを追記する。
次に、復号情報生成部97は、残機器情報リスト情報に機器アドレスが記憶された鍵利用機器j、鍵利用機器kから次段復号先鍵利用機器である鍵利用機器jを除いた鍵利用機器kの機器公開鍵kで、読み出した三重暗号化グループ秘密鍵(1−p)hijを暗号化し、四重暗号化グループ秘密鍵(1−p)hijkを生成する。
次に、復号情報生成部97は、生成した四重暗号化グループ秘密鍵(1−p)hijkのみからなる、四重暗号化グループ秘密鍵(1−p)群hijを生成する。
次に、復号情報生成部97は、該復号依頼経路リスト情報と四重暗号化グループ秘密鍵(1−p)群hijとを含む、暗号化グループ秘密鍵(1−p)復号依頼情報を生成し、次段復号依頼先機器である鍵利用機器jに対して送信する。
【0108】
次に、鍵利用機器jについて図22を説明する。
鍵利用機器iからの暗号化グループ秘密鍵(1−p)復号依頼情報を受信した鍵利用機器jの機器選択部96は、復号依頼経路リスト情報から自機(鍵利用機器j)が復号依頼連鎖の終点ではないことを確認する。終点でないことを確認できたら、機器選択部96は、機器情報取得要求に応答情報を返信した鍵利用機器k、鍵利用機器i、鍵利用機器hの応答情報の中から、受信した暗号化グループ秘密鍵(1−p)に含まれた復号依頼経路リスト情報に機器アドレスが記憶されていない鍵利用機器kの機器アドレスkを読み出す。機器選択部96は、読み出した機器アドレスkを残機器情報リスト情報に記憶する。機器選択部96は、残機器情報リスト情報中の唯一の鍵利用機器である鍵利用機器kを次段復号先鍵利用機器とし選択する。復号情報生成部97は、受信した暗号化グループ秘密鍵(1−p)復号依頼情報に含まれた四重暗号化グループ秘密鍵(1−p)群hijから、鍵利用機器kの機器公開鍵kで暗号化された四重暗号化グループ秘密鍵(1−p)hijkを読み出す。
次に、リスト生成部99は、復号依頼経路リスト情報に次段復号先鍵利用機器の機器アドレス、すなわち、鍵利用機器kの機器アドレスkを追記する。
次に、復号情報生成部97は、残機器情報リスト情報中の機器アドレスの数を算出する。残機器情報リスト情報には、機器アドレスkが1つ記憶されている。このため、残機器情報リスト情報中の機器アドレスの数は2以上では無いので、復号情報生成部97は、四重暗号化グループ秘密鍵(1−p)hijkのみからなる、四重暗号化グループ秘密鍵(1−p)群hijkを生成する。
次に、復号情報生成部97は、復号依頼経路リスト情報と四重暗号化グループ秘密鍵(1−p)群hijkとを含む暗号化グループ秘密鍵(1−p)復号依頼情報を生成する。送信部94は、生成された暗号化グループ秘密鍵(1−p)復号依頼情報を、次段復号先鍵利用機器である鍵利用機器kに対して送信する。
【0109】
次に、鍵利用機器kについて図23を説明する。
鍵利用機器kの受信部90は、鍵利用機器jから送信された暗号化グループ秘密鍵(1−p)復号依頼情報を受信する。機器選択部96は、受信した暗号化グループ秘密鍵(1−p)復号依頼情報に含まれた復号依頼経路リスト情報から自機(鍵利用機器k)が復号依頼連鎖の終点であることを確認する。終点であることを確認したら、復号部100は、受信した暗号化グループ秘密鍵(1−p)復号依頼情報に含まれた四重暗号化グループ秘密鍵(1−p)群hijkから唯一の四重暗号化グループ秘密鍵(1−p)hijkを読み出す。復号部100は、四重暗号化グループ秘密鍵(1−p)hijkを自機(鍵利用機器k)の機器秘密鍵kで復号して、三重暗号化グループ秘密鍵(1−p)hijを生成する。復号部100は、生成した三重暗号化グループ秘密鍵(1−p)hijと、受信した暗号化グループ秘密鍵(1−p)復号依頼情報に含まれた復号依頼経路リスト情報とを含む復号応答情報を生成する。送信部94は、生成された復号応答情報を、暗号化グループ秘密鍵(1−p)復号依頼情報を送信した鍵利用機器jに返信する。
【0110】
次に、鍵利用機器jについて図24を説明する。
鍵利用機器jの受信部90は、鍵利用機器kから送信された暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報を受信する。復号部100は、受信した復号応答情報に含まれた復号依頼経路リスト情報から復号依頼連鎖が終了したことを確認する。復号部100は、終了を確認したら、受信した復号応答情報に含まれた三重暗号化グループ秘密鍵(1−p)hijを、自機(鍵利用機器j)の機器秘密鍵jで復号して、二重暗号化グループ秘密鍵(1−p)hiを生成する。復号部100は、二重暗号化グループ秘密鍵(1−p)hiと、受信した復号応答頼情報に含まれた復号依頼経路リスト情報とを含む復号応答情報を生成する。送信部94は、生成された復号応答情報を、暗号化グループ秘密鍵(1−p)復号依頼情報を送信した鍵利用機器iに返信する。
【0111】
次に、鍵利用機器iについて図25を説明する。
鍵利用機器iの受信部90は、鍵利用機器jから送信された暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報を受信する。復号部100は、受信した復号応答情報に含まれた復号依頼経路リスト情報から、復号依頼連鎖が終了したことを確認する。復号部100は、終了を確認したら、受信した復号応答情報に含まれた二重暗号化グループ秘密鍵(1−p)hiを、自機(鍵利用機器i)の機器秘密鍵iで復号して、暗号化グループ秘密鍵(1−p)hを生成する。復号部100は、暗号化グループ秘密鍵(1−p)hと、受信した復号応答情報に含まれた復号依頼経路リスト情報とを含む復号応答情報を生成する。送信部94は、生成された復号応答情報を、暗号化グループ秘密鍵(1−p)復号依頼情報を送信した鍵利用機器hに返信する。
【0112】
最後に、鍵利用機器hについて図26を説明する。
鍵利用機器hの受信部90は、鍵利用機器iから送信された暗号化グループ秘密鍵(1−p)復号依頼情報に対する復号応答情報を受信する。グループ秘密鍵生成部98は、受信した復号応答情報に含まれた復号依頼経路リスト情報から復号依頼連鎖が終了したことを確認する。終了を確認したら、グループ秘密鍵生成部98は、復号応答情報に暗号化グループ秘密鍵(1−p)hと、自機(鍵利用機器h)の記憶装置9が記憶する暗号化グループ秘密鍵phを連結し、自機(鍵利用機器h)の機器秘密鍵hで復号して、グループ秘密鍵を生成する。
【0113】
以上のように、鍵利用システム51では、暗号化グループ秘密鍵(1−p)を、復号元鍵利用機器のみでは復号できないようにしているため、鍵利用システム51を構成する全ての鍵利用機器11に対して復号依頼連鎖がおこなわれ、かつ、依頼をおこなう度に機器認証をおこなっているため、グループ秘密鍵が他に漏洩することを防ぐと共に、鍵利用システム51内の機器構成の検証をおこなうことができる。
【符号の説明】
【0114】
7,9 記憶装置、8 グループ別情報、10 鍵管理機器、11 鍵利用機器、12 機器ID、15 機器公開鍵、16 機器秘密鍵、19 機器登録情報、21 暗号化グループ秘密鍵、22 二重暗号化グループ秘密鍵(1−p)群、30 グループID、31 グループ公開鍵、32 グループ秘密鍵、35 グループ鍵情報、39 グループ鍵、50 鍵運用システム、51 鍵利用システム、52 通信網、55 機器数、56 自己の機器情報、57 他の機器情報、60 機器情報、61 機器アドレス、71 暗号化グループ秘密鍵、72 暗号化グループ秘密鍵(1−p)、75,75a 二重暗号化グループ秘密鍵(1−p)、75b 識別する情報、80 読み出し部、81 暗号化グループ秘密鍵生成部、82 鍵分割部、83 二重暗号化グループ秘密鍵生成部、84 送信部、85 登録数算出部、90 受信部、91 グループ鍵情報登録部、92 機器数登録部、93 他機器要求部、94 送信部、95 登録部、96 機器選択部、97 復号情報生成部、98 グループ秘密鍵生成部、99 リスト生成部、100 復号部、137 CPU、138 バス、139 ROM、140 RAM、141 表示装置、142 K/B、143 マウス、144 通信ボード、145 FDD、146 CDD 、147 プリンタ装置、148 スキャナ装置、149 磁気ディスク装置、150 OS、151 ウィンドウシステム、152 プログラム群、153 ファイル群、310 ファクシミリ機、320 電話器、500 ゲートウェイ、501 インターネット、505 LAN。

【特許請求の範囲】
【請求項1】
共通のグループ公開鍵を利用する複数の鍵利用機器に、上記グループ公開鍵を含むグループ鍵情報を送信する鍵管理機器において、
上記グループ公開鍵とグループ秘密鍵とを記憶するとともに、上記複数の鍵利用機器の各鍵利用機器の鍵利用機器固有の機器公開鍵と鍵利用機器が通信に使用する機器アドレスとを含む機器登録情報を記憶する記憶装置と、
上記記憶装置が記憶したグループ公開鍵と、グループ秘密鍵と、各鍵利用機器の機器登録情報とを処理装置により読み出す読み出し部と、
上記読み出し部が読み出したグループ秘密鍵を、上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置により暗号化して各鍵利用機器の暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成部と、
上記暗号化グループ秘密鍵生成部が生成した各鍵利用機器の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器の暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを処理装置により生成する鍵分割部と、
上記鍵分割部が生成した各鍵利用機器の暗号化グループ秘密鍵Bを順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵Bを、入力した暗号化グループ秘密鍵Bの鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置によりさらに暗号化して、他の鍵利用機器に対応する二重暗号化グループ秘密鍵Bを生成する二重暗号化グループ秘密鍵生成部と、
上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器アドレスに宛てて、上記機器アドレスを使用する鍵利用機器の上記暗号化グループ秘密鍵Aと、上記二重暗号化グループ秘密鍵Bと、上記読み出し部が読み出したグループ公開鍵とを上記グループ鍵情報として通信装置により通信網を介して送信する送信部と
を備えたことを特徴とする鍵管理機器。
【請求項2】
上記記憶装置は、n台(n>1の整数)の鍵利用機器の上記機器登録情報を記憶し、
上記二重暗号化グループ秘密鍵生成部は、
n=2の場合、上記入力した1つの鍵利用機器の暗号化グループ秘密鍵Bに対して1つの二重暗号化グループ秘密鍵を生成し、生成した1つの二重暗号化グループ秘密鍵を含む1つの二重暗号化グループ秘密鍵Bを生成し、
n>2の場合、上記入力した1つの鍵利用機器の暗号化グループ秘密鍵Bに対してn−1個の二重暗号化グループ秘密鍵を生成し、生成したn−1個の各二重暗号化グループ秘密鍵を連結して1つの二重暗号化グループ秘密鍵Bを生成する
ことを特徴とする請求項1記載の鍵管理機器。
【請求項3】
通信網を介して接続され、共通のグループ公開鍵とグループ秘密鍵とを利用する複数の鍵利用機器を備える鍵利用システムにおいて、
上記複数の鍵利用機器の各鍵利用機器は、
他の鍵利用機器に対して暗号化されたグループ秘密鍵の復号を依頼する復号元鍵利用機器として動作する場合と、他の鍵利用機器からグループ秘密鍵の復号を依頼される復号先鍵利用機器として動作する場合との、少なくともいずれかの動作を行う鍵利用機器であり、
上記各鍵利用機器は、
自己の機器公開鍵と、自己の機器秘密鍵と、他の鍵利用機器の機器公開鍵と、上記機器公開鍵を用いて上記グループ秘密鍵を暗号化して生成された暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して生成された暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとのうちの暗号化グループ秘密鍵Aと、上記暗号化グループ秘密鍵Bを自己以外の他の鍵利用機器の機器公開鍵を用いてさらに暗号化して生成された他の鍵利用機器に対応する二重暗号化グループ秘密鍵Bとを記憶する記憶装置と、
上記他の鍵利用機器のうち1つの鍵利用機器を、上記二重暗号化グループ秘密鍵Bを復号する復号先鍵利用機器として処理装置により選択する機器選択部と、
上記機器選択部が選択した復号先鍵利用機器に対応する二重暗号化グループ秘密鍵Bと他の鍵利用機器の機器公開鍵とを処理装置により上記記憶装置から読み出し、読み出した二重暗号化グループ秘密鍵Bを上記復号先鍵利用機器と自己以外の、他の鍵利用機器の機器公開鍵によりさらに処理装置により暗号化して三重暗号化グループ秘密鍵Bを生成し、生成した三重暗号化グループ秘密鍵Bを含む復号依頼情報を処理装置により生成し、生成した復号依頼情報を通信装置により通信網を介して復号先鍵利用機器へ送信する復号情報生成部と、
上記復号先鍵利用機器により上記復号先鍵利用機器に対応する二重暗号化グループ秘密鍵Bが復号された暗号化グループ秘密鍵Bを含む復号応答情報を上記復号先鍵利用機器から通信装置により通信網を介して受信し、受信した復号応答情報が含む暗号化グループ秘密鍵Bと、上記記憶装置が記憶した暗号化グループ秘密鍵Aとを処理装置により結合して暗号化グループ秘密鍵を生成し、生成した暗号化グループ秘密鍵を上記記憶装置が記憶した機器秘密鍵を用いて処理装置により復号してグループ秘密鍵を生成するグループ秘密鍵生成部と
を備えて、上記復号元鍵利用機器として動作することを特徴とする鍵利用システム。
【請求項4】
上記各鍵利用機器は、さらに、
他の鍵利用機器が記憶した機器公開鍵の取得を要求する他機器要求情報を処理装置により生成し、生成した他機器要求情報を通信装置により通信網を介して放送する他機器要求部と、
上記他機器要求部が送信した他機器要求情報に対する上記他の鍵利用機器が記憶した機器公開鍵と他の鍵利用機器の機器アドレスとを含む応答情報を上記他の鍵利用機器より通信装置により通信網を介して受信する受信部とを備え、
上記記憶装置は、上記受信部が受信した応答情報が含む他の鍵利用機器の機器公開鍵を処理装置により記憶し、
上記機器選択部は、上記受信部が受信した応答情報を1つ選択し、選択した応答情報が含む機器アドレスの鍵利用機器を上記復号先鍵利用機器として選択する
ことを特徴とする請求項3記載の鍵利用システム。
【請求項5】
上記記憶装置は、上記受信部が受信した応答情報が含む他の鍵利用機器の機器アドレスを処理装置により記憶し、
上記各鍵利用機器は、
上記機器選択部が選択した応答情報が含む機器アドレスと、上記記憶装置が記憶した機器アドレスとを含む復号依頼経路リスト情報を処理装置により生成するリスト生成部を備え、
上記復号情報生成部は、上記リスト生成部が生成した復号依頼経路リスト情報を、上記復号依頼情報とともに通信装置により通信網を介して復号先鍵利用機器へ送信する
ことを特徴とする請求項4記載の鍵利用システム。
【請求項6】
上記機器選択部は、上記受信部が受信した応答情報の件数を処理装置により求め、
上記復号情報生成部は、
上記機器選択部が求めた件数が1の場合、上記機器選択部が選択した復号先鍵利用機器に対応する二重暗号化グループ秘密鍵Bを上記三重暗号化グループ秘密鍵として含む復号依頼情報を処理装置により生成する
ことを特徴とする請求項5記載の鍵利用システム。
【請求項7】
上記受信部は、他の鍵利用機器から送信された復号依頼情報と復号依頼経路リスト情報とを通信装置により通信網を介して受信し、
上記機器選択部は、上記受信部が受信した応答情報に含まれるが上記受信部が受信した復号依頼経路リスト情報には含まれない機器アドレスの件数を処理装置により求め、
求めた件数が2以上の場合、上記応答情報に含まれるが上記復号依頼経路リスト情報には含まれない機器アドレスの中から1つの機器アドレスを処理装置により選択し、選択した機器アドレスの鍵利用機器を新たな復号先鍵利用機器として決定し、
求めた件数が1の場合、上記応答情報に含まれるが上記復号依頼経路リスト情報には含まれない機器アドレスの鍵利用機器を新たな復号先鍵利用機器として決定し、
上記リスト生成部は、上記機器選択部が決定した上記新たな復号先鍵利用機器の機器アドレスを上記復号依頼経路リスト情報に処理装置により追加し、新たな復号依頼経路リスト情報を生成し、
上記各鍵利用機器は、さらに、
上記機器選択部が求めた件数が0の場合、上記受信部が受信した復号依頼情報が含む三重暗号化グループ秘密鍵Bを上記記憶装置が記憶する機器秘密鍵により処理装置により復号して暗号化グループ秘密鍵を生成し、生成した暗号化グループ秘密鍵を含む復号応答情報を処理装置により生成し、生成した復号応答情報を上記復号依頼情報を送信した鍵利用機器に通信装置により通信網を介して送信する復号部
を備えることにより、上記復号先鍵利用機器として動作することを特徴とする請求項6記載の鍵利用システム。
【請求項8】
共通のグループ公開鍵を利用する複数の鍵利用機器と、上記複数の鍵利用機器を通信網を介して接続し、接続した複数の鍵利用機器の各鍵利用機器に上記グループ公開鍵を含むグループ鍵情報を送信する鍵管理機器とを備えた鍵運用システムにおいて、
上記鍵管理機器は、
上記グループ公開鍵とグループ秘密鍵とを記憶するとともに、上記各鍵利用機器の鍵利用機器固有の機器公開鍵と鍵利用機器が通信に使用する機器アドレスとを含む機器登録情報を記憶する記憶装置と、
上記記憶装置が記憶したグループ秘密鍵と、各鍵利用機器の機器登録情報とを処理装置により読み出す読み出し部と、
上記読み出し部が読み出したグループ秘密鍵を、上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置により暗号化して各鍵利用機器の暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成部と、
上記暗号化グループ秘密鍵生成部が生成した各鍵利用機器の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器の暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを処理装置により生成する鍵分割部と、
上記鍵分割部が生成した各鍵利用機器の暗号化グループ秘密鍵Bを順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵Bを、入力した暗号化グループ秘密鍵Bの鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置によりさらに暗号化して他の鍵利用機器に対応する二重暗号化グループ秘密鍵を生成する二重暗号化グループ秘密鍵生成部と、
上記読み出し部が読み出した各鍵利用機器の機器登録情報が含む機器アドレスに宛てて、上記機器アドレスを使用する鍵利用機器の上記暗号化グループ秘密鍵Aと、二重暗号化グループ秘密鍵Bと、上記読み出し部が読み出したグループ公開鍵とを上記グループ鍵情報として通信装置により通信網を介して送信する送信部とを備え、
上記各鍵利用機器は、
上記グループ鍵情報を記憶する記憶装置と、
上記送信部が送信したグループ鍵情報を通信装置により通信網を介して受信する受信部と、
上記受信部が受信したグループ鍵情報を上記記憶装置に処理装置により記憶するグループ鍵情報登録部と
を備えたことを特徴とする鍵運用システム。
【請求項9】
上記鍵管理機器は、上記記憶装置が記憶した機器登録情報の数を処理装置により求める登録数算出部を備え、
上記送信部は、上記登録数算出部が求めた機器登録情報の数を上記複数の鍵利用機器に通信装置により通信網を介して送信し、
上記各鍵利用機器は、上記送信部が送信した機器登録情報の数を処理装置により上記記憶装置に記憶する機器数登録部を備えた
ことを特徴とする請求項8記載の鍵運用システム。
【請求項10】
共通のグループ公開鍵を利用する複数の鍵利用機器に、上記グループ公開鍵を含むグループ鍵情報を送信する鍵管理機器の鍵管理方法において、
上記グループ公開鍵とグループ秘密鍵とを記憶するとともに、上記複数の鍵利用機器の各鍵利用機器の鍵利用機器固有の機器公開鍵と鍵利用機器が通信に使用する機器アドレスとを含む機器登録情報を処理装置により記憶装置に記憶する記憶工程と、
読み出し部により、上記記憶工程で記憶したグループ公開鍵と、グループ秘密鍵と、各鍵利用機器の機器登録情報とを処理装置により読み出す読み出し工程と、
暗号化グループ秘密鍵生成部により、上記読み出し工程で読み出したグループ秘密鍵を、上記読み出し工程で読み出した各鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置により暗号化して各鍵利用機器の暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成工程と、
鍵分割部により、上記暗号化グループ秘密鍵生成工程で生成した各鍵利用機器の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器の暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを処理装置により生成する鍵分割工程と、
二重暗号化グループ秘密鍵生成部により、上記鍵分割工程で生成した各鍵利用機器の暗号化グループ秘密鍵Bを順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵Bを、入力した暗号化グループ秘密鍵Bの鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置によりさらに暗号化して、他の鍵利用機器に対応する二重暗号化グループ秘密鍵Bを生成する二重暗号化グループ秘密鍵生成工程と、
送信部により、上記読み出し工程で読み出した各鍵利用機器の機器登録情報が含む機器アドレスに宛てて、上記機器アドレスを使用する鍵利用機器の上記暗号化グループ秘密鍵Aと、上記二重暗号化グループ秘密鍵Bと、上記読み出し工程で読み出したグループ公開鍵とを上記グループ鍵情報として通信装置により通信網を介して送信する送信工程と
を有することを特徴とする鍵管理方法。
【請求項11】
共通のグループ公開鍵を利用する複数の鍵利用機器に、上記グループ公開鍵を含むグループ鍵情報を送信することをコンピュータに実行させる鍵管理プログラムにおいて、
上記グループ公開鍵とグループ秘密鍵とを記憶するとともに、上記複数の鍵利用機器の各鍵利用機器の鍵利用機器固有の機器公開鍵と鍵利用機器が通信に使用する機器アドレスとを含む機器登録情報を処理装置により記憶装置に記憶する記憶処理と、
読み出し部により、上記記憶処理で記憶したグループ公開鍵と、グループ秘密鍵と、各鍵利用機器の機器登録情報とを処理装置により読み出す読み出し処理と、
暗号化グループ秘密鍵生成部により、上記読み出し処理で読み出したグループ秘密鍵を、上記読み出し処理で読み出した各鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置により暗号化して各鍵利用機器の暗号化グループ秘密鍵を生成する暗号化グループ秘密鍵生成処理と、
鍵分割部により、上記暗号化グループ秘密鍵生成処理で生成した各鍵利用機器の暗号化グループ秘密鍵をあらかじめ設定された所定の割合p(0<p<1)により2分割して各鍵利用機器の暗号化グループ秘密鍵Aと暗号化グループ秘密鍵Bとを処理装置により生成する鍵分割処理と、
二重暗号化グループ秘密鍵生成部により、上記鍵分割処理で生成した各鍵利用機器の暗号化グループ秘密鍵Bを順次入力して、入力した鍵利用機器の暗号化グループ秘密鍵Bを、入力した暗号化グループ秘密鍵Bの鍵利用機器以外の他の鍵利用機器の機器登録情報が含む機器公開鍵を用いて処理装置によりさらに暗号化して、他の鍵利用機器に対応する二重暗号化グループ秘密鍵Bを生成する二重暗号化グループ秘密鍵生成処理と、
送信部により、上記読み出し処理で読み出した各鍵利用機器の機器登録情報が含む機器アドレスに宛てて、上記機器アドレスを使用する鍵利用機器の上記暗号化グループ秘密鍵Aと、上記二重暗号化グループ秘密鍵Bと、上記読み出し処理で読み出したグループ公開鍵とを上記グループ鍵情報として通信装置により通信網を介して送信する送信処理と
を有することを特徴とする鍵管理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2010−200210(P2010−200210A)
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願番号】特願2009−45263(P2009−45263)
【出願日】平成21年2月27日(2009.2.27)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】