IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 北京大碼技術有限公司の特許一覧 ▶ 北京西閣万投資諮詢有限公司の特許一覧

特許7093352複合二次元バーコード、電子証書媒体、生成、読取装置および方法
<>
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図1
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図2
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図3
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図4
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図5
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図6
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図7
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図8
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図9
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図10
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図11
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図12
  • 特許-複合二次元バーコード、電子証書媒体、生成、読取装置および方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-21
(45)【発行日】2022-06-29
(54)【発明の名称】複合二次元バーコード、電子証書媒体、生成、読取装置および方法
(51)【国際特許分類】
   H04L 9/32 20060101AFI20220622BHJP
   H04L 9/14 20060101ALI20220622BHJP
   G09C 1/00 20060101ALI20220622BHJP
   G06K 19/06 20060101ALI20220622BHJP
   G06K 7/14 20060101ALI20220622BHJP
   G06Q 30/00 20120101ALI20220622BHJP
【FI】
H04L9/32 200A
H04L9/14
G09C1/00 640D
G06K19/06 037
G06K19/06 056
G06K7/14 017
G06K7/14 034
G06Q30/00 340
【請求項の数】 15
(21)【出願番号】P 2019530490
(86)(22)【出願日】2017-12-08
(65)【公表番号】
(43)【公表日】2020-05-28
(86)【国際出願番号】 CN2017115343
(87)【国際公開番号】W WO2018103755
(87)【国際公開日】2018-06-14
【審査請求日】2020-10-12
(31)【優先権主張番号】201611127730.3
(32)【優先日】2016-12-09
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】519200159
【氏名又は名称】北京大碼技術有限公司
(73)【特許権者】
【識別番号】519200160
【氏名又は名称】北京西閣万投資諮詢有限公司
(74)【代理人】
【識別番号】100116034
【弁理士】
【氏名又は名称】小川 啓輔
(74)【代理人】
【識別番号】100144624
【弁理士】
【氏名又は名称】稲垣 達也
(72)【発明者】
【氏名】沈 維
(72)【発明者】
【氏名】王 四平
【審査官】行田 悦資
(56)【参考文献】
【文献】特開2009-105633(JP,A)
【文献】特表2016-540329(JP,A)
【文献】韓国公開特許第10-2016-0027947(KR,A)
【文献】特開2013-118650(JP,A)
【文献】米国特許出願公開第2007/0090197(US,A1)
【文献】特開2007-115105(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
H04L 9/14
G09C 1/00
G06K 19/06
G06K 7/14
G06Q 30/00
(57)【特許請求の範囲】
【請求項1】
二次元バーコード(30)とドットマトリクス(100)の2部分から構成される複合二次元バーコードを生成する複合二次元バーコード生成装置であって、二次元バーコード用情報生成手段(1)、鍵情報生成手段(3)、ダイジェスト値算出手段(4)、二次元バーコードデータ手段(5)、二次元バーコード図形作成手段(6)、ドットマトリクス図形生成手段(7)を有し、
前記二次元バーコード用情報生成手段(1)は、二次元バーコードに格納される二次元バーコード情報を生成し、
前記鍵情報生成手段(3)はダイジェスト値を計算するための鍵情報を生成し、
前記ダイジェスト値算出手段(4)は、ハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて、前記二次元バーコード情報と前記鍵情報についてダイジェスト値を計算し、
前記二次元バーコードデータ手段(5)は、前記ダイジェスト値と前記二次元バーコード情報とを組み合わせし、バーコード変換用情報とし、
前記二次元バーコード図形作成手段(6)は、前記バーコード変換用情報を二次元バーコードに変換して、二次元バーコード図形を生成し、
前記ドットマトリクス図形生成手段(7)は、
前記鍵情報に対応したドットマトリクス(100)を生成し、
前記ドットマトリクス(100)前記二次元バーコード(30)の位置決めパターン(31)により位置決めし、
前記ドットマトリクス(100)を前記二次元バーコード(30)の外側に配置し、または少なくとも一部前記二次元バーコード(30)の内側に配置するとともに、前記二次元バーコード(30)に前記ドットマトリクス(100)が重複した部分を前記ドットマトリクス(100)に変えることにより前記二次元バーコード(30)の図形に対し、前記ドットマトリクス(100)を付加させた複合二次元バーコードを生成し
前記二次元バーコード(30)の前記ドットマトリクス(100)による誤りと前記二次元バーコード(30)自身の誤りの和が前記二次元バーコード(30)の誤り訂正レベル以下となるように設定されることを特徴とする複合二次元バーコード生成装置。
【請求項2】
請求項1に記載の複合二次元バーコード生成装置において、
前記ドットマトリクス図形生成手段(7)は、前記ドットマトリクス(100)の生成に際し、前記鍵情報に対して冗長化処理を行い、生成される前記ドットマトリクス(100)に誤り訂正機能を持たせるとともに、誤り訂正レベルを前記二次元バーコードの誤り訂正レベルと同じにまたは相違させることを特徴とする複合二次元バーコード生成装置。
【請求項3】
請求項2に記載の複合二次元バーコード生成装置において、
固定鍵を生成する鍵記憶手段(2)を設け、前記固定鍵を共用鍵とし、前記鍵情報生成手段(3)が生成する鍵情報を秘密鍵とし、前記共用鍵と秘密鍵との組み合わせを前記鍵情報として、前記ダイジェスト値算出手段(4)が前記ダイジェスト値を算出し、前記ドットマトリクス図形生成手段(7)は前記秘密鍵について前記ドットマトリクス(100)を生成することを特徴とする複合二次元バーコード生成装置。
【請求項4】
請求項3に記載の複合二次元バーコード生成装置において、
前記鍵情報生成手段(3)がランダムに前記鍵情報を生成し、前記ドットマトリクス図形生成手段(7)は前記ドットマトリクスを生成する際に、位置検知用のドットマトリクス位置決めパターン(51)を生成することを特徴とする複合二次元バーコード生成装置。
【請求項5】
請求項1から4のいずれか1つに記載の複合二次元バーコード生成装置において、
前記ダイジェスト値算出手段(4)が前記ダイジェスト値する算出するアルゴリズムは、CRC8、CRC16、CRC32、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512、RIPEMD、PANAMA、TIGER、およびADLER32アルゴリズムのうちのいずれかであることを特徴とする請求項1から4のいずれかに記載の複合二次元バーコード生成装置。
【請求項6】
二次元バーコード(30)とドットマトリクス(100)の2部分から構成される複合二次元バーコードを生成する複合二次元バーコード生成装置が行う複合二次元バーコード生成方法であって、
ステップ1において、二次元バーコードに格納される二次元バーコード情報を生成し、
ステップ2において、ダイジェスト値を計算するための鍵情報を生成し、
ステップ4において、ハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて、前記二次元バーコード情報と前記鍵情報についてダイジェスト値を計算し、
ステップ5において、前記ダイジェスト値と前記二次元バーコード情報とを組み合わせし、バーコード変換用情報とし、
ステップ6において、前記バーコード変換用情報を二次元バーコードに変換し、二次元バーコード図形を生成し、
ステップ7において、前記二次元バーコード(30)の位置決めパターン(31)により前記ドットマトリクス(100)の設定領域を決定し、前記設定領域が前記二次元バーコード(30)の外側、または少なくとも一部が前記二次元バーコード(30)の内側に配置されるとともに、前記二次元バーコード(30)と重複した部分を前記ドットマトリクス(100)を表示する領域に設定し、前記二次元バーコード(30)の前記ドットマトリクス(100)による誤りと前記二次元バーコード(30)自身の誤りの和が前記二次元バーコード(30)の誤り訂正レベル以下となるように設定され、
ステップ8において、前記設定領域において、前記鍵情報に対応した前記ドットマトリクス(100)を生成することで前記二次元バーコード(30)の図形に対し前記ドットマトリクス(100)を付加させた複合二次元バーコードを生成することを特徴とする複合二次元バーコード生成方法。
【請求項7】
ステップS8においては、前記ドットマトリクス(100)の生成に際し、前記鍵情報に対して冗長化処理を行い、生成される前記ドットマトリクス(100)に誤り訂正機能を持たせるとともに、誤り訂正レベルを前記二次元バーコードの誤り訂正レベルと同じにまたは相違させることを特徴とする請求項に記載される複合二次元バーコード生成方法。
【請求項8】
固定鍵を生成するステップS3をさらに備え、前記固定鍵を共用鍵とし、前記ステップS2で生成する鍵情報を秘密鍵とし、前記共用鍵と秘密鍵との組み合わせを前記鍵情報として、前記ステップS4において前記ダイジェスト値を算出し、前記ステップ8においては、前記秘密鍵について前記ドットマトリクス(100)を生成することを特徴とする請求項記載の複合二次元バーコード生成方法。
【請求項9】
前記ステップS2においては、前記秘密鍵をランダムに生成することを特徴とする請求項に記載の複合二次元バーコード生成方法。
【請求項10】
前記ドットマトリクスを生成する際に、位置検知用のドットマトリクス位置決めパターン(51)を生成することを特徴とする請求項に記載の複合二次元バーコード生成方法。
【請求項11】
前記ステップS4においては、前記ダイジェスト値する算出するアルゴリズムは、CRC8、CRC16、CRC32、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512、RIPEMD、PANAMA、TIGER、およびADLER32アルゴリズムのいずれかであることを特徴とする請求項6から10のいずれかに記載の複合二次元バーコード生成方法。
【請求項12】
複合二次元バーコードの情報を読み取る複合二次元バーコード読取装置であって、前記複合二次元バーコードは、二次元バーコードとドットマトリクスからなり、前記二次元バーコードに二次元バーコード情報とダイジェスト値情報が含まれ、前記ドットマトリクスには鍵情報が含まれ、前記ダイジェスト値はハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用い、前記二次元バーコード情報と前記鍵情報について算出したダイジェスト値であり、
図形取得手段(11)、二次元バーコード復号手段(12)、ドットマトリクス復号手段(13)、ダイジェスト値算出手段(15)、正真性検証手段(16)、表示手段(17)とを含み、
前記図形取得手段(11)は、複合二次元バーコード図形を取得し、
前記二次元バーコード復号手段(12)は、前記二次元バーコードについて復号して、前記二次元バーコード情報と前記ダイジェスト値情報を得、
前記ドットマトリクス復号手段(13)は、前記複合二次元バーコードに含まれる前記ドットマトリクスについて復号し、前記鍵情報を得、
前記ダイジェスト値算出手段(15)は、前記二次元バーコードからの前記二次元バーコード情報と前記鍵情報の組み合わせについて、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出し、
前記正真性検証手段(16)は、前記算出されたダイジェスト値と前記複合二次元バーコードにある前記ダイジェスト値とを比較し、情報が一致するか否かを判断し、
前記表示手段(17)は、前記正真性検証手段(16)の判断結果により、検証が通過か否かを表示または対応動作を行うことを特徴とする複合二次元バーコード読取装置。
【請求項13】
前記複合二次元バーコードに含まれるダイジェスト値情報の算出に共用鍵と秘密鍵とからなる鍵情報が用いられ、前記秘密鍵の鍵情報は前記ドットマトリクスに含まれ、
前記複合二次元バーコード読取装置には、共用鍵記憶手段(14)を有し、
前記ダイジェスト値算出手段(15)は、二次元バーコードの復号で得られた二次元バーコード情報と、共用鍵記憶手段(14)からの共用鍵とドットマトリクス(100)の復号で得られた秘密鍵とを組み合わせし、その組み合わせ情報について、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出することを特徴とする請求項12記載の複合二次元バーコード読取装置。
【請求項14】
複合二次元バーコードの情報を読み取る複合二次元バーコード読取装置が行う複合二次元バーコード読取方法であって、前記複合二次元バーコードは二次元バーコードとドットマトリクスからなり、前記二次元バーコードに二次元バーコード情報とダイジェスト値情報が含まれ、前記ドットマトリクスには鍵情報が含まれ、前記ダイジェスト値はハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用い、前記二次元バーコード情報と前記鍵情報について算出したダイジェスト値であり、
ステップS100において、複合二次元バーコード図形を取得し、
ステップS110において、前記二次元バーコードを復号し、前記二次元バーコード情報と前記ダイジェスト値情報を得、
ステップS120において、前記複合二次元バーコードに含まれる前記ドットマトリクスを復号することにより前記鍵情報を得、
ステップS140において、前記二次元バーコードからの前記二次元バーコード情報と前記鍵情報とを組み合わせし、その組み合わせについて、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出し、
ステップS150において、前記算出されたダイジェスト値と前記複合二次元バーコードにある前記ダイジェスト値とを比較し、
ステップS160において、情報が一致するか否かを判断し、
ステップS170において、情報が一致したことにより、検証が通過した表示または対応する動作を行い、
ステップS180において、情報が一致しないことにより、検証が通過しない表示または対応する動作を行うことを特徴とする複合二次元バーコード読取方法。
【請求項15】
前記複合二次元バーコードに含まれる鍵情報は、共用鍵と秘密鍵とからなり、前記秘密鍵の鍵情報は前記ドットマトリクスに含まれ、
さらに、ステップ130を備え、
ステップ120においては、前記複合二次元バーコードに含まれるドットマトリクス(100)を復号することにより前記秘密鍵を得、
ステップ130においては、記憶されている共用鍵を入力し、
ステップ140においては、二次元バーコードの復号で得られたデータ情報と鍵情報とを組み合わせし、その組み合わせ情報について、二次元バーコードにおけるダイジェストと同じアルゴリズムでダイジェスト値を算出することを特徴とする請求項14記載の複合二次元バーコード読取方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複合二次元バーコード、複合二次元バーコードを電子ライセンス、電子身分、電子注文、電子口座などの電子証書の媒体としての適用、複合二次元バーコードの生成、読取装置および方法にかかり、特に二次元バーコードに含まれる情報の正真性に関する。
【背景技術】
【0002】
電子ビジネスの発展に伴い、紙のライセンス文書が徐々に電子ライセンスに取って代わりつつある。二次元バーコードのもつ大情報量と誤り訂正機能を利用し、商業営業許可書の副本情報を二次元バーコードに格納することにより、商業営業許可書の紙副本の代わりに二次元バーコードを使用することができ、利便性が大幅に向上する。また、保管、携帯、遠距離送付も容易になり、画像入力装置や光電走査装置があれば自動的に読み取ることができる。この際、情報に正真性の担保があれば面倒な検証作業を省くことができ、電子ビジネスの発展がより有利になる。
【0003】
二次元バーコードは、複製が容易であり、情報の改ざんもしやすいため、(格納された)営業許可書情報について、通常、真偽を検証するためのサービスも同時に提供される。ユーザはネットワークを介して認証サーバに接続し、検証用の情報をサーバに送信し、予めサーバに記憶されている情報と比較して、営業許可書の真偽、情報が本物かの判断を行う。
【0004】
二次元バーコードの真偽を判定する方法としては、特許文献1(中国特許公開番号103646333)において公開されたものがある。ここでは、紙の地紋を用いて判定を行う。紙の地紋を利用した偽造防止技術は、電子ライセンスで広く使用されている。その原理は、紙に二次元バーコードを印刷し、紙の地紋のランダムさを利用し、その地紋を標識として二次元バーコードと関連付けて、検証サーバに保存し、検証時には、二次元バーコードの読取情報を送信し、検証サーバにおいて対応する地紋画像が検索され、登録した地紋と一致すれば二次元バーコードが本物であると判定される。しかしながら、この技術には以下のような問題があった。
(1)サーバの情報を利用する必要があるため、ネットワークのない環境では利用できず、使用できる範囲がかなり限られる。
(2)二次元バーコードの検証は紙(地紋)を利用して間接的に行うから、紙の地紋を破損させなければ、サーバを騙して不正を働くことが可能である。例えば、二次元バーコードの誤り訂正機能を用いて、元の二次元バーコードにおいて地紋のない部分のセルの色を調整することにより二次元バーコードの情報を偽造し、サーバを誤判断させることができる。すなわち、特許文献1の技術では、二次元バーコードに格納した情報自体が本物であることを検証できない。
(3)二次元バーコードを紙に印刷し、紙の地紋をスキャンし、画像処理により地紋特徴を抽出し、二次元バーコードと関連付けてサーバに保存する必要があるため、全体の処理が煩雑で効率が悪い。またペーパレスでの使用が実現できない。
【0005】
特許文献2(中国特許公開番号:CN1022702294)にはバーコードを用いた偽造防止技術が開示されている。バーコードに鍵情報を記録し、この鍵を使って二次元バーコードの一部情報について、鍵を使って暗号化にし隠し情報とし、明文情報を不完全なものとした。検証時には、バーコードに格納した鍵を使って二次元バーコードの隠し情報を復号し、隠し情報と明文情報が完全な情報を構成することができれば、二次元バーコードは本物であると判断する。この技術はネットワークを必要としないため、使用できる範囲と利便性が向上する一方、内容から2つの情報の関連性を判断するため、客観的な基準がなく、特に営業許可書類のものでは、例えば資本金項目で“0”を多数加えても、内容に関連性が変わった(関連性なし)と判断するには困難を伴う。信頼性について保証が得られないものである。
【0006】
以上のように従来の偽造防止技術では、二次元バーコードの情報の改ざんについて、完全に防ぐことができない。例えば、二次元バーコード情報全体を暗号化することで偽造の危険性を低減させることはできるが、専用の読み取り装置のみ復号できるが、電子ライセンスなどの証明書類には適用できない。
【発明の概要】
【0007】
本発明は、上記従来技術の問題点を解決し、ネットワークを必要とせず、二次元バーコード情報が本物であることを判別できる技術の提供を目的とする。
【0008】
第1本発明は、複合二次元バーコード生成装置であって、二次元バーコード用情報生成手段(1)、鍵情報生成手段(3)、ダイジェスト値算出手段(4)、二次元バーコードデータ手段(5)、二次元バーコード図形作成手段(6)、ドットマトリクス図形生成手段(7)を有し、
前記二次元バーコード用情報生成手段(1)は、二次元バーコードに格納される二次元バーコード情報を生成し、
前記鍵情報生成手段(3)はダイジェスト値を計算するための鍵を生成し、
前記ダイジェスト値算出手段(4)は、ハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて、前記二次元バーコード情報と前記鍵についてダイジェスト値を計算し、
前記二次元バーコードデータ手段(5)は、前記ダイジェスト値と前記二次元バーコード情報とを組み合わせし、バーコード変換用情報とし、
前記二次元バーコード図形作成手段(6)は、前記二次元バーコード変換用情報を二次元バーコードに変換して、二次元バーコード図形を生成し、
前記ドットマトリクス図形生成手段(7)は、前記鍵情報に対応したドットマトリクス(100)を生成し、前記ドットマトリクス(100)は前記二次元バーコード(30)の位置決めパターン(31)により位置決めされるとともに、前記二次元バーコード(30)の外側、または少なくとも一部が前記二次元バーコード(30)内部で生成されるとともに、前記二次元バーコード(30)と重複した部分を前記ドットマトリクス(100)に変え、前記二次元バーコード(30)の前記ドットマトリクス(100)による誤りと前記二次元バーコード(30)自身の誤りの和が前記二次元バーコード(30)の誤り訂正レベル以下となるように設定されることを特徴とする複合二次元バーコード生成装置。
【0009】
前記ドットマトリクス図形生成手段(7)は、前記ドットマトリクス(100)の生成に際し、前記鍵情報に対して冗長化処理を行い、生成される前記ドットマトリクス(100)に誤り訂正機能を持たせるとともに、誤り訂正レベルを前記二次元バーコードの誤り訂正レベルと同じにまたは相違させることが望ましい。
【0010】
固定鍵を生成する鍵記憶手段(2)を設け、前記固定鍵を共用鍵とし、前記鍵情報生成手段(3)が生成する鍵を秘密鍵とし、前記共用鍵と秘密鍵との組み合わせを前記鍵として、前記ダイジェスト値算出手段(4)が前記ダイジェスト値を算出し、前記ドットマトリクス図形生成手段(7)は前記秘密鍵について前記ドットマトリクス(100)を生成することが望ましい。
【0011】
前記鍵情報生成手段(3)がランダムに前記鍵を生成し、前記ドットマトリクス図形生成手段(7)は前記ドットマトリクスを生成する際に、位置検知用のドットマトリクス位置決めパターン(51)を生成することが望ましい。
【0012】
前記ダイジェスト値算出手段(4)が前記ダイジェスト値する算出するアルゴリズムは、CRC8、CRC16、CRC32、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512、RIPEMD、PANAMA、TIGER、およびADLER32アルゴリズムのうちのいずれかであることが望ましい。
【0013】
第2の発明は、複合二次元バーコード生成装置であって、二次元バーコード用情報生成手段(1)、鍵情報記憶手段(3)、ダイジェスト値算出手段(4)、二次元バーコードデータ手段(5)、二次元バーコード図形作成手段(6)とを有し、
前記二次元バーコード用情報生成手段(1)は、二次元バーコードに格納される二次元バーコード情報を生成し、
前記鍵情報生成手段(3)はダイジェスト値を計算するための鍵を生成し、
前記ダイジェスト値算出手段(4)は、ハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて、前記二次元バーコード情報と前記鍵についてダイジェスト値を計算し、
前記二次元バーコードデータ手段(5)は、前記ダイジェスト値情報と前記鍵情報と前記二次元バーコード情報とを組み合わせ、バーコード変換用情報とし、
前記二次元バーコード図形作成手段(6)は、前記バーコード変換用情報を二次元バーコードに変換し、二次元バーコード図形を生成することを特徴とする複合二次元バーコード生成装置。
【0014】
第3の発明は、複合二次元バーコード生成方法であって、
ステップ1において、二次元バーコードに格納される二次元バーコード情報を生成し、
ステップ2において、ダイジェスト値を計算するための鍵を生成し、
ステップ4において、ハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて、前記二次元バーコード情報と前記鍵についてダイジェスト値を計算し、
ステップ5において、前記ダイジェスト値と前記二次元バーコード情報とを組み合わせし、バーコード変換用情報とし、
ステップ6において、前記バーコード変換用情報を二次元バーコードに変換し、二次元バーコード図形を生成し、
ステップ7において、前記二次元バーコード(30)の位置決めパターン(31)により前記ドットマトリクス(100)の設定領域を決定し、前記設定領域が前記二次元バーコード(30)の外側、または少なくとも一部が前記二次元バーコード(30)内部で生成されるとともに、前記二次元バーコード(30)と重複した部分を前記ドットマトリクス(100)に変え、前記二次元バーコード(30)の前記ドットマトリクス(100)による誤りと前記二次元バーコード(30)自身の誤りの和が前記二次元バーコード(30)の誤り訂正レベル以下となるように設定され、
ステップ8において、前記設定領域において、前記鍵情報に対応した前記ドットマトリクス(100)を生成することを特徴とする複合二次元バーコード生成方法。
【0015】
ステップS8においては、前記ドットマトリクス(100)の生成に際し、前記鍵情報に対して冗長化処理を行い、生成される前記ドットマトリクス(100)に誤り訂正機能を持たせるとともに、誤り訂正レベルを前記二次元バーコードの誤り訂正レベルと同様または相違することが望ましい。
【0016】
固定鍵を生成するステップS3をさらに備え、前記固定鍵を共用鍵とし、前記ステップS2で生成する鍵を秘密鍵とし、前記共用鍵と秘密鍵との組み合わせを前記鍵として、前記ステップS4において前記ダイジェスト値を算出し、前記ステップ8においては、前記秘密鍵について前記ドットマトリクス(100)を生成することが望ましい。
【0017】
前記ステップ3においては、前記鍵をランダムに生成することが望ましい。
【0018】
前記ドットマトリクスを生成する際に、位置検知用のドットマトリクス位置決めパターン(51)を生成することが望ましい。
【0019】
前記ステップS4においては、前記ダイジェスト値する算出するアルゴリズムは、CRC8、CRC16、CRC32、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512、RIPEMD、PANAMA、TIGER、およびADLER32アルゴリズムのいずれかであることが望ましい。
【0020】
第4の発明は、複合二次元バーコードの情報を読み取る複合二次元バーコード読取装置であって、前記複合二次元バーコードは、二次元バーコードとドットマトリクスからなり、前記二次元バーコードに二次元バーコード情報とダイジェスト値情報が含まれ、前記ドットマトリクスには鍵情報が含まれ、前記ダイジェスト値はハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用い、前記二次元バーコード情報と前記鍵情報について算出したダイジェスト値であり、
図形取得手段(11)、二次元バーコード復号手段(12)、ドットマトリクス復号手段(13)、ダイジェスト値算出手段(15)、正真性検証手段(16)、表示手段(17)とを含み、
前記図形取得手段(11)は、複合二次元バーコード図形を取得し、
前記二次元バーコード復号手段(12)は、前記二次元バーコードについて復号して、前記二次元バーコード情報と前記ダイジェスト値情報を得、
前記ドットマトリクス復号手段(13)は、前記複合二次元バーコードに含まれる前記ドットマトリクスについて復号し、前記鍵情報を得、
前記ダイジェスト算出手段(15)は、前記二次元バーコードからの前記二次元バーコード情報と前記鍵情報の組み合わせについて、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出し、
前記正真性検証手段(16)は、前記算出されたダイジェスト値と前記複合二次元バーコードにある前記ダイジェスト値とを比較し、情報が一致するか否かを判断し、
前記表示手段(17)は、前記正真性検証手段(16)の判断結果により、検証が通過か否かを表示または対応動作を行うことを特徴とする請求項13記載の複合二次元バーコード読取装置。
【0021】
前記複合二次元バーコードに含まれるダイジェスト値情報の算出に共用鍵と秘密鍵とからなる鍵が用いられ、前記秘密鍵情報は前記ドットマトリクスに含まれ、
前記複合二次元バーコード読取装置には、共用鍵記憶手段(14)を有し、
前記ダイジェスト算出手段(15)は、二次元バーコードの復号で得られた二次元バーコード情報と、共用鍵記憶手段(14)からの共用鍵とドットマトリクス(100)の復号で得られた秘密鍵とを組み合わせし、その組み合わせ情報について、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出することが望ましい。
【0022】
第5の発明は、複合二次元バーコードの情報を読み取る複合二次元バーコード読取方法であって、前記複合二次元バーコードは二次元バーコードとドットマトリクスからなり、前記二次元バーコードに二次元バーコード情報とダイジェスト値情報が含まれ、前記ドットマトリクスには鍵情報が含まれ、前記ダイジェスト値はハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用い、前記二次元バーコード情報と前記鍵情報について算出したダイジェスト値であり、
ステップS100において、複合二次元バーコード図形を取得し、
ステップS110において、前記二次元バーコード復号手段(12)は、前記二次元バーコードを復号し、前記二次元バーコード情報と前記ダイジェスト値情報を得、
ステップS120において、前記複合二次元バーコードに含まれる前記ドットマトリクスを復号することにより前記鍵情報を得、
ステップS140において、前記ダイジェスト値算出手段(15)は、前記二次元バーコードからの前記二次元バーコード情報と前記鍵情報とを組み合わせし、その組み合わせについて、前記複合二次元バーコードにある前記ダイジェスト値の算出と同じアルゴリズムで、ダイジェスト値を算出し、
ステップS150において、前記算出されたダイジェスト値と前記複合二次元バーコードにある前記ダイジェスト値とを比較し、
ステップS160において、情報が一致するか否かを判断し、
ステップS170において、情報が一致したことにより、検証が通過した表示または対応する動作を行い、
ステップS180において、情報が一致しないことにより、検証が通過しない表示または対応する動作を行うことを特徴とする複合二次元バーコード読取方法。
【0023】
前記複合二次元バーコードに含まれる鍵は、共用鍵と秘密鍵とからなり、前記秘密鍵情報は前記ドットマトリクスに含まれ、
さらに、ステップ130を備え、
ステップ120においては、前記複合二次元バーコードに含まれるドットマトリクス(100)を復号することにより前記秘密鍵を得、
ステップ130においては、記憶されている共用鍵を入力し、
ステップ140においては、二次元バーコードの復号で得られたデータ情報と鍵情報とを組み合わせし、その組み合わせ情報について、二次元バーコードにおけるダイジェストと同じアルゴリズムでダイジェスト値を算出することが望ましい。
【0024】
第5の発明は、複合二次元バーコードであって、二次元バーコード(30)とドットマトリクス(100)からなり、前記ドットマトリクス(100)の少なくとも一部が前記二次元バーコード(30)内部に位置するとともに、位置決めパターン(31)を遮蔽しないものとし、前記二次元バーコード(30)とは図形上において関連づけられ、前記二次元バーコード(30)の前記ドットマトリックス(100)による誤りと前記二次元バーコード(30)自身の誤りの和が前記二次元バーコード(30)の誤り訂正レベル以下となるように設定され、前記二次元バーコード(30)にデータ情報とダイジェスト値情報が含まれ、前記ドットマトリクス(100)には、前記ダイジェスト値を計算する際の鍵情報が含まれ、前記ダイジェスト値情報は前記鍵情報と二次元バーコード情報についてハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて算出されるものであることを特徴とする複合二次元バーコード。
【0025】
第6の発明は、複合二次元バーコードであって、二次元バーコード(30)とドットマトリクス(100)からなり、前記ドットマトリクス(100)が前記二次元バーコード(30)の外側に設定されるとともに、前記二次元バーコード(30)の位置決めパターン(31)により位置決定され、前記二次元バーコード(30)とは図形上において関連づけられ、前記二次元バーコード(30)に二次元バーコード情報とダイジェスト値情報が含まれ、前記ドットマトリクス(100)には、前記ダイジェスト値を計算する際の鍵情報が含まれ、前記ダイジェスト値情報は前記鍵情報とデータ情報についてハッシュアルゴリズムまたは一方向メッセージダイジェストアルゴリズムを用いて算出されるものであることを特徴とする複合二次元バーコード。
【0026】
前記ドットマトリクス(100)は、単列または複数列の形をとり、前記二次元バーコード(30)内に配置または二次元バーコード(30)の少なくとも一辺に配置することが望ましい。
【0027】
前記ドットマトリクス(100)における濃い色ドットは円点または文字、図形で構成され、隣接する濃い色ドットの間には隙間が設けられ、画像処理効率と視覚効果の向上を図ることが望ましい。
【0028】
ドットマトリクス(100)内のドットの形状、大きさ、間隔および位置は、二次元バーコード(30)内のセルの形状、大きさ、間隔、位置と一致し、視覚上において周辺の二次元バーコード(30)と一致させていることが望ましい。
【0029】
第7の発明は複合二次元バーコードの電子証書媒体としての適用であり、前記複合二次元バーコードは請求項17~21のいずれかの1つに記載された複合二次元バーコードであることを特徴とする電子証書媒体。
前記電子証書は電子ライセンス類のものであることが可能である。
前記電子証書は電子身分証明書であることが可能である。
前記電子証書は電子注文類のものであることが可能である。
前記電子証書は電子口座類のものであることが可能である。
【発明の効果】
【0030】
本発明にかかる複合二次元バーコード生成装置および方法では、簡単、低コストで複合二次元バーコードを生成することができる。
本発明にかかる複合二次元バーコード読取装置および方法は、簡単、低コストで複合二次元バーコードを読み取ることができる。
本発明は、二次元バーコードに格納したデータ情報の正真性(真実性)を直接に検証することができ、間接的に検証する従来技術と比較して、高い信頼性が得られ、情報の忠実性を高めることができる。
【図面の簡単な説明】
【0031】
図1】複合二次元バーコードの構成説明図である(ドットマトリクスが二次元バーコード内部配置)。
図2図1の複合二次元バーコードの変形例の説明図である。
図3図1の複合二次元バーコードの変形例の説明図である。
図4図1の複合二次元バーコードの他の変形例の説明図である(多辺単列のドットマトリクス)。
図5図4の複合二次元バーコードの変形例の説明図である。
図6図4の複合二次元バーコードの変形例の説明図である。
図7】位置決め機構を持つ複合二次元バーコードの説明図である。
図8】複合二次元バーコード生成装置のブロック図である。
図9】複合二次元バーコード生成方法のフローチャートである。
図10】二次元バーコードを生成するための説明図である。
図11】ドットマトリクスを生成するための説明図である。
図12】複合二次元バーコード読取装置の説明図である。
図13】複合二次元バーコード読取方法を説明するフローチャートである。
【発明を実施するための形態】
【0032】
以下、本発明の実施形態について説明する。以下実施形態として記載さされた実施例は例示的に示すものであり、本発明の範囲を限定するものではない。
【0033】
まず、本発明にかかる複合二次元バーコードについて説明する。
【0034】
実施形態1
図1は複合二次元バーコードの構成説明図である。図1に示すように、複合二次元バーコードは、二次元バーコード30(以下、二次元バーコードと称す)とドットマトリクス100の2部分から構成される。ドットマトリクス100の設定領域40は、二次元バーコード30の右下(位置を特定するためのパターンのない場所)に設定され、その両側が二次元バーコード30の3つの位置決めパターン31によって位置決めされ、二次元バーコード30と図形上において関連付けされている。
【0035】
本実施形態において、矩形設定領域40は4×16の区域に分割され、情報記録に使用される。濃い色のドットマトリクス100と淡い部分とで二進法情報を表す二つの状態を構成する。濃い色の円点と大きさが対応する淡い部分がそれぞれ一ビットの情報を表し、ドットマトリクス100において、隣り合う濃い円点の間に隙間を設け、互いに繋がっていないようにしたので、画像処理する際に効率を高めることができるとともに、視覚的に良い効果が得られる。ドットマトリクス100の(ドット)形状が二次元バーコード30の矩形セル形状と異なるため、複合二次元バーコードであることを識別する識別機能を果たす。
【0036】
ドットマトリクス100の設定領域40の大きさは、二次元バーコード30の誤り訂正レベル(誤り訂正能力)を参照して設定される。すなわち、二次元バーコード30に対するドットマトリクス100の面積が、二次元バーコード30の誤り訂正レベルが大きいほど、ドットマトリクス100の設定領域40を大きく設定する。ドットマトリクス100による誤りと(ドットマトリクス100以外の影響を受けて)二次元バーコード30自身由来の誤りの合計が誤り訂正レベル以下とすることにより、二次元バーコードの復号に影響を与えず済むとともに、ドットマトリクス100の面積を大きく設定することができる。二次元バーコードの誤りはドットマトリクス100の大きさによるだけでなく、ドットマトリクス100に格納された情報(ドットの配列)も誤りに影響を与えるため、格納される情報によって、誤りが訂正レベルを超え、読取ができなくなることを防ぐため、訂正レベルを参照してドットマトリクスの面積を設定するとき、一定の安全余地を残す。安全余地は、例えばテストを行って決定する。例えば、二次元バーコードに格納されるデータ情報(セル分布)に応じて、極端な状況で設定可能な設定領域の上限値を決定し、その上限値に基づいて設定領域40の大きさを設定することができる。あるいは、本発明者の発明である(中国)公開番号CN101615258B(出願番号:200810115748.0)を参照することができ、ここでは詳細な説明を省略する。
【0037】
設定領域40の縦横比や形状は任意に設定可能である。また、ドットマトリクス100の一部を二次元バーコード30の画像区域の外側に配置することもできる。この場合、ドットマトリクス100の情報量を大きくすることができる。
【0038】
設定領域40の大きさと誤り訂正レベルとを関連づけることにより、複合二次元バーコードを作成するとき、二次元バーコード30の誤り訂正レベルに応じて自動的に設定領域40の大きさを設定することができる。また、読み取る時には二次元バーコード30の仕様や誤り訂正レベルなどのパラメータを用いて、ドットマトリクス100の読み出し領域を識別することができ、情報処理が容易になる。
【0039】
ドットマトリクス100のドットは、濃い色の円点ではなく、一つのドットとして識別できる文字や他の図形を用いることもできる。ドットマトリクス100(ドット)と二次元バーコード30(セル)とは、同じサイズおよび同じ形状のものを用いることができる。
【0040】
本実施形態では、複合二次元バーコードは電子ライセンスに適用される。二次元バーコード30は、(中国)国家標準(GB/T18284-2000)のQRコードを使用する。したがって、標準に合致する作成装置および読取装置であれば、二次元バーコード30を作成または読取することができる。二次元バーコード30に電子ライセンスの副本情報およびダイジェスト値が格納される。ドットマトリクス100にはダイジェスト値を計算する際の鍵情報が格納される。二次元バーコード30(QRコード)と同様に、ドットマトリクス100に格納される情報もリードソロモン符号で符号化され、誤りに対する復元能力を持たせている。ダイジェスト値は、電子ライセンスの副本情報と鍵情報についてMD5アルゴリズムを用いて算出される。
【0041】
MD5(ハッシュアルゴリズム)などは、情報が同じであれば、算出されるダイジェスト値が同じである特性を持つため、二次元バーコード30に格納される情報と元の管理機構から、格納された情報が一致しなければ、算出されるダイジェスト値がライセンスの副本を発行した当初のダイジェスト値が異なるため、二次元バーコードに格納されるライセンスの副本情報に改ざんがあるか否かを検証でき、電子ライセンス情報が本物であることを保証することができる。
【0042】
以上は、本発明の複合二次元バーコードの構成と電子ライセンスとしての適用である。以上から分かるように、二次元バーコード30の内部にドットマトリクス100を追加することにより、ドットマトリクス100の特別な構造により、複合二次元バーコードが電子ライセンスであることを視覚的に識別することができる。画像入力装置や光電走査装置で複合二次元バーコードを読み取るとき、二次元バーコードの位置決めパターン31を用いて、ドットマトリクス100の設定領域40の位置を確定し、ドットマトリクス100を読み取る範囲を確定することができる。ドットマトリクス100を復号して得られる鍵情報と二次元バーコード30を復号して得られる電子ライセンスの副本情報とをMD5アルゴリズムによって算出されたダイジェスト値と、二次元バーコード30を復号して得られるダイジェスト値とを比較することにより、電子ライセンスの副本情報が本物か否かを判定することができる。そのプロセスにはネットワークとサーバを必要としないため、使用範囲が広がる。
【0043】
図2図1の変形例であり、図2において、ドットマトリクス100の設定領域40は楕円形に設定される点で(図1と)相違するが、他は同じである。
【0044】
図3図1の変形例であり、図3において、ドットマトリクス100の設定領域は、異なる場所に設定される領域40a、40bから構成されており、領域40a、40bの形状が異なるが、他の構成は同じである。
【0045】
実施形態2
以下、他の複合二次元バーコードの構成について説明する。
【0046】
図4は、複合二次元バーコードの他の構成の説明図であり、図1と異なるのは、ドットマトリクス100の設定領域50が50a、50b、50c、50dで構成され、それぞれ二次元バーコード30側辺の外側に設定される。ドットマトリクス100(全体)は単列多辺の構造を有する。図1の構成と同様に、設定領域50a、50b、50c、50dは、二次元バーコード30の位置決めパターン31によって位置決めされており、側辺から離間している。設定領域50の大きさは、二次元バーコード30の大きさに対応付けられている。(外側にある)ドットマトリクス100は、二次元バーコード30の復号に影響を与えないため、設定領域50の範囲と二次元バーコード30の誤り訂正レベルとは関連付けないことができ、より大きな情報量を設定することができる。なお、設定領域50は、二次元バーコード図形の周囲の空白領域を利用することもできる。
【0047】
図5図4の変形例であり、図4においてドットマトリクス100は4つの設定領域となっているが、それが図5のように二つの設定領域に変更された。各設定領域には2列のドットマトリクス100を有している。ドットマトリクスの総情報量は図4と同様である。
【0048】
図6図4の変形例であり、図4においてドットマトリクス100は4つの設定領域となっているが、図6のようにそれがすべて右側に移して1つの纏まったドットマトリクス100となっている。他の構成は図4と同様である。
【0049】
図7は、図4の変形例であり、図7においてドットマトリクス100の外側に3つのドット位置決めパターン51が設けられており、それぞれが二次元バーコード30の3つの位置パターン31の外側に位置している。ドットマトリクス100の位置および範囲は、3つのドット位置決めパターン51によって決定される。ドット位置決めパターン51は、特定の形状を有し、画像入力装置または電子写真走査装置によって読み取ることができる。ドット位置決めパターン51は、走査範囲の決定を容易にするだけでなく、複合二次元バーコードの範囲を示す機能も果たす。
【0050】
以下、本発明の二次元バーコード生成装置および方法について説明する。
【0051】
図8は、複合二次元バーコード生成装置の構成を示すブロック図である。図8に示すように、複合二次元バーコード生成装置は、二次元バーコード用情報生成手段1、鍵記憶手段2、動的鍵生成手段3、ダイジェスト値算出手段4、二次元バーコードデータ手段5、二次元バーコード図形生成手段6、ドットマトリクス図形生成手段7を備える。
【0052】
二次元バーコード用情報生成手段1はダイジェスト値算出手段4と二次元バーコードデータ手段5と接続し、鍵記憶手段2はダイジェスト値算出手段4と接続し、動的鍵生成手段3はダイジェスト値算出手段4とドットマトリクス生成手段7とを接続する。また、ダイジェスト値算出手段4は二次元バーコードデータ手段5に接続し、二次元バーコードデータ手段5は二次元バーコード図形生成手段6に接続し、二次元バーコード図形生成手段6はドットマトリクス図形生成手段7に接続している。
【0053】
二次元バーコード用情報生成手段1は、二次元バーコードに符号されるデータ情報を生成するものであり、本実施形態では、二次元バーコードが電子ライセンスとして使用するものとし、二次元バーコードに符号化される情報は電子ライセンスの副本情報である。データ情報は、二次元バーコードデータ手段5およびダイジェスト値算出手段4に入力される。
【0054】
鍵記憶部2は、固定鍵を記憶するものであり、本実施形態では固定鍵は、全ての企業で共通に使う共用鍵であり、ダイジェスト値算出手段4に入力される。
【0055】
動的鍵生成手段3は各企業(電子ライセンス)独自の鍵を生成し、その鍵がランダムに生成することができ、生成された鍵は秘密鍵としてダイジェスト値算出手段4に入力される。
【0056】
ダイジェスト算出手段4は、電子ライセンスの副本情報、共用鍵情報、および秘密鍵情報に基づいて、MD5アルゴリズムによりダイジェスト値を算出し、算出されるダイジェスト値情報が二次元バーコードデータ手段5に入力される。
【0057】
二次元バーコードデータ手段5は、電子ライセンスの副本情報とダイジェスト値情報とを組み合わせる。組み合わせる際に、特殊符号を用いてダイジェスト値情報であることの印しを付ける。特殊符号である印しを付けることにより、読み取る時、特殊符号によってダイジェスト値を表示するか否かを選択できる。
【0058】
二次元バーコード図形生成手段6は、バーコード変換用データに従って図10に示すようなQRコードを生成する。生成したQRコード(図形)はドットマトリクス図形生成手段7に入力される。
【0059】
ドットマトリクス図形生成手段7は、QRコード内の位置決めパターン31を用いて、図11に示すようにドットマトリクス100の設定領域50a、50b、50c、50dを決定するとともに、各設定領域に秘密鍵情報に対応するドットマトリクス100を生成する。秘密鍵は暗号化されてドットマトリクス100に格納される。
【0060】
図9は、複合二次元バーコードの生成方法を説明するフローチャートである。
【0061】
以下、図8の装置と具体的なデータ(架空のデータ)を用いて、本発明の複合二次元バーコードの生成方法を説明する。
【0062】
ステップS1において、ビジネス電子ライセンスの副本情報を二次元バーコード用情報生成手段1に入力し、二次元バーコードを生成するためのデータ情報を生成する。
ビジネス電子ライセンスの副本情報は以下の通りである。
社会共通信用コード:81210108MA003JQGOW
名称:北京ロケット技術有限公司
業種:有限責任会社(自然人による投資または)
住所:北京、海淀区、北四環中路100号、航空ビル3020室
代表:張三
資本金:150万元
設立日:2015年11月2日
営業期間:2015年11月2日から2035年11月1日まで
業務範囲:技術開発、技術振興、技術相談、技術サービス、技術移転、ソフトウェア開発、ソフトウェアコンサルティング。
【0063】
ステップS2において、動的鍵生成手段3がランダムに鍵としてのmfuw4aly6jを生成し、生成された鍵がビジネス電子ライセンスの秘密鍵として使用され、二次元バーコードが異なれば秘密鍵も異なる。
【0064】
ステップS3において、鍵記憶手段2が企業管理機関の共用鍵であるalk3p3bv84231j6gを読み込み、共用鍵はすべての企業について共通であり、ビジネス電子ライセンスが変わっても変わることはない。
【0065】
ステップS4において、ダイジェスト値算出手段4は、上記ビジネス電子ライセンスの副本情報、共用鍵alk3p3bv84231j6g、および秘密鍵mfuw4aly6jの組み合わせについて、MD5アルゴリズムを用いて、ダイジェスト値としてのY9m7cDBwcv7KLCoy45i+nA==を算出する。
【0066】
ステップS5において、二次元バーコードデータ手段5は、上記ビジネス電子ライセンス副本のデータ情報とダイジェスト値情報であるY9m7cDBwcv7KLCoy45i+nA==を組み合わせて、バーコード変換用データを作成する。なお、組み合わせる際、特殊符号を用いて、ダイジェスト値情報であるY9m7cDBwcv7KLCoy45i+nA=に印しをつけて識別を行う。
【0067】
ステップS6において、二次元バーコード図形生成手段6は、図10に示すようにQRコードを生成する。生成二次元バーコード30は標準バーコードであり、かつ情報は明文情報であるため、通常の画像認識装置や光学式画像認識装置で自動的に読み取ることができる。
【0068】
ステップS7において、ドットマトリクス図形生成手段7は、QRコード30にある位置決めパターン31を用いて、予め設定された条件に従ってドットマトリクスの設定領域を決定する。設定領域は図11に示すように、二次元バーコード30の各辺の外側に設定領域50a、50b、50c、50dを設定し、ドットマトリクス100の形成に供する。
【0069】
ステップ8において、ドットマトリクス図形生成手段7は、秘密鍵情報にしたがって、設定領域に図11に示すドットマトリクス100を生成する。ドットマトリクス100の生成に際して、冗長化処理を行い、ドットマトリクス100の情報に誤り訂正機能を持たせる。誤り訂正レベルは、二次元バーコード30の誤り訂正レベルと同じでも異なってもよい。
【0070】
以上、本発明の複合二次元バーコードの生成装置および生成方法について説明したが、以上のように、既存の二次元バーコード生成装置および生成方法に基づいて共用鍵および秘密鍵の機能を追加するようにし、共用鍵および秘密鍵とビジネス電子ライセンスの副本情報との組み合わせについて、MD5アルゴリズムによってダイジェスト値を算出し、ダイジェスト値情報およびビジネス電子ライセンスの副本情報を二次元バーコード30に格納し、秘密鍵情報をドットマトリクス100に格納する。これにより、真偽検証機能を有する複合二次元バーコードが得られる。二次元バーコード内の情報は暗号化されていないため、通常の画像入力(識別装置)装置や光電走査装置を用いて自動的に読み取る(識別)ことができる。専用の読取装置が不要のため、使い勝手が向上する。ドットマトリクス読取装置とダイジェスト値演算装置を設けた専用識別装置では、二次元バーコードを復号して得られた情報と秘密鍵情報と共用鍵情報を用いて、ダイジェスト値を算出することができる。算出されたダイジェストと二次元バーコードの復号で得られたダイジェスト値と一致すれば、二次元バーコード内に格納した情報は本物の電子ライセンスの副本情報であることを判断することができる。ネットワークを依存しないで二次元バーコードが本物か否かを検証することができる。暗号化しなくても、ビジネス電子ライセンスの副本情報が偽造または改ざんされるのを防ぐことができる。
【0071】
以下、本発明の読取装置および方法について説明する。
【0072】
図12は、複合二次元バーコード読取装置の構成を示すブロック図である。図12に示すように、二次元バーコード読取装置は、図形取得手段11、二次元バーコード復号手段12、ドットマトリクス復号手段13、共用鍵記憶手段14、ダイジェスト値算出手段15、正真性検証手段16、表示手段17を有する。
【0073】
図形取得手段11は、二次元バーコード復号手段12およびドットマトリクス復号手段13と接続される。ドットマトリクス復号手段13、共用鍵記憶手段14、二次元バーコード復号手段12はダイジェスト値算出手段15に接続される。二次元バーコード復号手段12は正真性検証手段16、表示手段17と接続され、正真性検証手段16は表示手段17と接続されている。
【0074】
図形取得手段11は、複合二次元バーコードの画像を取得するように構成されている。
【0075】
二次元バーコード復号手段12は、複合二次元バーコード内の二次元バーコード30の情報について復号するように構成されている。
【0076】
ドットマトリクス復号手段13は、複合二次元バーコード内のドットマトリクスの情報について復号するように構成されている。
【0077】
共用鍵記憶部14は、共用鍵を記憶するように構成されており、本実施形態では、企業管理機構に保管される鍵であるalk3p3bv84231j6gが記憶されている。
【0078】
ダイジェスト値算出手段15は、二次元バーコードの複号による情報と共用鍵および秘密鍵を用いてMD5アルゴリズムによりダイジェスト値を算出するように構成されている。
【0079】
正真性確認手段16は、計算されたダイジェスト値情報と二次元バーコード30の復号で得られたダイジェスト値情報とを比較して、2つの情報が一致すか否かを判断するように構成される。
【0080】
表示手段17は、二次元バーコードの複号で得られる情報を表示するように構成される。同時に、正真性検証手段16の検証結果に応じて、検証が通過したか否かの情報を表示する。
【0081】
以下、図12の装置を例として、本発明の複合二次元バーコードの読み取り方法を説明する。
【0082】
図13は、複合二次元バーコード読取方法のフローチャートである。
【0083】
ステップS100において、図形取得手段11により複合二次元バーコードの画像を取得する。
【0084】
ステップS110において、二次元バーコード復号手段12は、複合二次元バーコード内の二次元バーコード30について復号して電子ライセンスの副本情報を取得する。この情報は検証の対象である。
【0085】
ステップS120において、ドットマトリクス復号手段13、複合二次元バーコード内のドットマトリクス100について復号して秘密鍵情報を得る。
【0086】
ステップS130において、共用鍵記憶手段14から予め格納されている企業管理の共用鍵であるalk3p3bv84231j6gを入力する。
【0087】
ステップS140において、ダイジェスト値算出手段15は、検証すべき電子ライセンスの副本情報、共用鍵および秘密鍵について、MD5アルゴリズムによってダイジェスト値を算出する。
【0088】
ステップS150において、正真性検証手段16は、算出したダイジェスト値情報と、二次元バーコード30の復号で得られたダイジェスト値情報とを比較する。
【0089】
ステップS160において、正真性検証手段16は、2つの情報が一致するか否かを判断し、一致する場合はステップS170に進み、一致しない場合はステップS180に進む。
【0090】
ステップS170においては、表示手段17は、ビジネス電子ライセンスの副本情報を表示し、検証結果に応じて、情報に改ざんがなく、検証を通過した旨を表示する。
【0091】
ステップS180では、表示部17は、ビジネス電子ライセンスの副本情報を表示し、検証結果に応じて、情報に改ざんがあり、検証を通過しない旨を表示する。
【0092】
したがって、表示された結果により、利用者は表示されたビジネス電子ライセンスの副本情報が本物か否かを知ることができる。情報に改ざんがある限り、秘密鍵と共用鍵が同じであっても、ダイジェスト値情報は変更されるから、ビジネス電子ライセンスの副本情報について高い信頼性を確保することができる。
【0093】
例えば、ビジネス電子ライセンスの副本情報について、事業範囲の最後にある句点を削除した場合、この小さな変更はサーバ内の情報と比較して識別することは困難であろう。しかし、MD5アルゴリズムを使用してダイジェスト値を計算すると、
同じ共用鍵であるalk3p3bv84231j6g、
同じ秘密鍵であるmfuw4aly6j、
を使用しても、計算されたダイジェスト値はJM4ugRvDzEaauPeRQwwTqA==である。
【0094】
本来のダイジェスト値であるY9m7cDBwcv7KLCoy45i+nA==に対して、変化が生じる。したがって、いかなる内容の変更があっても、ダイジェスト値に(大きな)変化が現れ、変更を検出することができる。二次元バーコードを電子ライセンスに適用した場合の信頼性を確保することができる。
【0095】
以上のように本発明の複合二次元バーコード読取装置および方法について説明したが、上記から明らかなように、既存の二次元バーコード読取装置に共用鍵記憶手段、ダイジェスト値算出手段、比較手段を追加さえずれば、専用の読取装置として使用することができる。ネットワークまたはサーバを利用することなく、ビジネス電子ライセンスの副本情報の正真性を確認することができる。
【0096】
また、ビジネス電子ライセンスの副本情報は明文であるから、既存の画像入力装置または光電走査装置を用いて自動的に読み取りすることができ、複合二次元バーコードを既存の二次元バーコードに置き換えて使用することができ、使用するハードルが下がり、コストの削減につながる。
【0097】
上記は本発明の具体的な一実施形態にすぎず、本発明の趣旨の範囲内で任意の変更を加えることができる。本実施形態では、ビジネス電子ライセンスを例にとって説明したが、複合二次元バーコードの適用対象は電子ライセンスに限らず、他の電子証書や請求書であってもよく、情報に正真性が要求されるものでなら何でも良い。
【0098】
本実施形態では、共用鍵と秘密鍵で鍵を構成しているが、共用鍵は必須ではなく省略してもよく、効果は変わらない。ダイジェスト値を算出するものとして、実施形態ではMD5アルゴリズムを使用したが、他のハッシュ(HASH)アルゴリズム、例えばCRC8、CRC16、CRC32、MD2、MD4、MD5、SHA1、SHA256、SHA384、SHA512、RIPEMD、PANAMA、TIGER、ADLER32などを用いてダイジェスト値を算出することもできる。
【0099】
変形例
図1図3において、ドットマトリクス100の濃色ドットは、二次元バーコード30における矩形セルの形状と形状が異なるが、変形例では、ドットマトリクス100のドットの形状、大きさ、ピッチおよび位置は、二次元バーコード30におけるセルの形状、大きさ、ピッチおよび位置と同じである。このため、ドットマトリクス100のドットは二次元バーコード30のセルと視覚的に一致するので、ドットマトリクス100の図形を二次元バーコード30に埋め込んで隠すことができる。
【0100】
二次元バーコード30を生成時、ドットマトリクス100を埋め込むための余白部分を予め生成しておくこともでき、余白部分にセルが存在しないため、余白部分に埋め込む際にドットマトリクス100がセルを遮ることはなく、二次元バーコード30の読み取りに誤りを生じさせることはない。ドットマトリクス100による誤りを二次元バーコード30の誤り訂正機能で訂正するものに比べて、二次元バーコード30の誤り訂正レベルを下げ、復号演算速度を上げることができる。
【0101】
具体的な実施形態においては、ビジネス電子ライセンスを例として、電子証書の媒体に複合二次元バーコードを適用したことを説明したが、ビジネス電子ライセンスに限定されず、偽造防止する必要なものなら、使用可能である。例えば電子ライセンス類文書、電子身分類文書、電子注文類文書、電子口座類文書などが含まれる。本実施形態では、二次元バーコード情報の検証結果について、表示する説明したが、それをトリガ信号として用いることもできる。
【0102】
複合二次元バーコードにおける二次元バーコード30としては、QRコードだけでなく、任意の形態の二次元バーコードを用いることができる。上記実施形態および変形例では、ドットマトリクスをもった複合二次元バーコードについて説明したが、ドットマトリクスを設けずに秘密鍵を直接二次元バーコードに組み込んでもよい。すなわち、図8の構成について、鍵記憶部2およびドットマトリクス図形生成手段7を省略し、動的鍵生成手段3生成の鍵情報を二次元バーコードデータ5に出力し、二次元バーコード図形生成手段6により二次元バーコードを生成することができる。これに対応して、図12の複合二次元バーコード読取装置において、ドットマトリクス復号手段13と共用鍵記憶手段を省略することになる。
【0103】
まとめると、本発明の技術的思想の範囲内であれば、様々な変形処理が可能であり、この場合、情報の改ざん防止や情報の信頼性の確保に同じ効果が得られる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13