JP4587452B2 - 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。 - Google Patents

複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。 Download PDF

Info

Publication number
JP4587452B2
JP4587452B2 JP2004264312A JP2004264312A JP4587452B2 JP 4587452 B2 JP4587452 B2 JP 4587452B2 JP 2004264312 A JP2004264312 A JP 2004264312A JP 2004264312 A JP2004264312 A JP 2004264312A JP 4587452 B2 JP4587452 B2 JP 4587452B2
Authority
JP
Japan
Prior art keywords
data
key
distributed
decryption
encrypted
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.)
Expired - Fee Related
Application number
JP2004264312A
Other languages
English (en)
Other versions
JP2006080998A (ja
JP2006080998A5 (ja
Inventor
啓一 廣田
亮 北原
正信 萬本
隆二 山本
雅司 山室
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2004264312A priority Critical patent/JP4587452B2/ja
Publication of JP2006080998A publication Critical patent/JP2006080998A/ja
Publication of JP2006080998A5 publication Critical patent/JP2006080998A5/ja
Application granted granted Critical
Publication of JP4587452B2 publication Critical patent/JP4587452B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、パスワードや鍵情報といった秘密情報や、テキスト、画像、音楽などの電子化されたデータを対象として分散暗号化し、幾つか以上の分散生成された電子データ片から元の電子データを復号可能とする秘密分散法を用いた分散暗号化技術に関する。特に、秘匿の対象とする電子データに対して、複数個の復号鍵データを設定して分散暗号化し、複数個の復号鍵データの内の任意の1個を用いて元の秘匿データを復号可能とする分散暗号化技術に関する。
従来、秘匿の対象とする電子データを暗号化する技術としては、例えばパスワードや暗証番号による暗号化、共通鍵や公開鍵・秘密鍵などの鍵暗号方式を用いた暗号化などが一般に知られている。
前者は、所定のあるいは入力されたパスワードや暗証番号を使って、元の秘密データに対して和、積、論理的排他和などの演算処理を行う事で電子データの暗号化を実現するもので、復号するためには暗号化時に用いられたパスワードや暗証番号を使って逆演算を行う必要があり、したがってパスワードや暗証番号を知らない場合は元の秘密データ復号する事ができず、電子データの秘匿が実現できる(例えば、特許文献1参照)。
後者は、共通鍵や公開鍵・秘密鍵と呼ばれる鍵情報を使って、元の秘密データに対して剰余演算などの演算処理を行う事で電子データの暗号化を実現するもので、復号するためには同様に共通鍵や公開鍵・秘密鍵を使って演算処理を行う必要があり、共通鍵や公開鍵・秘密鍵を持たない限り元の秘密データを復号する事ができず、電子データの秘匿が実現できる(例えば、特許文献2参照)。
ー方、秘匿の対象とする電子データを分散暗号化する技術として秘密分散法がある。秘密分散法は、分散関数と呼ばれる関数情報を使って元の秘密データから複数の異なる情報を生成する事で電子データの暗号化を実現するもので、復号するためには生成した分散情報の全てあるいは一定数以上の情報を集めた上で行列演算などによる復号処理を行う必要があり、したがって必要な数に足りない分散情報からは元の秘密データを復号する事ができず、電子データの秘匿が実現できる(例えば、非特許文献1参照)。
特開平5−53990号公報 特開平5−130099号公報 尾形わかは、黒沢馨;「秘密分散共有法とその応用」、電子情報通信学会誌、vol.82 ,NO.12,pp1228〜1236,1999年12月
前述した鍵情報あるいはパスワードによる暗号化技術においては、鍵情報やパスワード等は一回の暗号化に際して高々一個しか設定できず、同時に複数の鍵で暗号化および復元する事はできなかった。すなわち、あるデータに対して異なる鍵情報、例えば鍵情報1でも鍵情報2でも一回の処理で復号が可能なように暗号化する事はできなかった。
異なる鍵情報を使って暗号化した電子データを復号する技術は全くないわけではなく、対象データを共通の単一の鍵情報で暗号化した後に、この共通の鍵情報を利用者によって異なる鍵情報やパスワードで暗号化する事で、異なる鍵情報から共通の鍵情報を復元した後に復号する方法や、複数の鍵情報やパスワードを別途記憶しておいて、記憶に該当する鍵情報やパスワードが入力された時に共通の鍵情報を用いて暗号化データを復号する方法などもある。しかしながら、このような方法はどちらも複数の異なる鍵情報から単一の共通の鍵情報を導き出すという処理を必要とし、煩雑であった。
本発明は、上記の課題を鑑みてなされたもので、電子データの暗号化において、利用者によって異なる複数の鍵情報やパスワードを使って、同時に一回の処理で電子データの暗号化および復号を可能とする事で、利便性と安全性の高い電子データの暗号化を可能とする複数鍵暗号化装置、複数鍵復号装置及び複数鍵暗号化システム並びにプログラムを実現することを目的とする。
本発明は、(k,n)閾値秘密分散法、(d,k,n)閾値秘密分散法、あるいは、本出願人の既出願に係る特願2003−366538号に記載の復元制御型秘密情報分散法などのいわゆる閾値秘密分散法を用いる。
(k,n)閾値秘密分散法は、分散情報を配布する数である2以上の整数の分散数nと、秘密情報Sの復元に必要な分散情報の最低数である2以上n以下の整数の閾値kから、秘密情報Sを定数項とする(k−1)次の多項式f(x)を、
f(x)=S+R 1 x+…+R k−1 k−1 mod P …(1)
として作成し(R ,…,R k−1 :乱数、P:素数)、元の秘密情報Sを所有あるいは預託により分配する秘密情報分配者は、分散情報を保管する各分散情報保持者i(i=1,2,…,n)に対して、分散情報Wi=f(i)を分配するものである。
この(k,n)閾値秘密分散法は、n個の分散情報の内、任意のk個の分散情報がそろえば、f(x)に関する連立方程式を解く事により元の秘密情報Sを復元できるが、任意の(k−1)個までの分散情報がそろってもf(x)に関する連立方程式を解く事はできないため、元の秘密情報Sは復元できないという特徴がある。したがって、(n−k)個までの分散情報が紛失や破壊により損なわれても元の秘密情報Sが復元可能であり、(k−1)個までの分散情報が漏洩や盗難により得られても元の秘密情報Sは復元できないという、秘密情報を安全に保管する方法が実現できる。
(d,k,n)閾値秘密分散法は、上記(k,n)閾値秘密分散法を拡張したもので、分散情報を配布する数である2以上の整数の分散数nと、秘密情報Sの完全な復元に必要な分散情報の最低数である2以上n以下の整数の閾値kと、閾値kに対して秘密情報Sの部分的な復元を許容する分散情報の不足数を決定する2以上k以下の整数の分割数dから、秘密情報SをS,S,…,Sd-1に分割し、これらの分割した秘密情報(分割情報)を定数項とする(k−1)次の多項式f(x)を、
f(x)=S 0 +S 1 x+…+S d-1 d-1 +R 1 d +…+R k-d k-1 mod P …(2)
として作成し(R ,…,R k−d :乱数、P:素数)、元の秘密情報Sを所有あるいは預託により分配する秘密情報分配者は、分散情報を保管する各分散情報保持者i(1=1,2,…,n)に対して、分散情報W=f(i)を分配するものである。
この(d,k,n)閾値秘密分散法は、上記の(k,n)閾値秘密分散法と同様に、n個の分散情報の内、任意のk個の分散情報がそろえば、f(x)に関する連立方程式を解く事により元の秘密情報Sを復元できるが、任意の(k−d)個までの分散情報がそろってもf(x)に関する連立方程式を解く事はできないため、元の秘密情報Sは復元できないという特徴がある。ただし、任意の(k−d+1)個から(k−1)個までの分散情報がそろった場合には、f(x)に関する連立方程式から分割情報S,S,…,Sd-1に関する関係式が求められるため、分割情報S,S,…,Sd-1として可能な値を得る事ができ、元の秘密情報Sを部分的に復元する事ができる。
なお、(k,n)閾値秘密分散法および(d,k,n)閾値秘密分散法については、詳しくは、それぞれ「A.Shamir,“How to Share a Secret”,Commun.of ACM,Vol.22,No.11,pp.612−613,1979」および「G.R.Blakley,C.Meadows,“Security of ramp schemes”,Proc.of Crypto’84,Lecure Notes on Comput.Sci.,196,pp.242−268,1984」に述べられている。
復元制御型秘密情報分散法は、この(k,n)閾値秘密分散法および(d,k,n)閾値秘密分散法を更に拡張した方法で、n個の分散情報の内、任意のk個の分散情報がそろえば、f(x)に関する連立方程式を解く事により元の秘密情報Sを復元できるが、任意の(k−d)個までの分散情報がそろってもf(x)に関する連立方程式を解く事はできないため、元の秘密情報Sは復元できないという特徴をもつ。ただし、情報を分散させる分散関数を特定の形式に規定する事により、任意の(k−d+1)個から(k−1)個までの分散情報が特定の組み合わせによりそろった場合にはf(x)に関する連立方程式から特定の分割情報S,S,…,Sd-1を求める事ができ、元の秘密情報Sを部分的に復元する事ができる情報分散方法である。
この復元制御型秘密情報分散法は、基本的には、秘密情報Sについて、秘密情報Sの完全な復元に必要な分散情報の最低数である2以上の整数の閾値k、閾値kに対して秘密情報Sの部分的な復元を許容する分散情報の不足数を決定する2以上k以下の整数の分割数dと、秘密情報Sのd個の分割情報(分配情報)S,S,…,Sd-1などの秘密情報Sを分散するための条件を入力し、
最大の分割情報S(0≦t≦d−1)よりも大きな素数と、素数よりも小さく0でない(k−d個)の乱数 (1≦1≦k−d)と、(k(k−1)/2)個の乱数a(1≦j≦k(k−1)/2)を生成して、
f(x)=S+S(x−a)+…+Sd−1(x−a(d−1)(d−2)/2+1)(x−a(d−1)(d−2)/2+2)…(x−a(d−1)(d−2)/2+d−1)+ (x−ad(d−1)/2+1)(x−ad(d−1)/2+2)…(x−ad(d−1)/2+d)+…+ k−d(x−a(k−1)(k−2)/2+1)(x−a(k−1)(k−2)/2+2)…(x−a(k−1)(k−2)/2+k−1) mod P …(3)
の式で表現される秘密情報Sの分散関数f(x)を生成するものである。
上記式(3)の分散関数f(x)は、例えばk=3、d=2とした場合、
f(x)=S+S(x−a)+r(x−a)(x−a) mod P …(4)
で表現され、任意の2個の分散情報W x+b ついての連立方程式は以下のような行列式で表現できる。
Figure 0004587452
上記行列式の左項を掃き出し法により変形すると、
Figure 0004587452
となり、a,a,aの値によっては−x +(2a −b)x+a b−a −a +a ≡0,もしくは2x+b−a −a ≡0を満たすxとbがある場合に、連立方程式から分割情報(部分情報)のSのみ、もしくはSのみを求めることができる。
本発明の複数鍵暗号化装置は、秘匿の対象とする電子データの入力を受け付ける秘匿データ入力手段と、暗号化した電子データを復号する際の鍵情報(復号鍵データ)となる電子データの入力を複数受け付ける復号鍵データ入力手段と、入力された秘匿対象の電子データを一定長以下の長さのブロックに分割する電子データ分割手段と、秘密分散法を利用して、分割した秘匿対象の電子データの各ブロックに対して、分散生成される暗号化データの内の一個あるいは複数個が、前記受け付けた複数の復号鍵データとなるように、分散データを生成するための分散関数中の変数値を決定して分散関数を生成する分散関数生成手段と、分割した秘匿対象の電子データの各ブロックに対して、前記生成した分散関数により分散データを複数分散生成する分散データ生成手段と、前記生成した分散データを秘密の復元に必要な個数よりも一つだけ少ない個数組み合わせた上で暗号化データとして出力する暗号化データ出力手段とを備える事を特徴とし、複数の異なる復号鍵データの内の少なくとも任意の一個を使って復号できるように、秘匿の対象とする電子データを共通に暗号化する事を可能とする。
また、本発明の複数鍵暗号化装置は、一定長以下の長さの乱数データを生成する乱数データ生成手段を更に備え、分散関数生成手段は、復号鍵データと乱数データとから分散データを生成するための分散関数中の変数値を決定する事を特徴とし、複数の異なる復号鍵データの内の少なくとも任意の一個を使って復号できるように、秘匿の対象とする電子データを共通にかつ安全に暗号化する事を可能とする。
また、本発明の複数鍵暗号化装置は、暗号化データ出力手段が、生成した分散データを秘密の復元に必要な個数よりも、秘密の復元に必要な復号鍵データの数だけ少ない個数組み合わせた上で暗号化データとして出力する事を特徴とし、複数の異なる復号鍵データの内、所定の数の任意の復号鍵データを使って復号できるように、秘匿の対象とする電子データを共通に暗号化する事を可能とする。
また、本発明の複数鍵復号装置は、復号の対象とする暗号化データの入力を受け付ける暗号化データ入力手段と、分散暗号化した電子データを復号する際の鍵情報(復号鍵データ)となる電子データの入力を一つあるいは複数受け付ける復号鍵データ入力手段と、入力された暗号化データを一定長以下の長さのブロックに分割する電子データ分割手段と、ブロック化した暗号化データと復号鍵データを元に、所定の復号関数により秘匿対象の電子データを復号する秘匿データ復号手段と、前記復号した秘匿対象の電子データを出力する秘匿データ出力手段とを備える事を特徴とし、上記複数鍵暗号化装置によって暗号化された電子データに対し、復号の鍵となる復号鍵データによって元の電子データを復元する事を可能とする。
本発明の複数鍵の暗号化システムは、上記複数鍵暗号化装置と複数台の複数鍵復号装置からなり、複数鍵暗号化装置において、秘匿の対象とする電子データを複数の復号鍵データにより復号可能なように暗号化した暗号化データを個々の複数鍵復号装置に配信し、各複数鍵復号装置において、配信された暗号化データに対して別個に入力あるいは記憶する復号鍵データによって復号し出力することを特徴とし、秘匿の対象とする任意の複数の電子データについて、複数の異なる復号鍵データを用いて複数鍵暗号化装置において同時に暗号化して、これを個別の複数鍵復号装置に送信する事で、該暗号化した電子データの復号に必要な復号鍵データがないと該電子データを復元・参照・利用できないように安全に電子データを秘匿・配信する事を可能とする。
本発明によれば、複数鍵暗号化装置において、秘匿の対象とする任意の電子データSに対して、複数個の復号鍵データを設定し、秘匿データSを分散暗号化した後の分散データの幾つかが固定の復号鍵データとなるように分散関数を決定して、該分散関数により秘匿データを分散暗号化した分散データを生成する事で、複数鍵復号装置において複数個の復号鍵データの内の任意の一個を用いて元の秘匿データSを復号する事が可能となる。これにより、電子データの暗号化において、複数個の復号鍵データに対して個別に暗号化して暗号化データを生成し、個別の復号鍵データによって復号するのではなく、ただ一度の処理により共通に暗号化して暗号化データを生成し、個々の復号鍵データによって復号する事ができ、利便性の高い電子データの暗号化・復号が可能なる。
図1に、本発明の実施形態における複数鍵暗号化装置100、複数の複数鍵復号装置200による複数鍵暗号化システムの構成例を示す。ここで、複数鍵暗号化装置100と複数の複数鍵復号装置200は、相互に接続されていても良いし、接続されていなくとも良い。また、例えば図1のようにインターネットなどの通信回線300を通じてネットワーク的に接続されていても良い。複数鍵暗号化装置100は、入力された秘匿対象とする電子データを、復号の鍵とする一つあるいは複数の復号鍵データに基づいて分散暗号化して暗号化データを生成して出力する。各複数鍵復号装置200では、入力された暗号化データに対して、それぞれ復号の鍵である任意の復号鍵データに基づいて秘匿対象の電子データを復号して出力する。
以下、複数鍵暗号化装置100、複数鍵復号装置200の構成例及び動作例について詳述する。なお、動作例では(k,n)値閾秘密分散法を利用するが、(d,k,n)閾値秘密分散あるいは復元制御型秘密情報分散法を利用しても同様である。
<複数鍵暗号化装置100>
図2に本発明の実施例における複数鍵暗号化装置100の機能構成図を示す。複数鍵暗号化装置100は、暗号化制御部110、秘匿データ入力部120、復号鍵データ入力部130、電子データ分割部140、分散関数生成部150、分散データ生成部160、暗号化データ出力部170、情報記憶部180から構成される。複数鍵暗号化装置100は暗号化制御部110の制御にしたがって動作する。
秘匿データ入力部120は、秘匿の対象とする電子データの入力を受け付ける。受け付けた電子データは例えば情報記憶部180や内部メモリなどに一時的に記録するのが望ましい。本実施例では、電子データとして6桁の文字列テキスト「秘密情報の例」が入力されたものとする。入力された文字列テキストは、例えばシフトJISコードにより符号化されて情報記憶部180や内部メモリなどに格納される。本実施例では、「秘密情報の例」が24桁の16進文字列「94E996A78FEE95F182CC97E1」と符号化され、情報記憶部180などに格納されるとする。以下、入力された電子データを秘匿データSとして記す。
なお、本発明は秘匿データ入力部120において入力を受け付ける電子データの種類や内容および長さなどを特に規定するものではない。数値情報、文字列など符号化する事で分散関数による演算が可能であればどのような情報でも良く、また文字列テキストだけでなく画像データや音楽データなどの任意の電子データ、あるいは予め暗号化された暗号化データを対象としても良い。さらに、入力された秘匿データSを秘匿データ入力部120においてさらに暗号化する事で安全性を高める事も考えられる。また、本実施例は情報の入力の方法および形式を規定するものではない。キーボード入力やファイル入力の他に、インターネットなどの接続回線を介して他の装置から入力するようにしても構わない。
次に、復号鍵データ入力部130は、復号の鍵とする電子データの入力を一個あるいは複数個受け付ける。受け付けた電子データは、例えば情報記憶部180や内部メモリなどに一時的に記録するのが望ましい。本実施例では、復号の鍵とする電子データとして3個の電子データ、「6B6579」、「6D6173」、「72796F」が入力されたものとする。以下、入力された復号鍵データをそれぞれWF1、WF2、WF3と記す。
なお、本発明は復号鍵データ入力部130において入力を受け付ける電子データの内容やその数および長さを特に規定するものではない。数値情報、文字列など符号化する事で分散関数による演算が可能であればどのような情報でも良く、本実施例における入力例「6B6579」が「key」のASCIIコード表記であるように、16進入力ではなく「key」、「mas」、「ryo」のように文字列で入力して16進表記に変換しても良いし、6桁ではなく「6B65796D6173」のように12桁の16進入力であっても良い。また、本実施例は復号鍵データの入力の方法および形式を規定するものではない。キーボード入力やファイル入力の他に、インターネットなどの接続回線を介して他の装置から入力するようにしても構わない。さらには、復号の鍵とする電子データを常に固定のものとして複数鍵暗号化装置100の内部に作り込むあるいは外部ファイルを読み込むようにして、復号鍵データ入力部130では入力を受け付けずに固定の復号鍵データを用いる、あるいは複数の復号鍵データの候補を提示して、利用者に復号の鍵とする電子データを選択させるようにしても構わない。
次に、電子データ分割部140は、情報記憶部180または内部メモリなどに記録された秘匿データSを読み出し、一定長の電子データに分割してブロック化した上で、再度情報記憶部180または内部メモリなどに記録する。
本実施例では分割後のブロック化した電子データの長さを3バイトとする。秘匿データSをブロック化した電子データは、分散暗号化の際に分散関数の一部として使用する素数である固定文字列Pよりも小さくなければならない。本実施例では固定文字列Pを3バイトの16進文字列「FFFFFD」とする。したがって、3バイト単位で分割した後の電子データが固定文字列P以上の値をとる、「FFFFFD」、「FFFFFE」、「FFFFFF」がブロックとして存在する場合が考えられる。そのような場合には、例えば分割する際に冗長なブロックに置換するなどの方法がある。本実施例ではP=FFFFFDであるため、ブロック化した電子データがPより1少ない「FFFFFC」の場合には、「FFFFFC」、「FFFFFC」というように冗長なブロックを追加し、同様に、「FFFFFD」の場合には「FFFFFC」、「000001」のように、「FFFFFE」の場合には「FFFFFC」、「000002」のように、「FFFFFF」の場合には「FFFFFC」、「000003」のように冗長なブロックを追加して置換する事で、復号時の秘匿データが完全に元の秘匿データと同一になるようにブロック化する事ができる。なお、復号の鍵とする復号鍵データについては厳密性を持たせずに、「FFFFFD」、「FFFFFE」、「FFFFFF」を全て「FFFFFC」に置換するようにしても良い。また、このようなブロック化した電子データの補完あるいは置換を行わずに、固定文字列Pをブロック化する電子データの長さよりも大きくする方法も考えられるが、その場合は分散データ生成部160において分散生成される暗号化データの大きさが元の秘匿データよりも大きくなる事になる。
本実施例における秘匿データSは24桁の16進文字列「94E996A78FEE95F182CC97E1」であり、3バイト単位にブロック化すると「94E996」,「A78FEE」,「95F182」,「CC97E1」の4ブロックとなる。以下、秘匿データSをブロック化した個々の電子データをSi(1≦i≦4)と記す。
なお、本実施例は電子データ分割部140における電子データをブロック化するための分割方法を特に規定するものではない。本実施例では3バイト単位で単純に分割したが、後から正しく元の電子データに復号できれば良く、例えば2バイト単位で分割した上にエラー訂正符号やハッシュ値などを付与して3バイトとしてデータの復号誤りや改ざん検出機能を持たせたりするなどの分割方法が考えられる。
次に、分散関数生成部150は、分割した個々の秘匿データSiおよび復号鍵データWF1、WF2、WF3を元に、秘匿データを分散暗号化するための分散関数と呼ばれる特殊な関数f(x)において必要な変数を決定し、分散関数f(x)を生成する。本実施例では、分散関数f(x)の基本形を次の式(7)で表現するものとする。
f(x)=S+RAx+RBx+RCx (modP)…(7)
式(7)は、先の式(1)においてk=4としたもので、Sは秘匿の対象とする電子データ、xは電子データを分散暗号化して分散データWxを生成するための情報番号x、RA、RB、RCは変数または乱数、Pは素数である固定文字列を表す。式(7)の分散関数f(x)は、秘匿の対象とする電子データを任意の個数に分散暗号化するもので、分散暗号化により生成した多数の分散データの内、任意の4つの分散データから元の秘匿データSが復元可能となるが、3個までの分散データが揃っても元の秘匿データSは復元できないような(k,n)閾値、秘密分散法に従った分散関数である。(d,k,n)閾値秘密分散法や復元型秘密情報分散法などの場合は基本形の式が異なるだけである。
なお、変数または乱数であるRjの個数は本実施例においては簡便化のために3つとしたが、これは複数鍵暗号化装置100において設定を可能とする復号鍵データの多重数を決定するものであり、復号鍵データの数より多くの個数を使用しても良い。
また、本実施例においては、前述したように固定文字列Pとして素数である3バイトの16進文字列P=FFFFFDを用いる。なお、素数である固定文字列Pのサイズおよび値に関しては、本実施例で特に規定するものではない。分散暗号化する電子データの想定されるブロック単位やまた総当り攻撃に対するセキュリティ強度などの観点から任意に決定して良く、また個別の複数鍵暗号化装置によって異なるようにしても良い。
なお、分散関数f(x)および固定文字列Pについては、複数鍵暗号化装置100だけでなく、複数鍵復号装置200においても共通に使用する必要がある。これらの情報を各装置間で共有する手段については本発明で規定するものではないが、例えば、これらの情報を記憶したICカードなどの記録媒体を共通に使用したり、また各装置に固有の秘密鍵情報などによって分散暗号化したこれらの情報を送信したりなどの手段が考えられる。また、これらの情報を常に固定の情報として、各装置内の固定メモリなどに作り込んでしまっても構わない。
以下、分散関数生成部150の動作について詳細を説明する。分散関数生成部150は、ブロック化した個々の秘匿データSiに対して、復号鍵データWF1、WF2、WF3を用いて、変数または乱数(以下、乱数で総称)RAi、RBiおよびRCiを算出する。本実施例における式(7)の分散関数f(x)は任意の4つの分散データから元の秘匿データSを復元可能とするものである事から、例えば分散関数f(x)にx=2を代入したW2が復号鍵データWF1と、x=4を代入したW4がWF2と、x=6を代入したW6がWF3と一致するように乱数RA,RB,RCを決定する事により、何れかの復号鍵データと任意に生成した3つの分散データにより秘匿データSが復号可能となるように、暗号化データを分散生成する事ができる。
式(7)の分散関数f(x)を、復号鍵データWF1,WF2,WF3について記述すると、次の式(8)のようになる。
Figure 0004587452
これらの式をRA,RB,RCに着目して変形すると、個々のブロック化した秘匿データSiと復号鍵データWFjに対する、乱数RA1,RBi、RCiの算出式は次の式(9)のようになる。
Figure 0004587452
分散関数生成部150は、秘匿データの各ブロックSi毎に式(9)にSi、WFjを代入して、乱数RAi、RBi、RCiを算出する。例えば1ブロック目はS1=94E996であり、WF1=6B6579、WF2=6D6173、WF3=72796Fとすると、式(9)より、RA1=EEF7E5、RB1=8A7C84、RC1=D9D33Dとなる。以下、秘匿データの各ブロックSiに対して、順次RAi、RBi、RCiを算出して情報記憶部180または内部メモリなどに記録する。本実施例における分散関数生成部150の計算例を図3に示す。
なお、本実施例では復号鍵データWF1,WF2,WF3をそれぞれ6桁の16進として算出を行ったが、復号鍵データの鍵長さが12桁などのようにブロック長さよりも長い場合には、秘匿データと同様に復号鍵データを分割した上で、例えば前半と後半といったように交互に復号鍵データの使用する部分を変えて算出を行うようにしても良い。さらにまた、復号鍵データが例えばWF1とWF2の2個のみである場合には、変数RCを任意の乱数として生成するようにして構わない。変数RCiを秘匿データの各ブロックSi毎に任意の全くの乱数として生成し、ブロック毎に異なるものとする事で、暗号化の法則性を隠して安全性を高める事ができる。ただしその場合変数RCiは固定文字列Pより小さく秘匿データSiと同程度のサイズの乱数である事が望ましい。さらに、各ブロックSi毎にRCiを乱数として生成する以外に固定の値を使っても良く、また後で生成する暗号化データがうまくランダム性を持つようにRCiを生成しても良い。本発明は、これらの各変数の決定方法を特に規定するものではなく、生成される分散関数f(x)がある固定のxの値の下で復号鍵データWFを算出するように各変数が決定されれば良い。
次に、分散データ生成部160は、分散関数生成部150において生成した秘匿データSi、および乱数RAi,RBi,RCiからなる分散関数f(x)を使って、x=1を代入した分散データW1=f(1)、x=3を代入した分散データW3=f(3)、x=5を代入した分散データW5=f(5)を算出する。
本実施例においては、例えば1ブロック目(i=1)としてS1=94E996、RA1=EEF7E5、RB1=8A7C84、RC1=D9D33Dであり(図3)、式(7)の分散関数f(x)に情報番号x=1,3,5をそれぞれ代入して分散データW1、W3、W5を算出すると、以下のように算出結果が得られる。
Figure 0004587452
ちなみに、式(7)に示す分散関数f(x)にx=2を代入して分散データW2iを算出すると、W2i=6B6579が得られ、WF1と一致する。すなわち、実施例の本分散関数f(x)は固定値x=2の下で復号鍵データWF1を算出するような分散関数f(x)である。また、実施例の本分散関数f(x)は前述したように4つの分散データから秘匿データSを復号可能とする秘密分散法の分散関数である。したがって、本分散関数f(x)により生成した分散データW1、W3、W5と、複合鍵データWF1、WF2、WF3のいずれか1つとから、秘匿データSを復号する事が可能となる。
以下、分散データ生成部160は、同様にして秘匿データSiの各ブロックに対してW1i、W3i、W5iを算出し、情報記憶部180または内部メモリなどに記録する。図3に示した分散関数生成部15における計算例に対する、分散データ生成部160の計算例を図4に示す。なお、個々のブロックに対して分散データW1i、W3i、W5iを算出した後は、情報の漏洩を防ぐために、秘匿データSi、復号鍵データWFj、乱数RAi、RBi、RCiなどの各値を情報記憶部180や内部メモリなどから破棄する事が望ましい。
なお、本実施例では復号鍵データWF1、WF2、WF3をそれぞれ6桁の16進として計算を行ったが、復号鍵データの鍵長さが12桁などのようにブロック長さよりも長く、秘匿データと同様に復号鍵データを分割した場合には、例えば前半と後半といったように交互に復号鍵データの使用する部分を変えて計算を行うようにしても良い。また、本実施例では分散データの長さは秘匿データSiと同様に4ブロックとなるが、秘匿データSの長さが暗号化データWOからは分からないようにダミーのデータを追加するようにしても良い。例えば、i=5からi=8までの4ブロックについて、Si=000000という空データを追加して乱数RAi、RBi、RCiを算出し、分散データを計算する事で、生成する暗号化データの長さを秘匿データの長さと異なるようにできる。さらに、復号後の秘匿データの正当性を検証するために、一定の特徴を持つダミーの検証用データを追加するようにしても良い。これにより復号後の秘匿データが正しいものかどうかを複数鍵復号装置が検証できるようになる。
次に、暗号化データ出力部170は、情報記憶部180または内部メモリなどに記録された分散データW1i、W3i、W5iをまとめ、暗号化データWOとして出力する。本実施例においては、図4に示すW1i、W3i、W5iを順次出力するものとして、出力される暗号化データW0は「E831423979B52210336E053FB84F4EA33A972883BEF969346220B1C997BAA5FECFB58B16」となる。暗号化データWOを出力した後は、暗号化データの漏洩を防ぐために情報記憶部180や内部メモリなどから出力した分散データW1i、W3i、W5iを破棄する事が望ましい。
なお、本発明は暗号化データ出力部170においてまとめる分散データの個数や組み合わせを限定するものではない。本実施例は4つの分散データにより秘匿データの復元が可能である事から3つの分散データをまとめて暗号化データWOとして出力したが、暗号化データ出力部170では、生成した分散データを秘密の復元に必要な個数よりも、秘密の復元に必要な復号鍵データの数だけ少ない個数組み合わせ上で暗号化データとして出力する事も可能である。例えば2つの分散データをまとめて暗号化データとする事で、任意の2つの復号鍵データがないと復号できないように暗号化データを出力する事も可能である。
また、本発明例は、暗号化データ出力部170における暗号化データの出力の方法やフロトコル、フォーマットを特に規定するものではない。暗号化データを画面や記録媒体などに直接出力したり、ファイル出力したりする他に、ネットワーク出力として、例えば複数鍵復号装置200に通信回線300を介して送信するようにしても良い。出力する際に暗号化データをさらに暗号化したり、出力先の複数鍵復号装置200との問で認証を行うなどして、通信回線300における盗聴に対する安全性を高める事も考えられる。
<複数鍵復号装置200>
図5に本発明の実施例における複数鍵復号装置200の機能構成図を示す。複数鍵復号装置200は、復号制御部210、暗号化データ入力部220、復号鍵データ入力部230、電子データ分割部240、秘匿データ復号部250、復号データ出力部260、情報記憶部270から構成される。複数鍵復号装置200は復号制御部210の制御にしたがって動作する。
暗号化データ入力部220は、復号の対象とする暗号化データの入力を受け付ける。受け付けた暗号化データは例えば情報記憶部270や内部メモリなどに一時的に記録するのが望ましい。本実施例では暗号化データとして、前述の複数鍵暗号化装置100により秘匿データとして入力された文字列テキスト“秘密情報の例”から生成された暗号化データW0=E831423979B52210336E053FB84F4EA33A972883BEF969346220B1C997BAA5FECFB58B16が入力されたものとする。以下、入力された暗号化データをWIと記す。
なお、本発明は暗号化データ入力部220において入力を受け付ける暗号化データの内容やその数を特に規定するものではない。本実施例では16進出力された暗号化データを入力としたが、数値情報、文字列など符号化する事で演算が可能であればどのようなデータでも良く、また複数の分割された暗号化データを対象として良い。また、本実施例は情報の入力の方法および形式を規定するものではない。キーボード入力やファイル入力の他に、インターネットなどの接続回線を介して他の装置から入力するようにしても構わない。
次に、復号鍵データ入力部230は復号の鍵とする電子データとその情報番号xの入力を受け付ける。受け付けた電子データは例えば情報記憶部270や内部メモリなどに一時的に記録するのが望ましい。本実施例では前述の複数鍵暗号化装置100で入力された復号鍵データの内の一つである、WF1=6B6579が入力されたものとする。なお、WF1は情報番号2の復号鍵データであり、x=2とする。以下、入力された復号鍵データをWFと記す。
なお、本発明は復号鍵データ入力部230において入力を受け付ける復号の鍵とする電子データの内容やその数および長さを特に規定するものではない。数値情報、文字列など符号化する事で分散関数による演算が可能であればどのような情報でも良く、本実施例における入力例「6B6579」が「key」のASCIIコード表記であるように、16進入力ではなく文字列で入力して16進表記に変換しても良いし、6桁ではなく「6B65796D6173」のように12桁の16進入力であっても良い。情報番号xについても同様である。本実施例においては復号鍵データと情報番号を別々の入力として記述したが、情報番号xが予め復号鍵データの一部として組み込まれていても良い。また、本実施例は復号鍵データの入力の方法および形式を規定するものではない。キーボード入力やファイル入力の他に、インターネットなどの接続回線を介して他の装置から入力するようにしても構わない。さらには、復号の鍵とする電子データを常に固定のものとして複数鍵復号装置200の内部に作り込むあるいは外部ファイルを読み込むようにして、復号鍵データ入力部230では入力を受け付けずに固定の復号鍵データを用いる、あるいは複数の復号鍵データの候補を提示して復号の鍵とする電子データを選択させるようにしても構わない。
電子データ分割部240は、情報記憶部270または内部メモリなどに記録された暗号化データWIを読み出し、一定長の電子データに分割してブロック化した上で、再度情報記憶部270または内部メモリなどに記録する。本実施例では素数である固定文字列Pが3バイトの16進文字列「FFFFFD」である事から、分割後のブロック化した電子データの長さを3バイトと固定する。なお、電子データを3バイト単位で分割した場合、暗号化データは常に固定文字列Pより小さい値をとるが、復号鍵データは固定文字列P以上の値として「FFFFFD」、「FFFFFE」、「FFFFFF」をとる場合が考えられる。そのような場合には、複数鍵暗号化装置と同様に冗長なブロックを追加あるいは置換するなどして、情報の損失を補う事ができる。
本実施例における入力された暗号化データWIは、「E831423979B52210336E053FB84F4EA33A972883BEF969346220B1C997BAA5FECFB58B16」であり、3バイト単位にブロック化すると「E83142」,「3979B5」,「221033」,「6E053F」,・・・,「B58B16」の12ブロックとなる。以下、暗号化データをブロック化した個々の電子データを順にWA1、WB1、WC1、WA2、・・・、WC4と記述する。
なお、本実施例は電子データ分割部240における電子データをブロック化するための分割方法および振り分け方法を特に規定するものではない。本実施例では暗号化データが3バイト単位で3つの分散データを結合して出力しているため、3バイト単位で単純に分割して振り分けたが、暗号化データの出力方法によっては1バイトずつ細かく分割して振り分けたり、最初の4ブロックをWA、次の4ブロックをWB、最後の4ブロックをWCというように、まとめて振り分けるようにしても良い。
次に、秘匿データ復号部250において、ブロック化した暗号化データWIと復号鍵データWFから、秘匿データSを復号する。秘匿データ復号部250は、分割した暗号化データWAi、WBi、WCi(1≦i≦4)および復号鍵データWFを元に演算を行う事で秘匿データのブロックSiを算出する。本実施例における分散関数f(x)が、式(7)に示した
f(x)=S+RAx+RBx+RCx (modP)
であって、WAiは分散データW1=f(1)、WBiは分散データW3=f(3)、WCiは分散データW5=f(5)で、なおかつ復号鍵データWFは情報番号xに対するf(x)である事から、4個の分散データに関する連立方程式を次の式(10)のような行列式で表現できる。
Figure 0004587452
なお、上記行列式において、Siはブロック化された秘匿データ、RAi、RBi、RCiは未知の変数(乱数)である。
本実施例において、復号鍵データとして入力されたWFの情報番号はx=2である事から、式(10)の行列式においてx=2を代入して、行列式を掃き出し法などにより次のように解いてSを求める事で、秘匿データSを復号する事ができる。
Figure 0004587452
Figure 0004587452
上記の演算の結果、Siは行列式から、
Si=(−20WF+15WAi+10WBi−WCi)÷4(mod P)…(12)
の計算式により求める事ができる。本実施例においては、秘匿データの1ブロック目の計算は、WA1=E83142、WB1=3979B5、WC1=221033およびWF=6B6579より、次のようにS1=94E996を得る。
Si=(−20×6B6579+15×E83142+10×3979B5−221033)÷4 (mod FFFFFD)
=94E996
秘匿データ復号部250は、S1を情報記憶部270あるいは内部メモリなどに記録する。以下、入力された暗号化データの各フロックについて同様の計算を行い、S2、S3、S4をそれぞれ得る。本実施例における秘匿データ復号部250の計算例を図6に示す。
なお、復号鍵データ入力部において入力された復号鍵データが、WF2=6D6173であって情報番号x=4の場合にも同様に行列式から、
Si=(10WF+5WAi−10WBi−3WCi)÷2(mod P)…(13)
の計算式を求め、これからSiを計算する事ができる。本実施例においては、秘匿データの1ブロック目の計算は、WAl=E83142、WBl=3979B5、WCl=221033およびWF2=6D6173より、次のように同様にSl=94E996を得る。
Si=(−20×6D6173+5×E83142−10×3979B5−221033)÷2 (mod FFFFFD)
=94E996
このように、秘匿データ復号部250では、異なる復号鍵データが入力された場合であっても、同じ秘匿データを復号する事ができる。
復号データ出力部260は、秘匿データ復号部250で計算されて情報記憶部270または内部メモリなどに記録された秘匿データSiをまとめ、復号された秘匿データSとして出力する。図6に示すように、本実施例においては、出力される秘匿データは「94E996A78FEE95F182CC97E1」となり、これは図3に示した複数鍵暗号化装置100において入力された秘匿データSに等しく、正しく復元できている。秘匿データを出力した後は、秘匿データの漏洩を防ぐために情報記憶部270や内部メモリなどから出力した秘匿データを破棄する事が望ましい。
複数鍵暗号化装置100において、秘匿データのブロック化時に冗長化処理を行っている場合には、復号データ出力部260において縮退処理を行う必要がある。本実施例ではPが「FFFFFD」であるため、算出したブロックがPより1少ない「FFFFFC」の場合には、次のブロックの値により縮退処理を行って出力する。例えば「FFFFFC」、「FFFFFC」と続いた場合は「FFFFFC」を、「FFFFFC」、「000001」の場合には「FFFFFD」を、「FFFFFC」、「000002」の場合には「FFFFFE」を、「FFFFFC」、「000003」の場合には「FFFFFF」を出力するようにすれば、復号時の秘匿データは完全に元の秘匿データと同一になる。
また、複数鍵暗号化装置100において、秘匿データSに対してダミーのデータが追加されている場合には、ダミーのデータを除去して出力する事が望ましい。また、一定の特徴を持つダミーの検証用データが追加されている場合には、復号後の秘匿データSが検証用データを含まない場合には復号後の秘匿データの正当性が検証できないものとして復号処理を中止、あるいはエラーメッセージを表示するなどして、復号処理の正当性を検証するようにもできる。
なお、本実施例は、復号データ出力部260における秘匿データの出力の方法やプロトコル、フォーマットを特に規定するものではない。本実施例では単なる16進文字列の状態で出力するものとしたが、例えばシフトJISコードにより逆符号化した文字列を出力するようにしても良い。本実施例における秘匿データSの出力文字列は“秘密情報の例”となり、これは複数鍵暗号化装置100において秘匿の対象とされた秘匿データSと同値である。また、暗号化データを画面や記録媒体などに直接出力したり、ファイル出力したりする他に、ネットワークを介して他の装置に出力するなどの方法が考えられる。
以上のように、本実施例によれば、複数鍵暗号化装置100において入力された1つの秘匿データと複数の復号鍵データを元にして1つの暗号化データを生成し、複数鍵復号装置200において入力された1つの暗号化データと複数個の復号鍵データの内の1つの復号鍵データを元にして1つの秘匿データを復号する事ができる。なお、1つの秘匿データと複数個の復号鍵データを元にして1つの暗号化データを生成し、該暗号化データと任意の2つの復号鍵データから元の秘匿データを復号するようにしたりする事も可能である。
ここで、図1で示した複数鍵暗号化装置や図5で示した複数鍵復号装置における各部の一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができることは言うまでもない。また、コンピュータでその処理機能を実現するためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、FD、MO、ROM、メモリカード、CD、DVD、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。
本発明の一実施形態における複数鍵暗号化システムの構成図。 複数鍵暗号化装置の一実施例の機能構成図。 分散関数生成部における計算例を示す図。 分散データ生成部における計算例を示す図。 複数鍵復号装置の一実施例の機能構成図。 秘匿データ復号部における計算例を示す図。
符号の説明
100 複数鍵暗号化装置
110 暗号化制御部
120 秘匿データ入力部
130 復号鍵データ入力部
140 電子データ分割部
150 分散関数生成部
160 分散データ生成部
170 暗号化データ出力部
180 情報記憶部
200 複数鍵復号装置
210 復号制御部
220 暗号化データ入力部
230 復号鍵データ入力部
240 電子データ分割部
250 秘匿データ復号部
260 復号データ出力部
270 情報記憶部
300 通信回線

Claims (7)

  1. 秘匿の対象とする電子データを複数の異なる鍵の内の一個あるいは複数個で復号可能なように暗号化する複数鍵暗号化装置であって、
    秘匿の対象とする電子データの入力を受け付ける秘匿データ入力手段と、
    暗号化した電子データを復号する際の鍵情報(以下、復号鍵データ)となる電子データの入力を複数受け付ける復号鍵データ入力手段と、
    入力された秘匿対象の電子データを一定長以下の長さのブロックに分割する電子データ分割手段と、
    分割した秘匿対象の電子データの各ブロックに対して、分散生成される暗号化データの内の複数個が、前記受け付けた複数の復号鍵データとなるように、分散データを生成するための分散関数中の変数値を決定して分散関数を生成する分散関数生成手段と、
    分割した秘匿対象の電子データの各ブロックに対して、前記生成した分散関数により分散データを複数分散生成する分散データ生成手段と、
    前記生成した分散データを秘密の復元に必要な個数よりも一つだけ少ない個数組み合わせた上で暗号化データとして出力する暗号化データ出力手段と、
    を備える事を特徴とする複数鍵暗号化装置。
  2. 請求項1に記載の複数鍵暗号化装置であって、
    一定長以下の長さの乱数データを生成する乱数データ生成手段を更に備え、
    分散関数生成手段は、復号鍵データと乱数データとから分散データを生成するための分散関数中の変数値を決定する事を特徴とする複数鍵暗号化装置。
  3. 請求項1もしくは2に記載の複数鍵暗号化装置であって、
    暗号化データ出力手段は、生成した分散データを秘密の復元に必要な個数よりも、秘密の復元に必要な復号鍵データの数だけ少ない個数組み合わせた上で暗号化データとして出力する事を特徴とする複数鍵暗号化装置。
  4. 請求項1乃至3のいずれか1項に記載の複数鍵暗号化装置により分散暗号化された秘匿対象の電子データを復号する複数鍵復号装置であって、
    復号の対象とする暗号化データの入力を受け付ける暗号化データ入力手段と、
    分散暗号化した電子データを復号する際の鍵情報(以下、復号鍵データ)となる電子データの入力を一つあるいは複数受け付ける復号鍵データ入力手段と、
    入力された暗号化データを一定長以下の長さのブロックに分割する電子データ分割手段と、
    ブロック化した暗号化データと復号鍵データを元に、所定の復号関数により秘匿対象の電子データを復号する秘匿データ復号手段と、
    前記復号した秘匿対象の電子データを出力する秘匿データ出力手段と、
    を備える事を特徴とする複数鍵復号装置。
  5. 請求項1乃至3のいずれか1項に記載の複数鍵暗号化装置と請求項4に記載の複数台の複数鍵復号装置からなる複数鍵暗号化システムであって、
    複数鍵暗号化装置において、秘匿の対象とする電子データを複数の復号鍵データにより復号可能なように暗号化した暗号化データを個々の複数鍵復号装置に配信し、
    各複数鍵復号装置において、配信された暗号化データに対して別個に入力あるいは記憶する復号鍵データによって復号し出力する、
    事を特徴とする複数鍵暗号化システム。
  6. 請求項1乃至3のいずれか1項に記載の複数鍵暗号化装置における処理機能をコンピュータに実行させるためのプログラム。
  7. 請求項4に記載の複数鍵復号装置における処理機能をコンピュータに実行させるためのプログラム。
JP2004264312A 2004-09-10 2004-09-10 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。 Expired - Fee Related JP4587452B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004264312A JP4587452B2 (ja) 2004-09-10 2004-09-10 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004264312A JP4587452B2 (ja) 2004-09-10 2004-09-10 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。

Publications (3)

Publication Number Publication Date
JP2006080998A JP2006080998A (ja) 2006-03-23
JP2006080998A5 JP2006080998A5 (ja) 2006-09-21
JP4587452B2 true JP4587452B2 (ja) 2010-11-24

Family

ID=36160065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004264312A Expired - Fee Related JP4587452B2 (ja) 2004-09-10 2004-09-10 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。

Country Status (1)

Country Link
JP (1) JP4587452B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007300157A (ja) * 2006-04-27 2007-11-15 Toshiba Corp 秘密分散システム、装置及びプログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003032239A (ja) * 2001-04-26 2003-01-31 Fujitsu Ltd コンテント配信システム、耐タンパ装置、サーバ、コンピュータ・プログラム、およびコンテント配信方法
JP2003333028A (ja) * 2002-03-08 2003-11-21 Matsushita Electric Ind Co Ltd データ処理装置
JP2005130404A (ja) * 2003-10-27 2005-05-19 Nippon Telegr & Teleph Corp <Ntt> 復元制御型秘密情報分散方法、復元制御型秘密情報分散装置、復元制御型秘密情報分散プログラム及びその記録媒体
JP2005141436A (ja) * 2003-11-05 2005-06-02 Nippon Telegr & Teleph Corp <Ntt> 情報分散保管方法、情報分散保管システム、その装置、プログラム及び記録媒体
JP2005167794A (ja) * 2003-12-04 2005-06-23 Nippon Telegr & Teleph Corp <Ntt> 秘密情報保管方法及び装置、秘密情報復元方法及び装置、秘密情報保管プログラム並びに秘密情報復元プログラム。
JP2005234069A (ja) * 2004-02-18 2005-09-02 Nippon Telegr & Teleph Corp <Ntt> 相互検証を可能とする秘密情報分配装置、秘密情報検証装置、秘密情報照合装置、秘密情報分配システム及びプログラム
JP2005303776A (ja) * 2004-04-14 2005-10-27 Nippon Telegr & Teleph Corp <Ntt> 電子データ暗号化装置、電子データ復元装置及びプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003032239A (ja) * 2001-04-26 2003-01-31 Fujitsu Ltd コンテント配信システム、耐タンパ装置、サーバ、コンピュータ・プログラム、およびコンテント配信方法
JP2003333028A (ja) * 2002-03-08 2003-11-21 Matsushita Electric Ind Co Ltd データ処理装置
JP2005130404A (ja) * 2003-10-27 2005-05-19 Nippon Telegr & Teleph Corp <Ntt> 復元制御型秘密情報分散方法、復元制御型秘密情報分散装置、復元制御型秘密情報分散プログラム及びその記録媒体
JP2005141436A (ja) * 2003-11-05 2005-06-02 Nippon Telegr & Teleph Corp <Ntt> 情報分散保管方法、情報分散保管システム、その装置、プログラム及び記録媒体
JP2005167794A (ja) * 2003-12-04 2005-06-23 Nippon Telegr & Teleph Corp <Ntt> 秘密情報保管方法及び装置、秘密情報復元方法及び装置、秘密情報保管プログラム並びに秘密情報復元プログラム。
JP2005234069A (ja) * 2004-02-18 2005-09-02 Nippon Telegr & Teleph Corp <Ntt> 相互検証を可能とする秘密情報分配装置、秘密情報検証装置、秘密情報照合装置、秘密情報分配システム及びプログラム
JP2005303776A (ja) * 2004-04-14 2005-10-27 Nippon Telegr & Teleph Corp <Ntt> 電子データ暗号化装置、電子データ復元装置及びプログラム

Also Published As

Publication number Publication date
JP2006080998A (ja) 2006-03-23

Similar Documents

Publication Publication Date Title
JP3560439B2 (ja) 暗号キーの回復を実行する装置
EP2494486B1 (en) System for protecting an encrypted information unit
JP5198539B2 (ja) 記憶装置、アクセス装置およびプログラム
US11212082B2 (en) Ciphertext based quorum cryptosystem
JP4539952B2 (ja) 情報分散保管システム、その装置、プログラム及び記録媒体
US20230224147A1 (en) Generating shared private keys
KR20020060243A (ko) 일방향 함수를 이용하여 수학적으로 제약된 키를 생성하기위한 방법 및 장치
JP2005141436A5 (ja)
CN116830523A (zh) 阈值密钥交换
EP0891053B1 (en) Key recovery condition encryption and decryption apparatuses
JP2000115154A (ja) 記憶装置および方法、復号装置および方法、提供媒体、並びに情報記憶媒体
JP2021072593A (ja) 暗号処理システム及び暗号処理方法
JP4843511B2 (ja) 同報通信暗号化方法、情報復号方法、それらの装置、それらのプログラム、およびそれらの記録媒体
JP4587452B2 (ja) 複数鍵暗号化装置、複数鍵復号装置、複数鍵暗号化システム及びプログラム。
JP6881111B2 (ja) 暗号化データ生成装置、復号データ生成装置、追加データ付き認証暗号システム、その方法、及びプログラム
JP2007189345A (ja) 複数鍵認証端末装置及び複数鍵認証管理装置及び複数鍵認証システム及びプログラム
JP2011040932A (ja) 認証付き暗号化装置、認証付き暗号化方法、検証付き復号装置、検証付き復号方法、暗号システム、プログラム、記録媒体
JP4194481B2 (ja) 秘密情報保管処理方法及び秘密情報保管装置、並びに秘密情報復元処理方法及び秘密情報復元装置
JP3984570B2 (ja) 署名/検証システムにおける鍵管理サーバおよび検証装置を制御するプログラム
JP2005167794A5 (ja)
JP2005303776A (ja) 電子データ暗号化装置、電子データ復元装置及びプログラム
JP4437411B2 (ja) 相互検証を可能とする秘密情報分配装置、秘密情報検証装置、秘密情報照合装置、秘密情報分配システム及びプログラム
JP4475511B2 (ja) 発展型コンテンツ作成装置、コンテンツ発展装置及びそのプログラム
CN113141249B (zh) 一种门限解密方法、系统及可读存储介质
JP2005234069A5 (ja)

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060808

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100901

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100906

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees