JP5381543B2 - データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム - Google Patents

データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム Download PDF

Info

Publication number
JP5381543B2
JP5381543B2 JP2009216437A JP2009216437A JP5381543B2 JP 5381543 B2 JP5381543 B2 JP 5381543B2 JP 2009216437 A JP2009216437 A JP 2009216437A JP 2009216437 A JP2009216437 A JP 2009216437A JP 5381543 B2 JP5381543 B2 JP 5381543B2
Authority
JP
Japan
Prior art keywords
data
deleted
electronic signature
storage unit
signer
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
JP2009216437A
Other languages
English (en)
Other versions
JP2011065497A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009216437A priority Critical patent/JP5381543B2/ja
Priority to US12/884,476 priority patent/US8533483B2/en
Publication of JP2011065497A publication Critical patent/JP2011065497A/ja
Application granted granted Critical
Publication of JP5381543B2 publication Critical patent/JP5381543B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Description

本技術は、改訂者を識別可能なデータ管理技術に関する。
従来、電子文書(文書は一例であって、必ずしも文書に限らない。)の完全性を検証する技術として、電子署名を用いた技術が提供されている。この電子署名技術は、電子文書毎に電子署名を付与することによって、電子文書の完全性(すなわち、内容が変更されていないこと)を保証するとともに、電子文書の作成者を認証する技術である。
このため、電子署名技術を利用した場合、不正なユーザによる改竄を防ぐという点においては非常に有用であるが、電子文書の有効活用という点においては問題があった。なぜなら、許可されていても改訂者と呼ばれるユーザが電子文書の内容を変更した場合、電子署名は無効となってしまい、変更後の電子文書の完全性が保証されないからである。
このため、電子文書に、公開することができない情報や不要な情報が含まれている場合であっても、電子文書からそのような情報を改訂者が削除するなどの変更を施すことができず、ユーザの利便性を著しく低下させる要因となっていた。また、公開することができない情報や不要な情報を削除した新しい電子文書を作成し、改めて電子署名を付与した場合、署名者はその度に署名を生成しなければならず、署名者にとって負担となっていた。このように、電子文書から不要な情報を削除可能で、且つ署名者が再び署名生成することなく、電子文書の完全性を保証する技術が望まれている。
例えば、電子文書を部分文書に分割し、部分文書毎の電子署名と、文書全体に対する電子署名を付与することで、公開すべきでない部分文書の削除が可能な電子署名技術(第1の従来例)が提供されている。この電子署名技術は削除署名技術と呼ばれており、この削除署名技術によれば、電子文書における公開部分に対する完全性と、非公開部分(すなわち削除部分)に対する秘匿性を保証することが可能となり、電子文書の利便性を高めることができる。
また、電子文書を部分文書に分割し、部分文書毎にハッシュ値を計算し、署名者及び改訂者がハッシュ値の集合に対して署名を付与することで、非公開にすべき部分文書の削除が可能な電子署名技術が存在している(第2の従来例)。この電子署名技術によれば、電子文書における公開部分に対する完全性と、非公開部分(すなわち削除部分)に対する秘匿性を保証することが可能となり、電子文書の利便性を高めることができる。
ここで第2の従来例によって非公開にすべき部分文書を削除する方法について説明する。図1は第2の従来例における署名生成処理の概要を示す。署名者は、電子文書を複数の部分文書m1乃至m4に分割し(又は複数の部分文書m1乃至m4に分割されている電子文書に対し)、各部分文書m1乃至m4に対するハッシュ値h1乃至h4を計算し、これらハッシュ値h1乃至h4を連接した値を求める。そして、署名者は、ハッシュ値h1乃至h4の連接に対する署名σsignerを生成する。署名者は、最後に、電子文書と、署名者のハッシュ値h1乃至h4の連接及び電子署名σsingerとを次のユーザに送り、処理を終了する。図1では、矩形内のデータが送信される。
図2は、第1の改訂者(例えば太郎)による処理の概要を示す。署名者から送られてきた電子文書、署名者のハッシュ値h1乃至h4の連接及び電子署名σsingerを受け取った第1の改訂者は、削除する部分文書(図2では部分文書m2及びm4)を指定する。そして、該当する部分文書m2及びm4の内容を、その部分文書m2及びm4の識別子(図2では「2」及び「4」という文字列)に改訂する。次に第1の改訂者は、各部分文書に対するハッシュ値h1、H2(「2」という文字列のハッシュ値)、h3及びH4(「4」という文字列のハッシュ値)を計算する。そして、これらハッシュ値を連接した値を求め、このハッシュ値の連接に対する電子署名σtaroを生成する。最後に、第1の改訂者は、改訂後の電子文書m1及びm3並びに「2」及び「4」、第1の改訂者のハッシュ値h1及びh3並びにH2及びH4の連接及び電子署名σtaro、並びに署名者のハッシュ値h1乃至h4の連接及び電子署名σsignerを次のユーザに送り、処理を終了する。図2では、矩形内のデータが送信される。
図3は第2の改訂者(例えば花子)による処理の概要を示す。第1の改訂者から送られてきた改訂電子文書、第1の改訂者のハッシュ値の連接及び電子署名、並びに署名者のハッシュ値の連接及び電子署名を受け取った第2の改訂者は、削除する部分文書(図3ではm3)を定める。そして、該当する部分文書の内容を、その部分文書の識別子(図3では「3」という文字列)に改訂する。次に、第2の改訂者は、各部分文書に対するハッシュ値h1並びにH2乃至H4を計算し、これらハッシュ値を連接した値を求め、このハッシュ値の連接に対する電子署名σhanakoを生成する。最後に第2改訂者は、改訂後の電子文書m1並びに文字列「2」乃至「4」、第2の改訂者のハッシュ値h1並びにH2乃至H4の連接及び電子署名σhanako、第1の改訂者のハッシュ値h1及びh3並びにH2及びH4の連接及び電子署名σtaro、並びに署名者のハッシュ値h1乃至h4の連接及び電子署名σsignerを次のユーザに送り、処理を終了する。図3では、矩形内のデータが送信される。
図4は検証者による処理の概要を示す。検証者は、最後の改訂者である第2の改訂者から、改訂電子文書m1並びに文字列「2」「3」及び「4」、第2の改訂者のハッシュ値h1並びにH2乃至H4の連接及び電子署名σhanako、第1の改訂者のハッシュ値h1及びh3並びにH2及びH4の連接及び電子署名σtaro、並びに署名者のハッシュ値h1乃至h4の連接及び電子署名σsignerを受け取る。そして、改訂電子文書の各部分文書のハッシュ値を計算し(ステップ(1))、第2の改訂者のハッシュ値の連接と一致することを確認した上で、当該ハッシュ値の連接に対して第2の改訂者の電子署名を検証する(ステップ(2))。次に検証者は、第1の改訂者のハッシュ値の連接に対して第1の改訂者の電子署名を検証し、ハッシュ値の連接の完全性を確認する(ステップ(3))。さらに、署名者のハッシュ値の連接に対して署名者の電子署名を検証し、ハッシュ値の連接の完全性を確認する(ステップ(4))。最後に、検証者は各改訂者及び署名者のハッシュ値の連接を比較し、誰がどの部分文書を削除したかを識別する。すなわち、署名者のハッシュ値の連接と第1の改訂者のハッシュ値の連接とを比較すれば、部分文書m2及びm4が第1の改訂者により削除されたことが分かる。さらに、第1の改訂者のハッシュ値の連接と第2の改訂者のハッシュ値の連接とを比較することにより、部分文書m3が削除されたことが分かる。
このように第2の従来例の署名技術は、部分文書の削除が可能であり、削除されていない部分文書の完全性を検証できると共に、誰がどの部分文書を削除したかを識別することができる。しかし、その実現のために署名者及び各改訂者は部分文書の個数に比例したハッシュ値を計算及び出力する必要がある。結果として検証者は、部分文書の個数と改訂者の人数に比例した個数(具体的に部分文書の個数aと改訂者の人数nとするとa*(n+1)個)のハッシュ値を必要とすることになり、データ転送の効率低下を招くという新たな問題が生じている。
これに対して第3の従来例では、ハッシュ値の連接を送信しないようになっている。具体的には、図5に示すように、署名者は、電子文書を複数の部分文書m1乃至m4に分割し(又は複数の部分文書m1乃至m4に分割されている電子文書に対し)、各部分文書m1乃至m4に対するハッシュ値h1乃至h4を計算し、これらハッシュ値h1乃至h4を連接した値を求める。そして、署名者は、ハッシュ値h1乃至h4の連接に対する署名σsignerを生成する。署名者は、部分文書m1乃至m4を含む電子文書及び電子署名σsignerのみを次のユーザに送信する。
署名者から電子文書及び電子署名σsignerを受け取った第1の改訂者は、例えば部分文書m2及びm4を削除するように指示する。そして、該当する部分文書m2及びm4の内容を、その部分文書m2及びm4の識別子(図5では「2」及び「4」という文字列)に改訂する。次に第1の改訂者は、各部分文書に対するハッシュ値h1、H2(「2」という文字列のハッシュ値)、h3及びH4(「4」という文字列のハッシュ値)を計算する。そして、これらハッシュ値を連接した値を求め、このハッシュ値の連接に対する電子署名σtaroを生成する。最後に、第1の改訂者は、削除者のIDと削除部分文書のIDと削除部分文書のハッシュ値とを含む補助データを削除部分文書毎に生成し、改訂後の電子文書と、署名者の電子署名σsignerと、補助データ(図5の例では(taro, 2, h2)及び(taro, 4, h4))と、第1の改訂者の電子署名σtaroを、次のユーザに送信する。
第1の改訂者から改訂後の電子文書と、署名者の電子署名σsignerと、補助データと、第1の改訂者の電子署名σtaroを受け取った第2の改訂者は、例えば部分文書m3を削除するように指示する。そして、該当する部分文書m3の内容を、その部分文書m3の識別子(図5では「3」という文字列)に改訂する。次に第2の改訂者は、各部分文書に対するハッシュ値h1、H2乃至H4(「2」「3」「4」という文字列のハッシュ値はH2、H3及びH4)を計算する。そして、これらハッシュ値を連接した値を求め、このハッシュ値の連接に対する電子署名σhanakoを生成する。最後に、第2の改訂者は、削除者のIDと削除部分文書のIDと削除部分文書のハッシュ値とを含む補助データを削除部分文書毎に生成し、改訂後の電子文書と、署名者の電子署名σsignerと、補助データ(図5の例では(taro, 2, h2)、(taro, 4, h4)、さらに(hanako, 3, h3))と、第1の改訂者の電子署名σtaroと、第2の改訂者の電子署名σhanakoとを、次のユーザに送信する。
検証者は、最後の改訂者である第2の改訂者から、改訂後の電子文書と、署名者の電子署名σsignerと、補助データ(図5の例では(taro, 2, h2)、(taro, 4, h4)、さらに(hanako, 3, h3))と、第1の改訂者の電子署名σtaroと、第2の改訂者の電子署名σhanakoを受け取る。そして、改訂後の電子文書の部分文書毎にハッシュ値を計算し(ステップ(11))、当該ハッシュ値の連接に対して第2の改訂者の電子署名hanakoを検証する(ステップ(12))。さらに、第2の改訂者の補助データ((hanako, 3, h3))によって、第2の改訂者により、いずれの部分文書が削除されたのかを把握する。
また、第2の改訂者の補助データに含まれているハッシュ値h3で、ステップ(11)で計算したハッシュ値のうち該当ハッシュ値H3を置換する(ステップ(13))。そして、ハッシュ値h1、H2、h3及びH4の連接に対して、第1の改訂者の電子署名σtaroを検証する(ステップ(14))。さらに、第1の改訂者の補助データ((taro, 2, h2)(taro, 4, h4))により、第1の改訂者により、いずれの部分文書が削除されたのかを把握する。
そして、第1の改訂者の補助データに含まれているハッシュ値h2及びh4で、ステップ(13)で置換した後のハッシュ値群のうち該当ハッシュ値H2及びH4を置換する(ステップ(15))。そして、ハッシュ値h1、h2、h3及びh4の連接に対して、署名者の電子署名σsignerを検証する(ステップ(16))。
このような形で、検証者が必要とするハッシュ値の個数の削減を実現しているが、それでもなお削除した部分文書の個数と同じ個数のハッシュ値を必要としている。このため、膨大な個数の部分文書から多数の部分文書を削除した場合には、補助データの量が膨大になり、なおもデータ転送の効率低下を招くという問題がある。
特開2006−60722号公報 WO2006/008847公報 特開2007−213549号公報
宮崎邦彦、花岡悟一郎、今井秀樹著「双線形写像を用いた電子文書墨塗り技術」2005年暗号と情報セキュリティシンポジウム予稿集 吉岡孝司、武仲正彦著「電子文書の訂正・流通を考慮した部分完全性保証技術の提案」、2004年情報科学技術フォーラム予稿集
以上述べたように、従来技術では、削除署名において、誰がどの部分文書を削除したかを識別することは可能であったが、削減したとしても、削除部分文書の個数に比例した個数のハッシュ値を必要とするため、データ転送効率の低下を招くという問題があった。
従って、本技術の目的は、より少ない情報量で、誰がコンテンツデータに含まれる特定のデータブロックを削除したのかを識別可能な署名技術を提供することである。
第1の態様に係るデータ処理装置は、(A)データ格納部に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付ける入力部と、(B)各データブロックについてハッシュ値を算出するハッシュ生成部と、(C)複数のデータブロックのうち上記削除すべきデータブロックのハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部に格納する補助データ生成部と、(D)複数のデータブロックのうち上記削除すべきデータブロックを除く残存データブロックのハッシュ値の積H2と、所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと上記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部に格納する電子署名生成部と、(E)補助データ格納部に格納されている補助データと、電子署名格納部に格納されている電子署名と、上記削除すべきデータブロックの位置データと、データ格納部に格納されているコンテンツデータのうち残存データブロックを含む改訂コンテンツデータと、データ格納部に格納されている他の電子署名とを、指定出力先に出力する出力部とを有する。
第2の態様に係るデータ処理装置は、(A)削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部と、(B)削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するハッシュ生成部と、(C)所定の値g及びNと、ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、当該中間データαとデータ格納部に格納されている上記削除済みコンテンツデータについての削除データブロックの位置データ及び削除済みコンテンツデータに対応する電子署名と当該電子署名の署名者の公開鍵とを用いて、削除済みコンテンツデータに対応する電子署名の検証を実施する検証部とを有する、そして、検証部は、(D)削除済みコンテンツデータに対応する電子署名の検証が成功すると、所定の値Nと、ハッシュ値の積H1と、削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、当該第2の中間データα2と削除前コンテンツデータについての電子署名の署名者の公開鍵と削除前コンテンツデータについての電子署名とを用いて、削除前コンテンツデータについての電子署名の検証を実施する。
第3の態様に係るデータ処理装置は、コンテンツデータ格納部に格納されている署名対象のコンテンツデータを複数のデータブロックに分割し、分割データ格納部に格納するデータ分割部と、分割データ格納部に格納されている各データブロックについてハッシュ値を算出するハッシュ生成部と、所定の値g及びNと、算出されたハッシュ値の積Hとを用いて、中間データα=gH(mod N)を算出し、当該中間データαに対して署名者の秘密鍵により電子署名を生成し、電子署名格納部に格納する電子署名生成部とを有する。
より少ない情報量で、誰がコンテンツデータに含まれる特定のデータブロックを削除したのかを識別できるようになる。
図1は、第2の従来例の署名処理を説明するための図である。 図2は、第2の従来例の改訂処理を説明するための図である。 図3は、第2の従来例の改訂処理を説明するための図である。 図4は、第2の従来例の検証処理を説明するための図である。 図5は、第3の従来例の検証処理を説明するための図である。 図6は、本実施の形態における署名者端末から送信されるデータを示す図である。 図7は、本実施の形態における第1の改訂者端末における処理などを説明するための図である。 図8は、本実施の形態における第2の改訂者端末における処理などを説明するための図である。 図9は、本実施の形態における検証者端末における処理などを説明するための図である。 図10は、本実施の形態の効果を説明するための図である。 図11は、本実施の形態におけるシステム概要を示す図である。 図12は、署名者端末の機能ブロック図である。 図13は、署名者端末における処理フローを示す図である。 図14は、改訂者端末の機能ブロック図である。 図15は、改訂者端末における処理フローを示す図である。 図16は、検証者端末の機能ブロック図である。 図17は、検証者端末における処理フローを示す図である。 図18は、検証者端末における処理フローを示す図である。 図19は、コンピュータの機能ブロック図である。 図20は、第1のデータ処理装置の機能ブロック図である。 図21は、第2のデータ処理装置の機能ブロック図である。 図22は、第3のデータ処理装置の機能ブロック図である。
本技術の実施の形態に係る処理の概要を示す。まず、署名生成段階における処理の概要を説明する。署名者は、コンテンツデータMを複数のデータブロックm1乃至m4に分割する。そして、各データブロックについて、ハッシュ値h1乃至h4を算出する。さらに、所定のビット長の素数p及びqの合成数N(=p×q)と、Nと互いに疎な整数gと、ハッシュ値h1乃至h4とを用いて、中間データαsigner=gh1h2h3h4(mod N)を算出する。ここで、h1h2h3h4は、ハッシュ値の積を表す。そして、署名者の秘密鍵を用いて、中間データαsignerを暗号化することによって署名を行って、電子署名σsigner=Signsigner(αsigner)を生成する。署名者は、図6に示すように、データブロックm1乃至m4を含むコンテンツデータMと、署名者の電子署名σsignerとを、次のユーザに送信する。
次に、第1の改訂者(例えば太郎)は、コンテンツデータMと、署名者の電子署名σsignerとを受け取って、削除すべきデータブロック(例えばm2及びm4)を指定する。そうすると、図7に示すように、削除後のコンテンツデータには、データブロックm1及びm3が残っていることになって、これらの残存データブロックについてハッシュ値h1及びh3を算出する。そして、所定値g及びNと、ハッシュ値h1及びh3とを用いて、第1の改訂者の中間データαtaro=gh1h3(mod N)を算出する。さらに、削除されるデータブロックの識別子(位置データとも呼ぶ)を含む削除インデックス集合Dtaro{2,4}を生成する。そして、削除インデックス集合D taro {2,4}と、第1の改訂者の中間データαtaroとの組み合わせ(例えば連接)を、第1の改訂者の秘密鍵を用いて暗号化することによって署名を行って、電子署名σtaro=Signtaro(αtaro)を生成する。さらに、削除データブロックm2及びm4のハッシュ値の積h2・h4と、所定値g及びNを用いて、後に署名者の電子署名σsignerを検証するための署名者の補助データβsigner=gh2h4(mod N)を算出する。
以上の計算を行った後、第1の改訂者は、削除後のコンテンツデータと、第1の改訂者の電子署名σtaroと、削除インデックス集合Dtaro{2,4}と、署名者の電子署名σsignerと、署名者の補助データβsignerとを、次のユーザに送信する。図7において、矩形内に示されているデータが、次のユーザに送信される。
第1の改訂者から、削除後のコンテンツデータと、第1の改訂者の電子署名σtaroと、削除インデックス集合Dtaro{2,4}と、署名者の電子署名σsignerとを受け取ると、第2の改訂者(例えば花子)は、削除後のコンテンツデータのうち、削除すべきデータブロック(例えばm3)を指定する。そうすると、図8に示すように、削除後のコンテンツデータには、データブロックm1が残っていることになって、この残存データブロックについてハッシュ値h1を算出する。そして、所定値g及びNと、ハッシュ値h1とを用いて、第2の改訂者の中間データαhanako=gh1(mod N)を算出する。さらに、削除されるデータブロックの識別子(又は位置データ)を含む削除インデックス集合Dhanako{3}を生成する。そして、削除インデックス集合D hanako {3}と、第2の改訂者の中間データαhanakoとの組み合わせ(例えば連接)を、第2の改訂者の秘密鍵を用いて暗号化することによって署名を行って、電子署名σhanako=Signhanako(αhanako)を生成する。さらに、削除データブロックm3のハッシュ値の積h3と、所定値g及びNを用いて、後に第1の改訂者の電子署名σtaroを検証するための第1の改訂者の補助データβtaro=gh3(mod N)を算出する。
さらに、図8の星印で示すように、後に署名者の電子署名σsignerを検証するための署名者の補助データβsignerを、βsigner h3=gh2h3h4(mod N)で更新する。
以上の計算を行った後、第2の改訂者は、削除後のコンテンツデータと、第1の改訂者の電子署名σtaroと、第2の改訂者の電子署名σhanakoと、削除インデックス集合Dtaro{2,4}及びDhanako{3}と、署名者の電子署名σsignerと、署名者の補助データβsignerと、第1の改訂者の補助データβtaroを、次のユーザに送信する。図8において、矩形内に示されるデータが、次のユーザに送信される。
なお、この例ではさらに削除後のコンテンツデータのうち公開すべきでないデータブロックを削除することはできない。しかし、例えば削除後のコンテンツデータにデータブロックm5がさらに含まれ、第3の改訂者(例えば次郎)が、このデータブロックを削除対象データブロックとして指定するとする。そうすると、削除後のコンテンツデータには、データブロックm1が残っていることになって、この残存データブロックについてハッシュ値h1を算出する。そして、所定値g及びNと、ハッシュ値h1とを用いて、第3の改訂者の中間データαjiro=gh1(mod N)を算出する。さらに、削除されるデータブロックの識別子(又は位置データ)を含む削除インデックス集合Djiro{5}を生成する。そして、削除インデックス集合D jiro {5}と、第3の改訂者の中間データαjiroとの組み合わせ(例えば連接)を、第3の改訂者の秘密鍵を用いて暗号化することによって署名を行って、電子署名σjiro=Signjiro(αjiro)を生成する。さらに、削除データブロックm5のハッシュ値の積h5と、所定値g及びNを用いて、後に第2の改訂者の電子署名σhanakoを検証するための第2の改訂者の補助データβhanako=gh5(mod N)を算出する。
さらに、後に署名者の電子署名σsignerを検証するための署名者の補助データβsignerを、βsigner h5=gh2h3h4h5(mod N)で更新する。同様に、第1の改訂者の電子署名σtaroを検証するための第1の改訂者の補助データβtaroを、βtaro h5=gh3h5(mod N)で更新する。
以上の計算を行った後、第3の改訂者は、削除後のコンテンツデータと、第1の改訂者の電子署名σtaroと、第2の改訂者の電子署名σhanakoと、第3の改訂者の電子署名σjiroと、削除インデックス集合Dtaro{2,4}、Dhanako{3}及びDjiro{5}と、署名者の電子署名σsignerと、署名者の補助データβsignerと、第1の改訂者の補助データβtaroと、第2の改訂者の補助データβhanakoとを、次のユーザに送信する。
次に、第2の改訂者からデータを受信して検証を行う際の処理について、図9を用いて説明する。まず、第1段階として、削除後のコンテンツデータに含まれる各データブロックm1からハッシュ値h1を算出し、所定値g及びNと、ハッシュ値の積h1とから、第2の改訂者の中間データαhanako=gh1(mod N)をさらに算出する。また、第2の改訂者の削除インデックス集合はDhanako{3}であるから、データブロックm3を第2の改訂者が削除したことが分かる。一方、第2の改訂者の電子署名σhanakoを、第2の改訂者の公開鍵で復号化すると、第2の改訂者の中間データ及び削除インデックス集合とが得られるはずである。このように第2の改訂者の電子署名σhanakoを復号した結果得られる第2の改訂者の中間データ及び第2の改訂者の削除インデックス集合と、削除後のコンテンツデータから算出される第2の改訂者の中間データ及び第2の改訂者の受信された削除インデックス集合とが一致すれば、第2の改訂者についての削除後のコンテンツデータの検証が成功したことになる。
第2の改訂者についての削除後のコンテンツデータの検証が成功すると、第2段階として、所定値Nと第1の改訂者の補助データβtaroとを用いて、第1の改訂者の中間データを算出する。すなわち、第1の改訂者の中間データαtaro=βtaro h1(mod N)を算出する。第1の改訂者の補助データβtaro=gh3(mod N)であったので、αtaro=βtaro h1(mod N)=gh1h3(mod N)が算出されたはずである。一方、第1の改訂者の電子署名σtaroを第1の改訂者の公開鍵で復号化すると、第1の改訂者の中間データ及び削除インデックス集合とが得られるはずである。このように第1の改訂者の電子署名σtaroを復号した結果得られる第1の改訂者の中間データ及び第1の改訂者の削除インデックス集合と、残存データブロックのハッシュ値の積と第1の改訂者の補助データβtaroとから算出される第1の改訂者の中間データ及び第1の改訂者の削除インデックス集合とが一致すれば、第1の改訂者についての削除後のコンテンツデータの検証が成功したことになる。
第1の改訂者についての削除後のコンテンツデータの検証が成功すると、第3段階として、所定値Nと署名者の補助データβsignerと算出ハッシュ値の積h1を用いて、署名者の中間データを算出する。すなわち、第1の改訂者の中間データαsigner=βsigner h1(mod N)を算出する。署名者の補助データβsigner=gh2h3h4(mod N)であったので、αsigner=βsigner h1(mod N)=gh1h2h3h4(mod N)が算出されたはずである。一方、署名者の電子署名σsignerを署名者の公開鍵で復号化すると、署名者の中間データが得られるはずである。このように署名者の電子署名σsignerを復号した結果得られる署名者の中間データと、残存データブロックのハッシュ値の積と署名者の補助データβsignerとから算出される署名者の中間データとが一致すれば、署名者について元々のコンテンツデータの検証が成功したことになる。
このように、削除後のコンテンツデータについて検証を行うことができ、削除データブロックについては、特定のユーザの削除インデックス集合から特定される。すなわち、だれがどのデータブロックを削除したのかについて検証することができ、各段階におけるコンテンツデータの完全性について検証することができる。
上で述べた例のように、第1及び第2の改訂者により4つのデータブロックを含むコンテンツデータのうちの3つのデータブロックを削除し、次のユーザに送信されるデータの量について、図10を用いて検討する。従来技術の欄で述べたように、第2及び第3の従来例については、削除しても削除データブロックの識別子で置換するので、データブロックとしては全4つのデータブロックが含まれることになる。しかし、上でも述べたように、本実施の形態における削除後のコンテンツデータは、残存データブロックm1のみが含まれるので、本実施の形態では1つのみとなる。電子署名については、第2及び第3の従来例も、本実施の形態も、署名者、第1の改訂者及び第2の改訂者といったように(改訂者数+1)=3だけ電子署名が必要となる。
ハッシュ値については、第2の従来例では、署名者及び改訂者のところで使用又は算出したハッシュ値がそのまま必要とされるので、4個×3人=12個必要となる。第3の従来例では、削除したデータブロックの数と同じ数だけハッシュ値が必要となるので、3個必要となる。但し、本実施の形態ではハッシュ値は必要ない。このため、本実施の形態では、改訂者の数だけ補助データを生成するようになっている。すなわち、補助データの値が2個生成される。
従って、一人の改訂者が多数のデータブロックを削除するような場合でも、補助データのサイズは変わらないので、例えばビデオデータから多数のフレームを削除するような場合であっても、検証に用いられるデータの量は増加しない。
以下、このような本実施の形態の概要に基づき、本実施の形態におけるシステム及び処理内容について説明する。
図11に、データ管理システムの概要を示す。例えば、インターネットやLAN(Local Area Network)であるネットワーク1には、例えば秘密鍵を特定のユーザに対して発行したり当該秘密鍵に対応する公開鍵を提供する認証機関サーバ9と、1又は複数の署名者端末3と、1又は複数の改訂者端末5と、1又は複数の検証者端末7とが接続されている。署名者端末3と改訂者端末5と検証者端末7とは、例えばパーソナルコンピュータであって、以下で述べるような機能を有するプログラムを実行する。なお、便宜上、署名者端末3と改訂者端末5と検証者端末7とを別端末として説明するが、全ての端末がこれらの端末の機能を有する。すなわち、署名者は、改訂者や検証者にもなり得るし、改訂者は署名者や検証者にもなり得るし、検証者は署名者や改訂者にもなり得る。
図12に、署名者端末3の機能ブロック図を示す。署名者端末3は、署名者からの指示や入力を受け付ける入力部31と、署名の対象となるコンテンツデータなどが格納されるコンテンツデータ格納部32と、入力部31からの指示に応じてコンテンツデータ格納部32に格納されている特定のコンテンツデータを複数のデータブロックに分割するデータ分割部33と、データ分割部33の処理結果である各データブロックのデータを格納する分割データ格納部34と、分割データ格納部34に格納されている各データブロックについてハッシュ値を算出するハッシュ生成部35と、ハッシュ生成部35によって算出されたハッシュ値を格納するハッシュデータ格納部36と、入力部31からの入力データとハッシュデータ格納部36に格納されているハッシュ値とを用いて電子署名を生成する署名処理部37と、署名処理部37により生成された電子署名を格納する署名データ格納部38と、入力部31からの指示に従って、コンテンツデータ格納部32に格納されている特定のコンテンツデータ及び署名データ格納部38に格納されている電子署名とを指定の装置に出力する出力部39とを有する。
図13を用いて、署名者端末3の動作を説明する。まず、入力部31は、署名者から署名対象コンテンツデータの指定及び出力先などの必要データの入力を受け付ける(ステップS1)。なお、必要データには署名者の秘密鍵のデータ又は予め所定のデータ格納領域に格納されている署名者の秘密鍵の指定を含むようにしても良い。入力部31は、データ分割部33に、指定されたコンテンツデータについて処理するように指示する。
次に、データ分割部33は、入力部31からの指示に従って、指定されたコンテンツデータを、複数のデータブロックに分割し、生成されたデータブロックを分割データ格納部34に格納する(ステップS3)。均等に分割する必要はなく、システム全体で一定のルールに従って分割する。なお、既に分割されているコンテンツデータについては、ステップS3の処理をスキップして、そのまま分割データ格納部34に格納するようにしても良い。そして、ハッシュ生成部35は、分割データ格納部34に格納されている各データブロックについてハッシュ値を算出し、ハッシュデータ格納部36に格納する(ステップS5)。
そして、署名処理部37は、ハッシュデータ格納部36に格納されている、各データブロックについてのハッシュ値hiの積を算出し、当該ハッシュ値hiの積と所定値g及びNとから、中間データαsigner=gΠhi(mod N)を算出し、さらに当該中間データαsignerを署名者の秘密鍵で暗号化することによって電子署名σsignerを生成し、署名データ格納部38に格納する(ステップS7)。所定値g及びNは、例えば署名処理部37が管理するデータ格納領域に保持しておくか、入力部31を介して入力される。
そして、出力部39は、コンテンツデータ格納部32に格納されている署名対象コンテンツデータと、署名データ格納部38に格納されている署名者の電子署名σsignerとを、指定された出力先に出力する(ステップS9)。例えば、第1の改訂者の改訂者端末5に送信する。
このような処理によって、図6に模式的に示したデータが生成される。
図14に、改訂者端末5の機能ブロック図を示す。改訂者端末5は、改訂者からの指示及び入力データを受け付ける入力部54と、他の端末から改訂すべきコンテンツデータ及びその関連データを受信するデータ受信部51と、データ受信部51により受信されたデータを格納する受信データ格納部52と、受信データ格納部52に格納されているコンテンツデータを複数のデータブロックに分割するデータ分割部53と、データ分割部53により生成されたデータブロックを格納する分割データ格納部55と、改訂者によって指示されたデータブロックの削除に応じて改訂後のコンテンツデータを生成する改訂データ生成部57と、改訂後のコンテンツデータを格納する改訂データ格納部59と、分割データ格納部55に格納されている各データブロックについてハッシュ値を算出するハッシュ生成部56と、ハッシュ生成部56によって算出されたハッシュ値を格納するハッシュデータ格納部58と、受信データ格納部52に格納されているデータ及びハッシュデータ格納部58に格納されているハッシュ値などを用いて改訂者の電子署名等を生成する署名処理部60と、署名処理部60により生成されたデータを格納する署名データ格納部62と、ハッシュデータ格納部58に格納されているハッシュ値などを用いて本改訂者より前に処理に係るコンテンツデータに関与したユーザの補助データについて処理を行う補助データ処理部61と、補助データ処理部61の処理結果を格納する補助データ格納部63と、署名データ格納部62と補助データ格納部63と改訂データ格納部59と受信データ格納部52とに格納されているデータを入力部54の指示に従って指定出力先に出力する出力部65とを有する。
入力部54は、データ分割部53、改訂データ生成部57、ハッシュ生成部56、署名処理部60、補助データ処理部61及び出力部65に、指示及び必要なデータを出力する。
次に、図15を用いて改訂者端末5の処理内容について説明する。まず、前提としてデータ受信部51は、署名者端末3又は他の改訂者端末5からデータを受信すると、受信データ格納部52に受信データを格納する。図6及び図7に示したように、署名者端末3から受信した場合と、他の改訂者端末5から受信した場合とでは、受信データの内容が異なる。
そして、改訂者は、入力部54に、改定対象のコンテンツデータの指定を入力し、入力部54は、この改定対象のコンテンツデータの指定をデータ分割部53に出力する。そうすると、データ分割部53は、受信データ格納部52に格納されているコンテンツデータを、複数のデータブロックに分割する(ステップS11)。上でも述べたがシステム全体で一定のルールに従って分割を実施して、各端末で同様のデータブロックが生成されるようにする。なお、生成された複数のデータブロックについては、改訂者に提示して、いずれのデータブロックを削除すべきかを指定できるようにしても良い。
次に、改訂者は、入力部54に対して、削除すべきデータブロック(以下、削除データブロックと呼ぶ)の指定及び必要なデータ(出力先、秘密鍵など)の入力を行い、入力部54は、削除データブロックの指定及び必要なデータの入力を受け付け、例えばメインメモリ等の記憶装置に格納する(ステップS13)。なお、必要データには署名者の秘密鍵のデータ又は予め所定のデータ格納領域に格納されている署名者の秘密鍵の指定を含むようにしても良い。
そして、入力部54は、削除すべきデータブロックの識別子(例えばコンテンツデータの先頭データブロックからシリアルに付与される。従ってコンテンツデータ全体における位置を表すデータとも言える。)を改訂データ生成部57に出力して、改訂データ生成部57に、分割データ格納部55に格納されている、削除データブロック以外の残存データブロックで改訂コンテンツデータを生成させる(ステップS15)。改訂データ生成部57は、改訂コンテンツデータを改訂データ格納部59に格納する。
また、ハッシュ生成部56は、入力部54からの指示に応じて、分割データ格納部55に格納されている各データブロックについてのハッシュ値を算出し、ハッシュデータ格納部58に格納する(ステップS17)。上でも述べたが、全てのデータブロックについて算出されたハッシュ値を用いるが、その用い方については、削除データブロックのハッシュ値と、残存データブロックのハッシュ値とでは異なる。
そして、署名処理部60は、入力部54から削除データブロックの識別子を受け取り、当該削除データブロックの識別子を含む、改訂者の削除インデックス集合データDを生成し、さらに削除データブロックについてのハッシュ値を除く残存データブロックのハッシュ値をハッシュデータ格納部58から読み出し、それらハッシュ値hjの積を算出して、中間データαmodifier=gΠhj(mod N)を算出する。そして、改訂者の秘密鍵で、中間データαmodifier及び削除インデックス集合データDの組み合わせを暗号化することによって、改訂者の電子署名σmodifierを生成し、削除インデックス集合データDと共に署名データ格納部62に格納する(ステップS19)。所定値g及びNは、例えば署名処理部60が管理するデータ格納領域に保持しておくか、入力部31を介して入力される。
なお、削除インデックス集合データDに含まれる、削除データブロックの識別子は、どの端末においてもユニークにどのデータブロックであるかを特定できなければならない。従って、受信データ格納部52に他の改訂者の削除インデックス集合データDが含まれる場合には、単純に分割データ格納部55に格納されているデータブロックの順番ではなく、当該削除インデックス集合データDに含まれる識別子を考慮したものでなければならない。例えば、5つのデータブロックが存在する場合に、受信削除インデックス集合データDが{2,4}であれば、本端末においては存在するデータブロックは{1,2,3}ではなく、{1,3,5}であると認識して、削除インデックス集合データDに該当識別子を入れる。
さらに、補助データ処理部61は、入力部54から削除データブロックの識別子を受け取り、削除データブロックに対応するハッシュ値をハッシュデータ格納部58から読み出して、それらハッシュ値hkの積を算出し、直前の改訂者又は署名者の補助データβprevious_user=gΠhk(mod N)を算出し、補助データ格納部63に格納する(ステップS21)。さらに、補助データ処理部61は、受信データ格納部52に、他のユーザの補助データが格納されている場合には、当該補助データβreceivedを読み出して、削除データブロックについてのハッシュ値hkの積を用いて、補助データβreceived Πhk(mod N)でもって補助データβreceivedを変更して、変更後の補助データβreceivedを、補助データ格納部63に格納する(ステップS23)。
そして、出力部65は、署名データ格納部62に格納されている改訂者の電子署名及び削除インデックス集合データと、補助データ格納部63に格納されている署名者又は直前の改訂者の補助データと、受信データ格納部52に格納されている全電子署名及び削除インデックス集合データと、補助データ格納部63に格納されている変更後の補助データとを、入力部54から指定されている出力先に出力する(ステップS25)。
以上のような処理を実施することによって、図7又は図8に示すようなデータが、次のユーザに出力される。
次に、検証者端末7の機能ブロック図を図16に示す。検証者端末7は、署名者端末3又は改訂者端末5からデータを受信するデータ受信部71と、データ受信部71が受信したデータを格納する受信データ格納部72と、検証者からの指示を受け付ける入力部80と、入力部80からの指示に従って受信データ格納部72に格納されているコンテンツデータをデータブロックに分割するデータ分割部73と、データ分割部73により生成されたデータブロックのデータを格納する分割データ格納部74と、分割データ格納部74に格納されているデータブロックについてハッシュ値を算出するハッシュ生成部75と、ハッシュ生成部75により算出されたハッシュ値を格納するハッシュデータ格納部76と、例えば認証機関サーバ9から必要なユーザの公開鍵を取得する公開鍵取得部77と、ハッシュデータ格納部76と受信データ格納部72とに格納されているデータ及び公開鍵取得部77から受け取る公開鍵を用いて検証処理を実施する検証部78と、検証部78の検証結果を出力する出力部79とを有する。
次に、検証者端末7の動作内容について図17及び図18を用いて説明する。データ受信部71は、他の端末からデータを受信すると、受信データ格納部72に格納する。そして、入力部80が検証者から検証開始の指示を受け付けると、データ分割部73に処理開始を指示する。なお、複数のコンテンツについてのデータが受信データ格納部72に格納されている場合には、いずれのコンテンツのデータについて処理するのかについての指定も行われる。なお、署名者の秘密鍵のデータ又は予め所定のデータ格納領域に格納されている署名者の秘密鍵の入力がなされる。
そして、入力部80から指示を受けたデータ分割部73は、受信データ格納部72に格納されているコンテンツデータを、データブロックに分割して、分割データ格納部74に格納する(ステップS31)。そして、ハッシュ生成部75は、分割データ格納部74に格納されている各データブロックについてハッシュ値を算出して、ハッシュデータ格納部76に格納する(ステップS33)。
その後、検証部78は、受信データ格納部72に格納されている電子署名及び関連データ(具体的には削除インデックス集合データ及び補助データ)を読み出して、新しい順にソートする(ステップS35)。電子署名に含まれる生成時刻などを用いて判断する。そして、検証部78は、カウンタnを1に初期化し(ステップS37)、ハッシュデータ格納部76に格納されているハッシュ値の積Hから、第nの中間データαn=gH(mod N)を算出し、例えばメインメモリなどの記憶装置に格納する(ステップS39)。所定値g及びNは、例えば署名処理部37が管理するデータ格納領域に保持しておくか、入力部31を介して入力される。
また、検証部78は、公開鍵取得部77に、n番目の電子署名σnの署名者(n番目の電子署名σnを生成したユーザ)の公開鍵を、例えば認証機関サーバ9から取得させ、公開鍵取得部77から受け取り、例えばメインメモリなどの記憶装置に格納する(ステップS41)。そして、検証部78は、第n中間データαnと電子署名σn及び該当削除インデックス集合データ(電子署名σnが署名者端末3の署名者の電子署名の場合には存在しない)とから検証処理を実施する(ステップS43)。具体的には、電子署名σnを公開鍵で復号することによって中間データと削除インデックス集合データとの組み合わせを取得し、それらが第n中間データαnと受信した該当削除インデックス集合データとの組み合わせと一致するか判断する。一致すれば検証成功で、一致しなければ検証失敗ということになる。
そして、検証失敗であれば(ステップS45:Noルート)、検証部78は、検証失敗を出力部79に出力し、出力部79は、検証失敗を表すエラー出力を、例えば表示装置に出力する(ステップS47)。プリンタや音声出力のための機器が検証者端末7に備えられている場合には、それらを用いてエラーを通知するようにしても良い。そして処理を終了する。
一方、検証成功であれば(ステップS45:Yesルート)、処理は端子Aを介して図18の処理フローに移行する。なお、この際、検証できた電子署名σnの生成を行ったユーザとそのユーザの削除インデックス集合データを、表示装置に出力するようにしても良い。
図18の処理の説明に移行して、検証部78は、受信データ格納部72に格納されている全ての電子署名について処理したか判断する(ステップS49)。未処理の電子署名が存在しない場合には、検証部78は、検証成功を出力部79に通知して、出力部79は、検証成功を表示装置などに出力する(ステップS61)。これによって、公開部分の完全性保証と、削除部分の秘匿性保証に加え、改訂者(削除者)の識別が可能となる。
一方、未処理の電子署名が存在する場合には、検証部78は、カウンタnを1インクリメントし(ステップS51)、受信データ格納部72に格納されている補助データβnと、ハッシュ値の積Hとから、第nの中間データαn=βn H(mod N)を算出し、メインメモリなどの記憶装置に格納する(ステップS53)。
また、検証部78は、公開鍵取得部77に、n番目の電子署名σnの署名者(n番目の電子署名σnを生成したユーザ)の公開鍵を、例えば認証機関サーバ9から取得させ、公開鍵取得部77から受け取り、例えばメインメモリなどの記憶装置に格納する(ステップS54)。そして、検証部78は、第n中間データαnと電子署名σn及び該当削除インデックス集合データとから検証処理を実施する(ステップS55)。具体的には、電子署名σnを公開鍵で復号することによって中間データと削除インデックス集合データとの組み合わせを取得し、それらが第n中間データαnと受信した該当削除インデックス集合データ(電子署名σnが署名者の電子署名の場合には存在しない)との組み合わせと一致するか判断する。一致すれば検証成功で、一致しなければ検証失敗ということになる。
そして、検証失敗であれば(ステップS57:Noルート)、検証部78は、検証失敗を出力部79に出力し、出力部79は、検証失敗を表すエラー出力を、例えば表示装置に出力する(ステップS59)。そして処理を終了する。
一方、検証成功であれば(ステップS57:Yesルート)、ステップS49に戻る。なお、この際、検証できた電子署名σnの生成を行ったユーザとそのユーザの削除インデックス集合データを、表示装置に出力するようにしても良い。
このように、順番に新しい改訂者から古い改訂者、そして最後に署名者の電子署名について検証して、改竄などが行われていないかを判断する。
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、署名者端末3、改訂者端末5及び検証者端末7の機能ブロック図を示しているが、このような機能ブロックの構成は必ずしも実際のプログラムモジュール構成と一致しない場合もある。
さらに、処理フローについても処理結果が変わらない限り、ステップの順番を入れ替えたり、並列に実行することができる部分もある。
また、コンテンツデータは、文書データだけではなく、動画データ、音声データ、画像データその他のデータである場合もある。
なお、上で述べた署名者端末3、改訂者端末5及び検証者端末7は、コンピュータ装置であって、図19に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
本実施の形態をまとめると以下のように表される。
本実施の形態の第1の態様に係るデータ処理装置は、(A)データ格納部(図20:1001)に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付ける入力部(図20:1002)と、(B)各データブロックについてハッシュ値を算出するハッシュ生成部(図20:1003)と、(C)複数のデータブロックのうち上記削除すべきデータブロックのハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部(図20:1006)に格納する補助データ生成部(図20:1004)と、(D)複数のデータブロックのうち上記削除すべきデータブロックを除く残存データブロックのハッシュ値の積H2と、所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと上記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部(図20:1007)に格納する電子署名生成部(図20:1005)と、(E)補助データ格納部に格納されている補助データと、電子署名格納部に格納されている電子署名と、上記削除すべきデータブロックの位置データと、データ格納部に格納されているコンテンツデータのうち残存データブロックを含む改訂コンテンツデータと、データ格納部に格納されている他の電子署名とを、指定出力先に出力する出力部(図20:1008)とを有する。
上で述べたような補助データ生成部及び電子署名生成部を用いるので、出力部では、削除すべきデータブロックの数が多い場合においても、出力されるデータの量が大幅に増加することがない。増加するのは上記削除すべきデータブロックの位置データだけであり、その増加の幅は許容できる範囲である。
また、上で述べたデータ格納部に、過去の補助データβi及び過去の削除データブロックの位置データが格納されている場合には、上で述べた補助データ生成部が、上記削除すべきデータブロックのハッシュ値の積H1と、所定の値Nとを用いて、データ格納部に格納されている過去の補助データβiを、βi H1(mod N)で更新し、補助データ格納部に格納するようにしてもよい。そして、上で述べた出力部が、補助データ格納部に格納されている過去の補助データと、データ格納部に格納されている過去の削除データブロックの位置データとをさらに出力するようにしてもよい。このように、削除者の数が増加すると、出力されるデータの量も増加するが、削除データブロックの数に応じて大幅に増加するわけではない。
本実施の形態の第2の態様に係るデータ処理装置は、(A)削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部(図21:1101)と、(B)削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するハッシュ生成部(図21:1103)と、(C)所定の値g及びNと、ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、当該中間データαとデータ格納部に格納されている上記削除済みコンテンツデータについての削除データブロックの位置データ及び削除済みコンテンツデータに対応する電子署名と当該電子署名の署名者(当該電子署名を生成したユーザ。具体的には削除者)の公開鍵とを用いて、前記削除済みコンテンツデータに対応する電子署名の検証を実施する検証部(図21:1105)とを有する。そして、検証部は、(D)削除済みコンテンツデータに対応する電子署名の検証が成功すると、所定の値Nと、ハッシュ値の積H1と、削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、当該第2の中間データα2と削除前コンテンツデータについての電子署名の署名者の公開鍵と削除前コンテンツデータについての電子署名とを用いて、削除前コンテンツデータについての電子署名の検証を実施する。
検証する場合においても、削除済みコンテンツデータに含まれる各データブロックについてのハッシュ値の積H1及び補助データを用いて、削除者の手元に送られてきたコンテンツデータに関する特徴的な値である第2の中間データα2が算出されることになる。従って、削除前コンテンツデータについての電子署名の検証が容易に実施される。
なお、上で述べたデータ格納部に、さらに過去の削除者についての電子署名と、さらに過去の削除データブロックの位置データと、さらに過去の削除者についての補助データβ2とがさらに格納されている場合もある。そのような場合、上で述べた検証部は、削除済みコンテンツデータに対応する電子署名の検証が成功すると、所定の値Nと、ハッシュ値の積H1と、上記さらに過去の削除者についての補助データβ2とを用いて、第3の中間データα3=β2 H1(mod N)を算出し、当該第3の中間データα3とデータ格納部に格納されている上記さらに過去の削除データブロックの位置データ、上記さらに過去の削除者についての電子署名及び上記さらに過去の削除者についての電子署名と当該さらに過去の削除者の公開鍵とを用いて、上記さらに過去の削除者についての電子署名の検証を実施するようにしてもよい。
複数の削除者が存在する場合にも対処できる。なお、上で述べたように、削除データブロックの数が増加しても検証に用いられるデータはほとんど増加しない。
第3の態様に係るデータ処理装置は、コンテンツデータ格納部(図22:1201)に格納されている署名対象のコンテンツデータを複数のデータブロックに分割し、分割データ格納部(図22:1203)に格納するデータ分割部(図22:1202)と、分割データ格納部に格納されている各データブロックについてハッシュ値を算出するハッシュ生成部(図22:1204)と、所定の値g及びNと、算出されたハッシュ値の積Hとを用いて、中間データα=gH(mod N)を算出し、当該中間データαに対して署名者の秘密鍵により電子署名を生成し、電子署名格納部(図22:1206)に格納する電子署名生成部(図22:1205)とを有する。
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
データ格納部に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付ける入力部と、
各前記データブロックについてハッシュ値を算出するハッシュ生成部と、
前記複数のデータブロックのうち前記削除すべきデータブロックの前記ハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部に格納する補助データ生成部と、
前記複数のデータブロックのうち前記削除すべきデータブロックを除く残存データブロックの前記ハッシュ値の積H2と、前記所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと前記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部に格納する電子署名生成部と、
前記補助データ格納部に格納されている前記補助データと、前記電子署名格納部に格納されている前記電子署名と、前記削除すべきデータブロックの位置データと、前記データ格納部に格納されているコンテンツデータのうち前記残存データブロックを含む改訂コンテンツデータと、前記データ格納部に格納されている他の電子署名とを、指定出力先に出力する出力部と、
を有するデータ処理装置。
(付記2)
前記データ格納部に、過去の補助データβi及び過去の削除データブロックの位置データが格納されている場合には、
前記補助データ生成部が、
前記削除すべきデータブロックの前記ハッシュ値の積H1と、前記所定の値Nとを用いて、前記データ格納部に格納されている前記過去の補助データβiを、βi H1(mod N)で更新し、前記補助データ格納部に格納し、
前記出力部が、前記補助データ格納部に格納されている前記過去の補助データと、前記データ格納部に格納されている前記過去の削除データブロックの位置データとをさらに出力する
付記1記載のデータ処理装置。
(付記3)
削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、前記削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部と、
前記削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するハッシュ生成部と、
所定の値g及びNと、前記ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、当該中間データαと前記データ格納部に格納されている前記削除済みコンテンツデータについての削除済みデータブロックの位置データ及び前記削除済みコンテンツデータに対応する電子署名と当該電子署名の署名者の公開鍵とを用いて、前記削除済みコンテンツデータに対応する電子署名の検証を実施する検証部と、
を有し、
前記検証部は、
前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、
前記所定の値Nと、前記ハッシュ値の積H1と、前記削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、当該第2の中間データα2と前記削除前コンテンツデータについての電子署名の署名者の公開鍵と前記削除前コンテンツデータについての電子署名とを用いて、前記削除前コンテンツデータについての電子署名の検証を実施する
データ処理装置。
(付記4)
前記データ格納部に、さらに過去の削除者についての電子署名と、さらに過去の削除データブロックの位置データと、さらに過去の削除者についての補助データβ2とがさらに格納されている場合には、
前記検証部は、
前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、
前記所定の値Nと、前記ハッシュ値の積H1と、前記さらに過去の削除者についての補助データβ2とを用いて、第3の中間データα3=β2 H1(mod N)を算出し、当該第3の中間データα3と前記データ格納部に格納されている前記さらに過去の削除データブロックの位置データ、前記さらに過去の削除者についての電子署名及び前記さらに過去の削除者についての電子署名と当該さらに過去の削除者の公開鍵とを用いて、前記さらに過去の削除者についての電子署名の検証を実施する
付記3記載のデータ処理装置。
(付記5)
コンテンツデータ格納部に格納されている署名対象のコンテンツデータを複数のデータブロックに分割し、分割データ格納部に格納するデータ分割部と、
前記分割データ格納部に格納されている各前記データブロックについてハッシュ値を算出するハッシュ生成部と、
所定の値g及びNと、算出された前記ハッシュ値の積Hとを用いて、中間データα=gH(mod N)を算出し、当該中間データαに対して署名者の秘密鍵により電子署名を生成し、電子署名格納部に格納する電子署名生成部と、
を有するデータ処理装置。
(付記6)
コンピュータに、
コンテンツデータ格納部に格納されている署名対象のコンテンツデータを複数のデータブロックに分割し、分割データ格納部に格納するステップと、
前記分割データ格納部に格納されている各前記データブロックについてハッシュ値を算出するステップと、
所定の値g及びNと、算出された前記ハッシュ値の積Hとを用いて、中間データα=gH(mod N)を算出し、当該中間データαに対して署名者の秘密鍵により電子署名を生成し、電子署名格納部に格納するステップと、
を実行させるための、署名処理プログラム。
(付記7)
コンピュータに、
データ格納部に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付けるステップと、
各前記データブロックについてハッシュ値を算出するステップと、
前記複数のデータブロックのうち前記削除すべきデータブロックの前記ハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部に格納するステップと、
前記複数のデータブロックのうち前記削除すべきデータブロックを除く残存データブロックの前記ハッシュ値の積H2と、前記所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと前記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部に格納するステップと、
前記補助データ格納部に格納されている前記補助データと、前記電子署名格納部に格納されている前記電子署名と、前記削除すべきデータブロックの位置データと、前記データ格納部に格納されているコンテンツデータのうち前記残存データブロックを含む改訂コンテンツデータと、前記データ格納部に格納されている他の電子署名とを、指定出力先に出力する出力ステップと、
を実行させるための、削除署名処理プログラム。
(付記8)
前記データ格納部に、過去の補助データβi及び過去の削除データブロックの位置データが格納されている場合に、
前記削除すべきデータブロックの前記ハッシュ値の積H1と、前記所定の値Nとを用いて、前記データ格納部に格納されている前記過去の補助データβiを、βi H1(mod N)で更新し、前記補助データ格納部に格納するステップ
をさらに前記コンピュータに実行させ、
前記出力ステップにおいて、前記補助データ格納部に格納されている前記過去の補助データと、前記データ格納部に格納されている前記過去の削除データブロックの位置データとをさらに出力する
付記7記載の削除署名処理プログラム。
(付記9)
コンピュータに、
削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、前記削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部に格納されている前記削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するステップと、
所定の値g及びNと、前記ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、当該中間データαと前記データ格納部に格納されている前記削除済みコンテンツデータについての削除データブロックの位置データ及び前記削除済みコンテンツデータに対応する電子署名と当該電子署名の署名者の公開鍵とを用いて、前記削除済みコンテンツデータに対応する電子署名の検証を実施するステップと、
前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、前記所定の値Nと、前記ハッシュ値の積H1と、前記削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、当該第2の中間データα2と前記削除前コンテンツデータについての電子署名の署名者の公開鍵と前記削除前コンテンツデータについての電子署名とを用いて、前記削除前コンテンツデータについての電子署名の検証を実施するステップと、
を実行させるための、検証処理プログラム。
(付記10)
前記データ格納部に、さらに過去の削除者についての電子署名と、さらに過去の削除データブロックの位置データと、さらに過去の削除者についての補助データβ2とがさらに格納されている場合に、
前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、前記所定の値Nと、前記ハッシュ値の積H1と、前記さらに過去の削除者についての補助データβ2とを用いて、第3の中間データα3=β2 H1(mod N)を算出し、当該第3の中間データα3と前記データ格納部に格納されている前記さらに過去の削除データブロックの位置データ、前記さらに過去の削除者についての電子署名及び前記さらに過去の削除者についての電子署名と当該さらに過去の削除者の公開鍵とを用いて、前記さらに過去の削除者についての電子署名の検証を実施するステップ
をさらに前記コンピュータに実行させるための付記9記載の検証処理プログラム。
31 入力部 32 コンテンツデータ格納部
33 データ分割部 34 分割データ格納部
35 ハッシュ生成部 36 ハッシュデータ格納部
37 署名処理部 38 署名データ格納部
39 出力部
51 データ受信部 52 受信データ格納部
53 データ分割部 54 入力部
55 分割データ格納部 56 ハッシュ生成部
57 改訂データ生成部 58 ハッシュデータ格納部
59 改訂データ格納部 60 署名処理部
61 補助データ処理部 62 署名データ格納部
63 補助データ格納部 65 出力部
71 データ受信部 72 受信データ格納部
73 データ分割部 74 分割データ格納部
75 ハッシュ生成部 76 ハッシュデータ格納部
77 公開鍵取得部 78 検証部
79 出力部 80 入力部

Claims (6)

  1. データ格納部に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付ける入力部と、
    各前記データブロックについてハッシュ値を算出するハッシュ生成部と、
    前記複数のデータブロックのうち前記削除すべきデータブロックの前記ハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部に格納する補助データ生成部と、
    前記複数のデータブロックのうち前記削除すべきデータブロックを除く残存データブロックの前記ハッシュ値の積H2と、前記所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと前記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部に格納する電子署名生成部と、
    前記補助データ格納部に格納されている前記補助データと、前記電子署名格納部に格納されている前記電子署名と、前記削除すべきデータブロックの位置データと、前記データ格納部に格納されているコンテンツデータのうち前記残存データブロックを含む改訂コンテンツデータと、前記データ格納部に格納されている、前記コンテンツデータの署名者の電子署名とを、指定出力先に出力する出力部と、
    を有するデータ処理装置。
  2. 前記データ格納部に、過去の補助データβi及び過去の削除データブロックの位置データが格納されている場合には、
    前記補助データ生成部が、
    前記削除すべきデータブロックの前記ハッシュ値の積H1と、前記所定の値Nとを用いて、前記データ格納部に格納されている前記過去の補助データβiを、βi H1(mod N)で更新し、前記補助データ格納部に格納し、
    前記出力部が、前記補助データ格納部に格納されている前記過去の補助データと、前記データ格納部に格納されている前記過去の削除データブロックの位置データとをさらに出力する
    請求項1記載のデータ処理装置。
  3. 削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、前記削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部と、
    前記削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するハッシュ生成部と、
    所定の値g及びNと、前記ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、前記削除済みコンテンツデータに対応する電子署名を当該電子署名の署名者の公開鍵で復号化した結果の第1の部分と前記中間データとが一致するか否か、前記復号化した結果の第2の部分と前記削除済みデータブロックの位置データとが一致するか否かを判断することによって、前記削除済みコンテンツデータに対応する電子署名の検証を実施する検証部と、
    を有し、
    前記検証部は、
    前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、
    前記所定の値Nと、前記ハッシュ値の積H1と、前記削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、前記削除前コンテンツデータについての電子署名を当該電子署名の署名者の公開鍵で復号化した結果と前記第2の中間データとが一致するか否かを判断することによって、前記削除前コンテンツデータについての電子署名の検証を実施する
    データ処理装置。
  4. 前記データ格納部に、さらに過去の削除者についての電子署名と、さらに過去の削除データブロックの位置データと、さらに過去の削除者についての補助データβ2とがさらに格納されている場合には、
    前記検証部は、
    前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、
    前記所定の値Nと、前記ハッシュ値の積H1と、前記さらに過去の削除者についての補助データβ2とを用いて、第3の中間データα3=β2 H1(mod N)を算出し、前記さらに過去の削除者についての電子署名を当該さらに過去の削除者の公開鍵で復号化した第2の結果の第1の部分と前記第3の中間データとが一致するか否か、前記復号化した第2の結果の第2の部分と前記さらに過去の削除データブロックの位置データとが一致するか否かを判断することによって、前記さらに過去の削除者についての電子署名の検証を実施する
    請求項3記載のデータ処理装置。
  5. コンピュータに、
    データ格納部に格納されているコンテンツデータに含まれる複数のデータブロックのうち削除すべきデータブロックの指定を受け付けるステップと、
    各前記データブロックについてハッシュ値を算出するステップと、
    前記複数のデータブロックのうち前記削除すべきデータブロックの前記ハッシュ値の積H1と、所定の値g及びNとを用いて、署名者の補助データβ=gH1(mod N)を算出し、補助データ格納部に格納するステップと、
    前記複数のデータブロックのうち前記削除すべきデータブロックを除く残存データブロックの前記ハッシュ値の積H2と、前記所定の値g及びNとを用いて、中間データα=gH2(mod N)を算出し、さらに当該中間データαと前記削除すべきデータブロックの位置データとの組み合わせに対して削除指示者の秘密鍵により電子署名を生成し、電子署名格納部に格納するステップと、
    前記補助データ格納部に格納されている前記補助データと、前記電子署名格納部に格納されている前記電子署名と、前記削除すべきデータブロックの位置データと、前記データ格納部に格納されているコンテンツデータのうち前記残存データブロックを含む改訂コンテンツデータと、前記データ格納部に格納されている、前記コンテンツデータの署名者の電子署名とを、指定出力先に出力する出力ステップと、
    を実行させるための、削除署名処理プログラム。
  6. コンピュータに、
    削除済みコンテンツデータと、当該削除済みコンテンツデータに対応する電子署名と、当該削除済みコンテンツデータについての削除データブロックの位置データと、削除前コンテンツデータについての電子署名と、前記削除前コンテンツデータに対する電子署名の署名者の補助データβとを格納するデータ格納部に格納されている前記削除済みコンテンツデータに含まれる各データブロックについてハッシュ値を算出するステップと、
    所定の値g及びNと、前記ハッシュ値の積H1とを用いて、中間データα=gH1(mod N)を算出し、前記削除済みコンテンツデータに対応する電子署名を当該電子署名の署名者の公開鍵で復号化した結果の第1の部分と前記中間データとが一致するか否か、前記復号化した結果の第2の部分と前記削除済みデータブロックの位置データとが一致するか否かを判断することによって、前記削除済みコンテンツデータに対応する電子署名の検証を実施するステップと、
    前記削除済みコンテンツデータに対応する電子署名の検証が成功すると、前記所定の値Nと、前記ハッシュ値の積H1と、前記削除前コンテンツデータについての電子署名の署名者の補助データβとを用いて、第2の中間データα2=βH1(mod N)を算出し、前記削除前コンテンツデータについての電子署名を当該電子署名の署名者の公開鍵で復号化した結果と前記第2の中間データとが一致するか否かを判断することによって、前記削除前コンテンツデータについての電子署名の検証を実施するステップと、
    を実行させるための、検証処理プログラム。
JP2009216437A 2009-09-18 2009-09-18 データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム Expired - Fee Related JP5381543B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009216437A JP5381543B2 (ja) 2009-09-18 2009-09-18 データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム
US12/884,476 US8533483B2 (en) 2009-09-18 2010-09-17 Data processing apparatus and digital signature method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009216437A JP5381543B2 (ja) 2009-09-18 2009-09-18 データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム

Publications (2)

Publication Number Publication Date
JP2011065497A JP2011065497A (ja) 2011-03-31
JP5381543B2 true JP5381543B2 (ja) 2014-01-08

Family

ID=43757647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009216437A Expired - Fee Related JP5381543B2 (ja) 2009-09-18 2009-09-18 データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム

Country Status (2)

Country Link
US (1) US8533483B2 (ja)
JP (1) JP5381543B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1983436B1 (fr) * 2007-04-20 2010-10-06 St Microelectronics S.A. Contrôle d'intégrité d'une mémoire externe à un processeur
WO2012122994A1 (en) * 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
US8687803B2 (en) * 2011-09-14 2014-04-01 Apple Inc. Operational mode for block ciphers
GB2499985A (en) * 2012-02-29 2013-09-11 Nds Ltd Current state of OTP memory used with new received information to define new OTP state for computation of new digital signature in preventing playback attacks
US10339124B2 (en) * 2015-05-27 2019-07-02 Quest Software Inc. Data fingerprint strengthening
GB2540562B (en) * 2015-07-21 2019-09-04 Advanced Risc Mach Ltd Method of and apparatus for generating a signature representative of the content of an array of data
JP6544205B2 (ja) * 2015-11-04 2019-07-17 株式会社リコー 情報処理装置、プログラム、情報処理システムおよび情報処理方法
WO2017095435A1 (en) 2015-12-04 2017-06-08 Hewlett Packard Enterprise Development Lp Combining hashes of data blocks
US10915567B1 (en) * 2018-03-15 2021-02-09 Facebook, Inc. Content selection metric determination for a content distribution system
US10992456B2 (en) * 2018-10-09 2021-04-27 International Business Machines Corporation Certifying authenticity of data modifications
US11374762B2 (en) 2018-10-09 2022-06-28 International Business Machines Corporation Certifying authenticity of data modifications
US11849047B2 (en) 2018-10-09 2023-12-19 International Business Machines Corporation Certifying authenticity of data modifications
US11151236B2 (en) * 2018-12-20 2021-10-19 International Business Machines Corporation File verification database system
US11139960B2 (en) * 2018-12-20 2021-10-05 International Business Machines Corporation File redaction database system
US11025430B2 (en) * 2018-12-20 2021-06-01 International Business Machines Corporation File provenance database system
EP3832514A1 (en) * 2019-12-06 2021-06-09 Vocalink Limited An apparatus, computer program and method
EP3832513A1 (en) * 2019-12-06 2021-06-09 Vocalink Limited An apparatus, computer program and method
JP7323807B2 (ja) * 2020-01-20 2023-08-09 富士通株式会社 検証方法、プログラム、および情報処理装置
FR3140457A1 (fr) * 2022-10-04 2024-04-05 Marbeuf Conseil Et Recherche Méthode d’amélioration de hachage d’un fichier

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1989498B (zh) * 2004-07-20 2012-10-17 富士通株式会社 电子文件管理***及电子文件管理方法
JP2006060722A (ja) 2004-08-24 2006-03-02 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
US20070168671A1 (en) 2006-01-16 2007-07-19 Fujitsu Limited Digital document management system, digital document management method, and digital document management program
JP2009010504A (ja) * 2007-06-26 2009-01-15 Hitachi Ltd 電子データの真正性保証方法及びシステム
JP4477678B2 (ja) * 2008-01-21 2010-06-09 富士通株式会社 電子署名方式、電子署名プログラムおよび電子署名装置
JP2009182864A (ja) * 2008-01-31 2009-08-13 Hitachi Kokusai Electric Inc 署名装置、検証装置、プログラム、署名方法、検証方法及びシステム

Also Published As

Publication number Publication date
US20110072278A1 (en) 2011-03-24
US8533483B2 (en) 2013-09-10
JP2011065497A (ja) 2011-03-31

Similar Documents

Publication Publication Date Title
JP5381543B2 (ja) データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム
EP3361408B1 (en) Verifiable version control on authenticated and/or encrypted electronic documents
CN113014392B (zh) 基于区块链的数字证书管理方法及***、设备、存储介质
US8583925B2 (en) Mix-net system
JP4993674B2 (ja) 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体
US7958361B2 (en) Information processing apparatus and method
JP5332635B2 (ja) 電子署名方法、電子署名プログラムおよび電子署名装置
US20090193259A1 (en) Electronic document authenticity assurance method and electronic document disclosure system
US20080172562A1 (en) Encryption and authentication of data and for decryption and verification of authenticity of data
US20100046749A1 (en) Content protection apparatus, and content utilization apparatus
JP4776906B2 (ja) 署名生成方法及び情報処理装置
JP5239849B2 (ja) 電子署名方法、電子署名プログラムおよび電子署名装置
JP5471444B2 (ja) コンテンツの公開システム及び該システムにおける公開コンテンツの保証方法
CN112784284B (zh) 加密处理***、加密处理方法以及记录介质
WO2022068239A1 (zh) 数据处理方法、节点设备及存储介质
JP2006060722A (ja) 電子文書の真正性保証方法および電子文書の公開システム
Gudeme et al. Review of remote data integrity auditing schemes in cloud computing: taxonomy, analysis, and open issues
CN115001730B (zh) 分布式场景下基于角色属性的访问控制***及方法
CN109743327B (zh) 基于无证书的云存储中共享数据的完整性公开验证方法
JP2000250408A (ja) ファイル認証システム、署名システム及び署名方法、認証システム及び認証方法、及び記録媒体
JP6685968B2 (ja) データ管理システム、データ管理方法及びデータ管理プログラム
JP6782758B2 (ja) 長期署名データ生成装置および長期署名データ生成方法
JP2006065408A (ja) 署名生成方法、署名検証方法、及び情報処理装置
JP2002006739A (ja) 認証情報生成装置およびデータ検証装置
JP2008054355A (ja) 電子データの真正性保証方法,電子データの開示方法,および,電子データの公開システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130816

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130916

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees