JP6759818B2 - Data generators, data recording systems and programs - Google Patents
Data generators, data recording systems and programs Download PDFInfo
- Publication number
- JP6759818B2 JP6759818B2 JP2016150750A JP2016150750A JP6759818B2 JP 6759818 B2 JP6759818 B2 JP 6759818B2 JP 2016150750 A JP2016150750 A JP 2016150750A JP 2016150750 A JP2016150750 A JP 2016150750A JP 6759818 B2 JP6759818 B2 JP 6759818B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- signature
- unit
- acquired data
- parameter information
- 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.)
- Active
Links
Images
Description
本発明は、データ生成装置、データ記録システム及びプログラムに関する。 The present invention relates to a data generator, a data recording system and a program.
従来より、撮像装置等のデータ生成装置と、該データ生成装置において生成された時系列のデータ(動画像データ等)を受信して記憶するデータ記憶装置(サーバ装置等)と、を組み合わせてなるデータ記録システムが知られている。当該データ記録システムでは、データの真正性を保証するために、時系列のデータに対して署名を付加する場合がある。 Conventionally, a data generation device such as an imaging device and a data storage device (server device or the like) that receives and stores time-series data (moving image data or the like) generated by the data generation device are combined. Data recording systems are known. In the data recording system, a signature may be added to the time series data in order to guarantee the authenticity of the data.
ここで、データ記録システムにおいて、時系列のデータに対して署名を付加する方法としては、例えば、データ記憶装置側で付加する方法と、データ生成装置側で付加する方法とが挙げられる。このうち、データ記憶装置側で署名を付加する方法の場合、署名を付加する前にデータ記憶装置に記憶された時系列のデータが読み出され、改竄される可能性を排除できない。このため、データの真正性を保証するには、データ生成装置側で署名を付加してデータ記憶装置に記憶する構成とすることが望ましい(下記特許文献1等参照)。
Here, in the data recording system, as a method of adding a signature to time-series data, for example, a method of adding a signature on the data storage device side and a method of adding a signature on the data generation device side can be mentioned. Of these, in the case of the method of adding a signature on the data storage device side, the possibility that the time series data stored in the data storage device before adding the signature is read out and falsified cannot be excluded. Therefore, in order to guarantee the authenticity of the data, it is desirable to add a signature on the data generation device side and store the data in the data storage device (see
しかしながら、データ生成装置側で署名を付加する構成とした場合、署名が付加されたデータをデータ記憶装置が受信した際に、データ欠損が1つでも発生していると、データ記憶装置側で署名検証を行うことができないという問題がある。この場合、たとえ欠損していないデータが改竄されていないデータであったとしても、データの真正性を保証することができない。 However, when the data generator is configured to add a signature, when the data storage device receives the signed data, if even one data loss occurs, the data storage device signs the signature. There is a problem that verification cannot be performed. In this case, even if the data that is not missing is the data that has not been tampered with, the authenticity of the data cannot be guaranteed.
このようなことから、上記のようなデータ記録システムにおいては、データ生成装置側で署名を付加するにあたり、データ欠損に対する耐性を向上させ、データ欠損が発生しても、データ記憶装置側で署名検証が行えるように構成することが望ましい。 For this reason, in the above data recording system, when adding a signature on the data generation device side, the resistance to data loss is improved, and even if a data loss occurs, the signature verification is performed on the data storage device side. It is desirable to configure it so that
本発明は上記課題に鑑みてなされたものであり、署名検証でのデータ欠損に対する耐性を向上させることを目的とする。 The present invention has been made in view of the above problems, and an object of the present invention is to improve resistance to data loss in signature verification.
本発明の各実施形態に係るデータ生成装置は、例えば、以下のような構成を有する。すなわち、
時系列のデータから、所定の区間に含まれるn個(2以上の整数)のデータを順次取得し、該取得したデータに基づいて、k個(kは1以上でn未満の整数)の乱数値が含まれる(k−1)次の多項式を満たすパラメータ情報を算出する算出手段と、
前記取得したデータと、該取得したデータに基づいて算出された前記パラメータ情報とを対応付けて出力する出力手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との組がk個集まることで算出可能となる、秘密分散プロトコルに基づく秘密情報に、署名を付加して出力する第1の署名手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを送信するとともに、前記第1の署名手段が署名を付加して出力した前記秘密情報を送信する第1の送信手段と、
前記取得したデータのハッシュ値に署名を付加して出力する第2の署名手段と、
前記取得したデータのハッシュ値と、前記第2の署名手段が署名を付加して出力したハッシュ値とを送信する第2の送信手段とを有する。
The data generation device according to each embodiment of the present invention has, for example, the following configuration. That is,
From the time series data, n (2 or more integers) of data included in a predetermined interval are sequentially acquired, and based on the acquired data, k (k is an integer of 1 or more and less than n) disorder. A calculation means for calculating parameter information that satisfies the (k-1) -order polynomial containing numerical values, and
An output means for associating the acquired data with the parameter information calculated based on the acquired data and outputting the data.
A signature is added to the secret information based on the secret sharing protocol, which can be calculated by collecting k sets of the acquired data and the parameter information output in association with the acquired data, and output. and the first signature means,
A first transmission in which the acquired data and the parameter information output in association with the acquired data are transmitted, and the secret information output with the signature added by the first signature means is transmitted. Means and
A second signature means for adding a signature to the hash value of the acquired data and outputting the data,
It has a second transmission means for transmitting the hash value of the acquired data and the hash value output by the second signature means with a signature added .
本発明の各実施形態によれば、署名検証でのデータ欠損に対する耐性を向上させることができる。 According to each embodiment of the present invention, resistance to data loss in signature verification can be improved.
以下、本発明の各実施形態について添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に際して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。 Hereinafter, each embodiment of the present invention will be described with reference to the accompanying drawings. In the description of the specification and the drawings according to each embodiment, the components having substantially the same functional configuration are designated by the same reference numerals to omit duplicate explanations.
[第1の実施形態]
<1.データ記録システムの構成>
はじめに、データ記録システムの全体構成について説明する。図1は、データ記録システムのシステム構成の一例を示す図である。
[First Embodiment]
<1. Data recording system configuration>
First, the overall configuration of the data recording system will be described. FIG. 1 is a diagram showing an example of a system configuration of a data recording system.
図1に示すように、データ記録システム100は、データ生成装置110と、データ記憶装置120とを有する。第1の実施形態において、データ生成装置110と、データ記憶装置120とは、ネットワークを介して通信可能に接続されている。
As shown in FIG. 1, the
データ生成装置110は、時系列のデータを生成する装置である。第1の実施形態において、データ生成装置110は、以下、動画像データを生成する撮像装置として説明する。撮像装置110には、秘密分散データ生成プログラムがインストールされており、当該プログラムが実行されることで、撮像装置110は、秘密分散データ生成部111として機能する。
The
秘密分散データ生成部111は、生成された動画像データに、秘密分散プロトコルに基づくパラメータ情報を対応付けることで秘密分散データを生成し、データ記憶装置120に向けてストリーミング送信する。また、秘密分散データ生成部111は、データ記憶装置120が秘密分散データについて署名検証を行う際に用いる秘密情報に署名を付加し、署名を付加した秘密情報を署名値としてデータ記憶装置120に送信する。
The secret distribution
データ記憶装置120は、データ生成装置110より送信される各種データを記憶する装置である。本実施形態において、データ記憶装置120は、以下、秘密分散データ及び署名値を記憶するサーバ装置として説明する。サーバ装置120には、データ検証プログラムがインストールされており、当該プログラムが実行されることで、サーバ装置120は、データ検証部121として機能する。
The
データ検証部121は、撮像装置110より送信された秘密分散データ及び署名値を受信し、データ格納部122に格納する。また、データ検証部121は、データ格納部122に格納した秘密分散データに基づいて算出した秘密情報と、データ格納部122に格納した署名値に基づいて算出した秘密情報とを用いて署名検証を行う。
The
なお、撮像装置110よりストリーミング送信される秘密分散データのうち、いくつかの秘密分散データが欠損した場合であっても、データ検証部121では、署名検証を行うことができる。秘密分散プロトコルを用いて生成された秘密分散データは、署名検証でのデータ欠損に対する耐性が高いためである。
Note that the
<2.秘密分散プロトコルの説明>
次に、署名検証でのデータ欠損に対する耐性が高い秘密分散データを生成する際に用いられる秘密分散プロトコルについて、図2及び図3を用いて簡単に説明する。図2及び図3は、秘密分散のプロトコルを説明するための図である。
<2. Description of secret sharing protocol>
Next, the secret sharing protocol used when generating secret sharing data having high resistance to data loss in signature verification will be briefly described with reference to FIGS. 2 and 3. 2 and 3 are diagrams for explaining a secret sharing protocol.
(1)概要
一般に、(k−1)次の多項式は、k個の独立な解が存在すれば一意に定めることができ、(k−1)個以下の解では、(k−1)次の多項式を一意に定めることができない。図2(a)は、独立な2個の解((x1,y1)、(x2,y2))に基づいて、1次の多項式(y=α1x+α0)を一意に定めた様子を示している。また、図2(b)は、独立な3個の解((x1,y1)、(x2,y2)、(x3,y3))に基づいて、2次の多項式(y=α2x2+α1x+α0)を一意に定めた様子を示している。
(1) Overview In general, a polynomial of degree (k-1) can be uniquely determined if there are k independent solutions, and for solutions of degree (k-1) or less, order (k-1) Polynomial of is not uniquely defined. FIG. 2A uniquely defines a first-order polynomial (y = α 1 x + α 0 ) based on two independent solutions ((x 1 , y 1 ), (x 2 , y 2 )). It shows how it looks. In addition, FIG. 2 (b) is a quadratic polynomial (y) based on three independent solutions ((x 1 , y 1 ), (x 2 , y 2 ), (x 3 , y 3 )). = Α 2 x 2 + α 1 x + α 0 ) is uniquely defined.
更に、図3(a)は、独立なk個の解((x1,y1)、(x2,y2)、・・・(xk,yk))に基づいて、(k−1)次の多項式(y=αk−1xk−1+αk−2xk−2+・・・α1x+α0)を一意に定めた様子を示している。 Further, FIG. 3A is based on (k−) based on k independent solutions ((x 1 , y 1 ), (x 2 , y 2 ), ... (X k , y k )). 1) The following polynomial (y = α k-1 x k-1 + α k-2 x k-2 + ... α 1 x + α 0 ) is uniquely defined.
秘密分散プロトコルは、多項式とその解との間のこのような関係を利用したものである。図3(b)に示すように、秘密分散プロトコルを用いる場合、秘密情報を生成するデータ生成者は、生成した秘密情報を(k−1)次の多項式の0次の項(α0)に埋め込むとともに、(k−1)次の多項式の複数の解を生成して、それぞれの解を分けて保持する。これにより、仮に、複数の解のうちの一部の解が漏えいしたとしても、秘密情報(α0)が復元されることはない。つまり、秘密分散プロトコルは、漏えいに対する耐性が高いという特性を有する。 Secret sharing protocols take advantage of this relationship between polynomials and their solutions. As shown in FIG. 3B, when the secret sharing protocol is used, the data generator that generates the secret information puts the generated secret information into the 0th-order term (α 0 ) of the polynomial of the (k-1) order. While embedding, multiple solutions of the (k-1) -order polynomial are generated, and each solution is held separately. As a result, even if a part of the solutions is leaked, the secret information (α 0 ) is not restored. That is, the secret sharing protocol has a characteristic of being highly resistant to leakage.
加えて、図3(b)に示すように、秘密分散プロトコルによれば、データ利用者は、データ生成者より複数の解のうちのk個の解を取得すれば、秘密情報(α0)を復元することができる。k個の解を用いて(k−1)次の多項式を一意に定めることができるからである。つまり、秘密分散プロトコルは、データ欠損に対する耐性が高いという特性も有している。 In addition, as shown in FIG. 3 (b), according to the secret sharing protocol, if the data user obtains k solutions out of a plurality of solutions from the data generator, the secret information (α 0 ) Can be restored. This is because the (k-1) -order polynomial can be uniquely determined by using k solutions. That is, the secret sharing protocol also has a characteristic of being highly resistant to data loss.
第1の実施形態は、このうち、データ欠損に対する耐性が高いという特性に着目して、時系列のデータに秘密分散プロトコルを適用したものである。 The first embodiment focuses on the characteristic of being highly resistant to data loss, and applies a secret sharing protocol to time-series data.
(2)秘密分散プロトコルの時系列のデータへの適用
第1の実施形態における撮像装置110では、時系列のデータである動画像データに秘密分散プロトコルを適用することで、署名検証でのデータ欠損に対する耐性の向上を実現している。図3(c)を参照しながら具体的に説明する。
(2) Application of Secret Sharing Protocol to Time Series Data In the
撮像装置110では、まず、時系列のデータである動画像データからn個(nは2以上の整数)の単位データを取得する。ここで、「単位データ」とは、動画像データを構成する所定単位のデータを指す。所定単位のデータとは、例えば、撮像装置110がフレーム単位で処理を実行する場合には、それぞれのフレームが所定単位のデータとなる。また、例えば、撮像装置110がパケット単位で処理を実行する場合には、それぞれのパケットが所定単位のデータとなる。なお、以下では、n個の単位データのうち、i番目の単位データを"Di"と表す。
First, the
続いて、撮像装置110では、n個の単位データ(Di)に基づいて、(k−1)次の多項式のn個の解を生成する。このとき、(k−1)次の多項式のk個(kは1以上でn未満の整数)のパラメータ(αk−1、αk−2、・・・α0)には、乱数値を用いる。なお、本実施形態では、変数xにn個の単位データ(Di)を代入するにあたり、ハッシュ値を用いるものとし、Hash(Di)を代入することで算出されるn個の変数yの値のうち、i番目の値を、パラメータ情報"Wi"と表す。Wiは、下式に基づいて算出することができる。
Subsequently, the
サーバ装置120では、秘密分散データ(Di,Wi)のうちの一部が欠損した場合であっても、秘密分散データがk個集まれば、パラメータ(αk−1、αk−2、・・・α0)が算出可能である。
In the
ここで、k個の秘密分散データが改竄されなかったとする。この場合、サーバ装置120でk個の秘密分散データに基づいて算出されるパラメータ(αk−1、αk−2、・・・α0)は、撮像装置110がn個の解を生成する際に用いた(k−1)次の多項式のパラメータ(αk−1、αk−2、・・・α0)と一致するはずである。一方、k個の秘密分散データが改竄された場合には、これらは一致しない。つまり、これらが一致するか否かを判定することで、署名検証を行うことができ、一致した場合(署名検証に成功した場合)に、秘密分散データの真正性(秘密分散データが改竄されていないこと)を保証することができる。
Here, it is assumed that k secretly distributed data have not been tampered with. In this case, the parameters (α k-1 , α k-2 , ... α 0 ) calculated by the
なお、本実施形態において、サーバ装置120は、このうちの1つのパラメータ(α0)が一致することで、秘密分散データ(Di,Wi)の署名検証が成功したと判定する。つまり、本実施形態においては、パラメータ(α0)が秘密情報となる(秘密情報は、秘密分散データがk個集まることで算出可能となる情報と定義することができる)。なお、サーバ装置120において署名検証の成否を判定できるようにするために、撮像装置110では、下式に示すようなSignアルゴリズムを用いて秘密情報(α0)に署名を付加することで署名値(S)を算出し、サーバ装置120に送信する。
In the present embodiment, the
署名値(S)を受信したサーバ装置120では、Signアルゴリズムに対応するVrfyアルゴリズムを用いて、検証鍵に基づき秘密情報(α0)を算出する。また、サーバ装置120では、k個の秘密分散データから算出した秘密情報(α0)と、署名値(S)から算出した秘密情報(α0)とが一致するか否かを判定する。そして、秘密情報が一致していた場合、サーバ装置120では、署名検証に成功したと判定し、秘密情報が一致していなかった場合、サーバ装置120では、署名検証に失敗したと判定する。
The
なお、以下の説明においては、撮像装置110より送信されるn個の秘密分散データには、それぞれ、単位データ(Di)とパラメータ情報(Wi)とを第1の組として対応付けるための情報が付加されているものとする。また、撮像装置110より送信される署名値(S)には、n個の秘密分散データと対応付けるための情報が付加されているものとする。
In the following description, information for associating the unit data ( Di ) and the parameter information ( Wi ) as the first set with each of the n secretly distributed data transmitted from the
<3.データ記録システムのハードウェア構成>
次に、データ記録システム100を構成する、撮像装置110及びサーバ装置120のハードウェア構成について説明する。図4は、第1の実施形態における撮像装置及びサーバ装置のハードウェア構成を示す図である。
<3. Data recording system hardware configuration>
Next, the hardware configurations of the
図4(a)に示すように、撮像装置110は、撮像センサ401、CPU(Central Processing Unit)402を有する。また、撮像装置110は、ROM(Read Only Memory)403、RAM(Random Access Memory)404、I/F(Interface)405を有する。なお、撮像装置110を構成する各ハードウェアは、バス406を介して相互に接続されている。
As shown in FIG. 4A, the
撮像センサ401は、受光した光を電気信号に変換し、動画像データを生成する。CPU402は、ROM403に格納された各種プログラム(例えば、秘密分散データ生成プログラム)を実行するコンピュータである。
The
ROM403は、CPU402により実行される各種プログラムを格納したり、CPU402が各種プログラムを実行する際に用いるその他のプログラム、データを格納する。RAM404は、CPU402が各種プログラムを実行する際のワークエリアを提供する。
The
I/F405は、ネットワークに接続され、該ネットワークを介して、サーバ装置120との間でデータの送受信を行う。
The I /
図4(b)に示すように、サーバ装置120は、CPU411、ROM412、RAM413、記憶装置414、I/F415を有する。サーバ装置120を構成する各ハードウェアは、バス416を介して相互に接続されている。
As shown in FIG. 4B, the
なお、サーバ装置120のハードウェア構成は、撮像装置110のハードウェア構成と概ね同じであるため、ここでは相違点のみ説明する。撮像装置110のハードウェア構成との相違点は、撮像センサ401を有していない点と、記憶装置414を有している点である。
Since the hardware configuration of the
記憶装置414は、CPU411により実行されるプログラムとして、データ検証プログラムを格納する。サーバ装置120の場合、データ検証プログラムは、記憶装置414に格納され、ROM412には、CPU411がデータ検証プログラムを実行する際に用いるその他のプログラムが格納されているものとする。なお、記憶装置414は、データ格納部122を実現する。
The
<4.撮像装置の機能構成>
次に、撮像装置110にて実現される秘密分散データ生成部111の詳細な機能構成について説明する。図5は、第1の実施形態における撮像装置の機能構成を示す図である。
<4. Functional configuration of imaging device>
Next, a detailed functional configuration of the secretly distributed
図5に示すように、秘密分散データ生成部111は、データ入力部501、圧縮部502、データバッファ部503、データカウンタ部504、署名パラメータ生成部505を有する。また、秘密分散データ生成部111は、ハッシュ生成部506、パラメータ情報生成部507、ストリームパケット生成部508、署名部509、データ送信部510を有する。
As shown in FIG. 5, the secret distribution
データ入力部501は、撮像センサ401により生成された動画像データを取得する。圧縮部502は、取得した動画像データを圧縮し、単位データを生成する。圧縮部502では、MPEGやH.264等の任意の圧縮形式により動画像データを圧縮し、単位データを生成する。
The
データバッファ部503は、圧縮部502において生成された単位データを一時的に蓄積する。データカウンタ部504は、データバッファ部503に蓄積される単位データの数をカウントし、所定数(n)に到達した場合に、署名パラメータ生成部505及び署名部509に通知する。
The
署名パラメータ生成部505は、乱数生成器を有し、データカウンタ部504より、所定数(n)がカウントされた旨の通知を受けると、乱数生成器により生成されたk個の乱数値をパラメータ(αk−1、αk−2、・・・α0)として取得する。また、署名パラメータ生成部505は、取得したパラメータ(αk−1、αk−2、・・・α0)をパラメータ情報生成部507に通知する。更に、署名パラメータ生成部505は、パラメータ(α0)を秘密情報として署名部509に通知する。
The
ハッシュ生成部506は、データバッファ部503に蓄積された単位データから、単位データ(Di)を順次取得し、ハッシュ値(Hash(Di))を算出する。なお、ハッシュ生成部506で単位データ(Di)のハッシュ値を算出するのは、撮像装置110における処理負荷を低減させるためである。
The
パラメータ情報生成部507は、算出手段の一例であり、ハッシュ生成部506において算出されたハッシュ値(Hash(Di))と、署名パラメータ生成部505において取得されたパラメータ(αk−1、αk−2、・・・α0)とを取得する。また、パラメータ情報生成部507は、取得したハッシュ値とパラメータとに基づき、式1を用いて、パラメータ情報(Wi)を算出する。
Parameter
ストリームパケット生成部508は、出力手段の一例であり、単位データ(Di)とパラメータ情報(Wi)とを対応付けることで、秘密分散データを取得する。ストリームパケット生成部508は、取得した秘密分散データ(Di,Wi)をパケット化して出力する。なお、秘密分散データをパケット化する際のパケット形式は送信形式によって決まり、送信形式がネットワークインタフェース形式の場合には、パケット形式はRTSP形式またはUDP形式となる。また、送信形式がUSBインタフェース形式の場合には、パケット形式はアイソクロナス形式となる。
Stream
署名部509は、第1の署名手段の一例であり、データカウンタ部504より、所定数(n)がカウントされた旨の通知を受けると、署名パラメータ生成部505より出力された秘密情報(α0)を用いて、署名値(S)を算出する。なお、本実施形態において、署名値(S)の算出には、Signアルゴリズムを用いるものとして説明するが、署名値(S)の算出に用いる署名アルゴリズムは、Signアルゴリズムに限定されない。例えば、RSAアルゴリズム、RSASSA−PSSアルゴリズムを用いても、あるいはElGamalアルゴリズムを用いてもよい。
The
データ送信部510は、第1の送信手段の一例であり、ストリームパケット生成部508においてパケット化された秘密分散データ(Di,Wi)と、署名パラメータ生成部505において算出された署名値(S)とを送信する。なお、データ送信部510では、パケット化された秘密分散データ(Di,Wi)を、コネクションレス方式でストリーミング送信する。また、署名値(S)を、コネクション方式で送信する。
The
図6は、第1の実施形態における撮像装置の各部(データバッファ部503、ハッシュ生成部506、パラメータ情報生成部507、署名部509)の動作を模式的に示した図である。図6の例では、所定数nを"10"としている。
FIG. 6 is a diagram schematically showing the operation of each unit (
図6に示すように、データバッファ部503に蓄積された単位データ(D1)をハッシュ生成部506が取得すると、ハッシュ生成部506では、ハッシュ値(Hash(D1))を算出する。
As shown in FIG. 6, when the
また、パラメータ情報生成部507は、ハッシュ生成部506により算出されたハッシュ値(Hash(D1))と、署名パラメータ生成部505より出力されたパラメータ(α9、α8、・・・α0)とを取得する。更に、パラメータ情報生成部507は、ハッシュ値(Hash(D1))とパラメータ(α9、α8、・・・α0)とに基づき、パラメータ情報(W1)を算出し、出力する。
Further, the parameter
同様に、データバッファ部503に蓄積された他の単位データ(D2、D3、・・・D10)についてもそれぞれ処理が行われることで、パラメータ情報生成部507からは、パラメータ情報(W2、W3、・・・W10)が出力される。
Similarly, the other unit data (D 2 , D 3 , ... D 10 ) stored in the
データバッファ部503に蓄積された単位データ(D1、D2、・・・D10)と、パラメータ情報生成部507から出力されたパラメータ情報(W1、W2、・・・W10)とは、ストリームパケット生成部508にて対応付けられる。これにより、ストリームパケット生成部508では、秘密分散データ((D1,W1)、(D2,W2)、・・・(D10,W10))を取得する。
The unit data (D 1 , D 2 , ... D 10 ) stored in the
一方、署名部509は、署名パラメータ生成部505より出力された秘密情報(α0)を用いて署名値(S)を算出する。
On the other hand, the
このように、撮像装置110の各部が動作することで、生成された動画像データに基づく秘密分散データ及び署名値を出力することができる。
By operating each part of the
<5.秘密分散データ生成部による処理>
次に、秘密分散データ生成部111による秘密分散データ生成処理の流れについて説明する。図7は、秘密分散データ生成処理の流れを示すフローチャートである。撮像センサ401による動画像データの生成が開始されると、秘密分散データ生成部111では、図7に示すフローチャートを実行する。
<5. Processing by the secret sharing data generator>
Next, the flow of the secret distribution data generation process by the secret distribution
ステップS701において、データ入力部501は、撮像センサ401により生成された動画像データを取得する。また、圧縮部502は、取得された動画像データを圧縮して単位データを生成し、データバッファ部503に蓄積する。
In step S701, the
ステップS702において、ハッシュ生成部506は、データバッファ部503より単位データ(Di)を取得し、ハッシュ値(Hash(Di))を算出する。
In step S702, the
ステップS703において、データカウンタ部504は、データバッファ部503に所定数(n)の単位データが蓄積されたか否かを判定する。ステップS703において、所定数(n)の単位データが蓄積されていない場合には、ハッシュ生成部506が所定数(n)の単位データについてハッシュ値を算出していないと判定し、ステップS701に戻る。一方、ステップS703において、所定数(n)の単位データが蓄積された場合には、ハッシュ生成部506が所定数(n)の単位データについてハッシュ値を算出したと判定し、ステップS704に進む。
In step S703, the
ステップS704において、署名パラメータ生成部505は、乱数生成器により生成されたk個の乱数値をパラメータ(αk−1、αk−2、・・・α0)として取得する。
In step S704, the signature
ステップS705において、パラメータ情報生成部507は、所定数(n)のハッシュ値(Hash(Di))と、k個のパラメータ(αk−1、αk−2、・・・α0)とを取得する。また、パラメータ情報生成部507は、取得した所定数(n)のハッシュ値と、k個のパラメータとを用いて、n個のパラメータ情報(Wi)を算出する。
In step S705, the parameter
ステップS706において、署名部509は、署名パラメータ生成部505において取得されたパラメータ(α0)を秘密情報として取得し、取得した秘密情報(α0)に署名を付加する。これにより、署名部509では、取得した秘密情報(α0)に基づく署名値(S)を算出して出力する。
In step S706, the
ステップS707において、ストリームパケット生成部508は、データバッファ部503に蓄積された単位データ(Di)とパラメータ情報生成部507より出力されたパラメータ情報(Wi)とを対応付けることで、秘密分散データを取得する。また、ストリームパケット生成部508は、取得した秘密分散データをパケット化して出力する。更に、データ送信部510は、パラメータ情報生成部507より出力された秘密分散データを、ネットワークを介してサーバ装置120にストリーミング送信する。
In step S707, the stream
ステップS708において、データ送信部510は、署名部509より出力された署名値(S)を、ネットワークを介してサーバ装置120に送信する。
In step S708, the
ステップS709において、データ入力部501は、秘密分散データ生成処理を終了するか否かを判定する。撮像センサ401により生成された動画像データの入力が継続している場合には、秘密分散データ生成処理を終了せずに、ステップS701に戻る。一方、動画像データの入力が停止したと判定した場合には、秘密分散データ生成処理を終了する。
In step S709, the
<6.サーバ装置の機能構成>
次に、サーバ装置120にて実現されるデータ検証部121の詳細な機能構成について説明する。図8は、サーバ装置の機能構成を示す図である。
<6. Functional configuration of server device>
Next, the detailed functional configuration of the
図8に示すように、データ検証部121は、データ受信部801、格納処理部802、署名値演算部803、署名値検証部804を有する。
As shown in FIG. 8, the
データ受信部801は、受信手段の一例であり、撮像装置110より送信された、秘密分散データ(単位データ(Di)と、該単位データに対応付けられたパラメータ情報(Wi)との組)と、署名値(S)とを受信する。
格納処理部802は、データ受信部801において受信された秘密分散データと署名値とをデータ格納部122に格納する。
The
署名値演算部803は、第1の改竄判定手段の一例である。署名値演算部803は、署名検証の成否として、データ格納部122に秘密分散データがk個以上格納されたか否かを判定し、k個未満であると判定した場合には、署名検証に失敗したと判定する。
The signature
また、署名値演算部803は、秘密分散データがk個以上格納されたと判定した場合には、データ格納部122よりk個の秘密分散データを読み出す。署名値演算部803は、読み出したk個の秘密分散データに基づいて、下式を用いて秘密情報(α0)を算出する。
Further, when the signature
なお、署名値演算部803及び署名値検証部804における署名検証の判定結果は、例えば、データ格納部122に格納されてもよい。これにより、サーバ装置120では、署名検証に成功したと判定された秘密分散データに含まれる単位データのみを、外部の端末にストリーミング送信することができる。この結果、外部の端末(例えば、ネットワークを介して接続される情報端末)では、真正性が保証された動画像データのみを再生することができる。
The signature verification determination results of the signature
<7.データ検証部による処理>
次に、データ検証部121によるデータ検証処理の流れについて説明する。図9は、データ検証処理の流れを示すフローチャートである。サーバ装置120が、撮像装置110と通信可能に接続されることで、図9に示すフローチャートが実行される。
<7. Processing by the data verification department>
Next, the flow of the data verification process by the
ステップS901において、データ受信部801は、撮像装置110より送信された秘密分散データと署名値とを受信する。また、格納処理部802は、データ受信部801が受信した秘密分散データと署名値とをデータ格納部122に格納する。
In step S901, the
ステップS902において、データ受信部801は、所定時間が経過したか否かを判定する。ステップS902において、所定時間が経過していないと判定した場合には、所定時間が経過するまで待機する。
In step S902, the
一方、ステップS902において、所定時間が経過したと判定した場合には、ステップS903に進む。ステップS903において、署名値演算部803は、データ格納部122にk個以上の秘密分散データが格納されたか否かを判定する。
On the other hand, if it is determined in step S902 that the predetermined time has elapsed, the process proceeds to step S903. In step S903, the signature
ステップS903において、k個以上の秘密分散データが格納されていないと判定した場合には、ステップS907に進み、署名値演算部803は、署名検証に失敗したと判定する。
If it is determined in step S903 that k or more secret sharing data are not stored, the process proceeds to step S907, and the signature
一方、ステップS903において、k個以上の秘密分散データが格納されたと判定した場合には、ステップS904に進む。ステップS904において、署名値演算部803は、データ格納部122より、k個の秘密分散データを読み出し、式3を用いて秘密情報(α0)を算出する。
On the other hand, if it is determined in step S903 that k or more secret sharing data are stored, the process proceeds to step S904. In step S904, the signature
ステップS905において、署名値検証部804は、データ格納部122に格納された署名値(S)を読み出し、vrfyアルゴリズムを用いて、検証鍵vkcamに基づき秘密情報(α0)を算出する。
In step S905, the signature
ステップS906において、署名値検証部804は、署名値演算部803において算出された秘密情報(α0)と、署名値(S)に基づいてvrfyアルゴリズムを用いて算出した秘密情報(α0)とを比較する。比較の結果、両者が一致していなければ、ステップS907に進み、署名検証に失敗した(秘密分散データが改竄されている)と判定する。
In step S906, the signature
一方、ステップS906における比較の結果、両者が一致していれば、ステップS908に進み、署名検証に成功した(秘密分散データが改竄されていない)と判定する。 On the other hand, as a result of comparison in step S906, if they match, the process proceeds to step S908, and it is determined that the signature verification is successful (the secret sharing data has not been tampered with).
ステップS909において、データ受信部801は、撮像装置110との通信が継続しているか否かを判定し、通信が継続していると判定した場合には、ステップS901に戻る。一方、通信が切断したと判定した場合には、署名値演算部803または署名値検証部804が、データ格納部122に既に格納されている秘密分散データのうち、未処理の秘密分散データについて署名検証を行ったうえで、データ検証処理を終了する。
In step S909, the
<8.適用例>
次に、データ記録システム100の適用例について説明する。図10は、データ記録システムの適用例を示す図である。図10の例は、第1の実施形態における撮像装置110を、原子力発電所等の重要施設に設置し、サーバ装置120を、複数の企業(企業A〜企業C)に設置した様子を示している。
<8. Application example>
Next, an application example of the
原子力発電所等の重要施設の場合、24時間稼働するため、当該施設に設置される撮像装置は、24時間連続して、真正性が保証される動画像データをストリーミング送信する必要がある。 In the case of an important facility such as a nuclear power plant, since it operates for 24 hours, the imaging device installed in the facility needs to continuously transmit moving image data whose authenticity is guaranteed for 24 hours.
これに対して、第1の実施形態における撮像装置110の場合、撮像装置110における処理負荷が低いため、上記のようなニーズにも対応することができる。第1の実施形態における撮像装置110の場合、単位データに署名を付加するわけではなく、秘密情報(α0)に署名を付加するため、署名の付加に要する処理負荷が低いからである。更に、第1の実施形態における撮像装置110の場合、単位データをハッシュ化してパラメータ情報を生成するため、単位データの処理に要する処理負荷も低いからである。
On the other hand, in the case of the
図10に示すように、秘密分散データ及び署名値が送信されることで、データ欠損が発生した場合でも、各企業では、署名検証を行うことができ、動画像データについて真正性を保証することができる。また、複数の企業に同報送信されるため、特定の企業が、真正性が保証された動画像データを隠蔽するといった事態を回避することができる。 As shown in FIG. 10, by transmitting the secret sharing data and the signature value, even if a data loss occurs, each company can perform signature verification and guarantee the authenticity of the moving image data. Can be done. In addition, since the broadcast is transmitted to a plurality of companies, it is possible to avoid a situation in which a specific company hides moving image data whose authenticity is guaranteed.
<9.まとめ>
以上の説明から明らかなように、本実施形態に係るデータ記録システムでは、
・撮像装置が、生成した動画像データから、n個の単位データ(Di)を順次取得し、取得した単位データ(Di)に基づいて、k個(1≦k<n)の乱数値が含まれる(k−1)次の多項式を満たすパラメータ情報(Wi)を算出する。
・撮像装置が、取得した単位データ(Di)とパラメータ情報(Wi)とを対応付けたn個の秘密分散データを、サーバ装置に送信する。
・撮像装置が、秘密分散データがk個集まることで算出可能となる秘密情報に、署名を付加することで署名値(S)を算出し、算出した署名値をサーバ装置に送信する。
<9. Summary>
As is clear from the above description, in the data recording system according to the present embodiment,
-The imaging device sequentially acquires n unit data (D i ) from the generated moving image data, and based on the acquired unit data ( Di ), k random values (1 ≦ k <n). (K-1) The parameter information ( Wi ) that satisfies the following polynomial is calculated.
-The image pickup apparatus transmits n secretly distributed data in which the acquired unit data ( Di ) and the parameter information ( Wi ) are associated with each other to the server apparatus.
-The imaging device calculates the signature value (S) by adding a signature to the secret information that can be calculated by collecting k pieces of secret distribution data, and transmits the calculated signature value to the server device.
これにより、サーバ装置では、撮像装置が送信したn個の秘密分散データのうち、k個の秘密分散データを受信すれば、当該k個の秘密分散データに基づいて秘密情報を算出することができる((n−k)個のデータ欠損が許容される)。そして、撮像装置が送信した署名値から算出される秘密情報と比較することで、署名検証を行い、秘密分散データの真正性を保証することができる。つまり、サーバ装置では、撮像装置が送信した秘密分散データの一部が欠損した場合であっても、署名検証を行い、秘密分散データの真正性を保証することが可能となる。 As a result, in the server device, if k of the n secret sharing data transmitted by the imaging device are received, the secret information can be calculated based on the k secret sharing data. ((Nk) data loss is allowed). Then, by comparing with the secret information calculated from the signature value transmitted by the image pickup apparatus, the signature can be verified and the authenticity of the secret distributed data can be guaranteed. That is, in the server device, even if a part of the secretly distributed data transmitted by the imaging device is lost, the signature verification can be performed and the authenticity of the secretly distributed data can be guaranteed.
この結果、第1の実施形態によれば、署名検証でのデータ欠損に対する耐性を向上させることができる。 As a result, according to the first embodiment, resistance to data loss in signature verification can be improved.
[第2の実施形態]
上記第1の実施形態では、秘密分散データ生成部111の各部が、予め定められた動作を行うものとして説明した。しかしながら、秘密分散データ生成部111の各部は、外部から入力された条件に応じて動作を変更するように構成してもよい。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
[Second Embodiment]
In the first embodiment, each unit of the secret sharing
図11は、第2の実施形態における撮像装置の機能構成を示す図である。図11に示す撮像装置110の機能構成の各構成要素のうち、図5に示した撮像装置110の機能構成の各構成要素と同様の構成要素については、同一の符号を付し、ここでは説明を省略する。
FIG. 11 is a diagram showing a functional configuration of the image pickup apparatus according to the second embodiment. Of the components of the functional configuration of the
図5との相違点は、秘密分散データ生成部1100が、設定パラメータ入力部1101と設定パラメータ記憶部1102とを有する点である。
The difference from FIG. 5 is that the secret distribution
設定パラメータ入力部1101は、設定手段の一例であり、設定パラメータの入力を受け付ける。設定パラメータとは、秘密分散データ生成部1100の各部が動作する際の条件を規定したものである。圧縮部502、データバッファ部503、データカウンタ部504、ハッシュ生成部506、ストリームパケット生成部508、署名部509の各部は、設定パラメータ入力部1101において入力された設定パラメータに応じた動作を行う。
The setting
設定パラメータ記憶部1102は、設定パラメータ入力部1101が入力を受け付けた設定パラメータを設定パラメータ情報として保持する。
The setting
図12は、設定パラメータ記憶部に保持される設定パラメータ情報の一例を示す図である。図12に示すように、設定パラメータ情報1200には、情報の項目として、"設定パラメータ種類"と"設定内容"とが含まれる。
FIG. 12 is a diagram showing an example of setting parameter information held in the setting parameter storage unit. As shown in FIG. 12, the setting
"設定パラメータ種類"には、設定パラメータの種類が保持される。設定パラメータ情報1200の場合、"設定パラメータ種類"には、「バッファリング情報」、「ストリームパケット生成情報」、「圧縮形式情報」、「ハッシュ情報」、「署名情報」、「閾値情報」が保持されている。
The type of setting parameter is stored in "setting parameter type". In the case of setting
"設定内容"には、設定パラメータの種類に対応する設定パラメータの内容が保持される。設定パラメータ情報1200の場合、「バッファリング情報」に対応して、「バッファ単位に関する情報」(パケットサイズ、フレーム数等)が保持されている。
The contents of the setting parameters corresponding to the types of the setting parameters are held in the "setting contents". In the case of the setting
また、設定パラメータ情報1200の場合、「ストリームパケット生成情報」に対応して、「プロトコルに関する情報」(RTP(Real-time Transport Protocol)、UDP(User Datagram Protocol)等)が保持されている。また、設定パラメータ情報1200の場合、「圧縮形式情報」に対応して、「圧縮形式に関する情報」(H.264、MPEG(Moving Picture Experts Group)等)が保持されている。また、設定パラメータ情報1200の場合、「ハッシュ情報」に対応して、「ハッシュアルゴリズムに関する情報」(SHA(Secure Hash Algorithm)1、SHA256等)が保持されている。
Further, in the case of the setting
また、設定パラメータ情報1200の場合、「署名情報」に対応して、「署名アルゴリズムに関する情報」(RSA(Rivest Shamir Adleman)アルゴリズム、ElGamalアルゴリズム等)が保持されている。更に、設定パラメータ情報1200の場合、「閾値情報」に対応して、「閾値に関する情報」(n、k等)が保持されている。
Further, in the case of the setting
秘密分散データ生成部1100の各部は、それぞれ、対応する「設定パラメータ種類」を識別し、識別した「設定パラメータ種類」に対応する「設定内容」を読み出して、「設定内容」に応じた動作を行う。
Each unit of the secret sharing
このように、第2の実施形態におけるデータ記録システムによれば、秘密分散データ生成部1100の各部を、外部から入力した設定パラメータに基づいて動作させることができる。
As described above, according to the data recording system in the second embodiment, each unit of the secret distribution
[第3の実施形態]
上記第1及び第2の実施形態において撮像装置110は、秘密分散データ(Di,Wi)をパケット化し、ネットワークを介して外部のサーバ装置120に対してストリーミング送信する構成とした。しかしながら、秘密分散データは、必ずしもネットワークを介して外部のサーバ装置120にストリーミング送信する必要はなく、撮像装置110の内部に補助記憶装置を設け、当該補助記憶装置に格納するようにしてもよい。以下、第3の実施形態について、第1の実施形態との相違点を中心に説明する。
[Third Embodiment]
In the first and second embodiments, the
<1.撮像装置のハードウェア構成>
図13は、第3の実施形態における撮像装置のハードウェア構成を示す図である。図4(a)に示した撮像装置110のハードウェア構成との相違点は、図13の撮像装置1300の場合、補助記憶装置1301を有している点である。補助記憶装置1301は、格納手段の一例であり、所定期間分の秘密分散データ及び署名値を蓄積する容量を有しているものとする。また、補助記憶装置1301に蓄積されたデータは、I/F405を介して撮像装置1300の外部から読み出すことができるものとする。なお、補助記憶装置1301は、SD(Secure Digital)カードのように、取り出し可能な記録媒体であってもよい。
<1. Hardware configuration of image pickup device>
FIG. 13 is a diagram showing a hardware configuration of the image pickup apparatus according to the third embodiment. The difference from the hardware configuration of the
<2.撮像装置の機能構成>
図14は、第3の実施形態における撮像装置の機能構成を示す図である。図5に示した機能構成との相違点は、図14の秘密分散データ生成部1400の場合、ストリームパケット生成部508の代わりにデータ結合部1401を有する点、及び、記憶制御部1402を有する点である。
<2. Functional configuration of imaging device>
FIG. 14 is a diagram showing a functional configuration of the image pickup apparatus according to the third embodiment. The difference from the functional configuration shown in FIG. 5 is that the secretly distributed
データ結合部1401は、出力手段の一例であり、単位データ(Di)とパラメータ情報(Wi)とを対応付けることで秘密分散データ(Di,Wi)を取得し、記憶制御部1402に出力する。記憶制御部1402は、データ結合部1401より出力された秘密分散データ(Di,Wi)と、署名部509より出力された署名値(S)とを、補助記憶装置1301に格納する。また、記憶制御部1402は、データ送信部510を介して、撮像装置1300の外部から読み出し要求を受信した場合に、補助記憶装置1301に格納されている秘密分散データ(Di,Wi)と署名値(S)とを読み出す。更に、データ送信部510は、記憶制御部1402により読み出された秘密分散データ(Di,Wi)と署名値(S)とを、データ送信部510を介して外部に出力する。
<3.適用例>
図15は、第3の実施形態における撮像装置の適用例を示す図である。図15の例は、撮像装置1300をドライブレコーダとして、車両1500内に設置した場合を示している。図15において、撮像装置1300は、生成した秘密分散データ及び署名値を、撮像装置1300内部の補助記憶装置1301に記録する。これにより、例えば、車両1500に事故等が発生した場合に、事故等が発生した際の秘密分散データ及び署名値を取り出すとともに、秘密分散データについて署名検証を行うことができる。また、このとき取り出した秘密分散データにデータ欠損が発生していた場合でも、真正性を保証することができる。
<3. Application example>
FIG. 15 is a diagram showing an application example of the imaging device according to the third embodiment. The example of FIG. 15 shows a case where the
なお、第3の実施形態では、撮像装置110の内部に補助記憶装置1301を設けるものとして説明したが、撮像装置110に外付けの補助記憶装置を設け、秘密分散データ(Di,Wi)を当該補助記憶装置に格納するように構成してもよい。
In the third embodiment, the
[第4の実施形態]
上記第1乃至第3の実施形態において、秘密分散データ生成部は、1つの単位データ(Di)に対して、1つのパラメータ情報(Wi)を対応付ける構成とした。しかしながら、単位データ(Di)の中には重要度の高い単位データも含まれており、このような重要度の高い単位データについては、データ欠損に対する耐性をより向上させる方が望ましい。そこで、第4の実施形態では、単位データ(Di)の重要度に応じて、対応付けるパラメータ情報(Wi)の数を変更し、重要度の高い単位データ(Di)には、より多くのパラメータ情報(Wi)を対応付けることで、データ欠損に対する耐性を向上させる。以下、第4の実施形態について、第1の実施形態との相違点を中心に説明する。
[Fourth Embodiment]
In the first to third embodiments, the secret distribution data generating unit, for one unit data (D i), and configured to associate the one parameter information (W i). However, the unit data ( Di ) also includes unit data of high importance, and it is desirable to further improve the resistance to data loss for such unit data of high importance. Therefore, in the fourth embodiment, according to the importance of the unit data (D i), change the number of parameter information (W i) to be associated, in the high unit data importance (D i), more by associating the parameter information (W i), to improve the resistance to data loss. Hereinafter, the fourth embodiment will be described focusing on the differences from the first embodiment.
<1.撮像装置の機能構成>
図16は、第4の実施形態における撮像装置の機能構成を示す図である。図16に示す撮像装置110の機能構成の各構成要素のうち、図5に示した撮像装置110の機能構成の各構成要素と同様の構成要素については、同一の符号を付し、ここでは説明を省略する。
<1. Functional configuration of imaging device>
FIG. 16 is a diagram showing a functional configuration of the image pickup apparatus according to the fourth embodiment. Of the components of the functional configuration of the
図5との相違点は、図16の秘密分散データ生成部1600の場合、重要度決定部1601を有する点、ハッシュ生成部1602及びパラメータ情報生成部1603の機能が、図5のハッシュ生成部506及びパラメータ情報生成部507の機能とは異なる点である。
The difference from FIG. 5 is that in the case of the secret distribution
重要度決定部1601は、決定手段の一例であり、単位データ(Di)に対する重要度を決定する。なお、本実施形態において単位データ(Di)の重要度は、"pi"と表す。重要度決定部1601は、データバッファ部503に蓄積された単位データから、単位データ(Di)を順次取得し、決定したそれぞれの重要度(pi)とともにハッシュ生成部1602に通知する。
The
ハッシュ生成部1602は、重要度決定部1601より通知された単位データ(Di)について、下式に基づいてハッシュ値を算出する。
The
ハッシュ生成部1602では、生成したハッシュ値(Hash(Dij))をパラメータ情報生成部1603に通知する。
The
パラメータ情報生成部1603は、ハッシュ生成部1602において算出されたハッシュ値(Hash(Dij))と、署名パラメータ生成部505において取得されたパラメータ(αk−1、αk−2、・・・α0)とを取得する。また、パラメータ情報生成部1603は、取得したハッシュ値とパラメータとに基づき、下式を用いて、パラメータ情報(Wi_j)を算出する。
The parameter
図17に示すように、データバッファ部503に蓄積された単位データ(D1)を重要度決定部1601が取得すると、重要度決定部1601は、単位データ(D1)の重要度(p1)を決定する(ここでは、p1=3と決定したとする)。
As shown in FIG. 17, when the
ハッシュ生成部1602は、重要度決定部1601より単位データ(D1)と重要度(p1)とを取得すると、ハッシュ値(Hash(Dij))を算出する。p1=3の場合、ハッシュ生成部1602では、ハッシュ値として、Hash(D1)1、Hash(D1)2、Hash(D1)3を算出する。
When the
パラメータ情報生成部1603は、ハッシュ生成部1602により算出されたハッシュ値(Hash(D1)1、Hash(D1)2、Hash(D1)3)と、パラメータ(α9、α8、・・・α0)に基づき、パラメータ情報を算出する。
The parameter
具体的には、パラメータ情報生成部1603は、パラメータ情報として、W1_1、W1_2、W1_3を算出する。
Specifically, the parameter
同様に、データバッファ部503に蓄積された他の単位データ(D2、D3、・・・D10)についてもそれぞれ処理が行われることで、パラメータ情報生成部1603からは、パラメータ情報(W2_1、W2_2、・・・W10_1、・・・W10_5)が出力される。
Similarly, the other unit data (D 2 , D 3 , ... D 10 ) stored in the
データバッファ部503に蓄積された単位データ(D1、D2、・・・D10)と、パラメータ情報生成部507から出力されたパラメータ情報(W2_1、W2_2、・・・W10_5)とは、ストリームパケット生成部508にて対応付けられる。これにより、ストリームパケット生成部508では、秘密分散データ((D1,W1_1)、(D1,W1_2)、・・・(D10,W10_5))を取得する。
The unit data (D 1 , D 2 , ... D 10 ) stored in the
このように、本実施形態によれば、重要度の高い単位データ(Di)ほど、多くの秘密分散データが生成されることになる。この結果、重要度の高い単位データほど、データ欠損に対する耐性を向上させることができる。 As described above, according to the present embodiment, the higher the importance of the unit data ( Di ), the more secretly distributed data is generated. As a result, the more important the unit data, the better the resistance to data loss.
<2.秘密分散データ生成部による処理>
次に、秘密分散データ生成部1600による秘密分散データ生成処理の流れについて説明する。図18は、秘密分散データ生成処理の流れを示すフローチャートである。なお、ここでは、図7に示した秘密分散データ生成処理との相違点を中心に説明する。図7に示した秘密分散データ生成処理との相違点は、ステップS1801〜S1804である。
<2. Processing by the secret sharing data generator>
Next, the flow of the secret distribution data generation process by the secret distribution
ステップS1801において、重要度決定部1601は、単位データ(Di)の重要度(pi)を決定する。ステップS1802において、ハッシュ生成部1602は、重要度に応じた数のハッシュ値(Hash(Dij))を算出する。
In step S1801, the
ステップS1803において、パラメータ情報生成部1603は、重要度に応じた数のパラメータ情報(Wi_j)を算出する。ステップS1804において、ストリームパケット生成部508は、データバッファ部503に蓄積された単位データ(Di)とパラメータ情報生成部1603より出力されたパラメータ情報(Wi_j)とを対応付けることで、秘密分散データを取得する。また、ストリームパケット生成部508は、取得した秘密分散データをパケット化して出力する。更に、データ送信部510は、ストリームパケット生成部508より出力された秘密分散データを、ネットワークを介してサーバ装置120にストリーミング送信する。
In step S1803, the parameter
<3.データ検証部による処理>
次に、本実施形態におけるサーバ装置120のデータ検証部121によるデータ検証処理の流れについて説明する。図19は、データ検証処理の流れを示すフローチャートである。なお、ここでは、図9に示したデータ検証処理との相違点を中心に説明する。図9に示したデータ検証処理との相違点は、ステップS1901、S1902である。
<3. Processing by the data verification department>
Next, the flow of the data verification process by the
ステップS1901において、署名値演算部803は、単位データ(Di)に対応付けられたパラメータ情報(Wi_j)の数が、データ格納部122に所定数以上あるか否かを判定する。
In step S1901, the signature
ステップS1901において、所定数未満であると判定した場合には、ステップS907に進み、署名検証に失敗したと判定する。 If it is determined in step S1901 that the number is less than the predetermined number, the process proceeds to step S907, and it is determined that the signature verification has failed.
一方、ステップS1901において、所定数以上あると判定した場合には、ステップS903に進む。 On the other hand, if it is determined in step S1901 that there are a predetermined number or more, the process proceeds to step S903.
また、ステップS1902において、署名値演算部803は、データ格納部122より、k個の秘密分散データを読み出し、下式を用いて秘密情報(α0)を算出する。
Further, in step S1902, the signature
<4.適用例>
次に、第4の実施形態におけるデータ記録システム100の適用例について説明する。図20は、データ記録システムの適用例を示す図である。このうち、図20(a)は、撮像装置110を定点カメラとして用いた場合を示している。撮像装置110を定点カメラとして用いた場合、重要度決定部1601では、例えば、単位データ(Di)から特定物(人、車両など)が検知されたか否かに応じて、重要度を決定する。あるいは、重要度決定部1601では、単位データ(Di)と背景画像との差分を算出し、差分の大きさに応じて、重要度を決定する。あるいは、重要度決定部1601では、単位データ(Di)から動体が検知されたか否かに応じて、重要度を決定する。
<4. Application example>
Next, an application example of the
図20(b)は、撮像装置110に集音マイクを付加し、監視カメラとして用いた場合を示している。撮像装置110に集音マイクを付加した場合、重要度決定部1601では、例えば、集音マイクで検出した音声に応じて、重要度を決定する。
FIG. 20B shows a case where a sound collecting microphone is added to the
図20(c)は、撮像装置110に加速度センサを付加し、車両のドライブレコーダとして用いた場合を示している。撮像装置110に加速度センサを付加した場合、重要度決定部1601では、例えば、加速度センサが異常な振動、衝撃を検知したか否かに応じて、重要度を決定する。
FIG. 20 (c) shows a case where an acceleration sensor is added to the
このように、第4の実施形態におけるデータ記録システムによれば、重要度の高い単位データについて、データ欠損に対する耐性をより向上させることができる。 As described above, according to the data recording system according to the fourth embodiment, it is possible to further improve the resistance to data loss for highly important unit data.
[第5の実施形態]
上記第4の実施形態では、単位データ(Di)ごとに重要度を決定し、重要度の高い単位データほど、データ欠損に対する耐性を向上させる構成とした。これに対して、第5の実施形態では、重要度の高い単位データについては、別途、秘密分散データ及び署名値を生成する構成とする。これにより、重要度の高い単位データに基づいて生成された秘密分散データ及び署名値を区別して受信することが可能となる。この結果、重要度の高い単位データに基づいて生成された秘密分散データについて、効率的に署名検証を行うことができるようになる。以下、第5の実施形態について、第4の実施形態との相違点を中心に説明する。
[Fifth Embodiment]
In the fourth embodiment, the importance is determined for each unit data ( Di ), and the higher the importance of the unit data, the better the resistance to data loss. On the other hand, in the fifth embodiment, the secret sharing data and the signature value are separately generated for the highly important unit data. This makes it possible to distinguish and receive the secret distribution data and the signature value generated based on the unit data of high importance. As a result, signature verification can be efficiently performed on the secret sharing data generated based on the unit data of high importance. Hereinafter, the fifth embodiment will be described focusing on the differences from the fourth embodiment.
図21及び図22は、秘密分散データ生成処理の流れを示すフローチャートである。なお、図21に示す秘密分散データ生成処理のフローチャートは、ステップS2101を除き、図18に示すフローチャートと同じである。したがって、ステップS2101以外の処理についての説明は省略する。 21 and 22 are flowcharts showing the flow of secret sharing data generation processing. The flowchart of the secret distribution data generation process shown in FIG. 21 is the same as the flowchart shown in FIG. 18, except for step S2101. Therefore, the description of the processing other than step S2101 will be omitted.
ステップS2101において、ハッシュ生成部1602は、重要度決定部1601において決定された重要度(pi)が所定値以上であるか否かを判定する。ステップS2101において所定値未満であると判定された場合には、ステップS1802に進む。
In step S2101, the
一方、ステップS2101において所定値以上であると判定された場合には、図22に進む。 On the other hand, if it is determined in step S2101 that the value is equal to or greater than a predetermined value, the process proceeds to FIG.
図22に示すように、重要度が所定値以上であると判定された場合、本実施形態における秘密分散データ生成部1600では、2通りの処理を並行して実行する。第1の処理は、重要度が所定値未満であると判定された場合と同じ処理である。すなわち、図22(a)のステップS2201において、ハッシュ生成部1602が重要度に応じた数のハッシュ値を算出した後、図21のステップS703に戻る。
As shown in FIG. 22, when it is determined that the importance is equal to or higher than a predetermined value, the secret distribution
第2の処理は、重要度が所定値以上であると判定された場合に、データバッファ部503に蓄積されている単位データについて、別途、秘密分散データを生成する処理である。
The second process is a process of separately generating secret sharing data for the unit data stored in the
具体的には、ステップS2211において、ハッシュ生成部1602は、データバッファ部503に蓄積されている単位データそれぞれについて、重要度に応じた数のハッシュ値を算出する。
Specifically, in step S2211, the
ステップS2212において、署名パラメータ生成部505は、乱数生成器により生成されたk個の乱数値(第2の乱数値)をパラメータ(αk−1、αk−2、・・・α0)として取得する。ステップS2213において、パラメータ情報生成部1603は、ステップS2211において算出したハッシュ値それぞれについて、重要度に応じた数のパラメータ情報(Wi_j)を算出する(第2のパラメータ情報)。
In step S2212, the signature
ステップS2214において、署名部509は、ステップS2212において署名パラメータ生成部505が取得したパラメータ(α0)を秘密情報として取得し、取得した秘密情報(α0)に署名を付加する。これにより、署名部509では、取得した秘密情報(α0)に基づく署名値(S)を算出して出力する。
In step S2214, the
ステップS2215において、ストリームパケット生成部508は、データバッファ部503に蓄積された単位データ(Di)とパラメータ情報生成部1603より出力されたパラメータ情報(Wi_j)とを対応付けることで、秘密分散データを取得する。また、ストリームパケット生成部508は、取得した秘密分散データをパケット化して出力する。更に、データ送信部510は、ストリームパケット生成部508より出力された秘密分散データを、ネットワークを介してストリーミング送信する。
In step S2215, the stream
ステップS2216において、データ送信部510は、署名部509より出力された署名値(S)をネットワークを介して送信する。その後、図21のステップS709に戻る。
In step S2216, the
なお、ステップS2215及びステップS2216においてそれぞれ秘密分散データ及び署名値を送信する際の送信先は、ステップS1804及びステップS708においてそれぞれ秘密分散データ及び署名値を送信する際の送信先とは異なるものとする。あるいは、送信先は同じでも、サーバ装置120において両者は識別して受信されるものとする。
The destination for transmitting the secret distribution data and the signature value in steps S2215 and S2216, respectively, is different from the destination for transmitting the secret distribution data and the signature value in steps S1804 and S708, respectively. .. Alternatively, even if the transmission destinations are the same, it is assumed that both are identified and received by the
このように、第5の実施形態では、単位データの重要度が所定値以上であると判定された場合に、データバッファ部503に蓄積されている単位データについて、別途、秘密分散データ及び署名値を生成する。
As described above, in the fifth embodiment, when it is determined that the importance of the unit data is equal to or higher than the predetermined value, the unit data stored in the
これにより、重要度の高い単位データに基づいて生成された秘密分散データ及び署名値を、それ以外の単位データに基づいて生成された秘密分散データ及び署名値と区別することが可能となる。この結果、重要度の高い単位データに基づいて生成された秘密分散データについて、署名検証を効率的に行うことが可能になる。 This makes it possible to distinguish the secret distribution data and the signature value generated based on the highly important unit data from the secret distribution data and the signature value generated based on the other unit data. As a result, signature verification can be efficiently performed on the secretly distributed data generated based on the unit data of high importance.
[第6の実施形態]
上記第5の実施形態では、単位データの重要度が所定値以上であると判定された場合に、データバッファ部に蓄積されている単位データについて、別途、秘密分散データ及び署名値を生成する構成とした。これに対して、第6の実施形態では、単位データの重要度が所定値以上であると判定された場合に、当該単位データに基づいて生成された秘密分散データを複数回ストリーミング送信する。これにより、第6の実施形態によれば、重要度の高い単位データに基づいて生成された秘密分散データについて、データ欠損の可能性を低減させることができる。
[Sixth Embodiment]
In the fifth embodiment, when it is determined that the importance of the unit data is equal to or higher than a predetermined value, the secret distribution data and the signature value are separately generated for the unit data stored in the data buffer unit. And said. On the other hand, in the sixth embodiment, when it is determined that the importance of the unit data is equal to or higher than a predetermined value, the secret sharing data generated based on the unit data is streamed and transmitted a plurality of times. Thereby, according to the sixth embodiment, the possibility of data loss can be reduced for the secretly distributed data generated based on the unit data of high importance.
図23は、秘密分散データ生成処理の流れを示すフローチャートである。なお、図21に示した秘密分散データ生成処理のフローチャートとの相違点は、ステップS2301〜S2305である。 FIG. 23 is a flowchart showing the flow of the secret sharing data generation process. The difference from the flowchart of the secret sharing data generation process shown in FIG. 21 is steps S2301 to S2305.
ステップS2101において、重要度(pi)が所定値以上であると判定されると、本実施形態では、ステップS2301に進む。ステップS2301において、ストリームパケット生成部508は、重要度(pi)が所定値以上であると判定された単位データ(Di)に基づいて生成される秘密分散データの送信回数を複数回(例えば、2回)に設定する。
In step S2101, the importance (p i) is determined to be equal to or larger than a predetermined value, in the present embodiment, the process proceeds to step S2301. In step S2301, the stream
ステップS2302において、ストリームパケット生成部508は、データバッファ部503に蓄積された単位データ(Di)とパラメータ情報生成部1603より出力されたパラメータ情報(Wi_j)とを対応付けることで、秘密分散データを取得する。また、ストリームパケット生成部508は、取得した秘密分散データをパケット化して出力する。
In step S2302, the stream
ステップS2303において、データ送信部510は、ストリームパケット生成部508より出力された秘密分散データの送信回数が、複数回に設定されているか否かを判定する。ステップS2303において、複数回に設定されていないと判定された場合には、ステップS2304に進み、秘密分散データをネットワークを介してサーバ装置120にストリーミング送信する。一方、ステップS2303において、複数回に設定されていると判定された場合には、ステップS2305に進む。
In step S2303, the
ステップS2305において、データ送信部510は、秘密分散データをネットワークを介してサーバ装置120に複数回ストリーミング送信する。
In step S2305, the
このように、第6の実施形態によれば、単位データの重要度が所定値以上であると判定された場合に、当該単位データに基づいて生成された秘密分散データを、複数回送信する。これにより、第6の実施形態によれば、重要度の高い単位データに基づいて生成された秘密分散データについて、データ欠損の可能性を低減させることができる。 As described above, according to the sixth embodiment, when it is determined that the importance of the unit data is equal to or higher than a predetermined value, the secret sharing data generated based on the unit data is transmitted a plurality of times. Thereby, according to the sixth embodiment, the possibility of data loss can be reduced for the secretly distributed data generated based on the unit data of high importance.
[第7の実施形態]
上記第6の実施形態では、単位データの重要度が所定値以上であると判定された単位データに基づいて生成された秘密分散データを、複数回ストリーミング送信する構成とした。これに対して、第7の実施形態では、単位データの重要度が所定値以上であると判定された単位データに基づいて生成された秘密分散データを、一時的に保持する構成とする。これにより、第7の実施形態では、ストリーミング送信した後に送信先のサーバ装置120から再送要求があった場合に、再送することが可能となり、データ欠損の可能性を低減させることができるからである。
[7th Embodiment]
In the sixth embodiment, the secret sharing data generated based on the unit data for which the importance of the unit data is determined to be equal to or higher than a predetermined value is streamed and transmitted a plurality of times. On the other hand, in the seventh embodiment, the secret sharing data generated based on the unit data for which the importance of the unit data is determined to be equal to or higher than a predetermined value is temporarily held. This is because, in the seventh embodiment, when there is a retransmission request from the
図24、図25は、秘密分散データ生成処理の流れを示すフローチャートである。なお、図21に示した秘密分散データ生成処理のフローチャートとの相違点は、ステップS2401〜S2402、ステップS2501〜S2505である。 24 and 25 are flowcharts showing the flow of secret sharing data generation processing. The differences from the flowchart of the secret distribution data generation process shown in FIG. 21 are steps S2401 to S2402 and steps S2501 to S2505.
ステップS2101において、重要度(pi)が所定値以上であると判定されると、本実施形態では、ステップS2401に進む。ステップS2401において、ストリームパケット生成部508は、重要度(pi)が所定値以上であると判定された単位データ(Di)に基づいて生成された秘密分散データを保存対象に設定する。
In step S2101, the importance (p i) is determined to be equal to or larger than a predetermined value, in the present embodiment, the process proceeds to step S2401. In step S2401, the stream
ステップS2402において、ストリームパケット生成部508は、データバッファ部503に蓄積された単位データ(Di)とパラメータ情報生成部1603より出力されたパラメータ情報(Wi_j)とを対応付けることで、秘密分散データを取得する。また、ストリームパケット生成部508は、取得した秘密分散データをパケット化して出力する。
In step S2402, the stream
図25のステップS2501において、データ送信部510は、ステップS2402において出力された秘密分散データが保存対象に設定されているか否かを判定する。ステップS2501において、保存対象に設定されていないと判定された場合には、ステップS2503に進む。一方、ステップS2501において、保存対象に設定されていると判定された場合には、ステップS2502に進む。
In step S2501 of FIG. 25, the
ステップS2502において、データ送信部510は、ステップS2402において出力された秘密分散データをRAM404に一時的に保持する。この場合、RAM404は、パケット化された秘密分散データを一時的に保持する保持手段として機能する。
In step S2502, the
ステップS2503において、データ送信部510は、ストリームパケット生成部508より出力された秘密分散データをネットワークを介してサーバ装置120にストリーミング送信する。
In step S2503, the
ステップS2504において、データ送信部510は、サーバ装置120より再送要求を受信したか否かを判定する。ステップS2504において再送要求を受信したと判定した場合には、ステップS2505に進む。
In step S2504, the
ステップS2505において、データ送信部510は、再送要求のあった秘密分散データを、RAM404より読み出して再度ストリーミング送信する。
In step S2505, the
このように、第7の実施形態では、単位データの重要度が所定値以上であると判定された単位データに基づいて生成された秘密分散データを、一時的に保持する。これにより、第7の実施形態によれば、当該秘密分散データについて、サーバ装置120より再送要求があった場合に、再送することができる。この結果、第7の実施形態によれば、重要度の高い単位データに基づいて生成された秘密分散データについて、データ欠損の可能性を低減させることができる。
As described above, in the seventh embodiment, the secret distribution data generated based on the unit data for which the importance of the unit data is determined to be equal to or higher than the predetermined value is temporarily held. As a result, according to the seventh embodiment, the secretly distributed data can be retransmitted when the
[第8の実施形態]
上記第1乃至第7の実施形態では、秘密分散プロトコルを適用することで、データ欠損が発生した場合でも、秘密分散データの真正性(秘密分散データが改竄されていないこと)が保証できる構成について説明した。しかしながら、上記第1乃至第7の実施形態の場合、サーバ装置120にて、一旦、署名検証が成功すると、署名検証を行う際に用いた(k−1)次の多項式(y=αk−1xk−1+αk−2xk−2+・・・α1x+α0)が判明することになる。
[8th Embodiment]
In the first to seventh embodiments, the authenticity of the secret sharing data (the secret sharing data has not been tampered with) can be guaranteed even if data loss occurs by applying the secret sharing protocol. explained. However, in the case of the first to seventh embodiments, once the signature verification is successful in the
このため、サーバ装置120では、当該判明した(k−1)次の多項式を利用して、新たな秘密分散データ(Dn+1,Wn+1等)を生成することができる。(k−1)次の多項式の変数xに任意の値を入れて変数yを算出することで、(k−1)次の多項式を満たす新たな秘密分散データを生成することができるからである。これは、サーバ装置120において、新たな秘密分散データの偽造が可能であることを意味する。
Therefore, the
そこで、以降の実施形態では、サーバ装置120における秘密分散データの偽造を防止するための機能について説明する。
Therefore, in the following embodiments, a function for preventing forgery of secretly distributed data in the
<1.データ記録システムの構成>
はじめに、第8の実施形態におけるデータ記録システムの全体構成について説明する。図26は、第8の実施形態におけるデータ記録システムのシステム構成の一例を示す図である。
<1. Data recording system configuration>
First, the overall configuration of the data recording system according to the eighth embodiment will be described. FIG. 26 is a diagram showing an example of the system configuration of the data recording system according to the eighth embodiment.
図1に示したデータ記録システム100との相違点は、図26のデータ記録システム2600の場合、秘密分散データ生成部2610が、秘密分散データ、署名値(S)に加えて、Digestと署名値(T)の組(第2の組)を送信する点である。
The difference from the
"Digest"とは、秘密分散データに含まれる単位データ(Di)のハッシュ値(Hash(Di))を連結したものであり、下式により表される。 "Digest" is a concatenation of hash values (Hash (D i )) of unit data (D i ) included in secret distribution data, and is expressed by the following equation.
データ検証部2620では、秘密分散データの真正性(秘密分散データが改竄されていないこと)を検証する前に、まず、署名値(T)を用いて、Digestに含まれるハッシュ値(Hash(Di))について署名検証を行う。そして、データ検証部2620では、署名検証に成功したハッシュ値(Hash(Di))を用いて、秘密分散データに含まれる単位データ(Di)の真正性(単位データ(Di)が偽造されていないこと)を検証する。その後、秘密分散データの真正性(秘密分散データが改竄されていないこと)を検証する。
Before verifying the authenticity of the secret distribution data (that the secret distribution data has not been tampered with), the
このように、データ検証部2620では、データの真正性として、データが偽造されていないこと、及び、データが改竄されていないこと、を検証する。
In this way, the
<2.撮像装置の機能構成>
図27は、第8の実施形態における撮像装置の機能構成を示す図である。図27に示す撮像装置110の機能構成の各構成要素のうち、図5に示した撮像装置110の機能構成の各構成要素と同様の構成要素については、同一の符号を付し、ここでは説明を省略する。
<2. Functional configuration of imaging device>
FIG. 27 is a diagram showing a functional configuration of the image pickup apparatus according to the eighth embodiment. Of the components of the functional configuration of the
図5との相違点は、図27の秘密分散データ生成部2610の場合、ハッシュ生成部506がハッシュ値(Hash(Di))のDigestを生成し、データ送信部510及び署名部2701に通知する点である。
The difference from FIG. 5, when the secret distribution
また、図5との相違点は、図27の秘密分散データ生成部2610の場合、署名部2701を有する点である。署名部2701は、第2の署名手段の一例であり、ハッシュ生成部506より、ハッシュ値(Hash(Di))のDigestを受信すると、上式(式9)を用いて、Digestに署名を付加することで、署名値(T)を生成する。また、署名部2701は、生成した署名値(T)をデータ送信部510に通知する。
Further, the difference from FIG. 5 is that the secret distribution
また、図5との相違点は、図27の秘密分散データ生成部2610の場合、データ送信部510が、第2の送信手段として機能し、秘密分散データ(Di,Wi)と、署名値(S)とに加えて、Digestと、署名値(T)とを送信する点である。
Further, the difference from FIG. 5 is that in the case of the secret distribution
図28は、第8の実施形態における撮像装置の各部(データバッファ部503、ハッシュ生成部506、パラメータ情報生成部507、署名部509、署名部2701)の動作を模式的に示した図である。図28の例では、所定数nを"10"としている。
FIG. 28 is a diagram schematically showing the operation of each unit (
図28に示すように、ハッシュ生成部506は、生成したハッシュ値(Hash(Di))を連結してDigestを生成する。
As shown in FIG. 28, the
署名部2701は、ハッシュ生成部506において生成されたハッシュ値(Hash(Di))のDigestを取得すると、Signアルゴリズムを用いて署名を付加し、署名値(T)を算出する。
<3.秘密分散データ生成部による処理>
次に、撮像装置110の秘密分散データ生成部2610による秘密分散データ生成処理の流れについて説明する。図29は、秘密分散データ生成処理の流れを示すフローチャートである。なお、ここでは、図7に示した秘密分散データ生成処理との相違点を中心に説明する。図7に示した秘密分散データ生成処理との相違点は、ステップS2901、S2902である。
<3. Processing by the secret sharing data generator>
Next, the flow of the secret distribution data generation process by the secret distribution
ステップS2901において、ハッシュ生成部506は、ハッシュ値(Hash(Di))のDigestを生成し、署名部2701は、Digestに基づき、署名値(T)を算出する。
In step S2901, the
ステップS2902において、データ送信部510は、ハッシュ生成部506より通知されたハッシュ値(Hash(Di))のDigestと、署名部2701より通知された署名値(T)とを、サーバ装置120に送信する。
In step S2902, the
<4.サーバ装置の機能構成>
次に、サーバ装置120にて実現されるデータ検証部2620の詳細な機能構成について説明する。図30は、サーバ装置の機能構成を示す図である。
<4. Functional configuration of server device>
Next, the detailed functional configuration of the
図8に示した機能構成との相違点は、図30の場合、真正性署名値検証部3001と、データ真正性検証部3002とを有する点である。
The difference from the functional configuration shown in FIG. 8 is that, in the case of FIG. 30, it has an authenticity signature
真正性署名値検証部3001は、秘密分散データ生成部2610より送信され、データ格納部122に格納されたDigestと、署名値(T)とを読み出す。また、真正性署名値検証部3001は、下式に示すvrfyアルゴリズムを用いて、検証鍵vkcamに基づきDigestを算出する。
The authenticity signature
なお、真正性署名値検証部3001は、署名検証に成功したと判定した場合、判定結果をデータ真正性検証部3002に通知する。
When the authenticity signature
データ真正性検証部3002は、偽造判定手段の一例である。データ真正性検証部3002は、真正性署名値検証部3001より署名検証に成功した旨の判定結果を受信すると、データ格納部122に格納された秘密分散データに含まれる単位データ(Di)を読み出し、ハッシュ値(Hash(Di))を算出する。
The data
また、データ真正性検証部3002は、算出したハッシュ値(Hash(Di))と、真正性署名値検証部3001において署名検証に成功したDigestに含まれるハッシュ値(Hash(Di))とを比較する。比較の結果、算出したハッシュ値(Hash(Di))が全て、Digestに含まれていれば、データ真正性検証部3002は、署名検証に成功した(秘密分散データに含まれる単位データ(Di)が偽造されていない)と判定する。一方、算出したハッシュ値(Hash(Di))に、Digestに含まれていないハッシュ値があった場合には、データ真正性検証部3002は、署名検証に失敗した(秘密分散データに含まれる単位データ(Di)が偽造されている)と判定する。
Further, the data
このように、データ真正性検証部3002は、データ格納部122より読み出した秘密分散データに含まれる単位データ(Di)の真正性(単位データ(Di)が偽造されていないこと)を保証することができる。
Thus, the data
<5.データ検証部によるデータ検証処理>
次に、本実施形態におけるサーバ装置120のデータ検証部2620によるデータ検証処理(偽造、改竄)の流れについて説明する。図31は、データ検証処理(偽造、改竄)の流れを示すフローチャートである。なお、ここでは、図9に示したデータ検証処理との相違点を中心に説明する。図9に示したデータ検証処理との相違点は、ステップS3101〜S3105である。
<5. Data verification processing by the data verification department>
Next, the flow of the data verification process (counterfeiting, falsification) by the
ステップS3101において、データ受信部801は、撮像装置110より送信されたDigestと署名値(T)とを受信する。また、格納処理部802は、データ受信部801が受信したDigestと署名値(T)とをデータ格納部122に格納する。
In step S3101, the
ステップS3102において、真正性署名値検証部3001は、データ格納部122に格納された署名値(T)を用いて、データ格納部122に格納されたDigestについて署名検証を行う。具体的には、真正性署名値検証部3001は、署名値(T)についてvrfyアルゴリズムを用いて算出したDigestと、データ格納部122に格納されたDigestとが一致するか否かを判定する。これにより、真正性署名値検証部3001は、データ格納部122に格納されたDigestが正しいか否かを判定する。
In step S3102, the authenticity signature
判定の結果、データ格納部122に格納されたDigestが正しくないと判定した場合(ステップS3102においてNoの場合)には、ステップS907に進む。この場合、真正性署名値検証部3001は、データ格納部122より読み出したDigestについて、署名検証に失敗したと判定する。
As a result of the determination, if it is determined that the Digist stored in the
一方、判定の結果、データ格納部122に格納されたDigestが正しいと判定した場合(ステップS3102においてYesの場合)には、ステップS3103に進む。
On the other hand, if it is determined as a result of the determination that the Digist stored in the
ステップS3103において、データ真正性検証部3002は、データ格納部122に格納された秘密分散データに含まれる単位データ(Di)を読み出し、ハッシュ値(Hash(Di))を算出する。
In step S3103, the data
ステップS3104において、データ真正性検証部3002は、算出したハッシュ値(Hash(Di))と、真正性署名値検証部3001において署名検証に成功したDigestに含まれるハッシュ値(Hash(Di))とを比較する。比較の結果、算出したハッシュ値(Hash(Di))の中に、Digestに含まれていないハッシュ値があった場合には(ステップS3104においてNoの場合には)、ステップS907に進む。この場合、データ真正性検証部3002は、データ格納部122より読み出した秘密分散データに含まれる単位データ(Di)について、署名検証に失敗した(秘密分散データに含まれる単位データ(Di)が偽造されている)と判定する。
In step S3104, the data
一方、算出したハッシュ値(Hash(Di))が全てDigestに含まれていた場合には(ステップS3104においてYesの場合には)、データ真正性検証部3002は、ステップS903に進む。
On the other hand, when the calculated hash value (Hash (D i)) was all contained in the Digest is (in case of Yes in step S3104 is), the data
ステップS3105において、データ真正性検証部3002は、署名検証に成功した(秘密分散データに含まれる単位データ(Di)が偽造されていない)と判定する。
In step S3105, the data
ステップS3105において署名検証に成功したと判定した場合には、ステップS903に進み、以降、秘密分散データが改竄されているか否かの署名検証を行う。署名検証の結果、署名検証に成功した場合、ステップS908では、秘密分散データが改竄されていないと判定する。 If it is determined in step S3105 that the signature verification is successful, the process proceeds to step S903, and thereafter, signature verification is performed to see if the secret sharing data has been tampered with. If the signature verification is successful as a result of the signature verification, in step S908, it is determined that the secret sharing data has not been tampered with.
以上の説明から明らかなように、第8の実施形態におけるデータ記録システムでは、
・撮像装置が、秘密分散データに含まれる単位データ(Di)のハッシュ値のDigestと、Signアルゴリズムを用いて該Digestに署名を付加することで算出される署名値(T)とを、サーバ装置に送信する。
・サーバ装置が、撮像装置110より受信した署名値(T)を用いて、Digestについて署名検証を行う。
・Digestについて署名検証に成功した場合、サーバ装置が、撮像装置110より受信した秘密分散データに含まれる単位データ(Di)について、署名検証に成功したDigestを用いて、真正性(単位データ(Di)が偽造されていないこと)を検証する。
As is clear from the above description, in the data recording system according to the eighth embodiment,
-The imaging device transfers the Hash value Digist of the unit data ( Di ) included in the secret distribution data and the signature value (T) calculated by adding a signature to the Digist using the Sign algorithm. Send to the device.
-The server device verifies the signature of the Digist using the signature value (T) received from the
-When the signature verification of the Digist is successful, the server device uses the Digist that has succeeded in the signature verification of the unit data ( Di ) included in the secret sharing data received from the
これにより、第8の実施形態におけるデータ記録システムによれば、秘密分散データの偽造を防止することができる。 As a result, according to the data recording system according to the eighth embodiment, forgery of secretly distributed data can be prevented.
[第9の実施形態]
上記第8の実施形態では、秘密分散データの偽造を防止するにあたり、撮像装置110が、Digestと署名値(T)とを生成し、サーバ装置120に送信する構成とした。これに対して、第9の実施形態では、別途、真正性保証サーバを配し、当該真正性保証サーバが、Digestと署名値(T)とを生成し、サーバ装置120に送信する。以下、第9の実施形態について説明する。
[9th Embodiment]
In the eighth embodiment, in order to prevent the forgery of the secretly distributed data, the
<1.データ記録システムの構成>
はじめに、第9の実施形態におけるデータ記録システムの全体構成について説明する。図32は、データ記録システムのシステム構成の一例を示す図である。
<1. Data recording system configuration>
First, the overall configuration of the data recording system according to the ninth embodiment will be described. FIG. 32 is a diagram showing an example of the system configuration of the data recording system.
図1に示したデータ記録システム100との相違点は、図32のデータ記録システム3200の場合、真正性保証サーバ3210を有しており、ネットワークを介してデータ生成装置110及びサーバ装置120と通信可能に接続されている点である。また、図32のデータ記録システム3200の場合、秘密分散データ生成部111が、秘密分散データ及び署名値(S)を、サーバ装置120及び真正性保証サーバ3210に同報送信する点である。更に、真正性保証サーバ3210からサーバ装置120に対して、Digestと署名値(T)の組(第2の組)を送信する点である。
The difference from the
真正性保証サーバ3210は、サーバ装置120と同様のハードウェア構成(図4(b)参照)を有する。真正性保証サーバ3210には、データ検証プログラム及び署名プログラムがインストールされており、当該プログラムが実行されることで、真正性保証サーバ3210は、データ検証部121及び署名部3211として機能する。
The
データ検証部121の機能は、図8に示すサーバ装置120が有するデータ検証部121の機能と同じであるため、ここでは説明を省略する。
Since the function of the
署名部3211は、第2の署名手段の他の一例であり、署名処理を行う。具体的には、署名部3211は、データ検証部121によるデータ検証処理において、秘密分散データの真正性(秘密分散データが改竄されていないこと)の検証に成功した場合、秘密分散データに含まれる単位データ(Di)のハッシュ値を算出する。
The
また、署名部3211は、算出したハッシュ値(Hash(Di))を連結することで、Digestを生成する。また、署名部3211は、下式に示すSignアルゴリズムを用いて、生成したDigestに署名を付加することで、署名値(T)を生成する。
Also, the
なお、上記説明では、秘密分散データ生成部111が、秘密分散データと署名値(S)とを同報送信するものとして説明したが、秘密分散データのみを同報送信するようにしてもよい。この場合、真正性保証サーバ3210では、データ検証部121によるデータ検証処理は行われず、署名部3211による署名処理のみが行われる。
In the above description, the secret distribution
<2.真正性保証サーバによる署名処理>
次に、真正性保証サーバ3210による署名処理の流れについて説明する。図33は、署名処理の流れを示すフローチャートである。真正性保証サーバ3210が、撮像装置110及びサーバ装置120と通信可能に接続されることで、図33に示すフローチャートが実行される。
<2. Signature processing by authenticity assurance server>
Next, the flow of signature processing by the
ステップS3301において、データ検証部121は、撮像装置110より送信された秘密分散データ及び署名値(S)を受信する。
In step S3301, the
ステップS3302において、データ検証部121は、データ検証処理を行う。なお、データ検証処理の詳細は、図9を用いて説明済みであるため、ここでは説明を省略する。また、ここでは、ステップS3301において受信した秘密分散データの真正性の検証に成功したものとして説明する。
In step S3302, the
ステップS3303において、署名部3211は、秘密分散データに含まれる単位データ(Di)について、ハッシュ値(Hash(Di))を算出する。
In step S3303, the
ステップS3304において、署名部3211は、算出したハッシュ値(Hash(Di))を連結して、Digestを生成する。
In step S3304, the
ステップS3305において、署名部3211は、Signアルゴリズムを用いて、生成したDigestに署名を付加することで、署名値(T)を生成する。
In step S3305, the
ステップS3306において、署名部3211は、生成したDigestと署名値(T)の組を、サーバ装置120に送信する。
In step S3306, the
これにより、サーバ装置120のデータ検証部2620において、真正性署名値検証部3001が、真正性保証サーバ3210より受信した署名値(T)を用いて、Digestについて署名検証を行うことができる。
As a result, in the
また、Digestについての署名検証に成功した場合、データ検証部2620において、データ真正性検証部3002が、偽造判定手段として機能することができる。具体的には、データ真正性検証部3002が、撮像装置110より受信した秘密分散データに含まれる単位データ(Di)について、署名検証に成功したDigestを用いて、真正性(単位データ(Di)が偽造されていないこと)を検証することができる。
Further, when the signature verification of the Digist is successful, the data
<3.まとめ>
以上の説明から明らかなように、第9の実施形態におけるデータ記録システムでは、
・真正性保証サーバが、秘密分散データに含まれる単位データ(Di)のハッシュ値のDigestを生成するとともに、生成したDigestに署名を付加することで署名値(T)を生成する。
・真正性保証サーバが、生成したDigest及び署名値(T)を、サーバ装置に送信する。
<3. Summary>
As is clear from the above description, in the data recording system according to the ninth embodiment,
-The authenticity guarantee server generates a Digest of the hash value of the unit data ( Di ) included in the secret distribution data, and also generates a signature value (T) by adding a signature to the generated Digist.
-The authenticity guarantee server transmits the generated Digist and signature value (T) to the server device.
これにより、第9の実施形態におけるデータ記録システムによれば、上記第8の実施形態と同様、秘密分散データの偽造を防止することができる。また、第9の実施形態におけるデータ記録システムによれば、第8の実施形態におけるデータ記録システムと比較して、撮像装置110の処理負荷を低減させることができる。
As a result, according to the data recording system in the ninth embodiment, forgery of secretly distributed data can be prevented as in the eighth embodiment. Further, according to the data recording system according to the ninth embodiment, the processing load of the
[第10の実施形態]
上記第9の実施形態では、真正性保証サーバ3210を配し、秘密分散データに含まれる単位データ(Di)について、サーバ装置120において、真正性(単位データ(Di)が偽造されていないこと)が検証できる構成とした。
[10th Embodiment]
In the first 9 embodiment, arranged
これに対して、第10の実施形態では、サーバ装置120において、秘密分散データに含まれる単位データ(Di)とパラメータ情報(Wi)の両方について、真正性が検証できる構成とする。以下、第10の実施形態について、上記第9の実施形態との相違点を中心に説明する。
In contrast, in the tenth embodiment, the
<1.データ記録システムの構成>
図34は、データ記録システムのシステム構成の一例を示す図である。図32に示したデータ記録システム3200との相違点は、署名部3411とデータ検証部3420である。
<1. Data recording system configuration>
FIG. 34 is a diagram showing an example of the system configuration of the data recording system. The difference from the
データ記録システム3400において、署名部3411は、第2の署名手段に加えて第3の署名手段としても機能する。
In the
具体的には、第2の署名手段として機能する場合、署名部3411は、撮像装置110より送信された秘密分散データに含まれる単位データ(Di)のハッシュ値(Hash(Di))を算出する。また、署名部3411は、算出したハッシュ値(Hash(Di))を連結することで、Digest1を生成し、生成したDigest1に署名を付加することで、署名値(T)を生成する。
Specifically, when functioning as the second signature means, the
また、第3の署名手段として機能する場合、署名部3411は、撮像装置110より送信された秘密分散データに含まれるパラメータ情報(Wi)を取得し、取得したパラメータ情報(Wi)を連結することで、Digest2を生成する。また、署名部3411は、生成したDigest2に署名を付加することで、署名値(U)を生成する。
When functioning as a third signature means, the
更に、署名部3411は、第2の送信手段に加えて第3の送信手段としても機能する。具体的には、第2の送信手段として機能する場合、署名部3411は、第2の組(Digest1及び署名値(T))をサーバ装置120に送信する。また、第3の送信手段として機能する場合、署名部3411は、第3の組(Digest2及び署名値(U))を、サーバ装置120に送信する。
Further, the
また、データ記録システム3400において、データ検証部3420は、秘密分散データに含まれる単位データ(Di)に加え、パラメータ情報(Wi)の真正性(パラメータ情報(Wi)が偽造されていないこと)を検証する機能を有する。
In the
具体的には、データ検証部3420の真正性署名値検証部3001が、真正性保証サーバ3410より受信した署名値(U)を用いて、Digest2について署名検証を行う。
Specifically, the authenticity signature
また、Digest2について署名検証に成功した場合、データ検証部3420において、データ真正性検証部3002は、秘密分散データに含まれるパラメータ情報(Wi)について、署名検証に成功したDigest2を用いて真正性を検証する。
Also, if successful signature verification for Digest2, the data verification unit 3420, the data
これにより、データ検証部3420は、秘密分散データに含まれるパラメータ情報(Wi)の真正性(パラメータ情報(Wi)が偽造されていないこと)を検証することができる。 Thus, the data verifying unit 3420 may verify the authenticity of the parameter information included in the secret distribution data (W i) (the parameter information (W i) is not forged).
<2.署名部による署名処理>
次に、真正性保証サーバ3410の署名部3411による署名処理の流れについて説明する。図35は、署名処理の流れを示すフローチャートである。図33のフローチャートとの相違点は、ステップS3501〜S3503である。
<2. Signature processing by the signature department>
Next, the flow of the signature process by the
ステップS3501において、署名部3411は、秘密分散データに含まれるパラメータ情報(Wi)に基づいて、Digest2を生成する。
In step S3501, the
ステップS3502において、署名部3411は、生成したDigest2に署名を付加することで、署名値(U)を生成する。
In step S3502, the
ステップS3503において、署名部3411は、ステップS3304、S3305において生成したDigest1及び署名値(T)と、ステップS3502、S3503において生成したDigest2及び署名値(U)とを、サーバ装置120に送信する。
In step S3503, the
<3.データ検証部によるデータ検証処理(偽造、改竄)>
次に、本実施形態において、データ検証部3420によるデータ検証処理(偽造、改竄)の流れについて説明する。図36は、データ検証処理(偽造、改竄)の流れを示すフローチャートである。なお、ここでは、図31に示したデータ検証処理(偽造、改竄)との相違点を中心に説明する。図31に示したデータ検証処理(偽造、改竄)との相違点は、ステップS3601及びステップS3602〜S3606である。
<3. Data verification processing by the data verification department (counterfeiting, falsification)>
Next, in the present embodiment, the flow of the data verification process (counterfeiting, falsification) by the data verification unit 3420 will be described. FIG. 36 is a flowchart showing the flow of data verification processing (counterfeiting, falsification). Here, the differences from the data verification process (counterfeiting, falsification) shown in FIG. 31 will be mainly described. The difference from the data verification process (counterfeiting, falsification) shown in FIG. 31 is step S3601 and steps S3602 to S3606.
ステップS3601において、データ受信部801は、真正性保証サーバ3210より送信されたDigest1、署名値(T)、Digest2、署名値(U)を受信する。また、格納処理部802は、データ受信部801が受信したDigest1、署名値(T)、Digest2、署名値(U)をデータ格納部122に格納する。
In step S3601, the
ステップS3602において、真正性署名値検証部3001は、データ格納部122に格納された署名値(T)を用いて、データ格納部122に格納されたDigest1について署名検証を行う。具体的には、真正性署名値検証部3001は、署名値(T)についてvrfyアルゴリズムを用いて算出したDigest1と、データ格納部122に格納されたDigest1とが一致するか否かを判定する。これにより、真正性署名値検証部3001は、データ格納部122に格納されたDigest1が正しいか否かを判定する。
In step S3602, the authenticity signature
判定の結果、データ格納部122に格納されたDigest1が正しくないと判定した場合(ステップS3602においてNoの場合)には、図37のステップS907に進む。この場合、真正性署名値検証部3001は、データ格納部122より読み出したDigest1について、署名検証に失敗したと判定する。
As a result of the determination, if it is determined that the
一方、判定の結果、データ格納部122に格納されたDigest1が正しいと判定した場合(ステップS3602においてYesの場合)には、ステップS3603に進む。
On the other hand, if it is determined as a result of the determination that the
ステップS3603において、データ真正性検証部3002は、データ格納部122に格納された秘密分散データに含まれる単位データ(Di)を読み出し、ハッシュ値(Hash(Di))を算出する。
In step S3603, the data
ステップS3604において、データ真正性検証部3002は、算出したハッシュ値(Hash(Di))と、真正性署名値検証部3001において署名検証に成功したDigest1に含まれるハッシュ値(Hash(Di))とを比較する。比較の結果、算出したハッシュ値(Hash(Di))の中に、Digest1に含まれていないハッシュ値があった場合には(ステップS3604においてNoの場合には)、図37のステップS907に進む。この場合、データ真正性検証部3002は、データ格納部122より読み出した秘密分散データに含まれる単位データ(Di)について、署名検証に失敗した(秘密分散データに含まれる単位データ(Di)が偽造されている)と判定する。
In step S3604, the data
一方、算出したハッシュ値(Hash(Di))が全てDigest1に含まれていた場合には(ステップS3604においてYesの場合には)、データ真正性検証部3002は、ステップS3605に進む。
On the other hand, when the calculated hash value (Hash (D i)) is included all Digest1 is (in case of Yes in step S3604 is), the data
ステップS3605において、真正性署名値検証部3001は、データ格納部122に格納された署名値(U)を用いて、データ格納部122に格納されたDigest2について署名検証を行う。具体的には、真正性署名値検証部3001は、署名値(U)についてvrfyアルゴリズムを用いて算出したDigest2と、データ格納部122に格納されたDigest2とが一致するか否かを判定する。これにより、真正性署名値検証部3001は、データ格納部122に格納されたDigest2が正しいか否かを判定する。
In step S3605, the authenticity signature
判定の結果、データ格納部122に格納されたDigest2が正しくないと判定した場合(ステップS3605においてNoの場合)には、図37のステップS907に進む。この場合、真正性署名値検証部3001は、データ格納部122より読み出したDigest2について、署名検証に失敗したと判定する。
As a result of the determination, if it is determined that the
一方、判定の結果、データ格納部122に格納されたDigest2が正しいと判定した場合(ステップS3605においてYesの場合)には、ステップS3606に進む。
On the other hand, if it is determined as a result of the determination that the
ステップS3606において、データ真正性検証部3002は、データ格納部122に格納された秘密分散データに含まれる単位データ(Wi)を読み出し、真正性署名値検証部3001において署名検証に成功したDigest2と比較する。
In step S3606, the data
比較の結果、読み出した単位データ(Wi)の中に、Digest2に含まれていないパラメータ情報があった場合には(ステップS3606においてNoの場合には)、図37のステップS907に進む。この場合、データ真正性検証部3002は、データ格納部122より読み出した秘密分散データに含まれるパラメータ情報(Wi)について、署名検証に失敗した(秘密分散データに含まれるパラメータ情報(Wi)が偽造されている)と判定する。
Result of the comparison, in the read unit data (W i), (in the case of No in step S3606). If there is parameter information that is not included in Digest2, the process proceeds to step S907 in FIG. 37. In this case, the data
一方、読み出したパラメータ情報(Wi)が全てDigest2に含まれていた場合には(ステップS3606においてYesの場合には)、データ真正性検証部3002は、ステップS3607に進む。
On the other hand, if the read parameter information (W i) is included in all Digest2 (in the case of Yes in step S3606 is), the data
ステップS3607において、データ真正性検証部3002は、署名検証に成功した(秘密分散データに含まれる単位データ(Di)とパラメータ情報(Wi)のいずれも偽造されていない)と判定する。
In step S3607, the data
ステップS3607において署名検証に成功したと判定した場合には、図37のステップS903に進み、以降、秘密分散データが改竄されているか否かの署名検証を行う。署名検証の結果、署名検証に成功した場合、ステップS908において、署名値検証部804は、秘密分散データが改竄されていないと判定する。
If it is determined in step S3607 that the signature verification is successful, the process proceeds to step S903 of FIG. 37, and thereafter, signature verification is performed to see if the secret sharing data has been tampered with. If the signature verification is successful as a result of the signature verification, in step S908, the signature
このように、第10の実施形態によれば、サーバ装置120は、秘密分散データに含まれる単位データ(Di)とパラメータ情報(Wi)の両方について、真正性を検証することが可能となる。
Thus, according to the tenth embodiment, the
なお、図36の説明では、秘密分散データに含まれる単位データ(Di)全てについて真正性を検証してから、パラメータ情報(Wi)の真正性の検証を開始する構成とした。しかしながら、真正性の検証の順序はこれに限定されず、パラメータ情報(Wi)全てについて真正性を検証してから、単位データ(Di)の真正性の検証を開始するように構成してもよい。あるいは、単位データ(Di)についての真正性の検証とパラメータ情報(Wi)についての真正性の検証とを交互に行うように構成してもよい。 In the description of FIG. 36, the authenticity of all the unit data ( Di ) included in the secret sharing data is verified, and then the authenticity of the parameter information ( Wi ) is started. However, the order of authenticity verification is not limited to this, and the authenticity of all the parameter information ( Wi ) is verified before the authenticity verification of the unit data ( Di ) is started. May be good. Alternatively, the authenticity verification of the unit data (D i ) and the authenticity verification of the parameter information ( Wi ) may be alternately performed.
[第11の実施形態]
上記第9及び第10の実施形態では、撮像装置110が秘密分散データ及び署名値(S)を同報送信する場合について説明した。これに対して、第11の実施形態では、ルータ装置を配し、ルータ装置が秘密分散データ及び署名値(S)を同報送信する。以下、第11の実施形態について説明する。
[11th Embodiment]
In the ninth and tenth embodiments, the case where the
図38は、データ記録システムのシステム構成の一例を示す図である。図34に示したデータ記録システム3400との相違点は、ルータ装置3810を有する点である。
FIG. 38 is a diagram showing an example of the system configuration of the data recording system. The difference from the
ルータ装置3810は、撮像装置110と接続され、撮像装置110より送信された秘密分散データ及び署名値(S)を、ネットワークを介して接続されたサーバ装置120及び真正性保証サーバ3410に同報送信する。
The
このように、ルータ装置3810を配することで、撮像装置110の送信負荷を軽減させることができる。
By arranging the
[その他の実施形態]
上記第1乃至第11の実施形態では、撮像装置110において生成される動画像データに対して、秘密分散プロトコルを適用する場合について説明した。しかしながら、秘密分散プロトコルを適用する対象は、動画像データに限定されない。音声データや温度データ等、任意の時系列データに対して適用することができる。
[Other Embodiments]
In the first to eleventh embodiments described above, a case where the secret sharing protocol is applied to the moving image data generated by the
また、上記第1乃至第11の実施形態では、データカウンタ部504を配し、所定数(n)の単位データ(Di)ごとに、署名値(S)を算出する構成とした。しかしながら、署名値を算出するタイミングは、所定数(n)の単位データ(Di)ごとでなくてもよい。例えば、所定時間分の単位データ(Di)ごとに署名値を算出する構成としてもよい。つまり、署名値(S)の算出は、時系列データの所定の区間の単位データに対して行われればよい。
Further, in the above-described first to eleventh embodiment, arranged data counter
また、上記第1乃至第11の実施形態では、ハッシュ生成部506が単位データ(Di)のハッシュ値を算出し、パラメータ情報生成部507が、ハッシュ生成部506で算出されたハッシュ値に基づいて、パラメータ情報(Wi)を算出する構成とした。しかしながら、パラメータ情報生成部507は、単位データ(Di)に基づいて、直接、パラメータ情報(Wi)を算出するように構成してもよい。
Further, in the first to eleventh embodiments, the
また、上記第1乃至第11の実施形態では、CPU402が秘密分散データ生成プログラムを実行することで、秘密分散データ生成部を実現するものとして説明した。しかしながら、秘密分散データ生成部は、例えば、GPU(Graphics Processing Unit)を用いて実現してもよい。
Further, in the first to eleventh embodiments described above, the
また、上記第8の実施形態では、秘密分散データ生成部2610が、Digestと署名値(T)とを送信する構成としたが、上記第10の実施形態と同様に、Digest1と署名値(T)、Digest2と署名値(U)を送信する構成としてもよい。この場合、署名部2701が第2及び第3の署名手段として機能し、データ送信部510が第1乃至第3の送信手段として機能することになる。
Further, in the eighth embodiment, the secret sharing
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせなど、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。 The present invention is not limited to the configurations shown here, such as combinations with other elements in the configurations and the like described in the above embodiments. These points can be changed without departing from the spirit of the present invention, and can be appropriately determined according to the application form thereof.
100 :データ記録システム
110 :データ生成装置(撮像装置)
111 :秘密分散データ生成部
120 :データ記憶装置(サーバ装置)
121 :データ検証部
122 :データ格納部
501 :データ入力部
502 :圧縮部
503 :データバッファ部
504 :データカウンタ部
505 :署名パラメータ生成部
506 :ハッシュ生成部
507 :パラメータ情報生成部
508 :ストリームパケット生成部
509 :署名部
510 :データ送信部
801 :データ受信部
802 :格納処理部
803 :署名値演算部
804 :署名値検証部
1101 :設定パラメータ入力部
1102 :設定パラメータ記憶部
1200 :設定パラメータ情報
1301 :補助記憶装置
1401 :データ結合部
1402 :記憶制御部
1601 :重要度決定部
2610 :秘密分散データ生成部
2620 :データ検証部
2701 :署名部
3001 :真正性署名値検証部
3002 :データ真正性検証部
3210 :真正性保証サーバ
3211 :署名部
3411 :署名部
3420 :データ検証部
100: Data recording system 110: Data generator (imaging device)
111: Secret distributed data generation unit 120: Data storage device (server device)
121: Data verification unit 122: Data storage unit 501: Data input unit 502: Compression unit 503: Data buffer unit 504: Data counter unit 505: Signature parameter generation unit 506: Hash generation unit 507: Parameter information generation unit 508: Stream packet Generation unit 509: Signature unit 510: Data transmission unit 801: Data reception unit 802: Storage processing unit 803: Sign value calculation unit 804: Sign value verification unit 1101: Setting parameter input unit 1102: Setting parameter storage unit 1200: Setting parameter information 1301: Auxiliary storage device 1401: Data coupling unit 1402: Storage control unit 1601: Importance determination unit 2610: Secret distribution data generation unit 2620: Data verification unit 2701: Signature unit 3001: Authenticity Signature value verification unit 3002: Data authenticity Verification unit 3210: Authenticity guarantee server 3211: Signature unit 3411: Signature unit 3420: Data verification unit
Claims (13)
前記取得したデータと、該取得したデータに基づいて算出された前記パラメータ情報とを対応付けて出力する出力手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との組がk個集まることで算出可能となる、秘密分散プロトコルに基づく秘密情報に、署名を付加して出力する第1の署名手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを送信するとともに、前記第1の署名手段が署名を付加して出力した前記秘密情報を送信する第1の送信手段と、
前記取得したデータのハッシュ値に署名を付加して出力する第2の署名手段と、
前記取得したデータのハッシュ値と、前記第2の署名手段が署名を付加して出力したハッシュ値とを送信する第2の送信手段と
を有することを特徴とするデータ生成装置。 From the time series data, n (2 or more integers) of data included in a predetermined interval are sequentially acquired, and based on the acquired data, k (k is an integer of 1 or more and less than n) disorder. A calculation means for calculating parameter information that satisfies the (k-1) -order polynomial containing numerical values, and
An output means for associating the acquired data with the parameter information calculated based on the acquired data and outputting the data.
A signature is added to the secret information based on the secret sharing protocol, which can be calculated by collecting k sets of the acquired data and the parameter information output in association with the acquired data, and output. and the first signature means,
A first transmission in which the acquired data and the parameter information output in association with the acquired data are transmitted, and the secret information output with the signature added by the first signature means is transmitted. Means and
A second signature means for adding a signature to the hash value of the acquired data and outputting the data,
A data generation device comprising: a second transmission means for transmitting a hash value of the acquired data and a hash value output by the second signature means with a signature added .
前記算出手段は、前記取得したデータに基づいて、前記決定手段により決定された重要度に応じた数の前記パラメータ情報を算出することを特徴とする請求項1に記載のデータ生成装置。 Further having a determination means for determining the importance of the acquired data,
The data generation device according to claim 1 , wherein the calculation means calculates a number of the parameter information according to the importance determined by the determination means based on the acquired data.
前記重要度が所定値以上であった場合、前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを複数回送信することを特徴とする請求項5に記載のデータ生成装置。 The first transmission means is
The data according to claim 5 , wherein when the importance is equal to or higher than a predetermined value, the acquired data and the parameter information output in association with the acquired data are transmitted a plurality of times. Generator.
前記第1の送信手段は、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを送信した後に、送信先から再送要求を受信した場合に、前記保持手段に保持されている、前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを送信することを特徴とする請求項5に記載のデータ生成装置。 When the importance is equal to or higher than a predetermined value, it further has a holding means for holding the acquired data and the parameter information output in association with the acquired data.
The first transmission means is
The acquired data held in the holding means when a retransmission request is received from the transmission destination after transmitting the acquired data and the parameter information output in association with the acquired data. The data generation device according to claim 5 , wherein the data generation device and the parameter information output in association with the acquired data are transmitted.
前記データ生成装置は、
時系列のデータから、所定の区間に含まれるn個(2以上の整数)のデータを順次取得し、該取得したデータに基づいて、k個(kは1以上でn未満の整数)の乱数値が含まれる(k−1)次の多項式を満たすパラメータ情報を算出する算出手段と、
前記取得したデータと、該取得したデータに基づいて算出された前記パラメータ情報とを対応付けて出力する出力手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との組がk個集まることで算出可能となる、秘密分散プロトコルに基づく秘密情報に、署名を付加して出力する第1の署名手段と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との第1の組を送信するとともに、前記第1の署名手段が署名を付加して出力した前記秘密情報を送信する第1の送信手段と、
前記取得したデータのハッシュ値に署名を付加して出力する第2の署名手段と、
前記取得したデータのハッシュ値と、前記第2の署名手段が署名を付加して出力したハッシュ値との第2の組を送信する第2の送信手段と
を有することを特徴とするデータ記録システム。 A data recording system having a data generation device and a data storage device connected to the data generation device.
The data generator is
From the time series data, n (2 or more integers) of data included in a predetermined interval are sequentially acquired, and based on the acquired data, k (k is an integer of 1 or more and less than n) disorder. A calculation means for calculating parameter information that satisfies the (k-1) -order polynomial containing numerical values, and
An output means for associating the acquired data with the parameter information calculated based on the acquired data and outputting the data.
A signature is added to the secret information based on the secret sharing protocol, which can be calculated by collecting k sets of the acquired data and the parameter information output in association with the acquired data, and output. and the first signature means,
The first set of the acquired data and the parameter information output in association with the acquired data is transmitted, and the secret information output with the signature added by the first signature means is transmitted. The first means of transmission and
A second signature means for adding a signature to the hash value of the acquired data and outputting the data,
A data recording system characterized by having a second transmission means for transmitting a second set of a hash value of the acquired data and a hash value output by the second signature means with a signature added. ..
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との前記第1の組を受信する受信手段と、
受信された前記第1の組の数がk個以上か否かに基づいて、署名検証の成否を判定する第1の改竄判定手段と
を有することを特徴とする請求項8に記載のデータ記録システム。 The data storage device is
And data the acquired, receiving means for receiving said first set of said parameter information is outputted in association with the data the acquired,
The data record according to claim 8 , further comprising a first falsification determination means for determining the success or failure of signature verification based on whether or not the number of the first set received is k or more. system.
前記データ記憶装置は、
前記第1の改竄判定手段によりk個以上と判定された場合に、k個の前記第1の組に基づいて算出した前記秘密情報と、前記受信手段により受信された前記秘密情報とを比較することで、署名検証の成否を判定する第2の改竄判定手段を有することを特徴とする請求項9に記載のデータ記録システム。 The receiving means further receives the signed confidential information.
The data storage device is
When k or more are determined by the first falsification determination means, the secret information calculated based on the k first set is compared with the secret information received by the receiving means. The data recording system according to claim 9 , further comprising a second falsification determination means for determining the success or failure of signature verification.
前記データ記憶装置は、更に、
受信された前記第2の組の署名検証が成功した場合に、該署名検証が成功した第2の組を用いて、受信された前記第1の組に含まれる前記取得したデータについて、署名検証の成否を判定する偽造判定手段を有することを特徴とする請求項9に記載にデータ記録システム。 The receiving means further receives the second set transmitted by the second transmitting means.
The data storage device further
When the received signature verification of the second set is successful, the signature verification is performed on the acquired data included in the received first set using the second set in which the signature verification is successful. The data recording system according to claim 9 , further comprising a counterfeit determination means for determining the success or failure of the above.
受信された前記第1の組に含まれる前記取得したデータのハッシュ値と、受信された前記第2の組に含まれる前記取得したデータのハッシュ値とを比較することで、受信された前記第1の組に含まれる前記取得したデータの成否を判定することを特徴とする請求項11に記載のデータ記録システム。 The counterfeit determination means is
By comparing the hash value of the acquired data included in the received first set with the hash value of the acquired data included in the received second set, the received first set The data recording system according to claim 11 , wherein the success or failure of the acquired data included in the set of 1 is determined.
前記取得したデータと、該取得したデータに基づいて算出された前記パラメータ情報とを対応付けて出力する出力工程と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報との組がk個集まることで算出可能となる、秘密分散プロトコルに基づく秘密情報に、署名を付加して出力する第1の署名工程と、
前記取得したデータと、該取得したデータに対応付けて出力された前記パラメータ情報とを送信するとともに、前記第1の署名工程において署名を付加して出力した前記秘密情報を送信する第1の送信工程と、
前記取得したデータのハッシュ値に署名を付加して出力する第2の署名工程と、
前記取得したデータのハッシュ値と、前記第2の署名工程において署名を付加して出力したハッシュ値とを送信する第2の送信工程と
をコンピュータに実行させるためのプログラム。 From the time series data, n (2 or more integers) of data included in a predetermined interval are sequentially acquired, and based on the acquired data, k (k is an integer of 1 or more and less than n) disorder A calculation process for calculating parameter information that satisfies the (k-1) -order polynomial containing numerical values, and
An output process for associating the acquired data with the parameter information calculated based on the acquired data and outputting the data.
A signature is added to the secret information based on the secret sharing protocol, which can be calculated by collecting k sets of the acquired data and the parameter information output in association with the acquired data, and output. and the first of the signature process,
A first transmission in which the acquired data and the parameter information output in association with the acquired data are transmitted, and the secret information output with a signature added in the first signature step is transmitted. Process and
A second signature step of adding a signature to the hash value of the acquired data and outputting it, and
A program for causing a computer to execute a second transmission step of transmitting a hash value of the acquired data and a hash value output with a signature added in the second signature step .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/447,334 US10541817B2 (en) | 2016-03-14 | 2017-03-02 | Data generation apparatus, data recording system, and program product |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016049491 | 2016-03-14 | ||
JP2016049491 | 2016-03-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017169183A JP2017169183A (en) | 2017-09-21 |
JP6759818B2 true JP6759818B2 (en) | 2020-09-23 |
Family
ID=59909194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016150750A Active JP6759818B2 (en) | 2016-03-14 | 2016-07-29 | Data generators, data recording systems and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6759818B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019047331A (en) * | 2017-09-01 | 2019-03-22 | 株式会社リコー | Data generation device, data generation method and program, and data recording system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3507341B2 (en) * | 1998-08-10 | 2004-03-15 | 日本電信電話株式会社 | Data storage system and its program recording medium |
JP2005051734A (en) * | 2003-07-15 | 2005-02-24 | Hitachi Ltd | Electronic document authenticity assurance method and electronic document disclosure system |
JP4474267B2 (en) * | 2004-12-09 | 2010-06-02 | キヤノン株式会社 | Cryptographic processing device |
JP4359622B2 (en) * | 2007-01-22 | 2009-11-04 | 富士通株式会社 | Electronic signature program and electronic signature device |
JP4584300B2 (en) * | 2007-12-19 | 2010-11-17 | 富士通株式会社 | Electronic signature program, computer-readable recording medium, electronic signature device, and electronic signature method |
JP5548419B2 (en) * | 2009-09-30 | 2014-07-16 | 富士通株式会社 | Signature generation device, signature verification device, signature generation method, signature verification method, signature generation program, and signature verification program |
WO2015045173A1 (en) * | 2013-09-30 | 2015-04-02 | 惠市 岩村 | Digital data edit control method, device, and program, and computer readable storage medium |
-
2016
- 2016-07-29 JP JP2016150750A patent/JP6759818B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017169183A (en) | 2017-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427957B (en) | Block chain voting information verification method, device, equipment and storage medium | |
CN109508984B (en) | Block chain electronic evidence storing method based on deterministic consensus and trusted timestamp | |
CN110008722B (en) | Block chain-based method, device and storage medium for processing accreditation transfer rewards | |
US20230351375A1 (en) | Data distribution method, authentication server, and data structure | |
CN108769171A (en) | The copy of distributed storage keeps verification method, device, equipment and storage medium | |
CN108924205B (en) | Data transmission method and device, electronic equipment and gatekeeper adapter | |
CN112307458A (en) | Light node uplink method and device, Internet of things central control terminal and block chain network | |
CN101647229B (en) | Compressed ecdsa signatures | |
US10133501B2 (en) | Data generating apparatus, data generating method, and data recording system | |
CN109714623A (en) | Image presentation method, device, electronic equipment and computer readable storage medium | |
CN110351281A (en) | A kind of general data frame analytic method, device and equipment | |
JP6759818B2 (en) | Data generators, data recording systems and programs | |
CN115412696A (en) | Digital evidence-obtaining image verification system | |
CN105898211A (en) | Multimedia information processing method and device | |
CN112311755A (en) | Industrial control protocol reverse analysis method and device | |
US11599570B2 (en) | Device and method to render multimedia data stream tamper-proof based on block chain recording | |
CN111988264A (en) | Block chain and network system, data receiving and sending method and equipment | |
US10348507B2 (en) | Data processing system, data processing apparatus, and data processing method | |
US20180288444A1 (en) | Abnormality detection program, abnormality detection apparatus and abnormality detection method | |
CN112381400A (en) | Apparatus, method, electronic device and storage medium for offline service spot check | |
JP2019047331A (en) | Data generation device, data generation method and program, and data recording system | |
CN113037496B (en) | Video acquisition device and method based on block chain technology | |
US20180365300A1 (en) | Data distribution apparatus and data distribution system | |
CN114780987B (en) | Data distribution, storage, reading and transmission method and distributed system | |
WO2022249553A1 (en) | Information processing device, method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200519 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200720 |
|
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: 20200804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200817 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6759818 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |