JP4477678B2 - 電子署名方式、電子署名プログラムおよび電子署名装置 - Google Patents

電子署名方式、電子署名プログラムおよび電子署名装置 Download PDF

Info

Publication number
JP4477678B2
JP4477678B2 JP2008010418A JP2008010418A JP4477678B2 JP 4477678 B2 JP4477678 B2 JP 4477678B2 JP 2008010418 A JP2008010418 A JP 2008010418A JP 2008010418 A JP2008010418 A JP 2008010418A JP 4477678 B2 JP4477678 B2 JP 4477678B2
Authority
JP
Japan
Prior art keywords
signature
document
partial
value
partial document
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
JP2008010418A
Other languages
English (en)
Other versions
JP2009171521A (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 JP2008010418A priority Critical patent/JP4477678B2/ja
Priority to US12/356,845 priority patent/US8433910B2/en
Publication of JP2009171521A publication Critical patent/JP2009171521A/ja
Application granted granted Critical
Publication of JP4477678B2 publication Critical patent/JP4477678B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Description

本発明は、電子文書や画像、音声等の電子的な情報の作成者や確認者を保証する電子署名技術に関する。特に、「墨塗り署名」や「削除署名」といった、署名を行った情報の一部を取り出しても元の情報の一部であることを署名によって保証できる、電子署名方式、電子署名プログラムおよび電子署名装置に関するものである。
電子文書の完全性を保証する技術として電子署名がある。電子文書の利用・活用を進める上では、署名された電子文書の一部を取り出したい(抽出したい)というニーズは多い。しかし、一般的な電子署名ではこのような抽出は文書の改ざんに当たるため、完全性の保証が出来ない。これを解決する技術として、墨塗り署名や削除署名という部分抽出可能な電子署名の応用技術がある。これらは、抽出を行っても、その部分の完全性を保証することができる。
ここで、抽出署名を定義する。一般の電子署名は、署名を行う署名者と検証を行う検証者の二者モデルで定義する。これに対し、抽出署名では、図1に示すように、署名を行う署名者、署名者の署名した文書から一部分を抽出する抽出者、抽出された文書を検証する検証者の三者モデルを使用する。署名者が何らかの方法で文書に署名を行う。そして、その文書および署名を抽出者が受け取る。抽出者は、受け取った文書の一部を抽出し、それに伴う抽出情報の生成や署名のアップデートを行う。そしてその抽出された文書および署名と抽出情報を検証者が受け取る。検証者は抽出された文書および署名と抽出情報から、その抽出文書が、署名者が署名を行った文書の一部であることを検証する。以上の流れを満たすことができる署名方式を抽出署名と定義する。
墨塗り署名や、削除署名を行うには事前に文書を複数の部分文書に分割し、それらの部分文書に対して署名処理または署名処理の一部を行う。従来の墨塗り署名、削除署名では、署名時に署名の情報が部分文書の数に比例して膨大になったり、抽出時に抽出する部分文書の数や削除する部分文書の数に比例した抽出情報を持たなければならなかったりした。そのため、大きな文書の一部を抽出するために、大量の署名情報や、大量の抽出情報を持たなければならず、非常に効率が悪かった。
墨塗り署名の代表として、下記の特許文献1に開示された署名方式(以下、この署名方式をSUMI−4とする)があげられる。この署名方式では、署名は部分文書の数によらず1つだけであるが、抽出時に削除する部分文書のハッシュ値群を持たなければならならないため、抽出情報が削除部分文書数に比例して増大してしまう。
これを図2を参照して説明する。署名時に、署名者は文書情報Mを部分文書情報m1〜m4に分割し、それぞれの部分文書情報に部分文書ID情報ID1〜ID4を付加してID付部分文書M1〜M4を生成する。そしてハッシュ値h1〜h4を計算し、そのハッシュ値h1〜h4に対して署名を行い(署名σ)、ID付部分文書M1〜M4と署名σを抽出者に送付する。抽出時には、抽出者は抽出するID付部分文書を決定する。ここでは、ID付部分文書M2を抽出するものとする。そして、削除する(抽出しない)ID付部分文書M1,M3,M4のハッシュ値h1,h3,h4を計算し、h1,M2,h3,h4と署名者の署名σを公開する。つまり、削除するID付部分文書M1,M3,M4の代わりにハッシュ値h1,h3,h4が公開される。署名検証時、検証者は公開されているID付部分文書情報M2からハッシュ値h2を計算することで、公開されているh1,h3,h4と併せてハッシュ値h1〜h4を復元し、署名σで検証を行う。署名σは署名者がハッシュ値h1〜h4に対して付与した署名であるので、検証者は抽出されたID付部分文書M2が署名者により署名が施された文書Mの一部分であることを検証することができる。ここで、抽出を行う場合、削除するID付部分文書の代わりにそのハッシュ値を公開しなければ、検証者が検証することができない。そのため、削除する部分文書の数に比例した情報(以下、これを抽出情報とする)を保持しなければならず、削除するID付部分文書の数が大きくなると、保持しなければならない抽出情報が大きくなってしまうという問題があった。
また、削除署名の代表として、下記の特許文献2に開示された署名方式(以下、この署名方式をSUMI−6とする)があげられる。この署名方式では、署名時に各部分文書に対する部分署名とそれを重畳した全体署名を持たなければならない。そのため、署名情報が部分文書数に比例して増大してしまうという問題がある。
これを図3を参照して説明する。図2と同様に、署名時に、署名者は文書情報Mを部分文書情m1〜m4に分割し、それぞれの部分文書情報に部分文書ID情報ID1〜ID4を付加してID付部分文書M1〜M4を生成する。そしてハッシュ値h1〜h4を計算し、後述するアグリゲート署名で部分署名σ1〜σ4を計算し、部分署名σ1〜σ4を重畳して全体署名σを作成する。最後に、ID付部分文書M1〜M4と部分署名σ1〜σ4、および全体署名σを抽出者に送付する。抽出時に、抽出者は抽出するID付部分文書を決定する。ここでは、ID付部分文書M2を抽出するものとする。抽出しないID付部分文書M1,M3,M4を削除し、それに対応する部分署名σ1,σ3,σ4を利用して全体署名σからσ1,σ3,σ4の情報を削除して全体署名をσ’に更新する。最後に、抽出したID付部分文書M2とその部分署名σ2、および更新した全体署名σ’を公開する。署名検証時には、検証者は公開されているID付部分文書情報M2と更新された全体署名σ’で検証を行う。署名σ’は署名者の全体署名σから抽出者が削除したID付部分文書M1,M3,M4の部分署名の情報が削除されているため、検証者は抽出されたID付部分文書M2が、署名者が署名を施した文書Mの一部分であることを検証することができる。
ここで、この方式では、署名を行う場合、部分署名情報を付加しなければ抽出を行うことができない。そのため、署名する部分文書の数に比例した署名情報を保持しなければならず、署名するID付部分文書の数が大きくなると、保持しなければならない署名情報が大きくなってしまうという問題があった。
すなわち、墨塗り署名ベースの抽出においては、署名時の署名は1個(データ量小)であるものの、抽出時には署名時の署名の他に削除する部分文書の数だけの抽出情報を持たなければならず(データ量大)、削除署名ベースの抽出においては、抽出時は抽出文書とその個別署名および更新した全体署名で済むが(データ量小)、署名時には署名(全体署名)の他に部分文書の数だけ情報(個別署名)を持たなければならない(データ量大)という問題を抱えている。
一方で、アグリゲート署名という電子署名の応用技術が存在する。アグリゲート署名は、電子文書流通等で1つもしくは複数の文書に対する署名を1人もしくは複数の署名者により付与しなければならない場合に、署名を重畳することで署名データ量を削減できる技術として注目されている。
アグリゲート署名の代表的な特徴を示す。複数の文書を複数人で署名する場合、図4に示されるように、通常の電子署名を用いると署名データは文書の数だけ必要となる。これに対して、アグリゲート署名を用いれば、図5に示されるように、各文書の署名を重畳(アグリゲーション)して1つの署名とすることが可能となり、署名データ量の削減が可能となる。
現在、アグリゲート署名の構成方法としては、文献A.Lysyanskaya, et.al., "Sequential Aggregate Signatures froM Trapdoor PerMutations," EUROCRYPT 2004, LNCS 3027, pp. 74-90, 2004に記載の、RSA署名をベースとしたシーケンシャルアグリゲート署名と、文献D.Bone, et.al., "Aggregate and Verifiably Encrypted Signature froM Bilinear Maps," EUROCRYPT 2003, LNCS 2656, pp.416-432, 2003に記載の、楕円曲線暗号技術の一つであるペアリングをベースとしたジェネラルアグリゲート署名の2つが知られている。上記削除署名で使用されているのはジェネラルアグリゲート署名である。
また、署名の一部だけが重畳できるSchnorr署名という署名方式が特許文献3に開示されている。Schnorr署名は以下のように定義されている。
素数pとその生成元g、および生成元の位数qが共通パラメータとして公開されている。また、署名者の秘密鍵と公開鍵のペアを(sk,pk)、pk=gsk mod p(0<sk<q)とし、pkは署名者の公開鍵として公開される。
署名対象文書Mに署名を行う場合、署名者は乱数kを発生させ(秘密とする)、署名σ=(r,s)=(gk mod p,sk×H(r||M)+k mod q)を計算する。ここで、H(x)は値xに対するハッシュ値、x||yは値xとyの連結(concatenation)を表す。署名検証時は、gs mod pとpkH(r||M)×r mod pが同じ値になれば署名有効、異なれば署名無効と判断する。
Schnorr署名の重畳を図6で説明する。Schnorr署名では署名値がσ=(r,s)の2値で表現される。ある文書Aに対するSchnorr署名をσA=(rA,sA)、文書Bに対するSchnorr署名をσB=(rB,sB)とする。この場合、文書Aと署名σA、文書Bと署名σBの検証が個別に可能なことに加えて、各署名のs側の値を重畳しても署名検証が可能である。つまり、文書A、文書B、署名σAB=(rA,rB,sAB)で文書AおよびBの署名検証を行うことができる。ここで、sAB=sA×sB mod pで計算する。また、重畳時の署名検証はgsAB mod p とpkH(rA||M)×rA×pkH(rB||M)×rB mod pが同じ値になれば署名有効、異なれば署名無効と判断する。このようにSchnorr署名では、署名のs側の値を重畳することが可能なため、アグリゲート署名より削減率は低いが、必要な署名データ量を削減することができる。
さらに、RSAアキュムレータという技術が文献J. Benaloh, and M. de Mare, "One-way accuMulatoRSA decentralized alternative to digital signatures," EUROCRYPT ‘93, LNCS 765, pp.274-285, Springer-Verlag, 1994に記載されている。RSAアキュムレータとは、RSA暗号をベースにしたハッシュ関数の一種で、重畳機能を持つ。RSA暗号で用いられるように二つの素数p,qの積であるNを使用する。そして、Nと互いに素な元g、および、元gの位数φ=LCM(p−1)(q−1)を使用する。RSAアキュムレータはRSA仮定という安全性の元に、擬似可換という性質を持つ。擬似可換とは、全てのx∈Xかつ全てのy1,y2∈Yにおいて、関数f:X×Y→Xが以下の性質を満たすならば、関数fは擬似可換の性質をもつという。
f(f(x,y1),y2)=f(x,y2),y1)
つまり、関数fを何度も繰り返し適用する場合に、yに対してその順序を変更可能(可換)であるという性質をもつ。上記の文献におけるRSAアキュムレータは、関数fを
N(x、y)=xH(y) mod N
で実現している。ここで、Hは一方向性のハッシュ関数(SHA1等)である。
RSAアキュムレータでは、
H(y1)×H(y2) mod N=(gH(y1) mod N)H(y2) mod N
=(gH(y2) mod N)H(y1) mod N
が成り立つ。つまり、ハッシュ値の順不同の重畳が可能となる。これに加えて、RSAアキュムレータは一方向性を持つため、(gH(y) mod N)とH(y),Nから、xを計算することは困難である(RSA仮定)。
特開2004−364070号公報 特開2006−60722号公報 特許第2666191号
このように、従来の署名方式では、電子文書の抽出部分の完全性を保証するために署名時または抽出時のデータ量が大きくなるという問題点があった。
本発明はこのような問題点を解消するためになされたもので、署名時および抽出時のデータ量を削減しながらも電子文書の抽出部分の完全性を保証することができる電子署名方法を提供することを目的とする。
また、本発明は、このような電子署名方法をコンピュータに実行させる電子署名プログラムおよび電子署名装置を提供することも目的としている。
本発明に係る電子署名方法は、コンピュータが実行する電子署名方法であって、前記コンピュータが、対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持し、前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持し前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t’)に更新する方法である。
本発明の一態様は、さらに、対象となる電子文書の文書IDとして用いる署名値rを用い、署名本体となる署名値sと削除用の署名の初期値である署名値tの3値の組からなる署名(r,s,t)を生成して署名データ保持部に保持し前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に前記署名データ保持部に保持されている署名(r、s、t)を署名(r,s,t’)に更新する方法である。
本発明の一態様は、コンピュータに電子署名処理を実行させる電子署名プログラムであって、前記コンピュータに、対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保存させ、前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持させ、前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算させ、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t’)に更新させるものである。
また、本発明の一態様は、対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持する分割手段と、前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持する署名生成手段と、前記分割手段によって前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t’)に更新する署名更新手段有するものである。
この発明によれば、署名時および抽出時のデータ量を削減しながらも電子文書の抽出部分の完全性を保証することができる電子署名方法、電子署名プログラムおよび電子署名方法を提供することができる。
本発明の署名方式について説明する。
[墨塗り署名へのRSAアキュムレータ導入]
まず、墨塗り署名の処理の一部にRSAアキュムレータを導入する。図2を使って説明する。図2の墨塗り署名では、ID付部分文書のハッシュ値に対して署名しているが、これは、各ID付部分文書M1〜M4のハッシュ値h1〜h4を互いに連結した値h1||h2||h3||h4(||は連結を表す)に対して署名を行っている。これをσ=Sign(H(h1||h2||h3||h4))と書くこととする。ハッシュ値を連結して署名すれば、h1〜h4の情報全てに対して完全性が担保できるが、H(h1||h2||h3||h4)部分に擬似可換性がないため、例えばH(h1||h2||h3)とh4からH(h1||h2||h3||h4)を生成することはできない。署名確認にはVerify(σ,H(h1||h2||h3||h4))とH(h1||h2||h3||h4)が必要なため、H(h1||h2||h3)とh4からでは署名確認はできないことになる。
そこで、この部分にRSAアキュムレータを導入する。H(h1||h2||h3||h4)の代わりにgh1×h2×h3×h4 mod Nとすると、署名はσ=Sign(gh1×h2×h3×h4 mod N)となる。そうすれば、RSAアキュムレータの擬似可換性から、
(gh1×h2×h3 mod N)h4 mod N=gh1×h2×h3×h4 mod N
となるため、(gh1×h2×h3 mod N)とh4から署名確認Verify(σ,gh1×h2×h3×h4 mod N)が可能となる。
[削除用署名の導入]
単純にハッシュ値の連結をRSAアキュムレータに変更するだけでは情報量の削減にはつながらない。情報量を削減するために削除用の署名を導入する。署名を区別するために、RSAアキュムレータへの署名をs=Sign(gh1×h2×h3×h4 mod N)とする。そして、削除用の署名をtとし、このsとtの二つで署名σ=(s,t)と呼ぶことにする。
図7に、本発明の署名方式の概念を示す。
署名者は、図2の墨塗り署名と同様にID付部分文書M1〜M4を作成し、個別の部分ハッシュ値h1〜h4を作成する。RSAアキュムレータを使用してこれらのハッシュ値h1〜h4を重畳し、s=Sign(gh1×h2×h3×h4 mod N)を計算する。そして、削除用の署名の初期値としてt=gをセットし、署名σ=(s,t)を出力する。
抽出者は、図1の墨塗り署名と同様に、削除する(抽出しない)ID付部分文書M1,M3,M4のハッシュ値h1,h3,h4を計算する。そして、削除用の署名tをt’=gh1×h3×h4 mod Nにアップデートし、ID付部分文書M2と共にσ’=(s,t’)を公開する。
検証者は、公開されたM2からハッシュ値h2を計算し、σ’=(s,t’)とh2から、
Verify(s,t’h2 mod N)=Verify(s,gh1×h2×h3×h4 mod N)
とすることで検証を行う。
このようにRSAアキュムレータを使用した削除用署名への重畳により、墨塗り署名で問題となっていた墨塗り時のハッシュ値保持を大幅に削減することができる。
ここで、SignとVerifyは任意の署名アルゴリズムを利用できる。例えば、RSA署名を用いる場合は、RSA署名のパラメータ(公開鍵や秘密鍵、証明書等)以外に、RSAアキュムレータのパラメータ(g,N)が必要となる。
そこで、署名アルゴリズムにSchnorr署名をベースとして、RSAアキュムレータまでを組み合わせた抽出署名方式を構成する。この方式を用いれば、別途RSAアキュムレータ用のパラメータを管理することなく、通常のRSA暗号のPKI証明書を利用することが可能になる。
[RSA仮定上でのSchnorr署名の定義]
Schnorr署名方式を改良し、署名情報と抽出情報共に重畳可能な署名方式を実現する。
まず、Schnorr署名をRSA仮定の基で定義する。Schnorr署名は、公開する共通パラメータとして素数pとその生成元g、および生成元の位数qを使用する。本改良では、素数pの代わりに、RSA暗号で用いられるように二つの素数p,qの積であるNを使用する。そして、Nと互いに素な元g、および、元gの位数φ=LCM(p−1)(q−1)を使用する。ここで、Schnorr署名と異なり、Nおよびgは共通パラメータではなく、署名者の公開鍵とする。またφは署名者の秘密鍵のひとつとする。
次にSchnorr署名と同様に、署名者の(sk,pk)を定義する。(sk,pk)を、pk=gsk mod N(0<sk<φ)と定義し、skを署名者の秘密鍵のひとつとするが、本発明方式においては、pkは必ずしも公開する必要はない(厳密に言えば、RSA仮定上でのSchnorr署名では公開する必要はあるが、抽出可能な署名方式である本発明では必ずしも公開の必要は無い)。公開する場合は、Nおよびgと共にpkは署名者の公開鍵とする。公開しない場合は、署名者の公開鍵はNおよびgの二つである。
署名および署名確認はSchnorr署名と同様である。
署名対象文書Mに署名を行う場合、署名者は乱数kを発生させ(秘密とする)、署名σ=(r,s)=(gk mod N,sk×H(r||M)+k mod φ)を計算する。ここで、H(x)は値xに対するハッシュ値、x||yは値xとyの連結を表す。署名検証時は、gs mod NとpkH(r||M)×r mod φが同じ値になれば署名有効、異なれば署名無効と判断する。
[RSA仮定上のSchnorr署名を拡張した本発明の方式概要]
上記で定義したRSA仮定上のSchnorr署名を拡張して、本発明の署名方式を定義する。
RSA仮定上のSchnorr署名からの拡張部分は、以下の通りである。
(1)署名は(r,s)の2個から(r,s,t)の3個に変更する。
(2)署名対象文書Mが1個からそれをn個に分割したn個の部分文書が対象となる。
(3)署名値rは文書IDとして使用する。
(4)部分文書の署名情報は、署名本体となる署名値sに重畳する。
(5)削除情報(抽出情報)は、削除用の署名値tに重畳する。
図8に、本発明の署名方式の概要を示す。この署名方式を、署名生成時、抽出時、署名確認時に分けて具体的に説明する。
[署名生成時]
以下に図9のフローチャートを参照して署名生成アルゴリズムを示す。
(1)署名者は、ステップS1で、文書Mをn個の部分文書{mi(0≦i≦n−1)}に分割し、ステップS2で、これらの部分文書に部分文書ID{IDi(0≦i≦n−1)}を結合してID付部分文書Mi=IDi||mi(0≦i≦n−1)を生成する。
(2)ステップS3で、一時的な秘密鍵kをφ未満の乱数で生成する(0<k<φ)。
(3)ステップS4で、文書IDとして署名値r=gk mod Nを計算する。
(4)署名者は、ステップS5で、署名値rとハッシュ関数により各ID付部分文書Miのハッシュ値hi=H(r||Mi)を計算する。
(5)ステップS6で、署名本体である署名値s=sk×Π0in-1i+k mod φを計算する。ここで部分文書の署名情報は署名本体となる署名値sにΠ0in-1iの形で重畳されていることとなる。
(6)ステップS7で、削除情報の格納用に署名値tを用意し、その初期値をt=pkとする。
(7)ステップS8で、ID付部分文書集合Mi(0≦i≦n−1)}と署名σ=(r,s,t)を出力する。
上述した署名値sの生成過程を模式的に図示すると、図10のようになり、署名値rおよびtの生成過程を模式的に図示すると、図11のようになる。
[抽出時]
次に、図12のフローチャートを参照して部分文書の抽出アルゴリズムを示す。
(1)抽出者は、まずステップS11で、抽出文書番号集合ξを決定する。ここで、抽出される部分文書M’はM’={Mi(i⊂ξ)}、削除される部分文書M’’はM’’={Mi(i?ξ)}と表現できる。
(2)抽出者は、ステップS12で、署名値rを計算し、続くステップS13で、各削除される部分文書{Mi(i?ξ)}のハッシュ値{hi=H(r||Mi)(i?ξ)}を計算する。
(3)ステップS14で、削除される部分文書の情報を署名値tに重畳し、署名値tを次式で表される署名値t’に更新する。
Figure 0004477678
(4)そして、ステップS15で、抽出されたID付部分文書集合{Mi(i⊂ξ)}と更新した署名σ’=(r,s,t’)を出力する。
上述した署名値tの更新過程を模式的に図示すると、図13のようになる。
[署名検証時]
図14のフローチャートを参照して部分文書の署名検証アルゴリズムを示す。
(1)確認者は、ステップS21で、抽出されたID付部分文書{Mi(i⊂ξ)}と更新した署名σ’=(r,s,t’)を受け取る。
(2)確認者は、ステップS22で、署名値rを計算し、続くステップS23で、抽出されたID付部分文書{M(i⊂ξ)}のハッシュ値{hi=H(r||Mi)(i⊂ξ)}を計算する。
(3)ステップS24で、署名値t’と署名者の公開鍵Nとハッシュ値hiから、次式で表される右辺の値を計算する。
Figure 0004477678
(4)ステップS25で、署名値sと署名者の公開鍵gおよびNを使用して、左辺=gs mod Nの値を計算する。
(5)ステップS26で、右辺値と左辺値を比較し、両者が互いに等しい場合は、ステップS27で、署名有効を出力し、一方、互いに異なる場合は、ステップS28で、署名無効を出力する。
上述した右辺と左辺の計算過程を模式的に図示すると、図15のようになり、右辺と左辺の比較過程を模式的に図示すると、図16のようになる。
実施の形態1
本発明の署名方式を実現するための署名装置の構成を図17に示す。この装置は、データ保持部と演算部からなる。データ保持部は、部分文書保持部11、ハッシュ値保持部12、パラメータ保持部13、署名データ保持部14、署名検証データ保持部15で構成される。パラメータ保持部13は秘密情報保持部と公開情報保持部からなり、秘密情報保持部はsk,φ,kの3つのパラメータを保持する。公開情報保持部はN,g,pkの3つのパラメータを保持する。署名データ保持部14は3つの署名値r,s,tを保持する。署名検証データ保持部15は左辺と右辺の2つの値を保持する。
演算部は、乱数生成部21、ハッシュ計算部22、冪乗剰余計算部23、部分ID付与部24、比較部25、出力部26、入力部27からなる。冪乗剰余計算部23は内部に乗算剰余計算部を保持し、乗算剰余演算のみの実行も可能である。
そして、部分文書保持部11、ハッシュ値保持部12、パラメータ保持部13、署名データ保持部14、乱数生成部21、ハッシュ計算部22、冪乗剰余計算部23、部分ID付与部24によりこの発明の署名生成部が形成されている。また、部分文書保持部11、ハッシュ値保持部12、パラメータ保持部13、署名データ保持部14、ハッシュ計算部22、冪乗剰余計算部23によりこの発明の署名更新部が形成されている。さらに、部分文書保持部11、ハッシュ値保持部12、パラメータ保持部13、署名データ保持部14、署名検証データ保持部15、ハッシュ計算部22、冪乗剰余計算部23、比較部25によりこの発明の署名検証部が形成されている。
まず、署名発行処理について説明する。署名者は署名者の秘密情報sk,φおよび公開情報N,g,pkを入力部27から入力してパラメータ保持部13に保存する。また、署名対象データである部分文書m1〜mn(図10ではm4)を入力部27から入力して部分文書保持部11に保存する。次に、乱数生成部21にパラメータφを入力して0より大きくかつφ未満の乱数kを生成し、その値をパラメータ保持部13に保存する。そして、パラメータg,k,Nを冪乗剰余計算部23に入力し、冪乗剰余計算r=gk mod Nを計算し、その結果を署名データ保持部14のrに保存する(図11)。次に、パラメータpkを署名データ保持部14のtにコピーする(図11)。さらに、部分文書保持部11の各部分文書miを部分ID付与部24に入力し、部分文書miにIDを付与してID付部分文書Miとし、部分文書保持部11に保存する(miに上書きする)。この操作を全ての部分文書に対して実施する。
次に、ID付部分文書Miおよび署名rをハッシュ計算部22に入力し、ID付部分文書Miと署名rを結合したものに対するハッシュ値hiを計算し、ハッシュ値保持部12に保存する。この動作を全てのID付部分文書Miに対して実施する。次に、パラメータsk,k,φを冪乗剰余計算部23に入力し、各ハッシュ値hiを順次入力して行き、署名s=sk×Πhi+k mod φを計算する。ここで、この処理は、最初にskとh0の乗算剰余を行い、その結果とh1を乗算剰余し、・・・という順で計算を行う構成が考えられる。そして、署名sを署名データ保持部14の「s」に保存する(図10)。最後に、出力部26より署名値(r,s,t)とID付部分文書M1〜Mnを出力する。
次に、抽出処理について説明する。抽出者は、署名者の公開パラメータNおよびgを入力部27から入力してパラメータ保持部13に保持する。また、署名者の署名のうちr,tを入力して署名データ保持部14に保存すると共に、削除するID付部分文書を入力部27から入力して部分文書保持部11に保存する。その後、ID付部分文書Miと署名値rをハッシュ計算部22に入力し、ID付部分文書Miと署名rを結合したものに対するハッシュ値hiを計算し、ハッシュ値保持部12に保存する。この操作を削除する部分文書全てに対して実施する。
次に、署名tおよびパラメータNを冪乗剰余計算部23に入力し、順にハッシュ値hiを入力していくことで、更新した署名t’=tΠhi mod Nを計算する。ここで、この処理は、最初にtのhx1乗を計算し、その結果のhx2乗を計算し、・・・という順で計算を行う構成が考えられる。ここでx1,x2,・・・は削除するID付部分文書に対するハッシュ値を示すものとする。そして、更新したt’を署名データ保持部14のtに保存し、出力部26からt’を出力する。なお、入力で署名(r,s,t)全てを入力し、出力で更新したt’を含む全ての署名(r,s,t’)を出力しても良い。
署名検証処理について説明する。検証者は、署名者の公開パラメータNおよびgを入力部27から入力してパラメータ保持部13に保持する。また、抽出者により更新された署名r,s,t’を入力部27から入力して署名データ保持部14に保存すると共に、抽出者が公開した抽出されたID付部分文書を入力部27から入力して部分文書保持部11に保存する。その後、ID付部分文書Miと署名値rをハッシュ計算部22に入力し、ID付部分文書miと署名rを結合したものに対するハッシュ値hiを計算してハッシュ値保持部12に保存する。
そして、署名r,t’,パラメータNを冪乗剰余計算部23に入力し、順にハッシュ値hiを入力していくことで、更新した署名の「右辺」=t’Πhi r mod Nを計算する。このとき、最初にtのhy1乗を計算し、その結果のhy2乗を計算し、・・・という順で計算を行い、最後にrと乗算剰余を行う構成が考えられる。ここでy1,y2,・・・は抽出されたID付部分文書に対するハッシュ値を示すものとする。計算した「右辺」は署名検証データ保持部15の「右辺」に保存する(図15)。
次に、署名sとパラメータgおよびNを冪乗剰余計算部23に入力し、「左辺」=g’ mod Nを計算し、結果を署名検証データ保持部15の「左辺」に保存する(図15)。最後に、「右辺」と「左辺」を比較部25に入力して、これらの値の比較を行い、互いに等しい場合は、署名有効を、異なる場合は、署名無効を出力部26から出力する(図16)。
実施の形態2
本発明の署名方式と従来の署名方式を、動画の切り出しに適用して比較する。従来方式として、上記の特許文献1に開示されたSUMI−4と、その抽出情報の削減法である特願2007−12048号明細書に記載された方式(以下、動画PIATとする)を使用する。なお、動画への署名方法については、動画PIATで述べられている方式を使用する。
図18に示すように、動画に対してSUMI−4で署名を行う場合、署名時は署名1個を保持するだけである。抽出時は、抽出情報として、削除した動画フレームの数だけハッシュ値を保持する必要がある。動画PIATでは、この抽出情報であるハッシュ値を二分木で管理することにより、保持しなければならないハッシュ値の数を削減している。
一方、本発明の署名方式では、図19に示すように、署名時は、署名(r,s,t)を保持するだけであり、抽出時も、署名(r,s,t’)を保持するだけでよく、抽出情報は不要である。
例えば、秒間30フレームでTV1時間を録画し、そのうち30分を抽出、フレームごとに抽出できるよう署名を行う場合を考える。全フレームは108000であり、抽出するのは54000フレームである。この場合、各方式で保持するデータ量を以下の表1に示す。
Figure 0004477678
このように、本発明の署名方式では、抽出時のデータ量を大幅に削減することができる。また、抽出箇所は抽出個数によって、データ量が変化しないため、署名情報(抽出情報を含む)の管理が他の方式と比較して極めて容易である。
実施の形態3
本発明の署名方式における署名生成アルゴリズムを拡張することで、容易に削除署名を実現することができる。図20を参照して、削除署名を構成する場合の署名生成アルゴリズムを以下に示す。
(1)署名者は文書Mをn個の部分文書mi(0≦i≦n−1)に分割する。そして、それに部分文書ID{IDi(0≦i≦n−1)}を結合して、ID付部分文書Mi=IDi||mi(0≦i≦n−1)を生成する。
(2)一時的な秘密鍵kをφ未満の乱数で生成する(0<k<φ)。
(3)マスク値zを乱数で生成する(0<z<φ)。
(4)文書IDとして署名値r=gk mod Nを計算する。
(5)署名者は、署名値rとハッシュ関数により各ID付部分文書Miのハッシュ値hii=H(r||Mi)を計算する。
(6)署名本体である署名値s=z×sk×Π0in-1i+k mod φを計算する。ここで部分文書の署名情報は署名値sにΠ0in-1iの形で重畳されていることとなる。
(7)削除情報の格納用に署名値tを用意し、その初期値をt=pkzとする。
(8)ID付部分文書集合{Mi(0≦i≦n−1)}と署名σ=(r,s,t)を出力する。
ここで部分文書IDiは、シーケンシャルではなく、昇順または降順の乱数とする。
署名生成アルゴリズムを上記のように設定すると、抽出を行った場合に、更新されたtから元の文書や部分文書IDの情報を求めることはできないので、削除署名を構成できたことになる。
実施の形態4
本発明の署名方式は、墨塗り署名との互換性を持つ。本発明の署名方式で、抽出時に削除するID付部分文書の情報を署名tに重畳する代わりに、削除するID付部分文書のハッシュ値を公開することにより、墨塗り署名と抽出署名の共存が可能となる。また、実施例3に示したように、本発明の署名方式により削除署名を構成した場合は、削除署名と墨塗り署名の両立も可能である。
実施の形態5
本発明の署名方式は、RSA仮定上のSchnorr署名の拡張であり、署名者の秘密情報としてsk,φ、公開情報としてN,g,(pk)を持たなければならない。現状のPKIではRSAかDSAをサポートしているものがほとんどであり、今すぐに本発明の署名方式を現状のPKIで使用することは困難である。しかし、現状のPKIの情報を本方式のパラメータに変換することにより、現状のPKIを利用して本発明の署名方式を使用することが可能となる。
現状のPKIにおけるRSA暗号の公開情報は法Nと公開鍵eである。また、秘密情報は、秘密鍵d、法Nを構成する素数p,q(N=p×q)、高速演算のためのパラメータdp=d mod (p−1)、dq=d mod (q−1)、qi=q-1 mod pである。ここで任意のデータDに対して、Ded≡D mod Nが成り立つ。
RSA暗号のパラメータを本発明の署名方式で利用できるように変換する。本発明の署名方式はRSA仮定上の署名方式であるので、RSAのNはそのまま利用可能である。また秘密情報φはgの位数であるが、φ=LCM(p−1)(q−1)で定義される値のため、現状のRSAのパラメータp,qから計算可能である。そのため、skとgおよびpkが、RSAのパラメータから変換できれば良い。
本発明の署名方式におけるskは、0<sk<φの任意の値である。またgは生成元であるので、Nと互いに素な数(つまりp,q以外)であれば任意に選択できる。pkはpk=gsk mod Nの関係を満たせばよい。一方、RSAパラメータeとdはe×d≡1 mod φ(つまり任意のデータDに対してDed≡D mod N)の関係がある。RSAと本発明の署名方式の秘密鍵と公開鍵を同じ値とする(つまりsk=d,pk=e)と、pk=gsk mod Nからe=gd mod N、つまりg=ee mod Nが導出される。
以上のことから、sk=d、pk=e、N=N、φ=LCM(p−1)(q−1)、g=ee mod Nを用いることで、現状のPKIのRSAパラメータを利用して、本発明の署名方式を使用することが可能となる。
本発明の署名方式によれば、署名時も抽出時も小さなデータ量で抽出部分の完全性が保証される抽出署名を実現することができる。部分文書数や抽出文書数によらず署名量は3個と一定でよい。そのため、署名時に文書を最小単位(例えばバイト単位)に分割して署名を行っておけば、任意のサイズで文書の抽出が可能になる。
例えば、部分文書100個から50個の部分文書を抽出する場合、従来の墨塗り署名で実現する場合には、署名時のデータ量は101個、抽出時のデータは101個であり、従来の削除署名で実現する場合には、署名時のデータは201個、抽出時のデータは101個である。これに対して本発明の署名方式では、署名時のデータが103個、抽出時のデータが53個と、従来の方式に比べて1/2程度に削減できる。これは、部分文書数が増大したり、抽出部分文書数が減少したりすると、一層効果が顕著になる。
なお、上記の実施の形態で図示したフローチャートやステップに示された各動作をコンピュータにより実行させるプログラムを提供することにより、本発明の署名プログラムを提供することができる。これらプログラムはコンピュータにより読取可能な媒体に記録されてコンピュータにより実行させることができる。コンピュータは、パーソナルコンピュータのようなホスト装置、試験装置のコントローラ、記憶装置のMPUやCPUのようなコントローラなどを含む。ここで、コンピュータにより読取可能な媒体としては、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
以上、本発明の実施の形態によれば、以下の付記で示す技術的思想が開示されている。
(付記1) コンピュータが実行する電子署名方法であって、
前記コンピュータが、
対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持し、
前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持し
前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新する
ことを特徴とする電子署名方法。
(付記2) 付記1に記載の電子署名方法において、
前記抽出された部分文書の署名情報と更新された署名(s,t’)とに基づいて署名の検証を行う電子署名方法。
(付記3) 付記1に記載の電子署名方法において、
さらに、対象となる電子文書の文書IDとして用いる署名値rを用い、署名本体となる署名値sと削除用の署名の初期値である署名値tの3値の組からなる署名(r,s,t)を生成して署名データ保持部に保持し
前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に前記署名データ保持部に保持されている署名(r、s、t)を署名(r,s,t)に更新する
ことを特徴とする電子署名方法。
(付記4) 付記3に記載の電子署名方法において、
抽出された部分文書の署名情報と更新された署名(r,s,t2)とに基づいて署名の検証を行う電子署名方法。
(付記5) 付記3または付記4に記載の電子署名方法において、
文書IDとして用いる署名値rは、署名者の公開鍵と秘密鍵から算出される電子署名方法。
(付記6) 付記3に記載の電子署名方法において、
秘密鍵は、署名者により発生された乱数kからなる電子署名方法。
(付記7) 付記6に記載の電子署名方法において、
二つの素数p,qの積であるNと、Nと互いに素な元gを署名者の公開鍵とし、元gの位数φ=LCM(p−1)(q−1)未満の乱数kを秘密鍵として、署名値r=gk mod Nが算出される電子署名方法。
(付記8) 付記7に記載の電子署名方法において、
署名値t’と公開鍵Nと抽出されたID付部分文書のハッシュ値hiから算出される右辺=t’Πhi r mod Nの値と、署名値sと公開鍵gおよびNから算出される左辺=gs mod Nの値を比較することにより署名の検証を行う電子署名方法。
(付記9) 付記8に記載の電子署名方法において、
右辺の値と左辺の値が互いに等しいときに署名有効、異なるときに署名無効を出力する電子署名方法。
(付記10) 付記1乃至付記9のいずれかに記載の電子署名方法において、
乱数で生成されたマスク値zを用いて署名本体となる署名値sを算出することにより削除署名を実現する電子署名方法。
(付記11) 付記1乃至付記9のいずれかに記載の電子署名方法において、
部分文書の抽出時に削除する部分文書の削除情報を削除用の署名値tに重畳する代わりに、削除する部分文書のハッシュ値を公開することにより墨塗り署名を実現する電子署名方法。
(付記12) コンピュータに電子署名処理を実行させる電子署名プログラムであって、
前記コンピュータに、
対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保存させ、
前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持させ、
前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算させ、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新させる
ことを特徴とする電子署名プログラム。
(付記13) 対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持する分割手段と、
前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持する署名生成手段と、
前記分割手段によって前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新する署名更新手段と、
を有することを特徴とする電子署名装置。
抽出署名の概念を模式的に示す図である。 従来の墨塗り署名方式の問題点を示す図である。 従来の削除署名方式の問題点を示す図である。 通常の電子署名の概念を模式的に示す図である。 アグリゲート署名の概念を模式的に示す図である。 Schnorr署名の概念を模式的に示す図である。 本発明の署名方式の概念を示す図である。 本発明の署名方式の概要を示す図である。 本発明における署名生成アルゴリズムを示すフローチャートである。 署名値sの生成過程を模式的に示す図である。 署名値rおよびtの生成過程を模式的に示す図である。 本発明における抽出アルゴリズムを示すフローチャートである。 署名値tの更新過程を模式的に示す図である。 本発明における署名確認アルゴリズムを示すフローチャートである。 右辺と左辺の計算過程を模式的に示す図である。 右辺と左辺の比較過程を模式的に示す図である。 本発明の署名方式を実現するための署名装置の構成を示すブロック図である。 従来の署名方式を動画の切り出しに適用した様子を示す図である。 本発明の署名方式を動画の切り出しに適用した様子を示す図である。 削除署名を構成する場合の本発明の署名方式の概要を示す図である。
符号の説明
11 部分文書保持部、12 ハッシュ値保持部、13 パラメータ保持部、14 署名データ保持部、15 署名検証データ保持部、21 乱数生成部、22 ハッシュ計算部、23 冪乗剰余計算部、24 部分ID付与部、25 比較部、26 出力部、27 入力部。

Claims (7)

  1. コンピュータが実行する電子署名方法であって、
    前記コンピュータが、
    対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持し、
    前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持し
    前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
    抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新する
    ことを特徴とする電子署名方法。
  2. 請求項1に記載の電子署名方法において、
    前記抽出された部分文書の署名情報と更新された署名(s,t’)とに基づいて署名の検証を行う電子署名方法。
  3. 請求項1に記載の電子署名方法において、
    さらに、対象となる電子文書の文書IDとして用いる署名値rを用い、署名本体となる署名値sと削除用の署名の初期値である署名値tの3値の組からなる署名(r,s,t)を生成して署名データ保持部に保持し
    前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に前記署名データ保持部に保持されている署名(r、s、t)を署名(r,s,t)に更新する
    ことを特徴とする電子署名方法。
  4. 請求項3に記載の電子署名方法において、
    抽出された部分文書の署名情報と更新された署名(r,s,t2)とに基づいて署名の検証を行う電子署名方法。
  5. 請求項1乃至請求項のいずれかに記載の電子署名方法において、
    各部分文書に対する署名情報は、部分文書に部分文書IDを結合したID付部分文書のハッシュ値である電子署名方法。
  6. コンピュータに電子署名処理を実行させる電子署名プログラムであって、
    前記コンピュータに、
    対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保存させ、
    前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持させ、
    前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
    抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算させ、該計算させた各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算させ、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新させる
    ことを特徴とする電子署名プログラム。
  7. 対象となる電子文書を複数に分割した文書である部分文書の入力を入力部より受け付け、部分文書保持部に保持する分割手段と、
    前記入力された部分文書ごとに各部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を重畳した計算結果である前記対象となる電子文書の署名本体の署名値sと、部分文書を削除する場合の署名として用いる削除用の署名の初期値である署名値tとの2値の組からなる署名(s,t)を生成して署名データ保持部に保持する署名生成手段と、
    前記分割手段によって前記分割した複数の部分文書のうちいずれかの部分文書を前記部分文書保持部から抽出する場合に、
    抽出する部分文書以外の削除する部分文書の署名情報をそれぞれ計算し、該計算した各部分文書の署名情報を削除用の署名値tに重畳して新たな署名値t’を計算し、該署名値t’により、前記署名データ保持部に保持されている署名(s、t)を署名(s,t)に更新する署名更新手段と、
    を有することを特徴とする電子署名装置。
JP2008010418A 2008-01-21 2008-01-21 電子署名方式、電子署名プログラムおよび電子署名装置 Expired - Fee Related JP4477678B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008010418A JP4477678B2 (ja) 2008-01-21 2008-01-21 電子署名方式、電子署名プログラムおよび電子署名装置
US12/356,845 US8433910B2 (en) 2008-01-21 2009-01-21 Electronic signature method, apparatus, and recording medium having electronic signature program recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008010418A JP4477678B2 (ja) 2008-01-21 2008-01-21 電子署名方式、電子署名プログラムおよび電子署名装置

Publications (2)

Publication Number Publication Date
JP2009171521A JP2009171521A (ja) 2009-07-30
JP4477678B2 true JP4477678B2 (ja) 2010-06-09

Family

ID=40900426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008010418A Expired - Fee Related JP4477678B2 (ja) 2008-01-21 2008-01-21 電子署名方式、電子署名プログラムおよび電子署名装置

Country Status (2)

Country Link
US (1) US8433910B2 (ja)
JP (1) JP4477678B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5183401B2 (ja) * 2008-09-29 2013-04-17 Kddi株式会社 アグリゲート署名生成システム、アグリゲート署名生成方法、およびアグリゲート署名生成プログラム
JP5239849B2 (ja) * 2008-12-26 2013-07-17 富士通株式会社 電子署名方法、電子署名プログラムおよび電子署名装置
EP2403245B1 (en) * 2009-02-26 2019-01-16 Fujitsu Limited Image managing method, image managing program, and image managing system
JP5381543B2 (ja) * 2009-09-18 2014-01-08 富士通株式会社 データ処理装置、署名処理プログラム、検証プログラム、及び署名プログラム
JP2011097486A (ja) * 2009-11-02 2011-05-12 Hitachi Kokusai Electric Inc 映像署名システム
JP5559865B2 (ja) * 2010-02-23 2014-07-23 富士通株式会社 電子署名装置および電子署名方法
KR101162707B1 (ko) 2010-12-22 2012-07-05 포항공과대학교 산학협력단 일반 전자서명 알고리즘만으로 구현이 가능한 트랩도어 기반 편집 가능 전자서명 방법
US8856960B2 (en) * 2012-02-09 2014-10-07 Alcatel Lucent Data leakage prevention for cloud and enterprise networks
US8681950B2 (en) * 2012-03-28 2014-03-25 Interactive Intelligence, Inc. System and method for fingerprinting datasets
GB2512373A (en) * 2013-03-28 2014-10-01 Thunderhead Ltd Document tamper detection
EP2905922A1 (en) * 2014-02-10 2015-08-12 Thomson Licensing Signing method delivering a partial signature associated to a message, threshold signing method, signature verification method, and corresponding computer program and electronic devices
KR101659286B1 (ko) * 2015-06-18 2016-09-23 임진혁 보안성이 강화된 전자서명 표시방법 및 전자서명 표시장치
US9967088B2 (en) 2016-05-23 2018-05-08 Accenture Global Solutions Limited Rewritable blockchain
KR101934221B1 (ko) * 2016-10-27 2018-12-31 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 교체가능 물품 인증
US10296248B2 (en) 2017-09-01 2019-05-21 Accenture Global Solutions Limited Turn-control rewritable blockchain
US11461245B2 (en) 2017-11-16 2022-10-04 Accenture Global Solutions Limited Blockchain operation stack for rewritable blockchain
US11025430B2 (en) * 2018-12-20 2021-06-01 International Business Machines Corporation File provenance database system
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
US11201746B2 (en) 2019-08-01 2021-12-14 Accenture Global Solutions Limited Blockchain access control system
US11411721B2 (en) * 2019-09-27 2022-08-09 Cypherium Blockchain Inc. Systems and methods for selecting and utilizing a committee of validator nodes in a distributed system
EP3832513A1 (en) 2019-12-06 2021-06-09 Vocalink Limited An apparatus, computer program and method
EP3832514A1 (en) * 2019-12-06 2021-06-09 Vocalink Limited An apparatus, computer program and method
JP7323807B2 (ja) * 2020-01-20 2023-08-09 富士通株式会社 検証方法、プログラム、および情報処理装置
CN116015673A (zh) * 2022-12-15 2023-04-25 福州大学 基于受限可净化签名的电子病历安全共享方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0383985A1 (de) 1989-02-24 1990-08-29 Claus Peter Prof. Dr. Schnorr Verfahren zur Identifikation von Teilnehmern sowie zur Generierung und Verifikation von elektronischen Unterschriften in einem Datenaustauschsystem
JP2004364070A (ja) 2003-06-06 2004-12-24 Hitachi Ltd マスキング可能な署名技術を用いた電子文書管理システム
JP2006060722A (ja) 2004-08-24 2006-03-02 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
JP4622811B2 (ja) * 2005-11-04 2011-02-02 株式会社日立製作所 電子文書の真正性保証システム
JP4270276B2 (ja) * 2006-12-27 2009-05-27 株式会社日立製作所 電子データの真正性保証方法およびプログラム

Also Published As

Publication number Publication date
US20090193256A1 (en) 2009-07-30
JP2009171521A (ja) 2009-07-30
US8433910B2 (en) 2013-04-30

Similar Documents

Publication Publication Date Title
JP4477678B2 (ja) 電子署名方式、電子署名プログラムおよび電子署名装置
CN110971405B (zh) 多方协同的sm2签名、解密方法及其系统
CN104539423B (zh) 一种无双线性对运算的无证书公钥密码体制的实现方法
JP5293745B2 (ja) データ参照システム、データベース提示分散システム、及びデータ参照方法
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
US7000110B1 (en) One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device
JP4776906B2 (ja) 署名生成方法及び情報処理装置
JP2006194990A (ja) 暗号装置、復号装置、鍵生成装置、プログラム及び方法
JP2007139895A (ja) 暗号装置、復号装置、プログラム及び方法
US20150043735A1 (en) Re-encrypted data verification program, re-encryption apparatus and re-encryption system
JPWO2009125537A1 (ja) 署名及び検証方法、署名生成装置並びに署名検証装置
JP2013539295A (ja) メッセージ復元を伴うデジタル署名の認証された暗号化
US20230224147A1 (en) Generating shared private keys
CN106936584B (zh) 一种无证书公钥密码系统的构造方法
KR20030062401A (ko) 겹선형쌍을 이용한 개인식별정보 기반의 은닉서명 장치 및방법
TW202318833A (zh) 臨界簽章方案
WO2008026345A1 (fr) Système de signature électronique et procédé de vérification de signature électronique
US20050240762A1 (en) Cryptographic method and apparatus
WO2023016729A1 (en) Generating digital signature shares
JP5227816B2 (ja) 匿名署名生成装置、匿名署名検証装置、匿名署名追跡判定装置、追跡機能付き匿名署名システム、それらの方法及びプログラム
JP4848957B2 (ja) 署名および検証方法ならびに署名および検証装置
JP2006227563A (ja) 秘密計算方法及びシステム、並びにプログラム
JP4533636B2 (ja) デジタル署名システム、デジタル署名管理装置、デジタル署名管理方法及びプログラム
CN113708925B (zh) 一种普通密码算法密钥的群组使用方法及系统
CN113259094B (zh) 一种通用的层级签名加密系统与构建方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100215

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140319

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees