JP2015023550A - データ復号システム及びプログラム - Google Patents

データ復号システム及びプログラム Download PDF

Info

Publication number
JP2015023550A
JP2015023550A JP2013152871A JP2013152871A JP2015023550A JP 2015023550 A JP2015023550 A JP 2015023550A JP 2013152871 A JP2013152871 A JP 2013152871A JP 2013152871 A JP2013152871 A JP 2013152871A JP 2015023550 A JP2015023550 A JP 2015023550A
Authority
JP
Japan
Prior art keywords
seed
password
information
decryption
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013152871A
Other languages
English (en)
Inventor
優樹 栗原
Yuki Kurihara
優樹 栗原
市原 尚久
Naohisa Ichihara
尚久 市原
圭史 金田
Keiji Kaneda
圭史 金田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Group Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP2013152871A priority Critical patent/JP2015023550A/ja
Publication of JP2015023550A publication Critical patent/JP2015023550A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】暗号化されたデータの安全性を確保しつつ、暗号化されたデータを復号するために必要な情報の情報量を抑えること。【解決手段】予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する情報であって、少なくとも、一のパスワードに関する情報と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められる補助情報と、入力された前記一のパスワードとに基づき、前記暗号化されたシードを復号するシード復号部と、前記シード復号部により復号されたシードに基づき、対象データを復号する復号鍵を生成する復号鍵生成部と、を備える。【選択図】図1

Description

本発明は、暗号化されたデータを復号するデータ復号システム及びプログラムに関する。
近年、スマートフォンなどの端末の高性能化に伴い、サーバ等に保存されているデータを、携帯端末にダウンロードして、遠隔地においても所定のデータを開くことができるようになってきている。また、一つの携帯端末を、複数のユーザで利用することにより、携帯端末の有効利用を図る傾向もみられる。そこで、問題となるのは、閲覧が制限されているデータが、許可されてないユーザによって不正に閲覧されることである。
これに対して、例えば、閲覧が制限されているデータを暗号化するものがある。例えば、特許文献1には、複数のユーザが、同一の暗号鍵で暗号化した暗号コンテンツを、同一の復号鍵で復号することにより、利用可能なユーザを制限するものが記載されている。
特開2013−110460号公報
しかしながら、複数のユーザ間で同一の復号鍵を共有すると、復号鍵が漏えいする危険性が高まり、不正なユーザによってデータが閲覧される危険性も高まるという虞がある。
これに対して、複数のユーザのそれぞれに割り当てられた秘密の情報(以下、鍵のリストという)を用いて復号する手法が考えられる。この場合、ユーザごとに、復号鍵を生成するための情報を用意する必要があるため、データを復号するために必要な情報の情報量が増大する問題があった。また、復号鍵を生成するための情報に各ユーザの秘密の情報が含まれている場合、鍵のリストが漏えいすることにより、各ユーザの秘密の情報が漏えいし、不正なユーザによってデータが閲覧される危険性が高まる虞がある。
本発明は、上記の課題を解決することができるデータ復号システム及びプログラムを提供することを目的とする。
この発明は上述した課題を解決するためになされたもので、本発明の一態様によるデータ復号システムは、予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する情報であって、少なくとも、一のパスワードに関する情報と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められる補助情報と、入力された前記一のパスワードとに基づき、前記暗号化されたシードを復号するシード復号部と、前記シード復号部により復号されたシードに基づき、対象データを復号する復号鍵を生成する復号鍵生成部と、を備える。
また、この発明は上述した課題を解決するためになされたもので、本発明の一態様によるプログラムは、コンピュータを、予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する情報であって、少なくとも、一のパスワードに関する情報と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められる補助情報と、入力された前記一のパスワードとに基づき、前記暗号化されたシードを復号するシード復号手段、前記シード復号手段により復号されたシードに基づき、対象データを復号する復号鍵を生成する復号鍵生成手段、として機能させるためのプログラム。
本発明によれば、暗号化されたデータの安全性を確保しつつ、暗号化されたデータを復号するために必要な情報の情報量を抑えることができる。
本発明の一実施形態に係るデータ復号システムの構成の一例を示すブロック図である。 本発明の一実施形態に係る復号部と暗号化部の構成例を示すブロック図である。 本発明の一実施形態において用いられる数式の一例を示す表である。 本発明の一実施形態において用いられる数式の一般式の一例を示す表である。 本発明の一実施形態において用いられる補助情報の一例を示す表である。 本発明の一実施形態において用いられる補助情報の他の例を示す表である。 本発明の一実施形態において用いられる補助情報の他の例を示す表である。 本発明の一実施形態において用いられる補助情報の他の例を示す表である。 本発明の一実施形態において用いられる補助情報の他の例を示す表である。 本発明の一実施形態において用いられる補助情報の他の例を示す表である。 本発明の一実施形態に係る暗号化処理方法の一例を示すフローチャートである。 本発明の一実施形態に係る復号化処理方法の一例を示すフローチャートである。 本発明の第3実施形態において用いられる数式の一例を示す表である。
[第1実施形態]
以下、本発明の一実施形態について、図面を参照して説明する。
図1は、本実施形態に係るデータ復号システム100の構成例を示す図である。図1に示す通り、本実施形態に係るデータ復号システム100は、ネットワークを介して互いに通信可能に接続される端末1と情報管理装置2とを備える。
端末1は、持ち運びが可能な端末であって、複数のユーザによる共有利用が可能な端末であることが好ましく、例えば、スマートフォン、携帯ゲーム機、PDA(Personal Digital Assistant)、タブレット型PC(Personal Computer)、あるいは、ノート型PC等が利用可能である。
情報管理装置2は、一定のセキュリティが確保されたサーバ等である。この情報管理装置2は、例えば、管理者によって操作される装置である。
この端末1は、通信部11と、操作部12と、出力部13と、復号部14と、設定ファイル記憶部15とを備える。
通信部11は、無線通信を利用して、情報管理装置2と情報の送受信を行う。
操作部12は、例えば、操作パネルであって、ユーザからの操作を受け付けるセンサーを備え、センサーによる検出結果を復号部14に出力する。本実施形態において、操作部12は、操作画面に接触するユーザの指の接触位置を、一定の時間間隔ごとに、センサーにより検出し、このセンサーの検出結果を出力する。なお、本発明はこれに限られず、操作部12は、例えば、操作画面に近接するユーザの指や操作指示手段(スタイラスペン)等の位置を非接触センサーにより検出するものであってもよい。
出力部13は、画像や動画を出力する表示部と、音声を出力するスピーカーを含む構成である。表示部としての出力部13は、操作部12とともに一体的に設けられるタッチパネルであってもよい。
復号部14は、暗号化されたシードを復号して、復号されたシードに基づき、対象データを復号する復号鍵を生成する。
設定ファイル記憶部15は、情報管理装置2によって作成された設定ファイルを記憶する。この設定ファイルには、以下に説明するような、暗号化されたシードや補助情報が格納されている。
情報管理装置2は、通信部21と、操作部22と、入力部23と、暗号化部24と、管理記憶部25と、キーストア26とを備える。
通信部21は、無線通信を利用して、端末1と情報の送受信を行う。
操作部22は、例えば、マウスやキーボードであって、ユーザからの操作を受け付ける。
入力部23は、情報を入力するインターフェースであって、例えば、暗号化の対象となる業務ファイルや、キーストアに格納する各ユーザのパスワードを入力する。
暗号化部24は、乱数などからシードを生成し、生成したシードに基づき暗号化鍵を生成し、対象データを暗号化する。この暗号化された対象データは、管理記憶部25に格納される。また、暗号化部24は、この暗号化された対象データの復号が許可されている全てのユーザのパスワードを利用して、生成したシードを暗号化する。この暗号化されたシードは、管理記憶部25の設定ファイルに格納される。
管理記憶部25は、暗号化された対象データや、暗号化されたシード等を含む設定を格納する。
キーストア26は、各ユーザのパスワードを記憶する。
次に、図2を参照して、端末1の復号部14と情報管理装置2の暗号化部24について詳細に説明する。図2は、本実施形態に係る復号部と暗号化部の構成例を示す図である。
図2に示す通り、復号部14は、シード復号部141と、復号鍵生成部142と、データ復号部143とを備える。
シード復号部141は、予め決められた複数のパスワードに基づき算出されるシード秘密鍵の演算を補助する補助情報と、複数のパスワードのうち一のパスワードとに基づき、暗号化されたシードを復号する。なお、この補助情報とは、情報管理装置2の暗号化部24によって生成され、設定ファイルに格納されている情報である。
復号鍵生成部142は、シード復号部141により復号されたシードに基づき、対象データを復号する復号鍵を生成する。
データ復号部143は、復号鍵生成部142によって生成された復号鍵に基づき、対象データを復号する。
シード秘密鍵とは、対象データの復号が許可されている複数のパスワードに基づき算出される値であって、この対象データの復号が許可されている複数のパスワードの組み合わせの集合ごとに、1つの値が決められている。
本実施形態において、補助情報は、シード秘密鍵ごとに、つまり、暗号化された対象データの復号が許可されている複数のユーザの組み合わせの集合ごとに、各ユーザに応じて決められている情報である。例えば、暗号化された対象データの復号が許可されている複数のユーザの組み合わせが、ユーザA,B,Cである場合、ユーザAに割り当てられた補助情報sαβγ,tαと、ユーザBに割り当てられた補助情報sβαγ,tβと、ユーザCに割り当てられた補助情報sγαβ,tγとが、情報管理装置2の暗号化部24によって作成される。この場合、A,B,C(つまり、全てのパスワードα,β,γ)に対して共通する1つのシード秘密鍵xαβγが、定義される。
詳細については後述するが、補助情報は、複数のパスワードのうち一のパスワード以外の他のパスワードに関する情報を、一のパスワードに基づき算出する情報である。
また、補助情報は、複数のパスワードのうち一のパスワード以外の他のパスワードに関する情報を、パスワードごとに予め決められた乱数に基づき算出する情報である。
さらに、補助情報は、対象データの復号が許可されている複数のパスワードの組み合わせの集合ごとに異なる情報(例えば、シード秘密鍵xαβγを含むシード公開鍵yαβγを求める方程式)と、パスワードごとに異なる情報(例えば、補助情報sαβγ,sβαγ,sγαβ,tα,tβ,tγ)とを含む情報である。
本実施形態において、パスワードは、対象データの復号が許可されている複数のユーザにそれぞれ割り当てられた固有の情報である。例えば、パスワードは、社員ID(Identity Document)や、各ユーザが任意に設定する固有のパスワードであってもよい。
暗号化部24は、シード生成部241と、暗号化鍵生成部242と、データ暗号化部243と、シード公開鍵生成部244と、シード暗号化部245と、設定ファイル生成部246とを備える。
シード生成部241は、乱数などからシードmαβγを生成し、暗号化鍵生成部242とシード暗号化部245に出力する。
暗号化鍵生成部242は、シード生成部241によって生成されたシードmαβγに基づき、暗号化鍵e−Keyαβγを生成し、データ暗号化部243に出力する。
データ暗号化部243は、暗号化鍵生成部242によって生成された暗号化鍵e−Keyαβγにより、対象データを暗号化し、管理記憶部25に格納する。
シード公開鍵生成部244は、キーストア26から、暗号化された対象データを共有するメンバーとして決定されたユーザのパスワードを読み出す。また、シード公開鍵生成部244は、暗号化された対象データを共有するメンバーとして決定されたユーザのパスワードと、管理記憶部25から読み出した乱数kαβγと、データ暗号化部243が暗号化した対象データの識別情報θとに基づき、シード秘密鍵xαβγを生成する。また、シード公開鍵生成部244は、算出したシード秘密鍵xαβγに基づき、シード公開鍵yαβγを生成する。
シード暗号化部245は、シード公開鍵生成部244によって生成されたシード公開鍵yαβγにより、シード生成部241により生成されたシードmαβγを暗号化した暗号化シードc,cを生成し、設定ファイル生成部246に出力する。
設定ファイル生成部246は、補助情報を生成し、生成した補助情報と、暗号化シードc,cに基づき、設定ファイルを生成し、管理記憶部25に格納する。
次に、図3を参照して、本実施形態に係る復号部14及び暗号化部24において用いられる数式の一例について説明する。図3は、本実施形態において用いられる数式の一例を示す表である。ここでは、2人のユーザA,Bが自身のパスワードα,βのいずれかを入力することにより、暗号化されている業務ファイルF1を開封するための演算処理に用いる数式の一例について説明する。
シード秘密鍵xαβは、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、所定の乱数kαβとの総和を、(p−1)で除算した余りである。なお、このxαβ=・・・で示す方程式を、シード秘密鍵の方程式という。このシード秘密鍵の方程式のみでシード秘密鍵xαβを算出するためには、ユーザAのパスワードαとユーザBのパスワードβの情報が必要となる。
入力されたパスワードがαだけであって、ユーザAが業務ファイルF1を開封する場合、補助情報sαが用いられる。補助情報sαは、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)に乱数tαを乗じた値と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、所定の乱数kαβとの総和を、(p−1)で除算した余りである。なお、このsα=・・・で示す方程式を、ユーザAの補助情報という。本実施形態において、補助情報sαと、乱数tαとは、設定ファイルに記憶されている値である。
なお、入力されたパスワードがβだけであって、ユーザBが業務ファイルF1を開封する場合、補助情報sβが用いられる。補助情報sβは、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)に乱数tβを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、所定の乱数kαβとの総和を、(p−1)で除算した余りである。
シード公開鍵yαβは、生成元gをシード秘密鍵xαβの回数だけかけ合わせた値を、十分大きな素数pで除算した余りである。なお、このyαβ=・・・で示す方程式を、シード公開鍵の方程式という。
暗号化シードcは、生成元gを所定の乱数rの回数だけかけ合わせた値を、十分大きな素数pで除算した余りである。また、暗号化シードcは、シード公開鍵yαβを所定の乱数rの回数だけかけ合わせた値と、シードmαβγの値とを乗算した積を、十分大きな素数pで除算した余りである。なお、このc=・・・,c=・・・で示す方程式を、暗号化シードの方程式という。
復号されたシードmαβγは、暗号化シードcを「c α (sα―αtα)」で除算した商を、さらに十分大きな素数pで除算した余りである。なお、このmαβγ=・・・で示す方程式を、復号シードの方程式という。また、復号を指示するユーザ、つまり、入力されるパスワードが異なる場合、図3に示す「c α (sα―αtα)」内のαを、他のパスワードに置き換えることで、シードmαβγを算出することは可能である。
次に、図4を参照して、図3に示した数式の一般式について説明する。図4は、本実施形態において用いられる数式の一般式の一例を示す表である。
シード秘密鍵の方程式を一般化すると、図4に示すxαβγ…=・・・の方程式で表すことができる。対象データ(例えば、業務ファイル)の復号が許可されている複数のユーザA,B,C・・・のそれぞれに割り当てられたパスワードα,β,γ・・・に基づくハッシュ値と、所定の乱数kαβγ…との総和を、(p−1)で除算した余りである。具体的に説明すると、シード秘密鍵xαβγ…は、ユーザAのパスワードαと業務ファイルの識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルの識別子θとのハッシュ値h(β,θ)と、ユーザCのパスワードγと業務ファイルの識別子θとのハッシュ値h(β,θ)と・・・の総和、つまり、対象データの復号が許可されている全てのユーザA,B,C・・・のパスワードに基づくハッシュ値の総和に基づき算出される。なお、所定の乱数kαβγ…は、対象データの復号が許可されている複数のユーザA,B,C・・・の組み合わせごとに、予め決められている。
シード公開鍵の方程式を一般化すると、図4に示すyαβγ…=・・・の方程式で表すことができる。このシード公開鍵yαβγ…は、生成元gをシード秘密鍵xαβγ…の回数だけかけ合わせた値を、十分大きな素数pで除算した余りである。
補助情報の方程式を一般化すると、図4に示すsα=・・・,sβ=・・・,sγ=・・・,・・・の方程式で表すことができる。これら補助情報sα,sβ,sγ,・・・は、ユーザごと、つまり、パスワードごとに作成される。すなわち、補助情報の方程式は、対象データの復号が許可されている複数のユーザA,B,C・・・の数だけ存在する。
補助情報sαは、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)に、ユーザAのパスワードαに応じて決められた乱数tαを乗じた値と、他のユーザB,C・・・のパスワードβ,γ・・・に基づくハッシュ値と、所定の乱数kαβγ…との総和を、(p−1)で除算した余りである。具体的に説明すると、補助情報sαは、補助情報sαのユーザA以外のユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、補助情報sαのユーザA以外のユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と・・・の総和、つまり、対象データの復号が許可されている全てのユーザA,B,C・・・のうち、ユーザA以外のユーザB,C・・・のパスワードに基づくハッシュ値の総和に基づき算出される。
なお、補助情報sβも同様に、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)に、ユーザBのパスワードβに応じて決められた乱数tβを乗じた値と、他のユーザA,C・・・のパスワードα,γ・・・に基づくハッシュ値と、所定の乱数kαβγ…との総和を、(p−1)で除算した余りである。
補助情報sγも同様に、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)に、ユーザCのパスワードγに応じて決められた乱数tγを乗じた値と、他のユーザA,B・・・のパスワードα,β・・・に基づくハッシュ値と、所定の乱数kαβγ…との総和を、(p−1)で除算した余りとの和である。
なお、乱数tα,tβ,tγは、ユーザA,B,C・・・毎に予め決められている乱数であってもよく、暗号化部24によってパスワードα,β,γ・・・に基づき算出される乱数であってもよい。
暗号化シードの方程式を一般化すると、図4に示すc=・・・,c=・・・の方程式で表すことができる。この暗号化シードcは、図3に示す式と同じであって、生成元gを所定の乱数rの回数だけかけ合わせた値を、十分大きな素数pで除算した余りである。また、暗号化シードcは、シード公開鍵yαβγ…を所定の乱数rの回数だけかけ合わせた値と、シードmαβγ…をの値とを乗算した積を、十分大きな素数pで除算した余りである。
復号シードの方程式を一般化すると、図4に示すmαβγ…=・・・の方程式で表すことができる。この復号されたシードmαβγ…は、暗号化シードcを「c α (sα―αtα)」で除算した商を、さらに十分大きな素数pで除算した余りである。
次に、図5を参照して、本実施形態において用いられる数式の具体例について説明する。図5は、2人のユーザB,Cが自身のパスワードβ,γのいずれかを入力することにより、暗号化されている業務ファイルを開封するための演算処理に用いる数式の一例を示す表である。
シード秘密鍵xβγを算出するためのシード秘密鍵の方程式は、全てのパスワードに対して共通の方程式であって、1つである。
補助情報は、ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合、及び、ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合に応じて、それぞれ設定されている。
ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合に復号部14に用いられる補助情報sβγは、上述の通り、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)に乱数tβを乗じた値と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、所定の乱数kβγとの総和を、(p−1)で除算した余りである。また、乱数tβは、ユーザBに固有の情報、又は、パスワードβに固有の情報であって、ユーザごと又はパスワードごとに予め決められており、例えば、パスワードβに基づき算出される乱数である。
ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合に復号部14に用いられる補助情報sγβは、上述の通り、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)に乱数tγを乗じた値と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、所定の乱数kβγとの総和を、(p−1)で除算した余りである。また、乱数tγは、ユーザCに固有の情報、又は、パスワードγに固有の情報であって、ユーザごと又はパスワードごとに予め決められており、例えば、パスワードγに基づき算出される乱数である。
次に、図6を参照して、本実施形態において用いられる数式の具体例について説明する。図6は、2人のユーザA,Bが自身のパスワードα,βのいずれかを入力することにより、暗号化されている業務ファイルF1を開封するための演算処理に用いる数式の一例を示す表である。
これは、図5を参照して説明したパスワードがα,βに置き変わっただけで、その他は図5に示した数式と同一であるため、詳細な説明は省略する。
次に、図7を参照して、本実施形態において用いられる数式の具体例について説明する。図7は、2人のユーザA,Cが自身のパスワードα,γのいずれかを入力することにより、暗号化されている業務ファイルF1を開封するための演算処理に用いる数式の一例を示す表である。
これは、図5を参照して説明したパスワードがα,γに置き変わっただけで、その他は図5に示した数式と同一であるため、詳細な説明は省略する。
次に、図8を参照して、本実施形態において用いられる数式の具体例について説明する。図8は、3人のユーザA,B,Cが自身のパスワードα,β,γのいずれかを入力することにより、暗号化されている業務ファイルF1を開封するための演算処理に用いる数式の一例を示す表である。
シード秘密鍵xαβγを算出するためのシード秘密鍵の方程式は、全てのパスワードに対して共通の方程式であって、1つである。
補助情報は、ユーザAがパスワードαを入力することにより業務ファイルF1を開封する場合、ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合、及び、ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合に応じて、それぞれ設定されている。
ユーザAがパスワードαを入力することにより業務ファイルF1を開封する場合に復号部14により用いられる補助情報sαβγは、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)に乱数tαを乗じた値と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、所定の乱数kαβγとの総和を、(p−1)で除算した余りである。
ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合に復号部14により用いられる補助情報sβαγは、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)に乱数tβを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、所定の乱数kαβγとの総和を、(p−1)で除算した余りである。
ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合に復号部14により用いられる補助情報sγαβは、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)に乱数tγを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、所定の乱数kαβγとの総和を、(p−1)で除算した余りである。
なお、詳細については、第2実施形態において説明するが、暗号化された対象データの復号が許可されているユーザが3人以上である場合の補助情報sαβγ,sβαγ,sγαβは、暗号化された対象データの復号が許可されているユーザが2人である場合の補助情報sβγ,sγβ,sαβ,sβα,sαγ,sγαにより、図8に示すように表すことができる。ただし、この時に入力する乱数tα,tβ,tγは、2倍の値とする。
次に、図9を参照して、本実施形態において用いられる数式の具体例について説明する。図9は、4人のユーザA,B,C,Dが自身のパスワードα,β,γ,δのいずれかを入力することにより、暗号化されている業務ファイルを開封するための演算処理に用いる数式の一例を示す表である。
シード秘密鍵xαβγδを算出するためのシード秘密鍵の方程式は、全てのパスワードに対して共通の方程式であって、1つである。
補助情報は、ユーザAがパスワードαを入力することにより業務ファイルF1を開封する場合、ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合、ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合、及び、ユーザDがパスワードδを入力することにより業務ファイルF1を開封する場合に応じて、それぞれ設定されている。
ユーザAがパスワードαを入力することにより業務ファイルF1を開封する場合、補助情報sαβγδは、ユーザAのパスワードαと業務ファイルの識別子θとのハッシュ値h(α,θ)に乱数tαを乗じた値と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、ユーザDのパスワードδと業務ファイルF1の識別子θとのハッシュ値h(δ,θ)と、所定の乱数kαβγσとの総和を、(p−1)で除算した余りである。
ユーザBがパスワードβを入力することにより業務ファイルF1を開封する場合、補助情報sβαγδは、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)に乱数tβを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、ユーザDのパスワードδと業務ファイルF1の識別子θとのハッシュ値h(δ,θ)と、所定の乱数kαβγδとの総和を、(p−1)で除算した余りである。
ユーザCがパスワードγを入力することにより業務ファイルF1を開封する場合、補助情報sγαβδは、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)に乱数tγを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、ユーザDのパスワードδと業務ファイルF1の識別子θとのハッシュ値h(δ,θ)と、所定の乱数kαβγδとの総和を、(p−1)で除算した余りである。
ユーザDがパスワードδを入力することにより業務ファイルF1を開封する場合、補助情報sγαβδは、ユーザDのパスワードδと業務ファイルF1の識別子θとのハッシュ値h(δ,θ)に乱数tδを乗じた値と、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、所定の乱数kαβγδとの総和を、(p−1)で除算した余りである。
なお、詳細については、第2実施形態において説明するが、暗号化された対象データの復号が許可されているユーザが3人以上である場合の補助情報sαβγδ,sβαγδ,sγαβδ,sδαβγは、暗号化された対象データの復号が許可されているユーザが2人である場合の補助情報sβγ,sγβ,sαβ,sβα,sαγ,sγα,sαδ,sδα,sβδ,sδβ,sγδ,sδγにより、図9に示すように表すことができる。なお、補助情報sαδ,sδα,sβδ,sδβ,sγδ,sδγは、図10に示す。ただし、この時に入力する乱数tα,tβ,tγは、3倍の値とする。
図10には、ユーザDが、ユーザA,B,Cのそれぞれと、暗号化されている業務ファイルの復号が許可されている場合に用いる数式の一例を示す表である。
図10に示す通り、ユーザA,Dに暗号化されている業務ファイルの復号が許可されている場合、シード秘密鍵xαδを算出するためのシード秘密鍵の方程式は、全てのパスワードα,δに対して共通の方程式であって、1つである。一方、補助情報は、ユーザAがパスワードαを入力することにより業務ファイルを開封する場合のsαδと、ユーザDがパスワードδを入力することにより業務ファイルを開封する場合のsδαとの、2つが設定されている。
また、ユーザB,Dに暗号化されている業務ファイルの復号が許可されている場合と、ユーザC,Dに暗号化されている業務ファイルの復号が許可されている場合も同様、それぞれ、シード秘密鍵xβδ,xγδを算出するためのシード秘密鍵の方程式は、全てのパスワードβ,δ、又は、γ,δに対して共通の方程式であって、補助情報は、入力されるパスワードごとに、sβδ,sδα,又は、sγδ,sδγの2つが、それぞれ設定されている。
次に、図11を参照して、暗号化部24による処理フローの一例を説明する。図11は、本実施形態に係る暗号化処理方法の一例を示すフローチャートである。なお、この暗号化処理方法の処理は、情報管理装置2により実行される処理である。
(ステップST101)
操作部22は、管理者からの操作に基づき、暗号化する業務ファイルの指定を受け付ける。ここで、操作部22は、例えば、業務ファイルF1の指定を受け付ける。
(ステップST102)
次いで、操作部22は、管理者からの操作に基づき、ステップST101において指定された業務ファイルF1を共有するメンバーの決定を受け付ける。ここで、操作部22は、例えば、暗号化された業務ファイルF1の復号を許可されるメンバーとして、ユーザA,B,Cの決定を受け付ける。
(ステップST103)
そして、シード公開鍵生成部244は、キーストア26から、ステップST102において決定されたメンバーのパスワードを読み出す。ここで、シード公開鍵生成部244は、ユーザA,B,Cのそれぞれのパスワードであるα,β,γをキーストア26から読み出す。
(ステップST104)
次いで、シード生成部241は、乱数などからシードmαβγを生成し、暗号化鍵生成部242とシード暗号化部245に出力する。
(ステップST105)
そして、暗号化鍵生成部242は、シード生成部241によって生成されたシードmαβγに基づき、暗号化鍵e−Keyαβγを生成し、データ暗号化部243に出力する。
(ステップST106)
次いで、データ暗号化部243は、暗号化鍵生成部242によって生成された暗号化鍵e−Keyαβγにより、ステップST101において指定された業務ファイルF1を暗号化し、管理記憶部25に格納する。
(ステップST107)
一方、シード公開鍵生成部244は、ステップST103において読み出されたユーザA,B,Cのそれぞれのパスワードであるα,β,γと、管理記憶部25から読み出した乱数kαβγに基づき、シード秘密鍵xαβγを生成する。具体的に説明すると、シード公開鍵生成部244は、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、ユーザCのパスワードγと業務ファイルF1の識別子θとのハッシュ値h(γ,θ)と、kαβγとの総和を(p−1)で除算した余りを算出し、シード秘密鍵xαβγとする。つまり、シード公開鍵生成部244は、図8に示すシード秘密鍵の方程式に従って、シード秘密鍵xαβγを算出する。
次いで、シード公開鍵生成部244は、算出したシード秘密鍵xαβγに基づき、シード公開鍵yαβγを生成する。具体的に説明すると、シード公開鍵生成部244は、シード生成部241が生成したシードmαβγをシード秘密鍵xαβγの回数だけ掛け合わせた値を、十分大きな素数pで除算した余りを算出し、シード公開鍵yαβγとする。つまり、シード公開鍵生成部244は、図4に示す一般化されたシード公開鍵の方程式から決められる通り、xαβγ=・・・で示される方程式に従って、シード公開鍵yαβγを算出する。
なお、ここでは、わかりやすいように、シード秘密鍵xαβγを算出する例を説明したが、シード公開鍵生成部244は、シード秘密鍵xαβγを算出することなく、シード公開鍵の方程式に含まれるシード秘密鍵xαβγに、シード秘密鍵の方程式に代入する値を代入してシード公開鍵yαβγを算出するものであってもよい。
そして、シード暗号化部245は、シード公開鍵生成部244によって生成されたシード公開鍵yαβγにより、シード生成部241により生成されたシードmαβγを暗号化した暗号化シードc,cを生成し、設定ファイル生成部246に出力する。
(ステップST108)
次いで、設定ファイル生成部246は、補助情報を生成し、生成した補助情報と、暗号化シードc,cに基づき、指定された業務ファイルF1の設定ファイルを生成する。
具体的に説明すると、設定ファイル生成部246は、管理記憶部25から読み出した乱数kαβγ、十分大きな素数p、及び乱数tα,tβ,tγと、ステップST103においてキーストア26から読み出されたユーザA,B,Cのそれぞれのパスワードであるα,β,γとに基づき、補助情報sαβγ,sβαγ,sγαβを算出する。そして、設定ファイル生成部246は、算出した補助情報sαβγ,sβαγ,sγαβと、シード暗号化部245によって生成された暗号化シードc,cと、十分大きな素数pと、乱数tα,tβ,tγとを、業務ファイルF1の識別子θと関連付けた情報を、設定ファイルに格納する。
なお、本発明はこれに限られず、生成した補助情報を、暗号化された業務ファイルの復号が許可されたメンバーの組み合わせに応じて、それぞれ対応付けて設定ファイルに格納するものであってもよい。この場合、図10に示すように、ユーザごと、つまり、パスワードごとに、補助情報やシード秘密鍵の方程式を対応付けた情報が、設定ファイルに格納されているものであってもよい。
このように、設定ファイル内の形式は、一つに限られない。例えば、乱数tα,tβ,tγ・・・や、十分大きな素数p、補助情報など、共通して利用できる情報の重複を防止するように、ユーザごと、パスワードごと、暗号化された業務ファイルの復号が許可されたメンバーの組み合わせごとに、それぞれ対応付けて格納されていてもよい。この場合、暗号化された業務ファイルの復号が許可されているメンバーを示す情報や、暗号化シードc,cは、該当する業務ファイルを示す情報(例えば識別子θ)と対応付けておけばよい。
また、シード公開鍵を算出するロジック(例えばプログラム)も、設定ファイル内に格納されている。
次に、図12を参照して、復号部14による処理フローの一例を説明する。図12は、本実施形態に係る復号処理方法の一例を示すフローチャートである。なお、この復号処理方法の処理は、端末1により実行される処理である。
(ステップST201)
操作部12は、例えば、ユーザAからの操作に基づき、暗号化されている業務ファイルの復号の指示を受け付ける。ここで、操作部12は、例えば、業務ファイルF1の復号の指示を受け付ける。そして、操作部12は、業務ファイルF1の識別子θを取得し、復号部14に出力する。
(ステップST202)
次いで、操作部12は、ユーザAからの操作に基づき、ユーザAのパスワードαの入力を受け付け、復号部14に出力する。
(ステップST203)
そして、シード復号部141は、指定された業務ファイルF1の識別子θと対応付られた暗号化シードc,c、及び、補助情報を、設定ファイル記憶部15の設定ファイルから呼び出す。なお、設定ファイル記憶部15には、ステップST201又はS202あるいはそれよりも前の段階で、情報管理装置2の暗号化部24によって生成された設定ファイルが通信部11を介して受信され、格納されている。
(ステップST204)
次いで、シード復号部141は、呼び出した補助情報sαβγ,sβαγ,sγαβ(なお、乱数tα,tβ,tγや素数pを含む)に基づき、暗号化シードc,cを復号し、復号されたシードmαβγを復号鍵生成部142に出力する。言い換えると、シード復号部141は、復号シードの方程式に、暗号化シードc,c、補助情報sαβγ、乱数tα、パスワードα及び素数pを代入して、シードmαβγを算出する。
(ステップST205)
そして、復号鍵生成部142は、復号されたシードmαβγに基づき、復号鍵d−Keyαβγを生成し、データ復号部143に出力する。
(ステップST206)
次いで、データ復号部143は、復号鍵d−Keyαβγにより、ステップST201により指定された暗号化されている業務ファイルF1を復号する。
(ステップST207)
データ復号部143により業務ファイルF1が復号されたか否かにより、以下の処理を行う。
(ステップST208)
つまり、業務ファイルF1が復号できた場合、データ復号部143は、復号した業務ファイルF1を開封し、出力部13に出力する。これにより、業務ファイルF1は、例えば、出力部13に表示される。
(ステップST209)
一方、業務ファイルF1が復号できなかった場合、データ復号部143は、エラーメッセージを出力部13に出力する。
以上説明した通り、本実施形態に係る復号部14は、予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する補助情報を用いることにより、一のパスワードのみを入力しただけで、暗号化されたデータを復号することができる。
すなわち、本実施形態に係る補助情報は、複数のパスワードα,β,γのうち一のパスワードα以外の他のパスワードβ,γに関する情報(例えば、「h(β,θ)+h(γ,θ)+kαβγ」と、一のパスワードαに関する情報とに基づき求めることができる情報である。このため、復号部14は、複数のパスワードに基づき暗号化されている業務ファイルを復号する場合、補助情報を用いることにより、一のパスワードのみを入力しただけで、この業務ファイルを復号することができる。
よって、暗号化されたシードを復号する際に、暗号化されたデータの復号が許可されている全てのユーザのパスワードに基づきシード公開鍵を生成する必要がないため、シードを復号するための情報(つまり、復号鍵を生成するための情報)の情報量を抑えることができる。
また、設定ファイルには、暗号化されたデータの復号が許可されているユーザのパスワードが含まれていないため、仮に設定ファイルが漏えいした場合であっても、不正なユーザに各ユーザのパスワードが漏えいする事態を回避することができ、不正なユーザによってデータが閲覧される危険性を低減させることができる。従って、暗号化されたデータの安全性を確保することができる。
また、本実施形態に係る復号部14は、複数のパスワードα,β,γのうち一のパスワードα以外の他のパスワードβ,γに関する情報(例えば、「h(β,θ)+h(γ,θ)+kαβγ」を、一のパスワードαに関する情報と、パスワードごとに決められた乱数tαに基づき求めることができる情報である。
[第2実施形態]
次に、本発明の第2実施形態について、図面を参照して説明する。なお、主な構成素は、第1実施形態に係るデータ復号システム100と同様であるため、同一の符号を付して、詳細な説明は省略する。
本実施形態では、シード復号部141は、予め決められた2つのパスワードに基づき暗号化されたシードの復号を補助する第1補助情報と、複数のパスワードのうち一のパスワードとに基づき、前記2つのパスワードを含む複数のパスワードに基づき暗号化されたシードの復号を補助する第2補助情報を算出し、算出した第2補助情報に基づき、暗号化されたシードを復号することができる。
ここで、第1補助情報とは、図5〜7に示す通り、暗号化された対象データの復号が許可されているユーザが2人である場合の補助情報であって、具体的には、sβγ,sγβ,sαβ,sβα,sαγ,sγα(乱数tα,tβ,tγも含む)である。
一方、第2補助情報とは、図8に示す通り、暗号化された対象データの復号が許可されているユーザが3人以上(第1補助情報の2人のユーザを含む)である場合の補助情報であって、具体的には、sαβγ,sβαγ,sγαβ(乱数tα,tβ,tγも含む)である。
また、第2補助情報としては、図9に示す通り、暗号化された対象データの復号が許可されているユーザが4人(第1補助情報の2人のユーザを含む)である場合の補助情報も含み、具体的には、sαβγδ,sβαγδ,sγαβδ,,sδαβγ(乱数tα,tβ,tγ,tδも含む)である。
次に、本実施形態に係るシード復号部141の処理の一例について具体的に説明する。ここでは、上述したステップST204の処理を、本実施形態に係る方法で実施した場合の一例を説明する。
本実施形態では、上記の例と同様、業務ファイルF1の復号は、ユーザA,B,Cにのみ許可されている。
ここでは、ユーザAのパスワードαが既に入力されている。そこで、シード復号部141は、ユーザA(つまり、パスワードα)に対応する乱数tαと、第1補助情報であるsαβ,sαγとを、設定ファイル記憶部15から呼び出す。つまり、第2補助情報sαβγは読み出さない。なお、本実施形態において、第2補助情報sαβγは、設定ファイル記憶部15に記憶されていない。また、シード復号部141は、第1補助情報であるsαβ,sαγに基づき第2補助情報であるsαβγを算出するためのロジックも、設定ファイル記憶部15から呼び出す。なお、このロジックとは、第1補助情報から第2補助情報を算出するためのプログラム等である。また、このロジックは、第1補助情報と第2補助情報との関係に基づき、第2補助情報を算出するための数式を含むものであってもよい。例えば、第2補助情報に含まれる「h(α,θ)tα+h(β,θ)+h(γ,θ)+kαβγ」は、第1補助情報に含まれる「h(α,θ)tα+h(β,θ)+kαβ」と「h(α,θ)tα+h(γ,θ)+kαγ」の和である。よって、第2補助情報sαβγ=・・・の方程式は、「sαβγ={sαβ+sαγ}mod(p−1)」と表すことができる。ただし、「h(α,θ)tα+h(β,θ)+h(γ,θ)+kαβγ」における「tα」は、tα=2tαである。
そして、シード復号部141は、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、呼び出した第1補助情報であるsαβ,sαγと乱数tαに基づき、第2補助情報sαβγ=・・・を算出する。
次いで、シード復号部141は、算出した第2補助情報sαβγと、乱数tαと、ユーザAのパスワードαと、十分大きさ素数pと、暗号化されたシードc=・・・,c=・・・とを、mαβγ=・・・で示すシード復号の方程式に代入して、復号されたシードmαβγを算出する。
このように、シード復号部141は、第1補助情報を用いて第2補助情報を算出することにより、暗号化された業務ファイルの復号が許可されているメンバーが3人以上である場合であっても、業務ファイルごとに、又は、メンバーごとに、それぞれ第2補助情報を作成し、設定ファイルに格納する必要がなくなる。よって、暗号化部24の処理負荷を軽減するととに、設定ファイルに用いる記憶容量を削減することができる。
次に、本実施形態に係るシード復号部141の処理の他の例について具体的に説明する。ここでは、上述したステップST204の処理を、本実施形態に係る方法で実施した場合の他の例を説明する。
この例では、業務ファイルF1の復号は、ユーザA,B,C,Dにのみ許可されている。
ここでは、ユーザAのパスワードαが既に入力されている。そこで、シード復号部141は、ユーザA(つまり、パスワードα)に対応する乱数tαと、第1補助情報であるsαβ,sαγ,sαδとを、設定ファイル記憶部15から呼び出す。つまり、第2補助情報sαβγδは読み出さない。なお、本実施形態において、第2補助情報sαβγδは、設定ファイル記憶部15に記憶されていない。また、シード復号部141は、第1補助情報であるsαβ,sαγ,sαδに基づき第2補助情報であるsαβγδを算出するためのロジックも、設定ファイル記憶部15から呼び出す。第1補助情報と第2補助情報との関係は、例えば、第2補助情報に含まれる「h(α,θ)tα+h(β,θ)+h(γ,θ)+h(δ,θ)+kαβγδ」は、第1補助情報に含まれる「h(α,θ)tα+h(β,θ)+kαβ」と「h(α,θ)tα+h(γ,θ)+kαγ」と「h(α,θ)tα+h(δ,θ)+kαδ」の和である。よって、第2補助情報sαβγδ=・・・の方程式は、「sαβγ={sαβ+sαγ+sαδ}mod(p−1)」と表すことができる。ただし、「h(α,θ)tα+h(β,θ)+h(γ,θ)+h(δ,θ)+kαβγδ」における「tα」は、tα=3tαである。
そして、シード復号部141は、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、呼び出した第1補助情報であるsαβ,sαγ,sαδと乱数tαに基づき、第2補助情報sαβγ=・・・を算出する。
次いで、シード復号部141は、算出した第2補助情報sαβγと、乱数tαと、ユーザAのパスワードαと、十分大きさ素数pと、暗号化されたシードc=・・・,c=・・・とを、mαβγδ=・・・で示すシード復号の方程式に代入して、復号されたシードmαβγδを算出する。
[第3実施形態]
次に、本発明の第3実施形態について、図面を参照して説明する。なお、主な構成素は、第1実施形態に係るデータ復号システム100と同様であるため、同一の符号を付して、詳細な説明は省略する。
図13を参照して、本実施形態に係る復号部14及び暗号化部24において用いられる数式の一例について説明する。図13は、本実施形態において用いられる数式の一例を示す表である。
シード秘密鍵xαβは、ユーザAのパスワードαと業務ファイルF1の識別子θとのハッシュ値h(α,θ)と、ユーザBのパスワードβと業務ファイルF1の識別子θとのハッシュ値h(β,θ)と、所定の乱数kαβと、変動値μとの総和を、(p−1)で除算した余りである。なお、このxαβ=・・・で示す方程式は、図3,4に示す第1実施形態とは、変動値μを含む点で異なる。また、変動値μは、業務ファイルFの復号が許可されているユーザA,B,Cに与えられる変動値である。
また、復号されたシードmαβγは、暗号化シードcを「c α (sα―αtα+μα)」で除算した商を、さらに十分大きな素数pで除算した余りである。なお、このmαβγ=・・・で示す方程式は、図3,4に示す第1実施形態とは、「c α (sα―αtα+μα)」のカッコ内に変動値μαを含む点で異なる。この変動値μαは、ユーザごと、つまり、パスワードごとに設定されている変動値の値である。つまり、変動値μαは、ユーザAの変動値であって、ユーザBの変動値はμβ、ユーザCの変動値はμγである。
本実施形態において、変動値μα,μβ,μγは、ユーザごと、つまり、パスワードごとに予め設定されている。例えば、原則として業務ファイルFの復号が許可されているユーザA,B,Cのうち、ユーザBによる復号を制限したい場合、ユーザA,Cの変動値μα,μγ=1とし、ユーザBの変動値μβ=0とする。
そして、暗号化部24のシード公開鍵生成部244は、図13にxαβ=・・・で示すシード秘密鍵の方程式において、μ=1を代入して、シード秘密鍵xαβを算出し、算出したシード秘密鍵xαβに基づき、シード公開鍵yαβを生成する。そして、シード暗号化部245は、シード公開鍵生成部244によって生成されたシード公開鍵yαβにより、シード生成部241により生成されたシードmαβを暗号化した暗号化シードc,cを生成し、設定ファイル生成部246に出力する。
よって、ユーザBが復号する場合、変動値μβ=0が、図13に示すmαβ=・・・の復号シードのの方程式に代入されるため、正しいシードmαβの値とならない。つまり、暗号化されたシードc,cを、シードmαβに復号することができない。
このように、変動値μβ=0と設定されているユーザBによりパスワードβを入力されたとしても、復号部14は、暗号化されたシードを正しく復号することができないため、復号鍵を生成することができない。よって、業務ファイルF1の復号が制限される。一方、変動値μα,μγ=1と設定されているユーザA,Cによりパスワードα,γが入力された場合、復号部14は、暗号化されたシードを正しく復号することができるため、復号鍵を生成することができ、業務ファイルF1の復号することができる。
なお、変動値μα,μβ,μγは、業務ファイルごとに設定されているものであってもよく、時間帯に応じて変化するように設定されているものであってもよい。例えば、特定の一週間は、ユーザBによる復号を制限した場合、この一週間だけ、ユーザBの変動値μβ=0として、その他のユーザの変動値μα,μγ=1とすればよい。
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより工程毎の認証処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
1 端末
2 情報管理装置
11 通信部
12 操作部
13 出力部
14 復号部
15 設定ファイル記憶部
21 通信部
22 操作部
23 入力部
24 暗号化部
25 管理記憶部
26 キーストア
141 シード復号部
142 復号鍵生成部
143 データ復号部
241 シード生成部
242 暗号化鍵生成部
243 データ暗号化部
244 シード公開鍵生成部
245 シード暗号化部
246 設定ファイル生成部

Claims (7)

  1. 予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する情報であって、少なくとも、一のパスワードに関する情報と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められる補助情報と、入力された前記一のパスワードとに基づき、前記暗号化されたシードを復号するシード復号部と、
    前記シード復号部により復号されたシードに基づき、対象データを復号する復号鍵を生成する復号鍵生成部と、
    を備えることを特徴とするデータ復号システム。
  2. 前記補助情報は、
    少なくとも、前記パスワードごとに予め決められた乱数と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められ情報であることを特徴とする請求項1に記載のデータ復号システム。
  3. 前記パスワードは、
    前記対象データの復号が許可されている複数のユーザにそれぞれ割り当てられた固有の情報であることを特徴とする請求項1又は2に記載のデータ復号システム。
  4. 前記補助情報は、
    少なくとも、前記対象データの復号が許可されている複数のパスワードの組み合わせごとに異なる情報と、前記パスワードごとに異なる情報とに基づき求められる情報であることを特徴とする請求項1から3のうちいずれか一項に記載のデータ復号システム。
  5. 前記シード復号部は、
    予め決められた2つのパスワードに基づき暗号化されたシードの復号を補助する第1補助情報に基づき、前記2つのパスワードを含む複数のパスワードに基づき暗号化されたシードの復号を補助する第2補助情報を算出し、算出した前記第2補助情報に基づき、暗号化されたシードを復号することを特徴とする請求項1から4のうちいずれか一項に記載のデータ復号システム。
  6. 前記シード復号部は、
    前記補助情報と前記一のパスワードに関する情報に加え、前記パスワードごとに決められた変動値に基づき、前記暗号化されたシードを復号することを特徴とする請求項1から5のうちいずれか一項に記載のデータ復号システム。
  7. コンピュータを、
    予め決められた複数のパスワードに基づき暗号化されたシードの復号を補助する情報であって、少なくとも、一のパスワードに関する情報と、前記複数のパスワードのうち前記一のパスワード以外の他のパスワードに関する情報とに基づき求められる補助情報と、入力された前記一のパスワードとに基づき、前記暗号化されたシードを復号するシード復号手段、
    前記シード復号手段により復号されたシードに基づき、対象データを復号する復号鍵を生成する復号鍵生成手段、
    として機能させるためのプログラム。
JP2013152871A 2013-07-23 2013-07-23 データ復号システム及びプログラム Pending JP2015023550A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013152871A JP2015023550A (ja) 2013-07-23 2013-07-23 データ復号システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013152871A JP2015023550A (ja) 2013-07-23 2013-07-23 データ復号システム及びプログラム

Publications (1)

Publication Number Publication Date
JP2015023550A true JP2015023550A (ja) 2015-02-02

Family

ID=52487620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013152871A Pending JP2015023550A (ja) 2013-07-23 2013-07-23 データ復号システム及びプログラム

Country Status (1)

Country Link
JP (1) JP2015023550A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020071878A (ja) * 2018-10-31 2020-05-07 富士通株式会社 ランダムモジュラー部分集合和問題を解く方法及びシステム
WO2021133152A1 (en) * 2019-12-23 2021-07-01 Mimos Berhad A method for authenticating and synchronizing offline data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02203377A (ja) * 1989-02-01 1990-08-13 Hitachi Ltd セキユリテイ管理システム
JPH02301240A (ja) * 1989-05-15 1990-12-13 Fujitsu Ltd 暗号鍵共有制御方式
JP2005210600A (ja) * 2004-01-26 2005-08-04 Kddi Corp コンテンツ配信システム及びコンテンツ配信方法
JP2006211349A (ja) * 2005-01-28 2006-08-10 Oak Joho System:Kk ファイルの暗号化・複合化プログラム、プログラム格納媒体
JP2009245227A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd 情報記憶装置
US20110213977A1 (en) * 2010-02-26 2011-09-01 Research In Motion Limited Methods and devices for computing a shared encryption key

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02203377A (ja) * 1989-02-01 1990-08-13 Hitachi Ltd セキユリテイ管理システム
JPH02301240A (ja) * 1989-05-15 1990-12-13 Fujitsu Ltd 暗号鍵共有制御方式
JP2005210600A (ja) * 2004-01-26 2005-08-04 Kddi Corp コンテンツ配信システム及びコンテンツ配信方法
JP2006211349A (ja) * 2005-01-28 2006-08-10 Oak Joho System:Kk ファイルの暗号化・複合化プログラム、プログラム格納媒体
JP2009245227A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd 情報記憶装置
US20110213977A1 (en) * 2010-02-26 2011-09-01 Research In Motion Limited Methods and devices for computing a shared encryption key

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赤羽 泰彦: "チャットにおける鍵配送プロトコルの一提案", コンピュータセキュリティシンポジウム2002, vol. 2002, no. 16, JPN6017000213, 30 October 2002 (2002-10-30), JP, pages 263 - 268, ISSN: 0003477266 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020071878A (ja) * 2018-10-31 2020-05-07 富士通株式会社 ランダムモジュラー部分集合和問題を解く方法及びシステム
WO2021133152A1 (en) * 2019-12-23 2021-07-01 Mimos Berhad A method for authenticating and synchronizing offline data

Similar Documents

Publication Publication Date Title
US11750591B2 (en) Key attestation statement generation providing device anonymity
CN106716914B (zh) 用于漫游的受保护内容的安全密钥管理
US11115393B2 (en) Message server, method for operating message server and computer-readable recording medium
CN101510888B (zh) 一种SaaS应用下提高数据安全性的方法、装置及系统
JP6962629B1 (ja) データ共有システム、データ共有方法、およびデータ共有プログラム
CN111132150A (zh) 一种保护数据的方法、装置、存储介质和电子设备
CN111339536B (zh) 一种基于安全执行环境的数据验证方法及装置
JP2012203658A (ja) 情報処理装置及び情報処理システム
JP2012080152A (ja) 暗号化システム、暗号化装置、復号装置、暗号化システムプログラム及び暗号化方法
US20170200020A1 (en) Data management system, program recording medium, communication terminal, and data management server
Thilakanathan et al. Secure multiparty data sharing in the cloud using hardware-based TPM devices
WO2010038763A1 (ja) 情報管理システム、端末装置、サーバ装置およびプログラム
JP4684714B2 (ja) ファイル管理システム、及びプログラム
JP2018032149A (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
TWI428752B (zh) 電子檔案傳遞系統、具解密功能的行動通信裝置及相關的電腦程式產品
JP2015023550A (ja) データ復号システム及びプログラム
Abdulhamid et al. Development of blowfish encryption scheme for secure data storage in public and commercial cloud computing environment
JP2016134722A (ja) 鍵共有装置、鍵共有システム、鍵共有方法、プログラム
Liu Study and implementation of encryption algorithm based on SM2
CN114285632B (zh) 一种区块链数据传输方法、装置和设备及可读存储介质
JP2018025587A (ja) 秘匿演算技術およびその方法
Sala et al. Software for Integral Security
Haunts et al. Final Summary
JP2008011100A (ja) 属性認証方法、属性証明書生成装置、サービス提供先装置、サービス提供元装置、及び属性認証システム
Akogun Enhancing Data Security in Cloud Storage Using Residue Number System and Advanced Encryption Standard

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170117

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170711