説明

マッチングシステム、マッチングシステムの方法、結合装置及びプログラム

【課題】キーカラムの一致するデータの情報を秘匿化したマッチング技術を提供する。
【解決手段】マッチングシステムは、第一結合装置及び第二結合装置を備える。第一結合装置及び第二結合装置のそれぞれは、秘密鍵及び可換暗号関数fを用いて、キーカラムのデータの情報を秘匿化して、マッチングを行う。これにより、キーカラムの一致するデータの情報を秘匿化することができ、プライバシーを保護したデータ処理をすることができる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、複数の表形式のデータについて非開示のまま必要なデータを結合する技術に関する。
【背景技術】
【0002】
非特許文献1に、複数の表形式のデータについて非開示のまま必要なデータを結合する技術が記載されている。以下、非特許文献1に記載された技術でできることを簡単に説明する(例えば、非特許文献1参照。)。
【0003】
図10に示すように、第一テーブル及び第二テーブルがあるとする。非特許文献1の技術により、第一テーブルのキーカラムのデータと、第二テーブルのキーカラムのデータとで一致するものを特定し、その一致するデータを含むタプル(行)のデータを結合して取得することができる。
【0004】
図10の例だと、第一テーブルのキーカラム及び第二テーブルのキーカラムは、014及び034のデータが共に含む。したがって、取得することができる結合データは、データ014と第一テーブルの014のデータを含むタプルのデータxxxと第二テーブルの014のデータを含むタプルのデータbbbとを結合したデータ、及び、データ034と第一テーブルの034のデータを含むタプルのデータzzzと第二テーブルの034のデータを含むタプルのデータcccとを結合したデータとなる。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】R.Agrawal, A.V.Evfimievski, and R.Srikant, “Information Sharing Across Private Databases”, ACM SIGMOD 2003, pp.86-97, 2003
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、非特許文献1の技術では、キーカラムの一致するデータを含むタプルのデータを結合したデータのみならず、キーカラムの一致するデータ自体が分かってしまう。図10の例では、データ014及び034において、一致するということが分かってしまう。
【0007】
この発明は、キーカラムの一致するデータの情報を秘匿化したマッチングシステム、方法、結合装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
この発明の第一の態様であるマッチングシステムは、第一結合装置及び第二結合装置を含む。fを、逆関数が存在する所定の秘密鍵を用いた可換暗号関数、gを所定の鍵生成関数とし、Eを所定の暗号化関数とする。第一結合装置は、第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算する第一ハッシュ値計算部と、組(y,E(ext’(v’)))を第二結合装置から受信する受信部と、第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、第二結合装置から受信したyを秘密鍵eS’を用いた関数fに入力したときの出力値f(eS’,y)を計算する第二計算部と、f(eS,y)のハッシュ値h’(f(eS,y))を計算する第二ハッシュ値計算部と、f(eS,y)を鍵生成関数gに入力したときの出力値k’=g(f(eS,y))を計算する第三計算部と、第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、E(E(ext’(v’)))をk’を用いて所定の暗号化関数K’で暗号化したc’=K’(k’,E(E(ext’(v’))))を計算する第四計算部と、h’(f(eS,y))、f(eS’,y)及びc’の組(h’(f(eS,y)),f(eS’,y),c’)を第二結合装置に送信する第一送信部と、h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第五計算部と、h(v)を秘密鍵eS’を用いた関数fに入力したときの出力値k=f(eS’,h(v))を計算する第六計算部と、第一結合装置が保有するテーブルの各データvを含むタプルの全部又は一部のデータext(v)をkを用いて所定の暗号化関数Kで暗号化したc=K(k,ext(v))を計算する第七計算部と、x及びcの組(x,c)を第二結合装置に送信する第二送信部と、を含む。第二結合装置は、第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、各ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、第二結合装置が保有するテーブルの各データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、y及びE(ext’(v’))の組(y,E(ext’(v’)))を第一結合装置に送信する送信部と、組(h’(f(eS,y)),f(eS’,y),c’)を第一結合装置から受信する第一受信部と、組(x,c)を第一結合装置から受信する第二受信部と、第一結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)のハッシュ値h’(f(eR,x))を計算する第二計算部と、h’(f(eR,x))と、h’(f(eS,y))とが一致する組(h’(f(eS,y)),f(eS’,y),c’)と組(x,c)とのペアを検出する検出部と、検出されたペアを構成するf(eR,x)を鍵生成関数gに入力したときの出力値g(f(eR,x))を計算する第三計算部と、秘密鍵eRを用いたfの逆関数f−1を用いて検出されたペアを構成するf(eS’,y)を復号したf−1(eR,f(eS’,y))=f(eS’,h(v’))を計算する第四計算部と、検出されたペアを構成するcをf(eS’,h(v’))を用いて復号関数K*により復号したK*(f(eS’,h(v’)),c)=ext(v)を計算する第一復号部と、検出されたペアを構成するc’をg(f(eR,x))を用いて復号関数K’*により復号したK’*(g(f(eR,x)),c’)=E(E(ext’(v’)))を計算する第二復号部と、E(E(ext’(v’)))を、復号関数E+*及び復号関数E*で復号したext’(v’)を計算する第三復号部と、を含む。
【0009】
この発明の第二の態様であるマッチングシステムは、第一結合装置及び第二結合装置を含む。fを所定の秘密鍵を用いた可換暗号関数とし、Eを所定の暗号化関数とする。第一結合装置は、第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算するハッシュ値計算部と、組(y,E(ext’(v’)))を第二結合装置から受信する受信部と、第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、f(eS,y)及びE(E(ext’(v’)))の組(f(eS,y),E(E(ext’(v’))))を第二結合装置に送信する第一送信部と、h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第二計算部と、各データvを含むタプルの全部又は一部のデータext(v)を暗号化関数Eで暗号化したE(ext(v))を計算する暗号化部と、x及びE(ext(v))の組(x,E(ext(v)))を第二結合装置に送信する第二送信部と、を含む。第二結合装置は、第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、各ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、第二結合装置が保有するテーブルの各データv’を含むタプルの全部又は一部のデータext’(v’)を暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、y及びE(ext’(v’))の組(y,E(ext’(v’)))を第一結合装置に送信する送信部と、組(f(eS,y),E(ext’(v’)))を第一結合装置から受信する第一受信部と、組(x,E(ext(v)))を第一結合装置から受信する第二受信部と、第一結合装置から受信したxを秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)を計算する第二計算部と、f(eR,x)と、f(eS,y)とが一致する組(f(eS,y),E(E(ext’(v’))))と組(x,E(ext(v)))とのペアを検出して、検出されたペアを構成するE(ext(v))及びE(E(ext’(v’)))を出力する検出部と、を含む。
【発明の効果】
【0010】
キーカラムの一致するデータの情報を秘匿化することができる。
【図面の簡単な説明】
【0011】
【図1】マッチングシステムの例を説明するためのブロック図。
【図2】第一実施形態の第一結合装置の例を説明するためのブロック図。
【図3】第一実施形態の第二結合装置の例を説明するためのブロック図。
【図4】第二実施形態の第一結合装置の例を説明するためのブロック図。
【図5】第二実施形態の第二結合装置の例を説明するためのブロック図。
【図6】第一実施形態の第一結合装置の処理の流れの例を説明するためのフローチャート。
【図7】第一実施形態の第二結合装置の処理の流れの例を説明するためのフローチャート。
【図8】第二実施形態の第一結合装置の処理の流れの例を説明するためのフローチャート。
【図9】第二実施形態の第二結合装置の処理の流れの例を説明するためのフローチャート。
【図10】従来のマッチングシステムの概要を説明するための図。
【発明を実施するための形態】
【0012】
以下、図面を参照してこの発明の実施形態を説明する。
【0013】
[第一実施形態]
第一実施形態のマッチングシステムは、図1に示すように、第一結合装置S及び第二結合装置Rを例えば備える。
【0014】
第一結合装置Sは、図2に示すように、記憶部S0、テーブル記憶部S1、第一ハッシュ値計算部S2、秘密鍵生成部S3、第一計算部S4、第二計算部S5、第二ハッシュ値計算部S6、第三計算部S7、再暗号化部S8、第四計算部S9、第一送信部S10、第五計算部S11、第六計算部S12、第七計算部S13、第二送信部S14を例えば備える。
【0015】
第二結合装置Rは、図3に示すように、記憶部R0、テーブル記憶部R1、ハッシュ値計算部R2、秘密鍵生成部R3、第一計算部R4、送信部R5、暗号化部R6、第二受信部R7、第一受信部R15、第二計算部R8、検出部R9、第三計算部R10、第四計算部R11、第二復号部R12、第一復号部R13、第三復号部R14を例えば備える。
【0016】
第一結合装置Sは、テーブルTを保有する。テーブルTはテーブル記憶部S1に記憶されている。一方、第二結合装置Rは、テーブルTを保有する。テーブルTはテーブル記憶部R1に記憶されている。
【0017】
テーブルTS及びテーブルTRは、カラム(列)及びタプル(行)で構成される。マッチングシステムは、テーブルT及びテーブルTの所定のカラムにおいて一致するデータを特定し、その一致するデータを含むタプルの全部又は一部のデータを結合したデータを取得する。一致するデータを特定する対象となるカラムをキーカラムと呼ぶことにする。テーブルTのキーカラムV及びテーブルTのキーカラムVは予め定められているものとする。
【0018】
第一結合装置Sの第一ハッシュ値計算部S2(図2)は、キーカラムVの各データvのハッシュ値h(v)を計算する(ステップA1)。ハッシュ値h(v)は、第五計算部S11及び第六計算部S12に送信される。
【0019】
第一結合装置Sの秘密鍵生成部S3は、秘密鍵eS及び秘密鍵eS’を生成する(ステップA2)。秘密鍵eSは、第一計算部S4及び第五計算部S11に送信される。秘密鍵eS’は、第二計算部S5及び第六計算部S12に送信される。秘密鍵eS及び秘密鍵eS’は、後述する関数fで用いることができればどのようなものでもよい。
【0020】
第二結合装置Rのハッシュ値計算部R2(図3)は、キーカラムVの各データv’のハッシュ値h(v’)を計算する(ステップB1)。ハッシュ値h(v’)は、第一計算部R4に送信される。
【0021】
第二結合装置Rの秘密鍵生成部R3は、秘密鍵eRを生成する(ステップB2)。秘密鍵eRは、第一計算部R4及び第二計算部R8に送信される。秘密鍵eRは、後述する関数fで用いることができればどのようなものでもよい。
【0022】
第二結合装置Rの第一計算部R4は、各ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する(ステップB3)。計算されたyは、送信部R5に送信される。関数fは、逆関数が存在する、所定の秘密鍵を用いた可換暗号関数である。この例では、関数fは、所定の秘密鍵として秘密鍵eRを用いている。
【0023】
例えば、pを素数、所定の秘密鍵ksを用いた関数fksは次のようにして構成することができる。
【0024】
ks(x)=xks mod p
このとき、所定の秘密鍵krを用いた関数fkrをfkr=xkr mod pとすると、
ks(fkr(x))=(xkrks mod p=(xkskr mod p=fkr(fks(x))となり、関数fks及び関数fkrが可換となることがわかる。
【0025】
第二結合装置Rの暗号化部R6は、各データv’を含むタプルの全部又は一部のデータext’(v’)を所定の暗号化関数Eで暗号化したE(ext’(v’))を計算する(ステップB4)。計算されたE(ext’(v’))は、送信部R5に送信される。
【0026】
第二結合装置Rの送信部R5は、y及びE(ext’(v’))の組(y,E(ext’(v’)))を第一結合装置Sに送信する(ステップB5)。組(y,E(ext’(v’)))は、例えば辞書順に第一結合装置Sに送信される。
【0027】
第一結合装置Sの受信部S16(図2)は、組(y,E(ext’(v’)))を受信する(ステップA3)。組(y,E(ext’(v’)))のyは、第一計算部S4及び第二計算部S5に送信される。
【0028】
第一結合装置Sの第一計算部S4は、第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する(ステップA4)。f(eS,y)は、第二ハッシュ値計算部S6及び第一送信部S10に送信される。
【0029】
第一結合装置Sの第二計算部S5は、第二結合装置から受信したyを秘密鍵eS’を用いた関数fに入力したときの出力値f(eS’,y)を計算する(ステップA5)。f(eS’,y)は、第一送信部S10に送信される。
【0030】
第一結合装置Sの第二ハッシュ値計算部S6は、f(eS,y)のハッシュ値h’(f(eS,y))を計算する(ステップA6)。h’(f(eS,y))は、第一送信部S10に送信される。
【0031】
第一結合装置Sの第三計算部S7は、f(eS,y)を鍵生成関数gに入力したときの出力値k’=g(f(eS,y))を計算する(ステップA7)。k’は、第四計算部S9に送信される。
【0032】
第一結合装置Sの再暗号化部S8は、第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する(ステップA8)。E(E(ext’(v’)))は、第四計算部S9に送信される。
【0033】
第一結合装置Sの第四計算部S9は、E(E(ext’(v’)))をk’を用いて所定の暗号化関数K’で暗号化したc’=K’(k’,E(E(ext’(v’))))を計算する(ステップA9)。c’は、第一送信部S10に送信される。
【0034】
第一結合装置Sの第一送信部S10は、h’(f(eS,y))、f(eS’,y)及びc’の組(h’(f(eS,y)),f(eS’,y),c’)を第二結合装置Rに送信する(ステップA10)。
【0035】
第一結合装置Sの第五計算部S11は、h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する(ステップA11)。xは、第二送信部S14に送信される。
【0036】
第一結合装置Sの第六計算部S12は、h(v)を秘密鍵eS’を用いた関数fに入力したときの出力値k=f(eS’,h(v))を計算する(ステップA12)。kは、第七計算部S13に送信される。
【0037】
第一結合装置Sの第七計算部S13は、各データvを含むタプルの全部又は一部のデータext(v)をkを用いて所定の暗号化関数Kで暗号化したc=K(k,ext(v))を計算する(ステップA13)。cは、第二送信部S14に送信される。
【0038】
第一結合装置Sの第二送信部S14は、x及びcの組(x,c)を第二結合装置Rに送信する(ステップA14)。組(x,c)は、例えば辞書順で第二結合装置Rに送信される。
【0039】
第二結合装置Rの第一受信部R15(図3)は、組(h’(f(eS,y)),f(eS’,y),c’)を第一結合装置Sから受信する(ステップB6)。組(h’(f(eS,y)),f(eS’,y),c’)は、検出部R9に送信される。
【0040】
第二結合装置Rの第二受信部R7は、組(x,c)を第一結合装置Sから受信する(ステップB7)。xは、第二計算部R8に送信される。組(x,c)は、検出部R9に送信される。
【0041】
第二結合装置Rの第二計算部R8は、第一結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)のハッシュ値h’(f(eR,x))を計算する(ステップB8)。h’(f(eR,x))は、検出部R9に送信される。
【0042】
第二結合装置Rの検出部R9は、第二計算部R8が計算したh’(f(eR,x))と、受信したh’(f(eS,y))とが一致する組(h’(f(eS,y)),f(eS’,y),c’)と組(x,c)とのペアを検出する(ステップB9)。以下のステップB11以降のステップは、この検出されたペアを構成する情報について行われる。
【0043】
第二結合装置Rの第三計算部R10は、検出されたペアを構成するf(eR,x)を鍵生成関数gに入力したときの出力値g(f(eR,x))を計算する(ステップB10)。g(f(eR,x))は、第二復号部R12に送信される。
【0044】
第二結合装置Rの第四計算部R11は、秘密鍵eRを用いたfの逆関数f−1を用いて検出されたペアを構成する上記f(eS’,y)を復号したf−1(eR,f(eS’,y))=f(eS’,h(v’))を計算する(ステップB11)。f(eS’,h(v’))は、第一復号部13に送信される。
【0045】
第二結合装置Rの第一復号部R13は、検出されたペアを構成するcをf(eS’,h(v’))を用いて復号関数K*により復号したK*(f(eS’,h(v’)),c)=ext(v)を計算する(ステップB12)。復号関数K*は、暗号化関数Kに対応する復号関数である。任意のxに対してK*(K(x))=xとなる。
【0046】
第二結合装置Rの第二復号部R12は、検出されたペアを構成するc’をg(f(eR,x))を用いて復号関数K’*により復号したK’*(g(f(eR,x)),c’)=E(E(ext’(v’)))を計算する(ステップB13)。E(E(ext’(v’)))は、第三復号部R14に送信される。復号関数K’*は、暗号化関数K’に対応する復号関数である。任意のxに対してK’*(K’(x))=xとなる。
【0047】
第二結合装置Rの第三復号部R14は、E(E(ext’(v’)))を、再復号関数E*及び復号関数E*で復号したext’(v’)を計算する(ステップB14)。再復号関数E*は、再暗号化関数Eに対応する復号関数である。任意のxに対してE*(E(x))=xとなる。復号関数E*は、暗号化関数Eに対応する復号関数である。任意のxに対してE*(E(x))=xとなる。
【0048】
第一復号部R13により計算されるext(v)が、テーブルT及びテーブルTのキーカラムにおいて一致するデータを含む、テーブルTのタプルの全部又は一部のデータとなる。また、第三復号部R14により計算されるext’(v’)が、テーブルT及びテーブルTのキーカラムにおいて一致するデータを含む、テーブルTのタプルの全部又は一部のデータとなる。
【0049】
ext’(v’)を再暗号化可能な暗号関数で暗号化することにより、第二結合装置RによるテーブルTにおける、テーブルT及びテーブルTのキーカラムにおいて一致するデータvのタプルの特定を困難にしている。
【0050】
また、f(eS,y)から秘密鍵k’を生成して、E(E(ext’(v’)))を暗号化し、第二結合装置Rにはf(eS,y)ではなく、h’(f(eS,y))を送信することで、テーブルT及びテーブルTのキーカラムにおいて一致するデータvのext’(v)の復号のみを可能としている。
【0051】
[第二実施形態]
以下、第一実施形態と異なる部分を中心に説明する。第一実施形態と同様の部分については説明を省略する。
【0052】
第二実施形態の第一結合装置Sは、図4に示すように、記憶部S0、テーブル記憶部S1、ハッシュ値計算部S2、秘密鍵生成部S3、第一計算部S4、第二計算部S5、再暗号化部S8、第一送信部S10、第二送信部S14、暗号化部S15を例えば備える。
【0053】
第二実施形態の第二結合装置Rは、図5に示すように、記憶部R0、テーブル記憶部R1、ハッシュ値計算部R2、秘密鍵生成部R3、第一計算部R4、送信部R5、暗号化部R6、第二受信部R7、第一受信部R15、第二計算部R8、検出部R9、第二復号部R12、第一復号部R13を例えば備える。
【0054】
第一結合装置Sのハッシュ値計算部S2(図4)は、テーブル記憶部S1に記憶されているテーブルTのキーカラムVの各データvのハッシュ値h(v)を計算する(ステップA1)。ハッシュ値h(v)は、第二計算部S5に送信される。
【0055】
第一結合装置Sの秘密鍵生成部S3は、秘密鍵eSを生成する(ステップA2)。秘密鍵eSは、第二計算部S5及び第一計算部S4に送信される。
【0056】
第二結合装置Rのハッシュ値計算部R2(図5)は、テーブル記憶部R1に記憶されてうるテーブルTRのキーカラムVの各データv’のハッシュ値h(v’)を計算する(ステップB1)。ハッシュ値h(v’)は、第一計算部R4に送信される。
【0057】
第二結合装置Rの秘密鍵生成部R3は、秘密鍵eRを生成する(ステップB2)。秘密鍵eRは、第一計算部R4及び第二計算部R8に送信される。
【0058】
第二結合装置Rの第一計算部R4は、各ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する(ステップB3)。計算されたyは、送信部R5に送信される。
【0059】
第二結合装置Rの暗号化部R6は、各データv’を含むタプルの全部又は一部のデータext’(v’)を所定の暗号関数Eで暗号化したE(ext’(v’))を計算する(ステップB4)。計算されたE(ext’(v’))は、送信部R5に送信される。
【0060】
第二結合装置Rの送信部R5は、y及びE(ext’(v’))の組(y,E(ext’(v’)))を第一結合装置Sに送信する(ステップB5)。組(y,E(ext’(v’)))は、例えば辞書順に第一結合装置Sに送信される。
【0061】
第一結合装置Sの受信部S16(図4)は、組(y,E(ext’(v’)))を受信する(ステップA3)。組(y,E(ext’(v’)))のyは、第一計算部S4に送信される。
【0062】
第一結合装置Sの第一計算部S4は、第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する(ステップA4)。f(eS,y)は、第一送信部S10に送信される。
【0063】
第一結合装置Sの再暗号化部S8は、第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する(ステップA8)。E(E(ext’(v’)))は、第一送信部S10に送信される。
【0064】
第一結合装置Sの第一送信部S10は、f(eS,y)及びE(E(ext’(v’)))の組(f(eS,y),E(E(ext’(v’))))を第二結合装置Rに送信する(ステップA10)。
【0065】
第一結合装置Sの第二計算部S5は、h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する(ステップA11)。xは、第二送信部S14に送信される。
【0066】
第一結合装置Sの暗号化部S15は、各データvを含むタプルの全部又は一部のデータext(v)を所定の暗号化関数Eで暗号化したE(ext(v))を計算する(ステップA13)。E(ext(v))は、第二送信部S14に送信される。
【0067】
第一結合装置Sの第二送信部S14は、x及びE(ext(v))の組(x,E(ext(v)))を第二結合装置Rに送信する(ステップA14)。組(x,E(ext(v)))は、例えば辞書順で第二結合装置Rに送信される。
【0068】
第二結合装置Rの第一受信部R15(図5)は、組(f(eS,y),E(E(ext’(v’))))を第一結合装置Sから受信する(ステップB6)。組(f(eS,y),E(E(ext’(v’))))は、検出部R9に送信される。
【0069】
第二結合装置Rの第二受信部R7は、組(x,E(ext(v)))を第一結合装置Sから受信する(ステップB7)。xは、第二計算部R8に送信される。組(x,E(ex 第二結合装置Rの第二計算部R8は、第一結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)を計算する(ステップB8)。f(eR,x)は、検出部R9に送信される。
【0070】
第二結合装置Rの検出部R9は、第二計算部R8が計算したf(eR,x)と、受信したf(eS,y)とが一致する組(f(eS,y),E(E(ext’(v’))))と組(x,E(ext(v)))とのペアを検出する(ステップB9)。検出部R9は、検出されたペアを構成するE(ext(v))及びE(E(ext’(v’)))を出力する。
【0071】
第一復号部R13が、検出されたペアを構成するE(ext(v))を復号関数E*により復号したext(v)を計算して出力してもよい(ステップB12)。
【0072】
また、第二復号部R12が、検出されたペアを構成するE(E(ext’(v’)))を復号関数E*及びE*により復号したext’(v’)を計算して出力してもよい(ステップB13)。
【0073】
[変形例等]
ハッシュ関数h’は、ハッシュ関数hと同じでも異なっていてもよい。異なっている場合には、同じ場合よりも安全性が高くなる。
【0074】
暗号化関数K’は、暗号化関数Kと同じでも異なっていてもよい。異なっている場合には、同じ場合よりも安全性が高くなる。
【0075】
なお、上記の実施形態では、第一結合装置S、第二結合装置Rの各部間でデータは直接送受信されていたが、データは記憶部S0,R0を介してやり取りされてもよい。
【0076】
第一結合装置Sをコンピュータによって実現する場合、第一結合装置Sの各部の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、第一結合装置Sの各部の処理機能がコンピュータ上で実現される。
【0077】
同様に、第二結合装置Rをコンピュータによって実現する場合、第二結合装置Rの各部の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、第二結合装置Rの各部の処理機能がコンピュータ上で実現される。
【0078】
これらのプログラムのそれぞれは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0079】
この発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【0080】
また、上記の実施形態及び変形例を互いに組み合わせてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。

【特許請求の範囲】
【請求項1】
第一結合装置及び第二結合装置を含むマッチングシステムにおいて、
fを、逆関数が存在する所定の秘密鍵を用いた可換暗号関数、gを所定の鍵生成関数とし、Eを所定の暗号化関数として、
上記第一結合装置は、
上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算する第一ハッシュ値計算部と、
組(y,E(ext’(v’)))を上記第二結合装置から受信する受信部と、
上記第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、
上記第二結合装置から受信したyを秘密鍵eS’を用いた関数fに入力したときの出力値f(eS’,y)を計算する第二計算部と、
上記f(eS,y)のハッシュ値h’(f(eS,y))を計算する第二ハッシュ値計算部と、
上記f(eS,y)を上記鍵生成関数gに入力したときの出力値k’=g(f(eS,y))を計算する第三計算部と、
上記第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、
上記E(E(ext’(v’)))を上記k’を用いて所定の暗号化関数K’で暗号化したc’=K’(k’,E(E(ext’(v’))))を計算する第四計算部と、
上記h’(f(eS,y))、上記f(eS’,y)及び上記c’の組(h’(f(eS,y)),f(eS’,y),c’)を上記第二結合装置に送信する第一送信部と、
上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第五計算部と、
上記h(v)を秘密鍵eS’を用いた関数fに入力したときの出力値k=f(eS’,h(v))を計算する第六計算部と、
上記第一結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記kを用いて所定の暗号化関数Kで暗号化したc=K(k,ext(v))を計算する第七計算部と、
上記x及び上記cの組(x,c)を上記第二結合装置に送信する第二送信部と、
を含み、
上記第二結合装置は、
上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、
各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、
上記第二結合装置が保有するテーブルの各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、
上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を上記第一結合装置に送信する送信部と、
組(h’(f(eS,y)),f(eS’,y),c’)を上記第一結合装置から受信する第一受信部と、
組(x,c)を上記第一結合装置から受信する第二受信部と、
上記第一結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)のハッシュ値h’(f(eR,x))を計算する第二計算部と、
上記h’(f(eR,x))と、h’(f(eS,y))とが一致する組(h’(f(eS,y)),f(eS’,y),c’)と組(x,c)とのペアを検出する検出部と、
上記検出されたペアを構成するf(eR,x)を上記鍵生成関数gに入力したときの出力値g(f(eR,x))を計算する第三計算部と、
上記秘密鍵eRを用いたfの逆関数f−1を用いて上記検出されたペアを構成する上記f(eS’,y)を復号したf−1(eR,f(eS’,y))=f(eS’,h(v’))を計算する第四計算部と、
上記検出されたペアを構成するcを上記f(eS’,h(v’))を用いて復号関数K*により復号したK*(f(eS’,h(v’)),c)=ext(v)を計算する第一復号部と、
上記検出されたペアを構成するc’を上記g(f(eR,x))を用いて上記復号関数K’*により復号したK’*(g(f(eR,x)),c’)=E(E(ext’(v’)))を計算する第二復号部と、
上記E(E(ext’(v’)))を、上記復号関数E*及び復号関数Eで復号したext’(v’)を計算する第三復号部と、
を含む、
マッチングシステム。
【請求項2】
fを、逆関数が存在する所定の秘密鍵を用いた可換暗号関数、gを所定の鍵生成関数とし、Eを所定の暗号化関数として、
上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算する第一ハッシュ値計算部と、
組(y,E(ext’(v’)))を他の結合装置から受信する受信部と、
上記他の結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、
上記他の結合装置から受信したyを秘密鍵eS’を用いた関数fに入力したときの出力値f(eS’,y)を計算する第二計算部と、
上記f(eS,y)のハッシュ値h’(f(eS,y))を計算する第二ハッシュ値計算部と、
上記f(eS,y)を上記鍵生成関数gに入力したときの出力値k’=g(f(eS,y))を計算する第三計算部と、
上記他の結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、
上記E(E(ext’(v’)))を上記k’を用いて所定の暗号化関数K’で暗号化したc’=K’(k’,E(E(ext’(v’))))を計算する第四計算部と、
上記h’(f(eS,y))、上記f(eS’,y)及び上記c’の組(h’(f(eS,y)),f(eS’,y),c’)を上記他の結合装置に送信する第一送信部と、
上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第五計算部と、
上記h(v)を秘密鍵eS’を用いた関数fに入力したときの出力値k=f(eS’,h(v))を計算する第六計算部と、
上記第一結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記kを用いて所定の暗号化関数Kで暗号化したc=K(k,ext(v))を計算する第七計算部と、
上記x及び上記cの組(x,c)を上記他の結合装置に送信する第二送信部と、を含む、
結合装置。
【請求項3】
fを、逆関数が存在する所定の秘密鍵を用いた可換暗号関数、gを所定の鍵生成関数とし、Eを所定の暗号化関数として、
上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、
各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、
上記第二結合装置が保有するテーブルの各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、
上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を他の結合装置に送信する送信部と、
組(h’(f(eS,y)),f(eS’,y),c’)を上記他の結合装置から受信する第一受信部と、
組(x,c)を上記他の結合装置から受信する第二受信部と、
上記他の結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)のハッシュ値h’(f(eR,x))を計算する第二計算部と、
上記h’(f(eR,x))と、h’(f(eS,y))とが一致する組(h’(f(eS,y)),f(eS’,y),c’)と組(x,c)とのペアを検出する検出部と、
上記検出されたペアを構成するf(eR,x)を上記鍵生成関数gに入力したときの出力値g(f(eR,x))を計算する第三計算部と、
上記秘密鍵eRを用いたfの逆関数f−1を用いて上記検出されたペアを構成する上記f(eS’,y)を復号したf−1(eR,f(eS’,y))=f(eS’,h(v’))を計算する第四計算部と、
上記検出されたペアを構成するcを上記f(eS’,h(v’))を用いて復号関数K*により復号したK*(f(eS’,h(v’)),c)=ext(v)を計算する第一復号部と、
上記検出されたペアを構成するc’を上記g(f(eR,x))を用いて復号関数K’*により復号したK’*(g(f(eR,x)),c’)=E(E(ext’(v’)))を計算する第二復号部と、
上記E(E(ext’(v’)))を、復号関数E*及び復号関数E*で復号したext’(v’)を計算する第三復号部と、を含む、
結合装置。
【請求項4】
fを、逆関数が存在する所定の秘密鍵を用いた可換暗号関数、gを所定の鍵生成関数とし、Eを所定の暗号化関数として、
上記第一結合装置が、上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算する第一ハッシュ値計算ステップと、
上記第一結合装置が、組(y,E(ext’(v’)))を第二結合装置から受信する受信ステップと、
上記第一結合装置が、上記第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算ステップと、
上記第一結合装置が、上記第二結合装置から受信したyを秘密鍵eS’を用いた関数fに入力したときの出力値f(eS’,y)を計算する第二計算ステップと、
上記第一結合装置が、上記f(eS,y)のハッシュ値h’(f(eS,y))を計算する第二ハッシュ値計算ステップと、
上記第一結合装置が、上記f(eS,y)を上記鍵生成関数gに入力したときの出力値k’=g(f(eS,y))を計算する第三計算ステップと、
上記第一結合装置が、上記第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化ステップと、
上記第一結合装置が、上記E(E(ext’(v’)))を上記k’を用いて所定の暗号化関数K’で暗号化したc’=K’(k’,E(E(ext’(v’))))を計算する第四計算ステップと、
上記第一結合装置が、上記h’(f(eS,y))、上記f(eS’,y)及び上記c’の組(h’(f(eS,y)),f(eS’,y),c’)を上記第二結合装置に送信する第一送信ステップと、
上記第一結合装置が、上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第五計算ステップと、
上記第一結合装置が、上記h(v)を秘密鍵eS’を用いた関数fに入力したときの出力値k=f(eS’,h(v))を計算する第六計算ステップと、
上記第一結合装置が、上記第一結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記kを用いて所定の暗号化関数Kで暗号化したc=K(k,ext(v))を計算する第七計算ステップと、
上記第一結合装置が、上記x及び上記cの組(x,c)を上記第二結合装置に送信する第二送信ステップと、
上記第二結合装置が、上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算ステップと、
上記第二結合装置が、各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算ステップと、
上記第二結合装置が、上記第二結合装置が保有するテーブルの各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記の暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化ステップと、
上記第二結合装置が、上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を上記第一結合装置に送信する送信ステップと、
上記第二結合装置が、組(h’(f(eS,y)),f(eS’,y),c’)を上記第一結合装置から受信する第一受信ステップと、
上記第二結合装置が、組(x,c)を上記第一結合装置から受信する第二受信ステップと、
上記第二結合装置が、上記第一結合装置から受信したxを用いて、秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)のハッシュ値h’(f(eR,x))を計算する第二計算ステップと、
上記第二結合装置が、上記h’(f(eR,x))と、h’(f(eS,y))とが一致する組(h’(f(eS,y)),f(eS’,y),c’)と組(x,c)とのペアを検出する検出ステップと、
上記第二結合装置が、上記検出されたペアを構成するf(eR,x)を上記鍵生成関数gに入力したときの出力値g(f(eR,x))を計算する第三計算ステップと、
上記第二結合装置が、上記秘密鍵eRを用いたfの逆関数f−1を用いて上記検出されたペアを構成する上記f(eS’,y)を復号したf−1(eR,f(eS’,y))=f(eS’,h(v’))を計算する第四計算ステップと、
上記第二結合装置が、上記検出されたペアを構成するcを上記f(eS’,h(v’))を用いて復号関数K*により復号したK*(f(eS’,h(v’)),c)=ext(v)を計算する第一復号ステップと、
上記第二結合装置が、上記検出されたペアを構成するc’を上記g(f(eR,x))を用いて復号関数K’*により復号したK’*(g(f(eR,x)),c’)=E(E(ext’(v’)))を計算する第二復号ステップと、
上記第二結合装置が、上記E(E(ext’(v’)))を、上記復号関数E*及び上記復号関数E*で復号したext’(v’)を計算する第三復号ステップと、を含む、
マッチングシステムの方法。
【請求項5】
第一結合装置及び第二結合装置を含むマッチングシステムにおいて、
fを所定の秘密鍵を用いた可換暗号関数とし、Eを所定の暗号化関数として、
上記第一結合装置は、
上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算するハッシュ値計算部と、
組(y,E(ext’(v’)))を上記第二結合装置から受信する受信部と、
上記第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、
上記第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、
上記f(eS,y)及び上記E(E(ext’(v’)))の組(f(eS,y),E(E(ext’(v’))))を上記第二結合装置に送信する第一送信部と、
上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第二計算部と、
上記第一結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記暗号化関数Eで暗号化したE(ext(v))を計算する暗号化部と、
上記x及び上記E(ext(v))の組(x,E(ext(v)))を上記第二結合装置に送信する第二送信部と、
を含み、
上記第二結合装置は、
上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、
各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、
上記第二結合装置が保有するテーブルの各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、
上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を上記第一結合装置に送信する送信部と、
組(f(eS,y),E(E(ext’(v’))))を上記第一結合装置から受信する第一受信部と、
組(x,E(ext(v)))を上記第一結合装置から受信する第二受信部と、
上記第一結合装置から受信したxを秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)を計算する第二計算部と、
上記f(eR,x)と、f(eS,y)とが一致する組(f(eS,y),E(E(ext’(v’))))と組(x,E(ext(v)))とのペアを検出して、検出されたペアを構成するE(ext(v))及びE(E(ext’(v’)))を出力する検出部と、
を含む、
マッチングシステム。
【請求項6】
fを所定の秘密鍵を用いた可換暗号関数とし、Eを所定の暗号化関数として、
上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算するハッシュ値計算部と、
組(y,E(ext’(v’)))を他の結合装置から受信する受信部と、
上記他の結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算部と、
上記他の結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化部と、
上記f(eS,y)及び上記E(E(ext’(v’)))の組(f(eS,y),E(E(ext’(v’))))を上記第二結合装置に送信する第一送信部と、
上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第二計算部と、
上記第二結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記暗号化関数Eで暗号化したE(ext(v))を計算する暗号化部と、
上記x及び上記E(ext(v))の組(x,E(ext(v)))を上記他の結合装置に送信する第二送信部と、を含む、
結合装置。
【請求項7】
fを所定の秘密鍵を用いた可換暗号関数とし、Eを所定の暗号化関数として、
上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算部と、
各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算部と、
上記第二結合装置が保有するテーブルの各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化部と、
上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を他の結合装置に送信する送信部と、
組(f(eS,y),E(E(ext’(v’))))を上記他の結合装置から受信する第一受信部と、
組(x,E(ext(v)))を上記他の結合装置から受信する第二受信部と、
上記他の結合装置から受信したxを秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)を計算する第二計算部と、
上記f(eR,x)と、f(eS,y)とが一致する組(f(eS,y),E(E(ext’(v’))))と組(x,E(ext(v)))とのペアを検出して、検出されたペアを構成するE(ext(v))及びE(E(ext’(v’)))を出力する検出部と、を含む、
結合装置。
【請求項8】
fを所定の秘密鍵を用いた可換暗号関数とし、Eを所定の暗号化関数として、
第一結合装置が、上記第一結合装置が保有するテーブルの予め定められたキーカラムの各データvのハッシュ値h(v)を計算するハッシュ値計算ステップと、
上記第一結合装置が、組(y,E(ext’(v’)))を上記第二結合装置から受信する受信ステップと、
上記第一結合装置が、第二結合装置から受信したyを秘密鍵eSを用いた関数fに入力したときの出力値f(eS,y)を計算する第一計算ステップと、
上記第一結合装置が、上記第二結合装置から受信したE(ext’(v’))を所定の再暗号化関数Eで暗号化したE(E(ext’(v’)))を計算する再暗号化ステップと、
上記第一結合装置が、上記f(eS,y)及び上記E(E(ext’(v’)))の組(f(eS,y),E(E(ext’(v’))))を上記第二結合装置に送信する第一送信ステップと、
上記第一結合装置が、上記h(v)を秘密鍵eSを用いた関数fに入力したときの出力値x=f(eS,h(v))を計算する第二計算ステップと、
上記第一結合装置が、上記第一結合装置が保有するテーブルの各上記データvを含むタプルの全部又は一部のデータext(v)を上記暗号化関数Eで暗号化したE(ext(v))を計算する暗号化ステップと、
上記第一結合装置が、上記x及び上記E(ext(v))の組(x,E(ext(v)))を上記第二結合装置に送信する第二送信ステップと、
上記第二結合装置が、上記第二結合装置が保有するテーブルの予め定められたキーカラムの各データv’のハッシュ値h(v’)を計算するハッシュ値計算ステップと、
上記第二結合装置が、上記第二結合装置が保有するテーブルの各上記ハッシュ値h(v’)を秘密鍵eRを用いた関数fに入力したときの出力値y=f(eR,h(v’))を計算する第一計算ステップと、
上記第二結合装置が、各上記データv’を含むタプルの全部又は一部のデータext’(v’)を上記暗号化関数Eで暗号化したE(ext’(v’))を計算する暗号化ステップと、
上記第二結合装置が、上記y及び上記E(ext’(v’))の組(y,E(ext’(v’)))を上記第一結合装置に送信する送信ステップと、
上記第二結合装置が、組(f(eS,y),E(E(ext’(v’))))を上記第一結合装置から受信する第一受信ステップと、
上記第二結合装置が、組(x,E(ext(v)))を上記第一結合装置から受信する第二受信ステップと、
上記第二結合装置が、上記第一結合装置から受信したxを秘密鍵eRを用いた関数fに入力したときの出力値f(eR,x)を計算する第二計算ステップと、
上記第二結合装置が、上記f(eR,x)と、f(eS,y)とが一致する組(f(eS,y),E(E(ext’(v’))))と組(x,E(ext(v)))とのペアを検出して、検出されたペアを構成するE(ext(v))及びE(E(ext’(v’)))を出力する検出ステップと、を含む、
マッチングシステムの方法。
【請求項9】
請求項2,3,6,7の何れかの結合装置の各部としてコンピュータを機能させるためのプログラム。

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


【公開番号】特開2012−150276(P2012−150276A)
【公開日】平成24年8月9日(2012.8.9)
【国際特許分類】
【出願番号】特願2011−8821(P2011−8821)
【出願日】平成23年1月19日(2011.1.19)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】