(57)【要約】【課題】  データの真正性を保証可能なデータ記録システムにおいて、実用性の向上を図る。【解決手段】  時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出手段と、前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成手段と、前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力手段とを有する。【選択図】図５
2018054841.tif 000002
【特許請求の範囲】
【請求項１】
時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力手段と
を有することを特徴とするデータ生成装置。
【請求項２】
前記出力手段は、前記出力データのうち、ｋ個目以降に出力する出力データに、前記署名値を含めることを特徴とする請求項１に記載のデータ生成装置。
【請求項３】
前記生成手段は、前記算出手段が、１個目からｋ個目までの前記パラメータ情報を算出する間に、前記署名値を生成することを特徴とする請求項２に記載のデータ生成装置。
【請求項４】
前記算出手段は、前記取得したデータのハッシュ値に基づいて、前記パラメータ情報を算出することを特徴とする請求項１乃至３のいずれか１項に記載のデータ生成装置。
【請求項５】
前記出力手段は、前記取得したｉ個目のデータ（ｉは１以上の整数）と、前記取得した（ｉ−１）個目のデータに基づいて算出された（ｉ−１）個目の前記パラメータ情報との組を、前記出力データに含めることを特徴とする請求項４に記載のデータ生成装置。
【請求項６】
時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出工程と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成工程と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力工程と
を有することを特徴とするデータ生成方法。
【請求項７】
時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出工程と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成工程と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力工程と
をコンピュータに実行させるためのプログラム。
【請求項８】
データ生成装置と、該データ生成装置に接続されるデータ記憶装置とを有するデータ記録システムであって、
前記データ生成装置は、
時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力手段と
を有することを特徴とするデータ記録システム。
【請求項９】
前記データ記憶装置は、
前記出力データを受信する受信手段と、
受信された前記出力データの数がｋ個以上か否かに基づいて、署名検証の成否を判定する第１の改竄判定手段と
を有することを特徴とする請求項８に記載のデータ記録システム。
【請求項１０】
前記データ記憶装置は、
前記第１の改竄判定手段によりｋ個以上と判定された場合に、ｋ個の前記組に基づいて秘密情報を演算する第１の演算手段と、
受信した前記出力データのいずれかの出力データに含まれる前記署名値に基づいて秘密情報を演算する第２の演算手段と、
前記第１の演算手段により演算された前記秘密情報と、前記第２の演算手段により演算された前記秘密情報とを比較することで、署名検証の成否を判定する第２の改竄判定手段と
を更に有することを特徴とする請求項９に記載のデータ記録システム。
【請求項１１】
第１の演算手段は、前記受信手段が受信した（ｋ＋１）個の前記出力データに基づいて前記ｋ個の組を生成し、生成した該ｋ個の組に基づいて、前記秘密情報を演算することを特徴とする請求項１０に記載のデータ記録システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ生成装置、データ生成方法、プログラム及びデータ記録システムに関する。
【背景技術】
【０００２】
従来より、撮像装置等のデータ生成装置と、該データ生成装置において生成された時系列のデータ（動画像データ等）を、ネットワークを介して受信し記憶するデータ記憶装置（サーバ装置等）と、を組み合わせたデータ記録システムが知られている。当該データ記録システムの場合、例えば、データ生成装置側で時系列のデータに対して署名を付加することで、データ記憶装置側にて署名検証を行い、データの真正性を保証することができる（下記特許文献１等参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記データ記録システムの場合、署名が付加されたデータをデータ記憶装置が受信した際に、データ欠損が１つでも発生していると、データ記憶装置側で署名検証を行うことができない。このため、たとえ欠損していないデータが改竄されていないデータであったとしても、データの真正性を保証することができず、実用性に欠けるといった問題がある。
【０００４】
加えて、上記データ記録システムの場合、時系列のデータと並行して署名値の送信が行われる。このため、時系列のデータの通信速度が低下することが考えられる。また、送信後の一定時間、データ生成装置側で署名値を保持しておく必要があったり、データ記憶装置側で、時系列のデータと署名値との関係を管理する必要があるなど、実用上、種々の問題がある。
【０００５】
本発明は上記課題に鑑みてなされたものであり、データの真正性を保証可能なデータ記録システムにおいて、実用性の向上を図ることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の各実施形態に係るデータ生成装置は、例えば、以下のような構成を有する。すなわち、
時系列のデータから、所定の区間に含まれるｎ個（ｎは２以上の整数）のデータを順次取得し、該取得したデータに基づいて、ｋ個（ｋは１以上でｎ未満の整数）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報を算出する算出手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組がｋ個集まることで演算可能となる、秘密分散プロトコルに基づく秘密情報に署名を付加することで、署名値を生成する生成手段と、
前記取得したデータと該取得したデータに基づいて算出された前記パラメータ情報との組と、前記署名値とを含む出力データを出力する出力手段とを有する。
【発明の効果】
【０００７】
本発明の各実施形態によれば、データの真正性を保証可能なデータ記録システムにおいて、実用性を向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】データ記録システムのシステム構成の一例を示す図である。
【図２】秘密分散のプロトコルを説明するための図である。
【図３】秘密分散のプロトコルを説明するための図である。
【図４】第１の実施形態における撮像装置及びサーバ装置のハードウェア構成を示す図である。
【図５】第１の実施形態における撮像装置の機能構成を示す図である。
【図６】第１の実施形態における撮像装置の各部の動作を模式的に示した図である。
【図７】出力データのデータ構造の一例を示す図である。
【図８】第１の実施形態におけるデータ送信処理の流れを示すフローチャートである。
【図９】第１の実施形態におけるサーバ装置の機能構成を示す図である。
【図１０】第１の実施形態におけるデータ検証処理の流れを示すフローチャートである。
【図１１】データ記録システムの適用例を示す図である。
【図１２】第２の実施形態における撮像装置の機能構成を示す図である。
【図１３】署名値の通知タイミングの一例を示す図である。
【図１４】第２の実施形態におけるデータ送信処理の流れを示すフローチャートである。
【図１５】出力データの生成タイミングを説明するための図である。
【図１６】第３の実施形態におけるデータ送信処理の流れを示すフローチャートである。
【図１７】第３の実施形態におけるサーバ装置の機能構成を示す図である。
【図１８】第３の実施形態におけるデータ検証処理の流れを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の各実施形態について添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に際して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１０】
［第１の実施形態］
＜１．データ記録システムの構成＞
はじめに、データ記録システムの全体構成について説明する。図１は、データ記録システムの全体構成の一例を示す図である。
【００１１】
図１に示すように、データ記録システム１００は、データ生成装置１１０と、データ記憶装置１２０とを有する。第１の実施形態において、データ生成装置１１０と、データ記憶装置１２０とは、ネットワークを介して通信可能に接続されている。
【００１２】
データ生成装置１１０は、時系列のデータを生成する装置であり、以下では、動画像データを生成する撮像装置として説明する。撮像装置１１０には、秘密分散データ生成プログラムがインストールされており、当該プログラムが実行されることで、撮像装置１１０は、秘密分散データ生成部１１１として機能する。
【００１３】
秘密分散データ生成部１１１は、生成された動画像データに、秘密分散プロトコルに基づくパラメータ情報を対応付けることで秘密分散データを生成し、署名値を付加したうえで、データ記憶装置１２０に向けてストリーミング送信する。なお、署名値は、データ記憶装置１２０が秘密分散データについて署名検証を行う際に用いる秘密情報に対して、署名を付加することにより生成される。以下、署名値が付加された秘密分散データを、「出力データ」と称す。
【００１４】
データ記憶装置１２０は、データ生成装置１１０より送信される出力データを記憶する装置であり、以下では、サーバ装置として説明する。サーバ装置１２０には、データ検証プログラムがインストールされており、当該プログラムが実行されることで、サーバ装置１２０は、データ検証部１２１として機能する。
【００１５】
データ検証部１２１は、撮像装置１１０より送信された出力データを受信し、データ格納部１２２に格納する。また、データ検証部１２１は、データ格納部１２２に格納した出力データについて、署名鍵を用いることで署名値に基づいて演算した秘密情報と、秘密分散データに基づいて演算した秘密情報とを比較することで、署名検証を行う。
【００１６】
なお、撮像装置１１０よりストリーミング送信される出力データのうち、いくつかの出力データが欠損した場合であっても、データ検証部１２１では、署名検証を行うことができる。出力データに含まれる秘密分散データは、秘密分散プロトコルを用いて生成され、署名検証でのデータ欠損に対する耐性が高いためである。
【００１７】
＜２．秘密分散プロトコルの説明＞
次に、秘密分散データの生成に用いられる秘密分散プロトコルについて、図２及び図３を用いて簡単に説明する。図２及び図３は、秘密分散プロトコルを説明するための図である。
【００１８】
（１）概要
一般に、（ｋ−１）次の多項式は、ｋ個の独立な解が存在すれば一意に定めることができ、（ｋ−１）個以下の解では、（ｋ−１）次の多項式を一意に定めることができない。図２（ａ）は、独立な２個の解（（ｘ１，ｙ１）、（ｘ２，ｙ２））に基づいて、１次の多項式（ｙ＝α１ｘ＋α０）を一意に定めた様子を示している。また、図２（ｂ）は、独立な３個の解（（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３））に基づいて、２次の多項式（ｙ＝α２ｘ２＋α１ｘ＋α０）を一意に定めた様子を示している。
【００１９】
更に、図３（ａ）は、独立なｋ個の解（（ｘ１，ｙ１）、（ｘ２，ｙ２）、・・・（ｘｋ，ｙｋ））に基づいて、（ｋ−１）次の多項式（ｙ＝αｋ−１ｘｋ−１＋αｋ−２ｘｋ−２＋・・・α１ｘ＋α０）を一意に定めた様子を示している。
【００２０】
秘密分散プロトコルは、多項式とその解との間のこのような関係を利用したものである。図３（ｂ）に示すように、秘密分散プロトコルを用いる場合、秘密情報を生成するデータ生成者は、生成した秘密情報を（ｋ−１）次の多項式の０次の項（α０）に埋め込むとともに、（ｋ−１）次の多項式の複数の解を生成して、それぞれの解を分けて保持する。これにより、仮に、複数の解のうちの一部の解が漏えいしたとしても、秘密情報（α０）が復元されることはない。つまり、秘密分散プロトコルは、漏えいに対する耐性が高いという特性を有する。
【００２１】
加えて、図３（ｂ）に示すように、秘密分散プロトコルによれば、データ利用者は、データ生成者より複数の解のうちのｋ個の解を取得すれば、秘密情報（α０）を復元することができる。ｋ個の解を用いて（ｋ−１）次の多項式を一意に定めることができるからである。つまり、秘密分散プロトコルは、データ欠損に対する耐性が高いという特性も有している。
【００２２】
第１の実施形態では、このうち、データ欠損に対する耐性が高いという特性に着目して、時系列のデータに秘密分散プロトコルを適用している。
【００２３】
（２）秘密分散プロトコルの時系列のデータへの適用
第１の実施形態における撮像装置１１０では、時系列のデータである動画像データに秘密分散プロトコルを適用することで、署名検証でのデータ欠損に対する耐性の向上を実現している。図３（ｃ）を参照しながら具体的に説明する。
【００２４】
撮像装置１１０では、まず、時系列のデータである動画像データの所定の区間に含まれるｎ個（ｎは２以上の整数）の単位データを取得する。ここで、「単位データ」とは、動画像データを構成する所定単位のデータを指す。所定単位のデータとは、例えば、撮像装置１１０がフレーム単位で処理を実行する場合には、それぞれのフレームが所定単位のデータとなる。また、例えば、撮像装置１１０がパケット単位で処理を実行する場合には、それぞれのパケットが所定単位のデータとなる。なお、以下では、所定の区間に含まれるｎ個の単位データのうち、ｉ番目の単位データを"Ｄｉ"と表す。
【００２５】
続いて、撮像装置１１０では、ｎ個の単位データ（Ｄｉ）に基づいて、（ｋ−１）次の多項式のｎ個の解を生成する。このとき、（ｋ−１）次の多項式のｋ個（ｋは１以上でｎ未満の整数）のパラメータ（αｋ−１、αｋ−２、・・・α０）には、乱数値を用いる。
【００２６】
なお、本実施形態では、（ｋ−１）次の多項式の変数ｘにｎ個の単位データ（Ｄｉ）を代入するにあたり、ハッシュ値を用いるものとし、Ｈａｓｈ（Ｄｉ）を代入することで算出されるｎ個の変数ｙの値のうち、ｉ番目の値を、パラメータ情報"Ｗｉ"と表す。Ｗｉは、下式に基づいて算出することができる。
【００２７】
【数１】
2018054841.tif 000003
この結果、撮像装置１１０では、ｎ個の単位データ（Ｄｉ）から、（ｋ−１）次の多項式（ｙ＝αｋ−１ｘｋ−１＋αｋ−２ｘｋ−２＋・・・α１ｘ＋α０）のｎ個の解（Ｄｉ，Ｗｉ）を算出することができる。撮像装置１１０では、算出したｎ個の解（Ｄｉ，Ｗｉ）を秘密分散データとして、サーバ装置１２０に送信する。つまり、秘密分散データは、単位データと、該単位データに対応付けられたパラメータ情報との組である。
【００２８】
サーバ装置１２０では、秘密分散データ（Ｄｉ，Ｗｉ）のうちの一部が欠損した場合であっても、秘密分散データがｋ個集まれば、パラメータ（αｋ−１、αｋ−２、・・・α０）を演算することができる。
【００２９】
ここで、ｋ個の秘密分散データが改竄されなかったとする。この場合、サーバ装置１２０がｋ個の秘密分散データ（Ｄｉ，Ｗｉ）に基づいて演算するパラメータ（αｋ−１、・・・α０）は、撮像装置１１０がｎ個の解を生成する際に用いた（ｋ−１）次の多項式のパラメータ（αｋ−１、・・・α０）と一致する。一方、ｋ個の秘密分散データが改竄された場合には、これらは一致しない。つまり、これらが一致するか否かを判定することで、署名検証を行うことができ、一致した場合（署名検証に成功した場合）に、秘密分散データの真正性（秘密分散データが改竄されていないこと）を保証することができる。
【００３０】
なお、本実施形態において、サーバ装置１２０は、このうちの１つのパラメータ（α０）が一致することで、秘密分散データ（Ｄｉ，Ｗｉ）の署名検証が成功したと判定する。つまり、本実施形態においては、パラメータ（α０）が秘密情報となる（秘密情報は、秘密分散データがｋ個集まることで演算可能となるパラメータのうちの１つと定義することができる）。
【００３１】
サーバ装置１２０において署名検証の成否を判定できるようにするために、撮像装置１１０では、下式に示すようなＳｉｇｎアルゴリズムを用いて秘密情報（α０）に署名を付加して署名値（Ｓ）を生成する。更に、撮像装置１１０では、生成した署名値（Ｓ）を秘密分散データに付加し、出力データ（Ｄｉ，Ｗｉ，Ｓ）を生成することで、署名値（Ｓ）を秘密分散データに付加した状態でサーバ装置１２０にストリーミング送信する。
【００３２】
【数２】
2018054841.tif 000004
なお、式２において、ｓｋｃａｍとは、撮像装置１１０において生成される署名鍵を指す。
【００３３】
出力データを受信したサーバ装置１２０では、出力データより署名値（Ｓ）を抽出し、Ｓｉｇｎアルゴリズムに対応するＶｒｆｙアルゴリズムを用いて、検証鍵に基づき秘密情報（α０）を演算する。また、サーバ装置１２０では、ｋ個の出力データより秘密分散データを抽出し、抽出した秘密分散データから秘密情報（α０）を演算する。そして、サーバ装置１２０では、署名値（Ｓ）から演算した秘密情報（α０）と秘密分散データから演算した秘密情報（α０）とが一致するか否かを判定する。秘密情報が一致した場合、サーバ装置１２０は、署名検証に成功したと判定し、秘密情報が一致しなかった場合、サーバ装置１２０は、署名検証に失敗したと判定する。
【００３４】
＜３．データ記録システムのハードウェア構成＞
次に、データ記録システム１００を構成する、撮像装置１１０及びサーバ装置１２０のハードウェア構成について説明する。図４は、第１の実施形態における撮像装置及びサーバ装置のハードウェア構成を示す図である。
【００３５】
図４（ａ）に示すように、撮像装置１１０は、撮像センサ４０１、ＣＰＵ（Central Processing Unit）４０２を有する。また、撮像装置１１０は、ＲＯＭ（Read Only Memory）４０３、ＲＡＭ（Random Access Memory）４０４、Ｉ／Ｆ（Interface）４０５を有する。なお、撮像装置１１０を構成する各ハードウェアは、バス４０６を介して相互に接続されている。
【００３６】
撮像センサ４０１は、受光した光を電気信号に変換し、動画像データを生成する。ＣＰＵ４０２は、ＲＯＭ４０３に格納された各種プログラム（例えば、秘密分散データ生成プログラム）を実行するコンピュータである。
【００３７】
ＲＯＭ４０３は、ＣＰＵ４０２により実行される各種プログラムや、ＣＰＵ４０２が各種プログラムを実行する際に用いるその他のプログラム、データを格納する。ＲＡＭ４０４は、ＣＰＵ４０２が各種プログラムを実行する際のワークエリアを提供する。
【００３８】
Ｉ／Ｆ４０５は、ネットワークに接続され、該ネットワークを介して、サーバ装置１２０との間でデータの送受信を行う。
【００３９】
図４（ｂ）に示すように、サーバ装置１２０は、ＣＰＵ４１１、ＲＯＭ４１２、ＲＡＭ４１３、記憶装置４１４、Ｉ／Ｆ４１５を有する。サーバ装置１２０を構成する各ハードウェアは、バス４１６を介して相互に接続されている。
【００４０】
なお、サーバ装置１２０のハードウェア構成は、撮像装置１１０のハードウェア構成と概ね同じであるため、ここでは相違点のみ説明する。撮像装置１１０のハードウェア構成との相違点は、撮像センサ４０１を有していない点と、記憶装置４１４を有している点である。
【００４１】
記憶装置４１４は、ＣＰＵ４１１により実行されるプログラムである、データ検証プログラムと、撮像装置１１０から送信される出力データとを格納する。サーバ装置１２０の場合、データ検証プログラムは、記憶装置４１４に格納され、ＲＯＭ４１２には、ＣＰＵ４１１がデータ検証プログラムを実行する際に用いるその他のプログラムが格納されているものとする。また、記憶装置４１４は、出力データを格納するデータ格納部１２２を実現する。
【００４２】
＜４．撮像装置の機能構成＞
次に、撮像装置１１０にて実現される秘密分散データ生成部１１１の詳細な機能構成について説明する。図５は、第１の実施形態における撮像装置の機能構成を示す図である。
【００４３】
図５に示すように、秘密分散データ生成部１１１は、データ入力部５０１、圧縮部５０２、データバッファ部５０３、データカウンタ部５０４、署名パラメータ生成部５０５を有する。また、秘密分散データ生成部１１１は、ハッシュ生成部５０６、パラメータ情報生成部５０７、署名部５０８、出力データ生成部５０９、データ送信部５１０を有する。
【００４４】
データ入力部５０１は、撮像センサ４０１により生成された動画像データを取得する。圧縮部５０２は、取得した動画像データを圧縮し、単位データを生成する。圧縮部５０２では、ＭＰＥＧやＭｏｔｉｏｎ−ＪＰＥＧ、Ｈ．２６４等の任意の圧縮形式により動画像データを圧縮し、単位データを生成する。
【００４５】
データバッファ部５０３は、圧縮部５０２において生成された単位データを一時的に蓄積する。
【００４６】
データカウンタ部５０４は、データバッファ部５０３に蓄積される単位データの数をカウントし、単位データの数が所定数（ｎ）に到達するごとに、署名パラメータ生成部５０５、署名部５０８に、所定数（ｎ）の単位データが処理された旨を通知する。また、データカウンタ部５０４は、データバッファ部５０３に蓄積される単位データの数をカウントし、カウント値を出力データ生成部５０９に通知する。なお、データカウンタ部５０４は、単位データの数として所定数（ｎ）をカウントするごとに、カウント値をリセットする。
【００４７】
署名パラメータ生成部５０５は、乱数生成器を有し、データカウンタ部５０４より、所定数（ｎ）の単位データが処理された旨の通知を受けると、乱数生成器により生成されたｋ個の乱数値をパラメータ（αｋ−１、αｋ−２、・・・α０）として取得する。また、署名パラメータ生成部５０５は、取得したパラメータ（αｋ−１、αｋ−２、・・・α０）をパラメータ情報生成部５０７に通知する。更に、署名パラメータ生成部５０５は、パラメータ（α０）を秘密情報として署名部５０８に通知する。
【００４８】
ハッシュ生成部５０６は、データバッファ部５０３に蓄積された単位データから、単位データ（Ｄｉ）を順次取得し、ハッシュ値（Ｈａｓｈ（Ｄｉ））を算出する。なお、ハッシュ生成部５０６で単位データ（Ｄｉ）のハッシュ値を算出するのは、撮像装置１１０における処理負荷を低減させるためである。
【００４９】
パラメータ情報生成部５０７は、算出手段の一例であり、ハッシュ生成部５０６において算出されたハッシュ値（Ｈａｓｈ（Ｄｉ））と、署名パラメータ生成部５０５において取得されたパラメータ（αｋ−１、αｋ−２、・・・α０）とを取得する。また、パラメータ情報生成部５０７は、取得したハッシュ値とパラメータとに基づき、式１を用いて、パラメータ情報（Ｗｉ）を算出する。
【００５０】
署名部５０８は、生成手段の一例であり、データカウンタ部５０４より、所定数（ｎ）の単位データが処理された旨の通知を受けると、署名パラメータ生成部５０５より出力された秘密情報（α０）を用いて、署名値（Ｓ）を生成する。なお、本実施形態において、署名値（Ｓ）の生成には、Ｓｉｇｎアルゴリズムを用いるものとして説明するが、署名値（Ｓ）の生成に用いる署名アルゴリズムは、Ｓｉｇｎアルゴリズムに限定されない。例えば、ＲＳＡアルゴリズム、ＲＳＡＳＳＡ−ＰＳＳアルゴリズムを用いても、あるいはＥｌＧａｍａｌアルゴリズムを用いてもよい。
【００５１】
出力データ生成部５０９は、出力手段の一例である。出力データ生成部５０９は、データカウンタ部５０４よりカウント値（ｉ）の通知を受けるごとに、単位データ（Ｄｉ）とパラメータ情報（Ｗｉ）とを対応付けることで、秘密分散データ（Ｄｉ，Ｗｉ）を生成する。また、出力データ生成部５０９は、生成した秘密分散データに署名値（Ｓ）を付加することで、出力データ（Ｄｉ，Ｗｉ，Ｓ）を生成する。
【００５２】
また、出力データ生成部５０９は、生成した出力データ（Ｄｉ，Ｗｉ，Ｓ）をパケット化して出力する。なお、秘密分散データをパケット化する際のパケット形式は送信形式によって決まり、送信形式がネットワークインタフェース形式の場合には、パケット形式はＲＴＳＰ形式またはＵＤＰ形式となる。また、送信形式がＵＳＢインタフェース形式の場合には、パケット形式はアイソクロナス形式となる。
【００５３】
データ送信部５１０は、出力データ生成部５０９においてパケット化された出力データ（Ｄｉ，Ｗｉ，Ｓ）を送信する。なお、データ送信部５１０では、パケット化された出力データ（Ｄｉ，Ｗｉ，Ｓ）を、コネクションレス方式でサーバ装置１２０に対してストリーミング送信する。
【００５４】
図６は、第１の実施形態における撮像装置の各部（データバッファ部５０３、ハッシュ生成部５０６、パラメータ情報生成部５０７、署名部５０８）の動作を模式的に示した図である。図６の例では、所定数ｎを"１０"、ｋ＝"５"としている。
【００５５】
図６に示すように、データバッファ部５０３に蓄積された単位データ（Ｄ１）をハッシュ生成部５０６が取得すると、ハッシュ生成部５０６では、ハッシュ値（Ｈａｓｈ（Ｄ１））を算出する。
【００５６】
また、パラメータ情報生成部５０７は、ハッシュ生成部５０６により算出されたハッシュ値（Ｈａｓｈ（Ｄ１））と、署名パラメータ生成部５０５より出力されたパラメータ（α４、α３、・・・α０）とを取得する。更に、パラメータ情報生成部５０７は、ハッシュ値（Ｈａｓｈ（Ｄ１））とパラメータ（α４、α３、・・・α０）とに基づき、パラメータ情報（Ｗ１）を算出し、出力する。
【００５７】
同様に、データバッファ部５０３に蓄積された他の単位データ（Ｄ２、Ｄ３、・・・Ｄ１０）についてもそれぞれ同様の処理が行われることで、パラメータ情報生成部５０７からは、パラメータ情報（Ｗ２、Ｗ３、・・・Ｗ１０）が出力される。
【００５８】
一方、署名部５０８は、署名パラメータ生成部５０５より出力された秘密情報（α０）を用いて署名値（Ｓ）を生成する。
【００５９】
データバッファ部５０３に蓄積された単位データ（Ｄ１、Ｄ２、・・・Ｄ１０）と、パラメータ情報生成部５０７から出力されたパラメータ情報（Ｗ１、Ｗ２、・・・Ｗ１０）とは、出力データ生成部５０９にて対応付けられる。これにより、出力データ生成部５０９では、秘密分散データ（（Ｄ１，Ｗ１）、（Ｄ２，Ｗ２）、・・・（Ｄ１０，Ｗ１０））を生成する。
【００６０】
更に、署名部５０８により算出された署名値（Ｓ）は、出力データ生成部５０９にて、秘密分散データ（（Ｄ１，Ｗ１）、（Ｄ２，Ｗ２）、・・・（Ｄ１０，Ｗ１０））それぞれに付加される。この結果、出力データ（（Ｄ１，Ｗ１，Ｓ）、（Ｄ２，Ｗ２，Ｓ）、・・・（Ｄ１０，Ｗ１０，Ｓ））が生成される。
【００６１】
このように、撮像装置１１０の各部が動作することで、出力データ生成部５０９では、生成された動画像データに基づく出力データ（秘密分散データ、署名値）を出力することができる。
【００６２】
＜５．出力データの構造＞
次に、出力データ生成部５０９により生成される出力データのデータ構造について説明する。図７は、出力データのデータ構造の一例を示す図である。
【００６３】
一般に、動画像データのフォーマットには、ＭＰＥＧやＭｏｔｉｏｎ−ＪＰＥＧ、Ｈ．２６４形式、Ｈ．２６５形式等のように、種々のフォーマットが存在する。それぞれのフォーマットは、独自のフィールドを定義するための領域を追加できる仕様になっている。本実施形態において、動画像データのフォーマットは、Ｍｏｔｉｏｎ−ＪＰＥＧを用いるものとするが、Ｈ．２６４形式やＨ．２６５形式等、Ｍｏｔｉｏｎ−ＪＰＥＧ以外のフォーマットを用いてもよいことは言うまでもない。なお、以下の出力データの構造の説明においては、説明を簡略化するため、ＪＰＥＧフォーマットを例示して説明する（ただし、Ｍｏｔｉｏｎ−ＪＰＥＧ以外のフォーマットの場合も、同様の方法により出力データが生成されるものとする）。
【００６４】
図７（ａ）は、ＪＰＥＧフォーマットを模式的に示したものである。図７（ａ）に示すように、ＪＰＥＧのフォーマットでは、ＳＯＩ（Start of Image）とＥＯＩ（End of Image）とに挟まれた領域を、１つのデータ（単位データ（Ｄｉ））として扱う。ＳＯＩとＥＯＩとの間の領域には、セグメントと呼ばれる複数の領域（ＡＰＰ０、ＤＱＴ、ＳＯＦ、ＳＯＳ等）と、画像の領域とが含まれる。
【００６５】
ここで、ＪＰＥＧフォーマットには、ＡＰＰｎと呼ばれるセグメントを追加することができる。ＡＰＰはＡｐｐｌｉｃａｔｉｏｎ  Ｄａｔａの略で、ｎは、０〜１５の整数である。
【００６６】
つまり、ＪＰＥＧフォーマットの場合、ＡＰＰ０からＡＰＰ１５までの１６のセグメントを追加して、独自のフィールドを定義することができる。このとき、定義されるフィールドの用途は限定されない。ただし、ＡＰＰ０とＡＰＰ１は、実用上は、用途が限定されている場合が多く、一般的には、ＡＰＰ２からＡＰＰ１５までの１４のセグメントに、独自のフィールドを定義することができる。
【００６７】
本実施形態では、ＡＰＰ２からＡＰＰ１５までの各セグメントのうちのＡＰＰ８とＡＰＰ９のセグメントを用いて、署名値（Ｓ）とパラメータ情報（Ｗｉ）とを埋め込む。
【００６８】
図７（ｂ）は、署名値（Ｓ）とパラメータ情報（Ｗｉ）とを埋め込んだ様子を示している。図７（ｂ）に示すように、本実施形態では、ＡＰＰ８のセグメントにパラメータ情報（Ｗｉ）を埋め込み、ＡＰＰ９のセグメントに、署名値（Ｓ）を埋め込む。
【００６９】
このように、１つのデータ（単位データ（Ｄｉ））に対応付けて、パラメータ情報（Ｗｉ）及び署名値（Ｓ）を埋め込むことで、１つのデータ（単位データ（Ｄｉ））と、パラメータ情報（Ｗｉ）と、署名値（Ｓ）とを含む出力データを生成することができる。
【００７０】
なお、図７（ｂ）の例は、一例に過ぎず、他の埋め込み方法により、１つのデータ（単位データ（Ｄｉ））と、パラメータ情報（Ｗｉ）と、署名値（Ｓ）とを含む出力データを生成するようにしてもよい。
【００７１】
例えば、図７（ｂ）の例では、圧縮部５０２が、図７（ａ）に示すフォーマットの単位データ（Ｄｉ）を生成し、出力データ生成部５０９が、ＡＰＰ８及びＡＰＰ９のセグメントを追加してパラメータ情報（Ｗｉ）と、署名値（Ｓ）とを埋め込む構成とした。しかしながら、圧縮部５０２が、予めＡＰＰ８及びＡＰＰ９のセグメントを含むフォーマットの単位データ（Ｄｉ）を生成するようにしてもよい。また、出力データ生成部５０９が、ＡＰＰ８及びＡＰＰ９のセグメントに、パラメータ情報（Ｗｉ）と、署名値（Ｓ）とを埋め込む構成としてもよい。この場合、圧縮部５０２は、ＡＰＰ８及びＡＰＰ９のセグメントに、"０"を埋め込んだ状態で、単位データ（Ｄｉ）を生成する。あるいは、圧縮部５０２は、ＡＰＰ９のセグメントに、予め署名値（Ｓ）を埋め込んだ状態で、単位データ（Ｄｉ）を生成してもよい。
【００７２】
また、図７（ｂ）の例では、図７（ａ）に示す１つのデータを、単位データ（Ｄｉ）として処理するものとして説明したが、図７（ａ）に示す１つのデータのうちの、"画像"部分を、単位データ（Ｄｉ）として処理するようにしてもよい。ただし、この場合、単位データ（Ｄｉ）以外の部分について、真正性が保証されなくなる。このため、図７（ａ）に示す１つのデータを単位データ（Ｄｉ）として処理することが望ましい。
【００７３】
また、図７（ｂ）の例では、ＡＰＰ８のセグメントにパラメータ情報（Ｗｉ）を埋め込み、ＡＰＰ９のセグメントに、署名値（Ｓ）を埋め込む構成としたが、パラメータ情報（Ｗｉ）及び署名値（Ｓ）は、他のセグメントに埋め込んでもよい。
【００７４】
更に、図７（ｂ）の例では、パラメータ情報（Ｗｉ）を埋め込んだＡＰＰ８のセグメントと、署名値（Ｓ）を埋め込んだＡＰＰ９のセグメントとを、ＡＰＰ０のセグメントの後に追加したが、追加位置はこれに限定されず、他の追加位置に追加してもよい。
【００７５】
いずれにしても、１つの画像（単位データ（Ｄｉ））と、パラメータ情報（Ｗｉ）と、署名値（Ｓ）とを含む出力データが生成されることで、以下のような効果が奏される。
・秘密分散データ（Ｄｉ，Ｗｉ）をコネクションレス方式でストリーミング送信し、署名値（Ｓ）をコネクション方式で送信する場合（つまり、別々に送信する場合）と比較して、撮像装置１１０に、コネクション型のポートを、別途、設ける必要がなくなる。このため、秘密分散データの送信において通信速度の低下を抑えることができる。
・秘密分散データ（Ｄｉ，Ｗｉ）をコネクションレス方式でストリーミング送信し、署名値（Ｓ）をコネクション方式で送信する場合と比較して、データ記憶装置１２０側で、秘密分散データ（Ｄｉ，Ｗｉ）と署名値（Ｓ）との関係を管理する必要がなくなる。
・秘密分散データ（Ｄｉ，Ｗｉ）をコネクションレス方式でストリーミング送信し、署名値（Ｓ）をコネクション方式で送信する場合と比較して、データ記憶装置１２０が、署名値（Ｓ）を受信できないといった事態を回避することができる。また、署名値（Ｓ）を受信できなかった場合の再送を考慮する必要がないため、撮像装置１１０が、送信済みの署名値（Ｓ）を一定期間保持しておくといった対策をとる必要がなくなる。この結果、撮像装置１１０に、署名値（Ｓ）を一定期間保持しておくためのストレージを配する必要がなくなり、撮像装置１１０のコストアップを回避することが可能となる。
・秘密分散データ（Ｄｉ，Ｗｉ）をコネクションレス方式でストリーミング送信し、署名値（Ｓ）をコネクション方式で送信する場合と比較して、ブロードキャスト送信が実現しやすくなる。
・特別なフォーマットを準備することなく、標準的なフォーマットを用いて、出力データを生成することができる。
【００７６】
＜６．秘密分散データ生成部によるデータ送信処理＞
次に、秘密分散データ生成部１１１によるデータ送信処理の流れについて説明する。図８は、第１の実施形態におけるデータ送信処理の流れを示すフローチャートである。撮像センサ４０１による動画像データの生成が開始されると、秘密分散データ生成部１１１では、図８に示すフローチャートを実行する。
【００７７】
ステップＳ８０１において、データカウンタ部５０４は、カウント値ｉに"０"を代入する。
【００７８】
ステップＳ８０２において、データ入力部５０１は、撮像センサ４０１により生成された動画像データを取得する。また、圧縮部５０２は、取得された動画像データを圧縮して単位データを生成し、単位データ（Ｄｉ）をデータバッファ部５０３に蓄積する。
【００７９】
ステップＳ８０３において、署名パラメータ生成部５０５は、乱数生成器により生成されたｋ個の乱数値をパラメータ（αｋ−１、αｋ−２、・・・α０）として取得する。
【００８０】
ステップＳ８０４において、署名部５０８は、署名パラメータ生成部５０５において取得されたパラメータ（α０）を秘密情報として取得し、取得した秘密情報（α０）に署名を付加することで、署名値（Ｓ）を生成する。
【００８１】
ステップＳ８０５において、ハッシュ生成部５０６は、データバッファ部５０３より単位データ（Ｄｉ）を取得し、ハッシュ値（Ｈａｓｈ（Ｄｉ））を算出する。
【００８２】
ステップＳ８０６において、パラメータ情報生成部５０７は、ハッシュ値（Ｈａｓｈ（Ｄｉ））と、ｋ個のパラメータ（αｋ−１、αｋ−２、・・・α０）とを取得する。また、パラメータ情報生成部５０７は、取得したハッシュ値（Ｈａｓｈ（Ｄｉ））と、ｋ個のパラメータ（αｋ−１、αｋ−２、・・・α０）とを用いて、パラメータ情報（Ｗｉ）を算出する。
【００８３】
ステップＳ８０７において、出力データ生成部５０９は、データバッファ部５０３に蓄積された単位データ（Ｄｉ）とパラメータ情報生成部５０７により算出されたパラメータ情報（Ｗｉ）とを対応付けることで、秘密分散データを生成する。また、出力データ生成部５０９は、生成した秘密分散データに、署名部５０８にて算出された署名値（Ｓ）を付加することで出力データを生成し、生成した出力データをパケット化してデータ送信部５１０に出力する。更に、データ送信部５１０は、出力データ生成部５０９より出力された出力データを、ネットワークを介してサーバ装置１２０にストリーミング送信する。
【００８４】
ステップＳ８０８において、データカウンタ部５０４は、所定数（ｎ）の単位データが処理されたか否かを判定する。
【００８５】
ステップＳ８０８において、所定数（ｎ）の単位データが処理されていないと判定した場合には、ステップＳ８０９に進む。ステップＳ８０９において、データカウンタ部５０４は、ｉをインクリメントし、ステップＳ８１０に進む。
【００８６】
ステップＳ８１０において、データバッファ部５０３に、次の単位データ（Ｄｉ）が蓄積されると、ステップＳ８０５に戻る。これにより、所定数（ｎ）の単位データについて、出力データがストリーミング送信されるまで、ステップＳ８０５からステップＳ８１０までの処理が繰り返されることになる。
【００８７】
一方、ステップＳ８０８において、所定数（ｎ）の単位データが処理されたと判定した場合には、データカウンタ部５０４は、所定数（ｎ）の単位データが処理された旨を、署名パラメータ生成部５０５、署名部５０８に通知し、ステップＳ８１１に進む。
【００８８】
ステップＳ８１１において、データ送信処理を終了するか否かを判定する。撮像センサ４０１により生成された動画像データの入力が継続している場合には、データ送信処理を終了せずに、ステップＳ８０１に戻る。この場合、データカウンタ部５０４により、カウント値ｉがリセットされ（ステップＳ８０１）、署名パラメータ生成部５０５にて新たにｋ個のパラメータが取得され（ステップＳ８０３）、署名部５０８にて新たな署名値（Ｓ）が生成される（ステップＳ８０４）。これにより、次の所定数（ｎ）の単位データについての、出力データがストリーミング送信されることになる。
【００８９】
一方、動画像データの入力が停止したと判定した場合には、データ送信処理を終了する。
【００９０】
＜７．サーバ装置の機能構成＞
次に、サーバ装置１２０にて実現されるデータ検証部１２１の詳細な機能構成について説明する。図９は、第１の実施形態におけるサーバ装置の機能構成を示す図である。
【００９１】
図９に示すように、データ検証部１２１は、データ受信部９０１、格納処理部９０２、署名値抽出部９０３、秘密分散データ抽出部９０４、署名値演算部９０５、署名値検証部９０６を有する。
【００９２】
データ受信部９０１は、受信手段の一例であり、撮像装置１１０より送信された、出力データを受信する。出力データには、単位データ（Ｄｉ）と、該単位データに対応付けられたパラメータ情報（Ｗｉ）との組を含む秘密分散データと、該秘密分散データに付加された署名値（Ｓ）とが含まれる。
【００９３】
格納処理部９０２は、データ受信部９０１において受信された出力データをデータ格納部１２２に格納する。
【００９４】
署名値抽出部９０３は、データ格納部１２２に格納された出力データのいずれかを読み出し、読み出した出力データに含まれる署名値（Ｓ）を抽出する。また、署名値抽出部９０３は、抽出した署名値（Ｓ）を、署名値検証部９０６に通知する。
【００９５】
秘密分散データ抽出部９０４は、署名検証の成否を判定する第１の改竄判定手段の一例である。秘密分散データ抽出部９０４は、データ格納部１２２に出力データがｋ個以上格納されたか否かを判定し、ｋ個未満であると判定した場合に、署名検証に失敗したと判定する。
【００９６】
また、秘密分散データ抽出部９０４は、データ格納部１２２に出力データがｋ個以上格納されたと判定した場合には、データ格納部１２２よりｋ個の出力データを読み出し、読み出した出力データより、ｋ個の秘密分散データを抽出する。更に、秘密分散データ抽出部９０４は、抽出したｋ個の秘密分散データを、署名値演算部９０５に通知する。
【００９７】
署名値演算部９０５は、第１の演算手段の一例であり、秘密分散データ抽出部９０４より通知されたｋ個の秘密分散データに基づいて、下式を用いて秘密情報（α０）を演算し、演算した秘密情報（α０）を署名値検証部９０６に通知する。
【００９８】
【数３】
2018054841.tif 000005
署名値検証部９０６は、第２の演算手段の一例であり、署名値抽出部９０３より署名値（Ｓ）の通知を受けると、ｖｒｆｙアルゴリズムを用いて、検証鍵ｖｋｃａｍに基づき秘密情報（α０）を演算する。
【００９９】
【数４】
2018054841.tif 000006
また、署名値検証部９０６は、署名検証の成否を判定する第２の改竄判定手段の一例であり、署名値演算部９０５より通知された秘密情報（α０）と、署名値（Ｓ）に基づいてｖｒｆｙアルゴリズムを用いて演算した秘密情報（α０）とを比較する。比較の結果、両者が一致していれば、署名値検証部９０６では、署名検証に成功した（秘密分散データが改竄されていない）と判定する。一方、両者が一致していなければ、署名値検証部９０６では、署名検証に失敗した（秘密分散データが改竄されている）と判定する。
【０１００】
なお、秘密分散データ抽出部９０４及び署名値検証部９０６における署名検証の判定結果は、例えば、データ格納部１２２に格納されてもよい。これにより、サーバ装置１２０では、署名検証に成功したと判定された秘密分散データに含まれる単位データのみを、外部の端末にストリーミング送信することができる。この結果、外部の端末（例えば、ネットワークを介して接続される情報端末）では、真正性が保証された動画像データのみを再生することができる。
【０１０１】
＜８．データ検証部によるデータ検証処理＞
次に、データ検証部１２１によるデータ検証処理の流れについて説明する。図１０は、第１の実施形態におけるデータ検証処理の流れを示すフローチャートである。サーバ装置１２０が、撮像装置１１０と通信可能に接続されることで、図１０に示すフローチャートが実行される。
【０１０２】
ステップＳ１００１において、データ受信部９０１は、撮像装置１１０より送信された出力データを受信する。また、格納処理部９０２は、データ受信部９０１が受信した出力データをデータ格納部１２２に格納する。
【０１０３】
ステップＳ１００２において、データ受信部９０１は、所定時間が経過したか否かを判定する。ステップＳ１００２において、所定時間が経過していないと判定した場合には、ステップＳ１００１に戻る。
【０１０４】
一方、ステップＳ１００２において、所定時間が経過したと判定した場合には、ステップＳ１００３に進む。ステップＳ１００３において、秘密分散データ抽出部９０４は、データ格納部１２２にｋ個以上の出力データが格納されたか否かを判定する。
【０１０５】
ステップＳ１００３において、ｋ個以上の出力データが格納されていないと判定した場合には、ステップＳ１００９に進む。ステップＳ１００９において、秘密分散データ抽出部９０４は、署名検証に失敗したと判定する。
【０１０６】
一方、ステップＳ１００３において、ｋ個以上の出力データが格納されたと判定した場合には、ステップＳ１００４に進む。ステップＳ１００４において、署名値抽出部９０３は、データ格納部１２２に格納された出力データのうちのいずれかの出力データを読み出し、読み出した出力データより署名値（Ｓ）を抽出し、署名値検証部９０６に通知する。
【０１０７】
ステップＳ１００５において、署名値検証部９０６は、署名値抽出部９０３より署名値（Ｓ）の通知を受けると、ｖｒｆｙアルゴリズム（式４）を用いて、検証鍵ｖｋｃａｍに基づき秘密情報（α０）を演算する。
【０１０８】
ステップＳ１００６において、秘密分散データ抽出部９０４は、データ格納部１２２より、ｋ個の出力データを読み出し、読み出した出力データに含まれるｋ個の秘密分散データを抽出し、署名値演算部９０５に通知する。
【０１０９】
ステップＳ１００７において、署名値演算部９０５は、秘密分散データ抽出部９０４よりｋ個の秘密分散データについて通知を受けると、式３を用いて秘密情報（α０）を演算し、署名値検証部９０６に通知する。
【０１１０】
ステップＳ１００８において、署名値検証部９０６は、署名値演算部９０５より通知された秘密情報（α０）と、署名値（Ｓ）に基づいてｖｒｆｙアルゴリズムを用いて演算した秘密情報（α０）とを比較する。比較の結果、両者が一致していなければ、ステップＳ１００９に進み、署名検証に失敗した（秘密分散データが改竄されている）と判定する。
【０１１１】
一方、ステップＳ１００８における比較の結果、両者が一致していれば、ステップＳ１０１０に進み、署名検証に成功した（秘密分散データが改竄されていない）と判定する。
【０１１２】
ステップＳ１０１１において、データ受信部９０１は、撮像装置１１０との通信が継続しているか否かを判定し、通信が継続していると判定した場合には、ステップＳ１００１に戻る。一方、通信が切断したと判定した場合には、データ格納部１２２に既に格納されている出力データのうち、未処理の出力データに含まれる秘密分散データについて署名検証を行ったうえで、データ検証処理を終了する。
【０１１３】
＜９．適用例＞
次に、データ記録システム１００の適用例について説明する。図１１は、データ記録システムの適用例を示す図である。図１１の例は、第１の実施形態における撮像装置１１０を、原子力発電所等の重要施設に設置し、サーバ装置１２０を、複数の企業（企業Ａ〜企業Ｃ）に設置した様子を示している。
【０１１４】
原子力発電所等の重要施設の場合、２４時間稼働するため、当該施設に設置される撮像装置は、２４時間連続して、真正性が保証される動画像データをストリーミング送信する必要がある。
【０１１５】
これに対して、第１の実施形態における撮像装置１１０の場合、撮像装置１１０における処理負荷が低いため、上記のようなニーズにも対応することができる。第１の実施形態における撮像装置１１０の場合、単位データに署名を付加するわけではなく、秘密情報（α０）に署名を付加するため、署名の付加に要する処理負荷が低いからである。更に、第１の実施形態における撮像装置１１０の場合、単位データをハッシュ化してパラメータ情報を生成するため、単位データの処理に要する処理負荷も低いからである。
【０１１６】
また、図１１に示すように、出力データ（秘密分散データ及び署名値）が送信されることで、データ欠損が発生した場合でも、各企業では、署名検証を行うことができ、動画像データについて真正性を保証することができる。また、複数の企業に同報送信されるため、特定の企業が、真正性が保証された動画像データを隠蔽するといった事態を回避することができる。
【０１１７】
＜１０．まとめ＞
以上の説明から明らかなように、本実施形態に係るデータ記録システムでは、
・撮像装置が、生成した動画像データから、ｎ個の単位データ（Ｄｉ）を順次取得し、取得した単位データ（Ｄｉ）に基づいて、ｋ個（１≦ｋ＜ｎ）の乱数値が含まれる（ｋ−１）次の多項式を満たすパラメータ情報（Ｗｉ）を算出する。
・撮像装置が、秘密分散データがｋ個集まることで演算可能となる秘密情報（α０）に、署名を付加することで署名値（Ｓ）を生成する。
・撮像装置が、取得した単位データ（Ｄｉ）とパラメータ情報（Ｗｉ）との組を含む秘密分散データに、署名値（Ｓ）を付加することで出力データを生成し、生成した出力データをサーバ装置に送信する。
【０１１８】
これにより、サーバ装置では、撮像装置が送信したｎ個の出力データのうち、ｋ個の出力データを受信すれば、当該ｋ個の出力データに含まれる秘密分散データに基づいて秘密情報を演算することができる。つまり、（ｎ−ｋ）個のデータ欠損を許容することが可能となり、実用性に欠けるといった問題を解消することができる。
【０１１９】
また、出力データに含まれる署名値から演算される秘密情報と比較することで、署名検証を行い、秘密分散データの真正性を保証することができる。このため、署名値を別途送信する場合と比較して、署名値の送信による影響（通信速度の低下、署名値を保持するためのストレージの追加、秘密分散データと署名値とを関連付けるための処理等の影響）を抑え、実用性を向上させることができる。
【０１２０】
このように、第１の実施形態によれば、データの真正性を保証可能なデータ記録システムにおいて、実用性を向上させることができる。
【０１２１】
［第２の実施形態］
上記第１の実施形態では、出力データを生成するにあたり、各秘密分散データに、署名値を付加する構成とした。しかしながら、各秘密分散データに署名値を付加する必要はなく、サーバ装置がｋ個以上の出力データを受信した場合に、少なくとも１つの出力データに、署名値が含まれていれば足りる。
【０１２２】
そこで、本実施形態では、所定数（ｎ）の出力データを生成する際に、１個目の出力データから（ｋ−１）個目までの出力データについては、署名値を付加せず、ｋ個目以降の出力データから署名値を付加するようにする。
【０１２３】
これにより、例えば、所定数（ｎ）の出力データの生成と、署名値の生成とを並行して行う構成とすることが可能となり、（ｋ−１）個目の出力データが生成されるまでの間に、署名値の生成が完了すれば足りることになる。この結果、署名値の生成が完了するまで、１個目の出力データの生成を開始することができないといった事態を回避することが可能となり、出力データの生成において遅延が発生する可能性を低減させることができる。以下、第２の実施形態について、上記第１の実施形態との相違点を中心に説明する。
【０１２４】
＜１．撮像装置の機能構成＞
はじめに、第２の実施形態における撮像装置の機能構成について説明する。図１２は、第２の実施形態における撮像装置の機能構成を示す図である。図５との相違点は、署名部５０８の代わりに、署名値生成部１２０１と署名値付加部１２０２とを有する点である。
【０１２５】
署名値生成部１２０１は、データカウンタ部５０４より、所定数（ｎ）の単位データが処理された旨の通知を受けると、署名パラメータ生成部５０５より出力された秘密情報（α０）を用いて、署名値（Ｓ）を生成する。署名値生成部１２０１は、生成した署名値（Ｓ）を、署名値付加部１２０２に通知する。
【０１２６】
署名値付加部１２０２は、署名値生成部１２０１より署名値（Ｓ）の通知を受けると、パラメータ情報生成部５０７を監視し、パラメータ情報生成部５０７が、ｋ個目のパラメータ情報（Ｗｋ−１）を生成したか否かを判定する。具体的には、データカウンタ部５０４のカウント値ｉを取得し、カウント値ｉが（ｋ−１）に到達したか否かを判定する。パラメータ情報生成部５０７が、ｋ個目のパラメータ情報（Ｗｋ）を生成していないと判定した場合（カウント値が（ｋ−１）未満の場合）、署名値付加部１２０２は、ｋ個目のパラメータ情報（Ｗｋ）を生成したと判定するまで待機する。一方、パラメータ情報生成部５０７が、ｋ個目のパラメータ情報（Ｗｋ）を生成したと判定した場合には、以降、署名値付加部１２０２は、パラメータ情報生成部５０７がパラメータ情報（Ｗｉ）を生成するごとに、署名値（Ｓ）を出力データ生成部５０９に通知する。なお、パラメータ情報生成部５０７は、パラメータ情報生成部５０７がｎ個目のパラメータ情報（Ｗｎ−１）を生成するまで、出力データ生成部５０９への署名値（Ｓ）の通知を継続する。
【０１２７】
出力データ生成部５０９は、パラメータ情報（Ｗｉ）の通知を受けた際、署名値（Ｓ）の通知を受けなかった場合には、単位データ（Ｄｉ）とパラメータ情報（Ｗｉ）とを対応付けることで出力データを生成する。一方、出力データ生成部５０９は、パラメータ情報（Ｗｉ）の通知を受けた際、署名値（Ｓ）の通知を受けた場合には、単位データ（Ｄｉ）とパラメータ情報（Ｗｉ）との組を含む秘密分散データに署名値（Ｓ）を付加することで出力データを生成する。
【０１２８】
＜２．署名値の通知タイミング＞
続いて、署名値付加部１２０２による署名値（Ｓ）の通知タイミングについて説明する。図１３は、署名値の通知タイミングの一例を示す図である。
【０１２９】
図１３に示すように、ハッシュ生成部５０６によるハッシュ値の生成、パラメータ情報生成部５０７によるパラメータ情報（Ｗｉ）の生成、出力データ生成部５０９による出力データの生成と、署名値生成部１２０１による署名値（Ｓ）の生成とは並行して行われる。
【０１３０】
具体的には、ＣＰＵ４０２のマルチスレッド機能を用いることで、ハッシュ生成部５０６によるハッシュ値の生成、パラメータ情報（Ｗｉ）の生成、出力データ生成部５０９による出力データの生成と、署名値（Ｓ）の生成とは並行して行われる。そして、署名値付加部１２０２は、ｋ個目のパラメータ情報（Ｗｋ−１）が生成されたタイミングで、署名値（Ｓ）を出力データ生成部５０９に通知する。以降、パラメータ情報（Ｗｉ）が生成されるごとに、署名値（Ｓ）を出力データ生成部５０９に通知する。
【０１３１】
この結果、図１３に示すように、１個目から（ｋ−１）個目までの出力データには、署名値（Ｓ）が付加されず、ｋ個目からｎ個目までの出力データには、署名値（Ｓ）が付加されることになる。
【０１３２】
このように、ｋ個目からｎ個目までの出力データに署名値（Ｓ）を付加することで、サーバ装置１２０では、任意のケースにおいて、署名値検証部９０６が署名検証を行うことが可能となる（例えば、以下のケース参照）。
・仮に、１個目の出力データ〜（ｋ−１）個目の出力データのみをサーバ装置１２０が受信したとする。この場合、受信した出力データのいずれにも、署名値（Ｓ）が含まれていないことになる。しかしながら、このようなケースでは、署名値検証部９０６が署名値（Ｓ）による署名検証を行う以前に、そもそも、（ｋ−１）個の秘密分散データからは、秘密情報（α０）を演算することができない。つまり、出力データに署名値（Ｓ）が含まれているか否かに関わらず、秘密分散データ抽出部９０４にて検証失敗と判定することになる。
・仮に、１個目の出力データ〜ｋ個目の出力データをサーバ装置１２０が受信したとする。この場合、ｋ個目の出力データに含まれる署名値（Ｓ）を用いて、署名値検証部９０６が署名検証を行うことができる。
・仮に、１個目の出力データ〜（ｋ−１）個目の出力データと、（ｋ＋１）個目からｎ個目までの出力データのうちの少なくともいずれか１つの出力データとを、サーバ装置１２０が受信したとする。この場合、（ｋ＋１）個目からｎ個目までの出力データのうちの少なくともいずれか１つの出力データに含まれる署名値（Ｓ）を用いて、署名値検証部９０６が署名検証を行うことができる。
【０１３３】
このように、ｋ個目からｎ個目までの出力データに署名値（Ｓ）を付加することで、ｋ個の出力データをサーバ装置１２０が受信した場合に、少なくとも１つの出力データには署名値（Ｓ）が含まれていることになる。この結果、サーバ装置１２０では、署名値検証部９０６が署名検証を行うことが可能となる。
【０１３４】
また、１個目から（ｋ−１）個目までの出力データの生成に要する時間を利用して、署名値生成部１２０１が署名値（Ｓ）を生成する構成とした場合、以下のような利点がある。
【０１３５】
すなわち、仮に、１個目の出力データに署名値（Ｓ）を含める構成とした場合、出力データ生成部５０９は、署名値（Ｓ）の生成が完了するまで、１個目の出力データを生成することができない。このため、署名値（Ｓ）の生成に数百［ｍｓｅｃ］の時間を要する場合には、出力データをｎ回生成するごとに１回の頻度で、出力データのストリーミング送信が遅延することになる。この結果、サーバ装置１２０にて出力データをリアルタイムに表示していた場合、ｎフレームに１回の頻度で、画像の更新が遅延することになる。
【０１３６】
一方で、１個目から（ｋ−１）個目までの出力データの生成に要する時間を利用して、署名値生成部１２０１が署名値（Ｓ）を生成する構成とした場合には、このような遅延の発生を回避することができる。
【０１３７】
なお、図１３の例は、出力データを３０［ｆｐｓ］の送信レートで連続的にストリーミング送信する場合を示しており、ｎ＝１２０、ｋ＝６０としている。この場合、ｋ個目のパラメータ情報（Ｗｋ−１）が生成されるまでに、２０００［ｍｓｅｃ］程度の時間を要することになる。上述したように、署名値（Ｓ）の生成は、数百［ｍｓｅｃ］であることから、図１３の例の場合、ｋ個目の出力データの生成が、署名値（Ｓ）の生成に起因して遅延するといった事態が発生しないことは明らかである。
【０１３８】
＜３．秘密分散データ生成部によるデータ送信処理＞
次に、第２の実施形態における、秘密分散データ生成部１１１によるデータ送信処理の流れについて説明する。図１４は、第２の実施形態におけるデータ送信処理の流れを示すフローチャートである。図８に示したフローチャートと同じ工程については、同じ符号を付すこととし、ここでは説明を省略する。図８との相違点は、ステップＳ１４０１、Ｓ１４０２〜Ｓ１４０４である。
【０１３９】
ステップＳ１４０１において、署名値生成部１２０１は、署名パラメータ生成部５０５において取得されたパラメータ（α０）を秘密情報として取得し、署名値（Ｓ）を生成する処理を開始する。
【０１４０】
ステップＳ１４０２において、署名値付加部１２０２は、署名値生成部１２０１による署名値（Ｓ）の生成が完了したか否かを判定する。
【０１４１】
ステップＳ１４０２において、署名値生成部１２０１による署名値（Ｓ）の生成が完了していないと判定した場合には、ステップＳ１４０４に進む。
【０１４２】
一方、ステップＳ１４０２において、署名値生成部１２０１による署名値（Ｓ）の生成が完了したと判定した場合には、ステップＳ１４０３に進む。
【０１４３】
ステップＳ１４０３において、署名値付加部１２０２は、パラメータ情報生成部５０７を監視し、ｋ個目のパラメータ情報（Ｗｋ−１）を生成したか否かを判定する。
【０１４４】
ステップＳ１４０３において、ｋ個目のパラメータ情報（Ｗｋ−１）を生成していないと判定した場合には、ステップＳ１４０４に進む。ステップＳ１４０４において、出力データ生成部５０９は、データバッファ部５０３に蓄積された単位データ（Ｄｉ）とパラメータ情報生成部５０７より出力されたパラメータ情報（Ｗｉ）とを対応付けることで、秘密分散データを生成する。また、出力データ生成部５０９は、生成した秘密分散データを出力データとしてパケット化する。更に、データ送信部５１０は、パラメータ情報生成部５０７よりパケット化された出力データを、ネットワークを介してサーバ装置１２０にストリーミング送信する。
【０１４５】
一方、ステップＳ１４０３において、ｋ個目のパラメータ情報（Ｗｋ−１）を生成したと判定した場合には、ステップＳ８０７に進む。この場合の処理は、図８のステップＳ８０７の処理と同じである。
【０１４６】
＜５．まとめ＞
以上の説明から明らかなように、本実施形態に係るデータ記録システムでは、上記第１の実施形態の構成に加え、
・撮像装置が、署名値（Ｓ）の生成を、パラメータ情報（Ｗｉ）の算出と並行して行う。
・撮像装置が、ｋ個目以降の出力データの生成に際して、署名値（Ｓ）を付加する。
【０１４７】
これにより、第２の実施形態によれば、上記第１の実施形態と同様の効果を享受するとともに、出力データをストリーミング送信する際の遅延を回避することが可能になる。
【０１４８】
［第３の実施形態］
上記第２の実施形態では、署名値（Ｓ）の生成に起因して出力データのストリーミング送信に遅延が発生するのを回避するために、署名値（Ｓ）の生成を、パラメータ情報（Ｗｉ）の算出と並行して行うようにした。また、ｋ個目以降の出力データの生成に際して、署名値（Ｓ）を付加する構成とした。
【０１４９】
これに対して、第３の実施形態では、更に、単位データ（Ｄｉ）に基づいてハッシュ値（Ｈａｓｈ（Ｄｉ））を算出する際のハッシュ化処理に起因して出力データのストリーミング送信に遅延が発生するのを回避する。以下、第３の実施形態について、上記第２の実施形態との相違点を中心に説明する。
【０１５０】
＜１．出力データの生成タイミング＞
はじめに、本実施形態における出力データ生成部５０９による、出力データの生成タイミングについて説明する。図１５は、出力データの生成タイミングを説明するための図である。
【０１５１】
図１５に示すように、出力データ生成部５０９では、パラメータ情報生成部５０７によるパラメータ情報（Ｗｉ）の生成が完了する前に、出力データの生成を開始する。パラメータ情報生成部５０７によるパラメータ情報（Ｗｉ）の生成に際しては、まず、ハッシュ生成部５０６による単位データ（Ｄｉ）のハッシュ化処理が行われる。このため、出力データ生成部５０９がデータバッファ部５０３から単位データ（Ｄｉ）を読み出すのに要する時間よりも、パラメータ情報生成部５０７がパラメータ情報（Ｗｉ）を出力データ生成部５０９に通知するまでに要する時間の方が長くなる。
【０１５２】
そこで、第３の実施形態では、出力データ生成部５０９が、１個目の出力データを、単位データ（Ｄｉ）にパラメータ情報（Ｗｉ）を対応付けることなく生成する。また、出力データ生成部５０９が、２個目以降の出力データについて、単位データ（Ｄｉ）にパラメータ情報（Ｗｉ）を対応付けて生成する。これにより、１個目の出力データをストリーミング送信するまでの時間を短縮することができる。
【０１５３】
＜２．秘密分散データ生成部によるデータ送信処理＞
次に、第３の実施形態における秘密分散データ生成部１１１によるデータ送信処理の流れについて説明する。図１６は、第３の実施形態におけるデータ送信処理の流れを示すフローチャートである。なお、図１４に示したフローチャートと同じ工程については、同じ符号を付すこととし、ここでは説明を省略する。図１４との相違点は、ステップＳ１６０１、Ｓ１６０２〜Ｓ１６０３、Ｓ１６０４〜Ｓ１６０６である。
【０１５４】
ステップＳ１６０１において、出力データ生成部５０９は、データバッファ部５０３より単位データ（Ｄｉ）を取得し、パケット化して出力する。また、データ送信部５１０は、出力データ生成部５０９より出力された出力データを、ネットワークを介してサーバ装置１２０にストリーミング送信する。
【０１５５】
ステップＳ１６０２において、データカウンタ部５０４は、カウント値ｉをインクリメントする。
【０１５６】
ステップＳ１６０３において、データバッファ部５０３に、次の単位データ（Ｄｉ）が蓄積されると、ステップＳ１４０２に進む。
【０１５７】
ステップＳ１６０４において、出力データ生成部５０９は、データバッファ部５０３に蓄積された単位データ（Ｄｉ）とパラメータ情報生成部５０７により生成されたパラメータ情報（Ｗｉ−１）とを対応付けることで、秘密分散データを生成する。また、出力データ生成部５０９は、生成した秘密分散データを出力データとしてパケット化する。更に、データ送信部５１０は、パラメータ情報生成部５０７よりパケット化された出力データを、ネットワークを介してサーバ装置１２０にストリーミング送信する。
【０１５８】
ステップＳ１６０５において、出力データ生成部５０９は、データバッファ部５０３に蓄積された単位データ（Ｄｉ）とパラメータ情報生成部５０７により生成されたパラメータ情報（Ｗｉ−１）とを対応付けることで、秘密分散データを生成する。また、出力データ生成部５０９は、生成した秘密分散データに、署名部５０８にて算出された署名値（Ｓ）を付加することで出力データを生成し、生成した出力データをパケット化して出力する。更に、データ送信部５１０は、出力データ生成部５０９より出力された出力データを、ネットワークを介してサーバ装置１２０にストリーミング送信する。
【０１５９】
ステップＳ１６０６において、パラメータ情報生成部５０７は、所定数（ｎ）のパラメータ情報を生成したか否かを判定する。
【０１６０】
ステップＳ１６０６において、所定数（ｎ）のパラメータ情報を生成していないと判定した場合には、ステップＳ８０５に戻る。一方、ステップＳ１６０６において、所定数（ｎ）のパラメータ情報を生成したと判定した場合には、ステップＳ８１１に進む。
【０１６１】
＜３．サーバ装置の機能構成＞
次に、サーバ装置１２０にて実現されるデータ検証部１２１の詳細な機能構成について説明する。図１７は、第３の実施形態におけるサーバ装置の機能構成を示す図である。
【０１６２】
図１７に示す機能構成のうち、図９に示した機能構成との相違点は、署名値演算部１７０１である。図１７に示すように署名値演算部１７０１は、データバッファを有する。第３の実施形態においてサーバ装置１２０が受信する出力データから抽出される秘密分散データは、（Ｄｉ，Ｗｉ−１）の組（ｉ個目の単位データと、（ｉ−１）個目のパラメータ情報との組）になっている。このため、署名値演算部１７０１では、秘密情報（α０）の演算に際して、連続する２つの秘密分散データ（（Ｄｉ，Ｗｉ−１）と（Ｄｉ＋１，Ｗｉ））をデータバッファに保持し、（Ｄｉ，Ｗｉ）の組の秘密分散データを再生成する必要があるからである。
【０１６３】
＜４．データ検証部によるデータ検証処理＞
次に、第３の実施形態におけるデータ検証部１２１によるデータ検証処理の流れについて説明する。図１８は、第３の実施形態におけるデータ検証処理の流れを示すフローチャートである。なお、図１０に示したデータ検証処理と同様の工程については同じ符号を付し、ここでは説明を省略する。図１０との相違点は、ステップＳ１８０１及びステップＳ１８０２〜Ｓ１８０４である。
【０１６４】
ステップＳ１８０１において、署名値抽出部９０３は、データ格納部１２２に格納された出力データのうち、ｋ個目の出力データを（あるいは、ｋ個目以降のいずれかの出力データ）読み出し、読み出した出力データに含まれる署名値（Ｓ）を抽出する。
【０１６５】
ステップＳ１８０２において、秘密分散データ抽出部９０４は、データ格納部１２２より、（ｋ＋１）個の出力データを読み出す。また、秘密分散データ抽出部９０４は、読み出した出力データに含まれる１個の単位データ（Ｄ０）及びｋ個の秘密分散データ（（Ｄ１，Ｗ０）〜（Ｄｋ，Ｗｋ−１））を抽出し、署名値演算部９０５に通知する。
【０１６６】
ステップＳ１８０３において、署名値演算部１７０１は、秘密分散データ抽出部９０４より単位データ及び秘密分散データについて通知を受けると、連続する秘密分散データに基づいて、ｋ個の秘密分散データを再生成する。
【０１６７】
ステップＳ１８０４において、署名値演算部１７０１は、再生成したｋ個の秘密分散データについて、式３を用いて秘密情報（α０）を演算する。
【０１６８】
＜５．まとめ＞
以上の説明から明らかなように、本実施形態に係るデータ記録システムでは、上記第２の実施形態の構成に加え、
・撮像装置が、１個目のパラメータ情報を生成する前に、１個目の出力データを生成する。
・撮像装置が、２個目以降の出力データとして、（Ｄｉ，Ｗｉ−１）の組を含む秘密分散データに基づいて出力データを生成する。
・サーバ装置が、（Ｄｉ，Ｗｉ）の組を含む秘密分散データを再生成したうえで、署名検証を行う。
【０１６９】
これにより、上記第１及び第２の実施形態と同様の効果を享受するとともに、更に、ハッシュ値（Ｈａｓｈ（Ｄｉ））を算出する際のハッシュ化処理に起因して出力データのストリーミング送信に遅延が発生するといった事態を回避することができる。
【０１７０】
［その他の実施形態］
上記第１乃至第３の実施形態では、撮像装置１１０において生成される動画像データに対して、秘密分散プロトコルを適用する場合について説明した。しかしながら、秘密分散プロトコルを適用する対象は、動画像データに限定されない。音声データや温度データ等、任意の時系列データに対して適用することができる。
【０１７１】
また、上記第１乃至第２の実施形態では、ハッシュ生成部５０６が単位データ（Ｄｉ）のハッシュ値を算出し、パラメータ情報生成部５０７が、ハッシュ生成部５０６で算出されたハッシュ値に基づいて、パラメータ情報（Ｗｉ）を算出する構成とした。しかしながら、パラメータ情報生成部５０７は、単位データ（Ｄｉ）に基づいて、直接、パラメータ情報（Ｗｉ）を算出するように構成してもよい。
【０１７２】
また、上記第２乃至第３の実施形態では、署名値付加部１２０２による署名値（Ｓ）の通知タイミングを、ｋ個目のパラメータ情報（Ｗｋ−１）が生成されたタイミングとした。しかしながら、署名値付加部１２０２による署名値（Ｓ）の通知タイミングはこれに限定されず、署名値（Ｓ）の生成が完了したタイミングであってもよい。
【０１７３】
また、上記第３の実施形態は、上記第２の実施形態に組み合わせるものとして説明したが、上記第１の実施形態と組み合わせてもよい。
【０１７４】
また、上記第１乃至第３の実施形態では、ＣＰＵ４０２が秘密分散データ生成プログラムを実行することで、秘密分散データ生成部を実現するものとして説明した。しかしながら、秘密分散データ生成部は、例えば、ＧＰＵ（Graphics Processing Unit）を用いて実現してもよい。
【０１７５】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせなど、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０１７６】
１００                        ：データ記録システム
１１０                        ：データ生成装置（撮像装置）
１１１                        ：秘密分散データ生成部
１２０                        ：データ記憶装置（サーバ装置）
１２１                        ：データ検証部
１２２                        ：データ格納部
５０１                        ：データ入力部
５０２                        ：圧縮部
５０３                        ：データバッファ部
５０４                        ：データカウンタ部
５０５                        ：署名パラメータ生成部
５０６                        ：ハッシュ生成部
５０７                        ：パラメータ情報生成部
５０８                        ：署名部
５０９                        ：出力データ生成部
５１０                        ：データ送信部
９０１                        ：データ受信部
９０２                        ：格納処理部
９０３                        ：署名値抽出部
９０４                        ：秘密分散データ抽出部
９０５                        ：署名値演算部
９０６                        ：署名値検証部
１２０１                      ：署名値生成部
１２０２                      ：署名値付加部
１７０１                      ：署名値演算部
【先行技術文献】
【特許文献】
【０１７７】
【特許文献１】特開２０１５−０８８８５５号公報
【図１】
2018054841.tif 000007
【図２】
2018054841.tif 000008
【図３】
2018054841.tif 000009
【図４】
2018054841.tif 000010
【図５】
2018054841.tif 000011
【図６】
2018054841.tif 000012
【図７】
2018054841.tif 000013
【図８】
2018054841.tif 000014
【図９】
2018054841.tif 000015
【図１０】
2018054841.tif 000016
【図１１】
2018054841.tif 000017
【図１２】
2018054841.tif 000018
【図１３】
2018054841.tif 000019
【図１４】
2018054841.tif 000020
【図１５】
2018054841.tif 000021
【図１６】
2018054841.tif 000022
【図１７】
2018054841.tif 000023
【図１８】
2018054841.tif 000024