(57)【要約】【課題】従来技術における課題は、偽造困難な印刷物を発行する為には、特殊な用紙や特殊なインクが必要であった為、印刷場所や印刷装置を制限する必要があった。また、検証者端末は元本データを管理するデータベースに問い合わせる必要があるため、オンライン接続が必須であった。【解決手段】台紙発行／管理者システムに、台紙の識別番号を管理する手段と、台紙データにコード化した識別番号を書き込む手段を設けた。さらに、証明書発行者システムに、台紙データに上書きする個別データに対して証明書発行者の電子署名を付与する手段と、暗号化した個別データを情報処理装置で読み取り可能なコード情報に置き換える手段と、個別データに画像データが含まれる場合は台紙の識別番号を電子透かしとして挿入する手段と、台紙データ上に前記処理を行なったコード情報と画像データ及び個別データとを重ならないように配置する手段とを設けた。【選択図】  図２
2004199419.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、証明書の用紙に関するデータを作成する用紙センタと接続され、証明書を発行する証明書センタを用いた証明書データ利用方法において、
前記証明書発行センタが、前記ネットワークを経由して前記用紙発行センタから用紙データを受信し、
前記証明書発行センタが、前記用紙データに証明対象に応じた個別情報を関連付けることによって証明書データを作成し、
前記証明書発行センタが、前記証明書データを記憶装置に記憶し、
前記証明書発行センタが、前記証明書データを記録した証明書をネットワークを介して発行し、
発行された前記証明書の有効性を確認する場合、前記証明書に記録された前記用紙データに基づいて確認を実行することを特徴とする証明書データ利用方法。
【請求項２】
請求項１に記載の証明書データ利用方法おいて、
上記証明書の有効性を確認する処理は、記録された前記証明書データのうち個別情報を読み取り、前記証明書に記録された個別情報を読み取り、前記個別情報同士を比較して真贋を検証し、さらに前記証明書に記録された用紙データの真贋を電子署名によって検証することにより実行することを特徴と証明書データ利用方法。
【請求項３】
請求項１に記載の証明書データ利用方法において、
前記ネットワークには前記証明書を利用する利用者装置が接続され、
前記利用者装置で、記憶された前記証明書データに基づいた印刷物を印刷し、
前記用紙発行センタから用紙データを入手し、前記印刷物に記載されたデータと用紙データの排他論理和が個別情報であるかを検証することにより、前記印刷物の真贋を検証することを特徴と証明書データ利用方法。
【請求項４】
請求項３に記載の証明書データ利用方法において、
前記用紙データが、単色のドットパターンとして表現されることを特徴とする証明書データ利用方法。
【請求項５】
請求項３に記載の証明書データ利用方法において、
前記用紙データが、画素の塗り分けパターンとして表現されることを特徴とする証明書データ利用方法。
【請求項６】
請求項５に記載の証明書データ利用方法において、
前記印刷物に記録される個別情報を画素の用紙データの塗り分けパターンに反映することを特徴とする証明書データ利用方法。
【請求項７】
請求項３に記載の証明書データ利用方法において、
前記用紙データが、ボロノイ図の塗り分けパターンとして表現されることを特徴とする証明書データ利用方法。
【請求項８】
請求項７に記載の証明書データ利用方法において、
前記印刷物に記録される個別情報をボロノイ図の塗り分け色として反映されることを特徴とする証明書データ利用方法。
【請求項９】
証明書の有効性を判定する証明書有効性判断方法において、
前記証明書の第１の領域に対して、第１の形式で当該証明対象物の第１の個別情報を記録し、
前記証明書の第２の領域に対して、第２の形式で当該証明対象物の第２の個別情報を記録し、
前記第１の個別情報および前記第２の個別情報を電子的に記録し、
前記証明書の有効性を判断する場合、電子的に記録された前記第１の個別情報および前記第２の個別情報と前記証明書に記録された前記第１の個別情報および前記第２の個別情報を比較することにより実行することを特徴とする証明書有効性判断方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、所定の内容の証明(認証)を実行する技術に関する。この中でも特に、オンラインで交付された証明書データを利用者のプリンタで印刷することを可能とする電子証明書データ発行方法に係り、特に検証者が証明書発行センタに問い合わせをすることなく印刷物の真贋を検証することを可能とする電子証明書データ発行方法に関する。
【０００２】
【従来の技術】
電子証明を含む証明の従来技術には、以下のものがある。例えば、印刷物の真贋や有効性確認をオフラインで行なうものがある（特許文献１参照）。また、証明を求める申請者側でプリントした印刷物が公的証明書として使用するものがある（特許文献２参照）。さらに、個人を特定することができる情報と証明書データを関連付けて管理するデータベースと、キー情報をもとにして証明書データを検索する技術もある（特許文献３参照）。
【０００３】
【特許文献１】特開2001-134672号公報
【特許文献２】特開2001-357154号公報
【特許文献３】特開2002-279099号公報
【０００４】
【発明が解決しようとする課題】
かかる従来技術においては、次のような課題がある。
特許文献１は、非接触で電子的に読み書き可能なデータキャリア機構を組み込んだ印刷記録媒体である電子シートを使用する。つまり、特別な電子シートというものが必要になる。また、特許文献２は、コピー不可用紙（複写機でコピーを取ると、複写物であることを示す文字やパターンが浮き上がって表示される特殊な用紙）を使用する。つまり、特許文献２でも特別な媒体が必要になる。
【０００５】
したがって、特許文献１の場合は、データキャリア機能に書き込む手段を持った特殊な印刷装置が必要になる。また、特許文献２の場合は、特殊な印刷装置を用いる必要は無いが、特殊な用紙を印刷装置に充填する必要があることから、発行窓口は限定されてしまうという課題があった。
【０００６】
本発明の第1の目的は、特殊な用紙や特殊な印刷装置を使うのではなく、一定の性能を満たすプリンタであれば、利用者の所有するプリンタからでもオンラインで証明書を発行できる仕組みを提供することである。
【０００７】
また、特許文献３は、オンラインで身分証明書の申請と発行が可能になるというものである。したがって、検証者端末は前記データベースとネットワークで繋がれており、いつでも証明書データを検索できる必要がある。
【０００８】
本発明の第2の目的は、検証者端末が証明書データを管理するデータベースにアクセスできない環境であっても、証明書の有効性を検証できる仕組みを提供することである。
【０００９】
さらに、本発明の第3の目的は、情報処理装置を持たない検証者であっても、印刷物の真贋を判定することができる証明書データを発行する仕組みを提供することである。
【００１０】
【課題を解決するための手段】
本発明は、証明書のうち第１の領域と第２の領域で、異なる形式の証明のためのデータを埋め込む。第１の領域と第２の領域は、それぞれの領域に記載される情報の種類に応じて区別されることが含まれる。さらに、第１の領域と第２の領域には、記載されるものの密度により区別されることが含まれる。例えば、第１の領域には、写真を含む画像領域、第２の領域には証明を希望する者の固有情報が記載された文字領域が含まれる。データの形式には、透かし情報、文字情報に応じた点を含む塗りつぶし技術(塗潰しパターン)、埋め込み暗号が含まれる。
【００１１】
さらに詳細には、本発明には第１の課題を解決するために、以下の構成をとるものも含まれる。
証明書発行者システムに、用紙データに上書きする個別データに対して証明書発行者の鍵で暗号化する手段と、暗号化した個別データを情報処理装置で読み取り可能なコード情報に置き換える手段と、このコード情報を用紙データに埋め込む手段と、個別データに画像データが含まれる場合は用紙の識別番号を電子透かしとして挿入する手段とを設けた。
【００１２】
また、本発明では第2の課題を解決するために、以下の構成をとることも含まれる。
用紙発行／管理者システム（証明書との区別を明確にするために、以降では用紙を台紙と表現する）に、台紙の識別番号を管理する手段と、台紙データにコード化した識別番号を書き込む手段を設け、証明書発行者システムに、台紙データに上書きする個別データに対して証明書発行者の電子署名を付与する手段と、暗号化した個別データを情報処理装置で読み取り可能なコード情報に置き換える手段と、個別データに画像データが含まれる場合は台紙の識別番号を電子透かしとして挿入する手段と、台紙データ上に前記処理を行なったコード情報と画像データ及び個別データとを重ならないように配置する手段とを設けた。
【００１３】
さらに、本発明には第3の課題を解決するために、以下の構成をとるものも含まれる。
用紙発行／管理者システムに、第2の課題を解決する手段を設け、証明書発行者システムに、コード化した個別データを台紙データに書き込まれている識別番号のコードと重ならないように配置する手段と、第2の課題を解決する手段とを設けた。
【００１４】
【発明の実施の形態】
以下、本発明の実施例を詳細に説明する。
【００１５】
図１は、本発明によってオンライン発行される証明書の例を示した説明図である。図1の証明書１００は、免許証を例にしたものである。通常、証明書100には、顔写真を貼る領域１１０、住所などの個人に関係したデータを記載する領域１２０、許可証の種類や有効期限を記載する領域１２０、それ以外の部分に発行部署の代表者の署名や印が記載されている。ただし、営業許可証のような証明書には顔写真を貼る領域はないので、証明書１００のフォーマットは上記の構成に限定されるものではない。また、オンライン発行される証明書は、免許証や営業許可証に限定されるものではなく、国民が行政機関に対して申請し、役所で交付される各種許可証や証明書、あるいは銀行など民間機関に対して申請し、民間機関から発行される各種証明書、民間企業が従業員に対して発行する身分証明書などであっても良い。
【００１６】
図2は、本発明に関係するシステムの接続関係を示すシステム構成図である。図２に示す各装置は、いわゆるコンピュータであり、記憶媒体に格納されるプログラムをメモリに読み出し、プロセッサでプログラムに従った処理を実行する。
【００１７】
本発明における関与者は、証明書の依頼者と台紙の発行管理者と証明書の発行者と証明書の検証者である。そして、特に、証明書発行者システム２００と依頼者システム２２０とはネットワーク２４０で繋がっているが、証明書発行者システム２００と検証者システム２３０は直接的には接続されていない場合を想定する。
【００１８】
例えば、税務署で発行される納税証明書を金融機関の融資審査に使うことがあるが、電子納税証明書が発行されることになったとしても、民間の金融機関が行政のネットワークに入って税務署の電子署名を検証することはできないであろうというのが一般的な考え方である。この場合、検証者システム２３０において証明書発行者システム２００が発行した証明書の有効性を検証するために、台紙発行／管理者システム２１０が必要になり、検証者システム２３０と台紙発行／管理者システム２１０とがネットワーク２５０で接続される。
【００１９】
図3及び図4は、本発明において発行される証明書の特徴を抽出して示した説明図である。図3は、図1に示す証明書の例において、印刷された証明書の真贋を検証するために付与された情報を追加したものである。また、図4は、図1の領域１２０と領域１３０に対して施される処理について概念的に示した説明図である。
【００２０】
まず、図3について説明する。図1において、証明書１００を構成する幾つかのデータ領域について説明した。図3では、前記データ領域を除いた空白の領域に対し、文字情報を記載する領域３００とコード情報を書き込む領域３３０を設けている。ここで、文字情報とは英数・かな・漢字等の文字で表現された情報であり、人間が直接に読み取ることができるが、コード情報とはバーコードや2次元コードのような情報処理装置を使って読み取ることができる情報を指す。
なお、2次元コードとは、バーコードを積み重ねたスタック型と、同じ大きさのセルを黒白で縦横に配置したマトリックス型がある。これら以外の２次元バーコードおよびそれと同様に情報を記録する手法も本発明に含まれる。
【００２１】
また、文字情報を記載する領域とコード情報を書き込む領域は、それぞれ２つの領域に分けられている。１つの領域には、台紙を管理する為の台紙ＩＤ、台紙発行時刻及び台紙発行時の署名等のデータが台紙発行／管理システム２１０において記載される。もう１つの領域には、証明内容の特徴量、証明内容を上書きした時刻及び上書き時の署名等のデータが証明書発行者システム２００において記載される。
【００２２】
図４は、台紙発行／管理システム２１０において、台紙ＩＤや台紙発行時刻及び台紙発行時の署名データ等のデータ４００をコード化し、領域１２０に書き込んだ時のイメージを示すものである。領域１２０の一部領域４１０を拡大すると、黒いドットとして表示される画素４２０と、空白として表現される画素４３０とがある。例えば、文字が３２ビットで表現されるとしたとき、このデータを２進数で表現すると１６桁になるから、１６ドット分の白黒（２進数で０を白、１を黒で表現する）で１文字を表現することができる。データ４００は、複数の文字列で構成されるので、上記の方法でコード化すると領域１２０は４１０に示すパターンで塗潰される。ここでは、データ４００を単純にコード化する例を述べたが、データの偽造を防ぐという観点から、データ４００を暗号化した上で、コード化するのが望ましい。また、読み取りエラーを考慮し、データを繰り返し記載したほうが望ましい。
【００２３】
図8は、情報処理装置による読み取りを考慮したパターンの説明図である。前記の方式では、１文字を１６ドット分で表現すると決めており、同じ文字列であれば同じパターンが描かれる。しかし、文字と文字の切れ目を区別できない可能性があり、パターンから元になったデータを読み出すような用途には不向きと考えられる。図８では、塗潰し領域を５×５のマトリックス８００に分割し、そのマトリックスの左上の画素（８１０，８３０，８４０，８５０）が基準点として必ず塗潰されるものとする。また、前記の１６ドットを４×４のマトリックスに対応させる。このようにすると、文字列の情報は画素８２０，８６０，８７０，８８０のように無秩序に分布することになるが、画素８１０，８３０，８４０，８５０は規則的に配列される為、データの切れ目が容易に見つけられる。ただし、前記の2次元コードにも様々なパターンが提案されているように、図8に示す方式に限定されるものではない。なお、よりシンプルに、所定の間隔ごとに塗潰しを行い、これを上書きされる文字（その他のデータ）と塗潰される点、ドットを含む領域との関係を記憶しておくことも本発明に含まれる。
【００２４】
一方、図5は、コード化したパターンで領域を塗潰す方法について示した説明図である。データ５１０の内容をコード化して領域１２０を塗潰す場合、同じパターンを何度も繰り返し使うことになる。例えば、パターン５２０とパターン５３０が同じだと分かってしまうと、パターン５２０の一部が上書き文字によって消されたとしても、パターン５３０を使って上書き文字を消し去ることが可能になってしまう。これを防止する方法として、内容５１０を暗号化する為に数種類の秘密鍵を用意し、秘密鍵１（５５０）で暗号化した暗号データ１を作成し、これをコード化したパターンを領域５２０に描く。さらに、暗号データ１を秘密鍵２（５６０）で暗号化した暗号データ２を作成し、これをコード化したパターンを領域５３０に描く。このような処理を繰り返すことによって領域１２０を塗潰す。このようにすると、領域５２０を塗潰したパターンと領域５３０を塗潰したパターンは異なることになるので、前記のような使い方はできなくなる。
【００２５】
図６は、証明書をオンラインで発行するプロセスを示す基本的な処理フローである。図７は、発行された証明書を印刷した印刷物の真贋を検証するプロセスを示す基本的な処理フローである。
【００２６】
図9は、台紙の唯一性を保障するために発行や利用を管理する台紙発行／管理システムのシステム構成図である。
【００２７】
図10は、台紙の上に個別データを上書きし、個別の証明書を発行するための証明書発行者システムのシステム構成図である。図11は、証明書を提出する窓口において、証明書の真贋を検証するための検証者システムのシステム構成図である。図12は、証明書を要求する依頼者システムのシステム構成図である。
【００２８】
証明書発行者システム２００は、図6のステップ６００において、依頼者システム２００から証明書発行依頼を受け付ける。そして、証明書発行システム２００は、ステップ６１０において、台紙発行／管理者システム２１０に対して台紙の発行を依頼する。
【００２９】
ステップ６１０の依頼に対し、台紙発行／管理者システム２１０は、ユニークな台紙ＩＤを生成する。例えば、台紙発行の依頼を受けた日時と用途識別データと10桁の乱数を加えた文字列を台紙ＩＤとすれば、台紙ＩＤを推定することは難しいと考えられるし、台紙ＩＤのユニーク性を保つこともできる。
【００３０】
図9に示す台紙発行／管理者システムにおいて、前記台紙ＩＤは蓄積手段９３０の領域９３１に格納される。そして、台紙ＩＤに対応して、領域９３２に台紙の発行時刻、領域９３３に台紙発行時の署名データが格納される。また、台紙に付いている属性情報は、領域９３４に有効期限データ、領域９３５に用途の識別データ及び連番が格納される。さらに、図4あるいは図5において台紙ＩＤ等のデータを暗号化する場合、領域９３６に暗号鍵を格納する。
【００３１】
ここで、署名データとは、図1に示す証明書のフォーマットや共通的な記載内容に関して、保障するためのデータである。すなわち、基本的な考え方として、証明書発行者システム２００は、領域１１０、領域１２０、領域１３０に記載される写真や文字列に関して保障し、それ以外の共通部分に関しては、台紙発行／管理者システムが保障する。
【００３２】
台紙発行／管理者システム２１０は、ステップ６２０において、台紙の作成を行なう。すなわち、図１に示した台紙データ１００（共通部分）を作成する。さらに、図3における領域３１０及び領域３４０に台紙ＩＤや台紙の発行時刻及び台紙発行時の署名データを記入する。また、前述の方式で領域１２０及び領域１３０に台紙データを記入する。なお、台紙のデータをコード化する為のアルゴリスムは一時記憶手段９２０に保持され、ＣＰＵと呼ばれる制御手段９００において実行される。
【００３３】
次に、台紙発行／管理者システム２１０は、ステップ６３０において、員数の更新を行なう。これは、用途（識別データ）毎に発行枚数を管理するためである。すなわち、台紙発行／管理者システムにおいて、台紙の員数を管理し、その台紙に個別情報を貼り付けることで、結果的に証明書の員数や唯一性保証が可能となる。
【００３４】
次に、台紙発行／管理者システム２１０は、ステップ６４０において、発行した台紙データを、通信手段９１０を使って証明書発行者システム２００に送信する。
【００３５】
証明書発行システム２００は、ステップ６５０において通信手段１０１０を使って前記台紙データを受け取り、該台紙データに個別情報を追記する。
なお、個別情報は、証明書発行者システム２００の蓄積手段１０３０に記録されており、領域１０３２に証明書の中身にあたる証明内容データ、領域１０３１に証明書が作成された証明内容記入時刻、領域１０３３に証明書データの要約である証明内容特徴量、領域１０３４に証明内容データに対する署名データが記録されている。また、蓄積手段１０３０には、台紙の情報を管理する部分もあり、領域１０３６に台紙ＩＤ、領域１９３７に台紙データが記録されている。
【００３６】
そして、領域１１０に画像を添付、領域１２０及び領域１３０に個別情報を上書きする。また、上書き内容の要約情報を後述する方法で記入する。さらに、領域３２０に署名した上書き内容を記入、領域３５０に前記内容をコード化した情報を書き込む。なお、画像１１０には、台紙ＩＤ等の情報を電子透かし技術を用いて挿入する。電子透かしの手法については画像の種類（二値画像、多値画像、自然画像等）応じた方式がいくつか提案されている。例えば、森北出版株式会社から出版されている「電子透かしの基礎  マルチメディアのニュープロテクト技術  松井甲子雄薯（ＩＳＢＮ４−６２７−８２５５１−Ｘ）」に詳細が書かれているので、ここでは具体的な方法を省略する。
【００３７】
なお、個別情報をコード化する為のアルゴリスムは一時記憶手段１０２０に保持され、ＣＰＵと呼ばれる制御手段１０００において実行される。
依頼者システム２２０は、ステップ６６０において、通信手段１２１０を用いて証明書データを入手し、電子的な証明書として表示装置１２５０に表示することができる。また、ステップ６７０において、証明書データを出力装置１２６０に送り、紙に印刷することもできる。
【００３８】
一方、図7は印刷物の真贋を検証するプロセスを示すものである。検証者システム２３０は、ステップ７００において、入力手段１１５０を用いて印刷物である証明書の読み込みを行なう。そして、ステップ７１０において、台紙発行者のローカル環境でのデータ検証を行なう。これには、検証者システム２３０の蓄積手段１１３０にある領域１１３２に記録されているコード化されたパターンを利用する。すなわち、検証者システム２３０は、図4あるいは図5のパターンを台紙ＩＤと対応付けて保管してあるので、台紙に上書きされた証明書データと保管してあるパターンを比較することができる。ただし、台紙発行／管理者システムと同様の仕組みがあれば、検証者システムにパターンを記録しておく必要は無い。相違点が上書きされたデータであれば改竄されていないと判定できるが、本来は台紙に付いていたはずのパターンに不足がある場合は改ざんの可能性があるとみなすことができる。すなわち、本方式による証明書を改竄するためには、台紙の上に上書きされたデータを消してその上に別のデータを記入する必要があり、上書きデータを消す際に台紙に書かれていたパターンを一緒に消してしまうからである。
【００３９】
検証者システム２３０は、上記の詳細なチェックをステップ７２０で行ない、改竄の可能性がある場合はステップ７３０において台紙の真贋検証を台紙発行／管理者システム２１０に依頼する。これには、証明書発行者の公開鍵、台紙発行者の公開鍵を利用する。したがって、検証者システムに前記公開鍵が無い場合は、通信手段１１１０を用いて、台紙発行者／管理者システム２１０に公開鍵を要求するか、領域３３０のコード化された情報を読み取り、この情報に付与されている電子署名の署名検証を依頼する。
【００４０】
台紙発行／管理者システム２１０は、ステップ７４０において署名検証を行ない、その結果をステップ７５０で返送する。
なお、本実施の形態において、証明書発行者システム、台紙発行／管理者システム、検証者システム、依頼者システムは、いわゆるパーソナルコンピュータ、ワークステーション等が用いられ、このようなコンピュータ上で動作するプログラムにより上述した各手段が機能的に実現される。
【００４１】
また、以上に述べた実施の形態では、検証者システム２３０にプログラムが予めインストールされていた。すなわち、検証者システムには特別なプログラムをインストールしなければコード化されたパターンを知ることができない仕組みであった。
【００４２】
ところが、オブジェクト指向性を有するプログラミング用語の技術を利用し、特別なプログラムに相当する処理を、ネットワークを通じてｗｅｂブラウザにダウンロードされ、このブラウザのウィンドウに埋め込まれて実行される上記のプログラミング言語で示されるプログラムとして実装し、該プログラムを台紙発行／管理者システムからダウンロードして利用できれば、インストール作業が不要となる。ネットワークに接続されているほとんどのコンピュータには、汎用ブラウザがインストール済みであるから、この技術を利用すると利用者に特別な負担を強いる必要が無くなる。
【００４３】
なお、ネットワーク２４０，２５０は、インターネットや電話回線、無線通信網などのいずれのネットワーク、あるいはそれらの組み合せでも良く、ネットワークの種類や規模に限定されるものではない。
図１３及び図１４は、領域１２０及び領域１３０を塗潰すパターンの生成方法に関するフローチャートであり、図４、図５、図８とは異なるパターンを生成する。図１５は、この処理によって作成されるパターンの例を示すものである。また、図１６は台紙パターンに個別情報を上書きするための処理フローである。
ところで、図１３の処理によってパターンのカスタマイズを行なう前に、基本となるパターンの生成方法について簡単に述べる。例えば、基本パターンとして、領域内にある画素を3色（色１，色２，色３）で塗り分けたものを作成する。このとき、上・下・左・右で隣り合う画素が必ず異なる色となるように塗り分ける。最も簡単な塗り方は、色１及び色２及び色３を順番に繰り返し塗っていくことであり、最上段を横一列に塗り分ける。次に、一つ下の列について、色２を最左端として、色２，色３，色１の順に繰り返し塗潰す。さらに、その下の列については、色３を最左端として、色３，色１，色２の順に繰り返し塗潰す。これを最下列まで繰り返せば、領域１２０及び領域１３０を３色で塗潰すことができる。これを基本パターンと呼ぶことにする。なお、この色は、プリンタで用いられる原色をそれぞれ用いてもよい。例えば、シアン、マゼンダ、イエロー、ブラックから３色を選択してもよいし、３色に限定せず４色を用いてもよい。
【００４４】
次に、基本パターンに台紙ＩＤ等の個別情報を埋め込む処理を行なう。この処理を示すのが図１３である。
【００４５】
台紙発行／管理者システム２１０は、ステップ１３００において領域１２０あるいは領域１３０をスキャンするための初期値設定を行なう。例えば、左上の画素を初期値と設定する。ステップ１３１０において、対象画素の左に位置する画素と真上に位置する画素に関して画素色を調べる。この２つの画素の色が同じであればステップ１３１５に処理を進め、異なる場合はステップ１３５０に処理を進める。
【００４６】
ステップ１３１５では画素に対して情報を埋め込むかどうかを判定する。ただし、ここでいう情報とは、個別情報の一部である。例えば、台紙ＩＤが“１１”であり、この台紙ＩＤを画像中に埋め込むこととする。ところで、“１１”は１０進法で表現されたものであるが、これを２進数で表現すると“１０１１”となる。したがって、“１１”という値を画素に埋め込むためには少なくとも４つの画素が必要となり、４つの画素にそれぞれ“１”，“０”，“１”，“１”を埋め込むことができれば、画像に個別ＩＤを埋め込んだといえることになる。ここで、ステップ１３１５に戻り、対象となっている画素に埋め込もうとしている値が“１”であるか“０”であるかを調べ、“１”であった場合はステップ１３２０に進み、“０”であった場合はステップ１３５０に進むものとする。
ステップ１３２０では、対象となっている画素の左側の画素及び真上の画素の色を調べ（当然ながら、この２つの画素の色は同じであるからどちらか一方を調べればよい）、その色が色３であったなら、ステップ１３２５において対象画素を色２で塗潰す。
【００４７】
色３でなく、色１であった場合はステップ１３３０で判定し、ステップ１３３５において対象画素を色３で塗潰す。色３でも色１でもない場合は、必然的に色２であるから、ステップ１３４０において対象画素を色１で塗潰す。
ステップ１３５０は、情報を埋め込むことができない画素の色決めに関する処理であり、図１４において説明する。
【００４８】
そして、対象画素の色が決まったならば、ステップ１３６０においてスキャンする画素を一つだけ右に移動する。ただし、最右端であればステップ１３６５において、ステップ１３７０に進み、それ以外の時はステップ１３０５に戻る。同様に、ステップ１３７０では、スキャンする画素を一列だけ下段に移動し、ステップ１３７５において最下段であれば処理を終了するが、それ以外のときはステップ１３０５に戻って処理を継続する。
【００４９】
図１４は、ステップ１３５０について詳細に示したフローである。ステップ１４１０において、対象画素の塗潰し色を色１に設定する。ステップ１４１５において、対象画素の左側と真上の画素に関して色を調べ、その両方ともが色１でなければ（すなわち、両方とも色２、両方とも色３、１つが色２でもう１つが色３）、対象画素を色１で塗潰す。ステップ１４１５において少なくとも１つが色１であった場合は、ステップ１４２５において塗潰し色を色２に設定する。そして、ステップ１４３０において前述と同様に色を調べ、対象画素の左側と真上の画素が色２でなければ、ステップ１４３５において対象画素を色２で塗潰す。ステップ１４３０において色２が含まれる場合は、対象画素の左側と真上の画素のどちらかが色１であり、残りが色２ということであるから、ステップ１４４０において対象画素を色３で塗潰す。このような処理を行なうことで、隣り合う画素は必ず異なる色で塗潰すというルールを守った上で、基本パターンに個別の情報を埋め込むことができる。
【００５０】
図１５の上段は、このようにして作成した台紙のパターン例である。また、下段はこの台紙の上に「う」という字を上書きし、さらに「う」のダイジェスト情報を台紙に埋め込んだ例を示す図である。
【００５１】
上段において、領域１５００の画素１５１０は色１、画素１５２０は色２、画素１５３０は色３で塗られており、隣り合う画素は異なる色で塗潰されている。下段の図において、画素１５６０は文字が重なった部分である。下段では、上段の図において色１に塗られた部分に「う」という文字のダイジェスト情報を埋め込んだ例であり、色１がそのまま残された画素１５７０と、３色と異なる第４の色４で塗潰された画素１５８０が生じる。
【００５２】
図１６に、台紙に対して情報を埋め込む処理のフローを示す。ステップ１６００において、台紙データを読み込み、台紙上に個別データの文字等を上書きする。この時点で、画素１５６０のような文字と重なった画素は文字の色で塗潰す。
【００５３】
ステップ１６２０において、例えば領域の最左上の画素を初期値として設定し、ステップ１６４０において、その対象画素が色１（ここでは色１を空白と表現）であるかどうかを判定する。色１であった場合は、埋め込もうとしている個別データを図１３の説明で述べたのと同じ方法で埋め込む。すなわち、ステップ１６５０において、埋め込む値が０であれば塗潰し色はそのままとし、埋め込む値が１であれば塗潰し色を色４とする。
【００５４】
そして、対象画素の色が決まったならば、ステップ１６６０においてスキャンする画素を一つだけ右に移動する。ただし、最右端であればステップ１６７０において、ステップ１６８０に進み、それ以外の時はステップ１６３０に戻る。同様に、ステップ１６８０では、スキャンする画素を一列だけ下段に移動し、ステップ１６９０において最下段であれば処理を終了するが、それ以外のときはステップ１６３０に戻って処理を継続する。
【００５５】
図１７〜図２４は、証明書の真贋判定を目視で可能とするための仕組みに関する説明図である。図４におけるドットパターンが斜線で塗られた画素１７１０や画素１７２０に相当する。この場合は、これらの画素１７１０や画素１７２０を用いてボロノイ図を作成する。ボロノイ図の作成方法に関しては、例えば、株式会社朝倉書店発行  岡部篤行・鈴木敦夫薯の「シリーズ  現代人の数理３  最適配置の数理（ＩＳＢＮ４−２５４−１２６０６−９）」に詳細な説明があるのでここでは省略する。
【００５６】
この方式に従えば、画素１７１０と画素１７２０の領域を分ける線分１７３０を決めることができ、画素１７１０とそれ以外のドットパターンで同様の処理を行なうと、領域１７４０を作成することができる。ボロノイ図を作成すると、パターンに含まれる各ドットについて、１つのドットを含む閉領域を定義することができる。
【００５７】
次に、図１８は、文字の局所的な形状から周囲の塗潰し色を決めるためのルールを示した図であり、このルールを「の」という文字に適用した例を図１９に示す。
【００５８】
図１８は、塗潰し色である色番号１８００と対応するパターン１８１０の関係を示した表である。２×２の画素からなる矩形を単位とした場合、矩形が文字によって塗潰されるパターンは１４通りとなる。このなかで、４つの画素すべてが塗潰された場合と、一つも塗潰されていない場合を除いた１２通りを４つに分類する。例えば、パターン１８２１、パターン１８２２、パターン１８２３に対応する色を１８２０とし、パターン１８３１、パターン１８３２、パターン１８３３に対応する色を１８３０とし、パターン１８４１、パターン１８４２、パターン１８４３に対応する色を１８４０とし、パターン１８５１、パターン１８５２、パターン１８５３に対応する色を１８５０とする。
【００５９】
このとき、図１９の矩形１９１０はパターン１８２１と同じであるから、空白部を色１８２０で塗潰す。また、矩形１９２０はパターン１８５２と同じであるから、空白部を色１８５０で塗潰す。さらに、矩形１９３０はパターン１８４２と同じであるから、空白部を色１８４０で塗潰す。このようにして文字「の」の周辺を塗潰すと図１９となる。ただし、２×２の画素からなる矩形の置き方は、領域の左上端から重ならないように配置するものとする。配置の基準点が変わるとパターンが変わってしまう為、基準は左上端に固定とする。
【００６０】
図２０は、さらに塗潰されていない部分の色を決めるために、４×４の矩形をつくり、前記と同じルールで塗潰す色をきめたものである。例えば、矩形２０１０はパターン１８２２と同じになるから、色１８２０で塗潰し、矩形２０２０はパターン１８２１と同じになるから色１８２０で塗潰す。
【００６１】
図２１は、図１７に示したドット１７１０やドット１７２０を含む矩形の塗潰し色を決めるために、図２０と図１７を重ねてドットに重なる位置に来る色を抽出したものである。ドット２１１０は色１８５０、ドット２１２０は色１８２０、ドット２１３０は色１８５０、ドット２１４０は色１８４０となる。また、図２２は、図２１で決めた色を使って、ボロノイ図で表現された領域を塗潰し、その上に文字を上書きしたものである。このように、文字の周囲が４色の色で塗り分けられる。
【００６２】
一方、図２３は文字「の」の一部を改竄したものであり、例えば領域２３００を塗潰して、文字を偽造している。この文字に関して図１８のルールを適用すると、ドット２３１０は色１８４０で塗潰される。そして、ボロノイ図で表現された領域の塗りわけを行なったものが図２４である。図２２では、ドット２２３０とドット２２５０は同じ色であり、境界線２２７０の両側が同じ色１８５０で塗潰されてしまう。図２４では、ドット２４３０とドット２４５０が異なるから、境界線の左側が色１８４０、右側が色１８５０となる。したがって、見た目で図２２と図２４の違いが判別するこも可能になる。このような色の変化は、文字の形の一部を改竄した場合だけでなく、位置を少しずらしただけでも起こりうる。
【００６３】
図２５は、局所的な形状を色で表現する方法を図１８のパターンにするのではなく、対象画素の周囲のどの程度が文字によって塗潰されているかできめるためのものである。対象画素２５００の周囲２５１０において、３０％未満であれば色２５２０、３０％以上６０％未満であれば色２５３０、６０％以上であれば色２５４０を塗潰し色とする。このようなルールであれば、対象画素と文字の近さによって何色を対応させれば良いかがより容易に推定できる。
【００６４】
【発明の効果】
以上に述べたように、本発明によれば、検証者端末が証明書データを管理するデータベースにアクセスできない環境であっても、証明書データに本発明を適用することによって、証明書の有効性を検証することが可能になり、特殊な用紙や特殊な印刷装置を使うことなくオンラインで証明書を発行できるようになる。
【図面の簡単な説明】
【図１】本発明によってオンライン発行される証明書の例を示した説明図である。
【図２】本発明に関係するシステムの接続関係を示すシステム構成図である。
【図３】図1に示す証明書の例において、印刷された証明書の真贋を検証するために付与された情報を記した説明図である。
【図４】図1の領域１２０と領域１３０に対して施される処理について概念的に示した説明図である。
【図５】図４における課題を考慮した塗潰し方法について示した説明図である。
【図６】証明書をオンラインで発行する処理に関する基本的な処理フローである。
【図７】印刷した証明書の真贋を検証する処理について示す基本的な処理フローである。
【図８】図４及び図５において情報処理装置による読み取りを考慮したドットパターンの例を示す説明図である。
【図９】台紙の唯一性を保障するために設けられた台紙発行／管理システムのシステム構成図である。
【図１０】台紙の上に個別データを上書きし、個別の証明書を発行するための証明書発行者システムのシステム構成図である。
【図１１】証明書を提出する窓口において、証明書の真贋を検証するための検証者システムのシステム構成図である。
【図１２】証明書を要求する依頼者システムが持つシステム構成図である。
【図１３】個別データが記載される領域に対して、基本パターンに台紙の固有値を書き込む処理であり、この領域の塗潰しパターンの生成方法に関するフローチャートである。
【図１４】図１３におけるステップ１３５０について詳細に示したフローチャートである。
【図１５】図１３に示す処理によって作成されるパターンの例を示した説明図である。
【図１６】台紙のパターンに個別データを上書きするための処理フローである。
【図１７】証明書の真贋判定を目視で可能とするための仕組みとしてボロノイ図を適用した例を示す説明図である。
【図１８】２×２の画素に対する塗潰しパターンとそれに対応する塗潰し色の関係を示した対応表である。
【図１９】図18の塗潰し対応表を、上書き文字の周囲に適用した例である。
【図２０】図１９において処理されていない領域の色を決めるために、４×４の矩形をつくり、前記と同じルールで塗潰し処理を行なった結果を示す説明図である。
【図２１】図１７に示したドット１７１０やドット１７２０を含む矩形の塗潰し色を決めるために、図２０と図１７を重ねてドットに重なる位置に来る色を抽出した図である。
【図２２】証明書の個別データを記載する領域に書き込まれた文字及び文字周囲の塗り潰し例を示す説明図である。
【図２３】文字「の」の一部に手を加え、加筆後の文字に対して図１８の対応表を適用した例を示す説明図である。
【図２４】加筆後の文字に対して文字周囲の塗り潰し例を示す説明図である。
【図２５】局所的な形状を色で表現する方法を図１８の対応表によるのではなく、対象画素の周囲の画素が文字によって塗潰されている割合をもって決める方法について示す為の説明図である。
【符号の説明】
２００…証明書発行者システム
２１０…台紙発行者／管理者システム
２２０…依頼者システム
２３０…検証者システム
９００…制御手段
９１０…通信手段
９２０…一時記憶手段（メモリ）
９３０…蓄積手段
９３１…電子台紙ＩＤ
９３２…台紙発行時刻データ
９３３…台紙発行時署名データ
９３４…有効期限データ
９３５…用途識別データ
９３６…暗号鍵
１０００…制御手段
１０１０…通信手段
１０２０…一時記憶装置（メモリ）
１０３１…証明内容記入時刻データ
１０３２…証明内容データ
１０３３…証明内容特徴量
１０３４…証明内容記入時署名データ
１０３６…電子台紙ＩＤ
１０３７…台紙データ
１１００…制御手段
１１１０…通信装置
１１２０…一時記憶装置
１１３０…蓄積手段
１１３１…電子台紙ＩＤ
１１３２…台紙発行者の塗潰しパターン
１１３３…証明書発行者の塗潰しルール
１１３４…復号鍵
１１５０…入力手段（スキャナ）
１２００…制御手段
１２１０…通信手段
１２２０…一時記憶手段
１２４０…入力手段（キーボード）
１２５０…表示手段（ディスプレイ）
１２６０…出力手段（プリンタ）
【図１】
2004199419.tif 000003
【図２】
2004199419.tif 000004
【図３】
2004199419.tif 000005
【図４】
2004199419.tif 000006
【図５】
2004199419.tif 000007
【図６】
2004199419.tif 000008
【図７】
2004199419.tif 000009
【図８】
2004199419.tif 000010
【図９】
2004199419.tif 000011
【図１０】
2004199419.tif 000012
【図１１】
2004199419.tif 000013
【図１２】
2004199419.tif 000014
【図１３】
2004199419.tif 000015
【図１４】
2004199419.tif 000016
【図１５】
2004199419.tif 000017
【図１６】
2004199419.tif 000018
【図１７】
2004199419.tif 000019
【図１８】
2004199419.tif 000020
【図１９】
2004199419.tif 000021
【図２０】
2004199419.tif 000022
【図２１】
2004199419.tif 000023
【図２２】
2004199419.tif 000024
【図２３】
2004199419.tif 000025
【図２４】
2004199419.tif 000026
【図２５】
2004199419.tif 000027