(57)【要約】【課題】情報コードの読み取りに関する制限を付与して秘匿データの秘匿性を向上させ得る情報コードおよび情報コード読取装置ならびに情報コード読取システムを提供する。【解決手段】情報コードＣは、秘匿データが記録された非公開領域と、秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報と秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報との少なくともいずれか１つが制限情報として記録された領域とを備えている。【選択図】図４
2015194811.tif 000002
【特許請求の範囲】
【請求項１】
秘匿する秘匿データが記録された非公開領域を備える情報コードであって、
前記秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報と前記秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報との少なくともいずれか１つが制限情報として記録された領域を備えることを特徴とする情報コード。
【請求項２】
公開する公開データが記録された公開領域をさらに備えることを特徴とする請求項１に記載の情報コード。
【請求項３】
請求項１または２に記載の情報コードを光学的に読み取る情報コード読取装置であって、
前記情報コードを撮像する撮像手段と、
前記撮像手段により撮像された情報コードをデコードして前記秘匿データおよび前記制限情報を含めた情報を取得するデコード手段と、
前記デコード手段により取得された前記制限情報に基づいて、前記秘匿データに応じた処理を実行可能な状態であるか否かについて判定する判定手段と、
前記判定手段により前記秘匿データに応じた処理を実行可能な状態であると判定されると、前記デコード手段により取得された前記秘匿データに応じた処理を実行する実行手段と、
を備えることを特徴とする情報コード読取装置。
【請求項４】
現在位置に関する位置情報を取得する現在位置情報取得手段を備え、
前記判定手段は、前記現在位置情報取得手段により取得した位置情報が前記位置制限情報から求められる所定の位置の範囲内にある場合に、前記秘匿データに応じた処理を実行可能な状態であると判定することを特徴とする請求項３に記載の情報コード読取装置。
【請求項５】
現在時刻情報を取得する現在時刻情報取得手段を備え、
前記判定手段は、前記現在時刻情報取得手段により取得した現在時刻が前記時刻制限情報から求められる所定の時刻の範囲内にある場合に、前記秘匿データに応じた処理を実行可能な状態であると判定することを特徴とする請求項３に記載の情報コード読取装置。
【請求項６】
現在位置に関する位置情報を取得する現在位置情報取得手段と、
現在時刻情報を取得する現在時刻情報取得手段と、を備え、
前記判定手段は、前記現在位置情報取得手段により取得した位置情報が前記位置制限情報から求められる所定の位置の範囲内にあり、かつ、前記現在時刻情報取得手段により取得した現在時刻が前記時刻制限情報から求められる所定の時刻の範囲内にある場合に、前記秘匿データに応じた処理を実行可能な状態であると判定することを特徴とする請求項３に記載の情報コード読取装置。
【請求項７】
前記現在時刻情報取得手段は、ＧＰＳ衛星から受信したＧＰＳ信号に含まれる時刻情報に基づいて前記現在時刻情報を取得することを特徴とする請求項５または６に記載の情報コード読取装置。
【請求項８】
請求項３〜７のいずれか一項に記載の情報コード読取装置と、
前記情報コードを生成するコード生成装置と、
を備えることを特徴とする情報コード読取システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、秘密にして隠しておきたい秘匿データが記録された情報コードおよび情報コード読取装置ならびに情報コード読取システムに関するものである。
【背景技術】
【０００２】
ＱＲコード（登録商標）などの情報コードは、現在、様々な用途に用いられており、情報コード内に有益な情報、或いは有益となり得る情報を記録して利用者に提供することも多い。例えば、下記特許文献１に示す二次元コードの生成方法では、秘匿データを含むように二次元コードを暗号化して生成する。つまり、発行者しか知らない情報を秘匿データとして二次元コードに含めることで、偽造された二次元コードであるかどうかを見分けることができる。さらに、個人情報などセキュリティ性が求められる情報を秘匿データとして二次元コードに含めることで、復号キーを有する読取装置と異なる通常の読取装置での秘匿データの読み取りを防止して、情報漏洩を防止することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−００９５４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上述のような構成では、秘匿データを読み取るための復号キーが予め読取装置のメモリ等に記憶されることで、その読取装置が正規の読取装置として機能する。この状態の読取装置を用いて秘匿データが記録された二次元コードを撮像することで、読取作業者が特別な操作をすることなく、秘匿データを読み取ることができる。しかしながら、正規の読取装置そのものが盗難等されてしまうと、秘匿データを不正に取得されてしまう可能性がある。
【０００５】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、情報コードの読み取りに関する制限を付与して秘匿データの秘匿性を向上させ得る情報コードおよび情報コード読取装置ならびに情報コード読取システムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、特許請求の範囲の請求項１に記載の発明は、秘匿する秘匿データが記録された非公開領域を備える情報コード（Ｃ）であって、前記秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報と前記秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報との少なくともいずれか１つが制限情報として記録された領域を備えることを特徴とする。
【０００７】
請求項３の発明は、請求項１または２に記載の情報コード（Ｃ）を光学的に読み取る情報コード読取装置（２０）であって、前記情報コードを撮像する撮像手段（２６）と、前記撮像手段により撮像された情報コードをデコードして前記秘匿データおよび前記制限情報を含めた情報を取得するデコード手段（２１）と、前記デコード手段により取得された前記制限情報に基づいて、前記秘匿データに応じた処理を実行可能な状態であるか否かについて判定する判定手段（２１）と、前記判定手段により前記秘匿データに応じた処理を実行可能な状態であると判定されると、前記デコード手段により取得された前記秘匿データに応じた処理を実行する実行手段（２１）と、を備えることを特徴とする。
なお、上記各括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【発明の効果】
【０００８】
請求項１の発明では、情報コードは、秘匿データが記録された非公開領域と、秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報と秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報との少なくともいずれか１つが制限情報として記録された領域とを備えている。
【０００９】
これにより、秘匿データを読み取るための復号キー等を有する読取装置を用いて読み取っても、その読取装置が秘匿データに応じた処理を実行可能な場所にない場合や秘匿データに応じた処理を実行可能な時刻でない場合には、秘匿データに応じた処理を実行しないように読取装置を制御することができる。このように、情報コードの読み取りに関する制限を付与することで、読取装置そのものが盗難等された場合であっても、秘匿データの秘匿性を向上させることができる。
【００１０】
請求項２の発明では、公開データが記録された公開領域をさらに備えるため、その読取装置が秘匿データに応じた処理を実行可能な場所にない場合や秘匿データに応じた処理を実行可能な時刻でない場合には、公開データに応じた処理が実行されることとなる。このように公開データに応じた処理が実行されることから、公開データの他に秘匿データが記録されていることを認識することが困難であり、秘匿データの秘匿性をさらに向上させることができる。
【００１１】
請求項３の発明では、デコード手段により取得された制限情報に基づいて、秘匿データに応じた処理を実行可能な状態であると判定手段により判定されると、デコード手段により取得された秘匿データに応じた処理が実行手段により実行される。
【００１２】
このため、情報コード読取装置が秘匿データに応じた処理を実行可能な場所にない場合や秘匿データに応じた処理を実行可能な時刻でない場合には、秘匿データに応じた処理が実行手段にて実行されることもない。これにより、情報コード読取装置そのものが盗難等された場合であっても、秘匿データの秘匿性を向上させることができる。
【００１３】
請求項４の発明では、現在位置情報取得手段により取得した位置情報が位置制限情報から求められる所定の位置の範囲内にある場合に、秘匿データに応じた処理を実行可能な状態であると判定手段により判定される。これにより、読み取り位置を利用して秘匿データの秘匿性を向上させるだけでなく、情報コードを読み取り可能とする位置に関する範囲を容易に設定することができる。
【００１４】
請求項５の発明では、現在時刻情報取得手段により取得した現在時刻情報が時刻制限情報から求められる所定の時刻の範囲内にある場合に、秘匿データに応じた処理を実行可能な状態であると判定手段により判定される。これにより、読み取り時刻を利用して秘匿データの秘匿性を向上させるだけでなく、情報コードを読み取り可能とする時刻に関する範囲を容易に設定することができる。
【００１５】
請求項６の発明では、現在位置情報取得手段により取得した位置情報が位置制限情報から求められる所定の位置の範囲内にあり、かつ、現在時刻情報取得手段により取得した現在時刻情報が時刻制限情報から求められる所定の時刻の範囲内にある場合に、秘匿データに応じた処理を実行可能な状態であると判定手段により判定される。これにより、読み取り位置および読み取り時刻の双方を利用することで秘匿データの秘匿性をさらに向上させるだけでなく、情報コードを読み取り可能とする位置および時刻に関する範囲を容易に設定することができる。
【００１６】
請求項７の発明では、現在時刻情報取得手段により、ＧＰＳ衛星から受信したＧＰＳ信号に含まれる時刻情報に基づいて現在時刻情報が取得される。このため、情報コード読取装置に内蔵された機器による時刻情報を利用しないため、内蔵機器等の時刻の偽装による不正な秘匿データの読み取りを防止することができる。
【００１７】
請求項８の発明では、請求項３〜７のいずれか一項に記載の情報コード読取装置と、情報コードを生成するコード生成装置と、を備えている。これにより、情報コード読取装置そのものが盗難等された場合であっても、秘匿データの秘匿性を向上させることができる等の効果を奏する情報コード読取システムを実現することができる。
【図面の簡単な説明】
【００１８】
【図１】第１実施形態に係る情報コード読取システムの概略構成を示す説明図である。
【図２】図１のチケット印刷用プリンタのハードウェア構成例を示すブロック図である。
【図３】チケット印刷用プリンタにより実行されるコード生成処理の流れを示すフローチャートである。
【図４】図３に示すコード生成処理により情報処理されるデータやコードのフォーマット例を示す説明図である。
【図５】図１の情報コード読取装置のハードウェア構成例を示すブロック図である。
【図６】情報コード読取装置の制御部により実行されるデコード処理の流れを示すフローチャートである。
【図７】図６に示す復号化処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１９】
［第１実施形態］
以下、本発明に係る情報コードおよび情報コード読取装置を備える情報コード読取システムを具現化した第１実施形態について、図を参照して説明する。なお、図１は、第１実施形態に係る情報コード読取システム１の概略構成を示す説明図である。図２は、図１のチケット印刷用プリンタ１０のハードウェア構成例を示すブロック図である。
【００２０】
図１に示す情報コード読取システム１は、チケット発行センター２に配置されたチケット印刷用プリンタ１０を用いて情報コードＣが印刷されたコンサートのチケットＳを発行するとともに、発行されたチケットＳの情報コードＣをコンサート会場３に設置された情報コード読取装置２０にて光学的に読み取ることで、当該情報コードＣとしてコード化された情報を取得して入場管理するシステムとして構成されている。
【００２１】
本実施形態に係る情報コードＣは、ＱＲコードとして、公開領域と非公開領域（所定の復号キーにより解読可能に暗号化された暗号データが記録される領域）とを備えた一部非公開コードとして構成されている。本実施形態では、公開領域には、入場チケットに関する情報として公開可能な開示データ（公開データ）、例えば、コンサートを特定する情報や管理番号等が記録されている。また、非公開領域には、入場チケットに関する情報として非公開とすべき秘匿データ、例えば、チケット購入者の個人情報等が記録されている。
【００２２】
チケット印刷用プリンタ１０は、ケーブル７を介してチケット発行用端末４に接続されており、チケット発行用端末４から出力されて当該チケット印刷用プリンタ１０に入力されるチケットＳの発行に関するデータ（以下、印刷データともいう）に基づいて情報コードＣを生成してチケットＳに印刷する機能を有するものである。チケット印刷用プリンタ１０およびチケット発行用端末４は、チケット発行センター２に配置されており、情報コードＣを生成する「コード生成装置」の一例に相当し得る。
【００２３】
チケット発行用端末４は、端末本体５およびディスプレイ６により構成されており、端末本体５は、図略の、ＭＰＵ、メインメモリ（主記憶装置）、ハードディスク（補助記憶装置）、入出力インタフェース、通信インタフェース、キーボード、ポインティングデバイス等からなる情報処理装置で、またディスプレイ６は、端末本体５に接続されることにより端末本体５から出力される情報を画面表示可能な情報表示装置である。
【００２４】
なお、この端末本体５には、チケット印刷用プリンタ１０のデバイスドライバがインストールされて（組み込まれて）おり、当該チケット発行用端末４の利用者が、情報コードＣとしてチケットＳに印刷したい文字等を含んだ印刷データを、端末本体５からチケット印刷用プリンタ１０に対して任意に出力可能にしている。
【００２５】
これに対し、チケット印刷用プリンタ１０は、図２に示すように、主に、ＭＰＵ１１、メモリ１２、インタフェース１３、ローラ制御部１４、ヘッド制御部１５、ローラ１７、ヘッド１８等から構成されている。なお、これらは、図略のプリント配線板に実装あるいは図略のハウジング内に内装されている。
【００２６】
ＭＰＵ１１は、チケット印刷用プリンタ１０全体を制御可能なマイクロコンピュータ（以下「マイコン」という）で、メモリバスを介して接続されるメモリ１２とともに情報処理装置を構成し得るもので情報処理機能を有する。このＭＰＵ１１には、メモリ１２のほかに、インタフェース１３、ローラ制御部１４やヘッド制御部１５も接続されている。なお、後述するコード生成処理は、このＭＰＵ１１およびメモリ１２により実行される。
【００２７】
メモリ１２は、半導体メモリ装置で、例えばＲＡＭ（ＤＲＡＭ、ＳＲＡＭ等）やＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ等）がこれに相当する。このメモリ１２のうちのＲＡＭには、前述したチケット発行用端末４から送られてくる文字データを蓄積するバッファ領域のほか、ＭＰＵ１１が算術演算や論理演算等の各処理時に利用する作業領域等も確保可能に構成されている。またＲＯＭには、後述のコード生成処理等を実行可能な所定プログラムやその他、ローラ制御部１４やヘッド制御部１５等の各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【００２８】
インタフェース１３は、前述したチケット発行用端末４の端末本体５から送られてくる印刷データ等を受信可能にする入力インタフェースで、シリアルバス等を介してＭＰＵ１１に接続されている。このインタフェース１３を介してＭＰＵ１１に入力された印刷データは、コード生成処理によって後述するように情報処理されてコード化される。
【００２９】
ローラ制御部１４は、ローラ１７の駆動機構（図略）を制御し得る制御装置で、シリアルバス等を介してＭＰＵ１１に接続されている。これにより、ＭＰＵ１１から受けた制御信号に従ってローラ１７の回転の開始や停止あるいは回転方向等を制御している。
【００３０】
ヘッド制御部１５は、ラベル等の所定の用紙に対して任意のパターンを印刷し得るように構成されており、シリアルバス等を介してＭＰＵ１１に接続されている。本実施形態では、後述のコード生成処理によって生成された情報コードＣを所定の用紙に印刷可能にするもので、前述したローラ制御部１４による用紙の紙送りタイミングに同期して、情報コードＣを構成する位置検出パターン、タイミングパターンやデータコード等を当該用紙に印刷する。
【００３１】
このようにチケット印刷用プリンタ１０を構成することによって、チケット発行用端末４から出力されて当該チケット印刷用プリンタ１０に入力された印刷データは、インタフェース１３を介してメモリ１２のバッファ領域に一旦蓄えられた後、次に説明するコード生成処理に渡される。
【００３２】
ここで、コード生成処理を図３および図４を参照して説明する。なお、図３は、チケット印刷用プリンタ１０により実行されるコード生成処理の流れを示すフローチャートである。図４は、図３に示すコード生成処理により情報処理されるデータやコードのフォーマット例を示す説明図であり、図４（Ａ）は、制限情報を備えないフォーマット例を示し、図４（Ｂ）は、位置制限情報を備えるフォーマット例を示し、図４（Ｃ）は、時刻制限情報を備えるフォーマット例を示し、図４（Ｄ）は、位置制限情報および時刻制限情報を備えるフォーマット例を示す。
【００３３】
図３に示すコード生成処理は、チケット印刷用プリンタ１０の電源投入により起動するＭＰＵ１１およびメモリ１２によって開始され、まずステップＳ１０１により初期設定処理が行われる。この処理は、メモリ１２の作業領域や印刷データを蓄えるバッファ領域をクリアしたり、所定のフラグやカウンタ等をクリアする。
【００３４】
ステップＳ１０３では、印刷データを受信したか否かを判定する処理で、印刷データを受信するまで、このステップを繰り返す（Ｓ１０３；Ｎｏ）。そして、印刷データを受信したと判定すると（Ｓ１０３；Ｙｅｓ）、続くステップＳ１０５によりタイマーのカウント値をクリアする処理を行う。このステップＳ１０５でカウンタ値がクリアされるタイマーは、次のステップＳ１０７により所定時間の経過を計時するものである。
【００３５】
ステップＳ１０７では、先のタイマーにより所定時間が経過したか否かを判定する処理が行われる。即ち、チケット発行用端末４から送られてくる印刷データに、暗号化等に関するデータ（以下、暗号化等データともいう）が含まれているか否かを次のステップＳ１１１により判定する必要上、例えば、所定時間として１秒間が経過したか否かを判定し、この時間が経過するまでに、チケット発行用端末４から暗号化に関するデータが送られてこない場合には、所定時間の経過とともにステップＳ１０９に処理を移行する（Ｓ１０７；Ｙｅｓ）。
【００３６】
これに対し、所定時間が経過していない場合には（Ｓ１０７；Ｎｏ）、次のステップＳ１１１により暗号化等データとして、暗号するために用いる暗号キー（暗号鍵）と、秘匿データに応じた処理の実行の制限に関する制限情報と、秘匿データおよび制限情報のデータレコード中の位置関係を示すデータ位置情報と、を受信したか否かを判定する処理が行われる。
【００３７】
ここで、本実施形態では、上記制限情報として、秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報が用意されており、例えば、実行可能な場所の範囲について、北端を示す緯度Ｌｎ、南端を示す緯度Ｌｓ、東端を示す経度Ｌｅおよび西端を示す経度Ｌｗを設定することができる。すなわち、本実施形態では、情報コードＣは、コンサート会場３へのチケットＳに印刷されるため、緯度Ｌｎ，Ｌｓおよび経度Ｌｅ，Ｌｗは、コンサート会場３の各入場ゲートの位置を秘匿データに応じた処理を実行可能な場所とするように設定される。
【００３８】
そして、暗号化等データを受信していると判定した場合には（Ｓ１１１；Ｙｅｓ）、続くステップＳ１１３に処理を移行し、暗号化等データを受信していると判定できない場合には（Ｓ１１１；Ｎｏ）、前述したステップＳ１０７に処理を戻して、再度、時間の経過を判定する。
【００３９】
そして、所定時間が経過したとステップＳ１０７により判定した場合には（Ｓ１０７；Ｙｅｓ）、ステップＳ１０９により所定のフラグに「０」をセットする。このフラグは、印刷データに秘匿データが含まれているか否かを示すもので、「０」がセットされている場合には、秘匿データが含まれていないことを示し、「１」がセットされている場合には、秘匿データが含まれていることを示す。このため、ステップＳ１１１により暗号化等データを受信していると判定した場合には（Ｓ１１１；Ｙｅｓ）、続くステップＳ１１３によりこのフラグに「１」をセットする処理が行われる。
【００４０】
ステップＳ１１３により所定のフラグに「１」をセットすると、続くステップ１１５により、開示データ、秘匿データおよび制限情報の各データを並び替える処理が行われる。即ち、印刷データに、開示データおよび秘匿データと、秘匿データに応じた処理制限に関する制限情報と、が含まれており、これらがデータレコード中で混在している場合に、ステップＳ１１１により受信したデータ位置情報に基づいて、各データを所定の順番に入れ替える処理を行う。例えば、チケット発行用端末４から送られてくる印刷データのレコードに、開示データ、秘匿データおよび制限情報が含まれていたとすると、ステップＳ１１５により、これらのデータの順番を開示データ、制限情報、秘匿データの順に並び替える処理を行う。
【００４１】
次のステップＳ１１７では、開示データや秘匿データ等の各データをＪＩＳの基本仕様（JIS X 0510:2004）に従って符号化する処理が行われる。これにより、開示するデータや秘匿するデータ等を表すコード語としてコード化された開示データコードや秘匿データコード等が生成される。また続くステップＳ１１９では、開示データや秘匿データ等の各データに対する誤り訂正符号をＪＩＳの基本仕様（JIS X 0510:2004）に準拠して生成しさらにそれをコード化して誤り訂正コードを生成する処理が行われる。
【００４２】
そして、続くステップＳ１２１により、開示データコードの後に終端識別コードを付加する処理が行われる。終端識別コードは、例えば、４ビットパターンで「００００」であり、図４（Ａ）または図４（Ｂ）に示すように開示データコードの直後に位置し、開示データコードが複数ある場合には、最後の開示データコードの直後に位置する。
【００４３】
次のステップＳ１２３では、前述した所定のフラグが「１」にセットされているか否か、即ち秘匿データが含まれているか否かを判定する処理が行われる。そして、秘匿データが含まれている場合には（フラグが「１」にセットされている場合：Ｓ１２３；Ｙｅｓ）、ステップＳ１２５に処理を移行し、また秘匿データが含まれていない場合には（フラグが「０」にセットされている場合：Ｓ１２３；Ｎｏ）、一連の秘匿処理（Ｓ１２５〜Ｓ１４１）を飛ばしてステップＳ１４３に処理を移行する。
【００４４】
ステップＳ１２５〜Ｓ１４１は、印刷データに秘匿データが含まれている場合に行われる一連の秘匿処理である。まず、ステップＳ１２５により、チケット発行用端末４から送られてくる印刷データに制限情報が含まれているか否かを判定する処理が行われる。そして、制限情報が含まれていない場合には（Ｓ１２５；Ｎｏ）、ステップＳ１２７に処理を移行し、また制限情報が含まれている場合には（Ｓ１２５；Ｙｅｓ）、ステップＳ１２７からの処理を飛ばしてステップＳ１３１に処理を移行する。
【００４５】
ステップＳ１２７では、秘匿識別コードを終端識別コードの直後に付加する処理が行われる。このステップＳ１２７による処理は、図４（Ａ）に示すように、秘匿識別コードを終端識別コードの直後に配置することで、この終端識別コードの後に配置されているデータコードが「秘匿するデータを表すコード語としてコード化されたものであること」を明示的に表す。これにより、本コード生成処理によって生成された情報コードＣを、コードリーダ等にてデコードする際に、当該情報コードＣに秘匿データコードが含まれていることを認識可能にするので、例えば、読取対象外のデータやデータ化けしたデータ等を秘匿データコードと誤認して読み取ることを防ぎ、またこれに起因する誤動作の発生を防止することもできる。
【００４６】
ステップＳ１２９では、秘匿データコードのデータ長を計算して求め、このデータ長をコード化したものを秘匿識別コードの直後に付加する処理が行われる。これにより、秘匿データコードが配置される領域や範囲がわかるので、本コード生成処理によって生成された情報コードＣを、コードリーダ等にてデコードする際に、どこまでが秘匿データコードであるか、または暗号データコードであるかを認識可能にする。
【００４７】
これに対し、チケット発行用端末４から送られてくる印刷データに制限情報が含まれている場合には（Ｓ１２５；Ｙｅｓ）、ステップＳ１３１により、終端識別コードの直後に配置する秘匿識別コードに制限情報（位置制限情報）が含まれることを示すフラグが設定されて付加される。次のステップＳ１３３による処理では、図４（Ｂ）に示すように、秘匿識別コードの直後に制限情報をコード化したものを付加する処理が行われる。続くステップＳ１３５では、秘匿データコードのデータ長を計算して求め、このデータ長をコード化したものを制限情報の直後に付加する処理が行われる。
【００４８】
ステップＳ１３７では、暗号キーがあるか否かを判定することによって、秘匿データコードを暗号化する必要があるか否かを判定する。即ち、ステップＳ１１１によって暗号キーをチケット発行用端末４から受信している場合には、暗号キーがあるので（Ｓ１３７；Ｙｅｓ）、ステップＳ１３９に移行して暗号化処理を行う。これに対して、ステップＳ１１１によって暗号キーをチケット発行用端末４から受信していない場合には、暗号キーがないので（Ｓ１３７；Ｎｏ）、ステップＳ１３９による暗号化処理を飛ばしてステップＳ１４１に移行する。
【００４９】
なお、ステップＳ１１１により暗号キーを受信していない場合であっても、チケット発行用端末４が予め暗号キーをメモリ１２やハードディスク等の情報記憶媒体に保持しているときには暗号キーがあるので（Ｓ１３７；Ｙｅｓ）、ステップＳ１３９で暗号化処理を行う。
【００５０】
ステップＳ１３９では、秘匿データコードを暗号化する処理が行われる。この処理は、例えば、公知の視覚復号型暗号技術（視覚復号型秘密分散法）を用いて秘匿データコードを暗号化する。これにより、このような暗号化されていない平文データが付加されている場合に比べてセキュリティの強度を高めることができる。
【００５１】
ステップＳ１４１では、データ長の直後に秘匿データコードを付加する処理が行われる。これにより、一般仕様の二次元コードの読取装置では、二次元コードのデコード処理において、終端識別コードの後に配置される埋め草コード等は読み取りの対象にしないため、このように終端識別コードの後に配置された秘匿データコードや制限情報は読み取ることはできない。したがって、このような秘匿データコードや制限情報が含まれる二次元コードを一般仕様の読取装置で読み取っても、秘匿データコードや制限情報の存在はわからないので、当該読取装置の利用者には秘匿データや制限情報の存在を認識させないようにすることが可能となる。
【００５２】
続くステップＳ１４３では、例えば、ＪＩＳの基本仕様（JIS X 0510:2004）に記載されている処理アルゴリズムに準拠して、秘匿データコードの後に埋め草コードを付加する処理が行われ、さらにステップＳ１４５では、誤り訂正コードを付加する処理が行われる。
【００５３】
これにより、図４（Ａ）または図４（Ｂ）に示すフォーマットのデータコードが生成される。特に、図４（Ｂ）に示すフォーマットのデータコードから生成される情報コードＣは、秘匿データが記録された非公開領域と、秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報が制限情報として記録された領域とを備えるように構成される。このようなデータコードに基づいて各セルが生成されることで情報コードＣが印刷可能な状態となる。そして、チケット印刷用プリンタ１０により情報コードＣが所定のチケット情報等とともに所定の用紙に印刷されることで、チケットＳが発行される。
【００５４】
なお、上記制限情報として、位置制限情報に代えて、秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報を用意することができる。この時刻制限情報としては、例えば、実行可能な時刻の範囲について、図４（Ｃ）に示すように、開始時刻を示す時刻Ｔｓおよび終了時刻を示す時刻Ｔｅを設定することができる。この場合、時刻Ｔｓおよび時刻Ｔｅは、コンサート会場３への入場開始時刻と入場終了時刻を考慮して設定される。また、ステップＳ１３１では、秘匿識別コードには時刻制限情報が含まれることを示すフラグが設定される。
【００５５】
また、上記制限情報として、図４（Ｄ）に示すように、位置制限情報および時刻制限情報の双方を用意することができる。この場合には、ステップＳ１３１では、秘匿識別コードに位置制限情報および時刻制限情報が含まれることを示すフラグが設定され、秘匿データに応じた処理を実行可能な場所の位置の範囲と時刻の範囲とのそれぞれについて制限することができる。また、上記制限情報として、位置制限情報に加えて他の制限情報を設定することもできるし、時刻制限情報に加えて他の制限情報を設定することもできる。
【００５６】
なお、上記コード生成処理は、チケット印刷用プリンタ１０にて実行されることに限らず、チケット発行用端末４の端末本体５にて実行されてもよい。この場合、チケット印刷用プリンタ１０には、印刷データに代えて、端末本体５にて生成された情報コードＣを印刷するためのデータが入力されることとなる。
【００５７】
次に、本実施形態に係る情報コード読取装置２０の構成を図５を参照して説明する。なお、図５には、図１の情報コード読取装置２０のハードウェア構成例を示すブロック図が図示されている。
情報コード読取装置２０は、上述のようにチケット印刷用プリンタ１０により印刷された情報コードＣを光学的に読み取る携帯型の読取装置である。
【００５８】
図５に示すように、情報コード読取装置２０は、当該情報コード読取装置２０の全体的制御を司る制御部２１と、書換え可能な不揮発性メモリであるフラッシュメモリ２２と、書換え可能な揮発性メモリであるＲＡＭ２３とを備えている。フラッシュメモリ２２には、ＯＳなどのシステムプログラムやこのシステムプログラムを読み出すローダ等を格納する格納領域が設けられている。ＲＡＭ２３には、ローダによりフラッシュメモリ２２から読み出されて展開されたシステムプログラムを格納するためのワーク領域や画像データを蓄える画像データ蓄積領域等が設けられている。制御部２１は、ＲＡＭ２３のワーク領域に格納されたシステムプログラムに従って、後述するデコード処理など、種々のアプリケーションプログラムを実行する。
【００５９】
また、情報コード読取装置２０は、表示部２４、操作部２５、コード読取部２６、リアルタイムクロック（以下、ＲＴＣともいう）２７、無線通信部２８および電源部２９などを備えている。表示部２４は、液晶モニタ等によって構成されており、制御部２１からの表示処理に関する指示を受けて各種情報を表示するように動作する。操作部２５は、外部に露出するトリガースイッチ等の複数の操作キーを備えており、操作キーの操作に応じた所定の情報を制御部２１に対して出力するように構成されている。
【００６０】
コード読取部２６は、チケットＳに印刷された情報コードＣ等を光学的に読み取る機能を有するもので、画像認識モジュールを備えている。この画像認識モジュールは、照明光源や受光センサ（図略）等を備えており、照明光源からの照射光が情報コードＣにて反射され反射光が読取口を介して受光センサにて受光されると、この反射光に応じた受光信号を受光センサから制御部２１に出力するように構成されている。制御部２１では、この受光信号に基づいて情報コードＣの情報が取得されることとなる。なお、コード読取部２６は、「撮像手段」の一例に相当し得る。
【００６１】
ＲＴＣ２７は、現在の日付時刻を計時する機能を有するもので、メインバッテリの未装着状態であっても、サブバッテリの電圧が動作可能な電圧以上であれば、その計時動作が継続されるように構成されている。なお、ＲＴＣ２７は、「現在時刻情報取得手段」の一例に相当し得る。
【００６２】
無線通信部２８は、例えば、Wireless WAN モジュールであって、制御部２１により制御されて、読取情報等について外部の管理サーバ等との間で所定のネットワークを介して無線通信可能に構成されている。無線通信部２８は、ＧＰＳ受信部２８ａを備えており、このＧＰＳ受信部２８ａは、周知のＧＰＳ衛星から送信されるＧＰＳ信号を受信して制御部２１に出力するように構成されている。ここで、ＧＰＳ信号には、情報コード読取装置２０の現在位置（緯度、経度）を測位するための衛星の位置情報や時刻情報が含まれている。なお、ＧＰＳ受信部２８ａは、「現在位置情報取得手段」の一例に相当し、無線通信部２８に設けられることなく、直接制御部２１に接続されるように構成されてもよい。
【００６３】
電源部２９は、図略のバッテリからの電力供給を受け、制御部２１や各種電気部品に電力を供給している。
【００６４】
次に、コンサート会場３の入場ゲートにおいて、上述のように構成される情報コード読取装置２０を用いてチケットＳに印刷された情報コードＣ等を光学的に読み取る処理について以下に説明する。なお、情報コード読取装置２０は、コンサート会場３の入場ゲートのスタッフによりそれぞれ携帯されて使用され、フラッシュメモリ２２には、管理サーバ等から取得した復号キーが予め記憶されているものとする。
【００６５】
入場ゲートのスタッフにより情報コード読取装置２０の電源スイッチがオンされると、所定の自己診断処理等がなされて、情報コードＣの読み取りが可能となり、デコード処理を開始するトリガースイッチの入力を受け付ける状態になる。そして、スタッフが入場者により提示されたチケットＳの情報コードＣに対して読取口を向けた状態でトリガースイッチを操作すると、照明光源から照射光が照射される。すると、情報コードＣに照射された照明光が反射し、その反射光が読取口を介して受光センサにて受光されると、画像処理された当該情報コードＣの画像データが取得されて、次に説明するデコード処理に渡される。
【００６６】
ここで、制御部２１にて実行されるデコード処理を、図６および図７を参照して説明する。なお、図６は、情報コード読取装置２０の制御部２１により実行されるデコード処理の流れを示すフローチャートである。図７は、図６に示す復号化処理の流れを示すフローチャートである。
【００６７】
図６に示すデコード処理は、情報コード読取装置２０の電源投入により起動する制御部２１によって開始され、まずステップＳ２０１により初期設定処理が行われる。この処理は、ＲＡＭ２３の画像データ蓄積領域等をクリアしたり、所定のフラグやカウンタ等をクリアする。続くステップ２０３により、画像データを取得する処理が行われる。即ち、ＲＡＭ２３の画像データ蓄積領域から蓄えられている画像データを読み出す処理を行う。
【００６８】
続くステップＳ２０５では、位置検出パターンを検出する処理が行われる。即ち、情報コードＣは、ＱＲコードでありその三隅に位置検出パターンが設けられているため、これらを検出することによって、次のステップＳ２０７により情報コードＣのコード外形を検出する。
【００６９】
そして、ステップＳ２０９により各セルの中心座標を算出する処理を行うことによって次ステップＳ２１１により各セルの白黒を判別する。これにより、ＱＲコードを構成する形式情報やデータブロックを認識可能になるので、続くステップＳ２１３により、欠損等しているデータブロックがある場合には、そのブロックを誤り訂正可能であるか否かを判定する。
【００７０】
そして、ステップＳ２１３により誤り訂正可能であると判定できる場合には（Ｓ２１３；ＯＫ）、誤り訂正をして続くステップＳ３００により復号化処理を行う。これに対し、ステップＳ２１３により誤り訂正可能であると判定できない場合には（Ｓ２１３；ＮＧ）、誤り訂正できないので、ステップＳ２０３に処理を移行して再度、画像データを取得してステップＳ２０３〜Ｓ２１１の各処理を行う。
【００７１】
ステップＳ３００は、その詳細が図７に図示されているので、ここからは図７を参照して復号化処理を説明する。なお、ステップＳ３００を実行する制御部２１は、「デコード手段」の一例に相当し得る。
図７に示すように、復号化処理では、ステップＳ３０１により、まず先頭のデータコードを取得する処理が行われる。続くステップＳ３０３では、ステップＳ３０１により取得されたデータコードが、終端識別コードであるか否かを判定する処理が行われる。これにより、当該データコードが終端識別コードであると判定した場合には（Ｓ３０３；Ｙｅｓ）、終端識別コードよりも前に配置される通常のデータコードはこれ以上、当該情報コードＣには含まれていないことになるので、ステップＳ３０９に処理を移行する。
【００７２】
これに対し、当該データコードが終端識別コードであると判定できない場合には（Ｓ３０３；Ｎｏ）、終端識別コードよりも前にまだ通常のデータコードが存在することになるので、続くステップＳ３０５に処理を移行して当該データコード、つまり開示データコードを復号（デコード）する処理が行われる。続いて、ステップＳ３０７により、次のデータコードを取得する処理が行われ、このデータコードが終端識別コードであると判定できない場合には（Ｓ３０３；Ｎｏ）、再度ステップＳ３０５以降の処理がなされる。
【００７３】
そして、終端識別コードの前方に配置される１または２以上の開示データコードが取得されて復号（デコード）されると（Ｓ３０３；Ｙｅｓ）、ステップＳ３０９により、終端識別コードの次に配置されるデータコードを取得する処理が行われる。続くステップＳ３１１では、ステップＳ３０９により取得されたデータコードが、秘匿識別コードであるか否かを判定する処理が行われる。これにより、当該データコードが秘匿識別コードでないと判定した場合には（Ｓ３１１；Ｎｏ）、秘匿データを有しない通常の情報コードであるとして、ステップＳ３００に示す復号化処理を終えてデコード処理を終了する。
【００７４】
これに対し、ステップＳ３０９により取得されたデータコードが秘匿識別コードであると判定した場合には（Ｓ３１１；Ｙｅｓ）、続くステップＳ３１３により、当該秘匿識別コードに位置制限情報が含まれているか否かを判定する処理が行われる。図４（Ａ）に例示するように秘匿識別コードに位置制限情報が含まれておらず、当該秘匿識別コードに位置制限情報が含まれることを示すフラグが設定されていないことから、位置制限情報が含まれていないと判定した場合には（Ｓ３１３；Ｎｏ）、ステップＳ３２１に処理を移行する。
【００７５】
これに対し、図４（Ｂ）または図４（Ｄ）に例示するように、当該秘匿識別コードに位置制限情報が含まれていると判定した場合には（Ｓ３１３；Ｙｅｓ）、続くステップＳ３１５により、秘匿識別コードの直後に配置される制限情報から位置制限情報を取得する処理が行われる。次のステップＳ３１７では、ＧＰＳ受信部２８ａから入力されるＧＰＳ信号に基づいて、当該情報コード読取装置２０の現在位置情報を取得する処理が行われる。そして、ステップＳ３１９により、情報コード読取装置２０が秘匿データに応じた処理を実行可能な場所の範囲内に位置しているか否かを判定する処理が行われる。
【００７６】
ここで、情報コード読取装置２０がコンサート会場３の入場ゲートにおいて使用されていることから、ステップＳ３１７にて取得した現在位置情報がステップＳ３１５にて取得した位置制限情報から求められる範囲内に位置していると判定した場合には（Ｓ３１９；Ｙｅｓ）、ステップＳ３２１に処理を移行する。
【００７７】
これに対し、情報コード読取装置２０がコンサート会場３から離れた場所において使用されていることから、ステップＳ３１７にて取得した現在位置情報がステップＳ３１５にて取得した位置制限情報から求められる範囲内に位置していないと判定した場合には（Ｓ３１９；Ｎｏ）、許可されていない場所での読み取りであるとして、ステップＳ３００に示す復号化処理を終えてデコード処理を終了する。なお、上記ステップＳ３１３，Ｓ３１９を実行する制御部２１は、「判定手段」の一例に相当し得る。
【００７８】
ステップＳ３２１では、当該秘匿識別コードに時刻制限情報が含まれているか否かを判定する処理が行われる。図４（Ｂ）に例示するように秘匿識別コードに時刻制限情報が含まれておらず、当該秘匿識別コードに時刻制限情報が含まれることを示すフラグが設定されていないことから、時刻制限情報が含まれていないと判定した場合には（Ｓ３２１；Ｎｏ）、ステップＳ３２９に処理を移行する。
【００７９】
これに対し、図４（Ｃ）または図４（Ｄ）に例示するように、当該秘匿識別コードに時刻制限情報が含まれていると判定した場合には（Ｓ３２１；Ｙｅｓ）、続くステップＳ３２３により、秘匿識別コードの直後に配置される制限情報から時刻制限情報を取得する処理が行われる。次のステップＳ３２５では、ＲＴＣ２７から入力される時刻情報に基づいて、現在時刻情報を取得する処理が行われる。そして、ステップＳ３２７により、秘匿データに応じた処理を実行可能な所定の時刻の範囲内にあるか否かを判定する処理が行われる。
【００８０】
ここで、コンサート会場３への入場が許可される時刻にて情報コード読取装置２０により情報コードＣが読み取られたことから、ステップＳ３２５にて取得した現在時刻がステップＳ３２３にて取得した時刻制限情報から求められる時刻範囲内（時刻Ｔｓと時刻Ｔｅとの間）にあると判定した場合には（Ｓ３２７；Ｙｅｓ）、ステップＳ３２９に処理を移行する。
【００８１】
これに対し、コンサート会場３への入場が許可される時刻と異なる時刻にて情報コード読取装置２０により情報コードＣが読み取られたことから、ステップＳ３２５にて取得した現在時刻がステップＳ３２３にて取得した時刻制限情報から求められる時刻範囲内にないと判定した場合には（Ｓ３２７；Ｎｏ）、許可されていない時刻での読み取りであるとして、ステップＳ３００に示す復号化処理を終えてデコード処理を終了する。なお、上記ステップＳ３２１，Ｓ３２７を実行する制御部２１は、「判定手段」の一例に相当し得る。
【００８２】
ステップＳ３２９では、秘匿識別コードの直後に配置されるデータ長または制限情報の直後に配置されるデータ長に基づいて、最初の秘匿データコードを取得する処理が行われる。次のステップＳ３３１による処理では、取得された秘匿データコードが暗号化されているか否かを判定する処理が行われる。そして、取得された秘匿データコードが暗号化されている場合には（Ｓ３３１；Ｙｅｓ）、ステップＳ３３３に処理を移行し、取得された秘匿データコードが暗号化されていない場合には（Ｓ３３１；Ｎｏ）、ステップＳ３３３からの処理を飛ばしてステップＳ３３７に処理を移行する。
【００８３】
ステップＳ３３３では、予め記憶されている復号キーが取得した秘匿データコードの暗号化データを解読する鍵として適合しているか否かを判定する処理が行われる。当該復号キーが適合していると判定した場合には（Ｓ３３３；Ｙｅｓ）、ステップＳ３３５に処理を移行し、当該復号キーが適合していると判定できない場合には（Ｓ３３３；Ｎｏ）、ステップＳ３３５の処理を飛ばしてステップＳ３３９に処理を移行する。
【００８４】
ステップＳ３３５では、復号キーを用いて取得した秘匿データコードを解読する。続くステップＳ３３７では、ステップＳ３３５により解読した暗号化データに基づいて秘匿データコードを復号（デコード）する。
【００８５】
ステップＳ３３９では、次のデータコードを取得する処理が行われる。そして、ステップＳ３４１により、ステップＳ３３９で取得したデータコードが埋め草コードであるか否かを判定する処理が行われる。ステップＳ３３９で取得したデータコードが埋め草コードである場合には（Ｓ３４１；Ｙｅｓ）、これ以上、当該情報コードＣには秘匿データコードが含まれていないことになるので、ステップＳ３００に示す復号化処理を終えてデコード処理を終了する。
【００８６】
これに対し、ステップＳ３４１により取得したデータコードが埋め草コードであると判定されない場合には（Ｓ３４１；Ｎｏ）、このデータコードは秘匿データコードであるので、ステップＳ３３１に処理を移行して、ステップＳ３３９で取得した秘匿データコードについて、前述と同様の処理を行う。
【００８７】
上述のように図６に示すデコード処理が終了すると、当該デコード処理により取得された開示データ等に応じた処理が制御部２１により実行される。ここで、上記復号化処理により秘匿データが取得されている場合にはその秘匿データに応じた処理、例えば、秘匿データの表示や秘匿データの管理サーバへの送信等が制御部２１により実行される。なお、開示データや秘匿データ等に応じた処理を実行する制御部２１は、「実行手段」の一例に相当し得る。
【００８８】
以上説明したように、本実施形態に係る情報コード読取システム１では、情報コードＣは、秘匿データが記録された非公開領域と、秘匿データに応じた処理を実行可能な場所の位置を制限するための位置制限情報と秘匿データに応じた処理を実行可能な時刻を制限するための時刻制限情報との少なくともいずれか１つが制限情報として記録された領域とを備えている。
【００８９】
これにより、秘匿データを読み取るための復号キー等を有する情報コード読取装置２０を用いて読み取っても、その情報コード読取装置２０が秘匿データに応じた処理を実行可能な場所にない場合や秘匿データに応じた処理を実行可能な時刻でない場合には、秘匿データに応じた処理を実行しないように情報コード読取装置２０を制御することができる。このように、情報コードの読み取りに関する制限を付与することで、情報コード読取装置２０そのものが盗難等された場合であっても、秘匿データの秘匿性を向上させることができる。
【００９０】
また、情報コードＣは、公開データが記録された公開領域をさらに備えるため、その情報コード読取装置２０が秘匿データに応じた処理を実行可能な場所にない場合や秘匿データに応じた処理を実行可能な時刻でない場合には、公開データに応じた処理が実行されることとなる。このように公開データに応じた処理が実行されることから、公開データの他に秘匿データが記録されていることを認識することが困難であり、秘匿データの秘匿性をさらに向上させることができる。
【００９１】
特に、ステップＳ３１７にて取得した位置情報が位置制限情報から求められる所定の位置の範囲内にあり（Ｓ３１９；Ｙｅｓ）、かつ、ステップＳ３２５にて取得した現在時刻情報が時刻制限情報から求められる所定の時刻の範囲内にある場合（Ｓ３２７；Ｙｅｓ）に、秘匿データに応じた処理を実行可能な状態であると判定される。これにより、読み取り位置および読み取り時刻の双方を利用することで秘匿データの秘匿性をさらに向上させるだけでなく、情報コードを読み取り可能とする位置および時刻に関する範囲を容易に設定することができる。
【００９２】
なお、上記ステップＳ３２５では、ＲＴＣ２７から入力される時刻情報に基づいて現在時刻情報を取得することに限らず、例えば、ＧＰＳ受信部２８ａにてＧＰＳ衛星から受信したＧＰＳ信号に含まれる時刻情報に基づいて現在時刻情報を取得してもよい。この場合、ＧＰＳ受信部２８ａは、「現在時刻情報取得手段」の一例に相当し、情報コード読取装置２０に内蔵されたＲＴＣ２７による時刻情報を利用しないため、ＲＴＣ２７の時刻の偽装による不正な秘匿データの読み取りを防止することができる。
【００９３】
また、上記ステップＳ３１７では、ＧＰＳ受信部２８ａから入力されるＧＰＳ信号に基づいて当該情報コード読取装置２０の現在位置情報を取得することに限らず、例えば、所定の位置情報を有するアクセスポイントや携帯電話のキャリアの基地局等との相対位置に基づいて当該情報コード読取装置２０の現在位置情報を取得してもよい。
【００９４】
なお、本発明は上記実施形態に限定されるものではなく、例えば、以下のように具体化してもよい。
（１）情報コードＣは、一部非公開コードとして構成されることに限らず、公開領域を廃止して情報コード読取装置２０が復号キーを有しない限りデータが読み取れない情報コードとして構成されてもよい。
【００９５】
（２）上記制限情報として位置制限情報のみが用意される情報コードＣを読み取り対象とする情報コード読取装置２０は、その復号化処理において、ステップＳ３２１〜Ｓ３２７までの処理を廃止してもよい。
【００９６】
（３）上記制限情報として時刻制限情報のみが用意される情報コードＣを読み取り対象とする情報コード読取装置２０は、その復号化処理において、ステップＳ３１３〜Ｓ３１９までの処理を廃止してもよい。
【００９７】
（４）情報コードＣは、ＱＲコードとして構成されることに限らず、他のコード種別の情報コード、例えば、データマトリックスコード、マキシコード等として構成されてもよい。
【００９８】
（５）本発明に係る情報コード読取システムは、コンサートの入場管理システムとして採用されることに限らず、例えば、情報コードが表示される割引クーポン等を発行するシステムなど、情報コードが表示される表示媒体を利用する他のシステムに採用することができる。
【符号の説明】
【００９９】
１…情報コード読取システム
４…チケット発行用端末
１０…チケット印刷用プリンタ（コード生成装置）
２０…情報コード読取装置
２１…制御部（デコード手段，判定手段，実行手段）
２６…コード読取部（撮像手段）
２７…ＲＴＣ（現在時刻情報取得手段）
２８ａ…ＧＰＳ受信部（現在位置情報取得手段，現在時刻情報取得手段）
Ｃ…情報コード
【図１】
2015194811.tif 000003
【図２】
2015194811.tif 000004
【図３】
2015194811.tif 000005
【図４】
2015194811.tif 000006
【図５】
2015194811.tif 000007
【図６】
2015194811.tif 000008
【図７】
2015194811.tif 000009