(57)【特許請求の範囲】
【請求項１】
図形的二次元コードに基いて機械で符号化を実施する方法であって、
符号化すべき情報から署名付き確証メッセージを生成するステップと、
基礎画像を、前記署名付き確証メッセージの図形的符号化された情報を含むマーク付き画像に変換するステップであって、前記基礎画像を複数の画像領域に分割し、前記画像領域内のピクセル値に基づいて、前記画像領域の少なくともいくつかを複数のグループに分け、該分けられた画像領域の各グループを対応する前記図形的二次元コードのパターンのセットで符号化することにより、前記署名付き確証メッセージを図形的に符号化して前記マーク付き画像を生成することを含む、ステップと、
を含むことを特徴とする方法。
【請求項２】
前記署名付き確証メッセージを生成するステップは、前記符号化すべき情報から暗号ハッシュを生成するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記署名付き確証メッセージを生成するステップは、前記暗号ハッシュを暗号化してデジタル署名を生成するステップを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記暗号ハッシュは、秘密鍵を用いて暗号化されることを特徴とする請求項３に記載の方法。
【請求項５】
前記署名付き確証メッセージを生成するステップは、前記符号化すべき情報と前記デジタル署名とを連結するステップを含むことを特徴とする請求項３に記載の方法。
【請求項６】
前記基礎画像は、手書き署名の画像を含み、前記変換するステップは、前記手書き署名の画像を含む前記基礎画像を、前記基礎画像に類似しておりかつ前記署名付き確証メッセージの図形的符号化された情報を含む外観を有するマーク付き画像に変換するステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記変換するステップは、手書き署名画像をベクトル形式画像に変換するステップを含むこと特徴とする請求項６に記載の方法。
【請求項８】
前記ベクトル形式画像に対して１組の基礎制御点を取得するステップと、前記基礎制御点を変位させて、マーク付き画像が生成される制御点のマーク付きセットを取得することにより、前記符号化すべき情報を符号化するステップと、を更に含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記手書き署名画像の変換ステップは、一連のスプライン曲線を前記手書き署名に適合させるステップを含むことを特徴とする請求項７に記載の方法。
【請求項１０】
前記マーク付き画像は、前記基礎画像に類似した外観を有することを特徴とする請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形的二次元コードに基いて機械で符号化を実施する方法に関する。
【０００２】
関連出願の相互参照
この出願は、米国特許法第１２０条の下で、援用をもって開示内容がすべて本明細書内に包含されたものとする、２０００年５月２５日にDoron Shaked他によって提出され、「A Method and Apparatus for Generating and Decoding a Visually Significant Bar Code」と題された、同時係属中の米国特許出願第０９／５７９，０７０号の利益を請求するものである。
【背景技術】
【０００３】
バーコードシンボルは、データ要素又は文字を表す様々な幅の平行なバー及びスペースのパターンである。バーは２進コードの１を表し、スペースは２進コードの０を表す。従来からの「一次元」バーコードシンボルは、単一次元のみで変化する一続きのバー及びスペースを含んでいる。一次元バーコードシンボルには、比較的小さい情報記憶容量しかない。一次元バーコードシンボルより多くの情報を含む機械読取り可能シンボルに対する高まる要求を満たすために、「二次元」バーコードが開発された。二次元バーコードシンボルの情報記憶容量は、バーコードパターンを二次元に変化させることにより、一次元バーコードに比較して増大する。一般的な二次元バーコード規格には、ＰＤＦ４１７、Ｃｏｄｅ 1，及びＭａｘｉｃｏｄｅがある。一次元及び二次元バーコードシンボルは、通常、印刷されたバーコードシンボルを電気信号に変換する光学式走査技法によって（例えば、機械走査式レーザビーム、或いは、自己走査型電荷結合素子（ＣＣＤ）によって）読み取られる。電気信号は、デジタル化され復号化されることにより、印刷されたバーコードシンボルに符号化されたデータを復元する。
【０００４】
バーコードは、低レベルの情報内容の用途（例えば、自動値札付け及び在庫管理）と、比較的高レベルの情報内容の用途（例えば、自動郵便物読取及び郵便物分配システムのための住所及び郵便料金の符号化、及び印刷されたページの圧縮された内容の符号化）とを含む、種々の用途で使用することができる。
【０００５】
多くの用途において、情報の出所又は情報自体、若しくは両方を認証することが望ましい。例えば、ある文書にした証書（例えば、銀行口座からの金銭の引出しを許可する銀行為替手形又は小切手、或いは封筒に印刷された郵便証印）を作成するために、文書を作成する情報の作成元（例えば、銀行引出しを許可するか、又は郵便証印を印刷する人のアイデンティティ）を認証することが必要である。さらに、用途によっては、受取側によって受け取られた通信が、送り側によって送られた実際の通信である（すなわち、通信が傍受されず，変更されず，又は置換されていない）か否かを確認する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、認証可能な図形的バーコードを生成し復号化する創意のある方式（システム及び方法）を特徴とする。
【課題を解決するための手段】
【０００７】
一態様では、符号化すべき情報から署名付き確証メッセージ（corroborative signed message）が生成され、基礎画像が、署名付きメッセージの図形的符号化によって変化することによりマーク付き画像が生成されることに基づく、バーコード化方法を特徴とする。
【０００８】
本明細書で使用する「署名付き確証メッセージ」という用語は、概して、それによって情報の送り側又は情報自体或いは両方を認証することができるメッセージを言う。
【０００９】
本発明の実施形態は、以下の特徴のうちの１つ又は複数を含むことができる。
【００１０】
署名付きメッセージを生成するステップは、符号化すべき情報から暗号ハッシュを生成することを含むのが好ましい。暗号ハッシュを、符号化すべき情報をＳＨＡ又はＭＤ５等の一方向関数に通すことによって生成することができる。また、署名付きメッセージを生成するステップは、暗号ハッシュを暗号化することによってデジタル署名を生成することも含むのが好ましい。暗号ハッシュを、秘密鍵を用いて暗号化することができる。署名付きメッセージを生成するステップは、符号化すべき情報とデジタル署名とを連結することを含むことができる。署名付きメッセージは、公開鍵証明書を含むことができる。
【００１１】
一実施形態では、基礎画像は、手書き署名の画像を含む。基礎画像を変化させるステップは、手書き署名画像をベクトル化することを含むことができる。ベクトル化された手書き署名画像に対して一組の基礎制御点を取得することができ、基礎制御点を変位させて、マーク付き画像が生成される制御点のマーク付きセットを取得することにより、情報を符号化することができる。
【００１２】
実施形態によっては、基礎画像変化ステップは、符号化すべき情報に基づいてハーフトーニングプロセスを変化させることを含む。
【００１３】
署名付きメッセージを、マーク付き画像から抽出してよい。署名付きメッセージを、マーク付き画像から、マーク付き画像と基礎画像との比較に基づいて抽出する。抽出した署名付きメッセージを復号化することにより、復号化メッセージを生成することができる。復号化メッセージから、元の暗号化された暗号ハッシュと符号化された情報とを抽出することができる。暗号化された暗号ハッシュを、公開鍵によって解読することができる。抽出された情報から新たな暗号ハッシュを生成し、新たな暗号ハッシュを元の暗号ハッシュと比較することにより、抽出された情報を認証することができる。
【００１４】
本発明の他の態様では、マーク付き画像と基礎画像との比較に基づいて、署名付きメッセージを走査画像から抽出する。抽出した署名付きメッセージを復号化することにより、復号化メッセージを生成する。マーク付き画像に符号化された情報を、復号化メッセージから抽出する。
【００１５】
復号化メッセージから、暗号化された元の暗号ハッシュを抽出することができる。暗号化された元の暗号ハッシュを、公開鍵を用いて解読することができる。抽出された情報から新たな暗号ハッシュを生成し、新たな暗号ハッシュを元の暗号ハッシュと比較することにより、抽出された情報を認証することができる。
【００１６】
他の態様では、本発明は、コンピュータ読取り可能媒体に存在するコンピュータプログラムを特徴とする。コンピュータプログラムは、コンピュータに対し、符号化すべき情報から署名付き確証メッセージを生成させ、署名付きメッセージの図形的符号化により基礎画像を変化させることによってマーク付き画像を生成させる、コンピュータ読取り可能命令を含む。
【００１７】
本発明の他の特徴及び利点は、図面及び特許請求項を含む以下の説明から明らかとなろう。
【発明を実施するための最良の形態】
【００１８】
以下の説明では、同様の要素を識別するために同様の参照数字を使用する。さらに、図面は、例示的な実施形態の主な特徴を図式的に例示するように意図されている。図面は、実際の実施形態の全ての特徴及び示されている要素の相対的な寸法を示すようには意図されておらず、一定の比例で縮小されていない。
【００１９】
図１Ａ及び図１Ｂを参照すると、一実施形態では、情報１２をマーク付き画像１４に符号化するシステム１０は、エンコーダ１６とプリンタ１８とを有している。エンコーダ１６は、コンピュータ又は他のプログラム可能プロセッサであってよく、プリンタ１８は、従来のプリンタ（例えば、米国、カリフォルニア州、パロアルトのヒューレット・パッカード・カンパニーから入手可能なＬａｓｅｒＪｅｔ（商品名）プリンタ）であっても、専用ラベル印刷装置であってもよい。動作時、エンコーダ１６は、情報１２から署名付き確証メッセージを生成する（ステップ２０）。エンコーダ１６は、基礎画像２２を署名付き確証メッセージの図形的符号化により変化させてマーク付き画像１４を作成する（ステップ２４）。基礎画像２２は、ロゴ（例えば、会社のロゴ），グラフィック，絵，文字（例えば、会社の頭文字），画像，又は視覚的意味を有するいかなるパターンをも含む、どのような図形的パターンであってもよい。署名付きメッセージを、基礎画像２２の文字，絵，画像，境界，又は背景の図形的なデザインに埋め込むことにより、マーク付き画像１４を作成することができる。情報を、２値画像（例えば、黒及び白のドットパターン），マルチレベル画像（例えば、グレイレベル画像），又はマルチレベルカラー画像の形態でマーク付き画像１４に埋め込んでよい。プリンタ１８は、送り側から受取側に物理的に転送することができるマーク付き画像１４のハードコピー２６をレンダリングする（ステップ２８）。ハードコピー２６は、引出し許可署名のマーク付き画像を有する銀行為替手形（又は小切手）と、真正証明のマーク付き画像を有する株券又は証書と、郵便証印のマーク付き画像を有する封筒とを含む多種多様の印刷物のうちの任意のものの形態であってよい。他の実施形態では、マーク付き画像１４を、他の印刷プロセスによってレンダリングすることができる。代替的に、マーク付き画像１４を、電子フォーマットでレンダリングすることができる。
【００２０】
図２を参照すると、一実施形態では、エンコーダ１６を、以下のように情報１２から署名付き確証メッセージを生成するようにプログラムすることができる。エンコーダ１６は、情報１２から暗号ハッシュ（cryptographic hash）を作成する（ステップ３０）。
暗号ハッシュは、情報１２をハッシングルーチン等のような一方向暗号化プロセス（又はダイジェスト生成プロセス（ダイジェスティングプロセス；digesting process））に通すことによって生成することができる。ダイジェスト生成プロセスは、２つの異なる電子文書が同じ暗号ハッシュを生成する確率が非常に低いように構成されるのが好ましい。エンコーダ１６は、暗号ハッシュを暗号化することによりデジタル署名を作成する（ステップ３２）。非対称（公開鍵）暗号化の実施形態では、暗号ハッシュを送り側の秘密鍵を用いて暗号化する。エンコーダ１６は、情報１２とデジタル署名とを連結することにより、署名付きメッセージを生成する（ステップ３４）。いくつかの実施形態においては、署名付きメッセージに公開鍵証明書を添付する（ステップ３６）。この公開鍵証明書は、認証局によって発行されることができる。公開鍵証明書は、特定の公開鍵が特定のエンティティ（例えば、送り側）の公開鍵であるということ、及び、このエンティティが対応する秘密鍵の保持者であるということとの認証局による証明を含んでよい。さらに、公開鍵証明書は、特に、認証局の名前，証明書保持者の名前，証明書の満了日，証明書保持者の公開鍵，及び認証局によって生成されたデジタル署名を含み得る。本明細書で使用する用語「署名付きメッセージ」は、公開鍵証明書が添付されているか否かに関らず署名付きメッセージを言う。エンコーダ１６は、結果としての署名付きメッセージを誤り訂正符号を用いて符号化する（ステップ３８）。誤り訂正符号は、従来からの畳込み（ツリー）符号又は従来からのブロック符号であってよい。例えば、誤り訂正符号は、３つの誤りに対して訂正を行う標準１６→３１ビットＢＣＨ符号であってよい。
【００２１】
図３Ａ及び図３Ｂに示すように、一実施形態では、マーク付き画像１４から情報１２を復号化するシステム４０は、スキャナ４２とデコーダ４４とを有する。スキャナ４２は、従来からのデスクトップ光学スキャナ（例えば、米国、カリフォルニア州、パロアルトのヒューレット・パッカード・カンパニーから入手可能なＳｃａｎＪｅｔ（商品名）スキャナ）であっても、又はポータブルスキャナ（例えば、米国、カリフォルニア州、パロアルトのヒューレット・パッカード・カンパニーから入手可能なＣａｐＳｈａｒｅ（商品名）ポータブルスキャナ）であってもよい。デコーダ４４は、コンピュータ又は他のプログラム可能プロセッサであってよい。動作時、スキャナ４２は、ハードコピー２６を読み取って、マーク付き画像１４を含むデジタル化された走査画像４６を生成する（ステップ４８）。デコーダ４４は、走査画像４６と基礎画像２２との比較に基づき、走査画像４６から署名付きメッセージを抽出する（ステップ５０）。デコーダ４４は、署名付きメッセージを復号化することにより復号化メッセージを生成する（ステップ５２）。
【００２２】
図４を参照すると、一実施形態では、マーク付き画像から抽出された情報を以下のように認証してよい。デコーダ４４は、復号化メッセージに含まれる暗号化された暗号ハッシュを解読して、元の暗号ハッシュを取得する（ステップ６０）。暗号化された暗号ハッシュを、例えば、添付の公開鍵証明書から取得することができ、或いは、他の何らかの方法で取得することができる送り側の公開鍵を使用して、解読してよい。また、デコーダ４４は、元の暗号ハッシュを生成するために使用したものと同じダイジェスト生成プロセスを使用して、復号化されたメッセージに含まれる情報から新たな暗号ハッシュを生成する（ステップ６２）。デコーダ４４は、元の暗号ハッシュを新たな暗号ハッシュと比較する（ステップ６４）。新たな暗号ハッシュが元の暗号ハッシュと一致する場合には、情報は真正である（ステップ６６）。すなわち、情報は、元の暗号ハッシュを復元するために使用した公開鍵に対応する秘密鍵によってデジタル署名されており、その情報は、署名された時刻からデジタル署名が確認された時刻までに変更されていなかったということである。
このように、図４の認証プロセスを使用して、情報１２の真正又は情報１２の送り側のアイデンティティ、若しくは両方を確認することができる。新たな暗号ハッシュが元の暗号ハッシュと一致しない場合（ステップ６４）には、情報は危殆化している（ステップ６８）。
【００２３】
抽出された署名付きメッセージに公開鍵証明書が添付されている場合には、公開鍵証明書は、特定の公開鍵に対応する秘密鍵の保持者のアイデンティティに関してあるレベルの保証を提供することができる。公開鍵証明書の真正を、認証局の公開鍵を使用して認証局のデジタル署名を確認することにより試験することができる。
【００２４】
図５Ａ及び図５Ｂを参照すると、Doron Shaked他によって２０００年５月２５日に出願され、「A Method and Apparatus for Generating and Decoding a Visually Significant Bar code」と題された、同時係属中の米国特許出願第０９／５７９，０７０号に記載されている図形的符号化方式に従って、署名付きメッセージの図形的符号化を用いて基礎画像２２をレンダリングすることができる。この図形的符号化プロセスに従って、基礎画像２２を複数のサブマトリクスに分割する（ステップ７０）。基礎画像２２の領域を、基準マーキング（基準マーク）として保存する（ステップ７２）。保存されないサブマトリクスを、選択された符号化プロセスに基づいて２値バーコードマトリクスに変換する（ステップ７４）。例えば、図形的符号化の一実施形態では、図５Ｂに示す２×２ハーフトーンパターン（又はマトリクス）に基づいて、２ビット符号化プロセスにより、情報を２レベル画像に符号化してよい。この図形的符号化プロセスに従って、基礎画像２２のサブマトリクスに対し、閾値プロセスと２レベルハーフトーニングプロセスとを施す。例えば、一実施形態では、基礎画像２２における５０％未満のグレイレベルを有するサブマトリクスは、図５Ｂの２５％行における４つのバーコードマトリクスのうちの１つによって符号化される。少なくとも５０％のグレイレベルを有する基礎画像２２のサブマトリクスは、図５Ｂの７５％行における４つのバーコードマトリクスのうちの１つによって符号化される。他の実施形態では、符号化閾値レベルは、５０％より大きくても小さくてもよい。基礎画像２２のサブマトリクスをレンダリングするために使用する特定のバーコードマトリクスは、符号化すべき情報に基づいて選択される。例えば、「１１」が７５％グレイレベルサブマトリクス位置で符号化される場合には、バーコードマトリクス７６を使用してそのサブマトリクスがレンダリングされる。同様に、「０１」が２５％グレイレベルサブマトリクス位置で符号化される場合には、バーコードマトリクス７８を使用してそのサブマトリクスがレンダリングされる。
【００２５】
概して、図５Ａ及び図５Ｂの図形的符号化のプロセスを、ｎビット符号化マッピング（ｎは、以上の整数値を有する）に拡張してよい。例えば、一実施形態では、情報は、３×３ハーフトーンパターンに基づいて５ビット符号化プロセスによって符号化される。
【００２６】
図６Ａ及び図６Ｂに示すように、図５Ａ及び図５Ｂの図形的符号化のプロセスを使用して、手書き署名の画像８２を含む基礎画像８０（図６Ａ）をレンダリングすることができる。結果としてのマーク付き画像８４（図６Ｂ）は、手書き署名８２の写し（likeness）８６に符号化された署名付きメッセージを含む。署名付きメッセージを、手書き署名の写し８６，背景画像，又はその両方に符号化してよい。
【００２７】
図７Ａ〜図７Ｃを参照すると、他の図形的符号化の実施形態では、手書き署名画像８２を、線形変換を通して不変のベクトルベース符号化プロセスを使用して、署名付きメッセージの図形的符号化でレンダリングしてよい。特に、手書き署名画像８２を、ラスタ形式画像からベクトル形式画像８８に変換してよい。この変換プロセスを、標準のベクトルグラフィックスソフトウェアプログラム（例えば、米国、カリフォルニア州サンホセ市のAdobe Systems Incorporatedから入手可能なＡｄｏｂｅ（商品名）Ｉｌｌｕｓｔｒａｔｏｒ（商品名）グラフィックス生成ソフトウェア）か、又は、Ｐｏｓｔｓｃｒｉｐｔ「ｃｕｒｖｅｔｏ」オペレータに類似する機能を有する他のグラフィックスソフトウェアプログラムを使用して実施してよい。図７Ａに示すように、スプライン適合された手書き署名画像８８は、複数の制御点９０によって支配される一連のスプライン曲線からなる。署名付きメッセージは、制御点９０の制御された変位によってマーク付き画像９２に符号化される。例えば、２ビット符号化の実施形態では、制御点９０を、決定論的順番で（例えば、右回り又は左回りで）連結してポリライン（すなわち、チェイン符号化シーケンス）にする。１つ又は複数の制御点９０を合せてグループ化し、各グループを、図７Ｂのマッピングに基づいて符号化すべき情報に従って変位させる。例えば、「１１」が制御点の特定のグループで符号化される場合には、制御点グループは、下方向に１単位変位する。同様に、「０１」が制御点の特定のグループで符号化される場合には、制御点グループは、上方向に１単位変位する。符号化が制御点９０の小さい変位のみによって達成されるため、結果としてのマーク付き画像９２は、手書き署名画像８２に非常に類似して見える。
【００２８】
他の実施形態では、異なるベクトルベースの符号化方式を使用してよい。例えば、１ビット符号化実施形態では、制御点のグループは、２値で変位する（例えば、定常又は変位、左方向に変位か又は右方向に変位、上方向に変位か又は下方向に変位）。３ビット符号化に実施形態では、図７Ｂの符号化方式に斜方向の変位を組み込んでよい。
【００２９】
要するに、上述した実施形態は、図形的バーコードに埋め込まれた情報を認証する新規な手法を提供する。これらの実施形態により、視覚的意味を有するバーコードを、情報の出所又は情報自体、或いはそれら両方を認証することができるように生成することが可能である。このように、これらの実施形態を、銀行為替手形又は小切手に印刷された許可マーキング、及び封筒に印刷された郵便証印を含む、あらゆる用途に適用することができる。
【００３０】
本明細書で説明したシステム及び方法は、いかなる特定のハードウェア構成又はソフトウェア構成にも限定されず、いかなるコンピューティング又は処理環境においても実施することができる。上述した符号化及び復号化プロセスを、高レベルの手続き型又はオブジェクト指向型プログラミング言語で、若しくはアセンブリ言語又は機械語で実施してよく、いずれの場合も、プログラミング言語はコンパイル型言語であってもインタプリタ型言語であってもよい。
【００３１】
他の実施形態も特許請求項の範囲内にある。
【００３２】
上記実施形態を非対称（公開鍵）暗号化実施形態に関して説明したが、例えば暗号ハッシュが送り側の秘密鍵で暗号化される対称（秘密鍵）暗号化方式を使用する他の実施形態を実施してもよい。さらに、上記実施形態を固定パターンハーフトーニング方法に関して説明したが、他の実施形態は、クラスタディザリング（例えば、青色雑音（blue noise））方法及び誤差拡散法を含む、異なるハーフトーニング方法を利用してよい。
【００３３】
さらに他の実施形態も特許請求項の範囲内にある。
【図面の簡単な説明】
【００３４】
【図１Ａ】情報をマーク付き画像に符号化するシステムの図である。
【図１Ｂ】情報をマーク付き画像に符号化する方法のフローチャートである。
【図２】符号化すべき情報から署名付き確証メッセージを生成する方法のフローチャートである。
【図３Ａ】マーク付き画像から情報を抽出するシステムの図である。
【図３Ｂ】マーク付き画像から情報を抽出する方法のフローチャートである。
【図４】マーク付き画像から抽出された情報を認証する方法のフローチャートである。
【図５Ａ】署名付きメッセージの図形的符号化により基礎画像をレンダリングする方法のフローチャートである。
【図５Ｂ】情報を２ビット２レベル図形的コードにマッピングする表である。
【図６Ａ】手書き署名の画像を含む基礎画像を示す図である。
【図６Ｂ】図５Ｂの符号化プロセスによって図６Ａの手書き署名の写しに符号化された署名付きメッセージを含むマーク付き画像を示す図である。
【図７Ａ】図６Ａの手書き署名のスプラインフィットバージョンの画像を示す図である。
【図７Ｂ】２ビット制御点オフセットコードに情報をマッピングする図表である。
【図７Ｃ】図７Ｂの符号化プロセスによって図６Ａの手書き署名の写しに符号化された署名付きメッセージを含むマーク付き画像を示す図である。
【図１Ａ】
0004495908.tif 000002
【図１Ｂ】
0004495908.tif 000003
【図２】
0004495908.tif 000004
【図３Ａ】
0004495908.tif 000005
【図３Ｂ】
0004495908.tif 000006
【図４】
0004495908.tif 000007
【図５Ａ】
0004495908.tif 000008
【図５Ｂ】
0004495908.tif 000009
【図６Ａ】
0004495908.tif 000010
【図６Ｂ】
0004495908.tif 000011
【図７Ａ】
0004495908.tif 000012
【図７Ｂ】
0004495908.tif 000013
【図７Ｃ】
0004495908.tif 000014