JP4901499B2 - データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体 - Google Patents

データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体 Download PDF

Info

Publication number
JP4901499B2
JP4901499B2 JP2007011486A JP2007011486A JP4901499B2 JP 4901499 B2 JP4901499 B2 JP 4901499B2 JP 2007011486 A JP2007011486 A JP 2007011486A JP 2007011486 A JP2007011486 A JP 2007011486A JP 4901499 B2 JP4901499 B2 JP 4901499B2
Authority
JP
Japan
Prior art keywords
information
data
identifier
unit
data verification
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.)
Expired - Fee Related
Application number
JP2007011486A
Other languages
English (en)
Other versions
JP2008178005A (ja
Inventor
剛 山本
哲 小田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007011486A priority Critical patent/JP4901499B2/ja
Publication of JP2008178005A publication Critical patent/JP2008178005A/ja
Application granted granted Critical
Publication of JP4901499B2 publication Critical patent/JP4901499B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データの整合性を検証する技術に関し、詳しくは、時間的又は物理的に離隔した2つのデータが同一であるかどうかを検証するデータ検証システム、その方法、識別子生成装置、データ検証装置、それらのプログラム及びそのプログラムを記憶する記録媒体に関する。
物理媒体に記憶されている情報は、時間を経ることにより様々なトラブルによって変化することがある。この変化を検出する手法としてはビット誤りを検出するparityやバースト誤りを検出するCRCなどが有名である。これらの方式は計算が簡便であり、ディスクの異常を検知する方法として応用されRAIDなどのハードディスクやフレキシブルディスクで用いられている。
また、物理媒体同士が通信を行って転送される経路中になんらかのトラブルで情報が変化することもある。このため、巨大なデータXをダウンロードする場合は、データXと同時にMD5やSHA−1のハッシュ値などによる短いビット長からなる識別子Yをダウンロードし、整合性が疑われるデータX´(ダウンロードを経たデータX)について識別子を計算して、データXの識別子Yと比較することで正しくダウンロードできたかどうかを確認することがある。
もちろん、先の誤り検出符号を用いても同様の変化の検出が可能であるが、特にインターネットなどの不特定多数が利用するネットワークを介した通信の場合、通信内容が悪意のあるエンティティに書き換えられることも考慮し、人為的な操作に対しても暗号学的に安全なハッシュ関数などを用いることが多い。
Bruce Schneier 著、山形浩生 訳、"暗号技術大全"、p475〜509、ソフトバンクパブリッシング、2003年
ハッシュ関数などによる安全性を考慮した識別子は、識別子が計算される周辺の状況に比べ計算量が相対的に多く、識別子の計算に時間がかかる点である。このことは、特に検証対象のデータXが巨大な場合に顕著である。近年ではハッシュ関数計算処理も高速化が図られてはいるが、ADSLや光ファイバを利用した通信回線の普及に伴って回線速度が飛躍的に上昇している。そのため、データXがこのような高速ネットワークにより伝送される場合、通信の完全性をハッシュ関数などを用いてリアルタイムに検証することが困難になっている。
本発明のデータ検証システムは、第1データ記憶部、第1データ分割部、識別子計算部、識別子記憶部、第2データ記憶部、第2データ分割部、Y´計算部、x計算部、C計算部及び整合性判定部を具備する。
第1データ記憶部は、所定の情報Xを記憶する。
第1データ分割部は、上記情報Xが入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成し出力する。
識別子計算部は、上記分割情報Xiが入力され、識別子Y
Figure 0004901499
(N、gは共に2以上の自然数)により計算し出力する。
識別子記憶部は、上記計算した識別子Yを記憶する。
第2データ記憶部は、上記情報Xとの比較対象とする情報X´を記憶する。
第2データ分割部は、上記情報X´が入力され、これを上記予め定められた手順に従いd個に分割して分割情報Xi´を生成し出力する。
Y´計算部は、上記識別子Yが入力され、Y´を
Figure 0004901499
(eは整数)により計算し出力する。
x計算部は、上記分割情報X´が入力され、xを
Figure 0004901499
により計算し、出力する。
C計算部は、上記xが入力され、Cを
C=gmod N (4)
により計算し出力する。
整合性判定部は、上記Y´と上記Cとが入力され、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力する。
本発明のデータ検証システムは、識別子の生成と整合性の検証に異なるアルゴリズムを用いることにより、計算回数が少ない識別子生成時の計算の1回の計算量より、計算回数の多い整合性検証時の計算の1回の計算量を小さくしている。このように計算上の傾向を加味したアルゴリズムにすることで、従来のハッシュ関数などを用いる検証方法より全体の計算量を小さくすることができ、よって検証を高速化できる。
〔第1実施形態〕
図1、図2は第1実施形態のデータ検証システムを構成する識別子生成装置10とデータ検証装置20の機能構成例である。また、図3は第1実施形態の処理フローである。
識別子生成装置10は、第1データ記憶部11、第1データ分割部12、識別子計算部13、送信部18及び制御部19から構成される。
第1データ記憶部11は、検証の元となるデータXが記憶される(S1)。
第1データ分割部12は、第1データ記憶部11に記憶されたデータXが入力されると、これをd個(dは2以上の自然数)に分割して、d個の分割情報X(2≦i≦d)を出力する(S2)。
dの値については適宜決定してよく、例えばdを定数として定めてもよいし、個々のXが全て同じ長さとなるようにXの長さに応じて定めてもよい。
データXをd個に分割する方法についても適宜決定してよく、例えばデータX全体を単純にd個に分割してもよいし、先頭から1ワードごとにXに割り振ってもよい。
識別子計算部13は、第1データ分割部12で分割されたd個のXが入力されると、Xに対応するd個の識別子Yを式(1)により計算して出力する(S3)。なお、Nとgは共に2以上の自然数である。
上記計算の際にはXを適当な方法で0以上の自然数に対応させる。例えば、ビット列Xを長大な2進数であると解釈して対応させる。
送信部18は、上記データXを上記d個の識別子Yと共にネットワークを介してデータ検証装置20に送信する(S4)。なお、ネットワークは装置間に距離的離隔を生じさせるものであればWANでもLANでも構わない。
制御部19は、識別子生成装置10の上記各処理を制御する。
データ検証装置20は、識別子記憶部21、第2データ記憶部22、Y´計算部23、第2データ分割部24、x計算部25、C計算部26、整合性判定部27、受信部28及び制御部29から構成される。
受信部28は、ネットワークを介して送信されたデータX´と上記d個の識別子Yとを受信する(S5)。ここで、データX´は識別子Yに基づき元データXとの整合性判定を行う対象となるデータである。なお、識別子Yは必ずデータXから生成されているものとし、また伝送路において変化・改ざん等されることなく受信されているものとする。
識別子記憶部21は、受信部28で受信したd個の識別子Yを記憶する(S6)。
第2データ記憶部22は、受信部28で受信したデータX´を記憶する(S6)。
Y´計算部23は、識別子記憶部21に記憶されたd個の識別子Yが入力されると、Y´を式(2)によって計算して出力する(S7)。なお、eは整数である。
第2データ分割部24は、第2データ記憶部22に記憶されたデータX´が入力されると、これをd個(dは2以上の自然数)に分割して、d個の分割情報X´(2≦i≦d)を出力する(S8)。dの値の決定方法及びデータX´をd個に分割する方法については、第1データ分割部12と共通の予め定められた手順による。
x計算部25は、第2データ分割部24で分割されたd個のX´が入力されると、式(3)によりxを計算して出力する(S9)。
C計算部26は、x計算部25で計算されたxが入力されると、式(4)によりCを計算して出力する(S10)。
整合性判定部27は、データXから生成された識別子Yに基づき計算された上記Y´と、データX´に基づき計算された上記Cとが入力されると、この両者を比較し、C=Y´mod NであればデータXとデータX´とは整合性有りとの判定結果を出力し、そうでなければ整合性無しとの判定結果を出力する(S11)。
制御部29は、データ検証装置20の上記各処理を制御する。
以上のように、本発明はハッシュ関数による整合性検証のように識別子生成部と検証部とで同じ演算を行うものと異なり、識別子生成部10は式(1)の演算を行い、データ検証部20は式(2)〜(4)の演算を行うというようにそれぞれ異なったアルゴリズムで演算を行う。
一般的に情報の「書き込まれる回数」と「読み込まれる回数」を比較した場合、「読み込まれる回数」の方が多いと考えられる。そのため、情報の完全性を検証する場合も、完全性の基準となる情報から識別子を生成する回数(=「書き込まれる回数」)に比べて、その基準と差異が無いかどうかを調べる検証の回数(=「読み込まれる回数」)の方が必然的に多くなる。特に大容量ファイルの代表格である映像コンテンツなどは一度作成した情報を、多くの人が何度も読み込むという状況が想定される。
そこで、演算コストが「識別子の生成」>「識別子によるデータ整合性検証」となることが望ましい状況が存在することに注目し、本発明では識別子の生成と識別子によるデータ整合性検証に異なるアルゴリズムを採用した。
具体的には、式(1)の識別子の計算量は基本的にXの大きさに比例することから、特に、Xが大きい場合においては識別子の生成にもある程度の時間を要する。しかし検証時については、式(2)の計算はXのダウンロードと並行して行うことが可能であり、式(3)の計算は単に積和をとるだけであるため負荷が小さく、式(4)の計算は1回で終わるというように、検証時の演算コストは相対的に軽量化している。
このようなアルゴリズム構成は、映像コンテンツのように、データの整合性検証にはリアルタイム性を求めるが、識別子の生成は多少遅くても問題無い場合に特に有効である。
〔第2実施形態〕
第1実施形態は、物理媒体同士が通信を行って情報が転送される経路中に何らかのトラブルで情報が変化するような場合の構成、つまり物理的に離隔したデータXとデータX´との整合性を検証する構成である。これに対し、第2実施形態は、同一の物理媒体に記憶されている情報が時間を経ることにより何らかのトラブルで情報が変化するような場合の構成、つまり時間的に離隔したデータXとデータX´との整合性を検証する構成である。従って、第2実施形態においては、第1実施形態と異なり識別子生成装置とデータ検証装置とは一体的に構成される。
図4は第2実施形態のデータ検証システムを構成する一体型装置30の機能構成例である。
一体型装置30は、データ記憶部31、データ分割部32、識別子計算部13、識別子記憶部21、Y´計算部23、x計算部25、C計算部26、整合性判定部27及び制御部39から構成される。
識別子計算部13、識別子記憶部21、Y´計算部23、x計算部25、C計算部26、整合性判定部27は第1実施形態の図1、図2の同名の部位と同じものである。従って、図4の中で図1、図2と対応する部分については同一参照番号を付け、説明は省略する。その他の図面についても同様とする。
データ記憶部31は第1実施形態の第1データ記憶部11と第2データ記憶部22の機能を合わせ持つものであり、またデータ分割部32は第1実施形態の第1データ分割部12と第2データ分割部24の機能を合わせ持つものである。
制御部39は、一体型装置30で行われる各処理を制御する。
第2実施形態の処理フローを図5に示す。
まず、検証に用いる識別子を生成する。
検証の元となるデータXがデータ記憶部31に記憶される(S1)。データ分割部32はデータ記憶部31に記憶されたデータXをd分割してd個の分割情報Xを作成し出力する。dの値の決定方法及びデータX´をd個に分割する方法については、第1データ分割部12と同様の考え方による(S2)。識別子計算部13にデータ分割部32で分割されたd個のXが入力され、Xに対応するd個の識別子Yを式(1)により計算して出力し(S3)、識別子記憶部21に記憶する(S4)。
そして、必要時などに次の検証処理を行う。
Y´計算部23は識別子記憶部21に記憶されたd個の識別子Yを用いてY´を式(2)により計算する(S5)。データ分割部32は、データ記憶部31に記憶されているデータX´(識別子生成時のデータXの、時間経過後のデータ)をS2で適用した方法と同じ方法でd分割してd個の分割情報X´を作成して出力する(S6)。x計算部25は、第2データ分割部24で分割されたd個のX´がx計算部25に入力されると式(3)によりxを計算して出力する(S7)。C計算部26は、x計算部25で計算されたxが入力されると、式(4)によりCを計算して出力する(S8)。整合性判定部27は、データXから生成された識別子Yに基づき計算された上記Y´と、データX´に基づき計算された上記Cとが入力されるとこの両者を比較し、C=Y´mod NであればデータXとデータX´とは整合性有りとの判定結果を出力し、そうでなければ整合性無しとの判定結果を出力する(S9)。
以上の構成により、同一の物理媒体に記憶されている情報が時間を経ることにより何らかのトラブルで情報が変化しても、第1実施形態同様、速やかにデータの整合性の検証を行うことができる。
〔第3実施形態〕
第3実施形態は、第2実施形態の一体型構成において外部記憶装置を使用する構成、詳しくは、識別子の生成後にデータXを一旦ネットワークを介した外部記憶装置に移動・保存し、この外部記憶装置に保存したデータX´を再度一体型装置にダウンロードする場合のデータXとデータX´との整合性を検証する構成である。
図6は第3実施形態のデータ検証システムを構成する一体型装置40と外部記憶装置200の機能構成例である。
一体型装置40は、第1データ記憶部41、データ分割部32、識別子計算部13、識別子記憶部21、Y´計算部23、x計算部25、C計算部26、整合性判定部27、送受信部48及び制御部49から構成される。
データ分割部32、識別子計算部13、識別子記憶部21、Y´計算部23、x計算部25、C計算部26、整合性判定部27は第2実施形態と同様である。
また、第1データ記憶部41は、第2実施形態のデータ記憶部31に送受信部48とのインタフェース機能を付加したものである。
送受信部48は、一体型装置40と外部記憶装置200との間の通信機能を有する。
制御部49は、一体型装置40で行われる各処理を制御する。
外部記憶装置200は、第2データ記憶部222と送受信部48とから構成される。
第2データ記憶部222は、送受信部48で受信したデータX´を記憶する。
第3実施形態の処理フローを図7に示す。
まず、一体型装置40で検証に用いる識別子を生成する。
検証の元となるデータXが第1データ記憶部41に記憶される(S1)。データ分割部32は第1データ記憶部41に記憶されたデータXをd分割してd個の分割情報Xを作成し出力する。dの値の決定方法及びデータX´をd個に分割する方法については、第1データ分割部12と同様の考え方による(S2)。識別子計算部13は、データ分割部32で分割されたd個のXが入力されると、Xに対応するd個の識別子Yを式(1)により計算して出力し(S3)、識別子記憶部21はこれを記憶する(S4)。
次に、データXを外部記憶装置200に移動・保存する。
送受信部48は第1データ記憶部41に記憶されたデータXを外部記憶装置200に送信し、送信後、制御部49は第1データ記憶部41のデータXを消除する(S5)。外部記憶装置200の送受信部48は、ネットワークを介して送信されたデータX´を受信し、データX´を第2データ記憶部222に記憶する(S6)。
そして、データX´を一体型装置40にダウンロードし整合性を検証する。
第2データ記憶部222に記憶されたデータX´は外部記憶装置200の送受信部48からネットワークを介して一体型装置40に送信される(S7)。ネットワークを介して送信されたデータX´を一体型装置40の送受信部48で受信し、第1データ記憶部41に記憶する(S8)。Y´計算部23は、識別子記憶部21に記憶されたd個の識別子Yを用いてY´を式(2)により計算する(S9)。データ分割部32は、第1データ記憶部41に記憶されているデータX´をS2で適用した方法と同じ方法でd分割してd個の分割情報X´を作成して出力する(S10)。x計算部25は、第2データ分割部24で分割されたd個のX´がx計算部25に入力されると、式(3)によりxを計算して出力する(S11)。C計算部26は、x計算部25で計算されたxが入力されると、式(4)によりCを計算して出力する(S12)。整合性判定部27は、データXから生成された識別子Yに基づき計算された上記Y´と、データX´に基づき計算された上記Cとが入力されると、この両者を比較して、C=Y´mod NであればデータXとデータX´とは整合性有りとの判定結果を出力し、そうでなければ整合性無しとの判定結果を出力する(S13)。
以上の構成により、外部記憶装置を使用する場合においても、速やかにデータXとデータX´との整合性の検証を行うことができる。
〔第4実施形態〕
第4実施形態は、識別子などの計算に用いる上記Nの値を素因数分解困難な正の合成数とし、悪意者による攻撃に対する安全性を向上するものである。
式(1)などの計算に用いるNは2以上の自然数としているが、Nが素数の場合や容易に素因数分解できる数の場合、Yの位数を知ることができ、その結果、データXに基づき生成されたYについて式(1)を成立させる複数のXiを計算できることになるため、悪意者による攻撃に対する安全性に不安が残る。
そこで、第4実施形態はNを素因数分解が困難な正の合成数とし、衝突困難性を素因数分解の困難性に帰着させることで安全性を高めることができるものである。
〔第5実施形態〕
第5実施形態は、識別子生成者がN=p・q(p、qは共に素数)のp、qを知っていることを前提として、識別子の計算の高速化を図る構成である。
図8は第5実施形態のデータ検証システムを構成する識別子生成装置50の機能構成例である。なお、ネットワークを介して対向するデータ検証装置の構成は第1実施形態と同様なものでよい。図9は第5実施形態の処理フローである。
識別子生成装置50は、第1データ記憶部11、第1データ分割部12、ξ計算部51、識別子計算部53、送信部18及び制御部59から構成される。
第1データ記憶部11、第1データ分割部12及び送信部18は、第1実施形態と同様である。つまり、第5実施形態は第1実施形態の識別子計算部13をξ計算部51と識別子計算部53に置き換えた構成である。
なお、第2実施形態、第3実施形態の構成においても、識別子計算部13をξ計算部51と識別子計算部53に置き換えることで、同様に高速化の効果を得ることができる。
ξ計算部51は、第1データ分割部12で分割されたd個のXが入力され、Xに対応するd個のξを次式により計算して出力する。なお、pとqは共に素数である。
ξ=Xmod (p−1)・(q−1) (5)
識別子計算部53は、ξ計算部51で計算されたd個のξが入力され、ξに対応するd個の識別子Yを次式により計算して出力する。なお、N=p・qである。
Figure 0004901499
制御部59は、識別子生成装置50で行われる各処理を制御する。
式(1)による識別子の計算は、元となるデータXをd個に分割して行っているものの、特にデータXが大きな値の場合には全体の処理速度への影響が大きい。
式(1)のような剰余計算の解(式(1)においてはY)はNを法とする場合、べき乗数Xに関し、Yの位数の周期(p、qが素数でN=p・qの場合、(p−1)・(q−1))で繰り返し同じ値をとる。このような特性から、式(1)のようにXで直接べき乗するのではなく、先に式(5)のようにXに対し位数により剰余計算を行い、Xを位数の範囲内に縮小化した計算結果ξをXの代わりに利用して式(6)の剰余計算を行っても同じ解が得られる。
第5実施形態は、このような計算方法を採ることで単にデータXをd個に分割した値をそのままべき乗するよりも、その値が更に位数の範囲内に縮小化されており、計算量を小さくできることから、識別子の計算の高速化を図ることができるものである。
なお、第5実施形態ではN=p・qの場合を取り上げたが、Nが素数の場合においても式(5)を、ξ=Xmod (N−1)に変えることで同様に高速化の効果を得ることができる。
〔第6実施形態〕
第6実施形態は、第5実施形態の場合において第4実施形態と同様に、識別子などの計算に用いる上記Nの値を素因数分解困難な正の合成数とするものである。
この形態をとることにより、第4実施形態で得られるより高い安全性と、第5実施形態で得られるより高い処理速度とを共に享受することができる。
〔第7実施形態〕
第7実施形態は、識別子などの計算に用いる上記gの値をNと互いに素な2以上の自然数とし、第4実施形態と同様、悪意者による攻撃に対する安全性を向上するものである。
もし、式(1)などの計算に用いるgがNと互いに素でない数の場合、gとNとの公約数を見出されればNを素因数分解できてしまうため、悪意者による攻撃への発端になる危険がある。
このような理由から、第7実施形態はgをNと互いに素な数とすることで、攻撃の危険を回避し、より安全性の向上を図ることができるものである。
〔第8実施形態〕
第8実施形態は、上記Y´の計算及び上記xの計算において用いるeの値をランダムな値にすることで、悪意者の攻撃に対する安全性を高める構成である。
図10は第8実施形態のデータ検証システムを構成するデータ検証装置80の機能構成例である。なお、ネットワークを介して対向する識別子生成装置の構成は第1実施形態と同様なものでよい。図11は第8実施形態の処理フローである。
データ検証装置80は、識別子記憶部21、第2データ記憶部22、e生成部81、Y´計算部83、第2データ分割部24、x計算部85、C計算部26、整合性判定部27、受信部28及び制御部89から構成される。
つまり、第8実施形態は第1実施形態のY´計算部23をY´計算部83に、x計算部25をx計算部85に置き換えると共に、e生成部81を加えた構成である。
なお、第2実施形態、第3実施形態の構成においても、Y´計算部23をY´計算部83に、x計算部25をx計算部85に置き換えると共に、e生成部81を加えることで、同様に安全性の向上を図ることができる。
生成部81は、整数をランダムに発生し出力する。
Y´計算部83は、識別子記憶部21に記憶されたd個の識別子Yとe生成部81から出力されたeとが入力され、Y´を式(2)によって計算して出力する。
x計算部85は、第2データ分割部24で分割されたd個のX´とe生成部81から出力されたeとが入力され、式(3)によりxを計算して出力する。
式(2)と式(3)において、eをそれぞれべき乗、乗算しているのは以下の理由による。
式(2)と式(3)にeが無い場合を考えると、式(2)を変形するとY´=gmod Nとなり、式(4)を変形するとC=gX´mod Nとなる。そして、両式はgとNが共通しており、べき乗剰余演算の性質からC=Y´mod Nが成立するのはデータXとデータX´とが整合している(べき乗部分の値が同じ)場合に限らず、従って、悪意者がC=Y´mod Nは成立するがX=X´は成立しないX´を使って攻撃をしかけてくるという危険性は否めない。また、X及びX´をd個のX及びX´分割して計算を行う場合においても、Y´とCとの整合性判定において影響するのはあくまで総和であるX及びX´であるため、たとえd個のX´のうちいくつかの順序が入れ替わっていてもそれを検知することはできない。
一方、式(2)と式(3)にeがある場合、式(2)と式(4)を変形すると、それぞれ次式のようになる。
Figure 0004901499
この場合においてもC=Y´mod Nが成立するのは、必ずしも両式のべき乗部分の値が等しい場合に限らない。しかし、べき乗部分が単なる分割データX、X´の総和ではなく分割データX、X´ごとにeが積算されているため、たとえべき乗部分の値がわかってもeがわからない限り、C=Y´mod Nを成立させるデータX´を見つけ出すのは難しい。また、d個のX´のうち順序が入れ替わっているものがあるような場合でも検出しやすい。
そこで、本発明においては全実施形態でY´及びxの計算式にeをべき乗又は乗算することにより攻撃に対する安全性の向上を図っている(第1〜第7実施形態においては、eは整数)。
そして、第8実施形態は、このeをランダムな値とすることによって、悪意者がeを知ることを困難にすることで、より安全性を高めることができるものである。
なお、更なる安全性向上のためには、検証の都度eを再計算することが望ましい。
〔第9実施形態〕
第9実施形態は、第8実施形態におけるランダムなeを、べき乗剰余計算により生成するものである。
第9実施形態のデータ検証システムの機能構成は、e生成部81の内部構成を除き、第8実施形態のデータ検証装置80と同様である。図12aは第9実施形態のe生成部81の内部構成例である。e生成部81は、乱数生成部81aとべき乗剰余計算部81bとを備える。
乱数生成部81aは、1以上のランダムな自然数eを生成し出力する。ランダムなeとしては例えば疑似乱数を用いることができる。疑似乱数の生成方法としては、SHA−1等の一方向性ハッシュ関数を用いて構成される計算量理論に基づく疑似乱数生成アルゴリズム等を用いることができる。
べき乗剰余計算部81bは、乱数生成部81aから出力された上記ランダムな自然数eが入力され、次式によりeを計算し出力する。なお、sは2以上の自然数である。
=ei-1 mod s (9)
このようにべき乗剰余計算によりランダムなeを生成することができる。 また、eを疑似乱数により生成させたい場合、予め疑似乱数によって発生させた上記eを式(9)に適用することで、e算出時に疑似乱数生成アルゴリズムを動作させずにd個の疑似乱数eを発生させることができる。そのため、すべてのeを疑似乱数生成アルゴリズムを用いて算出するよりも演算量を少なくできる。
式(9)において、sが大きな数であるほど悪意の攻撃者がeを見つけ出すことが困難になる。例えば、80ビット程度のセキュリティを確保したい場合、sも80ビット程度以上の数とすることが望ましい。
〔第10実施形態〕
第10実施形態は、第8実施形態におけるランダムなeを、逆像演算が困難な関数を用いて生成するものである。
第10実施形態のデータ検証システムの機能構成は、e生成部81の内部構成を除き、第8実施形態のデータ検証装置80と同様である。図12bは第10実施形態のe生成部81の内部構成例である。e生成部81は、乱数生成部81aとH関数計算部81cとを備える。
H関数計算部81cは、乱数生成部81aから出力された上記ランダムな自然数eが入力され、次式によりeを計算し出力する。なお、Hは逆像演算が困難な関数である。逆像演算が困難な関数としては、例えば一方向性ハッシュ関数等があげられる。また、(e,i)はeとiとのビット連結を意味する。
=H(e,i) (10)
このような関数計算により、ランダムなeを生成することができる。また、eを疑似乱数により生成させたい場合、予め疑似乱数によって発生させた上記eを式(10)に適用することで、e算出時に疑似乱数生成アルゴリズムを動作させずにd個の疑似乱数eを発生させることができる。そのため、すべてのeを疑似乱数生成アルゴリズムを用いて算出するよりも演算量を少なくできる。
この実施形態においては、eから逆像演算でeを求めることが困難であるため、たとえ一部のeが漏洩した場合でも、攻撃者はeを見出すことができず、従って、残りのeを見出すことはできない。よって、悪意者の攻撃への安全性を向上できる。
〔第11実施形態〕
第11実施形態は、第8実施形態におけるランダムなeを、異なる入力値に対するそれぞれの出力値が衝突困難な関数を用いて生成するものである。
第11実施形態のデータ検証システムの機能構成は、e生成部81の内部構成を除き、第8実施形態のデータ検証装置80と同様である。図12bは第10実施形態のe生成部81の内部構成例である。e生成部81は、乱数生成部81aとS関数計算部81dとを備える。
S関数計算部81dは、乱数生成部81aから出力された上記ランダムな自然数eが入力され、次式によりeを計算し出力する。なお、Sは異なる入力値に対する出力値が衝突困難な関数、例えば2つの入力値が与えられた場合に出力値はそれぞれ異なるという性質を持つ関数である。衝突困難な関数としては、例えばハッシュ関数等があげられる。また、(e,i)はeとiとのビット連結を意味する。
=S(e,i) (11)
このような関数計算により、ランダムなeを生成することができる。また、eを疑似乱数により生成させたい場合、予め疑似乱数によって発生させた上記eを式(11)に適用することで、e算出時に疑似乱数生成アルゴリズムを動作させずにd個の疑似乱数eを発生させることができる。そのため、すべてのeを疑似乱数生成アルゴリズムを用いて算出するよりも演算量を少なくできる。
上記式(7)及び式(8)において、例えばもしd個のeのうち複数のeが同じ値であれば、その同じ値の部分に対応するXとX´との間で並びが入れ替わっていてもそれを検知することができない。そこで、衝突困難な関数でeを生成してeをそれぞれ異なる値とすることでXとX´との間で並びが入れ替わっているような場合もそれを検知でき、判定精度を向上することができる。
〔第12実施形態〕
第12実施形態は、eを整数でかつ定数とする構成であり、第1〜第7実施形態のそれぞれにおいて適用できる。
を定数とすることで、ランダムにする場合より安全性は低下するが、装置を簡略化したい場合や処理をより軽くしたい場合に有効である。
本発明におけるデータ検証システム、その方法、識別子生成装置、データ検証装置は、上記の実施形態に限定されるものではなく、本発明を逸脱しない範囲で適宜変更が可能である。また、上記に説明した処理は記載の順に従った時系列において実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
また、上記データ検証システム、識別子生成装置、データ検証装置における処理機能をコンピュータによって実現する場合、データ検証システム、識別子生成装置、データ検証装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより上記データ検証システム、識別子生成装置、データ検証装置における処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magnet-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、このプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等をすることによって行う。更に、このプログラムをサーバコンピュータの記録装置に格納しておき、ネットワークを介してサーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦自己の記録装置に格納する。そして、処理の実行時、このコンピュータは自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、更に、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータからこのコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって上記の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態ではコンピュータ上で所定のプログラムを実行させることにより、データ検証システム、識別子生成装置、データ検証装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
<発明の効果の実験による確認>
本発明について、識別子生成とデータ完全性検証に関し、実験的に効果の確認を行った。以下、実験方法及び結果について説明する。
本発明の内容は、大きく分けて1.識別子生成と2.識別子によるデータ完全性検証の2種類に分けられる。本稿ではそれぞれに最適な実装を試みる。なお、測定環境は図13、測定パラメータのサイズは図14のとおりである。
1.識別子生成
識別子の計算の高速化を図った第5実施形態の効果の確認を行った。
識別子の計算にp、qを使わない場合との比較結果を図15に示す。
p、qを使用することにより約400倍の高速化が可能になる。これならば、ほぼリアルタイムに近い速度で識別子の生成を行うことが可能である。また、本発明では情報Xをdブロックに分割していることにより、それぞれの識別子Y,・・・,Yを全く独立に計算できるためこの部分は並列処理が可能である。
2.データ完全性検証
第1実施形態の検証方法によるデータ完全性検証時間の高速化効果の確認を行った。
標準的なハッシュ関数を用いて行った場合との比較結果を図16に示す。比較は、データXのサイズを1Gbitから10Gbitまで1Gbitごとに変化させて行った。
XのサイズをαGbitと置くと、本発明による検証方式では、処理時間は、1.23+0.159α(秒)という結果が得られた。ファイルサイズが大きくなれば最初の定数部分は無視できるので、巨大なファイルにおいては6.29Gbpsで処理できていることになる。これは、SHA-1の約4.5倍、SHA-256の約11.3倍の処理速度である。
また、ファイルサイズが小さい時において、SHA-1の場合、2.24Gbit(286Mbyte)のときにほぼ同一の処理時間がかかり、SHA-256の場合、0.74Gbit(95Mbyte)のときのほぼ同一の処理時間がかかる。このときの処理時間はそれぞれ約1.6秒、約1.3秒である。本発明による検証方式は、検証する情報量が大容量になればなるほど、効果を発揮する。
一般的な映像コンテンツDVD1枚分の容量で比較した結果を図17に示す。本発明の検証方式はSHA-1よりも4倍以上の速度で検証できていることがわかる。
更に、本発明の検証方式においては、式(2)の計算と式(3)(4)の計算は完全に並列に計算することが可能である。そこで、これらの部分を並列処理により行った場合についても検証実験を行った。
DVD、HD−DVD、Blu−rayの3種類のディスク容量分の乱数に対し、データの完全性を検証するために要した時間を図18に示す。
AMD64x2 2GHzにおいて、約12Gbps(1.5Gbyte/s)のスループットが出ている。これは6bit/cycle以上であり、SHA等のハッシュアルゴリズムを圧倒する性能を示している。
これらのことより、例えば巨大なデータの署名を検証する際に、ハッシュに要する時間が支配的になっており、0.1%程度のデータ増量を許容できるならば、識別子に対してハッシュ関数を計算し、署名を付けることで高速な署名検証が可能となるなど、様々な応用が期待できる。
本発明では識別子の生成と整合性の検証に異なるアルゴリズムを用いていることから、映像コンテンツのようにデータ整合性検証にはリアルタイム性が求められるが、タグの生成は多少遅くても問題無い状況において特に有効である。
本発明による識別子生成装置10の構成図。 本発明によるデータ検証装置20の構成図。 本発明による第1実施形態の処理手順。 本発明による一体型装置30の構成図。 本発明による第2実施形態の処理手順。 本発明による一体型装置40及び外部記憶装置200の構成図。 本発明による第3実施形態の処理手順。 本発明による識別子生成装置50の構成図。 本発明による第5実施形態の処理手順。 本発明によるデータ検証装置80の構成図。 本発明による第8実施形態の処理手順。 本発明によるe生成部81の内部構成図。 本発明による効果の実験確認の際の測定環境一覧。 実験確認の際の測定パラメータサイズ一覧。 識別子計算時のp,qの利用の有無による識別子作成時間の比較。 標準的なハッシュ関数と提案方式との検証時間の容量別比較。 DVD一枚分の容量を検証した場合の検証時間の比較。 並列処理実装時の主なディスク規格ごとの検証時間の比較。

Claims (23)

  1. 2つのデータの整合性を検証する識別子生成装置とデータ検証装置からなるデータ検証システムであって、
    前記識別子生成装置は、
    所定の情報Xを記憶する第1データ記憶部と、
    上記情報Xが入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成し出力する第1データ分割部と、
    上記分割情報Xiが入力され、識別子Y
    Figure 0004901499

    (N、gは共に2以上の自然数)により計算し出力する識別子計算部と、
    を具備し、
    前記データ検証装置は、
    上記計算した識別子Yを記憶する識別子記憶部と、
    上記情報Xとの比較対象とする情報X´を記憶する第2データ記憶部と、
    上記情報X´が入力され、これを上記予め定められた手順に従いd個に分割して分割情報Xi´を生成し出力する第2データ分割部と、
    上記識別子Yが入力され、Y´を
    Figure 0004901499

    (eは整数)により計算し出力するY´計算部と、
    上記分割情報X´が入力され、xを
    Figure 0004901499

    により計算し、出力するx計算部と、
    上記xが入力され、CをC=gmod Nにより計算し出力するC計算部と、
    上記Y´と上記Cとが入力され、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力する整合性判定部と、
    を具備することを特徴とするデータ検証システム。
  2. 2つのデータの整合性を検証する一体型装置からなるデータ検証システムであって、
    前記一体型装置は、
    所定の情報Xと当該情報Xとの比較対象とする情報X´を記憶するデータ記憶部と、
    上記情報Xが入力されると、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報X i (2≦i≦d)を生成し出力し、上記情報X´が入力されると、これを上記予め定められた手順に従いd個に分割して分割情報X i ´を生成し出力するデータ分割部と、
    上記分割情報X i が入力され、識別子Y
    Figure 0004901499

    (N、gは共に2以上の自然数)により計算し出力する識別子計算部と、
    上記計算した識別子Y を記憶する識別子記憶部と、
    上記識別子Y が入力され、Y´を
    Figure 0004901499

    (e は整数)により計算し出力するY´計算部と、
    上記分割情報X ´が入力され、xを
    Figure 0004901499

    により計算し、出力するx計算部と、
    上記xが入力され、CをC=g mod Nにより計算し出力するC計算部と、
    上記Y´と上記Cとが入力され、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力する整合性判定部と、
    を具備することを特徴とするデータ検証システム。
  3. 請求項1または2に記載のデータ検証システムにおいて、上記Nは素因数分解困難な正の合成数であることを特徴とするデータ検証システム。
  4. 2つのデータの整合性を検証するデータ検証システムであって、
    N=p・q(pとqは共に素数)であり、
    所定の情報Xを記憶する第1データ記憶部と、
    上記情報Xが入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成し出力する第1データ分割部と、
    上記分割情報Xiが入力され、ξをξ=Xmod (p−1)・(q−1)により計算し出力するξ計算部と、
    上記ξが入力され、識別子YをY=gξimod N(gは2以上の自然数)により
    計算し出力する識別子計算部と、
    上記計算した識別子Yを記憶する識別子記憶部と、
    上記情報Xとの比較対象とする情報X´を記憶する第2データ記憶部と、
    上記情報X´が入力され、これを上記予め定められた手順に従いd個に分割して分割情報Xi´を生成し出力する第2データ分割部と、
    上記識別子Yが入力され、Y´を
    Figure 0004901499

    (eは整数)により計算し出力するY´計算部と、
    上記分割情報X´が入力され、xを
    Figure 0004901499

    により計算し、出力するx計算部と、
    上記xが入力され、CをC=gmod Nにより計算し出力するC計算部と、
    上記Y´と上記Cとが入力され、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力する整合性判定部と、
    を具備することを特徴とするデータ検証システム。
  5. 請求項に記載のデータ検証システムにおいて、上記Nはpとqとに素因数分解することが困難な値であることを特徴とするデータ検証システム。
  6. 請求項1〜のいずれかに記載のデータ検証システムにおいて、上記gはNと互いに素な2以上の自然数であることを特徴とするデータ検証システム。
  7. 請求項1〜のいずれかに記載のデータ検証システムにおいて、上記eをランダムに生成し出力するe生成部を具備することを特徴とするデータ検証システム。
  8. 請求項に記載のデータ検証システムにおいて、上記e生成部は、
    1以上のランダムな自然数eを生成し出力する乱数生成部と、
    上記eが入力され、上記eをe=ei−1 mod s(sは2以上の自然数)により
    計算して出力する剰余べき乗計算部と、
    を備えることを特徴とするデータ検証システム。
  9. 請求項に記載のデータ検証システムにおいて、上記e生成部は、
    1以上のランダムな自然数eを生成し出力する乱数生成部と、
    上記eが入力され、上記e
    =H(e,i)
    ((e,i)はeとiとのビット連結、Hは逆像計算が困難な関数)により計算して出力するH関数計算部と、
    を備えることを特徴とするデータ検証システム。
  10. 請求項に記載のデータ検証システムにおいて、上記e生成部は、
    1以上のランダムな自然数eを生成し出力する乱数生成部と、
    上記eが入力され、上記e
    =S(e,i)
    ((e,i)はeとiとのビット連結、Sは衝突困難な関数)により計算して出力するS関数計算部と、
    を備えることを特徴とするデータ検証システム。
  11. 請求項1〜のいずれかに記載のデータ検証システムにおいて、上記eは定数であることを特徴とするデータ検証システム。
  12. 請求項1に記載のデータ検証システムを構成する識別子生成装置であって、
    所定の情報Xを記憶するデータ記憶部と、
    上記情報Xが入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成し出力するデータ分割部と、
    上記分割情報Xiが入力され、識別子Y
    Figure 0004901499

    (N、gは共に2以上の自然数)により計算し出力する識別子計算部と、
    を具備する識別子生成装置。
  13. 請求項4に記載のデータ検証システムを構成する識別子生成装置であって、
    N=p・q(pとqは共に素数)であり、
    所定の情報Xを記憶するデータ記憶部と、
    上記情報Xが入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成し出力するデータ分割部と、
    上記分割情報Xiが入力され、ξをξ=Xmod (p−1)・(q−1)により計算し出力するξ計算部と、
    上記ξが入力され、識別子YをY=gξi mod N(gは2以上の自然数)により計算し出力する識別子計算部と、
    を具備する識別子生成装置。
  14. 請求項1、1のいずれかの識別子生成装置から出力された上記識別子Yを記憶する識別子記憶部と、
    上記識別子Yの生成元情報である情報Xの比較対象とする情報X´を記憶するデータ記憶部と、
    上記情報X´が入力され、これを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi´(2≦i≦d)を生成し出力するデータ分割部と、
    上記識別子Yが入力され、Y´を
    Figure 0004901499

    (eは整数、Nは2以上の自然数)により計算し出力するY´計算部と、
    上記分割情報X´が入力され、xを
    Figure 0004901499

    により計算し、出力するx計算部と、
    上記xが入力され、CをC=gmod N(gは2以上の自然数)により計算し出力す
    るC計算部と、
    上記Y´と上記Cとが入力され、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力する整合性判定部と、
    を具備するデータ検証装置。
  15. 2つのデータの整合性を検証するデータ検証方法であって、
    識別子生成装置が、所定の情報Xを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成するステップと、
    上記識別子生成装置が、上記分割情報Xiから識別子Y
    Figure 0004901499

    (N、gは共に2以上の自然数)により計算するステップと、
    データ検証装置が、上記情報Xとの比較対象とする情報X´を上記予め定められた手順に従いd個に分割して分割情報Xi´を生成するステップと、
    上記データ検証装置が、上記識別子YからY´を
    Figure 0004901499

    (eは整数)により計算するステップと、
    上記データ検証装置が、上記分割情報X´からxを
    Figure 0004901499

    により計算するステップと、
    上記データ検証装置が、上記xからCを、C=gmod Nにより計算するステップと、
    上記データ検証装置が、上記Y´と上記Cとを比較し、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力するステップと、
    を具備することを特徴とするデータ検証方法。
  16. 2つのデータの整合性を検証するデータ検証方法であって、
    一体型装置が、所定の情報Xを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報X i (2≦i≦d)を生成するステップと、
    上記一体型装置が、上記分割情報X i から識別子Y
    Figure 0004901499

    (N、gは共に2以上の自然数)により計算するステップと、
    上記一体型装置が、上記情報Xとの比較対象とする情報X´を上記予め定められた手順に従いd個に分割して分割情報X i ´を生成するステップと、
    上記一体型装置が、上記識別子Y からY´を
    Figure 0004901499

    (e は整数)により計算するステップと、
    上記一体型装置が、上記分割情報X ´からxを
    Figure 0004901499

    により計算するステップと、
    上記一体型装置が、上記xからCを、C=g mod Nにより計算するステップと、
    上記一体型装置が、上記Y´と上記Cとを比較し、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力するステップと、
    を具備することを特徴とするデータ検証方法。
  17. 2つのデータの整合性を検証するデータ検証方法であって、
    N=p・q(pとqは共に素数)であり、
    第1データ分割部が、所定の情報Xを予め定められた手順に従いd個(dは2以上の自然数)に分割して分割情報Xi(2≦i≦d)を生成するステップと、
    ξ計算部が、上記分割情報Xiからξを、ξ=Xmod (p−1)・(q−1)により計算するステップと、
    識別子計算部が、上記ξから識別子Yを、Y=gξi mod N(gは2以上の自然数)により計算するステップと、
    第2データ分割部が、上記情報Xとの比較対象とする情報X´を上記予め定められた手順に従いd個に分割して分割情報Xi´を生成するステップと、
    Y´計算部が、上記識別子YからY´を
    Figure 0004901499

    (eは整数)により計算するステップと、
    x計算部が、上記分割情報X´からxを
    Figure 0004901499

    により計算するステップと、
    C計算部が、上記xからCを、C=gmod Nにより計算するステップと、
    整合性判定部が、上記Y´と上記Cとを比較し、C=Y´mod Nであれば整合性有り、そうでなければ整合性無しとの判定結果を出力するステップと、
    を具備することを特徴とするデータ検証方法。
  18. 請求項1〜1のいずれかに記載したシステムとしてコンピュータを機能させるためのプログラム。
  19. 請求項1、1のいずれかに記載した装置としてコンピュータを機能させるためのプログラム。
  20. 請求項1に記載したデータ検証装置としてコンピュータを機能させるためのプログラム。
  21. 請求項1に記載したプログラムを記録したコンピュータが読み取り可能な記録媒体。
  22. 請求項1に記載したプログラムを記録したコンピュータが読み取り可能な記録媒体。
  23. 請求項20に記載したプログラムを記録したコンピュータが読み取り可能な記録媒体。
JP2007011486A 2007-01-22 2007-01-22 データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体 Expired - Fee Related JP4901499B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007011486A JP4901499B2 (ja) 2007-01-22 2007-01-22 データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007011486A JP4901499B2 (ja) 2007-01-22 2007-01-22 データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2008178005A JP2008178005A (ja) 2008-07-31
JP4901499B2 true JP4901499B2 (ja) 2012-03-21

Family

ID=39704663

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007011486A Expired - Fee Related JP4901499B2 (ja) 2007-01-22 2007-01-22 データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP4901499B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5525984B2 (ja) * 2010-09-29 2014-06-18 Necパーソナルコンピュータ株式会社 検証システム及び方法
US20220006614A1 (en) * 2018-10-04 2022-01-06 Nippon Telegraph And Telephone Corporation Secret sigmoid function calculation system, secret logistic regression calculation system, secret sigmoid function calculation apparatus, secret logistic regression calculation apparatus, secret sigmoid function calculation method, secret logistic regression calculation method, and program
CN115473717B (zh) * 2022-09-05 2023-09-01 杭州思拓瑞吉科技有限公司 基于互质幂余的储能系统时序数据校验方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000162967A (ja) * 1998-11-30 2000-06-16 Mitsubishi Electric Corp ディジタル署名・検証システム
JP4333351B2 (ja) * 2003-12-05 2009-09-16 株式会社デンソー 通信システム
JP2005051734A (ja) * 2003-07-15 2005-02-24 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
CN101080897B (zh) * 2005-07-13 2012-09-19 日本电信电话株式会社 鉴别系统、鉴别方法、证明器件、验证器件及其程序和记录介质

Also Published As

Publication number Publication date
JP2008178005A (ja) 2008-07-31

Similar Documents

Publication Publication Date Title
JP4555859B2 (ja) 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体
Fried et al. A kilobit hidden SNFS discrete logarithm computation
US8806212B2 (en) Method and apparatus for generating and verifying electronic signature of software data, and computer readable recording medium thereof
CA2903376C (en) Configuration and verification by trusted provider
US20090132830A1 (en) Secure processing device, secure processing method, encrypted confidential information embedding method, program, storage medium, and integrated circuit
CN110637441A (zh) 应用于数据重复数据删除的加密密钥生成
JP5957095B2 (ja) 改ざん検知装置、改ざん検知方法、およびプログラム
CN109525403B (zh) 一种支持用户全动态并行操作的抗泄露公开云审计方法
JP2010277085A (ja) Rsaアルゴリズムにおける素数生成の保護
JP6992036B2 (ja) イーサリアムに基づく改ざんされたトランザクションの処理方法、デバイス及び記憶媒体
JP4901499B2 (ja) データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体
CN114595466A (zh) 实现对经加密的数据的机会认证
Bellare et al. Defending against key exfiltration: efficiency improvements for big-key cryptography via large-alphabet subkey prediction
JP4810612B2 (ja) 高速rsa署名検証
US8731187B2 (en) Computing genus-2 curves using general isogenies
JP4856599B2 (ja) ペアリング演算装置、プログラム
CN112906059A (zh) 代理签名和验证方法、装置、系统及存储介质
JP5573041B2 (ja) 情報処理装置、コード生成方法、コード検証方法およびプログラム
JP5032955B2 (ja) 暗号通信方法、暗号化装置、復号装置、及びそれらのプログラム
KR102595938B1 (ko) 다항식을 이용하여 데이터의 암복호화를 수행하는 암호화 시스템을 위한 다항식 역원 생성 장치 및 방법
JP4802228B2 (ja) 鍵生成装置及びプログラム
CN116260572B (zh) 数据杂凑处理方法、数据验证方法及电子设备
JP5010508B2 (ja) 楕円曲線暗号演算装置、方法及びプログラム並びに楕円曲線暗号演算システム及び方法
JP3935903B2 (ja) 生成多項式生成装置およびこれらのプログラム記録媒体
JP3935902B2 (ja) 生成多項式生成装置およびこれらのプログラム記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090105

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111026

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: 20111220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4901499

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees