JP4993674B2 - 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体 - Google Patents

情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体 Download PDF

Info

Publication number
JP4993674B2
JP4993674B2 JP2006232812A JP2006232812A JP4993674B2 JP 4993674 B2 JP4993674 B2 JP 4993674B2 JP 2006232812 A JP2006232812 A JP 2006232812A JP 2006232812 A JP2006232812 A JP 2006232812A JP 4993674 B2 JP4993674 B2 JP 4993674B2
Authority
JP
Japan
Prior art keywords
electronic document
signed
signature
data
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006232812A
Other languages
English (en)
Other versions
JP2007104643A5 (ja
JP2007104643A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2006232812A priority Critical patent/JP4993674B2/ja
Priority to EP06120194.3A priority patent/EP1763196B1/en
Priority to US11/470,389 priority patent/US20070058803A1/en
Priority to CN2006101291211A priority patent/CN1936780B/zh
Priority to KR1020060086589A priority patent/KR100820272B1/ko
Priority to RU2006132409/09A priority patent/RU2336551C2/ru
Publication of JP2007104643A publication Critical patent/JP2007104643A/ja
Publication of JP2007104643A5 publication Critical patent/JP2007104643A5/ja
Application granted granted Critical
Publication of JP4993674B2 publication Critical patent/JP4993674B2/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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Description

本発明は、情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体に関する。
近年、コンピュータとそのネットワークの急速な発達及び普及により、文字データ、画像データ、音声データなど、多種の情報がデジタル化されている。デジタルデータは、経年変化などによる劣化がなく、いつまでも完全な状態で保存できる一方、容易に複製や編集・加工を施すことが可能である。
こうしたデジタルデータの複製、編集、加工はユーザにとって大変有益である反面、デジタルデータの保護が大きな問題となっている。特に、文書や画像データがインターネットなどの広域ネットワーク網を通して流通する場合、デジタルデータは改変が容易であるため、第三者によってデータが改竄される危険性がある。
そこで、送信されてきたデータが改竄されたかどうかを受信者が検出するために、改竄防止用の付加データを検証する方式としてデジタル署名という技術が提案されている。デジタル署名技術は、データ改竄だけではなく、インターネット上でのなりすまし、否認などを防止する効果も持ち合わせている。
以降では、デジタル署名、ハッシュ関数、公開鍵暗号、及び公開鍵認証基盤について詳細に説明する。
[デジタル署名]
図14は、署名作成処理および署名検証処理を説明するための模式図であり、同図を参照して説明を行う。デジタル署名データ生成にはハッシュ関数と公開鍵暗号とが用いられる。
ここで、秘密鍵をKs(2106)、公開鍵をKp(2111)とすれば、送信者はデータM(2101)にハッシュ処理2102を施して固定長データであるダイジェスト値H(M)(2103)を算出することができる。次に、秘密鍵Ks(2106)を用いて固定長データH(M)に署名処理2104を施せば、デジタル署名データS(2105)を作成することができる。そして、受信者には、このデジタル署名データS(2105)とデータM(2101)とが送信される。
一方、受信者は、受信したデジタル署名データS(2110)を公開鍵Kp(2111)を用いて変換(復号)する。また、受信したデータM(2107)にハッシュ処理2108を施して、固定長のダイジェスト値:H(M)2109を生成する。検証処理2112では、復号により得られたデータと、ダイジェスト値H(M)とが一致するか否かを検証する。そして、この検証により両データが一致しないならば、改竄が行われたことを検出できる。
デジタル署名にはRSA、DSA(詳細は後述)などの公開鍵暗号方式が用いられている。これらのデジタル署名の安全性は、秘密鍵の所有者以外のエンティティが、署名を偽造、もしくは秘密鍵を解読することが計算的に困難であることに基づいている。
[ハッシュ関数]
次に、ハッシュ関数について説明する。ハッシュ関数は署名対象データを非可逆に圧縮して署名付与処理時間を短縮するためにデジタル署名処理とともに利用される。つまり、ハッシュ関数は任意の長さのデータMに処理を行い、一定の長さの出力データH(M)を生成する機能を持っている。ここで、出力H(M)を平文データMのハッシュデータと呼ぶ。
特に、一方向性ハッシュ関数は、データMを与えた時、H(M')=H(M)となる平文データM'の算出が計算量的に困難であるという性質を持っている。上記一方向性ハッシュ関数としてはMD2、MD5、SHA−1などの標準的なアルゴリズムが存在する。
[公開鍵暗号]
次に、公開鍵暗号について説明する。公開鍵暗号は2つの異なる鍵を利用し、片方の鍵で暗号処理したデータは、もう片方の鍵でしか復号処理できないという性質を持っている。上記2つの鍵のうち、一方の鍵は公開鍵と呼ばれ、広く公開するようにしている。また、もう片方の鍵は秘密鍵と呼ばれ、本人のみが持つ鍵である。
公開鍵暗号方式を用いたデジタル署名としては、RSA署名、DSA署名、Schnorr署名などが挙げられる。ここでは例として、非特許文献1に記載されているRSA署名を説明する。また、非特許文献2に記載されているDSA署名についても併せて説明する。
[RSA署名]
素数p、qを生成しn=pqとおく。λ(n)をp−1とq−1の最小公倍数とする。λ(n)と素な適当なeを選び、d=1/e (mod λ(n))とおく。公開鍵をeおよびnとし、秘密鍵をdとする。またH()をハッシュ関数とする。
[RSA署名作成]文書Mに対する署名の作成手順
s:=H(M)^d(mod n)を署名データとする。
[RSA署名検証] 文書Mに対する署名 (s,T) の検証手順
H(M)=s^e(mod n)かどうか検証する。
[DSA署名]
p, q を素数とし、 p-1は qを割り切るとする。gをZ_p*(位数pの巡回群Z_p から0を省いた乗法群)から任意に選択した、位数qの元(生成元)とする。 Z_p*から任意に選択したxを秘密鍵とし、それに対する公開鍵yをy:= g^x mod pとおく。 H()をハッシュ関数とする。
[DSA署名作成]文書Mに対する署名の作成手順
1)αをZ_q から任意に選択し、T:= (g^α mod p) mod qとおく。
2)c:= H(M) とおく。
3)s:=α^-1(c + xT ) mod q とおき、(s,T) を署名データとする。
[DSA署名検証] 文書Mに対する署名 (s,T) の検証手順
T = (g^(h(M) s^-1) y^(T s^-1)mod p) mod q かどうか検証する。
[公開鍵認証基盤]
クライアント・サーバ間の通信においてサーバのリソースにアクセスする際には、利用者認証が必要であるが、その一つの手段として ITU-U 勧告の X.509 等の公開鍵証明書がよく用いられている。公開鍵証明書は公開鍵とその利用者との結びつけを保証するデータであり、認証機関と呼ばれる信用のおける第3者機関によるデジタル署名が施されたものである。例えば、ブラウザで実装されている SSL (Secure Sockets Layer) を用いた利用者認証方式は、ユーザの提示してきた公開鍵証明書内に含まれる公開鍵に対応する秘密鍵をユーザが持っているかどうか確認することで行われる。
公開鍵証明書は認証機関による署名が施されていることで、公開鍵証明書内に含まれているユーザやサーバの公開鍵を信頼することができる。そのため、認証機関が署名作成のために用いる秘密鍵が漏洩され、或いは脆弱になった場合、この認証機関から発行されたすべての公開鍵証明書は無効になってしまう。認証機関によっては膨大な数の公開鍵証明書を管理しているため、管理コストを下げるためにさまざまな提案が行われている。後述する本発明によれば、発行する証明書数を抑え、かつ公開鍵リポジトリとしてのサーバアクセスを軽減する効果がある。
公開鍵証明書の一例である非特許文献3に記載のITU-U 勧告X.509 v.3では被署名データとして証明対象となるエンティティ(Subject)のIDおよび公開鍵情報が含まれている。そして、これらの被署名データにハッシュ関数を施したダイジェストについて、前述したRSAアルゴリズムなどの署名演算により署名データが生成される。また、被署名データにはextensions というオプショナルなフィールドが設けられ、アプリケーション又はプロトコル独自の新しい拡張データを含ませることが可能である。
図15は、X.509 v.3で規定されるフォーマットを示しているおり、以下、それぞれのフィールドに表示される情報を説明する。version1501は X.509 のバージョンが入る。このフィールドはオプショナルであり、省略された場合は v1 を表わす。serialNumber1502は認証機関がユニークに割り当てるシリアル番号が入る。signature1503は、公開鍵証明書の署名方式が入る。issuer1504は、公開鍵証明書の発行者である認証機関の X.500 識別名が入る。validity1505は、公開鍵の有効期限(開始日時と終了日時)が入る。
subject1506は、本証明書内に含まれる公開鍵に対応する秘密鍵の所有者の X.500 識別名が入る。subjectPublicKeyInfo1507は、証明する公開鍵が入る。issuerUniqueIdentifier1508及びsubjectUniqueIdentifier1509は、v2 から追加されたオプショナルなフィールドであり、それぞれ認証機関の固有識別子、所有者の固有識別子が入る。
extensions1510は、v3 で追加されたオプショナルなフィールドであり、拡張型 (extnId)1511、クリティカルビット (critical)1512及び拡張値 (extnValue)1513の3つの値の集合が入る。v3 拡張フィールドには、X.509 で定められた標準の拡張型だけでなく、独自の新しい拡張型も組み込むことが可能である。そのため v3 拡張型をどう認識するかはアプリケーション側に依存することとなる。クリティカルビット1512はその拡張型が必須であるかまたは無視可能かを表わすものである。
以上、デジタル署名、ハッシュ関数、公開鍵暗号、及び公開鍵認証基盤について説明した。
前述のデジタル署名技術を用いて、署名対象となるテキストデータを複数のテキストデータに分割し、署名文単位に電子署名を付加する方式が提案されている(特許文献1を参照)。この提案方式によれば、電子署名されたテキストデータから一部を引用しても、該引用した一部の文についての検証処理が可能となる。
特開平10-003257号公報 R.L. Rivest, A. Shamir and L. Adleman: "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems", Communications of the ACM, v. 21, n. 2, pp. 120-126, Feb 1978. Federal Information Processing Standards (FIPS) 186-2, Digital Signature Standard (DSS) , January 2000 ITU-T Recommendation X.509/ISO/IEC 9594-8: "Information technology - Open Systems Interconnection - The Directory: Public-key and attribute certificate frameworks".
上記の提案方式では、テキストデータのみを署名対象データとして扱っているが、近年のデジタルデータの多様化により、複数の種類のコンテンツで構成された複合コンテンツに対してデジタル署名を施すことも考えられる。係る複合コンテンツを一つのバイナリデータの塊として処理し、圧縮処理などを経てデジタル署名を施す場合、第三者がコンテンツをサブコンテンツに分解して再配布する際に、該サブコンテンツにおける署名データは検証可能状態にならない。
これを回避するために、上記提案方式と同様にテキストデータに限らず署名対象サブコンテンツごとにデジタル署名を施すことも考えられるが、その場合には、署名生成・署名検証ともに暗号処理には多大の計算コストがかかる。よって、サブコンテンツ数が多くなるにつれ処理が増大してしまうという別の問題が発生する。
そこで本発明は、テキストデータのみならず多様なフォーマットで格納されたデジタルデータの複合体に対し、その一部分であるサブコンテンツが分離されて存在しても署名検証が可能とすることを目的とする。かつ、署名生成および署名検証処理の計算量がサブコンテンツの分割数に比例せず、一定となるような署名技術を提供することを目的とする。
上記課題をまとめて、又は、個々に解決する本発明は、情報処理装置であって、
電子文書を領域分割して被署名データを生成する第1の生成手段と、
前記被署名データの第1のダイジェスト値及び該被署名データを識別するための識別情報を生成する第2の生成手段と、
前記電子文書から得られた、複数の前記第1のダイジェスト値及び識別情報に基づき、署名情報を生成する第3の生成手段と、
前記署名情報と前記被署名データとにより第1の署名された電子文書を生成する第4の生成手段とを備え
前記第3の生成手段は、前記電子文書より得られた、複数の前記第1のダイジェスト値及び識別情報と、暗号化鍵とを用いて署名値を生成し、該署名値と該複数の第1のダイジェスト値及び前記識別情報とにより前記署名情報を生成することを特徴とする。
また、上記第1の署名された電子文書に基づき、電子文書の検証を行う検証処理装置であって、
前記第1の署名された電子文書から、前記署名情報を抽出する抽出手段と、
前記署名情報における前記第1のダイジェスト値及び識別情報の改竄性の有無を判定する判定手段と、
前記判定手段により、前記第1のダイジェスト値及び前記識別情報が改竄されていないと判定された場合に、前記識別情報に基づき、前記第1の署名された電子文書より前記被署名データを取得する取得手段と、
前記被署名データの第2のダイジェスト値を算出する算出手段と、
前記第1のダイジェスト値と前記第2のダイジェスト値とを比較する比較手段と、
前記比較結果に基づいて検証結果を生成する検証結果生成手段と
を備えることを特徴とする。
以上説明したように、本発明によれば、テキストデータだけではなく多様なフォーマットで格納されたデジタルデータの複合体に対して、その一部分であるサブコンテンツが分離されて存在しても署名検証が可能となる。かつ、効率的に署名生成および署名検証処理が可能となる。
以下、図面を参照して、本発明の好適な実施形態を説明する。
<第1の実施形態>
本実施形態に対応する署名作成処理及び署名検証処理は、電子文書生成工程と電子文書操作工程とで構成される。具体的に、電子文書生成工程では、紙文書をスキャンして生成された画像データをサブコンテンツに分割し、ユーザが所望のサブコンテンツ群にデジタル署名を施した複合コンテンツ(以下、電子文書と呼ぶ)を生成する。次に、電子文書操作工程では、電子文書をサブコンテンツに展開し、検証が必要なサブコンテンツに対する署名情報の検証を行い、閲覧、印刷などのコンテンツ消費処理やコンテンツ再構成処理などを行う。
図1は、本実施形態に対応するシステムの構成の一例を示す図である。図1に示されるシステムは、スキャナ101、電子文書を生成・検証する処理装置としてのコンピュータ装置102、電子文書を編集加工するコンピュータ装置103及び電子文書を印刷する印刷装置104がネットワーク105に接続されて構成されている。
図2は、本実施形態に対応するシステムの機能構成の一例を示す機能ブロック図である。図2において、画像入力装置201には画像データが入力される。鍵情報202は、電子署名作成用の暗号化鍵および電子署名検証用の復号鍵である。情報処理装置としての電子文書生成装置203は、入力画像データと鍵情報202の暗号化鍵から、入力画像データに署名を付加して、電子文書204を生成する。作成された電子文書204には、検証処理装置としての電子文書操作装置205上で、鍵情報202の復号鍵を用いた電子文書の検証に加え、データ加工、編集、印刷等の操作が行われる。以下、電子署名の方法は公開鍵暗号方式に準じて説明する.このとき、鍵情報202の暗号化鍵は秘密鍵406、鍵情報202の復号鍵は公開鍵414に対応する。
図3は、電子文書生成装置203および電子文書操作装置205の内部ハードウエア構成の一例である。301はソフトウエアを実行することで装置の大部分を制御するCPUである。302は、CPU301が実行するソフトウエアやデータを一時記憶するメモリである。303は、ソフトウエアやデータを保存するハードディスクである。304は、キーボードやマウス、スキャナなどの入力情報を受け取り、またディスプレイやプリンタに情報を出力する入出力(I/O)部である。
[電子文書生成工程]
次に、本実施形態に対応する処理について説明する。図4は、本実施形態に対応する処理の一例を示す機能ブロック図である。図4で示されるように、本実施形態に対応する処理は、大きく電子文書生成工程401と、電子文書操作工程402とで構成される。
本実施形態に対応する電子文書生成工程401では、紙文書入力工程404において紙文書403が入力される。次に、中間電子文書生成工程405において、紙文書403を解析し中間電子文書が生成される。署名情報生成工程407において、中間電子文書および秘密鍵406から署名情報が生成される。署名情報付加工程408において、中間電子文書と署名情報とが関連付けられる。電子文書アーカイブ工程409において、中間電子文書と署名情報とが統合され電子文書411が生成される。この電子文書411は、図2の電子文書204に対応する。電子文書送信工程410において、電子文書411が電子文書操作工程402に送信される。
次に、電子文書操作工程402では、電子文書受信工程412において電子文書411が受信される。電子文書展開工程413において、受信した電子文書411が展開され、中間電子文書と署名情報が取得される。署名情報検証工程415において、中間電子文書、署名情報、公開鍵414をもとに検証が行われる。文書操作工程416では、展開された電子文書に加工、編集、印刷などの操作が行われる。
以下、図4の各機能ブロックの詳細を更に説明する。まず、図5及び図6を参照して、中間電子文書生成工程405の詳細を説明する。図5は本実施形態に対応する中間電子文書生成工程405における処理の一例を示すフローチャートである。図6は、電子データ及び領域分割処理結果の一例を示す図である。
図5において、ステップS501では、紙文書入力工程404から得られたデータを電子化し、電子データを生成する。図6(a)は生成された電子データの一例を示す。
次に、ステップS502では電子データを属性ごとに領域分割する。ここでいう属性とは、文字、写真、表、線画があげられる。
領域分割処理は、例えば電子データ中の黒画素の8連結輪郭塊や白画素の4連結輪郭塊といった集合を抽出し、その形状、大きさ、集合状態などから、文字、絵や図、表、枠、線といった特徴名で領域を抽出することができる。このような手法は、例えば米国特許第5680478号公報に記載されている。なお、領域分割処理の実現方法は、これに限られるものではなく、他の方法を適用しても良い。
図6(b)は、抽出した特徴量をもとに属性を判別し、領域分割を行った結果の一例を示す。ここで、各領域の属性は、602、604、605及び606が文字領域、603がカラー写真領域となっている。
次にステップS503では、ステップS502において得られた領域を、領域ごとに文書情報を生成する。文書情報とは属性、ページの位置座標等のレイアウト情報、分割された領域の属性が文字であれば文字コード列や、段落や表題などの文書論理構造等があげられる。
次にステップS504では、ステップS502において得られた領域を、領域ごとに伝達情報に変換する。伝達情報とは、レンダリングに必要な情報のことである。具体的には解像度可変のラスタ画像、ベクタ画像、モノクロ画像、カラー画像、各伝達情報のファイルサイズ、分割領域の属性が文字であれば文字認識した結果のテキスト、個々の文字の位置、フォント、文字認識によって得られた文字の信頼度等である。図6(b)を例とすれば、文字領域602、604、605及び606はベクタ画像に、カラー写真領域603はカラーラスタ画像に変換されるものとする。
次にステップS505では、ステップS502で分割された領域と、ステップS503で生成された文書情報と、ステップS504で得られた伝達情報とを関連付ける。関連付けた情報はツリー構造で記述される。以降、以上において生成された伝達情報及び文書情報を構成要素と呼ぶ。
ステップS506では、以上において生成された構成要素を中間電子文書として保存する。保存の形式はツリー構造を表現可能な形式であればよい。本実施形態は構造化文書の一例であるXMLで保存する。
次に、図4の署名情報生成工程407について説明する。本工程では、先に生成された中間電子文書の構成要素に対し、デジタル署名を生成する。図8は本実施形態における署名情報生成工程のフローチャートであり、以下、署名情報生成工程407について、図8を参照して説明する。
まず、ステップS801では、被署名データのダイジェスト値を、被署名データ毎に夫々生成する。ここで、被署名データとは、中間電子文書中に含まれる署名対象データのことであり、後述する図7(a)における伝達情報a(701)、伝達情報b(702)、或いは文書情報(703)であると考えることができる。また、ダイジェスト値を生成するために、本実施形態ではハッシュ関数を適用する。ハッシュ関数については、[背景技術]の項において既に説明したので、ここでの詳細な説明は省略する。
次に、ステップS802では、被署名データの識別情報を、被署名データ毎に生成する。ここで、識別情報としては、被署名データをユニークに識別可能なものであれば良い。例えば、本実施形態では、被署名データの識別情報として、RFC2396で規定されているURIを適用するものとするが、本発明はこれに限定されることなく、種々の値を識別情報として適用可能であることは明らかである。
そして、ステップS803では、全ての署名対象データに対してステップS801及びステップS802が適用されたか否かが判定される。全ての署名対象データに対してステップS801及びステップS802が適用された場合には(ステップS803において「YES」)、処理をステップS804に進め、さもなければステップS801に戻る。
ステップS804では、ステップS801で生成された同一の電子文書についての全てのダイジェスト値、及び、ステップS802で生成された全ての識別情報に対し、秘密鍵406を用いて署名処理を実行し、署名値を算出する。署名値を算出するために、本実施形態では[背景技術]の項において説明したデジタル署名を適用する。デジタル署名の具体的な演算処理については詳細な説明は省略する。図14(a)で示した署名作成処理フローにおけるデータM(2101)が、ここではステップS801で生成された全てのダイジェスト値、及び、ステップS802で生成された全ての識別情報(このデータ群を集約データと呼ぶ)に該当する。同じく秘密鍵Ks2106は図4の秘密鍵406に対応する。
続いてステップS805では、集約データ(ステップS801で生成された全てのダイジェスト値とステップS802で生成された全ての識別情報)及びステップS804で生成された署名値を用いて署名情報を構成し、署名生成処理を終了する。
なお、ステップS804における署名値の算出処理は、生成された全てのダイジェスト値や全ての識別情報について行わず、生成されたダイジェスト値及び識別情報の一部(すなわち、生成された複数のダイジェスト値及び識別情報)について行っても良い。
この場合、例えば、オリジナルコンテンツにおいて再利用される可能性の高いサブコンテンツを自動或いはユーザによる手動で選択し、該サブコンテンツに関するダイジェスト値や識別情報について署名値を算出してもよい。その場合、ステップS805では、署名値の算出に利用された該一部のダイジェスト値及び識別情報と、算出した署名値とを用いて署名情報が構成される。なお、複数のダイジェスト値及び識別情報を用いて署名値を算出する場合であっても、コンテンツ全体に対し、署名値の演算処理を1回で済ませることができる。
ここで、本実施形態に対応する電子文書411の構成について図9を参照して説明する。図9は、本実施形態に対応する電子文書411の構成の一例を示す図である。図9(a)は、電子文書411全体の構成を示す。ここで、901は署名情報、902は被署名データ1、903は被署名データ2をそれぞれ示す。図9(b)は、図9(a)中の署名情報901の詳細な構成の一例を示す。ここで、904は署名値、905は被署名データ1の識別情報、906は被署名データ1のダイジェスト値、907は被署名データ2の識別情報、908は被署名データ2のダイジェスト値をそれぞれ示す。905から908で構成されるデータは集約データ909に該当する。
図9(a)に示す例では、2つの被署名データ1(902)及び被署名データ2(903)に対し、一つの署名情報901が生成される場合の電子文書411の構成例を示している。また、図9(b)は、署名情報901の詳細な構成例を示している。図9(b)では、被署名データ1の識別情報905及び被署名データ2の識別情報907は、前述のステップS802で生成される。また、被署名データ1のダイジェスト値906及び被署名データ2のダイジェスト値908は、前述のステップS801で生成される。そして、905から908、即ち集約データ909を用いて、ステップS804において署名値904が生成される。
続いて、署名データ付加工程408について図7(a)を参照して説明する。701及び702は、中間電子文書生成工程405で生成された中間電子文書の伝達情報であり、703は、文書情報である。また704及び705は、署名情報生成工程407で生成された署名情報である。
署名情報には識別情報が埋め込まれており、この識別情報は、前述したように被署名データにあたる伝達情報や文書情報を指し示す。図7(a)においては署名情報704には被署名データ(即ち、伝達情報701)を指し示す識別情報706を埋め込む。署名情報と被署名データは一対一対応でなくてもよく、例えば、署名情報705には被署名データの伝達情報702及び文書情報703を指し示す識別情報707及び708を埋め込んでもよい。
ここで、伝達情報a(701)を、被署名データ1(902)と考え、伝達情報b(702)及び文書情報703を被署名データ2(903)と考える。また、署名情報1(704)及び署名情報2(705)を、署名情報901と考えることができる。
次に、電子文書アーカイブ工程409について図7を参照して説明する。これまでの工程で生成された中間電子文書および署名情報は図7(a)のようにそれぞれが独立した個々のデータとして存在している。そこで、電子文書生成工程ではこれらのデータをひとつにアーカイブし電子文書を生成する。図7(b)は中間電子文書と署名情報とをアーカイブ化した一例を示す模式図であり、アーカイブデータ709は図4の電子文書411に該当する。また図7(a)に記載の701から705については、701が713、702が714、703が712、704が710、そして705が711にそれぞれ対応する。
以上、本実施形態における電子文書生成工程について説明した。このように、本実施形態に対応する電子文書生成工程では、後々分離して再配布・再利用を行うことを想定してオリジナルコンテンツを複数のサブコンテンツに分離し、それぞれまたはそれらの組ごとに識別情報を与える。識別情報はステップS802の説明で前述したように、RFC2396で規定されているURIを適用することもできる。これに限らず、例えば、オリジナルコンテンツにおけるサブコンテンツの相対的な位置情報を利用してもよい。また、サブコンテンツのヘッダ部分に一意に割り当てられた番号情報、ヘッダ部分に含まれるコンテンツホルダーや日時などの書誌情報、その他のメタデータから一方向性ハッシュ関数を用いて算出された値等を識別情報として用いてもよい。
更に、識別情報ごとにその識別情報に対応するサブコンテンツを入力とした一方向性ハッシュ関数の演算を行ってダイジェスト値を生成する。そして、識別情報およびダイジェスト値の組(集約データ)を複合コンテンツに付与する。これにより、文書操作工程において、オリジナルコンテンツから一部のサブコンテンツが削除され、残りのサブコンテンツのみで再構成されたコンテンツが流通している場合でも、再構成されたコンテンツの署名検証が可能となる。さらに、サブコンテツごとに署名を生成しなくても(つまり、サブコンテンツと1対1に対応させて署名を生成しなくても)、サブコンテンツごとに改竄されているかを検証可能となる。
再構成されたコンテンツにおける検証可能性については、以下で電子文書操作工程と関連させて説明する。
[電子文書操作工程]
図4の電子文書受信工程412にて受信された電子文書411は、電子文書展開工程413において電子文書アーカイブ工程409と逆の処理が施される。即ち、電子文書411が中間電子文書および署名情報の個々のデータに展開される。
署名情報検証工程415については、図14(b)で示した署名検証処理フローにおける入力データ:M(2107)が、集約データ909に相当する。同じくデジタル署名データ:S(2110)が署名情報901に、公開鍵2111は図4の公開鍵414に対応する。これにより、集約データ909に対する改竄の有無を判定することができる。
ここで集約データが改竄されていないことを確認できれば、集約データに含まれる識別情報に対応するダイジェスト値と、被署名データから生成されるダイジェスト値とが合致するかどうかの検証を行うことができる。以上の処理を、図9及び図10を参照して以下に説明する。図10は本実施形態に対応する署名検証処理の一例を示すフローチャートである。
図10において、ステップS1001では、電子文書展開工程413により電子文書411内の署名情報901を抽出する。次に、ステップS1002では、図14(b)に記載の方法に基づき、署名情報901に含まれる署名値904に基づき、集約データ909の改竄が行われていないかどうかを検証する。即ち、識別情報905及びダイジェスト値906、識別情報907及びダイジェスト値908を入力データMとして、ダイジェスト値2109を生成する。更に、署名値904を公開鍵414を用いて復号し、ダイジェスト値を生成する。それぞれ生成されたダイジェスト値が一致するか否かを判定し、これが一致すれば、集約データ909には改竄が行われていないことが分かる。
次に、ステップS1002において検証に失敗した場合には(ステップS1002において「NG」)、署名検証処理を終え、結果としてNGを返却する。一方、ステップS1002における検証に成功した場合には(ステップS1002において「OK」)、ステップS1003からS1008における処理を、集約データ909に含まれる識別情報905及び907ごとに実行する。
次に、ステップS1004では、識別情報に基づいて被署名データ902又は903を電子文書411中から取得する。ステップS1005では、被署名データ902又は903を取得できたか否かをチェックし、取得できた場合にはステップS1006に進む。取得できなかった場合にはステップS1008の処理に進み、もし次の識別情報が存在する場合には、対応する被署名データに対してステップS1004の処理を行う。なお、電子文書411中から取得できない被署名データが存在する場合は、当該識別情報に対応するサブコンテンツが検証対象データとして含まれない旨を電子文書操作装置205に表示してもよい。この表示は、図1の構成では、例えばコンピュータ装置103や印刷装置104が備えるディスプレイ装置を利用して行うことができる。
ステップS1006では、図14(b)に示す方法に基づいて被署名データ902又は903のダイジェスト値:H(M)を計算する。続くステップS1007では、ダイジェスト演算結果と集約データ909に含まれているダイジェスト値906又は908と一致するか否かの判定を行う。両値が一致した場合には、ステップS1008に進む。ステップS1008では、次の識別情報が存在する場合には、対応する被署名データに対してステップS1004の処理を行う。一致しなかった場合には、署名検証処理を終え、結果としてNGを返却する。ステップS1008にてすべての識別情報に対して繰り返し処理を終えた場合には署名検証処理を終え、結果としてOKを返却する。
次に、図4の電子文書操作工程416について説明する。操作には閲覧、印刷などのコンテンツ消費処理が含まれるが、ユーザがコンテンツを享受する処理であればどのように消費されても本実施形態には影響しないため詳細を割愛する。一方、コンテンツ再構成処理は新たな電子文書411を再構成する処理であり、再構成された電子文書411は電子文書操作工程402に入力されることが想定される。
再構成された電子文書411は、電子文書生成工程401にて生成された電子文書411ではないため、署名情報にはアーカイブされていないコンテンツのダイジェスト値が含まれている場合がある。
そこで、図11を参照して、再構成された電子文書411の検証について説明する。ここでは、例として、図9に示す電子文書411を受領したユーザが再構成処理を行い、被署名データ1(902)を削除して被署名データ2(903)のみをコンテンツとして配布する状況を想定する。
このとき配布される電子文書411は、図11に示すように、書き換えられることとなる。即ち、電子文書411は署名情報901及び被署名データ2(903)で構成される。このとき、例えば、本来は署名検証時に不要なデータである905および906を冗長性排除のために削除する等して、署名情報901に手を加えれば、署名値904自体が無効となってしまう。従って、署名情報901すなわち904から908の情報は、再構成前の情報がそのまま使用されることになる。
ここで、図10のフローチャートに基づいて処理を行った場合を考える。ステップS1005では、被署名データ1の識別情報905に基づいて被署名データ1(902)の取得を試みるが、図11の電子文書411にはアーカイブされていないため、取得できない。従って、ステップS1005では「NO」の判定となって、ステップS1008に移行し、次の識別情報(ここでは、識別情報907)について、ステップS1004からの処理を継続する。このようにして、被署名データ1(902)については、ステップS1007のダイジェストマッチング処理がスキップされる。一方、被署名データ2(903)は、ステップS1004において受信され、ダイジェストマッチング処理が可能である。よって、被署名データ2(903)については、改竄の有無を検証することができる。
このように、集約データ909に記載されているが電子文書411内にアーカイブされていないサブコンテンツについてはダイジェストマッチング処理をスキップする。これにより、アーカイブされているサブコンテンツについて、非改竄性を保証する仕組みを提供することができる。
従来の署名生成処理では、上記のように被署名データ1と被署名データ2のそれぞれに署名値を持たせる必要があった。従って、演算処理の負担が大きくなる。特に、分割された被署名データの分割数に比例して計算量が増加することになる。
これに対して、本実施形態では、コンテンツの分割回数に係わらず、署名値の演算処理を1回で済ませることができる。これにより、本実施形態では、従来よりも遙かに効率的に署名生成及び署名検証処理が可能となる。また、一部のサブコンテンツのみを使用して、データが再構成された場合であっても、該サブコンテンツが改竄されていないかどうかを確実に検証することができる。
以上説明したように、本発明によれば、テキストデータだけではなく多様なフォーマットで格納されたデジタルデータの複合体に対して、その一部分であるサブコンテンツが分離されて存在しても署名検証が可能となる。かつ、効率的に署名生成および署名検証処理が可能となる。 <第2の実施形態>
上記第1の実施形態の図10に記載される検証処理では、サブコンテンツの一部が改竄されているがそれ以外は改竄性が認められない場合に、ユーザがコンテンツを許容する場合を考慮していない。そこで、本実施形態ではこの状況にも対応可能な方式について説明する。
図10のステップS1007では、ステップS1006における演算結果として得られたダイジェスト値と、集約データ909に含まれているダイジェスト値とが一致しないサブコンテンツが発見された時点で、署名検証処理を終えることとしている。しかしながら、このような場合であっても両ダイジェスト値が一致する、或いは、未処理の他のサブコンテンツが存在し、被署名データの非改竄性が保証される可能性のある場合には、署名検証処理を継続してもよい。
そこで、本実施形態では、ステップS1007のマッチング結果がNGの場合でも強制的に処理を終了せず、集約データ909に含まれる他の識別情報のすべてについてステップS1003からS1008の検証処理を継続する。そして、検証結果として、非改竄性が認められるサブコンテンツと、改竄されているサブコンテンツのそれぞれのリストを返却する。これにより、改竄の有無に関する情報を、サブコンテンツ単位に、コンピュータ装置103や印刷装置104などを介してユーザに通知することができる。
このようにすれば、一部のサブコンテンツが改竄されているが、他のサブコンテンツは改竄性が認められない場合にコンテンツを許容することができる。これにより、改竄されていないサブコンテンツについては、再利用を可能とする仕組みを提供できる。
<第3の実施形態>
本実施形態では、被署名データのユーザによる選択を可能とする場合を説明する。上述の実施形態では署名情報生成工程407において署名処理が行われ、その詳細な処理は図8に記載した通りである。図8では、電子化された文書データの全体が被署名データとして処理され、文書データのいずれかの領域のみを選択して署名処理を行うものではなかった。
そこで本実施形態では、中間電子文書工程405と署名情報生成工程407との間に、被署名データを選択する工程を新たに設けることを特徴とする。この工程のことを、本実施形態では、被署名データ選択工程と呼ぶこととする。以下、被署名データ選択工程について説明する。
被署名データ選択工程では、紙文書入力工程404でスキャンされた画像データが、装置の画面上に図6(a)のような形態で表示される。その際、ユーザは被署名データをマウスなどのデバイスポインタを用いて矩形領域の指定を行うことができる。例えば、「1901年に連邦制国家が成立し・・・めぐる旅です。」と記載された領域をデバイスポインタにより指定することができる。
また、図6(b)のような形態で表示が行われる場合には、デバイスポインタにより各矩形情報(602から606)のいくつかを選択することができる。このような矩形情報は、既に内部で保持しているデータ構造として扱いやすい分割単位であるため、係る矩形情報の選択は直後に行われる署名情報生成工程407に即した処理といえる。
図12は図6(b)のうち、2つの分割領域(602および606)が被署名データとして選択された例を示す。図12では、選択した分割領域が強調されており、ユーザが選択された領域を識別しやすい画面構成となっている。
これに対し、ユーザは中間電子文書工程405で分割された領域よりも更に狭い領域に対して署名を行うことを希望することもありえる。例えば、サブコンテンツとして今後分割される可能性が高いと思われる領域が、中間電子文書工程405で分割された領域よりも更に狭い領域である場合が考えられる。
このような場合を想定し、本実施形態におけるユーザインタフェースでは、図13に示すように分割領域を更に細かい領域に分割可能であることが望ましい。この例では、領域606よりもさらに狭い領域1301が選択され強調されていることがわかる。
なお、このような更に狭い領域の指定を可能とする場合には、中間電子文書工程405のステップS502において領域分割を行う際に、ユーザから所望の領域(例えば、図13における領域1301)の指定を受け付けることができる。指定の受付は、ユーザが希望する領域をデバイスポインタにより指定し、これを受け付けることにより行うことができ、係る技術は公知であるので、本明細書における詳細な説明は省略する。
このように中間電子文書工程405で定められた分割よりも更に細かい分割を行い、署名情報生成工程407において被署名データとして利用することが可能となれば、ユーザにとってより自由度の高い被署名データの選択方法となる。
なお、ここで、領域1301を分割領域のひとつとしてもよいし、領域606と領域1301との差分情報を新たな分割領域としても構わない。前者の場合、電子文書411のデータ量が増えるが処理が容易であり、後者の場合、新たな領域分割を行うための処理が必要となる。
以上によれば、ユーザは、被署名データを選択して、署名情報生成処理を行うことができる。また、予め分割された矩形領域に限らず、任意の領域を指定して被署名データとすることができる。
<他の暗号アルゴリズムによる実施形態>
前述の実施形態では公開鍵暗号方式による暗号処理(秘匿化)方法を示した。しかし、共通鍵暗号方式による暗号処理方法およびMAC(メッセージ認証子)生成方法への適用は容易であり、他の暗号アルゴリズムを適用することによって上記実施の形態が実現される場合も本発明の範疇に含まれる。
<ソフトウエアなどによる他の実施の形態>
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
さらに、フロッピーディスク(登録商標)、ハードディスク、光ディスク、磁気光ディスク、CD−ROM、CD−R、磁気タイプや不揮発性タイプのメモリーカード及びROMのような記憶媒体を当該プログラムコードを提供するために利用することができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明が上述の記憶媒体について適用される場合、当該記憶媒体は上記実施形態において記載されたフローチャートに対応するプログラムコードを格納することが好ましい。その一方、本発明は上述の実施形態に限定されることなく、本発明の精神及び範囲において様々な変更や修正を加えることが可能である。それゆえに、本発明の範囲を公に知らしめるべく以下の特許請求の範囲が作成される。
このように、本発明の動作及び構成は上述の記載から明らかとなるものと信ずる。開示及び記述された方法、装置及びシステムは好適に特徴づけられる一方、以下の特許請求の範囲において定義される本発明の範囲から逸脱することなく様々な変更及び修正が可能であることは、直ちに明らかとなるであろう。
本発明の実施形態に対応するシステムの構成の一例を示す図である。 本発明の実施形態に対応するシステムの機能構成の一例を示す図である。 本発明の実施形態に対応するハードウエア構成の一例を示す図である。 本発明の実施形態に対応する電子文書生成工程及び電子文書操作工程の機能ブロック図である。 本発明の実施形態に対応する中間電子文書生成工程における処理の一例を示すフローチャートである。 本発明の実施形態に対応する電子データの一例を説明する図である。 本発明の実施形態に対応する中間電子文書及び電子文書を説明するための図である。 本発明の実施形態に対応する署名生成工程における処理の一例を示すフローチャートである。 本発明の実施形態に対応する電子文書の構成の一例を示す図である。 本発明の実施形態に対応する署名検証工程の処理の一例を示すフローチャートである。 本発明の実施形態に対応する再構成処理後の署名データの構成の一例を示す図である。 本発明の第3の実施形態に対応する電子データの閲覧例を説明するための図である。 本発明の第3の実施形態に対応する電子データの他の閲覧例を説明するための図である。 署名作成処理及び署名検証処理の一般例を表す模式図である。 公開鍵証明書X.509v.3のデータフォーマットを説明するための図である。

Claims (16)

  1. 電子文書を領域分割して被署名データを生成する第1の生成手段と、
    前記被署名データの第1のダイジェスト値及び該被署名データを識別するための識別情報を生成する第2の生成手段と、
    前記電子文書から得られた、複数の前記第1のダイジェスト値及び識別情報に基づき、署名情報を生成する第3の生成手段と、
    前記署名情報と前記被署名データとにより第1の署名された電子文書を生成する第4の生成手段と
    を備え
    前記第3の生成手段は、前記電子文書より得られた、複数の前記第1のダイジェスト値及び識別情報と、暗号化鍵とを用いて署名値を生成し、該署名値と該複数の第1のダイジェスト値及び前記識別情報とにより前記署名情報を生成することを特徴とする情報処理装置。
  2. 前記被署名データの選択を受け付ける選択受付手段を備え、
    前記第3の生成手段は、前記選択受付手段により選択を受け付けた被署名データの前記第1のダイジェスト値及び前記識別情報に基づき前記署名情報を生成することを特徴とする請求項に記載の情報処理装置。
  3. 前記電子文書のうち、所定領域の指定を受け付ける領域指定受付手段を更に備え、
    前記第1の生成手段は、前記領域指定受付手段により指定された前記所定領域について前記被署名データを生成することを特徴とする請求項又はに記載の情報処理装置。
  4. 請求項乃至のいずれか1項に記載の情報処理装置により生成された第1の署名された電子文書に基づき、電子文書の検証を行う検証処理装置であって、
    前記第1の署名された電子文書から、前記署名情報を抽出する抽出手段と、
    前記署名情報における前記第1のダイジェスト値及び識別情報の改竄性の有無を判定する判定手段と、
    前記判定手段により、前記第1のダイジェスト値及び前記識別情報が改竄されていないと判定された場合に、前記識別情報に基づき、前記第1の署名された電子文書より前記被署名データを取得する取得手段と、
    前記被署名データの第2のダイジェスト値を算出する算出手段と、
    前記第1のダイジェスト値と前記第2のダイジェスト値とを比較する比較手段と、
    前記比較の結果に基づいて検証結果を生成する検証結果生成手段と
    を備えることを特徴とする検証処理装置。
  5. 前記判定手段は、前記署名情報に含まれる前記署名値を復号鍵を用いて復号して得られた結果が、前記第1のダイジェスト値及び前記識別情報と一致するか否かに基づいて、前記第1のダイジェスト値及び前記識別情報が改竄されたか否かを判定することを特徴とする請求項に記載の検証処理装置。
  6. 前記取得手段は、複数の前記識別情報のうち、いずれかの識別情報に対応する被署名データが取得できない場合であっても、他の識別情報に対応する被署名データが取得できる場合には、該被署名データを取得することを特徴とする請求項又はに記載の検証処理装置。
  7. 前記第1の署名された電子文書に操作を施す操作手段と、
    前記操作が施された前記第1の署名された電子文書について、第2の署名された電子文書を生成する第5の生成手段とを更に備え、
    前記操作手段において、前記第1の署名された電子文書に含まれる被署名データのいずれかが選択されて電子文書が再構成された場合に、前記第5の生成手段は、前記再構成された電子文書について、前記署名情報と前記操作において選択された被署名データとにより前記第2の署名された電子文書を生成することを特徴とする請求項乃至のいずれか1項に記載の検証処理装置。
  8. 第1の生成手段が、電子文書を領域分割して被署名データを生成する第1の生成工程と、
    第2の生成手段が、前記被署名データの第1のダイジェスト値及び該被署名データを識別するための識別情報を生成する第2の生成工程と、
    第3の生成手段が、前記電子文書から得られた、複数の前記第1のダイジェスト値及び識別情報に基づき、署名情報を生成する第3の生成工程と、
    第4の生成手段が、前記署名情報と前記被署名データとにより署名された電子文書を生成する第4の生成工程と
    を備え
    前記第3の生成工程では、前記電子文書より得られた、複数の前記第1のダイジェスト値及び識別情報と、暗号化鍵とを用いて署名値を生成し、該署名値と該複数の第1のダイジェスト値及び前記識別情報とにより前記署名情報を生成することを特徴とする情報処理装置の制御方法。
  9. 選択受付手段が、前記被署名データの選択を受け付ける選択受付工程を更に備え、
    前記第3の生成工程では、前記選択受付工程において選択を受け付けた被署名データの前記第1のダイジェスト値及び前記識別情報に基づき前記署名情報を生成することを特徴とする請求項に記載の情報処理装置の制御方法。
  10. 領域指定受付手段が、前記電子文書のうち、所定領域の指定を受け付ける領域指定受付工程を更に備え、
    前記第1の生成工程では、前記領域指定受付工程において指定された前記所定領域について前記被署名データを生成することを特徴とする請求項又はに記載の情報処理装置の制御方法。
  11. 請求項乃至10のいずれか1項に記載の方法により生成された署名された電子文書に基づき、電子文書の検証を行う検証処理装置の制御方法であって、
    抽出手段が、前記署名された電子文書から、前記署名情報を抽出する抽出工程と、
    判定手段が、前記署名情報における前記第1のダイジェスト値及び識別情報の改竄性の有無を判定する判定工程と、
    取得手段が、前記判定工程において、前記第1のダイジェスト値及び前記識別情報が改竄されていないと判定された場合に、前記識別情報に基づき、前記署名された電子文書より前記被署名データを取得する取得工程と、
    算出手段が、前記被署名データの第2のダイジェスト値を算出する算出工程と、
    比較手段が、前記第1のダイジェスト値と前記第2のダイジェスト値とを比較する比較工程と、
    検証結果生成手段が、前記比較の結果に基づいて検証結果を生成する検証結果生成工程と
    を備えることを特徴とする検証処理装置の制御方法。
  12. 前記判定工程では、前記署名情報に含まれる前記署名値を復号鍵を用いて復号して得られた結果が、前記第1のダイジェスト値及び前記識別情報と一致するか否かに基づいて、前記第1のダイジェスト値及び前記識別情報が改竄されたか否かを判定することを特徴とする請求項11に記載の検証処理装置の制御方法。
  13. 前記取得工程では、複数の前記識別情報のうち、いずれかの識別情報に対応する被署名データが取得できない場合であっても、他の識別情報に対応する被署名データが取得できる場合には、該被署名データを取得することを特徴とする請求項11又は12に記載の検証処理装置の制御方法。
  14. 操作手段が、前記第1の署名された電子文書に操作を施す操作工程と、
    第5の生成手段が、前記操作が施された前記第1の署名された電子文書について、第2の署名された電子文書を生成する第5の生成工程とを更に備え、
    前記操作工程において、前記第1の署名された電子文書に含まれる被署名データのいずれかが選択されて電子文書が再構成された場合に、前記第5の生成工程では、前記再構成された電子文書について、前記署名情報と前記操作において選択された被署名データとにより前記第2の署名された電子文書を生成することを特徴とする請求項11乃至13のいずれか1項に記載の検証処理装置の制御方法。
  15. 請求項乃至14のいずれか1項に記載の方法をコンピュータに実行させるためのコンピュータプログラム。
  16. 請求項15に記載のコンピュータプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
JP2006232812A 2005-09-09 2006-08-29 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体 Expired - Fee Related JP4993674B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006232812A JP4993674B2 (ja) 2005-09-09 2006-08-29 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体
US11/470,389 US20070058803A1 (en) 2005-09-09 2006-09-06 Information processing apparatus, verification processing apparatus, and control methods thereof
EP06120194.3A EP1763196B1 (en) 2005-09-09 2006-09-06 Information processing apparatus, verification processing apparatus and control methods thereof
KR1020060086589A KR100820272B1 (ko) 2005-09-09 2006-09-08 정보 처리 장치, 검증 처리 장치, 및 그 제어방법
CN2006101291211A CN1936780B (zh) 2005-09-09 2006-09-08 信息处理装置、验证处理装置及其控制方法
RU2006132409/09A RU2336551C2 (ru) 2005-09-09 2006-09-08 Устройство обработки информации, устройство обработки верификации и их способы управления

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005263074 2005-09-09
JP2005263074 2005-09-09
JP2006232812A JP4993674B2 (ja) 2005-09-09 2006-08-29 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体

Publications (3)

Publication Number Publication Date
JP2007104643A JP2007104643A (ja) 2007-04-19
JP2007104643A5 JP2007104643A5 (ja) 2009-10-15
JP4993674B2 true JP4993674B2 (ja) 2012-08-08

Family

ID=37433918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006232812A Expired - Fee Related JP4993674B2 (ja) 2005-09-09 2006-08-29 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体

Country Status (6)

Country Link
US (1) US20070058803A1 (ja)
EP (1) EP1763196B1 (ja)
JP (1) JP4993674B2 (ja)
KR (1) KR100820272B1 (ja)
CN (1) CN1936780B (ja)
RU (1) RU2336551C2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162035B1 (en) 2000-05-24 2007-01-09 Tracer Detection Technology Corp. Authentication method and system
US8171567B1 (en) 2002-09-04 2012-05-01 Tracer Detection Technology Corp. Authentication method and system
JP4632413B2 (ja) * 2004-09-01 2011-02-16 キヤノン株式会社 情報暗号化装置及び情報配信装置並びにそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2007081482A (ja) * 2005-09-09 2007-03-29 Canon Inc 端末認証方法及びその装置、プログラム
JP2008059561A (ja) * 2006-08-04 2008-03-13 Canon Inc 情報処理装置、データ処理装置、および、それらの方法
JP4158829B2 (ja) * 2006-10-31 2008-10-01 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像処理方法および画像処理プログラム
JP4270276B2 (ja) * 2006-12-27 2009-05-27 株式会社日立製作所 電子データの真正性保証方法およびプログラム
JP4379483B2 (ja) * 2007-04-05 2009-12-09 富士ゼロックス株式会社 情報処理装置及びプログラム
JP5270894B2 (ja) * 2007-10-01 2013-08-21 キヤノン株式会社 情報処理装置及びその制御方法、情報処理システム、プログラム
JP5389401B2 (ja) * 2007-10-31 2014-01-15 株式会社日立製作所 暗号化装置、復号装置及び暗号システム
US7995196B1 (en) 2008-04-23 2011-08-09 Tracer Detection Technology Corp. Authentication method and system
JP5142858B2 (ja) * 2008-07-03 2013-02-13 キヤノン株式会社 画像処理装置および画像処理方法
JP5221288B2 (ja) * 2008-11-06 2013-06-26 株式会社日立国際電気 画像伝送装置
JP5350148B2 (ja) * 2008-11-28 2013-11-27 キヤノン株式会社 情報処理装置、情報処理方法
KR20100074567A (ko) * 2008-12-24 2010-07-02 삼성전자주식회사 전자서명 생성 방법, 인쇄 제어 단말장치, 및 화상형성장치
WO2011089864A1 (ja) * 2010-01-21 2011-07-28 日本電気株式会社 ファイル群整合性検証システム、ファイル群整合性検証方法およびファイル群整合性検証用プログラム
US8997239B2 (en) * 2011-03-31 2015-03-31 Infosys Limited Detecting code injections through cryptographic methods
US8677300B2 (en) * 2012-02-01 2014-03-18 Mentor Graphics Corporation Canonical signature generation for layout design data
US9191291B2 (en) * 2012-09-14 2015-11-17 Salesforce.Com, Inc. Detection and handling of aggregated online content using decision criteria to compare similar or identical content items
US11456876B2 (en) * 2015-03-26 2022-09-27 Assa Abloy Ab Virtual credentials and licenses
US10523440B2 (en) * 2015-09-22 2019-12-31 Securerf Corporation Signature generation and verification system
US11711449B2 (en) * 2021-12-07 2023-07-25 Capital One Services, Llc Compressing websites for fast data transfers
US20230370274A1 (en) * 2022-05-12 2023-11-16 Credo.Ai Corp. Systems and methods for provable provenance for artificial intelligence model assessments

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5680479A (en) 1992-04-24 1997-10-21 Canon Kabushiki Kaisha Method and apparatus for character recognition
JP3260524B2 (ja) * 1992-12-03 2002-02-25 株式会社日立製作所 ディジタル署名の生成方法
US5465299A (en) * 1992-12-03 1995-11-07 Hitachi, Ltd. Electronic document processing system and method of forming digital signature
GB2288476A (en) * 1994-04-05 1995-10-18 Ibm Authentication of printed documents.
US5689626A (en) * 1995-04-17 1997-11-18 Apple Computer, Inc. System and method for linking a file to a document and selecting the file
US5671389A (en) * 1996-01-11 1997-09-23 Quantum Corporation Adaptive compression caching for tape recording
JP3540511B2 (ja) * 1996-06-18 2004-07-07 株式会社東芝 電子署名検証装置
US5958051A (en) * 1996-11-27 1999-09-28 Sun Microsystems, Inc. Implementing digital signatures for data streams and data archives
US5898779A (en) * 1997-04-14 1999-04-27 Eastman Kodak Company Photograhic system with selected area image authentication
US6785815B1 (en) * 1999-06-08 2004-08-31 Intertrust Technologies Corp. Methods and systems for encoding and protecting data using digital signature and watermarking techniques
JP2001223735A (ja) * 2000-02-09 2001-08-17 Fuji Xerox Co Ltd データ通信装置及び記録媒体
JP4103340B2 (ja) * 2001-05-08 2008-06-18 株式会社日立製作所 デジタル署名表示装置
KR20020096616A (ko) * 2001-06-21 2002-12-31 한국전자통신연구원 전자문서에 대한 xml 형태의 전자서명 생성/검증 장치및 방법
US20030084095A1 (en) * 2001-10-26 2003-05-01 Hayden Douglas Todd Method to preserve web page links using registration and notification
JP2003198540A (ja) * 2001-12-28 2003-07-11 Canon Inc 画像生成装置および検証データ生成方法
US7512811B2 (en) * 2003-01-14 2009-03-31 Canon Kabushiki Kaisha Encryption/decryption method for data limited in value range, apparatus and program therefor
JP2004364070A (ja) * 2003-06-06 2004-12-24 Hitachi Ltd マスキング可能な署名技術を用いた電子文書管理システム
EP1650893A4 (en) * 2003-07-11 2011-07-06 Canon Kk METHOD, DEVICE AND PROGRAM FOR PROCESSING KEY INFORMATION
JP2005051734A (ja) * 2003-07-15 2005-02-24 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
JP2006060772A (ja) * 2004-03-31 2006-03-02 Toto Ltd マイクロストリップアンテナ及び高周波センサ
JP2006157399A (ja) * 2004-11-29 2006-06-15 Hitachi Ltd 電子署名付き電子文書交換支援方法及び情報処理装置
JP4728104B2 (ja) * 2004-11-29 2011-07-20 株式会社日立製作所 電子画像の真正性保証方法および電子データ公開システム
JP4827468B2 (ja) * 2005-07-25 2011-11-30 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4921065B2 (ja) * 2005-09-08 2012-04-18 キヤノン株式会社 情報処理装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP2007081482A (ja) * 2005-09-09 2007-03-29 Canon Inc 端末認証方法及びその装置、プログラム
JP5013694B2 (ja) * 2005-09-09 2012-08-29 キヤノン株式会社 画像処理方法、画像処理装置、プログラムコード及び記憶媒体
JP4865282B2 (ja) * 2005-09-09 2012-02-01 キヤノン株式会社 画像処理装置の制御方法、画像処理装置、プログラムコード及び記憶媒体
WO2008015740A1 (fr) * 2006-08-01 2008-02-07 Fujitsu Limited Programme de vérification de document, support d'enregistrement, procédé de vérification de document et dispositif de vérification de document
JP4894857B2 (ja) * 2006-08-04 2012-03-14 富士通株式会社 電子文書を管理するプログラム、方法、及び装置

Also Published As

Publication number Publication date
CN1936780B (zh) 2012-01-11
RU2006132409A (ru) 2008-03-20
CN1936780A (zh) 2007-03-28
KR100820272B1 (ko) 2008-04-07
US20070058803A1 (en) 2007-03-15
JP2007104643A (ja) 2007-04-19
EP1763196A3 (en) 2007-11-07
RU2336551C2 (ru) 2008-10-20
EP1763196B1 (en) 2014-04-23
EP1763196A2 (en) 2007-03-14
KR20070029575A (ko) 2007-03-14

Similar Documents

Publication Publication Date Title
JP4993674B2 (ja) 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体
US7958361B2 (en) Information processing apparatus and method
JP3919673B2 (ja) 透かしを使用してデータ・セットの配布と認証を行う装置および方法
US7552335B2 (en) Information processing apparatus, method therefor, computer program, and computer-readable storage medium
JP4921065B2 (ja) 情報処理装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP2007081482A (ja) 端末認証方法及びその装置、プログラム
US8223968B2 (en) Image data verification program recorded on a recording medium, image data verification method, and image data verification system
US8230216B2 (en) Information processing apparatus, control method therefor, information processing system, and program
JPH11234264A (ja) 電子透かし方式及びそれを用いた電子情報配布システム並びに記憶媒体
JPH11355558A (ja) 透かし挿入装置
JP2006157914A (ja) 文書認証方法、検出可能な文書生成方法、装置及びプログラム
US8433913B2 (en) Apparatus, method, and program for digital signature
JP2010050760A (ja) コンテンツ保護装置、および、コンテンツ利用装置
JP2000056681A (ja) セキュリティ情報付きデジタルデータ記録装置
US7930544B2 (en) Data processing apparatus and its method
JP2006109107A (ja) 署名生成方法、署名検証方法、公開鍵配布方法、及び情報処理装置
KR20200088995A (ko) 화상 형성 장치에서 블록체인을 기반한 문서의 보안 및 무결성 검증
JP2007312357A (ja) データ処理装置及びその制御方法、データ処理システム、プログラム、記憶媒体
JP3770732B2 (ja) 画像への情報添付方法および画像からの情報抽出方法
JP4748762B2 (ja) 署名生成方法及び情報処理装置
JPH11212462A (ja) 電子透かし方式、電子情報配布システム、画像ファイル装置、及び記憶媒体
JP4055975B2 (ja) 電子署名装置
JPH1165444A (ja) 電子透かし方式、電子情報配布システム及び画像ファイル装置
KR100773854B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 컴퓨터 판독가능한기억 매체
JP2000010478A (ja) 署名情報埋め込み装置、署名情報抽出装置、署名情報埋め込み方法および署名情報抽出方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120411

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

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

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees