情報処理装置、情報処理システム、プログラム
【課題】印刷された検証対象の文書の読取精度の向上を図る。
【解決手段】署名装置10は、署名対象の電子文書から視認可能な文書画像データを生成すると共に、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成部11と、署名対象文書画像のデジタル署名を生成する署名部12と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報をコードデータ化することによって視認不可能なコード画像を生成するコード画像生成部13と、署名対象文書画像とコード画像とを合成することによって印刷用画像5を生成する画像合成部14と、証明書画像5の用紙6への印刷を実行する印刷実行部15と、を有する。
【解決手段】署名装置10は、署名対象の電子文書から視認可能な文書画像データを生成すると共に、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成部11と、署名対象文書画像のデジタル署名を生成する署名部12と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報をコードデータ化することによって視認不可能なコード画像を生成するコード画像生成部13と、署名対象文書画像とコード画像とを合成することによって印刷用画像5を生成する画像合成部14と、証明書画像5の用紙6への印刷を実行する印刷実行部15と、を有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、プログラムに関する。
【背景技術】
【0002】
従来から文書の改竄を検出するために、デジタル署名を利用することが一般的である。署名対象の文書及び署名に関する情報を用紙等の媒体に印刷する場合、その情報は、通常、QRコード等にコードデータ化されて印刷される場合があるが、この場合の文書の内容は、検証されるまで確認できない状態にある。そこで、コード化されたデータと共に文書を視認可能な状態にて印刷すれば、検証を実施する前からその内容を確認することができるので都合がよい場合がある。
【0003】
なお、コードデータ化した署名と共に署名者や署名の事実を視認可能に印刷する技術が提案されている(例えば、特許文献1)。
【0004】
【特許文献1】特開2001−157024号公報
【特許文献2】特開2004−45607号公報
【特許文献3】特開2000−78125号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
文書に対する署名検証は、可読性のある状態にて用紙に印刷された文書から生成したダイジェストと、コードデータ化された署名を復号して得られたダイジェストとの比較により行われる。しかし、用紙に対して文書の読み書きを行うプリンタやスキャナ等の機器の性能、あるいは印刷文字の認識精度等が原因で、印刷された文書を正確に読み取れなければ、デジタル署名が不当に無効と判定されてしまうおそれが生じてくる。
【0006】
本発明は、本構成を有していない場合に比較して印刷された検証対象の文書の読取精度の向上を図り、デジタル署名を正しく判定することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る情報処理装置は、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、署名対象文書画像のデジタル署名を生成する署名生成手段と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、を有することを特徴とする。
【0008】
また、前記文書画像生成手段は、画素の行方向の誤り訂正データの画素列と画素の列方向の誤り訂正データの画素列とを並べて、文字画像データに含まれる当該文字画像の近傍に現れるよう署名対象文書画像に含めることを特徴とする。
【0009】
また、前記文書画像生成手段は、画素の行方向及び列方向それぞれの誤り訂正データの画素列に少なくとも1画素分の傾き補正データを付加することを特徴とする。
【0010】
本発明に係る情報処理装置は、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、を有することを特徴とする。
【0011】
本発明に係る情報処理システムは、第1の情報処理装置と、第2の情報処理装置と、を有し、前記第1の情報処理装置は、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、署名対象文書画像のデジタル署名を生成する署名生成手段と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、を有し、前記第2の情報処理装置は、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、を有することを特徴とする。
【0012】
本発明に係るプログラムは、コンピュータに、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段、署名対象文書画像のデジタル署名を生成する署名生成手段、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段、として機能させることを特徴とする。
【0013】
本発明に係るプログラムは、コンピュータに、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段、として機能させることを特徴とする。
【発明の効果】
【0014】
請求項1、4、5、6、7記載の発明によれば、本構成を有していない場合に比較して署名対象の電子文書から生成された文書画像データに含まれる各文字画像の読取精度を向上させ、デジタル署名を正しく判定することができる。
【0015】
請求項2記載の発明によれば、文字画像と誤り訂正データを一緒に取り扱うことができる。
【0016】
請求項3記載の発明によれば、文字の傾きを補正でき、本構成を有していない場合に比較して各文字画像の読み取り精度を向上させることができる。
【発明を実施するための最良の形態】
【0017】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0018】
図1は、本発明に係る情報処理システムの一実施の形態を示したブロック構成図である。図1には、デジタル署名システムを構成する署名装置10及び署名検証装置20に加えて、公開鍵が真正であることを証明するデジタル証明書を発行する認証局1、認証局1、署名装置10及び署名検証装置20を接続するネットワーク2、署名装置10からの指示に従い用紙6に印刷を行うプリンタ3、及び署名検証装置20からの指示に従い用紙6を読み取るスキャナ4が示されている。
【0019】
図2は、本実施の形態における署名装置10及び署名検証装置20をそれぞれ形成するコンピュータのハードウェア構成図である。サーバコンピュータは、従前から存在する汎用的なハードウェア構成で実現できる。すなわち、コンピュータは、図2に示したようにCPU31、ROM32、RAM33、ハードディスクドライブ(HDD)34を接続したHDDコントローラ35、入力手段として設けられたマウス36とキーボード37、及び表示装置として設けられたディスプレイ38をそれぞれ接続する入出力コントローラ39、通信手段として設けられたネットワークコントローラ40を内部バス41に接続して構成される。署名装置10及び署名検証装置20をそれぞれ構成するコンピュータは、性能的に差異はあるかもしれないが、図2に示したとおり同じように図示できる。本実施の形態では、パーソナルコンピュータ(PC)で実現することを想定している。
【0020】
図1に戻り、署名装置10は、文書画像生成部11、署名部12、コード画像生成部13、画像合成部14、印刷実行部15及び文書データ記憶部16を有している。文書画像生成部11は、文書データ記憶部16から取り出した電子文書若しくはユーザにより入力された文書から視認可能な文書画像データを生成すると共に文書画像データに含まれる各文字画像の誤認防止用情報(誤り訂正データ)を生成し、その文書画像データと各文字の誤認防止用情報とを含む署名対象文書画像を生成する。署名部12は、署名対象文書画像のデジタル署名を生成する。コード画像生成部13は、文書画像生成部11が生成した署名対象文書画像に関する情報及び署名部12が生成した当該署名対象文書画像のデジタル署名を含む文書関連情報をコードデータ化することによって視認不可能なコード画像を生成する。画像合成部14は、文書画像生成部11が生成した署名対象の署名対象文書画像と、コード画像生成部13が生成したコード画像とを合成することによって印刷用画像を生成する。印刷実行部15は、プリンタ3に印刷指示を送ることで印刷用画像の印刷を実行する。文書データ記憶部16には、署名対象の元データとなる電子文書が記憶されている。
【0021】
一方、署名検証装置20は、画像取込部21、文書関連情報抽出部22、文書画像復元部23、署名検証部24及び画像記憶部25を有している。スキャナ4により読み取られた印刷用画像5は、画像記憶部25にいったん保存されるが、画像取込部21は、画像記憶部25から印刷用画像5を読み出す。文書関連情報抽出部22は、印刷用画像5に含まれるコード画像から署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報を抽出する。文書画像復元部23は、署名対象文書画像に含まれる誤認防止用情報を用いて、署名対象文書画像に含まれる文書画像データを復元する。署名検証部24は、文書画像復元部23により復元された文書画像データと、文書関連情報抽出部22により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う。
【0022】
署名装置10及び署名検証装置20における各構成要素11〜15,21〜24は、署名装置10及び署名検証装置20それぞれを形成するコンピュータと、各コンピュータに搭載されたCPU31で動作するプログラムとの協調動作により実現される。また、文書データ記憶部16は、署名装置10に搭載された外部記憶装置にて実現される。
【0023】
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、CD−ROMやDVD−ROM等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPU31がインストールプログラムを順次実行することで各種処理が実現される。
【0024】
次に、本実施の形態における署名装置10が実施する署名処理について図3乃至図5に示したフローチャートを用いて説明する。この署名処理では、最終的に図7に例示した証明書画像5を生成することになる。
【0025】
図6は、本実施の形態において用いるイメージ作成画面の例を示した図である。文書に署名を施したいユーザは、この画面をディスプレイ38に表示し、署名対象の文書、画素数及び署名記録フォーマットを指定する。署名対象の文書は、文書データ記憶部16に保存された電子文書を利用する場合には読込ボタン42を選択する。この場合、選択された文書の内容は、文書表示領域43に表示される。また、ユーザは、署名対象とするテキストメッセージを文書表示領域43に入力してもよい。署名対象の文書を構成する文字をイメージ化したときの画素数は、画素数指定領域44に表示されたいずれかの画素数に対応したラジオボタンを選択することで指定する。また、本実施の形態では、署名をコードデータ化して印刷することになるが、このコードデータ化するコードの種類をフォーマット指定領域45に表示されたいずれかのコード形式に対応したラジオボタンを選択することで指定する。以降の説明では、テキスト記録画素数として16画素、つまり1文字16×16画素が、また署名記録フォーマットとしてQRコードがユーザにより選択された場合を例にして説明する。ここでQRコードとは、マトリックス型の二次元コードをいう。なお、本実施の形態ではコード化されたデータをQRコードとして説明するが、必ずしもQRコードに限定するものではない。
【0026】
ユーザが必要な情報を設定した後に画面上の署名ボタン46を選択すると、署名装置10は、文書表示領域43に表示されたテキストデータを受け付ける(ステップ110)。そして、文書画像生成部11は、次の手順にて文書画像生成処理を実行する(ステップ120)。この文書画像生成処理については、図4に示したフローチャート及び図6を用いて説明する。
【0027】
図7では、「定」という漢字を例としているが、文書画像生成部11は、署名対象の文書に含まれる「定」というテキスト文字を所定のアプリケーションを利用してビットマップデータに変換することで画像データを生成する(ステップ121)。図7には、ユーザによる画素数の指定に従い16×16画素の画像データに変換した例が示されている。続いて、文書画像生成部11は、文字画像を構成する画素の行及び列方向の排他的論理和(xor)を計算する(ステップ122)。その後、その計算結果に対して、奇数の行及び列においては“0”と、偶数の行及び列においては“1”と、それぞれ排他的論理和(xor)を計算する(ステップ123)。ここまでの処理で行及び列それぞれに16画素列が形成されることになるが、更に、この各画素列の先頭と中央に“1”を挿入する(ステップ124)。これにより、行及び列それぞれに18画素列が形成される。そして、本実施の形態では、行に対する計算結果を列の下方に移すと共に、計算結果に含まれている“0”を白、“1”を黒として罫線パターンを生成する(ステップ125)。そして、生成した罫線パターンが文字画像の下線として印刷されるように位置付けをする。これを文書表示領域43から読み出した文書を構成する全ての文字(空白文字を含む)に対して行うことになり、このようにして文字画像情報を生成する(ステップ126)。
【0028】
図8は、本実施の形態における署名装置10が生成した証明書画像5を用紙に印刷した場合の例を示した図である。本実施の形態における署名装置10は、図8に例示したような証明書画像5を印刷用画像として生成するが、この証明書画像5は、署名対象文書画像51とQRコード52を含んでいる。このうち、署名対象文書画像51は、前述したように文書画像生成部11によって生成される画像データであって、署名対象となるテキストデータから視認可能な文書画像として生成される。各文字の罫線パターンは、対応する各文字画像の下線53として画像に組み込まれる。この罫線パターンは、署名検証装置20により署名検証を行う際の誤り訂正データであり、各文字の誤認防止用情報として画像内に記録される。前述したステップ124では、行及び列の各画素列の先頭と中央に黒色で印刷されるように“1”を挿入したので、空白文字部分には、黒点54のみが印刷されることになる。
【0029】
以上のように、文字画像情報が生成されると、続いて、コード画像生成部13は、次のようにしてQRコードを生成する(ステップ130)。すなわち、図5において、コード画像生成部13は、所定のダイジェスト関数を用いて文字画像情報のダイジェストを生成し、そのダイジェストに対し予め用意した秘密鍵で暗号化(署名)を行うことでデジタル署名を生成する(ステップ131)。
【0030】
そして、コード画像生成部13は、コードデータ化する情報として次の署名に関する情報を収集する(ステップ132)。すなわち、まず署名検証に必要な公開鍵証明書を取得する。なお、コードデータ化する情報量削減のために証明書そのものではなく、証明書を特定する情報としてURL(Uniform Resource Locator)等の証明書の格納先を特定する情報を格納し署名検証装置20が公開鍵証明書を取得するようにしてもよい。また、コード画像生成部13は、IPアドレス等署名装置10を特定する情報を取得してもよい。更に、署名検証装置20による文字画像情報に含まれる文字画像の復元を支援するための情報、例えば、イメージ作成画面からユーザにより指定されたテキスト記録画素数を取得してもよい。更に、用紙上における証明書画像5の印刷位置が予め決められている場合には、その印刷位置を特定するための情報を取得してもよい。また、同じ用紙にこのQRコードと他のQRコードとが印刷された場合にQRコードの種別が容易に判別できるように、当該QRコードが本実施の形態が生成するQRコードである旨を示す情報、例えば予め決められた記号、メッセージ等を取得するようにしてもよい。以上のコードデータ化するのに必要な情報を収集すると、コード画像生成部13は、それらの情報及びデジタル署名を、所定のアプリケーションを利用してQRコード化する(ステップ133)。
【0031】
以上のようにして、署名対象文書画像とQRコードの各画像データが生成されると、画像合成部14は、これらの画像を合成して証明書画像5を生成する(ステップ140)。この合成した結果は、図8に例示したとおりである。本実施の形態では、QRコード52の左側面側に署名対象文書画像51が印刷されるように配置した。更に、本実施の形態では、視認可能な署名対象文書画像51と視認不可能な状態の署名対象文書画像を含むQRコード52との組が明確になるように画像枠55で両画像51,52を囲むように証明書画像5を形成した。
【0032】
証明書画像5の生成が終了すると、署名装置10は、イメージ作成画面のメッセージ表示領域47にその旨を表示する。ユーザがメッセージ表示領域47の表示内容を参照することによって証明書画像5の生成を確認すると、印刷ボタン48を選択する。
【0033】
このボタン選択操作に応じて、印刷実行部15は、画像合成部14が生成した証明書画像5をプリンタ3に印刷させる(ステップ150)。このようにして、視認不可能な署名と共に、視認可能な状態にて署名された内容が印刷される。なお、証明書画像5は、用紙6に印刷されればよいので、プリンタ3でなくても印刷機能のある装置、例えば複合機等の画像処理装置やFAX等から出力させるように構成してもよい。
【0034】
次に、本実施の形態における署名検証装置20が実施する署名検証処理について図9乃至図10に示したフローチャートを用いて説明する。
【0035】
ユーザがスキャナ4を用いて証明書画像5が印刷された用紙6を読み取り、任意のファイル名にて画像記憶部25に一時保存する。そして、所定の操作を行うことで図11に例示したイメージ検証画面を表示させ、そのイメージ検証画面のファイル名指定領域56から、その一時保存したファイル名を指定した後、署名検証ボタン57を選択する。
【0036】
画像取込部21は、そのユーザによる選択操作に応じて、指定されたファイル名の読取画像を読み出す(ステップ210)。なお、ここでの処理では、用紙6に印刷された証明書画像5を取り込めればよい。従って、証明書画像5を、スキャナ4以外の手段を使用して取り込むように構成してもよい。例えば、スキャナ機能を搭載した画像処理装置等によって読み取られた読取画像を取り込むように構成してもよい。あるいは、デジタルカメラやカメラ機能付き携帯電話等の撮像手段を使用して撮影された撮影画像を取り込むように構成してもよい。
【0037】
続いて、文書画像復元部23は、証明書画像5に含まれる署名対象文書画像51から文書画像を復元するが、この処理は次のようにして行う。
【0038】
まず、証明書画像5に含まれるQRコード52を、文書関連情報抽出部22は、所定のアプリケーションを用いてデコードすることによってコードデータ化されていた文書関連情報に含まれている情報、具体的には、署名、公開鍵証明書(若しくは証明書の特定情報)、その他の署名に関する情報を参照可能な状態に戻す(ステップ220)。なお、証明書画像5に含まれるQRコード52以外にもQRコードが用紙に印刷されている場合が考えられるが、読み取ったQRコードが証明書画像5に含まれるものであるか否かは、図5のステップ133において説明したように、QRコードの種別情報を利用すればよい。また、同じ用紙に複数の証明書画像5が印刷される場合も考えられるが、この場合も同様である。文書関連情報抽出部22は、用紙に複数のQRコードが印刷されていた場合には、QRコードの種類を判定する処理を行うことになる。
【0039】
一方、証明書画像5に含まれる署名対象文書画像51に対しては、文書画像復元部23が処理することになるが、この署名対象文書画像51に含まれる文字画像には、下線53が付加されており、その下線53には、空白文字画像を含めて少なくとも黒点54が存在していることは前述したとおりである。従って、文書画像復元部23は、この下線53に含まれる黒点54を基準にして、証明書画像5の読取り時あるいは撮影時に発生しうる傾きの補正を行う(ステップ231)。なお、黒点54は、その直上に文字が存在することに加えて、傾き補正のために署名装置10が署名対象文書画像51に含めるようにした。ただ、読取り時あるいは撮影時に発生しうる傾きは、文字画像毎というよりむしろ行毎に発生するものと考えられる。従って、署名装置10は、図4のステップ124において行及び列それぞれに形成された16画素から成る各画素列の先頭と中央の2箇所に黒色“1”を挿入するようにしたが、2箇所ではなく少なくとも1箇所に挿入するようにすれば、また黒色“1”を挿入する位置も、先頭と中央に限定しなくても、傾き補正を行うことは可能である。また、署名装置10が図4のステップ124において黒色“1”を挿入する位置と数が予め決められており、署名検証装置20がそれを事前に認識していれば、黒色“1”を挿入する位置と数は任意である。また、本実施の形態では、黒色を“1”、白色を“0”としたが、文字画像の下線に傾き補正用の黒色が印刷されるような仕様であれば、白黒と“0”,“1”の対応付けは逆であってもよい。
【0040】
次に、文字画像の画素数は、QRコード52をデコードした情報から得ることができるので、文書画像復元部23は、下線53の間隔をその画素数で分割することによって各画素の位置を特定する(ステップ232)。そして、その特定した文字画像を構成する各画素の色、すなわち黒色“1”または白色“0”を判定する(ステップ233)。なお、この白黒判定の確実性の向上のために、署名装置10は、署名対象文書画像51を記録する際の記録解像度を画像取込時の解像度に対して相対的に低く設定するようにしてもよい。
【0041】
この後、判定結果の正当性を判断するために、文書画像復元部23は、下線53を形成した図4のステップ122〜124と同じ処理を実施する(ステップ234〜236)。すなわち、文書画像復元部23は、文字画像を構成する画素の行及び列方向の排他的論理和(xor)を計算し(ステップ234)、その計算結果に対して、奇数の行及び列においては“0”と、偶数の行及び列においては“1”と、それぞれ排他的論理和(xor)を計算し(ステップ235)、この計算結果(行及び列の各16画素列)の先頭と中央に“1”を挿入する(ステップ236)。このようにして、行及び列それぞれに18画素列を形成することで各文字画像に対応して形成する下線(罫線パターン)を求める。そして、文書画像復元部23は、ステップ231〜236により証明書画像5に含まれる文字画像から求めた下線と、文字画像情報51に含まれていた下線53とを比較する(ステップ237)。比較した結果、いずれかの行、列に2箇所以上の不一致が検出された場合(ステップ238でY)、誤り訂正を行うことはできないため、文字画像の復元は不能、すなわち画像復元エラーと判断する(ステップ242)。また、行及び列が共に1箇所だけ不一致であった場合(ステップ239でY)、不一致とされた行と列の交点にある画素の値に誤りがあると判断し、その画素値を反転する。また、行または列の一方だけに1箇所だけ不一致であった場合(ステップ240でY)、不一致とされた行または列の下線にある画素値に誤りがあると判断し、その下線部分の画素値を反転する。なお、不一致がない場合は、誤りがないと判断する。
【0042】
以上のようにして、文書画像復元部23が読み取った文字画像情報51を正確に復元すると、署名検証部24は、次のようにして署名検証を実施する(ステップ250)。すなわち、ステップ220において抽出された情報から署名者の公開鍵証明書を取得し、認証局の公開鍵証明書の公開鍵で検証することで真正を確認する。そして、署名を署名者の公開鍵で復号することによって文字画像情報のダイジェストを得る。一方、ステップ230において復元した文字画像情報を、コード画像生成部13が用いた所定のダイジェスト関数を用いて文字画像情報のダイジェストを生成する。そして、それぞれの処理により得たダイジェストを比較する。この比較した結果、一致していれば、署名対象の文書は、真正な文書であると判定する。一方、不一致の場合、また文字画像情報復元処理で画像復元エラーが発生していた場合には、署名対象の文書は、真正な文書でないと判定する。なお、署名検証の結果、真正であると判定した場合に署名検証装置20のディスプレイ38に表示されるイメージ検証結果画面の例を図12に示す。
【0043】
なお、本実施の形態では、文字画像の誤り訂正データを各文字画像の下線として文字画像情報51に含めるようにしたが、文字画像と誤り訂正データとの対応付けができていれば、誤り訂正データを下線として画像内に記録しなくてよい。例えば、文字画像情報内に誤り訂正データ記録用領域を設けるなどしてもよい。
【0044】
また、証明書画像5を取り込むための手段として、スキャナ4以外に画像処理装置や携帯電話を使用可能であると前述したが、CPU及びRAM搭載の画像処理装置や、携帯電話等によって署名検証装置20を構成することは可能である。
【0045】
以下に、前述した実施の形態を適用したシステムの例を示す。
【0046】
図13は、本実施の形態を商品検査に適用した場合に署名装置10が生成した証明書画像5を商品のパッケージに貼り付けた例を示した図である。商品に関しては、商品提供者が商品の商品コード、シリアル番号を含む情報を署名して記録したり、検査員が検査の結果を署名して記録したりする場合があるので、このような場合は、図13に例示したように複数の証明書画像5が貼り付けられることになる。このような場合、例えば、検査結果の署名検証を行いたい者は、検査結果の内容が視認可能な状態にあるので、複数の証明書画像5から署名検証を行うべき証明書画像5を見つけ出す。そして、その証明書画像5をデジタルカメラや携帯電話のカメラ等を用いて撮影し、その撮像データを署名検証アプリケーション搭載のコンピュータに転送して署名検証を行う。携帯電話であれば、署名検証アプリケーションを搭載することによって携帯電話のみで署名検証を行うようにしてもよい。
【0047】
図14は、署名装置10が生成した証明書画像5を家庭訪問員への家庭立ち入り時の携帯する依頼書に適用した場合の例を示した図である。家庭では、市の職員や電力会社、ガス会社の社員を名乗る不正な訪問者から身を守るために見知らぬ訪問者は入室させないケースが増えている。しかし、緊急事態や異常事態の発生で本当に家庭に入る必要がある場合に、正当な職員等でさえ必要な対応ができない場合が起こり得る。そこで、本実施の形態における署名装置10を用いて依頼書を作成し、その訪問が正式に許可を受けたものであることを証明する。すなわち、訪問員は、依頼書を携行し訪問先の家庭で提示する。家庭では、携帯電話に組み込まれた署名検証プログラムによって署名検証を行い、依頼書の真正性を確認する。
【図面の簡単な説明】
【0048】
【図1】本発明に係る情報処理システムの一実施の形態を示したブロック構成図である。
【図2】本実施の形態における署名装置及び署名検証装置をそれぞれ形成するコンピュータのハードウェア構成図である。
【図3】本実施の形態における署名処理を示したフローチャートである。
【図4】本実施の形態における署名処理に含まれる署名対象文書画像生成処理を示したフローチャートである。
【図5】本実施の形態における署名処理に含まれるQRコード生成処理を示したフローチャートである。
【図6】本実施の形態において用いるイメージ作成画面の例を示した図である。
【図7】本実施の形態において署名対象文書画像を生成する手順を説明するために用いる概念図である。
【図8】本実施の形態における署名装置が生成した証明書画像を用紙に印刷した場合の例を示した図である。
【図9】本実施の形態における署名検証処理を示したフローチャートである。
【図10】本実施の形態における署名検証処理に含まれる署名対象文書画像復元処理を示したフローチャートである。
【図11】本実施の形態におけるイメージ検証画面の例を示した図である。
【図12】本実施の形態におけるイメージ検証結果画面の例を示した図である。
【図13】本実施の形態に署名システムを商品検査に適用した場合に証明書画像を商品のパッケージに貼り付けた例を示した図である。
【図14】本実施の形態に署名システムを家庭訪問に適用した場合に証明書画像で生成した依頼書の例を示した図である。
【符号の説明】
【0049】
1 認証局、2 ネットワーク、3 プリンタ、4 スキャナ、5 証明書画像(印刷用画像)、6 用紙、10 署名装置、11 文書画像生成部、12 署名部、13 コード画像生成部、14 画像合成部、15 印刷実行部、16 文書データ記憶部、20 署名検証装置、21 画像取込部、22 文書関連情報抽出部、23 文書画像復元部、24 署名検証部、25 画像記憶部、31 CPU、32 ROM、33 RAM、34 ハードディスクドライブ(HDD)、35 HDDコントローラ、36 マウス、37 キーボード、38 ディスプレイ、39 入出力コントローラ、40 ネットワークコントローラ、41 内部バス。
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、プログラムに関する。
【背景技術】
【0002】
従来から文書の改竄を検出するために、デジタル署名を利用することが一般的である。署名対象の文書及び署名に関する情報を用紙等の媒体に印刷する場合、その情報は、通常、QRコード等にコードデータ化されて印刷される場合があるが、この場合の文書の内容は、検証されるまで確認できない状態にある。そこで、コード化されたデータと共に文書を視認可能な状態にて印刷すれば、検証を実施する前からその内容を確認することができるので都合がよい場合がある。
【0003】
なお、コードデータ化した署名と共に署名者や署名の事実を視認可能に印刷する技術が提案されている(例えば、特許文献1)。
【0004】
【特許文献1】特開2001−157024号公報
【特許文献2】特開2004−45607号公報
【特許文献3】特開2000−78125号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
文書に対する署名検証は、可読性のある状態にて用紙に印刷された文書から生成したダイジェストと、コードデータ化された署名を復号して得られたダイジェストとの比較により行われる。しかし、用紙に対して文書の読み書きを行うプリンタやスキャナ等の機器の性能、あるいは印刷文字の認識精度等が原因で、印刷された文書を正確に読み取れなければ、デジタル署名が不当に無効と判定されてしまうおそれが生じてくる。
【0006】
本発明は、本構成を有していない場合に比較して印刷された検証対象の文書の読取精度の向上を図り、デジタル署名を正しく判定することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る情報処理装置は、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、署名対象文書画像のデジタル署名を生成する署名生成手段と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、を有することを特徴とする。
【0008】
また、前記文書画像生成手段は、画素の行方向の誤り訂正データの画素列と画素の列方向の誤り訂正データの画素列とを並べて、文字画像データに含まれる当該文字画像の近傍に現れるよう署名対象文書画像に含めることを特徴とする。
【0009】
また、前記文書画像生成手段は、画素の行方向及び列方向それぞれの誤り訂正データの画素列に少なくとも1画素分の傾き補正データを付加することを特徴とする。
【0010】
本発明に係る情報処理装置は、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、を有することを特徴とする。
【0011】
本発明に係る情報処理システムは、第1の情報処理装置と、第2の情報処理装置と、を有し、前記第1の情報処理装置は、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、署名対象文書画像のデジタル署名を生成する署名生成手段と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、を有し、前記第2の情報処理装置は、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、を有することを特徴とする。
【0012】
本発明に係るプログラムは、コンピュータに、署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段、文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段、署名対象文書画像のデジタル署名を生成する署名生成手段、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段、署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段、として機能させることを特徴とする。
【0013】
本発明に係るプログラムは、コンピュータに、署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段、署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段、印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段、前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段、として機能させることを特徴とする。
【発明の効果】
【0014】
請求項1、4、5、6、7記載の発明によれば、本構成を有していない場合に比較して署名対象の電子文書から生成された文書画像データに含まれる各文字画像の読取精度を向上させ、デジタル署名を正しく判定することができる。
【0015】
請求項2記載の発明によれば、文字画像と誤り訂正データを一緒に取り扱うことができる。
【0016】
請求項3記載の発明によれば、文字の傾きを補正でき、本構成を有していない場合に比較して各文字画像の読み取り精度を向上させることができる。
【発明を実施するための最良の形態】
【0017】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0018】
図1は、本発明に係る情報処理システムの一実施の形態を示したブロック構成図である。図1には、デジタル署名システムを構成する署名装置10及び署名検証装置20に加えて、公開鍵が真正であることを証明するデジタル証明書を発行する認証局1、認証局1、署名装置10及び署名検証装置20を接続するネットワーク2、署名装置10からの指示に従い用紙6に印刷を行うプリンタ3、及び署名検証装置20からの指示に従い用紙6を読み取るスキャナ4が示されている。
【0019】
図2は、本実施の形態における署名装置10及び署名検証装置20をそれぞれ形成するコンピュータのハードウェア構成図である。サーバコンピュータは、従前から存在する汎用的なハードウェア構成で実現できる。すなわち、コンピュータは、図2に示したようにCPU31、ROM32、RAM33、ハードディスクドライブ(HDD)34を接続したHDDコントローラ35、入力手段として設けられたマウス36とキーボード37、及び表示装置として設けられたディスプレイ38をそれぞれ接続する入出力コントローラ39、通信手段として設けられたネットワークコントローラ40を内部バス41に接続して構成される。署名装置10及び署名検証装置20をそれぞれ構成するコンピュータは、性能的に差異はあるかもしれないが、図2に示したとおり同じように図示できる。本実施の形態では、パーソナルコンピュータ(PC)で実現することを想定している。
【0020】
図1に戻り、署名装置10は、文書画像生成部11、署名部12、コード画像生成部13、画像合成部14、印刷実行部15及び文書データ記憶部16を有している。文書画像生成部11は、文書データ記憶部16から取り出した電子文書若しくはユーザにより入力された文書から視認可能な文書画像データを生成すると共に文書画像データに含まれる各文字画像の誤認防止用情報(誤り訂正データ)を生成し、その文書画像データと各文字の誤認防止用情報とを含む署名対象文書画像を生成する。署名部12は、署名対象文書画像のデジタル署名を生成する。コード画像生成部13は、文書画像生成部11が生成した署名対象文書画像に関する情報及び署名部12が生成した当該署名対象文書画像のデジタル署名を含む文書関連情報をコードデータ化することによって視認不可能なコード画像を生成する。画像合成部14は、文書画像生成部11が生成した署名対象の署名対象文書画像と、コード画像生成部13が生成したコード画像とを合成することによって印刷用画像を生成する。印刷実行部15は、プリンタ3に印刷指示を送ることで印刷用画像の印刷を実行する。文書データ記憶部16には、署名対象の元データとなる電子文書が記憶されている。
【0021】
一方、署名検証装置20は、画像取込部21、文書関連情報抽出部22、文書画像復元部23、署名検証部24及び画像記憶部25を有している。スキャナ4により読み取られた印刷用画像5は、画像記憶部25にいったん保存されるが、画像取込部21は、画像記憶部25から印刷用画像5を読み出す。文書関連情報抽出部22は、印刷用画像5に含まれるコード画像から署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報を抽出する。文書画像復元部23は、署名対象文書画像に含まれる誤認防止用情報を用いて、署名対象文書画像に含まれる文書画像データを復元する。署名検証部24は、文書画像復元部23により復元された文書画像データと、文書関連情報抽出部22により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う。
【0022】
署名装置10及び署名検証装置20における各構成要素11〜15,21〜24は、署名装置10及び署名検証装置20それぞれを形成するコンピュータと、各コンピュータに搭載されたCPU31で動作するプログラムとの協調動作により実現される。また、文書データ記憶部16は、署名装置10に搭載された外部記憶装置にて実現される。
【0023】
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、CD−ROMやDVD−ROM等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPU31がインストールプログラムを順次実行することで各種処理が実現される。
【0024】
次に、本実施の形態における署名装置10が実施する署名処理について図3乃至図5に示したフローチャートを用いて説明する。この署名処理では、最終的に図7に例示した証明書画像5を生成することになる。
【0025】
図6は、本実施の形態において用いるイメージ作成画面の例を示した図である。文書に署名を施したいユーザは、この画面をディスプレイ38に表示し、署名対象の文書、画素数及び署名記録フォーマットを指定する。署名対象の文書は、文書データ記憶部16に保存された電子文書を利用する場合には読込ボタン42を選択する。この場合、選択された文書の内容は、文書表示領域43に表示される。また、ユーザは、署名対象とするテキストメッセージを文書表示領域43に入力してもよい。署名対象の文書を構成する文字をイメージ化したときの画素数は、画素数指定領域44に表示されたいずれかの画素数に対応したラジオボタンを選択することで指定する。また、本実施の形態では、署名をコードデータ化して印刷することになるが、このコードデータ化するコードの種類をフォーマット指定領域45に表示されたいずれかのコード形式に対応したラジオボタンを選択することで指定する。以降の説明では、テキスト記録画素数として16画素、つまり1文字16×16画素が、また署名記録フォーマットとしてQRコードがユーザにより選択された場合を例にして説明する。ここでQRコードとは、マトリックス型の二次元コードをいう。なお、本実施の形態ではコード化されたデータをQRコードとして説明するが、必ずしもQRコードに限定するものではない。
【0026】
ユーザが必要な情報を設定した後に画面上の署名ボタン46を選択すると、署名装置10は、文書表示領域43に表示されたテキストデータを受け付ける(ステップ110)。そして、文書画像生成部11は、次の手順にて文書画像生成処理を実行する(ステップ120)。この文書画像生成処理については、図4に示したフローチャート及び図6を用いて説明する。
【0027】
図7では、「定」という漢字を例としているが、文書画像生成部11は、署名対象の文書に含まれる「定」というテキスト文字を所定のアプリケーションを利用してビットマップデータに変換することで画像データを生成する(ステップ121)。図7には、ユーザによる画素数の指定に従い16×16画素の画像データに変換した例が示されている。続いて、文書画像生成部11は、文字画像を構成する画素の行及び列方向の排他的論理和(xor)を計算する(ステップ122)。その後、その計算結果に対して、奇数の行及び列においては“0”と、偶数の行及び列においては“1”と、それぞれ排他的論理和(xor)を計算する(ステップ123)。ここまでの処理で行及び列それぞれに16画素列が形成されることになるが、更に、この各画素列の先頭と中央に“1”を挿入する(ステップ124)。これにより、行及び列それぞれに18画素列が形成される。そして、本実施の形態では、行に対する計算結果を列の下方に移すと共に、計算結果に含まれている“0”を白、“1”を黒として罫線パターンを生成する(ステップ125)。そして、生成した罫線パターンが文字画像の下線として印刷されるように位置付けをする。これを文書表示領域43から読み出した文書を構成する全ての文字(空白文字を含む)に対して行うことになり、このようにして文字画像情報を生成する(ステップ126)。
【0028】
図8は、本実施の形態における署名装置10が生成した証明書画像5を用紙に印刷した場合の例を示した図である。本実施の形態における署名装置10は、図8に例示したような証明書画像5を印刷用画像として生成するが、この証明書画像5は、署名対象文書画像51とQRコード52を含んでいる。このうち、署名対象文書画像51は、前述したように文書画像生成部11によって生成される画像データであって、署名対象となるテキストデータから視認可能な文書画像として生成される。各文字の罫線パターンは、対応する各文字画像の下線53として画像に組み込まれる。この罫線パターンは、署名検証装置20により署名検証を行う際の誤り訂正データであり、各文字の誤認防止用情報として画像内に記録される。前述したステップ124では、行及び列の各画素列の先頭と中央に黒色で印刷されるように“1”を挿入したので、空白文字部分には、黒点54のみが印刷されることになる。
【0029】
以上のように、文字画像情報が生成されると、続いて、コード画像生成部13は、次のようにしてQRコードを生成する(ステップ130)。すなわち、図5において、コード画像生成部13は、所定のダイジェスト関数を用いて文字画像情報のダイジェストを生成し、そのダイジェストに対し予め用意した秘密鍵で暗号化(署名)を行うことでデジタル署名を生成する(ステップ131)。
【0030】
そして、コード画像生成部13は、コードデータ化する情報として次の署名に関する情報を収集する(ステップ132)。すなわち、まず署名検証に必要な公開鍵証明書を取得する。なお、コードデータ化する情報量削減のために証明書そのものではなく、証明書を特定する情報としてURL(Uniform Resource Locator)等の証明書の格納先を特定する情報を格納し署名検証装置20が公開鍵証明書を取得するようにしてもよい。また、コード画像生成部13は、IPアドレス等署名装置10を特定する情報を取得してもよい。更に、署名検証装置20による文字画像情報に含まれる文字画像の復元を支援するための情報、例えば、イメージ作成画面からユーザにより指定されたテキスト記録画素数を取得してもよい。更に、用紙上における証明書画像5の印刷位置が予め決められている場合には、その印刷位置を特定するための情報を取得してもよい。また、同じ用紙にこのQRコードと他のQRコードとが印刷された場合にQRコードの種別が容易に判別できるように、当該QRコードが本実施の形態が生成するQRコードである旨を示す情報、例えば予め決められた記号、メッセージ等を取得するようにしてもよい。以上のコードデータ化するのに必要な情報を収集すると、コード画像生成部13は、それらの情報及びデジタル署名を、所定のアプリケーションを利用してQRコード化する(ステップ133)。
【0031】
以上のようにして、署名対象文書画像とQRコードの各画像データが生成されると、画像合成部14は、これらの画像を合成して証明書画像5を生成する(ステップ140)。この合成した結果は、図8に例示したとおりである。本実施の形態では、QRコード52の左側面側に署名対象文書画像51が印刷されるように配置した。更に、本実施の形態では、視認可能な署名対象文書画像51と視認不可能な状態の署名対象文書画像を含むQRコード52との組が明確になるように画像枠55で両画像51,52を囲むように証明書画像5を形成した。
【0032】
証明書画像5の生成が終了すると、署名装置10は、イメージ作成画面のメッセージ表示領域47にその旨を表示する。ユーザがメッセージ表示領域47の表示内容を参照することによって証明書画像5の生成を確認すると、印刷ボタン48を選択する。
【0033】
このボタン選択操作に応じて、印刷実行部15は、画像合成部14が生成した証明書画像5をプリンタ3に印刷させる(ステップ150)。このようにして、視認不可能な署名と共に、視認可能な状態にて署名された内容が印刷される。なお、証明書画像5は、用紙6に印刷されればよいので、プリンタ3でなくても印刷機能のある装置、例えば複合機等の画像処理装置やFAX等から出力させるように構成してもよい。
【0034】
次に、本実施の形態における署名検証装置20が実施する署名検証処理について図9乃至図10に示したフローチャートを用いて説明する。
【0035】
ユーザがスキャナ4を用いて証明書画像5が印刷された用紙6を読み取り、任意のファイル名にて画像記憶部25に一時保存する。そして、所定の操作を行うことで図11に例示したイメージ検証画面を表示させ、そのイメージ検証画面のファイル名指定領域56から、その一時保存したファイル名を指定した後、署名検証ボタン57を選択する。
【0036】
画像取込部21は、そのユーザによる選択操作に応じて、指定されたファイル名の読取画像を読み出す(ステップ210)。なお、ここでの処理では、用紙6に印刷された証明書画像5を取り込めればよい。従って、証明書画像5を、スキャナ4以外の手段を使用して取り込むように構成してもよい。例えば、スキャナ機能を搭載した画像処理装置等によって読み取られた読取画像を取り込むように構成してもよい。あるいは、デジタルカメラやカメラ機能付き携帯電話等の撮像手段を使用して撮影された撮影画像を取り込むように構成してもよい。
【0037】
続いて、文書画像復元部23は、証明書画像5に含まれる署名対象文書画像51から文書画像を復元するが、この処理は次のようにして行う。
【0038】
まず、証明書画像5に含まれるQRコード52を、文書関連情報抽出部22は、所定のアプリケーションを用いてデコードすることによってコードデータ化されていた文書関連情報に含まれている情報、具体的には、署名、公開鍵証明書(若しくは証明書の特定情報)、その他の署名に関する情報を参照可能な状態に戻す(ステップ220)。なお、証明書画像5に含まれるQRコード52以外にもQRコードが用紙に印刷されている場合が考えられるが、読み取ったQRコードが証明書画像5に含まれるものであるか否かは、図5のステップ133において説明したように、QRコードの種別情報を利用すればよい。また、同じ用紙に複数の証明書画像5が印刷される場合も考えられるが、この場合も同様である。文書関連情報抽出部22は、用紙に複数のQRコードが印刷されていた場合には、QRコードの種類を判定する処理を行うことになる。
【0039】
一方、証明書画像5に含まれる署名対象文書画像51に対しては、文書画像復元部23が処理することになるが、この署名対象文書画像51に含まれる文字画像には、下線53が付加されており、その下線53には、空白文字画像を含めて少なくとも黒点54が存在していることは前述したとおりである。従って、文書画像復元部23は、この下線53に含まれる黒点54を基準にして、証明書画像5の読取り時あるいは撮影時に発生しうる傾きの補正を行う(ステップ231)。なお、黒点54は、その直上に文字が存在することに加えて、傾き補正のために署名装置10が署名対象文書画像51に含めるようにした。ただ、読取り時あるいは撮影時に発生しうる傾きは、文字画像毎というよりむしろ行毎に発生するものと考えられる。従って、署名装置10は、図4のステップ124において行及び列それぞれに形成された16画素から成る各画素列の先頭と中央の2箇所に黒色“1”を挿入するようにしたが、2箇所ではなく少なくとも1箇所に挿入するようにすれば、また黒色“1”を挿入する位置も、先頭と中央に限定しなくても、傾き補正を行うことは可能である。また、署名装置10が図4のステップ124において黒色“1”を挿入する位置と数が予め決められており、署名検証装置20がそれを事前に認識していれば、黒色“1”を挿入する位置と数は任意である。また、本実施の形態では、黒色を“1”、白色を“0”としたが、文字画像の下線に傾き補正用の黒色が印刷されるような仕様であれば、白黒と“0”,“1”の対応付けは逆であってもよい。
【0040】
次に、文字画像の画素数は、QRコード52をデコードした情報から得ることができるので、文書画像復元部23は、下線53の間隔をその画素数で分割することによって各画素の位置を特定する(ステップ232)。そして、その特定した文字画像を構成する各画素の色、すなわち黒色“1”または白色“0”を判定する(ステップ233)。なお、この白黒判定の確実性の向上のために、署名装置10は、署名対象文書画像51を記録する際の記録解像度を画像取込時の解像度に対して相対的に低く設定するようにしてもよい。
【0041】
この後、判定結果の正当性を判断するために、文書画像復元部23は、下線53を形成した図4のステップ122〜124と同じ処理を実施する(ステップ234〜236)。すなわち、文書画像復元部23は、文字画像を構成する画素の行及び列方向の排他的論理和(xor)を計算し(ステップ234)、その計算結果に対して、奇数の行及び列においては“0”と、偶数の行及び列においては“1”と、それぞれ排他的論理和(xor)を計算し(ステップ235)、この計算結果(行及び列の各16画素列)の先頭と中央に“1”を挿入する(ステップ236)。このようにして、行及び列それぞれに18画素列を形成することで各文字画像に対応して形成する下線(罫線パターン)を求める。そして、文書画像復元部23は、ステップ231〜236により証明書画像5に含まれる文字画像から求めた下線と、文字画像情報51に含まれていた下線53とを比較する(ステップ237)。比較した結果、いずれかの行、列に2箇所以上の不一致が検出された場合(ステップ238でY)、誤り訂正を行うことはできないため、文字画像の復元は不能、すなわち画像復元エラーと判断する(ステップ242)。また、行及び列が共に1箇所だけ不一致であった場合(ステップ239でY)、不一致とされた行と列の交点にある画素の値に誤りがあると判断し、その画素値を反転する。また、行または列の一方だけに1箇所だけ不一致であった場合(ステップ240でY)、不一致とされた行または列の下線にある画素値に誤りがあると判断し、その下線部分の画素値を反転する。なお、不一致がない場合は、誤りがないと判断する。
【0042】
以上のようにして、文書画像復元部23が読み取った文字画像情報51を正確に復元すると、署名検証部24は、次のようにして署名検証を実施する(ステップ250)。すなわち、ステップ220において抽出された情報から署名者の公開鍵証明書を取得し、認証局の公開鍵証明書の公開鍵で検証することで真正を確認する。そして、署名を署名者の公開鍵で復号することによって文字画像情報のダイジェストを得る。一方、ステップ230において復元した文字画像情報を、コード画像生成部13が用いた所定のダイジェスト関数を用いて文字画像情報のダイジェストを生成する。そして、それぞれの処理により得たダイジェストを比較する。この比較した結果、一致していれば、署名対象の文書は、真正な文書であると判定する。一方、不一致の場合、また文字画像情報復元処理で画像復元エラーが発生していた場合には、署名対象の文書は、真正な文書でないと判定する。なお、署名検証の結果、真正であると判定した場合に署名検証装置20のディスプレイ38に表示されるイメージ検証結果画面の例を図12に示す。
【0043】
なお、本実施の形態では、文字画像の誤り訂正データを各文字画像の下線として文字画像情報51に含めるようにしたが、文字画像と誤り訂正データとの対応付けができていれば、誤り訂正データを下線として画像内に記録しなくてよい。例えば、文字画像情報内に誤り訂正データ記録用領域を設けるなどしてもよい。
【0044】
また、証明書画像5を取り込むための手段として、スキャナ4以外に画像処理装置や携帯電話を使用可能であると前述したが、CPU及びRAM搭載の画像処理装置や、携帯電話等によって署名検証装置20を構成することは可能である。
【0045】
以下に、前述した実施の形態を適用したシステムの例を示す。
【0046】
図13は、本実施の形態を商品検査に適用した場合に署名装置10が生成した証明書画像5を商品のパッケージに貼り付けた例を示した図である。商品に関しては、商品提供者が商品の商品コード、シリアル番号を含む情報を署名して記録したり、検査員が検査の結果を署名して記録したりする場合があるので、このような場合は、図13に例示したように複数の証明書画像5が貼り付けられることになる。このような場合、例えば、検査結果の署名検証を行いたい者は、検査結果の内容が視認可能な状態にあるので、複数の証明書画像5から署名検証を行うべき証明書画像5を見つけ出す。そして、その証明書画像5をデジタルカメラや携帯電話のカメラ等を用いて撮影し、その撮像データを署名検証アプリケーション搭載のコンピュータに転送して署名検証を行う。携帯電話であれば、署名検証アプリケーションを搭載することによって携帯電話のみで署名検証を行うようにしてもよい。
【0047】
図14は、署名装置10が生成した証明書画像5を家庭訪問員への家庭立ち入り時の携帯する依頼書に適用した場合の例を示した図である。家庭では、市の職員や電力会社、ガス会社の社員を名乗る不正な訪問者から身を守るために見知らぬ訪問者は入室させないケースが増えている。しかし、緊急事態や異常事態の発生で本当に家庭に入る必要がある場合に、正当な職員等でさえ必要な対応ができない場合が起こり得る。そこで、本実施の形態における署名装置10を用いて依頼書を作成し、その訪問が正式に許可を受けたものであることを証明する。すなわち、訪問員は、依頼書を携行し訪問先の家庭で提示する。家庭では、携帯電話に組み込まれた署名検証プログラムによって署名検証を行い、依頼書の真正性を確認する。
【図面の簡単な説明】
【0048】
【図1】本発明に係る情報処理システムの一実施の形態を示したブロック構成図である。
【図2】本実施の形態における署名装置及び署名検証装置をそれぞれ形成するコンピュータのハードウェア構成図である。
【図3】本実施の形態における署名処理を示したフローチャートである。
【図4】本実施の形態における署名処理に含まれる署名対象文書画像生成処理を示したフローチャートである。
【図5】本実施の形態における署名処理に含まれるQRコード生成処理を示したフローチャートである。
【図6】本実施の形態において用いるイメージ作成画面の例を示した図である。
【図7】本実施の形態において署名対象文書画像を生成する手順を説明するために用いる概念図である。
【図8】本実施の形態における署名装置が生成した証明書画像を用紙に印刷した場合の例を示した図である。
【図9】本実施の形態における署名検証処理を示したフローチャートである。
【図10】本実施の形態における署名検証処理に含まれる署名対象文書画像復元処理を示したフローチャートである。
【図11】本実施の形態におけるイメージ検証画面の例を示した図である。
【図12】本実施の形態におけるイメージ検証結果画面の例を示した図である。
【図13】本実施の形態に署名システムを商品検査に適用した場合に証明書画像を商品のパッケージに貼り付けた例を示した図である。
【図14】本実施の形態に署名システムを家庭訪問に適用した場合に証明書画像で生成した依頼書の例を示した図である。
【符号の説明】
【0049】
1 認証局、2 ネットワーク、3 プリンタ、4 スキャナ、5 証明書画像(印刷用画像)、6 用紙、10 署名装置、11 文書画像生成部、12 署名部、13 コード画像生成部、14 画像合成部、15 印刷実行部、16 文書データ記憶部、20 署名検証装置、21 画像取込部、22 文書関連情報抽出部、23 文書画像復元部、24 署名検証部、25 画像記憶部、31 CPU、32 ROM、33 RAM、34 ハードディスクドライブ(HDD)、35 HDDコントローラ、36 マウス、37 キーボード、38 ディスプレイ、39 入出力コントローラ、40 ネットワークコントローラ、41 内部バス。
【特許請求の範囲】
【請求項1】
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、
署名対象文書画像のデジタル署名を生成する署名生成手段と、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、
を有することを特徴とする情報処理装置。
【請求項2】
請求項1記載の情報処理装置において、
前記文書画像生成手段は、画素の行方向の誤り訂正データの画素列と画素の列方向の誤り訂正データの画素列とを並べて、文字画像データに含まれる当該文字画像の近傍に現れるよう署名対象文書画像に含めることを特徴とする情報処理装置。
【請求項3】
請求項2記載の情報処理装置において、
前記文書画像生成手段は、画素の行方向及び列方向それぞれの誤り訂正データの画素列に少なくとも1画素分の傾き補正データを付加することを特徴とする情報処理装置。
【請求項4】
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、
を有することを特徴とする情報処理装置。
【請求項5】
第1の情報処理装置と、
第2の情報処理装置と、
を有し、
前記第1の情報処理装置は、
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、
署名対象文書画像のデジタル署名を生成する署名生成手段と、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、
を有し、
前記第2の情報処理装置は、
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、
を有することを特徴とする情報処理システム。
【請求項6】
コンピュータに、
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段、
署名対象文書画像のデジタル署名を生成する署名生成手段、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段、
として機能させることを特徴とするプログラム。
【請求項7】
コンピュータに、
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段、
として機能させることを特徴とするプログラム。
【請求項1】
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、
署名対象文書画像のデジタル署名を生成する署名生成手段と、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、
を有することを特徴とする情報処理装置。
【請求項2】
請求項1記載の情報処理装置において、
前記文書画像生成手段は、画素の行方向の誤り訂正データの画素列と画素の列方向の誤り訂正データの画素列とを並べて、文字画像データに含まれる当該文字画像の近傍に現れるよう署名対象文書画像に含めることを特徴とする情報処理装置。
【請求項3】
請求項2記載の情報処理装置において、
前記文書画像生成手段は、画素の行方向及び列方向それぞれの誤り訂正データの画素列に少なくとも1画素分の傾き補正データを付加することを特徴とする情報処理装置。
【請求項4】
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、
を有することを特徴とする情報処理装置。
【請求項5】
第1の情報処理装置と、
第2の情報処理装置と、
を有し、
前記第1の情報処理装置は、
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段と、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段と、
署名対象文書画像のデジタル署名を生成する署名生成手段と、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段と、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段と、
を有し、
前記第2の情報処理装置は、
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段と、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段と、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段と、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段と、
を有することを特徴とする情報処理システム。
【請求項6】
コンピュータに、
署名対象の電子文書から視認可能な文書画像データを生成する画像データ生成手段、
文書画像データと、文書画像データに含まれる各文字画像の誤り訂正データと、を含む署名対象文書画像を生成する文書画像生成手段、
署名対象文書画像のデジタル署名を生成する署名生成手段、
署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づきコード画像を生成するコード画像生成手段、
署名対象文書画像とコード画像とを合成することによって印刷用画像を生成する印刷用画像生成手段、
として機能させることを特徴とするプログラム。
【請求項7】
コンピュータに、
署名対象の電子文書から視認可能に生成された文書画像データ及び文書画像データに含まれる各文字画像の誤り訂正データを含む署名対象文書画像と、署名対象文書画像に関する情報及び署名対象文書画像のデジタル署名を含む文書関連情報に基づき生成されたコード画像と、を含む印刷用画像を媒体から読み取る読取手段、
署名対象文書画像に含まれる誤り訂正データを用いて、署名対象文書画像に含まれる文書画像データを復元する復元手段、
印刷用画像に含まれるコード画像から署名対象文書画像のデジタル署名を少なくとも含む文書関連情報を抽出する抽出手段、
前記復元手段により復元された文書画像データと、前記抽出手段により抽出された署名対象文書画像に含まれる文書画像データとを用いて署名検証を行う署名検証手段、
として機能させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2009−171432(P2009−171432A)
【公開日】平成21年7月30日(2009.7.30)
【国際特許分類】
【出願番号】特願2008−9480(P2008−9480)
【出願日】平成20年1月18日(2008.1.18)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成21年7月30日(2009.7.30)
【国際特許分類】
【出願日】平成20年1月18日(2008.1.18)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]