説明

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

【課題】暗号化された秘密情報の不正利用を防止し復号化を制限するために好適な情報処理装置、情報処理システム及びプログラムを提供する。
【解決手段】情報処理システム10において、証拠提示者端末12は秘密情報を暗号化して暗号データを復号者端末13に送信する。復号者端末13は暗号データを受信し、復号化を行う旨の宣言となる復号関連情報を生成し、公開サーバ14に送信する。公開サーバ14は復号関連情報を受信し、復号者端末13が復号化を行う旨を公開掲示板に掲示し、復号化を許可する場合に署名データを復号者端末13に送信する。復号者端末13は署名データを受信し、署名データを用いて暗号データを復号化して秘密情報を取得する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、暗号化された秘密情報の不正利用を防止し復号化を制限するために好適な情報処理装置、情報処理システム及びプログラムに関する。
【背景技術】
【0002】
監視カメラによる撮影映像等は、犯罪や事故等が起こった際の重要な証拠として扱われている。さらに近年では、犯罪や事故等の増加により、例えば自動車にカーレコーダを搭載して運転記録等を採取するなどの検討が進められている。
【0003】
ところで、監視カメラやカーレコーダなどを用いて得られた情報には、プライバシー情報が多く含まれていることが多い。また、プライバシー情報の本来の所有者とプライバシー情報の開示者とが異なる場合も多い。そして、プライバシー情報の本来の所有者の知らないところで意に反してプライバシー情報が開示されプライバシーが侵害される危険性がある。そのため、プライバシー情報を様々な暗号化技術を用いて秘匿化したり、情報の開示を制限したりする対策が必要不可欠である。
【0004】
例えば、特許文献1や特許文献2のように、秘密情報を分散して情報の開示を制限する秘密分散法が用いられている。この秘密分散法によれば、例えば、暗号化された秘密情報を復号化するための秘密鍵をm個(mは1以上の整数)に分割し、この秘密鍵を持つ正当な復号者が所定のn人(nは1以上m以下の整数)集まったときにのみ復号可能とする。
【特許文献1】特開2005−167794号公報
【特許文献2】特開2005−141436号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した秘密分散法では、秘密情報を復号化するためにn人の同意者さえ集めれば、これら同意者以外の他者(例えば、プライバシー情報の本来の所有者)に知られることなく秘密情報を復号化することが可能である。また、従来技術では、秘密情報が復号化されたか、あるいは、復号化がいつ誰によって行われたのかを他者が知ることはできない。そのため、プライバシー情報の本来の所有者が把握できないところでプライバシー情報の取得と復号化が行われ秘密情報が悪用される可能性があり、また、不正利用されているかどうかを判断することができないという問題がある。
【0006】
この発明は、上記実情に鑑みてなされたものであり、暗号化された秘密情報の不正利用を防止し復号化を制限するために好適な情報処理装置、情報処理システム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の第1の観点に係る情報処理装置は、
秘密鍵を記憶する秘密鍵記憶部と、
情報を暗号化した暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部と、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部と、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータと前記秘密鍵記憶部に記憶された秘密鍵とから、前記暗号データの復号化に用いる署名データを生成する署名データ生成部と、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部と、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部と、
を備える。
【0008】
前記判定部は、前記リクエスト受付部が受け付けたリクエストデータが、前記秘密鍵記憶部に記憶された前記秘密鍵に対応する公開鍵を用いて生成されたものと判別した場合に、前記暗号データの復号化を許可する判定を行ってもよい。
【0009】
前記リクエストデータは、前記暗号データのハッシュ値を含み、
前記判定部は、前記ハッシュ値に基づいて前記暗号データの復号化を許可するか否かを判定してもよい。
【0010】
前記リクエストデータは、前記暗号データの復号化の許可を要求したユーザの識別情報を含み、
前記署名データ出力部は、前記データ記憶部に記憶された署名データを、前記リクエスト受付部が受け付けたリクエストデータに含まれる識別情報に対応づけて出力してもよい。
【0011】
上記目的を達成するため、本発明の第2の観点に係る情報処理装置は、
秘密鍵を記憶する秘密鍵記憶部と、
前記秘密鍵に対応する公開鍵を用いて情報を暗号化した暗号データを受け付ける暗号データ受付部と、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部と、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部と、
前記リクエスト出力部により出力された前記リクエストデータに対応する、前記暗号データ受付部が受け付けた前記暗号データの復号化に用いる署名データの入力を受け付ける署名データ受付部と、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部と、
を備える。
【0012】
前記リクエスト生成部は、前記暗号データ受付部が受け付けた前記暗号データのハッシュ値を求めて、当該ハッシュ値を用いて前記リクエストデータを生成してもよい。
【0013】
上記目的を達成するため、本発明の第3の観点に係る情報処理システムは、
秘密鍵と公開鍵を用いて情報の暗号化・復号化を行う情報処理システムであって、
前記公開鍵を記憶する公開鍵記憶部と、
前記公開鍵記憶部により記憶された公開鍵を用いて前記情報を暗号化して暗号データを生成する暗号部と、
前記暗号部により生成された暗号データを取得して出力する暗号データ出力部と、
を備える第1の情報処理装置と、
前記暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部と、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部と、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータから前記暗号データの復号化に用いる署名データを生成する署名データ生成部と、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部と、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部と、
を備える第2の情報処理装置と、
前記秘密鍵を記憶する秘密鍵記憶部と、
前記暗号データを受け付ける暗号データ受付部と、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部と、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部と、
前記リクエスト出力部により出力された前記リクエストデータに対応する前記署名データを受け付ける署名データ受付部と、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部と、
を備える第3の情報処理装置と、
から構成される。
【0014】
上記目的を達成するため、本発明の第4の観点に係るプログラムは、
コンピュータを、
秘密鍵を記憶する秘密鍵記憶部、
情報を暗号化した暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータと前記秘密鍵記憶部に記憶された秘密鍵とから、前記暗号データの復号化に用いる署名データを生成する署名データ生成部、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部
として機能させる。
【0015】
上記目的を達成するため、本発明の第5の観点に係るプログラムは、
コンピュータを、
秘密鍵を記憶する秘密鍵記憶部、
前記秘密鍵に対応する公開鍵を用いて情報を暗号化した暗号データを受け付ける暗号データ受付部、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部、
前記リクエスト出力部により出力された前記リクエストデータに対応する、前記暗号データ受付部が受け付けた前記暗号データの復号化に用いる署名データを受け付ける署名データ受付部、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部
として機能させる。
【発明の効果】
【0016】
この発明によれば、暗号化された秘密情報の復号化を制限して不正利用を防止するために好適な情報処理装置、情報処理システム及びプログラムを提供することができる。
【発明を実施するための最良の形態】
【0017】
図1は、本実施形態に係る情報処理システム10の構成を示す図である。本図のように、情報処理システム10は、キーセンターサーバ11と、証拠提示者端末12と、復号者端末13と、公開サーバ14と、ネットワーク15と、を含む。
【0018】
なお、以下の説明では、証拠提示者とは、秘密情報msgの本来の所有者であり、秘密情報msgを暗号化して、暗号化された秘密情報Enc(msg)を送信する側の者のことである。
【0019】
キーセンターサーバ11は、証拠提示者端末12、復号者端末13及び公開サーバ14が用いる共通パラメータを生成して記憶し、必要に応じてこれらの共通パラメータを証拠提示者端末12、復号者端末13及び公開サーバ14に提供する。なお、詳細については後述する。
【0020】
証拠提示者端末12は、秘密情報msgを暗号化して、暗号化された秘密情報Enc(msg)を復号者端末13に送信する。この暗号化は、公開サーバ14が所有する公開鍵PKsと、復号者端末13が所有する公開鍵PKiと、を用いて行われる。なお、詳細については後述する。
【0021】
復号者端末13は、暗号化された秘密情報Enc(msg)を証拠提示者端末12から受信する。復号者端末13は、復号化を行う前に復号関連情報EViを生成し、復号化を行う宣言として公開サーバ14に復号関連情報EViを送信する。そして、公開サーバ14により復号化を行う旨が公開されて復号化が許可されると、暗号化された秘密情報Enc(msg)を復号化する。すなわち、元の秘密情報msgを取得することができる。なお、詳細については後述する。
【0022】
公開サーバ14は、復号者端末13から復号関連情報EViを受信すると、復号者端末13が復号化を行う旨の宣言を公開する。そして、復号化を許可するか否かを判定し、許可する場合に、復号者端末13が復号化を行うために必要な署名データSNsを生成する。なお、詳細については後述する。
【0023】
ネットワーク15は、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット等から構成され、キーセンターサーバ11、証拠提示者端末12、復号者端末13及び公開サーバ14との間で情報の送受信を行うために用いられる。なお、ネットワーク15はこれらに限定されるものではなく、例えば、キーセンターサーバ11、証拠提示者端末12、復号者端末13及び公開サーバ14が互いに通信可能な電話回線、専用回線等であってもよい。
【0024】
次に、キーセンターサーバ11の構成について、図2を用いて説明する。本図のように、キーセンターサーバ11は、制御部110と、RAM(Random Access Memory)111と、ROM(Read Only Memory)112と、記憶部113と、出力部114と、I/F(Interface)115と、入力部116と、システムバス117と、を含む。
【0025】
制御部110は、CPU(Central Processing Unit)等の演算処理装置から構成され、キーセンターサーバ11の全体の制御を行う。また、制御部110は、ROM112や記憶部113に格納されるプログラム等を読み出して、読み出したプログラム等に基づいて所定の処理を実行する。
【0026】
例えば、制御部110は、後述する共通パラメータを生成して、記憶部113に記憶させる処理を行う。また、例えば、制御部110は、記憶部113に記憶される共通パラメータを取得する要求を証拠提示者端末12、復号者端末13及び公開サーバ14から受け付けると、要求された共通パラメータを送信する処理を行う。
【0027】
RAM111は、制御部110が所定の処理を実行するために読み出したプログラムや、制御部110が当該プログラムを実行するために必要なデータを格納する揮発性メモリである。
【0028】
ROM112は、キーセンターサーバ11の全体の制御に必要なオペレーティングシステム(以下、「OS」と呼ぶ)やプログラム等を記憶する不揮発性メモリである。制御部110は、ROM112から必要に応じてOSやプログラム等を読み出して、当該OSやプログラム等に基づいて所定の処理を実行する。なお、このOSやプログラム等を記憶部113に記憶し、制御部110は記憶部113から必要に応じてOSやプログラム等を読み出して所定の処理を実行するように構成してもよい。
【0029】
記憶部113は、ハードディスクドライブ等の記憶装置から構成される。例えば、記憶部113は、後述する各処理で用いられる双線型写像e:(G1×G1→G2)を記憶する。ここで、G1、G2は、位数q(qは1以上の整数)を持つ巡回群を表す。なお、qは十分に大きい素数であることが望ましい。また、記憶部113は、任意のビット列を群G1のサイズのデータ(例えば、疑似乱数等)を生成するハッシュ関数H1と、任意のビット列を秘密情報msgのサイズのデータ(例えば、疑似乱数等)を生成するハッシュ関数H2と、巡回群G1の任意の元Pと、を記憶する。例えば、巡回群G1は、証拠提示者の公開情報である。
なお、記憶部113に記憶されるこれらの情報は、キーセンターサーバ11、証拠提示者端末12、復号者端末13及び公開サーバ14で共通して用いられる共通パラメータであり、必要に応じて提供される公開情報である。
【0030】
出力部114は、モニタ等の表示装置やスピーカ等の出力装置から構成され、制御部110からの指示により、制御部110がROM112等に格納されたプログラムに従って実行した処理の結果データなどを出力する。
【0031】
I/F115は、CD(Compact Disc)等のリムーバルディスクに対して読み書きするためのCD−ROMドライブ等のドライブ装置や、外部のネットワーク15に繋ぐNIC(Network Interface Card)などと接続するインタフェースである。
【0032】
入力部116は、キーボード、マウス等の入力装置から構成され、これら入力装置を用いてユーザによって入力されるデータを受け付けて、入力されたデータを制御部110に入力する。
【0033】
システムバス117は、制御部110、RAM111、ROM112、記憶部113、出力部114、I/F115、及び、入力部116の間で命令やデータを転送するための伝送経路である。
【0034】
次に、証拠提示者端末12の構成について説明する。証拠提示者端末12は、制御部120と、RAM(Random Access Memory)121と、ROM(Read Only Memory)122と、記憶部123と、出力部124と、I/F(Interface)125と、入力部126と、システムバス127と、を含む。
【0035】
なお、証拠提示者端末12の構成を示すブロック図は図2と実質的に同等であるため、本図においてそれぞれ、制御部110を制御部120に、RAM111をRAM121に、ROM112をROM122に、記憶部113を記憶部123に、出力部114を出力部124に、I/F115をI/F125に、入力部116を入力部126に、システムバス117をシステムバス127に、キーセンターサーバ11を証拠提示者端末12に読み替えるものとし、図面は省略する。
【0036】
制御部120は、CPU(Central Processing Unit)等の演算処理装置から構成され、証拠提示者端末12の全体の制御を行う。また、制御部120は、ROM122や記憶部123に格納されるプログラム等を読み出して、読み出したプログラム等に基づいて所定の処理を実行する。
【0037】
例えば、制御部120は、キーセンターサーバ11に記憶される共通パラメータ、復号者端末13が所有する公開鍵PKi、公開サーバ14が所有する公開鍵PKs等を用いて、任意の秘密情報msgを暗号化する処理を行う。なお、この暗号化処理の詳細については後述する。
【0038】
RAM121は、制御部120が所定の処理を実行するために読み出したプログラムや、制御部120が当該プログラムを実行するために必要なデータを格納する揮発性メモリである。
【0039】
ROM122は、証拠提示者端末12の全体の制御に必要なOSやプログラム等を記憶する不揮発性メモリである。制御部120は、ROM122から必要に応じてOSやプログラム等を読み出して、当該OSやプログラム等に基づいて所定の処理を実行する。なお、このOSやプログラム等を記憶部123に記憶し、制御部120は記憶部123から必要に応じてOSやプログラム等を読み出して所定の処理を実行するように構成してもよい。
【0040】
記憶部123は、ハードディスクドライブ等の記憶装置から構成される。
【0041】
出力部124は、モニタ等の表示装置やスピーカ等の出力装置から構成され、制御部120からの指示により、制御部120がROM122等に格納されたプログラムに従って実行した処理の結果データなどを出力する。
【0042】
I/F125は、CD(Compact Disc)等のリムーバルディスクに対して読み書きするためのCD−ROMドライブ等のドライブ装置や、外部のネットワーク15に繋ぐNIC(Network Interface Card)などと接続するインタフェースである。
【0043】
入力部126は、キーボード、マウス等の入力装置から構成され、これら入力装置を用いてユーザによって入力されるデータを受け付けて、入力されたデータを制御部120に入力する。
【0044】
システムバス127は、制御部120、RAM121、ROM122、記憶部123、出力部124、I/F125、及び、入力部126の間で命令やデータを転送するための伝送経路である。
【0045】
次に、復号者端末13の構成について説明する。復号者端末13は、制御部130と、RAM(Random Access Memory)131と、ROM(Read Only Memory)132と、記憶部133と、出力部134と、I/F(Interface)135と、入力部136と、システムバス137と、を含む。
【0046】
なお、復号者端末13の構成を示すブロック図は図2と実質的に同等であるため、本図においてそれぞれ、制御部110を制御部130に、RAM111をRAM131に、ROM112をROM132に、記憶部113を記憶部133に、出力部114を出力部134に、I/F115をI/F135に、入力部116を入力部136に、システムバス117をシステムバス137に、キーセンターサーバ11を復号者端末13に読み替えるものとし、図面は省略する。
【0047】
制御部130は、CPU(Central Processing Unit)等の演算処理装置から構成され、復号者端末13の全体の制御を行う。また、制御部130は、ROM132や記憶部133に格納されるプログラム等を読み出して、読み出したプログラム等に基づいて所定の処理を実行する。
【0048】
例えば、制御部130は、キーセンターサーバ11に記憶される共通パラメータ、復号者端末13が所有する秘密鍵SKi等を用いて、秘密情報msgの復号化を行う旨の宣言となる復号関連情報EViを生成する処理(以下、「復号関連情報生成処理」と呼ぶ)を行う。また、例えば、制御部130は、暗号化された秘密情報Enc(msg)の復号化を公開サーバ14により許可された場合に、キーセンターサーバ11に記憶される共通パラメータ、復号者端末13が所有する秘密鍵SKi、公開サーバ14から受信した復号化を許可することを示す署名データSNs等を用いて、証拠提示者端末12から受信した暗号化された秘密情報Enc(msg)を復号化する処理を行う。なお、復号関連情報生成処理と復号化処理の詳細については後述する。
【0049】
RAM131は、制御部130が所定の処理を実行するために読み出したプログラムや、制御部130が当該プログラムを実行するために必要なデータを格納する揮発性メモリである。
【0050】
ROM132は、復号者端末13の全体の制御に必要なOSやプログラム等を記憶する不揮発性メモリである。制御部130は、ROM132から必要に応じてOSやプログラム等を読み出して、当該OSやプログラム等に基づいて所定の処理を実行する。なお、このOSやプログラム等を記憶部133に記憶し、制御部130は記憶部133から必要に応じてOSやプログラム等を読み出して所定の処理を実行するように構成してもよい。
【0051】
記憶部133は、ハードディスクドライブ等の記憶装置から構成される。
【0052】
出力部134は、モニタ等の表示装置やスピーカ等の出力装置から構成され、制御部130からの指示により、制御部130がROM132等に格納されたプログラムに従って実行した処理の結果データなどを出力する。
【0053】
I/F135は、CD(Compact Disc)等のリムーバルディスクに対して読み書きするためのCD−ROMドライブ等のドライブ装置や、外部のネットワーク15に繋ぐNIC(Network Interface Card)などと接続するインタフェースである。
【0054】
入力部136は、キーボード、マウス等の入力装置から構成され、これら入力装置を用いてユーザによって入力されるデータを受け付けて、入力されたデータを制御部130に入力する。
【0055】
システムバス137は、制御部130、RAM131、ROM132、記憶部133、出力部134、I/F135、及び、入力部136の間で命令やデータを転送するための伝送経路である。
【0056】
次に、公開サーバ14の構成について説明する。公開サーバ14は、制御部140と、RAM(Random Access Memory)141と、ROM(Read Only Memory)142と、記憶部143と、出力部144と、I/F(Interface)145と、入力部146と、システムバス147と、を含む。
【0057】
なお、公開サーバ14の構成を示すブロック図は図2と実質的に同等であるため、本図においてそれぞれ、制御部110を制御部140に、RAM111をRAM141に、ROM112をROM142に、記憶部113を記憶部143に、出力部114を出力部144に、I/F115をI/F145に、入力部116を入力部146に、システムバス117をシステムバス147に、キーセンターサーバ11を公開サーバ14に読み替えるものとし、図面は省略する。
【0058】
制御部140は、CPU(Central Processing Unit)等の演算処理装置から構成され、公開サーバ14の全体の制御を行う。また、制御部140は、ROM142や記憶部143に格納されるプログラム等を読み出して、読み出したプログラム等に基づいて所定の処理を実行する。
【0059】
例えば、制御部140は、復号者端末13から復号関連情報EViを受信し、この復号者端末13が暗号化された秘密情報Enc(msg)の復号化を行う旨の宣言を、後述する公開掲示板610に掲示する処理(以下、「復号化宣言公開処理」と呼ぶ)を行う。また、例えば、制御部140は、この復号者端末13に復号化を許可する場合に、受信した復号関連情報EVi、公開サーバ14が所有する秘密鍵SKs等を用いて、復号化を許可することを示す署名データSNsを生成する処理(以下、「署名データ生成処理」と呼ぶ)を行う。なお、復号化宣言公開処理と署名データ生成処理の詳細については後述する。
【0060】
RAM141は、制御部140が所定の処理を実行するために読み出したプログラムや、制御部140が当該プログラムを実行するために必要なデータを格納する揮発性メモリである。
【0061】
ROM142は、公開サーバ14の全体の制御に必要なOSやプログラム等を記憶する不揮発性メモリである。制御部140は、ROM142から必要に応じてOSやプログラム等を読み出して、当該OSやプログラム等に基づいて所定の処理を実行する。なお、このOSやプログラム等を記憶部143に記憶し、制御部140は記憶部143から必要に応じてOSやプログラム等を読み出して所定の処理を実行するように構成してもよい。
【0062】
記憶部143は、ハードディスクドライブ等の記憶装置から構成される。例えば、記憶部143は、復号者端末13から受け取った復号化を行う旨の宣言を示す復号関連情報EViを、署名データSNsに対応づけて記憶する復号関連情報データベース600や、復号関連情報データベース600に基づいて公開情報を掲示する公開掲示板610を記憶する。なお、復号関連情報データベース600及び公開掲示板610の詳細については後述する。
【0063】
出力部144は、モニタ等の表示装置やスピーカ等の出力装置から構成され、制御部140からの指示により、制御部140がROM142等に格納されたプログラムに従って実行した処理の結果データなどを出力する。
【0064】
I/F145は、CD(Compact Disc)等のリムーバルディスクに対して読み書きするためのCD−ROMドライブ等のドライブ装置や、外部のネットワーク15に繋ぐNIC(Network Interface Card)などと接続するインタフェースである。
【0065】
入力部146は、キーボード、マウス等の入力装置から構成され、これら入力装置を用いてユーザによって入力されるデータを受け付けて、入力されたデータを制御部140に入力する。
【0066】
システムバス147は、制御部140、RAM141、ROM142、記憶部143、出力部144、I/F145、及び、入力部146の間で命令やデータを転送するための伝送経路である。
【0067】
(暗号化処理)
次に、証拠提示者端末12の制御部120が実行する暗号化処理について、図3のフローチャートを用いて説明する。
【0068】
例えば、秘密情報msgは、証拠提示者自身のプライバシー情報や、第三者には知られないように秘密状態を保持したまま相手に送信したいメッセージなどである。
【0069】
暗号化処理では、制御部120は、復号者端末13に送信するデータとして次の4つのデータを生成する。
(1)秘密情報msgのハッシュ値:H1(msg)
(2)証拠提示者の公開情報群G1上の1つの元:X
(3)秘密情報msgとは別の証拠提示者固有の暗号データ:R
(4)暗号化された秘密情報:Enc(msg)
以下、詳述する。
【0070】
制御部120は、キーセンターサーバ11からハッシュ関数H1を取得して、秘密情報msgのハッシュ値H1(msg)を求める(ステップS301)。すなわち、秘密情報msgのハッシュ値H1(msg)は、与えられた秘密情報msgから所定の長さのデータを生成するハッシュ関数H1を用いて求められる。ハッシュ関数H1は、キーセンターサーバ11に記憶される共通パラメータの1つであり、本実施形態の情報処理システム10内の公開情報である。
【0071】
一般に、ハッシュ関数は不可逆な一方向関数であり、得られたハッシュ値からは元データを生成することができない。そのため、通信の暗号化やデジタル署名などの分野で広く用いられている。なお、本発明は、ハッシュ関数H1の具体的な数式(あるいは論理式等)を定めるものではない。また、ハッシュ関数H1は、似た秘密情報msgから近いハッシュ値が得られず、値域に偏りがなく、異なる秘密情報msgから同じハッシュ値が容易に生成されないように定義されることが望ましい。
【0072】
制御部120は、キーセンターサーバ11から証拠提示者の公開情報群G1上の1つの元Xを取得する(ステップS302)。証拠提示者の公開情報群G1上の1つの元Xは、例えば証拠提示者のユーザ名など、証拠提示者に対応づけられるデータであり、本実施形態の情報処理システム10内の公開情報である。
【0073】
制御部120は、乱数rと、キーセンターサーバ11に記憶される証拠提示者の公開情報G1上の任意の元Pとを取得して、数1を用いて暗号データRを生成する(ステップS303)。すなわち、暗号データRは、証拠提示者の公開情報G1上の任意の元Pと、証拠提示者端末12が発生させた乱数rとを用いて、Pをr回加算したものである。ここで、乱数rは公開されない秘密の値である。
【0074】
【数1】

【0075】
なお、以下の説明においても、数1にあるような黒丸の記号は楕円曲線上の加法演算を示すものとする。
【0076】
暗号データRは、同じ秘密情報msgを再び暗号化する場合でも実質上同じ値にはならない値である。復号者が復号するためには、暗号化された秘密情報Enc(msg)と正しく対応づけられた暗号データRが必要である。
【0077】
制御部120は、得られたH1(msg)、X、rと、キーセンターサーバ11に記憶される公開情報であるハッシュ関数H1、H2及び双線型写像eと、公開サーバ14が所有する公開鍵PKsと、復号者端末13が所有する公開鍵PKiとから、数2を用いて暗号化された秘密情報Enc(msg)を生成する(ステップS304)。
【0078】
【数2】

【0079】
なお、以下の説明においても、数2にあるような○の中に+がある記号は排他的論理和を示すものとする。
【0080】
復号者端末13は、1組の秘密鍵SKiと公開鍵PKiを所有しており、このうち公開鍵PKiのみが証拠提示者端末12の取得可能な鍵である。例えば、公開鍵PKiは、予め記憶部123に記憶されている。
【0081】
以上のように得られた4つのデータ、すなわち、H1(msg)、X、R及びEnc(msg)は、証拠提示者情報と共に、ネットワーク15を介して復号者端末13に送信される。ここで、証拠提示者情報とは、証拠提示者(又は証拠提示者端末12)の識別情報などである。
【0082】
なお、上述の暗号データRと暗号化された秘密情報Enc(msg)を生成するための各数式等は1つの例であり、これに限定されるものではなく種々の変形が可能である。
【0083】
(復号関連情報生成処理)
次に、復号者端末13の制御部130が実行する復号関連情報生成処理について、図4のフローチャートを用いて説明する。
【0084】
復号関連情報生成処理では、制御部130は、暗号化された秘密情報Enc(msg)の復号化を行う旨の宣言となる復号関連情報EViを生成する。以下、詳述する。
【0085】
制御部130は、証拠提示者端末12からハッシュ値H1(msg)及び暗号データRとを受信する(ステップS401)。
【0086】
また、制御部130は、復号者端末13が所有する秘密鍵SKiを取得する(ステップS402)。例えば、秘密鍵SKiは、記憶部133に予め記憶されている。
【0087】
さらに、制御部130は、キーセンターサーバ11に記憶される公開情報であるハッシュ関数H1及び双線型写像eとを取得する(ステップS403)。
【0088】
制御部130は、ハッシュ値H1(msg)、暗号データR、秘密鍵SKi、ハッシュ関数H1及び双線型写像eから、数3を用いて復号関連情報EViを生成する(ステップS404)。
【0089】
【数3】

【0090】
すなわち、復号関連情報EViは、長さが証拠提示者の公開情報群G1のサイズで、ハッシュ関数H1を用いて得られるハッシュ値である。
【0091】
このように生成された復号関連情報EViは、ハッシュ値H1(msg)と証拠提示者情報と共に公開サーバ14に送信され、暗号化された秘密情報Enc(msg)の復号化を行う旨の宣言となる。そして、公開サーバ14は、復号者端末13が復号化を行う旨を公開掲示板610に掲示する。すなわち、復号者端末13以外の者は、この公開掲示板610を閲覧して、復号者端末13がある暗号化された秘密情報を復号化する(した)ことを知ることができる。
【0092】
上述した復号関連情報EViを生成するための数式等は1つの例であり、これに限定されるものではなく種々の変形が可能である。
【0093】
なお、後述するように、復号者端末13は、復号関連情報EViを公開サーバ14に送信しただけでは復号化を行うことはできず、公開サーバ14により復号化が許可された場合に生成される署名データSNsを受信しなければ復号化をすることはできない。また、復号関連情報EViは復号者端末13が所有する秘密鍵SKiを用いて生成されるため、他者がなりすましたり改ざんしたりして不正に復号化を行う旨の宣言を行うことはできない。
【0094】
(復号化宣言公開処理)
次に、公開サーバ14の制御部140が実行する復号化宣言公開処理について、図5のフローチャートを用いて説明する。
【0095】
復号化宣言公開処理では、制御部140は、復号者端末13から受信した復号関連情報EVi、ハッシュ値H1(msg)及び証拠提示者情報に基づいて、復号者端末13が復号化を行う旨を公開掲示板610に掲示する。以下、詳述する。
【0096】
制御部140は、復号者端末13から復号関連情報EVi、ハッシュ値H1(msg)及び証拠提示者情報を受信すると(ステップS501)、受信した各々のデータを公開サーバ14の記憶部143に記憶する(ステップS502)。例えば、公開サーバ14は、図6(a)のような復号関連情報データベース600を記憶部143に記憶する。本図の場合、復号関連情報データベース600は、受信日時、復号者及び内容を、復号関連情報EViとハッシュ値H1(msg)と証拠提示者情報とに対応づけて記憶する。
【0097】
なお復号関連情報データベース600に記憶される情報は、上述したものに限られるものではない。また、復号関連情報EVi、ハッシュ値H1(msg)及び証拠提示者情報を対応づけたテーブルなど、他の手法を用いて記憶してもよい。さらには、復号関連情報データベース600あるいはこれに相当するデータが記憶される場所は、記憶部143に限定されるものではない。
【0098】
さらに、制御部140は、復号関連情報データベース600に記憶されたデータに基づいて、復号者端末13が暗号化された秘密情報Enc(msg)の復号化を行う旨の掲示を公開掲示板610に掲示して公開する(ステップS503)。公開掲示板610は、ネットワーク15に接続されている他の証拠提示者端末12や復号者端末13などから閲覧が可能な掲示板であり、出力部124、134が備えるモニタ等に表示することができる。例えば、ユーザは一般的に用いられている閲覧用アプリケーションソフトウェア(以下、「ブラウザ」と呼ぶ)を用いて公開掲示板610を閲覧することができる。
【0099】
例えば、図6(b)は、ブラウザを用いて表示した公開掲示板610の構成例である。本図の場合、公開掲示板610は、公開情報の番号、復号者(あるいは復号者端末13の識別名)、公開情報の内容、公開情報の状況を示すステータス及び掲示日時を掲示する。ここで、ステータスには、例えば、復号者端末13がある暗号化された秘密情報Enc(msg)の復号化を完了したことを示す「復号完了」、後述する署名データ生成処理により復号化が許可されたがまだ復号化が行われていないことを示す「認証済み」、復号化がまだ許可されていないことを示す「認証中」などがあることが望ましい。
【0100】
このように、公開サーバ14は、復号者端末13から受信したデータに基づいて、復号者端末13が暗号化された秘密情報Enc(msg)の復号化を行う旨の宣言を公開掲示板610に掲示する。これにより、実際に復号を行う者以外の者は、いつ誰が復号化しようとしているか(あるいは復号化したか)などを知ることができ、不正にあるいは密かに復号化されることを防ぐことができる。例えば、秘密情報msgの本来の所有者は、自らのプライバシー情報がいつ誰によって復号化されるか(あるいは復号化されたか)などを監視することができる。
【0101】
なお、公開掲示板610に掲示される情報は、上述したものに限られるものではない。また、公開掲示板610を表示する方法は、上述した内容に限られるものではなく、例えば、専用のアプリケーションソフトウェアを用いて実現されるものであってもよい。
【0102】
また、秘密情報msgの本来の所有者がブラウザ等で公開掲示板610を閲覧し、明示的に復号化の拒否(又は許可)ができるように構成することもできる。
【0103】
この場合、公開サーバ14は、「許可」又は「拒否」を設定できる正当なユーザであるか否かを判定するために、予め正当なユーザにユーザ名とパスワードとを割り当ててこの内容を記憶する認証データベースを記憶部143等に記憶しておくことが望ましい。また、公開掲示板610は、正当なユーザによって復号化の拒否(又は許可)が設定できる操作ボタン等を備えればよい。そして、正当なユーザによって「許可」が設定された場合には、制御部140は該当する秘密情報Enc(msg)の復号化を許可して復号者端末13に通知する。あるいは、正当なユーザによって「許可」が設定されない場合、又は、正当なユーザによって「拒否」が設定された場合には、制御部140は該当する秘密情報Enc(msg)の復号化を許可しない。
【0104】
具体的には、例えば図7(a)は、復号化の拒否又は許可を設定できるボタンを備えた、ブラウザに表示される公開掲示板610の構成例である。本図の場合、公開掲示板610は、公開される情報の番号ごとに、復号化を明示的に許可するための「許可ボタン」と、復号化を明示的に拒否するための「拒否ボタン」とを備える。
【0105】
証拠提示者端末12にブラウザ等によって表示される公開掲示板610の許可ボタン又は拒否ボタンが押下されると、制御部120は、例えば図7(b)のような認証画面を表示させ、拒否(又は許可)を設定できる正当なユーザ(例えば、秘密情報msgの本来の所有者)に予め割り当てられたユーザ名とパスワードの入力を要求する。そして、入力部126のキーボードなどを用いてユーザによりユーザ名とパスワードが入力されると、制御部120は、入力されたユーザ名とパスワードと拒否(又は許可)リクエスト情報とを、I/F125に接続されるNICによりネットワーク15を介して公開サーバ14に送信する。
【0106】
公開サーバ14の制御部140は、I/F145に接続されるNICにより受信したユーザ名とパスワードが、正当なユーザ名とパスワードであるか否かを判定する。例えば、この判定は、記憶部143に記憶される認証データベースの内容に基づいて行われる。正当なユーザであると判定されると、制御部140は、I/F145に接続されるNICにより復号者端末13に認証成功の旨を通知する。あるいは、正当なユーザではないと判定されると、制御部140は、I/F145に接続されるNICにより復号者端末13に認証失敗の旨を通知する。
【0107】
証拠提示者端末12の制御部120は、I/F125に接続されるNICによりユーザの認証成功(又は失敗)の旨の通知を受信する。認証成功の場合、制御部120は、例えば図7(c)のような確認画面を表示させる。本図は「拒否」を設定する場合の確認画面の例である。そして、正当なユーザにより拒否(又は許可)の指示が行われると、制御部120は「拒否」(又は「許可」)のリクエスト情報をI/F125に接続されるNICにより公開サーバ14に送信する。なお、認証失敗の場合には、再び正当なユーザに予め割り当てられたユーザ名とパスワードの入力を要求すればよい。
【0108】
公開サーバ14の制御部140は、認証成功した証拠提示者端末12から、I/F145に接続されるNICにより「拒否」(又は「許可」)のリクエスト情報を受信すると、秘密情報msgの本来の所有者により復号化が拒否(又は許可)されたことを示す情報を、復号関連情報データベース600に記憶する。すなわち、公開掲示板610には、秘密情報msgの本来の所有者により復号化が拒否(又は許可)された旨が掲示される。
【0109】
なお、上述した公開掲示板610、認証画面及び確認画面は1つの例であり、これに限定されるものではなく種々の変形が可能である。
【0110】
このように、公開サーバ14は、証拠提示者端末12から受信したデータに基づいて、復号者端末13からリクエストされた復号化の要求を明示的に拒否又は許可することもできる。例えば、秘密情報msgの本来の所有者は、自分の秘密情報msgがいつ誰によって復号化されるかなどを事前に知ることができ、もし復号化を望まない場合には拒否することもできる。これにより、秘密情報msgの機密性を強化することができる。
【0111】
(署名データ生成処理)
次に、公開サーバ14の制御部140が実行する署名データ生成処理について、図8のフローチャートを用いて説明する。
【0112】
署名データ生成処理は、上述の復号化宣言公開処理で復号化が許可された場合に行われる。公開サーバ14は、復号者端末13から受け取った復号関連情報EViに基づいて、リクエストのあった復号者端末13による復号化を許可する旨を示す署名データSNsを生成する。以下、詳述する。
【0113】
制御部140は、公開サーバ14が所有する秘密鍵SKsを取得する(ステップ801)。例えば、秘密鍵SKsは、記憶部143に記憶されている。
制御部140は、復号者端末13から復号関連情報EViを取得する(ステップS802)。なお、復号関連情報EViは、上述の復号化宣言公開処理のステップS501で取得したものを用いればよい。
【0114】
制御部140は、秘密鍵SKsと復号関連情報EViとから、数4を用いて署名データSNsを生成する(ステップS803)。
【0115】
【数4】

【0116】
なお、上述した署名データSNsを生成するための数式等は1つの例であり、これに限定されるものではなく種々の変形が可能である。
【0117】
このように生成された署名データSNsは、リクエストのあった復号者端末13に送信される。復号者端末13は、署名データSNsを受け取ると、暗号化された秘密情報Enc(msg)の復号化が可能となる。すなわち、復号者端末13は、復号関連情報EViを公開サーバ14に送信しただけでは復号化を行うことはできず、公開サーバ14から対応する署名データSNsを受け取らなければ復号化をすることはできない。また、署名データSNsは公開サーバ14が所有する秘密鍵SKsを用いて生成されるため、他者がなりすましたり改ざんしたりして復号化を許可することはできない。
【0118】
また、公開サーバ14が署名データSNsを公開掲示板610に掲示して、復号者端末13が所望の署名データSNsを公開掲示板610から逐次取得するように構成することもできる。
【0119】
具体的には、公開サーバ14の制御部140は、ステップS803で署名データSNsを生成すると、例えば図9(a)のように、記憶部143に署名データSNsを復号関連情報EViに対応づけて記憶する。なお、復号関連情報データベース600に署名データSNsを記憶するようにしてもよい。また、図9(b)は、署名データSNsを取得できるようにした公開掲示板610の構成例である。本図の場合、公開掲示板610は、公開された情報ごとに対応する署名データSNsを取得するための「取得ボタン」を備える。
【0120】
復号者端末13にブラウザ等によって表示される公開掲示板610の取得ボタンが押下されると、制御部130は、例えば図7(b)のような認証画面を表示させ、取得できる正当なユーザ(例えば、対応する復号関連情報EViを生成した復号者)に予め割り当てられたユーザ名とパスワードの入力を要求する。そして、入力部136のキーボードなどを用いてユーザによりユーザ名とパスワードが入力されると、制御部130は、入力されたユーザ名とパスワードと取得リクエスト情報とを、I/F135に接続されるNICによりネットワーク15を介して公開サーバ14に送信する。
【0121】
公開サーバ14の制御部140は、I/F145に接続されるNICにより受信したユーザ名とパスワードが、正当なユーザ名とパスワードであるか否かを判定する。例えば、この判定は、記憶部143に記憶される認証データベースの内容に基づいて行われる。正当なユーザであると判定されると、制御部140は、I/F145に接続されるNICにより復号者端末13に認証成功の旨を通知する。あるいは、正当なユーザではないと判定されると、制御部140は、I/F145に接続されるNICにより復号者端末13に認証失敗の旨を通知する。
【0122】
復号者端末13の制御部130は、I/F135に接続されるNICによりユーザの認証成功(又は失敗)の旨の通知を受信する。認証成功の場合、制御部130は、例えば図9(c)のような確認画面を表示させる。本図は認証成功した場合の確認画面の例である。そして、正当なユーザにより取得の指示が行われると、制御部130は、取得リクエスト情報をI/F135に接続されるNICにより公開サーバ14に送信する。なお、認証失敗の場合には、再び正当なユーザに予め割り当てられたユーザ名とパスワードの入力を要求すればよい。
【0123】
公開サーバ14の制御部140は、I/F145に接続されるNICにより取得リクエスト情報を受信すると、復号者端末13に署名データSNsを送信し、秘密情報Enc(msg)を復号化するための署名データSNsが取得されたことを示す情報を、復号関連情報データベース600に記憶する。すなわち、公開掲示板610には、復号者端末13により署名データSNsが取得された旨が掲示される。
【0124】
このように、公開サーバ14は、復号者端末13からの要求に応じて、暗号化された秘密情報Enc(msg)の復号化を行うために必要な署名データSNsを送信することもできる。例えば、秘密情報Enc(msg)の復号化をしたい者は、秘密情報Enc(msg)の復号化が必要になる直前まで署名データSNsを取得しない。また、復号者は署名データSNsを紛失する恐れが少なくなる。これにより、秘密情報msgの機密性を強化することができる。
【0125】
(復号化処理)
次に、復号者端末13の制御部130が実行する復号化処理について、図10のフローチャートを用いて説明する。
【0126】
復号者端末13は、証拠提示者端末12から、暗号化された秘密情報Enc(msg)、ハッシュ値H1(msg)、暗号データR及び証拠提示者の公開情報群G1上の1つの元Xを、公開サーバ14から対応する署名データSNsをそれぞれ受け取ると、復号化が可能となり、元の秘密情報msgを得ることができる。以下、詳述する。
【0127】
制御部130は、証拠提示者端末12から、暗号化された秘密情報Enc(msg)、ハッシュ値H1(msg)、暗号データR及び証拠提示者の公開情報群G1上の1つの元Xを取得する(ステップS1001)。なお、これらのデータは、上述した復号関連情報生成処理で取得したものを用いればよい。
【0128】
制御部130は、公開サーバ14から対応する署名データSNsを取得する(ステップS1002)。なお、このデータは、上述した署名データ生成処理で公開サーバ14により生成されたものを受信して得られる。あるいは、上述のように公開掲示板610に公開された署名データSNsを復号者が選択して取得することによって得られる。
【0129】
制御部130は、キーセンターサーバ11から双線型写像eを取得する(ステップS1003)。
【0130】
制御部130は、復号者端末13が所有する秘密鍵SKiを取得する(ステップS1004)。例えば、秘密鍵SKiは、記憶部133に予め記憶されている。
【0131】
制御部130は、ステップS1001乃至S1004で取得した各データから、数5を用いて復号化して秘密情報msgを得る。(ステップS1005)。
【0132】
【数5】

【0133】
上述した復号化を行うための数式等は1つの例であり、これに限定されるものではなく種々の変形が可能である。
【0134】
なお、制御部130は、例えばステップS1005で復号化を行った後、復号化を行った旨の通知を公開サーバ14に送信し、この通知を受け取った公開サーバ14は、復号者端末13が復号化を行った旨を公開掲示板610に掲示して公開するようにしてもよい。
これにより、復号者端末13以外の者(例えば、秘密情報msgの本来の所有者)は、いつ誰が復号化を行ったかを知ることができ、秘密情報msgの不正利用を抑える効果が得られる。
【0135】
このようにして得られた秘密情報msgは、例えば出力部134のモニタ等に表示され、結果として復号者は機密性を保ちながら秘密情報msgを受け取ることができる。
【0136】
(情報処理システムの全体の動作)
次に、上述した各処理が連携して実現される情報処理システム10の全体の動作について、図11を用いて説明する。
【0137】
まず、情報処理システム10のセットアップとして、キーセンターサーバ11は、共通パラメータ(すなわち、ハッシュ関数H1、H2、双線型写像e及び元P)を公開する(ステップS1)。
【0138】
証拠提示者端末12は、秘密情報msgの暗号化を行い、暗号文を生成する(ステップS2)。これは上述の暗号化処理により行われる。例えば、秘密情報msgの本来の所有者は、秘密状態のまま相手に送信したいプライバシー情報などを暗号化する。この暗号文には、暗号化された秘密情報Enc(msg)、ハッシュ値H1(msg)、暗号データR及び公開情報群G1の1つの元Xが含まれる。
【0139】
証拠提示者端末12は、生成された暗号文を復号者端末13に送信する(ステップS3)。例えば、秘密情報msgの本来の所有者は、一般に用いられている電子メールサービス、メッセンジャーサービス、ファイル交換サービス等を用いて、ネットワーク15を経由して送信する。
【0140】
復号者端末13は、暗号文を受信して、復号関連情報EViを生成する(ステップS4)。これは上述の復号関連情報生成処理により行われる。
【0141】
復号者端末13は、生成した復号関連情報EViを公開サーバ14に送信する(ステップS5)。なお、この送信は、情報を暗号化して送受信できるプロトコル等を用いて行われることが望ましい。
【0142】
公開サーバ14は、復号関連情報EViを受信して、例えば図7(a)のように公開掲示板610に復号者を掲示して公開する(ステップS6)。これは上述の復号化宣言公開処理により行われる。これにより、復号者端末13が暗号化された秘密情報Enc(msg)の復号化を行おうとしていることが周知になる。
【0143】
公開サーバ14は、受信した復号関連情報EViから署名データSNsを生成し、復号関連情報EViへの署名を行う(ステップS7)。これは上述の署名データ生成処理により行われる。
【0144】
公開サーバ14は、生成した署名データSNsを、例えば図9(b)のように公開掲示板610に掲示して公開する(ステップS8)。これは上述の復号化宣言公開処理により行われる。なお、署名データSNsを復号者端末13に直接送信するようにしてもよい。
【0145】
復号者端末13は、公開掲示板610に掲示された署名データSNsを取得する(ステップS9)。
【0146】
復号者端末13は、暗号化された秘密情報Enc(msg)の復号化を行い、元の秘密情報msgを得る(ステップS10)。これは上述の復号化処理により行われる。
【0147】
このように、本実施形態の情報処理システム10によれば、暗号化された秘密情報の不正利用を防止し復号化を制限する効果が得られる。
【0148】
すなわち、復号関連情報EViは復号者端末13が所有する秘密鍵SKiを用いて生成されるため、他人になりすまして復号関連情報EViを生成したり署名データSNsを用いたりすることはできず、機密性を保ちながら秘密情報を送受信することが可能になる。そして、復号化には署名データSNsが必須であるため、復号者は公開サーバ14により復号化が許可されなければ復号化を行うことはできず、不正な復号化をさせない効果がある。
【0149】
また、復号化をリクエストすると公開掲示板610に掲示されるため、復号化がいつ誰によって行われようとしているのかを他者が知ることができる。また、秘密情報msgが復号化されたか、あるいは、復号化がいつ誰によって行われたのかを他者が知ることができる。そのため、秘密情報msgの本来の所有者などの意に反して復号化が行われるような不正行為を抑止できる効果がある。
【0150】
さらには、秘密情報msgの本来の所有者などは、復号化を望まない場合には拒否することも可能であり、必要に応じてその都度秘密情報msgの秘匿化を強めることができる。
【0151】
この発明は上記実施の形態に限定されず、種々の変形及び応用が可能である。
【0152】
例えば、署名データ生成処理で生成される署名データSNsに有効期限を設定し、この有効期限内の場合にのみ、この署名データSNsを用いた復号化ができるように構成することもできる。
この場合、例えば、公開サーバ14の制御部140は、署名データSNsの一部に有効期限を含めて署名データSNs生成し、復号者端末13の制御部130は、復号化処理を開始するときに有効期限が過ぎていれば復号を許可しないようにすればよい。あるいは、例えば、制御部140は、署名データSNsを復号関連情報EViと有効期限とに対応づけて記憶部143に記憶しておき、復号者端末13の制御部130は、復号化を開始するときに公開サーバ14に有効期限の問い合わせを行って、有効期限内の場合にのみ復号化できるようにすればよい。
これにより、署名データSNsが例えば復号者等の意に反して流出した場合でも、有効期限を過ぎていれば復号化ができないようにすることができ、秘密情報msgの機密性を強化することができる。
【0153】
例えば、暗号化処理で生成される暗号化された秘密情報Enc(msg)に有効期限を設定し、この有効期限内の場合にのみ、復号化ができるように構成することもできる。
この場合、例えば、証拠提示者端末12の制御部120は、暗号化された秘密情報Enc(msg)の一部に有効期限を含めてEnc(msg)を生成し、復号者端末13の制御部130は、復号化処理を開始するときに有効期限が過ぎていれば復号を許可しないようにすればよい。あるいは、例えば、制御部120は、暗号化された秘密情報Enc(msg)を生成したときに、暗号化された秘密情報Enc(msg)を公開サーバ14に送信し、公開サーバ14の制御部140は、受け取った暗号化された秘密情報Enc(msg)を有効期限に対応づけて復号関連情報データベース600に記憶しておき、有効期限を過ぎて復号化のリクエストがされた場合には復号化の許可を行わないようにすればよい。
これにより、暗号化された秘密情報Enc(msg)が秘密情報msgの本来の所有者の意に反して流出した場合でも、有効期限を過ぎていれば復号化ができないようにすることができ、秘密情報msgの機密性を強化することができる。
【0154】
例えば、キーセンターサーバ11に記憶される共通パラメータを、定期的に変更するように構成することもできる。
この場合、キーセンターサーバ11の制御部110は、所定のタイミング(例えば、1週間など)で、ハッシュ関数H1、H2、双線型写像e及び証拠提示者の公開情報G1のうちの一部又は全部を設定し直して記憶部113に記憶すればよい。また、証拠提示者端末12、復号者端末13及び公開サーバ14は、上述の各処理を開始するときに逐次これらの共通パラメータのセットを取り込み直して用いればよい。あるいは、制御部110は、共通パラメータを設定し直したタイミングで、証拠提示者端末12、復号者端末13及び公開サーバ14に共通パラメータが再設定された旨の通知を行って、共通パラメータの再取得を促す(あるいは自動的に取得する)ようにすればよい。
これにより、情報処理システム10内での秘密情報msgの機密性を強化することができる。
【0155】
上記実施形態では、復号者端末13が1台の場合について説明したが、復号者端末13は2台以上であってもよい。
【0156】
また、証拠提示者端末12と復号者端末13との両方の機能を兼ね備えた復合端末を用いて実現されてもよい。
【0157】
上記実施形態では、プログラムがROM112、ROM122、ROM132及びROM142等に予め記憶されているものとして説明した。しかし、キーセンターサーバ11、証拠提示者端末12、復号者端末13及び公開サーバ14を、各々の全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、メモリカード、CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical disk)などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
【0158】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【0159】
以上説明したように、この発明によれば、暗号化された秘密情報の不正利用を防止し復号化を制限するために好適な情報処理装置、情報処理システム及びプログラムを提供することができる。
【図面の簡単な説明】
【0160】
【図1】本実施形態に係る情報処理システムの構成を説明するための図である。
【図2】キーセンターサーバの構成を説明するためのブロック図である。
【図3】暗号化処理を説明するためのフローチャートである。
【図4】復号関連情報生成処理を説明するためのフローチャートである。
【図5】復号化宣言公開処理を説明するためのフローチャートである。
【図6】(a)復号関連情報データベースに記憶される情報の例を示す図である。(b)公開掲示板の表示例を示す図である。
【図7】(a)公開掲示板の表示例を示す図である。(b)認証画面の表示例を示す図である。(c)確認画面の表示例を示す図である。
【図8】署名データ生成処理を説明するためのフローチャートである。
【図9】(a)記憶部に記憶される復号関連情報と署名データの例を示す図である。(b)公開掲示板の表示例を示す図である。(c)確認画面の表示例を示す図である。
【図10】復号化処理を説明するためのフローチャートである。
【図11】本実施形態に係る情報処理システムの全体の動作を説明するための図である。
【符号の説明】
【0161】
10 情報処理システム
11 キーセンターサーバ
12 証拠提示者端末
13 復号者端末
14 公開サーバ
15 ネットワーク
110 制御部
111 RAM
112 ROM
113 記憶部
114 出力部
115 I/F
116 入力部
117 システムバス
120 制御部
121 RAM
122 ROM
123 記憶部
124 出力部
125 I/F
126 入力部
127 システムバス
130 制御部
131 RAM
132 ROM
133 記憶部
134 出力部
135 I/F
136 入力部
137 システムバス
140 制御部
141 RAM
142 ROM
143 記憶部
144 出力部
145 I/F
146 入力部
147 システムバス
600 復号関連情報データベース
610 公開掲示板

【特許請求の範囲】
【請求項1】
秘密鍵を記憶する秘密鍵記憶部と、
情報を暗号化した暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部と、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部と、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータと前記秘密鍵記憶部に記憶された秘密鍵とから、前記暗号データの復号化に用いる署名データを生成する署名データ生成部と、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部と、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記判定部は、前記リクエスト受付部が受け付けたリクエストデータが、前記秘密鍵記憶部に記憶された前記秘密鍵に対応する公開鍵を用いて生成されたものと判別した場合に、前記暗号データの復号化を許可する判定を行うこと
を特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記リクエストデータは、前記暗号データのハッシュ値を含み、
前記判定部は、前記ハッシュ値に基づいて前記暗号データの復号化を許可するか否かを判定すること
を特徴とする、請求項1又は2に記載の情報処理装置。
【請求項4】
前記リクエストデータは、前記暗号データの復号化の許可を要求したユーザの識別情報を含み、
前記署名データ出力部は、前記データ記憶部に記憶された署名データを、前記リクエスト受付部が受け付けたリクエストデータに含まれる識別情報に対応づけて出力すること
を特徴とする、請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
秘密鍵を記憶する秘密鍵記憶部と、
前記秘密鍵に対応する公開鍵を用いて情報を暗号化した暗号データを受け付ける暗号データ受付部と、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部と、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部と、
前記リクエスト出力部により出力された前記リクエストデータに対応する、前記暗号データ受付部が受け付けた前記暗号データの復号化に用いる署名データの入力を受け付ける署名データ受付部と、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部と、
を備えることを特徴とする情報処理装置。
【請求項6】
前記リクエスト生成部は、前記暗号データ受付部が受け付けた前記暗号データのハッシュ値を求めて、当該ハッシュ値を用いて前記リクエストデータを生成すること
を特徴とする、請求項5に記載の情報処理装置。
【請求項7】
秘密鍵と公開鍵を用いて情報の暗号化・復号化を行う情報処理システムであって、
前記公開鍵を記憶する公開鍵記憶部と、
前記公開鍵記憶部により記憶された公開鍵を用いて前記情報を暗号化して暗号データを生成する暗号部と、
前記暗号部により生成された暗号データを取得して出力する暗号データ出力部と、
を備える第1の情報処理装置と、
前記暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部と、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部と、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータから前記暗号データの復号化に用いる署名データを生成する署名データ生成部と、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部と、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部と、
を備える第2の情報処理装置と、
前記秘密鍵を記憶する秘密鍵記憶部と、
前記暗号データを受け付ける暗号データ受付部と、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部と、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部と、
前記リクエスト出力部により出力された前記リクエストデータに対応する前記署名データを受け付ける署名データ受付部と、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部と、
を備える第3の情報処理装置と、
から構成されることを特徴とする情報処理システム。
【請求項8】
コンピュータを、
秘密鍵を記憶する秘密鍵記憶部、
情報を暗号化した暗号データの復号化の許可を要求するリクエストデータを受け付けるリクエスト受付部、
前記リクエスト受付部が受け付けたリクエストデータに基づいて、前記暗号データの復号化を許可するか否か判定する判定部、
前記判定部により許可すると判定された場合に、前記リクエスト受付部が受け付けた前記リクエストデータと前記秘密鍵記憶部に記憶された秘密鍵とから、前記暗号データの復号化に用いる署名データを生成する署名データ生成部、
前記リクエスト受付部が受け付けたリクエストデータと、前記署名データ生成部により生成された前記署名データと、を対応づけて記憶するデータ記憶部、
前記データ記憶部に記憶されたデータに基づいて、前記署名データを出力する署名データ出力部
として機能させることを特徴とするプログラム。
【請求項9】
コンピュータを、
秘密鍵を記憶する秘密鍵記憶部、
前記秘密鍵に対応する公開鍵を用いて情報を暗号化した暗号データを受け付ける暗号データ受付部、
前記秘密鍵記憶部に記憶された前記秘密鍵と前記暗号データ受付部が受け付けた前記暗号データとに基づいて、前記暗号データの復号化の許可を要求するリクエストデータを生成するリクエスト生成部、
前記リクエスト生成部により生成された前記リクエストデータを取得して出力するリクエスト出力部、
前記リクエスト出力部により出力された前記リクエストデータに対応する、前記暗号データ受付部が受け付けた前記暗号データの復号化に用いる署名データを受け付ける署名データ受付部、
前記暗号データ受付部が受け付けた前記暗号データと、前記秘密鍵記憶部に記憶された前記秘密鍵と、前記署名データ受付部が受け付けた前記署名データとを用いて、前記暗号データを復号化して前記情報を取得する復号部
として機能させることを特徴とするプログラム。

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


【公開番号】特開2007−124246(P2007−124246A)
【公開日】平成19年5月17日(2007.5.17)
【国際特許分類】
【出願番号】特願2005−313199(P2005−313199)
【出願日】平成17年10月27日(2005.10.27)
【出願人】(000102728)株式会社エヌ・ティ・ティ・データ (438)
【Fターム(参考)】