(57)【要約】【課題】ＱＲコード等を用いた決済又は認証のセキュリティを高めるための技術を提供する。【解決手段】ユーザ端末が、元データを暗号化し、元データの暗号文を埋め込んだＱＲコードを生成・表示する。ストア端末は、コードリーダでＱＲコードを読み取り、ＱＲコードのデータと取引情報を決済サーバへ送信する。決済サーバは、元データの復号に成功した場合に、前記元データに基づく認証又は決済の処理を行う。【選択図】図４
2020173534.tif 000002
【特許請求の範囲】
【請求項１】
第１端末の画面に表示されたコードを第２端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第１端末において実行される第１端末プログラムと、
前記第２端末において実行される第２端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第１端末プログラムは、前記第１端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する変換手段、
前記元データの暗号文が埋め込まれたコードを生成するコード生成手段、
前記コードを前記第１端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第２端末プログラムは、前記第２端末を、
前記第１端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第２端末から前記コードの情報を受信する手段、
復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記元データの復号に成功した場合に、前記元データに基づく認証又は決済の処理を行う処理手段、
を有する
ことを特徴とするシステム。
【請求項２】
前記暗号鍵は、前記サーバの公開鍵であり、
前記復号鍵は、前記サーバの公開鍵とペアになる秘密鍵である
ことを特徴とする請求項１に記載のシステム。
【請求項３】
前記暗号鍵は、前記第１端末の秘密鍵であり、
前記復号鍵は、前記第１端末の秘密鍵とペアになる公開鍵である
ことを特徴とする請求項１に記載のシステム。
【請求項４】
第１端末の画面に表示されたコードを第２端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第１端末において実行される第１端末プログラムと、
前記第２端末において実行される第２端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記サーバは、
認証又は決済に用いられる元データが埋め込まれたコードを生成する手段、
前記コードのデータを、暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第１端末に送信する手段、
を有し、
前記第１端末プログラムは、前記第１端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第１端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第２端末プログラムは、前記第２端末を、
前記第１端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第２端末から前記コードの情報を受信する手段、
前記コードに埋め込まれているデータが、前記第１端末に送信したコードに埋め込んだデータと整合する場合に、認証又は決済の処理を行う処理手段、
をさらに有する
ことを特徴とするシステム。
【請求項５】
前記第１端末プログラムは、前記第１端末を、
認証又は決済に用いられる元データを、第２の暗号鍵を用いて暗号化する手段、
前記元データの暗号文を前記サーバに送信する手段、
として機能させ、
前記サーバは、
前記第１端末から受信した前記元データの暗号文を用いて、前記元データが埋め込まれたコードを生成する
ことを特徴とする請求項４に記載のシステム。
【請求項６】
前記暗号鍵は、前記サーバの秘密鍵であり、
前記復号鍵は、前記サーバの秘密鍵とペアになる公開鍵である
ことを特徴とする請求項４又は５に記載のシステム。
【請求項７】
前記暗号鍵は、前記第１端末の公開鍵であり、
前記復号鍵は、前記第１端末の公開鍵とペアになる秘密鍵である
ことを特徴とする請求項４又は５に記載のシステム。
【請求項８】
前記第１端末プログラムは、前記第１端末に内蔵又は接続されたセキュアエレメントによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記セキュアエレメントによって実行されるプログラムによって提供される
ことを特徴とする請求項１〜７のいずれか１項に記載のシステム。
【請求項９】
前記第１端末プログラムは、前記第１端末に内蔵又は接続されたＳＩＭカードによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記ＳＩＭカードによって実行されるプログラムによって提供される
ことを特徴とする請求項１〜７のいずれか１項に記載のシステム。
【請求項１０】
前記第１端末プログラムは、前記第１端末に内蔵又は接続されたＳＩＭカードに重ねて貼り付けられたＩＣカードによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記ＩＣカードによって実行されるプログラムによって提供される
ことを特徴とする請求項１〜７のいずれか１項に記載のシステム。
【請求項１１】
前記コードは、時間情報が埋め込まれており、
前記サーバの前記処理手段は、前記コードに埋め込まれている時間情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効とする
ことを特徴とする請求項１〜１０のいずれか１項に記載のシステム。
【請求項１２】
前記コードは、位置情報が埋め込まれており、
前記サーバの前記処理手段は、前記コードに埋め込まれている位置情報が所定の条件を
満たす場合、又は満たさなかった場合に、前記コードを無効とする
ことを特徴とする請求項１〜１１のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＱＲコード等を用いて認証又は決済を行う技術に関する。
【背景技術】
【０００２】
バーコード等の一次元コードやＱＲコード（登録商標）等の二次元コードをオンライン認証又はオンライン決済に利用する仕組みが知られている。例えば特許文献１には、サービスプロバイダに初期登録を行う際に、コンピュータの画面に当該コンピュータの公開鍵を埋め込んだＱＲコードを表示し、携帯端末でＱＲコードを読み取ることでコンピュータの公開鍵を入手し、携帯端末から、ユーザ情報、コンピュータの公開鍵、携帯端末の公開鍵、携帯端末の端末情報などを含むデータを認証サーバに送信する、という方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−８２２４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここ数年、政府によるキャッシュレス化推進が追い風となり、ＱＲコード決済サービスが数多く登場し、利用者数が急増している。ＱＲコード決済の方法には、大きく分けて、（１）ユーザスキャン方式と（２）ストアスキャン方式の２種類がある。（１）は、店舗に掲示されているＱＲコードをユーザのスマートフォン（カメラ）で読み取る方式であり、（２）は、ユーザがスマートフォンの画面にＱＲコードを表示し、店舗側がリーダーでＱＲコードを読み取る方法である。
【０００５】
ストアスキャン方式のＱＲコード決済の流れは概略次のようになる。まずユーザが、所持するクライアント端末（スマートフォン、タブレット等）でＱＲコード決済アプリを起動すると、元データの生成が行われる。元データは、決済に必要な情報であり、例えば、ユーザを特定するための情報（決済サーバのログインＩＤ、口座情報、クレジットカード情報等）、取引内容を特定するための情報等が含まれる。そして、ＱＲコード決済アプリが、ＱＲコード生成要求とともに元データを決済サーバに送信すると、決済サーバが、元データに対して取引の正当性に関する情報の付与や、誤り訂正のためのＲＳ符号等の演算などを行った後、ＱＲコードデータをクライアント端末のＱＲコード決済アプリへ送り返す。ＱＲコードデータは、ＱＲコードに埋め込むためのデータ（テキストデータ）の場合もあれば、ＱＲコードのデータの場合もある。ＱＲコード決済アプリは、ＱＲコードデータに基づいて、クライアント端末の画面にＱＲコード画像を表示する。そして、店舗端末（ＰＯＳレジあるいは店員が所持するスマートフォン等）でＱＲコード画像を読み取り、必要な情報（支払金額、店舗情報等）とともにＱＲコードデータを決済サーバに送信する。決済サーバでは、店舗端末から受信したＱＲコードデータに基づきユーザの認証を行い、認証に成功した場合に当該ユーザの口座あるいはクレジットカードから決済処理を行う。
【０００６】
このようなストアスキャン方式のＱＲコード決済においては、クライアント端末と決済サーバとの間で交換されるデータ（元データ及びＱＲコードデータ）の中や、店舗端末と決済サーバとの間で交換されるデータ（ＱＲコードデータ）の中に、決済サーバのログインＩＤや口座情報といったクリティカルな情報が含まれているため、ネットワークの傍受やリバースエンジニアリング等によってデータが漏えいした場合に、口座の不正利用によ
る被害が発生する危険性がある。サイバーセキュリティのリスクは日増しに増大しているため、安心・安全にオンライン決済サービスを利用するためのセキュリティ対策が求められている。なおここまで、ＱＲコードを例に挙げて従来技術の問題を説明したが、ＱＲコード以外の二次元コードや、バーコード等の一次元コードを用いた決済ないし認証においても同様の問題が生じ得る。本明細書では、一次元コードと二次元コードを包含する概念として「コード」という用語を用いる。
【０００７】
本発明は上記問題点に鑑みなされたものであって、コードを用いた決済又は認証のセキュリティを高めるための技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第一側面は、
第１端末の画面に表示されたコードを第２端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第１端末において実行される第１端末プログラムと、
前記第２端末において実行される第２端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第１端末プログラムは、前記第１端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する変換手段、
前記元データの暗号文が埋め込まれたコードを生成するコード生成手段、
前記コードを前記第１端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第２端末プログラムは、前記第２端末を、
前記第１端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第２端末から前記コードの情報を受信する手段、
復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記元データの復号に成功した場合に、前記元データに基づく認証又は決済の処理を行う処理手段、
を有することを特徴とするシステムを提供する。
【０００９】
上記構成によれば、コードに埋め込まれているデータが暗号化されているため、万一、コードそのものやコードから読み取られた情報が漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【００１０】
ここで、前記暗号鍵は、前記サーバの公開鍵であり、前記復号鍵は、前記サーバの公開鍵とペアになる秘密鍵であることが好ましい。これにより、コードに埋め込まれた情報を理解できるのはサーバに限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【００１１】
あるいは、前記暗号鍵は、前記第１端末の秘密鍵であり、前記復号鍵は、前記第１端末の秘密鍵とペアになる公開鍵であってもよい。登録時に公開鍵をサーバに紐付け、これにより、コードに埋め込まれた情報を理解できるのは、第１端末の公開鍵を保有している者（ここではサーバ）に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。また、コードに埋め込まれた情報を第１端末の公開鍵で復号できるということは、そのコードの発行が第１端末によって行われた証明ともなるので、例えばコードの改ざんや不正発行などを防止することも可能となる。
【００１２】
本発明の第二側面は、
第１端末の画面に表示されたコードを第２端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第１端末において実行される第１端末プログラムと、
前記第２端末において実行される第２端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記サーバは、
認証又は決済に用いられる元データが埋め込まれたコードを生成する手段、
前記コードのデータを、暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第１端末に送信する手段、
を有し、
前記第１端末プログラムは、前記第１端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第１端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第２端末プログラムは、前記第２端末を、
前記第１端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第２端末から前記コードの情報を受信する手段、
前記コードに埋め込まれているデータが、前記第１端末に送信したコードと整合する場合に、認証又は決済の処理を行う処理手段、
をさらに有することを特徴とするシステムを提供する。
【００１３】
上記構成によれば、サーバから第１端末に送信されるデータが暗号化されているため、万一、サーバから送信されるデータが漏えいしたとしても、そのデータからコードが生成されたり、ましてや認証又は決済に用いられる元データが知得されたりするリスクが極めて小さい。なお、サーバから第１端末に送信される「コードのデータ」は、表示用の画像データでもよいし、コードの中身のデータ（コードに埋め込まれるデータ）でもよいし、画像を生成するためのデータなどでもよい。
【００１４】
この第二態様において、前記第１端末プログラムは、前記第1端末を、認証又は決済に
用いられる元データを第２の暗号鍵を用いて暗号化する手段、前記元データの暗号文を前記サーバに送信する手段、として機能させ、前記サーバは、前記第１端末から受信した前記元データの暗号文を用いて、前記元データが埋め込まれたコードを生成することも好ましい。この構成によれば、元データ自体も暗号化されるため、元データを第１端末側で生成し決済サーバへ受け渡すケースにおいても、高いセキュリティを確保できる。
【００１５】
ここで、前記暗号鍵は、前記サーバの秘密鍵であり、前記復号鍵は、前記サーバの秘密鍵とペアになる公開鍵であるとよい。これにより、サーバから配信されたコードを復号できるのは、サーバの公開鍵を保有している者（例えば第１端末）に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【００１６】
あるいは、前記暗号鍵は、前記第１端末の公開鍵であり、前記復号鍵は、前記第１端末の公開鍵とペアになる秘密鍵であることも好ましい。これにより、サーバから送信される暗号文を復号できるのは第１端末に限られるため、コードや認証又は決済に用いられる元
データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【００１７】
前記第１端末プログラムは、前記第１端末に内蔵又は接続されたセキュアエレメントによって実行されるプログラムを含み、少なくとも前記変換手段は、前記セキュアエレメントによって実行されるプログラムによって提供されてもよい。また、前記第１端末プログラムは、前記第１端末に内蔵又は接続されたＳＩＭカードによって実行されるプログラムを含み、少なくとも前記変換手段は、前記ＳＩＭカードによって実行されるプログラムによって提供されてもよい。あるいは、前記第１端末プログラムは、前記第１端末に内蔵又は接続されたＳＩＭカードに重ねて貼り付けられたＩＣカードによって実行されるプログラムを含み、少なくとも前記変換手段は、前記ＩＣカードによって実行されるプログラムによって提供されてもよい。これらの構成によれば、変換手段による暗号化／復号の機能が第１端末の本体プロセッサとは独立して動作する、セキュアなプロセッサにより提供されるため、セキュリティを一層高めることができる。
【００１８】
前記コードは、時間情報が埋め込まれており、前記サーバの前記処理手段は、前記コードに埋め込まれている時間情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効としてもよい。この構成によれば、コードによる認証又は決済に時期的制限を設定することができるので、予め設定した日時や時間帯のみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方が可能となる。
【００１９】
前記コードは、位置情報が埋め込まれており、前記サーバの前記処理手段は、前記コードに埋め込まれている位置情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効としてもよい。この構成によれば、コードによる認証又は決済に位置的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した場所内でのみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。
【００２０】
本発明は、上述した手段ないし機能の少なくとも一部を含む決済システム、認証システム等と捉えることができる。また、本発明は、そのような決済システム、認証システムを構成するサーバ、端末等と捉えることもできる。また、本発明は、上述した処理ないし肯定の少なくとも一部を含む決済方法、認証方法や、それらの方法をコンピュータに実行させるためのプログラムや、当該プログラムを非一時的に記憶したコンピュータ読取可能な記憶媒体として捉えることもできる。
【発明の効果】
【００２１】
本発明によれば、コードを用いた決済又は認証のセキュリティを高めることができる。
【図面の簡単な説明】
【００２２】
【図１】図１は、本発明の実施形態に係るＱＲコード決済システムの全体構成を示す図である。
【図２】図２は、ユーザ端末の構成を示すブロック図である。
【図３】図３は、第１実施形態に係るＱＲコード決済システムの機能構成の一例を示す図である。
【図４】図４は、第１実施形態におけるＱＲコード決済のフローを示す図である。
【図５】図５は、第２実施形態に係るＱＲコード決済システムの機能構成の一例を示す図である。
【図６】図６は、第２実施形態におけるＱＲコード決済のフローを示す図である。
【図７】図７は、第３実施形態に係るＱＲコード決済システムの機能構成の一例を示す図である。
【図８】図８は、第３実施形態におけるＱＲコード決済のフローを示す図である。
【図９】図９は、第６実施形態におけるセキュアエレメントの構成を示す図である。
【図１０】図１０は、第７実施形態におけるＳＩＭカードの構成を示す図である。
【図１１】図１１は、第７実施形態におけるユーザ端末及びＳＩＭカードの外観を示す図である。
【図１２】図１２は、第８実施形態におけるサブＳＩＭの構成を示す図である。
【図１３】図１３は、第８実施形態におけるユーザ端末及びサブＳＩＭの外観を示す図である。
【発明を実施するための形態】
【００２３】
＜ＱＲコード決済の概要＞
図１は、本発明の実施形態に係るＱＲコード決済システムの全体構成を示している。ＱＲコード決済システム１は、概略、ユーザが利用する端末（以下、「ユーザ端末」と呼ぶ）１０に実装されるユーザ・プログラム１００と、店舗などのサービス提供者が利用する端末（以下、「ストア端末」と呼ぶ）１１に実装されるストア・プログラム１１０と、決済処理や認証処理などを行う決済サーバ１２とから構成されている。なお、ユーザ端末１０が「第１端末」の例であり、ユーザ・プログラム１００が「第１端末プログラム」の例、ストア端末１１が「第２端末」の例、ストア・プログラム１１０が「第２端末プログラム」の例である。
【００２４】
本実施形態のＱＲコード決済システム１は、いわゆるストアスキャン方式のＱＲコード決済を行うためのシステムである。例えば、コンビニエンスストア（サービス提供者の例）で物品の購入代金をＱＲコード決済する場合の手順は、概略、以下のような流れとなる。
【００２５】
（１）ユーザ端末１０の画面にＱＲコード１０１の画像を表示する。
（２）ストア端末１１であるＰＯＳレジのコードリーダ１１１で、ユーザ端末１０の画面のＱＲコード１０１を読み取って、ＱＲコード１０１に埋め込まれた情報（ユーザを特定する情報など）を取得する。
（３）ストア端末１１が、ＱＲコード１０１に埋め込まれた情報（ユーザを特定する情報など）や取引情報（物品の購入代金など）と共に決済要求を決済サーバ１２に送信する。
（４）決済サーバ１２が、ストア端末１１から受信した情報に基づき、ユーザの認証や決済の処理を実行する。
（５）決済サーバ１２が、認証又は決済の成否をユーザ端末１０及びストア端末１１に通知する。
以上の処理により、スマートフォンなどを利用したキャッシュレス決済を実現することができる。
【００２６】
＜第１実施形態＞
（ユーザ端末）
図２は、ユーザ端末１０の構成を示すブロック図である。本実施形態では、ユーザ端末１０の一例としてスマートフォンを例示するが、これはあくまで一つの適用例にすぎない。ユーザ端末１０としては、ユーザ・プログラム１００を実行するためのプロセッサとメモリを有し、一次元コードや二次元コードを表示可能なディスプレイを有し、かつ、インターネットとの接続が可能な携帯型の電子機器であればいかなるデバイスを用いてもよい。スマートフォンの他、例えば、タブレット端末、モバイルＰＣ、ウェアラブルＰＣ、スマートウォッチ、スマートグラス、スマートウォレット、携帯ゲーム機などを例示できる。
【００２７】
ユーザ端末１０は、主なハードウェア資源として、ＣＰＵ（プロセッサ）２０、メモリ
２１、ストレージ２２、タッチパネルディスプレイ２３、通信モジュール２４、電源２５、ＳＩＭカード２６、ＧＰＳセンサ２７を有する。メモリ２１はＲＡＭであり、ＣＰＵ２０がワーキングメモリとして使用する記憶領域を提供する。ストレージ２２はプログラムや各種のデータを格納するための不揮発性の記憶媒体であり、例えば、内蔵のＥＥＰＲＯＭ、カードスロットに装着されるフラッシュメモリなどが該当する。タッチパネルディスプレイ２３は、表示装置と入力装置を兼ねたデバイスである。通信モジュール２４は、ユーザ端末１０によるデータ通信や音声通信を担うデバイスである。本実施形態の通信モジュール２４は、３Ｇ、４Ｇ／ＬＴＥ、５Ｇなどの携帯電話網を利用した通信、Ｗｉ−Ｆｉによる通信、近距離無線通信などに対応しているものとする。電源２５は、ユーザ端末１０に対し電力を供給するものであり、リチウムイオンバッテリと電源回路から構成される。ＳＩＭカード２６は、携帯電話網を利用した通信の加入者情報が記録された接触型のＩＣカードである。ＧＰＳセンサ２７は、ＧＰＳ信号を利用してユーザ端末１０が存在する位置の情報（緯度経度情報）を取得するセンサである。
【００２８】
図３に、ユーザ端末１０の機能構成の一例を示す。ユーザ端末１０は、主な機能として、元データ生成部３００、変換部３０１、コード画像生成部３０２、表示制御部３０３、ユーザ情報記憶部３０４、鍵記憶部３０５を有する。これらの機能は、例えば、ストレージ２２に格納されているユーザ・プログラム１００をメモリ２１に展開し、当該プログラム１００をＣＰＵ２０が実行することにより実現される。ユーザ・プログラム１００は、ＱＲコード決済サービスの運営者等により配布されるプログラムであり、ユーザはＱＲコード決済サービスの利用に先立ちインターネット上のアプリケーションディストリビュータを通じてユーザ・プログラム１００をダウンロードしユーザ端末１０にインストールする。
【００２９】
ユーザ情報記憶部３０４は、ユーザに関する情報、ユーザ端末１０に関する情報などを記憶している。ユーザに関する情報としては、例えば、ユーザの本人情報（名前、メールアドレスなど）、ＱＲコード決済サービスの利用に関わる情報（ユーザＩＤ、パスワード、口座情報など）などが挙げられる。またユーザ端末１０に関する情報としては、例えば、端末を特定する情報などが挙げられる。
【００３０】
鍵記憶部３０５は、公開鍵暗号方式で用いる鍵ペア（秘密鍵と公開鍵）及び電子証明書を記憶している。この鍵ペアは、当該ユーザ又はユーザ端末１０に対し発行されたものであり、電子証明書は公開鍵とその所有者であるユーザ又はユーザ端末１０を証明するものである。
【００３１】
元データ生成部３００は、ＱＲコード決済に必要な情報（「元データ」と呼ぶ）を生成する機能である。元データには、少なくとも、ユーザがＱＲコード決済サービスを利用するために必須の情報、言い換えると、ＱＲコード決済サービスの利用要求をしている者が誰なのか（登録ユーザか否か）を決済サーバ１２が判定するために必須の情報、が含まれる。例えば、ＱＲコード決済サービスのパスワードが該当する。あるいは、決済に利用する銀行口座の情報、クレジットカードの情報などが元データに含まれてもよい。また、必要に応じて、取引内容を特定するための情報（例えば、金額、ストアのＩＤなど）が元データに含まれてもよい。
【００３２】
変換部３０１は、公開鍵暗号方式による暗号化処理、復号処理、電子署名処理などを行う機能である。暗号化処理とは、与えられたデータに対し秘密鍵又は公開鍵を用いた暗号化を行い、当該データの暗号文を出力する機能である。暗号化に用いる鍵を暗号鍵とも呼ぶ。復号処理とは、暗号文を復号し、平文のデータを出力する機能である。復号に用いる鍵を復号鍵とも呼ぶ。秘密鍵を暗号鍵に用いた場合は公開鍵が復号鍵となり、公開鍵を暗号鍵に用いた場合は秘密鍵が復号鍵となる。暗号アルゴリズムはＲＳＡ、ＤＳＡ、ＥＣＤ
ＳＡなどが好ましいが、それら以外のアルゴリズムを利用してもよい。また、公開鍵暗号方式ではなく、共通鍵暗号方式を用いてもよい。
【００３３】
電子署名処理とは、与えられたデータに対し秘密鍵を用いた電子署名を行う機能である。通常は与えられたデータをハッシュ関数で変換したハッシュ値を暗号化する。ハッシュ関数は何を用いてもよく、例えば、ＳＨＡ−１やＳＨＡ−２５６を用いることができる。なお、電子署名の対象となるデータのサイズが小さい場合には、ハッシュ値ではなく、データそのものを暗号化したものを電子署名として用いてもよい。データと電子署名を受信した者はデータを復号し、必要ならばハッシュ値を算出する。得られたデータあるいはハッシュ値を受け取った電子署名と照合し、一致していれば作成者の保証された改ざんされていないデータであると判断する。
【００３４】
コード画像生成部３０２は、ＱＲコードを生成する機能である。コード画像生成部３２は、ＱＲコードに埋め込むための情報を受け取ると、その情報を符号化し、ＱＲコードの画像データを生成する。ＱＲコードの生成方法は公知であるため詳しい説明は割愛する。
【００３５】
表示制御部３０３は、ＱＲコードの画像及びその他必要な情報をユーザ端末１０の画面に表示する制御を行う機能である。
【００３６】
（ストア端末）
図３に示すように、ストア端末１１は、主な機能として、コードリーダ３１０、コード解析部３１１、取引情報取得部３１２、決済要求部３１３を有している。
【００３７】
コードリーダ３１０は、ＱＲコードを読み取る機能である。専用機器を用いてもよいし、ストア端末１１が備えるカメラを利用してもよい。コード解析部３１１は、コードリーダ３１０で読み取ったＱＲコードをデコードし、ＱＲコードに埋め込まれている情報を抽出する機能である。取引情報取得部３１２は、ユーザとストアの間の取引に関する情報を取得する機能である。例えば、物品の購入代金の決済の場合であれば、取引情報取得部３１２は、ＰＯＳシステムから購入代金の情報を取得してもよい。決済要求部３１３は、ＱＲコードから抽出した情報と取引情報を含む決済要求を決済サーバ１２に送る機能である。
【００３８】
ストア端末１１としては、ストア・プログラム１１０を実行するためのプロセッサとメモリを有し、かつ、インターネットとの接続が可能な電子機器であればいかなるデバイスを用いてもよい。例えば、パーソナルコンピュータ、ＰＯＳシステムなどをストア端末１１として用いてもよいし、スマートフォン、タブレット端末、モバイルＰＣ、ウェアラブルＰＣ、スマートウォッチ、スマートグラス、スマートウォレット、携帯ゲーム機などをストア端末１１として用いてもよい。図３に示す機能は、プロセッサがストア・プログラム１１０を実行することにより実現される。
【００３９】
（決済サーバ）
図３に示すように、決済サーバ１２は、主な機能として、認証処理部３２０、決済処理部３２１、登録データベース３２２を有している。
【００４０】
認証処理部３２０は、決済サーバ１２の利用者の認証（登録ユーザか否かの検証）を行う機能である。決済処理部３２１は、ストア端末１１から受信した決済要求に基づき、決済処理を実行する機能である。登録データベース３２２は、登録ユーザに関わる情報を記憶するデータベースである。登録ユーザに関わる情報としては、例えば、ユーザの本人情報、ユーザＩＤ、パスワード、口座情報（又はクレジットカード情報）、公開鍵（又は電子証明書）などを含むとよい。
【００４１】
これらの機能は、決済サーバ１２のプロセッサがプログラムを実行することにより実現されるものである。なお、決済サーバ１２は１台のコンピュータで構成してもよいし、クラウドコンピューティングや分散コンピューティングで構成してもよい。
【００４２】
（ＱＲコード決済のフロー）
図４を参照して、第１実施形態におけるＱＲコード決済のフローを説明する。第１実施形態のフローの特徴は、元データの生成及びＱＲコードの生成をともにユーザ端末１０で行う点にある。
【００４３】
まず、ユーザがユーザ端末１０のユーザ・プログラム１００において「ＱＲコード表示」を指示する（ステップＳ４００）。すると、元データ生成部３００が、ユーザ情報記憶部３０４からＱＲコード決済に必要な情報を読み出し、元データを生成する（ステップＳ４０１）。続いて、変換部３０１が、ユーザの秘密鍵を用いて元データを暗号化し（ステップＳ４０２）、コード画像生成部３０２が、元データの暗号文とユーザＩＤの平文を埋め込んだＱＲコードの画像データを生成する（ステップＳ４０３）。そして、表示制御部３０３によってユーザ端末１０のタッチパネルディスプレイの画面上にＱＲコードの画像が表示される（ステップＳ４０４）。
【００４４】
ユーザが画面に表示されたＱＲコードをストアのスタッフに見せると、スタッフがストア端末１１のコードリーダ３１０を用いてＱＲコードを読み取る（ステップＳ４１０）。続いて、コード解析部３１１が、ＱＲコードをデコードして元データの暗号文及びユーザＩＤの平文を抽出する（ステップＳ４１１）。そして、取引情報取得部３１２が、取引情報を取得し（ステップＳ４１２）、決済要求部３１３が、「元データの暗号文」、「ユーザＩＤの平文」、及び「取引情報」を付した決済要求を決済サーバ１２に送信する（ステップＳ４１３）。
【００４５】
決済サーバ１２が、ストア端末１１から決済要求を受信すると（ステップＳ４２０）、認証処理部３２０が、決済要求に含まれる「ユーザＩＤの平文」に基づき、登録データベース３２２から当該ユーザＩＤに紐づけられた公開鍵を読み出し、当該公開鍵を用いて、決済要求に含まれる「元データの暗号文」を復号する（ステップＳ４２１）。復号に成功した場合は（ステップＳ４２２のＹＥＳ）、認証ＯＫ、すなわち、この決済要求がユーザＩＤで特定される登録ユーザからの正当な要求であるとみなすことができる。一方、復号に失敗した場合は（ステップＳ４２２のＮＯ）、認証ＮＧ、すなわち、この決済要求がなりすましや改ざん等の不正利用によるものであると判断し、この決済要求を拒否（無効化）する（ステップＳ４２３）。認証ＯＫの場合は、決済処理部３２１が、復号された元データと取引情報に基づき決済処理を行い（ステップＳ４２４）、決済完了通知をストア端末１１及びユーザ端末１０にそれぞれ送信する（ステップＳ４２５）。
【００４６】
以上述べた本実施形態の構成によれば、ＱＲコードに埋め込まれている元データが暗号化されているため、万一、ＱＲコードの画像そのものやＱＲコードから読み取られた情報が漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【００４７】
また、元データの暗号化をユーザの秘密鍵を用いて行うので、ＱＲコードに埋め込まれた情報を理解できるのは、ユーザの公開鍵を保有している者（ここでは決済サーバ１２）に限られる。したがって、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。また、ＱＲコードに埋め込まれた情報をユーザの公開鍵で復号できるということは、そのＱＲコードの発行がユーザ端末１０によって行われた証明ともなるので、例えばＱＲコードの改ざんや不正発行などを防止す
ることが可能である。
【００４８】
（第１実施形態の変形例）
第１実施形態では、ユーザ端末１０が自身の秘密鍵を用いて元データを暗号化し（図４のステップＳ４０２）、決済サーバ１２がユーザの公開鍵を用いて元データの復号を行った（ステップＳ４２１）が、鍵ペアとして決済サーバ１２の秘密鍵・公開鍵を用いることも好ましい。具体的には、ユーザ端末１０の鍵記憶部３０５に決済サーバ１２の公開鍵を格納しておき、変換部３０１が元データを暗号化する際に決済サーバ１２の公開鍵を用いる。そして、決済サーバ１２が、決済要求に含まれる元データの暗号文を復号する際に自身の秘密鍵を用いるのである。この方法によれば、ＱＲコードに埋め込まれた暗号文を理解できるのは、秘密鍵を保有している決済サーバ１２に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【００４９】
＜第２実施形態＞
図５は、第２実施形態に係るＱＲコード決済システムの機能構成を示している。第２実施形態の特徴は、元データの生成及びＱＲコードの生成・配信を決済サーバ１２が行う点にある。この構成は、例えば、決済サーバ１２が、ユーザに対しクーポンやチケットの配信を行うケースに好ましく適用できる。以下では、本実施形態に特有の構成を中心に説明し、第１実施形態と実質的に同じ構成については説明を割愛する。
【００５０】
本実施形態のユーザ端末１０は、受信部５００及び変換部５０１を有している。受信部５００は、決済サーバ１２から、暗号化されたＱＲコードを受信する機能である。変換部５０１は、復号鍵を用いてＱＲコードを復号する機能である。また、本実施形態の決済サーバ１２は、元データ生成部５２０、コードデータ生成部５２１、暗号化部５２２、コード配信部５２３を有している。元データ生成部５２０は、ＱＲコードに埋め込む情報を生成する機能である。例えば、クーポン配信の場合であれば、元データとして、クーポンの配信先であるユーザの情報、クーポンの内容、クーポンを利用可能なストアの情報などが含まれる。コードデータ生成部５２１は、元データを符号化し、ＱＲコードのデータを生成する機能である。暗号化部５２２は、コードデータ生成部５２１が生成したデータを暗号化する機能である。暗号鍵としては、クーポンの配信先となるユーザの公開鍵、又は、決済サーバ１２の秘密鍵を用いるとよい。コード配信部５２３は、ＱＲコードのデータ（暗号文）をユーザ端末１０に送信する機能である。なお、クーポンに関する情報、配信先となるユーザに関する情報、暗号鍵などは、決済サーバ１２の登録データベース３２２に予め格納されているものとする。
【００５１】
図６を参照して、第２実施形態におけるＱＲコード決済のフローを説明する。ここでは、決済サーバ１２から所定のタイミング（１日１回など）で登録ユーザにクーポンが配信される例を挙げて、フローの説明を行う。
【００５２】
所定のタイミングになると、決済サーバ１２の元データ生成部５２０が、登録データベース３２２からクーポン生成に必要な情報を読み出し、元データを生成する（ステップＳ６２０）。次に、コードデータ生成部５２１が、元データを埋め込んだＱＲコードのデータを生成する（ステップＳ６２１）。次に、暗号化部５２２が、登録データベース３２２に登録されている暗号鍵を用いて、ＱＲコードのデータを暗号化する（ステップＳ６２２）。そして、コード配信部５２３が、暗号化したＱＲコードのデータをユーザ端末１０に配信する（ステップＳ６２３）。
【００５３】
ユーザ端末１０では、受信部５００が、決済サーバ１２から配信されたＱＲコードのデータを受信する（ステップＳ６００）と、変換部５０１が、ＱＲコードのデータの復号を
行う（ステップＳ６０１）。ＱＲコードのデータを暗号化するときの暗号鍵としてユーザの公開鍵が用いられた場合には、復号鍵としてユーザの秘密鍵を用いる。他方、暗号鍵として決済サーバ１２の秘密鍵が用いられた場合には、復号鍵として決済サーバ１２の公開鍵を用いるとよい。ユーザごとに個別にクーポンを配信する用途であれば、前者の方法が好ましい。クーポンの正しい配信先であるユーザしか復号できないため、クーポンが他人に不正利用されるリスクを最小限にできるからである。一方、複数のユーザにクーポンを同時配信する用途であれば、後者の方法が好ましい。決済サーバ１２の公開鍵を保有している者であれば誰でもクーポンを復号できるからである。以上により、ＱＲコードのデータを取得した後、コード画像生成部３０２によってＱＲコードの画像が生成され、表示制御部３０３によってユーザ端末１０のタッチパネルディスプレイの画面上にＱＲコードの画像が表示される（ステップＳ６０２）。
【００５４】
ユーザが画面に表示されたＱＲコードをストアのスタッフに見せると、スタッフがストア端末１１のコードリーダ３１０を用いてＱＲコードを読み取る（ステップＳ６１０）。続いて、コード解析部３１１が、ＱＲコードをデコードして元データ（クーポン情報）を抽出する（ステップＳ６１１）。そして、決済要求部３１３が、元データを付した決済要求を決済サーバ１２に送信する（ステップＳ６１２）。
【００５５】
決済サーバ１２が、ストア端末１１から決済要求を受信すると（ステップＳ６２４）、認証処理部３２０が、決済要求に含まれる元データを確認し、決済サーバ１２が配信したクーポンに相違ないかを検証する（ステップＳ６２５）。正当なクーポンであることが確認できた場合、認証処理部３２０は、その旨の通知をストア端末１１及びユーザ端末１０にそれぞれ送信する（ステップＳ６２６）。
【００５６】
以上述べた本実施形態の構成によれば、決済サーバ１２からユーザ端末１０に送信されるデータが暗号化されているため、万一、決済サーバ１２から送信されるデータが漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【００５７】
＜第３実施形態＞
図７は、第３実施形態に係るＱＲコード決済システムの機能構成を示している。第３実施形態の特徴は、元データの生成はユーザ端末１０が行い、ＱＲコードの生成・配信を決済サーバ１２が行う点にある。以下では、本実施形態に特有の構成を中心に説明し、前述の実施形態と実質的に同じ構成については説明を割愛する。
【００５８】
本実施形態のユーザ端末１０は、元データ生成部７００及び変換部７０１を有している。元データ生成部７００は、ＱＲコード決済に必要な情報（元データ）を生成する機能である。元データには、例えば、ユーザＩＤなどのユーザに関する情報が含まれる。変換部７０１は、元データ生成部７００で生成された元データを暗号鍵を用いて暗号化する機能、及び、受信部５００で受信されるＱＲコードを復号鍵を用いて復号する機能を有する。
【００５９】
図８を参照して、第３実施形態におけるＱＲコード決済のフローを説明する。
まず、ユーザがユーザ端末１０において「ＱＲコード表示」を指示する（ステップＳ８００）。すると、元データ生成部７００が、ユーザ情報記憶部３０４からＱＲコード決済に必要な情報を読み出し、元データを生成する（ステップＳ８０１）。続いて、変換部７０１が、元データを暗号化する（ステップＳ８０２）。暗号化された元データは、元データ生成部７００により決済サーバ１２に送られる（ステップＳ８０３）。
【００６０】
決済サーバ１２がユーザ端末１０から元データを受信すると、コードデータ生成部５２１が、元データを埋め込んだＱＲコードのデータを生成する（ステップＳ８２１）。この
とき、コードデータ生成部５２１は、ＱＲコードの発行管理を行うために、管理情報（ランダムなキーもしくはシリアルキーなど）をＱＲコードのデータに埋め込むとよい。次に、暗号化部５２２が、ＱＲコードのデータを暗号化する（ステップＳ８２２）。そして、コード配信部５２３が、暗号化したＱＲコードのデータをユーザ端末１０に配信する（ステップＳ８２３）。
【００６１】
ユーザ端末１０では、受信部５００が、決済サーバ１２から配信されたＱＲコードのデータを受信する（ステップＳ８０４）と、変換部７０１が、ＱＲコードのデータの復号を行う（ステップＳ８０５）。ＱＲコードのデータを暗号化するときの暗号鍵としてユーザの公開鍵が用いられた場合には、復号鍵としてユーザの秘密鍵を用いる。他方、暗号鍵として決済サーバ１２の秘密鍵が用いられた場合には、復号鍵として決済サーバ１２の公開鍵を用いるとよい。以上により、ＱＲコードのデータを取得した後、コード画像生成部３０２によってＱＲコードの画像が生成され、表示制御部３０３によってユーザ端末１０のタッチパネルディスプレイの画面上にＱＲコードの画像が表示される（ステップＳ８０６）。
【００６２】
ユーザが画面に表示されたＱＲコードをストアのスタッフに見せると、スタッフがストア端末１１のコードリーダ３１０を用いてＱＲコードを読み取る（ステップＳ８１０）。続いて、コード解析部３１１が、ＱＲコードをデコードして元データの暗号文及びＱＲコードの管理情報を抽出する（ステップＳ８１１）。そして、取引情報取得部３１２が、取引情報を取得し（ステップＳ８１２）、決済要求部３１３が、「元データの暗号文」、「管理情報」、及び「取引情報」を付した決済要求を決済サーバ１２に送信する（ステップＳ８１３）。
【００６３】
決済サーバ１２が、ストア端末１１から決済要求を受信すると（ステップＳ８２４）、認証処理部３２０が、決済要求に含まれる「管理情報」に基づき、登録データベース３２２から当該管理情報に紐づけられたユーザの公開鍵を読み出し、当該公開鍵を用いて、決済要求に含まれる「元データの暗号文」を復号する（ステップＳ８２５）。復号に成功した場合は（ステップＳ８２６のＹＥＳ）、認証ＯＫ、すなわち、この決済要求がユーザＩＤで特定される登録ユーザからの正当な要求であるとみなすことができる。一方、復号に失敗した場合は（ステップＳ８２６のＮＯ）、認証ＮＧ、すなわち、この決済要求がなりすましや改ざん等の不正利用によるものであると判断し、この決済要求を拒否（無効化）する（ステップＳ８２７）。認証ＯＫの場合は、決済処理部３２１が、復号された元データと取引情報に基づき決済処理を行い（ステップＳ８２８）、決済完了通知をストア端末１１及びユーザ端末１０にそれぞれ送信する（ステップＳ８２９）。
【００６４】
以上述べた本実施形態の構成によれば、ユーザ端末１０と決済サーバ１２の間のデータ交換をセキュアに行うことができるため、上述した実施形態と同様の作用効果を得ることができる。
【００６５】
＜第４実施形態＞
第４実施形態の特徴は、ＱＲコードに時間情報を埋め込む点である。例えば、第１〜第３実施形態において、元データ生成部３００、５２０，７００が元データを生成する際、又は、コード画像生成部３０２、コードデータ生成部５２１がＱＲコード画像又はＱＲコードデータを生成する際に、時間情報を埋め込む。時間情報は、データ生成時のタイムスタンプでもよいし、ＱＲコードを有効又は無効にする時間的な条件でもよい。このような時間情報をＱＲコードに埋め込んでおけば、例えば、ストア端末１１においてＱＲコードを読み込んだとき、あるいは、決済サーバ１２において決済又は認証を行うときに、ＱＲコードに埋め込まれている時間情報が所定の条件を満たしているか否かを判定し、所定の条件を満たさなかった場合に、当該ＱＲコードを無効としてもよい。
【００６６】
この構成によれば、ＱＲコードによる認証又は決済に時期的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した日時や時間帯のみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。なお、本実施形態では、ＱＲコードに埋め込まれている時間情報が所定の条件を満たさなかった場合にＱＲコードを無効化したが、逆に、ＱＲコードに埋め込まれている時間情報が所定の条件を満たした場合にＱＲコードを無効化するような設定にしてもよい。
【００６７】
＜第５実施形態＞
第５実施形態の特徴は、ＱＲコードに位置情報を埋め込む点である。例えば、第１〜第３実施形態において、元データ生成部３００、５２０，７００が元データを生成する際、又は、コード画像生成部３０２、コードデータ生成部５２１がＱＲコード画像又はＱＲコードデータを生成する際に、位置情報を埋め込む。位置情報は、データ生成時にＧＰＳセンサ２７で取得された現在位置の情報でもよいし、ＱＲコードを有効又は無効にする地理的な条件でもよい。このような位置情報をＱＲコードに埋め込んでおけば、例えば、ストア端末１１においてＱＲコードを読み込んだとき、あるいは、決済サーバ１２において決済又は認証を行うときに、ＱＲコードに埋め込まれている位置情報が所定の条件を満たしているか否かを判定し、所定の条件を満たさなかった場合に、当該ＱＲコードを無効としてもよい。
【００６８】
この構成によれば、ＱＲコードによる認証又は決済に位置的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した場所内でのみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。これにより、例えばイベント来場者にだけ決済可能な限定グッズを配布したり、病院内のような限定的な場所でのみ有効あるいは無効となるチケットを発行したりすることも可能である。なお、なお、本実施形態では、ＱＲコードに埋め込まれている位置情報が所定の条件を満たさなかった場合にＱＲコードを無効化したが、逆に、ＱＲコードに埋め込まれている位置情報が所定の条件を満たした場合にＱＲコードを無効化するような設定にしてもよい。また、第４実施形態と第５実施形態を組み合わせ、時間的な条件と地理的な条件の両方を用いてＱＲコードを有効化又は無効化するような制御を行ってもよい。
【００６９】
＜第６実施形態＞
図９に示すように、ユーザ・プログラム１００の機能の全部又は一部が、ユーザ端末１０に内蔵もしくは接続されたセキュアエレメント９０によって提供されてもよい。図９は、セキュアエレメント９０を備えるユーザ端末１０のハードウェア構成を模式的に示すブロック図である。
【００７０】
セキュアエレメント９０とは物理的破壊によってＩＣの内容を読み取ろうとする故障利用解析、消費電力の変化から処理内容を読み取ろうとする相関電力解析などへの耐性（耐タンパー性）を持ち、主に機密情報を管理するために用いられるＩＣチップである。セキュアエレメント９０は、ユーザ端末１０本体の制御基板９１（プロセッサ９１１、ＲＡＭ９１２、不揮発性メモリ９１３）とは独立したＩＣチップであり、プロセッサ９０１、ＲＡＭ９０２、不揮発性メモリ９０３を有している。セキュアエレメント９０はユーザ端末１０本体のプロセッサ９１１などと通信を行う。
【００７１】
ユーザ・プログラム１００の機能の一部をセキュアエレメント９０により提供する場合、クリティカルな情報（例えば、ユーザ情報記憶部３０４、鍵記憶部３０５）及びクリティカルな情報を用いるプログラム（元データ生成部３００、７００、変換部３０１、５０１、７０１、コード画像生成部３０２など）をセキュアエレメント９０の不揮発性メモリ
９０３に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、セキュアエレメント９０のプロセッサ９０１が行うとよい。
【００７２】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【００７３】
＜第７実施形態＞
図１０、図１１に示すように、ユーザ・プログラム１００の機能の全部又は一部が、ユーザ端末１０に内蔵もしくは接続されたＳＩＭカード７０によって提供されてもよい。図１０は、ＳＩＭカード７０を備えるユーザ端末１０のハードウェア構成を模式的に示すブロック図であり、図１１は、ＳＩＭカード７０の外観及び装着形態を模式的に示した図である。
【００７４】
ＳＩＭカード７０は、幅１５ｍｍ×高さ１２ｍｍ×厚み０．７６ｍｍの樹脂プレート上にＩＣチップが実装された構造を有する。
【００７５】
図１０に示すように、ＳＩＭカード７０は、プロセッサ１００１、ＲＡＭ１００２、不揮発性メモリ１００３、及び、８つのピン１００５（電極）を有する。不揮発性メモリ１００３には、ＳＩＭカード７０のユニークなシリアルナンバー（ＩＣＣＩＤ）、加入者識別情報（ＩＭＳＩ）などのデータと、プロセッサ１００１で実行されるプログラムとが格納されている。８つのピン１００５は、電源入力端子、リセット端子、クロック端子、アース端子、プログラム用電圧入力端子、Ｉ／Ｏ端子、予備端子を含む。
【００７６】
図１０は、ＳＩＭカード７０がＳＩＭカードスロット１００４に装着された状態を模式的に示している。ＳＩＭカード７０のピン１００５がユーザ端末１０の制御基板９１の端子１００６に接続される。
【００７７】
ＳＩＭカード７０は、ユーザが移動体通信事業者（ＭＮＯ）又は仮想移動体通信事業者（ＭＶＮＯ）の提供する移動通信サービスに加入したときに、その事業者から提供されるものである。ＳＩＭカード７０に格納されるデータやプログラムは事業者ごとに相違しているが、ＳＩＭカード７０自体の基本的な構造は国際規格に準拠している限りにおいて同一である。
【００７８】
なお、本実施形態では、標準−ＳＩＭを例に挙げたが、ＳＩＭカード７０としてはｍｉｃｒｏ−ＳＩＭやｎａｎｏ−ＳＩＭを用いることもできる。通常、ＳＩＭカードは、図１１に示すようにユーザ端末１０（スマートフォンなど）に挿入して使用される。
【００７９】
ユーザ・プログラム１００の機能の一部をＳＩＭカード７０により提供する場合、クリティカルな情報（例えば、ユーザ情報記憶部３０４、鍵記憶部３０５）及びクリティカルな情報を用いるプログラム（元データ生成部３００、７００、変換部３０１、５０１、７０１、コード画像生成部３０２など）をＳＩＭカード７０の外部からのアクセスが不可能なエリアを有する不揮発性メモリ１００３に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、ＳＩＭカード７０のプロセッサ１００１が行うとよい。
【００８０】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【００８１】
＜第８実施形態＞
図１２、図１３に示すように、ユーザ・プログラム１００の機能の全部又は一部が、ユーザ端末１０に内蔵もしくは接続されたＳＩＭカード７０に重ねて貼り付けられたＩＣカード１２００によって提供されてもよい（その利用形態は、図１３に示すとおりである）。
【００８２】
図１２は、ＩＣカード１２００を備えるユーザ端末１０のハードウェア構成を模式的に示すブロック図であり、図１３は、ＳＩＭカード７０とＩＣカード１２００の外観及び装着形態を模式的に示した図である。
【００８３】
ＩＣカード１２００は、幅と高さがＳＩＭカード７０と同じ又は略同じサイズであり、厚みが約０．１〜０．２ｍｍ程度の可撓性フィルムにＩＣチップが埋め込まれた構造を有する。ＩＣカード１２００も、プロセッサ１２０１、ＲＡＭ１２０２、不揮発性メモリ１２０３、及び、８つのピン１２０４（電極）を有している。
【００８４】
ＩＣカード１２００の８つのピン１２０４は、ＩＣカード１２００の表面と裏面の両方に露出しており、かつ、ＳＩＭカード７０の８つのピン１００５と同じ配列になっている。図１３に示すように、このＩＣカード１２００をＳＩＭカード７０に重ねて貼り付けることにより、ＩＣカード１２００とＳＩＭカード７０の対応するピン（電極）同士が物理的・電気的に接続されることとなる。
【００８５】
ＩＣカード１２００は極めて薄いため、ＩＣカード１２００を貼り付けた状態のＳＩＭカード７０をユーザ端末１０のＳＩＭカードスロット１００４に装着することが可能である。
【００８６】
図１２は、ＩＣカード１２００とＳＩＭカード７０がＳＩＭカードスロット１００４に装着された状態を模式的に示している。ＩＣカード１２００の表面のピン１２０４がユーザ端末１０の制御基板９１の端子１００６に接続され、ＳＩＭカード７０のピン１００５はＩＣカード１２００のピン１２０４を介して制御基板９１の端子１００６に接続されることとなる。
【００８７】
ユーザ端末１０のプロセッサ９１１は、ＩＣカード１２００とＳＩＭカード７０のいずれに対しても選択的にアクセスすることができる。言い換えると、ユーザ端末１０のプロセッサ９１１で動作するアプリケーションプログラムは、ＩＣカード１２００と通信を行うモードとＳＩＭカード７０と通信を行うモードを選択的に切り替えることができる。
【００８８】
前者のモードの場合、ＩＣカード１２００のプロセッサ１２０１は、ユーザ端末１０から受信した信号（命令）を自身で処理し、ＳＩＭカード７０には伝送しない。他方、後者のモードの場合は、ＩＣカード１２００のプロセッサ１２０１は、ユーザ端末１０とＳＩＭカード７０の間の信号を仲介する（スルーする）動作を行う。
【００８９】
本実施形態のように、通信用のＳＩＭカード７０に重ね貼りするタイプのＩＣカード１２００は「サブＳＩＭ」とも呼ばれる。サブＳＩＭタイプのＩＣカード１２００を用いることにより、次のようなメリットがある。
【００９０】
ＳＩＭカードスロット１００４を有する電子機器であれば、ＩＣカード１２００の装着が可能である（すなわち、電子機器側に特別な構造や細工が一切不要であり、ほとんど全ての電子機器にＩＣカード１２００の装着が可能である）。
【００９１】
ＳＩＭカードスロット１００４が１つしかない電子機器に対しても（言い換えると、Ｓ
ＩＭカードスロット１００４の空きが無い場合でも）、ＩＣカード１２００を装着可能である。
【００９２】
また、通信用のＳＩＭカード７０とＩＣカード１２００とは機能的には完全に独立しており、互いに影響を与えることが無いため、ＩＣカード１２００を装着した後も音声通信やデータ通信をこれまで同様利用することができる。しかも、どの事業者のＳＩＭカードに対しても追加可能であるため、導入・普及が容易である。
【００９３】
ユーザ・プログラム１００の機能の一部をＩＣカード１２００により提供する場合、クリティカルな情報（例えば、ユーザ情報記憶部３０４、鍵記憶部３０５）及びクリティカルな情報を用いるプログラム（元データ生成部３００、７００、変換部３０１、５０１、７０１、コード画像生成部３０２など）をＩＣカード１２００の外部からのアクセスが不可能なエリアを有する不揮発性メモリ１２０３に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、ＩＣカード１２００のプロセッサ１２０１が行うとよい。
【００９４】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【００９５】
＜その他＞
上述した実施形態は本発明の具体例の一つを説明したに過ぎず、本発明の技術的範囲は上述した実施形態の内容に限定されるものではなく、また本発明はその技術思想の範囲内で様々な具体的形態をとりうるものである。例えば、上述した実施形態ではＱＲコードを例示したが、バーコードなどの一次元コードや、ＱＲコード以外の二次元コードにも本発明を好ましく適用可能である。また、上述した実施形態の一つではサーバにおいてコード用データを生成しユーザ端末に送信するフローを例示したが、ＱＲコードの画像データをサーバで作成し、画像データをユーザ端末に送信してもよい（この場合は、ユーザ端末側で画像を生成する処理は必要ない。）。また、サブＳＩＭタイプのＩＣカード１２００を例示したが、ＳＩＭカードスロット１００４を複数備える携帯機器であれば、一般的なｍｉｃｒｏ−ＳＩＭやｎａｎｏ−ＳＩＭと同じ仕様のＩＣカードを（通信用ＳＩＭカードとは別のスロットに）装着してもよい。あるいは、ＳＩＭカードスロット以外のスロットに装着するタイプのＩＣカードを用いてもよい。また、公開鍵暗号方式ではなく、共通鍵暗号方式を用いてもよい。共通鍵暗号方式の場合は、例えば、ユーザ端末にユーザ・プログラムをインストールするとき、あるいは、ユーザがＱＲコード決済サービスに会員登録するときなどに、ユーザ端末と決済サーバとの間で共通鍵の交換を行えばよい。
【符号の説明】
【００９６】
１：ＱＲコード決済システム
１０：ユーザ端末（第１端末）
１１：ストア端末（第２端末）
１２：決済サーバ
１００：ユーザ・プログラム（第１端末プログラム）
１０１：ＱＲコード
１１０：ストア・プログラム（第２端末プログラム）
１１１：コードリーダ
【図１】
2020173534.tif 000003
【図２】
2020173534.tif 000004
【図３】
2020173534.tif 000005
【図４】
2020173534.tif 000006
【図５】
2020173534.tif 000007
【図６】
2020173534.tif 000008
【図７】
2020173534.tif 000009
【図８】
2020173534.tif 000010
【図９】
2020173534.tif 000011
【図１０】
2020173534.tif 000012
【図１１】
2020173534.tif 000013
【図１２】
2020173534.tif 000014
【図１３】
2020173534.tif 000015