説明

秘匿通信システム、秘匿通信方法およびプログラム

【課題】受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない。
【解決手段】送信者が、秘密情報をn個の分散された秘密情報に分割し、n個の通信経路により、分散秘密情報を受信者に送信する。受信者は、受信したn個の分散秘密情報のうち、エラー情報の個数を検出し、エラー情報の個数が所定の許容値よりも多いか否かを判断し、エラー情報の個数が所定の許容値よりも多い場合に、分散秘密情報のうち、x個の分散秘密情報を選択して、x個の分散秘密情報のマスク値を取得する。そして、マスク値を送信者に送信する。送信者は、送信したn個の分散秘密情報からx個の分散秘密情報を選択し、x個の分散秘密情報を受信者と同様の方法マスク値を取得する。そして、受信したマスク値と取得したマスク値とが一致するか否かをエラー情報値として、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信し、受信者が、エラー情報の個数が許容値よりも小さくなったときに、分散秘密情報から秘密情報を復元する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システム、秘匿通信方法およびプログラムに関する。
【背景技術】
【0002】
近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスに置いては、通信の秘匿を実現するため、様々な方式が利用される。通信の方式のひとつとして、秘匿通信(もしくは、ネットワークコーディング)がある。
【0003】
これは、秘密分散法を応用することにより、秘匿と誤り訂正を同時に実現する技術である。この方式では、受信者が誤りを含むデータ片を特定することができないため、送信者にフィードバック情報を返信し、さらに送信者からエラーに関する情報(エラー情報)を受信する必要がある(例えば、非特許文献1参照。)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Y.Desmedt,andY.Wang,“Perfectly secure message transmission revisited”in Proceedings of Eurocrypt’02,2002
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来方式においては、このフィードバック情報を利用して攻撃する手法が提案されており、安全な方式を実現することが課題となっていた。
【0006】
そこで、本発明は、上述の課題に鑑みてなされたものであり、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システム、秘匿通信方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【0008】
(1)本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムであって、前記送信者端末(例えば、図1の送信者端末1に相当)が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する分散秘密情報生成手段(例えば、図2の分散秘密情報生成部11に相当)と、n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する分散秘密情報送信手段(例えば、図2の送信部12に相当)と、を備え、前記受信者端末(例えば、図1の受信者端末2に相当)が、該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する検出手段(例えば、図3のエラー情報検出部22に相当)と、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する判断手段(例えば、図3の判断部23に相当)と、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第1の選択手段(例えば、図3の選択部24に相当)と、該選択したx個の分散秘密情報をマスクしてマスク値を取得する第1のマスク値取得手段(例えば、図3のハッシュ値演算部25に相当)と、該取得したマスク値を前記送信者端末に送信するマスク値送信手段(例えば、図3のフィードバック情報送信部26に相当)と、を備え、前記送信者端末が、前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第2の選択手段(例えば、図2の選択部13に相当)と、該選択したx個の分散秘密情報を前記第1のマスク値取得手段と同様の方法でマスクしてマスク値を取得する第2のマスク値取得手段(例えば、図2のハッシュ値演算部14に相当)と、前記受信したマスク値と該取得したマスク値とが一致している否かをエラー情報値とし、前記選択した分散秘密情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信するエラー情報値送信手段(例えば、図2の送信部12に相当)と、を備え、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する復元手段(例えば、図3の復元部27に相当)と、を備えたことを特徴とする秘匿通信システムを提案している。
【0009】
この発明によれば、送信者端末の分散秘密情報生成手段は、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する。分散秘密情報送信手段は、n個の通信経路により、分散されたn個の分散秘密情報を受信者端末に送信する。受信者端末の検出手段は、その受信したn個の分散秘密情報のうち、エラー情報の個数を検出する。判断手段は、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する。第1の選択手段は、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する。第1のマスク値取得手段は、その選択したx個の分散秘密情報をマスクしてマスク値を取得する。マスク値送信手段は、その取得したマスク値を送信者端末に送信する。送信者端末の第2の選択手段は、送信したn個の分散秘密情報からx個の分散秘密情報を選択する。第2のマスク値取得手段は、その選択したx個の分散秘密情報を第1のマスク値取得手段と同様の方法でマスクしてマスク値を取得する。エラー情報値送信手段は、受信したマスク値とその取得したマスク値とが一致いるか否かをエラー情報値として、選択した分散情報をエラー情報の個数が前記許容値よりも小さくなるまで送信する。受信者端末の復元手段は、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【0010】
(2)本発明は、(1)の秘匿通信システムについて、前記第1の選択手段と第2の選択手段とが予め定められた分散秘密情報を1つずつn回選択することを特徴とする秘匿通信システムを提案している。
【0011】
この発明によれば、第1の選択手段と第2の選択手段とが予め定められた分散秘密情報を1つずつn回選択する。これにより、確実にエラーとなった分散秘密情報を特定し、排除することができる。
【0012】
(3)本発明は、(1)の秘匿通信システムについて、前記第1の選択手段と第2の選択手段とが予め定められた複数個(x個)からなる分散秘密情報を前記n個の分散秘密情報から得られるすべての組み合わせについて選択することを特徴とする秘匿通信システムを提案している。
【0013】
この発明によれば、第1の選択手段と第2の選択手段とが予め定められた複数個(x個)からなる分散秘密情報をn個の分散秘密情報から得られるすべての組み合わせについて選択する。これにより、確実にエラーとなった分散秘密情報を特定し、排除することができる。
【0014】
(4)本発明は、(1)の秘匿通信システムについて、前記マスク値がハッシュ関数を用いて演算したハッシュ値であることを特徴とする秘匿通信システムを提案している。
【0015】
この発明によれば、マスク値がハッシュ関数を用いて演算したハッシュ値である。したがって、簡易な演算で情報をマスクすることができる。
【0016】
(5)本発明は、(1)の秘匿通信システムについて、前記エラー情報値が、0または1の2値の値であることを特徴とする秘匿通信システムを提案している。
【0017】
この発明によれば、エラー情報値が、0または1の2値の値である。したがって、エラー情報が漏洩しても分散秘密情報自体が漏洩することはない。
【0018】
(6)本発明は、(1)の秘匿通信システムについて、前記秘密分散法のパラメータkを攻撃者の能力に応じて、設定することができることを特徴とする請求項1に記載の秘匿通信システムを提案している。
【0019】
この発明によれば、秘密分散法のパラメータkを攻撃者の能力に応じて、設定することができる。通常攻撃者は、受信者端末から送信者端末にフィードバックするフィードバック情報を盗聴・改ざんする必要があるため、送信者から受信者への通信については、k−1個の通信経路を盗聴・改ざんできる能力を持つ。そのため、秘密分散法のパラメータkは攻撃者の能力を考慮して設定することで、安全な秘匿通信を実現できる。
【0020】
(7)本発明は、(1)の秘匿通信システムについて、前記分散秘密情報生成手段が、素数と巡回群との性質を用いて、2つの乱数を重複しないように排他的論理和演算を行う第1の排他的論理和演算器(例えば、図4の部分分散情報生成器113に相当)と、秘密情報を入力し、これを分割して部分秘密情報を生成する分割器(例えば、図4の分割器111に相当)と、オールゼロからなるダミー情報を生成するダミー情報生成器(例えば、図4のダミー情報生成器112に相当)と、素数と巡回群との性質を用いて、該ダミー情報を含む部分秘密情報のうち、2つの情報を重複しないように排他的論理和演算を行う第2の排他的論理和演算器(例えば、図4の部分分散情報生成器113に相当)と、該第1の排他的論理和演算器において演算された情報と該第2の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する第3の排他的論理和演算器(例えば、図4の部分分散情報生成器113に相当)と、該出力された部分分散情報を連結し、分散秘密情報を出力する連結器(例えば、図4の連結器116に相当)と、を備えたことを特徴とする秘匿通信システムを提案している。
【0021】
この発明によれば、第1の排他的論理和演算器は、素数と巡回群との性質を用いて、2つの乱数を重複しないように排他的論理和演算を行う。分割器は、秘密情報を入力し、これを分割して部分秘密情報を生成する。第2の排他的論理和演算器は、オールゼロからなるダミー情報を生成するダミー情報生成器と、素数と巡回群との性質を用いて、ダミー情報を含む部分秘密情報のうち、2つの情報を重複しないように排他的論理和演算を行う。第3の排他的論理和演算器は、第1の排他的論理和演算器において演算された情報と第2の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する。そして、連結器が、出力された部分分散情報を連結し、分散情報を出力する。したがって、秘密情報の復元時において、一切の乱数を一意に復元することが不可能となる。また、排他的論理和演算を用いていることから、高速に分散情報を生成する処理が可能となる。
【0022】
(8)本発明は、(1)の秘匿通信システムについて、前記復元手段が、分散秘密情報を分割して部分分散情報を生成する分散情報分割手段(例えば、図5の分散情報分割部271に相当)と、該分散秘密情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する行列生成手段(例えば、図5の行列生成部272に相当)と、該行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元する部分秘密情報復元部(例えば、図5の部分秘密情報復元部273に相当)と、該復元された部分秘密情報を連結して秘密情報を出力する連結器(例えば、図5の連結部274に相当)と、を備えたことを特徴とする秘匿通信システムを提案している。
【0023】
この発明によれば、分散情報分割手段は、分散情報を分割して部分分散情報を生成する。行列生成手段は、分散情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する。そして、部分秘密情報復元部が、行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元し、連結器が、復元された部分秘密情報を連結して秘密情報を出力する。したがって、秘密情報復元装置における秘密情報の復元時において、一切の乱数を一意に復元することが不可能となる。また、排他的論理和演算を用いていることから、秘密情報の復元処理を高速に行うことが可能となる。
【0024】
(9)本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法であって、前記送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する第1のステップ(例えば、図6のステップS101に相当)と、前記送信者端末が、n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する第2のステップ(例えば、図6のステップS102に相当)と、前記受信者端末が、該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する第3のステップ(例えば、図6のステップS103に相当)と、前記受信者端末が、(例えば、図6のステップS104に相当)該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第4のステップと、前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第5のステップ(例えば、図6のステップS105に相当)と、前記受信者端末が、該選択したx個の分散秘密情報をマスクしてマスク値を取得する第6のステップ(例えば、図6のステップS106に相当)と、前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第7のステップ(例えば、図6のステップS107に相当)と、前記送信者端末が、前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第8のステップ(例えば、図6のステップS108に相当)と、前記送信者端末が、該選択したx個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第9のステップ(例えば、図6のステップS109に相当)と、前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第10のステップ(例えば、図6のステップS110に相当)と、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第11のステップ(例えば、図6のステップS111に相当)と、を備えたことを特徴とする秘匿通信方法を提案している。
【0025】
この発明によれば、送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割し、n個の通信経路により、分散されたn個の分散秘密情報を受信者端末に送信する。受信者端末は、その受信したn個の分散秘密情報のうち、エラー情報の個数を検出し、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断し、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択して、その選択したx個の分散秘密情報をマスクしてマスク値を取得する。そして、その取得したマスク値を送信者端末に送信する。送信者端末は、送信したn個の分散秘密情報からx個の分散秘密情報を選択し、その選択したx個の分散秘密情報を受信者端末と同様の方法でマスクしてマスク値を取得する。そして、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信し、受信者端末が、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【0026】
(10)本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法をコンピュータに実行させるためのプログラムであって、前記送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する第1のステップ(例えば、図6のステップS101に相当)と、前記送信者端末が、n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する第2のステップ(例えば、図6のステップS102に相当)と、前記受信者端末が、該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する第3のステップ(例えば、図6のステップS103に相当)と、前記受信者端末が、(例えば、図6のステップS104に相当)該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第4のステップと、前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第5のステップ(例えば、図6のステップS105に相当)と、前記受信者端末が、該選択したx個の分散秘密情報をマスクしてマスク値を取得する第6のステップ(例えば、図6のステップS106に相当)と、前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第7のステップ(例えば、図6のステップS107に相当)と、前記送信者端末が、前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第8のステップ(例えば、図6のステップS108に相当)と、前記送信者端末が、該選択したx個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第9のステップ(例えば、図6のステップS109に相当)と、前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第10のステップ(例えば、図6のステップS110に相当)と、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第11のステップ(例えば、図6のステップS111に相当)と、をコンピュータに実行させるためのプログラムを提案している。
【0027】
この発明によれば、送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割し、n個の通信経路により、分散されたn個の分散秘密情報を受信者端末に送信する。受信者端末は、その受信したn個の分散秘密情報のうち、エラー情報の個数を検出し、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断し、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択して、その選択したx個の分散秘密情報をマスクしてマスク値を取得する。そして、その取得したマスク値を送信者端末に送信する。送信者端末は、送信したn個の分散秘密情報からx個の分散秘密情報を選択し、その選択したx個の分散秘密情報を受信者端末と同様の方法でマスクしてマスク値を取得する。そして、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信し、受信者端末が、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【発明の効果】
【0028】
本発明によれば、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システムを構築することができるという効果がある。
【図面の簡単な説明】
【0029】
【図1】本実施形態に係る秘匿通信システムの構成を示す図である。
【図2】本実施形態に係る送信者端末の構成を示す図である。
【図3】本実施形態に係る受信者端末の構成を示す図である。
【図4】本実施形態に係る分散秘密情報生成部の構成を示す図である。
【図5】本実施形態に係る復元部の構成を示す図である。
【図6】本実施形態に係る秘匿通信システムの処理を示す図である。
【発明を実施するための形態】
【0030】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0031】
<秘匿通信システムの構成>
図1を用いて、本実施形態に係る秘匿通信システムの構成について説明する。
【0032】
本実施形態に係る秘匿通信システムは、図1に示すように、送信者端末1と受信者端末2とから構成されている。また、送信者端末1から受信者端末2へは、n系統の通信経路が用意され、この通信経路を用いて、n個の分散秘密情報が送信される。
【0033】
一方、受信者端末2から送信者端末1へは、受信した分散秘密情報にエラー情報を含む場合に、受信した分散秘密情報を送信者端末1にフィードバックするための通信経路が1つ用意されている。
【0034】
<送信者端末の構成>
図2を用いて、本実施形態に係る送信者端末の構成について説明する。
【0035】
本実施形態に係る送信者端末は、図2に示すように、分散秘密情報生成部11と、送信部12と、選択部13と、ハッシュ値演算部14と、フィードバック情報受信部15、エラー情報生成部16とから構成されている。
【0036】
分散秘密情報生成部11は、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数)個の分散された分散秘密情報を生成する。なお、分散秘密情報生成部11の詳細については、後述する。また、秘密分散法のパラメータkを攻撃者の能力に応じて、設定することができる。通常攻撃者は、受信者端末から送信者端末にフィードバックするフィードバック情報を盗聴・改ざんする必要があるため、送信者から受信者への通信については、k−1個の通信経路を盗聴・改ざんできる能力を持つ。そのため、秘密分散法のパラメータkは攻撃者の能力を考慮して設定することで、安全な秘匿通信を実現できる。
【0037】
送信部12は、n個の通信経路により、分散されたn個の分散秘密情報を受信者端末2に送信する。また、後述するエラー情報生成部16が生成するエラー情報を受信者端末2に送信する。なお、この場合、選択部13が選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信する。
【0038】
選択部13は、送信したn個の分散秘密情報からx個の分散秘密情報を選択する。ハッシュ値演算部14は、選択したx個の分散秘密情報をハッシュ関数によって、ハッシュ値を演算する。なお、本実施形態では、ハッシュ関数を例示したが、これに限らず、他の方法で選択したx個の分散秘密情報をマスクしてもよい。
【0039】
フィードバック情報受信部15は、受信者端末2からハッシュ値をフィードバック情報として受信する。エラー情報生成部16は、フィードバック情報として受信したハッシュ値とハッシュ値演算部14が演算したハッシュ値とが一致いるか否かをエラー情報値として生成する。具体的には、フィードバック情報として、x個の秘密情報を選択し、その秘密情報をハッシュ関数に入力して得たハッシュ値hと、送信した正しい秘密情報からx個の秘密情報を選択し得られたハッシュ値h´とが、h=h´であれば「0」を、h≠h´であれば「1」を出力する。
【0040】
なお、秘密情報の選択方法については、事前に送信者、受信者間で取り決めておいても良いし、ランダムに選択しても良い。ランダムに選択する場合は、送信者は、x個を選択するすべての組み合わせについて同様の処理を行う必要がある。
【0041】
<受信者端末の構成>
図3を用いて、本実施形態に係る受信者端末の構成について説明する。
【0042】
本実施形態に係る受信者端末は、図3に示すように、受信部21と、エラー情報検出部22と、判断部23と、選択部24と、ハッシュ値演算部25と、フィードバック情報送信部26と、復元部27とから構成されている。
【0043】
受信部21は、送信者端末1からn個の分散秘密情報を受信する。エラー情報検出部22は、受信したn個の分散秘密情報のうち、エラー情報の個数を検出する。判断部23は、検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する。
【0044】
選択部24は、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する。ハッシュ値演算部25は、選択したx個の分散秘密情報をハッシュ関数によって、ハッシュ値を演算する。なお、本実施形態では、ハッシュ関数を例示したが、これに限らず、他の方法で選択したx個の分散秘密情報をマスクしてもよい。
【0045】
フィードバック情報送信部26は、ハッシュ値演算部25が演算したハッシュ値をフィードバック情報として送信者端末1に送信する。復元部27は、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。なお、復元処理の詳細については、後述する。
【0046】
<分散秘密情報生成部の構成>
図4を用いて、本実施形態に係る分散秘密情報生成部の構成について説明する。
【0047】
本実施形態に係る分散秘密情報生成部は、図4に示すように、分割器111と、ダミー情報生成器112と、部分分散情報生成器113と、k−1個からなる乱数発生器114と、連結器116とから構成されている。
【0048】
分割器111は、秘密情報Kを入力し、これを(n−1)個の部分秘密情報Kに分割する。ダミー情報生成器112は、オールゼロからなるダミー部分秘密情報Kを生成する。生成されたダミー部分秘密情報Kおよび部分秘密情報Kは、部分分散情報生成器113に送られる。
【0049】
乱数発生器114は、互いに独立な乱数Rを発生している。そして、同様な乱数発生器114をk−1個備えている。乱数発生器114からの乱数Rは、部分分散情報生成器113に送られる。
【0050】
部分分散情報生成器113は、ダミー部分秘密情報Kおよび(n−1)個の部分秘密情報Kと、乱数発生器114からの乱数Rとを用いて、排他的論理和(XOR)演算により、部分分散情報を生成する。連結器116は、部分分散情報生成器113から出力される部分分散情報をグループごとにバイナリ連結し、P個の分散情報Sを生成する(P>n)。
【0051】
<復元部の構成>
図5を用いて、本実施形態に係る復元部の構成について説明する。
【0052】
本実施形態に係る秘密情報復元装置は、図5に示すように、分散情報分割部271と、行列生成部272と、部分秘密情報復元部273と、連結部274とから構成されている。
【0053】
分散情報分割部271は、k+1個(kは正の整数)の分散情報を入力し、(k+1)(n−1)個(nは、正の素数)の部分分散情報を生成する。行列生成部272は、例えば、k+1個の分散情報に対応するインデックス番号t、t、・・・、tk−1(0≦t、t、・・・、tk−1≦k−1)を入力し、部分秘密情報K、・・・、Knp−1を復元するための部分分散情報の組み合わせを示す行列を生成する。
【0054】
部分秘密情報復元部273は、行列生成部272において生成された行列を部分分散情報に適用して、部分秘密情報を復元する。連結部274は、復元した部分秘密情報を連結して元の秘密情報Kを生成する。
【0055】
<秘匿通信システムの処理>
図6を用いて、本実施形態に係る秘匿通信システムの処理について説明する。
【0056】
送信者端末1は、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数、n>k+1)個の分散された秘密情報に分割し(ステップS101)、n個の通信経路により、分散されたn個の分散秘密情報を受信者端末2に送信する(ステップS102)。
【0057】
受信者端末2は、受信したn個の分散秘密情報のうち、エラー情報の個数を検出し(ステップS103)、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する(ステップS104)。そして、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する(ステップS105)。
【0058】
受信者端末2は、その選択したx個の分散秘密情報をマスクしてマスク値を取得し(ステップS106)、その取得したマスク値を送信者端末1に送信する(ステップS107)。
【0059】
送信者端末1は、送信したn個の分散秘密情報からx個の分散秘密情報を選択し(ステップS108)、その選択したx個の分散秘密情報を受信者端末2と同様の方法でマスクしてマスク値を取得して(ステップS109)、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信する(ステップS110)。
【0060】
受信者端末2は、エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する(ステップS111)。
【0061】
したがって、本実施形態によれば、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【0062】
なお、本発明の秘匿通信システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを送信者端末および受信者端末に読み込ませ、実行することによって本発明の秘匿通信システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0063】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0064】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0065】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0066】
1;送信者端末
2;受信者端末
11;分散秘密情報生成部
12;送信部
13;選択部
14;ハッシュ値演算部
15;フィードバック情報受信部
16;エラー情報生成部
21;受信部
22;エラー情報検出部
23;判断部
24;選択部
25;ハッシュ値演算部
26;フィードバック情報送信部
27;復元部
111;分割器
112;ダミー情報生成器
113;部分分散情報生成器
114;乱数生成器
116;連結器
271;分散情報分割部
272;行列生成部
273;部分秘密情報復元部
274;連結部

【特許請求の範囲】
【請求項1】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムであって、
前記送信者端末が、
(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する分散秘密情報生成手段と、
n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する分散秘密情報送信手段と、
を備え、
前記受信者端末が、
該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する検出手段と、
該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する判断手段と、
前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第1の選択手段と、
該選択したx個の分散秘密情報をマスクしてマスク値を取得する第1のマスク値取得手段と、
該取得したマスク値を前記送信者端末に送信するマスク値送信手段と、
を備え、
前記送信者端末が、
前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第2の選択手段と、
該選択したx個の分散秘密情報を前記第1のマスク値取得手段と同様の方法でマスクしてマスク値を取得する第2のマスク値取得手段と、
前記受信したマスク値と該取得したマスク値とが一致しているか否かをエラー情報値とし、前記選択した分散秘密情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信するエラー情報値送信手段と、
を備え、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する復元手段と、
を備えたことを特徴とする秘匿通信システム。
【請求項2】
前記第1の選択手段と第2の選択手段とが予め定められた分散秘密情報を1つずつn回選択することを特徴とする請求項1に記載の秘匿通信システム。
【請求項3】
前記第1の選択手段と第2の選択手段とが予め定められた複数個(x個)からなる分散秘密情報を前記n個の分散秘密情報から得られるすべての組み合わせについて選択することを特徴とする請求項1に記載の秘匿通信システム。
【請求項4】
前記マスク値がハッシュ関数を用いて演算したハッシュ値であることを特徴とする請求項1に記載の秘匿通信システム。
【請求項5】
前記エラー情報値が、0または1の2値の値であることを特徴とする請求項1に記載の秘匿通信システム。
【請求項6】
前記秘密分散法のパラメータkを攻撃者の能力に応じて、設定することができることを特徴とする請求項1に記載の秘匿通信システム。
【請求項7】
前記分散秘密情報生成手段が、素数と巡回群との性質を用いて、2つの乱数を重複しないように排他的論理和演算を行う第1の排他的論理和演算器と、
秘密情報を入力し、これを分割して部分秘密情報を生成する分割器と、
オールゼロからなるダミー情報を生成するダミー情報生成器と、
素数と巡回群との性質を用いて、該ダミー情報を含む部分秘密情報のうち、2つの情報を重複しないように排他的論理和演算を行う第2の排他的論理和演算器と、
該第1の排他的論理和演算器において演算された情報と該第2の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する第3の排他的論理和演算器と、
該出力された部分分散情報を連結し、分散秘密情報を出力する連結器と、
を備えたことを特徴とする請求項1に記載の秘匿通信システム。
【請求項8】
前記復元手段が、分散秘密情報を分割して部分分散情報を生成する分散情報分割手段と、
該分散秘密情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する行列生成手段と、
該行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元する部分秘密情報復元部と、
該復元された部分秘密情報を連結して秘密情報を出力する連結器と、
を備えたことを特徴とする請求項1に記載の秘匿通信システム。
【請求項9】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法であって、
前記送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する第1のステップと、
前記送信者端末が、n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する第2のステップと、
前記受信者端末が、該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する第3のステップと、
前記受信者端末が、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第4のステップと、
前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第5のステップと、
前記受信者端末が、該選択したx個の分散秘密情報をマスクしてマスク値を取得する第6のステップと、
前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第7のステップと、
前記送信者端末が、前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第8のステップと、
前記送信者端末が、該選択したx個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第9のステップと、
前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第10のステップと、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第11のステップと、
を備えたことを特徴とする秘匿通信方法。
【請求項10】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法をコンピュータに実行させるためのプログラムであって、
前記送信者端末が、(k+1、n)秘密分散法を用いて、秘密情報をn(n;正の整数,n<k+1)個の分散された秘密情報に分割する第1のステップと、
前記送信者端末が、n個の通信経路により、前記分散されたn個の分散秘密情報を前記受信者端末に送信する第2のステップと、
前記受信者端末が、該受信したn個の分散秘密情報のうち、エラー情報の個数を検出する第3のステップと、
前記受信者端末が、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第4のステップと、
前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したn個の分散秘密情報のうち、x個の分散秘密情報を選択する第5のステップと、
前記受信者端末が、該選択したx個の分散秘密情報をマスクしてマスク値を取得する第6のステップと、
前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第7のステップと、
前記送信者端末が、前記送信したn個の分散秘密情報からx個の分散秘密情報を選択する第8のステップと、
前記送信者端末が、該選択したx個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第9のステップと、
前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第10のステップと、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第11のステップと、
をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−166230(P2011−166230A)
【公開日】平成23年8月25日(2011.8.25)
【国際特許分類】
【出願番号】特願2010−23438(P2010−23438)
【出願日】平成22年2月4日(2010.2.4)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】