説明

秘密情報管理装置および秘密情報管理システム

【課題】ユーザが暗号鍵をなくした場合にも、暗号化したデータを復号化し得る秘密情報管理装置および秘密情報管理システムを提供する。
【解決手段】秘密情報管理システムにおいて、秘密情報管理装置10は、ユーザ端末20から入力されるデータDの暗号化に際し、(k,n)型の秘密分散方式に基づいてデータ鍵Kを秘密分散し、n個の分散鍵B1,B2・・・Bnを生成する秘密分散部16と、n個の分散管理者公開鍵P1,P2・・・Pnに基づいて、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する暗号化部17と、暗号化データEK(D)・暗号化データ鍵EPx(K)・n個の暗号化分散鍵を関連付けて記憶する暗号化データ記憶部13Qとを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データを暗号化して記憶するための秘密情報管理装置および秘密情報管理システムに係り、例えば、ユーザが暗号鍵をなくした場合にも、暗号化したデータを復号化し得る秘密情報管理装置および秘密情報管理システムに関する。
【背景技術】
【0002】
近年、秘密情報として管理すべきデータを暗号化して記憶するための秘密情報管理装置が利用されている。例えば、企業においては、ユーザが個人で秘密情報を管理するよりも、会社全体で一元的に秘密情報を管理した方が良い場合がある。このような場合に秘密情報管理装置が利用される。
【0003】
秘密情報管理装置においては、秘密情報(以下、単にデータともいう)を暗号化および復号化するために、暗号鍵が用いられる。ただし、個々のデータを各々異なる暗号鍵で暗号化する場合には、データの数に比例してユーザの鍵管理の負担が増加してしまう。
【0004】
係る負担を軽減させる観点から、ユーザに階層的な参照許可を与えることにより、ユーザが管理する鍵情報を少なくできる暗号化ファイル共有方法が提案されている(例えば特許文献1参照)。
【0005】
特許文献1記載の方法では、複数人がアクセスするサーバ(秘密情報管理装置)において、ディレクトリ毎に同一の暗号鍵でファイル(データ)を暗号化する。このとき、ファイルの参照権限を表現する階層構造と、ディレクトリの階層構造とが一致しており、ディレクトリIDnの中に、その直接下位にある全てのディレクトリの暗号鍵をそのディレクトリIDnの暗号鍵で暗号化して格納しておくので、ユーザは、階層構造のある1つのディレクトリの暗号鍵を持つだけでその下位にある全てのディレクトリを参照できる。
【0006】
それゆえ、個々のデータを各々異なる暗号鍵で暗号化する場合に比べ、ユーザの鍵管理の負担が軽減される。
【特許文献1】特開平6−175905号公報(請求項1、第9段落、第18段落、図1、要約書など)
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した特許文献1記載の方法では、ユーザが暗号鍵をなくした場合には、ディレクトリ内の全てのデータを参照することができなくなる。換言すれば、ユーザの鍵管理の負担が軽減される反面、一つの暗号鍵をなくした場合の影響が大きくなる事態が生じる。
【0008】
例えば、ICカード等の記憶媒体に暗号鍵を記憶している場合、その記憶媒体を紛失等すると、秘密情報管理装置内の全ての暗号化されたデータを復号化できなくなる。
【0009】
本発明は上記実情に鑑みてなされたものであり、ユーザが暗号鍵をなくした場合にも、暗号化したデータを復号化し得る秘密情報管理装置および秘密情報管理システムを提供することを目的とする。
【課題を解決するための手段】
【0010】
第1の発明は上記課題を解決するために、しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用可能な秘密情報管理装置であって、データと、分散数n個分の分散管理者IDと、前記しきい値kと、ユーザIDとを受信するためのデータ受信手段と、互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個以上含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵を含む公開鍵リストを予め記憶する公開鍵リスト記憶手段と、乱数を用いてデータ鍵を生成するデータ鍵生成手段と、このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、前記受信したユーザIDに基づいて、前記公開鍵リスト記憶手段から前記ユーザ公開鍵を検索し、該ユーザ公開鍵を用いて前記データ鍵を暗号化し、暗号化データ鍵を生成する暗号化データ鍵生成手段と、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、前記データ受信手段が受信するn個の分散管理者IDに関連する分散管理者公開鍵を前記公開鍵リスト記憶手段から読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、前記暗号化データ、前記暗号化データ鍵および前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と、前記暗号化データの復号化要求を復号化方式情報とともに受信した場合、該復号化方式情報が、第1復号化方式情報および第2復号化方式情報のいずれであるかを判定する復号化方式判定手段と、前記復号化方式情報が第1復号化方式情報である場合、前記暗号化データ鍵を該暗号化データ鍵の復号化要求とともに、前記復号化方式情報の送信元に送信する暗号化データ鍵送信手段と、前記暗号化データ鍵の復号化要求に応じて、前記ユーザ公開鍵に対応するユーザ秘密鍵により復号化されたデータ鍵を前記復号化方式情報の送信元から受信した場合、このデータ鍵により前記暗号化データを復号化して前記データを得る第1復号化手段と、前記復号化方式情報が第2復号化方式情報である場合、前記公開鍵リストに含まれる分散管理者アドレス情報に基づいて、前記暗号化データ記憶手段内のn個の暗号化分散鍵を個別に送信する暗号化分散鍵送信手段と、前記各暗号化分散鍵の送信先で分散管理者秘密鍵により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を復元するデータ鍵復元手段と、このデータ鍵に基づいて前記暗号化データを復号化して前記データを得る第2復号化手段とを備えた秘密情報管理装置を提供する。
【0011】
第2の発明は、データを入力するためのユーザ端末と、しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用して、前記データを暗号化した暗号化データを記憶するための秘密情報管理装置とを備えた秘密情報管理システムであって、前記秘密情報管理装置が、前記データと、分散数n個分の分散管理者IDと、前記しきい値kと、ユーザIDとを受信するためのデータ受信手段と、互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個以上含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵を含む公開鍵リストを予め記憶する公開鍵リスト記憶手段と、乱数を用いてデータ鍵を生成するデータ鍵生成手段と、このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、前記受信したユーザIDに基づいて、前記公開鍵リスト記憶手段から前記ユーザ公開鍵を検索し、該ユーザ公開鍵を用いて前記データ鍵を暗号化し、暗号化データ鍵を生成する暗号化データ鍵生成手段と、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、前記データ受信手段が受信するn個の分散管理者IDに関連する分散管理者公開鍵を前記公開鍵リスト記憶手段から読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、前記暗号化データ、前記暗号化データ鍵および前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と、前記暗号化データの復号化要求を復号化方式情報とともに前記ユーザ端末から受信した場合、該復号化方式情報が、第1復号化方式情報および第2復号化方式情報のいずれであるかを判定する復号化方式判定手段と、前記復号化方式情報が第1復号化方式情報である場合、前記暗号化データ鍵を該暗号化データ鍵の復号化要求とともに前記ユーザ端末に送信する暗号化データ鍵送信手段と、前記暗号化データ鍵の復号化要求に応じて、前記ユーザ公開鍵に対応するユーザ秘密鍵により復号化されたデータ鍵を前記ユーザ端末から受信するデータ鍵受信手段と、前記データ鍵受信手段により受信したデータ鍵により前記暗号化データを復号化して前記データを得る第1復号化手段と、前記復号化方式情報が第2復号化方式情報である場合、前記公開鍵リストに含まれる分散管理者アドレス情報に基づいて、前記暗号化データ記憶手段内のn個の暗号化分散鍵を個別に送信する暗号化分散鍵送信手段と、前記各暗号化分散鍵の送信先で分散管理者秘密鍵により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を復元するデータ鍵復元手段と、このデータ鍵に基づいて前記暗号化データを復号化して前記データを得る第2復号化手段とを備え、前記ユーザ端末が、前記データと、前記分散数n個分の分散管理者IDと、前記しきい値kと、前記ユーザIDとを、前記秘密情報管理装置に送信するためのデータ送信手段と、前記暗号化データの復号化要求を前記復号化方式情報とともに前記秘密情報管理装置に送信する復号化要求送信手段と、前記暗号化データ鍵及び該暗号化データ鍵の復号化要求を前記秘密情報管理装置から受信した場合、該暗号化データ鍵を前記ユーザ秘密鍵により復号化し、該秘密情報管理装置にデータ鍵を送信するデータ鍵送信手段とを備えた秘密情報管理システムを提供する。
【0012】
なお、以上の各発明では、各装置を「装置」とし、各装置の集合体を「システム」として表現しているが、これに限らず、システム又は装置毎に「プログラム」として表現してもよく、また、システム又は装置毎に「方法」として表現してもよい。すなわち、本発明は、任意の名称やカテゴリーで表現可能となっている。
【0013】
(作用)
第1および第2の発明では、暗号化データ鍵を送信した後、ユーザ秘密鍵により復号化されたデータ鍵を受信し、このデータ鍵により暗号化データを復号化してデータを得る第1復号化方式と、n個の暗号化分散鍵を送信してk個の分散鍵を受信することにより、(k,n)型の秘密分散方式に基づいてデータ鍵を復元し、得られたデータ鍵に基づいて暗号化データを復号化してデータを得る第2復号化方式との2つの復号化方式をそれぞれ用いることができる。
【0014】
これにより、ユーザが暗号鍵(ユーザ秘密鍵)を保持する場合には第1復号化方式を用いることにより、暗号化したデータを復号化することができる。また、ユーザが暗号鍵(ユーザ秘密鍵)をなくした場合にも第2復号化方式を用いることにより、暗号化したデータを復号化することができる。
【発明の効果】
【0015】
本発明によれば、ユーザが暗号鍵をなくした場合にも、暗号化したデータを復号化し得る秘密情報管理装置および秘密情報管理システムを提供できる。
【発明を実施するための最良の形態】
【0016】
以下、図面を参照して本発明の実施形態を説明する。
【0017】
<第1の実施形態>
(1−1.構成)
図1は本発明の第1の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【0018】
秘密情報管理システムは、データを暗号化した暗号化データを記憶するための秘密情報管理装置10と、データを入力するためのユーザ端末20と、分散管理者端末30A〜30Nとを備えている。(以下の説明において、分散管理者端末を総称して説明するときは単に30と表記し、各端末を個別に説明するときは添え字A〜Nを付して表記する。)
秘密情報管理装置10は、「しきい値k」および「分散数n」の(k,n)型の秘密分散方式を使用可能なものであり、一般的なパーソナルコンピュータ(PC)により構成される。なお、(k,n)型の秘密分散方式とは、秘密情報(ここではデータ鍵)をn個の分散情報(ここでは分散鍵)に分割し、n個の分散情報の中から任意のk個を集めれば元の秘密情報を復元可能な技術である。但し、k個より1個少ないk−1個の分散情報からでは、元の秘密情報に関する情報が全く得られない。すなわち、(k,n)型の秘密分散方式は、しきい値kを境にした秘密情報の復元特性をもっている(なお、1<k<n)。以下、(k,n)型の秘密分散方式を(k,n)しきい値法ともいう。
【0019】
秘密情報管理装置10は、具体的には、通信装置11とCPU12・ディスク装置13・メモリ14とを備えている。
【0020】
通信装置11は、ユーザ端末20や分散管理者端末30とネットワークを介して通信するものであり、「データD」・分散数n個分の分散管理者ID・しきい値k・ユーザIDをユーザ端末20から受信する。また、通信装置11は、ユーザ端末20またはネットワーク上の公開鍵簿(図示せず)からユーザ公開鍵Pxを受信する。
【0021】
CPU12は、秘密情報管理装置10の演算処理を実行するものであり、具体的には、ディスク装置13に記憶された各種プログラムをメモリ14に読み込んで、後述するデータ鍵生成部15や秘密分散部16・暗号化部17・データ管理部18・復号化部19の処理を実行する。ここで、各種プログラムとは、各部15〜19の機能を秘密情報管理装置10のコンピュータに実現させるためのプログラムである。
【0022】
ディスク装置13は、情報を記憶して保存するためのハードディスク等であり、公開鍵リスト記憶部13Pおよび暗号化データ記憶部13Qとして機能する。
【0023】
公開鍵リスト記憶部13Pは、互いに関連付けられた分散管理者IDと、分散管理者公開鍵と、分散管理者アドレス情報との組をn個以上含み、かつユーザIDと該ユーザIDに対応するユーザ公開鍵を含む「公開鍵リストL」を予め記憶するものである(図2参照)。また、公開鍵リスト記憶部13Pは、通信装置11によりユーザ端末20から受信されるデータDのデータ名称(以下、“data”と称する)と、分散数n個分の分散管理者IDと、しきい値kとを、データを送信したユーザのユーザIDと関連付けて、「分散管理者IDリスト」として記憶する(図2参照)。
【0024】
なお、データ名称“data”は、例えばデータDがファイルである場合のファイル名であり、予めデータDに含まれている。また、しきい値kは、必ずしも記憶される必要は無い。例えば(k,n)を固定して(k,n)しきい値法を用いる場合、しきい値kの入力が省略されるため、しきい値kが記憶されない。
【0025】
暗号化データ記憶部13Qは、後述する暗号化データEK(D)・暗号化データ鍵EPx(K)・n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を、データ名称“data”と互いに関連付けて記憶する(図3参照)。
【0026】
メモリ14は、CPU12が各種プログラムを実行するために用いるRAM等の記憶装置である。ここでは、ディスク装置13に記憶された各種プログラムがメモリ14に読み込まれると、CPU12が、データ鍵生成部15や秘密分散部16・暗号化部17・データ管理部18・復号化部19として機能することになる。
【0027】
データ鍵生成部15は、ユーザ端末20からデータDを受信する度に、乱数を用いて「データ鍵K」を生成するものである。生成されるデータ鍵Kは、乱数自体でもよく、乱数から算出された値でもよい。
【0028】
秘密分散部16は、データ鍵生成部15により生成されたデータ鍵Kを、(k,n)しきい値法により、「n個の分散鍵B1,B2…Bn」に分散するものである。なお、しきい値kおよび分散数nは、通信装置11を介してユーザ端末20から送信される数値である。
【0029】
暗号化部17は、各種データを暗号化するものであり、データ鍵生成部15で生成されたデータ鍵Kを用いて、ユーザ端末20から送信されたデータDを暗号化する機能を有する。これにより「暗号化データEK(D)」が生成される。また、受信したユーザIDに基づいて、公開鍵リスト記憶部13Pからユーザ公開鍵Pxを検索し、該ユーザ公開鍵Pxを用いてデータ鍵Kを暗号化し、「暗号化データ鍵EPx(K)」を生成する機能を有する。さらに、暗号化部17は、通信装置11が受信するn個の分散管理者IDに関連する「分散管理者公開鍵P1,P2…Pn」を公開鍵リスト記憶部13Pから読み込み、該n個の分散管理者公開鍵に基づいて、秘密分散部16により生成されたn個の分散鍵B1,B2…Bnを個別に暗号化して、「n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)」を生成する機能を有する。
【0030】
データ管理部18は、データDの暗号化または復号化の命令を行なうものである。データの暗号化処理に際しては、各部15・16・17を介して生成された暗号化データEK(D)・暗号化データ鍵EPx(K)・暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を一セットにして暗号化データ記憶部13Qに書き込む機能を有する。また、暗号化データEK(D)の復号化処理に際しては、暗号化データ記憶部13Qに記憶された暗号化データEK(D)・暗号化データ鍵EPx(K)・暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)等の情報を読み出して復号化部19に送出する機能を有する。
【0031】
復号化部19は、ユーザ端末20から送信された復号化方式情報が、第1復号化方式情報F1および第2復号化方式情報F2のいずれであるかを判定する機能と、その判定結果に応じて、暗号化データ記憶部13Qに記憶された暗号化データEK(D)を復号化する機能とを備えている。
【0032】
詳しくは、復号化方式情報が第1復号化方式情報F1である場合、暗号化データ鍵EPx(K)を、その暗号化データ鍵の復号化要求とともにユーザ端末20に送信する。そして、暗号化データ鍵EPx(K)の復号化要求に応じて、ユーザ公開鍵Pxに対応するユーザ秘密鍵Sxにより復号化されたデータ鍵Kをユーザ端末20から受信した場合、受信したデータ鍵Kにより暗号化データEK(D)を復号化する。
【0033】
一方、復号化方式情報が第2復号化方式情報F2である場合、公開鍵リスト記憶部13Pに予め記憶された公開鍵リストLに含まれるn個の分散管理者アドレス情報に基づいて、暗号化データ記憶部13Q内のn個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を分散管理者端末30に個別に送信する。この後、各暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)の送信先で「分散管理者秘密鍵S1,S2…Sn」により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合には、(k,n)しきい値法に基づいてデータ鍵Kを復元する。そして、この復元されたデータ鍵Kに基づいて暗号化データEK(D)を復号化する。
【0034】
ユーザ端末20は、通常のパーソナルコンピュータの機能を有し、ユーザの操作により、秘密情報管理装置10にデータDを入力したり、暗号化データEK(D)の復号化要求をしたりするものである。ユーザ端末20は、具体的には図4に示すように、互いにバスを介して接続された記憶部21と入力部22・演算部23・通信部24・表示部25とを備えている。
【0035】
記憶部21は、ユーザ公開鍵Pxに対応する「ユーザ秘密鍵Sx」を記憶するメモリである。なお、ユーザ秘密鍵Sxは、ユーザのみが知り得るパスワード等により暗号化されてから記憶される。また、ユーザ秘密鍵Sxは、ICカード等の外部記憶装置に記憶されているとしても良い。
【0036】
入力部22は、データDの暗号化や復号化を実行するための情報を入力するものである。例えば、データDを暗号化する際には、データD・分散管理者ID・しきい値kや、ユーザを識別するための「ユーザID」の入力を可能とする。但し、しきい値kは、必ずしも入力される必要は無い。例えば(k,n)を固定して(k,n)しきい値法を用いる場合、しきい値kを入力しなくてよい。また、暗号化データEK(D)を復号化する際には、その暗号化データEK(D)を指定するためのデータ名称“data”や復号化方式情報の入力を可能とする。なお、「復号化方式情報」には、暗号化データ鍵に基づいて暗号化データの復号化を命令するための第1復号化方式情報F1と、暗号化分散鍵に基づいて暗号化データの復号化を命令するための第2復号化方式情報F2とがある。第2復号化方式情報F2を入力する場合で且つ各分散管理者の承認が必要な場合(図5参照)、ユーザの入力操作により、暗号化データEK(D)の復号化要求にユーザ情報(例、ユーザID、ユーザ氏名、ユーザ属性)を含め、このユーザ情報を秘密情報管理装置10が暗号化分散鍵とともに各分散管理者端末30に送信する構成としてもよい。これに限らず、予め秘密情報管理装置10がユーザ情報を記憶しておき、暗号化データEK(D)の復号化要求に含まれるデータ名称“data”に基づいてディスク装置13を参照し、対応するユーザIDに該当するユーザ情報を、暗号化分散鍵とともに各分散管理者端末30に送信する構成としてもよい。なお、各分散管理者の承認が不要な場合には、これらユーザ情報に関する構成が省略可能となっている。
【0037】
演算部23は、秘密情報管理装置10からの復号化要求に応じて、暗号化データ鍵EPx(K)を復号化するためのものである。具体的には、記憶部21に記憶されたユーザ秘密鍵Sxを用いて、暗号化データ鍵EPx(K)を復号化する。また、ユーザ秘密鍵SxがICカードに記憶されている場合には、暗号化データ鍵EPx(K)をICカード内で復号化させるコマンドをICカードに送出する。
【0038】
通信部24は、秘密情報管理装置10との通信を可能にするものである。なお、秘密情報管理装置10と通信する際には、データを送信するユーザを識別するために、ユーザID等の入力が必要とされる。
【0039】
表示部25は、入力部22の入力情報や秘密情報管理装置10から送信されるデータ等を表示するためのディスプレイ等である。
【0040】
分散管理者端末30は、秘密情報管理装置10から暗号化分散鍵の復号化要求を受信した場合、必要に応じて、暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を「分散管理者秘密鍵S1,S2…Sn」により個別に復号化するものである。また、復号化した分散鍵を、秘密情報管理装置10に送信する。
【0041】
なお、分散管理者端末30は、暗号化分散鍵の復号化要求を受信した場合、図5に画面構成の例を示すように、暗号化データの復号化要求を行なったユーザ情報を画面表示し、分散管理者に復号化の承認を求める機能をもっている(図5において、“NO”ボタンを選択すると、暗号化分散鍵の復号化が拒否される)。したがって、分散管理者端末30を操作する分散管理者が、暗号化分散鍵の復号化を承認しないと判断した場合には、秘密情報管理装置10に分散鍵を送信しないようにすることができる。
【0042】
(1−2.動作)
次に本実施形態に係る秘密情報管理システムの動作を説明する。
【0043】
(データの暗号化)
まず、本実施形態に係る秘密情報管理システムによるデータの暗号化の動作を図6のフローチャートを用いて説明する。なお、暗号化する際のデータフローの概念を図7に示す。
【0044】
始めに、ユーザ端末20では、ユーザの操作により、データD・分散数n個分の分散管理者ID・しきい値k・ユーザIDが入力される。そして、ユーザ端末20は、これらの入力データを、秘密情報管理装置10に送信する。
【0045】
秘密情報管理装置10は、受信した入力データをメモリ14に記憶するとともに、ユーザIDと、データ名称“data”と、分散管理者IDと、しきい値kとを互いに関連付けてなる「分散管理者IDリスト」を公開鍵リスト記憶部13Pに記憶する。
【0046】
しかる後、秘密情報管理装置10では、データ鍵生成部15において乱数を用いてデータ鍵Kを生成する(ステップS1,S2)。さらに、秘密情報管理装置10では、そのデータ鍵Kにより、暗号化部17がデータDを暗号化して暗号化データEK(D)を生成する(ステップS3)。
【0047】
続いて、暗号化部17は、受信したユーザIDに基づいて、公開鍵リスト記憶部13Pからユーザ公開鍵Pxを検索する。そして、そのユーザ公開鍵Pxに基づいて、ステップS2で生成したデータ鍵Kを暗号化し、暗号化データ鍵EPx(K)を生成する(ステップS4)。
【0048】
また、秘密分散部16が、(k,n)しきい値法により、ステップS2で生成したデータ鍵Kから、n個の分散鍵B1,B2・・・Bnを生成する(ステップS5)。
【0049】
続いて、暗号化部17は、受信した分散管理者IDに関連する分散管理者公開鍵P1,P2・・・Pnを公開鍵リストLから読み込み、該n個の分散管理者公開鍵P1,P2・・・Pnに基づいて、秘密分散によって生成された各分散鍵B1,B2・・・Bnを個別に暗号化し、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する(ステップS6)。
【0050】
そして、秘密情報管理装置10のデータ管理部18が、暗号化データEK(D)・暗号化データ鍵EPx(K)・各暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を一セットにして、ディスク装置13の暗号化データ記憶部13Qに記憶する(ステップS7)。
【0051】
(暗号化データの復号化)
次に、本実施形態に係る秘密情報管理システムによる暗号化データの復号化の動作を図8のフローチャートを用いて説明する。なお、第2復号化方式により復号化する際のデータフローの概念を図9に示す。
【0052】
始めに、ユーザ端末20は、ユーザの操作により、暗号化データEK(D)の復号化要求を秘密情報管理装置10に送信する。この際、復号化要求とともに、暗号化データEK(D)のデータ名称“data”や復号化方式情報(F1またはF2)等も送信される。なお、復号化方式情報の送信内容は、ユーザ端末20の表示部25上でユーザの操作により選択される。例えば、ユーザ秘密鍵SxがICカードに記憶されているとき、図10に画面構成の一例を示すように、ICカードの有無に応じて、“ICカードが有る場合”又は“ICカードが無い場合”がユーザの操作により選択されると、“ICカードが有る場合”の選択により第1復号化方式情報F1が送信され、“ICカードが無い場合”の選択により第2復号化方式情報F2が送信される。
【0053】
秘密情報管理装置10は、復号化要求等を受信すると、復号化方式情報が第1復号化方式情報F1および第2復号化方式情報F2のいずれであるかを判定する(ステップT1,T2)。
【0054】
ここで、復号化方式情報が第1復号化方式情報F1である場合、秘密情報管理装置10では、復号化部19が、暗号化データ記憶部13Qに記憶された暗号化データ鍵EPx(K)を復号化要求とともにユーザ端末20に送信する(ステップT3)。
【0055】
ユーザ端末20は、受信した暗号化データ鍵EPx(K)をユーザ秘密鍵Sxにより復号化し、得られたデータ鍵Kを秘密情報管理装置10に送信する。
【0056】
この後、秘密情報管理装置10では、受信したデータ鍵Kを用いて、復号化部19が暗号化データEK(D)を復号化する(ステップT5)。
【0057】
一方、ステップT2において、復号化方式情報が第2復号化方式情報F2である場合、秘密情報管理装置10では、復号化部19が、公開鍵リスト記憶部13P内の公開鍵リストLに含まれるn個の分散管理者アドレス情報に基づいて、暗号化データ記憶部13Q内のn個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を、各分散管理者端末30A〜30Nに個別に送信する。(ステップT6)。
【0058】
これを受けて、各分散管理者端末30A〜30Nにおいて、復号化を承認するか否かが判断される。具体的には、ユーザ端末20を介して暗号化データEK(D)の復号化要求を行なったユーザに対し、データDの参照を許可するか否かが、各分散管理者端末30A〜30Nを利用する分散管理者により個別に判断される。
【0059】
分散管理者端末30では、分散管理者がデータDの復号化を許可した場合、受信した暗号化分散鍵を分散管理者秘密鍵により復号化する(図9の分散管理者端末30A・30B)。そして、復号化を許可した分散管理者端末30A・30Bは、秘密情報管理装置10に分散鍵を返信する。
【0060】
一方、分散管理者がデータDの復号化を拒否した場合には、分散管理者端末30では暗号化分散鍵を復号化しないため、秘密情報管理装置10に分散鍵が返信されない(図9の分散管理者端末30C)。
【0061】
続いて、秘密情報管理装置10では、復号化部19が、公開鍵リスト記憶部13P内のしきい値kを参照し、複数の分散管理者端末30から受信した分散鍵の個数がしきい値k個以上であるか否かを判定する(ステップT8)。
【0062】
k個以上であると判定した場合、秘密情報管理装置10では、復号化部19が(k,n)しきい値法に基づいて、k個の分散鍵からデータ鍵Kを復元する(ステップT8−Yes,T9)。そして、復号化部19は、復元したデータ鍵Kにより暗号化データEK(D)を復号化する(ステップT5)。
【0063】
一方、ステップT8において、k個より少ないと判定した場合、秘密情報管理装置10では、分散鍵からデータ鍵Kを復元せず、暗号化データEK(D)を復号化できないとして処理を終了する(ステップT8−No,T10)。
【0064】
(1−3.効果)
以上説明したように、本実施形態に係る秘密情報管理装置10は、データDの暗号化に際し、(k,n)型の秘密分散方式に基づいてデータ鍵Kを秘密分散し、n個の分散鍵B1,B2・・・Bnを生成する秘密分散部16と、公開鍵リストL内のn個の分散管理者公開鍵P1,P2・・・Pnに基づいて、n個の分散鍵B1,B2・・・Bnを個別に暗号化し、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する暗号化部17と、暗号化データEK(D)・暗号化データ鍵EPx(K)・n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を関連付けて記憶する暗号化データ記憶部13Qとを備えており、また、暗号化分散鍵に基づいて暗号化データを復号化する場合、公開鍵リストLに含まれるn個の分散管理者アドレス情報に基づいて、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を分散管理者端末30A〜30Nに個別に送信し、各暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)の送信先で個別に分散管理者秘密鍵S1,S2…Snにより暗号化分散鍵が復号化され、k個の送信先から分散鍵を受信した場合、(k,n)型の秘密分散方式に基づいてデータ鍵Kを復元し、このデータ鍵Kに基づいて暗号化データEK(D)を復号化してデータDを得る復号化部19とを備えているので、ユーザ秘密鍵Sxがなくなった場合にも、しきい値k個以上の分散鍵を収集してデータ鍵Kを復元することによりデータDを復号化できる。
【0065】
換言すると、秘密情報管理装置10は、暗号化データ鍵EPx(K)を送信した後、ユーザ秘密鍵Sxにより復号化されたデータ鍵Kを受信し、このデータ鍵Kにより暗号化データEK(D)を復号化してデータを得る第1復号化方式と、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を送信してk個の分散鍵を受信することにより、(k,n)型の秘密分散方式に基づいてデータ鍵Kを復元し、得られたデータ鍵Kに基づいて暗号化データEK(D)を復号化してデータDを得る第2復号化方式との2つの復号化方式をそれぞれ用いることができる。これにより、ユーザが暗号鍵(ユーザ秘密鍵Sx)を保持する場合には第1復号化方式を用いることにより、暗号化したデータを復号化することができる。また、ユーザが暗号鍵(ユーザ秘密鍵Sx)をなくした場合にも第2復号化方式を用いることにより、暗号化したデータを復号化することができる。
【0066】
また、本実施形態に係る秘密情報管理システムによれば、ユーザ秘密鍵Sxだけをユーザは管理すればよく、分散管理者も分散管理者秘密鍵P1,P2・・・Pnだけを管理すればよいので、各人における鍵の管理を簡易化できる。
【0067】
特に、各人の秘密鍵をICカードにより管理する場合、安全性および利便性をより高くしたシステムを構築することができる。また、各人に携帯されるICカードを用いることにより、他者の使用可能な端末20,30を用いる場合に比べ、データの復号化に関して明確かつ安全に個人の意思を反映することができる。また、ICカードを用いることにより、各人の意思決定から復号化までを一連の暗号技術により提供することができる。
【0068】
なお、本実施形態に係る秘密情報管理装置10は、分散数n個分の分散管理者IDと、しきい値kとをユーザ端末20から受信しているが、これらの情報は予め記憶されていても良い。これは、ユーザ毎に分散管理者が予め指定されていることに相当する。具体的には、図11に示すように、秘密情報管理装置10のディスク装置13が、ユーザID毎に、分散管理者IDとしきい値kとを予め「分散管理者IDリスト」として記憶する。これにより、ユーザからデータが送信された場合に、ユーザID毎に分散管理者IDリストによって指定される分散管理者IDに関連して、公開鍵リストL内の分散管理者公開鍵で分散鍵が暗号化されるようにすることができる。すなわち、ユーザ毎に分散管理者が予め指定されており、その指定された分散管理者の分散管理者端末30に分散鍵を送信する構成としてもよい。また、どのデータがどのユーザの管理下にあるかというテーブル情報が「データ管理者リスト」としてディスク装置13に記憶される(図11参照)。
【0069】
<第2の実施形態>
図12は本発明の第2の実施形態に係る秘密情報管理システムの構成を示す模式図である。なお、既に説明した部分と同一部分には同一符号を付し、特に説明がない限りは重複した説明を省略する。また、以下の各実施形態も同様にして重複した説明を省略する。
【0070】
本実施形態においては、第1の実施形態とは異なり、ユーザ端末20がデータ鍵Kと暗号化データEK(D)とを生成する構成となっている。すなわち、ユーザ端末20の演算部23が、乱数を用いてデータ鍵Kを生成する機能と、このデータ鍵Kに基づいてデータDを暗号化し、暗号化データEK(D)を生成する機能とを有している。それゆえ、秘密情報管理装置10Sは、図1に示した構成に比べ、データ鍵生成部15が省略された構成となっている。また、秘密情報管理装置10Sでは、データの暗号化も行なわれない。なお、暗号化データEK(D)とデータ鍵Kとは、分散管理者ID・しきい値k・ユーザIDとともに通信部24を介して秘密情報管理装置10Sに送信される。
【0071】
次に、本実施形態に係る秘密情報管理システムによるデータの暗号化の動作を、図13のフローチャートおよび図14のデータフローの概念図を参照して説明する。
【0072】
始めに、ユーザ端末20では、ユーザの操作により、データD・分散数n個分の分散管理者ID・しきい値k・ユーザIDが入力される(U1)。
【0073】
続いて、ユーザ端末20の演算部23が、乱数を用いてデータ鍵Kを生成する(U2)。また、演算部23は、このデータ鍵Kを用いてデータDを暗号化して、暗号化データEK(D)を生成する(U3)。そして、ユーザ端末20の通信部24が、これらのデータを記憶部21内のユーザIDとともに秘密情報管理装置10Sに送信する(U4,U5)。
【0074】
次に、秘密情報管理装置10Sは、暗号化データEK(D)・データ鍵K・分散管理者ID(n人分)・しきい値k・ユーザIDを入力データとしてユーザ端末20から受け取ると、これら入力データをメモリ14に記憶するとともに、ユーザIDと、データ名称“data”と、分散管理者IDと、しきい値kとを互いに関連付けてなる分散管理者IDリストを公開鍵リスト記憶部13Pに記憶する。
【0075】
そして、秘密分散部16が、(k,n)しきい値法により、メモリ14内のデータ鍵Kから、n個の分散鍵B1,B2…Bnを生成する(U6)。
【0076】
続いて、秘密情報管理装置10Sでは、前述同様に、暗号化部17がn個の分散鍵B1,B2…Bnを分散管理者公開鍵P1,P2…Pnにより個別に暗号化して、暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する(U7)。
【0077】
また、暗号化部17は、公開鍵リストL内のユーザ公開鍵Pxでデータ鍵Kを暗号化し、暗号化データ鍵EPx(K)を生成する(U8)。
【0078】
そして、秘密情報管理装置10Sのデータ管理部18が、これらの暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)および暗号化データ鍵EPx(K)を、ユーザ端末20から送信された暗号化データEK(D)に関連付けて暗号化データ記憶部13Qに記憶する(U9)。
【0079】
なお、暗号化データEK(D)の復号化の動作は、第1の実施形態と同様にして行なわれる。
【0080】
以上説明したように、本実施形態に係る秘密情報管理システムにおいては、データ鍵Kの生成およびデータDの暗号化をユーザ端末20で行なう。それゆえ、暗号化されていないデータDを秘密情報管理装置10Sに送信せずに済むので、データの秘匿性を高めることができる。
【0081】
補足すると、第1の実施形態に係る秘密情報管理装置10においては、暗号化されていないデータDを受け取るので、秘密情報管理装置10の管理者はデータを閲覧することができる。これに対し、本実施形態に係る秘密情報管理装置10Sでは、暗号化されていないデータDではなく暗号化データEK(D)を受け取るので、秘密情報管理装置10Sの管理者は、単純にはデータDを閲覧することができないことになる。
【0082】
<第3の実施形態>
図15は本発明の第3の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【0083】
本実施形態においては、第2の実施形態とは異なり、前述した秘密情報管理装置10Sが鍵管理装置40と暗号化データ管理装置50とに分割されている。この鍵管理装置40と暗号化データ管理装置50とは、秘密情報管理装置10Tを構成する。
【0084】
鍵管理装置40においては、公開鍵リスト記憶部13Pとしてディスク装置43が機能し、各種プログラムをメモリ44が読み込んで、CPU42が、秘密分散部16・暗号化部17・復号化部19として機能する。
【0085】
暗号化データ管理装置50においては、暗号化データ記憶部13Qとしてディスク装置53が機能し、各種プログラムをメモリ54が読み込んで、CPU52がデータ管理部18として機能する。
【0086】
また両装置40・50は、通信装置41・51を介して暗号化データ等の送受信を行なう。
【0087】
次に、本実施形態に係る秘密情報管理システムによるデータの暗号化の動作を、図16のフローチャートおよび図17のデータフローの概念図を参照して説明する。
【0088】
始めに、ユーザ端末20では、ユーザの操作により、データD・分散管理者ID・しきい値k・ユーザIDが入力される(V1)。
【0089】
続いて、ユーザ端末20の演算部23が、乱数を用いてデータ鍵Kを生成する(V2)。そして、演算部23は、このデータ鍵Kを用いてデータDを暗号化し、暗号化データEK(D)を生成する(V3)。
【0090】
次に、ユーザ端末20は、データ鍵K・分散管理者ID・しきい値k・ユーザIDを鍵管理装置40へ送信し(V4)、暗号化データEK(D)を暗号化データ管理装置50へ送信する(V5)。
【0091】
鍵管理装置40では、受信したデータ鍵K・分散管理者ID・しきい値k・ユーザIDをメモリ44に記憶するとともに、ユーザIDと、データ名称“data”と、分散管理者IDと、しきい値kとを互いに関連付けてなる分散管理者IDリストをディスク装置43の公開鍵リスト記憶部13Pに記憶する。しかる後、鍵管理装置40では、メモリ44内のデータ鍵Kを、秘密分散部16が公開鍵リストLおよびしきい値kに基づき、(k,n)しきい値法により分散して、n個の分散鍵B1,B2…Bnを生成する(V6)。そして、鍵管理装置40では、暗号化部17が、受信した分散管理者IDに関連する分散管理者公開鍵P1,P2・・・Pnを公開鍵リストLから読み込み、該n個の分散管理者公開鍵P1,P2…Pnに基づいて各分散鍵B1,B2…Bnを個別に暗号化して、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する(V7)。
【0092】
また、暗号化部17は、ユーザ公開鍵Pxでデータ鍵Kを暗号化し、暗号化データ鍵EPx(K)を生成する(V8)。
【0093】
しかる後、鍵管理装置40は、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)と、暗号化データ鍵EPx(K)とを暗号化データ管理装置50に送信する(V9)。
【0094】
暗号化データ管理装置50では、データ管理部18が、これらn個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)と暗号化データ鍵EPx(K)とを、ユーザ端末20から受け取った暗号化データEK(D)に関連付けてディスク装置53の暗号化データ記憶部13Qに記憶する(V10)。
【0095】
なお、暗号化データEK(D)の復号化の動作は、第1の実施形態と同様にして行なわれる。ただし、復号化動作を行なう主体は、復号化部19を有する鍵管理装置40である。
【0096】
以上説明したように、本実施形態に係る秘密情報管理システムにおいては、秘密情報管理装置10Tを、鍵管理装置40と暗号化データ管理装置50との別装置に分割して構成するので、データの秘匿性を高めることができる。
【0097】
補足すると、第2の実施形態に係る秘密情報管理装置10Sにおいては、データ鍵Kを受信する装置と、暗号化データEK(D)を記憶する装置とが単一の装置であるため、秘密情報管理装置10Sの管理者が、受信したデータ鍵Kに基づいて暗号化データEK(D)を復号化できる。これに対し、本実施形態に係る秘密情報管理装置10Tでは、鍵管理装置40がデータ鍵Kを受信し、暗号化データ管理装置50が暗号化データEK(D)等を記憶する。そのため、鍵管理装置40のメモリ44がRAMである場合、電源が切れるとデータ鍵Kが消去され、暗号化データ管理装置50に記憶された暗号化データEK(D)を復号化することができなくなる。それゆえ、データDの秘匿性を高めることができる。
【0098】
また、第2の実施形態に係る秘密情報管理装置10Sにおいては、各暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)と暗号化データEK(D)とを単一の装置に記憶するため、秘密情報管理装置10Sの管理者は、公開鍵リストLに基づいて暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を復号化処理することにより、データDを閲覧できる場合がある。これに対し、本実施形態に係る秘密情報管理装置10Tにおいては、鍵管理装置40が公開鍵リストLを記憶し、暗号化データ管理装置50が暗号化データEK(D)等を記憶する。それゆえ、鍵管理装置40と暗号化データ管理装置50との両装置に記憶された情報を揃えなければ暗号化データEK(D)を復号化できないので、データDの秘匿性を高めることができる。
【0099】
<第4の実施形態>
図18は本発明の第4の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【0100】
本実施形態においては、第3の実施形態とは異なり、暗号化データ管理装置50を省略した構成となっており、鍵管理装置40が、生成した暗号化データ鍵EPx(K)およびn個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)をユーザ端末20に返信する機能をもっている。ユーザ端末20では、暗号化データ鍵EPx(K)およびn個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)が返信されると、それらを暗号化データEK(D)と互いに関連付けて記憶部21に記憶する。
【0101】
次に、本実施形態に係る秘密情報管理システムによるデータの暗号化の動作を、図19のフローチャートおよび図20のデータフローの概念図を参照して説明する。
【0102】
始めに、ユーザ端末20は、前述した処理V1〜V4と同一の処理W1〜W4を実行し、データ鍵K・分散管理者ID(n人分)・しきい値k・ユーザIDの情報を鍵管理装置40へ送信する(W4)。
【0103】
鍵管理装置40では、受信したデータ鍵K・分散管理者ID・しきい値k・ユーザIDをメモリ44に記憶するとともに、ユーザIDと、データ名称“data”と、分散管理者IDと、しきい値kとを互いに関連付けてなる分散管理者IDリストを公開鍵リスト記憶部13Pに記憶する。
【0104】
しかる後、鍵管理装置40では、前述した処理V6〜V8と同一の処理W5〜W7を実行し、n個の暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)を生成する(W6)とともに、暗号化データ鍵EPx(K)を生成する(W7)。
【0105】
それから、鍵管理装置40は、これらの暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)および暗号化データ鍵EPx(K)を、データ鍵Kの送信元であるユーザ端末20に返信する(W8)。
【0106】
ユーザ端末20では、暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)および暗号化データ鍵EPx(K)を受信すると、それらを暗号化データEK(D)と互いに関連付けて記憶部21に記憶する(W9)。
【0107】
なお、暗号化データEK(D)の復号化の動作は、第1の実施形態と同様にして行なわれる。ただし、復号化動作を行なう主体は、復号化部19を有する鍵管理装置40であり、復号化部19は、暗号化データ鍵および暗号化分散鍵をユーザ端末20から読み込む。
【0108】
以上説明したように、本実施形態に係る秘密情報管理システムによれば、鍵管理装置40により生成された暗号化分散鍵EP1(B1),EP2(B2)…EPn(Bn)をユーザ端末20が記憶するので、ユーザ秘密鍵Sxをなくした場合にも、しきい値k個以上の分散鍵を収集してデータ鍵Kを復元することにより暗号化データEK(D) を復号化できる。
【0109】
また、本実施形態に係る秘密情報管理システムを用いれば、暗号化したデータをユーザ端末20に記憶しておくことにより、ユーザ端末20を他人に使用されてもデータを閲覧されることがなく、かつユーザ秘密鍵Sxをなくしても暗号化データEK(D)を復号化し得るシステムを構築することができる。
【0110】
なお、復号化動作を行なう主体は、鍵管理装置40に限らず、あらゆる可能性が考えられる。例えば、復号化部19の機能をコンピュータに実現させるためのプログラムをユーザ端末20又は分散管理者端末30にインストールすることにより、ユーザ端末20又は分散管理者端末30に復号化動作を行なわせるように変形することができる。
【0111】
<その他>
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0112】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0113】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
【0114】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0115】
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0116】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0117】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【図面の簡単な説明】
【0118】
【図1】本発明の第1の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【図2】同実施形態に係る公開鍵リスト記憶部の構成を示す模式図である。
【図3】同実施形態に係る暗号化データ記憶部の構成を示す模式図である。
【図4】同実施形態に係るユーザ端末の構成を示す模式図である。
【図5】同実施形態に係る分散管理者装置の画面構成の例を示す模式図である。
【図6】同実施形態に係る暗号化の動作を説明するためのフローチャートである。
【図7】同実施形態に係る暗号化のデータフローの概念図である。
【図8】同実施形態に係る復号化の動作を説明するためのフローチャートである。
【図9】同実施形態に係る第2復号化方式による復号化のデータフローの概念図である。
【図10】同実施形態に係るユーザ端末の画面構成の一例を示す模式図である。
【図11】同実施形態に係るディスク装置の変形例を示す模式図である。
【図12】本発明の第2の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【図13】同実施形態に係る暗号化の動作を説明するためのフローチャートである。
【図14】同実施形態に係る動作を説明するためのデータフローの概念図である。
【図15】本発明の第3の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【図16】同実施形態に係る暗号化の動作を説明するためのフローチャートである。
【図17】同実施形態に係る動作を説明するためのデータフローの概念図である。
【図18】本発明の第4の実施形態に係る秘密情報管理システムの構成を示す模式図である。
【図19】同実施形態に係る暗号化の動作を説明するためのフローチャートである。
【図20】同実施形態に係る動作を説明するためのデータフローの概念図である。
【符号の説明】
【0119】
10・10S・10T・・・秘密情報管理装置、11・・・通信装置、12・・・CPU、13・・・ディスク装置、13P・・・公開鍵リスト記憶部、13Q・・・暗号化データ記憶部、14・・・メモリ、15・・・データ鍵生成部、16・・・秘密分散部、17・・・暗号化部、18・・・データ管理部、19・・・復号化部、20・・・ユーザ端末、21・・・記憶部、22・・・入力部、23・・・演算部、24・・・通信部、25・・・表示部、30・・・分散管理者端末、40・・・鍵管理装置、41・・・通信装置、42・・・CPU、43・・・ディスク装置、44・・・メモリ、50・・・暗号化データ管理装置、51・・・通信装置、52・・・CPU、53・・・ディスク装置、54・・・メモリ。

【特許請求の範囲】
【請求項1】
しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用可能な秘密情報管理装置であって、
データと、分散数n個分の分散管理者IDと、前記しきい値kと、ユーザIDとを受信するためのデータ受信手段と、
互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個以上含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵とを含む公開鍵リストを予め記憶する公開鍵リスト記憶手段と、
乱数を用いてデータ鍵を生成するデータ鍵生成手段と、
このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、
前記受信したユーザIDに基づいて、前記公開鍵リスト記憶手段から前記ユーザ公開鍵を検索し、該ユーザ公開鍵を用いて前記データ鍵を暗号化し、暗号化データ鍵を生成する暗号化データ鍵生成手段と、
前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、
前記データ受信手段が受信するn個の分散管理者IDに関連する分散管理者公開鍵を前記公開鍵リスト記憶手段から読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、
前記暗号化データ、前記暗号化データ鍵および前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と、
前記暗号化データの復号化要求を復号化方式情報とともに受信した場合、該復号化方式情報が、第1復号化方式情報および第2復号化方式情報のいずれであるかを判定する復号化方式判定手段と、
前記復号化方式情報が第1復号化方式情報である場合、前記暗号化データ鍵を該暗号化データ鍵の復号化要求とともに、前記復号化方式情報の送信元に送信する暗号化データ鍵送信手段と、
前記暗号化データ鍵の復号化要求に応じて、前記ユーザ公開鍵に対応するユーザ秘密鍵により復号化されたデータ鍵を前記復号化方式情報の送信元から受信した場合、このデータ鍵を用いて前記暗号化データを復号化して前記データを得る第1復号化手段と、
前記復号化方式情報が第2復号化方式情報である場合、前記公開鍵リストに含まれる分散管理者アドレス情報に基づいて、前記暗号化データ記憶手段内のn個の暗号化分散鍵を個別に送信する暗号化分散鍵送信手段と、
前記各暗号化分散鍵の送信先で分散管理者秘密鍵により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を復元するデータ鍵復元手段と、
このデータ鍵に基づいて前記暗号化データを復号化して前記データを得る第2復号化手段と
を備えたことを特徴とする秘密情報管理装置。
【請求項2】
データを入力するためのユーザ端末と、しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用して、前記データを暗号化した暗号化データを記憶するための秘密情報管理装置とを備えた秘密情報管理システムであって、
前記秘密情報管理装置は、
前記データと、分散数n個分の分散管理者IDと、前記しきい値kと、ユーザIDとを受信するためのデータ受信手段と、
互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個以上含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵とを含む公開鍵リストを予め記憶する公開鍵リスト記憶手段と、
乱数を用いてデータ鍵を生成するデータ鍵生成手段と、
このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、
前記受信したユーザIDに基づいて、前記公開鍵リスト記憶手段から前記ユーザ公開鍵を検索し、該ユーザ公開鍵を用いて前記データ鍵を暗号化し、暗号化データ鍵を生成する暗号化データ鍵生成手段と、
前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、
前記データ受信手段が受信するn個の分散管理者IDに関連する分散管理者公開鍵を前記公開鍵リスト記憶手段から読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、
前記暗号化データ、前記暗号化データ鍵および前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と、
前記暗号化データの復号化要求を復号化方式情報とともに前記ユーザ端末から受信した場合、該復号化方式情報が、第1復号化方式情報および第2復号化方式情報のいずれであるかを判定する復号化方式判定手段と、
前記復号化方式情報が第1復号化方式情報である場合、前記暗号化データ鍵を該暗号化データ鍵の復号化要求とともに前記ユーザ端末に送信する暗号化データ鍵送信手段と、
前記暗号化データ鍵の復号化要求に応じて、前記ユーザ公開鍵に対応するユーザ秘密鍵により復号化されたデータ鍵を前記ユーザ端末から受信するデータ鍵受信手段と、
前記データ鍵受信手段により受信したデータ鍵を用いて前記暗号化データを復号化して前記データを得る第1復号化手段と、
前記復号化方式情報が第2復号化方式情報である場合、前記公開鍵リストに含まれる分散管理者アドレス情報に基づいて、前記暗号化データ記憶手段内のn個の暗号化分散鍵を個別に送信する暗号化分散鍵送信手段と、
前記各暗号化分散鍵の送信先で分散管理者秘密鍵により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を復元するデータ鍵復元手段と、
このデータ鍵に基づいて前記暗号化データを復号化して前記データを得る第2復号化手段と
を備え、
前記ユーザ端末は、
前記データと、分散数n個分の分散管理者IDと、前記しきい値kと、前記ユーザIDとを、前記秘密情報管理装置に送信するためのデータ送信手段と、
前記暗号化データの復号化要求を前記復号化方式情報とともに前記秘密情報管理装置に送信する復号化要求送信手段と、
前記暗号化データ鍵及び該暗号化データ鍵の復号化要求を前記秘密情報管理装置から受信した場合、該暗号化データ鍵を前記ユーザ秘密鍵により復号化し、該秘密情報管理装置にデータ鍵を送信するデータ鍵送信手段と
を備えたことを特徴とする秘密情報管理システム。
【請求項3】
データを入力するためのユーザ端末と、しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用して、前記データを暗号化した暗号化データを記憶するための秘密情報管理装置とを備えた秘密情報管理システムであって、
前記秘密情報管理装置は、
前記暗号化データと、データ鍵と、分散数n個分の分散管理者IDと、しきい値kと、ユーザIDとを受信するための暗号化データ受信手段と、
互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個以上含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵とを含む公開鍵リストを予め記憶する公開鍵リスト記憶手段と、
前記受信したユーザIDに基づいて、前記公開鍵リスト記憶手段から前記ユーザ公開鍵を検索し、該ユーザ公開鍵を用いて前記データ鍵を暗号化し、暗号化データ鍵を生成する暗号化データ鍵生成手段と、
前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、
前記データ受信手段が受信するn個の分散管理者IDに関連する分散管理者公開鍵を前記公開鍵リスト記憶手段から読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、
前記暗号化データ、前記暗号化データ鍵および前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と
を備え、
前記ユーザ端末は、
前記データと、分散数n個分の分散管理者IDと、前記しきい値kと、前記ユーザIDとを入力するための手段と、
乱数を用いてデータ鍵を生成するデータ鍵生成手段と、
このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、
前記暗号化データと、前記データ鍵と、前記n個分の分散管理者IDと、前記しきい値kとを前記秘密情報管理装置に送信する暗号化データ送信手段と
を備えたことを特徴とする秘密情報管理システム。
【請求項4】
請求項3に記載の秘密情報管理システムにおいて、
前記秘密情報管理装置は、
前記暗号化データ受信手段、前記公開鍵リスト記憶手段、前記暗号化データ鍵生成手段、前記分散鍵生成手段および前記暗号化分散鍵生成手段を有する鍵管理装置と、
前記暗号化データ記憶手段を有する暗号化データ管理装置と
を備えたことを特徴とする秘密情報管理システム。
【請求項5】
請求項4に記載の秘密情報管理システムにおいて、
前記鍵管理装置は、
前記暗号化データ鍵およびn個の暗号化分散鍵を前記ユーザ端末に送信する手段
を備え、
前記ユーザ端末は、
前記暗号化データ、前記暗号化データ鍵およびn個の暗号化分散鍵を互いに関連付けて記憶する手段
を備えたことを特徴とする秘密情報管理システム。
【請求項6】
しきい値kおよび分散数nの(k,n)型の秘密分散方式を使用可能な秘密情報管理装置であって、
データと、ユーザIDとを受信するためのデータ受信手段と、
互いに関連付けられた分散管理者IDと分散管理者公開鍵と分散管理者アドレス情報との組をn個含み、かつ前記ユーザIDと該ユーザIDに対応するユーザ公開鍵を含む公開鍵リストを、前記しきい値kに関連付けて予め記憶する公開鍵リスト記憶手段と、
乱数を用いてデータ鍵を生成するデータ鍵生成手段と、
このデータ鍵に基づいて前記データを暗号化し、暗号化データを生成する暗号化データ生成手段と、
前記(k,n)型の秘密分散方式に基づいて前記データ鍵を秘密分散し、n個の分散鍵を生成する分散鍵生成手段と、
前記受信したユーザIDから、前記公開鍵リスト内のn個の分散管理者公開鍵を読み込み、該n個の分散管理者公開鍵に基づいて、前記n個の分散鍵を個別に暗号化し、n個の暗号化分散鍵を生成する暗号化分散鍵生成手段と、
前記暗号化データおよび前記n個の暗号化分散鍵が記憶される暗号化データ記憶手段と、
前記暗号化データの復号化要求を受信した場合、前記公開鍵リストに含まれるn個の分散管理者アドレス情報に基づいて、前記暗号化データ記憶手段内のn個の暗号化分散鍵を個別に送信する暗号化分散鍵送信手段と、
前記各暗号化分散鍵の送信先で分散管理者秘密鍵により暗号化分散鍵が個別に復号化され、k個の送信先から分散鍵を受信した場合、前記(k,n)型の秘密分散方式に基づいて前記データ鍵を復元するデータ鍵復元手段と、
このデータ鍵に基づいて前記暗号化データを復号化して前記データを得る復号化手段と
を備えたことを特徴とする秘密情報管理装置。

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