説明

秘密情報管理システム、秘密情報管理装置及びプログラム

【課題】暗号鍵等の秘密情報をより一層強固に保護することのできる秘密情報管理システムを提供する。
【解決手段】PDA10は、秘密分散法を用いて暗号鍵から複数の分散情報を生成し、分散情報記憶部111に格納する分散情報生成部110と、秘密分散法を用いて分散情報から暗号鍵を復元する暗号鍵復元部112と、を備える。分散情報生成部110は、通信部113を介して、複数の携帯機器から乱数を取得し、取得した各乱数に対する重み付け値を設定すると共に、取得した各乱数及び各乱数に対応する重み付け値を使用して分散情報を生成する。また、暗号鍵復元部112は、通信部113を介して各携帯機器から乱数を取得し、取得した各乱数を使用して暗号鍵を復元するための処理を行うが、その際、取得した各乱数に対応する重み付け値の合計が閾値に達した場合に限り、暗号鍵が復元可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、秘密分散法を用いて、暗号鍵等の秘密情報を保護する技術に関する。
【背景技術】
【0002】
近年、科学技術の発達によって、PDA(携帯情報端末)、携帯電話、デジタルカメラ等の携帯機器の高機能化・小型化が益々進展している。かかる高機能化により、1台の携帯機器に大量の情報を記憶して高度な情報処理を行うことが可能になり、また、小型化により、ユーザは携帯機器を持ち歩いて様々な場面で使用する機会が増えている。
【0003】
その一方、個人情報や企業の非公開情報が流出してしまうことに対する社会的な関心が高まってきており、携帯機器を紛失したり、あるいは盗難にあったりした場合に、個人情報や非公開情報が漏洩しないように対策を講じる必要性が増している。
【0004】
紛失等した携帯機器から個人情報や非公開情報が漏洩しないようにするため、一般的には、使用の際にパスワードの入力が必要となるように携帯機器を設定したり、携帯機器に保存する情報を予めパスワードに基づいて暗号化しておく等の対策が考えられる。
【0005】
上記の対策により、携帯機器の使用や携帯機器に保存されている情報の閲覧等を行うためには、パスワードの入力を必要とするため、携帯機器が紛失等した場合でも、当該携帯機器に保存している情報の漏洩を防止できる一定の効果があるといえる。
【0006】
しかしながら、パスワード入力のみによる情報の漏洩防止では、以下のような理由もあり、決して十分な対策であると言い切ることはできない。先ず、第1の理由として、人間が記憶できるパスワードはせいぜい10文字程度が限度であることが挙げられる。つまり、第三者がパスワードとして可能性のある全ての文字の組み合わせを機械的に総当たりで試すことで、設定されたパスワードにたどり着くことができるということである。さらに、第2の理由として、人間が設定するパスワードは暗号学的な乱数とは異なり、使われやすい文字の組み合わせに偏る傾向があるということが挙げられる。このことから、情報を不正に読み出そうとする第三者は、使われやすい文字の組み合わせを予め想定して試すことより、さらに容易に設定されたパスワードにたどり着くことが可能になる。
【0007】
例えば、特許文献1には、パスワードの設定による情報漏洩防止に代わる個人情報の保護に関する技術が提案されている。この技術では、携帯機器が記憶する情報を暗号化された暗号文にしておき、暗号文を復号するための復号鍵から秘密分散法に基づいて複数の分散情報を生成して、生成した分散情報を当該携帯機器とは異なる他の機器に分散して記憶させておく。携帯機器が記憶する暗号文を復号するためには、携帯機器が記憶している分散情報と他の機器が記憶している分散情報を所定個数以上揃え、これらの分散情報から秘密分散法に基づいて復号鍵を生成する必要がある。そのため、携帯機器を紛失したり、盗難にあった場合でも、他の機器が記憶している分散情報が安全に管理されていれば、携帯機器が記憶している暗号文が復号されてしまうといった事態は回避されるといえる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】国際公開第2005/104430号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
上記特許文献1で開示される技術では、暗号文を復号するのに必要な分散情報を記憶している携帯機器や他の機器において、それぞれ記憶している分散情報の重要度は均等となっている。つまり、特許文献1では、機器によって紛失や盗難にあう可能性が異なることまでの考慮はされていない。
【0010】
例えば、特許文献1には、携帯機器がPDA、他の3つの機器がそれぞれ、眼鏡に付されたICタグ、コートに付されたICタグ及び腕時計に付されたICタグである場合、PDAを含めた3台の機器が通信可能であれば、PDAに記憶されている暗号文が復号できるという具体例が記載されている。
【0011】
ユーザの使用環境にも依存するが、一般に、腕時計と比べて、PDA、眼鏡、コートは、紛失や盗難にあうおそれが高いと考えられる。しかし、特許文献1の上記の例でいえば、PDA、眼鏡、コートを入手した悪意のある第三者は、PDAに記憶されている暗号文を復号して、情報を見ることができてしまう。
【0012】
本発明は、上記問題を解決すべくなされたものであり、暗号鍵等の秘密情報をより一層強固に保護するための秘密情報管理システム、秘密情報管理装置及びプログラムを提供するこを目的とする。
【課題を解決するための手段】
【0013】
本発明に係る秘密情報管理システムは、
秘密情報管理装置と、携帯機器とを備える秘密情報管理システムであって、
前記秘密情報管理装置は、
前記携帯機器と所定のネットワークを介してデータ通信を行う第1通信手段と、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段と、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段と、を備え、
前記携帯機器は、
前記秘密情報管理装置と前記ネットワークを介してデータ通信を行う第2通信手段と、
分散処理用データを記憶する第2記憶手段と、を備え、
前記分散情報生成手段は、前記第1通信手段を介して各携帯機器の前記分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記第1通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データに対応する前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、ことを特徴とする。
【0014】
前記分散情報生成手段及び前記秘密情報復元手段で使用する秘密分散法には、(k,n)閾値秘密分散法と(n,n)閾値秘密分散法とが含まれている、ことが好ましい。
【0015】
また、好ましくは、前記分散処理用データは乱数であり、その場合、前記秘密情報管理装置は、乱数を生成する乱数生成手段と、該乱数生成手段で生成された乱数を前記第1通信手段を介して前記各携帯機器に配信する乱数配信手段と、をさらに備え、前記各携帯機器では、前記第2通信手段により前記秘密情報管理装置から配信された乱数が受信され、受信された乱数は、前記分散処理用データとして前記第2記憶手段に格納される、ようにしてもよい。
【0016】
あるいは、前記各携帯機器は、乱数を生成する乱数生成手段をさらに備え、該乱数生成手段で生成された乱数は、前記分散処理用データとして前記第2記憶手段に格納される、ようにしてもよい。
【0017】
前記秘密情報として、例えば、データに暗号処理を施すための暗号鍵が該当する。
【0018】
前記携帯機器はICタグであってもよい。
【0019】
また、本発明に係る秘密情報管理装置は、
携帯機器と所定のネットワークを介してデータ通信を行う通信手段と、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段と、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段と、を備え、
前記分散情報生成手段は、前記通信手段を介して、複数の携帯機器から分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データに対応する前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、ことを特徴とする。
【0020】
上記構成の秘密情報管理装置において、前記分散情報生成手段及び前記秘密情報復元手段で使用する秘密分散法には、(k,n)閾値秘密分散法と(n,n)閾値秘密分散法とが含まれている、ことが好ましい。
【0021】
また、前記分散処理用データは乱数であることが好ましく、その場合、前記秘密情報管理装置は、乱数を生成する乱数生成手段と、該乱数生成手段で生成された乱数を前記通信手段を介して前記各携帯機器に配信する乱数配信手段と、をさらに備えるようにしてもよい。
【0022】
上記構成の秘密情報管理装置において、前記秘密情報として、例えば、データに暗号処理を施すための暗号鍵が該当する。
【0023】
また、本発明に係るプログラムは、
コンピュータを、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段、として機能させ、
前記分散情報生成手段は、所定のネットワークを介してデータ通信を行う通信手段を介して、複数の携帯機器から分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データの前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、ことを特徴とする。
【発明の効果】
【0024】
以上の如く、本発明によれば、暗号鍵等の秘密情報をより一層強固に保護することが可能になる。
【図面の簡単な説明】
【0025】
【図1】本発明の実施形態1に係る秘密情報管理システムの全体構成を示す図である。
【図2】実施形態1に係るPDAの機能構成を示すブロック図である。
【図3】実施形態1に係る携帯機器の機能構成を示すブロック図である。
【図4】PDAの分散情報記憶部及び各携帯機器の乱数記憶部に記憶されるデータと、これら記憶データ間の関係を示す図である。
【図5】乱数配信処理の手順を示すフローチャートである。
【図6】分散情報生成処理の手順を示すフローチャートである。
【図7】暗号鍵復元処理の手順を示すフローチャートである。
【図8】実施形態2に係るPDAの機能構成を示すブロック図である。
【図9】実施形態2に係る携帯機器の機能構成を示すブロック図である。
【図10】実施形態3に係るPDAの機能構成を示すブロック図である。
【発明を実施するための形態】
【0026】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【0027】
(実施形態1)
図1は、本発明の実施形態1に係る秘密情報管理システムの全体構成を示す図である。図1に示すように、本実施形態の秘密情報管理システムは、秘密情報管理装置としてのPDA(携帯情報端末)10と、複数の携帯機器(携帯電話20、デジタルカメラ30、腕時計40)とから構成され、それぞれは、所定のデータ通信網であるネットワーク50に接続するための無線通信機能を備えている。
【0028】
図2は、PDA10の機能構成を示すブロック図である。PDA10は、入力部101と、表示部102と、機器制御部103と、バッファ104と、暗号データ記憶部105と、暗号処理部106と、乱数生成部107と、乱数配信部108と、暗号鍵生成部109と、分散情報生成部110と、分散情報記憶部111と、暗号鍵復元部112と、通信部113と、を備える。
【0029】
入力部101は、キーパッドやタッチパネル等から構成され、ユーザからの入力操作を受け付ける処理を行う。表示部102は、液晶ディスプレイ(LCD)やLEDディスプレイ等から構成され、機器制御部103から供給される文字や画像等のデータを表示する。
【0030】
機器制御部103は、入力部101で受け付けた入力操作に基づく処理を実行したり、処理結果を表示部102へ表示したり等、PDA10が本来的に(従来から)備える機能等を実現するための各種制御を行う。
【0031】
バッファ104は、機器制御部103が行う計算や各種制御に必要なデータを平文で格納しておくためのメモリである。暗号データ記憶部105は、バッファ104に格納されている平文データを暗号化したデータ(暗号データ)を記憶するメモリである。暗号処理部106は、バッファ104に格納されている平文データを暗号化して暗号データ記憶部105に格納したり、暗号データ記憶部105に記憶されている暗号データを平文データに復号してバッファ104に格納する処理等を行う。
【0032】
乱数生成部107は、周知の方法により、暗号学的に安全性が保証される乱数を生成する。乱数配信部108は、乱数生成部107が生成した乱数を通信部113を介して、ネットワーク50に送信し、携帯電話20、デジタルカメラ30、腕時計40に配信する。
【0033】
暗号鍵生成部109は、暗号処理部106で暗号化や復号処理を行う場合に必要となる暗号鍵を生成する。分散情報生成部110は、(k,n)閾値秘密分散法と(n,n)閾値秘密分散法を使用した演算処理を行うことで、暗号鍵生成部109が生成した暗号鍵から分散情報を生成する。この分散情報の生成には、詳細は後述するが、携帯電話20、デジタルカメラ30、腕時計40がそれぞれ記憶している乱数が必要となる。これらの乱数は、PDA10の要求に応じて、各携帯機器から送信され、PDA10はネットワーク50を介して、これらの乱数を受信する。分散情報記憶部111は、分散情報生成部110が生成した分散情報を記憶するメモリである。
【0034】
暗号鍵復元部112は、分散情報記憶部111に格納されている分散情報と、受信した各携帯機器からの乱数と、に基づいて、暗号鍵を復元し、暗号処理部106に供給する。
【0035】
通信部113は、ネットワークカード等を備え、ネットワーク50を介した他の携帯機器(携帯電話20、デジタルカメラ30、腕時計40)との通信接続が確立しているか否か等の通信接続状態の監視、乱数配信部108からの乱数の送信、ネットワーク50から受信した乱数の分散情報生成部110や暗号鍵復元部112への出力等、ネットワーク50を介した他の携帯機器との通信全般を管理する。
【0036】
図3は、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)の機能構成を示すブロック図である。なお、ここでは、主として、本実施形態の秘密情報管理システムに特化した機能(以下「システム特有機能」と称する。)のみについて図示及び説明し、その他、各携帯機器が従来から備える機能については説明を省略する。また、本実施形態において、各携帯機器におけるシステム特有機能は同一であるため、図3のブロック図を用いて、各携帯機器のシステム特有機能を一括して説明する。
【0037】
図3に示すように、各携帯機器は、入力部201と、表示部202と、機器制御部203と、固有ID記憶部204と、乱数記憶部205と、通信部206と、を備える。
【0038】
入力部201は、キーパッド、ボタン、タッチパネル等から構成され、ユーザからの入力操作を受け付ける処理を行う。表示部202は、液晶ディスプレイ(LCD)やLEDディスプレイ等から構成され、機器制御部203から供給される文字や画像等のデータを表示する。
【0039】
機器制御部203は、入力部201で受け付けた入力操作に基づく処理を実行したり、処理結果を表示部202へ表示したり等、当該携帯機器が本来的に(従来から)備える機能等を実現するための各種制御を行う。
【0040】
固有ID記憶部204は、当該携帯機器を他の携帯機器と識別するための固有IDを記憶する。固有IDは、製造段階で各携帯機器に割り振られ、固有ID記憶部204に予め書き込まれているものとする。一般に、ネットワーク通信機能を有する機器には、アドレス(IPアドレスやMACアドレス等)が割り振られている。したがって、固有IDは、ネットワーク50において各携帯機器に割り振られたアドレスにしても構わない。但し、本実施形態では、本発明の特徴を表すため、ネットワーク50におけるアドレスとは別個なものにしている。
【0041】
乱数記憶部205は、PDA10から配信され、通信部206を介してネットワーク50から受信した乱数を記憶する。PDA10から乱数の要求を受けると、乱数記憶部205に記憶された乱数が読み出され、通信部206を介してネットワーク50に送信される。
【0042】
通信部206は、ネットワーク50を介したPDA10との通信接続が確立しているか否か等の通信接続状態の監視や機器制御部203、固有ID記憶部204、乱数記憶部205が関わるデータのネットワーク50への送受信等、ネットワーク50を介した通信全般を管理する。
【0043】
図4は、PDA10の分散情報記憶部111、各携帯機器の乱数記憶部205に記憶されるデータと、これら記憶データ間の関係を示す図である。ここで、図中の“(+)”は、排他的論理和を示す演算子である。
【0044】
下記数式1は、本実施形態で使用する(k,n)閾値秘密分散法に係る計算式であり、暗号鍵を4つの分散情報に分割して、その中から3つの分散情報があれば元の暗号鍵を復元できることを示す。
【0045】
[数式1]
F(X)=s+a・x+a・x
s:暗号鍵
:乱数
:乱数
【0046】
下記数式2及び3は、本実施形態で使用する(n,n)閾値秘密分散法に係る計算式であり、数式2は分散情報を生成するための計算式であり、数式3は分散情報から元の情報を復元するための計算式である。数式2及び3で扱う値は、数式1により分割された4つの分散情報である。4つの分散情報は、数式2によって、それぞれが2つずつの分散情報に分割され、分割された2つずつ4組の分散情報が集まると、数式3によって元の4つの分散情報に復元される。なお、数式2及び3における“(+)”は、排他的論理和を示す演算子である。
【0047】
[数式2]
G(m)=F(m)(+)R
G(m)=F(m)(+)R
G(m)=F(m)(+)R
G(m)=F(m)(+)R
:乱数(携帯電話20)
:乱数(デジタルカメラ30)
:乱数(腕時計40)
【0048】
[数式3]
F(m)=G(m)(+)R
F(m)=G(m)(+)R
F(m)=G(m)(+)R
F(m)=G(m)(+)R
:乱数(携帯電話20)
:乱数(デジタルカメラ30)
:乱数(腕時計40)
【0049】
PDA10の暗号鍵生成部109で生成した暗号鍵は、分散情報生成部110によって、上記数式1に基づいて、4つの分散情報に分割される。数式1において、sは暗号鍵生成部109で生成した暗号鍵であり、aとaは暗号学的に安全性が保証できる乱数である。4つの分散情報は、数式1の変数xに適当な値m、m、m、mを代入して計算し、F(m)、F(m)、F(m)、F(m)とする。
【0050】
数式1を使用して分割された4つの分散情報F(m)、F(m)、F(m)、F(m)は、分散情報生成部110により、数式2に基づいて、さらに2つずつの分散情報に分割される。数式2において、Rは携帯電話20の乱数記憶部205に記憶されている乱数であり、Rはデジタルカメラ30の乱数記憶部205に記憶されている乱数であり、Rは腕時計40の乱数記憶部205に記憶されている乱数である。数式2の計算結果は、G(m)、G(m)、G(m)、G(m)となる。即ち、F(m)はG(m)とRの2つの分散情報に分割され、F(m)はG(m)とRの2つの分散情報に分割され、F(m)はG(m)とRの2つの分散情報に分割され、F(m)はG(m)とRの2つの分散情報に分割される。
【0051】
図4では、数式2を使用してF(m)から分割した分散情報G(m)504と乱数R、F(m)から分割した分散情報G(m)507と乱数R、F(m)から分割した分散情報G(m)510と乱数R、F(m)から分割した分散情報G(m)513と乱数Rが、PDA10の分散情報記憶部111と各携帯機器の乱数記憶部205とに記憶されている様子が示されている。
【0052】
暗号鍵sの復元は、暗号鍵復元部112で行われる。具体的には、数式3を使用した計算と、連立方程式を解くことによる数式1の導出によって行われる。
【0053】
数式3は、数式2を使用して分割した分散情報から分散情報F(m)、F(m)、F(m)、F(m)を復元するための計算式である。分散情報F(m)を復元するには、分散情報G(m)と乱数R、分散情報F(m)を復元するには、分散情報G(m)と乱数R、分散情報F(m)を復元するには、分散情報G(m)と乱数R、分散情報F(m)を復元するには、分散情報G(m)と乱数Rが必要になる。
【0054】
図4に示すように、PDA10は、分散情報G(m)504、G(m)507、G(m)510、G(m)513を分散情報記憶部111に記憶するものの、乱数R〜Rを記憶していない。したがって、分散情報F(m)を復元するには、携帯電話20と通信して、乱数Rを取得する必要があり、分散情報F(m)を復元するには、デジタルカメラ30と通信して、乱数Rを取得する必要があり、分散情報F(m)とF(m)を復元するには、腕時計40と通信して、乱数Rを取得する必要がある。
【0055】
また、PDA10は、乱数Rを記憶しているのが携帯電話20であり、乱数Rを記憶しているのがデジタルカメラ30であり、乱数Rを記憶しているのが腕時計40であることを判別できる必要がある。このため、分散情報記憶部111には、各携帯機器の固有IDも記憶される。
【0056】
図4において、固有IDN502、固有IDN505、固有IDN508,511は、分散情報G(m)504、G(m)507、G(m)510、G(m)513を各携帯機器と関連付けるための識別情報(固有ID)である。PDA10は、分散情報を生成する際、各携帯機器から乱数と共に固有IDを取得する。取得した各携帯機器の固有IDは、分散情報記憶部111に分散情報G(m)504、G(m)507、G(m)510、G(m)513と同じタイミングで格納される。
【0057】
暗号鍵復元部112は、数式3を使用して分散情報F(m)、F(m)、F(m)、F(m)を復元した後、復元した分散情報を使用した連立方程式を解くことで、数式1の関数を導出し、暗号鍵sを復元する。連立方程式を立てるには、分散情報F(m)、F(m)、F(m)、F(m)に対応するm、m、m、mを必要とするが、これらは、分散情報生成部110により、分散情報記憶部111に格納されている。図4では、これらを分散情報m503、m506、m509、m512として表している。
【0058】
(k,n)閾値秘密分散法では、数式1で示した多項式の変数xへ適当な値を代入してF(x)を計算すれば、秘密情報を任意の個数の分散情報に分割することが可能である。また、多項式の次元を適切に選択することによって、分散情報を何個以上集めれば秘密情報を復元できるかといった条件を可変にすることが可能である。
【0059】
本実施形態では、暗号鍵sを秘密情報とし、暗号鍵sの分割数nを4、暗号鍵sを復元するための閾値kを3としているが、これはあくまで一例であり、ネットワーク50に接続する秘密情報管理装置及び携帯機器の増減や使用環境に応じて、適宜設定した分割数や閾値で運用することができる。設定した分割数及び閾値は、図4に示すように、それぞれ分割数n501及び閾値k500として、PDA10の分散情報記憶部111に格納される。
【0060】
図4に示すように、本実施形態では、分散情報F(m)と分散情報F(m)の復元には、両方とも腕時計40の乱数記憶部205に記憶されている乱数Rが必要となっている。つまり、暗号鍵sを復元するための数式1の関数の導出において、乱数Rが2つ分の重みを持っていることになる。本実施形態では、暗号鍵sが4つの分散情報に分割され、暗号鍵sを復元するためには、3つ以上の分散情報を必要とする。そのため、PDA10の暗号データ記憶部105に記憶されている暗号データを復号するためには、PDA10は、少なくとも腕時計40と通信して、乱数Rを入手する必要があり、さらに携帯電話20又はデジタルカメラ30と通信して、乱数R又はRを入手する必要がある。
【0061】
例えば、PDA10が、携帯電話20やデジタルカメラ30とネットワーク50を介して通信可能であり、腕時計40とは通信不可能な状況下では、PDA10は、暗号鍵sを復元するための分散情報を2つまでしか復元することができない。そのため、PDA10は、暗号データ記憶部105に格納している暗号データを復号することができない。これは、腕時計40が安全に管理されていれば、PDA10、携帯電話20及びデジタルカメラの全てを第三者に不正に取得されたとしても、PDA10に保存されている情報は保護され、漏洩しないことを意味する。
【0062】
また、例えば、PDA10が、腕時計40とネットワーク50を介して通信可能であるが、携帯電話20及びデジタルカメラ30とは通信不可能な状況下においても、PDA10は、暗号鍵sを復元するための分散情報を2つまでしか復元することができない。これは、携帯電話20とデジタルカメラ30が安全に管理されていれば、PDA10及び腕時計40の両方を第三者に不正に取得されたとしても、PDA10に保存されている情報は保護され、漏洩しないことを意味する。
【0063】
本実施形態では、腕時計40の乱数記憶部205に記憶されている乱数Rには、(k,n)閾値秘密分散法により2つ分の重み付けが割り振られているが、分散情報の個数を変更して、携帯電話20、デジタルカメラ30及び腕時計40がそれぞれ記憶している乱数R、R及びRに割り振る重み付けを変更することも可能である。また、数式1を変更すれば、暗号鍵sを復元するのに必要な分散情報の個数も変更でき、秘密情報管理装置及び携帯機器の台数が、図1で示したシステム構成とは異なる場合でも対応することが可能である。
【0064】
続いて、本実施形態の秘密情報管理システムにおける各処理(乱数配信処理、分散情報生成処理、暗号鍵復元処理)の手順を図5〜図7のフローチャートを用いて説明する。
【0065】
図5は、乱数配信処理の手順を示すフローチャートである。先ず、PDA10及び携帯機器(携帯電話20、デジタルカメラ30又は腕時計40)の双方が、それぞれ携帯機器及びPDA10との通信接続を確立する(ステップS101、S102)。通信接続の確立は、PDA10の通信部113がネットワーク50に接続している携帯機器に対して接続の問い合わせを行い、携帯機器の通信部206が、この問い合わせに対して通信可能であることを応答することで行われる。
【0066】
携帯機器との通信接続が確立すると、PDA10の乱数生成部107は、暗号学的に安全性が保証された乱数を生成する(ステップS103)。乱数配信部108は、乱数生成部107により生成された乱数を通信部113を介してネットワーク50に送信する(ステップS104)。
【0067】
携帯機器の通信部206は、PDA10から送信された乱数を受信し、受信した乱数を乱数記憶部205に格納する(ステップS105)。ここで、例えば、当該携帯機器が携帯電話20ならば、図4に示すように乱数Rが乱数記憶部205に格納される。
【0068】
PDA10の通信部113は、ネットワーク50に接続する他の携帯機器がまだ存在するか否かをチェックする(ステップS106)。他の携帯機器が存在する場合(ステップS106でYES)、ステップS101に処理が戻り、PDA10は、新たに接続を確立した携帯機器(例えば、デジタルカメラ30)に対して、新たに生成した乱数を配信する。携帯機器の通信部206は、PDA10から送信された乱数を受信し、受信した乱数(例えば乱数R)を乱数記憶部205に格納する。
【0069】
PDA10の通信部113により、さらに他の携帯機器(例えば、腕時計40)の存在が確認されると(ステップS106でYES)、PDA10は、当該携帯機器に対して、新たに生成した乱数を配信し、当該携帯機器は、受信した乱数(例えば乱数R)を乱数記憶部205に格納する。
【0070】
そして、ネットワーク50に接続する他の携帯機器の存在が確認できなくなると(ステップS106でNO)、本処理(乱数配信処理)は終了する。
【0071】
次に、分散情報生成処理の手順について、図6のフローチャートを参照して説明する。先ず、PDA10と携帯機器(携帯電話20、デジタルカメラ30又は腕時計40)との間の通信接続の確立が行われる(ステップS201、S202)。
【0072】
携帯機器との通信接続が確立すると、PDA10の分散情報生成部110は、乱数要求メッセージを作成し、当該携帯機器に送信する(ステップS203)。
【0073】
乱数要求メッセージを受信した携帯機器は、固有ID記憶部204に記憶している固有IDと、乱数記憶部205に記憶している乱数とを読み出す(ステップS204)。そして、これらを格納した応答メッセージを作成し、PDA10に送信する(ステップS205)。
【0074】
PDA10では、通信部113が上記応答メッセージを受信し(ステップS206)、受信した応答メッセージを分散情報生成部110に供給する。分散情報生成部110は、この応答メッセージから固有IDと乱数を抽出する。
【0075】
PDA10の通信部113は、ネットワーク50に接続する他の携帯機器がまだ存在するか否かをチェックする(ステップS207)。他の携帯機器の存在が確認されると(ステップS207でYES)、ステップS201からの処理が繰り返され、PDA10は、新たに接続を確立した携帯機器から固有ID及び乱数を取得する。
【0076】
一方、ネットワーク50に接続する他の携帯機器の存在が確認できなくなると(ステップS207でNO)、分散情報生成部110は、各携帯機器に対応する乱数に割り振る重み付け(換言すれば、各携帯機器に対する分散情報の配分)の決定を行う(ステップS208)。本実施形態では、携帯電話20の重み付け値を1、デジタルカメラ30の重み付け値を1、腕時計40の重み付け値を2にし、(k,n)閾値秘密分散法の分割数nを4、元の情報に復元するのに必要な分散情報の閾値kを3とする。
【0077】
暗号鍵生成部109は、暗号鍵を生成し(ステップS209)、分散情報情報生成部110に供給する。分散情報生成部110は、各携帯機器から取得した乱数と、数式1及び2とを使用して、暗号鍵から分散情報を生成する(ステップS210)。分散情報生成部110は、分散情報記憶部111に、決定した分割数、閾値を格納すると共に、生成した分散情報を各携帯機器から取得した固有IDに関連付けて格納する。
【0078】
続いて、暗号鍵復元処理の手順について、図7のフローチャートを参照して説明する。先ず、PDA10と携帯機器(携帯電話20、デジタルカメラ30又は腕時計40)との間の通信接続の確立が行われる(ステップS301、S302)。
【0079】
携帯機器との通信接続が確立すると、PDA10の暗号鍵復元部112は、乱数要求メッセージを作成し、当該携帯機器に送信する(ステップS303)。
【0080】
乱数要求メッセージを受信した携帯機器は、固有ID記憶部204に記憶している固有IDと、乱数記憶部205に記憶している乱数とを読み出す(ステップS304)。そして、これらを格納した応答メッセージを作成し、PDA10に送信する(ステップS305)。
【0081】
PDA10では、通信部113が上記応答メッセージを受信し(ステップS306)、受信した応答メッセージを暗号鍵復元部112に供給する。暗号鍵復元部112は、この応答メッセージから固有IDと乱数を抽出する。
【0082】
PDA10の通信部113は、ネットワーク50に接続する他の携帯機器がまだ存在するか否かをチェックする(ステップS307)。他の携帯機器の存在が確認されると(ステップS307でYES)、ステップS301からの処理が繰り返され、PDA10は、新たに接続を確立した携帯機器から固有ID及び乱数を取得する。
【0083】
一方、ネットワーク50に接続する他の携帯機器の存在が確認できなくなると(ステップS307でNO)、暗号鍵復元部112は、携帯機器から取得した固有IDに対応する分散情報を分散情報記憶部111から取り出し、取得した乱数との対応付けを行う。そして、各分散情報及び対応する乱数と、数式1及び3とを使用して、暗号鍵を復元する(ステップS308)。
【0084】
なお、本実施形態では、暗号鍵復元部112は、暗号鍵を復元するため、乱数Rを入手する必要があり、さらに少なくとも乱数R又はRの何れかを入手する必要がある。したがって、通信接続が確立ができない等の理由により、腕時計40から乱数Rが取得できない場合、暗号鍵復元部112は、暗号鍵を復元することができない。また、乱数Rを取得しても、携帯電話20及びデジタルカメラ30の何れからも乱数を取得できない場合は、暗号鍵復元部112は、暗号鍵を復元することができない。
【0085】
暗号鍵復元部112により暗号鍵が復元されると、暗号処理部106による暗号処理が行われる。例えば、暗号処理部106は、バッファ104に保存している平文データを暗号化して暗号データを作成し、暗号データ記憶部105に保存したり、あるいは、暗号データ記憶部105に保存している暗号データを復号して平文データを作成し、バッファ104に格納する等の処理を行う。
【0086】
以上のように、本実施形態の秘密情報管理システムでは、PDA10が暗号化して保存している情報(暗号データ)を復号するのに必要な暗号鍵は、4つの分散情報に分割されて保持される。そして、暗号鍵を復元するためには、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)から乱数を取得する必要がある。
【0087】
各携帯機器の乱数には、PDA10によって重み付け値が設定されている。本実施形態では、携帯電話20の乱数の重み付け値が1、デジタルカメラ30の重み付け値が1、腕時計40の重み付け値が2となっている。そして、暗号鍵を復元するために3つ以上の分散情報が必要になるように、閾値kを3に設定しているため、暗号鍵を復元するには、各携帯機器から取得した乱数の重み付け値の合計が3以上になる必要がある。
【0088】
例えば、PDA10が、携帯電話20及びデジタルカメラ30とネットワーク50を介して通信可能であり、腕時計40とは通信不可能な状況下では、PDA10が、携帯電話20及びデジタルカメラ30から取得できる乱数の重み付け値の合計は2にしかならず、PDA10の暗号鍵復元部112は暗号鍵を復元することができない。つまり、結果として、PDA10の暗号処理部106は、暗号データを平文データに復号することがきない。
【0089】
したがって、腕時計40が安全に管理されていれば、たとえ、PDA10、携帯電話20及びデジタルカメラ30の全てが、盗難等により第三者に不正に渡ったとしても、PDA10に保存されている情報は保護され、漏洩を防止することができる。
【0090】
ユーザの使用環境にも依存するが、通常、腕時計40はユーザの腕に装着されていることから、一般的には、PDA10、携帯電話20、デジタルカメラ30と比べ、腕時計40の紛失や盗難の可能性は低いものと考えられる。したがって、上記のように、腕時計40が記憶する乱数に割り振る重み付けを他の携帯機器より大きくすることで、PDA10や他の携帯機器の紛失等に伴う情報漏洩のリスクを極力低減させることが可能になる。
【0091】
腕時計40の紛失等の可能性は低いと考えられるものの、勿論、0ではない。例えば、PDA10及び腕時計40が、第三者に不正に取得されるケースも現実的にあり得る。しかしながら、この場合においても、PDA10が取得できる乱数の重み付け値の合計は2にしかならないため、PDA10の暗号鍵復元部112は暗号鍵を復元することができない。したがって、携帯電話20とデジタルカメラ30が安全に管理されていれば、PDA10及び腕時計40の両方が第三者の手に渡っても、PDA10に保存されている情報を保護することができる。
【0092】
(実施形態2)
続いて、実施形態2に係る秘密情報管理システムについて説明する。図8は、本実施形態のPDA10の機能構成を示すブロック図であり、図9は、本実施形態における各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)の機能構成を示すブロック図である。
【0093】
図8に示すように、本実施形態のPDA10は、実施形態1のPDA10(図2参照)と異なり、乱数生成部107と乱数配信部108を備えていない。それ以外の構成は、実施形態1のPDA10と同一である。一方、図9に示すように、本実施形態の携帯機器は、実施形態1の携帯機器(図3参照)と異なり、乱数生成部207を備えている。それ以外の構成は、実施形態1の携帯機器と同一である。
【0094】
本実施形態では、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)は、自らが備える乱数生成部207で乱数を生成し、生成した乱数を乱数記憶部205に記憶する。したがって、PDA10は、乱数を生成し、各携帯機器に配信する必要がない。
【0095】
このように、各携帯機器が乱数を生成するようにしても、上記実施形態1と同様、本発明が意図する効果を奏し得る。
【0096】
なお、実施形態2の変形例として、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)の製造段階(出荷前)に、予め所定の方法で生成した暗号学的に安全な乱数を乱数記憶部205に記憶させておく仕様にしてもよい。この場合、各携帯機器は、乱数生成部207を備える必要がない。
【0097】
(実施形態3)
上記実施形態1及び2は、PDA10が、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)とネットワーク50を介した通信を行い、各携帯機器で保持される乱数を取得することで、暗号鍵を復元する例であった。実施形態3では、各携帯機器が、記憶しているデータの暗号処理を可能とし、暗号鍵から分散情報を生成したり、分散情報から暗号鍵を復元できる機能を有する。
【0098】
図10は、本実施形態のPDA10の機能構成を示すブロック図である。図10に示すように、本実施形態のPDA10は、実施形態1のPDA10(図2参照)と比較すると、乱数生成部107と乱数配信部108を備えておらず、また、固有ID記憶部114と乱数記憶部115が追加されている点が異なる。
【0099】
また、本実施形態では、各携帯機器(携帯電話20、デジタルカメラ30、腕時計40)の機能構成は、PDA10と同様となっている。
【0100】
PDA10と各携帯機器の乱数記憶部115には、予め所定の方法で生成した暗号学的に安全な乱数が格納されている。
【0101】
例えば、携帯電話20では、暗号鍵生成部109が暗号鍵を生成し、分散情報生成部110が暗号鍵から分散情報を生成して分散情報記憶部111に保存し、暗号鍵復元部112が分散情報記憶部111に保存されている分散情報から暗号鍵を復元し、暗号処理部106が復元された暗号鍵を使用して暗号処理を行う。その際、分散情報の生成や暗号鍵の復元に必要な乱数は、PDA10、デジタルカメラ30、腕時計40からネットワーク50を介した通信により取得する。
【0102】
また、デジタルカメラ30でも同様に、暗号鍵生成部109が暗号鍵を生成し、分散情報生成部110が暗号鍵から分散情報を生成して分散情報記憶部111に保存し、暗号鍵復元部112が分散情報記憶部111に保存されている分散情報から暗号鍵を復元し、暗号処理部106が復元された暗号鍵を使用して暗号処理を行う。その際、分散情報の生成や暗号鍵の復元に必要な乱数は、PDA10、携帯電話20、腕時計40から取得する。
【0103】
このように、本実施形態では、各携帯機器は、暗号鍵の生成、分散情報の生成、暗号鍵の復元、暗号鍵を使用した暗号処理を行える機能を有する。そして、各携帯機器は、PDA10と他の携帯機器から、分散情報の生成や暗号鍵の復元の際に必要となる乱数を通信によって取得する。これにより、例えば、PDA10、携帯電話20、デジタルカメラ30、腕時計40の何れかを紛失し、当該紛失物と他の携帯機器等との通信が不可能になった場合、当該紛失物は、分散情報記憶部111に記憶している分散情報から暗号鍵を復元することができなくなる。したがって、紛失物からの情報漏洩を防ぐことができる。
【0104】
また、PDA10や各携帯機器において、分散情報生成部110により、各携帯機器の乱数に対して重み付け値を適切に設定しておくことで、紛失等しなかった残りの携帯機器等は、他の携帯機器等から取得した乱数を使用して暗号鍵を復元することが可能となり、暗号処理を行うことも可能となる。
【0105】
なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。
【0106】
例えば、上記各実施形態では、携帯機器として、携帯電話10、デジタルカメラ20、腕時計30を例示したが、本発明に係る携帯機器を、固有IDと乱数を記憶し、ネットワーク50を介してPDA10(秘密情報管理装置)と無線通信可能なICタグで具現化してもよい。この場合、既存の携帯電話、デジタルカメラ、腕時計に、本発明に係る携帯機器としてのICタグを付することで、本発明に係る秘密情報管理システムの運用が可能である。このようにすることで安価に製造でき、ユーザの利用が容易となる。
【0107】
また、上記各実施形態では、ネットワーク50を流れる通信データに関して、盗聴や改ざんに対する防御方法を特に明示していないが、通信データを盗聴や改ざんから保護するための周知の技術が、上記各実施形態における暗号処理等に組み込まれていても勿論構わない。
【0108】
また、プログラムの適用により、既存のPDA等を本発明に係る秘密情報管理装置として機能させることも可能である。即ち、上述したPDA10の各機能部(暗号処理部106、乱数生成部107、乱数配信部108、暗号鍵生成部109、分散情報生成部110、暗号鍵復元部112等)が実行したようなプログラムを、既存のPDA等に適用し、そのPDA等における制御装置(CPU等)がそのプログラムを実行することで、本発明に係る秘密情報管理装置として機能させることが可能である。
【0109】
このようなプログラムの配布方法は任意であり、例えば、CD−ROMやメモリカード等の記録媒体に格納して配布可能である他、例えば、インターネットなどの通信ネットワークを介して配布することもできる。
【符号の説明】
【0110】
10…PDA、20…携帯電話、30…デジタルカメラ、40…腕時計、50…ネットワーク、101,201…入力部、102,202…表示部、103,203…機器制御部、104…バッファ、105…暗号データ記憶部、106…暗号処理部、107,207…乱数生成部、108…乱数配信部、109…暗号鍵生成部、110…分散情報生成部、111…分散情報記憶部、112…暗号鍵復元部、113,206…通信部、114,204…固有ID記憶部、115,205…乱数記憶部

【特許請求の範囲】
【請求項1】
秘密情報管理装置と、携帯機器とを備える秘密情報管理システムであって、
前記秘密情報管理装置は、
前記携帯機器と所定のネットワークを介してデータ通信を行う第1通信手段と、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段と、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段と、を備え、
前記携帯機器は、
前記秘密情報管理装置と前記ネットワークを介してデータ通信を行う第2通信手段と、
分散処理用データを記憶する第2記憶手段と、を備え、
前記分散情報生成手段は、前記第1通信手段を介して各携帯機器の前記分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記第1通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データに対応する前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、
ことを特徴とする秘密情報管理システム。
【請求項2】
前記分散情報生成手段及び前記秘密情報復元手段で使用する秘密分散法には、(k,n)閾値秘密分散法と(n,n)閾値秘密分散法とが含まれている、
ことを特徴とする請求項1に記載の秘密情報管理システム。
【請求項3】
前記分散処理用データは乱数である、
ことを特徴とする請求項1又は2に記載の秘密情報管理システム。
【請求項4】
前記秘密情報管理装置は、
乱数を生成する乱数生成手段と、
該乱数生成手段で生成された乱数を前記第1通信手段を介して前記各携帯機器に配信する乱数配信手段と、をさらに備え、
前記各携帯機器では、
前記第2通信手段により前記秘密情報管理装置から配信された乱数が受信され、受信された乱数は、前記分散処理用データとして前記第2記憶手段に格納される、
ことを特徴とする請求項3に記載の秘密情報管理システム。
【請求項5】
前記各携帯機器は、乱数を生成する乱数生成手段をさらに備え、
該乱数生成手段で生成された乱数は、前記分散処理用データとして前記第2記憶手段に格納される、
ことを特徴とする請求項3に記載の秘密情報管理システム。
【請求項6】
前記秘密情報は、データに暗号処理を施すための暗号鍵である、
ことを特徴とする請求項1乃至5の何れか1項に記載の秘密情報管理システム。
【請求項7】
前記携帯機器がICタグである、
ことを特徴とする請求項1乃至6の何れか1項に記載の秘密情報管理システム。
【請求項8】
携帯機器と所定のネットワークを介してデータ通信を行う通信手段と、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段と、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段と、を備え、
前記分散情報生成手段は、前記通信手段を介して、複数の携帯機器から分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データに対応する前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、
ことを特徴とする秘密情報管理装置。
【請求項9】
前記分散情報生成手段及び前記秘密情報復元手段で使用する秘密分散法には、(k,n)閾値秘密分散法と(n,n)閾値秘密分散法とが含まれている、
ことを特徴とする請求項8に記載の秘密情報管理装置。
【請求項10】
前記分散処理用データは乱数である、
ことを特徴とする請求項8又は9に記載の秘密情報管理装置。
【請求項11】
乱数を生成する乱数生成手段と、
該乱数生成手段で生成された乱数を前記通信手段を介して前記各携帯機器に配信する乱数配信手段と、をさらに備える、
ことを特徴とする請求項10に記載の秘密情報管理装置。
【請求項12】
前記秘密情報は、データに暗号処理を施すための暗号鍵である、
ことを特徴とする請求項8乃至11の何れか1項に記載の秘密情報管理装置。
【請求項13】
コンピュータを、
秘密分散法による演算処理を行うことで、秘密情報から複数の分散情報を生成し、分散情報記憶手段に格納する分散情報生成手段、
秘密分散法による演算処理を行うことで、前記分散情報記憶手段に格納されている前記分散情報から前記秘密情報を復元する秘密情報復元手段、として機能させ、
前記分散情報生成手段は、所定のネットワークを介してデータ通信を行う通信手段を介して、複数の携帯機器から分散処理用データを取得し、取得した各分散処理用データに対する重み付け値を設定すると共に、取得した各分散処理用データ及び各分散処理用データに対応する重み付け値を使用して前記分散情報を生成し、
前記秘密情報復元手段は、前記通信手段を介して各携帯機器から前記分散処理用データを取得し、取得した各分散処理用データの前記重み付け値の合計が所定値に達した場合に、取得した各分散処理用データを使用して前記秘密情報を復元することが可能となる、
ことを特徴とするプログラム。

【図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


【公開番号】特開2010−219603(P2010−219603A)
【公開日】平成22年9月30日(2010.9.30)
【国際特許分類】
【出願番号】特願2009−60657(P2009−60657)
【出願日】平成21年3月13日(2009.3.13)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】