(57)【要約】  情報コードがすり替えられたか否かを人間が判断しやすくなることを可能にすることを目的とする。  情報処理装置（１）は、光学的に読み取り可能な情報コード（２１０）を撮影してデコードすることにより取得された元の情報（３４０）に基づいて、情報コード（２１０）とともに表示されるべき第１視覚情報（２２０）により視覚的に表される対象が分類されるクラスを示す第１クラス情報（３５０）を取得する。情報処理装置（１）は、情報コード（２１０）とともに表示されているためにその情報コード（２１０）とともに撮影された第２視覚情報（２２０）により視覚的に表される対象が分類されるクラスを示す第２クラス情報（３６０）を取得する。情報処理装置（１）は、第１クラス情報（３５０）と第２クラス情報（３６０）との比較を行う。情報処理装置（１）は、比較の結果に基づいて、元の情報（３４０）を用いた所定処理の実行を制御する。
2021014537.tif 000002
【特許請求の範囲】
【請求項１】
光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得手段と、  前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得手段と、  前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較手段と、  前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御手段と、  を備えることを特徴とする情報処理システム。
【請求項２】
前記第１クラス情報取得手段は、前記取得された元の情報を変換することにより、前記第１クラス情報を生成し、  前記第２クラス情報取得手段は、前記情報コードと前記第２視覚情報とを撮影することで得られた写真画像に対して画像分類を行うことにより、前記第２クラス情報を取得することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１クラス情報取得手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報から前記第１クラス情報を生成することを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記取得された元の情報に基づいて、前記情報コードが表示されるべき場所の位置を示す第１位置情報を取得する第１位置情報取得手段と、  前記情報コードと前記第２視覚情報とが撮影された場所の位置を示す第２位置情報を取得する第２位置情報取得手段と、  を更に備え、  前記比較手段は、前記取得された第１位置情報と前記取得された第２位置情報とを更に比較し、  前記制御手段は、前記第１クラス情報と前記第２クラス情報との比較結果、及び前記第１位置情報と前記第２位置情報との比較結果に基づいて、前記所定処理の実行を制御することを特徴とする請求項１乃至３の何れか一項に記載の情報処理システム。
【請求項５】
前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記所定処理を実行させないことを特徴とする請求項１乃至４の何れか一項に記載の情報処理システム。
【請求項６】
前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記比較の結果に基づく通知をユーザに提示させることを特徴とする請求項１乃至４の何れか一項に記載の情報処理システム。
【請求項７】
前記制御手段は、前記比較の結果が前記所定条件を満たさない場合、前記ユーザによる選択に応じて、前記所定処理を実行させるか否かを決定することを特徴とする請求項６に記載の情報処理システム。
【請求項８】
元の情報をエンコードして、光学的に読み取り可能な情報コードを生成する情報コード生成手段と、  前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を生成するクラス情報生成手段と、  前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力手段と、  を備えることを特徴とする情報コード生成システム。
【請求項９】
前記クラス情報生成手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報を変換して前記クラス情報を生成することを特徴とする請求項８に記載の情報コード生成システム。
【請求項１０】
前記元の情報を変換して前記クラス情報を生成するために用いることが可能な互いに異なる複数の変換仕様のうち何れの変換仕様を用いるかを、前記生成される情報コードごとに決定する決定手段を更に備え、  前記クラス情報生成手段は、前記決定された変換仕様に従って、前記クラス情報を生成し、  前記情報コード生成手段は、前記元の情報と、前記複数の変換仕様のうち前記決定された変換仕様を示す仕様情報と、をエンコードして、前記情報コードを生成することを特徴とする請求項９に記載の情報コード生成システム。
【請求項１１】
前記仕様情報は、前記情報コードと前記視覚情報とが出力される日付を示し、  前記クラス情報生成手段は、前記複数の変換仕様のうち、前記日付に対応する前記変換仕様に従って、前記クラス情報を生成することを特徴とする請求項１０に記載の情報コード生成システム。
【請求項１２】
前記情報コードが表示されるべき場所の位置を示す位置情報を取得する位置情報取得手段を更に備え、  前記クラス情報生成手段は、前記取得された位置情報により示される場所から所定距離以内の場所で表示されるべき他の情報コードのために生成された生成済クラス情報とは異なる前記クラス情報を生成することを特徴とする請求項８に記載の情報コード生成システム。
【請求項１３】
前記クラス情報生成手段は、前記生成済クラス情報と異なる複数のクラス情報のうち、前記生成済クラス情報と重複する度合いが相対的に小さいクラス情報を生成することを特徴とする請求項１２に記載の情報コード生成システム。
【請求項１４】
前記視覚情報は、人間の視覚を通じて前記クラスの認識が可能に前記対象を表すことを特徴とする請求項８乃至１３の何れか一項に記載の情報コード生成システム。
【請求項１５】
前記視覚情報は、絵、数字、文字及び記号のうち少なくとも一つを含むことを特徴とする請求項８乃至１４の何れか一項に記載の情報コード生成システム。
【請求項１６】
前記情報コードは、複数の幾何学的図形を含むことを特徴とする請求項８乃至１５の何れか一項に記載の情報コード生成システム。
【請求項１７】
前記出力手段は、前記情報コードの外側に前記視覚情報が配置された画像を出力することを特徴とする請求項８乃至１６の何れか一項に記載の情報コード生成システム。
【請求項１８】
前記出力手段は、前記情報コードの内側に前記視覚情報が配置された画像を出力することを特徴とする請求項８乃至１７の何れか一項に記載の情報コード生成システム。
【請求項１９】
コンピュータにより実行される情報処理方法において、  光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得ステップと、  前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得ステップと、  前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較ステップと、  前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御ステップと、  を含むことを特徴とする情報処理方法。
【請求項２０】
コンピュータにより実行される情報コード生成方法において、  元の情報をエンコードして、光学的に読み取り可能な情報コードを生成する情報コード生成ステップと、  前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を取得するクラス情報生成ステップと、  前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力ステップと、  を含むことを特徴とする情報コード生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、光学的読み取り可能に情報が表現された情報コードに関する不正を検出するためのシステムに関する。
【背景技術】
【０００２】  従来、ＱＲコード（登録商標）（ISO/IEC 18004）やバーコード等の情報コードが広く利用されている。情報コードには、例えば、その情報コードが貼付されたオブジェクトや、その情報コードが表示された場所で提供される何かに関連する情報がエンコードされている。エンコードされる元の情報は、例えばユーザに提供される情報そのものであったり、ユーザに提供される情報へアクセスするためのＵＲＬ（Uniform Resource Locator）であったりする。ユーザは、例えばデジタルカメラを備える携帯端末等の端末装置で情報コードを読み取ることにより、元の情報を得ることができる。【０００３】  このような情報コードに関する不正を検知するための技術も開発されている。例えば、特許文献１には、所定の情報と、不正を検出するための検知用情報と、を情報コードにエンコードする不正検知システムが開示されている。このシステムは、情報コードが読み取られたときに、その情報コードをデコードして得られた検知用情報とデータベースに記録された照合用情報とを照合することにより、その情報コードに関する不正があるか否かを判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０２９６５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】  しかしながら、上述したような技術であっても、情報コードに関する不正の全てを検出することができるわけではなかった。例えば、情報コードを生成するためのアプリケーション等が広く提供された場合、誰もが情報コードを正規に生成することが可能となる。この場合、不正な情報を検知用情報とともにエンコードして情報コードを生成し、この検知用情報に合致する照合用情報を正規にデータベースに記録させることができる。このように生成された情報コードについては不正を検出することができない。【０００６】  ところで、情報コードは、一般的には線、四角形等の多数の幾何学的図形が配置されることによって構成されている。そのため、人間が、情報コードから目視で元の情報を認識することは通常不可能である。また、或る情報コードが別の情報コードにすり替えられた場合に、情報コードがすり替えられたことに気付くことも人間にとっては難しい。【０００７】  本願発明は以上の点に鑑みてなされてものであり、情報コードがすり替えられたか否かを人間が判断しやすくなることを可能にする情報処理システム、情報コード生成システム、情報処理方法、及び情報コード生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】  上記課題を解決するために、本発明の一の態様は、光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得手段と、前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得手段と、前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較手段と、前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御手段と、を備えることを特徴とする情報処理システムである。【０００９】  この態様によれば、表示されている情報コード（以下、第１情報コードと称する）とともに、或る対象を視覚的に表す第２視覚情報が撮影される。第２視覚情報は、第１情報コードとともに実際に表示されている視覚情報である。第１情報コードがデコードされることにより、元の情報が取得される。この元の情報に基づいて、第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報が取得される。第１視覚情報は、第１情報コードとともに表示されるべき視覚情報である。その一方で、第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報が取得される。そして、第１クラス情報と第２クラス情報との比較の結果に基づいて、元の情報を用いた所定処理の実行が制御される。第２クラス情報が第１クラス情報と異なる場合、第１情報コードは、第２視覚情報とともに表示されるべき第２の情報コードではない。従って、第２視覚情報とともに表示されていた第２情報コードが、第１視覚情報にすり替えられたおそれがある。この場合、比較の結果に基づいて、所定処理の実行を拒絶することができる。一方、第２視覚情報が第１視覚情報と一致する場合であっても、情報コードがすり替えられた可能性はある。具体的に、元々表示されていた第３の情報コードと、この第３情報コードとともに表示されるべき第３の視覚情報との組み合わせが、第１情報コードと第１視覚情報（第２視覚情報）との組み合わせにすり替えられることが考えられる。ここで、人間は、各視覚情報が、如何なるクラスに分類される対象を表しているかを視覚を通じて認識することができる。そのため、その人間は、以前に視覚情報を見ていた場合、その視覚情報により表される対象が分類されるクラスと、現在表示されている第１視覚情報により表される対象が分類されるクラスとを、その人間の記憶及び視覚に基づいて比較することができる。比較の結果、その人間は、情報コードがすり替えられたか否かを判断することができる。情報コードがすり替えられたと人間が判断した場合、その人間は、現在表示されている第１情報コードの読み取りを止めさせることができる。その結果、所定処理は実行されない。こうして、情報コードに関する不正が抑止される。【００１０】  本発明の別の態様は、前記第１クラス情報取得手段は、前記取得された元の情報を変換することにより、前記第１クラス情報を生成し、前記第２クラス情報取得手段は、前記情報コードと前記第２視覚情報とを撮影することで得られた写真画像に対して画像分類を行うことにより、前記第２クラス情報を取得することを特徴とする。【００１１】  この態様によれば、元の情報と第１クラス情報とが関連付けて予め記憶されていなくとも、第１クラス情報の取得が可能となる。また、第２視覚情報から視覚を通じて人間が認識する傾向があるクラスと同じクラスを示す第２クラス情報を取得することができる。【００１２】  本発明の更に別の態様は、前記第１クラス情報取得手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報から前記第１クラス情報を生成することを特徴とする情報処理システムである。【００１３】  この態様によれば、情報コードとは異なる第１クラス情報が変換によって生成される。【００１４】  本発明の更に別の態様は、前記取得された元の情報に基づいて、前記情報コードが表示されるべき場所の位置を示す第１位置情報を取得する第１位置情報取得手段と、前記情報コードと前記第２視覚情報とが撮影された場所の位置を示す第２位置情報を取得する第２位置情報取得手段と、を更に備え、前記比較手段は、前記取得された第１位置情報と前記取得された第２位置情報とを更に比較し、前記制御手段は、前記第１クラス情報と前記第２クラス情報との比較結果、及び前記第１位置情報と前記第２位置情報との比較結果に基づいて、前記所定処理の実行を制御することを特徴とする。【００１５】  この態様によれば、撮影された第１情報コードが表示されるべき第１の場所と、第１情報コードが実際に表示されている第２の場所との間の距離が比較的に遠い場合、第２の場所に表示されるべき別の情報コードが第１情報コードにすり替えられたおそれがある。この場合、たとえ第１クラス情報と第２クラス情報とが一致したとしても、第１位置情報と第２位置情報との比較結果に基づいて、所定処理を拒絶することができる。【００１６】  本発明の更に別の態様は、前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記所定処理を実行させないことを特徴とする特徴とする情報処理システムである。【００１７】  この態様によれば、情報コードがすり替えられた場合、不正に所定処理が実行されることが防止される。【００１８】  本発明の更に別の態様は、前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記比較の結果に基づく通知をユーザに提示させることを特徴とする。【００１９】  この態様によれば、情報コードがすり替えられたおそれがあることをユーザが認識することができる。【００２０】  本発明の更に別の態様は、前記制御手段は、前記比較の結果が前記所定条件を満たさない場合、前記ユーザによる選択に応じて、前記所定処理を実行させるか否かを決定することを特徴とする特徴とする情報処理システムである。【００２１】  この態様によれば、情報コードがすり替えられたおそれがあることをユーザが認識した上で、ユーザの責任で所定��理を実行することができる。【００２２】  本発明の更に別の態様は、元の情報をエンコードして、光学的に読み取り可能な情報コードを生成する情報コード生成手段と、前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を生成するクラス情報生成手段と、前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力手段と、を備えることを特徴とする特徴とする情報コード生成システムである。【００２３】  この態様によれば、情報コードと、その情報コードとともに表示されるべき視覚情報との出力によって、情報コードとともにその視覚情報が表示される。この視覚情報は、或る対象を視覚的に表す。そのため、人間が、以前に情報コードとともに表示されていた視覚情報により示される対象が分類されるクラスと、現在情報コードとともに表示されている視覚情報により示される対象が分類されるクラスとを、その人間の記憶と視覚に基づいて比較することができる。比較の結果、その人間は、情報コードがすり替えられたか否かを判断することができる。情報コードがすり替えられたと人間が判断した場合、その人間は、現在表示されている情報コードの読み取りを止めさせることができる。その結果、所定処理は実行されない。こうして、情報コードに関する不正が抑止される。【００２４】  本発明の更に別の態様は、前記クラス情報生成手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報を変換して前記クラス情報を生成することを特徴とする情報コード生成システムである。【００２５】  この態様によれば、情報コードとは異なるクラス情報が変換によって生成される。【００２６】  本発明の更に別の態様は、前記元の情報を変換して前記クラス情報を生成するために用いることが可能な互いに異なる複数の変換仕様のうち何れの変換仕様を用いるかを、前記生成される情報コードごとに決定する決定手段を更に備え、前記クラス情報生成手段は、前記決定された変換仕様に従って、前記クラス情報を生成し、前記情報コード生成手段は、前記元の情報と、前記複数の変換仕様のうち前記決定された変換仕様を示す仕様情報と、をエンコードして、前記情報コードを生成することを特徴とする情報コード生成システムである。【００２７】  この態様によれば、視覚情報が、如何なる変換仕様を用いて生成されたかを特定することが困難となる。そのため、悪意ある第三者が不正な情報コードとともに表示されるべき正しい視覚情報を生成することを抑止することができる。【００２８】  本発明の更に別の態様は、前記仕様情報は、前記情報コードと前記視覚情報とが出力される日付を示し、前記クラス情報生成手段は、前記複数の変換仕様のうち、前記日付に対応する前記変換仕様に従って、前記クラス情報を生成することを特徴とする。【００２９】  本発明の更に別の態様は、前記情報コードが表示されるべき場所の位置を示す位置情報を取得する位置情報取得手段を更に備え、前記クラス情報生成手段は、前記取得された位置情報により示される場所から所定距離以内の場所で表示さ���るべき他の情報コードのために生成された生成済クラス情報とは異なる前記クラス情報を生成することを特徴とする情報コード生成システムである。【００３０】  この態様によれば、生成される情報コードが表示されるべき場所から所定距離以内の場所で表示されるべき他の情報コードとともに表示されるべき視覚情報とは異なる視覚情報が生成される。従って、情報コードと視覚情報との組み合わせが、比較的に近い場所で表示されるべき他の情報コードと視覚情報との組み合わせにすり替えられた場合に、人間は、視覚情報を見ることにより、情報コードがすり替わったか否かを判断することができる。【００３１】  本発明の更に別の態様は、前記クラス情報生成手段は、前記生成済クラス情報と異なる複数のクラス情報のうち、前記生成済クラス情報と重複する度合いが相対的に小さいクラス情報を生成することを特徴とする情報コード生成システムである。【００３２】  この態様によれば、生成される情報コードが表示されるべき場所から所定距離以内の場所で表示されるべき他の情報コードとともに表示されるべき視覚情報との見分けが付きやすい視覚情報が生成される。従って、以前に見た視覚情報の記憶が曖昧であっても、人間は情報コードがすり替わったか否かを容易に判断することができる。【００３３】  本発明の更に別の態様は、前記視覚情報は、人間の視覚を通じて前記クラスの認識が可能に前記対象を表すことを特徴とする情報コード生成システムである。【００３４】  本発明の更に別の態様は、前記視覚情報は、絵、数字、文字及び記号のうち少なくとも一つを含むことを特徴とする情報コード生成システムである。【００３５】  本発明の更に別の態様は、前記情報コードは、複数の幾何学的図形を含むことを特徴とする情報コード生成システムである。【００３６】  本発明の更に別の態様は、前記出力手段は、前記情報コードの外側に前記視覚情報が配置された画像を出力することを特徴とする情報コード生成システムである。【００３７】  本発明の更に別の態様は、前記出力手段は、前記情報コードの内側に前記視覚情報が配置された画像を出力することを特徴とする情報コード生成システムである。【００３８】  本発明の更に別の態様は、コンピュータにより実行される情報処理方法において、光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得ステップと、前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得ステップと、前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較ステップと、前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御ステップと、を含むことを特徴とする。【００３９】  本発明の更に別の態様は、コンピュータにより実行される情報コード生成方法において、元の情報をエンコードして、光学的に読み取り可能な情報コードを生成��る情報コード生成ステップと、前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を取得するクラス情報生成ステップと、前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力ステップと、を含むことを特徴とする。
【発明の効果】
【００４０】  本発明によれば、情報コードがすり替えられたか否かを人間が判断しやすくなる。
【図面の簡単な説明】
【００４１】
【図１】一実施形態に係る電子決済システムＳの概要構成の一例を示す図である。
【図２】一実施形態に係る決済管理サーバ１の概要構成の一例を示すブロック図である。
【図３Ａ】拡張情報コード２００の例を示す図である。
【図３Ｂ】拡張情報コード２００の例を示す図である。
【図３Ｃ】拡張情報コード２００の例を示す図である。
【図４】一実施形態に係る決済管理サーバ１のシステム制御部１１における機能ブロックの一例を示す図である。
【図５】拡張情報コード２００を発行する場合のデータの流れの一例を示す図である。
【図６】拡張情報コード２００をチェックする場合のデータの流れの一例を示す図である。
【図７Ａ】情報コードに関する不正の判断例を示す図である。
【図７Ｂ】情報コードに関する不正の判断例を示す図である。
【図７Ｃ】情報コードに関する不正の判断例を示す図である。
【図８】決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。
【図９】決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。
【図１０】チェックコードＤＢ１４ａに記憶される情報の例を示す図である。
【図１１】決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。
【図１２】決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。
【図１３】チェックコードＤＢ１４ａに記憶される情報の例を示す図である。
【図１４】拡張情報コード２００の生成例を示す図である。
【図１５】位置情報を比較するためのデータの流れの一例を示す図である。
【図１６】決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。
【図１７】決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。
【図１８】拡張コード２００の生成時におけるデータの流れの一例を示す図である。
【図１９】拡張情報コードのチェック時におけるデータの流れの一例を示す図である。
【図２０】決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。
【図２１】決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００４２】  以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態のうちの幾つかは、情報コードを端末装置が読み取ることに基づいて、商品の購入代金やサービスの利用料金を決済するための電子決済システムに対して本発明を適用した場合の実施形態である。読み取られた決済用の情報コードをデコードすることにより、決済用の情報が得られる。電子決済システムにより、決済用情報から、決済代金及びこの代金の支払先である店舗の預金口座が特定される。
【００４３】  決済用の情報コードは、端末装置のディスプレイに表示されることもあるものの、シール等の所定物に印刷される場合がある。例えば、情報コードが印刷されたシールは店舗内に貼付される。悪意ある第三者は、このシールを剥がして、別の情報コードが印刷されたシールを貼付するかもしれない。或いは、この第三者は、元のシールの上に別のシールを貼付するかもしれない。この場合、例えばその店舗で商品を購入しようとする客が、シール上の情報コードを見ただけで、情報コードがすり替えられたことに気付くことは困難である。また、人間が情報コードを記憶することは極めて困難であるため、その店舗の従業員であっても、情報コードがすり替えられたことに気付くことは困難である。そのまま情報コードが読み取られて決済処理が行われると、悪意ある第三者の口座へ代金が支払われてしまう。情報コードを用いた電子決済が普及している中、こうした不正を防止することが望まれる。
【００４４】［１．第１実施形態］［１−１．行動分析システムの構成］  先ず、第１実施形態に係る電子決済システムＳの構成について、図１を用いて説明する。図１は、本実施形態に係る電子決済システムＳの概要構成の一例を示す図である。
【００４５】  図１に示すように、電子決済システムＳは、決済管理サーバ１と、プリンタ２と、複数の店舗端末３と、複数のユーザ端末４と、を含んで構成される。決済管理サーバ１と、各店舗端末３と、各ユーザ端末４は、ネットワークＮＷに接続される。ネットワークＮＷは、例えばインターネット、専用通信回線（例えば、ＣＡＴＶ（Community Antenna Television）回線）、移動体通信網（基地局等を含む）、及びゲートウェイ等により構築されている。
【００４６】  決済管理サーバ１は、決済用情報をエンコードして得られる情報コードであって、後述する視覚情報と組み合わせられた情報コードを発行する。情報コードと視覚情報との組み合わせを、拡張情報コードという。店舗が提供する各商品又は各サービスについて情報コードの発行が可能である。また、決済管理サーバ１は、ユーザ端末４により読み取られた拡張情報コードにおける情報コードをデコードすることにより得られる決済用情報に基づいて、電子決済を実行する。このとき、決済管理サーバ１は、情報コードに付加された視覚情報に基づいて、情報コードに関する不正が行われたか否かを判定する（情報コードをチェックする）。決済管理サーバ１により判断される不正の例を以下に示す。
【００４７】  （１）拡張情報コードが非正規な情報コードを含む。  （２）拡張情報コードは正規な情報コードを含むが、その拡張コードに元々含まれていた情報コード及び視覚情報のうち、情報コードのみがすり替えられた。
【００４８】  本実施形態においては、決済管理サーバ１により発行された情報コードを、正規な情報コードと称する。なお、情報コードを発行する装置と、電子決済を行う装置とが別々の装置であってもよい。また、電子決済を行う装置と、情報コードをチェックする装置とが別々の装置であってもよい。
【００４９】  プリンタ２は、決済管理サーバ１に接続されている。或いは、決済管理サーバ１がプリンタ２を備えてもよい。プリンタ２は、決済管理サーバ１による制御に基づいて、拡張情報コードを所定物に印刷する。所定物の例として、シール、紙、プラスティックプレート等が挙げられる。情報コードが印刷された所定物は、例えば、その情報コードが対応する商品又はサービスを提供する店舗に郵送されてもよい。
【００５０】  各店舗端末３は、商品を販売又はサービスを提供する店舗に設置される端末装置である。店舗端末３の例として、パーソナルコンピュータ、タブレット式コンピュータ、スマートフォン、携帯電話機、ＰＤＡ（Personal Digital Assistant）等が挙げられる。各店舗端末には、拡張情報コードも発行を要求するためのアプリケーションプログラムがインストールされている。店舗端末３は、店舗の従業員の操作に基づいて、拡張情報コードの発行を決済管理サーバ１に要求する。この要求に応じて、決済管理サーバ１は新たな拡張情報コードを発行する。
【００５１】  各ユーザ端末４は、消費者としてのユーザにより利用される端末装置である。ユーザ端末４の例として、スマートフォン、タブレット式コンピュータ、携帯電話機、ＰＤＡ等が挙げられる。各ユーザ端末４には、電子決済用のアプリケーションプログラムがインストールされている。各ユーザ端末４は、デジタルカメラを備える。ユーザは、このデジタルカメラにより、所定物に表示された拡張情報コードを撮影する。ユーザ端末４は、例えば撮影によって得られた拡張情報コードの写真画像を決済管理サーバ１へ送信する。決済管理サーバ１は、この写真画像に基づいて、情報コードのチェック及び決済処理を実行する。
【００５２】［１−２．決済管理サーバの構成］  次に、決済管理サーバ１の構成について、図２を用いて説明する。図２は、本実施形態に係る決済管理サーバ１の概要構成の一例を示すブロック図である。図２に示すように、決済管理サーバ１は、システム制御部１１と、システムバス１２と、入出力インターフェース１３と、記憶部１４と、通信部１５と、を備えている。システム制御部１１と入出力インターフェース１３とは、システムバス１２を介して接続されている。
【００５３】  システム制御部１１は、ＣＰＵ（Central Processing Unit）１１ａ、ＲＯＭ（Read Only Memory）１１ｂ、ＲＡＭ（Random Access Memory）１１ｃ等により構成されている。
【００５４】  入出力インターフェース１３は、記憶部１４及び通信部１５とシステム制御部１１との間のインターフェース処理を行う。
【００５５】  記憶部１４は、例えば、ハードディスクドライブ等により構成されている。この記憶部１４には、種々のデータベースが記憶されている。記憶部１４に記憶されるデータベースの例として、電子決済システムＳに登録されている店舗に関するデータベース、電子決済システムＳに登録されているユーザに関するデータベース、情報コードが発行された商品やサービスに関するデータベース等が挙げられる。また、記憶部１４には、オペレーティングシステム、ＤＢＭＳ（Database Management System）、サーバプログラム等の各種プログラムが記憶されている。サーバプログラムは、情報コードの発行、情報コードをチェック及び決済処理をシステム制御部１１に実行させるプログラムである。サーバプログラムは、例えば、他の装置からネットワークＮＷを介して取得されるようにしてもよい。或いはサーバプログラムは、磁気テープ、光ディスク、メモリカード等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
【００５６】  通信部１５は、ネットワークＮＷを介して、店舗端末３やユーザ端末４と接続し、これらの装置との通信状態を制御する。
【００５７】［１−３．拡張情報コードの構成］  次に、図３Ａ乃至図３Ｃを用いて、電子決済システムＳにおいて発行される拡張情報コードの構成について説明する。図３Ａ乃至図３Ｃは、拡張情報コード２００の例を示す図である。図３Ａに示すように、拡張情報コード２００は、情報コード２１０と、視覚情報２２０とを含む。
【００５８】  情報コード２１０は、光学的に読み取り可能である。光学的に読み取り可能な情報コードとは、例えばＣＣＤ（Charge-Coupled Device）センサ、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサ、その他の光センサ又はレーザセンサ等のデバイスを用いることによって検出可能なコードである。本実施形態においては、デジタルカメラが用いられる。情報コード２１０は、例えば複数の幾何学的図形を含む。幾何学的図形の例として、矩形、三角形、円、線（細い矩形）等が挙げられる。このような基本的な幾何学的な図形が複数結合して形成される図形も、幾何学的図形として認識される。通常、情報コード２１０を見ることによっては、エンコードされた元の情報を人間が特定することは極めて困難である。生成される情報コード２１０は、例えば２次元コードであってもよいし、１次元のバーコードであってもよい。情報コード２１０の規格は特に限定はされない。２次元コードの例として、ＱＲコード（登録商標）、データマトリックスコード、マキシコード等が挙げられる。バーコードの規格の例として、ＪＡＮ（Japanese Article Number）、ＥＡＮ（European Article Number）、ＵＰＣ（Universal Product Code）等が挙げられる。
【００５９】  視覚情報２２０は、何らかの対象を視覚的に表す情報である。対象の種類は特に限定されない。対象の例として、動物、架空のキャラクタ、乗り物、道具、スポーツ、数字、文字、記号等が挙げられる。視覚情報２２０は、人間が視覚を通じてその対象のクラスを認識可能にその対象を表す。対象が動物の場合、クラスの例として、犬、猫、猿等が挙げられる。スポーツの場合、クラスの例として、サッカー、野球、テニス等が挙げられる。数字の場合、クラスの例として、「０」、「１」、「２」等が挙げられる。文字の場合、クラスの例として、「Ａ」、「Ｂ」、「Ｃ」等が挙げられる。視覚を通じて人間が認識可能である限りにおいては、クラスの定義は如何様に行われてもよい。
【００６０】  正規に発行された各情報コード２１０には、特定の一の視覚情報２２０が関連付けられる。従って、特定の情報コード２１０とともに表示されるべき視覚情報２２０は一つのみである。現在表示されている情報コード２１０を見ることのみで、情報コード２１０がすり替えられたか否かを人間が判断することは困難である。その一方で、過去に見た視覚情報２２０と、現在見ている視覚情報２２０とが一致するか否かを判断することができれば、視覚情報２２０とともに表示される情報コード２１０がすり替えられたか否かを人間が判断することが可能となる。そのため、視覚情報２２０を見ることによって、その視覚情報２２０により表される対象のクラスを人間が容易に記憶可能となるように、視覚情報２２０により対象が表されることが望ましい。例えば、視覚情報２２０は、絵、数字、文字及び記号のうち少なくとも一つを含む。絵の例として、イラスト、写真等が挙げられる。図３Ａに示される視覚情報２２０は、動物のイラスト２２１、２２２及び２２３を含む。イラスト２２１〜２２３は、視覚情報２２０の構成要素である。イラスト２２１は、羊のイラストである。イラスト２２２は、犬のイラストである。イラスト２２３は、猫のイラストである。
【００６１】  図３Ｂに示される拡張情報コード２００において、視覚情報２２０は、文字２２４、２２５、２２６及び２２７を含む。文字２２４〜２２７は、視覚情報２２０の構成要素である。文字２２４は「Ｆ」を示す。文字２２５は「２」を示す。文字２２６は、「ｖ」を示す。文字２２７は、「９」を示す。
【００６２】  図３Ａ及び図３Ｂにおいては、情報コード２１０の外側に視覚情報２２０が配置されている。情報コード２１０の上下左右何れの場所に視覚情報２２０が配置されてもよい。図３Ｃに示すように、視覚コード２１０の内側に視覚情報２２０が配置されてもよい。
【００６３】［１−４．システム制御部の機能概要］  次に、図４乃至図７Ｃを用いて、決済管理サーバ１のシステム制御部１１の機能概要について説明する。図４は、本実施形態に係る決済管理サーバ１のシステム制御部１１における機能ブロックの一例を示す図である。システム制御部１１は、ＣＰＵ１１ａが、サーバプログラムに含まれる各種プログラムコードを読み出し実行することにより、図４に示すように、情報コード生成部１１１、チェックコード生成部１１２、コード出力部１１３、情報コードデコード部１１４、チェックコード取得部１１５、視覚情報認識部１１６、チェックコード比較部１１７、情報処理部１１８等として機能する。
【００６４】［１−４−１．拡張情報コードの発行］  図５は、拡張情報コード２００を発行する場合のデータの流れの一例を示す図である。情報コード生成部１１１は、情報コード２１０を生成する元となる情報を取得する。本実施形態において、元の情報は、図５に示す決済用情報３１０である。決済用情報３１０は、例えば、購入代金が決済される商品又は利用料金が決済されるサービスを識別する情報を含む。決済用情報のフォーマットは特に限定されるものではないが、例えば決済用情報はＵＲＬで表されてもよい。システム制御部１１は、例えば、店舗端末３から決済管理サーバに送信される、拡張情報コード２００の発行要求に応じて、新しい決済用情報３１０を生成してもよい。
【００６５】  情報コード生成部１１１は、元の情報である決済用情報３１０をエンコードして情報コード２１０を生成する。情報コード２１０の規格に対応するエンコード方法を用いて、決済用情報３１０がエンコードされる。エンコード方法は、公知の方法であってもよい。
【００６６】  チェックコード生成部１１２は、元の情報である決済用情報３１０に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示す情報を生成する。生成される情報は、図５に示すチェックコード３２０である。チェックコード３２０は、後に生成される視覚情報２２０により表される対象が分類されるクラスを示すものである。チェックコード３２０は、１又は複数のコード要素で構成される。各コード要素は、視覚的に表されることが可能な対象が分類されるクラスを示す数値、文字又は文字列等である。図５に示す例では、チェックコード３２０は「羊、犬、猫」を示す。前述したように、情報コード２１０がすり替えられたか否かの人間による判断が可能なように、特定の情報コード２１０とともに表示されるべき視覚情報２２０は特定の視覚情報２２０のみである。従って、たとえ状況や時間等が変化したとしても、特定の決済用情報３１０からは特定のチェックコード３２０が生成されることが必要となる。なお、別々の情報コード２１０に対して同一のチェックコード３２０が生成されることがあってもよい。但し、そのような事態が起きる確率が低ければ低いほどよい。
【００６７】  人間が視覚情報２２０を記憶するためには、視覚情報２２０を構成する要素の数が少ない方が望ましい。その一方で、構成要素の数が少ないほど、複数の情報コード２１０の間で、関連付けられる視覚情報２２０が一致する確率が高くなる。拡張情報コード２００がすり替えられたとしても、視覚情報２２０に変化がなければ、人間が情報コード２１０のすり替えに気付くことができない。そのため、視覚情報２２０は、或る程度の数の要素で構成されることが望ましい。例えば、人間が短期記憶で記憶することができる数字は４桁程度であるといわれている。そこで、チェックコード３２０として数字列が用いられる場合、チェックコード３２０の桁数は４桁以下であってもよい。
【００６８】  チェックコード生成部１１２は、例えば、所定の変換方法（アルゴリズム）により決済用情報３１０をチェックコード３２０に変換してもよい。この場合、チェックコード生成部１１２は、決済用情報３１０から情報コード２１０を生成するためのエンコード方法とは異なる方法を用いて、決済用情報３１０を変換してチェックコード３２０を生成する。従って、必然的にチェックコード３２０は情報コード２１０と異なる。決済用情報３１０の変換方法は特に限定されない。用いられる変換方法は、可逆変換であってもよいし、不可逆変換であってもよい。例えば、チェックコード生成部１１２は、決済用情報３１０をハッシュ化することにより、チェックコード３２０を生成してもよい。
【００６９】  コード出力部１１３は、情報コード生成部１１１により生成された情報コード２１０と、  チェックコード生成部１１２により生成されたチェックコード３２０により示されるクラスに分類される対象を視覚的に表す視覚情報２２０と、を関連付けて、拡張情報コード２００として出力する。例えば、視覚情報２２０が絵を含む場合、記憶部１４には、クラスごとに、そのクラスに分類される対象を表す画像データが予め記憶されている。視覚情報２２０が数字、文字又は記号を含む場合、記憶部１４には、クラスごとに、そのクラスに分類される数字、文字又は記号の画像データ又はフォントデータが予め記憶されている。コード出力部１１３は、画像データ（またはフォントデータ）に基づいて、視覚情報２２０を生成する。コード出力部１１３は、例えば、情報コード２１０と視覚情報２２０とを含む画像を出力する。コード出力部１１３は、プリンタ２により、情報コード２１０と視覚情報２２０とを所定物４００に印刷させてもよい。情報コード２１０と視覚情報２２０とを関連付けて出力するとは、情報コード２１０と視覚情報２２０とが関連付けられていると人間が視覚を通じて認識可能な態様で、情報コード２１０と視覚情報２２０とを出力することをいう。例えば同一の所定物４００に情報コード２１０と視覚情報２２０とが表示されていれば、人間はそれらの情報コード２１０と視覚情報２２０とが関連付けられていると認識することができる。
【００７０】［１−４−２．拡張情報コードのチェック］  図６は、拡張情報コード２００をチェックする場合のデータの流れの一例を示す図である。図６に示すように、或る所定物４００に拡張情報コード２００が表示されている。この拡張情報コード２００は、正規に発行されたものであるかもしれないし、そうではないかもしれない。或いは、正規に発行された情報コード２００が印刷された所定物４００が、正規に発行された別の情報コード２００が印刷された別の所定物４００にすり替えられた可能性もある。或いは、拡張情報コード２００のうち、情報コード２１０のみがすり替えられた可能性もある。
【００７１】  商品の購入代金又はサービスの利用料金を決済するために、ユーザは、ユーザ端末４に備えられるデジタルカメラにより、拡張情報コード２００を撮影する。これにより、拡張情報コード２００の写真画像３３０が得られる。ユーザ端末４は、写真画像３３０を決済管理サーバ１へ送信する。
【００７２】  情報コードデコード部１１４は、ユーザ端末４から受信した写真画像３３０に基づいて、写真画像３３０に含まれる情報コード２１０をデコードして、元の情報である決済用情報３４０を生成する。
【００７３】  チェックコード取得部１１５は、情報コード２１０を撮影して情報コードデコード部１１４がデコードすることにより取得された決済用情報３４０に基づいて、情報コード２１０とともに表示されるべき視覚情報により視覚的に表される対象が分類されるクラスを示す情報であるチェックコード３５０を取得する。情報コード２１０とともに表示されるべき視覚情報とは、コード出力部１１３により、その情報コード２１０に関連付けて正規に出力された視覚情報（正規に発行された拡張情報コードにおいて、その情報コード２１０に関連付けられている視覚情報）である。本実施形態においては、拡張情報コード２００の発行時に、チェックコード生成部１１２は、決済用情報３１０を変換することにより、チェックコード３２０を生成する。従って、チェックコード取得部１１５は、同一の方法で、決済用情報３４０を変換することにより、チェックコード３５０を生成する。この場合、チェックコード生成部１１２は、チェックコード取得部１１５を兼ねてもよい。
【００７４】  視覚情報認識部１１６は、情報コード２１０とともに表示されているためにその情報コード２１０とともに撮影された視覚情報２２０により視覚的に表される対象が分類されるクラスを示すチェックコード３６０を取得する。情報コード２１０とともに撮影された視覚情報２２０は、実際に情報コード２１０とともに表示されている視覚情報２２０である。実際に表示されている視覚情報２２０は、その情報コード２１０に関連付けて正規に出力された視覚情報であるかもしれないし、そうではないかもしれない。前述したように、拡張情報コード２００において、情報コード２１０のみがすり替えられた場合、視覚情報２２０は、ともに表示されている情報コード２１０には対応していない。視覚情報認識部１１６による対象の分類結果が、人間による視覚を通じた分類結果の傾向と一致することが望ましい。視覚情報認識部１１６は、例えば写真画像３３０に対して画像分類を行うことにより、チェックコード３６０を取得してもよい。画像分類の方法として、例えばパターンマッチングが用いられてもよい。例えば、視覚情報認識部１１６は、写真画像から視覚情報２２０を特定し、視覚情報２２０の画像を、構成要素ごとの画像に分ける。視覚情報認識部１１６は、記憶部１４にクラスごとに記憶されている画像データと、構成要素ごとの画像との類似度を計算する。視覚情報認識部１１６は、構成要素ごとに、類似度が最も高い画像データに対応するクラスを決定して、チェックコード３６０を生成する。或いは、画像分類の方法として、機械学習が用いられてもよい。例えば、記憶部１４に記憶されている画像データに基づいて、所定のニューラルネットワークモデルが予め訓練される。一クラスにつき一の画像データが訓練に用いられれば十分である。視覚情報認識部１１６は、訓練されたモデルに各構成要素の画像を入力して、各構成要素のクラスを示す情報を出力させる。視覚情報認識部１１６は、出力された情報を結合して、チェックコード３６０を生成する。なお、チェックコード３５０の生成とチェックコード３６０の生成のどちらが先に実行されても問題はない。
【００７５】  チェックコード比較部１１７は、チェックコード取得部１１５により取得されたチェックコード３５０と、視覚情報認識部１１６により取得されたチェックコード３６０と、を比較する。特に、チェックコード比較部１１７は、チェックコード３５０とチェックコード３６０との比較結果が、所定条件を満たすか否かを判定する。例えば、チェックコード比較部１１７は、チェックコード３５０とチェックコード３６０とが一致するか否かを判定する。
【００７６】  情報処理部１１８は、チェックコード比較部１１７によるチェックコード３５０とチェックコード３６０との比較結果に基づいて、情報コードデコード部１１４により取得された決済用情報３４０を用いた所定処理の実行を制御する。本実施形態において、所定処理は決済処理である。比較結果が所定条件を満たす場合、情報処理部１１８は、決済処理を実行させる。一方、比較結果が所定条件を満たさない場合、情報処理部１１８は、決済処理を実行させない（決済処理の実行を拒絶する）。或いは、比較結果が所定条件を満たさない場合、情報処理部１１８は、比較結果に基づく通知をユーザに提示させてもよい。例えば、情報処理部１１８は、「この情報コードは不正な情報コードである可能性があります。」等の通知をユーザ端末４により表示させてもよい。情報処理部１１８は、通知を提示させた後、ユーザによる選択に応じて、決済処理を実行するか否かを決定してもよい。例えば、情報処理部１１８は、更に「決済を行いますか？」等のメッセージをユーザの端末４に表示させる。ユーザが、ユーザ端末４を操作して決済の承認を選択した場合、情報処理部１１８は、決済処理を実行させる。ユーザが、決済の非承認を選択した場合、情報処理部１１８は、決済処理を実行させない。
【００７７】  図７Ａ乃至図７Ｃは、情報コードに関する不正の判断例を示す図である。例えば、決済管理サーバ１は、店舗Ｘが販売する商品Ａについて、決済用情報「ＡＡＡＡＡ」を生成した。そして、図７Ａに示すように、決済管理サーバ１は、決済用情報「ＡＡＡＡＡ」をエンコードすることにより、情報コード２１０−１を生成した。また、決済管理サーバ１は、決済用情報「ＡＡＡＡＡ」に基づいて、視覚情報２２０−１を生成した。視覚情報２２０−１は、数字列「８５４５」である。決済管理サーバ１は、情報コード２１０−１及び視覚情報２２０−１をシール４１０に印刷した。その後、シール４１０は、店舗Ｘ内に貼付された。店舗Ｘに訪れた人物５００は、シール４１０を見ることにより、視覚情報２２０−１としての数字列「８５４５」を容易に記憶することができる。人物５００は、例えば店舗Ｘの店員であってもよいし、店舗Ｘの客であってもよい。
【００７８】  その後、例えば店舗Ｘとは無関係な悪意ある人物Ｙの商品Ｂについて、決済用情報「ＢＢＢＢＢ」が生成された。商品Ｂは、架空の商品であるかもしれない。そして、図７Ｂに示すように、決済用情報「ＢＢＢＢＢ」をエンコードすることにより、情報コード２１０−２が生成された。情報コード２１０−２は、シール４２０に印刷された。情報コード２１０−２は、人物Ｙ自身が発行したのかもしれないし、人物Ｙからの要求に応じて、決済管理サーバ１が情報コード２１０−２を含む拡張情報コードを発行したのかもしれない。人物Ｙは、店舗Ｘに訪れて、シール４２０に印刷されている情報コード２１０−１の上に、シール４２０をこっそり貼り付けた。すなわち、情報コード２１０−１が情報コード２１０−２にすり替えられた。視覚情報２２０−１はすり替わっていないので、人物５００は、情報コード２１０−１のすり替えに気が付かない可能性がある。或るユーザが商品Ａを購入しようとして、情報コード２１０−２を視覚情報２２０−１とともに撮影する。撮影によって得られた写真画像はユーザ端末４から決済管理サーバ１へ送信される。決済管理サーバ１は、写真画像に含まれる情報コード２１０−２をデコードして、決済用情報「ＢＢＢＢＢ」を生成する。そして、決済管理サーバ１は、決済用情報「ＢＢＢＢＢ」に基づいて、チェックコードを取得する。決済用情報「ＢＢＢＢＢ」は決済用情報「ＡＡＡＡＡ」と異なるので、決済用情報「ＢＢＢＢＢ」から生成されたチェックコードが、「８５４５」と異なる確率は極めて高い。例えば、チェックコード「２１５０」が生成される。決済管理サーバ１は、一方で写真画像に含まれる視覚情報２２０−１を画像認識して、チェックコード「８５４５」を生成する。チェックコード「２１５０」とチェックコード「８５４５」とは異なるので、決済管理サーバ１は、商品Ｂに対する決済処理の実行を拒否する。これによって、商品Ａを購入したユーザや店舗Ｘが損害を被る事態を避けけることができる。
【００７９】  或いは、図７Ｃに示すように、決済用情報「ＢＢＢＢＢ」をエンコードすることにより、情報コード２１０−２が生成され、また決済用情報「ＢＢＢＢＢ」に基づいて、視覚情報２２０−２が生成される。視覚情報２２０−２は、数字列「２１５０」である。情報コード２１０−２及び視覚情報２２０−２がシール４３０に印刷された。人物Ｙはシール４２０の上に、シール４３０をこっそり貼り付けた。すなわち、情報コード２１０−１と視覚情報２２０−１との組み合わせが、情報コード２１０−２と視覚情報２２０−２との組み合わせにすり替えられた。その後、シール４３０に印刷された視覚情報２２０−２を見た人物５００が、その視覚情報２２０−２は数字列「２１５０」であると容易に認識することができる。数字列「２１５０」は、人物５００が記憶している数字列「８５４５」と異なる。従って、人物５００は、情報コード２１０−１がすり替えられたことに気付くことができる。これにより、誰かが商品Ａを購入するために情報コード２１０−１を撮影する前に、人物５００等がシール４３０を剥がす等の対処を行うことができる。このように、情報コードがすり替えられたか否かを人間が判断しやすくなる。これによって、情報コードに関する不正の防止が強化される。
【００８０】［１−５．電子決済システムの動作］  次に、電子決済システムＳの動作について、図８及び図９を用いて説明する。図８は、決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。決済管理サーバ１が、店舗端末３から情報コードの発行要求を受信したときに、システム制御部１１は、サーバプログラムに含まれるプログラムコードに従って情報コード発行処理を実行する。
【００８１】  図８に示すように、システム制御部１１は、発行要求に応じて新たな決済用情報３１０を生成する（ステップＳ１０１）。次いで、情報コード生成部１１１は、生成された決済用情報３１０をエンコードして、新たな情報コード２１０を生成する（ステップＳ１０２）。次いで、チェックコード生成部１１２は、所定のハッシュ関数を用いてハッシュ化を行う等、決済用情報３１０を変換することにより、チェックコード３２０を生成する（ステップＳ１０３）。次いで、コード出力部１１３は、生成されたチェックコード３２０に対応する視覚情報２２０を生成する（ステップＳ１０４）。例えば、コード出力部１１３は、チェックコード３２０により示される各クラスに対応する画像データを記憶部１４から取得する。コード出力部１１３は、取得された画像データを、チェックコード３２０により示されるクラスの順序に従って結合して、視覚情報２２０の画像データを生成する。コード出力部１１３は、生成された情報コード２１０と視覚情報２２０を関連付けて出力する（ステップＳ１０５）。例えば、コード出力部１１３は、情報コード２１０の画像データと視覚情報２２０の画像データを結合して、拡張情報コード２００の画像データを生成する。コード出力部１１３は、生成された画像データをプリンタ２に送信して、プリンタ２により、拡張情報コード２００を印刷させる。ステップＳ１０５が終わると、情報コード発行処理が終了する。
【００８２】  図９は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。所定物に表示された拡張情報コード２００を、ユーザがユーザ端末４で撮影する。すると、ユーザ端末４は、拡張情報コード２００の写真画像３３０を決済管理サーバ１へ送信する。決済管理サーバ１が、ユーザ端末４から写真画像３３０を受信したときに、システム制御部１１は、サーバプログラムに含まれるプログラムコードに従って情報コード利用制御処理を実行する。
【００８３】  図９に示すように、システム制御部１１は、ユーザ端末４から送信されてきた写真画像３３０を、通信部１５を介して取得する（ステップＳ２０１）。次いで、情報コードデコード部１１４は、写真画像３３０に含まれる情報コードをデコードして、決済用情報３４０を生成する（ステップＳ２０２）。次いで、チェックコード取得部１１５は、図８に示す情報コード発行処理におけるステップＳ１０３と同様の方法で決済用情報３４０を変換することにより、チェックコード３５０を生成する（ステップＳ２０３）。次いで、視覚情報認識部１１６は、写真画像３３０に対して画像分類を行うことにより、視覚情報２２０により表される対象のクラスを示すチェックコード３６０を取得する（ステップＳ２０４）。例えば、視覚情報認識部１１６は、写真画像３３０に含まれる視覚情報２２０を構成する各構成要素により表される対象が分類されるクラスを特定する。視覚情報認識部１１６は、特定されたクラスを示す情報を、構成要素の配列に従って結合することにより、チェックコード３６０を生成する。
【００８４】  次いで、チェックコード比較部１１７は、チェックコード３５０とチェックコード３６０とが一致するか否かを判定する（ステップＳ２０５）。チェックコード３５０とチェックコード３６０とが一致すると判定された場合（ステップＳ２０５：ＹＥＳ）、処理はステップＳ２０６に進む。ステップＳ２０６において、情報処理部１１８は、決済処理を実行する（ステップＳ２０６）。例えば、情報処理部１１８は、写真画像３３０を送信してきたユーザ端末４を利用するユーザのクレジットカードの情報を、記憶部１４に記憶されたデータベースから取得する。また、情報処理部１１８は、決済用情報３４０に基づいて、支払い代金及び支払先の店舗を特定する。情報処理部１１８は、取得された情報に基づき、図示せぬ信販会社のサーバ装置と協働して、ユーザから店舗へ代金を決済するための処理を実行する。次いで、情報処理部１１８は、電子決済が完了した旨を示すメッセージをユーザ端末４へ送信する（ステップＳ２０７）。一方、チェックコード３５０とチェックコード３６０とが一致しないと判定された場合（ステップＳ２０５：ＮＯ）、処理はステップＳ２０８に進む。ステップＳ２０８において、情報処理部１１８は、エラーメッセージをユーザ端末４へ送信する（ステップＳ２０８）。これにより、ユーザ端末４は、例えば「情報コードが不正であるため決済が拒否されました」等のエラーメッセージを表示する。ステップＳ２０７又はＳ２０８が終わると、情報コード利用制御処理が終了する。
【００８５】［１−６．変形例］  拡張情報コード２００の発行に関する処理の一部又は全部を、各店舗端末３が実行してもよい。この場合、例えば各店舗端末３がプリンタを備えてもよい。各店舗端末３に備えられるＣＰＵは、情報コード生成部１１１、チェックコード生成部１１２及びコード出力部１１３のうち少なくとも一つとして機能する。例えば、決済管理サーバ１は、拡張情報コード２００を生成すると、この拡張情報コード２００を店舗端末３へ送信してもよい。そして、店舗端末３は、拡張情報コード２００を印刷してもよい。或いは、情報コード２１０の生成は店舗端末３が行い、視覚情報２２０の生成は決済管理サーバ１が行ってもよい。そして、店舗端末３は、情報コード２１０と視覚情報２２０とを結合して、拡張情報コード２００を生成してもよい。或いは、店舗端末３が情報コード２１０と視覚情報２２０との両方を生成してもよい。但し、セキュリティの観点から、決済用情報３１０を変換してチェックコードを生成する方法を秘匿することが重要である場合、視覚情報２２０の生成は決済管理サーバ１が行うことが望ましい。
【００８６】  拡張情報コード２００のチェックに関する処理の一部又は全部を、各ユーザ端末４が実行してもよい。この場合、各ユーザ端末４に備えられるＣＰＵは、情報コードデコード部１１４、チェックコード取得部１１５、視覚情報認識部１１６、チェックコード比較部１１７及び情報処理部１１８のうち少なくとも一つとして機能する。例えば、ユーザ端末４は、情報コード２１０をデコードして、決済用情報３４０を生成してもよい。ユーザ端末４は、この決済用情報３４０と写真画像３３０を決済管理サーバ１へ送信してもよい。この場合、決済管理サーバ１は、チェックコード３５０及び３６０の生成及び比較を行う。ユーザ端末４は、更に写真画像３３０から視覚情報２２０を認識して、チェックコード３５０を生成してもよい。そして、ユーザ端末４は、このチェックコード３５０と決済用情報３４０とを決済管理サーバ１へ送信してもよい。この場合、決済管理サーバ１は、チェックコード３６０を生成して、チェックコード３５０とチェックコード３６０とを比較する。ユーザ端末４は、更に決済用情報３４０を変換してチェックコード３６０を生成してもよい。この場合、ユーザ端末４は、チェックコード３５０とチェックコード３６０との比較も行う。チェックコード３５０とチェックコード３６０とが一致する場合、ユーザ端末４は決済用情報３４０を決済管理サーバ１へ送信する。チェックコード３５０とチェックコード３６０とが異なる場合、ユーザ端末４は決済用情報３４０の送信を拒絶する。これにより、ユーザ端末４は、決済管理サーバ１による決済処理の実行を制御する。決済管理サーバ１は、ユーザ端末４から決済用情報３４０を受信した場合に限り、決済処理を実行する。なお、前述と同様に、セキュリティの観点から、チェックコード３６０の生成は決済管理サーバ１が行うことが望ましい。
【００８７】  以上説明したように、本実施形態によれば、情報コード生成部１１１が、決済用情報３４０をエンコードして、光学的に読み取り可能な情報コード２１０を生成する。また、チェックコード生成部１１２が、決済用情報３４０に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すチェックコード３２０を取得する。また、コード出力部１１３が、生成された情報コード２１０と、生成されたチェックコード３２０により示されるクラスに分類される対象を視覚的に表す視覚情報２２０と、を関連付けて出力する。従って、情報コード２１０がすり替えられたか否かを人間が判断しやすくなる。情報コード２１０がすり替えられたと人間が判断した場合、その人間は、現在表示されている情報コード２１０の読み取りを止めさせることができる。その結果、所定処理は実行されない。このように、情報コード２１０に関する不正が抑止される。
【００８８】  また、チェックコード生成部１１２が、決済用情報３４０から情報コード２１０を生成するためのエンコード方法とは異なる方法を用いて、決済用情報３４０を変換してチェックコード３２０を生成してもよい。この態様によれば、情報コード２１０とは異なるチェックコード３２０が変換によって生成される。
【００８９】  また、視覚情報２２０は、人間の視覚を通じてクラスの認識が可能に対象を表してもよい。また、視覚情報は、絵、数字、文字及び記号のうち少なくとも一つを含んでもよい。また、情報コード２１０は、複数の幾何学的図形を含んでもよい。
【００９０】  また、コード出力部１１３が、情報コード２１０の外側に視覚情報２２０が配置された画像を出力してもよい。また、コード出力部１１３が、情報コード２１０の内側に視覚情報２２０が配置された画像を出力してもよい。
【００９１】  また、チェックコード取得部１１５が、光学的に読み取り可能な情報コード２１０を撮影してデコードすることにより取得された決済用情報３４０に基づいて、情報コード２１０とともに表示されるべき視覚情報２２０により視覚的に表される対象が分類されるクラスを示すチェックコード３５０を取得する。また、視覚情報認識部１１６が、情報コード２１０とともに表示されているためにその情報コード２１０とともに撮影された視覚情報２２０により視覚的に表される対象が分類されるクラスを示すチェックコード３６０を取得する。また、チェックコード比較部１１７が、取得されたチェックコード３５０と取得されたチェックコード３６０との比較を行う。また、情報処理部１１８が、比較の結果に基づいて、取得された決済用情報３４０を用いた所定処理の実行を制御する。従って、情報コード２１０がすり替えられたか否かを人間が判断しやすくなる。情報コード２１０がすり替えられたと人間が判断した場合、その人間は、現在表示されている第１情報コード２１０の読み取りを止めさせることができる。その結果、所定処理は実行されない。このように、情報コード２１０に関する不正が抑止される。
【００９２】  また、チェックコード取得部１１５が、取得された決済用情報３４０を変換することにより、チェックコード３５０を生成してもよい。また、視覚情報認識部１１６が、情報コード２１０と視覚情報２２０とを撮影することで得られた写真画像３３０に対して画像分類を行うことにより、チェックコード３６０を取得してもよい。この態様によれば、決済用情報３４０とチェックコード３５０とが関連付けて予め記憶されていなくとも、チェックコード３５０の取得が可能となる。また、視覚情報２２０から視覚を通じて人間が認識する傾向があるクラスと同じクラスを示すチェックコード３６０を取得することができる。
【００９３】  また、チェックコード取得部１１５が、決済用情報３４０から情報コード２１０を生成するためのエンコード方法とは異なる方法を用いて、決済用情報３４０からチェックコード３５０を生成してもよい。この態様によれば、情報コード２１０とは異なるチェックコード３５０が変換によって生成される。
【００９４】  また、情報処理部１１８が、チェックコード３５０とチェックコード３６０との比較の結果が所定条件を満たす場合、所定処理を実行させ、比較の結果が所定条件を満たさない場合、所定処理を実行させなくてもよい。この態様によれば、情報コード２１０がすり替えられた場合、不正に所定処理が実行されることが防止される。
【００９５】  また、情報処理部１１８が、比較の結果が所定条件を満たす場合、所定処理を実行させ、比較の結果が所定条件を満たさない場合、比較の結果に基づく通知をユーザに提示させてもよい。この態様によれば、情報コード２１０がすり替えられたおそれがあることをユーザが認識することができる。
【００９６】  また、情報処理部１１８が、比較の結果が所定条件を満たさない場合、ユーザによる選択に応じて、所定処理を実行させるか否かを決定してもよい。この態様によれば、情報コード２１０がすり替えられたおそれがあることをユーザが認識した上で、ユーザの責任で所定処理を実行することができる。
【００９７】［２．第２実施形態］  次に、図１０乃至図１２を用いて、第２実施形態について説明する。以下で説明する点を除き、本実施形態は第１実施形態と同じである。本実施形態においては、決済用情報を変換する以外の方法で、又は決済用情報とは無関係にチェックコードが取得される。
【００９８】  図１０は、チェックコードＤＢ１４ａに記憶される情報の例を示す図である。本実施形態において、決済管理サーバ１の記憶部１４には、チェックコードＤＢ１４ａが記憶される。「ＤＢ」は、データベースの略語である。チェックコードＤＢ１４ａには、電子決済システムＳにおいて生成されたチェックコード３２０に関する情報が記憶される。例えば、チェックコードＤＢ１４ａには、発行された情報コード２１０ごとに、店舗ＩＤ、決済用情報３１０及びチェックコード３２０が関連付けて記憶される。店舗ＩＤは、店舗を識別する情報である。チェックコードＤＢ１４ａにおける店舗ＩＤは、情報コード２１０の発行を要求した店舗を示す。決済用情報３１０は、発行された情報コード２１０の元となる情報である。チェックコード３２０は、発行された情報コード２１０に関連付けられる視覚情報２２０に対応する。
【００９９】  図１１は、決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。図１１において、図８と同様のステップについては同様の符号が付されている。図１１に示すように、先ずステップＳ１０１及びＳ１０２が実行される。次いで、チェックコード生成部１１２は、所定のアルゴリズムに従って新たなチェックコード３２０を生成する（ステップＳ１２１）。例えば、チェックコード生成部１１２は、ランダムにチェックコード３２０を決定してもよい。或いは、チェックコード生成部１１２は、所定の順序通りにチェックコード３２０を決定してもよい。次いで、チェックコード生成部１１２は、決済用情報３１０とチェックコード３２０とを関連付けてチェックコードＤＢ１４ａに記憶させる（ステップＳ１２２）。その後、ステップＳ１０４及びＳ１０５が実行されて、情報コード発行処理が終了する。
【０１００】  図１２は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。図１２において、図９と同様のステップについては同様の符号が付されている。図１２に示すように、先ずステップＳ２０１及びＳ２０２が実行される。次いで、チェックコード取得部１１５は、ステップＳ２０２で生成された決済用情報３４０と一致する決済用情報３４０がチェックコードＤＢ１４ａに記憶されているか否かを判定する（ステップＳ２２１）。決済用情報３４０がチェックコードＤＢ１４ａに記憶されていないと判定された場合（ステップＳ２２１：ＮＯ）、情報処理部１１８は、エラーメッセージをユーザ端末４へ送信する（ステップＳ２０８）。この判定結果は、ユーザ端末４により読み取られた情報コード２１０が、電子決済システムＳにより正規に発行されたものではないことを示す。一方、決済用情報３４０がチェックコードＤＢ１４ａに記憶されていると判定された場合（ステップＳ２２１：ＹＥＳ）、処理はステップＳ２２２に進む。ステップＳ２２２において、チェックコード取得部１１５は、決済用情報３４０に関連付けられたチェックコード３５０を、チェックコードＤＢ１４ａから取得する。次いで、ステップＳ２０４及びＳ２０５が実行される。ステップＳ２０５において、チェックコードＤＢ１４ａから取得されたチェックコード３５０とチェックコード３６０とが一致するか否かが判定される。この判定の結果に応じて、ステップＳ２０６及びＳ２０７が実行され、又はステップＳ２０８が実行される。
【０１０１】  以上説明したように、本実施形態においても、第１実施形態の場合と同様に、拡張情報コード２００の発行に関する処理の一部又は全部を、各店舗端末３が実行してもよい。また、拡張情報コード２００のチェックに関する処理の一部又は全部を、各ユーザ端末４が実行してもよい。但し、チェックコードＤＢ１４ａは決済管理サーバ１に備えられている必要がある。
【０１０２】  以上説明したように、本実施形態によっても、情報コード２１０がすり替えられたか否かを人間が判断しやすくなる。
【０１０３】［３．第３実施形態］  次に、図１３乃至図１７を用いて、第３実施形態について説明する。以下で説明する点を除き、本実施形態は第２実施形態と同じである。本実施形態においては、情報コードの発行時におけるチェックコードの生成に位置情報が用いられ、また情報コードのチェックに位置情報が用いられる。
【０１０４】  図１３は、チェックコードＤＢ１４ａに記憶される情報の例を示す図である。本実施形態において、チェックコードＤＢ１４ａには、発行された情報コード２１０ごとに、店舗ＩＤ、決済用情報３１０、チェックコード３２０及び店舗位置情報３６０が関連付けて記憶される。店舗位置情報は、発行された情報コード２１０が表示されるべき場所の位置を示す。すなわち、店舗位置情報は、拡張情報コード２００を表示する所定物４００が置かれるべき場所を示す。情報コード２１０が表示されるべき場所は、通常、情報コード２１０の発行を要求した店舗である。しかしながら、情報コード２１０の発行要求の際に、店舗の従業員が、情報コード２１０が表示されるべき場所として、店舗と異なる場所（商品が販売される場所又はサービスが提供される場所）を指定可能であってもよい。情報コード２１０が表示されるべき場所の位置は、例えば経緯度で示されてもよいし、住所で示されてもよい。
【０１０５】  本実施形態における情報コード２１０の発行時、チェックコード生成部１１２は、情報コードが表示されるべき場所の位置を示す位置情報を取得する。この位置情報は、例えば店舗位置情報である。そして、チェックコード生成部１１２は、取得された位置情報により示される場所から所定距離以内の場所で表示されるべき他の情報コードのために生成済のチェックコードとは異なるチェックコード３２０を生成する。これにより、表示されるべき場所が比較的に近い拡張情報コード２００の間で、視覚情報２２０が互いに異なることが担保される。従って、或る場所で表示されていた拡張情報コード２００が、その近くの場所で表示されるべき拡張情報コード２００にすり替えられた場合に、店舗の従業員等がすり替えに気が付くことができる。
【０１０６】  図１４は、拡張情報コード２００の生成例を示す図である。図１４に示すように、例えば店舗６１０に対して新たな拡張コード２００−７を発行するものとする。領域７００は、店舗６１０から所定半径の円で囲まれる領域である。領域７００内には、店舗６１０に加えて、店舗６２０〜６４０がある。店舗６１０に対しては既に拡張情報コード２００−１が発行されている。店舗６２０に対しては拡張情報コード２００−２が発行されている。店舗６３０に対しては拡張情報コード２００−３が発行されている。店舗６４０に対しては拡張情報コード２００−４及び２００−５が発行されている。拡張情報コード２００−１〜２００−５に含まれる視覚情報２２０は、それぞれ「２４１１」、「６１１４」、「０２６４」、「８３３９」及び「８９７３」である。そこで、新たに発行される拡張情報コード２００−７に含まれる視覚情報２２０は、これらの何れとも異なる例えば「２０７２」である。領域７００外には、店舗６５０がある。店舗６５０に対しては拡張情報コード２００−６が発行されている。拡張情報コード２００−６に含まれる視覚情報２２０は「３６２５」である。ここで、新たに発行される拡張情報コード２００−７に含まれる視覚情報２２０が、たとえ「３６２５」になってしまったとしても、後述する理由により問題はない。
【０１０７】  チェックコード生成部１１２は、所定距離以内の場所で表示されるべき他の情報コードのための生成済チェックコードと異なる複数のチェックコードのうち、生成済チェックコードと重複する度合いが相対的に小さいチェックコードを生成してもよい。すなわち、チェックコード生成部１１２は、生成済チェックコードとは重複する度合いが極力小さいチェックコード３２０を生成する。チェックコード生成部１１２は、例えば生成済チェックコードと異なるチェックコードのうち、重複度が最も小さいチェックコード３２０を生成してもよい。本実施形態においては、視覚的に表されることが可能な対象が分類されるクラスをそれぞれ示すコード要素で構成される。重複度は、例えば、チェックコード３２０を構成するコード要素のうち、生成済チェックコードを構成するコード要素との間で、値及び位置が一致するコード要素の数に対応してもよい。例えば、重複度を示す情報としてハミング距離が用いられてもよい。この場合、ハミング距離が長いほど重複度が小さい。例えば、数字列「１５６３」と「４５８１」との間のハミング距離は３である。また、チェックコード生成部１１２は、位置は異なるが、値が同一である構成要素がある場合、より大きい重複度を決定してもよい。例えば、数字列「１６２３」と「１９２９」との間のハミング距離は２であり、数字列「１６２３」と「１３２９」との間のハミング距離も２である。数字列「１９２９」の「９」は、数字列「１６２３」に含まれていないのに対し、数字列「１３２９」の「３」は、数字列「１６２３」に含まれている。従って、数字列「１９２９」の方が「１３２９」よりも重複度が小さい。
【０１０８】  相対的に重複度が小さいチェックコード３２０が生成されて視覚情報２２０が生成されることにより、視覚情報２２０に変化があったか否かを人間が判断しやすくなる。生成された視覚情報２２０と別の視覚情報２２０との間における重複度が小さいほど、視覚情報２２０と別の視覚情報２２０との間の類似性が低いので、人間は視覚情報の見分けが付きやすい。人間が過去に見た視覚情報２２０の記憶が曖昧であった場合、その人間が現在見ている視覚情報２２０と過去に見た視覚情報２２０とが一致するか否かを容易に判断することができない場合がある。しかしながら、現在見ている視覚情報２２０と過去に見た視覚情報２２０とが見分けやすければ、記憶が曖昧であったとしても、その人間はこれらが異なることを容易に判断することができる。
【０１０９】  図１５は、拡張コードのチェック時において位置情報を比較するためのデータの流れの一例を示す図である。本実施形態において、各ユーザ端末４は、そのユーザ端末４の位置を示す端末位置情報を取得する機能を有する。例えば、ＧＰＳ（Global Positioning System）等の全球測位衛星システムを利用して、端末位置情報として経緯度が計算されてもよい。また例えば、移動体通信事業者により、基地局を利用した位置情報がユーザ端末４に提供されてもよい。この場合、ユーザ端末４は、そのユーザ端末４の近くにある基地局の位置に対応した経緯度又は住所を、端末位置情報として取得する。ユーザ端末４は、拡張コード２００を撮影すると、図１５に示すように、拡張コード２００の写真画像３３０とともに、そのときの端末位置情報３７０を決済管理サーバ１へ送信してもよい。
【０１１０】  拡張情報コード２００のチェック時、チェックコード比較部１１７は、拡張情報コード２００が撮影された場所の位置を示す位置情報を取得する。この位置情報は、例えば、ユーザ端末４から送信されてきた端末位置情報３７０である。また、チェックコード比較部１１７は、情報コードデコード部１１４により生成された決済用情報３４０に基づいて、情報コード２１０が表示されるべき場所の位置を示す位置情報を取得する。この位置情報は、例えば店舗位置情報３８０である。例えば、チェックコード比較部１１７は、決済用情報３４０に関連付けられた店舗位置情報３８０を、チェックコードＤＢ１４ａから取得する。チェックコード比較部１１７は、取得された店舗位置情報３８０と取得された端末位置情報３７０とを更に比較する。
【０１１１】  情報処理部１１８は、チェックコード３５０とチェックコード３６０との比較結果、及び店舗位置情報３８０と端末位置情報３７０との比較結果に基づいて、決済用情報３４０を用いた所定処理の実行を制御する。具体的に、情報処理部１１８は、チェックコード３５０とチェックコード３６０とが一致し、且つ、店舗位置情報３８０により示される位置と端末位置情報３７０により示される位置との間の距離が所定の閾値未満である場合、決済処理を実行する。一方、情報処理部１１８は、チェックコード３５０とチェックコード３６０とが一致したとしても、店舗位置情報３８０により示される位置と端末位置情報３７０により示される位置との距離が閾値を超える場合、決済処理の実行を拒否する。これにより、或る場所で表示されていた拡張情報コード２００が、その場所から比較的遠くの場所で表示されるべき拡張情報コード２００にすり替えられた場合に、決済管理サーバ１は、決済処理を拒絶することができる。なお、距離の閾値は、前述の所定距離と同一であってもよいし、所定距離とは異なってもよい。
【０１１２】  図１４に示す例において、店舗６１０に表示された拡張情報コード２００−７が、拡張情報コード２００−２〜２００−５の何れかにすり替えられたとする。しかしながら、拡張情報コード２００−２〜２００−５それぞれに含まれる視覚情報２２０の何れも、拡張情報コード２００−７に含まれる視覚情報２２０と異なる。従って、店舗６１０の従業員等は、拡張情報コード２００−７がすり替えられたことに気が付く蓋然性が高い。もし、視覚情報２２０が「３６２５」である拡張情報コード２００−７が発行されたとする。拡張情報コード２００−７が拡張情報コード２００−６にすり替えられた場合、視覚情報２２０に変化がないため、従業員等はすり替えに気が付かないかもしれない。しかしながら、拡張情報コード２００−７が表示されるべき店舗６１０と拡張情報コード２００−６が表示されるべき店舗６５０との間の距離は閾値を超える。従って、店舗６１０でユーザ端末４が拡張情報コード２００−６を読み取ったとしても、決済管理サーバ１における店舗位置情報３８０と端末位置情報３７０との比較により、決済処理は拒絶される。
【０１１３】  人間による視覚情報２２０の記憶しやすさを鑑みると、視覚情報２２０のパターン数は少ない方がよい。例えば、視覚情報２２０が４桁の数字列で構成される場合、視覚情報２２０のパターン数は１万である。その一方で、視覚情報２２０のパターン数が少ないほど、多数の拡張情報コード２００が発行されていくにつれて、拡張情報コード２００間で、視覚情報２２０が互いに一致する確率が高くなる。しかしながら、本実施形態においては、所定距離の範囲内では、視覚情報２２０が異なることが担保される。そのため、情報コード２１０がすり替えられたか否かを人間が判断しやすい状況を維持しつつ、視覚情報２２０のパターン数を少なくすることができる。
【０１１４】  なお、拡張情報コード２００の発行時における位置情報を用いたチェックコードの生成及び拡張情報コード２００のチェック時における位置情報の比較の両方が実施されてもよいし、何れか一方のみが実施されてもよい。
【０１１５】  図１６は、決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。図１６において、図１１と同様のステップについては同様の符号が付されている。図１６に示すように、先ずステップＳ１０１及びＳ１０２が実行される。次いで、チェックコード生成部１１２は、情報コードが表示されるべき場所の位置として、情報コード２１０の発行要求を送信してきた店舗端末３が設置された店舗の位置を示す店舗位置情報を取得する（ステップＳ１４１）。例えば、チェックコード生成部１１２は、記憶部１４に記憶されて店舗の住所のデータベースから、発行要求元の店舗の住所を店舗位置情報として取得してもよい。
【０１１６】  次いで、チェックコード生成部１１２は、発行要求元の店舗の店舗位置情報により示される位置と、チェックコードＤＢ１４ａに既に記憶されている各店舗位置情報により示される位置との距離を計算する。チェックコード生成部１１２は、チェックコードＤＢ１４ａに記憶されている店舗位置情報のうち、計算された距離が所定距離以下である店舗位置情報を特定する。チェックコード生成部１１２は、特定された各店舗位置情報に関連付けてチェックコードＤＢ１４ａに記憶されているチェックコードを、除外生成済チェックコードとして取得する（ステップＳ１４２）。
【０１１７】  次いで、チェックコード生成部１１２は、取得された何れの除外生成済チェックコードとも異なるチェックコード３２０を、所定のアルゴリズムに従って生成する。例えば、チェックコード生成部１１２は、ランダムにチェックコード３２０を決定してもよいし、所定の順序通りにチェックコード３２０を決定してもよい。何れの場合であっても、最終的にチェックコード３２０が除外生成済チェックコードと異なればよい。この後、生成されたチェックコード３２０に基づいて視覚情報２２０が生成されて、拡張情報コード２００が出力される（ステップＳ１０４、Ｓ１０５）。
【０１１８】  図１７は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。図１７において、図１２と同様のステップについては同様の符号が付されている。図１７に示すように、先ずステップＳ２０１が実行される。次いで、チェックコード比較部１１７は、ユーザ端末４から写真画像３３０とともに送信されてきた写真画像３３０を、通信部１５を介して取得する（ステップＳ２４１）。次いで、ステップＳ２０２、Ｓ２２１、Ｓ２０４及びＳ２０５が実行される。Ｓ２０５において、チェックコード３５０とチェックコード３６０とが一致しないと判定された場合（ステップＳ２０５：ＮＯ）、ステップＳ２０８が実行される。一方、チェックコード３５０とチェックコード３６０とが一致すると判定された場合（ステップＳ２０５：ＹＥＳ）、処理はステップＳ２４２に進む。
【０１１９】  ステップＳ２４２において、チェックコード比較部１１７は、ステップＳ２０２で生成された決済用情報３４０に関連付けられた店舗位置情報３８０を、チェックコードＤＢ１４ａから取得する。次いで、チェックコード比較部１１７は、店舗位置情報３８０と端末位置情報３７０との差が閾値未満であるか否かを判定する（ステップＳ２４３）。店舗位置情報３８０と端末位置情報３７０との差が閾値未満であると判定された場合（ステップＳ２４３：ＹＥＳ）、ステップＳ２０６及びＳ２０７が実行される。一方、店舗位置情報３８０と端末位置情報３７０との差が閾値未満ではないと判定された場合（ステップＳ２４３：ＮＯ）、ステップＳ２０８が実行される。
【０１２０】  以上説明したように、本実施形態によれば、チェックコード生成部１１２が、情報コード２１０が表示されるべき場所の位置を示す店舗位置情報を取得する。また、チェックコード生成部１１２が、取得された店舗位置情報により示される場所から所定距離以内の場所で表示されるべき他の情報コード２１０のために生成された生成済チェックコードとは異なるチェックコード３２０を生成する。従って、情報コード２１０と視覚情報との組み合わせが、比較的に近い場所で表示されるべき他の情報コード２１０と視覚情報との組み合わせにすり替えられた場合に、人間は、視覚情報を見ることにより、情報コード２１０がすり替わったか否かを判断することができる。
【０１２１】  また、チェックコード生成部１１２は、生成済チェックコードと異なるチェックコード３２０のうち、生成済チェックコードとの間で重複する度合いが相対的に小さいチェックコード３２０を生成してもよい。この態様によれば、以前に見た視覚情報の記憶が曖昧であっても、人間は情報コード２１０がすり替わったか否かを容易に判断することができる。
【０１２２】  また、チェックコード比較部１１７が、取得された決済用情報３４０に基づいて、情報コード２１０が表示されるべき場所の位置を示す店舗位置情報を取得する。また、チェックコード比較部１１７が、情報コード２１０と視覚情報２２０とが撮影された場所の位置を示す端末位置情報を取得する。また、チェックコード比較部１１７が、取得された店舗位置情報と取得された端末位置情報とを更に比較する。また、情報処理部１１８が、チェックコード３５０とチェックコード３６０との比較結果、及び店舗位置情報と端末位置情報との比較結果に基づいて、所定処理の実行を制御する。従って、たとえチェックコード３５０とチェックコード３６０とが一致したとしても、店舗位置情報と端末位置情報との比較結果に基づいて、所定処理が不正に実行されることを抑止することができる。
【０１２３】［４．第４実施形態］  次に、図１８乃至図２１用いて、第４実施形態について説明する。以下で説明する点を除き、本実施形態は第１実施形態と同じである。本実施形態においては、決済用情報２２０の変換仕様が、互いに異なる複数の変換仕様の中から決定される。複数の変換仕様は予め定められている。各変換仕様は、例えば、変換方法及び変換に用いられる固定パラメータの少なくとも一つを示す。複数の変換仕様の間で、変換方法及び固定パラメータの少なくとも何れか一方が異なってもよい。例えば、複数の変換仕様それぞれに対応した複数のハッシュ関数が予め記憶部１４に記憶されてもよい。
【０１２４】  図１８は、拡張コード２００の生成時におけるデータの流れの一例を示す図である。拡張情報コード２００の発行時、チェックコード生成部１１２は、決済用情報３１０を変換してチェックコード３２０を生成するために用いることが可能な互いに異なる複数の変換仕様のうち何れの変換仕様を用いるかを、生成される情報コード２１０ごとに決定する。チェックコード生成部１１２は、決定された変換仕様に従ってチェックコード３２０を生成する。ここで、複数の変換仕様それぞれの選択確率が一様となるようなアルゴリズムで、変換仕様の決定が行われることが望ましい。例えば、チェックコード生成部１１２は、変換に用いる変換仕様を、ランダムに決定してもよいし、所定の順序通りに決定してもよい。或いは、チェックコード生成部１１２は、別の何らかの情報を用いて変換仕様を決定してもよい。例えば、チェックコード生成部１１２は、拡張情報コード２００の発行日に基づいて、変換に用いる変換仕様を決定してもよい。発行日は、拡張情報コード２００が出力される日付である。発行日に対応して一つの変換仕様が決定されるのであれば、変換仕様の決定方法が如何様であってもよい。変換仕様の決定に用いられる情報は、拡張情報コード２００の発行日以外の情報であってもよい。但し、変換仕様の決定に用いられた情報の特定が第三者にとって困難な情報が用いられることが望ましい。
【０１２５】  例えば、図１８に示すように、ハッシュ関数６００−１〜６００−Ｎが記憶部１４に記憶されている（Ｎは、Ｎ＞１を満たす自然数）。発行日である今日の日付は２０１９年３月１９日である。ここで、例えば発行日情報７１０が生成される。発行日情報７１０は、「０３１９」である。ハッシュ関数６００−１〜６００−Ｎの中から、「０３１９」に対応して例えばハッシュ関数６００−１１が決定される。ハッシュ関数６００−１１を用いて、決済用情報３１０が変換されて、チェックコード３２０が生成される。
【０１２６】  情報コード生成部１１１は、決済用情報３１０と、複数の変換仕様のうちチェックコード３２０の生成に用いられた変換仕様を示す仕様情報と、をエンコードして、情報コード２００を生成する。仕様情報は、例えば変換仕様の識別情報であってもよい。拡張情報コード２００の発行日に基づいて変換仕様が選択された場合、仕様情報は、発行日情報７１０であってもよい。例えば、図１８に示すように、決済用情報３１０と発行日情報７１０とが結合されて、拡張決済用情報７２０が生成される。拡張決済用情報７２０がエンコードされて、情報コード２１０が生成される。そして、この情報コード２１０と視覚情報２２０を含む拡張情報コード２００が生成される。
【０１２７】  図１９は、拡張情報コードのチェック時におけるデータの流れの一例を示す図である。情報コードデコード部１１４は、情報コード２１０をデコードして、決済用情報３４０及び仕様情報を生成する。この仕様情報は、拡張情報コード２００の発行時にチェックコード３２０の生成に用いられた変換仕様を示す。チェックコード取得部１１５は、情報コード２１０をデコードすることにより決済用情報３４０及び仕様情報が生成された場合、複数の変換仕様のうち仕様情報により示される変換仕様に従って、チェックコード３５０を生成する。例えば、図１９に示すように、情報コード２１０がデコードされて、拡張決済用情報７３０が生成される。拡張決済用情報７３０は、決済用情報３４０及び発行日情報７４０を含む。発行日情報７４０は「０３１９」であるので、ハッシュ関数６００−１〜６００−Ｎの中からハッシュ関数６００−１１が選択される。ハッシュ関数６００−１１を用いて、決済用情報３１０が変換されて、チェックコード３５０が生成される。そして、チェックコード３５０とチェックコード３６０とが比較される。
【０１２８】  如何なる拡張情報コード２００に対して如何なる変換仕様が用いられているかが、視覚情報２２０を見ただけで特定することは困難となる。そのため、悪意ある人物が、拡張コード２００のチェックをパスする視覚情報２２０を生成することが困難となる。
【０１２９】  図２０は、決済管理サーバ１のシステム制御部１１による情報コード発行処理の一例を示すフローチャートである。図２０において、図８と同様のステップについては同様の符号が付されている。図２０に示すように、先ずステップＳ１０１が実行される。次いで、チェックコード生成部１１２は、発行日情報７１０を取得する（ステップＳ１６１）。例えば、チェックコード生成部１１２は、今日の日付を発行日情報７１０として取得してもよい。次いで、情報コード生成部１１１は、決済用情報３１０と発行日情報７１０とを結合して、拡張決済用情報７２０を生成する（ステップＳ１６２）。次いで、情報コード生成部１１１は、生成された拡張決済用情報７２０をエンコードして、新たな情報コード２１０を生成する（ステップＳ１６３）。次いで、チェックコード生成部１１２は、複数の変換仕様の中から、発行日情報７１０に対応する変換仕様を選択する（ステップＳ１６４）。例えば、チェックコード生成部１１２は、発行日情報７１０のハッシュ値を計算することにより、選択する変換仕様の識別情報を生成してもよい。次いで、チェックコード生成部１１２は、選択された変換仕様に従って、決済用情報３１０を変換して、チェックコード３２０を生成する（ステップＳ１６５）。その後、ステップＳ１０４及びＳ１０５が実行される。
【０１３０】  図２１は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。図２１において、図９と同様のステップについては同様の符号が付されている。図２１に示すように、先ずステップＳ２０１が実行される。次いで、情報コードデコード部１１４は、情報コード２１０をデコードして、拡張決済用情報７３０を生成する（ステップＳ２６１）。次いで、チェックコード取得部１１５は、生成された拡張決済用情報７３０が発行日情報を含むか否かを判定する（ステップＳ２６２）。拡張決済用情報７３０が発行日情報を含むと判定された場合（ステップＳ２６２：ＮＯ）、ステップＳ２０８が実行される。一方、拡張決済用情報７３０が発行日情報を含むと判定された場合（ステップＳ２６２：ＹＥＳ）、処理はステップＳ２６３に進む。
【０１３１】  ステップＳ２６３において、チェックコード取得部１１５は、拡張決済用情報７３０を、決済用情報３４０と発行日情報７４０とに分離する。次いで、チェックコード取得部１１５は、複数の変換仕様の中から、発行日情報７４０に対応する変換仕様を選択する（ステップＳ２６４）。次いで、チェックコード取得部１１５は、選択された変換仕様に従って、決済用情報３４０を変換して、チェックコード３５０を生成する（ステップＳ２６５）。次いで、ステップＳ２０４及びＳ２０５が実行される。ステップＳ２０５において、ステップＳ２６５で生成されたチェックコード３５０とチェックコード３６０とが一致するか否かが判定される。この判定の結果に応じて、ステップＳ２０６及びＳ２０７が実行され、又はステップＳ２０８が実行される。
【０１３２】  以上説明したように、本実施形態によれば、チェックコード生成部１１２が、決済用情報３４０を変換してチェックコード３２０を生成するために用いることが可能な互いに異なる複数の変換仕様のうち何れの変換仕様を用いるかを、生成される情報ごとに決定する。また、チェックコード生成部１１２が、決定された変換仕様に従って、チェックコード３２０を生成する。また、情報コード生成部１１１が、決済用情報３４０と、複数の変換仕様のうち決定された変換仕様を示す仕様情報と、をエンコードして、情報コード２１０を生成する。従って、視覚情報が、如何なる変換仕様を用いて生成されたかを特定することが困難となる。そのため、悪意ある第三者が不正な情報コード２１０とともに表示されるべき正しい視覚情報を生成することを抑止することができる。
【０１３３】  また、チェックコード生成部１１２が、複数の変換仕様のうち、拡張コード２００が出力される発行日に対応する変換仕様に従って、チェックコード３２０を生成してもよい。また、情報コード生成部１１１が、決済用情報３４０と発行日情報７１０とをエンコードして、情報コード２１０を生成してもよい。
【０１３４】［５．他の実施形態］  本発明が適用可能なシステムは電子決済システムに限定されない。本発明は、情報コードをデコードすることにより得られる元の情報を用いて何からの処理が実行されるあらゆるシステムに対して適用可能である。例えば、ウェブサイトに自動的にアクセスするためのシステムに本発明が適用されてもよい。この場合、例えばＵＲＬが元の情報である。ユーザ端末４は、情報コードをデコードすることにより得られたＵＲＬに従って、ウェブサイトにアクセスする。ユーザ端末４は、例えばアクセスしたウェブサイトのページを表示してもよいし、アクセス先のウェブサーバとの間で何らかの処理を自動的に実行してもよい。また例えば、自動的に電話を掛けるシステムに本発明が適用されてもよい。この場合、電話番号が元の情報である。ユーザ端末４は、情報コードをデコードすることにより得られた電話番号を用いて電話を掛ける。
【０１３５】  システムによっては、決済管理サーバ１のように、情報コードを用いて所定処理を実行するためのサーバ装置が不要な場合がある。例えば、店舗端末３のような各端末装置が、元の情報を変換することによって情報コード及び視覚情報の両方を生成して拡張情報コードを印刷し、且つ各ユーザ端末４が所定処理を実行する場合、サーバ装置は不要である。
【符号の説明】
【０１３６】１  決済管理サーバ２  プリンタ３  店舗端末４  ユーザ端末１１  システム制御部１２  システムバス１３  入出力インターフェース１４  記憶部１４ａ  チェックコードＤＢ１１１  情報コード生成部１１２  チェックコード生成部１１３  コード出力部１１４  情報コードデコード部１１５  チェックコード取得部１１６  視覚情報認識部１１７  チェックコード比較部１１８  情報処理部ＮＷ  ネットワークＳ  電子決済システム
【図１】
2021014537.tif 000003
【図２】
2021014537.tif 000004
【図３Ａ】
2021014537.tif 000005
【図３Ｂ】
2021014537.tif 000006
【図３Ｃ】
2021014537.tif 000007
【図４】
2021014537.tif 000008
【図５】
2021014537.tif 000009
【図６】
2021014537.tif 000010
【図７Ａ】
2021014537.tif 000011
【図７Ｂ】
2021014537.tif 000012
【図７Ｃ】
2021014537.tif 000013
【図８】
2021014537.tif 000014
【図９】
2021014537.tif 000015
【図１０】
2021014537.tif 000016
【図１１】
2021014537.tif 000017
【図１２】
2021014537.tif 000018
【図１３】
2021014537.tif 000019
【図１４】
2021014537.tif 000020
【図１５】
2021014537.tif 000021
【図１６】
2021014537.tif 000022
【図１７】
2021014537.tif 000023
【図１８】
2021014537.tif 000024
【図１９】
2021014537.tif 000025
【図２０】
2021014537.tif 000026
【図２１】
2021014537.tif 000027
【手続補正書】
【提出日】令和2年8月14日(2020.8.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得手段と、
前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得手段と、
前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較手段と、
前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御手段と、
を備えることを特徴とする情報処理システム。
【請求項２】
前記第１クラス情報取得手段は、前記取得された元の情報を変換することにより、前記第１クラス情報を生成し、
前記第２クラス情報取得手段は、前記情報コードと前記第２視覚情報とを撮影することで得られた写真画像に対して画像分類を行うことにより、前記第２クラス情報を取得することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１クラス情報取得手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報から前記第１クラス情報を生成することを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記取得された元の情報に基づいて、前記情報コードが表示されるべき場所の位置を示す第１位置情報を取得する第１位置情報取得手段と、
前記情報コードと前記第２視覚情報とが撮影された場所の位置を示す第２位置情報を取得する第２位置情報取得手段と、
を更に備え、
前記比較手段は、前記取得された第１位置情報と前記取得された第２位置情報とを更に比較し、
前記制御手段は、前記第１クラス情報と前記第２クラス情報との比較結果、及び前記第１位置情報と前記第２位置情報との比較結果に基づいて、前記所定処理の実行を制御することを特徴とする請求項１乃至３の何れか一項に記載の情報処理システム。
【請求項５】
前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記所定処理を実行させないことを特徴とする請求項１乃至４の何れか一項に記載の情報処理システム。
【請求項６】
前記制御手段は、前記比較の結果が所定条件を満たす場合、前記所定処理を実行させ、前記比較の結果が前記所定条件を満たさない場合、前記比較の結果に基づく通知をユーザに提示させることを特徴とする請求項１乃至４の何れか一項に記載の情報処理システム。
【請求項７】
前記制御手段は、前記比較の結果が前記所定条件を満たさない場合、前記ユーザによる選択に応じて、前記所定処理を実行させるか否かを決定することを特徴とする請求項６に記載の情報処理システム。
【請求項８】
前記情報コードは、前記元の情報と、前記元の情報を変換して前記第１クラス情報を生成するために用いることが可能な互いに異なる複数の変換仕様のうち、前記元の情報の変換に用いられた変換仕様を示す仕様情報と、がエンコードされることにより生成されており、
前記情報コードを撮影してデコードすることにより、前記元の情報と前記仕様情報とが取得され、
前記第１クラス情報取得手段は、前記複数の変換仕様のうち、前記取得された仕様情報により示される前記変換仕様に従って、前記取得された元の情報を変換することにより、前記第１クラス情報を生成することを特徴とする請求項１乃至７の何れか一項に記載の情報処理システム。
【請求項９】
元の情報をエンコードして、光学的に読み取り可能な情報コードを生成する情報コード生成手段と、
前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を生成するクラス情報生成手段と、
前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力手段と、
を備えることを特徴とする情報コード生成システム。
【請求項１０】
前記クラス情報生成手段は、前記元の情報から前記情報コードを生成するためのエンコード方法とは異なる方法を用いて、前記元の情報を変換して前記クラス情報を生成することを特徴とする請求項９に記載の情報コード生成システム。
【請求項１１】
前記元の情報を変換して前記クラス情報を生成するために用いることが可能な互いに異なる複数の変換仕様のうち何れの変換仕様を用いるかを、前記生成される情報コードごとに決定する決定手段を更に備え、
前記クラス情報生成手段は、前記決定された変換仕様に従って、前記クラス情報を生成し、
前記情報コード生成手段は、前記元の情報と、前記複数の変換仕様のうち前記決定された変換仕様を示す仕様情報と、をエンコードして、前記情報コードを生成することを特徴とする請求項１０に記載の情報コード生成システム。
【請求項１２】
前記仕様情報は、前記情報コードと前記視覚情報とが出力される日付を示し、
前記クラス情報生成手段は、前記複数の変換仕様のうち、前記日付に対応する前記変換仕様に従って、前記クラス情報を生成することを特徴とする請求項１１に記載の情報コード生成システム。
【請求項１３】
前記情報コードが表示されるべき場所の位置を示す位置情報を取得する位置情報取得手段を更に備え、
前記クラス情報生成手段は、前記取得された位置情報により示される場所から所定距離以内の場所で表示されるべき他の情報コードのために生成された生成済クラス情報とは異なる前記クラス情報を生成することを特徴とする請求項９に記載の情報コード生成システム。
【請求項１４】
前記クラス情報生成手段は、前記生成済クラス情報と異なる複数のクラス情報のうち、前記生成済クラス情報と重複する度合いが相対的に小さいクラス情報を生成することを特徴とする請求項１３に記載の情報コード生成システム。
【請求項１５】
前記視覚情報は、人間の視覚を通じて前記クラスの認識が可能に前記対象を表すことを特徴とする請求項９乃至１４の何れか一項に記載の情報コード生成システム。
【請求項１６】
前記視覚情報は、絵、数字、文字及び記号のうち少なくとも一つを含むことを特徴とする請求項９乃至１５の何れか一項に記載の情報コード生成システム。
【請求項１７】
前記情報コードは、複数の幾何学的図形を含むことを特徴とする請求項９乃至１６の何れか一項に記載の情報コード生成システム。
【請求項１８】
前記出力手段は、前記情報コードの外側に前記視覚情報が配置された画像を出力することを特徴とする請求項９乃至１７の何れか一項に記載の情報コード生成システム。
【請求項１９】
前記出力手段は、前記情報コードの内側に前記視覚情報が配置された画像を出力することを特徴とする請求項９乃至１８の何れか一項に記載の情報コード生成システム。
【請求項２０】
コンピュータにより実行される情報処理方法において、
光学的に読み取り可能な情報コードを撮影してデコードすることにより取得された元の情報に基づいて、前記情報コードとともに表示されるべき第１視覚情報により視覚的に表される対象が分類されるクラスを示す第１クラス情報を取得する第１クラス情報取得ステップと、
前記情報コードとともに表示されているために該情報コードとともに撮影された第２視覚情報により視覚的に表される対象が分類されるクラスを示す第２クラス情報を取得する第２クラス情報取得ステップと、
前記取得された第１クラス情報と前記取得された第２クラス情報との比較を行う比較ステップと、
前記比較の結果に基づいて、前記取得された元の情報を用いた所定処理の実行を制御する制御ステップと、
を含むことを特徴とする情報処理方法。
【請求項２１】
コンピュータにより実行される情報コード生成方法において、
元の情報をエンコードして、光学的に読み取り可能な情報コードを生成する情報コード生成ステップと、
前記元の情報に基づいて、視覚的に表されることが可能な対象が分類されるクラスを示すクラス情報を取得するクラス情報生成ステップと、
前記生成された情報コードと、前記生成されたクラス情報により示される前記クラスに分類される前記対象を視覚的に表す視覚情報と、を関連付けて出力する出力ステップと、
を含むことを特徴とする情報コード生成方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
本発明の更に別の態様は、前記出力手段は、前記情報コードの内側に前記視覚情報が配置された画像を出力することを特徴とする情報コード生成システムである。
本発明の更に別の態様は、前記情報コードは、前記元の情報と、前記元の情報を変換して前記第１クラス情報を生成するために用いることが可能な互いに異なる複数の変換仕様のうち、前記元の情報の変換に用いられた変換仕様を示す仕様情報と、がエンコードされることにより生成されており、前記情報コードを撮影してデコードすることにより、前記元の情報と前記仕様情報とが取得され、前記第１クラス情報取得手段は、前記複数の変換仕様のうち、前記取得された仕様情報により示される前記変換仕様に従って、前記取得された元の情報を変換することにより、前記第１クラス情報を生成することを特徴とする情報処理システムである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００７８
【補正方法】変更
【補正の内容】
【００７８】
その後、例えば店舗Ｘとは無関係な悪意ある人物Ｙの商品Ｂについて、決済用情報「ＢＢＢＢＢ」が生成された。商品Ｂは、架空の商品であるかもしれない。そして、図７Ｂに示すように、決済用情報「ＢＢＢＢＢ」をエンコードすることにより、情報コード２１０−２が生成された。情報コード２１０−２は、シール４２０に印刷された。情報コード２１０−２は、人物Ｙ自身が発行したのかもしれないし、人物Ｙからの要求に応じて、決済管理サーバ１が情報コード２１０−２を含む拡張情報コードを発行したのかもしれない。人物Ｙは、店舗Ｘに訪れて、シール４１０に印刷されている情報コード２１０−１の上に、シール４２０をこっそり貼り付けた。すなわち、情報コード２１０−１が情報コード２１０−２にすり替えられた。視覚情報２２０−１はすり替わっていないので、人物５００は、情報コード２１０−１のすり替えに気が付かない可能性がある。或るユーザが商品Ａを購入しようとして、情報コード２１０−２を視覚情報２２０−１とともに撮影する。撮影によって得られた写真画像はユーザ端末４から決済管理サーバ１へ送信される。決済管理サーバ１は、写真画像に含まれる情報コード２１０−２をデコードして、決済用情報「ＢＢＢＢＢ」を生成する。そして、決済管理サーバ１は、決済用情報「ＢＢＢＢＢ」に基づいて、チェックコードを取得する。決済用情報「ＢＢＢＢＢ」は決済用情報「ＡＡＡＡＡ」と異なるので、決済用情報「ＢＢＢＢＢ」から生成されたチェックコードが、「８５４５」と異なる確率は極めて高い。例えば、チェックコード「２１５０」が生成される。決済管理サーバ１は、一方で写真画像に含まれる視覚情報２２０−１を画像認識して、チェックコード「８５４５」を生成する。チェックコード「２１５０」とチェックコード「８５４５」とは異なるので、決済管理サーバ１は、商品Ｂに対する決済処理の実行を拒否する。これによって、商品Ａを購入したユーザや店舗Ｘが損害を被る事態を避けけることができる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００９１
【補正方法】変更
【補正の内容】
【００９１】
また、チェックコード取得部１１５が、光学的に読み取り可能な情報コード２１０を撮影してデコードすることにより取得された決済用情報３４０に基づいて、情報コード２１０とともに表示されるべき視覚情報２２０により視覚的に表される対象が分類されるクラスを示すチェックコード３５０を取得する。また、視覚情報認識部１１６が、情報コード２１０とともに表示されているためにその情報コード２１０とともに撮影された視覚情報２２０により視覚的に表される対象が分類されるクラスを示すチェックコード３６０を取得する。また、チェックコード比較部１１７が、取得されたチェックコード３５０と取得されたチェックコード３６０との比較を行う。また、情報処理部１１８が、比較の結果に基づいて、取得された決済用情報３４０を用いた所定処理の実行を制御する。従って、情報コード２１０がすり替えられたか否かを人間が判断しやすくなる。情報コード２１０がすり替えられたと人間が判断した場合、その人間は、現在表示されている情報コード２１０の読み取りを止めさせることができる。その結果、所定処理は実行されない。このように、情報コード２１０に関する不正が抑止される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１０７
【補正方法】変更
【補正の内容】
【０１０７】
チェックコード生成部１１２は、所定距離以内の場所で表示されるべき他の情報コードのための生成済チェックコードと異なる複数のチェックコードのうち、生成済チェックコードと重複する度合いが相対的に小さいチェックコードを生成してもよい。すなわち、チェックコード生成部１１２は、生成済チェックコードとは重複する度合いが極力小さいチェックコード３２０を生成する。チェックコード生成部１１２は、例えば生成済チェックコードと異なるチェックコードのうち、重複度が最も小さいチェックコード３２０を生成してもよい。本実施形態においては、チェックコードは、視覚的に表されることが可能な対象が分類されるクラスをそれぞれ示すコード要素で構成される。重複度は、例えば、チェックコード３２０を構成するコード要素のうち、生成済チェックコードを構成するコード要素との間で、値及び位置が一致するコード要素の数に対応してもよい。例えば、重複度を示す情報としてハミング距離が用いられてもよい。この場合、ハミング距離が長いほど重複度が小さい。例えば、数字列「１５６３」と「４５８１」との間のハミング距離は３である。また、チェックコード生成部１１２は、位置は異なるが、値が同一である構成要素がある場合、より大きい重複度を決定してもよい。例えば、数字列「１６２３」と「１９２９」との間のハミング距離は２であり、数字列「１６２３」と「１３２９」との間のハミング距離も２である。数字列「１９２９」の「９」は、数字列「１６２３」に含まれていないのに対し、数字列「１３２９」の「３」は、数字列「１６２３」に含まれている。従って、数字列「１９２９」の方が「１３２９」よりも重複度が小さい。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１１８
【補正方法】変更
【補正の内容】
【０１１８】
図１７は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。図１７において、図１２と同様のステップについては同様の符号が付されている。図１７に示すように、先ずステップＳ２０１が実行される。次いで、チェックコード比較部１１７は、ユーザ端末４から写真画像３３０とともに送信されてきた端末位置情報３７０を、通信部１５を介して取得する（ステップＳ２４１）。次いで、ステップＳ２０２、Ｓ２２１、Ｓ２０４及びＳ２０５が実行される。Ｓ２０５において、チェックコード３５０とチェックコード３６０とが一致しないと判定された場合（ステップＳ２０５：ＮＯ）、ステップＳ２０８が実行される。一方、チェックコード３５０とチェックコード３６０とが一致すると判定された場合（ステップＳ２０５：ＹＥＳ）、処理はステップＳ２４２に進む。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１３０
【補正方法】変更
【補正の内容】
【０１３０】
図２１は、決済管理サーバ１のシステム制御部１１による情報コード利用制御処理の一例を示すフローチャートである。図２１において、図９と同様のステップについては同様の符号が付されている。図２１に示すように、先ずステップＳ２０１が実行される。次いで、情報コードデコード部１１４は、情報コード２１０をデコードして、拡張決済用情報７３０を生成する（ステップＳ２６１）。次いで、チェックコード取得部１１５は、生成された拡張決済用情報７３０が発行日情報を含むか否かを判定する（ステップＳ２６２）。拡張決済用情報７３０が発行日情報を含まないと判定された場合（ステップＳ２６２：ＮＯ）、ステップＳ２０８が実行される。一方、拡張決済用情報７３０が発行日情報を含むと判定された場合（ステップＳ２６２：ＹＥＳ）、処理はステップＳ２６３に進む。
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図２
【補正方法】変更
【補正の内容】
【図２】
2021014537.tif 000028
【国際調査報告】
2021014537.tif 000029
2021014537.tif 000030