(57)【特許請求の範囲】
【請求項１】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムであって、
前記送信者端末が、
（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する分散秘密情報生成手段と、
ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する分散秘密情報送信手段と、
を備え、
前記受信者端末が、
該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する検出手段と、
該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する判断手段と、
前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第１の選択手段と、
該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第１のマスク値取得手段と、
該取得したマスク値を前記送信者端末に送信するマスク値送信手段と、
を備え、
前記送信者端末が、
前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第２の選択手段と、
該選択したｘ個の分散秘密情報を前記第１のマスク値取得手段と同様の方法でマスクしてマスク値を取得する第２のマスク値取得手段と、
前記受信したマスク値と該取得したマスク値とが一致しているか否かをエラー情報値とし、前記選択した分散秘密情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信するエラー情報値送信手段と、
を備え、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する復元手段と、
を備えたことを特徴とする秘匿通信システム。
【請求項２】
前記第１の選択手段と第２の選択手段とが予め定められた分散秘密情報を１つずつｎ回選択することを特徴とする請求項１に記載の秘匿通信システム。
【請求項３】
前記第１の選択手段と第２の選択手段とが予め定められた複数個（ｘ個）からなる分散秘密情報を前記ｎ個の分散秘密情報から得られるすべての組み合わせについて選択することを特徴とする請求項１に記載の秘匿通信システム。
【請求項４】
前記マスク値がハッシュ関数を用いて演算したハッシュ値であることを特徴とする請求項１に記載の秘匿通信システム。
【請求項５】
前記エラー情報値が、０または１の２値の値であることを特徴とする請求項１に記載の秘匿通信システム。
【請求項６】
前記秘密分散法のパラメータｋを攻撃者の能力に応じて、設定することができることを特徴とする請求項１に記載の秘匿通信システム。
【請求項７】
前記分散秘密情報生成手段が、素数と巡回群との性質を用いて、２つの乱数を重複しないように排他的論理和演算を行う第１の排他的論理和演算器と、
秘密情報を入力し、これを分割して部分秘密情報を生成する分割器と、
オールゼロからなるダミー情報を生成するダミー情報生成器と、
素数と巡回群との性質を用いて、該ダミー情報を含む部分秘密情報のうち、２つの情報を重複しないように排他的論理和演算を行う第２の排他的論理和演算器と、
該第１の排他的論理和演算器において演算された情報と該第２の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する第３の排他的論理和演算器と、
該出力された部分分散情報を連結し、分散秘密情報を出力する連結器と、
を備えたことを特徴とする請求項１に記載の秘匿通信システム。
【請求項８】
前記復元手段が、分散秘密情報を分割して部分分散情報を生成する分散情報分割手段と、
該分散秘密情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する行列生成手段と、
該行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元する部分秘密情報復元部と、
該復元された部分秘密情報を連結して秘密情報を出力する連結器と、
を備えたことを特徴とする請求項１に記載の秘匿通信システム。
【請求項９】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法であって、
前記送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する第１のステップと、
前記送信者端末が、ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する第２のステップと、
前記受信者端末が、該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する第３のステップと、
前記受信者端末が、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第４のステップと、
前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第５のステップと、
前記受信者端末が、該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第６のステップと、
前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第７のステップと、
前記送信者端末が、前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第８のステップと、
前記送信者端末が、該選択したｘ個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第９のステップと、
前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第１０のステップと、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第１１のステップと、
を備えたことを特徴とする秘匿通信方法。
【請求項１０】
送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法をコンピュータに実行させるためのプログラムであって、
前記送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する第１のステップと、
前記送信者端末が、ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する第２のステップと、
前記受信者端末が、該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する第３のステップと、
前記受信者端末が、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第４のステップと、
前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第５のステップと、
前記受信者端末が、該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第６のステップと、
前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第７のステップと、
前記送信者端末が、前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第８のステップと、
前記送信者端末が、該選択したｘ個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第９のステップと、
前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第１０のステップと、
前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第１１のステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システム、秘匿通信方法およびプログラムに関する。
【背景技術】
【０００２】
近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスに置いては、通信の秘匿を実現するため、様々な方式が利用される。通信の方式のひとつとして、秘匿通信（もしくは、ネットワークコーディング）がある。
【０００３】
これは、秘密分散法を応用することにより、秘匿と誤り訂正を同時に実現する技術である。この方式では、受信者が誤りを含むデータ片を特定することができないため、送信者にフィードバック情報を返信し、さらに送信者からエラーに関する情報（エラー情報）を受信する必要がある（例えば、非特許文献１参照。）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｙ．Ｄｅｓｍｅｄｔ，andＹ．Ｗａｎｇ，“Ｐｅｒｆｅｃｔｌｙ  ｓｅｃｕｒｅ  ｍｅｓｓａｇｅ  ｔｒａｎｓｍｉｓｓｉｏｎ  ｒｅｖｉｓｉｔｅｄ”ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｅｕｒｏｃｒｙｐｔ’０２，２００２
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来方式においては、このフィードバック情報を利用して攻撃する手法が提案されており、安全な方式を実現することが課題となっていた。
【０００６】
そこで、本発明は、上述の課題に鑑みてなされたものであり、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システム、秘匿通信方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【０００８】
（１）本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムであって、前記送信者端末（例えば、図１の送信者端末１に相当）が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する分散秘密情報生成手段（例えば、図２の分散秘密情報生成部１１に相当）と、ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する分散秘密情報送信手段（例えば、図２の送信部１２に相当）と、を備え、前記受信者端末（例えば、図１の受信者端末２に相当）が、該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する検出手段（例えば、図３のエラー情報検出部２２に相当）と、該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する判断手段（例えば、図３の判断部２３に相当）と、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第１の選択手段（例えば、図３の選択部２４に相当）と、該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第１のマスク値取得手段（例えば、図３のハッシュ値演算部２５に相当）と、該取得したマスク値を前記送信者端末に送信するマスク値送信手段（例えば、図３のフィードバック情報送信部２６に相当）と、を備え、前記送信者端末が、前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第２の選択手段（例えば、図２の選択部１３に相当）と、該選択したｘ個の分散秘密情報を前記第１のマスク値取得手段と同様の方法でマスクしてマスク値を取得する第２のマスク値取得手段（例えば、図２のハッシュ値演算部１４に相当）と、前記受信したマスク値と該取得したマスク値とが一致している否かをエラー情報値とし、前記選択した分散秘密情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信するエラー情報値送信手段（例えば、図２の送信部１２に相当）と、を備え、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する復元手段（例えば、図３の復元部２７に相当）と、を備えたことを特徴とする秘匿通信システムを提案している。
【０００９】
この発明によれば、送信者端末の分散秘密情報生成手段は、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する。分散秘密情報送信手段は、ｎ個の通信経路により、分散されたｎ個の分散秘密情報を受信者端末に送信する。受信者端末の検出手段は、その受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する。判断手段は、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する。第１の選択手段は、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する。第１のマスク値取得手段は、その選択したｘ個の分散秘密情報をマスクしてマスク値を取得する。マスク値送信手段は、その取得したマスク値を送信者端末に送信する。送信者端末の第２の選択手段は、送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する。第２のマスク値取得手段は、その選択したｘ個の分散秘密情報を第１のマスク値取得手段と同様の方法でマスクしてマスク値を取得する。エラー情報値送信手段は、受信したマスク値とその取得したマスク値とが一致いるか否かをエラー情報値として、選択した分散情報をエラー情報の個数が前記許容値よりも小さくなるまで送信する。受信者端末の復元手段は、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【００１０】
（２）本発明は、（１）の秘匿通信システムについて、前記第１の選択手段と第２の選択手段とが予め定められた分散秘密情報を１つずつｎ回選択することを特徴とする秘匿通信システムを提案している。
【００１１】
この発明によれば、第１の選択手段と第２の選択手段とが予め定められた分散秘密情報を１つずつｎ回選択する。これにより、確実にエラーとなった分散秘密情報を特定し、排除することができる。
【００１２】
（３）本発明は、（１）の秘匿通信システムについて、前記第１の選択手段と第２の選択手段とが予め定められた複数個（ｘ個）からなる分散秘密情報を前記ｎ個の分散秘密情報から得られるすべての組み合わせについて選択することを特徴とする秘匿通信システムを提案している。
【００１３】
この発明によれば、第１の選択手段と第２の選択手段とが予め定められた複数個（ｘ個）からなる分散秘密情報をｎ個の分散秘密情報から得られるすべての組み合わせについて選択する。これにより、確実にエラーとなった分散秘密情報を特定し、排除することができる。
【００１４】
（４）本発明は、（１）の秘匿通信システムについて、前記マスク値がハッシュ関数を用いて演算したハッシュ値であることを特徴とする秘匿通信システムを提案している。  
【００１５】
この発明によれば、マスク値がハッシュ関数を用いて演算したハッシュ値である。したがって、簡易な演算で情報をマスクすることができる。
【００１６】
（５）本発明は、（１）の秘匿通信システムについて、前記エラー情報値が、０または１の２値の値であることを特徴とする秘匿通信システムを提案している。  
【００１７】
この発明によれば、エラー情報値が、０または１の２値の値である。したがって、エラー情報が漏洩しても分散秘密情報自体が漏洩することはない。
【００１８】
（６）本発明は、（１）の秘匿通信システムについて、前記秘密分散法のパラメータｋを攻撃者の能力に応じて、設定することができることを特徴とする請求項１に記載の秘匿通信システムを提案している。
【００１９】
この発明によれば、秘密分散法のパラメータｋを攻撃者の能力に応じて、設定することができる。通常攻撃者は、受信者端末から送信者端末にフィードバックするフィードバック情報を盗聴・改ざんする必要があるため、送信者から受信者への通信については、ｋ−１個の通信経路を盗聴・改ざんできる能力を持つ。そのため、秘密分散法のパラメータｋは攻撃者の能力を考慮して設定することで、安全な秘匿通信を実現できる。
【００２０】
（７）本発明は、（１）の秘匿通信システムについて、前記分散秘密情報生成手段が、素数と巡回群との性質を用いて、２つの乱数を重複しないように排他的論理和演算を行う第１の排他的論理和演算器（例えば、図４の部分分散情報生成器１１３に相当）と、秘密情報を入力し、これを分割して部分秘密情報を生成する分割器（例えば、図４の分割器１１１に相当）と、オールゼロからなるダミー情報を生成するダミー情報生成器（例えば、図４のダミー情報生成器１１２に相当）と、素数と巡回群との性質を用いて、該ダミー情報を含む部分秘密情報のうち、２つの情報を重複しないように排他的論理和演算を行う第２の排他的論理和演算器（例えば、図４の部分分散情報生成器１１３に相当）と、該第１の排他的論理和演算器において演算された情報と該第２の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する第３の排他的論理和演算器（例えば、図４の部分分散情報生成器１１３に相当）と、該出力された部分分散情報を連結し、分散秘密情報を出力する連結器（例えば、図４の連結器１１６に相当）と、を備えたことを特徴とする秘匿通信システムを提案している。
【００２１】
この発明によれば、第１の排他的論理和演算器は、素数と巡回群との性質を用いて、２つの乱数を重複しないように排他的論理和演算を行う。分割器は、秘密情報を入力し、これを分割して部分秘密情報を生成する。第２の排他的論理和演算器は、オールゼロからなるダミー情報を生成するダミー情報生成器と、素数と巡回群との性質を用いて、ダミー情報を含む部分秘密情報のうち、２つの情報を重複しないように排他的論理和演算を行う。第３の排他的論理和演算器は、第１の排他的論理和演算器において演算された情報と第２の排他的論理和演算器で演算された情報との排他的論理和演算を行い、部分分散情報を出力する。そして、連結器が、出力された部分分散情報を連結し、分散情報を出力する。したがって、秘密情報の復元時において、一切の乱数を一意に復元することが不可能となる。また、排他的論理和演算を用いていることから、高速に分散情報を生成する処理が可能となる。
【００２２】
（８）本発明は、（１）の秘匿通信システムについて、前記復元手段が、分散秘密情報を分割して部分分散情報を生成する分散情報分割手段（例えば、図５の分散情報分割部２７１に相当）と、該分散秘密情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する行列生成手段（例えば、図５の行列生成部２７２に相当）と、該行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元する部分秘密情報復元部（例えば、図５の部分秘密情報復元部２７３に相当）と、該復元された部分秘密情報を連結して秘密情報を出力する連結器（例えば、図５の連結部２７４に相当）と、を備えたことを特徴とする秘匿通信システムを提案している。
【００２３】
この発明によれば、分散情報分割手段は、分散情報を分割して部分分散情報を生成する。行列生成手段は、分散情報のインデックス番号を用いて、すべての部分秘密情報を復元するための部分分散情報の組み合わせ情報を生成する。そして、部分秘密情報復元部が、行列生成手段において生成された部分分散情報の組み合わせ情報に基づいて、入力した部分分散情報を組み合わせて排他的論理和演算を行って、部分秘密情報を復元し、連結器が、復元された部分秘密情報を連結して秘密情報を出力する。したがって、秘密情報復元装置における秘密情報の復元時において、一切の乱数を一意に復元することが不可能となる。また、排他的論理和演算を用いていることから、秘密情報の復元処理を高速に行うことが可能となる。
【００２４】
（９）本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法であって、前記送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する第１のステップ（例えば、図６のステップＳ１０１に相当）と、前記送信者端末が、ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する第２のステップ（例えば、図６のステップＳ１０２に相当）と、前記受信者端末が、該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する第３のステップ（例えば、図６のステップＳ１０３に相当）と、前記受信者端末が、（例えば、図６のステップＳ１０４に相当）該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第４のステップと、前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第５のステップ（例えば、図６のステップＳ１０５に相当）と、前記受信者端末が、該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第６のステップ（例えば、図６のステップＳ１０６に相当）と、前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第７のステップ（例えば、図６のステップＳ１０７に相当）と、前記送信者端末が、前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第８のステップ（例えば、図６のステップＳ１０８に相当）と、前記送信者端末が、該選択したｘ個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第９のステップ（例えば、図６のステップＳ１０９に相当）と、前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第１０のステップ（例えば、図６のステップＳ１１０に相当）と、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第１１のステップ（例えば、図６のステップＳ１１１に相当）と、を備えたことを特徴とする秘匿通信方法を提案している。
【００２５】
この発明によれば、送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割し、ｎ個の通信経路により、分散されたｎ個の分散秘密情報を受信者端末に送信する。受信者端末は、その受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出し、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断し、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択して、その選択したｘ個の分散秘密情報をマスクしてマスク値を取得する。そして、その取得したマスク値を送信者端末に送信する。送信者端末は、送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択し、その選択したｘ個の分散秘密情報を受信者端末と同様の方法でマスクしてマスク値を取得する。そして、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信し、受信者端末が、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【００２６】
（１０）本発明は、送信者端末と受信者端末との間で秘匿通信を行う秘匿通信システムにおける秘匿通信方法をコンピュータに実行させるためのプログラムであって、前記送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割する第１のステップ（例えば、図６のステップＳ１０１に相当）と、前記送信者端末が、ｎ個の通信経路により、前記分散されたｎ個の分散秘密情報を前記受信者端末に送信する第２のステップ（例えば、図６のステップＳ１０２に相当）と、前記受信者端末が、該受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する第３のステップ（例えば、図６のステップＳ１０３に相当）と、前記受信者端末が、（例えば、図６のステップＳ１０４に相当）該検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する第４のステップと、前記受信者端末が、前記検出したエラー情報の個数が所定の許容値よりも多い場合に、前記受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する第５のステップ（例えば、図６のステップＳ１０５に相当）と、前記受信者端末が、該選択したｘ個の分散秘密情報をマスクしてマスク値を取得する第６のステップ（例えば、図６のステップＳ１０６に相当）と、前記受信者端末が、該取得したマスク値を前記送信者端末に送信する第７のステップ（例えば、図６のステップＳ１０７に相当）と、前記送信者端末が、前記送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する第８のステップ（例えば、図６のステップＳ１０８に相当）と、前記送信者端末が、該選択したｘ個の分散秘密情報を前記受信者端末と同様の方法でマスクしてマスク値を取得する第９のステップ（例えば、図６のステップＳ１０９に相当）と、前記送信者端末が、前記受信したマスク値と該取得したマスク値とが一致いるか否かをエラー情報値とし、前記選択した分散情報を前記エラー情報の個数が前記許容値よりも小さくなるまで送信する第１０のステップ（例えば、図６のステップＳ１１０に相当）と、前記受信者端末が、前記エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する第１１のステップ（例えば、図６のステップＳ１１１に相当）と、をコンピュータに実行させるためのプログラムを提案している。  
【００２７】
この発明によれば、送信者端末が、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数,ｎ＜ｋ+１）個の分散された秘密情報に分割し、ｎ個の通信経路により、分散されたｎ個の分散秘密情報を受信者端末に送信する。受信者端末は、その受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出し、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断し、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択して、その選択したｘ個の分散秘密情報をマスクしてマスク値を取得する。そして、その取得したマスク値を送信者端末に送信する。送信者端末は、送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択し、その選択したｘ個の分散秘密情報を受信者端末と同様の方法でマスクしてマスク値を取得する。そして、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信し、受信者端末が、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。したがって、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【発明の効果】
【００２８】
本発明によれば、受信側から送信側へのフィードバック情報が攻撃者に攻撃されても情報が漏洩しない秘匿通信システムを構築することができるという効果がある。
【図面の簡単な説明】
【００２９】
【図１】本実施形態に係る秘匿通信システムの構成を示す図である。
【図２】本実施形態に係る送信者端末の構成を示す図である。
【図３】本実施形態に係る受信者端末の構成を示す図である。
【図４】本実施形態に係る分散秘密情報生成部の構成を示す図である。
【図５】本実施形態に係る復元部の構成を示す図である。
【図６】本実施形態に係る秘匿通信システムの処理を示す図である。
【発明を実施するための形態】
【００３０】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００３１】
＜秘匿通信システムの構成＞
図１を用いて、本実施形態に係る秘匿通信システムの構成について説明する。
【００３２】
本実施形態に係る秘匿通信システムは、図１に示すように、送信者端末１と受信者端末２とから構成されている。また、送信者端末１から受信者端末２へは、ｎ系統の通信経路が用意され、この通信経路を用いて、ｎ個の分散秘密情報が送信される。
【００３３】
一方、受信者端末２から送信者端末１へは、受信した分散秘密情報にエラー情報を含む場合に、受信した分散秘密情報を送信者端末１にフィードバックするための通信経路が１つ用意されている。
【００３４】
＜送信者端末の構成＞
図２を用いて、本実施形態に係る送信者端末の構成について説明する。
【００３５】
本実施形態に係る送信者端末は、図２に示すように、分散秘密情報生成部１１と、送信部１２と、選択部１３と、ハッシュ値演算部１４と、フィードバック情報受信部１５、エラー情報生成部１６とから構成されている。
【００３６】
分散秘密情報生成部１１は、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数）個の分散された分散秘密情報を生成する。なお、分散秘密情報生成部１１の詳細については、後述する。また、秘密分散法のパラメータｋを攻撃者の能力に応じて、設定することができる。通常攻撃者は、受信者端末から送信者端末にフィードバックするフィードバック情報を盗聴・改ざんする必要があるため、送信者から受信者への通信については、ｋ−１個の通信経路を盗聴・改ざんできる能力を持つ。そのため、秘密分散法のパラメータｋは攻撃者の能力を考慮して設定することで、安全な秘匿通信を実現できる。
【００３７】
送信部１２は、ｎ個の通信経路により、分散されたｎ個の分散秘密情報を受信者端末２に送信する。また、後述するエラー情報生成部１６が生成するエラー情報を受信者端末２に送信する。なお、この場合、選択部１３が選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信する。
【００３８】
選択部１３は、送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択する。ハッシュ値演算部１４は、選択したｘ個の分散秘密情報をハッシュ関数によって、ハッシュ値を演算する。なお、本実施形態では、ハッシュ関数を例示したが、これに限らず、他の方法で選択したｘ個の分散秘密情報をマスクしてもよい。
【００３９】
フィードバック情報受信部１５は、受信者端末２からハッシュ値をフィードバック情報として受信する。エラー情報生成部１６は、フィードバック情報として受信したハッシュ値とハッシュ値演算部１４が演算したハッシュ値とが一致いるか否かをエラー情報値として生成する。具体的には、フィードバック情報として、ｘ個の秘密情報を選択し、その秘密情報をハッシュ関数に入力して得たハッシュ値ｈと、送信した正しい秘密情報からｘ個の秘密情報を選択し得られたハッシュ値ｈ´とが、ｈ＝ｈ´であれば「０」を、ｈ≠ｈ´であれば「１」を出力する。
【００４０】
なお、秘密情報の選択方法については、事前に送信者、受信者間で取り決めておいても良いし、ランダムに選択しても良い。ランダムに選択する場合は、送信者は、ｘ個を選択するすべての組み合わせについて同様の処理を行う必要がある。
【００４１】
＜受信者端末の構成＞
図３を用いて、本実施形態に係る受信者端末の構成について説明する。
【００４２】
本実施形態に係る受信者端末は、図３に示すように、受信部２１と、エラー情報検出部２２と、判断部２３と、選択部２４と、ハッシュ値演算部２５と、フィードバック情報送信部２６と、復元部２７とから構成されている。
【００４３】
受信部２１は、送信者端末１からｎ個の分散秘密情報を受信する。エラー情報検出部２２は、受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出する。判断部２３は、検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する。
【００４４】
選択部２４は、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する。ハッシュ値演算部２５は、選択したｘ個の分散秘密情報をハッシュ関数によって、ハッシュ値を演算する。なお、本実施形態では、ハッシュ関数を例示したが、これに限らず、他の方法で選択したｘ個の分散秘密情報をマスクしてもよい。
【００４５】
フィードバック情報送信部２６は、ハッシュ値演算部２５が演算したハッシュ値をフィードバック情報として送信者端末１に送信する。復元部２７は、エラー情報の個数が許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する。なお、復元処理の詳細については、後述する。
【００４６】
＜分散秘密情報生成部の構成＞
図４を用いて、本実施形態に係る分散秘密情報生成部の構成について説明する。
【００４７】
本実施形態に係る分散秘密情報生成部は、図４に示すように、分割器１１１と、ダミー情報生成器１１２と、部分分散情報生成器１１３と、ｋ−１個からなる乱数発生器１１４と、連結器１１６とから構成されている。
【００４８】
分割器１１１は、秘密情報Ｋを入力し、これを（ｎｐ−１）個の部分秘密情報Ｋｑに分割する。ダミー情報生成器１１２は、オールゼロからなるダミー部分秘密情報Ｋ０を生成する。生成されたダミー部分秘密情報Ｋ０および部分秘密情報Ｋｑは、部分分散情報生成器１１３に送られる。
【００４９】
乱数発生器１１４は、互いに独立な乱数Ｒを発生している。そして、同様な乱数発生器１１４をｋ−１個備えている。乱数発生器１１４からの乱数Ｒは、部分分散情報生成器１１３に送られる。
【００５０】
部分分散情報生成器１１３は、ダミー部分秘密情報Ｋ０および（ｎｐ−１）個の部分秘密情報Ｋｑと、乱数発生器１１４からの乱数Ｒとを用いて、排他的論理和（ＸＯＲ）演算により、部分分散情報を生成する。連結器１１６は、部分分散情報生成器１１３から出力される部分分散情報をグループごとにバイナリ連結し、Ｐ個の分散情報Ｓｉを生成する（Ｐ＞ｎ）。
【００５１】
＜復元部の構成＞
図５を用いて、本実施形態に係る復元部の構成について説明する。
【００５２】
本実施形態に係る秘密情報復元装置は、図５に示すように、分散情報分割部２７１と、行列生成部２７２と、部分秘密情報復元部２７３と、連結部２７４とから構成されている。
【００５３】
分散情報分割部２７１は、ｋ＋１個（ｋは正の整数）の分散情報を入力し、（ｋ＋１）（ｎｐ−１）個（ｎｐは、正の素数）の部分分散情報を生成する。行列生成部２７２は、例えば、ｋ＋１個の分散情報に対応するインデックス番号ｔ０、ｔ１、・・・、ｔｋ−１（０≦ｔ０、ｔ１、・・・、ｔｋ−１≦ｋ−１）を入力し、部分秘密情報Ｋ１、・・・、Ｋｎｐ−１を復元するための部分分散情報の組み合わせを示す行列を生成する。
【００５４】
部分秘密情報復元部２７３は、行列生成部２７２において生成された行列を部分分散情報に適用して、部分秘密情報を復元する。連結部２７４は、復元した部分秘密情報を連結して元の秘密情報Ｋを生成する。
【００５５】
＜秘匿通信システムの処理＞
図６を用いて、本実施形態に係る秘匿通信システムの処理について説明する。
【００５６】
送信者端末１は、（ｋ＋１、ｎ）秘密分散法を用いて、秘密情報をｎ（ｎ；正の整数、ｎ＞ｋ＋１）個の分散された秘密情報に分割し（ステップＳ１０１）、ｎ個の通信経路により、分散されたｎ個の分散秘密情報を受信者端末２に送信する（ステップＳ１０２）。
【００５７】
受信者端末２は、受信したｎ個の分散秘密情報のうち、エラー情報の個数を検出し（ステップＳ１０３）、その検出したエラー情報の個数が所定の許容値よりも多いか否かを判断する（ステップＳ１０４）。そして、検出したエラー情報の個数が所定の許容値よりも多い場合に、受信したｎ個の分散秘密情報のうち、ｘ個の分散秘密情報を選択する（ステップＳ１０５）。
【００５８】
受信者端末２は、その選択したｘ個の分散秘密情報をマスクしてマスク値を取得し（ステップＳ１０６）、その取得したマスク値を送信者端末１に送信する（ステップＳ１０７）。
【００５９】
送信者端末１は、送信したｎ個の分散秘密情報からｘ個の分散秘密情報を選択し（ステップＳ１０８）、その選択したｘ個の分散秘密情報を受信者端末２と同様の方法でマスクしてマスク値を取得して（ステップＳ１０９）、受信したマスク値と取得したマスク値とが一致いるか否かをエラー情報値とし、選択した分散情報をエラー情報の個数が許容値よりも小さくなるまで送信する（ステップＳ１１０）。
【００６０】
受信者端末２は、エラー情報の個数が前記許容値よりも小さくなったときに、受信した分散秘密情報から秘密情報を復元する（ステップＳ１１１）。
【００６１】
したがって、本実施形態によれば、受信者端末が検出したエラー情報の個数が所定の許容値よりも多い場合に、送信者端末にフィードバックする情報をマスクし、かつ、そのマスク値を送信するとともに、送信者端末から返信されるエラー情報をエラー情報値としているため、より安全な秘匿通信が実現できる。
【００６２】
なお、本発明の秘匿通信システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを送信者端末および受信者端末に読み込ませ、実行することによって本発明の秘匿通信システムを実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺装置等のハードウェアを含む。
【００６３】
また、「コンピュータシステム」は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）システムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００６４】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００６５】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６６】
１；送信者端末
２；受信者端末
１１；分散秘密情報生成部
１２；送信部
１３；選択部
１４；ハッシュ値演算部
１５；フィードバック情報受信部
１６；エラー情報生成部
２１；受信部
２２；エラー情報検出部
２３；判断部
２４；選択部
２５；ハッシュ値演算部
２６；フィードバック情報送信部
２７；復元部
１１１；分割器
１１２；ダミー情報生成器
１１３；部分分散情報生成器
１１４；乱数生成器
１１６；連結器
２７１；分散情報分割部
２７２；行列生成部
２７３；部分秘密情報復元部
２７４；連結部
【図１】
0005396297.tif 000002
【図２】
0005396297.tif 000003
【図３】
0005396297.tif 000004
【図４】
0005396297.tif 000005
【図５】
0005396297.tif 000006
【図６】
0005396297.tif 000007